MAYBE
Time: 6.276706
TRS:
 {
                   mark cons(X1, X2) -> active cons(mark X1, X2),
                            mark 0() -> active 0(),
                        mark zeros() -> active zeros(),
               mark U102(X1, X2, X3) -> active U102(mark X1, X2, X3),
                    mark isNatKind X -> active isNatKind X,
               mark U101(X1, X2, X3) -> active U101(mark X1, X2, X3),
                           mark tt() -> active tt(),
               mark U103(X1, X2, X3) -> active U103(mark X1, X2, X3),
               mark isNatIListKind X -> active isNatIListKind X,
               mark U104(X1, X2, X3) -> active U104(mark X1, X2, X3),
                   mark U105(X1, X2) -> active U105(mark X1, X2),
                        mark isNat X -> active isNat X,
                         mark U106 X -> active U106 mark X,
                   mark isNatIList X -> active isNatIList X,
                    mark U12(X1, X2) -> active U12(mark X1, X2),
                    mark U11(X1, X2) -> active U11(mark X1, X2),
               mark U112(X1, X2, X3) -> active U112(mark X1, X2, X3),
               mark U111(X1, X2, X3) -> active U111(mark X1, X2, X3),
               mark U113(X1, X2, X3) -> active U113(mark X1, X2, X3),
                   mark U114(X1, X2) -> active U114(mark X1, X2),
                            mark s X -> active s mark X,
                       mark length X -> active length mark X,
                          mark U13 X -> active U13 mark X,
                    mark isNatList X -> active isNatList X,
                         mark U122 X -> active U122 mark X,
                   mark U121(X1, X2) -> active U121(mark X1, X2),
                          mark nil() -> active nil(),
           mark U132(X1, X2, X3, X4) -> active U132(mark X1, X2, X3, X4),
           mark U131(X1, X2, X3, X4) -> active U131(mark X1, X2, X3, X4),
           mark U133(X1, X2, X3, X4) -> active U133(mark X1, X2, X3, X4),
           mark U134(X1, X2, X3, X4) -> active U134(mark X1, X2, X3, X4),
           mark U135(X1, X2, X3, X4) -> active U135(mark X1, X2, X3, X4),
           mark U136(X1, X2, X3, X4) -> active U136(mark X1, X2, X3, X4),
                   mark take(X1, X2) -> active take(mark X1, mark X2),
                    mark U22(X1, X2) -> active U22(mark X1, X2),
                    mark U21(X1, X2) -> active U21(mark X1, X2),
                          mark U23 X -> active U23 mark X,
                    mark U32(X1, X2) -> active U32(mark X1, X2),
                    mark U31(X1, X2) -> active U31(mark X1, X2),
                          mark U33 X -> active U33 mark X,
                mark U42(X1, X2, X3) -> active U42(mark X1, X2, X3),
                mark U41(X1, X2, X3) -> active U41(mark X1, X2, X3),
                mark U43(X1, X2, X3) -> active U43(mark X1, X2, X3),
                mark U44(X1, X2, X3) -> active U44(mark X1, X2, X3),
                    mark U45(X1, X2) -> active U45(mark X1, X2),
                          mark U46 X -> active U46 mark X,
                          mark U52 X -> active U52 mark X,
                    mark U51(X1, X2) -> active U51(mark X1, X2),
                          mark U62 X -> active U62 mark X,
                    mark U61(X1, X2) -> active U61(mark X1, X2),
                          mark U71 X -> active U71 mark X,
                          mark U81 X -> active U81 mark X,
                mark U92(X1, X2, X3) -> active U92(mark X1, X2, X3),
                mark U91(X1, X2, X3) -> active U91(mark X1, X2, X3),
                mark U93(X1, X2, X3) -> active U93(mark X1, X2, X3),
                mark U94(X1, X2, X3) -> active U94(mark X1, X2, X3),
                    mark U95(X1, X2) -> active U95(mark X1, X2),
                          mark U96 X -> active U96 mark X,
                   cons(X1, mark X2) -> cons(X1, X2),
                 cons(X1, active X2) -> cons(X1, X2),
                   cons(mark X1, X2) -> cons(X1, X2),
                 cons(active X1, X2) -> cons(X1, X2),
                      active zeros() -> mark cons(0(), zeros()),
           active U102(tt(), V1, V2) -> mark U103(isNatIListKind V2, V1, V2),
                active isNatKind 0() -> mark tt(),
               active isNatKind s V1 -> mark U81 isNatKind V1,
          active isNatKind length V1 -> mark U71 isNatIListKind V1,
           active U101(tt(), V1, V2) -> mark U102(isNatKind V1, V1, V2),
           active U103(tt(), V1, V2) -> mark U104(isNatIListKind V2, V1, V2),
  active isNatIListKind cons(V1, V2) -> mark U51(isNatKind V1, V2),
       active isNatIListKind zeros() -> mark tt(),
         active isNatIListKind nil() -> mark tt(),
  active isNatIListKind take(V1, V2) -> mark U61(isNatKind V1, V2),
           active U104(tt(), V1, V2) -> mark U105(isNat V1, V2),
               active U105(tt(), V2) -> mark U106 isNatIList V2,
                    active isNat 0() -> mark tt(),
                   active isNat s V1 -> mark U21(isNatKind V1, V1),
              active isNat length V1 -> mark U11(isNatIListKind V1, V1),
                    active U106 tt() -> mark tt(),
                 active isNatIList V -> mark U31(isNatIListKind V, V),
      active isNatIList cons(V1, V2) -> mark U41(isNatKind V1, V1, V2),
           active isNatIList zeros() -> mark tt(),
                active U12(tt(), V1) -> mark U13 isNatList V1,
                active U11(tt(), V1) -> mark U12(isNatIListKind V1, V1),
             active U112(tt(), L, N) -> mark U113(isNat N, L, N),
             active U111(tt(), L, N) -> mark U112(isNatIListKind L, L, N),
             active U113(tt(), L, N) -> mark U114(isNatKind N, L),
                active U114(tt(), L) -> mark s length L,
            active length cons(N, L) -> mark U111(isNatList L, L, N),
                 active length nil() -> mark 0(),
                     active U13 tt() -> mark tt(),
       active isNatList cons(V1, V2) -> mark U91(isNatKind V1, V1, V2),
              active isNatList nil() -> mark tt(),
       active isNatList take(V1, V2) -> mark U101(isNatKind V1, V1, V2),
                    active U122 tt() -> mark nil(),
               active U121(tt(), IL) -> mark U122 isNatIListKind IL,
         active U132(tt(), IL, M, N) -> mark U133(isNat M, IL, M, N),
         active U131(tt(), IL, M, N) -> mark U132(isNatIListKind IL, IL, M, N),
         active U133(tt(), IL, M, N) -> mark U134(isNatKind M, IL, M, N),
         active U134(tt(), IL, M, N) -> mark U135(isNat N, IL, M, N),
         active U135(tt(), IL, M, N) -> mark U136(isNatKind N, IL, M, N),
         active U136(tt(), IL, M, N) -> mark cons(N, take(M, IL)),
                active take(0(), IL) -> mark U121(isNatIList IL, IL),
       active take(s M, cons(N, IL)) -> mark U131(isNatIList IL, IL, M, N),
                active U22(tt(), V1) -> mark U23 isNat V1,
                active U21(tt(), V1) -> mark U22(isNatKind V1, V1),
                     active U23 tt() -> mark tt(),
                 active U32(tt(), V) -> mark U33 isNatList V,
                 active U31(tt(), V) -> mark U32(isNatIListKind V, V),
                     active U33 tt() -> mark tt(),
            active U42(tt(), V1, V2) -> mark U43(isNatIListKind V2, V1, V2),
            active U41(tt(), V1, V2) -> mark U42(isNatKind V1, V1, V2),
            active U43(tt(), V1, V2) -> mark U44(isNatIListKind V2, V1, V2),
            active U44(tt(), V1, V2) -> mark U45(isNat V1, V2),
                active U45(tt(), V2) -> mark U46 isNatIList V2,
                     active U46 tt() -> mark tt(),
                     active U52 tt() -> mark tt(),
                active U51(tt(), V2) -> mark U52 isNatIListKind V2,
                     active U62 tt() -> mark tt(),
                active U61(tt(), V2) -> mark U62 isNatIListKind V2,
                     active U71 tt() -> mark tt(),
                     active U81 tt() -> mark tt(),
            active U92(tt(), V1, V2) -> mark U93(isNatIListKind V2, V1, V2),
            active U91(tt(), V1, V2) -> mark U92(isNatKind V1, V1, V2),
            active U93(tt(), V1, V2) -> mark U94(isNatIListKind V2, V1, V2),
            active U94(tt(), V1, V2) -> mark U95(isNat V1, V2),
                active U95(tt(), V2) -> mark U96 isNatList V2,
                     active U96 tt() -> mark tt(),
               U102(X1, X2, mark X3) -> U102(X1, X2, X3),
             U102(X1, X2, active X3) -> U102(X1, X2, X3),
               U102(X1, mark X2, X3) -> U102(X1, X2, X3),
             U102(X1, active X2, X3) -> U102(X1, X2, X3),
               U102(mark X1, X2, X3) -> U102(X1, X2, X3),
             U102(active X1, X2, X3) -> U102(X1, X2, X3),
                    isNatKind mark X -> isNatKind X,
                  isNatKind active X -> isNatKind X,
               U101(X1, X2, mark X3) -> U101(X1, X2, X3),
             U101(X1, X2, active X3) -> U101(X1, X2, X3),
               U101(X1, mark X2, X3) -> U101(X1, X2, X3),
             U101(X1, active X2, X3) -> U101(X1, X2, X3),
               U101(mark X1, X2, X3) -> U101(X1, X2, X3),
             U101(active X1, X2, X3) -> U101(X1, X2, X3),
               U103(X1, X2, mark X3) -> U103(X1, X2, X3),
             U103(X1, X2, active X3) -> U103(X1, X2, X3),
               U103(X1, mark X2, X3) -> U103(X1, X2, X3),
             U103(X1, active X2, X3) -> U103(X1, X2, X3),
               U103(mark X1, X2, X3) -> U103(X1, X2, X3),
             U103(active X1, X2, X3) -> U103(X1, X2, X3),
               isNatIListKind mark X -> isNatIListKind X,
             isNatIListKind active X -> isNatIListKind X,
               U104(X1, X2, mark X3) -> U104(X1, X2, X3),
             U104(X1, X2, active X3) -> U104(X1, X2, X3),
               U104(X1, mark X2, X3) -> U104(X1, X2, X3),
             U104(X1, active X2, X3) -> U104(X1, X2, X3),
               U104(mark X1, X2, X3) -> U104(X1, X2, X3),
             U104(active X1, X2, X3) -> U104(X1, X2, X3),
                   U105(X1, mark X2) -> U105(X1, X2),
                 U105(X1, active X2) -> U105(X1, X2),
                   U105(mark X1, X2) -> U105(X1, X2),
                 U105(active X1, X2) -> U105(X1, X2),
                        isNat mark X -> isNat X,
                      isNat active X -> isNat X,
                         U106 mark X -> U106 X,
                       U106 active X -> U106 X,
                   isNatIList mark X -> isNatIList X,
                 isNatIList active X -> isNatIList X,
                    U12(X1, mark X2) -> U12(X1, X2),
                  U12(X1, active X2) -> U12(X1, X2),
                    U12(mark X1, X2) -> U12(X1, X2),
                  U12(active X1, X2) -> U12(X1, X2),
                    U11(X1, mark X2) -> U11(X1, X2),
                  U11(X1, active X2) -> U11(X1, X2),
                    U11(mark X1, X2) -> U11(X1, X2),
                  U11(active X1, X2) -> U11(X1, X2),
               U112(X1, X2, mark X3) -> U112(X1, X2, X3),
             U112(X1, X2, active X3) -> U112(X1, X2, X3),
               U112(X1, mark X2, X3) -> U112(X1, X2, X3),
             U112(X1, active X2, X3) -> U112(X1, X2, X3),
               U112(mark X1, X2, X3) -> U112(X1, X2, X3),
             U112(active X1, X2, X3) -> U112(X1, X2, X3),
               U111(X1, X2, mark X3) -> U111(X1, X2, X3),
             U111(X1, X2, active X3) -> U111(X1, X2, X3),
               U111(X1, mark X2, X3) -> U111(X1, X2, X3),
             U111(X1, active X2, X3) -> U111(X1, X2, X3),
               U111(mark X1, X2, X3) -> U111(X1, X2, X3),
             U111(active X1, X2, X3) -> U111(X1, X2, X3),
               U113(X1, X2, mark X3) -> U113(X1, X2, X3),
             U113(X1, X2, active X3) -> U113(X1, X2, X3),
               U113(X1, mark X2, X3) -> U113(X1, X2, X3),
             U113(X1, active X2, X3) -> U113(X1, X2, X3),
               U113(mark X1, X2, X3) -> U113(X1, X2, X3),
             U113(active X1, X2, X3) -> U113(X1, X2, X3),
                   U114(X1, mark X2) -> U114(X1, X2),
                 U114(X1, active X2) -> U114(X1, X2),
                   U114(mark X1, X2) -> U114(X1, X2),
                 U114(active X1, X2) -> U114(X1, X2),
                            s mark X -> s X,
                          s active X -> s X,
                       length mark X -> length X,
                     length active X -> length X,
                          U13 mark X -> U13 X,
                        U13 active X -> U13 X,
                    isNatList mark X -> isNatList X,
                  isNatList active X -> isNatList X,
                         U122 mark X -> U122 X,
                       U122 active X -> U122 X,
                   U121(X1, mark X2) -> U121(X1, X2),
                 U121(X1, active X2) -> U121(X1, X2),
                   U121(mark X1, X2) -> U121(X1, X2),
                 U121(active X1, X2) -> U121(X1, X2),
           U132(X1, X2, X3, mark X4) -> U132(X1, X2, X3, X4),
         U132(X1, X2, X3, active X4) -> U132(X1, X2, X3, X4),
           U132(X1, X2, mark X3, X4) -> U132(X1, X2, X3, X4),
         U132(X1, X2, active X3, X4) -> U132(X1, X2, X3, X4),
           U132(X1, mark X2, X3, X4) -> U132(X1, X2, X3, X4),
         U132(X1, active X2, X3, X4) -> U132(X1, X2, X3, X4),
           U132(mark X1, X2, X3, X4) -> U132(X1, X2, X3, X4),
         U132(active X1, X2, X3, X4) -> U132(X1, X2, X3, X4),
           U131(X1, X2, X3, mark X4) -> U131(X1, X2, X3, X4),
         U131(X1, X2, X3, active X4) -> U131(X1, X2, X3, X4),
           U131(X1, X2, mark X3, X4) -> U131(X1, X2, X3, X4),
         U131(X1, X2, active X3, X4) -> U131(X1, X2, X3, X4),
           U131(X1, mark X2, X3, X4) -> U131(X1, X2, X3, X4),
         U131(X1, active X2, X3, X4) -> U131(X1, X2, X3, X4),
           U131(mark X1, X2, X3, X4) -> U131(X1, X2, X3, X4),
         U131(active X1, X2, X3, X4) -> U131(X1, X2, X3, X4),
           U133(X1, X2, X3, mark X4) -> U133(X1, X2, X3, X4),
         U133(X1, X2, X3, active X4) -> U133(X1, X2, X3, X4),
           U133(X1, X2, mark X3, X4) -> U133(X1, X2, X3, X4),
         U133(X1, X2, active X3, X4) -> U133(X1, X2, X3, X4),
           U133(X1, mark X2, X3, X4) -> U133(X1, X2, X3, X4),
         U133(X1, active X2, X3, X4) -> U133(X1, X2, X3, X4),
           U133(mark X1, X2, X3, X4) -> U133(X1, X2, X3, X4),
         U133(active X1, X2, X3, X4) -> U133(X1, X2, X3, X4),
           U134(X1, X2, X3, mark X4) -> U134(X1, X2, X3, X4),
         U134(X1, X2, X3, active X4) -> U134(X1, X2, X3, X4),
           U134(X1, X2, mark X3, X4) -> U134(X1, X2, X3, X4),
         U134(X1, X2, active X3, X4) -> U134(X1, X2, X3, X4),
           U134(X1, mark X2, X3, X4) -> U134(X1, X2, X3, X4),
         U134(X1, active X2, X3, X4) -> U134(X1, X2, X3, X4),
           U134(mark X1, X2, X3, X4) -> U134(X1, X2, X3, X4),
         U134(active X1, X2, X3, X4) -> U134(X1, X2, X3, X4),
           U135(X1, X2, X3, mark X4) -> U135(X1, X2, X3, X4),
         U135(X1, X2, X3, active X4) -> U135(X1, X2, X3, X4),
           U135(X1, X2, mark X3, X4) -> U135(X1, X2, X3, X4),
         U135(X1, X2, active X3, X4) -> U135(X1, X2, X3, X4),
           U135(X1, mark X2, X3, X4) -> U135(X1, X2, X3, X4),
         U135(X1, active X2, X3, X4) -> U135(X1, X2, X3, X4),
           U135(mark X1, X2, X3, X4) -> U135(X1, X2, X3, X4),
         U135(active X1, X2, X3, X4) -> U135(X1, X2, X3, X4),
           U136(X1, X2, X3, mark X4) -> U136(X1, X2, X3, X4),
         U136(X1, X2, X3, active X4) -> U136(X1, X2, X3, X4),
           U136(X1, X2, mark X3, X4) -> U136(X1, X2, X3, X4),
         U136(X1, X2, active X3, X4) -> U136(X1, X2, X3, X4),
           U136(X1, mark X2, X3, X4) -> U136(X1, X2, X3, X4),
         U136(X1, active X2, X3, X4) -> U136(X1, X2, X3, X4),
           U136(mark X1, X2, X3, X4) -> U136(X1, X2, X3, X4),
         U136(active X1, X2, X3, X4) -> U136(X1, X2, X3, X4),
                   take(X1, mark X2) -> take(X1, X2),
                 take(X1, active X2) -> take(X1, X2),
                   take(mark X1, X2) -> take(X1, X2),
                 take(active X1, X2) -> take(X1, X2),
                    U22(X1, mark X2) -> U22(X1, X2),
                  U22(X1, active X2) -> U22(X1, X2),
                    U22(mark X1, X2) -> U22(X1, X2),
                  U22(active X1, X2) -> U22(X1, X2),
                    U21(X1, mark X2) -> U21(X1, X2),
                  U21(X1, active X2) -> U21(X1, X2),
                    U21(mark X1, X2) -> U21(X1, X2),
                  U21(active X1, X2) -> U21(X1, X2),
                          U23 mark X -> U23 X,
                        U23 active X -> U23 X,
                    U32(X1, mark X2) -> U32(X1, X2),
                  U32(X1, active X2) -> U32(X1, X2),
                    U32(mark X1, X2) -> U32(X1, X2),
                  U32(active X1, X2) -> U32(X1, X2),
                    U31(X1, mark X2) -> U31(X1, X2),
                  U31(X1, active X2) -> U31(X1, X2),
                    U31(mark X1, X2) -> U31(X1, X2),
                  U31(active X1, X2) -> U31(X1, X2),
                          U33 mark X -> U33 X,
                        U33 active X -> U33 X,
                U42(X1, X2, mark X3) -> U42(X1, X2, X3),
              U42(X1, X2, active X3) -> U42(X1, X2, X3),
                U42(X1, mark X2, X3) -> U42(X1, X2, X3),
              U42(X1, active X2, X3) -> U42(X1, X2, X3),
                U42(mark X1, X2, X3) -> U42(X1, X2, X3),
              U42(active X1, X2, X3) -> U42(X1, X2, X3),
                U41(X1, X2, mark X3) -> U41(X1, X2, X3),
              U41(X1, X2, active X3) -> U41(X1, X2, X3),
                U41(X1, mark X2, X3) -> U41(X1, X2, X3),
              U41(X1, active X2, X3) -> U41(X1, X2, X3),
                U41(mark X1, X2, X3) -> U41(X1, X2, X3),
              U41(active X1, X2, X3) -> U41(X1, X2, X3),
                U43(X1, X2, mark X3) -> U43(X1, X2, X3),
              U43(X1, X2, active X3) -> U43(X1, X2, X3),
                U43(X1, mark X2, X3) -> U43(X1, X2, X3),
              U43(X1, active X2, X3) -> U43(X1, X2, X3),
                U43(mark X1, X2, X3) -> U43(X1, X2, X3),
              U43(active X1, X2, X3) -> U43(X1, X2, X3),
                U44(X1, X2, mark X3) -> U44(X1, X2, X3),
              U44(X1, X2, active X3) -> U44(X1, X2, X3),
                U44(X1, mark X2, X3) -> U44(X1, X2, X3),
              U44(X1, active X2, X3) -> U44(X1, X2, X3),
                U44(mark X1, X2, X3) -> U44(X1, X2, X3),
              U44(active X1, X2, X3) -> U44(X1, X2, X3),
                    U45(X1, mark X2) -> U45(X1, X2),
                  U45(X1, active X2) -> U45(X1, X2),
                    U45(mark X1, X2) -> U45(X1, X2),
                  U45(active X1, X2) -> U45(X1, X2),
                          U46 mark X -> U46 X,
                        U46 active X -> U46 X,
                          U52 mark X -> U52 X,
                        U52 active X -> U52 X,
                    U51(X1, mark X2) -> U51(X1, X2),
                  U51(X1, active X2) -> U51(X1, X2),
                    U51(mark X1, X2) -> U51(X1, X2),
                  U51(active X1, X2) -> U51(X1, X2),
                          U62 mark X -> U62 X,
                        U62 active X -> U62 X,
                    U61(X1, mark X2) -> U61(X1, X2),
                  U61(X1, active X2) -> U61(X1, X2),
                    U61(mark X1, X2) -> U61(X1, X2),
                  U61(active X1, X2) -> U61(X1, X2),
                          U71 mark X -> U71 X,
                        U71 active X -> U71 X,
                          U81 mark X -> U81 X,
                        U81 active X -> U81 X,
                U92(X1, X2, mark X3) -> U92(X1, X2, X3),
              U92(X1, X2, active X3) -> U92(X1, X2, X3),
                U92(X1, mark X2, X3) -> U92(X1, X2, X3),
              U92(X1, active X2, X3) -> U92(X1, X2, X3),
                U92(mark X1, X2, X3) -> U92(X1, X2, X3),
              U92(active X1, X2, X3) -> U92(X1, X2, X3),
                U91(X1, X2, mark X3) -> U91(X1, X2, X3),
              U91(X1, X2, active X3) -> U91(X1, X2, X3),
                U91(X1, mark X2, X3) -> U91(X1, X2, X3),
              U91(X1, active X2, X3) -> U91(X1, X2, X3),
                U91(mark X1, X2, X3) -> U91(X1, X2, X3),
              U91(active X1, X2, X3) -> U91(X1, X2, X3),
                U93(X1, X2, mark X3) -> U93(X1, X2, X3),
              U93(X1, X2, active X3) -> U93(X1, X2, X3),
                U93(X1, mark X2, X3) -> U93(X1, X2, X3),
              U93(X1, active X2, X3) -> U93(X1, X2, X3),
                U93(mark X1, X2, X3) -> U93(X1, X2, X3),
              U93(active X1, X2, X3) -> U93(X1, X2, X3),
                U94(X1, X2, mark X3) -> U94(X1, X2, X3),
              U94(X1, X2, active X3) -> U94(X1, X2, X3),
                U94(X1, mark X2, X3) -> U94(X1, X2, X3),
              U94(X1, active X2, X3) -> U94(X1, X2, X3),
                U94(mark X1, X2, X3) -> U94(X1, X2, X3),
              U94(active X1, X2, X3) -> U94(X1, X2, X3),
                    U95(X1, mark X2) -> U95(X1, X2),
                  U95(X1, active X2) -> U95(X1, X2),
                    U95(mark X1, X2) -> U95(X1, X2),
                  U95(active X1, X2) -> U95(X1, X2),
                          U96 mark X -> U96 X,
                        U96 active X -> U96 X
 }
 DP:
  DP:
   {
                     mark# cons(X1, X2) -> mark# X1,
                     mark# cons(X1, X2) -> cons#(mark X1, X2),
                     mark# cons(X1, X2) -> active# cons(mark X1, X2),
                              mark# 0() -> active# 0(),
                          mark# zeros() -> active# zeros(),
                 mark# U102(X1, X2, X3) -> mark# X1,
                 mark# U102(X1, X2, X3) -> active# U102(mark X1, X2, X3),
                 mark# U102(X1, X2, X3) -> U102#(mark X1, X2, X3),
                      mark# isNatKind X -> active# isNatKind X,
                 mark# U101(X1, X2, X3) -> mark# X1,
                 mark# U101(X1, X2, X3) -> active# U101(mark X1, X2, X3),
                 mark# U101(X1, X2, X3) -> U101#(mark X1, X2, X3),
                             mark# tt() -> active# tt(),
                 mark# U103(X1, X2, X3) -> mark# X1,
                 mark# U103(X1, X2, X3) -> active# U103(mark X1, X2, X3),
                 mark# U103(X1, X2, X3) -> U103#(mark X1, X2, X3),
                 mark# isNatIListKind X -> active# isNatIListKind X,
                 mark# U104(X1, X2, X3) -> mark# X1,
                 mark# U104(X1, X2, X3) -> active# U104(mark X1, X2, X3),
                 mark# U104(X1, X2, X3) -> U104#(mark X1, X2, X3),
                     mark# U105(X1, X2) -> mark# X1,
                     mark# U105(X1, X2) -> active# U105(mark X1, X2),
                     mark# U105(X1, X2) -> U105#(mark X1, X2),
                          mark# isNat X -> active# isNat X,
                           mark# U106 X -> mark# X,
                           mark# U106 X -> active# U106 mark X,
                           mark# U106 X -> U106# mark X,
                     mark# isNatIList X -> active# isNatIList X,
                      mark# U12(X1, X2) -> mark# X1,
                      mark# U12(X1, X2) -> active# U12(mark X1, X2),
                      mark# U12(X1, X2) -> U12#(mark X1, X2),
                      mark# U11(X1, X2) -> mark# X1,
                      mark# U11(X1, X2) -> active# U11(mark X1, X2),
                      mark# U11(X1, X2) -> U11#(mark X1, X2),
                 mark# U112(X1, X2, X3) -> mark# X1,
                 mark# U112(X1, X2, X3) -> active# U112(mark X1, X2, X3),
                 mark# U112(X1, X2, X3) -> U112#(mark X1, X2, X3),
                 mark# U111(X1, X2, X3) -> mark# X1,
                 mark# U111(X1, X2, X3) -> active# U111(mark X1, X2, X3),
                 mark# U111(X1, X2, X3) -> U111#(mark X1, X2, X3),
                 mark# U113(X1, X2, X3) -> mark# X1,
                 mark# U113(X1, X2, X3) -> active# U113(mark X1, X2, X3),
                 mark# U113(X1, X2, X3) -> U113#(mark X1, X2, X3),
                     mark# U114(X1, X2) -> mark# X1,
                     mark# U114(X1, X2) -> active# U114(mark X1, X2),
                     mark# U114(X1, X2) -> U114#(mark X1, X2),
                              mark# s X -> mark# X,
                              mark# s X -> active# s mark X,
                              mark# s X -> s# mark X,
                         mark# length X -> mark# X,
                         mark# length X -> active# length mark X,
                         mark# length X -> length# mark X,
                            mark# U13 X -> mark# X,
                            mark# U13 X -> active# U13 mark X,
                            mark# U13 X -> U13# mark X,
                      mark# isNatList X -> active# isNatList X,
                           mark# U122 X -> mark# X,
                           mark# U122 X -> active# U122 mark X,
                           mark# U122 X -> U122# mark X,
                     mark# U121(X1, X2) -> mark# X1,
                     mark# U121(X1, X2) -> active# U121(mark X1, X2),
                     mark# U121(X1, X2) -> U121#(mark X1, X2),
                            mark# nil() -> active# nil(),
             mark# U132(X1, X2, X3, X4) -> mark# X1,
             mark# U132(X1, X2, X3, X4) -> active# U132(mark X1, X2, X3, X4),
             mark# U132(X1, X2, X3, X4) -> U132#(mark X1, X2, X3, X4),
             mark# U131(X1, X2, X3, X4) -> mark# X1,
             mark# U131(X1, X2, X3, X4) -> active# U131(mark X1, X2, X3, X4),
             mark# U131(X1, X2, X3, X4) -> U131#(mark X1, X2, X3, X4),
             mark# U133(X1, X2, X3, X4) -> mark# X1,
             mark# U133(X1, X2, X3, X4) -> active# U133(mark X1, X2, X3, X4),
             mark# U133(X1, X2, X3, X4) -> U133#(mark X1, X2, X3, X4),
             mark# U134(X1, X2, X3, X4) -> mark# X1,
             mark# U134(X1, X2, X3, X4) -> active# U134(mark X1, X2, X3, X4),
             mark# U134(X1, X2, X3, X4) -> U134#(mark X1, X2, X3, X4),
             mark# U135(X1, X2, X3, X4) -> mark# X1,
             mark# U135(X1, X2, X3, X4) -> active# U135(mark X1, X2, X3, X4),
             mark# U135(X1, X2, X3, X4) -> U135#(mark X1, X2, X3, X4),
             mark# U136(X1, X2, X3, X4) -> mark# X1,
             mark# U136(X1, X2, X3, X4) -> active# U136(mark X1, X2, X3, X4),
             mark# U136(X1, X2, X3, X4) -> U136#(mark X1, X2, X3, X4),
                     mark# take(X1, X2) -> mark# X1,
                     mark# take(X1, X2) -> mark# X2,
                     mark# take(X1, X2) -> active# take(mark X1, mark X2),
                     mark# take(X1, X2) -> take#(mark X1, mark X2),
                      mark# U22(X1, X2) -> mark# X1,
                      mark# U22(X1, X2) -> active# U22(mark X1, X2),
                      mark# U22(X1, X2) -> U22#(mark X1, X2),
                      mark# U21(X1, X2) -> mark# X1,
                      mark# U21(X1, X2) -> active# U21(mark X1, X2),
                      mark# U21(X1, X2) -> U21#(mark X1, X2),
                            mark# U23 X -> mark# X,
                            mark# U23 X -> active# U23 mark X,
                            mark# U23 X -> U23# mark X,
                      mark# U32(X1, X2) -> mark# X1,
                      mark# U32(X1, X2) -> active# U32(mark X1, X2),
                      mark# U32(X1, X2) -> U32#(mark X1, X2),
                      mark# U31(X1, X2) -> mark# X1,
                      mark# U31(X1, X2) -> active# U31(mark X1, X2),
                      mark# U31(X1, X2) -> U31#(mark X1, X2),
                            mark# U33 X -> mark# X,
                            mark# U33 X -> active# U33 mark X,
                            mark# U33 X -> U33# mark X,
                  mark# U42(X1, X2, X3) -> mark# X1,
                  mark# U42(X1, X2, X3) -> active# U42(mark X1, X2, X3),
                  mark# U42(X1, X2, X3) -> U42#(mark X1, X2, X3),
                  mark# U41(X1, X2, X3) -> mark# X1,
                  mark# U41(X1, X2, X3) -> active# U41(mark X1, X2, X3),
                  mark# U41(X1, X2, X3) -> U41#(mark X1, X2, X3),
                  mark# U43(X1, X2, X3) -> mark# X1,
                  mark# U43(X1, X2, X3) -> active# U43(mark X1, X2, X3),
                  mark# U43(X1, X2, X3) -> U43#(mark X1, X2, X3),
                  mark# U44(X1, X2, X3) -> mark# X1,
                  mark# U44(X1, X2, X3) -> active# U44(mark X1, X2, X3),
                  mark# U44(X1, X2, X3) -> U44#(mark X1, X2, X3),
                      mark# U45(X1, X2) -> mark# X1,
                      mark# U45(X1, X2) -> active# U45(mark X1, X2),
                      mark# U45(X1, X2) -> U45#(mark X1, X2),
                            mark# U46 X -> mark# X,
                            mark# U46 X -> active# U46 mark X,
                            mark# U46 X -> U46# mark X,
                            mark# U52 X -> mark# X,
                            mark# U52 X -> active# U52 mark X,
                            mark# U52 X -> U52# mark X,
                      mark# U51(X1, X2) -> mark# X1,
                      mark# U51(X1, X2) -> active# U51(mark X1, X2),
                      mark# U51(X1, X2) -> U51#(mark X1, X2),
                            mark# U62 X -> mark# X,
                            mark# U62 X -> active# U62 mark X,
                            mark# U62 X -> U62# mark X,
                      mark# U61(X1, X2) -> mark# X1,
                      mark# U61(X1, X2) -> active# U61(mark X1, X2),
                      mark# U61(X1, X2) -> U61#(mark X1, X2),
                            mark# U71 X -> mark# X,
                            mark# U71 X -> active# U71 mark X,
                            mark# U71 X -> U71# mark X,
                            mark# U81 X -> mark# X,
                            mark# U81 X -> active# U81 mark X,
                            mark# U81 X -> U81# mark X,
                  mark# U92(X1, X2, X3) -> mark# X1,
                  mark# U92(X1, X2, X3) -> active# U92(mark X1, X2, X3),
                  mark# U92(X1, X2, X3) -> U92#(mark X1, X2, X3),
                  mark# U91(X1, X2, X3) -> mark# X1,
                  mark# U91(X1, X2, X3) -> active# U91(mark X1, X2, X3),
                  mark# U91(X1, X2, X3) -> U91#(mark X1, X2, X3),
                  mark# U93(X1, X2, X3) -> mark# X1,
                  mark# U93(X1, X2, X3) -> active# U93(mark X1, X2, X3),
                  mark# U93(X1, X2, X3) -> U93#(mark X1, X2, X3),
                  mark# U94(X1, X2, X3) -> mark# X1,
                  mark# U94(X1, X2, X3) -> active# U94(mark X1, X2, X3),
                  mark# U94(X1, X2, X3) -> U94#(mark X1, X2, X3),
                      mark# U95(X1, X2) -> mark# X1,
                      mark# U95(X1, X2) -> active# U95(mark X1, X2),
                      mark# U95(X1, X2) -> U95#(mark X1, X2),
                            mark# U96 X -> mark# X,
                            mark# U96 X -> active# U96 mark X,
                            mark# U96 X -> U96# mark X,
                     cons#(X1, mark X2) -> cons#(X1, X2),
                   cons#(X1, active X2) -> cons#(X1, X2),
                     cons#(mark X1, X2) -> cons#(X1, X2),
                   cons#(active X1, X2) -> cons#(X1, X2),
                        active# zeros() -> mark# cons(0(), zeros()),
                        active# zeros() -> cons#(0(), zeros()),
             active# U102(tt(), V1, V2) -> mark# U103(isNatIListKind V2, V1, V2),
             active# U102(tt(), V1, V2) -> U103#(isNatIListKind V2, V1, V2),
             active# U102(tt(), V1, V2) -> isNatIListKind# V2,
                  active# isNatKind 0() -> mark# tt(),
                 active# isNatKind s V1 -> mark# U81 isNatKind V1,
                 active# isNatKind s V1 -> isNatKind# V1,
                 active# isNatKind s V1 -> U81# isNatKind V1,
            active# isNatKind length V1 -> mark# U71 isNatIListKind V1,
            active# isNatKind length V1 -> isNatIListKind# V1,
            active# isNatKind length V1 -> U71# isNatIListKind V1,
             active# U101(tt(), V1, V2) -> mark# U102(isNatKind V1, V1, V2),
             active# U101(tt(), V1, V2) -> U102#(isNatKind V1, V1, V2),
             active# U101(tt(), V1, V2) -> isNatKind# V1,
             active# U103(tt(), V1, V2) -> mark# U104(isNatIListKind V2, V1, V2),
             active# U103(tt(), V1, V2) -> isNatIListKind# V2,
             active# U103(tt(), V1, V2) -> U104#(isNatIListKind V2, V1, V2),
    active# isNatIListKind cons(V1, V2) -> mark# U51(isNatKind V1, V2),
    active# isNatIListKind cons(V1, V2) -> isNatKind# V1,
    active# isNatIListKind cons(V1, V2) -> U51#(isNatKind V1, V2),
         active# isNatIListKind zeros() -> mark# tt(),
           active# isNatIListKind nil() -> mark# tt(),
    active# isNatIListKind take(V1, V2) -> mark# U61(isNatKind V1, V2),
    active# isNatIListKind take(V1, V2) -> isNatKind# V1,
    active# isNatIListKind take(V1, V2) -> U61#(isNatKind V1, V2),
             active# U104(tt(), V1, V2) -> mark# U105(isNat V1, V2),
             active# U104(tt(), V1, V2) -> U105#(isNat V1, V2),
             active# U104(tt(), V1, V2) -> isNat# V1,
                 active# U105(tt(), V2) -> mark# U106 isNatIList V2,
                 active# U105(tt(), V2) -> U106# isNatIList V2,
                 active# U105(tt(), V2) -> isNatIList# V2,
                      active# isNat 0() -> mark# tt(),
                     active# isNat s V1 -> mark# U21(isNatKind V1, V1),
                     active# isNat s V1 -> isNatKind# V1,
                     active# isNat s V1 -> U21#(isNatKind V1, V1),
                active# isNat length V1 -> mark# U11(isNatIListKind V1, V1),
                active# isNat length V1 -> isNatIListKind# V1,
                active# isNat length V1 -> U11#(isNatIListKind V1, V1),
                      active# U106 tt() -> mark# tt(),
                   active# isNatIList V -> mark# U31(isNatIListKind V, V),
                   active# isNatIList V -> isNatIListKind# V,
                   active# isNatIList V -> U31#(isNatIListKind V, V),
        active# isNatIList cons(V1, V2) -> mark# U41(isNatKind V1, V1, V2),
        active# isNatIList cons(V1, V2) -> isNatKind# V1,
        active# isNatIList cons(V1, V2) -> U41#(isNatKind V1, V1, V2),
             active# isNatIList zeros() -> mark# tt(),
                  active# U12(tt(), V1) -> mark# U13 isNatList V1,
                  active# U12(tt(), V1) -> U13# isNatList V1,
                  active# U12(tt(), V1) -> isNatList# V1,
                  active# U11(tt(), V1) -> mark# U12(isNatIListKind V1, V1),
                  active# U11(tt(), V1) -> isNatIListKind# V1,
                  active# U11(tt(), V1) -> U12#(isNatIListKind V1, V1),
               active# U112(tt(), L, N) -> mark# U113(isNat N, L, N),
               active# U112(tt(), L, N) -> isNat# N,
               active# U112(tt(), L, N) -> U113#(isNat N, L, N),
               active# U111(tt(), L, N) -> mark# U112(isNatIListKind L, L, N),
               active# U111(tt(), L, N) -> isNatIListKind# L,
               active# U111(tt(), L, N) -> U112#(isNatIListKind L, L, N),
               active# U113(tt(), L, N) -> mark# U114(isNatKind N, L),
               active# U113(tt(), L, N) -> isNatKind# N,
               active# U113(tt(), L, N) -> U114#(isNatKind N, L),
                  active# U114(tt(), L) -> mark# s length L,
                  active# U114(tt(), L) -> s# length L,
                  active# U114(tt(), L) -> length# L,
              active# length cons(N, L) -> mark# U111(isNatList L, L, N),
              active# length cons(N, L) -> U111#(isNatList L, L, N),
              active# length cons(N, L) -> isNatList# L,
                   active# length nil() -> mark# 0(),
                       active# U13 tt() -> mark# tt(),
         active# isNatList cons(V1, V2) -> mark# U91(isNatKind V1, V1, V2),
         active# isNatList cons(V1, V2) -> isNatKind# V1,
         active# isNatList cons(V1, V2) -> U91#(isNatKind V1, V1, V2),
                active# isNatList nil() -> mark# tt(),
         active# isNatList take(V1, V2) -> mark# U101(isNatKind V1, V1, V2),
         active# isNatList take(V1, V2) -> isNatKind# V1,
         active# isNatList take(V1, V2) -> U101#(isNatKind V1, V1, V2),
                      active# U122 tt() -> mark# nil(),
                 active# U121(tt(), IL) -> mark# U122 isNatIListKind IL,
                 active# U121(tt(), IL) -> isNatIListKind# IL,
                 active# U121(tt(), IL) -> U122# isNatIListKind IL,
           active# U132(tt(), IL, M, N) -> mark# U133(isNat M, IL, M, N),
           active# U132(tt(), IL, M, N) -> isNat# M,
           active# U132(tt(), IL, M, N) -> U133#(isNat M, IL, M, N),
           active# U131(tt(), IL, M, N) -> mark# U132(isNatIListKind IL, IL, M, N),
           active# U131(tt(), IL, M, N) -> isNatIListKind# IL,
           active# U131(tt(), IL, M, N) -> U132#(isNatIListKind IL, IL, M, N),
           active# U133(tt(), IL, M, N) -> mark# U134(isNatKind M, IL, M, N),
           active# U133(tt(), IL, M, N) -> isNatKind# M,
           active# U133(tt(), IL, M, N) -> U134#(isNatKind M, IL, M, N),
           active# U134(tt(), IL, M, N) -> mark# U135(isNat N, IL, M, N),
           active# U134(tt(), IL, M, N) -> isNat# N,
           active# U134(tt(), IL, M, N) -> U135#(isNat N, IL, M, N),
           active# U135(tt(), IL, M, N) -> mark# U136(isNatKind N, IL, M, N),
           active# U135(tt(), IL, M, N) -> isNatKind# N,
           active# U135(tt(), IL, M, N) -> U136#(isNatKind N, IL, M, N),
           active# U136(tt(), IL, M, N) -> mark# cons(N, take(M, IL)),
           active# U136(tt(), IL, M, N) -> cons#(N, take(M, IL)),
           active# U136(tt(), IL, M, N) -> take#(M, IL),
                  active# take(0(), IL) -> mark# U121(isNatIList IL, IL),
                  active# take(0(), IL) -> isNatIList# IL,
                  active# take(0(), IL) -> U121#(isNatIList IL, IL),
         active# take(s M, cons(N, IL)) -> mark# U131(isNatIList IL, IL, M, N),
         active# take(s M, cons(N, IL)) -> isNatIList# IL,
         active# take(s M, cons(N, IL)) -> U131#(isNatIList IL, IL, M, N),
                  active# U22(tt(), V1) -> mark# U23 isNat V1,
                  active# U22(tt(), V1) -> isNat# V1,
                  active# U22(tt(), V1) -> U23# isNat V1,
                  active# U21(tt(), V1) -> mark# U22(isNatKind V1, V1),
                  active# U21(tt(), V1) -> isNatKind# V1,
                  active# U21(tt(), V1) -> U22#(isNatKind V1, V1),
                       active# U23 tt() -> mark# tt(),
                   active# U32(tt(), V) -> mark# U33 isNatList V,
                   active# U32(tt(), V) -> isNatList# V,
                   active# U32(tt(), V) -> U33# isNatList V,
                   active# U31(tt(), V) -> mark# U32(isNatIListKind V, V),
                   active# U31(tt(), V) -> isNatIListKind# V,
                   active# U31(tt(), V) -> U32#(isNatIListKind V, V),
                       active# U33 tt() -> mark# tt(),
              active# U42(tt(), V1, V2) -> mark# U43(isNatIListKind V2, V1, V2),
              active# U42(tt(), V1, V2) -> isNatIListKind# V2,
              active# U42(tt(), V1, V2) -> U43#(isNatIListKind V2, V1, V2),
              active# U41(tt(), V1, V2) -> mark# U42(isNatKind V1, V1, V2),
              active# U41(tt(), V1, V2) -> isNatKind# V1,
              active# U41(tt(), V1, V2) -> U42#(isNatKind V1, V1, V2),
              active# U43(tt(), V1, V2) -> mark# U44(isNatIListKind V2, V1, V2),
              active# U43(tt(), V1, V2) -> isNatIListKind# V2,
              active# U43(tt(), V1, V2) -> U44#(isNatIListKind V2, V1, V2),
              active# U44(tt(), V1, V2) -> mark# U45(isNat V1, V2),
              active# U44(tt(), V1, V2) -> isNat# V1,
              active# U44(tt(), V1, V2) -> U45#(isNat V1, V2),
                  active# U45(tt(), V2) -> mark# U46 isNatIList V2,
                  active# U45(tt(), V2) -> isNatIList# V2,
                  active# U45(tt(), V2) -> U46# isNatIList V2,
                       active# U46 tt() -> mark# tt(),
                       active# U52 tt() -> mark# tt(),
                  active# U51(tt(), V2) -> mark# U52 isNatIListKind V2,
                  active# U51(tt(), V2) -> isNatIListKind# V2,
                  active# U51(tt(), V2) -> U52# isNatIListKind V2,
                       active# U62 tt() -> mark# tt(),
                  active# U61(tt(), V2) -> mark# U62 isNatIListKind V2,
                  active# U61(tt(), V2) -> isNatIListKind# V2,
                  active# U61(tt(), V2) -> U62# isNatIListKind V2,
                       active# U71 tt() -> mark# tt(),
                       active# U81 tt() -> mark# tt(),
              active# U92(tt(), V1, V2) -> mark# U93(isNatIListKind V2, V1, V2),
              active# U92(tt(), V1, V2) -> isNatIListKind# V2,
              active# U92(tt(), V1, V2) -> U93#(isNatIListKind V2, V1, V2),
              active# U91(tt(), V1, V2) -> mark# U92(isNatKind V1, V1, V2),
              active# U91(tt(), V1, V2) -> isNatKind# V1,
              active# U91(tt(), V1, V2) -> U92#(isNatKind V1, V1, V2),
              active# U93(tt(), V1, V2) -> mark# U94(isNatIListKind V2, V1, V2),
              active# U93(tt(), V1, V2) -> isNatIListKind# V2,
              active# U93(tt(), V1, V2) -> U94#(isNatIListKind V2, V1, V2),
              active# U94(tt(), V1, V2) -> mark# U95(isNat V1, V2),
              active# U94(tt(), V1, V2) -> isNat# V1,
              active# U94(tt(), V1, V2) -> U95#(isNat V1, V2),
                  active# U95(tt(), V2) -> mark# U96 isNatList V2,
                  active# U95(tt(), V2) -> isNatList# V2,
                  active# U95(tt(), V2) -> U96# isNatList V2,
                       active# U96 tt() -> mark# tt(),
                 U102#(X1, X2, mark X3) -> U102#(X1, X2, X3),
               U102#(X1, X2, active X3) -> U102#(X1, X2, X3),
                 U102#(X1, mark X2, X3) -> U102#(X1, X2, X3),
               U102#(X1, active X2, X3) -> U102#(X1, X2, X3),
                 U102#(mark X1, X2, X3) -> U102#(X1, X2, X3),
               U102#(active X1, X2, X3) -> U102#(X1, X2, X3),
                      isNatKind# mark X -> isNatKind# X,
                    isNatKind# active X -> isNatKind# X,
                 U101#(X1, X2, mark X3) -> U101#(X1, X2, X3),
               U101#(X1, X2, active X3) -> U101#(X1, X2, X3),
                 U101#(X1, mark X2, X3) -> U101#(X1, X2, X3),
               U101#(X1, active X2, X3) -> U101#(X1, X2, X3),
                 U101#(mark X1, X2, X3) -> U101#(X1, X2, X3),
               U101#(active X1, X2, X3) -> U101#(X1, X2, X3),
                 U103#(X1, X2, mark X3) -> U103#(X1, X2, X3),
               U103#(X1, X2, active X3) -> U103#(X1, X2, X3),
                 U103#(X1, mark X2, X3) -> U103#(X1, X2, X3),
               U103#(X1, active X2, X3) -> U103#(X1, X2, X3),
                 U103#(mark X1, X2, X3) -> U103#(X1, X2, X3),
               U103#(active X1, X2, X3) -> U103#(X1, X2, X3),
                 isNatIListKind# mark X -> isNatIListKind# X,
               isNatIListKind# active X -> isNatIListKind# X,
                 U104#(X1, X2, mark X3) -> U104#(X1, X2, X3),
               U104#(X1, X2, active X3) -> U104#(X1, X2, X3),
                 U104#(X1, mark X2, X3) -> U104#(X1, X2, X3),
               U104#(X1, active X2, X3) -> U104#(X1, X2, X3),
                 U104#(mark X1, X2, X3) -> U104#(X1, X2, X3),
               U104#(active X1, X2, X3) -> U104#(X1, X2, X3),
                     U105#(X1, mark X2) -> U105#(X1, X2),
                   U105#(X1, active X2) -> U105#(X1, X2),
                     U105#(mark X1, X2) -> U105#(X1, X2),
                   U105#(active X1, X2) -> U105#(X1, X2),
                          isNat# mark X -> isNat# X,
                        isNat# active X -> isNat# X,
                           U106# mark X -> U106# X,
                         U106# active X -> U106# X,
                     isNatIList# mark X -> isNatIList# X,
                   isNatIList# active X -> isNatIList# X,
                      U12#(X1, mark X2) -> U12#(X1, X2),
                    U12#(X1, active X2) -> U12#(X1, X2),
                      U12#(mark X1, X2) -> U12#(X1, X2),
                    U12#(active X1, X2) -> U12#(X1, X2),
                      U11#(X1, mark X2) -> U11#(X1, X2),
                    U11#(X1, active X2) -> U11#(X1, X2),
                      U11#(mark X1, X2) -> U11#(X1, X2),
                    U11#(active X1, X2) -> U11#(X1, X2),
                 U112#(X1, X2, mark X3) -> U112#(X1, X2, X3),
               U112#(X1, X2, active X3) -> U112#(X1, X2, X3),
                 U112#(X1, mark X2, X3) -> U112#(X1, X2, X3),
               U112#(X1, active X2, X3) -> U112#(X1, X2, X3),
                 U112#(mark X1, X2, X3) -> U112#(X1, X2, X3),
               U112#(active X1, X2, X3) -> U112#(X1, X2, X3),
                 U111#(X1, X2, mark X3) -> U111#(X1, X2, X3),
               U111#(X1, X2, active X3) -> U111#(X1, X2, X3),
                 U111#(X1, mark X2, X3) -> U111#(X1, X2, X3),
               U111#(X1, active X2, X3) -> U111#(X1, X2, X3),
                 U111#(mark X1, X2, X3) -> U111#(X1, X2, X3),
               U111#(active X1, X2, X3) -> U111#(X1, X2, X3),
                 U113#(X1, X2, mark X3) -> U113#(X1, X2, X3),
               U113#(X1, X2, active X3) -> U113#(X1, X2, X3),
                 U113#(X1, mark X2, X3) -> U113#(X1, X2, X3),
               U113#(X1, active X2, X3) -> U113#(X1, X2, X3),
                 U113#(mark X1, X2, X3) -> U113#(X1, X2, X3),
               U113#(active X1, X2, X3) -> U113#(X1, X2, X3),
                     U114#(X1, mark X2) -> U114#(X1, X2),
                   U114#(X1, active X2) -> U114#(X1, X2),
                     U114#(mark X1, X2) -> U114#(X1, X2),
                   U114#(active X1, X2) -> U114#(X1, X2),
                              s# mark X -> s# X,
                            s# active X -> s# X,
                         length# mark X -> length# X,
                       length# active X -> length# X,
                            U13# mark X -> U13# X,
                          U13# active X -> U13# X,
                      isNatList# mark X -> isNatList# X,
                    isNatList# active X -> isNatList# X,
                           U122# mark X -> U122# X,
                         U122# active X -> U122# X,
                     U121#(X1, mark X2) -> U121#(X1, X2),
                   U121#(X1, active X2) -> U121#(X1, X2),
                     U121#(mark X1, X2) -> U121#(X1, X2),
                   U121#(active X1, X2) -> U121#(X1, X2),
             U132#(X1, X2, X3, mark X4) -> U132#(X1, X2, X3, X4),
           U132#(X1, X2, X3, active X4) -> U132#(X1, X2, X3, X4),
             U132#(X1, X2, mark X3, X4) -> U132#(X1, X2, X3, X4),
           U132#(X1, X2, active X3, X4) -> U132#(X1, X2, X3, X4),
             U132#(X1, mark X2, X3, X4) -> U132#(X1, X2, X3, X4),
           U132#(X1, active X2, X3, X4) -> U132#(X1, X2, X3, X4),
             U132#(mark X1, X2, X3, X4) -> U132#(X1, X2, X3, X4),
           U132#(active X1, X2, X3, X4) -> U132#(X1, X2, X3, X4),
             U131#(X1, X2, X3, mark X4) -> U131#(X1, X2, X3, X4),
           U131#(X1, X2, X3, active X4) -> U131#(X1, X2, X3, X4),
             U131#(X1, X2, mark X3, X4) -> U131#(X1, X2, X3, X4),
           U131#(X1, X2, active X3, X4) -> U131#(X1, X2, X3, X4),
             U131#(X1, mark X2, X3, X4) -> U131#(X1, X2, X3, X4),
           U131#(X1, active X2, X3, X4) -> U131#(X1, X2, X3, X4),
             U131#(mark X1, X2, X3, X4) -> U131#(X1, X2, X3, X4),
           U131#(active X1, X2, X3, X4) -> U131#(X1, X2, X3, X4),
             U133#(X1, X2, X3, mark X4) -> U133#(X1, X2, X3, X4),
           U133#(X1, X2, X3, active X4) -> U133#(X1, X2, X3, X4),
             U133#(X1, X2, mark X3, X4) -> U133#(X1, X2, X3, X4),
           U133#(X1, X2, active X3, X4) -> U133#(X1, X2, X3, X4),
             U133#(X1, mark X2, X3, X4) -> U133#(X1, X2, X3, X4),
           U133#(X1, active X2, X3, X4) -> U133#(X1, X2, X3, X4),
             U133#(mark X1, X2, X3, X4) -> U133#(X1, X2, X3, X4),
           U133#(active X1, X2, X3, X4) -> U133#(X1, X2, X3, X4),
             U134#(X1, X2, X3, mark X4) -> U134#(X1, X2, X3, X4),
           U134#(X1, X2, X3, active X4) -> U134#(X1, X2, X3, X4),
             U134#(X1, X2, mark X3, X4) -> U134#(X1, X2, X3, X4),
           U134#(X1, X2, active X3, X4) -> U134#(X1, X2, X3, X4),
             U134#(X1, mark X2, X3, X4) -> U134#(X1, X2, X3, X4),
           U134#(X1, active X2, X3, X4) -> U134#(X1, X2, X3, X4),
             U134#(mark X1, X2, X3, X4) -> U134#(X1, X2, X3, X4),
           U134#(active X1, X2, X3, X4) -> U134#(X1, X2, X3, X4),
             U135#(X1, X2, X3, mark X4) -> U135#(X1, X2, X3, X4),
           U135#(X1, X2, X3, active X4) -> U135#(X1, X2, X3, X4),
             U135#(X1, X2, mark X3, X4) -> U135#(X1, X2, X3, X4),
           U135#(X1, X2, active X3, X4) -> U135#(X1, X2, X3, X4),
             U135#(X1, mark X2, X3, X4) -> U135#(X1, X2, X3, X4),
           U135#(X1, active X2, X3, X4) -> U135#(X1, X2, X3, X4),
             U135#(mark X1, X2, X3, X4) -> U135#(X1, X2, X3, X4),
           U135#(active X1, X2, X3, X4) -> U135#(X1, X2, X3, X4),
             U136#(X1, X2, X3, mark X4) -> U136#(X1, X2, X3, X4),
           U136#(X1, X2, X3, active X4) -> U136#(X1, X2, X3, X4),
             U136#(X1, X2, mark X3, X4) -> U136#(X1, X2, X3, X4),
           U136#(X1, X2, active X3, X4) -> U136#(X1, X2, X3, X4),
             U136#(X1, mark X2, X3, X4) -> U136#(X1, X2, X3, X4),
           U136#(X1, active X2, X3, X4) -> U136#(X1, X2, X3, X4),
             U136#(mark X1, X2, X3, X4) -> U136#(X1, X2, X3, X4),
           U136#(active X1, X2, X3, X4) -> U136#(X1, X2, X3, X4),
                     take#(X1, mark X2) -> take#(X1, X2),
                   take#(X1, active X2) -> take#(X1, X2),
                     take#(mark X1, X2) -> take#(X1, X2),
                   take#(active X1, X2) -> take#(X1, X2),
                      U22#(X1, mark X2) -> U22#(X1, X2),
                    U22#(X1, active X2) -> U22#(X1, X2),
                      U22#(mark X1, X2) -> U22#(X1, X2),
                    U22#(active X1, X2) -> U22#(X1, X2),
                      U21#(X1, mark X2) -> U21#(X1, X2),
                    U21#(X1, active X2) -> U21#(X1, X2),
                      U21#(mark X1, X2) -> U21#(X1, X2),
                    U21#(active X1, X2) -> U21#(X1, X2),
                            U23# mark X -> U23# X,
                          U23# active X -> U23# X,
                      U32#(X1, mark X2) -> U32#(X1, X2),
                    U32#(X1, active X2) -> U32#(X1, X2),
                      U32#(mark X1, X2) -> U32#(X1, X2),
                    U32#(active X1, X2) -> U32#(X1, X2),
                      U31#(X1, mark X2) -> U31#(X1, X2),
                    U31#(X1, active X2) -> U31#(X1, X2),
                      U31#(mark X1, X2) -> U31#(X1, X2),
                    U31#(active X1, X2) -> U31#(X1, X2),
                            U33# mark X -> U33# X,
                          U33# active X -> U33# X,
                  U42#(X1, X2, mark X3) -> U42#(X1, X2, X3),
                U42#(X1, X2, active X3) -> U42#(X1, X2, X3),
                  U42#(X1, mark X2, X3) -> U42#(X1, X2, X3),
                U42#(X1, active X2, X3) -> U42#(X1, X2, X3),
                  U42#(mark X1, X2, X3) -> U42#(X1, X2, X3),
                U42#(active X1, X2, X3) -> U42#(X1, X2, X3),
                  U41#(X1, X2, mark X3) -> U41#(X1, X2, X3),
                U41#(X1, X2, active X3) -> U41#(X1, X2, X3),
                  U41#(X1, mark X2, X3) -> U41#(X1, X2, X3),
                U41#(X1, active X2, X3) -> U41#(X1, X2, X3),
                  U41#(mark X1, X2, X3) -> U41#(X1, X2, X3),
                U41#(active X1, X2, X3) -> U41#(X1, X2, X3),
                  U43#(X1, X2, mark X3) -> U43#(X1, X2, X3),
                U43#(X1, X2, active X3) -> U43#(X1, X2, X3),
                  U43#(X1, mark X2, X3) -> U43#(X1, X2, X3),
                U43#(X1, active X2, X3) -> U43#(X1, X2, X3),
                  U43#(mark X1, X2, X3) -> U43#(X1, X2, X3),
                U43#(active X1, X2, X3) -> U43#(X1, X2, X3),
                  U44#(X1, X2, mark X3) -> U44#(X1, X2, X3),
                U44#(X1, X2, active X3) -> U44#(X1, X2, X3),
                  U44#(X1, mark X2, X3) -> U44#(X1, X2, X3),
                U44#(X1, active X2, X3) -> U44#(X1, X2, X3),
                  U44#(mark X1, X2, X3) -> U44#(X1, X2, X3),
                U44#(active X1, X2, X3) -> U44#(X1, X2, X3),
                      U45#(X1, mark X2) -> U45#(X1, X2),
                    U45#(X1, active X2) -> U45#(X1, X2),
                      U45#(mark X1, X2) -> U45#(X1, X2),
                    U45#(active X1, X2) -> U45#(X1, X2),
                            U46# mark X -> U46# X,
                          U46# active X -> U46# X,
                            U52# mark X -> U52# X,
                          U52# active X -> U52# X,
                      U51#(X1, mark X2) -> U51#(X1, X2),
                    U51#(X1, active X2) -> U51#(X1, X2),
                      U51#(mark X1, X2) -> U51#(X1, X2),
                    U51#(active X1, X2) -> U51#(X1, X2),
                            U62# mark X -> U62# X,
                          U62# active X -> U62# X,
                      U61#(X1, mark X2) -> U61#(X1, X2),
                    U61#(X1, active X2) -> U61#(X1, X2),
                      U61#(mark X1, X2) -> U61#(X1, X2),
                    U61#(active X1, X2) -> U61#(X1, X2),
                            U71# mark X -> U71# X,
                          U71# active X -> U71# X,
                            U81# mark X -> U81# X,
                          U81# active X -> U81# X,
                  U92#(X1, X2, mark X3) -> U92#(X1, X2, X3),
                U92#(X1, X2, active X3) -> U92#(X1, X2, X3),
                  U92#(X1, mark X2, X3) -> U92#(X1, X2, X3),
                U92#(X1, active X2, X3) -> U92#(X1, X2, X3),
                  U92#(mark X1, X2, X3) -> U92#(X1, X2, X3),
                U92#(active X1, X2, X3) -> U92#(X1, X2, X3),
                  U91#(X1, X2, mark X3) -> U91#(X1, X2, X3),
                U91#(X1, X2, active X3) -> U91#(X1, X2, X3),
                  U91#(X1, mark X2, X3) -> U91#(X1, X2, X3),
                U91#(X1, active X2, X3) -> U91#(X1, X2, X3),
                  U91#(mark X1, X2, X3) -> U91#(X1, X2, X3),
                U91#(active X1, X2, X3) -> U91#(X1, X2, X3),
                  U93#(X1, X2, mark X3) -> U93#(X1, X2, X3),
                U93#(X1, X2, active X3) -> U93#(X1, X2, X3),
                  U93#(X1, mark X2, X3) -> U93#(X1, X2, X3),
                U93#(X1, active X2, X3) -> U93#(X1, X2, X3),
                  U93#(mark X1, X2, X3) -> U93#(X1, X2, X3),
                U93#(active X1, X2, X3) -> U93#(X1, X2, X3),
                  U94#(X1, X2, mark X3) -> U94#(X1, X2, X3),
                U94#(X1, X2, active X3) -> U94#(X1, X2, X3),
                  U94#(X1, mark X2, X3) -> U94#(X1, X2, X3),
                U94#(X1, active X2, X3) -> U94#(X1, X2, X3),
                  U94#(mark X1, X2, X3) -> U94#(X1, X2, X3),
                U94#(active X1, X2, X3) -> U94#(X1, X2, X3),
                      U95#(X1, mark X2) -> U95#(X1, X2),
                    U95#(X1, active X2) -> U95#(X1, X2),
                      U95#(mark X1, X2) -> U95#(X1, X2),
                    U95#(active X1, X2) -> U95#(X1, X2),
                            U96# mark X -> U96# X,
                          U96# active X -> U96# X
   }
  TRS:
  {
                    mark cons(X1, X2) -> active cons(mark X1, X2),
                             mark 0() -> active 0(),
                         mark zeros() -> active zeros(),
                mark U102(X1, X2, X3) -> active U102(mark X1, X2, X3),
                     mark isNatKind X -> active isNatKind X,
                mark U101(X1, X2, X3) -> active U101(mark X1, X2, X3),
                            mark tt() -> active tt(),
                mark U103(X1, X2, X3) -> active U103(mark X1, X2, X3),
                mark isNatIListKind X -> active isNatIListKind X,
                mark U104(X1, X2, X3) -> active U104(mark X1, X2, X3),
                    mark U105(X1, X2) -> active U105(mark X1, X2),
                         mark isNat X -> active isNat X,
                          mark U106 X -> active U106 mark X,
                    mark isNatIList X -> active isNatIList X,
                     mark U12(X1, X2) -> active U12(mark X1, X2),
                     mark U11(X1, X2) -> active U11(mark X1, X2),
                mark U112(X1, X2, X3) -> active U112(mark X1, X2, X3),
                mark U111(X1, X2, X3) -> active U111(mark X1, X2, X3),
                mark U113(X1, X2, X3) -> active U113(mark X1, X2, X3),
                    mark U114(X1, X2) -> active U114(mark X1, X2),
                             mark s X -> active s mark X,
                        mark length X -> active length mark X,
                           mark U13 X -> active U13 mark X,
                     mark isNatList X -> active isNatList X,
                          mark U122 X -> active U122 mark X,
                    mark U121(X1, X2) -> active U121(mark X1, X2),
                           mark nil() -> active nil(),
            mark U132(X1, X2, X3, X4) -> active U132(mark X1, X2, X3, X4),
            mark U131(X1, X2, X3, X4) -> active U131(mark X1, X2, X3, X4),
            mark U133(X1, X2, X3, X4) -> active U133(mark X1, X2, X3, X4),
            mark U134(X1, X2, X3, X4) -> active U134(mark X1, X2, X3, X4),
            mark U135(X1, X2, X3, X4) -> active U135(mark X1, X2, X3, X4),
            mark U136(X1, X2, X3, X4) -> active U136(mark X1, X2, X3, X4),
                    mark take(X1, X2) -> active take(mark X1, mark X2),
                     mark U22(X1, X2) -> active U22(mark X1, X2),
                     mark U21(X1, X2) -> active U21(mark X1, X2),
                           mark U23 X -> active U23 mark X,
                     mark U32(X1, X2) -> active U32(mark X1, X2),
                     mark U31(X1, X2) -> active U31(mark X1, X2),
                           mark U33 X -> active U33 mark X,
                 mark U42(X1, X2, X3) -> active U42(mark X1, X2, X3),
                 mark U41(X1, X2, X3) -> active U41(mark X1, X2, X3),
                 mark U43(X1, X2, X3) -> active U43(mark X1, X2, X3),
                 mark U44(X1, X2, X3) -> active U44(mark X1, X2, X3),
                     mark U45(X1, X2) -> active U45(mark X1, X2),
                           mark U46 X -> active U46 mark X,
                           mark U52 X -> active U52 mark X,
                     mark U51(X1, X2) -> active U51(mark X1, X2),
                           mark U62 X -> active U62 mark X,
                     mark U61(X1, X2) -> active U61(mark X1, X2),
                           mark U71 X -> active U71 mark X,
                           mark U81 X -> active U81 mark X,
                 mark U92(X1, X2, X3) -> active U92(mark X1, X2, X3),
                 mark U91(X1, X2, X3) -> active U91(mark X1, X2, X3),
                 mark U93(X1, X2, X3) -> active U93(mark X1, X2, X3),
                 mark U94(X1, X2, X3) -> active U94(mark X1, X2, X3),
                     mark U95(X1, X2) -> active U95(mark X1, X2),
                           mark U96 X -> active U96 mark X,
                    cons(X1, mark X2) -> cons(X1, X2),
                  cons(X1, active X2) -> cons(X1, X2),
                    cons(mark X1, X2) -> cons(X1, X2),
                  cons(active X1, X2) -> cons(X1, X2),
                       active zeros() -> mark cons(0(), zeros()),
            active U102(tt(), V1, V2) -> mark U103(isNatIListKind V2, V1, V2),
                 active isNatKind 0() -> mark tt(),
                active isNatKind s V1 -> mark U81 isNatKind V1,
           active isNatKind length V1 -> mark U71 isNatIListKind V1,
            active U101(tt(), V1, V2) -> mark U102(isNatKind V1, V1, V2),
            active U103(tt(), V1, V2) -> mark U104(isNatIListKind V2, V1, V2),
   active isNatIListKind cons(V1, V2) -> mark U51(isNatKind V1, V2),
        active isNatIListKind zeros() -> mark tt(),
          active isNatIListKind nil() -> mark tt(),
   active isNatIListKind take(V1, V2) -> mark U61(isNatKind V1, V2),
            active U104(tt(), V1, V2) -> mark U105(isNat V1, V2),
                active U105(tt(), V2) -> mark U106 isNatIList V2,
                     active isNat 0() -> mark tt(),
                    active isNat s V1 -> mark U21(isNatKind V1, V1),
               active isNat length V1 -> mark U11(isNatIListKind V1, V1),
                     active U106 tt() -> mark tt(),
                  active isNatIList V -> mark U31(isNatIListKind V, V),
       active isNatIList cons(V1, V2) -> mark U41(isNatKind V1, V1, V2),
            active isNatIList zeros() -> mark tt(),
                 active U12(tt(), V1) -> mark U13 isNatList V1,
                 active U11(tt(), V1) -> mark U12(isNatIListKind V1, V1),
              active U112(tt(), L, N) -> mark U113(isNat N, L, N),
              active U111(tt(), L, N) -> mark U112(isNatIListKind L, L, N),
              active U113(tt(), L, N) -> mark U114(isNatKind N, L),
                 active U114(tt(), L) -> mark s length L,
             active length cons(N, L) -> mark U111(isNatList L, L, N),
                  active length nil() -> mark 0(),
                      active U13 tt() -> mark tt(),
        active isNatList cons(V1, V2) -> mark U91(isNatKind V1, V1, V2),
               active isNatList nil() -> mark tt(),
        active isNatList take(V1, V2) -> mark U101(isNatKind V1, V1, V2),
                     active U122 tt() -> mark nil(),
                active U121(tt(), IL) -> mark U122 isNatIListKind IL,
          active U132(tt(), IL, M, N) -> mark U133(isNat M, IL, M, N),
          active U131(tt(), IL, M, N) -> mark U132(isNatIListKind IL, IL, M, N),
          active U133(tt(), IL, M, N) -> mark U134(isNatKind M, IL, M, N),
          active U134(tt(), IL, M, N) -> mark U135(isNat N, IL, M, N),
          active U135(tt(), IL, M, N) -> mark U136(isNatKind N, IL, M, N),
          active U136(tt(), IL, M, N) -> mark cons(N, take(M, IL)),
                 active take(0(), IL) -> mark U121(isNatIList IL, IL),
        active take(s M, cons(N, IL)) -> mark U131(isNatIList IL, IL, M, N),
                 active U22(tt(), V1) -> mark U23 isNat V1,
                 active U21(tt(), V1) -> mark U22(isNatKind V1, V1),
                      active U23 tt() -> mark tt(),
                  active U32(tt(), V) -> mark U33 isNatList V,
                  active U31(tt(), V) -> mark U32(isNatIListKind V, V),
                      active U33 tt() -> mark tt(),
             active U42(tt(), V1, V2) -> mark U43(isNatIListKind V2, V1, V2),
             active U41(tt(), V1, V2) -> mark U42(isNatKind V1, V1, V2),
             active U43(tt(), V1, V2) -> mark U44(isNatIListKind V2, V1, V2),
             active U44(tt(), V1, V2) -> mark U45(isNat V1, V2),
                 active U45(tt(), V2) -> mark U46 isNatIList V2,
                      active U46 tt() -> mark tt(),
                      active U52 tt() -> mark tt(),
                 active U51(tt(), V2) -> mark U52 isNatIListKind V2,
                      active U62 tt() -> mark tt(),
                 active U61(tt(), V2) -> mark U62 isNatIListKind V2,
                      active U71 tt() -> mark tt(),
                      active U81 tt() -> mark tt(),
             active U92(tt(), V1, V2) -> mark U93(isNatIListKind V2, V1, V2),
             active U91(tt(), V1, V2) -> mark U92(isNatKind V1, V1, V2),
             active U93(tt(), V1, V2) -> mark U94(isNatIListKind V2, V1, V2),
             active U94(tt(), V1, V2) -> mark U95(isNat V1, V2),
                 active U95(tt(), V2) -> mark U96 isNatList V2,
                      active U96 tt() -> mark tt(),
                U102(X1, X2, mark X3) -> U102(X1, X2, X3),
              U102(X1, X2, active X3) -> U102(X1, X2, X3),
                U102(X1, mark X2, X3) -> U102(X1, X2, X3),
              U102(X1, active X2, X3) -> U102(X1, X2, X3),
                U102(mark X1, X2, X3) -> U102(X1, X2, X3),
              U102(active X1, X2, X3) -> U102(X1, X2, X3),
                     isNatKind mark X -> isNatKind X,
                   isNatKind active X -> isNatKind X,
                U101(X1, X2, mark X3) -> U101(X1, X2, X3),
              U101(X1, X2, active X3) -> U101(X1, X2, X3),
                U101(X1, mark X2, X3) -> U101(X1, X2, X3),
              U101(X1, active X2, X3) -> U101(X1, X2, X3),
                U101(mark X1, X2, X3) -> U101(X1, X2, X3),
              U101(active X1, X2, X3) -> U101(X1, X2, X3),
                U103(X1, X2, mark X3) -> U103(X1, X2, X3),
              U103(X1, X2, active X3) -> U103(X1, X2, X3),
                U103(X1, mark X2, X3) -> U103(X1, X2, X3),
              U103(X1, active X2, X3) -> U103(X1, X2, X3),
                U103(mark X1, X2, X3) -> U103(X1, X2, X3),
              U103(active X1, X2, X3) -> U103(X1, X2, X3),
                isNatIListKind mark X -> isNatIListKind X,
              isNatIListKind active X -> isNatIListKind X,
                U104(X1, X2, mark X3) -> U104(X1, X2, X3),
              U104(X1, X2, active X3) -> U104(X1, X2, X3),
                U104(X1, mark X2, X3) -> U104(X1, X2, X3),
              U104(X1, active X2, X3) -> U104(X1, X2, X3),
                U104(mark X1, X2, X3) -> U104(X1, X2, X3),
              U104(active X1, X2, X3) -> U104(X1, X2, X3),
                    U105(X1, mark X2) -> U105(X1, X2),
                  U105(X1, active X2) -> U105(X1, X2),
                    U105(mark X1, X2) -> U105(X1, X2),
                  U105(active X1, X2) -> U105(X1, X2),
                         isNat mark X -> isNat X,
                       isNat active X -> isNat X,
                          U106 mark X -> U106 X,
                        U106 active X -> U106 X,
                    isNatIList mark X -> isNatIList X,
                  isNatIList active X -> isNatIList X,
                     U12(X1, mark X2) -> U12(X1, X2),
                   U12(X1, active X2) -> U12(X1, X2),
                     U12(mark X1, X2) -> U12(X1, X2),
                   U12(active X1, X2) -> U12(X1, X2),
                     U11(X1, mark X2) -> U11(X1, X2),
                   U11(X1, active X2) -> U11(X1, X2),
                     U11(mark X1, X2) -> U11(X1, X2),
                   U11(active X1, X2) -> U11(X1, X2),
                U112(X1, X2, mark X3) -> U112(X1, X2, X3),
              U112(X1, X2, active X3) -> U112(X1, X2, X3),
                U112(X1, mark X2, X3) -> U112(X1, X2, X3),
              U112(X1, active X2, X3) -> U112(X1, X2, X3),
                U112(mark X1, X2, X3) -> U112(X1, X2, X3),
              U112(active X1, X2, X3) -> U112(X1, X2, X3),
                U111(X1, X2, mark X3) -> U111(X1, X2, X3),
              U111(X1, X2, active X3) -> U111(X1, X2, X3),
                U111(X1, mark X2, X3) -> U111(X1, X2, X3),
              U111(X1, active X2, X3) -> U111(X1, X2, X3),
                U111(mark X1, X2, X3) -> U111(X1, X2, X3),
              U111(active X1, X2, X3) -> U111(X1, X2, X3),
                U113(X1, X2, mark X3) -> U113(X1, X2, X3),
              U113(X1, X2, active X3) -> U113(X1, X2, X3),
                U113(X1, mark X2, X3) -> U113(X1, X2, X3),
              U113(X1, active X2, X3) -> U113(X1, X2, X3),
                U113(mark X1, X2, X3) -> U113(X1, X2, X3),
              U113(active X1, X2, X3) -> U113(X1, X2, X3),
                    U114(X1, mark X2) -> U114(X1, X2),
                  U114(X1, active X2) -> U114(X1, X2),
                    U114(mark X1, X2) -> U114(X1, X2),
                  U114(active X1, X2) -> U114(X1, X2),
                             s mark X -> s X,
                           s active X -> s X,
                        length mark X -> length X,
                      length active X -> length X,
                           U13 mark X -> U13 X,
                         U13 active X -> U13 X,
                     isNatList mark X -> isNatList X,
                   isNatList active X -> isNatList X,
                          U122 mark X -> U122 X,
                        U122 active X -> U122 X,
                    U121(X1, mark X2) -> U121(X1, X2),
                  U121(X1, active X2) -> U121(X1, X2),
                    U121(mark X1, X2) -> U121(X1, X2),
                  U121(active X1, X2) -> U121(X1, X2),
            U132(X1, X2, X3, mark X4) -> U132(X1, X2, X3, X4),
          U132(X1, X2, X3, active X4) -> U132(X1, X2, X3, X4),
            U132(X1, X2, mark X3, X4) -> U132(X1, X2, X3, X4),
          U132(X1, X2, active X3, X4) -> U132(X1, X2, X3, X4),
            U132(X1, mark X2, X3, X4) -> U132(X1, X2, X3, X4),
          U132(X1, active X2, X3, X4) -> U132(X1, X2, X3, X4),
            U132(mark X1, X2, X3, X4) -> U132(X1, X2, X3, X4),
          U132(active X1, X2, X3, X4) -> U132(X1, X2, X3, X4),
            U131(X1, X2, X3, mark X4) -> U131(X1, X2, X3, X4),
          U131(X1, X2, X3, active X4) -> U131(X1, X2, X3, X4),
            U131(X1, X2, mark X3, X4) -> U131(X1, X2, X3, X4),
          U131(X1, X2, active X3, X4) -> U131(X1, X2, X3, X4),
            U131(X1, mark X2, X3, X4) -> U131(X1, X2, X3, X4),
          U131(X1, active X2, X3, X4) -> U131(X1, X2, X3, X4),
            U131(mark X1, X2, X3, X4) -> U131(X1, X2, X3, X4),
          U131(active X1, X2, X3, X4) -> U131(X1, X2, X3, X4),
            U133(X1, X2, X3, mark X4) -> U133(X1, X2, X3, X4),
          U133(X1, X2, X3, active X4) -> U133(X1, X2, X3, X4),
            U133(X1, X2, mark X3, X4) -> U133(X1, X2, X3, X4),
          U133(X1, X2, active X3, X4) -> U133(X1, X2, X3, X4),
            U133(X1, mark X2, X3, X4) -> U133(X1, X2, X3, X4),
          U133(X1, active X2, X3, X4) -> U133(X1, X2, X3, X4),
            U133(mark X1, X2, X3, X4) -> U133(X1, X2, X3, X4),
          U133(active X1, X2, X3, X4) -> U133(X1, X2, X3, X4),
            U134(X1, X2, X3, mark X4) -> U134(X1, X2, X3, X4),
          U134(X1, X2, X3, active X4) -> U134(X1, X2, X3, X4),
            U134(X1, X2, mark X3, X4) -> U134(X1, X2, X3, X4),
          U134(X1, X2, active X3, X4) -> U134(X1, X2, X3, X4),
            U134(X1, mark X2, X3, X4) -> U134(X1, X2, X3, X4),
          U134(X1, active X2, X3, X4) -> U134(X1, X2, X3, X4),
            U134(mark X1, X2, X3, X4) -> U134(X1, X2, X3, X4),
          U134(active X1, X2, X3, X4) -> U134(X1, X2, X3, X4),
            U135(X1, X2, X3, mark X4) -> U135(X1, X2, X3, X4),
          U135(X1, X2, X3, active X4) -> U135(X1, X2, X3, X4),
            U135(X1, X2, mark X3, X4) -> U135(X1, X2, X3, X4),
          U135(X1, X2, active X3, X4) -> U135(X1, X2, X3, X4),
            U135(X1, mark X2, X3, X4) -> U135(X1, X2, X3, X4),
          U135(X1, active X2, X3, X4) -> U135(X1, X2, X3, X4),
            U135(mark X1, X2, X3, X4) -> U135(X1, X2, X3, X4),
          U135(active X1, X2, X3, X4) -> U135(X1, X2, X3, X4),
            U136(X1, X2, X3, mark X4) -> U136(X1, X2, X3, X4),
          U136(X1, X2, X3, active X4) -> U136(X1, X2, X3, X4),
            U136(X1, X2, mark X3, X4) -> U136(X1, X2, X3, X4),
          U136(X1, X2, active X3, X4) -> U136(X1, X2, X3, X4),
            U136(X1, mark X2, X3, X4) -> U136(X1, X2, X3, X4),
          U136(X1, active X2, X3, X4) -> U136(X1, X2, X3, X4),
            U136(mark X1, X2, X3, X4) -> U136(X1, X2, X3, X4),
          U136(active X1, X2, X3, X4) -> U136(X1, X2, X3, X4),
                    take(X1, mark X2) -> take(X1, X2),
                  take(X1, active X2) -> take(X1, X2),
                    take(mark X1, X2) -> take(X1, X2),
                  take(active X1, X2) -> take(X1, X2),
                     U22(X1, mark X2) -> U22(X1, X2),
                   U22(X1, active X2) -> U22(X1, X2),
                     U22(mark X1, X2) -> U22(X1, X2),
                   U22(active X1, X2) -> U22(X1, X2),
                     U21(X1, mark X2) -> U21(X1, X2),
                   U21(X1, active X2) -> U21(X1, X2),
                     U21(mark X1, X2) -> U21(X1, X2),
                   U21(active X1, X2) -> U21(X1, X2),
                           U23 mark X -> U23 X,
                         U23 active X -> U23 X,
                     U32(X1, mark X2) -> U32(X1, X2),
                   U32(X1, active X2) -> U32(X1, X2),
                     U32(mark X1, X2) -> U32(X1, X2),
                   U32(active X1, X2) -> U32(X1, X2),
                     U31(X1, mark X2) -> U31(X1, X2),
                   U31(X1, active X2) -> U31(X1, X2),
                     U31(mark X1, X2) -> U31(X1, X2),
                   U31(active X1, X2) -> U31(X1, X2),
                           U33 mark X -> U33 X,
                         U33 active X -> U33 X,
                 U42(X1, X2, mark X3) -> U42(X1, X2, X3),
               U42(X1, X2, active X3) -> U42(X1, X2, X3),
                 U42(X1, mark X2, X3) -> U42(X1, X2, X3),
               U42(X1, active X2, X3) -> U42(X1, X2, X3),
                 U42(mark X1, X2, X3) -> U42(X1, X2, X3),
               U42(active X1, X2, X3) -> U42(X1, X2, X3),
                 U41(X1, X2, mark X3) -> U41(X1, X2, X3),
               U41(X1, X2, active X3) -> U41(X1, X2, X3),
                 U41(X1, mark X2, X3) -> U41(X1, X2, X3),
               U41(X1, active X2, X3) -> U41(X1, X2, X3),
                 U41(mark X1, X2, X3) -> U41(X1, X2, X3),
               U41(active X1, X2, X3) -> U41(X1, X2, X3),
                 U43(X1, X2, mark X3) -> U43(X1, X2, X3),
               U43(X1, X2, active X3) -> U43(X1, X2, X3),
                 U43(X1, mark X2, X3) -> U43(X1, X2, X3),
               U43(X1, active X2, X3) -> U43(X1, X2, X3),
                 U43(mark X1, X2, X3) -> U43(X1, X2, X3),
               U43(active X1, X2, X3) -> U43(X1, X2, X3),
                 U44(X1, X2, mark X3) -> U44(X1, X2, X3),
               U44(X1, X2, active X3) -> U44(X1, X2, X3),
                 U44(X1, mark X2, X3) -> U44(X1, X2, X3),
               U44(X1, active X2, X3) -> U44(X1, X2, X3),
                 U44(mark X1, X2, X3) -> U44(X1, X2, X3),
               U44(active X1, X2, X3) -> U44(X1, X2, X3),
                     U45(X1, mark X2) -> U45(X1, X2),
                   U45(X1, active X2) -> U45(X1, X2),
                     U45(mark X1, X2) -> U45(X1, X2),
                   U45(active X1, X2) -> U45(X1, X2),
                           U46 mark X -> U46 X,
                         U46 active X -> U46 X,
                           U52 mark X -> U52 X,
                         U52 active X -> U52 X,
                     U51(X1, mark X2) -> U51(X1, X2),
                   U51(X1, active X2) -> U51(X1, X2),
                     U51(mark X1, X2) -> U51(X1, X2),
                   U51(active X1, X2) -> U51(X1, X2),
                           U62 mark X -> U62 X,
                         U62 active X -> U62 X,
                     U61(X1, mark X2) -> U61(X1, X2),
                   U61(X1, active X2) -> U61(X1, X2),
                     U61(mark X1, X2) -> U61(X1, X2),
                   U61(active X1, X2) -> U61(X1, X2),
                           U71 mark X -> U71 X,
                         U71 active X -> U71 X,
                           U81 mark X -> U81 X,
                         U81 active X -> U81 X,
                 U92(X1, X2, mark X3) -> U92(X1, X2, X3),
               U92(X1, X2, active X3) -> U92(X1, X2, X3),
                 U92(X1, mark X2, X3) -> U92(X1, X2, X3),
               U92(X1, active X2, X3) -> U92(X1, X2, X3),
                 U92(mark X1, X2, X3) -> U92(X1, X2, X3),
               U92(active X1, X2, X3) -> U92(X1, X2, X3),
                 U91(X1, X2, mark X3) -> U91(X1, X2, X3),
               U91(X1, X2, active X3) -> U91(X1, X2, X3),
                 U91(X1, mark X2, X3) -> U91(X1, X2, X3),
               U91(X1, active X2, X3) -> U91(X1, X2, X3),
                 U91(mark X1, X2, X3) -> U91(X1, X2, X3),
               U91(active X1, X2, X3) -> U91(X1, X2, X3),
                 U93(X1, X2, mark X3) -> U93(X1, X2, X3),
               U93(X1, X2, active X3) -> U93(X1, X2, X3),
                 U93(X1, mark X2, X3) -> U93(X1, X2, X3),
               U93(X1, active X2, X3) -> U93(X1, X2, X3),
                 U93(mark X1, X2, X3) -> U93(X1, X2, X3),
               U93(active X1, X2, X3) -> U93(X1, X2, X3),
                 U94(X1, X2, mark X3) -> U94(X1, X2, X3),
               U94(X1, X2, active X3) -> U94(X1, X2, X3),
                 U94(X1, mark X2, X3) -> U94(X1, X2, X3),
               U94(X1, active X2, X3) -> U94(X1, X2, X3),
                 U94(mark X1, X2, X3) -> U94(X1, X2, X3),
               U94(active X1, X2, X3) -> U94(X1, X2, X3),
                     U95(X1, mark X2) -> U95(X1, X2),
                   U95(X1, active X2) -> U95(X1, X2),
                     U95(mark X1, X2) -> U95(X1, X2),
                   U95(active X1, X2) -> U95(X1, X2),
                           U96 mark X -> U96 X,
                         U96 active X -> U96 X
  }
  EDG:
   {
    (active# U136(tt(), IL, M, N) -> take#(M, IL), take#(active X1, X2) -> take#(X1, X2))
    (active# U136(tt(), IL, M, N) -> take#(M, IL), take#(mark X1, X2) -> take#(X1, X2))
    (active# U136(tt(), IL, M, N) -> take#(M, IL), take#(X1, active X2) -> take#(X1, X2))
    (active# U136(tt(), IL, M, N) -> take#(M, IL), take#(X1, mark X2) -> take#(X1, X2))
    (mark# U101(X1, X2, X3) -> active# U101(mark X1, X2, X3), active# U101(tt(), V1, V2) -> isNatKind# V1)
    (mark# U101(X1, X2, X3) -> active# U101(mark X1, X2, X3), active# U101(tt(), V1, V2) -> U102#(isNatKind V1, V1, V2))
    (mark# U101(X1, X2, X3) -> active# U101(mark X1, X2, X3), active# U101(tt(), V1, V2) -> mark# U102(isNatKind V1, V1, V2))
    (mark# U104(X1, X2, X3) -> active# U104(mark X1, X2, X3), active# U104(tt(), V1, V2) -> isNat# V1)
    (mark# U104(X1, X2, X3) -> active# U104(mark X1, X2, X3), active# U104(tt(), V1, V2) -> U105#(isNat V1, V2))
    (mark# U104(X1, X2, X3) -> active# U104(mark X1, X2, X3), active# U104(tt(), V1, V2) -> mark# U105(isNat V1, V2))
    (mark# U111(X1, X2, X3) -> active# U111(mark X1, X2, X3), active# U111(tt(), L, N) -> U112#(isNatIListKind L, L, N))
    (mark# U111(X1, X2, X3) -> active# U111(mark X1, X2, X3), active# U111(tt(), L, N) -> isNatIListKind# L)
    (mark# U111(X1, X2, X3) -> active# U111(mark X1, X2, X3), active# U111(tt(), L, N) -> mark# U112(isNatIListKind L, L, N))
    (mark# U132(X1, X2, X3, X4) -> active# U132(mark X1, X2, X3, X4), active# U132(tt(), IL, M, N) -> U133#(isNat M, IL, M, N))
    (mark# U132(X1, X2, X3, X4) -> active# U132(mark X1, X2, X3, X4), active# U132(tt(), IL, M, N) -> isNat# M)
    (mark# U132(X1, X2, X3, X4) -> active# U132(mark X1, X2, X3, X4), active# U132(tt(), IL, M, N) -> mark# U133(isNat M, IL, M, N))
    (mark# U133(X1, X2, X3, X4) -> active# U133(mark X1, X2, X3, X4), active# U133(tt(), IL, M, N) -> U134#(isNatKind M, IL, M, N))
    (mark# U133(X1, X2, X3, X4) -> active# U133(mark X1, X2, X3, X4), active# U133(tt(), IL, M, N) -> isNatKind# M)
    (mark# U133(X1, X2, X3, X4) -> active# U133(mark X1, X2, X3, X4), active# U133(tt(), IL, M, N) -> mark# U134(isNatKind M, IL, M, N))
    (mark# U135(X1, X2, X3, X4) -> active# U135(mark X1, X2, X3, X4), active# U135(tt(), IL, M, N) -> U136#(isNatKind N, IL, M, N))
    (mark# U135(X1, X2, X3, X4) -> active# U135(mark X1, X2, X3, X4), active# U135(tt(), IL, M, N) -> isNatKind# N)
    (mark# U135(X1, X2, X3, X4) -> active# U135(mark X1, X2, X3, X4), active# U135(tt(), IL, M, N) -> mark# U136(isNatKind N, IL, M, N))
    (mark# U42(X1, X2, X3) -> active# U42(mark X1, X2, X3), active# U42(tt(), V1, V2) -> U43#(isNatIListKind V2, V1, V2))
    (mark# U42(X1, X2, X3) -> active# U42(mark X1, X2, X3), active# U42(tt(), V1, V2) -> isNatIListKind# V2)
    (mark# U42(X1, X2, X3) -> active# U42(mark X1, X2, X3), active# U42(tt(), V1, V2) -> mark# U43(isNatIListKind V2, V1, V2))
    (mark# U43(X1, X2, X3) -> active# U43(mark X1, X2, X3), active# U43(tt(), V1, V2) -> U44#(isNatIListKind V2, V1, V2))
    (mark# U43(X1, X2, X3) -> active# U43(mark X1, X2, X3), active# U43(tt(), V1, V2) -> isNatIListKind# V2)
    (mark# U43(X1, X2, X3) -> active# U43(mark X1, X2, X3), active# U43(tt(), V1, V2) -> mark# U44(isNatIListKind V2, V1, V2))
    (mark# U92(X1, X2, X3) -> active# U92(mark X1, X2, X3), active# U92(tt(), V1, V2) -> U93#(isNatIListKind V2, V1, V2))
    (mark# U92(X1, X2, X3) -> active# U92(mark X1, X2, X3), active# U92(tt(), V1, V2) -> isNatIListKind# V2)
    (mark# U92(X1, X2, X3) -> active# U92(mark X1, X2, X3), active# U92(tt(), V1, V2) -> mark# U93(isNatIListKind V2, V1, V2))
    (mark# U93(X1, X2, X3) -> active# U93(mark X1, X2, X3), active# U93(tt(), V1, V2) -> U94#(isNatIListKind V2, V1, V2))
    (mark# U93(X1, X2, X3) -> active# U93(mark X1, X2, X3), active# U93(tt(), V1, V2) -> isNatIListKind# V2)
    (mark# U93(X1, X2, X3) -> active# U93(mark X1, X2, X3), active# U93(tt(), V1, V2) -> mark# U94(isNatIListKind V2, V1, V2))
    (active# U102(tt(), V1, V2) -> mark# U103(isNatIListKind V2, V1, V2), mark# U103(X1, X2, X3) -> U103#(mark X1, X2, X3))
    (active# U102(tt(), V1, V2) -> mark# U103(isNatIListKind V2, V1, V2), mark# U103(X1, X2, X3) -> active# U103(mark X1, X2, X3))
    (active# U102(tt(), V1, V2) -> mark# U103(isNatIListKind V2, V1, V2), mark# U103(X1, X2, X3) -> mark# X1)
    (active# U103(tt(), V1, V2) -> mark# U104(isNatIListKind V2, V1, V2), mark# U104(X1, X2, X3) -> U104#(mark X1, X2, X3))
    (active# U103(tt(), V1, V2) -> mark# U104(isNatIListKind V2, V1, V2), mark# U104(X1, X2, X3) -> active# U104(mark X1, X2, X3))
    (active# U103(tt(), V1, V2) -> mark# U104(isNatIListKind V2, V1, V2), mark# U104(X1, X2, X3) -> mark# X1)
    (active# U112(tt(), L, N) -> mark# U113(isNat N, L, N), mark# U113(X1, X2, X3) -> U113#(mark X1, X2, X3))
    (active# U112(tt(), L, N) -> mark# U113(isNat N, L, N), mark# U113(X1, X2, X3) -> active# U113(mark X1, X2, X3))
    (active# U112(tt(), L, N) -> mark# U113(isNat N, L, N), mark# U113(X1, X2, X3) -> mark# X1)
    (active# length cons(N, L) -> mark# U111(isNatList L, L, N), mark# U111(X1, X2, X3) -> U111#(mark X1, X2, X3))
    (active# length cons(N, L) -> mark# U111(isNatList L, L, N), mark# U111(X1, X2, X3) -> active# U111(mark X1, X2, X3))
    (active# length cons(N, L) -> mark# U111(isNatList L, L, N), mark# U111(X1, X2, X3) -> mark# X1)
    (active# isNatList take(V1, V2) -> mark# U101(isNatKind V1, V1, V2), mark# U101(X1, X2, X3) -> U101#(mark X1, X2, X3))
    (active# isNatList take(V1, V2) -> mark# U101(isNatKind V1, V1, V2), mark# U101(X1, X2, X3) -> active# U101(mark X1, X2, X3))
    (active# isNatList take(V1, V2) -> mark# U101(isNatKind V1, V1, V2), mark# U101(X1, X2, X3) -> mark# X1)
    (active# U131(tt(), IL, M, N) -> mark# U132(isNatIListKind IL, IL, M, N), mark# U132(X1, X2, X3, X4) -> U132#(mark X1, X2, X3, X4))
    (active# U131(tt(), IL, M, N) -> mark# U132(isNatIListKind IL, IL, M, N), mark# U132(X1, X2, X3, X4) -> active# U132(mark X1, X2, X3, X4))
    (active# U131(tt(), IL, M, N) -> mark# U132(isNatIListKind IL, IL, M, N), mark# U132(X1, X2, X3, X4) -> mark# X1)
    (active# U134(tt(), IL, M, N) -> mark# U135(isNat N, IL, M, N), mark# U135(X1, X2, X3, X4) -> U135#(mark X1, X2, X3, X4))
    (active# U134(tt(), IL, M, N) -> mark# U135(isNat N, IL, M, N), mark# U135(X1, X2, X3, X4) -> active# U135(mark X1, X2, X3, X4))
    (active# U134(tt(), IL, M, N) -> mark# U135(isNat N, IL, M, N), mark# U135(X1, X2, X3, X4) -> mark# X1)
    (active# take(s M, cons(N, IL)) -> mark# U131(isNatIList IL, IL, M, N), mark# U131(X1, X2, X3, X4) -> U131#(mark X1, X2, X3, X4))
    (active# take(s M, cons(N, IL)) -> mark# U131(isNatIList IL, IL, M, N), mark# U131(X1, X2, X3, X4) -> active# U131(mark X1, X2, X3, X4))
    (active# take(s M, cons(N, IL)) -> mark# U131(isNatIList IL, IL, M, N), mark# U131(X1, X2, X3, X4) -> mark# X1)
    (active# U41(tt(), V1, V2) -> mark# U42(isNatKind V1, V1, V2), mark# U42(X1, X2, X3) -> U42#(mark X1, X2, X3))
    (active# U41(tt(), V1, V2) -> mark# U42(isNatKind V1, V1, V2), mark# U42(X1, X2, X3) -> active# U42(mark X1, X2, X3))
    (active# U41(tt(), V1, V2) -> mark# U42(isNatKind V1, V1, V2), mark# U42(X1, X2, X3) -> mark# X1)
    (active# U92(tt(), V1, V2) -> mark# U93(isNatIListKind V2, V1, V2), mark# U93(X1, X2, X3) -> U93#(mark X1, X2, X3))
    (active# U92(tt(), V1, V2) -> mark# U93(isNatIListKind V2, V1, V2), mark# U93(X1, X2, X3) -> active# U93(mark X1, X2, X3))
    (active# U92(tt(), V1, V2) -> mark# U93(isNatIListKind V2, V1, V2), mark# U93(X1, X2, X3) -> mark# X1)
    (active# U93(tt(), V1, V2) -> mark# U94(isNatIListKind V2, V1, V2), mark# U94(X1, X2, X3) -> U94#(mark X1, X2, X3))
    (active# U93(tt(), V1, V2) -> mark# U94(isNatIListKind V2, V1, V2), mark# U94(X1, X2, X3) -> active# U94(mark X1, X2, X3))
    (active# U93(tt(), V1, V2) -> mark# U94(isNatIListKind V2, V1, V2), mark# U94(X1, X2, X3) -> mark# X1)
    (active# isNatKind length V1 -> isNatIListKind# V1, isNatIListKind# active X -> isNatIListKind# X)
    (active# isNatKind length V1 -> isNatIListKind# V1, isNatIListKind# mark X -> isNatIListKind# X)
    (active# isNatIListKind cons(V1, V2) -> isNatKind# V1, isNatKind# active X -> isNatKind# X)
    (active# isNatIListKind cons(V1, V2) -> isNatKind# V1, isNatKind# mark X -> isNatKind# X)
    (active# U104(tt(), V1, V2) -> isNat# V1, isNat# active X -> isNat# X)
    (active# U104(tt(), V1, V2) -> isNat# V1, isNat# mark X -> isNat# X)
    (active# isNat length V1 -> isNatIListKind# V1, isNatIListKind# active X -> isNatIListKind# X)
    (active# isNat length V1 -> isNatIListKind# V1, isNatIListKind# mark X -> isNatIListKind# X)
    (active# U12(tt(), V1) -> isNatList# V1, isNatList# active X -> isNatList# X)
    (active# U12(tt(), V1) -> isNatList# V1, isNatList# mark X -> isNatList# X)
    (active# isNatList cons(V1, V2) -> isNatKind# V1, isNatKind# active X -> isNatKind# X)
    (active# isNatList cons(V1, V2) -> isNatKind# V1, isNatKind# mark X -> isNatKind# X)
    (active# U22(tt(), V1) -> isNat# V1, isNat# active X -> isNat# X)
    (active# U22(tt(), V1) -> isNat# V1, isNat# mark X -> isNat# X)
    (active# U41(tt(), V1, V2) -> isNatKind# V1, isNatKind# active X -> isNatKind# X)
    (active# U41(tt(), V1, V2) -> isNatKind# V1, isNatKind# mark X -> isNatKind# X)
    (active# U91(tt(), V1, V2) -> isNatKind# V1, isNatKind# active X -> isNatKind# X)
    (active# U91(tt(), V1, V2) -> isNatKind# V1, isNatKind# mark X -> isNatKind# X)
    (active# U132(tt(), IL, M, N) -> isNat# M, isNat# active X -> isNat# X)
    (active# U132(tt(), IL, M, N) -> isNat# M, isNat# mark X -> isNat# X)
    (mark# U106 X -> mark# X, mark# U96 X -> U96# mark X)
    (mark# U106 X -> mark# X, mark# U96 X -> active# U96 mark X)
    (mark# U106 X -> mark# X, mark# U96 X -> mark# X)
    (mark# U106 X -> mark# X, mark# U95(X1, X2) -> U95#(mark X1, X2))
    (mark# U106 X -> mark# X, mark# U95(X1, X2) -> active# U95(mark X1, X2))
    (mark# U106 X -> mark# X, mark# U95(X1, X2) -> mark# X1)
    (mark# U106 X -> mark# X, mark# U94(X1, X2, X3) -> U94#(mark X1, X2, X3))
    (mark# U106 X -> mark# X, mark# U94(X1, X2, X3) -> active# U94(mark X1, X2, X3))
    (mark# U106 X -> mark# X, mark# U94(X1, X2, X3) -> mark# X1)
    (mark# U106 X -> mark# X, mark# U93(X1, X2, X3) -> U93#(mark X1, X2, X3))
    (mark# U106 X -> mark# X, mark# U93(X1, X2, X3) -> active# U93(mark X1, X2, X3))
    (mark# U106 X -> mark# X, mark# U93(X1, X2, X3) -> mark# X1)
    (mark# U106 X -> mark# X, mark# U91(X1, X2, X3) -> U91#(mark X1, X2, X3))
    (mark# U106 X -> mark# X, mark# U91(X1, X2, X3) -> active# U91(mark X1, X2, X3))
    (mark# U106 X -> mark# X, mark# U91(X1, X2, X3) -> mark# X1)
    (mark# U106 X -> mark# X, mark# U92(X1, X2, X3) -> U92#(mark X1, X2, X3))
    (mark# U106 X -> mark# X, mark# U92(X1, X2, X3) -> active# U92(mark X1, X2, X3))
    (mark# U106 X -> mark# X, mark# U92(X1, X2, X3) -> mark# X1)
    (mark# U106 X -> mark# X, mark# U81 X -> U81# mark X)
    (mark# U106 X -> mark# X, mark# U81 X -> active# U81 mark X)
    (mark# U106 X -> mark# X, mark# U81 X -> mark# X)
    (mark# U106 X -> mark# X, mark# U71 X -> U71# mark X)
    (mark# U106 X -> mark# X, mark# U71 X -> active# U71 mark X)
    (mark# U106 X -> mark# X, mark# U71 X -> mark# X)
    (mark# U106 X -> mark# X, mark# U61(X1, X2) -> U61#(mark X1, X2))
    (mark# U106 X -> mark# X, mark# U61(X1, X2) -> active# U61(mark X1, X2))
    (mark# U106 X -> mark# X, mark# U61(X1, X2) -> mark# X1)
    (mark# U106 X -> mark# X, mark# U62 X -> U62# mark X)
    (mark# U106 X -> mark# X, mark# U62 X -> active# U62 mark X)
    (mark# U106 X -> mark# X, mark# U62 X -> mark# X)
    (mark# U106 X -> mark# X, mark# U51(X1, X2) -> U51#(mark X1, X2))
    (mark# U106 X -> mark# X, mark# U51(X1, X2) -> active# U51(mark X1, X2))
    (mark# U106 X -> mark# X, mark# U51(X1, X2) -> mark# X1)
    (mark# U106 X -> mark# X, mark# U52 X -> U52# mark X)
    (mark# U106 X -> mark# X, mark# U52 X -> active# U52 mark X)
    (mark# U106 X -> mark# X, mark# U52 X -> mark# X)
    (mark# U106 X -> mark# X, mark# U46 X -> U46# mark X)
    (mark# U106 X -> mark# X, mark# U46 X -> active# U46 mark X)
    (mark# U106 X -> mark# X, mark# U46 X -> mark# X)
    (mark# U106 X -> mark# X, mark# U45(X1, X2) -> U45#(mark X1, X2))
    (mark# U106 X -> mark# X, mark# U45(X1, X2) -> active# U45(mark X1, X2))
    (mark# U106 X -> mark# X, mark# U45(X1, X2) -> mark# X1)
    (mark# U106 X -> mark# X, mark# U44(X1, X2, X3) -> U44#(mark X1, X2, X3))
    (mark# U106 X -> mark# X, mark# U44(X1, X2, X3) -> active# U44(mark X1, X2, X3))
    (mark# U106 X -> mark# X, mark# U44(X1, X2, X3) -> mark# X1)
    (mark# U106 X -> mark# X, mark# U43(X1, X2, X3) -> U43#(mark X1, X2, X3))
    (mark# U106 X -> mark# X, mark# U43(X1, X2, X3) -> active# U43(mark X1, X2, X3))
    (mark# U106 X -> mark# X, mark# U43(X1, X2, X3) -> mark# X1)
    (mark# U106 X -> mark# X, mark# U41(X1, X2, X3) -> U41#(mark X1, X2, X3))
    (mark# U106 X -> mark# X, mark# U41(X1, X2, X3) -> active# U41(mark X1, X2, X3))
    (mark# U106 X -> mark# X, mark# U41(X1, X2, X3) -> mark# X1)
    (mark# U106 X -> mark# X, mark# U42(X1, X2, X3) -> U42#(mark X1, X2, X3))
    (mark# U106 X -> mark# X, mark# U42(X1, X2, X3) -> active# U42(mark X1, X2, X3))
    (mark# U106 X -> mark# X, mark# U42(X1, X2, X3) -> mark# X1)
    (mark# U106 X -> mark# X, mark# U33 X -> U33# mark X)
    (mark# U106 X -> mark# X, mark# U33 X -> active# U33 mark X)
    (mark# U106 X -> mark# X, mark# U33 X -> mark# X)
    (mark# U106 X -> mark# X, mark# U31(X1, X2) -> U31#(mark X1, X2))
    (mark# U106 X -> mark# X, mark# U31(X1, X2) -> active# U31(mark X1, X2))
    (mark# U106 X -> mark# X, mark# U31(X1, X2) -> mark# X1)
    (mark# U106 X -> mark# X, mark# U32(X1, X2) -> U32#(mark X1, X2))
    (mark# U106 X -> mark# X, mark# U32(X1, X2) -> active# U32(mark X1, X2))
    (mark# U106 X -> mark# X, mark# U32(X1, X2) -> mark# X1)
    (mark# U106 X -> mark# X, mark# U23 X -> U23# mark X)
    (mark# U106 X -> mark# X, mark# U23 X -> active# U23 mark X)
    (mark# U106 X -> mark# X, mark# U23 X -> mark# X)
    (mark# U106 X -> mark# X, mark# U21(X1, X2) -> U21#(mark X1, X2))
    (mark# U106 X -> mark# X, mark# U21(X1, X2) -> active# U21(mark X1, X2))
    (mark# U106 X -> mark# X, mark# U21(X1, X2) -> mark# X1)
    (mark# U106 X -> mark# X, mark# U22(X1, X2) -> U22#(mark X1, X2))
    (mark# U106 X -> mark# X, mark# U22(X1, X2) -> active# U22(mark X1, X2))
    (mark# U106 X -> mark# X, mark# U22(X1, X2) -> mark# X1)
    (mark# U106 X -> mark# X, mark# take(X1, X2) -> take#(mark X1, mark X2))
    (mark# U106 X -> mark# X, mark# take(X1, X2) -> active# take(mark X1, mark X2))
    (mark# U106 X -> mark# X, mark# take(X1, X2) -> mark# X2)
    (mark# U106 X -> mark# X, mark# take(X1, X2) -> mark# X1)
    (mark# U106 X -> mark# X, mark# U136(X1, X2, X3, X4) -> U136#(mark X1, X2, X3, X4))
    (mark# U106 X -> mark# X, mark# U136(X1, X2, X3, X4) -> active# U136(mark X1, X2, X3, X4))
    (mark# U106 X -> mark# X, mark# U136(X1, X2, X3, X4) -> mark# X1)
    (mark# U106 X -> mark# X, mark# U135(X1, X2, X3, X4) -> U135#(mark X1, X2, X3, X4))
    (mark# U106 X -> mark# X, mark# U135(X1, X2, X3, X4) -> active# U135(mark X1, X2, X3, X4))
    (mark# U106 X -> mark# X, mark# U135(X1, X2, X3, X4) -> mark# X1)
    (mark# U106 X -> mark# X, mark# U134(X1, X2, X3, X4) -> U134#(mark X1, X2, X3, X4))
    (mark# U106 X -> mark# X, mark# U134(X1, X2, X3, X4) -> active# U134(mark X1, X2, X3, X4))
    (mark# U106 X -> mark# X, mark# U134(X1, X2, X3, X4) -> mark# X1)
    (mark# U106 X -> mark# X, mark# U133(X1, X2, X3, X4) -> U133#(mark X1, X2, X3, X4))
    (mark# U106 X -> mark# X, mark# U133(X1, X2, X3, X4) -> active# U133(mark X1, X2, X3, X4))
    (mark# U106 X -> mark# X, mark# U133(X1, X2, X3, X4) -> mark# X1)
    (mark# U106 X -> mark# X, mark# U131(X1, X2, X3, X4) -> U131#(mark X1, X2, X3, X4))
    (mark# U106 X -> mark# X, mark# U131(X1, X2, X3, X4) -> active# U131(mark X1, X2, X3, X4))
    (mark# U106 X -> mark# X, mark# U131(X1, X2, X3, X4) -> mark# X1)
    (mark# U106 X -> mark# X, mark# U132(X1, X2, X3, X4) -> U132#(mark X1, X2, X3, X4))
    (mark# U106 X -> mark# X, mark# U132(X1, X2, X3, X4) -> active# U132(mark X1, X2, X3, X4))
    (mark# U106 X -> mark# X, mark# U132(X1, X2, X3, X4) -> mark# X1)
    (mark# U106 X -> mark# X, mark# nil() -> active# nil())
    (mark# U106 X -> mark# X, mark# U121(X1, X2) -> U121#(mark X1, X2))
    (mark# U106 X -> mark# X, mark# U121(X1, X2) -> active# U121(mark X1, X2))
    (mark# U106 X -> mark# X, mark# U121(X1, X2) -> mark# X1)
    (mark# U106 X -> mark# X, mark# U122 X -> U122# mark X)
    (mark# U106 X -> mark# X, mark# U122 X -> active# U122 mark X)
    (mark# U106 X -> mark# X, mark# U122 X -> mark# X)
    (mark# U106 X -> mark# X, mark# isNatList X -> active# isNatList X)
    (mark# U106 X -> mark# X, mark# U13 X -> U13# mark X)
    (mark# U106 X -> mark# X, mark# U13 X -> active# U13 mark X)
    (mark# U106 X -> mark# X, mark# U13 X -> mark# X)
    (mark# U106 X -> mark# X, mark# length X -> length# mark X)
    (mark# U106 X -> mark# X, mark# length X -> active# length mark X)
    (mark# U106 X -> mark# X, mark# length X -> mark# X)
    (mark# U106 X -> mark# X, mark# s X -> s# mark X)
    (mark# U106 X -> mark# X, mark# s X -> active# s mark X)
    (mark# U106 X -> mark# X, mark# s X -> mark# X)
    (mark# U106 X -> mark# X, mark# U114(X1, X2) -> U114#(mark X1, X2))
    (mark# U106 X -> mark# X, mark# U114(X1, X2) -> active# U114(mark X1, X2))
    (mark# U106 X -> mark# X, mark# U114(X1, X2) -> mark# X1)
    (mark# U106 X -> mark# X, mark# U113(X1, X2, X3) -> U113#(mark X1, X2, X3))
    (mark# U106 X -> mark# X, mark# U113(X1, X2, X3) -> active# U113(mark X1, X2, X3))
    (mark# U106 X -> mark# X, mark# U113(X1, X2, X3) -> mark# X1)
    (mark# U106 X -> mark# X, mark# U111(X1, X2, X3) -> U111#(mark X1, X2, X3))
    (mark# U106 X -> mark# X, mark# U111(X1, X2, X3) -> active# U111(mark X1, X2, X3))
    (mark# U106 X -> mark# X, mark# U111(X1, X2, X3) -> mark# X1)
    (mark# U106 X -> mark# X, mark# U112(X1, X2, X3) -> U112#(mark X1, X2, X3))
    (mark# U106 X -> mark# X, mark# U112(X1, X2, X3) -> active# U112(mark X1, X2, X3))
    (mark# U106 X -> mark# X, mark# U112(X1, X2, X3) -> mark# X1)
    (mark# U106 X -> mark# X, mark# U11(X1, X2) -> U11#(mark X1, X2))
    (mark# U106 X -> mark# X, mark# U11(X1, X2) -> active# U11(mark X1, X2))
    (mark# U106 X -> mark# X, mark# U11(X1, X2) -> mark# X1)
    (mark# U106 X -> mark# X, mark# U12(X1, X2) -> U12#(mark X1, X2))
    (mark# U106 X -> mark# X, mark# U12(X1, X2) -> active# U12(mark X1, X2))
    (mark# U106 X -> mark# X, mark# U12(X1, X2) -> mark# X1)
    (mark# U106 X -> mark# X, mark# isNatIList X -> active# isNatIList X)
    (mark# U106 X -> mark# X, mark# U106 X -> U106# mark X)
    (mark# U106 X -> mark# X, mark# U106 X -> active# U106 mark X)
    (mark# U106 X -> mark# X, mark# U106 X -> mark# X)
    (mark# U106 X -> mark# X, mark# isNat X -> active# isNat X)
    (mark# U106 X -> mark# X, mark# U105(X1, X2) -> U105#(mark X1, X2))
    (mark# U106 X -> mark# X, mark# U105(X1, X2) -> active# U105(mark X1, X2))
    (mark# U106 X -> mark# X, mark# U105(X1, X2) -> mark# X1)
    (mark# U106 X -> mark# X, mark# U104(X1, X2, X3) -> U104#(mark X1, X2, X3))
    (mark# U106 X -> mark# X, mark# U104(X1, X2, X3) -> active# U104(mark X1, X2, X3))
    (mark# U106 X -> mark# X, mark# U104(X1, X2, X3) -> mark# X1)
    (mark# U106 X -> mark# X, mark# isNatIListKind X -> active# isNatIListKind X)
    (mark# U106 X -> mark# X, mark# U103(X1, X2, X3) -> U103#(mark X1, X2, X3))
    (mark# U106 X -> mark# X, mark# U103(X1, X2, X3) -> active# U103(mark X1, X2, X3))
    (mark# U106 X -> mark# X, mark# U103(X1, X2, X3) -> mark# X1)
    (mark# U106 X -> mark# X, mark# tt() -> active# tt())
    (mark# U106 X -> mark# X, mark# U101(X1, X2, X3) -> U101#(mark X1, X2, X3))
    (mark# U106 X -> mark# X, mark# U101(X1, X2, X3) -> active# U101(mark X1, X2, X3))
    (mark# U106 X -> mark# X, mark# U101(X1, X2, X3) -> mark# X1)
    (mark# U106 X -> mark# X, mark# isNatKind X -> active# isNatKind X)
    (mark# U106 X -> mark# X, mark# U102(X1, X2, X3) -> U102#(mark X1, X2, X3))
    (mark# U106 X -> mark# X, mark# U102(X1, X2, X3) -> active# U102(mark X1, X2, X3))
    (mark# U106 X -> mark# X, mark# U102(X1, X2, X3) -> mark# X1)
    (mark# U106 X -> mark# X, mark# zeros() -> active# zeros())
    (mark# U106 X -> mark# X, mark# 0() -> active# 0())
    (mark# U106 X -> mark# X, mark# cons(X1, X2) -> active# cons(mark X1, X2))
    (mark# U106 X -> mark# X, mark# cons(X1, X2) -> cons#(mark X1, X2))
    (mark# U106 X -> mark# X, mark# cons(X1, X2) -> mark# X1)
    (mark# length X -> mark# X, mark# U96 X -> U96# mark X)
    (mark# length X -> mark# X, mark# U96 X -> active# U96 mark X)
    (mark# length X -> mark# X, mark# U96 X -> mark# X)
    (mark# length X -> mark# X, mark# U95(X1, X2) -> U95#(mark X1, X2))
    (mark# length X -> mark# X, mark# U95(X1, X2) -> active# U95(mark X1, X2))
    (mark# length X -> mark# X, mark# U95(X1, X2) -> mark# X1)
    (mark# length X -> mark# X, mark# U94(X1, X2, X3) -> U94#(mark X1, X2, X3))
    (mark# length X -> mark# X, mark# U94(X1, X2, X3) -> active# U94(mark X1, X2, X3))
    (mark# length X -> mark# X, mark# U94(X1, X2, X3) -> mark# X1)
    (mark# length X -> mark# X, mark# U93(X1, X2, X3) -> U93#(mark X1, X2, X3))
    (mark# length X -> mark# X, mark# U93(X1, X2, X3) -> active# U93(mark X1, X2, X3))
    (mark# length X -> mark# X, mark# U93(X1, X2, X3) -> mark# X1)
    (mark# length X -> mark# X, mark# U91(X1, X2, X3) -> U91#(mark X1, X2, X3))
    (mark# length X -> mark# X, mark# U91(X1, X2, X3) -> active# U91(mark X1, X2, X3))
    (mark# length X -> mark# X, mark# U91(X1, X2, X3) -> mark# X1)
    (mark# length X -> mark# X, mark# U92(X1, X2, X3) -> U92#(mark X1, X2, X3))
    (mark# length X -> mark# X, mark# U92(X1, X2, X3) -> active# U92(mark X1, X2, X3))
    (mark# length X -> mark# X, mark# U92(X1, X2, X3) -> mark# X1)
    (mark# length X -> mark# X, mark# U81 X -> U81# mark X)
    (mark# length X -> mark# X, mark# U81 X -> active# U81 mark X)
    (mark# length X -> mark# X, mark# U81 X -> mark# X)
    (mark# length X -> mark# X, mark# U71 X -> U71# mark X)
    (mark# length X -> mark# X, mark# U71 X -> active# U71 mark X)
    (mark# length X -> mark# X, mark# U71 X -> mark# X)
    (mark# length X -> mark# X, mark# U61(X1, X2) -> U61#(mark X1, X2))
    (mark# length X -> mark# X, mark# U61(X1, X2) -> active# U61(mark X1, X2))
    (mark# length X -> mark# X, mark# U61(X1, X2) -> mark# X1)
    (mark# length X -> mark# X, mark# U62 X -> U62# mark X)
    (mark# length X -> mark# X, mark# U62 X -> active# U62 mark X)
    (mark# length X -> mark# X, mark# U62 X -> mark# X)
    (mark# length X -> mark# X, mark# U51(X1, X2) -> U51#(mark X1, X2))
    (mark# length X -> mark# X, mark# U51(X1, X2) -> active# U51(mark X1, X2))
    (mark# length X -> mark# X, mark# U51(X1, X2) -> mark# X1)
    (mark# length X -> mark# X, mark# U52 X -> U52# mark X)
    (mark# length X -> mark# X, mark# U52 X -> active# U52 mark X)
    (mark# length X -> mark# X, mark# U52 X -> mark# X)
    (mark# length X -> mark# X, mark# U46 X -> U46# mark X)
    (mark# length X -> mark# X, mark# U46 X -> active# U46 mark X)
    (mark# length X -> mark# X, mark# U46 X -> mark# X)
    (mark# length X -> mark# X, mark# U45(X1, X2) -> U45#(mark X1, X2))
    (mark# length X -> mark# X, mark# U45(X1, X2) -> active# U45(mark X1, X2))
    (mark# length X -> mark# X, mark# U45(X1, X2) -> mark# X1)
    (mark# length X -> mark# X, mark# U44(X1, X2, X3) -> U44#(mark X1, X2, X3))
    (mark# length X -> mark# X, mark# U44(X1, X2, X3) -> active# U44(mark X1, X2, X3))
    (mark# length X -> mark# X, mark# U44(X1, X2, X3) -> mark# X1)
    (mark# length X -> mark# X, mark# U43(X1, X2, X3) -> U43#(mark X1, X2, X3))
    (mark# length X -> mark# X, mark# U43(X1, X2, X3) -> active# U43(mark X1, X2, X3))
    (mark# length X -> mark# X, mark# U43(X1, X2, X3) -> mark# X1)
    (mark# length X -> mark# X, mark# U41(X1, X2, X3) -> U41#(mark X1, X2, X3))
    (mark# length X -> mark# X, mark# U41(X1, X2, X3) -> active# U41(mark X1, X2, X3))
    (mark# length X -> mark# X, mark# U41(X1, X2, X3) -> mark# X1)
    (mark# length X -> mark# X, mark# U42(X1, X2, X3) -> U42#(mark X1, X2, X3))
    (mark# length X -> mark# X, mark# U42(X1, X2, X3) -> active# U42(mark X1, X2, X3))
    (mark# length X -> mark# X, mark# U42(X1, X2, X3) -> mark# X1)
    (mark# length X -> mark# X, mark# U33 X -> U33# mark X)
    (mark# length X -> mark# X, mark# U33 X -> active# U33 mark X)
    (mark# length X -> mark# X, mark# U33 X -> mark# X)
    (mark# length X -> mark# X, mark# U31(X1, X2) -> U31#(mark X1, X2))
    (mark# length X -> mark# X, mark# U31(X1, X2) -> active# U31(mark X1, X2))
    (mark# length X -> mark# X, mark# U31(X1, X2) -> mark# X1)
    (mark# length X -> mark# X, mark# U32(X1, X2) -> U32#(mark X1, X2))
    (mark# length X -> mark# X, mark# U32(X1, X2) -> active# U32(mark X1, X2))
    (mark# length X -> mark# X, mark# U32(X1, X2) -> mark# X1)
    (mark# length X -> mark# X, mark# U23 X -> U23# mark X)
    (mark# length X -> mark# X, mark# U23 X -> active# U23 mark X)
    (mark# length X -> mark# X, mark# U23 X -> mark# X)
    (mark# length X -> mark# X, mark# U21(X1, X2) -> U21#(mark X1, X2))
    (mark# length X -> mark# X, mark# U21(X1, X2) -> active# U21(mark X1, X2))
    (mark# length X -> mark# X, mark# U21(X1, X2) -> mark# X1)
    (mark# length X -> mark# X, mark# U22(X1, X2) -> U22#(mark X1, X2))
    (mark# length X -> mark# X, mark# U22(X1, X2) -> active# U22(mark X1, X2))
    (mark# length X -> mark# X, mark# U22(X1, X2) -> mark# X1)
    (mark# length X -> mark# X, mark# take(X1, X2) -> take#(mark X1, mark X2))
    (mark# length X -> mark# X, mark# take(X1, X2) -> active# take(mark X1, mark X2))
    (mark# length X -> mark# X, mark# take(X1, X2) -> mark# X2)
    (mark# length X -> mark# X, mark# take(X1, X2) -> mark# X1)
    (mark# length X -> mark# X, mark# U136(X1, X2, X3, X4) -> U136#(mark X1, X2, X3, X4))
    (mark# length X -> mark# X, mark# U136(X1, X2, X3, X4) -> active# U136(mark X1, X2, X3, X4))
    (mark# length X -> mark# X, mark# U136(X1, X2, X3, X4) -> mark# X1)
    (mark# length X -> mark# X, mark# U135(X1, X2, X3, X4) -> U135#(mark X1, X2, X3, X4))
    (mark# length X -> mark# X, mark# U135(X1, X2, X3, X4) -> active# U135(mark X1, X2, X3, X4))
    (mark# length X -> mark# X, mark# U135(X1, X2, X3, X4) -> mark# X1)
    (mark# length X -> mark# X, mark# U134(X1, X2, X3, X4) -> U134#(mark X1, X2, X3, X4))
    (mark# length X -> mark# X, mark# U134(X1, X2, X3, X4) -> active# U134(mark X1, X2, X3, X4))
    (mark# length X -> mark# X, mark# U134(X1, X2, X3, X4) -> mark# X1)
    (mark# length X -> mark# X, mark# U133(X1, X2, X3, X4) -> U133#(mark X1, X2, X3, X4))
    (mark# length X -> mark# X, mark# U133(X1, X2, X3, X4) -> active# U133(mark X1, X2, X3, X4))
    (mark# length X -> mark# X, mark# U133(X1, X2, X3, X4) -> mark# X1)
    (mark# length X -> mark# X, mark# U131(X1, X2, X3, X4) -> U131#(mark X1, X2, X3, X4))
    (mark# length X -> mark# X, mark# U131(X1, X2, X3, X4) -> active# U131(mark X1, X2, X3, X4))
    (mark# length X -> mark# X, mark# U131(X1, X2, X3, X4) -> mark# X1)
    (mark# length X -> mark# X, mark# U132(X1, X2, X3, X4) -> U132#(mark X1, X2, X3, X4))
    (mark# length X -> mark# X, mark# U132(X1, X2, X3, X4) -> active# U132(mark X1, X2, X3, X4))
    (mark# length X -> mark# X, mark# U132(X1, X2, X3, X4) -> mark# X1)
    (mark# length X -> mark# X, mark# nil() -> active# nil())
    (mark# length X -> mark# X, mark# U121(X1, X2) -> U121#(mark X1, X2))
    (mark# length X -> mark# X, mark# U121(X1, X2) -> active# U121(mark X1, X2))
    (mark# length X -> mark# X, mark# U121(X1, X2) -> mark# X1)
    (mark# length X -> mark# X, mark# U122 X -> U122# mark X)
    (mark# length X -> mark# X, mark# U122 X -> active# U122 mark X)
    (mark# length X -> mark# X, mark# U122 X -> mark# X)
    (mark# length X -> mark# X, mark# isNatList X -> active# isNatList X)
    (mark# length X -> mark# X, mark# U13 X -> U13# mark X)
    (mark# length X -> mark# X, mark# U13 X -> active# U13 mark X)
    (mark# length X -> mark# X, mark# U13 X -> mark# X)
    (mark# length X -> mark# X, mark# length X -> length# mark X)
    (mark# length X -> mark# X, mark# length X -> active# length mark X)
    (mark# length X -> mark# X, mark# length X -> mark# X)
    (mark# length X -> mark# X, mark# s X -> s# mark X)
    (mark# length X -> mark# X, mark# s X -> active# s mark X)
    (mark# length X -> mark# X, mark# s X -> mark# X)
    (mark# length X -> mark# X, mark# U114(X1, X2) -> U114#(mark X1, X2))
    (mark# length X -> mark# X, mark# U114(X1, X2) -> active# U114(mark X1, X2))
    (mark# length X -> mark# X, mark# U114(X1, X2) -> mark# X1)
    (mark# length X -> mark# X, mark# U113(X1, X2, X3) -> U113#(mark X1, X2, X3))
    (mark# length X -> mark# X, mark# U113(X1, X2, X3) -> active# U113(mark X1, X2, X3))
    (mark# length X -> mark# X, mark# U113(X1, X2, X3) -> mark# X1)
    (mark# length X -> mark# X, mark# U111(X1, X2, X3) -> U111#(mark X1, X2, X3))
    (mark# length X -> mark# X, mark# U111(X1, X2, X3) -> active# U111(mark X1, X2, X3))
    (mark# length X -> mark# X, mark# U111(X1, X2, X3) -> mark# X1)
    (mark# length X -> mark# X, mark# U112(X1, X2, X3) -> U112#(mark X1, X2, X3))
    (mark# length X -> mark# X, mark# U112(X1, X2, X3) -> active# U112(mark X1, X2, X3))
    (mark# length X -> mark# X, mark# U112(X1, X2, X3) -> mark# X1)
    (mark# length X -> mark# X, mark# U11(X1, X2) -> U11#(mark X1, X2))
    (mark# length X -> mark# X, mark# U11(X1, X2) -> active# U11(mark X1, X2))
    (mark# length X -> mark# X, mark# U11(X1, X2) -> mark# X1)
    (mark# length X -> mark# X, mark# U12(X1, X2) -> U12#(mark X1, X2))
    (mark# length X -> mark# X, mark# U12(X1, X2) -> active# U12(mark X1, X2))
    (mark# length X -> mark# X, mark# U12(X1, X2) -> mark# X1)
    (mark# length X -> mark# X, mark# isNatIList X -> active# isNatIList X)
    (mark# length X -> mark# X, mark# U106 X -> U106# mark X)
    (mark# length X -> mark# X, mark# U106 X -> active# U106 mark X)
    (mark# length X -> mark# X, mark# U106 X -> mark# X)
    (mark# length X -> mark# X, mark# isNat X -> active# isNat X)
    (mark# length X -> mark# X, mark# U105(X1, X2) -> U105#(mark X1, X2))
    (mark# length X -> mark# X, mark# U105(X1, X2) -> active# U105(mark X1, X2))
    (mark# length X -> mark# X, mark# U105(X1, X2) -> mark# X1)
    (mark# length X -> mark# X, mark# U104(X1, X2, X3) -> U104#(mark X1, X2, X3))
    (mark# length X -> mark# X, mark# U104(X1, X2, X3) -> active# U104(mark X1, X2, X3))
    (mark# length X -> mark# X, mark# U104(X1, X2, X3) -> mark# X1)
    (mark# length X -> mark# X, mark# isNatIListKind X -> active# isNatIListKind X)
    (mark# length X -> mark# X, mark# U103(X1, X2, X3) -> U103#(mark X1, X2, X3))
    (mark# length X -> mark# X, mark# U103(X1, X2, X3) -> active# U103(mark X1, X2, X3))
    (mark# length X -> mark# X, mark# U103(X1, X2, X3) -> mark# X1)
    (mark# length X -> mark# X, mark# tt() -> active# tt())
    (mark# length X -> mark# X, mark# U101(X1, X2, X3) -> U101#(mark X1, X2, X3))
    (mark# length X -> mark# X, mark# U101(X1, X2, X3) -> active# U101(mark X1, X2, X3))
    (mark# length X -> mark# X, mark# U101(X1, X2, X3) -> mark# X1)
    (mark# length X -> mark# X, mark# isNatKind X -> active# isNatKind X)
    (mark# length X -> mark# X, mark# U102(X1, X2, X3) -> U102#(mark X1, X2, X3))
    (mark# length X -> mark# X, mark# U102(X1, X2, X3) -> active# U102(mark X1, X2, X3))
    (mark# length X -> mark# X, mark# U102(X1, X2, X3) -> mark# X1)
    (mark# length X -> mark# X, mark# zeros() -> active# zeros())
    (mark# length X -> mark# X, mark# 0() -> active# 0())
    (mark# length X -> mark# X, mark# cons(X1, X2) -> active# cons(mark X1, X2))
    (mark# length X -> mark# X, mark# cons(X1, X2) -> cons#(mark X1, X2))
    (mark# length X -> mark# X, mark# cons(X1, X2) -> mark# X1)
    (mark# U122 X -> mark# X, mark# U96 X -> U96# mark X)
    (mark# U122 X -> mark# X, mark# U96 X -> active# U96 mark X)
    (mark# U122 X -> mark# X, mark# U96 X -> mark# X)
    (mark# U122 X -> mark# X, mark# U95(X1, X2) -> U95#(mark X1, X2))
    (mark# U122 X -> mark# X, mark# U95(X1, X2) -> active# U95(mark X1, X2))
    (mark# U122 X -> mark# X, mark# U95(X1, X2) -> mark# X1)
    (mark# U122 X -> mark# X, mark# U94(X1, X2, X3) -> U94#(mark X1, X2, X3))
    (mark# U122 X -> mark# X, mark# U94(X1, X2, X3) -> active# U94(mark X1, X2, X3))
    (mark# U122 X -> mark# X, mark# U94(X1, X2, X3) -> mark# X1)
    (mark# U122 X -> mark# X, mark# U93(X1, X2, X3) -> U93#(mark X1, X2, X3))
    (mark# U122 X -> mark# X, mark# U93(X1, X2, X3) -> active# U93(mark X1, X2, X3))
    (mark# U122 X -> mark# X, mark# U93(X1, X2, X3) -> mark# X1)
    (mark# U122 X -> mark# X, mark# U91(X1, X2, X3) -> U91#(mark X1, X2, X3))
    (mark# U122 X -> mark# X, mark# U91(X1, X2, X3) -> active# U91(mark X1, X2, X3))
    (mark# U122 X -> mark# X, mark# U91(X1, X2, X3) -> mark# X1)
    (mark# U122 X -> mark# X, mark# U92(X1, X2, X3) -> U92#(mark X1, X2, X3))
    (mark# U122 X -> mark# X, mark# U92(X1, X2, X3) -> active# U92(mark X1, X2, X3))
    (mark# U122 X -> mark# X, mark# U92(X1, X2, X3) -> mark# X1)
    (mark# U122 X -> mark# X, mark# U81 X -> U81# mark X)
    (mark# U122 X -> mark# X, mark# U81 X -> active# U81 mark X)
    (mark# U122 X -> mark# X, mark# U81 X -> mark# X)
    (mark# U122 X -> mark# X, mark# U71 X -> U71# mark X)
    (mark# U122 X -> mark# X, mark# U71 X -> active# U71 mark X)
    (mark# U122 X -> mark# X, mark# U71 X -> mark# X)
    (mark# U122 X -> mark# X, mark# U61(X1, X2) -> U61#(mark X1, X2))
    (mark# U122 X -> mark# X, mark# U61(X1, X2) -> active# U61(mark X1, X2))
    (mark# U122 X -> mark# X, mark# U61(X1, X2) -> mark# X1)
    (mark# U122 X -> mark# X, mark# U62 X -> U62# mark X)
    (mark# U122 X -> mark# X, mark# U62 X -> active# U62 mark X)
    (mark# U122 X -> mark# X, mark# U62 X -> mark# X)
    (mark# U122 X -> mark# X, mark# U51(X1, X2) -> U51#(mark X1, X2))
    (mark# U122 X -> mark# X, mark# U51(X1, X2) -> active# U51(mark X1, X2))
    (mark# U122 X -> mark# X, mark# U51(X1, X2) -> mark# X1)
    (mark# U122 X -> mark# X, mark# U52 X -> U52# mark X)
    (mark# U122 X -> mark# X, mark# U52 X -> active# U52 mark X)
    (mark# U122 X -> mark# X, mark# U52 X -> mark# X)
    (mark# U122 X -> mark# X, mark# U46 X -> U46# mark X)
    (mark# U122 X -> mark# X, mark# U46 X -> active# U46 mark X)
    (mark# U122 X -> mark# X, mark# U46 X -> mark# X)
    (mark# U122 X -> mark# X, mark# U45(X1, X2) -> U45#(mark X1, X2))
    (mark# U122 X -> mark# X, mark# U45(X1, X2) -> active# U45(mark X1, X2))
    (mark# U122 X -> mark# X, mark# U45(X1, X2) -> mark# X1)
    (mark# U122 X -> mark# X, mark# U44(X1, X2, X3) -> U44#(mark X1, X2, X3))
    (mark# U122 X -> mark# X, mark# U44(X1, X2, X3) -> active# U44(mark X1, X2, X3))
    (mark# U122 X -> mark# X, mark# U44(X1, X2, X3) -> mark# X1)
    (mark# U122 X -> mark# X, mark# U43(X1, X2, X3) -> U43#(mark X1, X2, X3))
    (mark# U122 X -> mark# X, mark# U43(X1, X2, X3) -> active# U43(mark X1, X2, X3))
    (mark# U122 X -> mark# X, mark# U43(X1, X2, X3) -> mark# X1)
    (mark# U122 X -> mark# X, mark# U41(X1, X2, X3) -> U41#(mark X1, X2, X3))
    (mark# U122 X -> mark# X, mark# U41(X1, X2, X3) -> active# U41(mark X1, X2, X3))
    (mark# U122 X -> mark# X, mark# U41(X1, X2, X3) -> mark# X1)
    (mark# U122 X -> mark# X, mark# U42(X1, X2, X3) -> U42#(mark X1, X2, X3))
    (mark# U122 X -> mark# X, mark# U42(X1, X2, X3) -> active# U42(mark X1, X2, X3))
    (mark# U122 X -> mark# X, mark# U42(X1, X2, X3) -> mark# X1)
    (mark# U122 X -> mark# X, mark# U33 X -> U33# mark X)
    (mark# U122 X -> mark# X, mark# U33 X -> active# U33 mark X)
    (mark# U122 X -> mark# X, mark# U33 X -> mark# X)
    (mark# U122 X -> mark# X, mark# U31(X1, X2) -> U31#(mark X1, X2))
    (mark# U122 X -> mark# X, mark# U31(X1, X2) -> active# U31(mark X1, X2))
    (mark# U122 X -> mark# X, mark# U31(X1, X2) -> mark# X1)
    (mark# U122 X -> mark# X, mark# U32(X1, X2) -> U32#(mark X1, X2))
    (mark# U122 X -> mark# X, mark# U32(X1, X2) -> active# U32(mark X1, X2))
    (mark# U122 X -> mark# X, mark# U32(X1, X2) -> mark# X1)
    (mark# U122 X -> mark# X, mark# U23 X -> U23# mark X)
    (mark# U122 X -> mark# X, mark# U23 X -> active# U23 mark X)
    (mark# U122 X -> mark# X, mark# U23 X -> mark# X)
    (mark# U122 X -> mark# X, mark# U21(X1, X2) -> U21#(mark X1, X2))
    (mark# U122 X -> mark# X, mark# U21(X1, X2) -> active# U21(mark X1, X2))
    (mark# U122 X -> mark# X, mark# U21(X1, X2) -> mark# X1)
    (mark# U122 X -> mark# X, mark# U22(X1, X2) -> U22#(mark X1, X2))
    (mark# U122 X -> mark# X, mark# U22(X1, X2) -> active# U22(mark X1, X2))
    (mark# U122 X -> mark# X, mark# U22(X1, X2) -> mark# X1)
    (mark# U122 X -> mark# X, mark# take(X1, X2) -> take#(mark X1, mark X2))
    (mark# U122 X -> mark# X, mark# take(X1, X2) -> active# take(mark X1, mark X2))
    (mark# U122 X -> mark# X, mark# take(X1, X2) -> mark# X2)
    (mark# U122 X -> mark# X, mark# take(X1, X2) -> mark# X1)
    (mark# U122 X -> mark# X, mark# U136(X1, X2, X3, X4) -> U136#(mark X1, X2, X3, X4))
    (mark# U122 X -> mark# X, mark# U136(X1, X2, X3, X4) -> active# U136(mark X1, X2, X3, X4))
    (mark# U122 X -> mark# X, mark# U136(X1, X2, X3, X4) -> mark# X1)
    (mark# U122 X -> mark# X, mark# U135(X1, X2, X3, X4) -> U135#(mark X1, X2, X3, X4))
    (mark# U122 X -> mark# X, mark# U135(X1, X2, X3, X4) -> active# U135(mark X1, X2, X3, X4))
    (mark# U122 X -> mark# X, mark# U135(X1, X2, X3, X4) -> mark# X1)
    (mark# U122 X -> mark# X, mark# U134(X1, X2, X3, X4) -> U134#(mark X1, X2, X3, X4))
    (mark# U122 X -> mark# X, mark# U134(X1, X2, X3, X4) -> active# U134(mark X1, X2, X3, X4))
    (mark# U122 X -> mark# X, mark# U134(X1, X2, X3, X4) -> mark# X1)
    (mark# U122 X -> mark# X, mark# U133(X1, X2, X3, X4) -> U133#(mark X1, X2, X3, X4))
    (mark# U122 X -> mark# X, mark# U133(X1, X2, X3, X4) -> active# U133(mark X1, X2, X3, X4))
    (mark# U122 X -> mark# X, mark# U133(X1, X2, X3, X4) -> mark# X1)
    (mark# U122 X -> mark# X, mark# U131(X1, X2, X3, X4) -> U131#(mark X1, X2, X3, X4))
    (mark# U122 X -> mark# X, mark# U131(X1, X2, X3, X4) -> active# U131(mark X1, X2, X3, X4))
    (mark# U122 X -> mark# X, mark# U131(X1, X2, X3, X4) -> mark# X1)
    (mark# U122 X -> mark# X, mark# U132(X1, X2, X3, X4) -> U132#(mark X1, X2, X3, X4))
    (mark# U122 X -> mark# X, mark# U132(X1, X2, X3, X4) -> active# U132(mark X1, X2, X3, X4))
    (mark# U122 X -> mark# X, mark# U132(X1, X2, X3, X4) -> mark# X1)
    (mark# U122 X -> mark# X, mark# nil() -> active# nil())
    (mark# U122 X -> mark# X, mark# U121(X1, X2) -> U121#(mark X1, X2))
    (mark# U122 X -> mark# X, mark# U121(X1, X2) -> active# U121(mark X1, X2))
    (mark# U122 X -> mark# X, mark# U121(X1, X2) -> mark# X1)
    (mark# U122 X -> mark# X, mark# U122 X -> U122# mark X)
    (mark# U122 X -> mark# X, mark# U122 X -> active# U122 mark X)
    (mark# U122 X -> mark# X, mark# U122 X -> mark# X)
    (mark# U122 X -> mark# X, mark# isNatList X -> active# isNatList X)
    (mark# U122 X -> mark# X, mark# U13 X -> U13# mark X)
    (mark# U122 X -> mark# X, mark# U13 X -> active# U13 mark X)
    (mark# U122 X -> mark# X, mark# U13 X -> mark# X)
    (mark# U122 X -> mark# X, mark# length X -> length# mark X)
    (mark# U122 X -> mark# X, mark# length X -> active# length mark X)
    (mark# U122 X -> mark# X, mark# length X -> mark# X)
    (mark# U122 X -> mark# X, mark# s X -> s# mark X)
    (mark# U122 X -> mark# X, mark# s X -> active# s mark X)
    (mark# U122 X -> mark# X, mark# s X -> mark# X)
    (mark# U122 X -> mark# X, mark# U114(X1, X2) -> U114#(mark X1, X2))
    (mark# U122 X -> mark# X, mark# U114(X1, X2) -> active# U114(mark X1, X2))
    (mark# U122 X -> mark# X, mark# U114(X1, X2) -> mark# X1)
    (mark# U122 X -> mark# X, mark# U113(X1, X2, X3) -> U113#(mark X1, X2, X3))
    (mark# U122 X -> mark# X, mark# U113(X1, X2, X3) -> active# U113(mark X1, X2, X3))
    (mark# U122 X -> mark# X, mark# U113(X1, X2, X3) -> mark# X1)
    (mark# U122 X -> mark# X, mark# U111(X1, X2, X3) -> U111#(mark X1, X2, X3))
    (mark# U122 X -> mark# X, mark# U111(X1, X2, X3) -> active# U111(mark X1, X2, X3))
    (mark# U122 X -> mark# X, mark# U111(X1, X2, X3) -> mark# X1)
    (mark# U122 X -> mark# X, mark# U112(X1, X2, X3) -> U112#(mark X1, X2, X3))
    (mark# U122 X -> mark# X, mark# U112(X1, X2, X3) -> active# U112(mark X1, X2, X3))
    (mark# U122 X -> mark# X, mark# U112(X1, X2, X3) -> mark# X1)
    (mark# U122 X -> mark# X, mark# U11(X1, X2) -> U11#(mark X1, X2))
    (mark# U122 X -> mark# X, mark# U11(X1, X2) -> active# U11(mark X1, X2))
    (mark# U122 X -> mark# X, mark# U11(X1, X2) -> mark# X1)
    (mark# U122 X -> mark# X, mark# U12(X1, X2) -> U12#(mark X1, X2))
    (mark# U122 X -> mark# X, mark# U12(X1, X2) -> active# U12(mark X1, X2))
    (mark# U122 X -> mark# X, mark# U12(X1, X2) -> mark# X1)
    (mark# U122 X -> mark# X, mark# isNatIList X -> active# isNatIList X)
    (mark# U122 X -> mark# X, mark# U106 X -> U106# mark X)
    (mark# U122 X -> mark# X, mark# U106 X -> active# U106 mark X)
    (mark# U122 X -> mark# X, mark# U106 X -> mark# X)
    (mark# U122 X -> mark# X, mark# isNat X -> active# isNat X)
    (mark# U122 X -> mark# X, mark# U105(X1, X2) -> U105#(mark X1, X2))
    (mark# U122 X -> mark# X, mark# U105(X1, X2) -> active# U105(mark X1, X2))
    (mark# U122 X -> mark# X, mark# U105(X1, X2) -> mark# X1)
    (mark# U122 X -> mark# X, mark# U104(X1, X2, X3) -> U104#(mark X1, X2, X3))
    (mark# U122 X -> mark# X, mark# U104(X1, X2, X3) -> active# U104(mark X1, X2, X3))
    (mark# U122 X -> mark# X, mark# U104(X1, X2, X3) -> mark# X1)
    (mark# U122 X -> mark# X, mark# isNatIListKind X -> active# isNatIListKind X)
    (mark# U122 X -> mark# X, mark# U103(X1, X2, X3) -> U103#(mark X1, X2, X3))
    (mark# U122 X -> mark# X, mark# U103(X1, X2, X3) -> active# U103(mark X1, X2, X3))
    (mark# U122 X -> mark# X, mark# U103(X1, X2, X3) -> mark# X1)
    (mark# U122 X -> mark# X, mark# tt() -> active# tt())
    (mark# U122 X -> mark# X, mark# U101(X1, X2, X3) -> U101#(mark X1, X2, X3))
    (mark# U122 X -> mark# X, mark# U101(X1, X2, X3) -> active# U101(mark X1, X2, X3))
    (mark# U122 X -> mark# X, mark# U101(X1, X2, X3) -> mark# X1)
    (mark# U122 X -> mark# X, mark# isNatKind X -> active# isNatKind X)
    (mark# U122 X -> mark# X, mark# U102(X1, X2, X3) -> U102#(mark X1, X2, X3))
    (mark# U122 X -> mark# X, mark# U102(X1, X2, X3) -> active# U102(mark X1, X2, X3))
    (mark# U122 X -> mark# X, mark# U102(X1, X2, X3) -> mark# X1)
    (mark# U122 X -> mark# X, mark# zeros() -> active# zeros())
    (mark# U122 X -> mark# X, mark# 0() -> active# 0())
    (mark# U122 X -> mark# X, mark# cons(X1, X2) -> active# cons(mark X1, X2))
    (mark# U122 X -> mark# X, mark# cons(X1, X2) -> cons#(mark X1, X2))
    (mark# U122 X -> mark# X, mark# cons(X1, X2) -> mark# X1)
    (mark# U33 X -> mark# X, mark# U96 X -> U96# mark X)
    (mark# U33 X -> mark# X, mark# U96 X -> active# U96 mark X)
    (mark# U33 X -> mark# X, mark# U96 X -> mark# X)
    (mark# U33 X -> mark# X, mark# U95(X1, X2) -> U95#(mark X1, X2))
    (mark# U33 X -> mark# X, mark# U95(X1, X2) -> active# U95(mark X1, X2))
    (mark# U33 X -> mark# X, mark# U95(X1, X2) -> mark# X1)
    (mark# U33 X -> mark# X, mark# U94(X1, X2, X3) -> U94#(mark X1, X2, X3))
    (mark# U33 X -> mark# X, mark# U94(X1, X2, X3) -> active# U94(mark X1, X2, X3))
    (mark# U33 X -> mark# X, mark# U94(X1, X2, X3) -> mark# X1)
    (mark# U33 X -> mark# X, mark# U93(X1, X2, X3) -> U93#(mark X1, X2, X3))
    (mark# U33 X -> mark# X, mark# U93(X1, X2, X3) -> active# U93(mark X1, X2, X3))
    (mark# U33 X -> mark# X, mark# U93(X1, X2, X3) -> mark# X1)
    (mark# U33 X -> mark# X, mark# U91(X1, X2, X3) -> U91#(mark X1, X2, X3))
    (mark# U33 X -> mark# X, mark# U91(X1, X2, X3) -> active# U91(mark X1, X2, X3))
    (mark# U33 X -> mark# X, mark# U91(X1, X2, X3) -> mark# X1)
    (mark# U33 X -> mark# X, mark# U92(X1, X2, X3) -> U92#(mark X1, X2, X3))
    (mark# U33 X -> mark# X, mark# U92(X1, X2, X3) -> active# U92(mark X1, X2, X3))
    (mark# U33 X -> mark# X, mark# U92(X1, X2, X3) -> mark# X1)
    (mark# U33 X -> mark# X, mark# U81 X -> U81# mark X)
    (mark# U33 X -> mark# X, mark# U81 X -> active# U81 mark X)
    (mark# U33 X -> mark# X, mark# U81 X -> mark# X)
    (mark# U33 X -> mark# X, mark# U71 X -> U71# mark X)
    (mark# U33 X -> mark# X, mark# U71 X -> active# U71 mark X)
    (mark# U33 X -> mark# X, mark# U71 X -> mark# X)
    (mark# U33 X -> mark# X, mark# U61(X1, X2) -> U61#(mark X1, X2))
    (mark# U33 X -> mark# X, mark# U61(X1, X2) -> active# U61(mark X1, X2))
    (mark# U33 X -> mark# X, mark# U61(X1, X2) -> mark# X1)
    (mark# U33 X -> mark# X, mark# U62 X -> U62# mark X)
    (mark# U33 X -> mark# X, mark# U62 X -> active# U62 mark X)
    (mark# U33 X -> mark# X, mark# U62 X -> mark# X)
    (mark# U33 X -> mark# X, mark# U51(X1, X2) -> U51#(mark X1, X2))
    (mark# U33 X -> mark# X, mark# U51(X1, X2) -> active# U51(mark X1, X2))
    (mark# U33 X -> mark# X, mark# U51(X1, X2) -> mark# X1)
    (mark# U33 X -> mark# X, mark# U52 X -> U52# mark X)
    (mark# U33 X -> mark# X, mark# U52 X -> active# U52 mark X)
    (mark# U33 X -> mark# X, mark# U52 X -> mark# X)
    (mark# U33 X -> mark# X, mark# U46 X -> U46# mark X)
    (mark# U33 X -> mark# X, mark# U46 X -> active# U46 mark X)
    (mark# U33 X -> mark# X, mark# U46 X -> mark# X)
    (mark# U33 X -> mark# X, mark# U45(X1, X2) -> U45#(mark X1, X2))
    (mark# U33 X -> mark# X, mark# U45(X1, X2) -> active# U45(mark X1, X2))
    (mark# U33 X -> mark# X, mark# U45(X1, X2) -> mark# X1)
    (mark# U33 X -> mark# X, mark# U44(X1, X2, X3) -> U44#(mark X1, X2, X3))
    (mark# U33 X -> mark# X, mark# U44(X1, X2, X3) -> active# U44(mark X1, X2, X3))
    (mark# U33 X -> mark# X, mark# U44(X1, X2, X3) -> mark# X1)
    (mark# U33 X -> mark# X, mark# U43(X1, X2, X3) -> U43#(mark X1, X2, X3))
    (mark# U33 X -> mark# X, mark# U43(X1, X2, X3) -> active# U43(mark X1, X2, X3))
    (mark# U33 X -> mark# X, mark# U43(X1, X2, X3) -> mark# X1)
    (mark# U33 X -> mark# X, mark# U41(X1, X2, X3) -> U41#(mark X1, X2, X3))
    (mark# U33 X -> mark# X, mark# U41(X1, X2, X3) -> active# U41(mark X1, X2, X3))
    (mark# U33 X -> mark# X, mark# U41(X1, X2, X3) -> mark# X1)
    (mark# U33 X -> mark# X, mark# U42(X1, X2, X3) -> U42#(mark X1, X2, X3))
    (mark# U33 X -> mark# X, mark# U42(X1, X2, X3) -> active# U42(mark X1, X2, X3))
    (mark# U33 X -> mark# X, mark# U42(X1, X2, X3) -> mark# X1)
    (mark# U33 X -> mark# X, mark# U33 X -> U33# mark X)
    (mark# U33 X -> mark# X, mark# U33 X -> active# U33 mark X)
    (mark# U33 X -> mark# X, mark# U33 X -> mark# X)
    (mark# U33 X -> mark# X, mark# U31(X1, X2) -> U31#(mark X1, X2))
    (mark# U33 X -> mark# X, mark# U31(X1, X2) -> active# U31(mark X1, X2))
    (mark# U33 X -> mark# X, mark# U31(X1, X2) -> mark# X1)
    (mark# U33 X -> mark# X, mark# U32(X1, X2) -> U32#(mark X1, X2))
    (mark# U33 X -> mark# X, mark# U32(X1, X2) -> active# U32(mark X1, X2))
    (mark# U33 X -> mark# X, mark# U32(X1, X2) -> mark# X1)
    (mark# U33 X -> mark# X, mark# U23 X -> U23# mark X)
    (mark# U33 X -> mark# X, mark# U23 X -> active# U23 mark X)
    (mark# U33 X -> mark# X, mark# U23 X -> mark# X)
    (mark# U33 X -> mark# X, mark# U21(X1, X2) -> U21#(mark X1, X2))
    (mark# U33 X -> mark# X, mark# U21(X1, X2) -> active# U21(mark X1, X2))
    (mark# U33 X -> mark# X, mark# U21(X1, X2) -> mark# X1)
    (mark# U33 X -> mark# X, mark# U22(X1, X2) -> U22#(mark X1, X2))
    (mark# U33 X -> mark# X, mark# U22(X1, X2) -> active# U22(mark X1, X2))
    (mark# U33 X -> mark# X, mark# U22(X1, X2) -> mark# X1)
    (mark# U33 X -> mark# X, mark# take(X1, X2) -> take#(mark X1, mark X2))
    (mark# U33 X -> mark# X, mark# take(X1, X2) -> active# take(mark X1, mark X2))
    (mark# U33 X -> mark# X, mark# take(X1, X2) -> mark# X2)
    (mark# U33 X -> mark# X, mark# take(X1, X2) -> mark# X1)
    (mark# U33 X -> mark# X, mark# U136(X1, X2, X3, X4) -> U136#(mark X1, X2, X3, X4))
    (mark# U33 X -> mark# X, mark# U136(X1, X2, X3, X4) -> active# U136(mark X1, X2, X3, X4))
    (mark# U33 X -> mark# X, mark# U136(X1, X2, X3, X4) -> mark# X1)
    (mark# U33 X -> mark# X, mark# U135(X1, X2, X3, X4) -> U135#(mark X1, X2, X3, X4))
    (mark# U33 X -> mark# X, mark# U135(X1, X2, X3, X4) -> active# U135(mark X1, X2, X3, X4))
    (mark# U33 X -> mark# X, mark# U135(X1, X2, X3, X4) -> mark# X1)
    (mark# U33 X -> mark# X, mark# U134(X1, X2, X3, X4) -> U134#(mark X1, X2, X3, X4))
    (mark# U33 X -> mark# X, mark# U134(X1, X2, X3, X4) -> active# U134(mark X1, X2, X3, X4))
    (mark# U33 X -> mark# X, mark# U134(X1, X2, X3, X4) -> mark# X1)
    (mark# U33 X -> mark# X, mark# U133(X1, X2, X3, X4) -> U133#(mark X1, X2, X3, X4))
    (mark# U33 X -> mark# X, mark# U133(X1, X2, X3, X4) -> active# U133(mark X1, X2, X3, X4))
    (mark# U33 X -> mark# X, mark# U133(X1, X2, X3, X4) -> mark# X1)
    (mark# U33 X -> mark# X, mark# U131(X1, X2, X3, X4) -> U131#(mark X1, X2, X3, X4))
    (mark# U33 X -> mark# X, mark# U131(X1, X2, X3, X4) -> active# U131(mark X1, X2, X3, X4))
    (mark# U33 X -> mark# X, mark# U131(X1, X2, X3, X4) -> mark# X1)
    (mark# U33 X -> mark# X, mark# U132(X1, X2, X3, X4) -> U132#(mark X1, X2, X3, X4))
    (mark# U33 X -> mark# X, mark# U132(X1, X2, X3, X4) -> active# U132(mark X1, X2, X3, X4))
    (mark# U33 X -> mark# X, mark# U132(X1, X2, X3, X4) -> mark# X1)
    (mark# U33 X -> mark# X, mark# nil() -> active# nil())
    (mark# U33 X -> mark# X, mark# U121(X1, X2) -> U121#(mark X1, X2))
    (mark# U33 X -> mark# X, mark# U121(X1, X2) -> active# U121(mark X1, X2))
    (mark# U33 X -> mark# X, mark# U121(X1, X2) -> mark# X1)
    (mark# U33 X -> mark# X, mark# U122 X -> U122# mark X)
    (mark# U33 X -> mark# X, mark# U122 X -> active# U122 mark X)
    (mark# U33 X -> mark# X, mark# U122 X -> mark# X)
    (mark# U33 X -> mark# X, mark# isNatList X -> active# isNatList X)
    (mark# U33 X -> mark# X, mark# U13 X -> U13# mark X)
    (mark# U33 X -> mark# X, mark# U13 X -> active# U13 mark X)
    (mark# U33 X -> mark# X, mark# U13 X -> mark# X)
    (mark# U33 X -> mark# X, mark# length X -> length# mark X)
    (mark# U33 X -> mark# X, mark# length X -> active# length mark X)
    (mark# U33 X -> mark# X, mark# length X -> mark# X)
    (mark# U33 X -> mark# X, mark# s X -> s# mark X)
    (mark# U33 X -> mark# X, mark# s X -> active# s mark X)
    (mark# U33 X -> mark# X, mark# s X -> mark# X)
    (mark# U33 X -> mark# X, mark# U114(X1, X2) -> U114#(mark X1, X2))
    (mark# U33 X -> mark# X, mark# U114(X1, X2) -> active# U114(mark X1, X2))
    (mark# U33 X -> mark# X, mark# U114(X1, X2) -> mark# X1)
    (mark# U33 X -> mark# X, mark# U113(X1, X2, X3) -> U113#(mark X1, X2, X3))
    (mark# U33 X -> mark# X, mark# U113(X1, X2, X3) -> active# U113(mark X1, X2, X3))
    (mark# U33 X -> mark# X, mark# U113(X1, X2, X3) -> mark# X1)
    (mark# U33 X -> mark# X, mark# U111(X1, X2, X3) -> U111#(mark X1, X2, X3))
    (mark# U33 X -> mark# X, mark# U111(X1, X2, X3) -> active# U111(mark X1, X2, X3))
    (mark# U33 X -> mark# X, mark# U111(X1, X2, X3) -> mark# X1)
    (mark# U33 X -> mark# X, mark# U112(X1, X2, X3) -> U112#(mark X1, X2, X3))
    (mark# U33 X -> mark# X, mark# U112(X1, X2, X3) -> active# U112(mark X1, X2, X3))
    (mark# U33 X -> mark# X, mark# U112(X1, X2, X3) -> mark# X1)
    (mark# U33 X -> mark# X, mark# U11(X1, X2) -> U11#(mark X1, X2))
    (mark# U33 X -> mark# X, mark# U11(X1, X2) -> active# U11(mark X1, X2))
    (mark# U33 X -> mark# X, mark# U11(X1, X2) -> mark# X1)
    (mark# U33 X -> mark# X, mark# U12(X1, X2) -> U12#(mark X1, X2))
    (mark# U33 X -> mark# X, mark# U12(X1, X2) -> active# U12(mark X1, X2))
    (mark# U33 X -> mark# X, mark# U12(X1, X2) -> mark# X1)
    (mark# U33 X -> mark# X, mark# isNatIList X -> active# isNatIList X)
    (mark# U33 X -> mark# X, mark# U106 X -> U106# mark X)
    (mark# U33 X -> mark# X, mark# U106 X -> active# U106 mark X)
    (mark# U33 X -> mark# X, mark# U106 X -> mark# X)
    (mark# U33 X -> mark# X, mark# isNat X -> active# isNat X)
    (mark# U33 X -> mark# X, mark# U105(X1, X2) -> U105#(mark X1, X2))
    (mark# U33 X -> mark# X, mark# U105(X1, X2) -> active# U105(mark X1, X2))
    (mark# U33 X -> mark# X, mark# U105(X1, X2) -> mark# X1)
    (mark# U33 X -> mark# X, mark# U104(X1, X2, X3) -> U104#(mark X1, X2, X3))
    (mark# U33 X -> mark# X, mark# U104(X1, X2, X3) -> active# U104(mark X1, X2, X3))
    (mark# U33 X -> mark# X, mark# U104(X1, X2, X3) -> mark# X1)
    (mark# U33 X -> mark# X, mark# isNatIListKind X -> active# isNatIListKind X)
    (mark# U33 X -> mark# X, mark# U103(X1, X2, X3) -> U103#(mark X1, X2, X3))
    (mark# U33 X -> mark# X, mark# U103(X1, X2, X3) -> active# U103(mark X1, X2, X3))
    (mark# U33 X -> mark# X, mark# U103(X1, X2, X3) -> mark# X1)
    (mark# U33 X -> mark# X, mark# tt() -> active# tt())
    (mark# U33 X -> mark# X, mark# U101(X1, X2, X3) -> U101#(mark X1, X2, X3))
    (mark# U33 X -> mark# X, mark# U101(X1, X2, X3) -> active# U101(mark X1, X2, X3))
    (mark# U33 X -> mark# X, mark# U101(X1, X2, X3) -> mark# X1)
    (mark# U33 X -> mark# X, mark# isNatKind X -> active# isNatKind X)
    (mark# U33 X -> mark# X, mark# U102(X1, X2, X3) -> U102#(mark X1, X2, X3))
    (mark# U33 X -> mark# X, mark# U102(X1, X2, X3) -> active# U102(mark X1, X2, X3))
    (mark# U33 X -> mark# X, mark# U102(X1, X2, X3) -> mark# X1)
    (mark# U33 X -> mark# X, mark# zeros() -> active# zeros())
    (mark# U33 X -> mark# X, mark# 0() -> active# 0())
    (mark# U33 X -> mark# X, mark# cons(X1, X2) -> active# cons(mark X1, X2))
    (mark# U33 X -> mark# X, mark# cons(X1, X2) -> cons#(mark X1, X2))
    (mark# U33 X -> mark# X, mark# cons(X1, X2) -> mark# X1)
    (mark# U52 X -> mark# X, mark# U96 X -> U96# mark X)
    (mark# U52 X -> mark# X, mark# U96 X -> active# U96 mark X)
    (mark# U52 X -> mark# X, mark# U96 X -> mark# X)
    (mark# U52 X -> mark# X, mark# U95(X1, X2) -> U95#(mark X1, X2))
    (mark# U52 X -> mark# X, mark# U95(X1, X2) -> active# U95(mark X1, X2))
    (mark# U52 X -> mark# X, mark# U95(X1, X2) -> mark# X1)
    (mark# U52 X -> mark# X, mark# U94(X1, X2, X3) -> U94#(mark X1, X2, X3))
    (mark# U52 X -> mark# X, mark# U94(X1, X2, X3) -> active# U94(mark X1, X2, X3))
    (mark# U52 X -> mark# X, mark# U94(X1, X2, X3) -> mark# X1)
    (mark# U52 X -> mark# X, mark# U93(X1, X2, X3) -> U93#(mark X1, X2, X3))
    (mark# U52 X -> mark# X, mark# U93(X1, X2, X3) -> active# U93(mark X1, X2, X3))
    (mark# U52 X -> mark# X, mark# U93(X1, X2, X3) -> mark# X1)
    (mark# U52 X -> mark# X, mark# U91(X1, X2, X3) -> U91#(mark X1, X2, X3))
    (mark# U52 X -> mark# X, mark# U91(X1, X2, X3) -> active# U91(mark X1, X2, X3))
    (mark# U52 X -> mark# X, mark# U91(X1, X2, X3) -> mark# X1)
    (mark# U52 X -> mark# X, mark# U92(X1, X2, X3) -> U92#(mark X1, X2, X3))
    (mark# U52 X -> mark# X, mark# U92(X1, X2, X3) -> active# U92(mark X1, X2, X3))
    (mark# U52 X -> mark# X, mark# U92(X1, X2, X3) -> mark# X1)
    (mark# U52 X -> mark# X, mark# U81 X -> U81# mark X)
    (mark# U52 X -> mark# X, mark# U81 X -> active# U81 mark X)
    (mark# U52 X -> mark# X, mark# U81 X -> mark# X)
    (mark# U52 X -> mark# X, mark# U71 X -> U71# mark X)
    (mark# U52 X -> mark# X, mark# U71 X -> active# U71 mark X)
    (mark# U52 X -> mark# X, mark# U71 X -> mark# X)
    (mark# U52 X -> mark# X, mark# U61(X1, X2) -> U61#(mark X1, X2))
    (mark# U52 X -> mark# X, mark# U61(X1, X2) -> active# U61(mark X1, X2))
    (mark# U52 X -> mark# X, mark# U61(X1, X2) -> mark# X1)
    (mark# U52 X -> mark# X, mark# U62 X -> U62# mark X)
    (mark# U52 X -> mark# X, mark# U62 X -> active# U62 mark X)
    (mark# U52 X -> mark# X, mark# U62 X -> mark# X)
    (mark# U52 X -> mark# X, mark# U51(X1, X2) -> U51#(mark X1, X2))
    (mark# U52 X -> mark# X, mark# U51(X1, X2) -> active# U51(mark X1, X2))
    (mark# U52 X -> mark# X, mark# U51(X1, X2) -> mark# X1)
    (mark# U52 X -> mark# X, mark# U52 X -> U52# mark X)
    (mark# U52 X -> mark# X, mark# U52 X -> active# U52 mark X)
    (mark# U52 X -> mark# X, mark# U52 X -> mark# X)
    (mark# U52 X -> mark# X, mark# U46 X -> U46# mark X)
    (mark# U52 X -> mark# X, mark# U46 X -> active# U46 mark X)
    (mark# U52 X -> mark# X, mark# U46 X -> mark# X)
    (mark# U52 X -> mark# X, mark# U45(X1, X2) -> U45#(mark X1, X2))
    (mark# U52 X -> mark# X, mark# U45(X1, X2) -> active# U45(mark X1, X2))
    (mark# U52 X -> mark# X, mark# U45(X1, X2) -> mark# X1)
    (mark# U52 X -> mark# X, mark# U44(X1, X2, X3) -> U44#(mark X1, X2, X3))
    (mark# U52 X -> mark# X, mark# U44(X1, X2, X3) -> active# U44(mark X1, X2, X3))
    (mark# U52 X -> mark# X, mark# U44(X1, X2, X3) -> mark# X1)
    (mark# U52 X -> mark# X, mark# U43(X1, X2, X3) -> U43#(mark X1, X2, X3))
    (mark# U52 X -> mark# X, mark# U43(X1, X2, X3) -> active# U43(mark X1, X2, X3))
    (mark# U52 X -> mark# X, mark# U43(X1, X2, X3) -> mark# X1)
    (mark# U52 X -> mark# X, mark# U41(X1, X2, X3) -> U41#(mark X1, X2, X3))
    (mark# U52 X -> mark# X, mark# U41(X1, X2, X3) -> active# U41(mark X1, X2, X3))
    (mark# U52 X -> mark# X, mark# U41(X1, X2, X3) -> mark# X1)
    (mark# U52 X -> mark# X, mark# U42(X1, X2, X3) -> U42#(mark X1, X2, X3))
    (mark# U52 X -> mark# X, mark# U42(X1, X2, X3) -> active# U42(mark X1, X2, X3))
    (mark# U52 X -> mark# X, mark# U42(X1, X2, X3) -> mark# X1)
    (mark# U52 X -> mark# X, mark# U33 X -> U33# mark X)
    (mark# U52 X -> mark# X, mark# U33 X -> active# U33 mark X)
    (mark# U52 X -> mark# X, mark# U33 X -> mark# X)
    (mark# U52 X -> mark# X, mark# U31(X1, X2) -> U31#(mark X1, X2))
    (mark# U52 X -> mark# X, mark# U31(X1, X2) -> active# U31(mark X1, X2))
    (mark# U52 X -> mark# X, mark# U31(X1, X2) -> mark# X1)
    (mark# U52 X -> mark# X, mark# U32(X1, X2) -> U32#(mark X1, X2))
    (mark# U52 X -> mark# X, mark# U32(X1, X2) -> active# U32(mark X1, X2))
    (mark# U52 X -> mark# X, mark# U32(X1, X2) -> mark# X1)
    (mark# U52 X -> mark# X, mark# U23 X -> U23# mark X)
    (mark# U52 X -> mark# X, mark# U23 X -> active# U23 mark X)
    (mark# U52 X -> mark# X, mark# U23 X -> mark# X)
    (mark# U52 X -> mark# X, mark# U21(X1, X2) -> U21#(mark X1, X2))
    (mark# U52 X -> mark# X, mark# U21(X1, X2) -> active# U21(mark X1, X2))
    (mark# U52 X -> mark# X, mark# U21(X1, X2) -> mark# X1)
    (mark# U52 X -> mark# X, mark# U22(X1, X2) -> U22#(mark X1, X2))
    (mark# U52 X -> mark# X, mark# U22(X1, X2) -> active# U22(mark X1, X2))
    (mark# U52 X -> mark# X, mark# U22(X1, X2) -> mark# X1)
    (mark# U52 X -> mark# X, mark# take(X1, X2) -> take#(mark X1, mark X2))
    (mark# U52 X -> mark# X, mark# take(X1, X2) -> active# take(mark X1, mark X2))
    (mark# U52 X -> mark# X, mark# take(X1, X2) -> mark# X2)
    (mark# U52 X -> mark# X, mark# take(X1, X2) -> mark# X1)
    (mark# U52 X -> mark# X, mark# U136(X1, X2, X3, X4) -> U136#(mark X1, X2, X3, X4))
    (mark# U52 X -> mark# X, mark# U136(X1, X2, X3, X4) -> active# U136(mark X1, X2, X3, X4))
    (mark# U52 X -> mark# X, mark# U136(X1, X2, X3, X4) -> mark# X1)
    (mark# U52 X -> mark# X, mark# U135(X1, X2, X3, X4) -> U135#(mark X1, X2, X3, X4))
    (mark# U52 X -> mark# X, mark# U135(X1, X2, X3, X4) -> active# U135(mark X1, X2, X3, X4))
    (mark# U52 X -> mark# X, mark# U135(X1, X2, X3, X4) -> mark# X1)
    (mark# U52 X -> mark# X, mark# U134(X1, X2, X3, X4) -> U134#(mark X1, X2, X3, X4))
    (mark# U52 X -> mark# X, mark# U134(X1, X2, X3, X4) -> active# U134(mark X1, X2, X3, X4))
    (mark# U52 X -> mark# X, mark# U134(X1, X2, X3, X4) -> mark# X1)
    (mark# U52 X -> mark# X, mark# U133(X1, X2, X3, X4) -> U133#(mark X1, X2, X3, X4))
    (mark# U52 X -> mark# X, mark# U133(X1, X2, X3, X4) -> active# U133(mark X1, X2, X3, X4))
    (mark# U52 X -> mark# X, mark# U133(X1, X2, X3, X4) -> mark# X1)
    (mark# U52 X -> mark# X, mark# U131(X1, X2, X3, X4) -> U131#(mark X1, X2, X3, X4))
    (mark# U52 X -> mark# X, mark# U131(X1, X2, X3, X4) -> active# U131(mark X1, X2, X3, X4))
    (mark# U52 X -> mark# X, mark# U131(X1, X2, X3, X4) -> mark# X1)
    (mark# U52 X -> mark# X, mark# U132(X1, X2, X3, X4) -> U132#(mark X1, X2, X3, X4))
    (mark# U52 X -> mark# X, mark# U132(X1, X2, X3, X4) -> active# U132(mark X1, X2, X3, X4))
    (mark# U52 X -> mark# X, mark# U132(X1, X2, X3, X4) -> mark# X1)
    (mark# U52 X -> mark# X, mark# nil() -> active# nil())
    (mark# U52 X -> mark# X, mark# U121(X1, X2) -> U121#(mark X1, X2))
    (mark# U52 X -> mark# X, mark# U121(X1, X2) -> active# U121(mark X1, X2))
    (mark# U52 X -> mark# X, mark# U121(X1, X2) -> mark# X1)
    (mark# U52 X -> mark# X, mark# U122 X -> U122# mark X)
    (mark# U52 X -> mark# X, mark# U122 X -> active# U122 mark X)
    (mark# U52 X -> mark# X, mark# U122 X -> mark# X)
    (mark# U52 X -> mark# X, mark# isNatList X -> active# isNatList X)
    (mark# U52 X -> mark# X, mark# U13 X -> U13# mark X)
    (mark# U52 X -> mark# X, mark# U13 X -> active# U13 mark X)
    (mark# U52 X -> mark# X, mark# U13 X -> mark# X)
    (mark# U52 X -> mark# X, mark# length X -> length# mark X)
    (mark# U52 X -> mark# X, mark# length X -> active# length mark X)
    (mark# U52 X -> mark# X, mark# length X -> mark# X)
    (mark# U52 X -> mark# X, mark# s X -> s# mark X)
    (mark# U52 X -> mark# X, mark# s X -> active# s mark X)
    (mark# U52 X -> mark# X, mark# s X -> mark# X)
    (mark# U52 X -> mark# X, mark# U114(X1, X2) -> U114#(mark X1, X2))
    (mark# U52 X -> mark# X, mark# U114(X1, X2) -> active# U114(mark X1, X2))
    (mark# U52 X -> mark# X, mark# U114(X1, X2) -> mark# X1)
    (mark# U52 X -> mark# X, mark# U113(X1, X2, X3) -> U113#(mark X1, X2, X3))
    (mark# U52 X -> mark# X, mark# U113(X1, X2, X3) -> active# U113(mark X1, X2, X3))
    (mark# U52 X -> mark# X, mark# U113(X1, X2, X3) -> mark# X1)
    (mark# U52 X -> mark# X, mark# U111(X1, X2, X3) -> U111#(mark X1, X2, X3))
    (mark# U52 X -> mark# X, mark# U111(X1, X2, X3) -> active# U111(mark X1, X2, X3))
    (mark# U52 X -> mark# X, mark# U111(X1, X2, X3) -> mark# X1)
    (mark# U52 X -> mark# X, mark# U112(X1, X2, X3) -> U112#(mark X1, X2, X3))
    (mark# U52 X -> mark# X, mark# U112(X1, X2, X3) -> active# U112(mark X1, X2, X3))
    (mark# U52 X -> mark# X, mark# U112(X1, X2, X3) -> mark# X1)
    (mark# U52 X -> mark# X, mark# U11(X1, X2) -> U11#(mark X1, X2))
    (mark# U52 X -> mark# X, mark# U11(X1, X2) -> active# U11(mark X1, X2))
    (mark# U52 X -> mark# X, mark# U11(X1, X2) -> mark# X1)
    (mark# U52 X -> mark# X, mark# U12(X1, X2) -> U12#(mark X1, X2))
    (mark# U52 X -> mark# X, mark# U12(X1, X2) -> active# U12(mark X1, X2))
    (mark# U52 X -> mark# X, mark# U12(X1, X2) -> mark# X1)
    (mark# U52 X -> mark# X, mark# isNatIList X -> active# isNatIList X)
    (mark# U52 X -> mark# X, mark# U106 X -> U106# mark X)
    (mark# U52 X -> mark# X, mark# U106 X -> active# U106 mark X)
    (mark# U52 X -> mark# X, mark# U106 X -> mark# X)
    (mark# U52 X -> mark# X, mark# isNat X -> active# isNat X)
    (mark# U52 X -> mark# X, mark# U105(X1, X2) -> U105#(mark X1, X2))
    (mark# U52 X -> mark# X, mark# U105(X1, X2) -> active# U105(mark X1, X2))
    (mark# U52 X -> mark# X, mark# U105(X1, X2) -> mark# X1)
    (mark# U52 X -> mark# X, mark# U104(X1, X2, X3) -> U104#(mark X1, X2, X3))
    (mark# U52 X -> mark# X, mark# U104(X1, X2, X3) -> active# U104(mark X1, X2, X3))
    (mark# U52 X -> mark# X, mark# U104(X1, X2, X3) -> mark# X1)
    (mark# U52 X -> mark# X, mark# isNatIListKind X -> active# isNatIListKind X)
    (mark# U52 X -> mark# X, mark# U103(X1, X2, X3) -> U103#(mark X1, X2, X3))
    (mark# U52 X -> mark# X, mark# U103(X1, X2, X3) -> active# U103(mark X1, X2, X3))
    (mark# U52 X -> mark# X, mark# U103(X1, X2, X3) -> mark# X1)
    (mark# U52 X -> mark# X, mark# tt() -> active# tt())
    (mark# U52 X -> mark# X, mark# U101(X1, X2, X3) -> U101#(mark X1, X2, X3))
    (mark# U52 X -> mark# X, mark# U101(X1, X2, X3) -> active# U101(mark X1, X2, X3))
    (mark# U52 X -> mark# X, mark# U101(X1, X2, X3) -> mark# X1)
    (mark# U52 X -> mark# X, mark# isNatKind X -> active# isNatKind X)
    (mark# U52 X -> mark# X, mark# U102(X1, X2, X3) -> U102#(mark X1, X2, X3))
    (mark# U52 X -> mark# X, mark# U102(X1, X2, X3) -> active# U102(mark X1, X2, X3))
    (mark# U52 X -> mark# X, mark# U102(X1, X2, X3) -> mark# X1)
    (mark# U52 X -> mark# X, mark# zeros() -> active# zeros())
    (mark# U52 X -> mark# X, mark# 0() -> active# 0())
    (mark# U52 X -> mark# X, mark# cons(X1, X2) -> active# cons(mark X1, X2))
    (mark# U52 X -> mark# X, mark# cons(X1, X2) -> cons#(mark X1, X2))
    (mark# U52 X -> mark# X, mark# cons(X1, X2) -> mark# X1)
    (mark# U71 X -> mark# X, mark# U96 X -> U96# mark X)
    (mark# U71 X -> mark# X, mark# U96 X -> active# U96 mark X)
    (mark# U71 X -> mark# X, mark# U96 X -> mark# X)
    (mark# U71 X -> mark# X, mark# U95(X1, X2) -> U95#(mark X1, X2))
    (mark# U71 X -> mark# X, mark# U95(X1, X2) -> active# U95(mark X1, X2))
    (mark# U71 X -> mark# X, mark# U95(X1, X2) -> mark# X1)
    (mark# U71 X -> mark# X, mark# U94(X1, X2, X3) -> U94#(mark X1, X2, X3))
    (mark# U71 X -> mark# X, mark# U94(X1, X2, X3) -> active# U94(mark X1, X2, X3))
    (mark# U71 X -> mark# X, mark# U94(X1, X2, X3) -> mark# X1)
    (mark# U71 X -> mark# X, mark# U93(X1, X2, X3) -> U93#(mark X1, X2, X3))
    (mark# U71 X -> mark# X, mark# U93(X1, X2, X3) -> active# U93(mark X1, X2, X3))
    (mark# U71 X -> mark# X, mark# U93(X1, X2, X3) -> mark# X1)
    (mark# U71 X -> mark# X, mark# U91(X1, X2, X3) -> U91#(mark X1, X2, X3))
    (mark# U71 X -> mark# X, mark# U91(X1, X2, X3) -> active# U91(mark X1, X2, X3))
    (mark# U71 X -> mark# X, mark# U91(X1, X2, X3) -> mark# X1)
    (mark# U71 X -> mark# X, mark# U92(X1, X2, X3) -> U92#(mark X1, X2, X3))
    (mark# U71 X -> mark# X, mark# U92(X1, X2, X3) -> active# U92(mark X1, X2, X3))
    (mark# U71 X -> mark# X, mark# U92(X1, X2, X3) -> mark# X1)
    (mark# U71 X -> mark# X, mark# U81 X -> U81# mark X)
    (mark# U71 X -> mark# X, mark# U81 X -> active# U81 mark X)
    (mark# U71 X -> mark# X, mark# U81 X -> mark# X)
    (mark# U71 X -> mark# X, mark# U71 X -> U71# mark X)
    (mark# U71 X -> mark# X, mark# U71 X -> active# U71 mark X)
    (mark# U71 X -> mark# X, mark# U71 X -> mark# X)
    (mark# U71 X -> mark# X, mark# U61(X1, X2) -> U61#(mark X1, X2))
    (mark# U71 X -> mark# X, mark# U61(X1, X2) -> active# U61(mark X1, X2))
    (mark# U71 X -> mark# X, mark# U61(X1, X2) -> mark# X1)
    (mark# U71 X -> mark# X, mark# U62 X -> U62# mark X)
    (mark# U71 X -> mark# X, mark# U62 X -> active# U62 mark X)
    (mark# U71 X -> mark# X, mark# U62 X -> mark# X)
    (mark# U71 X -> mark# X, mark# U51(X1, X2) -> U51#(mark X1, X2))
    (mark# U71 X -> mark# X, mark# U51(X1, X2) -> active# U51(mark X1, X2))
    (mark# U71 X -> mark# X, mark# U51(X1, X2) -> mark# X1)
    (mark# U71 X -> mark# X, mark# U52 X -> U52# mark X)
    (mark# U71 X -> mark# X, mark# U52 X -> active# U52 mark X)
    (mark# U71 X -> mark# X, mark# U52 X -> mark# X)
    (mark# U71 X -> mark# X, mark# U46 X -> U46# mark X)
    (mark# U71 X -> mark# X, mark# U46 X -> active# U46 mark X)
    (mark# U71 X -> mark# X, mark# U46 X -> mark# X)
    (mark# U71 X -> mark# X, mark# U45(X1, X2) -> U45#(mark X1, X2))
    (mark# U71 X -> mark# X, mark# U45(X1, X2) -> active# U45(mark X1, X2))
    (mark# U71 X -> mark# X, mark# U45(X1, X2) -> mark# X1)
    (mark# U71 X -> mark# X, mark# U44(X1, X2, X3) -> U44#(mark X1, X2, X3))
    (mark# U71 X -> mark# X, mark# U44(X1, X2, X3) -> active# U44(mark X1, X2, X3))
    (mark# U71 X -> mark# X, mark# U44(X1, X2, X3) -> mark# X1)
    (mark# U71 X -> mark# X, mark# U43(X1, X2, X3) -> U43#(mark X1, X2, X3))
    (mark# U71 X -> mark# X, mark# U43(X1, X2, X3) -> active# U43(mark X1, X2, X3))
    (mark# U71 X -> mark# X, mark# U43(X1, X2, X3) -> mark# X1)
    (mark# U71 X -> mark# X, mark# U41(X1, X2, X3) -> U41#(mark X1, X2, X3))
    (mark# U71 X -> mark# X, mark# U41(X1, X2, X3) -> active# U41(mark X1, X2, X3))
    (mark# U71 X -> mark# X, mark# U41(X1, X2, X3) -> mark# X1)
    (mark# U71 X -> mark# X, mark# U42(X1, X2, X3) -> U42#(mark X1, X2, X3))
    (mark# U71 X -> mark# X, mark# U42(X1, X2, X3) -> active# U42(mark X1, X2, X3))
    (mark# U71 X -> mark# X, mark# U42(X1, X2, X3) -> mark# X1)
    (mark# U71 X -> mark# X, mark# U33 X -> U33# mark X)
    (mark# U71 X -> mark# X, mark# U33 X -> active# U33 mark X)
    (mark# U71 X -> mark# X, mark# U33 X -> mark# X)
    (mark# U71 X -> mark# X, mark# U31(X1, X2) -> U31#(mark X1, X2))
    (mark# U71 X -> mark# X, mark# U31(X1, X2) -> active# U31(mark X1, X2))
    (mark# U71 X -> mark# X, mark# U31(X1, X2) -> mark# X1)
    (mark# U71 X -> mark# X, mark# U32(X1, X2) -> U32#(mark X1, X2))
    (mark# U71 X -> mark# X, mark# U32(X1, X2) -> active# U32(mark X1, X2))
    (mark# U71 X -> mark# X, mark# U32(X1, X2) -> mark# X1)
    (mark# U71 X -> mark# X, mark# U23 X -> U23# mark X)
    (mark# U71 X -> mark# X, mark# U23 X -> active# U23 mark X)
    (mark# U71 X -> mark# X, mark# U23 X -> mark# X)
    (mark# U71 X -> mark# X, mark# U21(X1, X2) -> U21#(mark X1, X2))
    (mark# U71 X -> mark# X, mark# U21(X1, X2) -> active# U21(mark X1, X2))
    (mark# U71 X -> mark# X, mark# U21(X1, X2) -> mark# X1)
    (mark# U71 X -> mark# X, mark# U22(X1, X2) -> U22#(mark X1, X2))
    (mark# U71 X -> mark# X, mark# U22(X1, X2) -> active# U22(mark X1, X2))
    (mark# U71 X -> mark# X, mark# U22(X1, X2) -> mark# X1)
    (mark# U71 X -> mark# X, mark# take(X1, X2) -> take#(mark X1, mark X2))
    (mark# U71 X -> mark# X, mark# take(X1, X2) -> active# take(mark X1, mark X2))
    (mark# U71 X -> mark# X, mark# take(X1, X2) -> mark# X2)
    (mark# U71 X -> mark# X, mark# take(X1, X2) -> mark# X1)
    (mark# U71 X -> mark# X, mark# U136(X1, X2, X3, X4) -> U136#(mark X1, X2, X3, X4))
    (mark# U71 X -> mark# X, mark# U136(X1, X2, X3, X4) -> active# U136(mark X1, X2, X3, X4))
    (mark# U71 X -> mark# X, mark# U136(X1, X2, X3, X4) -> mark# X1)
    (mark# U71 X -> mark# X, mark# U135(X1, X2, X3, X4) -> U135#(mark X1, X2, X3, X4))
    (mark# U71 X -> mark# X, mark# U135(X1, X2, X3, X4) -> active# U135(mark X1, X2, X3, X4))
    (mark# U71 X -> mark# X, mark# U135(X1, X2, X3, X4) -> mark# X1)
    (mark# U71 X -> mark# X, mark# U134(X1, X2, X3, X4) -> U134#(mark X1, X2, X3, X4))
    (mark# U71 X -> mark# X, mark# U134(X1, X2, X3, X4) -> active# U134(mark X1, X2, X3, X4))
    (mark# U71 X -> mark# X, mark# U134(X1, X2, X3, X4) -> mark# X1)
    (mark# U71 X -> mark# X, mark# U133(X1, X2, X3, X4) -> U133#(mark X1, X2, X3, X4))
    (mark# U71 X -> mark# X, mark# U133(X1, X2, X3, X4) -> active# U133(mark X1, X2, X3, X4))
    (mark# U71 X -> mark# X, mark# U133(X1, X2, X3, X4) -> mark# X1)
    (mark# U71 X -> mark# X, mark# U131(X1, X2, X3, X4) -> U131#(mark X1, X2, X3, X4))
    (mark# U71 X -> mark# X, mark# U131(X1, X2, X3, X4) -> active# U131(mark X1, X2, X3, X4))
    (mark# U71 X -> mark# X, mark# U131(X1, X2, X3, X4) -> mark# X1)
    (mark# U71 X -> mark# X, mark# U132(X1, X2, X3, X4) -> U132#(mark X1, X2, X3, X4))
    (mark# U71 X -> mark# X, mark# U132(X1, X2, X3, X4) -> active# U132(mark X1, X2, X3, X4))
    (mark# U71 X -> mark# X, mark# U132(X1, X2, X3, X4) -> mark# X1)
    (mark# U71 X -> mark# X, mark# nil() -> active# nil())
    (mark# U71 X -> mark# X, mark# U121(X1, X2) -> U121#(mark X1, X2))
    (mark# U71 X -> mark# X, mark# U121(X1, X2) -> active# U121(mark X1, X2))
    (mark# U71 X -> mark# X, mark# U121(X1, X2) -> mark# X1)
    (mark# U71 X -> mark# X, mark# U122 X -> U122# mark X)
    (mark# U71 X -> mark# X, mark# U122 X -> active# U122 mark X)
    (mark# U71 X -> mark# X, mark# U122 X -> mark# X)
    (mark# U71 X -> mark# X, mark# isNatList X -> active# isNatList X)
    (mark# U71 X -> mark# X, mark# U13 X -> U13# mark X)
    (mark# U71 X -> mark# X, mark# U13 X -> active# U13 mark X)
    (mark# U71 X -> mark# X, mark# U13 X -> mark# X)
    (mark# U71 X -> mark# X, mark# length X -> length# mark X)
    (mark# U71 X -> mark# X, mark# length X -> active# length mark X)
    (mark# U71 X -> mark# X, mark# length X -> mark# X)
    (mark# U71 X -> mark# X, mark# s X -> s# mark X)
    (mark# U71 X -> mark# X, mark# s X -> active# s mark X)
    (mark# U71 X -> mark# X, mark# s X -> mark# X)
    (mark# U71 X -> mark# X, mark# U114(X1, X2) -> U114#(mark X1, X2))
    (mark# U71 X -> mark# X, mark# U114(X1, X2) -> active# U114(mark X1, X2))
    (mark# U71 X -> mark# X, mark# U114(X1, X2) -> mark# X1)
    (mark# U71 X -> mark# X, mark# U113(X1, X2, X3) -> U113#(mark X1, X2, X3))
    (mark# U71 X -> mark# X, mark# U113(X1, X2, X3) -> active# U113(mark X1, X2, X3))
    (mark# U71 X -> mark# X, mark# U113(X1, X2, X3) -> mark# X1)
    (mark# U71 X -> mark# X, mark# U111(X1, X2, X3) -> U111#(mark X1, X2, X3))
    (mark# U71 X -> mark# X, mark# U111(X1, X2, X3) -> active# U111(mark X1, X2, X3))
    (mark# U71 X -> mark# X, mark# U111(X1, X2, X3) -> mark# X1)
    (mark# U71 X -> mark# X, mark# U112(X1, X2, X3) -> U112#(mark X1, X2, X3))
    (mark# U71 X -> mark# X, mark# U112(X1, X2, X3) -> active# U112(mark X1, X2, X3))
    (mark# U71 X -> mark# X, mark# U112(X1, X2, X3) -> mark# X1)
    (mark# U71 X -> mark# X, mark# U11(X1, X2) -> U11#(mark X1, X2))
    (mark# U71 X -> mark# X, mark# U11(X1, X2) -> active# U11(mark X1, X2))
    (mark# U71 X -> mark# X, mark# U11(X1, X2) -> mark# X1)
    (mark# U71 X -> mark# X, mark# U12(X1, X2) -> U12#(mark X1, X2))
    (mark# U71 X -> mark# X, mark# U12(X1, X2) -> active# U12(mark X1, X2))
    (mark# U71 X -> mark# X, mark# U12(X1, X2) -> mark# X1)
    (mark# U71 X -> mark# X, mark# isNatIList X -> active# isNatIList X)
    (mark# U71 X -> mark# X, mark# U106 X -> U106# mark X)
    (mark# U71 X -> mark# X, mark# U106 X -> active# U106 mark X)
    (mark# U71 X -> mark# X, mark# U106 X -> mark# X)
    (mark# U71 X -> mark# X, mark# isNat X -> active# isNat X)
    (mark# U71 X -> mark# X, mark# U105(X1, X2) -> U105#(mark X1, X2))
    (mark# U71 X -> mark# X, mark# U105(X1, X2) -> active# U105(mark X1, X2))
    (mark# U71 X -> mark# X, mark# U105(X1, X2) -> mark# X1)
    (mark# U71 X -> mark# X, mark# U104(X1, X2, X3) -> U104#(mark X1, X2, X3))
    (mark# U71 X -> mark# X, mark# U104(X1, X2, X3) -> active# U104(mark X1, X2, X3))
    (mark# U71 X -> mark# X, mark# U104(X1, X2, X3) -> mark# X1)
    (mark# U71 X -> mark# X, mark# isNatIListKind X -> active# isNatIListKind X)
    (mark# U71 X -> mark# X, mark# U103(X1, X2, X3) -> U103#(mark X1, X2, X3))
    (mark# U71 X -> mark# X, mark# U103(X1, X2, X3) -> active# U103(mark X1, X2, X3))
    (mark# U71 X -> mark# X, mark# U103(X1, X2, X3) -> mark# X1)
    (mark# U71 X -> mark# X, mark# tt() -> active# tt())
    (mark# U71 X -> mark# X, mark# U101(X1, X2, X3) -> U101#(mark X1, X2, X3))
    (mark# U71 X -> mark# X, mark# U101(X1, X2, X3) -> active# U101(mark X1, X2, X3))
    (mark# U71 X -> mark# X, mark# U101(X1, X2, X3) -> mark# X1)
    (mark# U71 X -> mark# X, mark# isNatKind X -> active# isNatKind X)
    (mark# U71 X -> mark# X, mark# U102(X1, X2, X3) -> U102#(mark X1, X2, X3))
    (mark# U71 X -> mark# X, mark# U102(X1, X2, X3) -> active# U102(mark X1, X2, X3))
    (mark# U71 X -> mark# X, mark# U102(X1, X2, X3) -> mark# X1)
    (mark# U71 X -> mark# X, mark# zeros() -> active# zeros())
    (mark# U71 X -> mark# X, mark# 0() -> active# 0())
    (mark# U71 X -> mark# X, mark# cons(X1, X2) -> active# cons(mark X1, X2))
    (mark# U71 X -> mark# X, mark# cons(X1, X2) -> cons#(mark X1, X2))
    (mark# U71 X -> mark# X, mark# cons(X1, X2) -> mark# X1)
    (mark# U96 X -> mark# X, mark# U96 X -> U96# mark X)
    (mark# U96 X -> mark# X, mark# U96 X -> active# U96 mark X)
    (mark# U96 X -> mark# X, mark# U96 X -> mark# X)
    (mark# U96 X -> mark# X, mark# U95(X1, X2) -> U95#(mark X1, X2))
    (mark# U96 X -> mark# X, mark# U95(X1, X2) -> active# U95(mark X1, X2))
    (mark# U96 X -> mark# X, mark# U95(X1, X2) -> mark# X1)
    (mark# U96 X -> mark# X, mark# U94(X1, X2, X3) -> U94#(mark X1, X2, X3))
    (mark# U96 X -> mark# X, mark# U94(X1, X2, X3) -> active# U94(mark X1, X2, X3))
    (mark# U96 X -> mark# X, mark# U94(X1, X2, X3) -> mark# X1)
    (mark# U96 X -> mark# X, mark# U93(X1, X2, X3) -> U93#(mark X1, X2, X3))
    (mark# U96 X -> mark# X, mark# U93(X1, X2, X3) -> active# U93(mark X1, X2, X3))
    (mark# U96 X -> mark# X, mark# U93(X1, X2, X3) -> mark# X1)
    (mark# U96 X -> mark# X, mark# U91(X1, X2, X3) -> U91#(mark X1, X2, X3))
    (mark# U96 X -> mark# X, mark# U91(X1, X2, X3) -> active# U91(mark X1, X2, X3))
    (mark# U96 X -> mark# X, mark# U91(X1, X2, X3) -> mark# X1)
    (mark# U96 X -> mark# X, mark# U92(X1, X2, X3) -> U92#(mark X1, X2, X3))
    (mark# U96 X -> mark# X, mark# U92(X1, X2, X3) -> active# U92(mark X1, X2, X3))
    (mark# U96 X -> mark# X, mark# U92(X1, X2, X3) -> mark# X1)
    (mark# U96 X -> mark# X, mark# U81 X -> U81# mark X)
    (mark# U96 X -> mark# X, mark# U81 X -> active# U81 mark X)
    (mark# U96 X -> mark# X, mark# U81 X -> mark# X)
    (mark# U96 X -> mark# X, mark# U71 X -> U71# mark X)
    (mark# U96 X -> mark# X, mark# U71 X -> active# U71 mark X)
    (mark# U96 X -> mark# X, mark# U71 X -> mark# X)
    (mark# U96 X -> mark# X, mark# U61(X1, X2) -> U61#(mark X1, X2))
    (mark# U96 X -> mark# X, mark# U61(X1, X2) -> active# U61(mark X1, X2))
    (mark# U96 X -> mark# X, mark# U61(X1, X2) -> mark# X1)
    (mark# U96 X -> mark# X, mark# U62 X -> U62# mark X)
    (mark# U96 X -> mark# X, mark# U62 X -> active# U62 mark X)
    (mark# U96 X -> mark# X, mark# U62 X -> mark# X)
    (mark# U96 X -> mark# X, mark# U51(X1, X2) -> U51#(mark X1, X2))
    (mark# U96 X -> mark# X, mark# U51(X1, X2) -> active# U51(mark X1, X2))
    (mark# U96 X -> mark# X, mark# U51(X1, X2) -> mark# X1)
    (mark# U96 X -> mark# X, mark# U52 X -> U52# mark X)
    (mark# U96 X -> mark# X, mark# U52 X -> active# U52 mark X)
    (mark# U96 X -> mark# X, mark# U52 X -> mark# X)
    (mark# U96 X -> mark# X, mark# U46 X -> U46# mark X)
    (mark# U96 X -> mark# X, mark# U46 X -> active# U46 mark X)
    (mark# U96 X -> mark# X, mark# U46 X -> mark# X)
    (mark# U96 X -> mark# X, mark# U45(X1, X2) -> U45#(mark X1, X2))
    (mark# U96 X -> mark# X, mark# U45(X1, X2) -> active# U45(mark X1, X2))
    (mark# U96 X -> mark# X, mark# U45(X1, X2) -> mark# X1)
    (mark# U96 X -> mark# X, mark# U44(X1, X2, X3) -> U44#(mark X1, X2, X3))
    (mark# U96 X -> mark# X, mark# U44(X1, X2, X3) -> active# U44(mark X1, X2, X3))
    (mark# U96 X -> mark# X, mark# U44(X1, X2, X3) -> mark# X1)
    (mark# U96 X -> mark# X, mark# U43(X1, X2, X3) -> U43#(mark X1, X2, X3))
    (mark# U96 X -> mark# X, mark# U43(X1, X2, X3) -> active# U43(mark X1, X2, X3))
    (mark# U96 X -> mark# X, mark# U43(X1, X2, X3) -> mark# X1)
    (mark# U96 X -> mark# X, mark# U41(X1, X2, X3) -> U41#(mark X1, X2, X3))
    (mark# U96 X -> mark# X, mark# U41(X1, X2, X3) -> active# U41(mark X1, X2, X3))
    (mark# U96 X -> mark# X, mark# U41(X1, X2, X3) -> mark# X1)
    (mark# U96 X -> mark# X, mark# U42(X1, X2, X3) -> U42#(mark X1, X2, X3))
    (mark# U96 X -> mark# X, mark# U42(X1, X2, X3) -> active# U42(mark X1, X2, X3))
    (mark# U96 X -> mark# X, mark# U42(X1, X2, X3) -> mark# X1)
    (mark# U96 X -> mark# X, mark# U33 X -> U33# mark X)
    (mark# U96 X -> mark# X, mark# U33 X -> active# U33 mark X)
    (mark# U96 X -> mark# X, mark# U33 X -> mark# X)
    (mark# U96 X -> mark# X, mark# U31(X1, X2) -> U31#(mark X1, X2))
    (mark# U96 X -> mark# X, mark# U31(X1, X2) -> active# U31(mark X1, X2))
    (mark# U96 X -> mark# X, mark# U31(X1, X2) -> mark# X1)
    (mark# U96 X -> mark# X, mark# U32(X1, X2) -> U32#(mark X1, X2))
    (mark# U96 X -> mark# X, mark# U32(X1, X2) -> active# U32(mark X1, X2))
    (mark# U96 X -> mark# X, mark# U32(X1, X2) -> mark# X1)
    (mark# U96 X -> mark# X, mark# U23 X -> U23# mark X)
    (mark# U96 X -> mark# X, mark# U23 X -> active# U23 mark X)
    (mark# U96 X -> mark# X, mark# U23 X -> mark# X)
    (mark# U96 X -> mark# X, mark# U21(X1, X2) -> U21#(mark X1, X2))
    (mark# U96 X -> mark# X, mark# U21(X1, X2) -> active# U21(mark X1, X2))
    (mark# U96 X -> mark# X, mark# U21(X1, X2) -> mark# X1)
    (mark# U96 X -> mark# X, mark# U22(X1, X2) -> U22#(mark X1, X2))
    (mark# U96 X -> mark# X, mark# U22(X1, X2) -> active# U22(mark X1, X2))
    (mark# U96 X -> mark# X, mark# U22(X1, X2) -> mark# X1)
    (mark# U96 X -> mark# X, mark# take(X1, X2) -> take#(mark X1, mark X2))
    (mark# U96 X -> mark# X, mark# take(X1, X2) -> active# take(mark X1, mark X2))
    (mark# U96 X -> mark# X, mark# take(X1, X2) -> mark# X2)
    (mark# U96 X -> mark# X, mark# take(X1, X2) -> mark# X1)
    (mark# U96 X -> mark# X, mark# U136(X1, X2, X3, X4) -> U136#(mark X1, X2, X3, X4))
    (mark# U96 X -> mark# X, mark# U136(X1, X2, X3, X4) -> active# U136(mark X1, X2, X3, X4))
    (mark# U96 X -> mark# X, mark# U136(X1, X2, X3, X4) -> mark# X1)
    (mark# U96 X -> mark# X, mark# U135(X1, X2, X3, X4) -> U135#(mark X1, X2, X3, X4))
    (mark# U96 X -> mark# X, mark# U135(X1, X2, X3, X4) -> active# U135(mark X1, X2, X3, X4))
    (mark# U96 X -> mark# X, mark# U135(X1, X2, X3, X4) -> mark# X1)
    (mark# U96 X -> mark# X, mark# U134(X1, X2, X3, X4) -> U134#(mark X1, X2, X3, X4))
    (mark# U96 X -> mark# X, mark# U134(X1, X2, X3, X4) -> active# U134(mark X1, X2, X3, X4))
    (mark# U96 X -> mark# X, mark# U134(X1, X2, X3, X4) -> mark# X1)
    (mark# U96 X -> mark# X, mark# U133(X1, X2, X3, X4) -> U133#(mark X1, X2, X3, X4))
    (mark# U96 X -> mark# X, mark# U133(X1, X2, X3, X4) -> active# U133(mark X1, X2, X3, X4))
    (mark# U96 X -> mark# X, mark# U133(X1, X2, X3, X4) -> mark# X1)
    (mark# U96 X -> mark# X, mark# U131(X1, X2, X3, X4) -> U131#(mark X1, X2, X3, X4))
    (mark# U96 X -> mark# X, mark# U131(X1, X2, X3, X4) -> active# U131(mark X1, X2, X3, X4))
    (mark# U96 X -> mark# X, mark# U131(X1, X2, X3, X4) -> mark# X1)
    (mark# U96 X -> mark# X, mark# U132(X1, X2, X3, X4) -> U132#(mark X1, X2, X3, X4))
    (mark# U96 X -> mark# X, mark# U132(X1, X2, X3, X4) -> active# U132(mark X1, X2, X3, X4))
    (mark# U96 X -> mark# X, mark# U132(X1, X2, X3, X4) -> mark# X1)
    (mark# U96 X -> mark# X, mark# nil() -> active# nil())
    (mark# U96 X -> mark# X, mark# U121(X1, X2) -> U121#(mark X1, X2))
    (mark# U96 X -> mark# X, mark# U121(X1, X2) -> active# U121(mark X1, X2))
    (mark# U96 X -> mark# X, mark# U121(X1, X2) -> mark# X1)
    (mark# U96 X -> mark# X, mark# U122 X -> U122# mark X)
    (mark# U96 X -> mark# X, mark# U122 X -> active# U122 mark X)
    (mark# U96 X -> mark# X, mark# U122 X -> mark# X)
    (mark# U96 X -> mark# X, mark# isNatList X -> active# isNatList X)
    (mark# U96 X -> mark# X, mark# U13 X -> U13# mark X)
    (mark# U96 X -> mark# X, mark# U13 X -> active# U13 mark X)
    (mark# U96 X -> mark# X, mark# U13 X -> mark# X)
    (mark# U96 X -> mark# X, mark# length X -> length# mark X)
    (mark# U96 X -> mark# X, mark# length X -> active# length mark X)
    (mark# U96 X -> mark# X, mark# length X -> mark# X)
    (mark# U96 X -> mark# X, mark# s X -> s# mark X)
    (mark# U96 X -> mark# X, mark# s X -> active# s mark X)
    (mark# U96 X -> mark# X, mark# s X -> mark# X)
    (mark# U96 X -> mark# X, mark# U114(X1, X2) -> U114#(mark X1, X2))
    (mark# U96 X -> mark# X, mark# U114(X1, X2) -> active# U114(mark X1, X2))
    (mark# U96 X -> mark# X, mark# U114(X1, X2) -> mark# X1)
    (mark# U96 X -> mark# X, mark# U113(X1, X2, X3) -> U113#(mark X1, X2, X3))
    (mark# U96 X -> mark# X, mark# U113(X1, X2, X3) -> active# U113(mark X1, X2, X3))
    (mark# U96 X -> mark# X, mark# U113(X1, X2, X3) -> mark# X1)
    (mark# U96 X -> mark# X, mark# U111(X1, X2, X3) -> U111#(mark X1, X2, X3))
    (mark# U96 X -> mark# X, mark# U111(X1, X2, X3) -> active# U111(mark X1, X2, X3))
    (mark# U96 X -> mark# X, mark# U111(X1, X2, X3) -> mark# X1)
    (mark# U96 X -> mark# X, mark# U112(X1, X2, X3) -> U112#(mark X1, X2, X3))
    (mark# U96 X -> mark# X, mark# U112(X1, X2, X3) -> active# U112(mark X1, X2, X3))
    (mark# U96 X -> mark# X, mark# U112(X1, X2, X3) -> mark# X1)
    (mark# U96 X -> mark# X, mark# U11(X1, X2) -> U11#(mark X1, X2))
    (mark# U96 X -> mark# X, mark# U11(X1, X2) -> active# U11(mark X1, X2))
    (mark# U96 X -> mark# X, mark# U11(X1, X2) -> mark# X1)
    (mark# U96 X -> mark# X, mark# U12(X1, X2) -> U12#(mark X1, X2))
    (mark# U96 X -> mark# X, mark# U12(X1, X2) -> active# U12(mark X1, X2))
    (mark# U96 X -> mark# X, mark# U12(X1, X2) -> mark# X1)
    (mark# U96 X -> mark# X, mark# isNatIList X -> active# isNatIList X)
    (mark# U96 X -> mark# X, mark# U106 X -> U106# mark X)
    (mark# U96 X -> mark# X, mark# U106 X -> active# U106 mark X)
    (mark# U96 X -> mark# X, mark# U106 X -> mark# X)
    (mark# U96 X -> mark# X, mark# isNat X -> active# isNat X)
    (mark# U96 X -> mark# X, mark# U105(X1, X2) -> U105#(mark X1, X2))
    (mark# U96 X -> mark# X, mark# U105(X1, X2) -> active# U105(mark X1, X2))
    (mark# U96 X -> mark# X, mark# U105(X1, X2) -> mark# X1)
    (mark# U96 X -> mark# X, mark# U104(X1, X2, X3) -> U104#(mark X1, X2, X3))
    (mark# U96 X -> mark# X, mark# U104(X1, X2, X3) -> active# U104(mark X1, X2, X3))
    (mark# U96 X -> mark# X, mark# U104(X1, X2, X3) -> mark# X1)
    (mark# U96 X -> mark# X, mark# isNatIListKind X -> active# isNatIListKind X)
    (mark# U96 X -> mark# X, mark# U103(X1, X2, X3) -> U103#(mark X1, X2, X3))
    (mark# U96 X -> mark# X, mark# U103(X1, X2, X3) -> active# U103(mark X1, X2, X3))
    (mark# U96 X -> mark# X, mark# U103(X1, X2, X3) -> mark# X1)
    (mark# U96 X -> mark# X, mark# tt() -> active# tt())
    (mark# U96 X -> mark# X, mark# U101(X1, X2, X3) -> U101#(mark X1, X2, X3))
    (mark# U96 X -> mark# X, mark# U101(X1, X2, X3) -> active# U101(mark X1, X2, X3))
    (mark# U96 X -> mark# X, mark# U101(X1, X2, X3) -> mark# X1)
    (mark# U96 X -> mark# X, mark# isNatKind X -> active# isNatKind X)
    (mark# U96 X -> mark# X, mark# U102(X1, X2, X3) -> U102#(mark X1, X2, X3))
    (mark# U96 X -> mark# X, mark# U102(X1, X2, X3) -> active# U102(mark X1, X2, X3))
    (mark# U96 X -> mark# X, mark# U102(X1, X2, X3) -> mark# X1)
    (mark# U96 X -> mark# X, mark# zeros() -> active# zeros())
    (mark# U96 X -> mark# X, mark# 0() -> active# 0())
    (mark# U96 X -> mark# X, mark# cons(X1, X2) -> active# cons(mark X1, X2))
    (mark# U96 X -> mark# X, mark# cons(X1, X2) -> cons#(mark X1, X2))
    (mark# U96 X -> mark# X, mark# cons(X1, X2) -> mark# X1)
    (isNatKind# active X -> isNatKind# X, isNatKind# active X -> isNatKind# X)
    (isNatKind# active X -> isNatKind# X, isNatKind# mark X -> isNatKind# X)
    (isNatIListKind# active X -> isNatIListKind# X, isNatIListKind# active X -> isNatIListKind# X)
    (isNatIListKind# active X -> isNatIListKind# X, isNatIListKind# mark X -> isNatIListKind# X)
    (isNat# active X -> isNat# X, isNat# active X -> isNat# X)
    (isNat# active X -> isNat# X, isNat# mark X -> isNat# X)
    (U106# active X -> U106# X, U106# active X -> U106# X)
    (U106# active X -> U106# X, U106# mark X -> U106# X)
    (isNatIList# active X -> isNatIList# X, isNatIList# active X -> isNatIList# X)
    (isNatIList# active X -> isNatIList# X, isNatIList# mark X -> isNatIList# X)
    (s# active X -> s# X, s# active X -> s# X)
    (s# active X -> s# X, s# mark X -> s# X)
    (length# active X -> length# X, length# active X -> length# X)
    (length# active X -> length# X, length# mark X -> length# X)
    (U13# active X -> U13# X, U13# active X -> U13# X)
    (U13# active X -> U13# X, U13# mark X -> U13# X)
    (isNatList# active X -> isNatList# X, isNatList# active X -> isNatList# X)
    (isNatList# active X -> isNatList# X, isNatList# mark X -> isNatList# X)
    (U122# active X -> U122# X, U122# active X -> U122# X)
    (U122# active X -> U122# X, U122# mark X -> U122# X)
    (U23# active X -> U23# X, U23# active X -> U23# X)
    (U23# active X -> U23# X, U23# mark X -> U23# X)
    (U33# active X -> U33# X, U33# active X -> U33# X)
    (U33# active X -> U33# X, U33# mark X -> U33# X)
    (U46# active X -> U46# X, U46# active X -> U46# X)
    (U46# active X -> U46# X, U46# mark X -> U46# X)
    (U52# active X -> U52# X, U52# active X -> U52# X)
    (U52# active X -> U52# X, U52# mark X -> U52# X)
    (U62# active X -> U62# X, U62# active X -> U62# X)
    (U62# active X -> U62# X, U62# mark X -> U62# X)
    (U71# active X -> U71# X, U71# active X -> U71# X)
    (U71# active X -> U71# X, U71# mark X -> U71# X)
    (U81# active X -> U81# X, U81# active X -> U81# X)
    (U81# active X -> U81# X, U81# mark X -> U81# X)
    (U96# active X -> U96# X, U96# active X -> U96# X)
    (U96# active X -> U96# X, U96# mark X -> U96# X)
    (active# isNat length V1 -> U11#(isNatIListKind V1, V1), U11#(X1, active X2) -> U11#(X1, X2))
    (active# isNat length V1 -> U11#(isNatIListKind V1, V1), U11#(X1, mark X2) -> U11#(X1, X2))
    (active# U21(tt(), V1) -> U22#(isNatKind V1, V1), U22#(X1, active X2) -> U22#(X1, X2))
    (active# U21(tt(), V1) -> U22#(isNatKind V1, V1), U22#(X1, mark X2) -> U22#(X1, X2))
    (active# U114(tt(), L) -> length# L, length# active X -> length# X)
    (active# U114(tt(), L) -> length# L, length# mark X -> length# X)
    (mark# cons(X1, X2) -> mark# X1, mark# U96 X -> U96# mark X)
    (mark# cons(X1, X2) -> mark# X1, mark# U96 X -> active# U96 mark X)
    (mark# cons(X1, X2) -> mark# X1, mark# U96 X -> mark# X)
    (mark# cons(X1, X2) -> mark# X1, mark# U95(X1, X2) -> U95#(mark X1, X2))
    (mark# cons(X1, X2) -> mark# X1, mark# U95(X1, X2) -> active# U95(mark X1, X2))
    (mark# cons(X1, X2) -> mark# X1, mark# U95(X1, X2) -> mark# X1)
    (mark# cons(X1, X2) -> mark# X1, mark# U94(X1, X2, X3) -> U94#(mark X1, X2, X3))
    (mark# cons(X1, X2) -> mark# X1, mark# U94(X1, X2, X3) -> active# U94(mark X1, X2, X3))
    (mark# cons(X1, X2) -> mark# X1, mark# U94(X1, X2, X3) -> mark# X1)
    (mark# cons(X1, X2) -> mark# X1, mark# U93(X1, X2, X3) -> U93#(mark X1, X2, X3))
    (mark# cons(X1, X2) -> mark# X1, mark# U93(X1, X2, X3) -> active# U93(mark X1, X2, X3))
    (mark# cons(X1, X2) -> mark# X1, mark# U93(X1, X2, X3) -> mark# X1)
    (mark# cons(X1, X2) -> mark# X1, mark# U91(X1, X2, X3) -> U91#(mark X1, X2, X3))
    (mark# cons(X1, X2) -> mark# X1, mark# U91(X1, X2, X3) -> active# U91(mark X1, X2, X3))
    (mark# cons(X1, X2) -> mark# X1, mark# U91(X1, X2, X3) -> mark# X1)
    (mark# cons(X1, X2) -> mark# X1, mark# U92(X1, X2, X3) -> U92#(mark X1, X2, X3))
    (mark# cons(X1, X2) -> mark# X1, mark# U92(X1, X2, X3) -> active# U92(mark X1, X2, X3))
    (mark# cons(X1, X2) -> mark# X1, mark# U92(X1, X2, X3) -> mark# X1)
    (mark# cons(X1, X2) -> mark# X1, mark# U81 X -> U81# mark X)
    (mark# cons(X1, X2) -> mark# X1, mark# U81 X -> active# U81 mark X)
    (mark# cons(X1, X2) -> mark# X1, mark# U81 X -> mark# X)
    (mark# cons(X1, X2) -> mark# X1, mark# U71 X -> U71# mark X)
    (mark# cons(X1, X2) -> mark# X1, mark# U71 X -> active# U71 mark X)
    (mark# cons(X1, X2) -> mark# X1, mark# U71 X -> mark# X)
    (mark# cons(X1, X2) -> mark# X1, mark# U61(X1, X2) -> U61#(mark X1, X2))
    (mark# cons(X1, X2) -> mark# X1, mark# U61(X1, X2) -> active# U61(mark X1, X2))
    (mark# cons(X1, X2) -> mark# X1, mark# U61(X1, X2) -> mark# X1)
    (mark# cons(X1, X2) -> mark# X1, mark# U62 X -> U62# mark X)
    (mark# cons(X1, X2) -> mark# X1, mark# U62 X -> active# U62 mark X)
    (mark# cons(X1, X2) -> mark# X1, mark# U62 X -> mark# X)
    (mark# cons(X1, X2) -> mark# X1, mark# U51(X1, X2) -> U51#(mark X1, X2))
    (mark# cons(X1, X2) -> mark# X1, mark# U51(X1, X2) -> active# U51(mark X1, X2))
    (mark# cons(X1, X2) -> mark# X1, mark# U51(X1, X2) -> mark# X1)
    (mark# cons(X1, X2) -> mark# X1, mark# U52 X -> U52# mark X)
    (mark# cons(X1, X2) -> mark# X1, mark# U52 X -> active# U52 mark X)
    (mark# cons(X1, X2) -> mark# X1, mark# U52 X -> mark# X)
    (mark# cons(X1, X2) -> mark# X1, mark# U46 X -> U46# mark X)
    (mark# cons(X1, X2) -> mark# X1, mark# U46 X -> active# U46 mark X)
    (mark# cons(X1, X2) -> mark# X1, mark# U46 X -> mark# X)
    (mark# cons(X1, X2) -> mark# X1, mark# U45(X1, X2) -> U45#(mark X1, X2))
    (mark# cons(X1, X2) -> mark# X1, mark# U45(X1, X2) -> active# U45(mark X1, X2))
    (mark# cons(X1, X2) -> mark# X1, mark# U45(X1, X2) -> mark# X1)
    (mark# cons(X1, X2) -> mark# X1, mark# U44(X1, X2, X3) -> U44#(mark X1, X2, X3))
    (mark# cons(X1, X2) -> mark# X1, mark# U44(X1, X2, X3) -> active# U44(mark X1, X2, X3))
    (mark# cons(X1, X2) -> mark# X1, mark# U44(X1, X2, X3) -> mark# X1)
    (mark# cons(X1, X2) -> mark# X1, mark# U43(X1, X2, X3) -> U43#(mark X1, X2, X3))
    (mark# cons(X1, X2) -> mark# X1, mark# U43(X1, X2, X3) -> active# U43(mark X1, X2, X3))
    (mark# cons(X1, X2) -> mark# X1, mark# U43(X1, X2, X3) -> mark# X1)
    (mark# cons(X1, X2) -> mark# X1, mark# U41(X1, X2, X3) -> U41#(mark X1, X2, X3))
    (mark# cons(X1, X2) -> mark# X1, mark# U41(X1, X2, X3) -> active# U41(mark X1, X2, X3))
    (mark# cons(X1, X2) -> mark# X1, mark# U41(X1, X2, X3) -> mark# X1)
    (mark# cons(X1, X2) -> mark# X1, mark# U42(X1, X2, X3) -> U42#(mark X1, X2, X3))
    (mark# cons(X1, X2) -> mark# X1, mark# U42(X1, X2, X3) -> active# U42(mark X1, X2, X3))
    (mark# cons(X1, X2) -> mark# X1, mark# U42(X1, X2, X3) -> mark# X1)
    (mark# cons(X1, X2) -> mark# X1, mark# U33 X -> U33# mark X)
    (mark# cons(X1, X2) -> mark# X1, mark# U33 X -> active# U33 mark X)
    (mark# cons(X1, X2) -> mark# X1, mark# U33 X -> mark# X)
    (mark# cons(X1, X2) -> mark# X1, mark# U31(X1, X2) -> U31#(mark X1, X2))
    (mark# cons(X1, X2) -> mark# X1, mark# U31(X1, X2) -> active# U31(mark X1, X2))
    (mark# cons(X1, X2) -> mark# X1, mark# U31(X1, X2) -> mark# X1)
    (mark# cons(X1, X2) -> mark# X1, mark# U32(X1, X2) -> U32#(mark X1, X2))
    (mark# cons(X1, X2) -> mark# X1, mark# U32(X1, X2) -> active# U32(mark X1, X2))
    (mark# cons(X1, X2) -> mark# X1, mark# U32(X1, X2) -> mark# X1)
    (mark# cons(X1, X2) -> mark# X1, mark# U23 X -> U23# mark X)
    (mark# cons(X1, X2) -> mark# X1, mark# U23 X -> active# U23 mark X)
    (mark# cons(X1, X2) -> mark# X1, mark# U23 X -> mark# X)
    (mark# cons(X1, X2) -> mark# X1, mark# U21(X1, X2) -> U21#(mark X1, X2))
    (mark# cons(X1, X2) -> mark# X1, mark# U21(X1, X2) -> active# U21(mark X1, X2))
    (mark# cons(X1, X2) -> mark# X1, mark# U21(X1, X2) -> mark# X1)
    (mark# cons(X1, X2) -> mark# X1, mark# U22(X1, X2) -> U22#(mark X1, X2))
    (mark# cons(X1, X2) -> mark# X1, mark# U22(X1, X2) -> active# U22(mark X1, X2))
    (mark# cons(X1, X2) -> mark# X1, mark# U22(X1, X2) -> mark# X1)
    (mark# cons(X1, X2) -> mark# X1, mark# take(X1, X2) -> take#(mark X1, mark X2))
    (mark# cons(X1, X2) -> mark# X1, mark# take(X1, X2) -> active# take(mark X1, mark X2))
    (mark# cons(X1, X2) -> mark# X1, mark# take(X1, X2) -> mark# X2)
    (mark# cons(X1, X2) -> mark# X1, mark# take(X1, X2) -> mark# X1)
    (mark# cons(X1, X2) -> mark# X1, mark# U136(X1, X2, X3, X4) -> U136#(mark X1, X2, X3, X4))
    (mark# cons(X1, X2) -> mark# X1, mark# U136(X1, X2, X3, X4) -> active# U136(mark X1, X2, X3, X4))
    (mark# cons(X1, X2) -> mark# X1, mark# U136(X1, X2, X3, X4) -> mark# X1)
    (mark# cons(X1, X2) -> mark# X1, mark# U135(X1, X2, X3, X4) -> U135#(mark X1, X2, X3, X4))
    (mark# cons(X1, X2) -> mark# X1, mark# U135(X1, X2, X3, X4) -> active# U135(mark X1, X2, X3, X4))
    (mark# cons(X1, X2) -> mark# X1, mark# U135(X1, X2, X3, X4) -> mark# X1)
    (mark# cons(X1, X2) -> mark# X1, mark# U134(X1, X2, X3, X4) -> U134#(mark X1, X2, X3, X4))
    (mark# cons(X1, X2) -> mark# X1, mark# U134(X1, X2, X3, X4) -> active# U134(mark X1, X2, X3, X4))
    (mark# cons(X1, X2) -> mark# X1, mark# U134(X1, X2, X3, X4) -> mark# X1)
    (mark# cons(X1, X2) -> mark# X1, mark# U133(X1, X2, X3, X4) -> U133#(mark X1, X2, X3, X4))
    (mark# cons(X1, X2) -> mark# X1, mark# U133(X1, X2, X3, X4) -> active# U133(mark X1, X2, X3, X4))
    (mark# cons(X1, X2) -> mark# X1, mark# U133(X1, X2, X3, X4) -> mark# X1)
    (mark# cons(X1, X2) -> mark# X1, mark# U131(X1, X2, X3, X4) -> U131#(mark X1, X2, X3, X4))
    (mark# cons(X1, X2) -> mark# X1, mark# U131(X1, X2, X3, X4) -> active# U131(mark X1, X2, X3, X4))
    (mark# cons(X1, X2) -> mark# X1, mark# U131(X1, X2, X3, X4) -> mark# X1)
    (mark# cons(X1, X2) -> mark# X1, mark# U132(X1, X2, X3, X4) -> U132#(mark X1, X2, X3, X4))
    (mark# cons(X1, X2) -> mark# X1, mark# U132(X1, X2, X3, X4) -> active# U132(mark X1, X2, X3, X4))
    (mark# cons(X1, X2) -> mark# X1, mark# U132(X1, X2, X3, X4) -> mark# X1)
    (mark# cons(X1, X2) -> mark# X1, mark# nil() -> active# nil())
    (mark# cons(X1, X2) -> mark# X1, mark# U121(X1, X2) -> U121#(mark X1, X2))
    (mark# cons(X1, X2) -> mark# X1, mark# U121(X1, X2) -> active# U121(mark X1, X2))
    (mark# cons(X1, X2) -> mark# X1, mark# U121(X1, X2) -> mark# X1)
    (mark# cons(X1, X2) -> mark# X1, mark# U122 X -> U122# mark X)
    (mark# cons(X1, X2) -> mark# X1, mark# U122 X -> active# U122 mark X)
    (mark# cons(X1, X2) -> mark# X1, mark# U122 X -> mark# X)
    (mark# cons(X1, X2) -> mark# X1, mark# isNatList X -> active# isNatList X)
    (mark# cons(X1, X2) -> mark# X1, mark# U13 X -> U13# mark X)
    (mark# cons(X1, X2) -> mark# X1, mark# U13 X -> active# U13 mark X)
    (mark# cons(X1, X2) -> mark# X1, mark# U13 X -> mark# X)
    (mark# cons(X1, X2) -> mark# X1, mark# length X -> length# mark X)
    (mark# cons(X1, X2) -> mark# X1, mark# length X -> active# length mark X)
    (mark# cons(X1, X2) -> mark# X1, mark# length X -> mark# X)
    (mark# cons(X1, X2) -> mark# X1, mark# s X -> s# mark X)
    (mark# cons(X1, X2) -> mark# X1, mark# s X -> active# s mark X)
    (mark# cons(X1, X2) -> mark# X1, mark# s X -> mark# X)
    (mark# cons(X1, X2) -> mark# X1, mark# U114(X1, X2) -> U114#(mark X1, X2))
    (mark# cons(X1, X2) -> mark# X1, mark# U114(X1, X2) -> active# U114(mark X1, X2))
    (mark# cons(X1, X2) -> mark# X1, mark# U114(X1, X2) -> mark# X1)
    (mark# cons(X1, X2) -> mark# X1, mark# U113(X1, X2, X3) -> U113#(mark X1, X2, X3))
    (mark# cons(X1, X2) -> mark# X1, mark# U113(X1, X2, X3) -> active# U113(mark X1, X2, X3))
    (mark# cons(X1, X2) -> mark# X1, mark# U113(X1, X2, X3) -> mark# X1)
    (mark# cons(X1, X2) -> mark# X1, mark# U111(X1, X2, X3) -> U111#(mark X1, X2, X3))
    (mark# cons(X1, X2) -> mark# X1, mark# U111(X1, X2, X3) -> active# U111(mark X1, X2, X3))
    (mark# cons(X1, X2) -> mark# X1, mark# U111(X1, X2, X3) -> mark# X1)
    (mark# cons(X1, X2) -> mark# X1, mark# U112(X1, X2, X3) -> U112#(mark X1, X2, X3))
    (mark# cons(X1, X2) -> mark# X1, mark# U112(X1, X2, X3) -> active# U112(mark X1, X2, X3))
    (mark# cons(X1, X2) -> mark# X1, mark# U112(X1, X2, X3) -> mark# X1)
    (mark# cons(X1, X2) -> mark# X1, mark# U11(X1, X2) -> U11#(mark X1, X2))
    (mark# cons(X1, X2) -> mark# X1, mark# U11(X1, X2) -> active# U11(mark X1, X2))
    (mark# cons(X1, X2) -> mark# X1, mark# U11(X1, X2) -> mark# X1)
    (mark# cons(X1, X2) -> mark# X1, mark# U12(X1, X2) -> U12#(mark X1, X2))
    (mark# cons(X1, X2) -> mark# X1, mark# U12(X1, X2) -> active# U12(mark X1, X2))
    (mark# cons(X1, X2) -> mark# X1, mark# U12(X1, X2) -> mark# X1)
    (mark# cons(X1, X2) -> mark# X1, mark# isNatIList X -> active# isNatIList X)
    (mark# cons(X1, X2) -> mark# X1, mark# U106 X -> U106# mark X)
    (mark# cons(X1, X2) -> mark# X1, mark# U106 X -> active# U106 mark X)
    (mark# cons(X1, X2) -> mark# X1, mark# U106 X -> mark# X)
    (mark# cons(X1, X2) -> mark# X1, mark# isNat X -> active# isNat X)
    (mark# cons(X1, X2) -> mark# X1, mark# U105(X1, X2) -> U105#(mark X1, X2))
    (mark# cons(X1, X2) -> mark# X1, mark# U105(X1, X2) -> active# U105(mark X1, X2))
    (mark# cons(X1, X2) -> mark# X1, mark# U105(X1, X2) -> mark# X1)
    (mark# cons(X1, X2) -> mark# X1, mark# U104(X1, X2, X3) -> U104#(mark X1, X2, X3))
    (mark# cons(X1, X2) -> mark# X1, mark# U104(X1, X2, X3) -> active# U104(mark X1, X2, X3))
    (mark# cons(X1, X2) -> mark# X1, mark# U104(X1, X2, X3) -> mark# X1)
    (mark# cons(X1, X2) -> mark# X1, mark# isNatIListKind X -> active# isNatIListKind X)
    (mark# cons(X1, X2) -> mark# X1, mark# U103(X1, X2, X3) -> U103#(mark X1, X2, X3))
    (mark# cons(X1, X2) -> mark# X1, mark# U103(X1, X2, X3) -> active# U103(mark X1, X2, X3))
    (mark# cons(X1, X2) -> mark# X1, mark# U103(X1, X2, X3) -> mark# X1)
    (mark# cons(X1, X2) -> mark# X1, mark# tt() -> active# tt())
    (mark# cons(X1, X2) -> mark# X1, mark# U101(X1, X2, X3) -> U101#(mark X1, X2, X3))
    (mark# cons(X1, X2) -> mark# X1, mark# U101(X1, X2, X3) -> active# U101(mark X1, X2, X3))
    (mark# cons(X1, X2) -> mark# X1, mark# U101(X1, X2, X3) -> mark# X1)
    (mark# cons(X1, X2) -> mark# X1, mark# isNatKind X -> active# isNatKind X)
    (mark# cons(X1, X2) -> mark# X1, mark# U102(X1, X2, X3) -> U102#(mark X1, X2, X3))
    (mark# cons(X1, X2) -> mark# X1, mark# U102(X1, X2, X3) -> active# U102(mark X1, X2, X3))
    (mark# cons(X1, X2) -> mark# X1, mark# U102(X1, X2, X3) -> mark# X1)
    (mark# cons(X1, X2) -> mark# X1, mark# zeros() -> active# zeros())
    (mark# cons(X1, X2) -> mark# X1, mark# 0() -> active# 0())
    (mark# cons(X1, X2) -> mark# X1, mark# cons(X1, X2) -> active# cons(mark X1, X2))
    (mark# cons(X1, X2) -> mark# X1, mark# cons(X1, X2) -> cons#(mark X1, X2))
    (mark# cons(X1, X2) -> mark# X1, mark# cons(X1, X2) -> mark# X1)
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U96 X -> U96# mark X)
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U96 X -> active# U96 mark X)
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U96 X -> mark# X)
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U95(X1, X2) -> U95#(mark X1, X2))
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U95(X1, X2) -> active# U95(mark X1, X2))
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U95(X1, X2) -> mark# X1)
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U94(X1, X2, X3) -> U94#(mark X1, X2, X3))
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U94(X1, X2, X3) -> active# U94(mark X1, X2, X3))
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U94(X1, X2, X3) -> mark# X1)
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U93(X1, X2, X3) -> U93#(mark X1, X2, X3))
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U93(X1, X2, X3) -> active# U93(mark X1, X2, X3))
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U93(X1, X2, X3) -> mark# X1)
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U91(X1, X2, X3) -> U91#(mark X1, X2, X3))
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U91(X1, X2, X3) -> active# U91(mark X1, X2, X3))
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U91(X1, X2, X3) -> mark# X1)
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U92(X1, X2, X3) -> U92#(mark X1, X2, X3))
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U92(X1, X2, X3) -> active# U92(mark X1, X2, X3))
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U92(X1, X2, X3) -> mark# X1)
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U81 X -> U81# mark X)
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U81 X -> active# U81 mark X)
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U81 X -> mark# X)
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U71 X -> U71# mark X)
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U71 X -> active# U71 mark X)
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U71 X -> mark# X)
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U61(X1, X2) -> U61#(mark X1, X2))
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U61(X1, X2) -> active# U61(mark X1, X2))
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U61(X1, X2) -> mark# X1)
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U62 X -> U62# mark X)
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U62 X -> active# U62 mark X)
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U62 X -> mark# X)
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U51(X1, X2) -> U51#(mark X1, X2))
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U51(X1, X2) -> active# U51(mark X1, X2))
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U51(X1, X2) -> mark# X1)
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U52 X -> U52# mark X)
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U52 X -> active# U52 mark X)
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U52 X -> mark# X)
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U46 X -> U46# mark X)
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U46 X -> active# U46 mark X)
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U46 X -> mark# X)
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U45(X1, X2) -> U45#(mark X1, X2))
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U45(X1, X2) -> active# U45(mark X1, X2))
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U45(X1, X2) -> mark# X1)
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U44(X1, X2, X3) -> U44#(mark X1, X2, X3))
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U44(X1, X2, X3) -> active# U44(mark X1, X2, X3))
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U44(X1, X2, X3) -> mark# X1)
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U43(X1, X2, X3) -> U43#(mark X1, X2, X3))
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U43(X1, X2, X3) -> active# U43(mark X1, X2, X3))
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U43(X1, X2, X3) -> mark# X1)
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U41(X1, X2, X3) -> U41#(mark X1, X2, X3))
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U41(X1, X2, X3) -> active# U41(mark X1, X2, X3))
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U41(X1, X2, X3) -> mark# X1)
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U42(X1, X2, X3) -> U42#(mark X1, X2, X3))
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U42(X1, X2, X3) -> active# U42(mark X1, X2, X3))
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U42(X1, X2, X3) -> mark# X1)
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U33 X -> U33# mark X)
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U33 X -> active# U33 mark X)
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U33 X -> mark# X)
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U31(X1, X2) -> U31#(mark X1, X2))
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U31(X1, X2) -> active# U31(mark X1, X2))
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U31(X1, X2) -> mark# X1)
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U32(X1, X2) -> U32#(mark X1, X2))
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U32(X1, X2) -> active# U32(mark X1, X2))
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U32(X1, X2) -> mark# X1)
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U23 X -> U23# mark X)
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U23 X -> active# U23 mark X)
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U23 X -> mark# X)
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U21(X1, X2) -> U21#(mark X1, X2))
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U21(X1, X2) -> active# U21(mark X1, X2))
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U21(X1, X2) -> mark# X1)
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U22(X1, X2) -> U22#(mark X1, X2))
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U22(X1, X2) -> active# U22(mark X1, X2))
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U22(X1, X2) -> mark# X1)
    (mark# U101(X1, X2, X3) -> mark# X1, mark# take(X1, X2) -> take#(mark X1, mark X2))
    (mark# U101(X1, X2, X3) -> mark# X1, mark# take(X1, X2) -> active# take(mark X1, mark X2))
    (mark# U101(X1, X2, X3) -> mark# X1, mark# take(X1, X2) -> mark# X2)
    (mark# U101(X1, X2, X3) -> mark# X1, mark# take(X1, X2) -> mark# X1)
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U136(X1, X2, X3, X4) -> U136#(mark X1, X2, X3, X4))
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U136(X1, X2, X3, X4) -> active# U136(mark X1, X2, X3, X4))
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U136(X1, X2, X3, X4) -> mark# X1)
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U135(X1, X2, X3, X4) -> U135#(mark X1, X2, X3, X4))
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U135(X1, X2, X3, X4) -> active# U135(mark X1, X2, X3, X4))
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U135(X1, X2, X3, X4) -> mark# X1)
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U134(X1, X2, X3, X4) -> U134#(mark X1, X2, X3, X4))
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U134(X1, X2, X3, X4) -> active# U134(mark X1, X2, X3, X4))
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U134(X1, X2, X3, X4) -> mark# X1)
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U133(X1, X2, X3, X4) -> U133#(mark X1, X2, X3, X4))
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U133(X1, X2, X3, X4) -> active# U133(mark X1, X2, X3, X4))
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U133(X1, X2, X3, X4) -> mark# X1)
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U131(X1, X2, X3, X4) -> U131#(mark X1, X2, X3, X4))
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U131(X1, X2, X3, X4) -> active# U131(mark X1, X2, X3, X4))
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U131(X1, X2, X3, X4) -> mark# X1)
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U132(X1, X2, X3, X4) -> U132#(mark X1, X2, X3, X4))
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U132(X1, X2, X3, X4) -> active# U132(mark X1, X2, X3, X4))
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U132(X1, X2, X3, X4) -> mark# X1)
    (mark# U101(X1, X2, X3) -> mark# X1, mark# nil() -> active# nil())
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U121(X1, X2) -> U121#(mark X1, X2))
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U121(X1, X2) -> active# U121(mark X1, X2))
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U121(X1, X2) -> mark# X1)
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U122 X -> U122# mark X)
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U122 X -> active# U122 mark X)
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U122 X -> mark# X)
    (mark# U101(X1, X2, X3) -> mark# X1, mark# isNatList X -> active# isNatList X)
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U13 X -> U13# mark X)
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U13 X -> active# U13 mark X)
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U13 X -> mark# X)
    (mark# U101(X1, X2, X3) -> mark# X1, mark# length X -> length# mark X)
    (mark# U101(X1, X2, X3) -> mark# X1, mark# length X -> active# length mark X)
    (mark# U101(X1, X2, X3) -> mark# X1, mark# length X -> mark# X)
    (mark# U101(X1, X2, X3) -> mark# X1, mark# s X -> s# mark X)
    (mark# U101(X1, X2, X3) -> mark# X1, mark# s X -> active# s mark X)
    (mark# U101(X1, X2, X3) -> mark# X1, mark# s X -> mark# X)
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U114(X1, X2) -> U114#(mark X1, X2))
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U114(X1, X2) -> active# U114(mark X1, X2))
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U114(X1, X2) -> mark# X1)
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U113(X1, X2, X3) -> U113#(mark X1, X2, X3))
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U113(X1, X2, X3) -> active# U113(mark X1, X2, X3))
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U113(X1, X2, X3) -> mark# X1)
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U111(X1, X2, X3) -> U111#(mark X1, X2, X3))
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U111(X1, X2, X3) -> active# U111(mark X1, X2, X3))
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U111(X1, X2, X3) -> mark# X1)
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U112(X1, X2, X3) -> U112#(mark X1, X2, X3))
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U112(X1, X2, X3) -> active# U112(mark X1, X2, X3))
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U112(X1, X2, X3) -> mark# X1)
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U11(X1, X2) -> U11#(mark X1, X2))
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U11(X1, X2) -> active# U11(mark X1, X2))
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U11(X1, X2) -> mark# X1)
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U12(X1, X2) -> U12#(mark X1, X2))
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U12(X1, X2) -> active# U12(mark X1, X2))
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U12(X1, X2) -> mark# X1)
    (mark# U101(X1, X2, X3) -> mark# X1, mark# isNatIList X -> active# isNatIList X)
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U106 X -> U106# mark X)
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U106 X -> active# U106 mark X)
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U106 X -> mark# X)
    (mark# U101(X1, X2, X3) -> mark# X1, mark# isNat X -> active# isNat X)
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U105(X1, X2) -> U105#(mark X1, X2))
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U105(X1, X2) -> active# U105(mark X1, X2))
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U105(X1, X2) -> mark# X1)
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U104(X1, X2, X3) -> U104#(mark X1, X2, X3))
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U104(X1, X2, X3) -> active# U104(mark X1, X2, X3))
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U104(X1, X2, X3) -> mark# X1)
    (mark# U101(X1, X2, X3) -> mark# X1, mark# isNatIListKind X -> active# isNatIListKind X)
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U103(X1, X2, X3) -> U103#(mark X1, X2, X3))
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U103(X1, X2, X3) -> active# U103(mark X1, X2, X3))
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U103(X1, X2, X3) -> mark# X1)
    (mark# U101(X1, X2, X3) -> mark# X1, mark# tt() -> active# tt())
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U101(X1, X2, X3) -> U101#(mark X1, X2, X3))
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U101(X1, X2, X3) -> active# U101(mark X1, X2, X3))
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U101(X1, X2, X3) -> mark# X1)
    (mark# U101(X1, X2, X3) -> mark# X1, mark# isNatKind X -> active# isNatKind X)
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U102(X1, X2, X3) -> U102#(mark X1, X2, X3))
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U102(X1, X2, X3) -> active# U102(mark X1, X2, X3))
    (mark# U101(X1, X2, X3) -> mark# X1, mark# U102(X1, X2, X3) -> mark# X1)
    (mark# U101(X1, X2, X3) -> mark# X1, mark# zeros() -> active# zeros())
    (mark# U101(X1, X2, X3) -> mark# X1, mark# 0() -> active# 0())
    (mark# U101(X1, X2, X3) -> mark# X1, mark# cons(X1, X2) -> active# cons(mark X1, X2))
    (mark# U101(X1, X2, X3) -> mark# X1, mark# cons(X1, X2) -> cons#(mark X1, X2))
    (mark# U101(X1, X2, X3) -> mark# X1, mark# cons(X1, X2) -> mark# X1)
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U96 X -> U96# mark X)
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U96 X -> active# U96 mark X)
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U96 X -> mark# X)
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U95(X1, X2) -> U95#(mark X1, X2))
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U95(X1, X2) -> active# U95(mark X1, X2))
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U95(X1, X2) -> mark# X1)
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U94(X1, X2, X3) -> U94#(mark X1, X2, X3))
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U94(X1, X2, X3) -> active# U94(mark X1, X2, X3))
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U94(X1, X2, X3) -> mark# X1)
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U93(X1, X2, X3) -> U93#(mark X1, X2, X3))
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U93(X1, X2, X3) -> active# U93(mark X1, X2, X3))
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U93(X1, X2, X3) -> mark# X1)
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U91(X1, X2, X3) -> U91#(mark X1, X2, X3))
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U91(X1, X2, X3) -> active# U91(mark X1, X2, X3))
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U91(X1, X2, X3) -> mark# X1)
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U92(X1, X2, X3) -> U92#(mark X1, X2, X3))
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U92(X1, X2, X3) -> active# U92(mark X1, X2, X3))
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U92(X1, X2, X3) -> mark# X1)
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U81 X -> U81# mark X)
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U81 X -> active# U81 mark X)
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U81 X -> mark# X)
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U71 X -> U71# mark X)
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U71 X -> active# U71 mark X)
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U71 X -> mark# X)
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U61(X1, X2) -> U61#(mark X1, X2))
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U61(X1, X2) -> active# U61(mark X1, X2))
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U61(X1, X2) -> mark# X1)
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U62 X -> U62# mark X)
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U62 X -> active# U62 mark X)
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U62 X -> mark# X)
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U51(X1, X2) -> U51#(mark X1, X2))
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U51(X1, X2) -> active# U51(mark X1, X2))
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U51(X1, X2) -> mark# X1)
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U52 X -> U52# mark X)
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U52 X -> active# U52 mark X)
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U52 X -> mark# X)
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U46 X -> U46# mark X)
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U46 X -> active# U46 mark X)
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U46 X -> mark# X)
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U45(X1, X2) -> U45#(mark X1, X2))
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U45(X1, X2) -> active# U45(mark X1, X2))
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U45(X1, X2) -> mark# X1)
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U44(X1, X2, X3) -> U44#(mark X1, X2, X3))
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U44(X1, X2, X3) -> active# U44(mark X1, X2, X3))
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U44(X1, X2, X3) -> mark# X1)
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U43(X1, X2, X3) -> U43#(mark X1, X2, X3))
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U43(X1, X2, X3) -> active# U43(mark X1, X2, X3))
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U43(X1, X2, X3) -> mark# X1)
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U41(X1, X2, X3) -> U41#(mark X1, X2, X3))
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U41(X1, X2, X3) -> active# U41(mark X1, X2, X3))
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U41(X1, X2, X3) -> mark# X1)
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U42(X1, X2, X3) -> U42#(mark X1, X2, X3))
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U42(X1, X2, X3) -> active# U42(mark X1, X2, X3))
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U42(X1, X2, X3) -> mark# X1)
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U33 X -> U33# mark X)
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U33 X -> active# U33 mark X)
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U33 X -> mark# X)
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U31(X1, X2) -> U31#(mark X1, X2))
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U31(X1, X2) -> active# U31(mark X1, X2))
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U31(X1, X2) -> mark# X1)
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U32(X1, X2) -> U32#(mark X1, X2))
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U32(X1, X2) -> active# U32(mark X1, X2))
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U32(X1, X2) -> mark# X1)
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U23 X -> U23# mark X)
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U23 X -> active# U23 mark X)
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U23 X -> mark# X)
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U21(X1, X2) -> U21#(mark X1, X2))
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U21(X1, X2) -> active# U21(mark X1, X2))
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U21(X1, X2) -> mark# X1)
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U22(X1, X2) -> U22#(mark X1, X2))
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U22(X1, X2) -> active# U22(mark X1, X2))
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U22(X1, X2) -> mark# X1)
    (mark# U104(X1, X2, X3) -> mark# X1, mark# take(X1, X2) -> take#(mark X1, mark X2))
    (mark# U104(X1, X2, X3) -> mark# X1, mark# take(X1, X2) -> active# take(mark X1, mark X2))
    (mark# U104(X1, X2, X3) -> mark# X1, mark# take(X1, X2) -> mark# X2)
    (mark# U104(X1, X2, X3) -> mark# X1, mark# take(X1, X2) -> mark# X1)
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U136(X1, X2, X3, X4) -> U136#(mark X1, X2, X3, X4))
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U136(X1, X2, X3, X4) -> active# U136(mark X1, X2, X3, X4))
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U136(X1, X2, X3, X4) -> mark# X1)
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U135(X1, X2, X3, X4) -> U135#(mark X1, X2, X3, X4))
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U135(X1, X2, X3, X4) -> active# U135(mark X1, X2, X3, X4))
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U135(X1, X2, X3, X4) -> mark# X1)
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U134(X1, X2, X3, X4) -> U134#(mark X1, X2, X3, X4))
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U134(X1, X2, X3, X4) -> active# U134(mark X1, X2, X3, X4))
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U134(X1, X2, X3, X4) -> mark# X1)
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U133(X1, X2, X3, X4) -> U133#(mark X1, X2, X3, X4))
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U133(X1, X2, X3, X4) -> active# U133(mark X1, X2, X3, X4))
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U133(X1, X2, X3, X4) -> mark# X1)
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U131(X1, X2, X3, X4) -> U131#(mark X1, X2, X3, X4))
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U131(X1, X2, X3, X4) -> active# U131(mark X1, X2, X3, X4))
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U131(X1, X2, X3, X4) -> mark# X1)
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U132(X1, X2, X3, X4) -> U132#(mark X1, X2, X3, X4))
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U132(X1, X2, X3, X4) -> active# U132(mark X1, X2, X3, X4))
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U132(X1, X2, X3, X4) -> mark# X1)
    (mark# U104(X1, X2, X3) -> mark# X1, mark# nil() -> active# nil())
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U121(X1, X2) -> U121#(mark X1, X2))
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U121(X1, X2) -> active# U121(mark X1, X2))
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U121(X1, X2) -> mark# X1)
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U122 X -> U122# mark X)
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U122 X -> active# U122 mark X)
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U122 X -> mark# X)
    (mark# U104(X1, X2, X3) -> mark# X1, mark# isNatList X -> active# isNatList X)
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U13 X -> U13# mark X)
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U13 X -> active# U13 mark X)
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U13 X -> mark# X)
    (mark# U104(X1, X2, X3) -> mark# X1, mark# length X -> length# mark X)
    (mark# U104(X1, X2, X3) -> mark# X1, mark# length X -> active# length mark X)
    (mark# U104(X1, X2, X3) -> mark# X1, mark# length X -> mark# X)
    (mark# U104(X1, X2, X3) -> mark# X1, mark# s X -> s# mark X)
    (mark# U104(X1, X2, X3) -> mark# X1, mark# s X -> active# s mark X)
    (mark# U104(X1, X2, X3) -> mark# X1, mark# s X -> mark# X)
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U114(X1, X2) -> U114#(mark X1, X2))
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U114(X1, X2) -> active# U114(mark X1, X2))
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U114(X1, X2) -> mark# X1)
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U113(X1, X2, X3) -> U113#(mark X1, X2, X3))
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U113(X1, X2, X3) -> active# U113(mark X1, X2, X3))
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U113(X1, X2, X3) -> mark# X1)
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U111(X1, X2, X3) -> U111#(mark X1, X2, X3))
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U111(X1, X2, X3) -> active# U111(mark X1, X2, X3))
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U111(X1, X2, X3) -> mark# X1)
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U112(X1, X2, X3) -> U112#(mark X1, X2, X3))
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U112(X1, X2, X3) -> active# U112(mark X1, X2, X3))
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U112(X1, X2, X3) -> mark# X1)
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U11(X1, X2) -> U11#(mark X1, X2))
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U11(X1, X2) -> active# U11(mark X1, X2))
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U11(X1, X2) -> mark# X1)
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U12(X1, X2) -> U12#(mark X1, X2))
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U12(X1, X2) -> active# U12(mark X1, X2))
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U12(X1, X2) -> mark# X1)
    (mark# U104(X1, X2, X3) -> mark# X1, mark# isNatIList X -> active# isNatIList X)
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U106 X -> U106# mark X)
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U106 X -> active# U106 mark X)
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U106 X -> mark# X)
    (mark# U104(X1, X2, X3) -> mark# X1, mark# isNat X -> active# isNat X)
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U105(X1, X2) -> U105#(mark X1, X2))
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U105(X1, X2) -> active# U105(mark X1, X2))
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U105(X1, X2) -> mark# X1)
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U104(X1, X2, X3) -> U104#(mark X1, X2, X3))
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U104(X1, X2, X3) -> active# U104(mark X1, X2, X3))
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U104(X1, X2, X3) -> mark# X1)
    (mark# U104(X1, X2, X3) -> mark# X1, mark# isNatIListKind X -> active# isNatIListKind X)
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U103(X1, X2, X3) -> U103#(mark X1, X2, X3))
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U103(X1, X2, X3) -> active# U103(mark X1, X2, X3))
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U103(X1, X2, X3) -> mark# X1)
    (mark# U104(X1, X2, X3) -> mark# X1, mark# tt() -> active# tt())
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U101(X1, X2, X3) -> U101#(mark X1, X2, X3))
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U101(X1, X2, X3) -> active# U101(mark X1, X2, X3))
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U101(X1, X2, X3) -> mark# X1)
    (mark# U104(X1, X2, X3) -> mark# X1, mark# isNatKind X -> active# isNatKind X)
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U102(X1, X2, X3) -> U102#(mark X1, X2, X3))
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U102(X1, X2, X3) -> active# U102(mark X1, X2, X3))
    (mark# U104(X1, X2, X3) -> mark# X1, mark# U102(X1, X2, X3) -> mark# X1)
    (mark# U104(X1, X2, X3) -> mark# X1, mark# zeros() -> active# zeros())
    (mark# U104(X1, X2, X3) -> mark# X1, mark# 0() -> active# 0())
    (mark# U104(X1, X2, X3) -> mark# X1, mark# cons(X1, X2) -> active# cons(mark X1, X2))
    (mark# U104(X1, X2, X3) -> mark# X1, mark# cons(X1, X2) -> cons#(mark X1, X2))
    (mark# U104(X1, X2, X3) -> mark# X1, mark# cons(X1, X2) -> mark# X1)
    (mark# U12(X1, X2) -> mark# X1, mark# U96 X -> U96# mark X)
    (mark# U12(X1, X2) -> mark# X1, mark# U96 X -> active# U96 mark X)
    (mark# U12(X1, X2) -> mark# X1, mark# U96 X -> mark# X)
    (mark# U12(X1, X2) -> mark# X1, mark# U95(X1, X2) -> U95#(mark X1, X2))
    (mark# U12(X1, X2) -> mark# X1, mark# U95(X1, X2) -> active# U95(mark X1, X2))
    (mark# U12(X1, X2) -> mark# X1, mark# U95(X1, X2) -> mark# X1)
    (mark# U12(X1, X2) -> mark# X1, mark# U94(X1, X2, X3) -> U94#(mark X1, X2, X3))
    (mark# U12(X1, X2) -> mark# X1, mark# U94(X1, X2, X3) -> active# U94(mark X1, X2, X3))
    (mark# U12(X1, X2) -> mark# X1, mark# U94(X1, X2, X3) -> mark# X1)
    (mark# U12(X1, X2) -> mark# X1, mark# U93(X1, X2, X3) -> U93#(mark X1, X2, X3))
    (mark# U12(X1, X2) -> mark# X1, mark# U93(X1, X2, X3) -> active# U93(mark X1, X2, X3))
    (mark# U12(X1, X2) -> mark# X1, mark# U93(X1, X2, X3) -> mark# X1)
    (mark# U12(X1, X2) -> mark# X1, mark# U91(X1, X2, X3) -> U91#(mark X1, X2, X3))
    (mark# U12(X1, X2) -> mark# X1, mark# U91(X1, X2, X3) -> active# U91(mark X1, X2, X3))
    (mark# U12(X1, X2) -> mark# X1, mark# U91(X1, X2, X3) -> mark# X1)
    (mark# U12(X1, X2) -> mark# X1, mark# U92(X1, X2, X3) -> U92#(mark X1, X2, X3))
    (mark# U12(X1, X2) -> mark# X1, mark# U92(X1, X2, X3) -> active# U92(mark X1, X2, X3))
    (mark# U12(X1, X2) -> mark# X1, mark# U92(X1, X2, X3) -> mark# X1)
    (mark# U12(X1, X2) -> mark# X1, mark# U81 X -> U81# mark X)
    (mark# U12(X1, X2) -> mark# X1, mark# U81 X -> active# U81 mark X)
    (mark# U12(X1, X2) -> mark# X1, mark# U81 X -> mark# X)
    (mark# U12(X1, X2) -> mark# X1, mark# U71 X -> U71# mark X)
    (mark# U12(X1, X2) -> mark# X1, mark# U71 X -> active# U71 mark X)
    (mark# U12(X1, X2) -> mark# X1, mark# U71 X -> mark# X)
    (mark# U12(X1, X2) -> mark# X1, mark# U61(X1, X2) -> U61#(mark X1, X2))
    (mark# U12(X1, X2) -> mark# X1, mark# U61(X1, X2) -> active# U61(mark X1, X2))
    (mark# U12(X1, X2) -> mark# X1, mark# U61(X1, X2) -> mark# X1)
    (mark# U12(X1, X2) -> mark# X1, mark# U62 X -> U62# mark X)
    (mark# U12(X1, X2) -> mark# X1, mark# U62 X -> active# U62 mark X)
    (mark# U12(X1, X2) -> mark# X1, mark# U62 X -> mark# X)
    (mark# U12(X1, X2) -> mark# X1, mark# U51(X1, X2) -> U51#(mark X1, X2))
    (mark# U12(X1, X2) -> mark# X1, mark# U51(X1, X2) -> active# U51(mark X1, X2))
    (mark# U12(X1, X2) -> mark# X1, mark# U51(X1, X2) -> mark# X1)
    (mark# U12(X1, X2) -> mark# X1, mark# U52 X -> U52# mark X)
    (mark# U12(X1, X2) -> mark# X1, mark# U52 X -> active# U52 mark X)
    (mark# U12(X1, X2) -> mark# X1, mark# U52 X -> mark# X)
    (mark# U12(X1, X2) -> mark# X1, mark# U46 X -> U46# mark X)
    (mark# U12(X1, X2) -> mark# X1, mark# U46 X -> active# U46 mark X)
    (mark# U12(X1, X2) -> mark# X1, mark# U46 X -> mark# X)
    (mark# U12(X1, X2) -> mark# X1, mark# U45(X1, X2) -> U45#(mark X1, X2))
    (mark# U12(X1, X2) -> mark# X1, mark# U45(X1, X2) -> active# U45(mark X1, X2))
    (mark# U12(X1, X2) -> mark# X1, mark# U45(X1, X2) -> mark# X1)
    (mark# U12(X1, X2) -> mark# X1, mark# U44(X1, X2, X3) -> U44#(mark X1, X2, X3))
    (mark# U12(X1, X2) -> mark# X1, mark# U44(X1, X2, X3) -> active# U44(mark X1, X2, X3))
    (mark# U12(X1, X2) -> mark# X1, mark# U44(X1, X2, X3) -> mark# X1)
    (mark# U12(X1, X2) -> mark# X1, mark# U43(X1, X2, X3) -> U43#(mark X1, X2, X3))
    (mark# U12(X1, X2) -> mark# X1, mark# U43(X1, X2, X3) -> active# U43(mark X1, X2, X3))
    (mark# U12(X1, X2) -> mark# X1, mark# U43(X1, X2, X3) -> mark# X1)
    (mark# U12(X1, X2) -> mark# X1, mark# U41(X1, X2, X3) -> U41#(mark X1, X2, X3))
    (mark# U12(X1, X2) -> mark# X1, mark# U41(X1, X2, X3) -> active# U41(mark X1, X2, X3))
    (mark# U12(X1, X2) -> mark# X1, mark# U41(X1, X2, X3) -> mark# X1)
    (mark# U12(X1, X2) -> mark# X1, mark# U42(X1, X2, X3) -> U42#(mark X1, X2, X3))
    (mark# U12(X1, X2) -> mark# X1, mark# U42(X1, X2, X3) -> active# U42(mark X1, X2, X3))
    (mark# U12(X1, X2) -> mark# X1, mark# U42(X1, X2, X3) -> mark# X1)
    (mark# U12(X1, X2) -> mark# X1, mark# U33 X -> U33# mark X)
    (mark# U12(X1, X2) -> mark# X1, mark# U33 X -> active# U33 mark X)
    (mark# U12(X1, X2) -> mark# X1, mark# U33 X -> mark# X)
    (mark# U12(X1, X2) -> mark# X1, mark# U31(X1, X2) -> U31#(mark X1, X2))
    (mark# U12(X1, X2) -> mark# X1, mark# U31(X1, X2) -> active# U31(mark X1, X2))
    (mark# U12(X1, X2) -> mark# X1, mark# U31(X1, X2) -> mark# X1)
    (mark# U12(X1, X2) -> mark# X1, mark# U32(X1, X2) -> U32#(mark X1, X2))
    (mark# U12(X1, X2) -> mark# X1, mark# U32(X1, X2) -> active# U32(mark X1, X2))
    (mark# U12(X1, X2) -> mark# X1, mark# U32(X1, X2) -> mark# X1)
    (mark# U12(X1, X2) -> mark# X1, mark# U23 X -> U23# mark X)
    (mark# U12(X1, X2) -> mark# X1, mark# U23 X -> active# U23 mark X)
    (mark# U12(X1, X2) -> mark# X1, mark# U23 X -> mark# X)
    (mark# U12(X1, X2) -> mark# X1, mark# U21(X1, X2) -> U21#(mark X1, X2))
    (mark# U12(X1, X2) -> mark# X1, mark# U21(X1, X2) -> active# U21(mark X1, X2))
    (mark# U12(X1, X2) -> mark# X1, mark# U21(X1, X2) -> mark# X1)
    (mark# U12(X1, X2) -> mark# X1, mark# U22(X1, X2) -> U22#(mark X1, X2))
    (mark# U12(X1, X2) -> mark# X1, mark# U22(X1, X2) -> active# U22(mark X1, X2))
    (mark# U12(X1, X2) -> mark# X1, mark# U22(X1, X2) -> mark# X1)
    (mark# U12(X1, X2) -> mark# X1, mark# take(X1, X2) -> take#(mark X1, mark X2))
    (mark# U12(X1, X2) -> mark# X1, mark# take(X1, X2) -> active# take(mark X1, mark X2))
    (mark# U12(X1, X2) -> mark# X1, mark# take(X1, X2) -> mark# X2)
    (mark# U12(X1, X2) -> mark# X1, mark# take(X1, X2) -> mark# X1)
    (mark# U12(X1, X2) -> mark# X1, mark# U136(X1, X2, X3, X4) -> U136#(mark X1, X2, X3, X4))
    (mark# U12(X1, X2) -> mark# X1, mark# U136(X1, X2, X3, X4) -> active# U136(mark X1, X2, X3, X4))
    (mark# U12(X1, X2) -> mark# X1, mark# U136(X1, X2, X3, X4) -> mark# X1)
    (mark# U12(X1, X2) -> mark# X1, mark# U135(X1, X2, X3, X4) -> U135#(mark X1, X2, X3, X4))
    (mark# U12(X1, X2) -> mark# X1, mark# U135(X1, X2, X3, X4) -> active# U135(mark X1, X2, X3, X4))
    (mark# U12(X1, X2) -> mark# X1, mark# U135(X1, X2, X3, X4) -> mark# X1)
    (mark# U12(X1, X2) -> mark# X1, mark# U134(X1, X2, X3, X4) -> U134#(mark X1, X2, X3, X4))
    (mark# U12(X1, X2) -> mark# X1, mark# U134(X1, X2, X3, X4) -> active# U134(mark X1, X2, X3, X4))
    (mark# U12(X1, X2) -> mark# X1, mark# U134(X1, X2, X3, X4) -> mark# X1)
    (mark# U12(X1, X2) -> mark# X1, mark# U133(X1, X2, X3, X4) -> U133#(mark X1, X2, X3, X4))
    (mark# U12(X1, X2) -> mark# X1, mark# U133(X1, X2, X3, X4) -> active# U133(mark X1, X2, X3, X4))
    (mark# U12(X1, X2) -> mark# X1, mark# U133(X1, X2, X3, X4) -> mark# X1)
    (mark# U12(X1, X2) -> mark# X1, mark# U131(X1, X2, X3, X4) -> U131#(mark X1, X2, X3, X4))
    (mark# U12(X1, X2) -> mark# X1, mark# U131(X1, X2, X3, X4) -> active# U131(mark X1, X2, X3, X4))
    (mark# U12(X1, X2) -> mark# X1, mark# U131(X1, X2, X3, X4) -> mark# X1)
    (mark# U12(X1, X2) -> mark# X1, mark# U132(X1, X2, X3, X4) -> U132#(mark X1, X2, X3, X4))
    (mark# U12(X1, X2) -> mark# X1, mark# U132(X1, X2, X3, X4) -> active# U132(mark X1, X2, X3, X4))
    (mark# U12(X1, X2) -> mark# X1, mark# U132(X1, X2, X3, X4) -> mark# X1)
    (mark# U12(X1, X2) -> mark# X1, mark# nil() -> active# nil())
    (mark# U12(X1, X2) -> mark# X1, mark# U121(X1, X2) -> U121#(mark X1, X2))
    (mark# U12(X1, X2) -> mark# X1, mark# U121(X1, X2) -> active# U121(mark X1, X2))
    (mark# U12(X1, X2) -> mark# X1, mark# U121(X1, X2) -> mark# X1)
    (mark# U12(X1, X2) -> mark# X1, mark# U122 X -> U122# mark X)
    (mark# U12(X1, X2) -> mark# X1, mark# U122 X -> active# U122 mark X)
    (mark# U12(X1, X2) -> mark# X1, mark# U122 X -> mark# X)
    (mark# U12(X1, X2) -> mark# X1, mark# isNatList X -> active# isNatList X)
    (mark# U12(X1, X2) -> mark# X1, mark# U13 X -> U13# mark X)
    (mark# U12(X1, X2) -> mark# X1, mark# U13 X -> active# U13 mark X)
    (mark# U12(X1, X2) -> mark# X1, mark# U13 X -> mark# X)
    (mark# U12(X1, X2) -> mark# X1, mark# length X -> length# mark X)
    (mark# U12(X1, X2) -> mark# X1, mark# length X -> active# length mark X)
    (mark# U12(X1, X2) -> mark# X1, mark# length X -> mark# X)
    (mark# U12(X1, X2) -> mark# X1, mark# s X -> s# mark X)
    (mark# U12(X1, X2) -> mark# X1, mark# s X -> active# s mark X)
    (mark# U12(X1, X2) -> mark# X1, mark# s X -> mark# X)
    (mark# U12(X1, X2) -> mark# X1, mark# U114(X1, X2) -> U114#(mark X1, X2))
    (mark# U12(X1, X2) -> mark# X1, mark# U114(X1, X2) -> active# U114(mark X1, X2))
    (mark# U12(X1, X2) -> mark# X1, mark# U114(X1, X2) -> mark# X1)
    (mark# U12(X1, X2) -> mark# X1, mark# U113(X1, X2, X3) -> U113#(mark X1, X2, X3))
    (mark# U12(X1, X2) -> mark# X1, mark# U113(X1, X2, X3) -> active# U113(mark X1, X2, X3))
    (mark# U12(X1, X2) -> mark# X1, mark# U113(X1, X2, X3) -> mark# X1)
    (mark# U12(X1, X2) -> mark# X1, mark# U111(X1, X2, X3) -> U111#(mark X1, X2, X3))
    (mark# U12(X1, X2) -> mark# X1, mark# U111(X1, X2, X3) -> active# U111(mark X1, X2, X3))
    (mark# U12(X1, X2) -> mark# X1, mark# U111(X1, X2, X3) -> mark# X1)
    (mark# U12(X1, X2) -> mark# X1, mark# U112(X1, X2, X3) -> U112#(mark X1, X2, X3))
    (mark# U12(X1, X2) -> mark# X1, mark# U112(X1, X2, X3) -> active# U112(mark X1, X2, X3))
    (mark# U12(X1, X2) -> mark# X1, mark# U112(X1, X2, X3) -> mark# X1)
    (mark# U12(X1, X2) -> mark# X1, mark# U11(X1, X2) -> U11#(mark X1, X2))
    (mark# U12(X1, X2) -> mark# X1, mark# U11(X1, X2) -> active# U11(mark X1, X2))
    (mark# U12(X1, X2) -> mark# X1, mark# U11(X1, X2) -> mark# X1)
    (mark# U12(X1, X2) -> mark# X1, mark# U12(X1, X2) -> U12#(mark X1, X2))
    (mark# U12(X1, X2) -> mark# X1, mark# U12(X1, X2) -> active# U12(mark X1, X2))
    (mark# U12(X1, X2) -> mark# X1, mark# U12(X1, X2) -> mark# X1)
    (mark# U12(X1, X2) -> mark# X1, mark# isNatIList X -> active# isNatIList X)
    (mark# U12(X1, X2) -> mark# X1, mark# U106 X -> U106# mark X)
    (mark# U12(X1, X2) -> mark# X1, mark# U106 X -> active# U106 mark X)
    (mark# U12(X1, X2) -> mark# X1, mark# U106 X -> mark# X)
    (mark# U12(X1, X2) -> mark# X1, mark# isNat X -> active# isNat X)
    (mark# U12(X1, X2) -> mark# X1, mark# U105(X1, X2) -> U105#(mark X1, X2))
    (mark# U12(X1, X2) -> mark# X1, mark# U105(X1, X2) -> active# U105(mark X1, X2))
    (mark# U12(X1, X2) -> mark# X1, mark# U105(X1, X2) -> mark# X1)
    (mark# U12(X1, X2) -> mark# X1, mark# U104(X1, X2, X3) -> U104#(mark X1, X2, X3))
    (mark# U12(X1, X2) -> mark# X1, mark# U104(X1, X2, X3) -> active# U104(mark X1, X2, X3))
    (mark# U12(X1, X2) -> mark# X1, mark# U104(X1, X2, X3) -> mark# X1)
    (mark# U12(X1, X2) -> mark# X1, mark# isNatIListKind X -> active# isNatIListKind X)
    (mark# U12(X1, X2) -> mark# X1, mark# U103(X1, X2, X3) -> U103#(mark X1, X2, X3))
    (mark# U12(X1, X2) -> mark# X1, mark# U103(X1, X2, X3) -> active# U103(mark X1, X2, X3))
    (mark# U12(X1, X2) -> mark# X1, mark# U103(X1, X2, X3) -> mark# X1)
    (mark# U12(X1, X2) -> mark# X1, mark# tt() -> active# tt())
    (mark# U12(X1, X2) -> mark# X1, mark# U101(X1, X2, X3) -> U101#(mark X1, X2, X3))
    (mark# U12(X1, X2) -> mark# X1, mark# U101(X1, X2, X3) -> active# U101(mark X1, X2, X3))
    (mark# U12(X1, X2) -> mark# X1, mark# U101(X1, X2, X3) -> mark# X1)
    (mark# U12(X1, X2) -> mark# X1, mark# isNatKind X -> active# isNatKind X)
    (mark# U12(X1, X2) -> mark# X1, mark# U102(X1, X2, X3) -> U102#(mark X1, X2, X3))
    (mark# U12(X1, X2) -> mark# X1, mark# U102(X1, X2, X3) -> active# U102(mark X1, X2, X3))
    (mark# U12(X1, X2) -> mark# X1, mark# U102(X1, X2, X3) -> mark# X1)
    (mark# U12(X1, X2) -> mark# X1, mark# zeros() -> active# zeros())
    (mark# U12(X1, X2) -> mark# X1, mark# 0() -> active# 0())
    (mark# U12(X1, X2) -> mark# X1, mark# cons(X1, X2) -> active# cons(mark X1, X2))
    (mark# U12(X1, X2) -> mark# X1, mark# cons(X1, X2) -> cons#(mark X1, X2))
    (mark# U12(X1, X2) -> mark# X1, mark# cons(X1, X2) -> mark# X1)
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U96 X -> U96# mark X)
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U96 X -> active# U96 mark X)
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U96 X -> mark# X)
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U95(X1, X2) -> U95#(mark X1, X2))
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U95(X1, X2) -> active# U95(mark X1, X2))
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U95(X1, X2) -> mark# X1)
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U94(X1, X2, X3) -> U94#(mark X1, X2, X3))
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U94(X1, X2, X3) -> active# U94(mark X1, X2, X3))
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U94(X1, X2, X3) -> mark# X1)
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U93(X1, X2, X3) -> U93#(mark X1, X2, X3))
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U93(X1, X2, X3) -> active# U93(mark X1, X2, X3))
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U93(X1, X2, X3) -> mark# X1)
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U91(X1, X2, X3) -> U91#(mark X1, X2, X3))
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U91(X1, X2, X3) -> active# U91(mark X1, X2, X3))
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U91(X1, X2, X3) -> mark# X1)
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U92(X1, X2, X3) -> U92#(mark X1, X2, X3))
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U92(X1, X2, X3) -> active# U92(mark X1, X2, X3))
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U92(X1, X2, X3) -> mark# X1)
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U81 X -> U81# mark X)
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U81 X -> active# U81 mark X)
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U81 X -> mark# X)
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U71 X -> U71# mark X)
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U71 X -> active# U71 mark X)
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U71 X -> mark# X)
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U61(X1, X2) -> U61#(mark X1, X2))
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U61(X1, X2) -> active# U61(mark X1, X2))
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U61(X1, X2) -> mark# X1)
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U62 X -> U62# mark X)
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U62 X -> active# U62 mark X)
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U62 X -> mark# X)
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U51(X1, X2) -> U51#(mark X1, X2))
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U51(X1, X2) -> active# U51(mark X1, X2))
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U51(X1, X2) -> mark# X1)
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U52 X -> U52# mark X)
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U52 X -> active# U52 mark X)
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U52 X -> mark# X)
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U46 X -> U46# mark X)
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U46 X -> active# U46 mark X)
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U46 X -> mark# X)
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U45(X1, X2) -> U45#(mark X1, X2))
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U45(X1, X2) -> active# U45(mark X1, X2))
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U45(X1, X2) -> mark# X1)
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U44(X1, X2, X3) -> U44#(mark X1, X2, X3))
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U44(X1, X2, X3) -> active# U44(mark X1, X2, X3))
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U44(X1, X2, X3) -> mark# X1)
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U43(X1, X2, X3) -> U43#(mark X1, X2, X3))
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U43(X1, X2, X3) -> active# U43(mark X1, X2, X3))
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U43(X1, X2, X3) -> mark# X1)
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U41(X1, X2, X3) -> U41#(mark X1, X2, X3))
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U41(X1, X2, X3) -> active# U41(mark X1, X2, X3))
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U41(X1, X2, X3) -> mark# X1)
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U42(X1, X2, X3) -> U42#(mark X1, X2, X3))
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U42(X1, X2, X3) -> active# U42(mark X1, X2, X3))
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U42(X1, X2, X3) -> mark# X1)
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U33 X -> U33# mark X)
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U33 X -> active# U33 mark X)
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U33 X -> mark# X)
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U31(X1, X2) -> U31#(mark X1, X2))
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U31(X1, X2) -> active# U31(mark X1, X2))
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U31(X1, X2) -> mark# X1)
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U32(X1, X2) -> U32#(mark X1, X2))
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U32(X1, X2) -> active# U32(mark X1, X2))
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U32(X1, X2) -> mark# X1)
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U23 X -> U23# mark X)
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U23 X -> active# U23 mark X)
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U23 X -> mark# X)
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U21(X1, X2) -> U21#(mark X1, X2))
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U21(X1, X2) -> active# U21(mark X1, X2))
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U21(X1, X2) -> mark# X1)
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U22(X1, X2) -> U22#(mark X1, X2))
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U22(X1, X2) -> active# U22(mark X1, X2))
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U22(X1, X2) -> mark# X1)
    (mark# U112(X1, X2, X3) -> mark# X1, mark# take(X1, X2) -> take#(mark X1, mark X2))
    (mark# U112(X1, X2, X3) -> mark# X1, mark# take(X1, X2) -> active# take(mark X1, mark X2))
    (mark# U112(X1, X2, X3) -> mark# X1, mark# take(X1, X2) -> mark# X2)
    (mark# U112(X1, X2, X3) -> mark# X1, mark# take(X1, X2) -> mark# X1)
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U136(X1, X2, X3, X4) -> U136#(mark X1, X2, X3, X4))
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U136(X1, X2, X3, X4) -> active# U136(mark X1, X2, X3, X4))
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U136(X1, X2, X3, X4) -> mark# X1)
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U135(X1, X2, X3, X4) -> U135#(mark X1, X2, X3, X4))
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U135(X1, X2, X3, X4) -> active# U135(mark X1, X2, X3, X4))
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U135(X1, X2, X3, X4) -> mark# X1)
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U134(X1, X2, X3, X4) -> U134#(mark X1, X2, X3, X4))
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U134(X1, X2, X3, X4) -> active# U134(mark X1, X2, X3, X4))
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U134(X1, X2, X3, X4) -> mark# X1)
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U133(X1, X2, X3, X4) -> U133#(mark X1, X2, X3, X4))
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U133(X1, X2, X3, X4) -> active# U133(mark X1, X2, X3, X4))
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U133(X1, X2, X3, X4) -> mark# X1)
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U131(X1, X2, X3, X4) -> U131#(mark X1, X2, X3, X4))
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U131(X1, X2, X3, X4) -> active# U131(mark X1, X2, X3, X4))
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U131(X1, X2, X3, X4) -> mark# X1)
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U132(X1, X2, X3, X4) -> U132#(mark X1, X2, X3, X4))
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U132(X1, X2, X3, X4) -> active# U132(mark X1, X2, X3, X4))
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U132(X1, X2, X3, X4) -> mark# X1)
    (mark# U112(X1, X2, X3) -> mark# X1, mark# nil() -> active# nil())
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U121(X1, X2) -> U121#(mark X1, X2))
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U121(X1, X2) -> active# U121(mark X1, X2))
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U121(X1, X2) -> mark# X1)
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U122 X -> U122# mark X)
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U122 X -> active# U122 mark X)
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U122 X -> mark# X)
    (mark# U112(X1, X2, X3) -> mark# X1, mark# isNatList X -> active# isNatList X)
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U13 X -> U13# mark X)
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U13 X -> active# U13 mark X)
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U13 X -> mark# X)
    (mark# U112(X1, X2, X3) -> mark# X1, mark# length X -> length# mark X)
    (mark# U112(X1, X2, X3) -> mark# X1, mark# length X -> active# length mark X)
    (mark# U112(X1, X2, X3) -> mark# X1, mark# length X -> mark# X)
    (mark# U112(X1, X2, X3) -> mark# X1, mark# s X -> s# mark X)
    (mark# U112(X1, X2, X3) -> mark# X1, mark# s X -> active# s mark X)
    (mark# U112(X1, X2, X3) -> mark# X1, mark# s X -> mark# X)
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U114(X1, X2) -> U114#(mark X1, X2))
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U114(X1, X2) -> active# U114(mark X1, X2))
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U114(X1, X2) -> mark# X1)
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U113(X1, X2, X3) -> U113#(mark X1, X2, X3))
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U113(X1, X2, X3) -> active# U113(mark X1, X2, X3))
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U113(X1, X2, X3) -> mark# X1)
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U111(X1, X2, X3) -> U111#(mark X1, X2, X3))
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U111(X1, X2, X3) -> active# U111(mark X1, X2, X3))
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U111(X1, X2, X3) -> mark# X1)
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U112(X1, X2, X3) -> U112#(mark X1, X2, X3))
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U112(X1, X2, X3) -> active# U112(mark X1, X2, X3))
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U112(X1, X2, X3) -> mark# X1)
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U11(X1, X2) -> U11#(mark X1, X2))
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U11(X1, X2) -> active# U11(mark X1, X2))
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U11(X1, X2) -> mark# X1)
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U12(X1, X2) -> U12#(mark X1, X2))
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U12(X1, X2) -> active# U12(mark X1, X2))
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U12(X1, X2) -> mark# X1)
    (mark# U112(X1, X2, X3) -> mark# X1, mark# isNatIList X -> active# isNatIList X)
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U106 X -> U106# mark X)
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U106 X -> active# U106 mark X)
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U106 X -> mark# X)
    (mark# U112(X1, X2, X3) -> mark# X1, mark# isNat X -> active# isNat X)
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U105(X1, X2) -> U105#(mark X1, X2))
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U105(X1, X2) -> active# U105(mark X1, X2))
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U105(X1, X2) -> mark# X1)
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U104(X1, X2, X3) -> U104#(mark X1, X2, X3))
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U104(X1, X2, X3) -> active# U104(mark X1, X2, X3))
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U104(X1, X2, X3) -> mark# X1)
    (mark# U112(X1, X2, X3) -> mark# X1, mark# isNatIListKind X -> active# isNatIListKind X)
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U103(X1, X2, X3) -> U103#(mark X1, X2, X3))
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U103(X1, X2, X3) -> active# U103(mark X1, X2, X3))
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U103(X1, X2, X3) -> mark# X1)
    (mark# U112(X1, X2, X3) -> mark# X1, mark# tt() -> active# tt())
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U101(X1, X2, X3) -> U101#(mark X1, X2, X3))
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U101(X1, X2, X3) -> active# U101(mark X1, X2, X3))
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U101(X1, X2, X3) -> mark# X1)
    (mark# U112(X1, X2, X3) -> mark# X1, mark# isNatKind X -> active# isNatKind X)
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U102(X1, X2, X3) -> U102#(mark X1, X2, X3))
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U102(X1, X2, X3) -> active# U102(mark X1, X2, X3))
    (mark# U112(X1, X2, X3) -> mark# X1, mark# U102(X1, X2, X3) -> mark# X1)
    (mark# U112(X1, X2, X3) -> mark# X1, mark# zeros() -> active# zeros())
    (mark# U112(X1, X2, X3) -> mark# X1, mark# 0() -> active# 0())
    (mark# U112(X1, X2, X3) -> mark# X1, mark# cons(X1, X2) -> active# cons(mark X1, X2))
    (mark# U112(X1, X2, X3) -> mark# X1, mark# cons(X1, X2) -> cons#(mark X1, X2))
    (mark# U112(X1, X2, X3) -> mark# X1, mark# cons(X1, X2) -> mark# X1)
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U96 X -> U96# mark X)
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U96 X -> active# U96 mark X)
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U96 X -> mark# X)
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U95(X1, X2) -> U95#(mark X1, X2))
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U95(X1, X2) -> active# U95(mark X1, X2))
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U95(X1, X2) -> mark# X1)
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U94(X1, X2, X3) -> U94#(mark X1, X2, X3))
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U94(X1, X2, X3) -> active# U94(mark X1, X2, X3))
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U94(X1, X2, X3) -> mark# X1)
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U93(X1, X2, X3) -> U93#(mark X1, X2, X3))
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U93(X1, X2, X3) -> active# U93(mark X1, X2, X3))
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U93(X1, X2, X3) -> mark# X1)
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U91(X1, X2, X3) -> U91#(mark X1, X2, X3))
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U91(X1, X2, X3) -> active# U91(mark X1, X2, X3))
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U91(X1, X2, X3) -> mark# X1)
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U92(X1, X2, X3) -> U92#(mark X1, X2, X3))
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U92(X1, X2, X3) -> active# U92(mark X1, X2, X3))
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U92(X1, X2, X3) -> mark# X1)
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U81 X -> U81# mark X)
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U81 X -> active# U81 mark X)
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U81 X -> mark# X)
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U71 X -> U71# mark X)
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U71 X -> active# U71 mark X)
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U71 X -> mark# X)
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U61(X1, X2) -> U61#(mark X1, X2))
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U61(X1, X2) -> active# U61(mark X1, X2))
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U61(X1, X2) -> mark# X1)
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U62 X -> U62# mark X)
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U62 X -> active# U62 mark X)
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U62 X -> mark# X)
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U51(X1, X2) -> U51#(mark X1, X2))
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U51(X1, X2) -> active# U51(mark X1, X2))
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U51(X1, X2) -> mark# X1)
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U52 X -> U52# mark X)
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U52 X -> active# U52 mark X)
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U52 X -> mark# X)
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U46 X -> U46# mark X)
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U46 X -> active# U46 mark X)
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U46 X -> mark# X)
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U45(X1, X2) -> U45#(mark X1, X2))
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U45(X1, X2) -> active# U45(mark X1, X2))
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U45(X1, X2) -> mark# X1)
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U44(X1, X2, X3) -> U44#(mark X1, X2, X3))
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U44(X1, X2, X3) -> active# U44(mark X1, X2, X3))
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U44(X1, X2, X3) -> mark# X1)
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U43(X1, X2, X3) -> U43#(mark X1, X2, X3))
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U43(X1, X2, X3) -> active# U43(mark X1, X2, X3))
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U43(X1, X2, X3) -> mark# X1)
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U41(X1, X2, X3) -> U41#(mark X1, X2, X3))
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U41(X1, X2, X3) -> active# U41(mark X1, X2, X3))
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U41(X1, X2, X3) -> mark# X1)
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U42(X1, X2, X3) -> U42#(mark X1, X2, X3))
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U42(X1, X2, X3) -> active# U42(mark X1, X2, X3))
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U42(X1, X2, X3) -> mark# X1)
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U33 X -> U33# mark X)
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U33 X -> active# U33 mark X)
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U33 X -> mark# X)
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U31(X1, X2) -> U31#(mark X1, X2))
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U31(X1, X2) -> active# U31(mark X1, X2))
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U31(X1, X2) -> mark# X1)
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U32(X1, X2) -> U32#(mark X1, X2))
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U32(X1, X2) -> active# U32(mark X1, X2))
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U32(X1, X2) -> mark# X1)
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U23 X -> U23# mark X)
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U23 X -> active# U23 mark X)
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U23 X -> mark# X)
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U21(X1, X2) -> U21#(mark X1, X2))
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U21(X1, X2) -> active# U21(mark X1, X2))
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U21(X1, X2) -> mark# X1)
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U22(X1, X2) -> U22#(mark X1, X2))
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U22(X1, X2) -> active# U22(mark X1, X2))
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U22(X1, X2) -> mark# X1)
    (mark# U113(X1, X2, X3) -> mark# X1, mark# take(X1, X2) -> take#(mark X1, mark X2))
    (mark# U113(X1, X2, X3) -> mark# X1, mark# take(X1, X2) -> active# take(mark X1, mark X2))
    (mark# U113(X1, X2, X3) -> mark# X1, mark# take(X1, X2) -> mark# X2)
    (mark# U113(X1, X2, X3) -> mark# X1, mark# take(X1, X2) -> mark# X1)
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U136(X1, X2, X3, X4) -> U136#(mark X1, X2, X3, X4))
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U136(X1, X2, X3, X4) -> active# U136(mark X1, X2, X3, X4))
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U136(X1, X2, X3, X4) -> mark# X1)
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U135(X1, X2, X3, X4) -> U135#(mark X1, X2, X3, X4))
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U135(X1, X2, X3, X4) -> active# U135(mark X1, X2, X3, X4))
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U135(X1, X2, X3, X4) -> mark# X1)
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U134(X1, X2, X3, X4) -> U134#(mark X1, X2, X3, X4))
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U134(X1, X2, X3, X4) -> active# U134(mark X1, X2, X3, X4))
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U134(X1, X2, X3, X4) -> mark# X1)
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U133(X1, X2, X3, X4) -> U133#(mark X1, X2, X3, X4))
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U133(X1, X2, X3, X4) -> active# U133(mark X1, X2, X3, X4))
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U133(X1, X2, X3, X4) -> mark# X1)
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U131(X1, X2, X3, X4) -> U131#(mark X1, X2, X3, X4))
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U131(X1, X2, X3, X4) -> active# U131(mark X1, X2, X3, X4))
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U131(X1, X2, X3, X4) -> mark# X1)
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U132(X1, X2, X3, X4) -> U132#(mark X1, X2, X3, X4))
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U132(X1, X2, X3, X4) -> active# U132(mark X1, X2, X3, X4))
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U132(X1, X2, X3, X4) -> mark# X1)
    (mark# U113(X1, X2, X3) -> mark# X1, mark# nil() -> active# nil())
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U121(X1, X2) -> U121#(mark X1, X2))
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U121(X1, X2) -> active# U121(mark X1, X2))
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U121(X1, X2) -> mark# X1)
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U122 X -> U122# mark X)
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U122 X -> active# U122 mark X)
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U122 X -> mark# X)
    (mark# U113(X1, X2, X3) -> mark# X1, mark# isNatList X -> active# isNatList X)
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U13 X -> U13# mark X)
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U13 X -> active# U13 mark X)
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U13 X -> mark# X)
    (mark# U113(X1, X2, X3) -> mark# X1, mark# length X -> length# mark X)
    (mark# U113(X1, X2, X3) -> mark# X1, mark# length X -> active# length mark X)
    (mark# U113(X1, X2, X3) -> mark# X1, mark# length X -> mark# X)
    (mark# U113(X1, X2, X3) -> mark# X1, mark# s X -> s# mark X)
    (mark# U113(X1, X2, X3) -> mark# X1, mark# s X -> active# s mark X)
    (mark# U113(X1, X2, X3) -> mark# X1, mark# s X -> mark# X)
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U114(X1, X2) -> U114#(mark X1, X2))
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U114(X1, X2) -> active# U114(mark X1, X2))
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U114(X1, X2) -> mark# X1)
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U113(X1, X2, X3) -> U113#(mark X1, X2, X3))
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U113(X1, X2, X3) -> active# U113(mark X1, X2, X3))
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U113(X1, X2, X3) -> mark# X1)
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U111(X1, X2, X3) -> U111#(mark X1, X2, X3))
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U111(X1, X2, X3) -> active# U111(mark X1, X2, X3))
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U111(X1, X2, X3) -> mark# X1)
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U112(X1, X2, X3) -> U112#(mark X1, X2, X3))
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U112(X1, X2, X3) -> active# U112(mark X1, X2, X3))
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U112(X1, X2, X3) -> mark# X1)
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U11(X1, X2) -> U11#(mark X1, X2))
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U11(X1, X2) -> active# U11(mark X1, X2))
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U11(X1, X2) -> mark# X1)
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U12(X1, X2) -> U12#(mark X1, X2))
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U12(X1, X2) -> active# U12(mark X1, X2))
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U12(X1, X2) -> mark# X1)
    (mark# U113(X1, X2, X3) -> mark# X1, mark# isNatIList X -> active# isNatIList X)
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U106 X -> U106# mark X)
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U106 X -> active# U106 mark X)
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U106 X -> mark# X)
    (mark# U113(X1, X2, X3) -> mark# X1, mark# isNat X -> active# isNat X)
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U105(X1, X2) -> U105#(mark X1, X2))
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U105(X1, X2) -> active# U105(mark X1, X2))
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U105(X1, X2) -> mark# X1)
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U104(X1, X2, X3) -> U104#(mark X1, X2, X3))
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U104(X1, X2, X3) -> active# U104(mark X1, X2, X3))
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U104(X1, X2, X3) -> mark# X1)
    (mark# U113(X1, X2, X3) -> mark# X1, mark# isNatIListKind X -> active# isNatIListKind X)
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U103(X1, X2, X3) -> U103#(mark X1, X2, X3))
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U103(X1, X2, X3) -> active# U103(mark X1, X2, X3))
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U103(X1, X2, X3) -> mark# X1)
    (mark# U113(X1, X2, X3) -> mark# X1, mark# tt() -> active# tt())
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U101(X1, X2, X3) -> U101#(mark X1, X2, X3))
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U101(X1, X2, X3) -> active# U101(mark X1, X2, X3))
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U101(X1, X2, X3) -> mark# X1)
    (mark# U113(X1, X2, X3) -> mark# X1, mark# isNatKind X -> active# isNatKind X)
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U102(X1, X2, X3) -> U102#(mark X1, X2, X3))
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U102(X1, X2, X3) -> active# U102(mark X1, X2, X3))
    (mark# U113(X1, X2, X3) -> mark# X1, mark# U102(X1, X2, X3) -> mark# X1)
    (mark# U113(X1, X2, X3) -> mark# X1, mark# zeros() -> active# zeros())
    (mark# U113(X1, X2, X3) -> mark# X1, mark# 0() -> active# 0())
    (mark# U113(X1, X2, X3) -> mark# X1, mark# cons(X1, X2) -> active# cons(mark X1, X2))
    (mark# U113(X1, X2, X3) -> mark# X1, mark# cons(X1, X2) -> cons#(mark X1, X2))
    (mark# U113(X1, X2, X3) -> mark# X1, mark# cons(X1, X2) -> mark# X1)
    (mark# U121(X1, X2) -> mark# X1, mark# U96 X -> U96# mark X)
    (mark# U121(X1, X2) -> mark# X1, mark# U96 X -> active# U96 mark X)
    (mark# U121(X1, X2) -> mark# X1, mark# U96 X -> mark# X)
    (mark# U121(X1, X2) -> mark# X1, mark# U95(X1, X2) -> U95#(mark X1, X2))
    (mark# U121(X1, X2) -> mark# X1, mark# U95(X1, X2) -> active# U95(mark X1, X2))
    (mark# U121(X1, X2) -> mark# X1, mark# U95(X1, X2) -> mark# X1)
    (mark# U121(X1, X2) -> mark# X1, mark# U94(X1, X2, X3) -> U94#(mark X1, X2, X3))
    (mark# U121(X1, X2) -> mark# X1, mark# U94(X1, X2, X3) -> active# U94(mark X1, X2, X3))
    (mark# U121(X1, X2) -> mark# X1, mark# U94(X1, X2, X3) -> mark# X1)
    (mark# U121(X1, X2) -> mark# X1, mark# U93(X1, X2, X3) -> U93#(mark X1, X2, X3))
    (mark# U121(X1, X2) -> mark# X1, mark# U93(X1, X2, X3) -> active# U93(mark X1, X2, X3))
    (mark# U121(X1, X2) -> mark# X1, mark# U93(X1, X2, X3) -> mark# X1)
    (mark# U121(X1, X2) -> mark# X1, mark# U91(X1, X2, X3) -> U91#(mark X1, X2, X3))
    (mark# U121(X1, X2) -> mark# X1, mark# U91(X1, X2, X3) -> active# U91(mark X1, X2, X3))
    (mark# U121(X1, X2) -> mark# X1, mark# U91(X1, X2, X3) -> mark# X1)
    (mark# U121(X1, X2) -> mark# X1, mark# U92(X1, X2, X3) -> U92#(mark X1, X2, X3))
    (mark# U121(X1, X2) -> mark# X1, mark# U92(X1, X2, X3) -> active# U92(mark X1, X2, X3))
    (mark# U121(X1, X2) -> mark# X1, mark# U92(X1, X2, X3) -> mark# X1)
    (mark# U121(X1, X2) -> mark# X1, mark# U81 X -> U81# mark X)
    (mark# U121(X1, X2) -> mark# X1, mark# U81 X -> active# U81 mark X)
    (mark# U121(X1, X2) -> mark# X1, mark# U81 X -> mark# X)
    (mark# U121(X1, X2) -> mark# X1, mark# U71 X -> U71# mark X)
    (mark# U121(X1, X2) -> mark# X1, mark# U71 X -> active# U71 mark X)
    (mark# U121(X1, X2) -> mark# X1, mark# U71 X -> mark# X)
    (mark# U121(X1, X2) -> mark# X1, mark# U61(X1, X2) -> U61#(mark X1, X2))
    (mark# U121(X1, X2) -> mark# X1, mark# U61(X1, X2) -> active# U61(mark X1, X2))
    (mark# U121(X1, X2) -> mark# X1, mark# U61(X1, X2) -> mark# X1)
    (mark# U121(X1, X2) -> mark# X1, mark# U62 X -> U62# mark X)
    (mark# U121(X1, X2) -> mark# X1, mark# U62 X -> active# U62 mark X)
    (mark# U121(X1, X2) -> mark# X1, mark# U62 X -> mark# X)
    (mark# U121(X1, X2) -> mark# X1, mark# U51(X1, X2) -> U51#(mark X1, X2))
    (mark# U121(X1, X2) -> mark# X1, mark# U51(X1, X2) -> active# U51(mark X1, X2))
    (mark# U121(X1, X2) -> mark# X1, mark# U51(X1, X2) -> mark# X1)
    (mark# U121(X1, X2) -> mark# X1, mark# U52 X -> U52# mark X)
    (mark# U121(X1, X2) -> mark# X1, mark# U52 X -> active# U52 mark X)
    (mark# U121(X1, X2) -> mark# X1, mark# U52 X -> mark# X)
    (mark# U121(X1, X2) -> mark# X1, mark# U46 X -> U46# mark X)
    (mark# U121(X1, X2) -> mark# X1, mark# U46 X -> active# U46 mark X)
    (mark# U121(X1, X2) -> mark# X1, mark# U46 X -> mark# X)
    (mark# U121(X1, X2) -> mark# X1, mark# U45(X1, X2) -> U45#(mark X1, X2))
    (mark# U121(X1, X2) -> mark# X1, mark# U45(X1, X2) -> active# U45(mark X1, X2))
    (mark# U121(X1, X2) -> mark# X1, mark# U45(X1, X2) -> mark# X1)
    (mark# U121(X1, X2) -> mark# X1, mark# U44(X1, X2, X3) -> U44#(mark X1, X2, X3))
    (mark# U121(X1, X2) -> mark# X1, mark# U44(X1, X2, X3) -> active# U44(mark X1, X2, X3))
    (mark# U121(X1, X2) -> mark# X1, mark# U44(X1, X2, X3) -> mark# X1)
    (mark# U121(X1, X2) -> mark# X1, mark# U43(X1, X2, X3) -> U43#(mark X1, X2, X3))
    (mark# U121(X1, X2) -> mark# X1, mark# U43(X1, X2, X3) -> active# U43(mark X1, X2, X3))
    (mark# U121(X1, X2) -> mark# X1, mark# U43(X1, X2, X3) -> mark# X1)
    (mark# U121(X1, X2) -> mark# X1, mark# U41(X1, X2, X3) -> U41#(mark X1, X2, X3))
    (mark# U121(X1, X2) -> mark# X1, mark# U41(X1, X2, X3) -> active# U41(mark X1, X2, X3))
    (mark# U121(X1, X2) -> mark# X1, mark# U41(X1, X2, X3) -> mark# X1)
    (mark# U121(X1, X2) -> mark# X1, mark# U42(X1, X2, X3) -> U42#(mark X1, X2, X3))
    (mark# U121(X1, X2) -> mark# X1, mark# U42(X1, X2, X3) -> active# U42(mark X1, X2, X3))
    (mark# U121(X1, X2) -> mark# X1, mark# U42(X1, X2, X3) -> mark# X1)
    (mark# U121(X1, X2) -> mark# X1, mark# U33 X -> U33# mark X)
    (mark# U121(X1, X2) -> mark# X1, mark# U33 X -> active# U33 mark X)
    (mark# U121(X1, X2) -> mark# X1, mark# U33 X -> mark# X)
    (mark# U121(X1, X2) -> mark# X1, mark# U31(X1, X2) -> U31#(mark X1, X2))
    (mark# U121(X1, X2) -> mark# X1, mark# U31(X1, X2) -> active# U31(mark X1, X2))
    (mark# U121(X1, X2) -> mark# X1, mark# U31(X1, X2) -> mark# X1)
    (mark# U121(X1, X2) -> mark# X1, mark# U32(X1, X2) -> U32#(mark X1, X2))
    (mark# U121(X1, X2) -> mark# X1, mark# U32(X1, X2) -> active# U32(mark X1, X2))
    (mark# U121(X1, X2) -> mark# X1, mark# U32(X1, X2) -> mark# X1)
    (mark# U121(X1, X2) -> mark# X1, mark# U23 X -> U23# mark X)
    (mark# U121(X1, X2) -> mark# X1, mark# U23 X -> active# U23 mark X)
    (mark# U121(X1, X2) -> mark# X1, mark# U23 X -> mark# X)
    (mark# U121(X1, X2) -> mark# X1, mark# U21(X1, X2) -> U21#(mark X1, X2))
    (mark# U121(X1, X2) -> mark# X1, mark# U21(X1, X2) -> active# U21(mark X1, X2))
    (mark# U121(X1, X2) -> mark# X1, mark# U21(X1, X2) -> mark# X1)
    (mark# U121(X1, X2) -> mark# X1, mark# U22(X1, X2) -> U22#(mark X1, X2))
    (mark# U121(X1, X2) -> mark# X1, mark# U22(X1, X2) -> active# U22(mark X1, X2))
    (mark# U121(X1, X2) -> mark# X1, mark# U22(X1, X2) -> mark# X1)
    (mark# U121(X1, X2) -> mark# X1, mark# take(X1, X2) -> take#(mark X1, mark X2))
    (mark# U121(X1, X2) -> mark# X1, mark# take(X1, X2) -> active# take(mark X1, mark X2))
    (mark# U121(X1, X2) -> mark# X1, mark# take(X1, X2) -> mark# X2)
    (mark# U121(X1, X2) -> mark# X1, mark# take(X1, X2) -> mark# X1)
    (mark# U121(X1, X2) -> mark# X1, mark# U136(X1, X2, X3, X4) -> U136#(mark X1, X2, X3, X4))
    (mark# U121(X1, X2) -> mark# X1, mark# U136(X1, X2, X3, X4) -> active# U136(mark X1, X2, X3, X4))
    (mark# U121(X1, X2) -> mark# X1, mark# U136(X1, X2, X3, X4) -> mark# X1)
    (mark# U121(X1, X2) -> mark# X1, mark# U135(X1, X2, X3, X4) -> U135#(mark X1, X2, X3, X4))
    (mark# U121(X1, X2) -> mark# X1, mark# U135(X1, X2, X3, X4) -> active# U135(mark X1, X2, X3, X4))
    (mark# U121(X1, X2) -> mark# X1, mark# U135(X1, X2, X3, X4) -> mark# X1)
    (mark# U121(X1, X2) -> mark# X1, mark# U134(X1, X2, X3, X4) -> U134#(mark X1, X2, X3, X4))
    (mark# U121(X1, X2) -> mark# X1, mark# U134(X1, X2, X3, X4) -> active# U134(mark X1, X2, X3, X4))
    (mark# U121(X1, X2) -> mark# X1, mark# U134(X1, X2, X3, X4) -> mark# X1)
    (mark# U121(X1, X2) -> mark# X1, mark# U133(X1, X2, X3, X4) -> U133#(mark X1, X2, X3, X4))
    (mark# U121(X1, X2) -> mark# X1, mark# U133(X1, X2, X3, X4) -> active# U133(mark X1, X2, X3, X4))
    (mark# U121(X1, X2) -> mark# X1, mark# U133(X1, X2, X3, X4) -> mark# X1)
    (mark# U121(X1, X2) -> mark# X1, mark# U131(X1, X2, X3, X4) -> U131#(mark X1, X2, X3, X4))
    (mark# U121(X1, X2) -> mark# X1, mark# U131(X1, X2, X3, X4) -> active# U131(mark X1, X2, X3, X4))
    (mark# U121(X1, X2) -> mark# X1, mark# U131(X1, X2, X3, X4) -> mark# X1)
    (mark# U121(X1, X2) -> mark# X1, mark# U132(X1, X2, X3, X4) -> U132#(mark X1, X2, X3, X4))
    (mark# U121(X1, X2) -> mark# X1, mark# U132(X1, X2, X3, X4) -> active# U132(mark X1, X2, X3, X4))
    (mark# U121(X1, X2) -> mark# X1, mark# U132(X1, X2, X3, X4) -> mark# X1)
    (mark# U121(X1, X2) -> mark# X1, mark# nil() -> active# nil())
    (mark# U121(X1, X2) -> mark# X1, mark# U121(X1, X2) -> U121#(mark X1, X2))
    (mark# U121(X1, X2) -> mark# X1, mark# U121(X1, X2) -> active# U121(mark X1, X2))
    (mark# U121(X1, X2) -> mark# X1, mark# U121(X1, X2) -> mark# X1)
    (mark# U121(X1, X2) -> mark# X1, mark# U122 X -> U122# mark X)
    (mark# U121(X1, X2) -> mark# X1, mark# U122 X -> active# U122 mark X)
    (mark# U121(X1, X2) -> mark# X1, mark# U122 X -> mark# X)
    (mark# U121(X1, X2) -> mark# X1, mark# isNatList X -> active# isNatList X)
    (mark# U121(X1, X2) -> mark# X1, mark# U13 X -> U13# mark X)
    (mark# U121(X1, X2) -> mark# X1, mark# U13 X -> active# U13 mark X)
    (mark# U121(X1, X2) -> mark# X1, mark# U13 X -> mark# X)
    (mark# U121(X1, X2) -> mark# X1, mark# length X -> length# mark X)
    (mark# U121(X1, X2) -> mark# X1, mark# length X -> active# length mark X)
    (mark# U121(X1, X2) -> mark# X1, mark# length X -> mark# X)
    (mark# U121(X1, X2) -> mark# X1, mark# s X -> s# mark X)
    (mark# U121(X1, X2) -> mark# X1, mark# s X -> active# s mark X)
    (mark# U121(X1, X2) -> mark# X1, mark# s X -> mark# X)
    (mark# U121(X1, X2) -> mark# X1, mark# U114(X1, X2) -> U114#(mark X1, X2))
    (mark# U121(X1, X2) -> mark# X1, mark# U114(X1, X2) -> active# U114(mark X1, X2))
    (mark# U121(X1, X2) -> mark# X1, mark# U114(X1, X2) -> mark# X1)
    (mark# U121(X1, X2) -> mark# X1, mark# U113(X1, X2, X3) -> U113#(mark X1, X2, X3))
    (mark# U121(X1, X2) -> mark# X1, mark# U113(X1, X2, X3) -> active# U113(mark X1, X2, X3))
    (mark# U121(X1, X2) -> mark# X1, mark# U113(X1, X2, X3) -> mark# X1)
    (mark# U121(X1, X2) -> mark# X1, mark# U111(X1, X2, X3) -> U111#(mark X1, X2, X3))
    (mark# U121(X1, X2) -> mark# X1, mark# U111(X1, X2, X3) -> active# U111(mark X1, X2, X3))
    (mark# U121(X1, X2) -> mark# X1, mark# U111(X1, X2, X3) -> mark# X1)
    (mark# U121(X1, X2) -> mark# X1, mark# U112(X1, X2, X3) -> U112#(mark X1, X2, X3))
    (mark# U121(X1, X2) -> mark# X1, mark# U112(X1, X2, X3) -> active# U112(mark X1, X2, X3))
    (mark# U121(X1, X2) -> mark# X1, mark# U112(X1, X2, X3) -> mark# X1)
    (mark# U121(X1, X2) -> mark# X1, mark# U11(X1, X2) -> U11#(mark X1, X2))
    (mark# U121(X1, X2) -> mark# X1, mark# U11(X1, X2) -> active# U11(mark X1, X2))
    (mark# U121(X1, X2) -> mark# X1, mark# U11(X1, X2) -> mark# X1)
    (mark# U121(X1, X2) -> mark# X1, mark# U12(X1, X2) -> U12#(mark X1, X2))
    (mark# U121(X1, X2) -> mark# X1, mark# U12(X1, X2) -> active# U12(mark X1, X2))
    (mark# U121(X1, X2) -> mark# X1, mark# U12(X1, X2) -> mark# X1)
    (mark# U121(X1, X2) -> mark# X1, mark# isNatIList X -> active# isNatIList X)
    (mark# U121(X1, X2) -> mark# X1, mark# U106 X -> U106# mark X)
    (mark# U121(X1, X2) -> mark# X1, mark# U106 X -> active# U106 mark X)
    (mark# U121(X1, X2) -> mark# X1, mark# U106 X -> mark# X)
    (mark# U121(X1, X2) -> mark# X1, mark# isNat X -> active# isNat X)
    (mark# U121(X1, X2) -> mark# X1, mark# U105(X1, X2) -> U105#(mark X1, X2))
    (mark# U121(X1, X2) -> mark# X1, mark# U105(X1, X2) -> active# U105(mark X1, X2))
    (mark# U121(X1, X2) -> mark# X1, mark# U105(X1, X2) -> mark# X1)
    (mark# U121(X1, X2) -> mark# X1, mark# U104(X1, X2, X3) -> U104#(mark X1, X2, X3))
    (mark# U121(X1, X2) -> mark# X1, mark# U104(X1, X2, X3) -> active# U104(mark X1, X2, X3))
    (mark# U121(X1, X2) -> mark# X1, mark# U104(X1, X2, X3) -> mark# X1)
    (mark# U121(X1, X2) -> mark# X1, mark# isNatIListKind X -> active# isNatIListKind X)
    (mark# U121(X1, X2) -> mark# X1, mark# U103(X1, X2, X3) -> U103#(mark X1, X2, X3))
    (mark# U121(X1, X2) -> mark# X1, mark# U103(X1, X2, X3) -> active# U103(mark X1, X2, X3))
    (mark# U121(X1, X2) -> mark# X1, mark# U103(X1, X2, X3) -> mark# X1)
    (mark# U121(X1, X2) -> mark# X1, mark# tt() -> active# tt())
    (mark# U121(X1, X2) -> mark# X1, mark# U101(X1, X2, X3) -> U101#(mark X1, X2, X3))
    (mark# U121(X1, X2) -> mark# X1, mark# U101(X1, X2, X3) -> active# U101(mark X1, X2, X3))
    (mark# U121(X1, X2) -> mark# X1, mark# U101(X1, X2, X3) -> mark# X1)
    (mark# U121(X1, X2) -> mark# X1, mark# isNatKind X -> active# isNatKind X)
    (mark# U121(X1, X2) -> mark# X1, mark# U102(X1, X2, X3) -> U102#(mark X1, X2, X3))
    (mark# U121(X1, X2) -> mark# X1, mark# U102(X1, X2, X3) -> active# U102(mark X1, X2, X3))
    (mark# U121(X1, X2) -> mark# X1, mark# U102(X1, X2, X3) -> mark# X1)
    (mark# U121(X1, X2) -> mark# X1, mark# zeros() -> active# zeros())
    (mark# U121(X1, X2) -> mark# X1, mark# 0() -> active# 0())
    (mark# U121(X1, X2) -> mark# X1, mark# cons(X1, X2) -> active# cons(mark X1, X2))
    (mark# U121(X1, X2) -> mark# X1, mark# cons(X1, X2) -> cons#(mark X1, X2))
    (mark# U121(X1, X2) -> mark# X1, mark# cons(X1, X2) -> mark# X1)
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U96 X -> U96# mark X)
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U96 X -> active# U96 mark X)
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U96 X -> mark# X)
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U95(X1, X2) -> U95#(mark X1, X2))
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U95(X1, X2) -> active# U95(mark X1, X2))
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U95(X1, X2) -> mark# X1)
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U94(X1, X2, X3) -> U94#(mark X1, X2, X3))
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U94(X1, X2, X3) -> active# U94(mark X1, X2, X3))
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U94(X1, X2, X3) -> mark# X1)
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U93(X1, X2, X3) -> U93#(mark X1, X2, X3))
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U93(X1, X2, X3) -> active# U93(mark X1, X2, X3))
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U93(X1, X2, X3) -> mark# X1)
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U91(X1, X2, X3) -> U91#(mark X1, X2, X3))
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U91(X1, X2, X3) -> active# U91(mark X1, X2, X3))
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U91(X1, X2, X3) -> mark# X1)
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U92(X1, X2, X3) -> U92#(mark X1, X2, X3))
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U92(X1, X2, X3) -> active# U92(mark X1, X2, X3))
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U92(X1, X2, X3) -> mark# X1)
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U81 X -> U81# mark X)
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U81 X -> active# U81 mark X)
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U81 X -> mark# X)
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U71 X -> U71# mark X)
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U71 X -> active# U71 mark X)
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U71 X -> mark# X)
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U61(X1, X2) -> U61#(mark X1, X2))
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U61(X1, X2) -> active# U61(mark X1, X2))
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U61(X1, X2) -> mark# X1)
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U62 X -> U62# mark X)
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U62 X -> active# U62 mark X)
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U62 X -> mark# X)
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U51(X1, X2) -> U51#(mark X1, X2))
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U51(X1, X2) -> active# U51(mark X1, X2))
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U51(X1, X2) -> mark# X1)
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U52 X -> U52# mark X)
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U52 X -> active# U52 mark X)
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U52 X -> mark# X)
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U46 X -> U46# mark X)
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U46 X -> active# U46 mark X)
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U46 X -> mark# X)
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U45(X1, X2) -> U45#(mark X1, X2))
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U45(X1, X2) -> active# U45(mark X1, X2))
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U45(X1, X2) -> mark# X1)
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U44(X1, X2, X3) -> U44#(mark X1, X2, X3))
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U44(X1, X2, X3) -> active# U44(mark X1, X2, X3))
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U44(X1, X2, X3) -> mark# X1)
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U43(X1, X2, X3) -> U43#(mark X1, X2, X3))
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U43(X1, X2, X3) -> active# U43(mark X1, X2, X3))
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U43(X1, X2, X3) -> mark# X1)
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U41(X1, X2, X3) -> U41#(mark X1, X2, X3))
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U41(X1, X2, X3) -> active# U41(mark X1, X2, X3))
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U41(X1, X2, X3) -> mark# X1)
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U42(X1, X2, X3) -> U42#(mark X1, X2, X3))
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U42(X1, X2, X3) -> active# U42(mark X1, X2, X3))
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U42(X1, X2, X3) -> mark# X1)
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U33 X -> U33# mark X)
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U33 X -> active# U33 mark X)
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U33 X -> mark# X)
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U31(X1, X2) -> U31#(mark X1, X2))
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U31(X1, X2) -> active# U31(mark X1, X2))
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U31(X1, X2) -> mark# X1)
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U32(X1, X2) -> U32#(mark X1, X2))
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U32(X1, X2) -> active# U32(mark X1, X2))
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U32(X1, X2) -> mark# X1)
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U23 X -> U23# mark X)
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U23 X -> active# U23 mark X)
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U23 X -> mark# X)
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U21(X1, X2) -> U21#(mark X1, X2))
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U21(X1, X2) -> active# U21(mark X1, X2))
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U21(X1, X2) -> mark# X1)
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U22(X1, X2) -> U22#(mark X1, X2))
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U22(X1, X2) -> active# U22(mark X1, X2))
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U22(X1, X2) -> mark# X1)
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# take(X1, X2) -> take#(mark X1, mark X2))
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# take(X1, X2) -> active# take(mark X1, mark X2))
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# take(X1, X2) -> mark# X2)
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# take(X1, X2) -> mark# X1)
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U136(X1, X2, X3, X4) -> U136#(mark X1, X2, X3, X4))
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U136(X1, X2, X3, X4) -> active# U136(mark X1, X2, X3, X4))
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U136(X1, X2, X3, X4) -> mark# X1)
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U135(X1, X2, X3, X4) -> U135#(mark X1, X2, X3, X4))
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U135(X1, X2, X3, X4) -> active# U135(mark X1, X2, X3, X4))
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U135(X1, X2, X3, X4) -> mark# X1)
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U134(X1, X2, X3, X4) -> U134#(mark X1, X2, X3, X4))
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U134(X1, X2, X3, X4) -> active# U134(mark X1, X2, X3, X4))
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U134(X1, X2, X3, X4) -> mark# X1)
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U133(X1, X2, X3, X4) -> U133#(mark X1, X2, X3, X4))
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U133(X1, X2, X3, X4) -> active# U133(mark X1, X2, X3, X4))
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U133(X1, X2, X3, X4) -> mark# X1)
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U131(X1, X2, X3, X4) -> U131#(mark X1, X2, X3, X4))
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U131(X1, X2, X3, X4) -> active# U131(mark X1, X2, X3, X4))
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U131(X1, X2, X3, X4) -> mark# X1)
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U132(X1, X2, X3, X4) -> U132#(mark X1, X2, X3, X4))
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U132(X1, X2, X3, X4) -> active# U132(mark X1, X2, X3, X4))
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U132(X1, X2, X3, X4) -> mark# X1)
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# nil() -> active# nil())
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U121(X1, X2) -> U121#(mark X1, X2))
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U121(X1, X2) -> active# U121(mark X1, X2))
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U121(X1, X2) -> mark# X1)
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U122 X -> U122# mark X)
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U122 X -> active# U122 mark X)
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U122 X -> mark# X)
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# isNatList X -> active# isNatList X)
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U13 X -> U13# mark X)
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U13 X -> active# U13 mark X)
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U13 X -> mark# X)
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# length X -> length# mark X)
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# length X -> active# length mark X)
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# length X -> mark# X)
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# s X -> s# mark X)
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# s X -> active# s mark X)
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# s X -> mark# X)
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U114(X1, X2) -> U114#(mark X1, X2))
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U114(X1, X2) -> active# U114(mark X1, X2))
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U114(X1, X2) -> mark# X1)
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U113(X1, X2, X3) -> U113#(mark X1, X2, X3))
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U113(X1, X2, X3) -> active# U113(mark X1, X2, X3))
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U113(X1, X2, X3) -> mark# X1)
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U111(X1, X2, X3) -> U111#(mark X1, X2, X3))
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U111(X1, X2, X3) -> active# U111(mark X1, X2, X3))
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U111(X1, X2, X3) -> mark# X1)
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U112(X1, X2, X3) -> U112#(mark X1, X2, X3))
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U112(X1, X2, X3) -> active# U112(mark X1, X2, X3))
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U112(X1, X2, X3) -> mark# X1)
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U11(X1, X2) -> U11#(mark X1, X2))
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U11(X1, X2) -> active# U11(mark X1, X2))
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U11(X1, X2) -> mark# X1)
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U12(X1, X2) -> U12#(mark X1, X2))
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U12(X1, X2) -> active# U12(mark X1, X2))
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U12(X1, X2) -> mark# X1)
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# isNatIList X -> active# isNatIList X)
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U106 X -> U106# mark X)
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U106 X -> active# U106 mark X)
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U106 X -> mark# X)
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# isNat X -> active# isNat X)
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U105(X1, X2) -> U105#(mark X1, X2))
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U105(X1, X2) -> active# U105(mark X1, X2))
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U105(X1, X2) -> mark# X1)
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U104(X1, X2, X3) -> U104#(mark X1, X2, X3))
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U104(X1, X2, X3) -> active# U104(mark X1, X2, X3))
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U104(X1, X2, X3) -> mark# X1)
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# isNatIListKind X -> active# isNatIListKind X)
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U103(X1, X2, X3) -> U103#(mark X1, X2, X3))
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U103(X1, X2, X3) -> active# U103(mark X1, X2, X3))
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U103(X1, X2, X3) -> mark# X1)
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# tt() -> active# tt())
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U101(X1, X2, X3) -> U101#(mark X1, X2, X3))
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U101(X1, X2, X3) -> active# U101(mark X1, X2, X3))
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U101(X1, X2, X3) -> mark# X1)
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# isNatKind X -> active# isNatKind X)
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U102(X1, X2, X3) -> U102#(mark X1, X2, X3))
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U102(X1, X2, X3) -> active# U102(mark X1, X2, X3))
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# U102(X1, X2, X3) -> mark# X1)
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# zeros() -> active# zeros())
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# 0() -> active# 0())
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# cons(X1, X2) -> active# cons(mark X1, X2))
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# cons(X1, X2) -> cons#(mark X1, X2))
    (mark# U131(X1, X2, X3, X4) -> mark# X1, mark# cons(X1, X2) -> mark# X1)
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U96 X -> U96# mark X)
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U96 X -> active# U96 mark X)
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U96 X -> mark# X)
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U95(X1, X2) -> U95#(mark X1, X2))
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U95(X1, X2) -> active# U95(mark X1, X2))
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U95(X1, X2) -> mark# X1)
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U94(X1, X2, X3) -> U94#(mark X1, X2, X3))
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U94(X1, X2, X3) -> active# U94(mark X1, X2, X3))
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U94(X1, X2, X3) -> mark# X1)
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U93(X1, X2, X3) -> U93#(mark X1, X2, X3))
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U93(X1, X2, X3) -> active# U93(mark X1, X2, X3))
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U93(X1, X2, X3) -> mark# X1)
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U91(X1, X2, X3) -> U91#(mark X1, X2, X3))
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U91(X1, X2, X3) -> active# U91(mark X1, X2, X3))
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U91(X1, X2, X3) -> mark# X1)
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U92(X1, X2, X3) -> U92#(mark X1, X2, X3))
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U92(X1, X2, X3) -> active# U92(mark X1, X2, X3))
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U92(X1, X2, X3) -> mark# X1)
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U81 X -> U81# mark X)
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U81 X -> active# U81 mark X)
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U81 X -> mark# X)
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U71 X -> U71# mark X)
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U71 X -> active# U71 mark X)
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U71 X -> mark# X)
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U61(X1, X2) -> U61#(mark X1, X2))
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U61(X1, X2) -> active# U61(mark X1, X2))
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U61(X1, X2) -> mark# X1)
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U62 X -> U62# mark X)
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U62 X -> active# U62 mark X)
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U62 X -> mark# X)
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U51(X1, X2) -> U51#(mark X1, X2))
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U51(X1, X2) -> active# U51(mark X1, X2))
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U51(X1, X2) -> mark# X1)
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U52 X -> U52# mark X)
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U52 X -> active# U52 mark X)
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U52 X -> mark# X)
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U46 X -> U46# mark X)
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U46 X -> active# U46 mark X)
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U46 X -> mark# X)
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U45(X1, X2) -> U45#(mark X1, X2))
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U45(X1, X2) -> active# U45(mark X1, X2))
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U45(X1, X2) -> mark# X1)
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U44(X1, X2, X3) -> U44#(mark X1, X2, X3))
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U44(X1, X2, X3) -> active# U44(mark X1, X2, X3))
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U44(X1, X2, X3) -> mark# X1)
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U43(X1, X2, X3) -> U43#(mark X1, X2, X3))
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U43(X1, X2, X3) -> active# U43(mark X1, X2, X3))
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U43(X1, X2, X3) -> mark# X1)
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U41(X1, X2, X3) -> U41#(mark X1, X2, X3))
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U41(X1, X2, X3) -> active# U41(mark X1, X2, X3))
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U41(X1, X2, X3) -> mark# X1)
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U42(X1, X2, X3) -> U42#(mark X1, X2, X3))
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U42(X1, X2, X3) -> active# U42(mark X1, X2, X3))
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U42(X1, X2, X3) -> mark# X1)
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U33 X -> U33# mark X)
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U33 X -> active# U33 mark X)
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U33 X -> mark# X)
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U31(X1, X2) -> U31#(mark X1, X2))
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U31(X1, X2) -> active# U31(mark X1, X2))
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U31(X1, X2) -> mark# X1)
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U32(X1, X2) -> U32#(mark X1, X2))
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U32(X1, X2) -> active# U32(mark X1, X2))
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U32(X1, X2) -> mark# X1)
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U23 X -> U23# mark X)
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U23 X -> active# U23 mark X)
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U23 X -> mark# X)
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U21(X1, X2) -> U21#(mark X1, X2))
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U21(X1, X2) -> active# U21(mark X1, X2))
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U21(X1, X2) -> mark# X1)
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U22(X1, X2) -> U22#(mark X1, X2))
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U22(X1, X2) -> active# U22(mark X1, X2))
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U22(X1, X2) -> mark# X1)
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# take(X1, X2) -> take#(mark X1, mark X2))
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# take(X1, X2) -> active# take(mark X1, mark X2))
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# take(X1, X2) -> mark# X2)
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# take(X1, X2) -> mark# X1)
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U136(X1, X2, X3, X4) -> U136#(mark X1, X2, X3, X4))
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U136(X1, X2, X3, X4) -> active# U136(mark X1, X2, X3, X4))
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U136(X1, X2, X3, X4) -> mark# X1)
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U135(X1, X2, X3, X4) -> U135#(mark X1, X2, X3, X4))
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U135(X1, X2, X3, X4) -> active# U135(mark X1, X2, X3, X4))
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U135(X1, X2, X3, X4) -> mark# X1)
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U134(X1, X2, X3, X4) -> U134#(mark X1, X2, X3, X4))
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U134(X1, X2, X3, X4) -> active# U134(mark X1, X2, X3, X4))
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U134(X1, X2, X3, X4) -> mark# X1)
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U133(X1, X2, X3, X4) -> U133#(mark X1, X2, X3, X4))
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U133(X1, X2, X3, X4) -> active# U133(mark X1, X2, X3, X4))
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U133(X1, X2, X3, X4) -> mark# X1)
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U131(X1, X2, X3, X4) -> U131#(mark X1, X2, X3, X4))
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U131(X1, X2, X3, X4) -> active# U131(mark X1, X2, X3, X4))
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U131(X1, X2, X3, X4) -> mark# X1)
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U132(X1, X2, X3, X4) -> U132#(mark X1, X2, X3, X4))
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U132(X1, X2, X3, X4) -> active# U132(mark X1, X2, X3, X4))
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U132(X1, X2, X3, X4) -> mark# X1)
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# nil() -> active# nil())
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U121(X1, X2) -> U121#(mark X1, X2))
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U121(X1, X2) -> active# U121(mark X1, X2))
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U121(X1, X2) -> mark# X1)
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U122 X -> U122# mark X)
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U122 X -> active# U122 mark X)
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U122 X -> mark# X)
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# isNatList X -> active# isNatList X)
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U13 X -> U13# mark X)
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U13 X -> active# U13 mark X)
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U13 X -> mark# X)
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# length X -> length# mark X)
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# length X -> active# length mark X)
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# length X -> mark# X)
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# s X -> s# mark X)
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# s X -> active# s mark X)
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# s X -> mark# X)
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U114(X1, X2) -> U114#(mark X1, X2))
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U114(X1, X2) -> active# U114(mark X1, X2))
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U114(X1, X2) -> mark# X1)
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U113(X1, X2, X3) -> U113#(mark X1, X2, X3))
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U113(X1, X2, X3) -> active# U113(mark X1, X2, X3))
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U113(X1, X2, X3) -> mark# X1)
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U111(X1, X2, X3) -> U111#(mark X1, X2, X3))
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U111(X1, X2, X3) -> active# U111(mark X1, X2, X3))
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U111(X1, X2, X3) -> mark# X1)
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U112(X1, X2, X3) -> U112#(mark X1, X2, X3))
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U112(X1, X2, X3) -> active# U112(mark X1, X2, X3))
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U112(X1, X2, X3) -> mark# X1)
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U11(X1, X2) -> U11#(mark X1, X2))
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U11(X1, X2) -> active# U11(mark X1, X2))
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U11(X1, X2) -> mark# X1)
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U12(X1, X2) -> U12#(mark X1, X2))
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U12(X1, X2) -> active# U12(mark X1, X2))
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U12(X1, X2) -> mark# X1)
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# isNatIList X -> active# isNatIList X)
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U106 X -> U106# mark X)
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U106 X -> active# U106 mark X)
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U106 X -> mark# X)
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# isNat X -> active# isNat X)
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U105(X1, X2) -> U105#(mark X1, X2))
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U105(X1, X2) -> active# U105(mark X1, X2))
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U105(X1, X2) -> mark# X1)
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U104(X1, X2, X3) -> U104#(mark X1, X2, X3))
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U104(X1, X2, X3) -> active# U104(mark X1, X2, X3))
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U104(X1, X2, X3) -> mark# X1)
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# isNatIListKind X -> active# isNatIListKind X)
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U103(X1, X2, X3) -> U103#(mark X1, X2, X3))
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U103(X1, X2, X3) -> active# U103(mark X1, X2, X3))
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U103(X1, X2, X3) -> mark# X1)
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# tt() -> active# tt())
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U101(X1, X2, X3) -> U101#(mark X1, X2, X3))
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U101(X1, X2, X3) -> active# U101(mark X1, X2, X3))
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U101(X1, X2, X3) -> mark# X1)
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# isNatKind X -> active# isNatKind X)
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U102(X1, X2, X3) -> U102#(mark X1, X2, X3))
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U102(X1, X2, X3) -> active# U102(mark X1, X2, X3))
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# U102(X1, X2, X3) -> mark# X1)
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# zeros() -> active# zeros())
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# 0() -> active# 0())
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# cons(X1, X2) -> active# cons(mark X1, X2))
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# cons(X1, X2) -> cons#(mark X1, X2))
    (mark# U134(X1, X2, X3, X4) -> mark# X1, mark# cons(X1, X2) -> mark# X1)
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U96 X -> U96# mark X)
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U96 X -> active# U96 mark X)
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U96 X -> mark# X)
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U95(X1, X2) -> U95#(mark X1, X2))
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U95(X1, X2) -> active# U95(mark X1, X2))
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U95(X1, X2) -> mark# X1)
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U94(X1, X2, X3) -> U94#(mark X1, X2, X3))
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U94(X1, X2, X3) -> active# U94(mark X1, X2, X3))
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U94(X1, X2, X3) -> mark# X1)
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U93(X1, X2, X3) -> U93#(mark X1, X2, X3))
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U93(X1, X2, X3) -> active# U93(mark X1, X2, X3))
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U93(X1, X2, X3) -> mark# X1)
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U91(X1, X2, X3) -> U91#(mark X1, X2, X3))
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U91(X1, X2, X3) -> active# U91(mark X1, X2, X3))
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U91(X1, X2, X3) -> mark# X1)
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U92(X1, X2, X3) -> U92#(mark X1, X2, X3))
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U92(X1, X2, X3) -> active# U92(mark X1, X2, X3))
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U92(X1, X2, X3) -> mark# X1)
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U81 X -> U81# mark X)
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U81 X -> active# U81 mark X)
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U81 X -> mark# X)
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U71 X -> U71# mark X)
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U71 X -> active# U71 mark X)
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U71 X -> mark# X)
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U61(X1, X2) -> U61#(mark X1, X2))
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U61(X1, X2) -> active# U61(mark X1, X2))
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U61(X1, X2) -> mark# X1)
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U62 X -> U62# mark X)
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U62 X -> active# U62 mark X)
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U62 X -> mark# X)
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U51(X1, X2) -> U51#(mark X1, X2))
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U51(X1, X2) -> active# U51(mark X1, X2))
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U51(X1, X2) -> mark# X1)
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U52 X -> U52# mark X)
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U52 X -> active# U52 mark X)
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U52 X -> mark# X)
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U46 X -> U46# mark X)
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U46 X -> active# U46 mark X)
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U46 X -> mark# X)
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U45(X1, X2) -> U45#(mark X1, X2))
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U45(X1, X2) -> active# U45(mark X1, X2))
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U45(X1, X2) -> mark# X1)
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U44(X1, X2, X3) -> U44#(mark X1, X2, X3))
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U44(X1, X2, X3) -> active# U44(mark X1, X2, X3))
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U44(X1, X2, X3) -> mark# X1)
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U43(X1, X2, X3) -> U43#(mark X1, X2, X3))
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U43(X1, X2, X3) -> active# U43(mark X1, X2, X3))
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U43(X1, X2, X3) -> mark# X1)
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U41(X1, X2, X3) -> U41#(mark X1, X2, X3))
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U41(X1, X2, X3) -> active# U41(mark X1, X2, X3))
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U41(X1, X2, X3) -> mark# X1)
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U42(X1, X2, X3) -> U42#(mark X1, X2, X3))
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U42(X1, X2, X3) -> active# U42(mark X1, X2, X3))
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U42(X1, X2, X3) -> mark# X1)
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U33 X -> U33# mark X)
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U33 X -> active# U33 mark X)
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U33 X -> mark# X)
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U31(X1, X2) -> U31#(mark X1, X2))
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U31(X1, X2) -> active# U31(mark X1, X2))
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U31(X1, X2) -> mark# X1)
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U32(X1, X2) -> U32#(mark X1, X2))
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U32(X1, X2) -> active# U32(mark X1, X2))
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U32(X1, X2) -> mark# X1)
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U23 X -> U23# mark X)
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U23 X -> active# U23 mark X)
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U23 X -> mark# X)
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U21(X1, X2) -> U21#(mark X1, X2))
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U21(X1, X2) -> active# U21(mark X1, X2))
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U21(X1, X2) -> mark# X1)
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U22(X1, X2) -> U22#(mark X1, X2))
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U22(X1, X2) -> active# U22(mark X1, X2))
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U22(X1, X2) -> mark# X1)
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# take(X1, X2) -> take#(mark X1, mark X2))
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# take(X1, X2) -> active# take(mark X1, mark X2))
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# take(X1, X2) -> mark# X2)
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# take(X1, X2) -> mark# X1)
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U136(X1, X2, X3, X4) -> U136#(mark X1, X2, X3, X4))
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U136(X1, X2, X3, X4) -> active# U136(mark X1, X2, X3, X4))
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U136(X1, X2, X3, X4) -> mark# X1)
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U135(X1, X2, X3, X4) -> U135#(mark X1, X2, X3, X4))
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U135(X1, X2, X3, X4) -> active# U135(mark X1, X2, X3, X4))
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U135(X1, X2, X3, X4) -> mark# X1)
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U134(X1, X2, X3, X4) -> U134#(mark X1, X2, X3, X4))
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U134(X1, X2, X3, X4) -> active# U134(mark X1, X2, X3, X4))
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U134(X1, X2, X3, X4) -> mark# X1)
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U133(X1, X2, X3, X4) -> U133#(mark X1, X2, X3, X4))
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U133(X1, X2, X3, X4) -> active# U133(mark X1, X2, X3, X4))
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U133(X1, X2, X3, X4) -> mark# X1)
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U131(X1, X2, X3, X4) -> U131#(mark X1, X2, X3, X4))
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U131(X1, X2, X3, X4) -> active# U131(mark X1, X2, X3, X4))
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U131(X1, X2, X3, X4) -> mark# X1)
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U132(X1, X2, X3, X4) -> U132#(mark X1, X2, X3, X4))
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U132(X1, X2, X3, X4) -> active# U132(mark X1, X2, X3, X4))
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U132(X1, X2, X3, X4) -> mark# X1)
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# nil() -> active# nil())
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U121(X1, X2) -> U121#(mark X1, X2))
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U121(X1, X2) -> active# U121(mark X1, X2))
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U121(X1, X2) -> mark# X1)
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U122 X -> U122# mark X)
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U122 X -> active# U122 mark X)
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U122 X -> mark# X)
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# isNatList X -> active# isNatList X)
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U13 X -> U13# mark X)
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U13 X -> active# U13 mark X)
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U13 X -> mark# X)
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# length X -> length# mark X)
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# length X -> active# length mark X)
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# length X -> mark# X)
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# s X -> s# mark X)
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# s X -> active# s mark X)
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# s X -> mark# X)
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U114(X1, X2) -> U114#(mark X1, X2))
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U114(X1, X2) -> active# U114(mark X1, X2))
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U114(X1, X2) -> mark# X1)
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U113(X1, X2, X3) -> U113#(mark X1, X2, X3))
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U113(X1, X2, X3) -> active# U113(mark X1, X2, X3))
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U113(X1, X2, X3) -> mark# X1)
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U111(X1, X2, X3) -> U111#(mark X1, X2, X3))
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U111(X1, X2, X3) -> active# U111(mark X1, X2, X3))
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U111(X1, X2, X3) -> mark# X1)
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U112(X1, X2, X3) -> U112#(mark X1, X2, X3))
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U112(X1, X2, X3) -> active# U112(mark X1, X2, X3))
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U112(X1, X2, X3) -> mark# X1)
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U11(X1, X2) -> U11#(mark X1, X2))
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U11(X1, X2) -> active# U11(mark X1, X2))
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U11(X1, X2) -> mark# X1)
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U12(X1, X2) -> U12#(mark X1, X2))
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U12(X1, X2) -> active# U12(mark X1, X2))
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U12(X1, X2) -> mark# X1)
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# isNatIList X -> active# isNatIList X)
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U106 X -> U106# mark X)
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U106 X -> active# U106 mark X)
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U106 X -> mark# X)
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# isNat X -> active# isNat X)
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U105(X1, X2) -> U105#(mark X1, X2))
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U105(X1, X2) -> active# U105(mark X1, X2))
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U105(X1, X2) -> mark# X1)
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U104(X1, X2, X3) -> U104#(mark X1, X2, X3))
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U104(X1, X2, X3) -> active# U104(mark X1, X2, X3))
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U104(X1, X2, X3) -> mark# X1)
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# isNatIListKind X -> active# isNatIListKind X)
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U103(X1, X2, X3) -> U103#(mark X1, X2, X3))
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U103(X1, X2, X3) -> active# U103(mark X1, X2, X3))
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U103(X1, X2, X3) -> mark# X1)
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# tt() -> active# tt())
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U101(X1, X2, X3) -> U101#(mark X1, X2, X3))
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U101(X1, X2, X3) -> active# U101(mark X1, X2, X3))
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U101(X1, X2, X3) -> mark# X1)
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# isNatKind X -> active# isNatKind X)
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U102(X1, X2, X3) -> U102#(mark X1, X2, X3))
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U102(X1, X2, X3) -> active# U102(mark X1, X2, X3))
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# U102(X1, X2, X3) -> mark# X1)
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# zeros() -> active# zeros())
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# 0() -> active# 0())
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# cons(X1, X2) -> active# cons(mark X1, X2))
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# cons(X1, X2) -> cons#(mark X1, X2))
    (mark# U136(X1, X2, X3, X4) -> mark# X1, mark# cons(X1, X2) -> mark# X1)
    (mark# U22(X1, X2) -> mark# X1, mark# U96 X -> U96# mark X)
    (mark# U22(X1, X2) -> mark# X1, mark# U96 X -> active# U96 mark X)
    (mark# U22(X1, X2) -> mark# X1, mark# U96 X -> mark# X)
    (mark# U22(X1, X2) -> mark# X1, mark# U95(X1, X2) -> U95#(mark X1, X2))
    (mark# U22(X1, X2) -> mark# X1, mark# U95(X1, X2) -> active# U95(mark X1, X2))
    (mark# U22(X1, X2) -> mark# X1, mark# U95(X1, X2) -> mark# X1)
    (mark# U22(X1, X2) -> mark# X1, mark# U94(X1, X2, X3) -> U94#(mark X1, X2, X3))
    (mark# U22(X1, X2) -> mark# X1, mark# U94(X1, X2, X3) -> active# U94(mark X1, X2, X3))
    (mark# U22(X1, X2) -> mark# X1, mark# U94(X1, X2, X3) -> mark# X1)
    (mark# U22(X1, X2) -> mark# X1, mark# U93(X1, X2, X3) -> U93#(mark X1, X2, X3))
    (mark# U22(X1, X2) -> mark# X1, mark# U93(X1, X2, X3) -> active# U93(mark X1, X2, X3))
    (mark# U22(X1, X2) -> mark# X1, mark# U93(X1, X2, X3) -> mark# X1)
    (mark# U22(X1, X2) -> mark# X1, mark# U91(X1, X2, X3) -> U91#(mark X1, X2, X3))
    (mark# U22(X1, X2) -> mark# X1, mark# U91(X1, X2, X3) -> active# U91(mark X1, X2, X3))
    (mark# U22(X1, X2) -> mark# X1, mark# U91(X1, X2, X3) -> mark# X1)
    (mark# U22(X1, X2) -> mark# X1, mark# U92(X1, X2, X3) -> U92#(mark X1, X2, X3))
    (mark# U22(X1, X2) -> mark# X1, mark# U92(X1, X2, X3) -> active# U92(mark X1, X2, X3))
    (mark# U22(X1, X2) -> mark# X1, mark# U92(X1, X2, X3) -> mark# X1)
    (mark# U22(X1, X2) -> mark# X1, mark# U81 X -> U81# mark X)
    (mark# U22(X1, X2) -> mark# X1, mark# U81 X -> active# U81 mark X)
    (mark# U22(X1, X2) -> mark# X1, mark# U81 X -> mark# X)
    (mark# U22(X1, X2) -> mark# X1, mark# U71 X -> U71# mark X)
    (mark# U22(X1, X2) -> mark# X1, mark# U71 X -> active# U71 mark X)
    (mark# U22(X1, X2) -> mark# X1, mark# U71 X -> mark# X)
    (mark# U22(X1, X2) -> mark# X1, mark# U61(X1, X2) -> U61#(mark X1, X2))
    (mark# U22(X1, X2) -> mark# X1, mark# U61(X1, X2) -> active# U61(mark X1, X2))
    (mark# U22(X1, X2) -> mark# X1, mark# U61(X1, X2) -> mark# X1)
    (mark# U22(X1, X2) -> mark# X1, mark# U62 X -> U62# mark X)
    (mark# U22(X1, X2) -> mark# X1, mark# U62 X -> active# U62 mark X)
    (mark# U22(X1, X2) -> mark# X1, mark# U62 X -> mark# X)
    (mark# U22(X1, X2) -> mark# X1, mark# U51(X1, X2) -> U51#(mark X1, X2))
    (mark# U22(X1, X2) -> mark# X1, mark# U51(X1, X2) -> active# U51(mark X1, X2))
    (mark# U22(X1, X2) -> mark# X1, mark# U51(X1, X2) -> mark# X1)
    (mark# U22(X1, X2) -> mark# X1, mark# U52 X -> U52# mark X)
    (mark# U22(X1, X2) -> mark# X1, mark# U52 X -> active# U52 mark X)
    (mark# U22(X1, X2) -> mark# X1, mark# U52 X -> mark# X)
    (mark# U22(X1, X2) -> mark# X1, mark# U46 X -> U46# mark X)
    (mark# U22(X1, X2) -> mark# X1, mark# U46 X -> active# U46 mark X)
    (mark# U22(X1, X2) -> mark# X1, mark# U46 X -> mark# X)
    (mark# U22(X1, X2) -> mark# X1, mark# U45(X1, X2) -> U45#(mark X1, X2))
    (mark# U22(X1, X2) -> mark# X1, mark# U45(X1, X2) -> active# U45(mark X1, X2))
    (mark# U22(X1, X2) -> mark# X1, mark# U45(X1, X2) -> mark# X1)
    (mark# U22(X1, X2) -> mark# X1, mark# U44(X1, X2, X3) -> U44#(mark X1, X2, X3))
    (mark# U22(X1, X2) -> mark# X1, mark# U44(X1, X2, X3) -> active# U44(mark X1, X2, X3))
    (mark# U22(X1, X2) -> mark# X1, mark# U44(X1, X2, X3) -> mark# X1)
    (mark# U22(X1, X2) -> mark# X1, mark# U43(X1, X2, X3) -> U43#(mark X1, X2, X3))
    (mark# U22(X1, X2) -> mark# X1, mark# U43(X1, X2, X3) -> active# U43(mark X1, X2, X3))
    (mark# U22(X1, X2) -> mark# X1, mark# U43(X1, X2, X3) -> mark# X1)
    (mark# U22(X1, X2) -> mark# X1, mark# U41(X1, X2, X3) -> U41#(mark X1, X2, X3))
    (mark# U22(X1, X2) -> mark# X1, mark# U41(X1, X2, X3) -> active# U41(mark X1, X2, X3))
    (mark# U22(X1, X2) -> mark# X1, mark# U41(X1, X2, X3) -> mark# X1)
    (mark# U22(X1, X2) -> mark# X1, mark# U42(X1, X2, X3) -> U42#(mark X1, X2, X3))
    (mark# U22(X1, X2) -> mark# X1, mark# U42(X1, X2, X3) -> active# U42(mark X1, X2, X3))
    (mark# U22(X1, X2) -> mark# X1, mark# U42(X1, X2, X3) -> mark# X1)
    (mark# U22(X1, X2) -> mark# X1, mark# U33 X -> U33# mark X)
    (mark# U22(X1, X2) -> mark# X1, mark# U33 X -> active# U33 mark X)
    (mark# U22(X1, X2) -> mark# X1, mark# U33 X -> mark# X)
    (mark# U22(X1, X2) -> mark# X1, mark# U31(X1, X2) -> U31#(mark X1, X2))
    (mark# U22(X1, X2) -> mark# X1, mark# U31(X1, X2) -> active# U31(mark X1, X2))
    (mark# U22(X1, X2) -> mark# X1, mark# U31(X1, X2) -> mark# X1)
    (mark# U22(X1, X2) -> mark# X1, mark# U32(X1, X2) -> U32#(mark X1, X2))
    (mark# U22(X1, X2) -> mark# X1, mark# U32(X1, X2) -> active# U32(mark X1, X2))
    (mark# U22(X1, X2) -> mark# X1, mark# U32(X1, X2) -> mark# X1)
    (mark# U22(X1, X2) -> mark# X1, mark# U23 X -> U23# mark X)
    (mark# U22(X1, X2) -> mark# X1, mark# U23 X -> active# U23 mark X)
    (mark# U22(X1, X2) -> mark# X1, mark# U23 X -> mark# X)
    (mark# U22(X1, X2) -> mark# X1, mark# U21(X1, X2) -> U21#(mark X1, X2))
    (mark# U22(X1, X2) -> mark# X1, mark# U21(X1, X2) -> active# U21(mark X1, X2))
    (mark# U22(X1, X2) -> mark# X1, mark# U21(X1, X2) -> mark# X1)
    (mark# U22(X1, X2) -> mark# X1, mark# U22(X1, X2) -> U22#(mark X1, X2))
    (mark# U22(X1, X2) -> mark# X1, mark# U22(X1, X2) -> active# U22(mark X1, X2))
    (mark# U22(X1, X2) -> mark# X1, mark# U22(X1, X2) -> mark# X1)
    (mark# U22(X1, X2) -> mark# X1, mark# take(X1, X2) -> take#(mark X1, mark X2))
    (mark# U22(X1, X2) -> mark# X1, mark# take(X1, X2) -> active# take(mark X1, mark X2))
    (mark# U22(X1, X2) -> mark# X1, mark# take(X1, X2) -> mark# X2)
    (mark# U22(X1, X2) -> mark# X1, mark# take(X1, X2) -> mark# X1)
    (mark# U22(X1, X2) -> mark# X1, mark# U136(X1, X2, X3, X4) -> U136#(mark X1, X2, X3, X4))
    (mark# U22(X1, X2) -> mark# X1, mark# U136(X1, X2, X3, X4) -> active# U136(mark X1, X2, X3, X4))
    (mark# U22(X1, X2) -> mark# X1, mark# U136(X1, X2, X3, X4) -> mark# X1)
    (mark# U22(X1, X2) -> mark# X1, mark# U135(X1, X2, X3, X4) -> U135#(mark X1, X2, X3, X4))
    (mark# U22(X1, X2) -> mark# X1, mark# U135(X1, X2, X3, X4) -> active# U135(mark X1, X2, X3, X4))
    (mark# U22(X1, X2) -> mark# X1, mark# U135(X1, X2, X3, X4) -> mark# X1)
    (mark# U22(X1, X2) -> mark# X1, mark# U134(X1, X2, X3, X4) -> U134#(mark X1, X2, X3, X4))
    (mark# U22(X1, X2) -> mark# X1, mark# U134(X1, X2, X3, X4) -> active# U134(mark X1, X2, X3, X4))
    (mark# U22(X1, X2) -> mark# X1, mark# U134(X1, X2, X3, X4) -> mark# X1)
    (mark# U22(X1, X2) -> mark# X1, mark# U133(X1, X2, X3, X4) -> U133#(mark X1, X2, X3, X4))
    (mark# U22(X1, X2) -> mark# X1, mark# U133(X1, X2, X3, X4) -> active# U133(mark X1, X2, X3, X4))
    (mark# U22(X1, X2) -> mark# X1, mark# U133(X1, X2, X3, X4) -> mark# X1)
    (mark# U22(X1, X2) -> mark# X1, mark# U131(X1, X2, X3, X4) -> U131#(mark X1, X2, X3, X4))
    (mark# U22(X1, X2) -> mark# X1, mark# U131(X1, X2, X3, X4) -> active# U131(mark X1, X2, X3, X4))
    (mark# U22(X1, X2) -> mark# X1, mark# U131(X1, X2, X3, X4) -> mark# X1)
    (mark# U22(X1, X2) -> mark# X1, mark# U132(X1, X2, X3, X4) -> U132#(mark X1, X2, X3, X4))
    (mark# U22(X1, X2) -> mark# X1, mark# U132(X1, X2, X3, X4) -> active# U132(mark X1, X2, X3, X4))
    (mark# U22(X1, X2) -> mark# X1, mark# U132(X1, X2, X3, X4) -> mark# X1)
    (mark# U22(X1, X2) -> mark# X1, mark# nil() -> active# nil())
    (mark# U22(X1, X2) -> mark# X1, mark# U121(X1, X2) -> U121#(mark X1, X2))
    (mark# U22(X1, X2) -> mark# X1, mark# U121(X1, X2) -> active# U121(mark X1, X2))
    (mark# U22(X1, X2) -> mark# X1, mark# U121(X1, X2) -> mark# X1)
    (mark# U22(X1, X2) -> mark# X1, mark# U122 X -> U122# mark X)
    (mark# U22(X1, X2) -> mark# X1, mark# U122 X -> active# U122 mark X)
    (mark# U22(X1, X2) -> mark# X1, mark# U122 X -> mark# X)
    (mark# U22(X1, X2) -> mark# X1, mark# isNatList X -> active# isNatList X)
    (mark# U22(X1, X2) -> mark# X1, mark# U13 X -> U13# mark X)
    (mark# U22(X1, X2) -> mark# X1, mark# U13 X -> active# U13 mark X)
    (mark# U22(X1, X2) -> mark# X1, mark# U13 X -> mark# X)
    (mark# U22(X1, X2) -> mark# X1, mark# length X -> length# mark X)
    (mark# U22(X1, X2) -> mark# X1, mark# length X -> active# length mark X)
    (mark# U22(X1, X2) -> mark# X1, mark# length X -> mark# X)
    (mark# U22(X1, X2) -> mark# X1, mark# s X -> s# mark X)
    (mark# U22(X1, X2) -> mark# X1, mark# s X -> active# s mark X)
    (mark# U22(X1, X2) -> mark# X1, mark# s X -> mark# X)
    (mark# U22(X1, X2) -> mark# X1, mark# U114(X1, X2) -> U114#(mark X1, X2))
    (mark# U22(X1, X2) -> mark# X1, mark# U114(X1, X2) -> active# U114(mark X1, X2))
    (mark# U22(X1, X2) -> mark# X1, mark# U114(X1, X2) -> mark# X1)
    (mark# U22(X1, X2) -> mark# X1, mark# U113(X1, X2, X3) -> U113#(mark X1, X2, X3))
    (mark# U22(X1, X2) -> mark# X1, mark# U113(X1, X2, X3) -> active# U113(mark X1, X2, X3))
    (mark# U22(X1, X2) -> mark# X1, mark# U113(X1, X2, X3) -> mark# X1)
    (mark# U22(X1, X2) -> mark# X1, mark# U111(X1, X2, X3) -> U111#(mark X1, X2, X3))
    (mark# U22(X1, X2) -> mark# X1, mark# U111(X1, X2, X3) -> active# U111(mark X1, X2, X3))
    (mark# U22(X1, X2) -> mark# X1, mark# U111(X1, X2, X3) -> mark# X1)
    (mark# U22(X1, X2) -> mark# X1, mark# U112(X1, X2, X3) -> U112#(mark X1, X2, X3))
    (mark# U22(X1, X2) -> mark# X1, mark# U112(X1, X2, X3) -> active# U112(mark X1, X2, X3))
    (mark# U22(X1, X2) -> mark# X1, mark# U112(X1, X2, X3) -> mark# X1)
    (mark# U22(X1, X2) -> mark# X1, mark# U11(X1, X2) -> U11#(mark X1, X2))
    (mark# U22(X1, X2) -> mark# X1, mark# U11(X1, X2) -> active# U11(mark X1, X2))
    (mark# U22(X1, X2) -> mark# X1, mark# U11(X1, X2) -> mark# X1)
    (mark# U22(X1, X2) -> mark# X1, mark# U12(X1, X2) -> U12#(mark X1, X2))
    (mark# U22(X1, X2) -> mark# X1, mark# U12(X1, X2) -> active# U12(mark X1, X2))
    (mark# U22(X1, X2) -> mark# X1, mark# U12(X1, X2) -> mark# X1)
    (mark# U22(X1, X2) -> mark# X1, mark# isNatIList X -> active# isNatIList X)
    (mark# U22(X1, X2) -> mark# X1, mark# U106 X -> U106# mark X)
    (mark# U22(X1, X2) -> mark# X1, mark# U106 X -> active# U106 mark X)
    (mark# U22(X1, X2) -> mark# X1, mark# U106 X -> mark# X)
    (mark# U22(X1, X2) -> mark# X1, mark# isNat X -> active# isNat X)
    (mark# U22(X1, X2) -> mark# X1, mark# U105(X1, X2) -> U105#(mark X1, X2))
    (mark# U22(X1, X2) -> mark# X1, mark# U105(X1, X2) -> active# U105(mark X1, X2))
    (mark# U22(X1, X2) -> mark# X1, mark# U105(X1, X2) -> mark# X1)
    (mark# U22(X1, X2) -> mark# X1, mark# U104(X1, X2, X3) -> U104#(mark X1, X2, X3))
    (mark# U22(X1, X2) -> mark# X1, mark# U104(X1, X2, X3) -> active# U104(mark X1, X2, X3))
    (mark# U22(X1, X2) -> mark# X1, mark# U104(X1, X2, X3) -> mark# X1)
    (mark# U22(X1, X2) -> mark# X1, mark# isNatIListKind X -> active# isNatIListKind X)
    (mark# U22(X1, X2) -> mark# X1, mark# U103(X1, X2, X3) -> U103#(mark X1, X2, X3))
    (mark# U22(X1, X2) -> mark# X1, mark# U103(X1, X2, X3) -> active# U103(mark X1, X2, X3))
    (mark# U22(X1, X2) -> mark# X1, mark# U103(X1, X2, X3) -> mark# X1)
    (mark# U22(X1, X2) -> mark# X1, mark# tt() -> active# tt())
    (mark# U22(X1, X2) -> mark# X1, mark# U101(X1, X2, X3) -> U101#(mark X1, X2, X3))
    (mark# U22(X1, X2) -> mark# X1, mark# U101(X1, X2, X3) -> active# U101(mark X1, X2, X3))
    (mark# U22(X1, X2) -> mark# X1, mark# U101(X1, X2, X3) -> mark# X1)
    (mark# U22(X1, X2) -> mark# X1, mark# isNatKind X -> active# isNatKind X)
    (mark# U22(X1, X2) -> mark# X1, mark# U102(X1, X2, X3) -> U102#(mark X1, X2, X3))
    (mark# U22(X1, X2) -> mark# X1, mark# U102(X1, X2, X3) -> active# U102(mark X1, X2, X3))
    (mark# U22(X1, X2) -> mark# X1, mark# U102(X1, X2, X3) -> mark# X1)
    (mark# U22(X1, X2) -> mark# X1, mark# zeros() -> active# zeros())
    (mark# U22(X1, X2) -> mark# X1, mark# 0() -> active# 0())
    (mark# U22(X1, X2) -> mark# X1, mark# cons(X1, X2) -> active# cons(mark X1, X2))
    (mark# U22(X1, X2) -> mark# X1, mark# cons(X1, X2) -> cons#(mark X1, X2))
    (mark# U22(X1, X2) -> mark# X1, mark# cons(X1, X2) -> mark# X1)
    (mark# U32(X1, X2) -> mark# X1, mark# U96 X -> U96# mark X)
    (mark# U32(X1, X2) -> mark# X1, mark# U96 X -> active# U96 mark X)
    (mark# U32(X1, X2) -> mark# X1, mark# U96 X -> mark# X)
    (mark# U32(X1, X2) -> mark# X1, mark# U95(X1, X2) -> U95#(mark X1, X2))
    (mark# U32(X1, X2) -> mark# X1, mark# U95(X1, X2) -> active# U95(mark X1, X2))
    (mark# U32(X1, X2) -> mark# X1, mark# U95(X1, X2) -> mark# X1)
    (mark# U32(X1, X2) -> mark# X1, mark# U94(X1, X2, X3) -> U94#(mark X1, X2, X3))
    (mark# U32(X1, X2) -> mark# X1, mark# U94(X1, X2, X3) -> active# U94(mark X1, X2, X3))
    (mark# U32(X1, X2) -> mark# X1, mark# U94(X1, X2, X3) -> mark# X1)
    (mark# U32(X1, X2) -> mark# X1, mark# U93(X1, X2, X3) -> U93#(mark X1, X2, X3))
    (mark# U32(X1, X2) -> mark# X1, mark# U93(X1, X2, X3) -> active# U93(mark X1, X2, X3))
    (mark# U32(X1, X2) -> mark# X1, mark# U93(X1, X2, X3) -> mark# X1)
    (mark# U32(X1, X2) -> mark# X1, mark# U91(X1, X2, X3) -> U91#(mark X1, X2, X3))
    (mark# U32(X1, X2) -> mark# X1, mark# U91(X1, X2, X3) -> active# U91(mark X1, X2, X3))
    (mark# U32(X1, X2) -> mark# X1, mark# U91(X1, X2, X3) -> mark# X1)
    (mark# U32(X1, X2) -> mark# X1, mark# U92(X1, X2, X3) -> U92#(mark X1, X2, X3))
    (mark# U32(X1, X2) -> mark# X1, mark# U92(X1, X2, X3) -> active# U92(mark X1, X2, X3))
    (mark# U32(X1, X2) -> mark# X1, mark# U92(X1, X2, X3) -> mark# X1)
    (mark# U32(X1, X2) -> mark# X1, mark# U81 X -> U81# mark X)
    (mark# U32(X1, X2) -> mark# X1, mark# U81 X -> active# U81 mark X)
    (mark# U32(X1, X2) -> mark# X1, mark# U81 X -> mark# X)
    (mark# U32(X1, X2) -> mark# X1, mark# U71 X -> U71# mark X)
    (mark# U32(X1, X2) -> mark# X1, mark# U71 X -> active# U71 mark X)
    (mark# U32(X1, X2) -> mark# X1, mark# U71 X -> mark# X)
    (mark# U32(X1, X2) -> mark# X1, mark# U61(X1, X2) -> U61#(mark X1, X2))
    (mark# U32(X1, X2) -> mark# X1, mark# U61(X1, X2) -> active# U61(mark X1, X2))
    (mark# U32(X1, X2) -> mark# X1, mark# U61(X1, X2) -> mark# X1)
    (mark# U32(X1, X2) -> mark# X1, mark# U62 X -> U62# mark X)
    (mark# U32(X1, X2) -> mark# X1, mark# U62 X -> active# U62 mark X)
    (mark# U32(X1, X2) -> mark# X1, mark# U62 X -> mark# X)
    (mark# U32(X1, X2) -> mark# X1, mark# U51(X1, X2) -> U51#(mark X1, X2))
    (mark# U32(X1, X2) -> mark# X1, mark# U51(X1, X2) -> active# U51(mark X1, X2))
    (mark# U32(X1, X2) -> mark# X1, mark# U51(X1, X2) -> mark# X1)
    (mark# U32(X1, X2) -> mark# X1, mark# U52 X -> U52# mark X)
    (mark# U32(X1, X2) -> mark# X1, mark# U52 X -> active# U52 mark X)
    (mark# U32(X1, X2) -> mark# X1, mark# U52 X -> mark# X)
    (mark# U32(X1, X2) -> mark# X1, mark# U46 X -> U46# mark X)
    (mark# U32(X1, X2) -> mark# X1, mark# U46 X -> active# U46 mark X)
    (mark# U32(X1, X2) -> mark# X1, mark# U46 X -> mark# X)
    (mark# U32(X1, X2) -> mark# X1, mark# U45(X1, X2) -> U45#(mark X1, X2))
    (mark# U32(X1, X2) -> mark# X1, mark# U45(X1, X2) -> active# U45(mark X1, X2))
    (mark# U32(X1, X2) -> mark# X1, mark# U45(X1, X2) -> mark# X1)
    (mark# U32(X1, X2) -> mark# X1, mark# U44(X1, X2, X3) -> U44#(mark X1, X2, X3))
    (mark# U32(X1, X2) -> mark# X1, mark# U44(X1, X2, X3) -> active# U44(mark X1, X2, X3))
    (mark# U32(X1, X2) -> mark# X1, mark# U44(X1, X2, X3) -> mark# X1)
    (mark# U32(X1, X2) -> mark# X1, mark# U43(X1, X2, X3) -> U43#(mark X1, X2, X3))
    (mark# U32(X1, X2) -> mark# X1, mark# U43(X1, X2, X3) -> active# U43(mark X1, X2, X3))
    (mark# U32(X1, X2) -> mark# X1, mark# U43(X1, X2, X3) -> mark# X1)
    (mark# U32(X1, X2) -> mark# X1, mark# U41(X1, X2, X3) -> U41#(mark X1, X2, X3))
    (mark# U32(X1, X2) -> mark# X1, mark# U41(X1, X2, X3) -> active# U41(mark X1, X2, X3))
    (mark# U32(X1, X2) -> mark# X1, mark# U41(X1, X2, X3) -> mark# X1)
    (mark# U32(X1, X2) -> mark# X1, mark# U42(X1, X2, X3) -> U42#(mark X1, X2, X3))
    (mark# U32(X1, X2) -> mark# X1, mark# U42(X1, X2, X3) -> active# U42(mark X1, X2, X3))
    (mark# U32(X1, X2) -> mark# X1, mark# U42(X1, X2, X3) -> mark# X1)
    (mark# U32(X1, X2) -> mark# X1, mark# U33 X -> U33# mark X)
    (mark# U32(X1, X2) -> mark# X1, mark# U33 X -> active# U33 mark X)
    (mark# U32(X1, X2) -> mark# X1, mark# U33 X -> mark# X)
    (mark# U32(X1, X2) -> mark# X1, mark# U31(X1, X2) -> U31#(mark X1, X2))
    (mark# U32(X1, X2) -> mark# X1, mark# U31(X1, X2) -> active# U31(mark X1, X2))
    (mark# U32(X1, X2) -> mark# X1, mark# U31(X1, X2) -> mark# X1)
    (mark# U32(X1, X2) -> mark# X1, mark# U32(X1, X2) -> U32#(mark X1, X2))
    (mark# U32(X1, X2) -> mark# X1, mark# U32(X1, X2) -> active# U32(mark X1, X2))
    (mark# U32(X1, X2) -> mark# X1, mark# U32(X1, X2) -> mark# X1)
    (mark# U32(X1, X2) -> mark# X1, mark# U23 X -> U23# mark X)
    (mark# U32(X1, X2) -> mark# X1, mark# U23 X -> active# U23 mark X)
    (mark# U32(X1, X2) -> mark# X1, mark# U23 X -> mark# X)
    (mark# U32(X1, X2) -> mark# X1, mark# U21(X1, X2) -> U21#(mark X1, X2))
    (mark# U32(X1, X2) -> mark# X1, mark# U21(X1, X2) -> active# U21(mark X1, X2))
    (mark# U32(X1, X2) -> mark# X1, mark# U21(X1, X2) -> mark# X1)
    (mark# U32(X1, X2) -> mark# X1, mark# U22(X1, X2) -> U22#(mark X1, X2))
    (mark# U32(X1, X2) -> mark# X1, mark# U22(X1, X2) -> active# U22(mark X1, X2))
    (mark# U32(X1, X2) -> mark# X1, mark# U22(X1, X2) -> mark# X1)
    (mark# U32(X1, X2) -> mark# X1, mark# take(X1, X2) -> take#(mark X1, mark X2))
    (mark# U32(X1, X2) -> mark# X1, mark# take(X1, X2) -> active# take(mark X1, mark X2))
    (mark# U32(X1, X2) -> mark# X1, mark# take(X1, X2) -> mark# X2)
    (mark# U32(X1, X2) -> mark# X1, mark# take(X1, X2) -> mark# X1)
    (mark# U32(X1, X2) -> mark# X1, mark# U136(X1, X2, X3, X4) -> U136#(mark X1, X2, X3, X4))
    (mark# U32(X1, X2) -> mark# X1, mark# U136(X1, X2, X3, X4) -> active# U136(mark X1, X2, X3, X4))
    (mark# U32(X1, X2) -> mark# X1, mark# U136(X1, X2, X3, X4) -> mark# X1)
    (mark# U32(X1, X2) -> mark# X1, mark# U135(X1, X2, X3, X4) -> U135#(mark X1, X2, X3, X4))
    (mark# U32(X1, X2) -> mark# X1, mark# U135(X1, X2, X3, X4) -> active# U135(mark X1, X2, X3, X4))
    (mark# U32(X1, X2) -> mark# X1, mark# U135(X1, X2, X3, X4) -> mark# X1)
    (mark# U32(X1, X2) -> mark# X1, mark# U134(X1, X2, X3, X4) -> U134#(mark X1, X2, X3, X4))
    (mark# U32(X1, X2) -> mark# X1, mark# U134(X1, X2, X3, X4) -> active# U134(mark X1, X2, X3, X4))
    (mark# U32(X1, X2) -> mark# X1, mark# U134(X1, X2, X3, X4) -> mark# X1)
    (mark# U32(X1, X2) -> mark# X1, mark# U133(X1, X2, X3, X4) -> U133#(mark X1, X2, X3, X4))
    (mark# U32(X1, X2) -> mark# X1, mark# U133(X1, X2, X3, X4) -> active# U133(mark X1, X2, X3, X4))
    (mark# U32(X1, X2) -> mark# X1, mark# U133(X1, X2, X3, X4) -> mark# X1)
    (mark# U32(X1, X2) -> mark# X1, mark# U131(X1, X2, X3, X4) -> U131#(mark X1, X2, X3, X4))
    (mark# U32(X1, X2) -> mark# X1, mark# U131(X1, X2, X3, X4) -> active# U131(mark X1, X2, X3, X4))
    (mark# U32(X1, X2) -> mark# X1, mark# U131(X1, X2, X3, X4) -> mark# X1)
    (mark# U32(X1, X2) -> mark# X1, mark# U132(X1, X2, X3, X4) -> U132#(mark X1, X2, X3, X4))
    (mark# U32(X1, X2) -> mark# X1, mark# U132(X1, X2, X3, X4) -> active# U132(mark X1, X2, X3, X4))
    (mark# U32(X1, X2) -> mark# X1, mark# U132(X1, X2, X3, X4) -> mark# X1)
    (mark# U32(X1, X2) -> mark# X1, mark# nil() -> active# nil())
    (mark# U32(X1, X2) -> mark# X1, mark# U121(X1, X2) -> U121#(mark X1, X2))
    (mark# U32(X1, X2) -> mark# X1, mark# U121(X1, X2) -> active# U121(mark X1, X2))
    (mark# U32(X1, X2) -> mark# X1, mark# U121(X1, X2) -> mark# X1)
    (mark# U32(X1, X2) -> mark# X1, mark# U122 X -> U122# mark X)
    (mark# U32(X1, X2) -> mark# X1, mark# U122 X -> active# U122 mark X)
    (mark# U32(X1, X2) -> mark# X1, mark# U122 X -> mark# X)
    (mark# U32(X1, X2) -> mark# X1, mark# isNatList X -> active# isNatList X)
    (mark# U32(X1, X2) -> mark# X1, mark# U13 X -> U13# mark X)
    (mark# U32(X1, X2) -> mark# X1, mark# U13 X -> active# U13 mark X)
    (mark# U32(X1, X2) -> mark# X1, mark# U13 X -> mark# X)
    (mark# U32(X1, X2) -> mark# X1, mark# length X -> length# mark X)
    (mark# U32(X1, X2) -> mark# X1, mark# length X -> active# length mark X)
    (mark# U32(X1, X2) -> mark# X1, mark# length X -> mark# X)
    (mark# U32(X1, X2) -> mark# X1, mark# s X -> s# mark X)
    (mark# U32(X1, X2) -> mark# X1, mark# s X -> active# s mark X)
    (mark# U32(X1, X2) -> mark# X1, mark# s X -> mark# X)
    (mark# U32(X1, X2) -> mark# X1, mark# U114(X1, X2) -> U114#(mark X1, X2))
    (mark# U32(X1, X2) -> mark# X1, mark# U114(X1, X2) -> active# U114(mark X1, X2))
    (mark# U32(X1, X2) -> mark# X1, mark# U114(X1, X2) -> mark# X1)
    (mark# U32(X1, X2) -> mark# X1, mark# U113(X1, X2, X3) -> U113#(mark X1, X2, X3))
    (mark# U32(X1, X2) -> mark# X1, mark# U113(X1, X2, X3) -> active# U113(mark X1, X2, X3))
    (mark# U32(X1, X2) -> mark# X1, mark# U113(X1, X2, X3) -> mark# X1)
    (mark# U32(X1, X2) -> mark# X1, mark# U111(X1, X2, X3) -> U111#(mark X1, X2, X3))
    (mark# U32(X1, X2) -> mark# X1, mark# U111(X1, X2, X3) -> active# U111(mark X1, X2, X3))
    (mark# U32(X1, X2) -> mark# X1, mark# U111(X1, X2, X3) -> mark# X1)
    (mark# U32(X1, X2) -> mark# X1, mark# U112(X1, X2, X3) -> U112#(mark X1, X2, X3))
    (mark# U32(X1, X2) -> mark# X1, mark# U112(X1, X2, X3) -> active# U112(mark X1, X2, X3))
    (mark# U32(X1, X2) -> mark# X1, mark# U112(X1, X2, X3) -> mark# X1)
    (mark# U32(X1, X2) -> mark# X1, mark# U11(X1, X2) -> U11#(mark X1, X2))
    (mark# U32(X1, X2) -> mark# X1, mark# U11(X1, X2) -> active# U11(mark X1, X2))
    (mark# U32(X1, X2) -> mark# X1, mark# U11(X1, X2) -> mark# X1)
    (mark# U32(X1, X2) -> mark# X1, mark# U12(X1, X2) -> U12#(mark X1, X2))
    (mark# U32(X1, X2) -> mark# X1, mark# U12(X1, X2) -> active# U12(mark X1, X2))
    (mark# U32(X1, X2) -> mark# X1, mark# U12(X1, X2) -> mark# X1)
    (mark# U32(X1, X2) -> mark# X1, mark# isNatIList X -> active# isNatIList X)
    (mark# U32(X1, X2) -> mark# X1, mark# U106 X -> U106# mark X)
    (mark# U32(X1, X2) -> mark# X1, mark# U106 X -> active# U106 mark X)
    (mark# U32(X1, X2) -> mark# X1, mark# U106 X -> mark# X)
    (mark# U32(X1, X2) -> mark# X1, mark# isNat X -> active# isNat X)
    (mark# U32(X1, X2) -> mark# X1, mark# U105(X1, X2) -> U105#(mark X1, X2))
    (mark# U32(X1, X2) -> mark# X1, mark# U105(X1, X2) -> active# U105(mark X1, X2))
    (mark# U32(X1, X2) -> mark# X1, mark# U105(X1, X2) -> mark# X1)
    (mark# U32(X1, X2) -> mark# X1, mark# U104(X1, X2, X3) -> U104#(mark X1, X2, X3))
    (mark# U32(X1, X2) -> mark# X1, mark# U104(X1, X2, X3) -> active# U104(mark X1, X2, X3))
    (mark# U32(X1, X2) -> mark# X1, mark# U104(X1, X2, X3) -> mark# X1)
    (mark# U32(X1, X2) -> mark# X1, mark# isNatIListKind X -> active# isNatIListKind X)
    (mark# U32(X1, X2) -> mark# X1, mark# U103(X1, X2, X3) -> U103#(mark X1, X2, X3))
    (mark# U32(X1, X2) -> mark# X1, mark# U103(X1, X2, X3) -> active# U103(mark X1, X2, X3))
    (mark# U32(X1, X2) -> mark# X1, mark# U103(X1, X2, X3) -> mark# X1)
    (mark# U32(X1, X2) -> mark# X1, mark# tt() -> active# tt())
    (mark# U32(X1, X2) -> mark# X1, mark# U101(X1, X2, X3) -> U101#(mark X1, X2, X3))
    (mark# U32(X1, X2) -> mark# X1, mark# U101(X1, X2, X3) -> active# U101(mark X1, X2, X3))
    (mark# U32(X1, X2) -> mark# X1, mark# U101(X1, X2, X3) -> mark# X1)
    (mark# U32(X1, X2) -> mark# X1, mark# isNatKind X -> active# isNatKind X)
    (mark# U32(X1, X2) -> mark# X1, mark# U102(X1, X2, X3) -> U102#(mark X1, X2, X3))
    (mark# U32(X1, X2) -> mark# X1, mark# U102(X1, X2, X3) -> active# U102(mark X1, X2, X3))
    (mark# U32(X1, X2) -> mark# X1, mark# U102(X1, X2, X3) -> mark# X1)
    (mark# U32(X1, X2) -> mark# X1, mark# zeros() -> active# zeros())
    (mark# U32(X1, X2) -> mark# X1, mark# 0() -> active# 0())
    (mark# U32(X1, X2) -> mark# X1, mark# cons(X1, X2) -> active# cons(mark X1, X2))
    (mark# U32(X1, X2) -> mark# X1, mark# cons(X1, X2) -> cons#(mark X1, X2))
    (mark# U32(X1, X2) -> mark# X1, mark# cons(X1, X2) -> mark# X1)
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U96 X -> U96# mark X)
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U96 X -> active# U96 mark X)
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U96 X -> mark# X)
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U95(X1, X2) -> U95#(mark X1, X2))
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U95(X1, X2) -> active# U95(mark X1, X2))
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U95(X1, X2) -> mark# X1)
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U94(X1, X2, X3) -> U94#(mark X1, X2, X3))
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U94(X1, X2, X3) -> active# U94(mark X1, X2, X3))
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U94(X1, X2, X3) -> mark# X1)
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U93(X1, X2, X3) -> U93#(mark X1, X2, X3))
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U93(X1, X2, X3) -> active# U93(mark X1, X2, X3))
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U93(X1, X2, X3) -> mark# X1)
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U91(X1, X2, X3) -> U91#(mark X1, X2, X3))
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U91(X1, X2, X3) -> active# U91(mark X1, X2, X3))
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U91(X1, X2, X3) -> mark# X1)
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U92(X1, X2, X3) -> U92#(mark X1, X2, X3))
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U92(X1, X2, X3) -> active# U92(mark X1, X2, X3))
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U92(X1, X2, X3) -> mark# X1)
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U81 X -> U81# mark X)
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U81 X -> active# U81 mark X)
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U81 X -> mark# X)
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U71 X -> U71# mark X)
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U71 X -> active# U71 mark X)
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U71 X -> mark# X)
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U61(X1, X2) -> U61#(mark X1, X2))
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U61(X1, X2) -> active# U61(mark X1, X2))
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U61(X1, X2) -> mark# X1)
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U62 X -> U62# mark X)
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U62 X -> active# U62 mark X)
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U62 X -> mark# X)
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U51(X1, X2) -> U51#(mark X1, X2))
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U51(X1, X2) -> active# U51(mark X1, X2))
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U51(X1, X2) -> mark# X1)
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U52 X -> U52# mark X)
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U52 X -> active# U52 mark X)
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U52 X -> mark# X)
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U46 X -> U46# mark X)
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U46 X -> active# U46 mark X)
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U46 X -> mark# X)
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U45(X1, X2) -> U45#(mark X1, X2))
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U45(X1, X2) -> active# U45(mark X1, X2))
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U45(X1, X2) -> mark# X1)
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U44(X1, X2, X3) -> U44#(mark X1, X2, X3))
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U44(X1, X2, X3) -> active# U44(mark X1, X2, X3))
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U44(X1, X2, X3) -> mark# X1)
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U43(X1, X2, X3) -> U43#(mark X1, X2, X3))
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U43(X1, X2, X3) -> active# U43(mark X1, X2, X3))
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U43(X1, X2, X3) -> mark# X1)
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U41(X1, X2, X3) -> U41#(mark X1, X2, X3))
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U41(X1, X2, X3) -> active# U41(mark X1, X2, X3))
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U41(X1, X2, X3) -> mark# X1)
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U42(X1, X2, X3) -> U42#(mark X1, X2, X3))
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U42(X1, X2, X3) -> active# U42(mark X1, X2, X3))
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U42(X1, X2, X3) -> mark# X1)
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U33 X -> U33# mark X)
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U33 X -> active# U33 mark X)
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U33 X -> mark# X)
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U31(X1, X2) -> U31#(mark X1, X2))
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U31(X1, X2) -> active# U31(mark X1, X2))
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U31(X1, X2) -> mark# X1)
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U32(X1, X2) -> U32#(mark X1, X2))
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U32(X1, X2) -> active# U32(mark X1, X2))
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U32(X1, X2) -> mark# X1)
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U23 X -> U23# mark X)
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U23 X -> active# U23 mark X)
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U23 X -> mark# X)
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U21(X1, X2) -> U21#(mark X1, X2))
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U21(X1, X2) -> active# U21(mark X1, X2))
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U21(X1, X2) -> mark# X1)
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U22(X1, X2) -> U22#(mark X1, X2))
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U22(X1, X2) -> active# U22(mark X1, X2))
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U22(X1, X2) -> mark# X1)
    (mark# U42(X1, X2, X3) -> mark# X1, mark# take(X1, X2) -> take#(mark X1, mark X2))
    (mark# U42(X1, X2, X3) -> mark# X1, mark# take(X1, X2) -> active# take(mark X1, mark X2))
    (mark# U42(X1, X2, X3) -> mark# X1, mark# take(X1, X2) -> mark# X2)
    (mark# U42(X1, X2, X3) -> mark# X1, mark# take(X1, X2) -> mark# X1)
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U136(X1, X2, X3, X4) -> U136#(mark X1, X2, X3, X4))
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U136(X1, X2, X3, X4) -> active# U136(mark X1, X2, X3, X4))
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U136(X1, X2, X3, X4) -> mark# X1)
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U135(X1, X2, X3, X4) -> U135#(mark X1, X2, X3, X4))
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U135(X1, X2, X3, X4) -> active# U135(mark X1, X2, X3, X4))
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U135(X1, X2, X3, X4) -> mark# X1)
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U134(X1, X2, X3, X4) -> U134#(mark X1, X2, X3, X4))
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U134(X1, X2, X3, X4) -> active# U134(mark X1, X2, X3, X4))
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U134(X1, X2, X3, X4) -> mark# X1)
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U133(X1, X2, X3, X4) -> U133#(mark X1, X2, X3, X4))
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U133(X1, X2, X3, X4) -> active# U133(mark X1, X2, X3, X4))
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U133(X1, X2, X3, X4) -> mark# X1)
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U131(X1, X2, X3, X4) -> U131#(mark X1, X2, X3, X4))
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U131(X1, X2, X3, X4) -> active# U131(mark X1, X2, X3, X4))
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U131(X1, X2, X3, X4) -> mark# X1)
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U132(X1, X2, X3, X4) -> U132#(mark X1, X2, X3, X4))
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U132(X1, X2, X3, X4) -> active# U132(mark X1, X2, X3, X4))
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U132(X1, X2, X3, X4) -> mark# X1)
    (mark# U42(X1, X2, X3) -> mark# X1, mark# nil() -> active# nil())
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U121(X1, X2) -> U121#(mark X1, X2))
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U121(X1, X2) -> active# U121(mark X1, X2))
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U121(X1, X2) -> mark# X1)
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U122 X -> U122# mark X)
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U122 X -> active# U122 mark X)
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U122 X -> mark# X)
    (mark# U42(X1, X2, X3) -> mark# X1, mark# isNatList X -> active# isNatList X)
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U13 X -> U13# mark X)
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U13 X -> active# U13 mark X)
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U13 X -> mark# X)
    (mark# U42(X1, X2, X3) -> mark# X1, mark# length X -> length# mark X)
    (mark# U42(X1, X2, X3) -> mark# X1, mark# length X -> active# length mark X)
    (mark# U42(X1, X2, X3) -> mark# X1, mark# length X -> mark# X)
    (mark# U42(X1, X2, X3) -> mark# X1, mark# s X -> s# mark X)
    (mark# U42(X1, X2, X3) -> mark# X1, mark# s X -> active# s mark X)
    (mark# U42(X1, X2, X3) -> mark# X1, mark# s X -> mark# X)
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U114(X1, X2) -> U114#(mark X1, X2))
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U114(X1, X2) -> active# U114(mark X1, X2))
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U114(X1, X2) -> mark# X1)
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U113(X1, X2, X3) -> U113#(mark X1, X2, X3))
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U113(X1, X2, X3) -> active# U113(mark X1, X2, X3))
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U113(X1, X2, X3) -> mark# X1)
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U111(X1, X2, X3) -> U111#(mark X1, X2, X3))
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U111(X1, X2, X3) -> active# U111(mark X1, X2, X3))
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U111(X1, X2, X3) -> mark# X1)
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U112(X1, X2, X3) -> U112#(mark X1, X2, X3))
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U112(X1, X2, X3) -> active# U112(mark X1, X2, X3))
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U112(X1, X2, X3) -> mark# X1)
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U11(X1, X2) -> U11#(mark X1, X2))
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U11(X1, X2) -> active# U11(mark X1, X2))
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U11(X1, X2) -> mark# X1)
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U12(X1, X2) -> U12#(mark X1, X2))
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U12(X1, X2) -> active# U12(mark X1, X2))
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U12(X1, X2) -> mark# X1)
    (mark# U42(X1, X2, X3) -> mark# X1, mark# isNatIList X -> active# isNatIList X)
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U106 X -> U106# mark X)
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U106 X -> active# U106 mark X)
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U106 X -> mark# X)
    (mark# U42(X1, X2, X3) -> mark# X1, mark# isNat X -> active# isNat X)
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U105(X1, X2) -> U105#(mark X1, X2))
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U105(X1, X2) -> active# U105(mark X1, X2))
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U105(X1, X2) -> mark# X1)
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U104(X1, X2, X3) -> U104#(mark X1, X2, X3))
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U104(X1, X2, X3) -> active# U104(mark X1, X2, X3))
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U104(X1, X2, X3) -> mark# X1)
    (mark# U42(X1, X2, X3) -> mark# X1, mark# isNatIListKind X -> active# isNatIListKind X)
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U103(X1, X2, X3) -> U103#(mark X1, X2, X3))
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U103(X1, X2, X3) -> active# U103(mark X1, X2, X3))
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U103(X1, X2, X3) -> mark# X1)
    (mark# U42(X1, X2, X3) -> mark# X1, mark# tt() -> active# tt())
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U101(X1, X2, X3) -> U101#(mark X1, X2, X3))
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U101(X1, X2, X3) -> active# U101(mark X1, X2, X3))
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U101(X1, X2, X3) -> mark# X1)
    (mark# U42(X1, X2, X3) -> mark# X1, mark# isNatKind X -> active# isNatKind X)
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U102(X1, X2, X3) -> U102#(mark X1, X2, X3))
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U102(X1, X2, X3) -> active# U102(mark X1, X2, X3))
    (mark# U42(X1, X2, X3) -> mark# X1, mark# U102(X1, X2, X3) -> mark# X1)
    (mark# U42(X1, X2, X3) -> mark# X1, mark# zeros() -> active# zeros())
    (mark# U42(X1, X2, X3) -> mark# X1, mark# 0() -> active# 0())
    (mark# U42(X1, X2, X3) -> mark# X1, mark# cons(X1, X2) -> active# cons(mark X1, X2))
    (mark# U42(X1, X2, X3) -> mark# X1, mark# cons(X1, X2) -> cons#(mark X1, X2))
    (mark# U42(X1, X2, X3) -> mark# X1, mark# cons(X1, X2) -> mark# X1)
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U96 X -> U96# mark X)
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U96 X -> active# U96 mark X)
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U96 X -> mark# X)
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U95(X1, X2) -> U95#(mark X1, X2))
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U95(X1, X2) -> active# U95(mark X1, X2))
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U95(X1, X2) -> mark# X1)
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U94(X1, X2, X3) -> U94#(mark X1, X2, X3))
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U94(X1, X2, X3) -> active# U94(mark X1, X2, X3))
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U94(X1, X2, X3) -> mark# X1)
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U93(X1, X2, X3) -> U93#(mark X1, X2, X3))
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U93(X1, X2, X3) -> active# U93(mark X1, X2, X3))
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U93(X1, X2, X3) -> mark# X1)
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U91(X1, X2, X3) -> U91#(mark X1, X2, X3))
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U91(X1, X2, X3) -> active# U91(mark X1, X2, X3))
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U91(X1, X2, X3) -> mark# X1)
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U92(X1, X2, X3) -> U92#(mark X1, X2, X3))
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U92(X1, X2, X3) -> active# U92(mark X1, X2, X3))
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U92(X1, X2, X3) -> mark# X1)
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U81 X -> U81# mark X)
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U81 X -> active# U81 mark X)
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U81 X -> mark# X)
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U71 X -> U71# mark X)
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U71 X -> active# U71 mark X)
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U71 X -> mark# X)
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U61(X1, X2) -> U61#(mark X1, X2))
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U61(X1, X2) -> active# U61(mark X1, X2))
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U61(X1, X2) -> mark# X1)
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U62 X -> U62# mark X)
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U62 X -> active# U62 mark X)
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U62 X -> mark# X)
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U51(X1, X2) -> U51#(mark X1, X2))
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U51(X1, X2) -> active# U51(mark X1, X2))
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U51(X1, X2) -> mark# X1)
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U52 X -> U52# mark X)
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U52 X -> active# U52 mark X)
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U52 X -> mark# X)
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U46 X -> U46# mark X)
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U46 X -> active# U46 mark X)
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U46 X -> mark# X)
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U45(X1, X2) -> U45#(mark X1, X2))
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U45(X1, X2) -> active# U45(mark X1, X2))
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U45(X1, X2) -> mark# X1)
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U44(X1, X2, X3) -> U44#(mark X1, X2, X3))
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U44(X1, X2, X3) -> active# U44(mark X1, X2, X3))
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U44(X1, X2, X3) -> mark# X1)
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U43(X1, X2, X3) -> U43#(mark X1, X2, X3))
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U43(X1, X2, X3) -> active# U43(mark X1, X2, X3))
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U43(X1, X2, X3) -> mark# X1)
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U41(X1, X2, X3) -> U41#(mark X1, X2, X3))
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U41(X1, X2, X3) -> active# U41(mark X1, X2, X3))
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U41(X1, X2, X3) -> mark# X1)
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U42(X1, X2, X3) -> U42#(mark X1, X2, X3))
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U42(X1, X2, X3) -> active# U42(mark X1, X2, X3))
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U42(X1, X2, X3) -> mark# X1)
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U33 X -> U33# mark X)
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U33 X -> active# U33 mark X)
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U33 X -> mark# X)
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U31(X1, X2) -> U31#(mark X1, X2))
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U31(X1, X2) -> active# U31(mark X1, X2))
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U31(X1, X2) -> mark# X1)
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U32(X1, X2) -> U32#(mark X1, X2))
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U32(X1, X2) -> active# U32(mark X1, X2))
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U32(X1, X2) -> mark# X1)
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U23 X -> U23# mark X)
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U23 X -> active# U23 mark X)
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U23 X -> mark# X)
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U21(X1, X2) -> U21#(mark X1, X2))
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U21(X1, X2) -> active# U21(mark X1, X2))
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U21(X1, X2) -> mark# X1)
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U22(X1, X2) -> U22#(mark X1, X2))
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U22(X1, X2) -> active# U22(mark X1, X2))
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U22(X1, X2) -> mark# X1)
    (mark# U43(X1, X2, X3) -> mark# X1, mark# take(X1, X2) -> take#(mark X1, mark X2))
    (mark# U43(X1, X2, X3) -> mark# X1, mark# take(X1, X2) -> active# take(mark X1, mark X2))
    (mark# U43(X1, X2, X3) -> mark# X1, mark# take(X1, X2) -> mark# X2)
    (mark# U43(X1, X2, X3) -> mark# X1, mark# take(X1, X2) -> mark# X1)
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U136(X1, X2, X3, X4) -> U136#(mark X1, X2, X3, X4))
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U136(X1, X2, X3, X4) -> active# U136(mark X1, X2, X3, X4))
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U136(X1, X2, X3, X4) -> mark# X1)
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U135(X1, X2, X3, X4) -> U135#(mark X1, X2, X3, X4))
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U135(X1, X2, X3, X4) -> active# U135(mark X1, X2, X3, X4))
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U135(X1, X2, X3, X4) -> mark# X1)
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U134(X1, X2, X3, X4) -> U134#(mark X1, X2, X3, X4))
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U134(X1, X2, X3, X4) -> active# U134(mark X1, X2, X3, X4))
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U134(X1, X2, X3, X4) -> mark# X1)
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U133(X1, X2, X3, X4) -> U133#(mark X1, X2, X3, X4))
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U133(X1, X2, X3, X4) -> active# U133(mark X1, X2, X3, X4))
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U133(X1, X2, X3, X4) -> mark# X1)
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U131(X1, X2, X3, X4) -> U131#(mark X1, X2, X3, X4))
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U131(X1, X2, X3, X4) -> active# U131(mark X1, X2, X3, X4))
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U131(X1, X2, X3, X4) -> mark# X1)
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U132(X1, X2, X3, X4) -> U132#(mark X1, X2, X3, X4))
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U132(X1, X2, X3, X4) -> active# U132(mark X1, X2, X3, X4))
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U132(X1, X2, X3, X4) -> mark# X1)
    (mark# U43(X1, X2, X3) -> mark# X1, mark# nil() -> active# nil())
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U121(X1, X2) -> U121#(mark X1, X2))
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U121(X1, X2) -> active# U121(mark X1, X2))
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U121(X1, X2) -> mark# X1)
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U122 X -> U122# mark X)
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U122 X -> active# U122 mark X)
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U122 X -> mark# X)
    (mark# U43(X1, X2, X3) -> mark# X1, mark# isNatList X -> active# isNatList X)
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U13 X -> U13# mark X)
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U13 X -> active# U13 mark X)
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U13 X -> mark# X)
    (mark# U43(X1, X2, X3) -> mark# X1, mark# length X -> length# mark X)
    (mark# U43(X1, X2, X3) -> mark# X1, mark# length X -> active# length mark X)
    (mark# U43(X1, X2, X3) -> mark# X1, mark# length X -> mark# X)
    (mark# U43(X1, X2, X3) -> mark# X1, mark# s X -> s# mark X)
    (mark# U43(X1, X2, X3) -> mark# X1, mark# s X -> active# s mark X)
    (mark# U43(X1, X2, X3) -> mark# X1, mark# s X -> mark# X)
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U114(X1, X2) -> U114#(mark X1, X2))
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U114(X1, X2) -> active# U114(mark X1, X2))
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U114(X1, X2) -> mark# X1)
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U113(X1, X2, X3) -> U113#(mark X1, X2, X3))
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U113(X1, X2, X3) -> active# U113(mark X1, X2, X3))
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U113(X1, X2, X3) -> mark# X1)
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U111(X1, X2, X3) -> U111#(mark X1, X2, X3))
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U111(X1, X2, X3) -> active# U111(mark X1, X2, X3))
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U111(X1, X2, X3) -> mark# X1)
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U112(X1, X2, X3) -> U112#(mark X1, X2, X3))
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U112(X1, X2, X3) -> active# U112(mark X1, X2, X3))
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U112(X1, X2, X3) -> mark# X1)
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U11(X1, X2) -> U11#(mark X1, X2))
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U11(X1, X2) -> active# U11(mark X1, X2))
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U11(X1, X2) -> mark# X1)
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U12(X1, X2) -> U12#(mark X1, X2))
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U12(X1, X2) -> active# U12(mark X1, X2))
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U12(X1, X2) -> mark# X1)
    (mark# U43(X1, X2, X3) -> mark# X1, mark# isNatIList X -> active# isNatIList X)
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U106 X -> U106# mark X)
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U106 X -> active# U106 mark X)
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U106 X -> mark# X)
    (mark# U43(X1, X2, X3) -> mark# X1, mark# isNat X -> active# isNat X)
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U105(X1, X2) -> U105#(mark X1, X2))
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U105(X1, X2) -> active# U105(mark X1, X2))
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U105(X1, X2) -> mark# X1)
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U104(X1, X2, X3) -> U104#(mark X1, X2, X3))
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U104(X1, X2, X3) -> active# U104(mark X1, X2, X3))
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U104(X1, X2, X3) -> mark# X1)
    (mark# U43(X1, X2, X3) -> mark# X1, mark# isNatIListKind X -> active# isNatIListKind X)
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U103(X1, X2, X3) -> U103#(mark X1, X2, X3))
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U103(X1, X2, X3) -> active# U103(mark X1, X2, X3))
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U103(X1, X2, X3) -> mark# X1)
    (mark# U43(X1, X2, X3) -> mark# X1, mark# tt() -> active# tt())
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U101(X1, X2, X3) -> U101#(mark X1, X2, X3))
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U101(X1, X2, X3) -> active# U101(mark X1, X2, X3))
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U101(X1, X2, X3) -> mark# X1)
    (mark# U43(X1, X2, X3) -> mark# X1, mark# isNatKind X -> active# isNatKind X)
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U102(X1, X2, X3) -> U102#(mark X1, X2, X3))
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U102(X1, X2, X3) -> active# U102(mark X1, X2, X3))
    (mark# U43(X1, X2, X3) -> mark# X1, mark# U102(X1, X2, X3) -> mark# X1)
    (mark# U43(X1, X2, X3) -> mark# X1, mark# zeros() -> active# zeros())
    (mark# U43(X1, X2, X3) -> mark# X1, mark# 0() -> active# 0())
    (mark# U43(X1, X2, X3) -> mark# X1, mark# cons(X1, X2) -> active# cons(mark X1, X2))
    (mark# U43(X1, X2, X3) -> mark# X1, mark# cons(X1, X2) -> cons#(mark X1, X2))
    (mark# U43(X1, X2, X3) -> mark# X1, mark# cons(X1, X2) -> mark# X1)
    (mark# U45(X1, X2) -> mark# X1, mark# U96 X -> U96# mark X)
    (mark# U45(X1, X2) -> mark# X1, mark# U96 X -> active# U96 mark X)
    (mark# U45(X1, X2) -> mark# X1, mark# U96 X -> mark# X)
    (mark# U45(X1, X2) -> mark# X1, mark# U95(X1, X2) -> U95#(mark X1, X2))
    (mark# U45(X1, X2) -> mark# X1, mark# U95(X1, X2) -> active# U95(mark X1, X2))
    (mark# U45(X1, X2) -> mark# X1, mark# U95(X1, X2) -> mark# X1)
    (mark# U45(X1, X2) -> mark# X1, mark# U94(X1, X2, X3) -> U94#(mark X1, X2, X3))
    (mark# U45(X1, X2) -> mark# X1, mark# U94(X1, X2, X3) -> active# U94(mark X1, X2, X3))
    (mark# U45(X1, X2) -> mark# X1, mark# U94(X1, X2, X3) -> mark# X1)
    (mark# U45(X1, X2) -> mark# X1, mark# U93(X1, X2, X3) -> U93#(mark X1, X2, X3))
    (mark# U45(X1, X2) -> mark# X1, mark# U93(X1, X2, X3) -> active# U93(mark X1, X2, X3))
    (mark# U45(X1, X2) -> mark# X1, mark# U93(X1, X2, X3) -> mark# X1)
    (mark# U45(X1, X2) -> mark# X1, mark# U91(X1, X2, X3) -> U91#(mark X1, X2, X3))
    (mark# U45(X1, X2) -> mark# X1, mark# U91(X1, X2, X3) -> active# U91(mark X1, X2, X3))
    (mark# U45(X1, X2) -> mark# X1, mark# U91(X1, X2, X3) -> mark# X1)
    (mark# U45(X1, X2) -> mark# X1, mark# U92(X1, X2, X3) -> U92#(mark X1, X2, X3))
    (mark# U45(X1, X2) -> mark# X1, mark# U92(X1, X2, X3) -> active# U92(mark X1, X2, X3))
    (mark# U45(X1, X2) -> mark# X1, mark# U92(X1, X2, X3) -> mark# X1)
    (mark# U45(X1, X2) -> mark# X1, mark# U81 X -> U81# mark X)
    (mark# U45(X1, X2) -> mark# X1, mark# U81 X -> active# U81 mark X)
    (mark# U45(X1, X2) -> mark# X1, mark# U81 X -> mark# X)
    (mark# U45(X1, X2) -> mark# X1, mark# U71 X -> U71# mark X)
    (mark# U45(X1, X2) -> mark# X1, mark# U71 X -> active# U71 mark X)
    (mark# U45(X1, X2) -> mark# X1, mark# U71 X -> mark# X)
    (mark# U45(X1, X2) -> mark# X1, mark# U61(X1, X2) -> U61#(mark X1, X2))
    (mark# U45(X1, X2) -> mark# X1, mark# U61(X1, X2) -> active# U61(mark X1, X2))
    (mark# U45(X1, X2) -> mark# X1, mark# U61(X1, X2) -> mark# X1)
    (mark# U45(X1, X2) -> mark# X1, mark# U62 X -> U62# mark X)
    (mark# U45(X1, X2) -> mark# X1, mark# U62 X -> active# U62 mark X)
    (mark# U45(X1, X2) -> mark# X1, mark# U62 X -> mark# X)
    (mark# U45(X1, X2) -> mark# X1, mark# U51(X1, X2) -> U51#(mark X1, X2))
    (mark# U45(X1, X2) -> mark# X1, mark# U51(X1, X2) -> active# U51(mark X1, X2))
    (mark# U45(X1, X2) -> mark# X1, mark# U51(X1, X2) -> mark# X1)
    (mark# U45(X1, X2) -> mark# X1, mark# U52 X -> U52# mark X)
    (mark# U45(X1, X2) -> mark# X1, mark# U52 X -> active# U52 mark X)
    (mark# U45(X1, X2) -> mark# X1, mark# U52 X -> mark# X)
    (mark# U45(X1, X2) -> mark# X1, mark# U46 X -> U46# mark X)
    (mark# U45(X1, X2) -> mark# X1, mark# U46 X -> active# U46 mark X)
    (mark# U45(X1, X2) -> mark# X1, mark# U46 X -> mark# X)
    (mark# U45(X1, X2) -> mark# X1, mark# U45(X1, X2) -> U45#(mark X1, X2))
    (mark# U45(X1, X2) -> mark# X1, mark# U45(X1, X2) -> active# U45(mark X1, X2))
    (mark# U45(X1, X2) -> mark# X1, mark# U45(X1, X2) -> mark# X1)
    (mark# U45(X1, X2) -> mark# X1, mark# U44(X1, X2, X3) -> U44#(mark X1, X2, X3))
    (mark# U45(X1, X2) -> mark# X1, mark# U44(X1, X2, X3) -> active# U44(mark X1, X2, X3))
    (mark# U45(X1, X2) -> mark# X1, mark# U44(X1, X2, X3) -> mark# X1)
    (mark# U45(X1, X2) -> mark# X1, mark# U43(X1, X2, X3) -> U43#(mark X1, X2, X3))
    (mark# U45(X1, X2) -> mark# X1, mark# U43(X1, X2, X3) -> active# U43(mark X1, X2, X3))
    (mark# U45(X1, X2) -> mark# X1, mark# U43(X1, X2, X3) -> mark# X1)
    (mark# U45(X1, X2) -> mark# X1, mark# U41(X1, X2, X3) -> U41#(mark X1, X2, X3))
    (mark# U45(X1, X2) -> mark# X1, mark# U41(X1, X2, X3) -> active# U41(mark X1, X2, X3))
    (mark# U45(X1, X2) -> mark# X1, mark# U41(X1, X2, X3) -> mark# X1)
    (mark# U45(X1, X2) -> mark# X1, mark# U42(X1, X2, X3) -> U42#(mark X1, X2, X3))
    (mark# U45(X1, X2) -> mark# X1, mark# U42(X1, X2, X3) -> active# U42(mark X1, X2, X3))
    (mark# U45(X1, X2) -> mark# X1, mark# U42(X1, X2, X3) -> mark# X1)
    (mark# U45(X1, X2) -> mark# X1, mark# U33 X -> U33# mark X)
    (mark# U45(X1, X2) -> mark# X1, mark# U33 X -> active# U33 mark X)
    (mark# U45(X1, X2) -> mark# X1, mark# U33 X -> mark# X)
    (mark# U45(X1, X2) -> mark# X1, mark# U31(X1, X2) -> U31#(mark X1, X2))
    (mark# U45(X1, X2) -> mark# X1, mark# U31(X1, X2) -> active# U31(mark X1, X2))
    (mark# U45(X1, X2) -> mark# X1, mark# U31(X1, X2) -> mark# X1)
    (mark# U45(X1, X2) -> mark# X1, mark# U32(X1, X2) -> U32#(mark X1, X2))
    (mark# U45(X1, X2) -> mark# X1, mark# U32(X1, X2) -> active# U32(mark X1, X2))
    (mark# U45(X1, X2) -> mark# X1, mark# U32(X1, X2) -> mark# X1)
    (mark# U45(X1, X2) -> mark# X1, mark# U23 X -> U23# mark X)
    (mark# U45(X1, X2) -> mark# X1, mark# U23 X -> active# U23 mark X)
    (mark# U45(X1, X2) -> mark# X1, mark# U23 X -> mark# X)
    (mark# U45(X1, X2) -> mark# X1, mark# U21(X1, X2) -> U21#(mark X1, X2))
    (mark# U45(X1, X2) -> mark# X1, mark# U21(X1, X2) -> active# U21(mark X1, X2))
    (mark# U45(X1, X2) -> mark# X1, mark# U21(X1, X2) -> mark# X1)
    (mark# U45(X1, X2) -> mark# X1, mark# U22(X1, X2) -> U22#(mark X1, X2))
    (mark# U45(X1, X2) -> mark# X1, mark# U22(X1, X2) -> active# U22(mark X1, X2))
    (mark# U45(X1, X2) -> mark# X1, mark# U22(X1, X2) -> mark# X1)
    (mark# U45(X1, X2) -> mark# X1, mark# take(X1, X2) -> take#(mark X1, mark X2))
    (mark# U45(X1, X2) -> mark# X1, mark# take(X1, X2) -> active# take(mark X1, mark X2))
    (mark# U45(X1, X2) -> mark# X1, mark# take(X1, X2) -> mark# X2)
    (mark# U45(X1, X2) -> mark# X1, mark# take(X1, X2) -> mark# X1)
    (mark# U45(X1, X2) -> mark# X1, mark# U136(X1, X2, X3, X4) -> U136#(mark X1, X2, X3, X4))
    (mark# U45(X1, X2) -> mark# X1, mark# U136(X1, X2, X3, X4) -> active# U136(mark X1, X2, X3, X4))
    (mark# U45(X1, X2) -> mark# X1, mark# U136(X1, X2, X3, X4) -> mark# X1)
    (mark# U45(X1, X2) -> mark# X1, mark# U135(X1, X2, X3, X4) -> U135#(mark X1, X2, X3, X4))
    (mark# U45(X1, X2) -> mark# X1, mark# U135(X1, X2, X3, X4) -> active# U135(mark X1, X2, X3, X4))
    (mark# U45(X1, X2) -> mark# X1, mark# U135(X1, X2, X3, X4) -> mark# X1)
    (mark# U45(X1, X2) -> mark# X1, mark# U134(X1, X2, X3, X4) -> U134#(mark X1, X2, X3, X4))
    (mark# U45(X1, X2) -> mark# X1, mark# U134(X1, X2, X3, X4) -> active# U134(mark X1, X2, X3, X4))
    (mark# U45(X1, X2) -> mark# X1, mark# U134(X1, X2, X3, X4) -> mark# X1)
    (mark# U45(X1, X2) -> mark# X1, mark# U133(X1, X2, X3, X4) -> U133#(mark X1, X2, X3, X4))
    (mark# U45(X1, X2) -> mark# X1, mark# U133(X1, X2, X3, X4) -> active# U133(mark X1, X2, X3, X4))
    (mark# U45(X1, X2) -> mark# X1, mark# U133(X1, X2, X3, X4) -> mark# X1)
    (mark# U45(X1, X2) -> mark# X1, mark# U131(X1, X2, X3, X4) -> U131#(mark X1, X2, X3, X4))
    (mark# U45(X1, X2) -> mark# X1, mark# U131(X1, X2, X3, X4) -> active# U131(mark X1, X2, X3, X4))
    (mark# U45(X1, X2) -> mark# X1, mark# U131(X1, X2, X3, X4) -> mark# X1)
    (mark# U45(X1, X2) -> mark# X1, mark# U132(X1, X2, X3, X4) -> U132#(mark X1, X2, X3, X4))
    (mark# U45(X1, X2) -> mark# X1, mark# U132(X1, X2, X3, X4) -> active# U132(mark X1, X2, X3, X4))
    (mark# U45(X1, X2) -> mark# X1, mark# U132(X1, X2, X3, X4) -> mark# X1)
    (mark# U45(X1, X2) -> mark# X1, mark# nil() -> active# nil())
    (mark# U45(X1, X2) -> mark# X1, mark# U121(X1, X2) -> U121#(mark X1, X2))
    (mark# U45(X1, X2) -> mark# X1, mark# U121(X1, X2) -> active# U121(mark X1, X2))
    (mark# U45(X1, X2) -> mark# X1, mark# U121(X1, X2) -> mark# X1)
    (mark# U45(X1, X2) -> mark# X1, mark# U122 X -> U122# mark X)
    (mark# U45(X1, X2) -> mark# X1, mark# U122 X -> active# U122 mark X)
    (mark# U45(X1, X2) -> mark# X1, mark# U122 X -> mark# X)
    (mark# U45(X1, X2) -> mark# X1, mark# isNatList X -> active# isNatList X)
    (mark# U45(X1, X2) -> mark# X1, mark# U13 X -> U13# mark X)
    (mark# U45(X1, X2) -> mark# X1, mark# U13 X -> active# U13 mark X)
    (mark# U45(X1, X2) -> mark# X1, mark# U13 X -> mark# X)
    (mark# U45(X1, X2) -> mark# X1, mark# length X -> length# mark X)
    (mark# U45(X1, X2) -> mark# X1, mark# length X -> active# length mark X)
    (mark# U45(X1, X2) -> mark# X1, mark# length X -> mark# X)
    (mark# U45(X1, X2) -> mark# X1, mark# s X -> s# mark X)
    (mark# U45(X1, X2) -> mark# X1, mark# s X -> active# s mark X)
    (mark# U45(X1, X2) -> mark# X1, mark# s X -> mark# X)
    (mark# U45(X1, X2) -> mark# X1, mark# U114(X1, X2) -> U114#(mark X1, X2))
    (mark# U45(X1, X2) -> mark# X1, mark# U114(X1, X2) -> active# U114(mark X1, X2))
    (mark# U45(X1, X2) -> mark# X1, mark# U114(X1, X2) -> mark# X1)
    (mark# U45(X1, X2) -> mark# X1, mark# U113(X1, X2, X3) -> U113#(mark X1, X2, X3))
    (mark# U45(X1, X2) -> mark# X1, mark# U113(X1, X2, X3) -> active# U113(mark X1, X2, X3))
    (mark# U45(X1, X2) -> mark# X1, mark# U113(X1, X2, X3) -> mark# X1)
    (mark# U45(X1, X2) -> mark# X1, mark# U111(X1, X2, X3) -> U111#(mark X1, X2, X3))
    (mark# U45(X1, X2) -> mark# X1, mark# U111(X1, X2, X3) -> active# U111(mark X1, X2, X3))
    (mark# U45(X1, X2) -> mark# X1, mark# U111(X1, X2, X3) -> mark# X1)
    (mark# U45(X1, X2) -> mark# X1, mark# U112(X1, X2, X3) -> U112#(mark X1, X2, X3))
    (mark# U45(X1, X2) -> mark# X1, mark# U112(X1, X2, X3) -> active# U112(mark X1, X2, X3))
    (mark# U45(X1, X2) -> mark# X1, mark# U112(X1, X2, X3) -> mark# X1)
    (mark# U45(X1, X2) -> mark# X1, mark# U11(X1, X2) -> U11#(mark X1, X2))
    (mark# U45(X1, X2) -> mark# X1, mark# U11(X1, X2) -> active# U11(mark X1, X2))
    (mark# U45(X1, X2) -> mark# X1, mark# U11(X1, X2) -> mark# X1)
    (mark# U45(X1, X2) -> mark# X1, mark# U12(X1, X2) -> U12#(mark X1, X2))
    (mark# U45(X1, X2) -> mark# X1, mark# U12(X1, X2) -> active# U12(mark X1, X2))
    (mark# U45(X1, X2) -> mark# X1, mark# U12(X1, X2) -> mark# X1)
    (mark# U45(X1, X2) -> mark# X1, mark# isNatIList X -> active# isNatIList X)
    (mark# U45(X1, X2) -> mark# X1, mark# U106 X -> U106# mark X)
    (mark# U45(X1, X2) -> mark# X1, mark# U106 X -> active# U106 mark X)
    (mark# U45(X1, X2) -> mark# X1, mark# U106 X -> mark# X)
    (mark# U45(X1, X2) -> mark# X1, mark# isNat X -> active# isNat X)
    (mark# U45(X1, X2) -> mark# X1, mark# U105(X1, X2) -> U105#(mark X1, X2))
    (mark# U45(X1, X2) -> mark# X1, mark# U105(X1, X2) -> active# U105(mark X1, X2))
    (mark# U45(X1, X2) -> mark# X1, mark# U105(X1, X2) -> mark# X1)
    (mark# U45(X1, X2) -> mark# X1, mark# U104(X1, X2, X3) -> U104#(mark X1, X2, X3))
    (mark# U45(X1, X2) -> mark# X1, mark# U104(X1, X2, X3) -> active# U104(mark X1, X2, X3))
    (mark# U45(X1, X2) -> mark# X1, mark# U104(X1, X2, X3) -> mark# X1)
    (mark# U45(X1, X2) -> mark# X1, mark# isNatIListKind X -> active# isNatIListKind X)
    (mark# U45(X1, X2) -> mark# X1, mark# U103(X1, X2, X3) -> U103#(mark X1, X2, X3))
    (mark# U45(X1, X2) -> mark# X1, mark# U103(X1, X2, X3) -> active# U103(mark X1, X2, X3))
    (mark# U45(X1, X2) -> mark# X1, mark# U103(X1, X2, X3) -> mark# X1)
    (mark# U45(X1, X2) -> mark# X1, mark# tt() -> active# tt())
    (mark# U45(X1, X2) -> mark# X1, mark# U101(X1, X2, X3) -> U101#(mark X1, X2, X3))
    (mark# U45(X1, X2) -> mark# X1, mark# U101(X1, X2, X3) -> active# U101(mark X1, X2, X3))
    (mark# U45(X1, X2) -> mark# X1, mark# U101(X1, X2, X3) -> mark# X1)
    (mark# U45(X1, X2) -> mark# X1, mark# isNatKind X -> active# isNatKind X)
    (mark# U45(X1, X2) -> mark# X1, mark# U102(X1, X2, X3) -> U102#(mark X1, X2, X3))
    (mark# U45(X1, X2) -> mark# X1, mark# U102(X1, X2, X3) -> active# U102(mark X1, X2, X3))
    (mark# U45(X1, X2) -> mark# X1, mark# U102(X1, X2, X3) -> mark# X1)
    (mark# U45(X1, X2) -> mark# X1, mark# zeros() -> active# zeros())
    (mark# U45(X1, X2) -> mark# X1, mark# 0() -> active# 0())
    (mark# U45(X1, X2) -> mark# X1, mark# cons(X1, X2) -> active# cons(mark X1, X2))
    (mark# U45(X1, X2) -> mark# X1, mark# cons(X1, X2) -> cons#(mark X1, X2))
    (mark# U45(X1, X2) -> mark# X1, mark# cons(X1, X2) -> mark# X1)
    (mark# U61(X1, X2) -> mark# X1, mark# U96 X -> U96# mark X)
    (mark# U61(X1, X2) -> mark# X1, mark# U96 X -> active# U96 mark X)
    (mark# U61(X1, X2) -> mark# X1, mark# U96 X -> mark# X)
    (mark# U61(X1, X2) -> mark# X1, mark# U95(X1, X2) -> U95#(mark X1, X2))
    (mark# U61(X1, X2) -> mark# X1, mark# U95(X1, X2) -> active# U95(mark X1, X2))
    (mark# U61(X1, X2) -> mark# X1, mark# U95(X1, X2) -> mark# X1)
    (mark# U61(X1, X2) -> mark# X1, mark# U94(X1, X2, X3) -> U94#(mark X1, X2, X3))
    (mark# U61(X1, X2) -> mark# X1, mark# U94(X1, X2, X3) -> active# U94(mark X1, X2, X3))
    (mark# U61(X1, X2) -> mark# X1, mark# U94(X1, X2, X3) -> mark# X1)
    (mark# U61(X1, X2) -> mark# X1, mark# U93(X1, X2, X3) -> U93#(mark X1, X2, X3))
    (mark# U61(X1, X2) -> mark# X1, mark# U93(X1, X2, X3) -> active# U93(mark X1, X2, X3))
    (mark# U61(X1, X2) -> mark# X1, mark# U93(X1, X2, X3) -> mark# X1)
    (mark# U61(X1, X2) -> mark# X1, mark# U91(X1, X2, X3) -> U91#(mark X1, X2, X3))
    (mark# U61(X1, X2) -> mark# X1, mark# U91(X1, X2, X3) -> active# U91(mark X1, X2, X3))
    (mark# U61(X1, X2) -> mark# X1, mark# U91(X1, X2, X3) -> mark# X1)
    (mark# U61(X1, X2) -> mark# X1, mark# U92(X1, X2, X3) -> U92#(mark X1, X2, X3))
    (mark# U61(X1, X2) -> mark# X1, mark# U92(X1, X2, X3) -> active# U92(mark X1, X2, X3))
    (mark# U61(X1, X2) -> mark# X1, mark# U92(X1, X2, X3) -> mark# X1)
    (mark# U61(X1, X2) -> mark# X1, mark# U81 X -> U81# mark X)
    (mark# U61(X1, X2) -> mark# X1, mark# U81 X -> active# U81 mark X)
    (mark# U61(X1, X2) -> mark# X1, mark# U81 X -> mark# X)
    (mark# U61(X1, X2) -> mark# X1, mark# U71 X -> U71# mark X)
    (mark# U61(X1, X2) -> mark# X1, mark# U71 X -> active# U71 mark X)
    (mark# U61(X1, X2) -> mark# X1, mark# U71 X -> mark# X)
    (mark# U61(X1, X2) -> mark# X1, mark# U61(X1, X2) -> U61#(mark X1, X2))
    (mark# U61(X1, X2) -> mark# X1, mark# U61(X1, X2) -> active# U61(mark X1, X2))
    (mark# U61(X1, X2) -> mark# X1, mark# U61(X1, X2) -> mark# X1)
    (mark# U61(X1, X2) -> mark# X1, mark# U62 X -> U62# mark X)
    (mark# U61(X1, X2) -> mark# X1, mark# U62 X -> active# U62 mark X)
    (mark# U61(X1, X2) -> mark# X1, mark# U62 X -> mark# X)
    (mark# U61(X1, X2) -> mark# X1, mark# U51(X1, X2) -> U51#(mark X1, X2))
    (mark# U61(X1, X2) -> mark# X1, mark# U51(X1, X2) -> active# U51(mark X1, X2))
    (mark# U61(X1, X2) -> mark# X1, mark# U51(X1, X2) -> mark# X1)
    (mark# U61(X1, X2) -> mark# X1, mark# U52 X -> U52# mark X)
    (mark# U61(X1, X2) -> mark# X1, mark# U52 X -> active# U52 mark X)
    (mark# U61(X1, X2) -> mark# X1, mark# U52 X -> mark# X)
    (mark# U61(X1, X2) -> mark# X1, mark# U46 X -> U46# mark X)
    (mark# U61(X1, X2) -> mark# X1, mark# U46 X -> active# U46 mark X)
    (mark# U61(X1, X2) -> mark# X1, mark# U46 X -> mark# X)
    (mark# U61(X1, X2) -> mark# X1, mark# U45(X1, X2) -> U45#(mark X1, X2))
    (mark# U61(X1, X2) -> mark# X1, mark# U45(X1, X2) -> active# U45(mark X1, X2))
    (mark# U61(X1, X2) -> mark# X1, mark# U45(X1, X2) -> mark# X1)
    (mark# U61(X1, X2) -> mark# X1, mark# U44(X1, X2, X3) -> U44#(mark X1, X2, X3))
    (mark# U61(X1, X2) -> mark# X1, mark# U44(X1, X2, X3) -> active# U44(mark X1, X2, X3))
    (mark# U61(X1, X2) -> mark# X1, mark# U44(X1, X2, X3) -> mark# X1)
    (mark# U61(X1, X2) -> mark# X1, mark# U43(X1, X2, X3) -> U43#(mark X1, X2, X3))
    (mark# U61(X1, X2) -> mark# X1, mark# U43(X1, X2, X3) -> active# U43(mark X1, X2, X3))
    (mark# U61(X1, X2) -> mark# X1, mark# U43(X1, X2, X3) -> mark# X1)
    (mark# U61(X1, X2) -> mark# X1, mark# U41(X1, X2, X3) -> U41#(mark X1, X2, X3))
    (mark# U61(X1, X2) -> mark# X1, mark# U41(X1, X2, X3) -> active# U41(mark X1, X2, X3))
    (mark# U61(X1, X2) -> mark# X1, mark# U41(X1, X2, X3) -> mark# X1)
    (mark# U61(X1, X2) -> mark# X1, mark# U42(X1, X2, X3) -> U42#(mark X1, X2, X3))
    (mark# U61(X1, X2) -> mark# X1, mark# U42(X1, X2, X3) -> active# U42(mark X1, X2, X3))
    (mark# U61(X1, X2) -> mark# X1, mark# U42(X1, X2, X3) -> mark# X1)
    (mark# U61(X1, X2) -> mark# X1, mark# U33 X -> U33# mark X)
    (mark# U61(X1, X2) -> mark# X1, mark# U33 X -> active# U33 mark X)
    (mark# U61(X1, X2) -> mark# X1, mark# U33 X -> mark# X)
    (mark# U61(X1, X2) -> mark# X1, mark# U31(X1, X2) -> U31#(mark X1, X2))
    (mark# U61(X1, X2) -> mark# X1, mark# U31(X1, X2) -> active# U31(mark X1, X2))
    (mark# U61(X1, X2) -> mark# X1, mark# U31(X1, X2) -> mark# X1)
    (mark# U61(X1, X2) -> mark# X1, mark# U32(X1, X2) -> U32#(mark X1, X2))
    (mark# U61(X1, X2) -> mark# X1, mark# U32(X1, X2) -> active# U32(mark X1, X2))
    (mark# U61(X1, X2) -> mark# X1, mark# U32(X1, X2) -> mark# X1)
    (mark# U61(X1, X2) -> mark# X1, mark# U23 X -> U23# mark X)
    (mark# U61(X1, X2) -> mark# X1, mark# U23 X -> active# U23 mark X)
    (mark# U61(X1, X2) -> mark# X1, mark# U23 X -> mark# X)
    (mark# U61(X1, X2) -> mark# X1, mark# U21(X1, X2) -> U21#(mark X1, X2))
    (mark# U61(X1, X2) -> mark# X1, mark# U21(X1, X2) -> active# U21(mark X1, X2))
    (mark# U61(X1, X2) -> mark# X1, mark# U21(X1, X2) -> mark# X1)
    (mark# U61(X1, X2) -> mark# X1, mark# U22(X1, X2) -> U22#(mark X1, X2))
    (mark# U61(X1, X2) -> mark# X1, mark# U22(X1, X2) -> active# U22(mark X1, X2))
    (mark# U61(X1, X2) -> mark# X1, mark# U22(X1, X2) -> mark# X1)
    (mark# U61(X1, X2) -> mark# X1, mark# take(X1, X2) -> take#(mark X1, mark X2))
    (mark# U61(X1, X2) -> mark# X1, mark# take(X1, X2) -> active# take(mark X1, mark X2))
    (mark# U61(X1, X2) -> mark# X1, mark# take(X1, X2) -> mark# X2)
    (mark# U61(X1, X2) -> mark# X1, mark# take(X1, X2) -> mark# X1)
    (mark# U61(X1, X2) -> mark# X1, mark# U136(X1, X2, X3, X4) -> U136#(mark X1, X2, X3, X4))
    (mark# U61(X1, X2) -> mark# X1, mark# U136(X1, X2, X3, X4) -> active# U136(mark X1, X2, X3, X4))
    (mark# U61(X1, X2) -> mark# X1, mark# U136(X1, X2, X3, X4) -> mark# X1)
    (mark# U61(X1, X2) -> mark# X1, mark# U135(X1, X2, X3, X4) -> U135#(mark X1, X2, X3, X4))
    (mark# U61(X1, X2) -> mark# X1, mark# U135(X1, X2, X3, X4) -> active# U135(mark X1, X2, X3, X4))
    (mark# U61(X1, X2) -> mark# X1, mark# U135(X1, X2, X3, X4) -> mark# X1)
    (mark# U61(X1, X2) -> mark# X1, mark# U134(X1, X2, X3, X4) -> U134#(mark X1, X2, X3, X4))
    (mark# U61(X1, X2) -> mark# X1, mark# U134(X1, X2, X3, X4) -> active# U134(mark X1, X2, X3, X4))
    (mark# U61(X1, X2) -> mark# X1, mark# U134(X1, X2, X3, X4) -> mark# X1)
    (mark# U61(X1, X2) -> mark# X1, mark# U133(X1, X2, X3, X4) -> U133#(mark X1, X2, X3, X4))
    (mark# U61(X1, X2) -> mark# X1, mark# U133(X1, X2, X3, X4) -> active# U133(mark X1, X2, X3, X4))
    (mark# U61(X1, X2) -> mark# X1, mark# U133(X1, X2, X3, X4) -> mark# X1)
    (mark# U61(X1, X2) -> mark# X1, mark# U131(X1, X2, X3, X4) -> U131#(mark X1, X2, X3, X4))
    (mark# U61(X1, X2) -> mark# X1, mark# U131(X1, X2, X3, X4) -> active# U131(mark X1, X2, X3, X4))
    (mark# U61(X1, X2) -> mark# X1, mark# U131(X1, X2, X3, X4) -> mark# X1)
    (mark# U61(X1, X2) -> mark# X1, mark# U132(X1, X2, X3, X4) -> U132#(mark X1, X2, X3, X4))
    (mark# U61(X1, X2) -> mark# X1, mark# U132(X1, X2, X3, X4) -> active# U132(mark X1, X2, X3, X4))
    (mark# U61(X1, X2) -> mark# X1, mark# U132(X1, X2, X3, X4) -> mark# X1)
    (mark# U61(X1, X2) -> mark# X1, mark# nil() -> active# nil())
    (mark# U61(X1, X2) -> mark# X1, mark# U121(X1, X2) -> U121#(mark X1, X2))
    (mark# U61(X1, X2) -> mark# X1, mark# U121(X1, X2) -> active# U121(mark X1, X2))
    (mark# U61(X1, X2) -> mark# X1, mark# U121(X1, X2) -> mark# X1)
    (mark# U61(X1, X2) -> mark# X1, mark# U122 X -> U122# mark X)
    (mark# U61(X1, X2) -> mark# X1, mark# U122 X -> active# U122 mark X)
    (mark# U61(X1, X2) -> mark# X1, mark# U122 X -> mark# X)
    (mark# U61(X1, X2) -> mark# X1, mark# isNatList X -> active# isNatList X)
    (mark# U61(X1, X2) -> mark# X1, mark# U13 X -> U13# mark X)
    (mark# U61(X1, X2) -> mark# X1, mark# U13 X -> active# U13 mark X)
    (mark# U61(X1, X2) -> mark# X1, mark# U13 X -> mark# X)
    (mark# U61(X1, X2) -> mark# X1, mark# length X -> length# mark X)
    (mark# U61(X1, X2) -> mark# X1, mark# length X -> active# length mark X)
    (mark# U61(X1, X2) -> mark# X1, mark# length X -> mark# X)
    (mark# U61(X1, X2) -> mark# X1, mark# s X -> s# mark X)
    (mark# U61(X1, X2) -> mark# X1, mark# s X -> active# s mark X)
    (mark# U61(X1, X2) -> mark# X1, mark# s X -> mark# X)
    (mark# U61(X1, X2) -> mark# X1, mark# U114(X1, X2) -> U114#(mark X1, X2))
    (mark# U61(X1, X2) -> mark# X1, mark# U114(X1, X2) -> active# U114(mark X1, X2))
    (mark# U61(X1, X2) -> mark# X1, mark# U114(X1, X2) -> mark# X1)
    (mark# U61(X1, X2) -> mark# X1, mark# U113(X1, X2, X3) -> U113#(mark X1, X2, X3))
    (mark# U61(X1, X2) -> mark# X1, mark# U113(X1, X2, X3) -> active# U113(mark X1, X2, X3))
    (mark# U61(X1, X2) -> mark# X1, mark# U113(X1, X2, X3) -> mark# X1)
    (mark# U61(X1, X2) -> mark# X1, mark# U111(X1, X2, X3) -> U111#(mark X1, X2, X3))
    (mark# U61(X1, X2) -> mark# X1, mark# U111(X1, X2, X3) -> active# U111(mark X1, X2, X3))
    (mark# U61(X1, X2) -> mark# X1, mark# U111(X1, X2, X3) -> mark# X1)
    (mark# U61(X1, X2) -> mark# X1, mark# U112(X1, X2, X3) -> U112#(mark X1, X2, X3))
    (mark# U61(X1, X2) -> mark# X1, mark# U112(X1, X2, X3) -> active# U112(mark X1, X2, X3))
    (mark# U61(X1, X2) -> mark# X1, mark# U112(X1, X2, X3) -> mark# X1)
    (mark# U61(X1, X2) -> mark# X1, mark# U11(X1, X2) -> U11#(mark X1, X2))
    (mark# U61(X1, X2) -> mark# X1, mark# U11(X1, X2) -> active# U11(mark X1, X2))
    (mark# U61(X1, X2) -> mark# X1, mark# U11(X1, X2) -> mark# X1)
    (mark# U61(X1, X2) -> mark# X1, mark# U12(X1, X2) -> U12#(mark X1, X2))
    (mark# U61(X1, X2) -> mark# X1, mark# U12(X1, X2) -> active# U12(mark X1, X2))
    (mark# U61(X1, X2) -> mark# X1, mark# U12(X1, X2) -> mark# X1)
    (mark# U61(X1, X2) -> mark# X1, mark# isNatIList X -> active# isNatIList X)
    (mark# U61(X1, X2) -> mark# X1, mark# U106 X -> U106# mark X)
    (mark# U61(X1, X2) -> mark# X1, mark# U106 X -> active# U106 mark X)
    (mark# U61(X1, X2) -> mark# X1, mark# U106 X -> mark# X)
    (mark# U61(X1, X2) -> mark# X1, mark# isNat X -> active# isNat X)
    (mark# U61(X1, X2) -> mark# X1, mark# U105(X1, X2) -> U105#(mark X1, X2))
    (mark# U61(X1, X2) -> mark# X1, mark# U105(X1, X2) -> active# U105(mark X1, X2))
    (mark# U61(X1, X2) -> mark# X1, mark# U105(X1, X2) -> mark# X1)
    (mark# U61(X1, X2) -> mark# X1, mark# U104(X1, X2, X3) -> U104#(mark X1, X2, X3))
    (mark# U61(X1, X2) -> mark# X1, mark# U104(X1, X2, X3) -> active# U104(mark X1, X2, X3))
    (mark# U61(X1, X2) -> mark# X1, mark# U104(X1, X2, X3) -> mark# X1)
    (mark# U61(X1, X2) -> mark# X1, mark# isNatIListKind X -> active# isNatIListKind X)
    (mark# U61(X1, X2) -> mark# X1, mark# U103(X1, X2, X3) -> U103#(mark X1, X2, X3))
    (mark# U61(X1, X2) -> mark# X1, mark# U103(X1, X2, X3) -> active# U103(mark X1, X2, X3))
    (mark# U61(X1, X2) -> mark# X1, mark# U103(X1, X2, X3) -> mark# X1)
    (mark# U61(X1, X2) -> mark# X1, mark# tt() -> active# tt())
    (mark# U61(X1, X2) -> mark# X1, mark# U101(X1, X2, X3) -> U101#(mark X1, X2, X3))
    (mark# U61(X1, X2) -> mark# X1, mark# U101(X1, X2, X3) -> active# U101(mark X1, X2, X3))
    (mark# U61(X1, X2) -> mark# X1, mark# U101(X1, X2, X3) -> mark# X1)
    (mark# U61(X1, X2) -> mark# X1, mark# isNatKind X -> active# isNatKind X)
    (mark# U61(X1, X2) -> mark# X1, mark# U102(X1, X2, X3) -> U102#(mark X1, X2, X3))
    (mark# U61(X1, X2) -> mark# X1, mark# U102(X1, X2, X3) -> active# U102(mark X1, X2, X3))
    (mark# U61(X1, X2) -> mark# X1, mark# U102(X1, X2, X3) -> mark# X1)
    (mark# U61(X1, X2) -> mark# X1, mark# zeros() -> active# zeros())
    (mark# U61(X1, X2) -> mark# X1, mark# 0() -> active# 0())
    (mark# U61(X1, X2) -> mark# X1, mark# cons(X1, X2) -> active# cons(mark X1, X2))
    (mark# U61(X1, X2) -> mark# X1, mark# cons(X1, X2) -> cons#(mark X1, X2))
    (mark# U61(X1, X2) -> mark# X1, mark# cons(X1, X2) -> mark# X1)
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U96 X -> U96# mark X)
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U96 X -> active# U96 mark X)
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U96 X -> mark# X)
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U95(X1, X2) -> U95#(mark X1, X2))
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U95(X1, X2) -> active# U95(mark X1, X2))
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U95(X1, X2) -> mark# X1)
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U94(X1, X2, X3) -> U94#(mark X1, X2, X3))
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U94(X1, X2, X3) -> active# U94(mark X1, X2, X3))
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U94(X1, X2, X3) -> mark# X1)
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U93(X1, X2, X3) -> U93#(mark X1, X2, X3))
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U93(X1, X2, X3) -> active# U93(mark X1, X2, X3))
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U93(X1, X2, X3) -> mark# X1)
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U91(X1, X2, X3) -> U91#(mark X1, X2, X3))
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U91(X1, X2, X3) -> active# U91(mark X1, X2, X3))
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U91(X1, X2, X3) -> mark# X1)
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U92(X1, X2, X3) -> U92#(mark X1, X2, X3))
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U92(X1, X2, X3) -> active# U92(mark X1, X2, X3))
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U92(X1, X2, X3) -> mark# X1)
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U81 X -> U81# mark X)
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U81 X -> active# U81 mark X)
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U81 X -> mark# X)
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U71 X -> U71# mark X)
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U71 X -> active# U71 mark X)
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U71 X -> mark# X)
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U61(X1, X2) -> U61#(mark X1, X2))
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U61(X1, X2) -> active# U61(mark X1, X2))
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U61(X1, X2) -> mark# X1)
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U62 X -> U62# mark X)
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U62 X -> active# U62 mark X)
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U62 X -> mark# X)
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U51(X1, X2) -> U51#(mark X1, X2))
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U51(X1, X2) -> active# U51(mark X1, X2))
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U51(X1, X2) -> mark# X1)
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U52 X -> U52# mark X)
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U52 X -> active# U52 mark X)
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U52 X -> mark# X)
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U46 X -> U46# mark X)
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U46 X -> active# U46 mark X)
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U46 X -> mark# X)
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U45(X1, X2) -> U45#(mark X1, X2))
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U45(X1, X2) -> active# U45(mark X1, X2))
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U45(X1, X2) -> mark# X1)
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U44(X1, X2, X3) -> U44#(mark X1, X2, X3))
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U44(X1, X2, X3) -> active# U44(mark X1, X2, X3))
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U44(X1, X2, X3) -> mark# X1)
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U43(X1, X2, X3) -> U43#(mark X1, X2, X3))
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U43(X1, X2, X3) -> active# U43(mark X1, X2, X3))
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U43(X1, X2, X3) -> mark# X1)
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U41(X1, X2, X3) -> U41#(mark X1, X2, X3))
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U41(X1, X2, X3) -> active# U41(mark X1, X2, X3))
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U41(X1, X2, X3) -> mark# X1)
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U42(X1, X2, X3) -> U42#(mark X1, X2, X3))
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U42(X1, X2, X3) -> active# U42(mark X1, X2, X3))
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U42(X1, X2, X3) -> mark# X1)
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U33 X -> U33# mark X)
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U33 X -> active# U33 mark X)
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U33 X -> mark# X)
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U31(X1, X2) -> U31#(mark X1, X2))
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U31(X1, X2) -> active# U31(mark X1, X2))
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U31(X1, X2) -> mark# X1)
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U32(X1, X2) -> U32#(mark X1, X2))
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U32(X1, X2) -> active# U32(mark X1, X2))
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U32(X1, X2) -> mark# X1)
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U23 X -> U23# mark X)
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U23 X -> active# U23 mark X)
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U23 X -> mark# X)
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U21(X1, X2) -> U21#(mark X1, X2))
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U21(X1, X2) -> active# U21(mark X1, X2))
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U21(X1, X2) -> mark# X1)
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U22(X1, X2) -> U22#(mark X1, X2))
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U22(X1, X2) -> active# U22(mark X1, X2))
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U22(X1, X2) -> mark# X1)
    (mark# U91(X1, X2, X3) -> mark# X1, mark# take(X1, X2) -> take#(mark X1, mark X2))
    (mark# U91(X1, X2, X3) -> mark# X1, mark# take(X1, X2) -> active# take(mark X1, mark X2))
    (mark# U91(X1, X2, X3) -> mark# X1, mark# take(X1, X2) -> mark# X2)
    (mark# U91(X1, X2, X3) -> mark# X1, mark# take(X1, X2) -> mark# X1)
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U136(X1, X2, X3, X4) -> U136#(mark X1, X2, X3, X4))
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U136(X1, X2, X3, X4) -> active# U136(mark X1, X2, X3, X4))
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U136(X1, X2, X3, X4) -> mark# X1)
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U135(X1, X2, X3, X4) -> U135#(mark X1, X2, X3, X4))
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U135(X1, X2, X3, X4) -> active# U135(mark X1, X2, X3, X4))
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U135(X1, X2, X3, X4) -> mark# X1)
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U134(X1, X2, X3, X4) -> U134#(mark X1, X2, X3, X4))
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U134(X1, X2, X3, X4) -> active# U134(mark X1, X2, X3, X4))
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U134(X1, X2, X3, X4) -> mark# X1)
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U133(X1, X2, X3, X4) -> U133#(mark X1, X2, X3, X4))
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U133(X1, X2, X3, X4) -> active# U133(mark X1, X2, X3, X4))
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U133(X1, X2, X3, X4) -> mark# X1)
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U131(X1, X2, X3, X4) -> U131#(mark X1, X2, X3, X4))
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U131(X1, X2, X3, X4) -> active# U131(mark X1, X2, X3, X4))
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U131(X1, X2, X3, X4) -> mark# X1)
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U132(X1, X2, X3, X4) -> U132#(mark X1, X2, X3, X4))
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U132(X1, X2, X3, X4) -> active# U132(mark X1, X2, X3, X4))
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U132(X1, X2, X3, X4) -> mark# X1)
    (mark# U91(X1, X2, X3) -> mark# X1, mark# nil() -> active# nil())
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U121(X1, X2) -> U121#(mark X1, X2))
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U121(X1, X2) -> active# U121(mark X1, X2))
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U121(X1, X2) -> mark# X1)
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U122 X -> U122# mark X)
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U122 X -> active# U122 mark X)
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U122 X -> mark# X)
    (mark# U91(X1, X2, X3) -> mark# X1, mark# isNatList X -> active# isNatList X)
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U13 X -> U13# mark X)
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U13 X -> active# U13 mark X)
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U13 X -> mark# X)
    (mark# U91(X1, X2, X3) -> mark# X1, mark# length X -> length# mark X)
    (mark# U91(X1, X2, X3) -> mark# X1, mark# length X -> active# length mark X)
    (mark# U91(X1, X2, X3) -> mark# X1, mark# length X -> mark# X)
    (mark# U91(X1, X2, X3) -> mark# X1, mark# s X -> s# mark X)
    (mark# U91(X1, X2, X3) -> mark# X1, mark# s X -> active# s mark X)
    (mark# U91(X1, X2, X3) -> mark# X1, mark# s X -> mark# X)
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U114(X1, X2) -> U114#(mark X1, X2))
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U114(X1, X2) -> active# U114(mark X1, X2))
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U114(X1, X2) -> mark# X1)
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U113(X1, X2, X3) -> U113#(mark X1, X2, X3))
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U113(X1, X2, X3) -> active# U113(mark X1, X2, X3))
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U113(X1, X2, X3) -> mark# X1)
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U111(X1, X2, X3) -> U111#(mark X1, X2, X3))
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U111(X1, X2, X3) -> active# U111(mark X1, X2, X3))
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U111(X1, X2, X3) -> mark# X1)
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U112(X1, X2, X3) -> U112#(mark X1, X2, X3))
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U112(X1, X2, X3) -> active# U112(mark X1, X2, X3))
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U112(X1, X2, X3) -> mark# X1)
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U11(X1, X2) -> U11#(mark X1, X2))
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U11(X1, X2) -> active# U11(mark X1, X2))
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U11(X1, X2) -> mark# X1)
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U12(X1, X2) -> U12#(mark X1, X2))
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U12(X1, X2) -> active# U12(mark X1, X2))
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U12(X1, X2) -> mark# X1)
    (mark# U91(X1, X2, X3) -> mark# X1, mark# isNatIList X -> active# isNatIList X)
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U106 X -> U106# mark X)
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U106 X -> active# U106 mark X)
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U106 X -> mark# X)
    (mark# U91(X1, X2, X3) -> mark# X1, mark# isNat X -> active# isNat X)
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U105(X1, X2) -> U105#(mark X1, X2))
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U105(X1, X2) -> active# U105(mark X1, X2))
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U105(X1, X2) -> mark# X1)
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U104(X1, X2, X3) -> U104#(mark X1, X2, X3))
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U104(X1, X2, X3) -> active# U104(mark X1, X2, X3))
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U104(X1, X2, X3) -> mark# X1)
    (mark# U91(X1, X2, X3) -> mark# X1, mark# isNatIListKind X -> active# isNatIListKind X)
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U103(X1, X2, X3) -> U103#(mark X1, X2, X3))
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U103(X1, X2, X3) -> active# U103(mark X1, X2, X3))
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U103(X1, X2, X3) -> mark# X1)
    (mark# U91(X1, X2, X3) -> mark# X1, mark# tt() -> active# tt())
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U101(X1, X2, X3) -> U101#(mark X1, X2, X3))
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U101(X1, X2, X3) -> active# U101(mark X1, X2, X3))
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U101(X1, X2, X3) -> mark# X1)
    (mark# U91(X1, X2, X3) -> mark# X1, mark# isNatKind X -> active# isNatKind X)
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U102(X1, X2, X3) -> U102#(mark X1, X2, X3))
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U102(X1, X2, X3) -> active# U102(mark X1, X2, X3))
    (mark# U91(X1, X2, X3) -> mark# X1, mark# U102(X1, X2, X3) -> mark# X1)
    (mark# U91(X1, X2, X3) -> mark# X1, mark# zeros() -> active# zeros())
    (mark# U91(X1, X2, X3) -> mark# X1, mark# 0() -> active# 0())
    (mark# U91(X1, X2, X3) -> mark# X1, mark# cons(X1, X2) -> active# cons(mark X1, X2))
    (mark# U91(X1, X2, X3) -> mark# X1, mark# cons(X1, X2) -> cons#(mark X1, X2))
    (mark# U91(X1, X2, X3) -> mark# X1, mark# cons(X1, X2) -> mark# X1)
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U96 X -> U96# mark X)
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U96 X -> active# U96 mark X)
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U96 X -> mark# X)
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U95(X1, X2) -> U95#(mark X1, X2))
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U95(X1, X2) -> active# U95(mark X1, X2))
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U95(X1, X2) -> mark# X1)
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U94(X1, X2, X3) -> U94#(mark X1, X2, X3))
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U94(X1, X2, X3) -> active# U94(mark X1, X2, X3))
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U94(X1, X2, X3) -> mark# X1)
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U93(X1, X2, X3) -> U93#(mark X1, X2, X3))
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U93(X1, X2, X3) -> active# U93(mark X1, X2, X3))
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U93(X1, X2, X3) -> mark# X1)
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U91(X1, X2, X3) -> U91#(mark X1, X2, X3))
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U91(X1, X2, X3) -> active# U91(mark X1, X2, X3))
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U91(X1, X2, X3) -> mark# X1)
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U92(X1, X2, X3) -> U92#(mark X1, X2, X3))
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U92(X1, X2, X3) -> active# U92(mark X1, X2, X3))
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U92(X1, X2, X3) -> mark# X1)
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U81 X -> U81# mark X)
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U81 X -> active# U81 mark X)
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U81 X -> mark# X)
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U71 X -> U71# mark X)
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U71 X -> active# U71 mark X)
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U71 X -> mark# X)
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U61(X1, X2) -> U61#(mark X1, X2))
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U61(X1, X2) -> active# U61(mark X1, X2))
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U61(X1, X2) -> mark# X1)
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U62 X -> U62# mark X)
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U62 X -> active# U62 mark X)
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U62 X -> mark# X)
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U51(X1, X2) -> U51#(mark X1, X2))
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U51(X1, X2) -> active# U51(mark X1, X2))
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U51(X1, X2) -> mark# X1)
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U52 X -> U52# mark X)
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U52 X -> active# U52 mark X)
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U52 X -> mark# X)
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U46 X -> U46# mark X)
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U46 X -> active# U46 mark X)
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U46 X -> mark# X)
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U45(X1, X2) -> U45#(mark X1, X2))
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U45(X1, X2) -> active# U45(mark X1, X2))
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U45(X1, X2) -> mark# X1)
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U44(X1, X2, X3) -> U44#(mark X1, X2, X3))
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U44(X1, X2, X3) -> active# U44(mark X1, X2, X3))
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U44(X1, X2, X3) -> mark# X1)
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U43(X1, X2, X3) -> U43#(mark X1, X2, X3))
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U43(X1, X2, X3) -> active# U43(mark X1, X2, X3))
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U43(X1, X2, X3) -> mark# X1)
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U41(X1, X2, X3) -> U41#(mark X1, X2, X3))
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U41(X1, X2, X3) -> active# U41(mark X1, X2, X3))
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U41(X1, X2, X3) -> mark# X1)
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U42(X1, X2, X3) -> U42#(mark X1, X2, X3))
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U42(X1, X2, X3) -> active# U42(mark X1, X2, X3))
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U42(X1, X2, X3) -> mark# X1)
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U33 X -> U33# mark X)
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U33 X -> active# U33 mark X)
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U33 X -> mark# X)
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U31(X1, X2) -> U31#(mark X1, X2))
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U31(X1, X2) -> active# U31(mark X1, X2))
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U31(X1, X2) -> mark# X1)
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U32(X1, X2) -> U32#(mark X1, X2))
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U32(X1, X2) -> active# U32(mark X1, X2))
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U32(X1, X2) -> mark# X1)
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U23 X -> U23# mark X)
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U23 X -> active# U23 mark X)
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U23 X -> mark# X)
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U21(X1, X2) -> U21#(mark X1, X2))
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U21(X1, X2) -> active# U21(mark X1, X2))
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U21(X1, X2) -> mark# X1)
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U22(X1, X2) -> U22#(mark X1, X2))
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U22(X1, X2) -> active# U22(mark X1, X2))
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U22(X1, X2) -> mark# X1)
    (mark# U94(X1, X2, X3) -> mark# X1, mark# take(X1, X2) -> take#(mark X1, mark X2))
    (mark# U94(X1, X2, X3) -> mark# X1, mark# take(X1, X2) -> active# take(mark X1, mark X2))
    (mark# U94(X1, X2, X3) -> mark# X1, mark# take(X1, X2) -> mark# X2)
    (mark# U94(X1, X2, X3) -> mark# X1, mark# take(X1, X2) -> mark# X1)
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U136(X1, X2, X3, X4) -> U136#(mark X1, X2, X3, X4))
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U136(X1, X2, X3, X4) -> active# U136(mark X1, X2, X3, X4))
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U136(X1, X2, X3, X4) -> mark# X1)
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U135(X1, X2, X3, X4) -> U135#(mark X1, X2, X3, X4))
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U135(X1, X2, X3, X4) -> active# U135(mark X1, X2, X3, X4))
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U135(X1, X2, X3, X4) -> mark# X1)
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U134(X1, X2, X3, X4) -> U134#(mark X1, X2, X3, X4))
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U134(X1, X2, X3, X4) -> active# U134(mark X1, X2, X3, X4))
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U134(X1, X2, X3, X4) -> mark# X1)
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U133(X1, X2, X3, X4) -> U133#(mark X1, X2, X3, X4))
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U133(X1, X2, X3, X4) -> active# U133(mark X1, X2, X3, X4))
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U133(X1, X2, X3, X4) -> mark# X1)
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U131(X1, X2, X3, X4) -> U131#(mark X1, X2, X3, X4))
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U131(X1, X2, X3, X4) -> active# U131(mark X1, X2, X3, X4))
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U131(X1, X2, X3, X4) -> mark# X1)
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U132(X1, X2, X3, X4) -> U132#(mark X1, X2, X3, X4))
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U132(X1, X2, X3, X4) -> active# U132(mark X1, X2, X3, X4))
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U132(X1, X2, X3, X4) -> mark# X1)
    (mark# U94(X1, X2, X3) -> mark# X1, mark# nil() -> active# nil())
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U121(X1, X2) -> U121#(mark X1, X2))
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U121(X1, X2) -> active# U121(mark X1, X2))
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U121(X1, X2) -> mark# X1)
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U122 X -> U122# mark X)
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U122 X -> active# U122 mark X)
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U122 X -> mark# X)
    (mark# U94(X1, X2, X3) -> mark# X1, mark# isNatList X -> active# isNatList X)
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U13 X -> U13# mark X)
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U13 X -> active# U13 mark X)
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U13 X -> mark# X)
    (mark# U94(X1, X2, X3) -> mark# X1, mark# length X -> length# mark X)
    (mark# U94(X1, X2, X3) -> mark# X1, mark# length X -> active# length mark X)
    (mark# U94(X1, X2, X3) -> mark# X1, mark# length X -> mark# X)
    (mark# U94(X1, X2, X3) -> mark# X1, mark# s X -> s# mark X)
    (mark# U94(X1, X2, X3) -> mark# X1, mark# s X -> active# s mark X)
    (mark# U94(X1, X2, X3) -> mark# X1, mark# s X -> mark# X)
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U114(X1, X2) -> U114#(mark X1, X2))
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U114(X1, X2) -> active# U114(mark X1, X2))
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U114(X1, X2) -> mark# X1)
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U113(X1, X2, X3) -> U113#(mark X1, X2, X3))
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U113(X1, X2, X3) -> active# U113(mark X1, X2, X3))
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U113(X1, X2, X3) -> mark# X1)
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U111(X1, X2, X3) -> U111#(mark X1, X2, X3))
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U111(X1, X2, X3) -> active# U111(mark X1, X2, X3))
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U111(X1, X2, X3) -> mark# X1)
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U112(X1, X2, X3) -> U112#(mark X1, X2, X3))
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U112(X1, X2, X3) -> active# U112(mark X1, X2, X3))
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U112(X1, X2, X3) -> mark# X1)
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U11(X1, X2) -> U11#(mark X1, X2))
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U11(X1, X2) -> active# U11(mark X1, X2))
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U11(X1, X2) -> mark# X1)
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U12(X1, X2) -> U12#(mark X1, X2))
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U12(X1, X2) -> active# U12(mark X1, X2))
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U12(X1, X2) -> mark# X1)
    (mark# U94(X1, X2, X3) -> mark# X1, mark# isNatIList X -> active# isNatIList X)
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U106 X -> U106# mark X)
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U106 X -> active# U106 mark X)
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U106 X -> mark# X)
    (mark# U94(X1, X2, X3) -> mark# X1, mark# isNat X -> active# isNat X)
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U105(X1, X2) -> U105#(mark X1, X2))
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U105(X1, X2) -> active# U105(mark X1, X2))
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U105(X1, X2) -> mark# X1)
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U104(X1, X2, X3) -> U104#(mark X1, X2, X3))
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U104(X1, X2, X3) -> active# U104(mark X1, X2, X3))
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U104(X1, X2, X3) -> mark# X1)
    (mark# U94(X1, X2, X3) -> mark# X1, mark# isNatIListKind X -> active# isNatIListKind X)
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U103(X1, X2, X3) -> U103#(mark X1, X2, X3))
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U103(X1, X2, X3) -> active# U103(mark X1, X2, X3))
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U103(X1, X2, X3) -> mark# X1)
    (mark# U94(X1, X2, X3) -> mark# X1, mark# tt() -> active# tt())
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U101(X1, X2, X3) -> U101#(mark X1, X2, X3))
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U101(X1, X2, X3) -> active# U101(mark X1, X2, X3))
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U101(X1, X2, X3) -> mark# X1)
    (mark# U94(X1, X2, X3) -> mark# X1, mark# isNatKind X -> active# isNatKind X)
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U102(X1, X2, X3) -> U102#(mark X1, X2, X3))
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U102(X1, X2, X3) -> active# U102(mark X1, X2, X3))
    (mark# U94(X1, X2, X3) -> mark# X1, mark# U102(X1, X2, X3) -> mark# X1)
    (mark# U94(X1, X2, X3) -> mark# X1, mark# zeros() -> active# zeros())
    (mark# U94(X1, X2, X3) -> mark# X1, mark# 0() -> active# 0())
    (mark# U94(X1, X2, X3) -> mark# X1, mark# cons(X1, X2) -> active# cons(mark X1, X2))
    (mark# U94(X1, X2, X3) -> mark# X1, mark# cons(X1, X2) -> cons#(mark X1, X2))
    (mark# U94(X1, X2, X3) -> mark# X1, mark# cons(X1, X2) -> mark# X1)
    (active# isNatIList V -> U31#(isNatIListKind V, V), U31#(X1, active X2) -> U31#(X1, X2))
    (active# isNatIList V -> U31#(isNatIListKind V, V), U31#(X1, mark X2) -> U31#(X1, X2))
    (mark# U102(X1, X2, X3) -> U102#(mark X1, X2, X3), U102#(active X1, X2, X3) -> U102#(X1, X2, X3))
    (mark# U102(X1, X2, X3) -> U102#(mark X1, X2, X3), U102#(mark X1, X2, X3) -> U102#(X1, X2, X3))
    (mark# U102(X1, X2, X3) -> U102#(mark X1, X2, X3), U102#(X1, active X2, X3) -> U102#(X1, X2, X3))
    (mark# U102(X1, X2, X3) -> U102#(mark X1, X2, X3), U102#(X1, mark X2, X3) -> U102#(X1, X2, X3))
    (mark# U102(X1, X2, X3) -> U102#(mark X1, X2, X3), U102#(X1, X2, active X3) -> U102#(X1, X2, X3))
    (mark# U102(X1, X2, X3) -> U102#(mark X1, X2, X3), U102#(X1, X2, mark X3) -> U102#(X1, X2, X3))
    (mark# U103(X1, X2, X3) -> U103#(mark X1, X2, X3), U103#(active X1, X2, X3) -> U103#(X1, X2, X3))
    (mark# U103(X1, X2, X3) -> U103#(mark X1, X2, X3), U103#(mark X1, X2, X3) -> U103#(X1, X2, X3))
    (mark# U103(X1, X2, X3) -> U103#(mark X1, X2, X3), U103#(X1, active X2, X3) -> U103#(X1, X2, X3))
    (mark# U103(X1, X2, X3) -> U103#(mark X1, X2, X3), U103#(X1, mark X2, X3) -> U103#(X1, X2, X3))
    (mark# U103(X1, X2, X3) -> U103#(mark X1, X2, X3), U103#(X1, X2, active X3) -> U103#(X1, X2, X3))
    (mark# U103(X1, X2, X3) -> U103#(mark X1, X2, X3), U103#(X1, X2, mark X3) -> U103#(X1, X2, X3))
    (mark# U112(X1, X2, X3) -> U112#(mark X1, X2, X3), U112#(active X1, X2, X3) -> U112#(X1, X2, X3))
    (mark# U112(X1, X2, X3) -> U112#(mark X1, X2, X3), U112#(mark X1, X2, X3) -> U112#(X1, X2, X3))
    (mark# U112(X1, X2, X3) -> U112#(mark X1, X2, X3), U112#(X1, active X2, X3) -> U112#(X1, X2, X3))
    (mark# U112(X1, X2, X3) -> U112#(mark X1, X2, X3), U112#(X1, mark X2, X3) -> U112#(X1, X2, X3))
    (mark# U112(X1, X2, X3) -> U112#(mark X1, X2, X3), U112#(X1, X2, active X3) -> U112#(X1, X2, X3))
    (mark# U112(X1, X2, X3) -> U112#(mark X1, X2, X3), U112#(X1, X2, mark X3) -> U112#(X1, X2, X3))
    (mark# U113(X1, X2, X3) -> U113#(mark X1, X2, X3), U113#(active X1, X2, X3) -> U113#(X1, X2, X3))
    (mark# U113(X1, X2, X3) -> U113#(mark X1, X2, X3), U113#(mark X1, X2, X3) -> U113#(X1, X2, X3))
    (mark# U113(X1, X2, X3) -> U113#(mark X1, X2, X3), U113#(X1, active X2, X3) -> U113#(X1, X2, X3))
    (mark# U113(X1, X2, X3) -> U113#(mark X1, X2, X3), U113#(X1, mark X2, X3) -> U113#(X1, X2, X3))
    (mark# U113(X1, X2, X3) -> U113#(mark X1, X2, X3), U113#(X1, X2, active X3) -> U113#(X1, X2, X3))
    (mark# U113(X1, X2, X3) -> U113#(mark X1, X2, X3), U113#(X1, X2, mark X3) -> U113#(X1, X2, X3))
    (mark# U41(X1, X2, X3) -> U41#(mark X1, X2, X3), U41#(active X1, X2, X3) -> U41#(X1, X2, X3))
    (mark# U41(X1, X2, X3) -> U41#(mark X1, X2, X3), U41#(mark X1, X2, X3) -> U41#(X1, X2, X3))
    (mark# U41(X1, X2, X3) -> U41#(mark X1, X2, X3), U41#(X1, active X2, X3) -> U41#(X1, X2, X3))
    (mark# U41(X1, X2, X3) -> U41#(mark X1, X2, X3), U41#(X1, mark X2, X3) -> U41#(X1, X2, X3))
    (mark# U41(X1, X2, X3) -> U41#(mark X1, X2, X3), U41#(X1, X2, active X3) -> U41#(X1, X2, X3))
    (mark# U41(X1, X2, X3) -> U41#(mark X1, X2, X3), U41#(X1, X2, mark X3) -> U41#(X1, X2, X3))
    (mark# U44(X1, X2, X3) -> U44#(mark X1, X2, X3), U44#(active X1, X2, X3) -> U44#(X1, X2, X3))
    (mark# U44(X1, X2, X3) -> U44#(mark X1, X2, X3), U44#(mark X1, X2, X3) -> U44#(X1, X2, X3))
    (mark# U44(X1, X2, X3) -> U44#(mark X1, X2, X3), U44#(X1, active X2, X3) -> U44#(X1, X2, X3))
    (mark# U44(X1, X2, X3) -> U44#(mark X1, X2, X3), U44#(X1, mark X2, X3) -> U44#(X1, X2, X3))
    (mark# U44(X1, X2, X3) -> U44#(mark X1, X2, X3), U44#(X1, X2, active X3) -> U44#(X1, X2, X3))
    (mark# U44(X1, X2, X3) -> U44#(mark X1, X2, X3), U44#(X1, X2, mark X3) -> U44#(X1, X2, X3))
    (mark# U91(X1, X2, X3) -> U91#(mark X1, X2, X3), U91#(active X1, X2, X3) -> U91#(X1, X2, X3))
    (mark# U91(X1, X2, X3) -> U91#(mark X1, X2, X3), U91#(mark X1, X2, X3) -> U91#(X1, X2, X3))
    (mark# U91(X1, X2, X3) -> U91#(mark X1, X2, X3), U91#(X1, active X2, X3) -> U91#(X1, X2, X3))
    (mark# U91(X1, X2, X3) -> U91#(mark X1, X2, X3), U91#(X1, mark X2, X3) -> U91#(X1, X2, X3))
    (mark# U91(X1, X2, X3) -> U91#(mark X1, X2, X3), U91#(X1, X2, active X3) -> U91#(X1, X2, X3))
    (mark# U91(X1, X2, X3) -> U91#(mark X1, X2, X3), U91#(X1, X2, mark X3) -> U91#(X1, X2, X3))
    (mark# U94(X1, X2, X3) -> U94#(mark X1, X2, X3), U94#(active X1, X2, X3) -> U94#(X1, X2, X3))
    (mark# U94(X1, X2, X3) -> U94#(mark X1, X2, X3), U94#(mark X1, X2, X3) -> U94#(X1, X2, X3))
    (mark# U94(X1, X2, X3) -> U94#(mark X1, X2, X3), U94#(X1, active X2, X3) -> U94#(X1, X2, X3))
    (mark# U94(X1, X2, X3) -> U94#(mark X1, X2, X3), U94#(X1, mark X2, X3) -> U94#(X1, X2, X3))
    (mark# U94(X1, X2, X3) -> U94#(mark X1, X2, X3), U94#(X1, X2, active X3) -> U94#(X1, X2, X3))
    (mark# U94(X1, X2, X3) -> U94#(mark X1, X2, X3), U94#(X1, X2, mark X3) -> U94#(X1, X2, X3))
    (U102#(X1, X2, active X3) -> U102#(X1, X2, X3), U102#(active X1, X2, X3) -> U102#(X1, X2, X3))
    (U102#(X1, X2, active X3) -> U102#(X1, X2, X3), U102#(mark X1, X2, X3) -> U102#(X1, X2, X3))
    (U102#(X1, X2, active X3) -> U102#(X1, X2, X3), U102#(X1, active X2, X3) -> U102#(X1, X2, X3))
    (U102#(X1, X2, active X3) -> U102#(X1, X2, X3), U102#(X1, mark X2, X3) -> U102#(X1, X2, X3))
    (U102#(X1, X2, active X3) -> U102#(X1, X2, X3), U102#(X1, X2, active X3) -> U102#(X1, X2, X3))
    (U102#(X1, X2, active X3) -> U102#(X1, X2, X3), U102#(X1, X2, mark X3) -> U102#(X1, X2, X3))
    (U102#(X1, active X2, X3) -> U102#(X1, X2, X3), U102#(active X1, X2, X3) -> U102#(X1, X2, X3))
    (U102#(X1, active X2, X3) -> U102#(X1, X2, X3), U102#(mark X1, X2, X3) -> U102#(X1, X2, X3))
    (U102#(X1, active X2, X3) -> U102#(X1, X2, X3), U102#(X1, active X2, X3) -> U102#(X1, X2, X3))
    (U102#(X1, active X2, X3) -> U102#(X1, X2, X3), U102#(X1, mark X2, X3) -> U102#(X1, X2, X3))
    (U102#(X1, active X2, X3) -> U102#(X1, X2, X3), U102#(X1, X2, active X3) -> U102#(X1, X2, X3))
    (U102#(X1, active X2, X3) -> U102#(X1, X2, X3), U102#(X1, X2, mark X3) -> U102#(X1, X2, X3))
    (U102#(active X1, X2, X3) -> U102#(X1, X2, X3), U102#(active X1, X2, X3) -> U102#(X1, X2, X3))
    (U102#(active X1, X2, X3) -> U102#(X1, X2, X3), U102#(mark X1, X2, X3) -> U102#(X1, X2, X3))
    (U102#(active X1, X2, X3) -> U102#(X1, X2, X3), U102#(X1, active X2, X3) -> U102#(X1, X2, X3))
    (U102#(active X1, X2, X3) -> U102#(X1, X2, X3), U102#(X1, mark X2, X3) -> U102#(X1, X2, X3))
    (U102#(active X1, X2, X3) -> U102#(X1, X2, X3), U102#(X1, X2, active X3) -> U102#(X1, X2, X3))
    (U102#(active X1, X2, X3) -> U102#(X1, X2, X3), U102#(X1, X2, mark X3) -> U102#(X1, X2, X3))
    (U101#(X1, X2, active X3) -> U101#(X1, X2, X3), U101#(active X1, X2, X3) -> U101#(X1, X2, X3))
    (U101#(X1, X2, active X3) -> U101#(X1, X2, X3), U101#(mark X1, X2, X3) -> U101#(X1, X2, X3))
    (U101#(X1, X2, active X3) -> U101#(X1, X2, X3), U101#(X1, active X2, X3) -> U101#(X1, X2, X3))
    (U101#(X1, X2, active X3) -> U101#(X1, X2, X3), U101#(X1, mark X2, X3) -> U101#(X1, X2, X3))
    (U101#(X1, X2, active X3) -> U101#(X1, X2, X3), U101#(X1, X2, active X3) -> U101#(X1, X2, X3))
    (U101#(X1, X2, active X3) -> U101#(X1, X2, X3), U101#(X1, X2, mark X3) -> U101#(X1, X2, X3))
    (U101#(X1, active X2, X3) -> U101#(X1, X2, X3), U101#(active X1, X2, X3) -> U101#(X1, X2, X3))
    (U101#(X1, active X2, X3) -> U101#(X1, X2, X3), U101#(mark X1, X2, X3) -> U101#(X1, X2, X3))
    (U101#(X1, active X2, X3) -> U101#(X1, X2, X3), U101#(X1, active X2, X3) -> U101#(X1, X2, X3))
    (U101#(X1, active X2, X3) -> U101#(X1, X2, X3), U101#(X1, mark X2, X3) -> U101#(X1, X2, X3))
    (U101#(X1, active X2, X3) -> U101#(X1, X2, X3), U101#(X1, X2, active X3) -> U101#(X1, X2, X3))
    (U101#(X1, active X2, X3) -> U101#(X1, X2, X3), U101#(X1, X2, mark X3) -> U101#(X1, X2, X3))
    (U101#(active X1, X2, X3) -> U101#(X1, X2, X3), U101#(active X1, X2, X3) -> U101#(X1, X2, X3))
    (U101#(active X1, X2, X3) -> U101#(X1, X2, X3), U101#(mark X1, X2, X3) -> U101#(X1, X2, X3))
    (U101#(active X1, X2, X3) -> U101#(X1, X2, X3), U101#(X1, active X2, X3) -> U101#(X1, X2, X3))
    (U101#(active X1, X2, X3) -> U101#(X1, X2, X3), U101#(X1, mark X2, X3) -> U101#(X1, X2, X3))
    (U101#(active X1, X2, X3) -> U101#(X1, X2, X3), U101#(X1, X2, active X3) -> U101#(X1, X2, X3))
    (U101#(active X1, X2, X3) -> U101#(X1, X2, X3), U101#(X1, X2, mark X3) -> U101#(X1, X2, X3))
    (U103#(X1, X2, active X3) -> U103#(X1, X2, X3), U103#(active X1, X2, X3) -> U103#(X1, X2, X3))
    (U103#(X1, X2, active X3) -> U103#(X1, X2, X3), U103#(mark X1, X2, X3) -> U103#(X1, X2, X3))
    (U103#(X1, X2, active X3) -> U103#(X1, X2, X3), U103#(X1, active X2, X3) -> U103#(X1, X2, X3))
    (U103#(X1, X2, active X3) -> U103#(X1, X2, X3), U103#(X1, mark X2, X3) -> U103#(X1, X2, X3))
    (U103#(X1, X2, active X3) -> U103#(X1, X2, X3), U103#(X1, X2, active X3) -> U103#(X1, X2, X3))
    (U103#(X1, X2, active X3) -> U103#(X1, X2, X3), U103#(X1, X2, mark X3) -> U103#(X1, X2, X3))
    (U103#(X1, active X2, X3) -> U103#(X1, X2, X3), U103#(active X1, X2, X3) -> U103#(X1, X2, X3))
    (U103#(X1, active X2, X3) -> U103#(X1, X2, X3), U103#(mark X1, X2, X3) -> U103#(X1, X2, X3))
    (U103#(X1, active X2, X3) -> U103#(X1, X2, X3), U103#(X1, active X2, X3) -> U103#(X1, X2, X3))
    (U103#(X1, active X2, X3) -> U103#(X1, X2, X3), U103#(X1, mark X2, X3) -> U103#(X1, X2, X3))
    (U103#(X1, active X2, X3) -> U103#(X1, X2, X3), U103#(X1, X2, active X3) -> U103#(X1, X2, X3))
    (U103#(X1, active X2, X3) -> U103#(X1, X2, X3), U103#(X1, X2, mark X3) -> U103#(X1, X2, X3))
    (U103#(active X1, X2, X3) -> U103#(X1, X2, X3), U103#(active X1, X2, X3) -> U103#(X1, X2, X3))
    (U103#(active X1, X2, X3) -> U103#(X1, X2, X3), U103#(mark X1, X2, X3) -> U103#(X1, X2, X3))
    (U103#(active X1, X2, X3) -> U103#(X1, X2, X3), U103#(X1, active X2, X3) -> U103#(X1, X2, X3))
    (U103#(active X1, X2, X3) -> U103#(X1, X2, X3), U103#(X1, mark X2, X3) -> U103#(X1, X2, X3))
    (U103#(active X1, X2, X3) -> U103#(X1, X2, X3), U103#(X1, X2, active X3) -> U103#(X1, X2, X3))
    (U103#(active X1, X2, X3) -> U103#(X1, X2, X3), U103#(X1, X2, mark X3) -> U103#(X1, X2, X3))
    (U104#(X1, X2, active X3) -> U104#(X1, X2, X3), U104#(active X1, X2, X3) -> U104#(X1, X2, X3))
    (U104#(X1, X2, active X3) -> U104#(X1, X2, X3), U104#(mark X1, X2, X3) -> U104#(X1, X2, X3))
    (U104#(X1, X2, active X3) -> U104#(X1, X2, X3), U104#(X1, active X2, X3) -> U104#(X1, X2, X3))
    (U104#(X1, X2, active X3) -> U104#(X1, X2, X3), U104#(X1, mark X2, X3) -> U104#(X1, X2, X3))
    (U104#(X1, X2, active X3) -> U104#(X1, X2, X3), U104#(X1, X2, active X3) -> U104#(X1, X2, X3))
    (U104#(X1, X2, active X3) -> U104#(X1, X2, X3), U104#(X1, X2, mark X3) -> U104#(X1, X2, X3))
    (U104#(X1, active X2, X3) -> U104#(X1, X2, X3), U104#(active X1, X2, X3) -> U104#(X1, X2, X3))
    (U104#(X1, active X2, X3) -> U104#(X1, X2, X3), U104#(mark X1, X2, X3) -> U104#(X1, X2, X3))
    (U104#(X1, active X2, X3) -> U104#(X1, X2, X3), U104#(X1, active X2, X3) -> U104#(X1, X2, X3))
    (U104#(X1, active X2, X3) -> U104#(X1, X2, X3), U104#(X1, mark X2, X3) -> U104#(X1, X2, X3))
    (U104#(X1, active X2, X3) -> U104#(X1, X2, X3), U104#(X1, X2, active X3) -> U104#(X1, X2, X3))
    (U104#(X1, active X2, X3) -> U104#(X1, X2, X3), U104#(X1, X2, mark X3) -> U104#(X1, X2, X3))
    (U104#(active X1, X2, X3) -> U104#(X1, X2, X3), U104#(active X1, X2, X3) -> U104#(X1, X2, X3))
    (U104#(active X1, X2, X3) -> U104#(X1, X2, X3), U104#(mark X1, X2, X3) -> U104#(X1, X2, X3))
    (U104#(active X1, X2, X3) -> U104#(X1, X2, X3), U104#(X1, active X2, X3) -> U104#(X1, X2, X3))
    (U104#(active X1, X2, X3) -> U104#(X1, X2, X3), U104#(X1, mark X2, X3) -> U104#(X1, X2, X3))
    (U104#(active X1, X2, X3) -> U104#(X1, X2, X3), U104#(X1, X2, active X3) -> U104#(X1, X2, X3))
    (U104#(active X1, X2, X3) -> U104#(X1, X2, X3), U104#(X1, X2, mark X3) -> U104#(X1, X2, X3))
    (U112#(X1, X2, active X3) -> U112#(X1, X2, X3), U112#(active X1, X2, X3) -> U112#(X1, X2, X3))
    (U112#(X1, X2, active X3) -> U112#(X1, X2, X3), U112#(mark X1, X2, X3) -> U112#(X1, X2, X3))
    (U112#(X1, X2, active X3) -> U112#(X1, X2, X3), U112#(X1, active X2, X3) -> U112#(X1, X2, X3))
    (U112#(X1, X2, active X3) -> U112#(X1, X2, X3), U112#(X1, mark X2, X3) -> U112#(X1, X2, X3))
    (U112#(X1, X2, active X3) -> U112#(X1, X2, X3), U112#(X1, X2, active X3) -> U112#(X1, X2, X3))
    (U112#(X1, X2, active X3) -> U112#(X1, X2, X3), U112#(X1, X2, mark X3) -> U112#(X1, X2, X3))
    (U112#(X1, active X2, X3) -> U112#(X1, X2, X3), U112#(active X1, X2, X3) -> U112#(X1, X2, X3))
    (U112#(X1, active X2, X3) -> U112#(X1, X2, X3), U112#(mark X1, X2, X3) -> U112#(X1, X2, X3))
    (U112#(X1, active X2, X3) -> U112#(X1, X2, X3), U112#(X1, active X2, X3) -> U112#(X1, X2, X3))
    (U112#(X1, active X2, X3) -> U112#(X1, X2, X3), U112#(X1, mark X2, X3) -> U112#(X1, X2, X3))
    (U112#(X1, active X2, X3) -> U112#(X1, X2, X3), U112#(X1, X2, active X3) -> U112#(X1, X2, X3))
    (U112#(X1, active X2, X3) -> U112#(X1, X2, X3), U112#(X1, X2, mark X3) -> U112#(X1, X2, X3))
    (U112#(active X1, X2, X3) -> U112#(X1, X2, X3), U112#(active X1, X2, X3) -> U112#(X1, X2, X3))
    (U112#(active X1, X2, X3) -> U112#(X1, X2, X3), U112#(mark X1, X2, X3) -> U112#(X1, X2, X3))
    (U112#(active X1, X2, X3) -> U112#(X1, X2, X3), U112#(X1, active X2, X3) -> U112#(X1, X2, X3))
    (U112#(active X1, X2, X3) -> U112#(X1, X2, X3), U112#(X1, mark X2, X3) -> U112#(X1, X2, X3))
    (U112#(active X1, X2, X3) -> U112#(X1, X2, X3), U112#(X1, X2, active X3) -> U112#(X1, X2, X3))
    (U112#(active X1, X2, X3) -> U112#(X1, X2, X3), U112#(X1, X2, mark X3) -> U112#(X1, X2, X3))
    (U111#(X1, X2, active X3) -> U111#(X1, X2, X3), U111#(active X1, X2, X3) -> U111#(X1, X2, X3))
    (U111#(X1, X2, active X3) -> U111#(X1, X2, X3), U111#(mark X1, X2, X3) -> U111#(X1, X2, X3))
    (U111#(X1, X2, active X3) -> U111#(X1, X2, X3), U111#(X1, active X2, X3) -> U111#(X1, X2, X3))
    (U111#(X1, X2, active X3) -> U111#(X1, X2, X3), U111#(X1, mark X2, X3) -> U111#(X1, X2, X3))
    (U111#(X1, X2, active X3) -> U111#(X1, X2, X3), U111#(X1, X2, active X3) -> U111#(X1, X2, X3))
    (U111#(X1, X2, active X3) -> U111#(X1, X2, X3), U111#(X1, X2, mark X3) -> U111#(X1, X2, X3))
    (U111#(X1, active X2, X3) -> U111#(X1, X2, X3), U111#(active X1, X2, X3) -> U111#(X1, X2, X3))
    (U111#(X1, active X2, X3) -> U111#(X1, X2, X3), U111#(mark X1, X2, X3) -> U111#(X1, X2, X3))
    (U111#(X1, active X2, X3) -> U111#(X1, X2, X3), U111#(X1, active X2, X3) -> U111#(X1, X2, X3))
    (U111#(X1, active X2, X3) -> U111#(X1, X2, X3), U111#(X1, mark X2, X3) -> U111#(X1, X2, X3))
    (U111#(X1, active X2, X3) -> U111#(X1, X2, X3), U111#(X1, X2, active X3) -> U111#(X1, X2, X3))
    (U111#(X1, active X2, X3) -> U111#(X1, X2, X3), U111#(X1, X2, mark X3) -> U111#(X1, X2, X3))
    (U111#(active X1, X2, X3) -> U111#(X1, X2, X3), U111#(active X1, X2, X3) -> U111#(X1, X2, X3))
    (U111#(active X1, X2, X3) -> U111#(X1, X2, X3), U111#(mark X1, X2, X3) -> U111#(X1, X2, X3))
    (U111#(active X1, X2, X3) -> U111#(X1, X2, X3), U111#(X1, active X2, X3) -> U111#(X1, X2, X3))
    (U111#(active X1, X2, X3) -> U111#(X1, X2, X3), U111#(X1, mark X2, X3) -> U111#(X1, X2, X3))
    (U111#(active X1, X2, X3) -> U111#(X1, X2, X3), U111#(X1, X2, active X3) -> U111#(X1, X2, X3))
    (U111#(active X1, X2, X3) -> U111#(X1, X2, X3), U111#(X1, X2, mark X3) -> U111#(X1, X2, X3))
    (U113#(X1, X2, active X3) -> U113#(X1, X2, X3), U113#(active X1, X2, X3) -> U113#(X1, X2, X3))
    (U113#(X1, X2, active X3) -> U113#(X1, X2, X3), U113#(mark X1, X2, X3) -> U113#(X1, X2, X3))
    (U113#(X1, X2, active X3) -> U113#(X1, X2, X3), U113#(X1, active X2, X3) -> U113#(X1, X2, X3))
    (U113#(X1, X2, active X3) -> U113#(X1, X2, X3), U113#(X1, mark X2, X3) -> U113#(X1, X2, X3))
    (U113#(X1, X2, active X3) -> U113#(X1, X2, X3), U113#(X1, X2, active X3) -> U113#(X1, X2, X3))
    (U113#(X1, X2, active X3) -> U113#(X1, X2, X3), U113#(X1, X2, mark X3) -> U113#(X1, X2, X3))
    (U113#(X1, active X2, X3) -> U113#(X1, X2, X3), U113#(active X1, X2, X3) -> U113#(X1, X2, X3))
    (U113#(X1, active X2, X3) -> U113#(X1, X2, X3), U113#(mark X1, X2, X3) -> U113#(X1, X2, X3))
    (U113#(X1, active X2, X3) -> U113#(X1, X2, X3), U113#(X1, active X2, X3) -> U113#(X1, X2, X3))
    (U113#(X1, active X2, X3) -> U113#(X1, X2, X3), U113#(X1, mark X2, X3) -> U113#(X1, X2, X3))
    (U113#(X1, active X2, X3) -> U113#(X1, X2, X3), U113#(X1, X2, active X3) -> U113#(X1, X2, X3))
    (U113#(X1, active X2, X3) -> U113#(X1, X2, X3), U113#(X1, X2, mark X3) -> U113#(X1, X2, X3))
    (U113#(active X1, X2, X3) -> U113#(X1, X2, X3), U113#(active X1, X2, X3) -> U113#(X1, X2, X3))
    (U113#(active X1, X2, X3) -> U113#(X1, X2, X3), U113#(mark X1, X2, X3) -> U113#(X1, X2, X3))
    (U113#(active X1, X2, X3) -> U113#(X1, X2, X3), U113#(X1, active X2, X3) -> U113#(X1, X2, X3))
    (U113#(active X1, X2, X3) -> U113#(X1, X2, X3), U113#(X1, mark X2, X3) -> U113#(X1, X2, X3))
    (U113#(active X1, X2, X3) -> U113#(X1, X2, X3), U113#(X1, X2, active X3) -> U113#(X1, X2, X3))
    (U113#(active X1, X2, X3) -> U113#(X1, X2, X3), U113#(X1, X2, mark X3) -> U113#(X1, X2, X3))
    (U42#(X1, X2, active X3) -> U42#(X1, X2, X3), U42#(active X1, X2, X3) -> U42#(X1, X2, X3))
    (U42#(X1, X2, active X3) -> U42#(X1, X2, X3), U42#(mark X1, X2, X3) -> U42#(X1, X2, X3))
    (U42#(X1, X2, active X3) -> U42#(X1, X2, X3), U42#(X1, active X2, X3) -> U42#(X1, X2, X3))
    (U42#(X1, X2, active X3) -> U42#(X1, X2, X3), U42#(X1, mark X2, X3) -> U42#(X1, X2, X3))
    (U42#(X1, X2, active X3) -> U42#(X1, X2, X3), U42#(X1, X2, active X3) -> U42#(X1, X2, X3))
    (U42#(X1, X2, active X3) -> U42#(X1, X2, X3), U42#(X1, X2, mark X3) -> U42#(X1, X2, X3))
    (U42#(X1, active X2, X3) -> U42#(X1, X2, X3), U42#(active X1, X2, X3) -> U42#(X1, X2, X3))
    (U42#(X1, active X2, X3) -> U42#(X1, X2, X3), U42#(mark X1, X2, X3) -> U42#(X1, X2, X3))
    (U42#(X1, active X2, X3) -> U42#(X1, X2, X3), U42#(X1, active X2, X3) -> U42#(X1, X2, X3))
    (U42#(X1, active X2, X3) -> U42#(X1, X2, X3), U42#(X1, mark X2, X3) -> U42#(X1, X2, X3))
    (U42#(X1, active X2, X3) -> U42#(X1, X2, X3), U42#(X1, X2, active X3) -> U42#(X1, X2, X3))
    (U42#(X1, active X2, X3) -> U42#(X1, X2, X3), U42#(X1, X2, mark X3) -> U42#(X1, X2, X3))
    (U42#(active X1, X2, X3) -> U42#(X1, X2, X3), U42#(active X1, X2, X3) -> U42#(X1, X2, X3))
    (U42#(active X1, X2, X3) -> U42#(X1, X2, X3), U42#(mark X1, X2, X3) -> U42#(X1, X2, X3))
    (U42#(active X1, X2, X3) -> U42#(X1, X2, X3), U42#(X1, active X2, X3) -> U42#(X1, X2, X3))
    (U42#(active X1, X2, X3) -> U42#(X1, X2, X3), U42#(X1, mark X2, X3) -> U42#(X1, X2, X3))
    (U42#(active X1, X2, X3) -> U42#(X1, X2, X3), U42#(X1, X2, active X3) -> U42#(X1, X2, X3))
    (U42#(active X1, X2, X3) -> U42#(X1, X2, X3), U42#(X1, X2, mark X3) -> U42#(X1, X2, X3))
    (U41#(X1, X2, active X3) -> U41#(X1, X2, X3), U41#(active X1, X2, X3) -> U41#(X1, X2, X3))
    (U41#(X1, X2, active X3) -> U41#(X1, X2, X3), U41#(mark X1, X2, X3) -> U41#(X1, X2, X3))
    (U41#(X1, X2, active X3) -> U41#(X1, X2, X3), U41#(X1, active X2, X3) -> U41#(X1, X2, X3))
    (U41#(X1, X2, active X3) -> U41#(X1, X2, X3), U41#(X1, mark X2, X3) -> U41#(X1, X2, X3))
    (U41#(X1, X2, active X3) -> U41#(X1, X2, X3), U41#(X1, X2, active X3) -> U41#(X1, X2, X3))
    (U41#(X1, X2, active X3) -> U41#(X1, X2, X3), U41#(X1, X2, mark X3) -> U41#(X1, X2, X3))
    (U41#(X1, active X2, X3) -> U41#(X1, X2, X3), U41#(active X1, X2, X3) -> U41#(X1, X2, X3))
    (U41#(X1, active X2, X3) -> U41#(X1, X2, X3), U41#(mark X1, X2, X3) -> U41#(X1, X2, X3))
    (U41#(X1, active X2, X3) -> U41#(X1, X2, X3), U41#(X1, active X2, X3) -> U41#(X1, X2, X3))
    (U41#(X1, active X2, X3) -> U41#(X1, X2, X3), U41#(X1, mark X2, X3) -> U41#(X1, X2, X3))
    (U41#(X1, active X2, X3) -> U41#(X1, X2, X3), U41#(X1, X2, active X3) -> U41#(X1, X2, X3))
    (U41#(X1, active X2, X3) -> U41#(X1, X2, X3), U41#(X1, X2, mark X3) -> U41#(X1, X2, X3))
    (U41#(active X1, X2, X3) -> U41#(X1, X2, X3), U41#(active X1, X2, X3) -> U41#(X1, X2, X3))
    (U41#(active X1, X2, X3) -> U41#(X1, X2, X3), U41#(mark X1, X2, X3) -> U41#(X1, X2, X3))
    (U41#(active X1, X2, X3) -> U41#(X1, X2, X3), U41#(X1, active X2, X3) -> U41#(X1, X2, X3))
    (U41#(active X1, X2, X3) -> U41#(X1, X2, X3), U41#(X1, mark X2, X3) -> U41#(X1, X2, X3))
    (U41#(active X1, X2, X3) -> U41#(X1, X2, X3), U41#(X1, X2, active X3) -> U41#(X1, X2, X3))
    (U41#(active X1, X2, X3) -> U41#(X1, X2, X3), U41#(X1, X2, mark X3) -> U41#(X1, X2, X3))
    (U43#(X1, X2, active X3) -> U43#(X1, X2, X3), U43#(active X1, X2, X3) -> U43#(X1, X2, X3))
    (U43#(X1, X2, active X3) -> U43#(X1, X2, X3), U43#(mark X1, X2, X3) -> U43#(X1, X2, X3))
    (U43#(X1, X2, active X3) -> U43#(X1, X2, X3), U43#(X1, active X2, X3) -> U43#(X1, X2, X3))
    (U43#(X1, X2, active X3) -> U43#(X1, X2, X3), U43#(X1, mark X2, X3) -> U43#(X1, X2, X3))
    (U43#(X1, X2, active X3) -> U43#(X1, X2, X3), U43#(X1, X2, active X3) -> U43#(X1, X2, X3))
    (U43#(X1, X2, active X3) -> U43#(X1, X2, X3), U43#(X1, X2, mark X3) -> U43#(X1, X2, X3))
    (U43#(X1, active X2, X3) -> U43#(X1, X2, X3), U43#(active X1, X2, X3) -> U43#(X1, X2, X3))
    (U43#(X1, active X2, X3) -> U43#(X1, X2, X3), U43#(mark X1, X2, X3) -> U43#(X1, X2, X3))
    (U43#(X1, active X2, X3) -> U43#(X1, X2, X3), U43#(X1, active X2, X3) -> U43#(X1, X2, X3))
    (U43#(X1, active X2, X3) -> U43#(X1, X2, X3), U43#(X1, mark X2, X3) -> U43#(X1, X2, X3))
    (U43#(X1, active X2, X3) -> U43#(X1, X2, X3), U43#(X1, X2, active X3) -> U43#(X1, X2, X3))
    (U43#(X1, active X2, X3) -> U43#(X1, X2, X3), U43#(X1, X2, mark X3) -> U43#(X1, X2, X3))
    (U43#(active X1, X2, X3) -> U43#(X1, X2, X3), U43#(active X1, X2, X3) -> U43#(X1, X2, X3))
    (U43#(active X1, X2, X3) -> U43#(X1, X2, X3), U43#(mark X1, X2, X3) -> U43#(X1, X2, X3))
    (U43#(active X1, X2, X3) -> U43#(X1, X2, X3), U43#(X1, active X2, X3) -> U43#(X1, X2, X3))
    (U43#(active X1, X2, X3) -> U43#(X1, X2, X3), U43#(X1, mark X2, X3) -> U43#(X1, X2, X3))
    (U43#(active X1, X2, X3) -> U43#(X1, X2, X3), U43#(X1, X2, active X3) -> U43#(X1, X2, X3))
    (U43#(active X1, X2, X3) -> U43#(X1, X2, X3), U43#(X1, X2, mark X3) -> U43#(X1, X2, X3))
    (U44#(X1, X2, active X3) -> U44#(X1, X2, X3), U44#(active X1, X2, X3) -> U44#(X1, X2, X3))
    (U44#(X1, X2, active X3) -> U44#(X1, X2, X3), U44#(mark X1, X2, X3) -> U44#(X1, X2, X3))
    (U44#(X1, X2, active X3) -> U44#(X1, X2, X3), U44#(X1, active X2, X3) -> U44#(X1, X2, X3))
    (U44#(X1, X2, active X3) -> U44#(X1, X2, X3), U44#(X1, mark X2, X3) -> U44#(X1, X2, X3))
    (U44#(X1, X2, active X3) -> U44#(X1, X2, X3), U44#(X1, X2, active X3) -> U44#(X1, X2, X3))
    (U44#(X1, X2, active X3) -> U44#(X1, X2, X3), U44#(X1, X2, mark X3) -> U44#(X1, X2, X3))
    (U44#(X1, active X2, X3) -> U44#(X1, X2, X3), U44#(active X1, X2, X3) -> U44#(X1, X2, X3))
    (U44#(X1, active X2, X3) -> U44#(X1, X2, X3), U44#(mark X1, X2, X3) -> U44#(X1, X2, X3))
    (U44#(X1, active X2, X3) -> U44#(X1, X2, X3), U44#(X1, active X2, X3) -> U44#(X1, X2, X3))
    (U44#(X1, active X2, X3) -> U44#(X1, X2, X3), U44#(X1, mark X2, X3) -> U44#(X1, X2, X3))
    (U44#(X1, active X2, X3) -> U44#(X1, X2, X3), U44#(X1, X2, active X3) -> U44#(X1, X2, X3))
    (U44#(X1, active X2, X3) -> U44#(X1, X2, X3), U44#(X1, X2, mark X3) -> U44#(X1, X2, X3))
    (U44#(active X1, X2, X3) -> U44#(X1, X2, X3), U44#(active X1, X2, X3) -> U44#(X1, X2, X3))
    (U44#(active X1, X2, X3) -> U44#(X1, X2, X3), U44#(mark X1, X2, X3) -> U44#(X1, X2, X3))
    (U44#(active X1, X2, X3) -> U44#(X1, X2, X3), U44#(X1, active X2, X3) -> U44#(X1, X2, X3))
    (U44#(active X1, X2, X3) -> U44#(X1, X2, X3), U44#(X1, mark X2, X3) -> U44#(X1, X2, X3))
    (U44#(active X1, X2, X3) -> U44#(X1, X2, X3), U44#(X1, X2, active X3) -> U44#(X1, X2, X3))
    (U44#(active X1, X2, X3) -> U44#(X1, X2, X3), U44#(X1, X2, mark X3) -> U44#(X1, X2, X3))
    (U92#(X1, X2, active X3) -> U92#(X1, X2, X3), U92#(active X1, X2, X3) -> U92#(X1, X2, X3))
    (U92#(X1, X2, active X3) -> U92#(X1, X2, X3), U92#(mark X1, X2, X3) -> U92#(X1, X2, X3))
    (U92#(X1, X2, active X3) -> U92#(X1, X2, X3), U92#(X1, active X2, X3) -> U92#(X1, X2, X3))
    (U92#(X1, X2, active X3) -> U92#(X1, X2, X3), U92#(X1, mark X2, X3) -> U92#(X1, X2, X3))
    (U92#(X1, X2, active X3) -> U92#(X1, X2, X3), U92#(X1, X2, active X3) -> U92#(X1, X2, X3))
    (U92#(X1, X2, active X3) -> U92#(X1, X2, X3), U92#(X1, X2, mark X3) -> U92#(X1, X2, X3))
    (U92#(X1, active X2, X3) -> U92#(X1, X2, X3), U92#(active X1, X2, X3) -> U92#(X1, X2, X3))
    (U92#(X1, active X2, X3) -> U92#(X1, X2, X3), U92#(mark X1, X2, X3) -> U92#(X1, X2, X3))
    (U92#(X1, active X2, X3) -> U92#(X1, X2, X3), U92#(X1, active X2, X3) -> U92#(X1, X2, X3))
    (U92#(X1, active X2, X3) -> U92#(X1, X2, X3), U92#(X1, mark X2, X3) -> U92#(X1, X2, X3))
    (U92#(X1, active X2, X3) -> U92#(X1, X2, X3), U92#(X1, X2, active X3) -> U92#(X1, X2, X3))
    (U92#(X1, active X2, X3) -> U92#(X1, X2, X3), U92#(X1, X2, mark X3) -> U92#(X1, X2, X3))
    (U92#(active X1, X2, X3) -> U92#(X1, X2, X3), U92#(active X1, X2, X3) -> U92#(X1, X2, X3))
    (U92#(active X1, X2, X3) -> U92#(X1, X2, X3), U92#(mark X1, X2, X3) -> U92#(X1, X2, X3))
    (U92#(active X1, X2, X3) -> U92#(X1, X2, X3), U92#(X1, active X2, X3) -> U92#(X1, X2, X3))
    (U92#(active X1, X2, X3) -> U92#(X1, X2, X3), U92#(X1, mark X2, X3) -> U92#(X1, X2, X3))
    (U92#(active X1, X2, X3) -> U92#(X1, X2, X3), U92#(X1, X2, active X3) -> U92#(X1, X2, X3))
    (U92#(active X1, X2, X3) -> U92#(X1, X2, X3), U92#(X1, X2, mark X3) -> U92#(X1, X2, X3))
    (U91#(X1, X2, active X3) -> U91#(X1, X2, X3), U91#(active X1, X2, X3) -> U91#(X1, X2, X3))
    (U91#(X1, X2, active X3) -> U91#(X1, X2, X3), U91#(mark X1, X2, X3) -> U91#(X1, X2, X3))
    (U91#(X1, X2, active X3) -> U91#(X1, X2, X3), U91#(X1, active X2, X3) -> U91#(X1, X2, X3))
    (U91#(X1, X2, active X3) -> U91#(X1, X2, X3), U91#(X1, mark X2, X3) -> U91#(X1, X2, X3))
    (U91#(X1, X2, active X3) -> U91#(X1, X2, X3), U91#(X1, X2, active X3) -> U91#(X1, X2, X3))
    (U91#(X1, X2, active X3) -> U91#(X1, X2, X3), U91#(X1, X2, mark X3) -> U91#(X1, X2, X3))
    (U91#(X1, active X2, X3) -> U91#(X1, X2, X3), U91#(active X1, X2, X3) -> U91#(X1, X2, X3))
    (U91#(X1, active X2, X3) -> U91#(X1, X2, X3), U91#(mark X1, X2, X3) -> U91#(X1, X2, X3))
    (U91#(X1, active X2, X3) -> U91#(X1, X2, X3), U91#(X1, active X2, X3) -> U91#(X1, X2, X3))
    (U91#(X1, active X2, X3) -> U91#(X1, X2, X3), U91#(X1, mark X2, X3) -> U91#(X1, X2, X3))
    (U91#(X1, active X2, X3) -> U91#(X1, X2, X3), U91#(X1, X2, active X3) -> U91#(X1, X2, X3))
    (U91#(X1, active X2, X3) -> U91#(X1, X2, X3), U91#(X1, X2, mark X3) -> U91#(X1, X2, X3))
    (U91#(active X1, X2, X3) -> U91#(X1, X2, X3), U91#(active X1, X2, X3) -> U91#(X1, X2, X3))
    (U91#(active X1, X2, X3) -> U91#(X1, X2, X3), U91#(mark X1, X2, X3) -> U91#(X1, X2, X3))
    (U91#(active X1, X2, X3) -> U91#(X1, X2, X3), U91#(X1, active X2, X3) -> U91#(X1, X2, X3))
    (U91#(active X1, X2, X3) -> U91#(X1, X2, X3), U91#(X1, mark X2, X3) -> U91#(X1, X2, X3))
    (U91#(active X1, X2, X3) -> U91#(X1, X2, X3), U91#(X1, X2, active X3) -> U91#(X1, X2, X3))
    (U91#(active X1, X2, X3) -> U91#(X1, X2, X3), U91#(X1, X2, mark X3) -> U91#(X1, X2, X3))
    (U93#(X1, X2, active X3) -> U93#(X1, X2, X3), U93#(active X1, X2, X3) -> U93#(X1, X2, X3))
    (U93#(X1, X2, active X3) -> U93#(X1, X2, X3), U93#(mark X1, X2, X3) -> U93#(X1, X2, X3))
    (U93#(X1, X2, active X3) -> U93#(X1, X2, X3), U93#(X1, active X2, X3) -> U93#(X1, X2, X3))
    (U93#(X1, X2, active X3) -> U93#(X1, X2, X3), U93#(X1, mark X2, X3) -> U93#(X1, X2, X3))
    (U93#(X1, X2, active X3) -> U93#(X1, X2, X3), U93#(X1, X2, active X3) -> U93#(X1, X2, X3))
    (U93#(X1, X2, active X3) -> U93#(X1, X2, X3), U93#(X1, X2, mark X3) -> U93#(X1, X2, X3))
    (U93#(X1, active X2, X3) -> U93#(X1, X2, X3), U93#(active X1, X2, X3) -> U93#(X1, X2, X3))
    (U93#(X1, active X2, X3) -> U93#(X1, X2, X3), U93#(mark X1, X2, X3) -> U93#(X1, X2, X3))
    (U93#(X1, active X2, X3) -> U93#(X1, X2, X3), U93#(X1, active X2, X3) -> U93#(X1, X2, X3))
    (U93#(X1, active X2, X3) -> U93#(X1, X2, X3), U93#(X1, mark X2, X3) -> U93#(X1, X2, X3))
    (U93#(X1, active X2, X3) -> U93#(X1, X2, X3), U93#(X1, X2, active X3) -> U93#(X1, X2, X3))
    (U93#(X1, active X2, X3) -> U93#(X1, X2, X3), U93#(X1, X2, mark X3) -> U93#(X1, X2, X3))
    (U93#(active X1, X2, X3) -> U93#(X1, X2, X3), U93#(active X1, X2, X3) -> U93#(X1, X2, X3))
    (U93#(active X1, X2, X3) -> U93#(X1, X2, X3), U93#(mark X1, X2, X3) -> U93#(X1, X2, X3))
    (U93#(active X1, X2, X3) -> U93#(X1, X2, X3), U93#(X1, active X2, X3) -> U93#(X1, X2, X3))
    (U93#(active X1, X2, X3) -> U93#(X1, X2, X3), U93#(X1, mark X2, X3) -> U93#(X1, X2, X3))
    (U93#(active X1, X2, X3) -> U93#(X1, X2, X3), U93#(X1, X2, active X3) -> U93#(X1, X2, X3))
    (U93#(active X1, X2, X3) -> U93#(X1, X2, X3), U93#(X1, X2, mark X3) -> U93#(X1, X2, X3))
    (U94#(X1, X2, active X3) -> U94#(X1, X2, X3), U94#(active X1, X2, X3) -> U94#(X1, X2, X3))
    (U94#(X1, X2, active X3) -> U94#(X1, X2, X3), U94#(mark X1, X2, X3) -> U94#(X1, X2, X3))
    (U94#(X1, X2, active X3) -> U94#(X1, X2, X3), U94#(X1, active X2, X3) -> U94#(X1, X2, X3))
    (U94#(X1, X2, active X3) -> U94#(X1, X2, X3), U94#(X1, mark X2, X3) -> U94#(X1, X2, X3))
    (U94#(X1, X2, active X3) -> U94#(X1, X2, X3), U94#(X1, X2, active X3) -> U94#(X1, X2, X3))
    (U94#(X1, X2, active X3) -> U94#(X1, X2, X3), U94#(X1, X2, mark X3) -> U94#(X1, X2, X3))
    (U94#(X1, active X2, X3) -> U94#(X1, X2, X3), U94#(active X1, X2, X3) -> U94#(X1, X2, X3))
    (U94#(X1, active X2, X3) -> U94#(X1, X2, X3), U94#(mark X1, X2, X3) -> U94#(X1, X2, X3))
    (U94#(X1, active X2, X3) -> U94#(X1, X2, X3), U94#(X1, active X2, X3) -> U94#(X1, X2, X3))
    (U94#(X1, active X2, X3) -> U94#(X1, X2, X3), U94#(X1, mark X2, X3) -> U94#(X1, X2, X3))
    (U94#(X1, active X2, X3) -> U94#(X1, X2, X3), U94#(X1, X2, active X3) -> U94#(X1, X2, X3))
    (U94#(X1, active X2, X3) -> U94#(X1, X2, X3), U94#(X1, X2, mark X3) -> U94#(X1, X2, X3))
    (U94#(active X1, X2, X3) -> U94#(X1, X2, X3), U94#(active X1, X2, X3) -> U94#(X1, X2, X3))
    (U94#(active X1, X2, X3) -> U94#(X1, X2, X3), U94#(mark X1, X2, X3) -> U94#(X1, X2, X3))
    (U94#(active X1, X2, X3) -> U94#(X1, X2, X3), U94#(X1, active X2, X3) -> U94#(X1, X2, X3))
    (U94#(active X1, X2, X3) -> U94#(X1, X2, X3), U94#(X1, mark X2, X3) -> U94#(X1, X2, X3))
    (U94#(active X1, X2, X3) -> U94#(X1, X2, X3), U94#(X1, X2, active X3) -> U94#(X1, X2, X3))
    (U94#(active X1, X2, X3) -> U94#(X1, X2, X3), U94#(X1, X2, mark X3) -> U94#(X1, X2, X3))
    (mark# U13 X -> active# U13 mark X, active# U13 tt() -> mark# tt())
    (mark# U23 X -> active# U23 mark X, active# U23 tt() -> mark# tt())
    (mark# U46 X -> active# U46 mark X, active# U46 tt() -> mark# tt())
    (mark# U62 X -> active# U62 mark X, active# U62 tt() -> mark# tt())
    (mark# U81 X -> active# U81 mark X, active# U81 tt() -> mark# tt())
    (active# isNatKind s V1 -> mark# U81 isNatKind V1, mark# U81 X -> U81# mark X)
    (active# isNatKind s V1 -> mark# U81 isNatKind V1, mark# U81 X -> active# U81 mark X)
    (active# isNatKind s V1 -> mark# U81 isNatKind V1, mark# U81 X -> mark# X)
    (active# U105(tt(), V2) -> mark# U106 isNatIList V2, mark# U106 X -> U106# mark X)
    (active# U105(tt(), V2) -> mark# U106 isNatIList V2, mark# U106 X -> active# U106 mark X)
    (active# U105(tt(), V2) -> mark# U106 isNatIList V2, mark# U106 X -> mark# X)
    (active# U114(tt(), L) -> mark# s length L, mark# s X -> s# mark X)
    (active# U114(tt(), L) -> mark# s length L, mark# s X -> active# s mark X)
    (active# U114(tt(), L) -> mark# s length L, mark# s X -> mark# X)
    (active# U22(tt(), V1) -> mark# U23 isNat V1, mark# U23 X -> U23# mark X)
    (active# U22(tt(), V1) -> mark# U23 isNat V1, mark# U23 X -> active# U23 mark X)
    (active# U22(tt(), V1) -> mark# U23 isNat V1, mark# U23 X -> mark# X)
    (active# U45(tt(), V2) -> mark# U46 isNatIList V2, mark# U46 X -> U46# mark X)
    (active# U45(tt(), V2) -> mark# U46 isNatIList V2, mark# U46 X -> active# U46 mark X)
    (active# U45(tt(), V2) -> mark# U46 isNatIList V2, mark# U46 X -> mark# X)
    (active# U61(tt(), V2) -> mark# U62 isNatIListKind V2, mark# U62 X -> U62# mark X)
    (active# U61(tt(), V2) -> mark# U62 isNatIListKind V2, mark# U62 X -> active# U62 mark X)
    (active# U61(tt(), V2) -> mark# U62 isNatIListKind V2, mark# U62 X -> mark# X)
    (active# U121(tt(), IL) -> isNatIListKind# IL, isNatIListKind# active X -> isNatIListKind# X)
    (active# U121(tt(), IL) -> isNatIListKind# IL, isNatIListKind# mark X -> isNatIListKind# X)
    (active# take(0(), IL) -> isNatIList# IL, isNatIList# active X -> isNatIList# X)
    (active# take(0(), IL) -> isNatIList# IL, isNatIList# mark X -> isNatIList# X)
    (active# U112(tt(), L, N) -> U113#(isNat N, L, N), U113#(X1, active X2, X3) -> U113#(X1, X2, X3))
    (active# U112(tt(), L, N) -> U113#(isNat N, L, N), U113#(X1, mark X2, X3) -> U113#(X1, X2, X3))
    (active# U112(tt(), L, N) -> U113#(isNat N, L, N), U113#(X1, X2, active X3) -> U113#(X1, X2, X3))
    (active# U112(tt(), L, N) -> U113#(isNat N, L, N), U113#(X1, X2, mark X3) -> U113#(X1, X2, X3))
    (active# length cons(N, L) -> U111#(isNatList L, L, N), U111#(X1, active X2, X3) -> U111#(X1, X2, X3))
    (active# length cons(N, L) -> U111#(isNatList L, L, N), U111#(X1, mark X2, X3) -> U111#(X1, X2, X3))
    (active# length cons(N, L) -> U111#(isNatList L, L, N), U111#(X1, X2, active X3) -> U111#(X1, X2, X3))
    (active# length cons(N, L) -> U111#(isNatList L, L, N), U111#(X1, X2, mark X3) -> U111#(X1, X2, X3))
    (mark# zeros() -> active# zeros(), active# zeros() -> cons#(0(), zeros()))
    (mark# zeros() -> active# zeros(), active# zeros() -> mark# cons(0(), zeros()))
    (active# isNatIListKind zeros() -> mark# tt(), mark# tt() -> active# tt())
    (active# isNat 0() -> mark# tt(), mark# tt() -> active# tt())
    (active# isNatIList zeros() -> mark# tt(), mark# tt() -> active# tt())
    (active# U13 tt() -> mark# tt(), mark# tt() -> active# tt())
    (active# U122 tt() -> mark# nil(), mark# nil() -> active# nil())
    (active# U33 tt() -> mark# tt(), mark# tt() -> active# tt())
    (active# U52 tt() -> mark# tt(), mark# tt() -> active# tt())
    (active# U71 tt() -> mark# tt(), mark# tt() -> active# tt())
    (active# U96 tt() -> mark# tt(), mark# tt() -> active# tt())
    (active# U136(tt(), IL, M, N) -> cons#(N, take(M, IL)), cons#(active X1, X2) -> cons#(X1, X2))
    (active# U136(tt(), IL, M, N) -> cons#(N, take(M, IL)), cons#(mark X1, X2) -> cons#(X1, X2))
    (active# U101(tt(), V1, V2) -> U102#(isNatKind V1, V1, V2), U102#(X1, active X2, X3) -> U102#(X1, X2, X3))
    (active# U101(tt(), V1, V2) -> U102#(isNatKind V1, V1, V2), U102#(X1, mark X2, X3) -> U102#(X1, X2, X3))
    (active# U101(tt(), V1, V2) -> U102#(isNatKind V1, V1, V2), U102#(X1, X2, active X3) -> U102#(X1, X2, X3))
    (active# U101(tt(), V1, V2) -> U102#(isNatKind V1, V1, V2), U102#(X1, X2, mark X3) -> U102#(X1, X2, X3))
    (active# isNatIList cons(V1, V2) -> U41#(isNatKind V1, V1, V2), U41#(X1, active X2, X3) -> U41#(X1, X2, X3))
    (active# isNatIList cons(V1, V2) -> U41#(isNatKind V1, V1, V2), U41#(X1, mark X2, X3) -> U41#(X1, X2, X3))
    (active# isNatIList cons(V1, V2) -> U41#(isNatKind V1, V1, V2), U41#(X1, X2, active X3) -> U41#(X1, X2, X3))
    (active# isNatIList cons(V1, V2) -> U41#(isNatKind V1, V1, V2), U41#(X1, X2, mark X3) -> U41#(X1, X2, X3))
    (active# isNatList take(V1, V2) -> U101#(isNatKind V1, V1, V2), U101#(X1, active X2, X3) -> U101#(X1, X2, X3))
    (active# isNatList take(V1, V2) -> U101#(isNatKind V1, V1, V2), U101#(X1, mark X2, X3) -> U101#(X1, X2, X3))
    (active# isNatList take(V1, V2) -> U101#(isNatKind V1, V1, V2), U101#(X1, X2, active X3) -> U101#(X1, X2, X3))
    (active# isNatList take(V1, V2) -> U101#(isNatKind V1, V1, V2), U101#(X1, X2, mark X3) -> U101#(X1, X2, X3))
    (active# U41(tt(), V1, V2) -> U42#(isNatKind V1, V1, V2), U42#(X1, active X2, X3) -> U42#(X1, X2, X3))
    (active# U41(tt(), V1, V2) -> U42#(isNatKind V1, V1, V2), U42#(X1, mark X2, X3) -> U42#(X1, X2, X3))
    (active# U41(tt(), V1, V2) -> U42#(isNatKind V1, V1, V2), U42#(X1, X2, active X3) -> U42#(X1, X2, X3))
    (active# U41(tt(), V1, V2) -> U42#(isNatKind V1, V1, V2), U42#(X1, X2, mark X3) -> U42#(X1, X2, X3))
    (active# U92(tt(), V1, V2) -> U93#(isNatIListKind V2, V1, V2), U93#(X1, active X2, X3) -> U93#(X1, X2, X3))
    (active# U92(tt(), V1, V2) -> U93#(isNatIListKind V2, V1, V2), U93#(X1, mark X2, X3) -> U93#(X1, X2, X3))
    (active# U92(tt(), V1, V2) -> U93#(isNatIListKind V2, V1, V2), U93#(X1, X2, active X3) -> U93#(X1, X2, X3))
    (active# U92(tt(), V1, V2) -> U93#(isNatIListKind V2, V1, V2), U93#(X1, X2, mark X3) -> U93#(X1, X2, X3))
    (active# U93(tt(), V1, V2) -> U94#(isNatIListKind V2, V1, V2), U94#(X1, active X2, X3) -> U94#(X1, X2, X3))
    (active# U93(tt(), V1, V2) -> U94#(isNatIListKind V2, V1, V2), U94#(X1, mark X2, X3) -> U94#(X1, X2, X3))
    (active# U93(tt(), V1, V2) -> U94#(isNatIListKind V2, V1, V2), U94#(X1, X2, active X3) -> U94#(X1, X2, X3))
    (active# U93(tt(), V1, V2) -> U94#(isNatIListKind V2, V1, V2), U94#(X1, X2, mark X3) -> U94#(X1, X2, X3))
    (mark# U131(X1, X2, X3, X4) -> U131#(mark X1, X2, X3, X4), U131#(active X1, X2, X3, X4) -> U131#(X1, X2, X3, X4))
    (mark# U131(X1, X2, X3, X4) -> U131#(mark X1, X2, X3, X4), U131#(mark X1, X2, X3, X4) -> U131#(X1, X2, X3, X4))
    (mark# U131(X1, X2, X3, X4) -> U131#(mark X1, X2, X3, X4), U131#(X1, active X2, X3, X4) -> U131#(X1, X2, X3, X4))
    (mark# U131(X1, X2, X3, X4) -> U131#(mark X1, X2, X3, X4), U131#(X1, mark X2, X3, X4) -> U131#(X1, X2, X3, X4))
    (mark# U131(X1, X2, X3, X4) -> U131#(mark X1, X2, X3, X4), U131#(X1, X2, active X3, X4) -> U131#(X1, X2, X3, X4))
    (mark# U131(X1, X2, X3, X4) -> U131#(mark X1, X2, X3, X4), U131#(X1, X2, mark X3, X4) -> U131#(X1, X2, X3, X4))
    (mark# U131(X1, X2, X3, X4) -> U131#(mark X1, X2, X3, X4), U131#(X1, X2, X3, active X4) -> U131#(X1, X2, X3, X4))
    (mark# U131(X1, X2, X3, X4) -> U131#(mark X1, X2, X3, X4), U131#(X1, X2, X3, mark X4) -> U131#(X1, X2, X3, X4))
    (mark# U134(X1, X2, X3, X4) -> U134#(mark X1, X2, X3, X4), U134#(active X1, X2, X3, X4) -> U134#(X1, X2, X3, X4))
    (mark# U134(X1, X2, X3, X4) -> U134#(mark X1, X2, X3, X4), U134#(mark X1, X2, X3, X4) -> U134#(X1, X2, X3, X4))
    (mark# U134(X1, X2, X3, X4) -> U134#(mark X1, X2, X3, X4), U134#(X1, active X2, X3, X4) -> U134#(X1, X2, X3, X4))
    (mark# U134(X1, X2, X3, X4) -> U134#(mark X1, X2, X3, X4), U134#(X1, mark X2, X3, X4) -> U134#(X1, X2, X3, X4))
    (mark# U134(X1, X2, X3, X4) -> U134#(mark X1, X2, X3, X4), U134#(X1, X2, active X3, X4) -> U134#(X1, X2, X3, X4))
    (mark# U134(X1, X2, X3, X4) -> U134#(mark X1, X2, X3, X4), U134#(X1, X2, mark X3, X4) -> U134#(X1, X2, X3, X4))
    (mark# U134(X1, X2, X3, X4) -> U134#(mark X1, X2, X3, X4), U134#(X1, X2, X3, active X4) -> U134#(X1, X2, X3, X4))
    (mark# U134(X1, X2, X3, X4) -> U134#(mark X1, X2, X3, X4), U134#(X1, X2, X3, mark X4) -> U134#(X1, X2, X3, X4))
    (mark# U136(X1, X2, X3, X4) -> U136#(mark X1, X2, X3, X4), U136#(active X1, X2, X3, X4) -> U136#(X1, X2, X3, X4))
    (mark# U136(X1, X2, X3, X4) -> U136#(mark X1, X2, X3, X4), U136#(mark X1, X2, X3, X4) -> U136#(X1, X2, X3, X4))
    (mark# U136(X1, X2, X3, X4) -> U136#(mark X1, X2, X3, X4), U136#(X1, active X2, X3, X4) -> U136#(X1, X2, X3, X4))
    (mark# U136(X1, X2, X3, X4) -> U136#(mark X1, X2, X3, X4), U136#(X1, mark X2, X3, X4) -> U136#(X1, X2, X3, X4))
    (mark# U136(X1, X2, X3, X4) -> U136#(mark X1, X2, X3, X4), U136#(X1, X2, active X3, X4) -> U136#(X1, X2, X3, X4))
    (mark# U136(X1, X2, X3, X4) -> U136#(mark X1, X2, X3, X4), U136#(X1, X2, mark X3, X4) -> U136#(X1, X2, X3, X4))
    (mark# U136(X1, X2, X3, X4) -> U136#(mark X1, X2, X3, X4), U136#(X1, X2, X3, active X4) -> U136#(X1, X2, X3, X4))
    (mark# U136(X1, X2, X3, X4) -> U136#(mark X1, X2, X3, X4), U136#(X1, X2, X3, mark X4) -> U136#(X1, X2, X3, X4))
    (U132#(X1, X2, X3, active X4) -> U132#(X1, X2, X3, X4), U132#(active X1, X2, X3, X4) -> U132#(X1, X2, X3, X4))
    (U132#(X1, X2, X3, active X4) -> U132#(X1, X2, X3, X4), U132#(mark X1, X2, X3, X4) -> U132#(X1, X2, X3, X4))
    (U132#(X1, X2, X3, active X4) -> U132#(X1, X2, X3, X4), U132#(X1, active X2, X3, X4) -> U132#(X1, X2, X3, X4))
    (U132#(X1, X2, X3, active X4) -> U132#(X1, X2, X3, X4), U132#(X1, mark X2, X3, X4) -> U132#(X1, X2, X3, X4))
    (U132#(X1, X2, X3, active X4) -> U132#(X1, X2, X3, X4), U132#(X1, X2, active X3, X4) -> U132#(X1, X2, X3, X4))
    (U132#(X1, X2, X3, active X4) -> U132#(X1, X2, X3, X4), U132#(X1, X2, mark X3, X4) -> U132#(X1, X2, X3, X4))
    (U132#(X1, X2, X3, active X4) -> U132#(X1, X2, X3, X4), U132#(X1, X2, X3, active X4) -> U132#(X1, X2, X3, X4))
    (U132#(X1, X2, X3, active X4) -> U132#(X1, X2, X3, X4), U132#(X1, X2, X3, mark X4) -> U132#(X1, X2, X3, X4))
    (U132#(X1, X2, active X3, X4) -> U132#(X1, X2, X3, X4), U132#(active X1, X2, X3, X4) -> U132#(X1, X2, X3, X4))
    (U132#(X1, X2, active X3, X4) -> U132#(X1, X2, X3, X4), U132#(mark X1, X2, X3, X4) -> U132#(X1, X2, X3, X4))
    (U132#(X1, X2, active X3, X4) -> U132#(X1, X2, X3, X4), U132#(X1, active X2, X3, X4) -> U132#(X1, X2, X3, X4))
    (U132#(X1, X2, active X3, X4) -> U132#(X1, X2, X3, X4), U132#(X1, mark X2, X3, X4) -> U132#(X1, X2, X3, X4))
    (U132#(X1, X2, active X3, X4) -> U132#(X1, X2, X3, X4), U132#(X1, X2, active X3, X4) -> U132#(X1, X2, X3, X4))
    (U132#(X1, X2, active X3, X4) -> U132#(X1, X2, X3, X4), U132#(X1, X2, mark X3, X4) -> U132#(X1, X2, X3, X4))
    (U132#(X1, X2, active X3, X4) -> U132#(X1, X2, X3, X4), U132#(X1, X2, X3, active X4) -> U132#(X1, X2, X3, X4))
    (U132#(X1, X2, active X3, X4) -> U132#(X1, X2, X3, X4), U132#(X1, X2, X3, mark X4) -> U132#(X1, X2, X3, X4))
    (U132#(X1, active X2, X3, X4) -> U132#(X1, X2, X3, X4), U132#(active X1, X2, X3, X4) -> U132#(X1, X2, X3, X4))
    (U132#(X1, active X2, X3, X4) -> U132#(X1, X2, X3, X4), U132#(mark X1, X2, X3, X4) -> U132#(X1, X2, X3, X4))
    (U132#(X1, active X2, X3, X4) -> U132#(X1, X2, X3, X4), U132#(X1, active X2, X3, X4) -> U132#(X1, X2, X3, X4))
    (U132#(X1, active X2, X3, X4) -> U132#(X1, X2, X3, X4), U132#(X1, mark X2, X3, X4) -> U132#(X1, X2, X3, X4))
    (U132#(X1, active X2, X3, X4) -> U132#(X1, X2, X3, X4), U132#(X1, X2, active X3, X4) -> U132#(X1, X2, X3, X4))
    (U132#(X1, active X2, X3, X4) -> U132#(X1, X2, X3, X4), U132#(X1, X2, mark X3, X4) -> U132#(X1, X2, X3, X4))
    (U132#(X1, active X2, X3, X4) -> U132#(X1, X2, X3, X4), U132#(X1, X2, X3, active X4) -> U132#(X1, X2, X3, X4))
    (U132#(X1, active X2, X3, X4) -> U132#(X1, X2, X3, X4), U132#(X1, X2, X3, mark X4) -> U132#(X1, X2, X3, X4))
    (U132#(active X1, X2, X3, X4) -> U132#(X1, X2, X3, X4), U132#(active X1, X2, X3, X4) -> U132#(X1, X2, X3, X4))
    (U132#(active X1, X2, X3, X4) -> U132#(X1, X2, X3, X4), U132#(mark X1, X2, X3, X4) -> U132#(X1, X2, X3, X4))
    (U132#(active X1, X2, X3, X4) -> U132#(X1, X2, X3, X4), U132#(X1, active X2, X3, X4) -> U132#(X1, X2, X3, X4))
    (U132#(active X1, X2, X3, X4) -> U132#(X1, X2, X3, X4), U132#(X1, mark X2, X3, X4) -> U132#(X1, X2, X3, X4))
    (U132#(active X1, X2, X3, X4) -> U132#(X1, X2, X3, X4), U132#(X1, X2, active X3, X4) -> U132#(X1, X2, X3, X4))
    (U132#(active X1, X2, X3, X4) -> U132#(X1, X2, X3, X4), U132#(X1, X2, mark X3, X4) -> U132#(X1, X2, X3, X4))
    (U132#(active X1, X2, X3, X4) -> U132#(X1, X2, X3, X4), U132#(X1, X2, X3, active X4) -> U132#(X1, X2, X3, X4))
    (U132#(active X1, X2, X3, X4) -> U132#(X1, X2, X3, X4), U132#(X1, X2, X3, mark X4) -> U132#(X1, X2, X3, X4))
    (U131#(X1, X2, X3, active X4) -> U131#(X1, X2, X3, X4), U131#(active X1, X2, X3, X4) -> U131#(X1, X2, X3, X4))
    (U131#(X1, X2, X3, active X4) -> U131#(X1, X2, X3, X4), U131#(mark X1, X2, X3, X4) -> U131#(X1, X2, X3, X4))
    (U131#(X1, X2, X3, active X4) -> U131#(X1, X2, X3, X4), U131#(X1, active X2, X3, X4) -> U131#(X1, X2, X3, X4))
    (U131#(X1, X2, X3, active X4) -> U131#(X1, X2, X3, X4), U131#(X1, mark X2, X3, X4) -> U131#(X1, X2, X3, X4))
    (U131#(X1, X2, X3, active X4) -> U131#(X1, X2, X3, X4), U131#(X1, X2, active X3, X4) -> U131#(X1, X2, X3, X4))
    (U131#(X1, X2, X3, active X4) -> U131#(X1, X2, X3, X4), U131#(X1, X2, mark X3, X4) -> U131#(X1, X2, X3, X4))
    (U131#(X1, X2, X3, active X4) -> U131#(X1, X2, X3, X4), U131#(X1, X2, X3, active X4) -> U131#(X1, X2, X3, X4))
    (U131#(X1, X2, X3, active X4) -> U131#(X1, X2, X3, X4), U131#(X1, X2, X3, mark X4) -> U131#(X1, X2, X3, X4))
    (U131#(X1, X2, active X3, X4) -> U131#(X1, X2, X3, X4), U131#(active X1, X2, X3, X4) -> U131#(X1, X2, X3, X4))
    (U131#(X1, X2, active X3, X4) -> U131#(X1, X2, X3, X4), U131#(mark X1, X2, X3, X4) -> U131#(X1, X2, X3, X4))
    (U131#(X1, X2, active X3, X4) -> U131#(X1, X2, X3, X4), U131#(X1, active X2, X3, X4) -> U131#(X1, X2, X3, X4))
    (U131#(X1, X2, active X3, X4) -> U131#(X1, X2, X3, X4), U131#(X1, mark X2, X3, X4) -> U131#(X1, X2, X3, X4))
    (U131#(X1, X2, active X3, X4) -> U131#(X1, X2, X3, X4), U131#(X1, X2, active X3, X4) -> U131#(X1, X2, X3, X4))
    (U131#(X1, X2, active X3, X4) -> U131#(X1, X2, X3, X4), U131#(X1, X2, mark X3, X4) -> U131#(X1, X2, X3, X4))
    (U131#(X1, X2, active X3, X4) -> U131#(X1, X2, X3, X4), U131#(X1, X2, X3, active X4) -> U131#(X1, X2, X3, X4))
    (U131#(X1, X2, active X3, X4) -> U131#(X1, X2, X3, X4), U131#(X1, X2, X3, mark X4) -> U131#(X1, X2, X3, X4))
    (U131#(X1, active X2, X3, X4) -> U131#(X1, X2, X3, X4), U131#(active X1, X2, X3, X4) -> U131#(X1, X2, X3, X4))
    (U131#(X1, active X2, X3, X4) -> U131#(X1, X2, X3, X4), U131#(mark X1, X2, X3, X4) -> U131#(X1, X2, X3, X4))
    (U131#(X1, active X2, X3, X4) -> U131#(X1, X2, X3, X4), U131#(X1, active X2, X3, X4) -> U131#(X1, X2, X3, X4))
    (U131#(X1, active X2, X3, X4) -> U131#(X1, X2, X3, X4), U131#(X1, mark X2, X3, X4) -> U131#(X1, X2, X3, X4))
    (U131#(X1, active X2, X3, X4) -> U131#(X1, X2, X3, X4), U131#(X1, X2, active X3, X4) -> U131#(X1, X2, X3, X4))
    (U131#(X1, active X2, X3, X4) -> U131#(X1, X2, X3, X4), U131#(X1, X2, mark X3, X4) -> U131#(X1, X2, X3, X4))
    (U131#(X1, active X2, X3, X4) -> U131#(X1, X2, X3, X4), U131#(X1, X2, X3, active X4) -> U131#(X1, X2, X3, X4))
    (U131#(X1, active X2, X3, X4) -> U131#(X1, X2, X3, X4), U131#(X1, X2, X3, mark X4) -> U131#(X1, X2, X3, X4))
    (U131#(active X1, X2, X3, X4) -> U131#(X1, X2, X3, X4), U131#(active X1, X2, X3, X4) -> U131#(X1, X2, X3, X4))
    (U131#(active X1, X2, X3, X4) -> U131#(X1, X2, X3, X4), U131#(mark X1, X2, X3, X4) -> U131#(X1, X2, X3, X4))
    (U131#(active X1, X2, X3, X4) -> U131#(X1, X2, X3, X4), U131#(X1, active X2, X3, X4) -> U131#(X1, X2, X3, X4))
    (U131#(active X1, X2, X3, X4) -> U131#(X1, X2, X3, X4), U131#(X1, mark X2, X3, X4) -> U131#(X1, X2, X3, X4))
    (U131#(active X1, X2, X3, X4) -> U131#(X1, X2, X3, X4), U131#(X1, X2, active X3, X4) -> U131#(X1, X2, X3, X4))
    (U131#(active X1, X2, X3, X4) -> U131#(X1, X2, X3, X4), U131#(X1, X2, mark X3, X4) -> U131#(X1, X2, X3, X4))
    (U131#(active X1, X2, X3, X4) -> U131#(X1, X2, X3, X4), U131#(X1, X2, X3, active X4) -> U131#(X1, X2, X3, X4))
    (U131#(active X1, X2, X3, X4) -> U131#(X1, X2, X3, X4), U131#(X1, X2, X3, mark X4) -> U131#(X1, X2, X3, X4))
    (U133#(X1, X2, X3, active X4) -> U133#(X1, X2, X3, X4), U133#(active X1, X2, X3, X4) -> U133#(X1, X2, X3, X4))
    (U133#(X1, X2, X3, active X4) -> U133#(X1, X2, X3, X4), U133#(mark X1, X2, X3, X4) -> U133#(X1, X2, X3, X4))
    (U133#(X1, X2, X3, active X4) -> U133#(X1, X2, X3, X4), U133#(X1, active X2, X3, X4) -> U133#(X1, X2, X3, X4))
    (U133#(X1, X2, X3, active X4) -> U133#(X1, X2, X3, X4), U133#(X1, mark X2, X3, X4) -> U133#(X1, X2, X3, X4))
    (U133#(X1, X2, X3, active X4) -> U133#(X1, X2, X3, X4), U133#(X1, X2, active X3, X4) -> U133#(X1, X2, X3, X4))
    (U133#(X1, X2, X3, active X4) -> U133#(X1, X2, X3, X4), U133#(X1, X2, mark X3, X4) -> U133#(X1, X2, X3, X4))
    (U133#(X1, X2, X3, active X4) -> U133#(X1, X2, X3, X4), U133#(X1, X2, X3, active X4) -> U133#(X1, X2, X3, X4))
    (U133#(X1, X2, X3, active X4) -> U133#(X1, X2, X3, X4), U133#(X1, X2, X3, mark X4) -> U133#(X1, X2, X3, X4))
    (U133#(X1, X2, active X3, X4) -> U133#(X1, X2, X3, X4), U133#(active X1, X2, X3, X4) -> U133#(X1, X2, X3, X4))
    (U133#(X1, X2, active X3, X4) -> U133#(X1, X2, X3, X4), U133#(mark X1, X2, X3, X4) -> U133#(X1, X2, X3, X4))
    (U133#(X1, X2, active X3, X4) -> U133#(X1, X2, X3, X4), U133#(X1, active X2, X3, X4) -> U133#(X1, X2, X3, X4))
    (U133#(X1, X2, active X3, X4) -> U133#(X1, X2, X3, X4), U133#(X1, mark X2, X3, X4) -> U133#(X1, X2, X3, X4))
    (U133#(X1, X2, active X3, X4) -> U133#(X1, X2, X3, X4), U133#(X1, X2, active X3, X4) -> U133#(X1, X2, X3, X4))
    (U133#(X1, X2, active X3, X4) -> U133#(X1, X2, X3, X4), U133#(X1, X2, mark X3, X4) -> U133#(X1, X2, X3, X4))
    (U133#(X1, X2, active X3, X4) -> U133#(X1, X2, X3, X4), U133#(X1, X2, X3, active X4) -> U133#(X1, X2, X3, X4))
    (U133#(X1, X2, active X3, X4) -> U133#(X1, X2, X3, X4), U133#(X1, X2, X3, mark X4) -> U133#(X1, X2, X3, X4))
    (U133#(X1, active X2, X3, X4) -> U133#(X1, X2, X3, X4), U133#(active X1, X2, X3, X4) -> U133#(X1, X2, X3, X4))
    (U133#(X1, active X2, X3, X4) -> U133#(X1, X2, X3, X4), U133#(mark X1, X2, X3, X4) -> U133#(X1, X2, X3, X4))
    (U133#(X1, active X2, X3, X4) -> U133#(X1, X2, X3, X4), U133#(X1, active X2, X3, X4) -> U133#(X1, X2, X3, X4))
    (U133#(X1, active X2, X3, X4) -> U133#(X1, X2, X3, X4), U133#(X1, mark X2, X3, X4) -> U133#(X1, X2, X3, X4))
    (U133#(X1, active X2, X3, X4) -> U133#(X1, X2, X3, X4), U133#(X1, X2, active X3, X4) -> U133#(X1, X2, X3, X4))
    (U133#(X1, active X2, X3, X4) -> U133#(X1, X2, X3, X4), U133#(X1, X2, mark X3, X4) -> U133#(X1, X2, X3, X4))
    (U133#(X1, active X2, X3, X4) -> U133#(X1, X2, X3, X4), U133#(X1, X2, X3, active X4) -> U133#(X1, X2, X3, X4))
    (U133#(X1, active X2, X3, X4) -> U133#(X1, X2, X3, X4), U133#(X1, X2, X3, mark X4) -> U133#(X1, X2, X3, X4))
    (U133#(active X1, X2, X3, X4) -> U133#(X1, X2, X3, X4), U133#(active X1, X2, X3, X4) -> U133#(X1, X2, X3, X4))
    (U133#(active X1, X2, X3, X4) -> U133#(X1, X2, X3, X4), U133#(mark X1, X2, X3, X4) -> U133#(X1, X2, X3, X4))
    (U133#(active X1, X2, X3, X4) -> U133#(X1, X2, X3, X4), U133#(X1, active X2, X3, X4) -> U133#(X1, X2, X3, X4))
    (U133#(active X1, X2, X3, X4) -> U133#(X1, X2, X3, X4), U133#(X1, mark X2, X3, X4) -> U133#(X1, X2, X3, X4))
    (U133#(active X1, X2, X3, X4) -> U133#(X1, X2, X3, X4), U133#(X1, X2, active X3, X4) -> U133#(X1, X2, X3, X4))
    (U133#(active X1, X2, X3, X4) -> U133#(X1, X2, X3, X4), U133#(X1, X2, mark X3, X4) -> U133#(X1, X2, X3, X4))
    (U133#(active X1, X2, X3, X4) -> U133#(X1, X2, X3, X4), U133#(X1, X2, X3, active X4) -> U133#(X1, X2, X3, X4))
    (U133#(active X1, X2, X3, X4) -> U133#(X1, X2, X3, X4), U133#(X1, X2, X3, mark X4) -> U133#(X1, X2, X3, X4))
    (U134#(X1, X2, X3, active X4) -> U134#(X1, X2, X3, X4), U134#(active X1, X2, X3, X4) -> U134#(X1, X2, X3, X4))
    (U134#(X1, X2, X3, active X4) -> U134#(X1, X2, X3, X4), U134#(mark X1, X2, X3, X4) -> U134#(X1, X2, X3, X4))
    (U134#(X1, X2, X3, active X4) -> U134#(X1, X2, X3, X4), U134#(X1, active X2, X3, X4) -> U134#(X1, X2, X3, X4))
    (U134#(X1, X2, X3, active X4) -> U134#(X1, X2, X3, X4), U134#(X1, mark X2, X3, X4) -> U134#(X1, X2, X3, X4))
    (U134#(X1, X2, X3, active X4) -> U134#(X1, X2, X3, X4), U134#(X1, X2, active X3, X4) -> U134#(X1, X2, X3, X4))
    (U134#(X1, X2, X3, active X4) -> U134#(X1, X2, X3, X4), U134#(X1, X2, mark X3, X4) -> U134#(X1, X2, X3, X4))
    (U134#(X1, X2, X3, active X4) -> U134#(X1, X2, X3, X4), U134#(X1, X2, X3, active X4) -> U134#(X1, X2, X3, X4))
    (U134#(X1, X2, X3, active X4) -> U134#(X1, X2, X3, X4), U134#(X1, X2, X3, mark X4) -> U134#(X1, X2, X3, X4))
    (U134#(X1, X2, active X3, X4) -> U134#(X1, X2, X3, X4), U134#(active X1, X2, X3, X4) -> U134#(X1, X2, X3, X4))
    (U134#(X1, X2, active X3, X4) -> U134#(X1, X2, X3, X4), U134#(mark X1, X2, X3, X4) -> U134#(X1, X2, X3, X4))
    (U134#(X1, X2, active X3, X4) -> U134#(X1, X2, X3, X4), U134#(X1, active X2, X3, X4) -> U134#(X1, X2, X3, X4))
    (U134#(X1, X2, active X3, X4) -> U134#(X1, X2, X3, X4), U134#(X1, mark X2, X3, X4) -> U134#(X1, X2, X3, X4))
    (U134#(X1, X2, active X3, X4) -> U134#(X1, X2, X3, X4), U134#(X1, X2, active X3, X4) -> U134#(X1, X2, X3, X4))
    (U134#(X1, X2, active X3, X4) -> U134#(X1, X2, X3, X4), U134#(X1, X2, mark X3, X4) -> U134#(X1, X2, X3, X4))
    (U134#(X1, X2, active X3, X4) -> U134#(X1, X2, X3, X4), U134#(X1, X2, X3, active X4) -> U134#(X1, X2, X3, X4))
    (U134#(X1, X2, active X3, X4) -> U134#(X1, X2, X3, X4), U134#(X1, X2, X3, mark X4) -> U134#(X1, X2, X3, X4))
    (U134#(X1, active X2, X3, X4) -> U134#(X1, X2, X3, X4), U134#(active X1, X2, X3, X4) -> U134#(X1, X2, X3, X4))
    (U134#(X1, active X2, X3, X4) -> U134#(X1, X2, X3, X4), U134#(mark X1, X2, X3, X4) -> U134#(X1, X2, X3, X4))
    (U134#(X1, active X2, X3, X4) -> U134#(X1, X2, X3, X4), U134#(X1, active X2, X3, X4) -> U134#(X1, X2, X3, X4))
    (U134#(X1, active X2, X3, X4) -> U134#(X1, X2, X3, X4), U134#(X1, mark X2, X3, X4) -> U134#(X1, X2, X3, X4))
    (U134#(X1, active X2, X3, X4) -> U134#(X1, X2, X3, X4), U134#(X1, X2, active X3, X4) -> U134#(X1, X2, X3, X4))
    (U134#(X1, active X2, X3, X4) -> U134#(X1, X2, X3, X4), U134#(X1, X2, mark X3, X4) -> U134#(X1, X2, X3, X4))
    (U134#(X1, active X2, X3, X4) -> U134#(X1, X2, X3, X4), U134#(X1, X2, X3, active X4) -> U134#(X1, X2, X3, X4))
    (U134#(X1, active X2, X3, X4) -> U134#(X1, X2, X3, X4), U134#(X1, X2, X3, mark X4) -> U134#(X1, X2, X3, X4))
    (U134#(active X1, X2, X3, X4) -> U134#(X1, X2, X3, X4), U134#(active X1, X2, X3, X4) -> U134#(X1, X2, X3, X4))
    (U134#(active X1, X2, X3, X4) -> U134#(X1, X2, X3, X4), U134#(mark X1, X2, X3, X4) -> U134#(X1, X2, X3, X4))
    (U134#(active X1, X2, X3, X4) -> U134#(X1, X2, X3, X4), U134#(X1, active X2, X3, X4) -> U134#(X1, X2, X3, X4))
    (U134#(active X1, X2, X3, X4) -> U134#(X1, X2, X3, X4), U134#(X1, mark X2, X3, X4) -> U134#(X1, X2, X3, X4))
    (U134#(active X1, X2, X3, X4) -> U134#(X1, X2, X3, X4), U134#(X1, X2, active X3, X4) -> U134#(X1, X2, X3, X4))
    (U134#(active X1, X2, X3, X4) -> U134#(X1, X2, X3, X4), U134#(X1, X2, mark X3, X4) -> U134#(X1, X2, X3, X4))
    (U134#(active X1, X2, X3, X4) -> U134#(X1, X2, X3, X4), U134#(X1, X2, X3, active X4) -> U134#(X1, X2, X3, X4))
    (U134#(active X1, X2, X3, X4) -> U134#(X1, X2, X3, X4), U134#(X1, X2, X3, mark X4) -> U134#(X1, X2, X3, X4))
    (U135#(X1, X2, X3, active X4) -> U135#(X1, X2, X3, X4), U135#(active X1, X2, X3, X4) -> U135#(X1, X2, X3, X4))
    (U135#(X1, X2, X3, active X4) -> U135#(X1, X2, X3, X4), U135#(mark X1, X2, X3, X4) -> U135#(X1, X2, X3, X4))
    (U135#(X1, X2, X3, active X4) -> U135#(X1, X2, X3, X4), U135#(X1, active X2, X3, X4) -> U135#(X1, X2, X3, X4))
    (U135#(X1, X2, X3, active X4) -> U135#(X1, X2, X3, X4), U135#(X1, mark X2, X3, X4) -> U135#(X1, X2, X3, X4))
    (U135#(X1, X2, X3, active X4) -> U135#(X1, X2, X3, X4), U135#(X1, X2, active X3, X4) -> U135#(X1, X2, X3, X4))
    (U135#(X1, X2, X3, active X4) -> U135#(X1, X2, X3, X4), U135#(X1, X2, mark X3, X4) -> U135#(X1, X2, X3, X4))
    (U135#(X1, X2, X3, active X4) -> U135#(X1, X2, X3, X4), U135#(X1, X2, X3, active X4) -> U135#(X1, X2, X3, X4))
    (U135#(X1, X2, X3, active X4) -> U135#(X1, X2, X3, X4), U135#(X1, X2, X3, mark X4) -> U135#(X1, X2, X3, X4))
    (U135#(X1, X2, active X3, X4) -> U135#(X1, X2, X3, X4), U135#(active X1, X2, X3, X4) -> U135#(X1, X2, X3, X4))
    (U135#(X1, X2, active X3, X4) -> U135#(X1, X2, X3, X4), U135#(mark X1, X2, X3, X4) -> U135#(X1, X2, X3, X4))
    (U135#(X1, X2, active X3, X4) -> U135#(X1, X2, X3, X4), U135#(X1, active X2, X3, X4) -> U135#(X1, X2, X3, X4))
    (U135#(X1, X2, active X3, X4) -> U135#(X1, X2, X3, X4), U135#(X1, mark X2, X3, X4) -> U135#(X1, X2, X3, X4))
    (U135#(X1, X2, active X3, X4) -> U135#(X1, X2, X3, X4), U135#(X1, X2, active X3, X4) -> U135#(X1, X2, X3, X4))
    (U135#(X1, X2, active X3, X4) -> U135#(X1, X2, X3, X4), U135#(X1, X2, mark X3, X4) -> U135#(X1, X2, X3, X4))
    (U135#(X1, X2, active X3, X4) -> U135#(X1, X2, X3, X4), U135#(X1, X2, X3, active X4) -> U135#(X1, X2, X3, X4))
    (U135#(X1, X2, active X3, X4) -> U135#(X1, X2, X3, X4), U135#(X1, X2, X3, mark X4) -> U135#(X1, X2, X3, X4))
    (U135#(X1, active X2, X3, X4) -> U135#(X1, X2, X3, X4), U135#(active X1, X2, X3, X4) -> U135#(X1, X2, X3, X4))
    (U135#(X1, active X2, X3, X4) -> U135#(X1, X2, X3, X4), U135#(mark X1, X2, X3, X4) -> U135#(X1, X2, X3, X4))
    (U135#(X1, active X2, X3, X4) -> U135#(X1, X2, X3, X4), U135#(X1, active X2, X3, X4) -> U135#(X1, X2, X3, X4))
    (U135#(X1, active X2, X3, X4) -> U135#(X1, X2, X3, X4), U135#(X1, mark X2, X3, X4) -> U135#(X1, X2, X3, X4))
    (U135#(X1, active X2, X3, X4) -> U135#(X1, X2, X3, X4), U135#(X1, X2, active X3, X4) -> U135#(X1, X2, X3, X4))
    (U135#(X1, active X2, X3, X4) -> U135#(X1, X2, X3, X4), U135#(X1, X2, mark X3, X4) -> U135#(X1, X2, X3, X4))
    (U135#(X1, active X2, X3, X4) -> U135#(X1, X2, X3, X4), U135#(X1, X2, X3, active X4) -> U135#(X1, X2, X3, X4))
    (U135#(X1, active X2, X3, X4) -> U135#(X1, X2, X3, X4), U135#(X1, X2, X3, mark X4) -> U135#(X1, X2, X3, X4))
    (U135#(active X1, X2, X3, X4) -> U135#(X1, X2, X3, X4), U135#(active X1, X2, X3, X4) -> U135#(X1, X2, X3, X4))
    (U135#(active X1, X2, X3, X4) -> U135#(X1, X2, X3, X4), U135#(mark X1, X2, X3, X4) -> U135#(X1, X2, X3, X4))
    (U135#(active X1, X2, X3, X4) -> U135#(X1, X2, X3, X4), U135#(X1, active X2, X3, X4) -> U135#(X1, X2, X3, X4))
    (U135#(active X1, X2, X3, X4) -> U135#(X1, X2, X3, X4), U135#(X1, mark X2, X3, X4) -> U135#(X1, X2, X3, X4))
    (U135#(active X1, X2, X3, X4) -> U135#(X1, X2, X3, X4), U135#(X1, X2, active X3, X4) -> U135#(X1, X2, X3, X4))
    (U135#(active X1, X2, X3, X4) -> U135#(X1, X2, X3, X4), U135#(X1, X2, mark X3, X4) -> U135#(X1, X2, X3, X4))
    (U135#(active X1, X2, X3, X4) -> U135#(X1, X2, X3, X4), U135#(X1, X2, X3, active X4) -> U135#(X1, X2, X3, X4))
    (U135#(active X1, X2, X3, X4) -> U135#(X1, X2, X3, X4), U135#(X1, X2, X3, mark X4) -> U135#(X1, X2, X3, X4))
    (U136#(X1, X2, X3, active X4) -> U136#(X1, X2, X3, X4), U136#(active X1, X2, X3, X4) -> U136#(X1, X2, X3, X4))
    (U136#(X1, X2, X3, active X4) -> U136#(X1, X2, X3, X4), U136#(mark X1, X2, X3, X4) -> U136#(X1, X2, X3, X4))
    (U136#(X1, X2, X3, active X4) -> U136#(X1, X2, X3, X4), U136#(X1, active X2, X3, X4) -> U136#(X1, X2, X3, X4))
    (U136#(X1, X2, X3, active X4) -> U136#(X1, X2, X3, X4), U136#(X1, mark X2, X3, X4) -> U136#(X1, X2, X3, X4))
    (U136#(X1, X2, X3, active X4) -> U136#(X1, X2, X3, X4), U136#(X1, X2, active X3, X4) -> U136#(X1, X2, X3, X4))
    (U136#(X1, X2, X3, active X4) -> U136#(X1, X2, X3, X4), U136#(X1, X2, mark X3, X4) -> U136#(X1, X2, X3, X4))
    (U136#(X1, X2, X3, active X4) -> U136#(X1, X2, X3, X4), U136#(X1, X2, X3, active X4) -> U136#(X1, X2, X3, X4))
    (U136#(X1, X2, X3, active X4) -> U136#(X1, X2, X3, X4), U136#(X1, X2, X3, mark X4) -> U136#(X1, X2, X3, X4))
    (U136#(X1, X2, active X3, X4) -> U136#(X1, X2, X3, X4), U136#(active X1, X2, X3, X4) -> U136#(X1, X2, X3, X4))
    (U136#(X1, X2, active X3, X4) -> U136#(X1, X2, X3, X4), U136#(mark X1, X2, X3, X4) -> U136#(X1, X2, X3, X4))
    (U136#(X1, X2, active X3, X4) -> U136#(X1, X2, X3, X4), U136#(X1, active X2, X3, X4) -> U136#(X1, X2, X3, X4))
    (U136#(X1, X2, active X3, X4) -> U136#(X1, X2, X3, X4), U136#(X1, mark X2, X3, X4) -> U136#(X1, X2, X3, X4))
    (U136#(X1, X2, active X3, X4) -> U136#(X1, X2, X3, X4), U136#(X1, X2, active X3, X4) -> U136#(X1, X2, X3, X4))
    (U136#(X1, X2, active X3, X4) -> U136#(X1, X2, X3, X4), U136#(X1, X2, mark X3, X4) -> U136#(X1, X2, X3, X4))
    (U136#(X1, X2, active X3, X4) -> U136#(X1, X2, X3, X4), U136#(X1, X2, X3, active X4) -> U136#(X1, X2, X3, X4))
    (U136#(X1, X2, active X3, X4) -> U136#(X1, X2, X3, X4), U136#(X1, X2, X3, mark X4) -> U136#(X1, X2, X3, X4))
    (U136#(X1, active X2, X3, X4) -> U136#(X1, X2, X3, X4), U136#(active X1, X2, X3, X4) -> U136#(X1, X2, X3, X4))
    (U136#(X1, active X2, X3, X4) -> U136#(X1, X2, X3, X4), U136#(mark X1, X2, X3, X4) -> U136#(X1, X2, X3, X4))
    (U136#(X1, active X2, X3, X4) -> U136#(X1, X2, X3, X4), U136#(X1, active X2, X3, X4) -> U136#(X1, X2, X3, X4))
    (U136#(X1, active X2, X3, X4) -> U136#(X1, X2, X3, X4), U136#(X1, mark X2, X3, X4) -> U136#(X1, X2, X3, X4))
    (U136#(X1, active X2, X3, X4) -> U136#(X1, X2, X3, X4), U136#(X1, X2, active X3, X4) -> U136#(X1, X2, X3, X4))
    (U136#(X1, active X2, X3, X4) -> U136#(X1, X2, X3, X4), U136#(X1, X2, mark X3, X4) -> U136#(X1, X2, X3, X4))
    (U136#(X1, active X2, X3, X4) -> U136#(X1, X2, X3, X4), U136#(X1, X2, X3, active X4) -> U136#(X1, X2, X3, X4))
    (U136#(X1, active X2, X3, X4) -> U136#(X1, X2, X3, X4), U136#(X1, X2, X3, mark X4) -> U136#(X1, X2, X3, X4))
    (U136#(active X1, X2, X3, X4) -> U136#(X1, X2, X3, X4), U136#(active X1, X2, X3, X4) -> U136#(X1, X2, X3, X4))
    (U136#(active X1, X2, X3, X4) -> U136#(X1, X2, X3, X4), U136#(mark X1, X2, X3, X4) -> U136#(X1, X2, X3, X4))
    (U136#(active X1, X2, X3, X4) -> U136#(X1, X2, X3, X4), U136#(X1, active X2, X3, X4) -> U136#(X1, X2, X3, X4))
    (U136#(active X1, X2, X3, X4) -> U136#(X1, X2, X3, X4), U136#(X1, mark X2, X3, X4) -> U136#(X1, X2, X3, X4))
    (U136#(active X1, X2, X3, X4) -> U136#(X1, X2, X3, X4), U136#(X1, X2, active X3, X4) -> U136#(X1, X2, X3, X4))
    (U136#(active X1, X2, X3, X4) -> U136#(X1, X2, X3, X4), U136#(X1, X2, mark X3, X4) -> U136#(X1, X2, X3, X4))
    (U136#(active X1, X2, X3, X4) -> U136#(X1, X2, X3, X4), U136#(X1, X2, X3, active X4) -> U136#(X1, X2, X3, X4))
    (U136#(active X1, X2, X3, X4) -> U136#(X1, X2, X3, X4), U136#(X1, X2, X3, mark X4) -> U136#(X1, X2, X3, X4))
    (active# U131(tt(), IL, M, N) -> U132#(isNatIListKind IL, IL, M, N), U132#(X1, active X2, X3, X4) -> U132#(X1, X2, X3, X4))
    (active# U131(tt(), IL, M, N) -> U132#(isNatIListKind IL, IL, M, N), U132#(X1, mark X2, X3, X4) -> U132#(X1, X2, X3, X4))
    (active# U131(tt(), IL, M, N) -> U132#(isNatIListKind IL, IL, M, N), U132#(X1, X2, active X3, X4) -> U132#(X1, X2, X3, X4))
    (active# U131(tt(), IL, M, N) -> U132#(isNatIListKind IL, IL, M, N), U132#(X1, X2, mark X3, X4) -> U132#(X1, X2, X3, X4))
    (active# U131(tt(), IL, M, N) -> U132#(isNatIListKind IL, IL, M, N), U132#(X1, X2, X3, active X4) -> U132#(X1, X2, X3, X4))
    (active# U131(tt(), IL, M, N) -> U132#(isNatIListKind IL, IL, M, N), U132#(X1, X2, X3, mark X4) -> U132#(X1, X2, X3, X4))
    (active# U134(tt(), IL, M, N) -> U135#(isNat N, IL, M, N), U135#(X1, active X2, X3, X4) -> U135#(X1, X2, X3, X4))
    (active# U134(tt(), IL, M, N) -> U135#(isNat N, IL, M, N), U135#(X1, mark X2, X3, X4) -> U135#(X1, X2, X3, X4))
    (active# U134(tt(), IL, M, N) -> U135#(isNat N, IL, M, N), U135#(X1, X2, active X3, X4) -> U135#(X1, X2, X3, X4))
    (active# U134(tt(), IL, M, N) -> U135#(isNat N, IL, M, N), U135#(X1, X2, mark X3, X4) -> U135#(X1, X2, X3, X4))
    (active# U134(tt(), IL, M, N) -> U135#(isNat N, IL, M, N), U135#(X1, X2, X3, active X4) -> U135#(X1, X2, X3, X4))
    (active# U134(tt(), IL, M, N) -> U135#(isNat N, IL, M, N), U135#(X1, X2, X3, mark X4) -> U135#(X1, X2, X3, X4))
    (active# take(s M, cons(N, IL)) -> U131#(isNatIList IL, IL, M, N), U131#(X1, active X2, X3, X4) -> U131#(X1, X2, X3, X4))
    (active# take(s M, cons(N, IL)) -> U131#(isNatIList IL, IL, M, N), U131#(X1, mark X2, X3, X4) -> U131#(X1, X2, X3, X4))
    (active# take(s M, cons(N, IL)) -> U131#(isNatIList IL, IL, M, N), U131#(X1, X2, active X3, X4) -> U131#(X1, X2, X3, X4))
    (active# take(s M, cons(N, IL)) -> U131#(isNatIList IL, IL, M, N), U131#(X1, X2, mark X3, X4) -> U131#(X1, X2, X3, X4))
    (active# take(s M, cons(N, IL)) -> U131#(isNatIList IL, IL, M, N), U131#(X1, X2, X3, active X4) -> U131#(X1, X2, X3, X4))
    (active# take(s M, cons(N, IL)) -> U131#(isNatIList IL, IL, M, N), U131#(X1, X2, X3, mark X4) -> U131#(X1, X2, X3, X4))
    (mark# isNatKind X -> active# isNatKind X, active# isNatKind length V1 -> U71# isNatIListKind V1)
    (mark# isNatKind X -> active# isNatKind X, active# isNatKind length V1 -> isNatIListKind# V1)
    (mark# isNatKind X -> active# isNatKind X, active# isNatKind length V1 -> mark# U71 isNatIListKind V1)
    (mark# isNatKind X -> active# isNatKind X, active# isNatKind s V1 -> U81# isNatKind V1)
    (mark# isNatKind X -> active# isNatKind X, active# isNatKind s V1 -> isNatKind# V1)
    (mark# isNatKind X -> active# isNatKind X, active# isNatKind s V1 -> mark# U81 isNatKind V1)
    (mark# isNatKind X -> active# isNatKind X, active# isNatKind 0() -> mark# tt())
    (mark# isNat X -> active# isNat X, active# isNat length V1 -> U11#(isNatIListKind V1, V1))
    (mark# isNat X -> active# isNat X, active# isNat length V1 -> isNatIListKind# V1)
    (mark# isNat X -> active# isNat X, active# isNat length V1 -> mark# U11(isNatIListKind V1, V1))
    (mark# isNat X -> active# isNat X, active# isNat s V1 -> U21#(isNatKind V1, V1))
    (mark# isNat X -> active# isNat X, active# isNat s V1 -> isNatKind# V1)
    (mark# isNat X -> active# isNat X, active# isNat s V1 -> mark# U21(isNatKind V1, V1))
    (mark# isNat X -> active# isNat X, active# isNat 0() -> mark# tt())
    (mark# isNatIList X -> active# isNatIList X, active# isNatIList zeros() -> mark# tt())
    (mark# isNatIList X -> active# isNatIList X, active# isNatIList cons(V1, V2) -> U41#(isNatKind V1, V1, V2))
    (mark# isNatIList X -> active# isNatIList X, active# isNatIList cons(V1, V2) -> isNatKind# V1)
    (mark# isNatIList X -> active# isNatIList X, active# isNatIList cons(V1, V2) -> mark# U41(isNatKind V1, V1, V2))
    (mark# isNatIList X -> active# isNatIList X, active# isNatIList V -> U31#(isNatIListKind V, V))
    (mark# isNatIList X -> active# isNatIList X, active# isNatIList V -> isNatIListKind# V)
    (mark# isNatIList X -> active# isNatIList X, active# isNatIList V -> mark# U31(isNatIListKind V, V))
    (mark# length X -> length# mark X, length# active X -> length# X)
    (mark# length X -> length# mark X, length# mark X -> length# X)
    (mark# isNatList X -> active# isNatList X, active# isNatList take(V1, V2) -> U101#(isNatKind V1, V1, V2))
    (mark# isNatList X -> active# isNatList X, active# isNatList take(V1, V2) -> isNatKind# V1)
    (mark# isNatList X -> active# isNatList X, active# isNatList take(V1, V2) -> mark# U101(isNatKind V1, V1, V2))
    (mark# isNatList X -> active# isNatList X, active# isNatList nil() -> mark# tt())
    (mark# isNatList X -> active# isNatList X, active# isNatList cons(V1, V2) -> U91#(isNatKind V1, V1, V2))
    (mark# isNatList X -> active# isNatList X, active# isNatList cons(V1, V2) -> isNatKind# V1)
    (mark# isNatList X -> active# isNatList X, active# isNatList cons(V1, V2) -> mark# U91(isNatKind V1, V1, V2))
    (mark# U23 X -> U23# mark X, U23# active X -> U23# X)
    (mark# U23 X -> U23# mark X, U23# mark X -> U23# X)
    (mark# U46 X -> U46# mark X, U46# active X -> U46# X)
    (mark# U46 X -> U46# mark X, U46# mark X -> U46# X)
    (mark# U62 X -> U62# mark X, U62# active X -> U62# X)
    (mark# U62 X -> U62# mark X, U62# mark X -> U62# X)
    (mark# U81 X -> U81# mark X, U81# active X -> U81# X)
    (mark# U81 X -> U81# mark X, U81# mark X -> U81# X)
    (mark# cons(X1, X2) -> cons#(mark X1, X2), cons#(active X1, X2) -> cons#(X1, X2))
    (mark# cons(X1, X2) -> cons#(mark X1, X2), cons#(mark X1, X2) -> cons#(X1, X2))
    (mark# cons(X1, X2) -> cons#(mark X1, X2), cons#(X1, active X2) -> cons#(X1, X2))
    (mark# cons(X1, X2) -> cons#(mark X1, X2), cons#(X1, mark X2) -> cons#(X1, X2))
    (mark# U12(X1, X2) -> U12#(mark X1, X2), U12#(active X1, X2) -> U12#(X1, X2))
    (mark# U12(X1, X2) -> U12#(mark X1, X2), U12#(mark X1, X2) -> U12#(X1, X2))
    (mark# U12(X1, X2) -> U12#(mark X1, X2), U12#(X1, active X2) -> U12#(X1, X2))
    (mark# U12(X1, X2) -> U12#(mark X1, X2), U12#(X1, mark X2) -> U12#(X1, X2))
    (mark# U114(X1, X2) -> U114#(mark X1, X2), U114#(active X1, X2) -> U114#(X1, X2))
    (mark# U114(X1, X2) -> U114#(mark X1, X2), U114#(mark X1, X2) -> U114#(X1, X2))
    (mark# U114(X1, X2) -> U114#(mark X1, X2), U114#(X1, active X2) -> U114#(X1, X2))
    (mark# U114(X1, X2) -> U114#(mark X1, X2), U114#(X1, mark X2) -> U114#(X1, X2))
    (mark# U22(X1, X2) -> U22#(mark X1, X2), U22#(active X1, X2) -> U22#(X1, X2))
    (mark# U22(X1, X2) -> U22#(mark X1, X2), U22#(mark X1, X2) -> U22#(X1, X2))
    (mark# U22(X1, X2) -> U22#(mark X1, X2), U22#(X1, active X2) -> U22#(X1, X2))
    (mark# U22(X1, X2) -> U22#(mark X1, X2), U22#(X1, mark X2) -> U22#(X1, X2))
    (mark# U32(X1, X2) -> U32#(mark X1, X2), U32#(active X1, X2) -> U32#(X1, X2))
    (mark# U32(X1, X2) -> U32#(mark X1, X2), U32#(mark X1, X2) -> U32#(X1, X2))
    (mark# U32(X1, X2) -> U32#(mark X1, X2), U32#(X1, active X2) -> U32#(X1, X2))
    (mark# U32(X1, X2) -> U32#(mark X1, X2), U32#(X1, mark X2) -> U32#(X1, X2))
    (mark# U45(X1, X2) -> U45#(mark X1, X2), U45#(active X1, X2) -> U45#(X1, X2))
    (mark# U45(X1, X2) -> U45#(mark X1, X2), U45#(mark X1, X2) -> U45#(X1, X2))
    (mark# U45(X1, X2) -> U45#(mark X1, X2), U45#(X1, active X2) -> U45#(X1, X2))
    (mark# U45(X1, X2) -> U45#(mark X1, X2), U45#(X1, mark X2) -> U45#(X1, X2))
    (mark# U61(X1, X2) -> U61#(mark X1, X2), U61#(active X1, X2) -> U61#(X1, X2))
    (mark# U61(X1, X2) -> U61#(mark X1, X2), U61#(mark X1, X2) -> U61#(X1, X2))
    (mark# U61(X1, X2) -> U61#(mark X1, X2), U61#(X1, active X2) -> U61#(X1, X2))
    (mark# U61(X1, X2) -> U61#(mark X1, X2), U61#(X1, mark X2) -> U61#(X1, X2))
    (cons#(X1, mark X2) -> cons#(X1, X2), cons#(active X1, X2) -> cons#(X1, X2))
    (cons#(X1, mark X2) -> cons#(X1, X2), cons#(mark X1, X2) -> cons#(X1, X2))
    (cons#(X1, mark X2) -> cons#(X1, X2), cons#(X1, active X2) -> cons#(X1, X2))
    (cons#(X1, mark X2) -> cons#(X1, X2), cons#(X1, mark X2) -> cons#(X1, X2))
    (cons#(mark X1, X2) -> cons#(X1, X2), cons#(active X1, X2) -> cons#(X1, X2))
    (cons#(mark X1, X2) -> cons#(X1, X2), cons#(mark X1, X2) -> cons#(X1, X2))
    (cons#(mark X1, X2) -> cons#(X1, X2), cons#(X1, active X2) -> cons#(X1, X2))
    (cons#(mark X1, X2) -> cons#(X1, X2), cons#(X1, mark X2) -> cons#(X1, X2))
    (U105#(X1, mark X2) -> U105#(X1, X2), U105#(active X1, X2) -> U105#(X1, X2))
    (U105#(X1, mark X2) -> U105#(X1, X2), U105#(mark X1, X2) -> U105#(X1, X2))
    (U105#(X1, mark X2) -> U105#(X1, X2), U105#(X1, active X2) -> U105#(X1, X2))
    (U105#(X1, mark X2) -> U105#(X1, X2), U105#(X1, mark X2) -> U105#(X1, X2))
    (U105#(mark X1, X2) -> U105#(X1, X2), U105#(active X1, X2) -> U105#(X1, X2))
    (U105#(mark X1, X2) -> U105#(X1, X2), U105#(mark X1, X2) -> U105#(X1, X2))
    (U105#(mark X1, X2) -> U105#(X1, X2), U105#(X1, active X2) -> U105#(X1, X2))
    (U105#(mark X1, X2) -> U105#(X1, X2), U105#(X1, mark X2) -> U105#(X1, X2))
    (U12#(X1, mark X2) -> U12#(X1, X2), U12#(active X1, X2) -> U12#(X1, X2))
    (U12#(X1, mark X2) -> U12#(X1, X2), U12#(mark X1, X2) -> U12#(X1, X2))
    (U12#(X1, mark X2) -> U12#(X1, X2), U12#(X1, active X2) -> U12#(X1, X2))
    (U12#(X1, mark X2) -> U12#(X1, X2), U12#(X1, mark X2) -> U12#(X1, X2))
    (U12#(mark X1, X2) -> U12#(X1, X2), U12#(active X1, X2) -> U12#(X1, X2))
    (U12#(mark X1, X2) -> U12#(X1, X2), U12#(mark X1, X2) -> U12#(X1, X2))
    (U12#(mark X1, X2) -> U12#(X1, X2), U12#(X1, active X2) -> U12#(X1, X2))
    (U12#(mark X1, X2) -> U12#(X1, X2), U12#(X1, mark X2) -> U12#(X1, X2))
    (U11#(X1, mark X2) -> U11#(X1, X2), U11#(active X1, X2) -> U11#(X1, X2))
    (U11#(X1, mark X2) -> U11#(X1, X2), U11#(mark X1, X2) -> U11#(X1, X2))
    (U11#(X1, mark X2) -> U11#(X1, X2), U11#(X1, active X2) -> U11#(X1, X2))
    (U11#(X1, mark X2) -> U11#(X1, X2), U11#(X1, mark X2) -> U11#(X1, X2))
    (U11#(mark X1, X2) -> U11#(X1, X2), U11#(active X1, X2) -> U11#(X1, X2))
    (U11#(mark X1, X2) -> U11#(X1, X2), U11#(mark X1, X2) -> U11#(X1, X2))
    (U11#(mark X1, X2) -> U11#(X1, X2), U11#(X1, active X2) -> U11#(X1, X2))
    (U11#(mark X1, X2) -> U11#(X1, X2), U11#(X1, mark X2) -> U11#(X1, X2))
    (U114#(X1, mark X2) -> U114#(X1, X2), U114#(active X1, X2) -> U114#(X1, X2))
    (U114#(X1, mark X2) -> U114#(X1, X2), U114#(mark X1, X2) -> U114#(X1, X2))
    (U114#(X1, mark X2) -> U114#(X1, X2), U114#(X1, active X2) -> U114#(X1, X2))
    (U114#(X1, mark X2) -> U114#(X1, X2), U114#(X1, mark X2) -> U114#(X1, X2))
    (U114#(mark X1, X2) -> U114#(X1, X2), U114#(active X1, X2) -> U114#(X1, X2))
    (U114#(mark X1, X2) -> U114#(X1, X2), U114#(mark X1, X2) -> U114#(X1, X2))
    (U114#(mark X1, X2) -> U114#(X1, X2), U114#(X1, active X2) -> U114#(X1, X2))
    (U114#(mark X1, X2) -> U114#(X1, X2), U114#(X1, mark X2) -> U114#(X1, X2))
    (U121#(X1, mark X2) -> U121#(X1, X2), U121#(active X1, X2) -> U121#(X1, X2))
    (U121#(X1, mark X2) -> U121#(X1, X2), U121#(mark X1, X2) -> U121#(X1, X2))
    (U121#(X1, mark X2) -> U121#(X1, X2), U121#(X1, active X2) -> U121#(X1, X2))
    (U121#(X1, mark X2) -> U121#(X1, X2), U121#(X1, mark X2) -> U121#(X1, X2))
    (U121#(mark X1, X2) -> U121#(X1, X2), U121#(active X1, X2) -> U121#(X1, X2))
    (U121#(mark X1, X2) -> U121#(X1, X2), U121#(mark X1, X2) -> U121#(X1, X2))
    (U121#(mark X1, X2) -> U121#(X1, X2), U121#(X1, active X2) -> U121#(X1, X2))
    (U121#(mark X1, X2) -> U121#(X1, X2), U121#(X1, mark X2) -> U121#(X1, X2))
    (take#(X1, mark X2) -> take#(X1, X2), take#(active X1, X2) -> take#(X1, X2))
    (take#(X1, mark X2) -> take#(X1, X2), take#(mark X1, X2) -> take#(X1, X2))
    (take#(X1, mark X2) -> take#(X1, X2), take#(X1, active X2) -> take#(X1, X2))
    (take#(X1, mark X2) -> take#(X1, X2), take#(X1, mark X2) -> take#(X1, X2))
    (take#(mark X1, X2) -> take#(X1, X2), take#(active X1, X2) -> take#(X1, X2))
    (take#(mark X1, X2) -> take#(X1, X2), take#(mark X1, X2) -> take#(X1, X2))
    (take#(mark X1, X2) -> take#(X1, X2), take#(X1, active X2) -> take#(X1, X2))
    (take#(mark X1, X2) -> take#(X1, X2), take#(X1, mark X2) -> take#(X1, X2))
    (U22#(X1, mark X2) -> U22#(X1, X2), U22#(active X1, X2) -> U22#(X1, X2))
    (U22#(X1, mark X2) -> U22#(X1, X2), U22#(mark X1, X2) -> U22#(X1, X2))
    (U22#(X1, mark X2) -> U22#(X1, X2), U22#(X1, active X2) -> U22#(X1, X2))
    (U22#(X1, mark X2) -> U22#(X1, X2), U22#(X1, mark X2) -> U22#(X1, X2))
    (U22#(mark X1, X2) -> U22#(X1, X2), U22#(active X1, X2) -> U22#(X1, X2))
    (U22#(mark X1, X2) -> U22#(X1, X2), U22#(mark X1, X2) -> U22#(X1, X2))
    (U22#(mark X1, X2) -> U22#(X1, X2), U22#(X1, active X2) -> U22#(X1, X2))
    (U22#(mark X1, X2) -> U22#(X1, X2), U22#(X1, mark X2) -> U22#(X1, X2))
    (U21#(X1, mark X2) -> U21#(X1, X2), U21#(active X1, X2) -> U21#(X1, X2))
    (U21#(X1, mark X2) -> U21#(X1, X2), U21#(mark X1, X2) -> U21#(X1, X2))
    (U21#(X1, mark X2) -> U21#(X1, X2), U21#(X1, active X2) -> U21#(X1, X2))
    (U21#(X1, mark X2) -> U21#(X1, X2), U21#(X1, mark X2) -> U21#(X1, X2))
    (U21#(mark X1, X2) -> U21#(X1, X2), U21#(active X1, X2) -> U21#(X1, X2))
    (U21#(mark X1, X2) -> U21#(X1, X2), U21#(mark X1, X2) -> U21#(X1, X2))
    (U21#(mark X1, X2) -> U21#(X1, X2), U21#(X1, active X2) -> U21#(X1, X2))
    (U21#(mark X1, X2) -> U21#(X1, X2), U21#(X1, mark X2) -> U21#(X1, X2))
    (U32#(X1, mark X2) -> U32#(X1, X2), U32#(active X1, X2) -> U32#(X1, X2))
    (U32#(X1, mark X2) -> U32#(X1, X2), U32#(mark X1, X2) -> U32#(X1, X2))
    (U32#(X1, mark X2) -> U32#(X1, X2), U32#(X1, active X2) -> U32#(X1, X2))
    (U32#(X1, mark X2) -> U32#(X1, X2), U32#(X1, mark X2) -> U32#(X1, X2))
    (U32#(mark X1, X2) -> U32#(X1, X2), U32#(active X1, X2) -> U32#(X1, X2))
    (U32#(mark X1, X2) -> U32#(X1, X2), U32#(mark X1, X2) -> U32#(X1, X2))
    (U32#(mark X1, X2) -> U32#(X1, X2), U32#(X1, active X2) -> U32#(X1, X2))
    (U32#(mark X1, X2) -> U32#(X1, X2), U32#(X1, mark X2) -> U32#(X1, X2))
    (U31#(X1, mark X2) -> U31#(X1, X2), U31#(active X1, X2) -> U31#(X1, X2))
    (U31#(X1, mark X2) -> U31#(X1, X2), U31#(mark X1, X2) -> U31#(X1, X2))
    (U31#(X1, mark X2) -> U31#(X1, X2), U31#(X1, active X2) -> U31#(X1, X2))
    (U31#(X1, mark X2) -> U31#(X1, X2), U31#(X1, mark X2) -> U31#(X1, X2))
    (U31#(mark X1, X2) -> U31#(X1, X2), U31#(active X1, X2) -> U31#(X1, X2))
    (U31#(mark X1, X2) -> U31#(X1, X2), U31#(mark X1, X2) -> U31#(X1, X2))
    (U31#(mark X1, X2) -> U31#(X1, X2), U31#(X1, active X2) -> U31#(X1, X2))
    (U31#(mark X1, X2) -> U31#(X1, X2), U31#(X1, mark X2) -> U31#(X1, X2))
    (U45#(X1, mark X2) -> U45#(X1, X2), U45#(active X1, X2) -> U45#(X1, X2))
    (U45#(X1, mark X2) -> U45#(X1, X2), U45#(mark X1, X2) -> U45#(X1, X2))
    (U45#(X1, mark X2) -> U45#(X1, X2), U45#(X1, active X2) -> U45#(X1, X2))
    (U45#(X1, mark X2) -> U45#(X1, X2), U45#(X1, mark X2) -> U45#(X1, X2))
    (U45#(mark X1, X2) -> U45#(X1, X2), U45#(active X1, X2) -> U45#(X1, X2))
    (U45#(mark X1, X2) -> U45#(X1, X2), U45#(mark X1, X2) -> U45#(X1, X2))
    (U45#(mark X1, X2) -> U45#(X1, X2), U45#(X1, active X2) -> U45#(X1, X2))
    (U45#(mark X1, X2) -> U45#(X1, X2), U45#(X1, mark X2) -> U45#(X1, X2))
    (U51#(X1, mark X2) -> U51#(X1, X2), U51#(active X1, X2) -> U51#(X1, X2))
    (U51#(X1, mark X2) -> U51#(X1, X2), U51#(mark X1, X2) -> U51#(X1, X2))
    (U51#(X1, mark X2) -> U51#(X1, X2), U51#(X1, active X2) -> U51#(X1, X2))
    (U51#(X1, mark X2) -> U51#(X1, X2), U51#(X1, mark X2) -> U51#(X1, X2))
    (U51#(mark X1, X2) -> U51#(X1, X2), U51#(active X1, X2) -> U51#(X1, X2))
    (U51#(mark X1, X2) -> U51#(X1, X2), U51#(mark X1, X2) -> U51#(X1, X2))
    (U51#(mark X1, X2) -> U51#(X1, X2), U51#(X1, active X2) -> U51#(X1, X2))
    (U51#(mark X1, X2) -> U51#(X1, X2), U51#(X1, mark X2) -> U51#(X1, X2))
    (U61#(X1, mark X2) -> U61#(X1, X2), U61#(active X1, X2) -> U61#(X1, X2))
    (U61#(X1, mark X2) -> U61#(X1, X2), U61#(mark X1, X2) -> U61#(X1, X2))
    (U61#(X1, mark X2) -> U61#(X1, X2), U61#(X1, active X2) -> U61#(X1, X2))
    (U61#(X1, mark X2) -> U61#(X1, X2), U61#(X1, mark X2) -> U61#(X1, X2))
    (U61#(mark X1, X2) -> U61#(X1, X2), U61#(active X1, X2) -> U61#(X1, X2))
    (U61#(mark X1, X2) -> U61#(X1, X2), U61#(mark X1, X2) -> U61#(X1, X2))
    (U61#(mark X1, X2) -> U61#(X1, X2), U61#(X1, active X2) -> U61#(X1, X2))
    (U61#(mark X1, X2) -> U61#(X1, X2), U61#(X1, mark X2) -> U61#(X1, X2))
    (U95#(X1, mark X2) -> U95#(X1, X2), U95#(active X1, X2) -> U95#(X1, X2))
    (U95#(X1, mark X2) -> U95#(X1, X2), U95#(mark X1, X2) -> U95#(X1, X2))
    (U95#(X1, mark X2) -> U95#(X1, X2), U95#(X1, active X2) -> U95#(X1, X2))
    (U95#(X1, mark X2) -> U95#(X1, X2), U95#(X1, mark X2) -> U95#(X1, X2))
    (U95#(mark X1, X2) -> U95#(X1, X2), U95#(active X1, X2) -> U95#(X1, X2))
    (U95#(mark X1, X2) -> U95#(X1, X2), U95#(mark X1, X2) -> U95#(X1, X2))
    (U95#(mark X1, X2) -> U95#(X1, X2), U95#(X1, active X2) -> U95#(X1, X2))
    (U95#(mark X1, X2) -> U95#(X1, X2), U95#(X1, mark X2) -> U95#(X1, X2))
    (active# U102(tt(), V1, V2) -> isNatIListKind# V2, isNatIListKind# active X -> isNatIListKind# X)
    (active# U102(tt(), V1, V2) -> isNatIListKind# V2, isNatIListKind# mark X -> isNatIListKind# X)
    (active# U105(tt(), V2) -> isNatIList# V2, isNatIList# active X -> isNatIList# X)
    (active# U105(tt(), V2) -> isNatIList# V2, isNatIList# mark X -> isNatIList# X)
    (active# U43(tt(), V1, V2) -> isNatIListKind# V2, isNatIListKind# active X -> isNatIListKind# X)
    (active# U43(tt(), V1, V2) -> isNatIListKind# V2, isNatIListKind# mark X -> isNatIListKind# X)
    (active# U51(tt(), V2) -> isNatIListKind# V2, isNatIListKind# active X -> isNatIListKind# X)
    (active# U51(tt(), V2) -> isNatIListKind# V2, isNatIListKind# mark X -> isNatIListKind# X)
    (active# U92(tt(), V1, V2) -> isNatIListKind# V2, isNatIListKind# active X -> isNatIListKind# X)
    (active# U92(tt(), V1, V2) -> isNatIListKind# V2, isNatIListKind# mark X -> isNatIListKind# X)
    (active# U95(tt(), V2) -> isNatList# V2, isNatList# active X -> isNatList# X)
    (active# U95(tt(), V2) -> isNatList# V2, isNatList# mark X -> isNatList# X)
    (active# U32(tt(), V) -> isNatList# V, isNatList# active X -> isNatList# X)
    (active# U32(tt(), V) -> isNatList# V, isNatList# mark X -> isNatList# X)
    (active# U136(tt(), IL, M, N) -> mark# cons(N, take(M, IL)), mark# cons(X1, X2) -> active# cons(mark X1, X2))
    (active# U136(tt(), IL, M, N) -> mark# cons(N, take(M, IL)), mark# cons(X1, X2) -> cons#(mark X1, X2))
    (active# U136(tt(), IL, M, N) -> mark# cons(N, take(M, IL)), mark# cons(X1, X2) -> mark# X1)
    (mark# U105(X1, X2) -> active# U105(mark X1, X2), active# U105(tt(), V2) -> isNatIList# V2)
    (mark# U105(X1, X2) -> active# U105(mark X1, X2), active# U105(tt(), V2) -> U106# isNatIList V2)
    (mark# U105(X1, X2) -> active# U105(mark X1, X2), active# U105(tt(), V2) -> mark# U106 isNatIList V2)
    (mark# U11(X1, X2) -> active# U11(mark X1, X2), active# U11(tt(), V1) -> U12#(isNatIListKind V1, V1))
    (mark# U11(X1, X2) -> active# U11(mark X1, X2), active# U11(tt(), V1) -> isNatIListKind# V1)
    (mark# U11(X1, X2) -> active# U11(mark X1, X2), active# U11(tt(), V1) -> mark# U12(isNatIListKind V1, V1))
    (mark# U121(X1, X2) -> active# U121(mark X1, X2), active# U121(tt(), IL) -> U122# isNatIListKind IL)
    (mark# U121(X1, X2) -> active# U121(mark X1, X2), active# U121(tt(), IL) -> isNatIListKind# IL)
    (mark# U121(X1, X2) -> active# U121(mark X1, X2), active# U121(tt(), IL) -> mark# U122 isNatIListKind IL)
    (mark# U21(X1, X2) -> active# U21(mark X1, X2), active# U21(tt(), V1) -> U22#(isNatKind V1, V1))
    (mark# U21(X1, X2) -> active# U21(mark X1, X2), active# U21(tt(), V1) -> isNatKind# V1)
    (mark# U21(X1, X2) -> active# U21(mark X1, X2), active# U21(tt(), V1) -> mark# U22(isNatKind V1, V1))
    (mark# U31(X1, X2) -> active# U31(mark X1, X2), active# U31(tt(), V) -> U32#(isNatIListKind V, V))
    (mark# U31(X1, X2) -> active# U31(mark X1, X2), active# U31(tt(), V) -> isNatIListKind# V)
    (mark# U31(X1, X2) -> active# U31(mark X1, X2), active# U31(tt(), V) -> mark# U32(isNatIListKind V, V))
    (mark# U51(X1, X2) -> active# U51(mark X1, X2), active# U51(tt(), V2) -> U52# isNatIListKind V2)
    (mark# U51(X1, X2) -> active# U51(mark X1, X2), active# U51(tt(), V2) -> isNatIListKind# V2)
    (mark# U51(X1, X2) -> active# U51(mark X1, X2), active# U51(tt(), V2) -> mark# U52 isNatIListKind V2)
    (mark# U95(X1, X2) -> active# U95(mark X1, X2), active# U95(tt(), V2) -> U96# isNatList V2)
    (mark# U95(X1, X2) -> active# U95(mark X1, X2), active# U95(tt(), V2) -> isNatList# V2)
    (mark# U95(X1, X2) -> active# U95(mark X1, X2), active# U95(tt(), V2) -> mark# U96 isNatList V2)
    (active# isNatIListKind take(V1, V2) -> mark# U61(isNatKind V1, V2), mark# U61(X1, X2) -> U61#(mark X1, X2))
    (active# isNatIListKind take(V1, V2) -> mark# U61(isNatKind V1, V2), mark# U61(X1, X2) -> active# U61(mark X1, X2))
    (active# isNatIListKind take(V1, V2) -> mark# U61(isNatKind V1, V2), mark# U61(X1, X2) -> mark# X1)
    (active# isNat s V1 -> mark# U21(isNatKind V1, V1), mark# U21(X1, X2) -> U21#(mark X1, X2))
    (active# isNat s V1 -> mark# U21(isNatKind V1, V1), mark# U21(X1, X2) -> active# U21(mark X1, X2))
    (active# isNat s V1 -> mark# U21(isNatKind V1, V1), mark# U21(X1, X2) -> mark# X1)
    (active# isNatIList V -> mark# U31(isNatIListKind V, V), mark# U31(X1, X2) -> U31#(mark X1, X2))
    (active# isNatIList V -> mark# U31(isNatIListKind V, V), mark# U31(X1, X2) -> active# U31(mark X1, X2))
    (active# isNatIList V -> mark# U31(isNatIListKind V, V), mark# U31(X1, X2) -> mark# X1)
    (active# U113(tt(), L, N) -> mark# U114(isNatKind N, L), mark# U114(X1, X2) -> U114#(mark X1, X2))
    (active# U113(tt(), L, N) -> mark# U114(isNatKind N, L), mark# U114(X1, X2) -> active# U114(mark X1, X2))
    (active# U113(tt(), L, N) -> mark# U114(isNatKind N, L), mark# U114(X1, X2) -> mark# X1)
    (active# U21(tt(), V1) -> mark# U22(isNatKind V1, V1), mark# U22(X1, X2) -> U22#(mark X1, X2))
    (active# U21(tt(), V1) -> mark# U22(isNatKind V1, V1), mark# U22(X1, X2) -> active# U22(mark X1, X2))
    (active# U21(tt(), V1) -> mark# U22(isNatKind V1, V1), mark# U22(X1, X2) -> mark# X1)
    (active# U44(tt(), V1, V2) -> mark# U45(isNat V1, V2), mark# U45(X1, X2) -> U45#(mark X1, X2))
    (active# U44(tt(), V1, V2) -> mark# U45(isNat V1, V2), mark# U45(X1, X2) -> active# U45(mark X1, X2))
    (active# U44(tt(), V1, V2) -> mark# U45(isNat V1, V2), mark# U45(X1, X2) -> mark# X1)
    (mark# take(X1, X2) -> active# take(mark X1, mark X2), active# take(s M, cons(N, IL)) -> U131#(isNatIList IL, IL, M, N))
    (mark# take(X1, X2) -> active# take(mark X1, mark X2), active# take(s M, cons(N, IL)) -> isNatIList# IL)
    (mark# take(X1, X2) -> active# take(mark X1, mark X2), active# take(s M, cons(N, IL)) -> mark# U131(isNatIList IL, IL, M, N))
    (mark# take(X1, X2) -> active# take(mark X1, mark X2), active# take(0(), IL) -> U121#(isNatIList IL, IL))
    (mark# take(X1, X2) -> active# take(mark X1, mark X2), active# take(0(), IL) -> isNatIList# IL)
    (mark# take(X1, X2) -> active# take(mark X1, mark X2), active# take(0(), IL) -> mark# U121(isNatIList IL, IL))
    (active# U112(tt(), L, N) -> isNat# N, isNat# active X -> isNat# X)
    (active# U112(tt(), L, N) -> isNat# N, isNat# mark X -> isNat# X)
    (active# U134(tt(), IL, M, N) -> isNat# N, isNat# active X -> isNat# X)
    (active# U134(tt(), IL, M, N) -> isNat# N, isNat# mark X -> isNat# X)
    (mark# take(X1, X2) -> mark# X2, mark# U96 X -> U96# mark X)
    (mark# take(X1, X2) -> mark# X2, mark# U96 X -> active# U96 mark X)
    (mark# take(X1, X2) -> mark# X2, mark# U96 X -> mark# X)
    (mark# take(X1, X2) -> mark# X2, mark# U95(X1, X2) -> U95#(mark X1, X2))
    (mark# take(X1, X2) -> mark# X2, mark# U95(X1, X2) -> active# U95(mark X1, X2))
    (mark# take(X1, X2) -> mark# X2, mark# U95(X1, X2) -> mark# X1)
    (mark# take(X1, X2) -> mark# X2, mark# U94(X1, X2, X3) -> U94#(mark X1, X2, X3))
    (mark# take(X1, X2) -> mark# X2, mark# U94(X1, X2, X3) -> active# U94(mark X1, X2, X3))
    (mark# take(X1, X2) -> mark# X2, mark# U94(X1, X2, X3) -> mark# X1)
    (mark# take(X1, X2) -> mark# X2, mark# U93(X1, X2, X3) -> U93#(mark X1, X2, X3))
    (mark# take(X1, X2) -> mark# X2, mark# U93(X1, X2, X3) -> active# U93(mark X1, X2, X3))
    (mark# take(X1, X2) -> mark# X2, mark# U93(X1, X2, X3) -> mark# X1)
    (mark# take(X1, X2) -> mark# X2, mark# U91(X1, X2, X3) -> U91#(mark X1, X2, X3))
    (mark# take(X1, X2) -> mark# X2, mark# U91(X1, X2, X3) -> active# U91(mark X1, X2, X3))
    (mark# take(X1, X2) -> mark# X2, mark# U91(X1, X2, X3) -> mark# X1)
    (mark# take(X1, X2) -> mark# X2, mark# U92(X1, X2, X3) -> U92#(mark X1, X2, X3))
    (mark# take(X1, X2) -> mark# X2, mark# U92(X1, X2, X3) -> active# U92(mark X1, X2, X3))
    (mark# take(X1, X2) -> mark# X2, mark# U92(X1, X2, X3) -> mark# X1)
    (mark# take(X1, X2) -> mark# X2, mark# U81 X -> U81# mark X)
    (mark# take(X1, X2) -> mark# X2, mark# U81 X -> active# U81 mark X)
    (mark# take(X1, X2) -> mark# X2, mark# U81 X -> mark# X)
    (mark# take(X1, X2) -> mark# X2, mark# U71 X -> U71# mark X)
    (mark# take(X1, X2) -> mark# X2, mark# U71 X -> active# U71 mark X)
    (mark# take(X1, X2) -> mark# X2, mark# U71 X -> mark# X)
    (mark# take(X1, X2) -> mark# X2, mark# U61(X1, X2) -> U61#(mark X1, X2))
    (mark# take(X1, X2) -> mark# X2, mark# U61(X1, X2) -> active# U61(mark X1, X2))
    (mark# take(X1, X2) -> mark# X2, mark# U61(X1, X2) -> mark# X1)
    (mark# take(X1, X2) -> mark# X2, mark# U62 X -> U62# mark X)
    (mark# take(X1, X2) -> mark# X2, mark# U62 X -> active# U62 mark X)
    (mark# take(X1, X2) -> mark# X2, mark# U62 X -> mark# X)
    (mark# take(X1, X2) -> mark# X2, mark# U51(X1, X2) -> U51#(mark X1, X2))
    (mark# take(X1, X2) -> mark# X2, mark# U51(X1, X2) -> active# U51(mark X1, X2))
    (mark# take(X1, X2) -> mark# X2, mark# U51(X1, X2) -> mark# X1)
    (mark# take(X1, X2) -> mark# X2, mark# U52 X -> U52# mark X)
    (mark# take(X1, X2) -> mark# X2, mark# U52 X -> active# U52 mark X)
    (mark# take(X1, X2) -> mark# X2, mark# U52 X -> mark# X)
    (mark# take(X1, X2) -> mark# X2, mark# U46 X -> U46# mark X)
    (mark# take(X1, X2) -> mark# X2, mark# U46 X -> active# U46 mark X)
    (mark# take(X1, X2) -> mark# X2, mark# U46 X -> mark# X)
    (mark# take(X1, X2) -> mark# X2, mark# U45(X1, X2) -> U45#(mark X1, X2))
    (mark# take(X1, X2) -> mark# X2, mark# U45(X1, X2) -> active# U45(mark X1, X2))
    (mark# take(X1, X2) -> mark# X2, mark# U45(X1, X2) -> mark# X1)
    (mark# take(X1, X2) -> mark# X2, mark# U44(X1, X2, X3) -> U44#(mark X1, X2, X3))
    (mark# take(X1, X2) -> mark# X2, mark# U44(X1, X2, X3) -> active# U44(mark X1, X2, X3))
    (mark# take(X1, X2) -> mark# X2, mark# U44(X1, X2, X3) -> mark# X1)
    (mark# take(X1, X2) -> mark# X2, mark# U43(X1, X2, X3) -> U43#(mark X1, X2, X3))
    (mark# take(X1, X2) -> mark# X2, mark# U43(X1, X2, X3) -> active# U43(mark X1, X2, X3))
    (mark# take(X1, X2) -> mark# X2, mark# U43(X1, X2, X3) -> mark# X1)
    (mark# take(X1, X2) -> mark# X2, mark# U41(X1, X2, X3) -> U41#(mark X1, X2, X3))
    (mark# take(X1, X2) -> mark# X2, mark# U41(X1, X2, X3) -> active# U41(mark X1, X2, X3))
    (mark# take(X1, X2) -> mark# X2, mark# U41(X1, X2, X3) -> mark# X1)
    (mark# take(X1, X2) -> mark# X2, mark# U42(X1, X2, X3) -> U42#(mark X1, X2, X3))
    (mark# take(X1, X2) -> mark# X2, mark# U42(X1, X2, X3) -> active# U42(mark X1, X2, X3))
    (mark# take(X1, X2) -> mark# X2, mark# U42(X1, X2, X3) -> mark# X1)
    (mark# take(X1, X2) -> mark# X2, mark# U33 X -> U33# mark X)
    (mark# take(X1, X2) -> mark# X2, mark# U33 X -> active# U33 mark X)
    (mark# take(X1, X2) -> mark# X2, mark# U33 X -> mark# X)
    (mark# take(X1, X2) -> mark# X2, mark# U31(X1, X2) -> U31#(mark X1, X2))
    (mark# take(X1, X2) -> mark# X2, mark# U31(X1, X2) -> active# U31(mark X1, X2))
    (mark# take(X1, X2) -> mark# X2, mark# U31(X1, X2) -> mark# X1)
    (mark# take(X1, X2) -> mark# X2, mark# U32(X1, X2) -> U32#(mark X1, X2))
    (mark# take(X1, X2) -> mark# X2, mark# U32(X1, X2) -> active# U32(mark X1, X2))
    (mark# take(X1, X2) -> mark# X2, mark# U32(X1, X2) -> mark# X1)
    (mark# take(X1, X2) -> mark# X2, mark# U23 X -> U23# mark X)
    (mark# take(X1, X2) -> mark# X2, mark# U23 X -> active# U23 mark X)
    (mark# take(X1, X2) -> mark# X2, mark# U23 X -> mark# X)
    (mark# take(X1, X2) -> mark# X2, mark# U21(X1, X2) -> U21#(mark X1, X2))
    (mark# take(X1, X2) -> mark# X2, mark# U21(X1, X2) -> active# U21(mark X1, X2))
    (mark# take(X1, X2) -> mark# X2, mark# U21(X1, X2) -> mark# X1)
    (mark# take(X1, X2) -> mark# X2, mark# U22(X1, X2) -> U22#(mark X1, X2))
    (mark# take(X1, X2) -> mark# X2, mark# U22(X1, X2) -> active# U22(mark X1, X2))
    (mark# take(X1, X2) -> mark# X2, mark# U22(X1, X2) -> mark# X1)
    (mark# take(X1, X2) -> mark# X2, mark# take(X1, X2) -> take#(mark X1, mark X2))
    (mark# take(X1, X2) -> mark# X2, mark# take(X1, X2) -> active# take(mark X1, mark X2))
    (mark# take(X1, X2) -> mark# X2, mark# take(X1, X2) -> mark# X2)
    (mark# take(X1, X2) -> mark# X2, mark# take(X1, X2) -> mark# X1)
    (mark# take(X1, X2) -> mark# X2, mark# U136(X1, X2, X3, X4) -> U136#(mark X1, X2, X3, X4))
    (mark# take(X1, X2) -> mark# X2, mark# U136(X1, X2, X3, X4) -> active# U136(mark X1, X2, X3, X4))
    (mark# take(X1, X2) -> mark# X2, mark# U136(X1, X2, X3, X4) -> mark# X1)
    (mark# take(X1, X2) -> mark# X2, mark# U135(X1, X2, X3, X4) -> U135#(mark X1, X2, X3, X4))
    (mark# take(X1, X2) -> mark# X2, mark# U135(X1, X2, X3, X4) -> active# U135(mark X1, X2, X3, X4))
    (mark# take(X1, X2) -> mark# X2, mark# U135(X1, X2, X3, X4) -> mark# X1)
    (mark# take(X1, X2) -> mark# X2, mark# U134(X1, X2, X3, X4) -> U134#(mark X1, X2, X3, X4))
    (mark# take(X1, X2) -> mark# X2, mark# U134(X1, X2, X3, X4) -> active# U134(mark X1, X2, X3, X4))
    (mark# take(X1, X2) -> mark# X2, mark# U134(X1, X2, X3, X4) -> mark# X1)
    (mark# take(X1, X2) -> mark# X2, mark# U133(X1, X2, X3, X4) -> U133#(mark X1, X2, X3, X4))
    (mark# take(X1, X2) -> mark# X2, mark# U133(X1, X2, X3, X4) -> active# U133(mark X1, X2, X3, X4))
    (mark# take(X1, X2) -> mark# X2, mark# U133(X1, X2, X3, X4) -> mark# X1)
    (mark# take(X1, X2) -> mark# X2, mark# U131(X1, X2, X3, X4) -> U131#(mark X1, X2, X3, X4))
    (mark# take(X1, X2) -> mark# X2, mark# U131(X1, X2, X3, X4) -> active# U131(mark X1, X2, X3, X4))
    (mark# take(X1, X2) -> mark# X2, mark# U131(X1, X2, X3, X4) -> mark# X1)
    (mark# take(X1, X2) -> mark# X2, mark# U132(X1, X2, X3, X4) -> U132#(mark X1, X2, X3, X4))
    (mark# take(X1, X2) -> mark# X2, mark# U132(X1, X2, X3, X4) -> active# U132(mark X1, X2, X3, X4))
    (mark# take(X1, X2) -> mark# X2, mark# U132(X1, X2, X3, X4) -> mark# X1)
    (mark# take(X1, X2) -> mark# X2, mark# nil() -> active# nil())
    (mark# take(X1, X2) -> mark# X2, mark# U121(X1, X2) -> U121#(mark X1, X2))
    (mark# take(X1, X2) -> mark# X2, mark# U121(X1, X2) -> active# U121(mark X1, X2))
    (mark# take(X1, X2) -> mark# X2, mark# U121(X1, X2) -> mark# X1)
    (mark# take(X1, X2) -> mark# X2, mark# U122 X -> U122# mark X)
    (mark# take(X1, X2) -> mark# X2, mark# U122 X -> active# U122 mark X)
    (mark# take(X1, X2) -> mark# X2, mark# U122 X -> mark# X)
    (mark# take(X1, X2) -> mark# X2, mark# isNatList X -> active# isNatList X)
    (mark# take(X1, X2) -> mark# X2, mark# U13 X -> U13# mark X)
    (mark# take(X1, X2) -> mark# X2, mark# U13 X -> active# U13 mark X)
    (mark# take(X1, X2) -> mark# X2, mark# U13 X -> mark# X)
    (mark# take(X1, X2) -> mark# X2, mark# length X -> length# mark X)
    (mark# take(X1, X2) -> mark# X2, mark# length X -> active# length mark X)
    (mark# take(X1, X2) -> mark# X2, mark# length X -> mark# X)
    (mark# take(X1, X2) -> mark# X2, mark# s X -> s# mark X)
    (mark# take(X1, X2) -> mark# X2, mark# s X -> active# s mark X)
    (mark# take(X1, X2) -> mark# X2, mark# s X -> mark# X)
    (mark# take(X1, X2) -> mark# X2, mark# U114(X1, X2) -> U114#(mark X1, X2))
    (mark# take(X1, X2) -> mark# X2, mark# U114(X1, X2) -> active# U114(mark X1, X2))
    (mark# take(X1, X2) -> mark# X2, mark# U114(X1, X2) -> mark# X1)
    (mark# take(X1, X2) -> mark# X2, mark# U113(X1, X2, X3) -> U113#(mark X1, X2, X3))
    (mark# take(X1, X2) -> mark# X2, mark# U113(X1, X2, X3) -> active# U113(mark X1, X2, X3))
    (mark# take(X1, X2) -> mark# X2, mark# U113(X1, X2, X3) -> mark# X1)
    (mark# take(X1, X2) -> mark# X2, mark# U111(X1, X2, X3) -> U111#(mark X1, X2, X3))
    (mark# take(X1, X2) -> mark# X2, mark# U111(X1, X2, X3) -> active# U111(mark X1, X2, X3))
    (mark# take(X1, X2) -> mark# X2, mark# U111(X1, X2, X3) -> mark# X1)
    (mark# take(X1, X2) -> mark# X2, mark# U112(X1, X2, X3) -> U112#(mark X1, X2, X3))
    (mark# take(X1, X2) -> mark# X2, mark# U112(X1, X2, X3) -> active# U112(mark X1, X2, X3))
    (mark# take(X1, X2) -> mark# X2, mark# U112(X1, X2, X3) -> mark# X1)
    (mark# take(X1, X2) -> mark# X2, mark# U11(X1, X2) -> U11#(mark X1, X2))
    (mark# take(X1, X2) -> mark# X2, mark# U11(X1, X2) -> active# U11(mark X1, X2))
    (mark# take(X1, X2) -> mark# X2, mark# U11(X1, X2) -> mark# X1)
    (mark# take(X1, X2) -> mark# X2, mark# U12(X1, X2) -> U12#(mark X1, X2))
    (mark# take(X1, X2) -> mark# X2, mark# U12(X1, X2) -> active# U12(mark X1, X2))
    (mark# take(X1, X2) -> mark# X2, mark# U12(X1, X2) -> mark# X1)
    (mark# take(X1, X2) -> mark# X2, mark# isNatIList X -> active# isNatIList X)
    (mark# take(X1, X2) -> mark# X2, mark# U106 X -> U106# mark X)
    (mark# take(X1, X2) -> mark# X2, mark# U106 X -> active# U106 mark X)
    (mark# take(X1, X2) -> mark# X2, mark# U106 X -> mark# X)
    (mark# take(X1, X2) -> mark# X2, mark# isNat X -> active# isNat X)
    (mark# take(X1, X2) -> mark# X2, mark# U105(X1, X2) -> U105#(mark X1, X2))
    (mark# take(X1, X2) -> mark# X2, mark# U105(X1, X2) -> active# U105(mark X1, X2))
    (mark# take(X1, X2) -> mark# X2, mark# U105(X1, X2) -> mark# X1)
    (mark# take(X1, X2) -> mark# X2, mark# U104(X1, X2, X3) -> U104#(mark X1, X2, X3))
    (mark# take(X1, X2) -> mark# X2, mark# U104(X1, X2, X3) -> active# U104(mark X1, X2, X3))
    (mark# take(X1, X2) -> mark# X2, mark# U104(X1, X2, X3) -> mark# X1)
    (mark# take(X1, X2) -> mark# X2, mark# isNatIListKind X -> active# isNatIListKind X)
    (mark# take(X1, X2) -> mark# X2, mark# U103(X1, X2, X3) -> U103#(mark X1, X2, X3))
    (mark# take(X1, X2) -> mark# X2, mark# U103(X1, X2, X3) -> active# U103(mark X1, X2, X3))
    (mark# take(X1, X2) -> mark# X2, mark# U103(X1, X2, X3) -> mark# X1)
    (mark# take(X1, X2) -> mark# X2, mark# tt() -> active# tt())
    (mark# take(X1, X2) -> mark# X2, mark# U101(X1, X2, X3) -> U101#(mark X1, X2, X3))
    (mark# take(X1, X2) -> mark# X2, mark# U101(X1, X2, X3) -> active# U101(mark X1, X2, X3))
    (mark# take(X1, X2) -> mark# X2, mark# U101(X1, X2, X3) -> mark# X1)
    (mark# take(X1, X2) -> mark# X2, mark# isNatKind X -> active# isNatKind X)
    (mark# take(X1, X2) -> mark# X2, mark# U102(X1, X2, X3) -> U102#(mark X1, X2, X3))
    (mark# take(X1, X2) -> mark# X2, mark# U102(X1, X2, X3) -> active# U102(mark X1, X2, X3))
    (mark# take(X1, X2) -> mark# X2, mark# U102(X1, X2, X3) -> mark# X1)
    (mark# take(X1, X2) -> mark# X2, mark# zeros() -> active# zeros())
    (mark# take(X1, X2) -> mark# X2, mark# 0() -> active# 0())
    (mark# take(X1, X2) -> mark# X2, mark# cons(X1, X2) -> active# cons(mark X1, X2))
    (mark# take(X1, X2) -> mark# X2, mark# cons(X1, X2) -> cons#(mark X1, X2))
    (mark# take(X1, X2) -> mark# X2, mark# cons(X1, X2) -> mark# X1)
    (active# isNatIListKind take(V1, V2) -> U61#(isNatKind V1, V2), U61#(X1, active X2) -> U61#(X1, X2))
    (active# isNatIListKind take(V1, V2) -> U61#(isNatKind V1, V2), U61#(X1, mark X2) -> U61#(X1, X2))
    (active# U44(tt(), V1, V2) -> U45#(isNat V1, V2), U45#(X1, active X2) -> U45#(X1, X2))
    (active# U44(tt(), V1, V2) -> U45#(isNat V1, V2), U45#(X1, mark X2) -> U45#(X1, X2))
    (active# take(0(), IL) -> U121#(isNatIList IL, IL), U121#(X1, active X2) -> U121#(X1, X2))
    (active# take(0(), IL) -> U121#(isNatIList IL, IL), U121#(X1, mark X2) -> U121#(X1, X2))
    (active# U94(tt(), V1, V2) -> U95#(isNat V1, V2), U95#(X1, mark X2) -> U95#(X1, X2))
    (active# U94(tt(), V1, V2) -> U95#(isNat V1, V2), U95#(X1, active X2) -> U95#(X1, X2))
    (active# U104(tt(), V1, V2) -> U105#(isNat V1, V2), U105#(X1, mark X2) -> U105#(X1, X2))
    (active# U104(tt(), V1, V2) -> U105#(isNat V1, V2), U105#(X1, active X2) -> U105#(X1, X2))
    (active# isNatIListKind cons(V1, V2) -> U51#(isNatKind V1, V2), U51#(X1, mark X2) -> U51#(X1, X2))
    (active# isNatIListKind cons(V1, V2) -> U51#(isNatKind V1, V2), U51#(X1, active X2) -> U51#(X1, X2))
    (active# U135(tt(), IL, M, N) -> isNatKind# N, isNatKind# mark X -> isNatKind# X)
    (active# U135(tt(), IL, M, N) -> isNatKind# N, isNatKind# active X -> isNatKind# X)
    (active# U113(tt(), L, N) -> isNatKind# N, isNatKind# mark X -> isNatKind# X)
    (active# U113(tt(), L, N) -> isNatKind# N, isNatKind# active X -> isNatKind# X)
    (active# zeros() -> mark# cons(0(), zeros()), mark# cons(X1, X2) -> mark# X1)
    (active# zeros() -> mark# cons(0(), zeros()), mark# cons(X1, X2) -> cons#(mark X1, X2))
    (active# zeros() -> mark# cons(0(), zeros()), mark# cons(X1, X2) -> active# cons(mark X1, X2))
    (active# U94(tt(), V1, V2) -> mark# U95(isNat V1, V2), mark# U95(X1, X2) -> mark# X1)
    (active# U94(tt(), V1, V2) -> mark# U95(isNat V1, V2), mark# U95(X1, X2) -> active# U95(mark X1, X2))
    (active# U94(tt(), V1, V2) -> mark# U95(isNat V1, V2), mark# U95(X1, X2) -> U95#(mark X1, X2))
    (active# U31(tt(), V) -> mark# U32(isNatIListKind V, V), mark# U32(X1, X2) -> mark# X1)
    (active# U31(tt(), V) -> mark# U32(isNatIListKind V, V), mark# U32(X1, X2) -> active# U32(mark X1, X2))
    (active# U31(tt(), V) -> mark# U32(isNatIListKind V, V), mark# U32(X1, X2) -> U32#(mark X1, X2))
    (active# take(0(), IL) -> mark# U121(isNatIList IL, IL), mark# U121(X1, X2) -> mark# X1)
    (active# take(0(), IL) -> mark# U121(isNatIList IL, IL), mark# U121(X1, X2) -> active# U121(mark X1, X2))
    (active# take(0(), IL) -> mark# U121(isNatIList IL, IL), mark# U121(X1, X2) -> U121#(mark X1, X2))
    (active# U11(tt(), V1) -> mark# U12(isNatIListKind V1, V1), mark# U12(X1, X2) -> mark# X1)
    (active# U11(tt(), V1) -> mark# U12(isNatIListKind V1, V1), mark# U12(X1, X2) -> active# U12(mark X1, X2))
    (active# U11(tt(), V1) -> mark# U12(isNatIListKind V1, V1), mark# U12(X1, X2) -> U12#(mark X1, X2))
    (active# isNat length V1 -> mark# U11(isNatIListKind V1, V1), mark# U11(X1, X2) -> mark# X1)
    (active# isNat length V1 -> mark# U11(isNatIListKind V1, V1), mark# U11(X1, X2) -> active# U11(mark X1, X2))
    (active# isNat length V1 -> mark# U11(isNatIListKind V1, V1), mark# U11(X1, X2) -> U11#(mark X1, X2))
    (active# U104(tt(), V1, V2) -> mark# U105(isNat V1, V2), mark# U105(X1, X2) -> mark# X1)
    (active# U104(tt(), V1, V2) -> mark# U105(isNat V1, V2), mark# U105(X1, X2) -> active# U105(mark X1, X2))
    (active# U104(tt(), V1, V2) -> mark# U105(isNat V1, V2), mark# U105(X1, X2) -> U105#(mark X1, X2))
    (active# isNatIListKind cons(V1, V2) -> mark# U51(isNatKind V1, V2), mark# U51(X1, X2) -> mark# X1)
    (active# isNatIListKind cons(V1, V2) -> mark# U51(isNatKind V1, V2), mark# U51(X1, X2) -> active# U51(mark X1, X2))
    (active# isNatIListKind cons(V1, V2) -> mark# U51(isNatKind V1, V2), mark# U51(X1, X2) -> U51#(mark X1, X2))
    (mark# U61(X1, X2) -> active# U61(mark X1, X2), active# U61(tt(), V2) -> mark# U62 isNatIListKind V2)
    (mark# U61(X1, X2) -> active# U61(mark X1, X2), active# U61(tt(), V2) -> isNatIListKind# V2)
    (mark# U61(X1, X2) -> active# U61(mark X1, X2), active# U61(tt(), V2) -> U62# isNatIListKind V2)
    (mark# U45(X1, X2) -> active# U45(mark X1, X2), active# U45(tt(), V2) -> mark# U46 isNatIList V2)
    (mark# U45(X1, X2) -> active# U45(mark X1, X2), active# U45(tt(), V2) -> isNatIList# V2)
    (mark# U45(X1, X2) -> active# U45(mark X1, X2), active# U45(tt(), V2) -> U46# isNatIList V2)
    (mark# U32(X1, X2) -> active# U32(mark X1, X2), active# U32(tt(), V) -> mark# U33 isNatList V)
    (mark# U32(X1, X2) -> active# U32(mark X1, X2), active# U32(tt(), V) -> isNatList# V)
    (mark# U32(X1, X2) -> active# U32(mark X1, X2), active# U32(tt(), V) -> U33# isNatList V)
    (mark# U22(X1, X2) -> active# U22(mark X1, X2), active# U22(tt(), V1) -> mark# U23 isNat V1)
    (mark# U22(X1, X2) -> active# U22(mark X1, X2), active# U22(tt(), V1) -> isNat# V1)
    (mark# U22(X1, X2) -> active# U22(mark X1, X2), active# U22(tt(), V1) -> U23# isNat V1)
    (mark# U114(X1, X2) -> active# U114(mark X1, X2), active# U114(tt(), L) -> mark# s length L)
    (mark# U114(X1, X2) -> active# U114(mark X1, X2), active# U114(tt(), L) -> s# length L)
    (mark# U114(X1, X2) -> active# U114(mark X1, X2), active# U114(tt(), L) -> length# L)
    (mark# U12(X1, X2) -> active# U12(mark X1, X2), active# U12(tt(), V1) -> mark# U13 isNatList V1)
    (mark# U12(X1, X2) -> active# U12(mark X1, X2), active# U12(tt(), V1) -> U13# isNatList V1)
    (mark# U12(X1, X2) -> active# U12(mark X1, X2), active# U12(tt(), V1) -> isNatList# V1)
    (active# U31(tt(), V) -> isNatIListKind# V, isNatIListKind# mark X -> isNatIListKind# X)
    (active# U31(tt(), V) -> isNatIListKind# V, isNatIListKind# active X -> isNatIListKind# X)
    (active# isNatIList V -> isNatIListKind# V, isNatIListKind# mark X -> isNatIListKind# X)
    (active# isNatIList V -> isNatIListKind# V, isNatIListKind# active X -> isNatIListKind# X)
    (active# U93(tt(), V1, V2) -> isNatIListKind# V2, isNatIListKind# mark X -> isNatIListKind# X)
    (active# U93(tt(), V1, V2) -> isNatIListKind# V2, isNatIListKind# active X -> isNatIListKind# X)
    (active# U61(tt(), V2) -> isNatIListKind# V2, isNatIListKind# mark X -> isNatIListKind# X)
    (active# U61(tt(), V2) -> isNatIListKind# V2, isNatIListKind# active X -> isNatIListKind# X)
    (active# U45(tt(), V2) -> isNatIList# V2, isNatIList# mark X -> isNatIList# X)
    (active# U45(tt(), V2) -> isNatIList# V2, isNatIList# active X -> isNatIList# X)
    (active# U42(tt(), V1, V2) -> isNatIListKind# V2, isNatIListKind# mark X -> isNatIListKind# X)
    (active# U42(tt(), V1, V2) -> isNatIListKind# V2, isNatIListKind# active X -> isNatIListKind# X)
    (active# U103(tt(), V1, V2) -> isNatIListKind# V2, isNatIListKind# mark X -> isNatIListKind# X)
    (active# U103(tt(), V1, V2) -> isNatIListKind# V2, isNatIListKind# active X -> isNatIListKind# X)
    (U95#(active X1, X2) -> U95#(X1, X2), U95#(X1, mark X2) -> U95#(X1, X2))
    (U95#(active X1, X2) -> U95#(X1, X2), U95#(X1, active X2) -> U95#(X1, X2))
    (U95#(active X1, X2) -> U95#(X1, X2), U95#(mark X1, X2) -> U95#(X1, X2))
    (U95#(active X1, X2) -> U95#(X1, X2), U95#(active X1, X2) -> U95#(X1, X2))
    (U95#(X1, active X2) -> U95#(X1, X2), U95#(X1, mark X2) -> U95#(X1, X2))
    (U95#(X1, active X2) -> U95#(X1, X2), U95#(X1, active X2) -> U95#(X1, X2))
    (U95#(X1, active X2) -> U95#(X1, X2), U95#(mark X1, X2) -> U95#(X1, X2))
    (U95#(X1, active X2) -> U95#(X1, X2), U95#(active X1, X2) -> U95#(X1, X2))
    (U61#(active X1, X2) -> U61#(X1, X2), U61#(X1, mark X2) -> U61#(X1, X2))
    (U61#(active X1, X2) -> U61#(X1, X2), U61#(X1, active X2) -> U61#(X1, X2))
    (U61#(active X1, X2) -> U61#(X1, X2), U61#(mark X1, X2) -> U61#(X1, X2))
    (U61#(active X1, X2) -> U61#(X1, X2), U61#(active X1, X2) -> U61#(X1, X2))
    (U61#(X1, active X2) -> U61#(X1, X2), U61#(X1, mark X2) -> U61#(X1, X2))
    (U61#(X1, active X2) -> U61#(X1, X2), U61#(X1, active X2) -> U61#(X1, X2))
    (U61#(X1, active X2) -> U61#(X1, X2), U61#(mark X1, X2) -> U61#(X1, X2))
    (U61#(X1, active X2) -> U61#(X1, X2), U61#(active X1, X2) -> U61#(X1, X2))
    (U51#(active X1, X2) -> U51#(X1, X2), U51#(X1, mark X2) -> U51#(X1, X2))
    (U51#(active X1, X2) -> U51#(X1, X2), U51#(X1, active X2) -> U51#(X1, X2))
    (U51#(active X1, X2) -> U51#(X1, X2), U51#(mark X1, X2) -> U51#(X1, X2))
    (U51#(active X1, X2) -> U51#(X1, X2), U51#(active X1, X2) -> U51#(X1, X2))
    (U51#(X1, active X2) -> U51#(X1, X2), U51#(X1, mark X2) -> U51#(X1, X2))
    (U51#(X1, active X2) -> U51#(X1, X2), U51#(X1, active X2) -> U51#(X1, X2))
    (U51#(X1, active X2) -> U51#(X1, X2), U51#(mark X1, X2) -> U51#(X1, X2))
    (U51#(X1, active X2) -> U51#(X1, X2), U51#(active X1, X2) -> U51#(X1, X2))
    (U45#(active X1, X2) -> U45#(X1, X2), U45#(X1, mark X2) -> U45#(X1, X2))
    (U45#(active X1, X2) -> U45#(X1, X2), U45#(X1, active X2) -> U45#(X1, X2))
    (U45#(active X1, X2) -> U45#(X1, X2), U45#(mark X1, X2) -> U45#(X1, X2))
    (U45#(active X1, X2) -> U45#(X1, X2), U45#(active X1, X2) -> U45#(X1, X2))
    (U45#(X1, active X2) -> U45#(X1, X2), U45#(X1, mark X2) -> U45#(X1, X2))
    (U45#(X1, active X2) -> U45#(X1, X2), U45#(X1, active X2) -> U45#(X1, X2))
    (U45#(X1, active X2) -> U45#(X1, X2), U45#(mark X1, X2) -> U45#(X1, X2))
    (U45#(X1, active X2) -> U45#(X1, X2), U45#(active X1, X2) -> U45#(X1, X2))
    (U31#(active X1, X2) -> U31#(X1, X2), U31#(X1, mark X2) -> U31#(X1, X2))
    (U31#(active X1, X2) -> U31#(X1, X2), U31#(X1, active X2) -> U31#(X1, X2))
    (U31#(active X1, X2) -> U31#(X1, X2), U31#(mark X1, X2) -> U31#(X1, X2))
    (U31#(active X1, X2) -> U31#(X1, X2), U31#(active X1, X2) -> U31#(X1, X2))
    (U31#(X1, active X2) -> U31#(X1, X2), U31#(X1, mark X2) -> U31#(X1, X2))
    (U31#(X1, active X2) -> U31#(X1, X2), U31#(X1, active X2) -> U31#(X1, X2))
    (U31#(X1, active X2) -> U31#(X1, X2), U31#(mark X1, X2) -> U31#(X1, X2))
    (U31#(X1, active X2) -> U31#(X1, X2), U31#(active X1, X2) -> U31#(X1, X2))
    (U32#(active X1, X2) -> U32#(X1, X2), U32#(X1, mark X2) -> U32#(X1, X2))
    (U32#(active X1, X2) -> U32#(X1, X2), U32#(X1, active X2) -> U32#(X1, X2))
    (U32#(active X1, X2) -> U32#(X1, X2), U32#(mark X1, X2) -> U32#(X1, X2))
    (U32#(active X1, X2) -> U32#(X1, X2), U32#(active X1, X2) -> U32#(X1, X2))
    (U32#(X1, active X2) -> U32#(X1, X2), U32#(X1, mark X2) -> U32#(X1, X2))
    (U32#(X1, active X2) -> U32#(X1, X2), U32#(X1, active X2) -> U32#(X1, X2))
    (U32#(X1, active X2) -> U32#(X1, X2), U32#(mark X1, X2) -> U32#(X1, X2))
    (U32#(X1, active X2) -> U32#(X1, X2), U32#(active X1, X2) -> U32#(X1, X2))
    (U21#(active X1, X2) -> U21#(X1, X2), U21#(X1, mark X2) -> U21#(X1, X2))
    (U21#(active X1, X2) -> U21#(X1, X2), U21#(X1, active X2) -> U21#(X1, X2))
    (U21#(active X1, X2) -> U21#(X1, X2), U21#(mark X1, X2) -> U21#(X1, X2))
    (U21#(active X1, X2) -> U21#(X1, X2), U21#(active X1, X2) -> U21#(X1, X2))
    (U21#(X1, active X2) -> U21#(X1, X2), U21#(X1, mark X2) -> U21#(X1, X2))
    (U21#(X1, active X2) -> U21#(X1, X2), U21#(X1, active X2) -> U21#(X1, X2))
    (U21#(X1, active X2) -> U21#(X1, X2), U21#(mark X1, X2) -> U21#(X1, X2))
    (U21#(X1, active X2) -> U21#(X1, X2), U21#(active X1, X2) -> U21#(X1, X2))
    (U22#(active X1, X2) -> U22#(X1, X2), U22#(X1, mark X2) -> U22#(X1, X2))
    (U22#(active X1, X2) -> U22#(X1, X2), U22#(X1, active X2) -> U22#(X1, X2))
    (U22#(active X1, X2) -> U22#(X1, X2), U22#(mark X1, X2) -> U22#(X1, X2))
    (U22#(active X1, X2) -> U22#(X1, X2), U22#(active X1, X2) -> U22#(X1, X2))
    (U22#(X1, active X2) -> U22#(X1, X2), U22#(X1, mark X2) -> U22#(X1, X2))
    (U22#(X1, active X2) -> U22#(X1, X2), U22#(X1, active X2) -> U22#(X1, X2))
    (U22#(X1, active X2) -> U22#(X1, X2), U22#(mark X1, X2) -> U22#(X1, X2))
    (U22#(X1, active X2) -> U22#(X1, X2), U22#(active X1, X2) -> U22#(X1, X2))
    (take#(active X1, X2) -> take#(X1, X2), take#(X1, mark X2) -> take#(X1, X2))
    (take#(active X1, X2) -> take#(X1, X2), take#(X1, active X2) -> take#(X1, X2))
    (take#(active X1, X2) -> take#(X1, X2), take#(mark X1, X2) -> take#(X1, X2))
    (take#(active X1, X2) -> take#(X1, X2), take#(active X1, X2) -> take#(X1, X2))
    (take#(X1, active X2) -> take#(X1, X2), take#(X1, mark X2) -> take#(X1, X2))
    (take#(X1, active X2) -> take#(X1, X2), take#(X1, active X2) -> take#(X1, X2))
    (take#(X1, active X2) -> take#(X1, X2), take#(mark X1, X2) -> take#(X1, X2))
    (take#(X1, active X2) -> take#(X1, X2), take#(active X1, X2) -> take#(X1, X2))
    (U121#(active X1, X2) -> U121#(X1, X2), U121#(X1, mark X2) -> U121#(X1, X2))
    (U121#(active X1, X2) -> U121#(X1, X2), U121#(X1, active X2) -> U121#(X1, X2))
    (U121#(active X1, X2) -> U121#(X1, X2), U121#(mark X1, X2) -> U121#(X1, X2))
    (U121#(active X1, X2) -> U121#(X1, X2), U121#(active X1, X2) -> U121#(X1, X2))
    (U121#(X1, active X2) -> U121#(X1, X2), U121#(X1, mark X2) -> U121#(X1, X2))
    (U121#(X1, active X2) -> U121#(X1, X2), U121#(X1, active X2) -> U121#(X1, X2))
    (U121#(X1, active X2) -> U121#(X1, X2), U121#(mark X1, X2) -> U121#(X1, X2))
    (U121#(X1, active X2) -> U121#(X1, X2), U121#(active X1, X2) -> U121#(X1, X2))
    (U114#(active X1, X2) -> U114#(X1, X2), U114#(X1, mark X2) -> U114#(X1, X2))
    (U114#(active X1, X2) -> U114#(X1, X2), U114#(X1, active X2) -> U114#(X1, X2))
    (U114#(active X1, X2) -> U114#(X1, X2), U114#(mark X1, X2) -> U114#(X1, X2))
    (U114#(active X1, X2) -> U114#(X1, X2), U114#(active X1, X2) -> U114#(X1, X2))
    (U114#(X1, active X2) -> U114#(X1, X2), U114#(X1, mark X2) -> U114#(X1, X2))
    (U114#(X1, active X2) -> U114#(X1, X2), U114#(X1, active X2) -> U114#(X1, X2))
    (U114#(X1, active X2) -> U114#(X1, X2), U114#(mark X1, X2) -> U114#(X1, X2))
    (U114#(X1, active X2) -> U114#(X1, X2), U114#(active X1, X2) -> U114#(X1, X2))
    (U11#(active X1, X2) -> U11#(X1, X2), U11#(X1, mark X2) -> U11#(X1, X2))
    (U11#(active X1, X2) -> U11#(X1, X2), U11#(X1, active X2) -> U11#(X1, X2))
    (U11#(active X1, X2) -> U11#(X1, X2), U11#(mark X1, X2) -> U11#(X1, X2))
    (U11#(active X1, X2) -> U11#(X1, X2), U11#(active X1, X2) -> U11#(X1, X2))
    (U11#(X1, active X2) -> U11#(X1, X2), U11#(X1, mark X2) -> U11#(X1, X2))
    (U11#(X1, active X2) -> U11#(X1, X2), U11#(X1, active X2) -> U11#(X1, X2))
    (U11#(X1, active X2) -> U11#(X1, X2), U11#(mark X1, X2) -> U11#(X1, X2))
    (U11#(X1, active X2) -> U11#(X1, X2), U11#(active X1, X2) -> U11#(X1, X2))
    (U12#(active X1, X2) -> U12#(X1, X2), U12#(X1, mark X2) -> U12#(X1, X2))
    (U12#(active X1, X2) -> U12#(X1, X2), U12#(X1, active X2) -> U12#(X1, X2))
    (U12#(active X1, X2) -> U12#(X1, X2), U12#(mark X1, X2) -> U12#(X1, X2))
    (U12#(active X1, X2) -> U12#(X1, X2), U12#(active X1, X2) -> U12#(X1, X2))
    (U12#(X1, active X2) -> U12#(X1, X2), U12#(X1, mark X2) -> U12#(X1, X2))
    (U12#(X1, active X2) -> U12#(X1, X2), U12#(X1, active X2) -> U12#(X1, X2))
    (U12#(X1, active X2) -> U12#(X1, X2), U12#(mark X1, X2) -> U12#(X1, X2))
    (U12#(X1, active X2) -> U12#(X1, X2), U12#(active X1, X2) -> U12#(X1, X2))
    (U105#(active X1, X2) -> U105#(X1, X2), U105#(X1, mark X2) -> U105#(X1, X2))
    (U105#(active X1, X2) -> U105#(X1, X2), U105#(X1, active X2) -> U105#(X1, X2))
    (U105#(active X1, X2) -> U105#(X1, X2), U105#(mark X1, X2) -> U105#(X1, X2))
    (U105#(active X1, X2) -> U105#(X1, X2), U105#(active X1, X2) -> U105#(X1, X2))
    (U105#(X1, active X2) -> U105#(X1, X2), U105#(X1, mark X2) -> U105#(X1, X2))
    (U105#(X1, active X2) -> U105#(X1, X2), U105#(X1, active X2) -> U105#(X1, X2))
    (U105#(X1, active X2) -> U105#(X1, X2), U105#(mark X1, X2) -> U105#(X1, X2))
    (U105#(X1, active X2) -> U105#(X1, X2), U105#(active X1, X2) -> U105#(X1, X2))
    (cons#(active X1, X2) -> cons#(X1, X2), cons#(X1, mark X2) -> cons#(X1, X2))
    (cons#(active X1, X2) -> cons#(X1, X2), cons#(X1, active X2) -> cons#(X1, X2))
    (cons#(active X1, X2) -> cons#(X1, X2), cons#(mark X1, X2) -> cons#(X1, X2))
    (cons#(active X1, X2) -> cons#(X1, X2), cons#(active X1, X2) -> cons#(X1, X2))
    (cons#(X1, active X2) -> cons#(X1, X2), cons#(X1, mark X2) -> cons#(X1, X2))
    (cons#(X1, active X2) -> cons#(X1, X2), cons#(X1, active X2) -> cons#(X1, X2))
    (cons#(X1, active X2) -> cons#(X1, X2), cons#(mark X1, X2) -> cons#(X1, X2))
    (cons#(X1, active X2) -> cons#(X1, X2), cons#(active X1, X2) -> cons#(X1, X2))
    (mark# U95(X1, X2) -> U95#(mark X1, X2), U95#(X1, mark X2) -> U95#(X1, X2))
    (mark# U95(X1, X2) -> U95#(mark X1, X2), U95#(X1, active X2) -> U95#(X1, X2))
    (mark# U95(X1, X2) -> U95#(mark X1, X2), U95#(mark X1, X2) -> U95#(X1, X2))
    (mark# U95(X1, X2) -> U95#(mark X1, X2), U95#(active X1, X2) -> U95#(X1, X2))
    (mark# U51(X1, X2) -> U51#(mark X1, X2), U51#(X1, mark X2) -> U51#(X1, X2))
    (mark# U51(X1, X2) -> U51#(mark X1, X2), U51#(X1, active X2) -> U51#(X1, X2))
    (mark# U51(X1, X2) -> U51#(mark X1, X2), U51#(mark X1, X2) -> U51#(X1, X2))
    (mark# U51(X1, X2) -> U51#(mark X1, X2), U51#(active X1, X2) -> U51#(X1, X2))
    (mark# U31(X1, X2) -> U31#(mark X1, X2), U31#(X1, mark X2) -> U31#(X1, X2))
    (mark# U31(X1, X2) -> U31#(mark X1, X2), U31#(X1, active X2) -> U31#(X1, X2))
    (mark# U31(X1, X2) -> U31#(mark X1, X2), U31#(mark X1, X2) -> U31#(X1, X2))
    (mark# U31(X1, X2) -> U31#(mark X1, X2), U31#(active X1, X2) -> U31#(X1, X2))
    (mark# U21(X1, X2) -> U21#(mark X1, X2), U21#(X1, mark X2) -> U21#(X1, X2))
    (mark# U21(X1, X2) -> U21#(mark X1, X2), U21#(X1, active X2) -> U21#(X1, X2))
    (mark# U21(X1, X2) -> U21#(mark X1, X2), U21#(mark X1, X2) -> U21#(X1, X2))
    (mark# U21(X1, X2) -> U21#(mark X1, X2), U21#(active X1, X2) -> U21#(X1, X2))
    (mark# U121(X1, X2) -> U121#(mark X1, X2), U121#(X1, mark X2) -> U121#(X1, X2))
    (mark# U121(X1, X2) -> U121#(mark X1, X2), U121#(X1, active X2) -> U121#(X1, X2))
    (mark# U121(X1, X2) -> U121#(mark X1, X2), U121#(mark X1, X2) -> U121#(X1, X2))
    (mark# U121(X1, X2) -> U121#(mark X1, X2), U121#(active X1, X2) -> U121#(X1, X2))
    (mark# U11(X1, X2) -> U11#(mark X1, X2), U11#(X1, mark X2) -> U11#(X1, X2))
    (mark# U11(X1, X2) -> U11#(mark X1, X2), U11#(X1, active X2) -> U11#(X1, X2))
    (mark# U11(X1, X2) -> U11#(mark X1, X2), U11#(mark X1, X2) -> U11#(X1, X2))
    (mark# U11(X1, X2) -> U11#(mark X1, X2), U11#(active X1, X2) -> U11#(X1, X2))
    (mark# U105(X1, X2) -> U105#(mark X1, X2), U105#(X1, mark X2) -> U105#(X1, X2))
    (mark# U105(X1, X2) -> U105#(mark X1, X2), U105#(X1, active X2) -> U105#(X1, X2))
    (mark# U105(X1, X2) -> U105#(mark X1, X2), U105#(mark X1, X2) -> U105#(X1, X2))
    (mark# U105(X1, X2) -> U105#(mark X1, X2), U105#(active X1, X2) -> U105#(X1, X2))
    (mark# U96 X -> U96# mark X, U96# mark X -> U96# X)
    (mark# U96 X -> U96# mark X, U96# active X -> U96# X)
    (mark# U71 X -> U71# mark X, U71# mark X -> U71# X)
    (mark# U71 X -> U71# mark X, U71# active X -> U71# X)
    (mark# U52 X -> U52# mark X, U52# mark X -> U52# X)
    (mark# U52 X -> U52# mark X, U52# active X -> U52# X)
    (mark# U33 X -> U33# mark X, U33# mark X -> U33# X)
    (mark# U33 X -> U33# mark X, U33# active X -> U33# X)
    (mark# U122 X -> U122# mark X, U122# mark X -> U122# X)
    (mark# U122 X -> U122# mark X, U122# active X -> U122# X)
    (mark# U13 X -> U13# mark X, U13# mark X -> U13# X)
    (mark# U13 X -> U13# mark X, U13# active X -> U13# X)
    (mark# s X -> s# mark X, s# mark X -> s# X)
    (mark# s X -> s# mark X, s# active X -> s# X)
    (mark# U106 X -> U106# mark X, U106# mark X -> U106# X)
    (mark# U106 X -> U106# mark X, U106# active X -> U106# X)
    (mark# isNatIListKind X -> active# isNatIListKind X, active# isNatIListKind cons(V1, V2) -> mark# U51(isNatKind V1, V2))
    (mark# isNatIListKind X -> active# isNatIListKind X, active# isNatIListKind cons(V1, V2) -> isNatKind# V1)
    (mark# isNatIListKind X -> active# isNatIListKind X, active# isNatIListKind cons(V1, V2) -> U51#(isNatKind V1, V2))
    (mark# isNatIListKind X -> active# isNatIListKind X, active# isNatIListKind zeros() -> mark# tt())
    (mark# isNatIListKind X -> active# isNatIListKind X, active# isNatIListKind nil() -> mark# tt())
    (mark# isNatIListKind X -> active# isNatIListKind X, active# isNatIListKind take(V1, V2) -> mark# U61(isNatKind V1, V2))
    (mark# isNatIListKind X -> active# isNatIListKind X, active# isNatIListKind take(V1, V2) -> isNatKind# V1)
    (mark# isNatIListKind X -> active# isNatIListKind X, active# isNatIListKind take(V1, V2) -> U61#(isNatKind V1, V2))
    (active# U113(tt(), L, N) -> U114#(isNatKind N, L), U114#(X1, mark X2) -> U114#(X1, X2))
    (active# U113(tt(), L, N) -> U114#(isNatKind N, L), U114#(X1, active X2) -> U114#(X1, X2))
    (active# U135(tt(), IL, M, N) -> U136#(isNatKind N, IL, M, N), U136#(X1, X2, X3, mark X4) -> U136#(X1, X2, X3, X4))
    (active# U135(tt(), IL, M, N) -> U136#(isNatKind N, IL, M, N), U136#(X1, X2, X3, active X4) -> U136#(X1, X2, X3, X4))
    (active# U135(tt(), IL, M, N) -> U136#(isNatKind N, IL, M, N), U136#(X1, X2, mark X3, X4) -> U136#(X1, X2, X3, X4))
    (active# U135(tt(), IL, M, N) -> U136#(isNatKind N, IL, M, N), U136#(X1, X2, active X3, X4) -> U136#(X1, X2, X3, X4))
    (active# U135(tt(), IL, M, N) -> U136#(isNatKind N, IL, M, N), U136#(X1, mark X2, X3, X4) -> U136#(X1, X2, X3, X4))
    (active# U135(tt(), IL, M, N) -> U136#(isNatKind N, IL, M, N), U136#(X1, active X2, X3, X4) -> U136#(X1, X2, X3, X4))
    (active# U133(tt(), IL, M, N) -> U134#(isNatKind M, IL, M, N), U134#(X1, X2, X3, mark X4) -> U134#(X1, X2, X3, X4))
    (active# U133(tt(), IL, M, N) -> U134#(isNatKind M, IL, M, N), U134#(X1, X2, X3, active X4) -> U134#(X1, X2, X3, X4))
    (active# U133(tt(), IL, M, N) -> U134#(isNatKind M, IL, M, N), U134#(X1, X2, mark X3, X4) -> U134#(X1, X2, X3, X4))
    (active# U133(tt(), IL, M, N) -> U134#(isNatKind M, IL, M, N), U134#(X1, X2, active X3, X4) -> U134#(X1, X2, X3, X4))
    (active# U133(tt(), IL, M, N) -> U134#(isNatKind M, IL, M, N), U134#(X1, mark X2, X3, X4) -> U134#(X1, X2, X3, X4))
    (active# U133(tt(), IL, M, N) -> U134#(isNatKind M, IL, M, N), U134#(X1, active X2, X3, X4) -> U134#(X1, X2, X3, X4))
    (active# U132(tt(), IL, M, N) -> U133#(isNat M, IL, M, N), U133#(X1, X2, X3, mark X4) -> U133#(X1, X2, X3, X4))
    (active# U132(tt(), IL, M, N) -> U133#(isNat M, IL, M, N), U133#(X1, X2, X3, active X4) -> U133#(X1, X2, X3, X4))
    (active# U132(tt(), IL, M, N) -> U133#(isNat M, IL, M, N), U133#(X1, X2, mark X3, X4) -> U133#(X1, X2, X3, X4))
    (active# U132(tt(), IL, M, N) -> U133#(isNat M, IL, M, N), U133#(X1, X2, active X3, X4) -> U133#(X1, X2, X3, X4))
    (active# U132(tt(), IL, M, N) -> U133#(isNat M, IL, M, N), U133#(X1, mark X2, X3, X4) -> U133#(X1, X2, X3, X4))
    (active# U132(tt(), IL, M, N) -> U133#(isNat M, IL, M, N), U133#(X1, active X2, X3, X4) -> U133#(X1, X2, X3, X4))
    (U136#(mark X1, X2, X3, X4) -> U136#(X1, X2, X3, X4), U136#(X1, X2, X3, mark X4) -> U136#(X1, X2, X3, X4))
    (U136#(mark X1, X2, X3, X4) -> U136#(X1, X2, X3, X4), U136#(X1, X2, X3, active X4) -> U136#(X1, X2, X3, X4))
    (U136#(mark X1, X2, X3, X4) -> U136#(X1, X2, X3, X4), U136#(X1, X2, mark X3, X4) -> U136#(X1, X2, X3, X4))
    (U136#(mark X1, X2, X3, X4) -> U136#(X1, X2, X3, X4), U136#(X1, X2, active X3, X4) -> U136#(X1, X2, X3, X4))
    (U136#(mark X1, X2, X3, X4) -> U136#(X1, X2, X3, X4), U136#(X1, mark X2, X3, X4) -> U136#(X1, X2, X3, X4))
    (U136#(mark X1, X2, X3, X4) -> U136#(X1, X2, X3, X4), U136#(X1, active X2, X3, X4) -> U136#(X1, X2, X3, X4))
    (U136#(mark X1, X2, X3, X4) -> U136#(X1, X2, X3, X4), U136#(mark X1, X2, X3, X4) -> U136#(X1, X2, X3, X4))
    (U136#(mark X1, X2, X3, X4) -> U136#(X1, X2, X3, X4), U136#(active X1, X2, X3, X4) -> U136#(X1, X2, X3, X4))
    (U136#(X1, mark X2, X3, X4) -> U136#(X1, X2, X3, X4), U136#(X1, X2, X3, mark X4) -> U136#(X1, X2, X3, X4))
    (U136#(X1, mark X2, X3, X4) -> U136#(X1, X2, X3, X4), U136#(X1, X2, X3, active X4) -> U136#(X1, X2, X3, X4))
    (U136#(X1, mark X2, X3, X4) -> U136#(X1, X2, X3, X4), U136#(X1, X2, mark X3, X4) -> U136#(X1, X2, X3, X4))
    (U136#(X1, mark X2, X3, X4) -> U136#(X1, X2, X3, X4), U136#(X1, X2, active X3, X4) -> U136#(X1, X2, X3, X4))
    (U136#(X1, mark X2, X3, X4) -> U136#(X1, X2, X3, X4), U136#(X1, mark X2, X3, X4) -> U136#(X1, X2, X3, X4))
    (U136#(X1, mark X2, X3, X4) -> U136#(X1, X2, X3, X4), U136#(X1, active X2, X3, X4) -> U136#(X1, X2, X3, X4))
    (U136#(X1, mark X2, X3, X4) -> U136#(X1, X2, X3, X4), U136#(mark X1, X2, X3, X4) -> U136#(X1, X2, X3, X4))
    (U136#(X1, mark X2, X3, X4) -> U136#(X1, X2, X3, X4), U136#(active X1, X2, X3, X4) -> U136#(X1, X2, X3, X4))
    (U136#(X1, X2, mark X3, X4) -> U136#(X1, X2, X3, X4), U136#(X1, X2, X3, mark X4) -> U136#(X1, X2, X3, X4))
    (U136#(X1, X2, mark X3, X4) -> U136#(X1, X2, X3, X4), U136#(X1, X2, X3, active X4) -> U136#(X1, X2, X3, X4))
    (U136#(X1, X2, mark X3, X4) -> U136#(X1, X2, X3, X4), U136#(X1, X2, mark X3, X4) -> U136#(X1, X2, X3, X4))
    (U136#(X1, X2, mark X3, X4) -> U136#(X1, X2, X3, X4), U136#(X1, X2, active X3, X4) -> U136#(X1, X2, X3, X4))
    (U136#(X1, X2, mark X3, X4) -> U136#(X1, X2, X3, X4), U136#(X1, mark X2, X3, X4) -> U136#(X1, X2, X3, X4))
    (U136#(X1, X2, mark X3, X4) -> U136#(X1, X2, X3, X4), U136#(X1, active X2, X3, X4) -> U136#(X1, X2, X3, X4))
    (U136#(X1, X2, mark X3, X4) -> U136#(X1, X2, X3, X4), U136#(mark X1, X2, X3, X4) -> U136#(X1, X2, X3, X4))
    (U136#(X1, X2, mark X3, X4) -> U136#(X1, X2, X3, X4), U136#(active X1, X2, X3, X4) -> U136#(X1, X2, X3, X4))
    (U136#(X1, X2, X3, mark X4) -> U136#(X1, X2, X3, X4), U136#(X1, X2, X3, mark X4) -> U136#(X1, X2, X3, X4))
    (U136#(X1, X2, X3, mark X4) -> U136#(X1, X2, X3, X4), U136#(X1, X2, X3, active X4) -> U136#(X1, X2, X3, X4))
    (U136#(X1, X2, X3, mark X4) -> U136#(X1, X2, X3, X4), U136#(X1, X2, mark X3, X4) -> U136#(X1, X2, X3, X4))
    (U136#(X1, X2, X3, mark X4) -> U136#(X1, X2, X3, X4), U136#(X1, X2, active X3, X4) -> U136#(X1, X2, X3, X4))
    (U136#(X1, X2, X3, mark X4) -> U136#(X1, X2, X3, X4), U136#(X1, mark X2, X3, X4) -> U136#(X1, X2, X3, X4))
    (U136#(X1, X2, X3, mark X4) -> U136#(X1, X2, X3, X4), U136#(X1, active X2, X3, X4) -> U136#(X1, X2, X3, X4))
    (U136#(X1, X2, X3, mark X4) -> U136#(X1, X2, X3, X4), U136#(mark X1, X2, X3, X4) -> U136#(X1, X2, X3, X4))
    (U136#(X1, X2, X3, mark X4) -> U136#(X1, X2, X3, X4), U136#(active X1, X2, X3, X4) -> U136#(X1, X2, X3, X4))
    (U135#(mark X1, X2, X3, X4) -> U135#(X1, X2, X3, X4), U135#(X1, X2, X3, mark X4) -> U135#(X1, X2, X3, X4))
    (U135#(mark X1, X2, X3, X4) -> U135#(X1, X2, X3, X4), U135#(X1, X2, X3, active X4) -> U135#(X1, X2, X3, X4))
    (U135#(mark X1, X2, X3, X4) -> U135#(X1, X2, X3, X4), U135#(X1, X2, mark X3, X4) -> U135#(X1, X2, X3, X4))
    (U135#(mark X1, X2, X3, X4) -> U135#(X1, X2, X3, X4), U135#(X1, X2, active X3, X4) -> U135#(X1, X2, X3, X4))
    (U135#(mark X1, X2, X3, X4) -> U135#(X1, X2, X3, X4), U135#(X1, mark X2, X3, X4) -> U135#(X1, X2, X3, X4))
    (U135#(mark X1, X2, X3, X4) -> U135#(X1, X2, X3, X4), U135#(X1, active X2, X3, X4) -> U135#(X1, X2, X3, X4))
    (U135#(mark X1, X2, X3, X4) -> U135#(X1, X2, X3, X4), U135#(mark X1, X2, X3, X4) -> U135#(X1, X2, X3, X4))
    (U135#(mark X1, X2, X3, X4) -> U135#(X1, X2, X3, X4), U135#(active X1, X2, X3, X4) -> U135#(X1, X2, X3, X4))
    (U135#(X1, mark X2, X3, X4) -> U135#(X1, X2, X3, X4), U135#(X1, X2, X3, mark X4) -> U135#(X1, X2, X3, X4))
    (U135#(X1, mark X2, X3, X4) -> U135#(X1, X2, X3, X4), U135#(X1, X2, X3, active X4) -> U135#(X1, X2, X3, X4))
    (U135#(X1, mark X2, X3, X4) -> U135#(X1, X2, X3, X4), U135#(X1, X2, mark X3, X4) -> U135#(X1, X2, X3, X4))
    (U135#(X1, mark X2, X3, X4) -> U135#(X1, X2, X3, X4), U135#(X1, X2, active X3, X4) -> U135#(X1, X2, X3, X4))
    (U135#(X1, mark X2, X3, X4) -> U135#(X1, X2, X3, X4), U135#(X1, mark X2, X3, X4) -> U135#(X1, X2, X3, X4))
    (U135#(X1, mark X2, X3, X4) -> U135#(X1, X2, X3, X4), U135#(X1, active X2, X3, X4) -> U135#(X1, X2, X3, X4))
    (U135#(X1, mark X2, X3, X4) -> U135#(X1, X2, X3, X4), U135#(mark X1, X2, X3, X4) -> U135#(X1, X2, X3, X4))
    (U135#(X1, mark X2, X3, X4) -> U135#(X1, X2, X3, X4), U135#(active X1, X2, X3, X4) -> U135#(X1, X2, X3, X4))
    (U135#(X1, X2, mark X3, X4) -> U135#(X1, X2, X3, X4), U135#(X1, X2, X3, mark X4) -> U135#(X1, X2, X3, X4))
    (U135#(X1, X2, mark X3, X4) -> U135#(X1, X2, X3, X4), U135#(X1, X2, X3, active X4) -> U135#(X1, X2, X3, X4))
    (U135#(X1, X2, mark X3, X4) -> U135#(X1, X2, X3, X4), U135#(X1, X2, mark X3, X4) -> U135#(X1, X2, X3, X4))
    (U135#(X1, X2, mark X3, X4) -> U135#(X1, X2, X3, X4), U135#(X1, X2, active X3, X4) -> U135#(X1, X2, X3, X4))
    (U135#(X1, X2, mark X3, X4) -> U135#(X1, X2, X3, X4), U135#(X1, mark X2, X3, X4) -> U135#(X1, X2, X3, X4))
    (U135#(X1, X2, mark X3, X4) -> U135#(X1, X2, X3, X4), U135#(X1, active X2, X3, X4) -> U135#(X1, X2, X3, X4))
    (U135#(X1, X2, mark X3, X4) -> U135#(X1, X2, X3, X4), U135#(mark X1, X2, X3, X4) -> U135#(X1, X2, X3, X4))
    (U135#(X1, X2, mark X3, X4) -> U135#(X1, X2, X3, X4), U135#(active X1, X2, X3, X4) -> U135#(X1, X2, X3, X4))
    (U135#(X1, X2, X3, mark X4) -> U135#(X1, X2, X3, X4), U135#(X1, X2, X3, mark X4) -> U135#(X1, X2, X3, X4))
    (U135#(X1, X2, X3, mark X4) -> U135#(X1, X2, X3, X4), U135#(X1, X2, X3, active X4) -> U135#(X1, X2, X3, X4))
    (U135#(X1, X2, X3, mark X4) -> U135#(X1, X2, X3, X4), U135#(X1, X2, mark X3, X4) -> U135#(X1, X2, X3, X4))
    (U135#(X1, X2, X3, mark X4) -> U135#(X1, X2, X3, X4), U135#(X1, X2, active X3, X4) -> U135#(X1, X2, X3, X4))
    (U135#(X1, X2, X3, mark X4) -> U135#(X1, X2, X3, X4), U135#(X1, mark X2, X3, X4) -> U135#(X1, X2, X3, X4))
    (U135#(X1, X2, X3, mark X4) -> U135#(X1, X2, X3, X4), U135#(X1, active X2, X3, X4) -> U135#(X1, X2, X3, X4))
    (U135#(X1, X2, X3, mark X4) -> U135#(X1, X2, X3, X4), U135#(mark X1, X2, X3, X4) -> U135#(X1, X2, X3, X4))
    (U135#(X1, X2, X3, mark X4) -> U135#(X1, X2, X3, X4), U135#(active X1, X2, X3, X4) -> U135#(X1, X2, X3, X4))
    (U134#(mark X1, X2, X3, X4) -> U134#(X1, X2, X3, X4), U134#(X1, X2, X3, mark X4) -> U134#(X1, X2, X3, X4))
    (U134#(mark X1, X2, X3, X4) -> U134#(X1, X2, X3, X4), U134#(X1, X2, X3, active X4) -> U134#(X1, X2, X3, X4))
    (U134#(mark X1, X2, X3, X4) -> U134#(X1, X2, X3, X4), U134#(X1, X2, mark X3, X4) -> U134#(X1, X2, X3, X4))
    (U134#(mark X1, X2, X3, X4) -> U134#(X1, X2, X3, X4), U134#(X1, X2, active X3, X4) -> U134#(X1, X2, X3, X4))
    (U134#(mark X1, X2, X3, X4) -> U134#(X1, X2, X3, X4), U134#(X1, mark X2, X3, X4) -> U134#(X1, X2, X3, X4))
    (U134#(mark X1, X2, X3, X4) -> U134#(X1, X2, X3, X4), U134#(X1, active X2, X3, X4) -> U134#(X1, X2, X3, X4))
    (U134#(mark X1, X2, X3, X4) -> U134#(X1, X2, X3, X4), U134#(mark X1, X2, X3, X4) -> U134#(X1, X2, X3, X4))
    (U134#(mark X1, X2, X3, X4) -> U134#(X1, X2, X3, X4), U134#(active X1, X2, X3, X4) -> U134#(X1, X2, X3, X4))
    (U134#(X1, mark X2, X3, X4) -> U134#(X1, X2, X3, X4), U134#(X1, X2, X3, mark X4) -> U134#(X1, X2, X3, X4))
    (U134#(X1, mark X2, X3, X4) -> U134#(X1, X2, X3, X4), U134#(X1, X2, X3, active X4) -> U134#(X1, X2, X3, X4))
    (U134#(X1, mark X2, X3, X4) -> U134#(X1, X2, X3, X4), U134#(X1, X2, mark X3, X4) -> U134#(X1, X2, X3, X4))
    (U134#(X1, mark X2, X3, X4) -> U134#(X1, X2, X3, X4), U134#(X1, X2, active X3, X4) -> U134#(X1, X2, X3, X4))
    (U134#(X1, mark X2, X3, X4) -> U134#(X1, X2, X3, X4), U134#(X1, mark X2, X3, X4) -> U134#(X1, X2, X3, X4))
    (U134#(X1, mark X2, X3, X4) -> U134#(X1, X2, X3, X4), U134#(X1, active X2, X3, X4) -> U134#(X1, X2, X3, X4))
    (U134#(X1, mark X2, X3, X4) -> U134#(X1, X2, X3, X4), U134#(mark X1, X2, X3, X4) -> U134#(X1, X2, X3, X4))
    (U134#(X1, mark X2, X3, X4) -> U134#(X1, X2, X3, X4), U134#(active X1, X2, X3, X4) -> U134#(X1, X2, X3, X4))
    (U134#(X1, X2, mark X3, X4) -> U134#(X1, X2, X3, X4), U134#(X1, X2, X3, mark X4) -> U134#(X1, X2, X3, X4))
    (U134#(X1, X2, mark X3, X4) -> U134#(X1, X2, X3, X4), U134#(X1, X2, X3, active X4) -> U134#(X1, X2, X3, X4))
    (U134#(X1, X2, mark X3, X4) -> U134#(X1, X2, X3, X4), U134#(X1, X2, mark X3, X4) -> U134#(X1, X2, X3, X4))
    (U134#(X1, X2, mark X3, X4) -> U134#(X1, X2, X3, X4), U134#(X1, X2, active X3, X4) -> U134#(X1, X2, X3, X4))
    (U134#(X1, X2, mark X3, X4) -> U134#(X1, X2, X3, X4), U134#(X1, mark X2, X3, X4) -> U134#(X1, X2, X3, X4))
    (U134#(X1, X2, mark X3, X4) -> U134#(X1, X2, X3, X4), U134#(X1, active X2, X3, X4) -> U134#(X1, X2, X3, X4))
    (U134#(X1, X2, mark X3, X4) -> U134#(X1, X2, X3, X4), U134#(mark X1, X2, X3, X4) -> U134#(X1, X2, X3, X4))
    (U134#(X1, X2, mark X3, X4) -> U134#(X1, X2, X3, X4), U134#(active X1, X2, X3, X4) -> U134#(X1, X2, X3, X4))
    (U134#(X1, X2, X3, mark X4) -> U134#(X1, X2, X3, X4), U134#(X1, X2, X3, mark X4) -> U134#(X1, X2, X3, X4))
    (U134#(X1, X2, X3, mark X4) -> U134#(X1, X2, X3, X4), U134#(X1, X2, X3, active X4) -> U134#(X1, X2, X3, X4))
    (U134#(X1, X2, X3, mark X4) -> U134#(X1, X2, X3, X4), U134#(X1, X2, mark X3, X4) -> U134#(X1, X2, X3, X4))
    (U134#(X1, X2, X3, mark X4) -> U134#(X1, X2, X3, X4), U134#(X1, X2, active X3, X4) -> U134#(X1, X2, X3, X4))
    (U134#(X1, X2, X3, mark X4) -> U134#(X1, X2, X3, X4), U134#(X1, mark X2, X3, X4) -> U134#(X1, X2, X3, X4))
    (U134#(X1, X2, X3, mark X4) -> U134#(X1, X2, X3, X4), U134#(X1, active X2, X3, X4) -> U134#(X1, X2, X3, X4))
    (U134#(X1, X2, X3, mark X4) -> U134#(X1, X2, X3, X4), U134#(mark X1, X2, X3, X4) -> U134#(X1, X2, X3, X4))
    (U134#(X1, X2, X3, mark X4) -> U134#(X1, X2, X3, X4), U134#(active X1, X2, X3, X4) -> U134#(X1, X2, X3, X4))
    (U133#(mark X1, X2, X3, X4) -> U133#(X1, X2, X3, X4), U133#(X1, X2, X3, mark X4) -> U133#(X1, X2, X3, X4))
    (U133#(mark X1, X2, X3, X4) -> U133#(X1, X2, X3, X4), U133#(X1, X2, X3, active X4) -> U133#(X1, X2, X3, X4))
    (U133#(mark X1, X2, X3, X4) -> U133#(X1, X2, X3, X4), U133#(X1, X2, mark X3, X4) -> U133#(X1, X2, X3, X4))
    (U133#(mark X1, X2, X3, X4) -> U133#(X1, X2, X3, X4), U133#(X1, X2, active X3, X4) -> U133#(X1, X2, X3, X4))
    (U133#(mark X1, X2, X3, X4) -> U133#(X1, X2, X3, X4), U133#(X1, mark X2, X3, X4) -> U133#(X1, X2, X3, X4))
    (U133#(mark X1, X2, X3, X4) -> U133#(X1, X2, X3, X4), U133#(X1, active X2, X3, X4) -> U133#(X1, X2, X3, X4))
    (U133#(mark X1, X2, X3, X4) -> U133#(X1, X2, X3, X4), U133#(mark X1, X2, X3, X4) -> U133#(X1, X2, X3, X4))
    (U133#(mark X1, X2, X3, X4) -> U133#(X1, X2, X3, X4), U133#(active X1, X2, X3, X4) -> U133#(X1, X2, X3, X4))
    (U133#(X1, mark X2, X3, X4) -> U133#(X1, X2, X3, X4), U133#(X1, X2, X3, mark X4) -> U133#(X1, X2, X3, X4))
    (U133#(X1, mark X2, X3, X4) -> U133#(X1, X2, X3, X4), U133#(X1, X2, X3, active X4) -> U133#(X1, X2, X3, X4))
    (U133#(X1, mark X2, X3, X4) -> U133#(X1, X2, X3, X4), U133#(X1, X2, mark X3, X4) -> U133#(X1, X2, X3, X4))
    (U133#(X1, mark X2, X3, X4) -> U133#(X1, X2, X3, X4), U133#(X1, X2, active X3, X4) -> U133#(X1, X2, X3, X4))
    (U133#(X1, mark X2, X3, X4) -> U133#(X1, X2, X3, X4), U133#(X1, mark X2, X3, X4) -> U133#(X1, X2, X3, X4))
    (U133#(X1, mark X2, X3, X4) -> U133#(X1, X2, X3, X4), U133#(X1, active X2, X3, X4) -> U133#(X1, X2, X3, X4))
    (U133#(X1, mark X2, X3, X4) -> U133#(X1, X2, X3, X4), U133#(mark X1, X2, X3, X4) -> U133#(X1, X2, X3, X4))
    (U133#(X1, mark X2, X3, X4) -> U133#(X1, X2, X3, X4), U133#(active X1, X2, X3, X4) -> U133#(X1, X2, X3, X4))
    (U133#(X1, X2, mark X3, X4) -> U133#(X1, X2, X3, X4), U133#(X1, X2, X3, mark X4) -> U133#(X1, X2, X3, X4))
    (U133#(X1, X2, mark X3, X4) -> U133#(X1, X2, X3, X4), U133#(X1, X2, X3, active X4) -> U133#(X1, X2, X3, X4))
    (U133#(X1, X2, mark X3, X4) -> U133#(X1, X2, X3, X4), U133#(X1, X2, mark X3, X4) -> U133#(X1, X2, X3, X4))
    (U133#(X1, X2, mark X3, X4) -> U133#(X1, X2, X3, X4), U133#(X1, X2, active X3, X4) -> U133#(X1, X2, X3, X4))
    (U133#(X1, X2, mark X3, X4) -> U133#(X1, X2, X3, X4), U133#(X1, mark X2, X3, X4) -> U133#(X1, X2, X3, X4))
    (U133#(X1, X2, mark X3, X4) -> U133#(X1, X2, X3, X4), U133#(X1, active X2, X3, X4) -> U133#(X1, X2, X3, X4))
    (U133#(X1, X2, mark X3, X4) -> U133#(X1, X2, X3, X4), U133#(mark X1, X2, X3, X4) -> U133#(X1, X2, X3, X4))
    (U133#(X1, X2, mark X3, X4) -> U133#(X1, X2, X3, X4), U133#(active X1, X2, X3, X4) -> U133#(X1, X2, X3, X4))
    (U133#(X1, X2, X3, mark X4) -> U133#(X1, X2, X3, X4), U133#(X1, X2, X3, mark X4) -> U133#(X1, X2, X3, X4))
    (U133#(X1, X2, X3, mark X4) -> U133#(X1, X2, X3, X4), U133#(X1, X2, X3, active X4) -> U133#(X1, X2, X3, X4))
    (U133#(X1, X2, X3, mark X4) -> U133#(X1, X2, X3, X4), U133#(X1, X2, mark X3, X4) -> U133#(X1, X2, X3, X4))
    (U133#(X1, X2, X3, mark X4) -> U133#(X1, X2, X3, X4), U133#(X1, X2, active X3, X4) -> U133#(X1, X2, X3, X4))
    (U133#(X1, X2, X3, mark X4) -> U133#(X1, X2, X3, X4), U133#(X1, mark X2, X3, X4) -> U133#(X1, X2, X3, X4))
    (U133#(X1, X2, X3, mark X4) -> U133#(X1, X2, X3, X4), U133#(X1, active X2, X3, X4) -> U133#(X1, X2, X3, X4))
    (U133#(X1, X2, X3, mark X4) -> U133#(X1, X2, X3, X4), U133#(mark X1, X2, X3, X4) -> U133#(X1, X2, X3, X4))
    (U133#(X1, X2, X3, mark X4) -> U133#(X1, X2, X3, X4), U133#(active X1, X2, X3, X4) -> U133#(X1, X2, X3, X4))
    (U131#(mark X1, X2, X3, X4) -> U131#(X1, X2, X3, X4), U131#(X1, X2, X3, mark X4) -> U131#(X1, X2, X3, X4))
    (U131#(mark X1, X2, X3, X4) -> U131#(X1, X2, X3, X4), U131#(X1, X2, X3, active X4) -> U131#(X1, X2, X3, X4))
    (U131#(mark X1, X2, X3, X4) -> U131#(X1, X2, X3, X4), U131#(X1, X2, mark X3, X4) -> U131#(X1, X2, X3, X4))
    (U131#(mark X1, X2, X3, X4) -> U131#(X1, X2, X3, X4), U131#(X1, X2, active X3, X4) -> U131#(X1, X2, X3, X4))
    (U131#(mark X1, X2, X3, X4) -> U131#(X1, X2, X3, X4), U131#(X1, mark X2, X3, X4) -> U131#(X1, X2, X3, X4))
    (U131#(mark X1, X2, X3, X4) -> U131#(X1, X2, X3, X4), U131#(X1, active X2, X3, X4) -> U131#(X1, X2, X3, X4))
    (U131#(mark X1, X2, X3, X4) -> U131#(X1, X2, X3, X4), U131#(mark X1, X2, X3, X4) -> U131#(X1, X2, X3, X4))
    (U131#(mark X1, X2, X3, X4) -> U131#(X1, X2, X3, X4), U131#(active X1, X2, X3, X4) -> U131#(X1, X2, X3, X4))
    (U131#(X1, mark X2, X3, X4) -> U131#(X1, X2, X3, X4), U131#(X1, X2, X3, mark X4) -> U131#(X1, X2, X3, X4))
    (U131#(X1, mark X2, X3, X4) -> U131#(X1, X2, X3, X4), U131#(X1, X2, X3, active X4) -> U131#(X1, X2, X3, X4))
    (U131#(X1, mark X2, X3, X4) -> U131#(X1, X2, X3, X4), U131#(X1, X2, mark X3, X4) -> U131#(X1, X2, X3, X4))
    (U131#(X1, mark X2, X3, X4) -> U131#(X1, X2, X3, X4), U131#(X1, X2, active X3, X4) -> U131#(X1, X2, X3, X4))
    (U131#(X1, mark X2, X3, X4) -> U131#(X1, X2, X3, X4), U131#(X1, mark X2, X3, X4) -> U131#(X1, X2, X3, X4))
    (U131#(X1, mark X2, X3, X4) -> U131#(X1, X2, X3, X4), U131#(X1, active X2, X3, X4) -> U131#(X1, X2, X3, X4))
    (U131#(X1, mark X2, X3, X4) -> U131#(X1, X2, X3, X4), U131#(mark X1, X2, X3, X4) -> U131#(X1, X2, X3, X4))
    (U131#(X1, mark X2, X3, X4) -> U131#(X1, X2, X3, X4), U131#(active X1, X2, X3, X4) -> U131#(X1, X2, X3, X4))
    (U131#(X1, X2, mark X3, X4) -> U131#(X1, X2, X3, X4), U131#(X1, X2, X3, mark X4) -> U131#(X1, X2, X3, X4))
    (U131#(X1, X2, mark X3, X4) -> U131#(X1, X2, X3, X4), U131#(X1, X2, X3, active X4) -> U131#(X1, X2, X3, X4))
    (U131#(X1, X2, mark X3, X4) -> U131#(X1, X2, X3, X4), U131#(X1, X2, mark X3, X4) -> U131#(X1, X2, X3, X4))
    (U131#(X1, X2, mark X3, X4) -> U131#(X1, X2, X3, X4), U131#(X1, X2, active X3, X4) -> U131#(X1, X2, X3, X4))
    (U131#(X1, X2, mark X3, X4) -> U131#(X1, X2, X3, X4), U131#(X1, mark X2, X3, X4) -> U131#(X1, X2, X3, X4))
    (U131#(X1, X2, mark X3, X4) -> U131#(X1, X2, X3, X4), U131#(X1, active X2, X3, X4) -> U131#(X1, X2, X3, X4))
    (U131#(X1, X2, mark X3, X4) -> U131#(X1, X2, X3, X4), U131#(mark X1, X2, X3, X4) -> U131#(X1, X2, X3, X4))
    (U131#(X1, X2, mark X3, X4) -> U131#(X1, X2, X3, X4), U131#(active X1, X2, X3, X4) -> U131#(X1, X2, X3, X4))
    (U131#(X1, X2, X3, mark X4) -> U131#(X1, X2, X3, X4), U131#(X1, X2, X3, mark X4) -> U131#(X1, X2, X3, X4))
    (U131#(X1, X2, X3, mark X4) -> U131#(X1, X2, X3, X4), U131#(X1, X2, X3, active X4) -> U131#(X1, X2, X3, X4))
    (U131#(X1, X2, X3, mark X4) -> U131#(X1, X2, X3, X4), U131#(X1, X2, mark X3, X4) -> U131#(X1, X2, X3, X4))
    (U131#(X1, X2, X3, mark X4) -> U131#(X1, X2, X3, X4), U131#(X1, X2, active X3, X4) -> U131#(X1, X2, X3, X4))
    (U131#(X1, X2, X3, mark X4) -> U131#(X1, X2, X3, X4), U131#(X1, mark X2, X3, X4) -> U131#(X1, X2, X3, X4))
    (U131#(X1, X2, X3, mark X4) -> U131#(X1, X2, X3, X4), U131#(X1, active X2, X3, X4) -> U131#(X1, X2, X3, X4))
    (U131#(X1, X2, X3, mark X4) -> U131#(X1, X2, X3, X4), U131#(mark X1, X2, X3, X4) -> U131#(X1, X2, X3, X4))
    (U131#(X1, X2, X3, mark X4) -> U131#(X1, X2, X3, X4), U131#(active X1, X2, X3, X4) -> U131#(X1, X2, X3, X4))
    (U132#(mark X1, X2, X3, X4) -> U132#(X1, X2, X3, X4), U132#(X1, X2, X3, mark X4) -> U132#(X1, X2, X3, X4))
    (U132#(mark X1, X2, X3, X4) -> U132#(X1, X2, X3, X4), U132#(X1, X2, X3, active X4) -> U132#(X1, X2, X3, X4))
    (U132#(mark X1, X2, X3, X4) -> U132#(X1, X2, X3, X4), U132#(X1, X2, mark X3, X4) -> U132#(X1, X2, X3, X4))
    (U132#(mark X1, X2, X3, X4) -> U132#(X1, X2, X3, X4), U132#(X1, X2, active X3, X4) -> U132#(X1, X2, X3, X4))
    (U132#(mark X1, X2, X3, X4) -> U132#(X1, X2, X3, X4), U132#(X1, mark X2, X3, X4) -> U132#(X1, X2, X3, X4))
    (U132#(mark X1, X2, X3, X4) -> U132#(X1, X2, X3, X4), U132#(X1, active X2, X3, X4) -> U132#(X1, X2, X3, X4))
    (U132#(mark X1, X2, X3, X4) -> U132#(X1, X2, X3, X4), U132#(mark X1, X2, X3, X4) -> U132#(X1, X2, X3, X4))
    (U132#(mark X1, X2, X3, X4) -> U132#(X1, X2, X3, X4), U132#(active X1, X2, X3, X4) -> U132#(X1, X2, X3, X4))
    (U132#(X1, mark X2, X3, X4) -> U132#(X1, X2, X3, X4), U132#(X1, X2, X3, mark X4) -> U132#(X1, X2, X3, X4))
    (U132#(X1, mark X2, X3, X4) -> U132#(X1, X2, X3, X4), U132#(X1, X2, X3, active X4) -> U132#(X1, X2, X3, X4))
    (U132#(X1, mark X2, X3, X4) -> U132#(X1, X2, X3, X4), U132#(X1, X2, mark X3, X4) -> U132#(X1, X2, X3, X4))
    (U132#(X1, mark X2, X3, X4) -> U132#(X1, X2, X3, X4), U132#(X1, X2, active X3, X4) -> U132#(X1, X2, X3, X4))
    (U132#(X1, mark X2, X3, X4) -> U132#(X1, X2, X3, X4), U132#(X1, mark X2, X3, X4) -> U132#(X1, X2, X3, X4))
    (U132#(X1, mark X2, X3, X4) -> U132#(X1, X2, X3, X4), U132#(X1, active X2, X3, X4) -> U132#(X1, X2, X3, X4))
    (U132#(X1, mark X2, X3, X4) -> U132#(X1, X2, X3, X4), U132#(mark X1, X2, X3, X4) -> U132#(X1, X2, X3, X4))
    (U132#(X1, mark X2, X3, X4) -> U132#(X1, X2, X3, X4), U132#(active X1, X2, X3, X4) -> U132#(X1, X2, X3, X4))
    (U132#(X1, X2, mark X3, X4) -> U132#(X1, X2, X3, X4), U132#(X1, X2, X3, mark X4) -> U132#(X1, X2, X3, X4))
    (U132#(X1, X2, mark X3, X4) -> U132#(X1, X2, X3, X4), U132#(X1, X2, X3, active X4) -> U132#(X1, X2, X3, X4))
    (U132#(X1, X2, mark X3, X4) -> U132#(X1, X2, X3, X4), U132#(X1, X2, mark X3, X4) -> U132#(X1, X2, X3, X4))
    (U132#(X1, X2, mark X3, X4) -> U132#(X1, X2, X3, X4), U132#(X1, X2, active X3, X4) -> U132#(X1, X2, X3, X4))
    (U132#(X1, X2, mark X3, X4) -> U132#(X1, X2, X3, X4), U132#(X1, mark X2, X3, X4) -> U132#(X1, X2, X3, X4))
    (U132#(X1, X2, mark X3, X4) -> U132#(X1, X2, X3, X4), U132#(X1, active X2, X3, X4) -> U132#(X1, X2, X3, X4))
    (U132#(X1, X2, mark X3, X4) -> U132#(X1, X2, X3, X4), U132#(mark X1, X2, X3, X4) -> U132#(X1, X2, X3, X4))
    (U132#(X1, X2, mark X3, X4) -> U132#(X1, X2, X3, X4), U132#(active X1, X2, X3, X4) -> U132#(X1, X2, X3, X4))
    (U132#(X1, X2, X3, mark X4) -> U132#(X1, X2, X3, X4), U132#(X1, X2, X3, mark X4) -> U132#(X1, X2, X3, X4))
    (U132#(X1, X2, X3, mark X4) -> U132#(X1, X2, X3, X4), U132#(X1, X2, X3, active X4) -> U132#(X1, X2, X3, X4))
    (U132#(X1, X2, X3, mark X4) -> U132#(X1, X2, X3, X4), U132#(X1, X2, mark X3, X4) -> U132#(X1, X2, X3, X4))
    (U132#(X1, X2, X3, mark X4) -> U132#(X1, X2, X3, X4), U132#(X1, X2, active X3, X4) -> U132#(X1, X2, X3, X4))
    (U132#(X1, X2, X3, mark X4) -> U132#(X1, X2, X3, X4), U132#(X1, mark X2, X3, X4) -> U132#(X1, X2, X3, X4))
    (U132#(X1, X2, X3, mark X4) -> U132#(X1, X2, X3, X4), U132#(X1, active X2, X3, X4) -> U132#(X1, X2, X3, X4))
    (U132#(X1, X2, X3, mark X4) -> U132#(X1, X2, X3, X4), U132#(mark X1, X2, X3, X4) -> U132#(X1, X2, X3, X4))
    (U132#(X1, X2, X3, mark X4) -> U132#(X1, X2, X3, X4), U132#(active X1, X2, X3, X4) -> U132#(X1, X2, X3, X4))
    (mark# U135(X1, X2, X3, X4) -> U135#(mark X1, X2, X3, X4), U135#(X1, X2, X3, mark X4) -> U135#(X1, X2, X3, X4))
    (mark# U135(X1, X2, X3, X4) -> U135#(mark X1, X2, X3, X4), U135#(X1, X2, X3, active X4) -> U135#(X1, X2, X3, X4))
    (mark# U135(X1, X2, X3, X4) -> U135#(mark X1, X2, X3, X4), U135#(X1, X2, mark X3, X4) -> U135#(X1, X2, X3, X4))
    (mark# U135(X1, X2, X3, X4) -> U135#(mark X1, X2, X3, X4), U135#(X1, X2, active X3, X4) -> U135#(X1, X2, X3, X4))
    (mark# U135(X1, X2, X3, X4) -> U135#(mark X1, X2, X3, X4), U135#(X1, mark X2, X3, X4) -> U135#(X1, X2, X3, X4))
    (mark# U135(X1, X2, X3, X4) -> U135#(mark X1, X2, X3, X4), U135#(X1, active X2, X3, X4) -> U135#(X1, X2, X3, X4))
    (mark# U135(X1, X2, X3, X4) -> U135#(mark X1, X2, X3, X4), U135#(mark X1, X2, X3, X4) -> U135#(X1, X2, X3, X4))
    (mark# U135(X1, X2, X3, X4) -> U135#(mark X1, X2, X3, X4), U135#(active X1, X2, X3, X4) -> U135#(X1, X2, X3, X4))
    (mark# U133(X1, X2, X3, X4) -> U133#(mark X1, X2, X3, X4), U133#(X1, X2, X3, mark X4) -> U133#(X1, X2, X3, X4))
    (mark# U133(X1, X2, X3, X4) -> U133#(mark X1, X2, X3, X4), U133#(X1, X2, X3, active X4) -> U133#(X1, X2, X3, X4))
    (mark# U133(X1, X2, X3, X4) -> U133#(mark X1, X2, X3, X4), U133#(X1, X2, mark X3, X4) -> U133#(X1, X2, X3, X4))
    (mark# U133(X1, X2, X3, X4) -> U133#(mark X1, X2, X3, X4), U133#(X1, X2, active X3, X4) -> U133#(X1, X2, X3, X4))
    (mark# U133(X1, X2, X3, X4) -> U133#(mark X1, X2, X3, X4), U133#(X1, mark X2, X3, X4) -> U133#(X1, X2, X3, X4))
    (mark# U133(X1, X2, X3, X4) -> U133#(mark X1, X2, X3, X4), U133#(X1, active X2, X3, X4) -> U133#(X1, X2, X3, X4))
    (mark# U133(X1, X2, X3, X4) -> U133#(mark X1, X2, X3, X4), U133#(mark X1, X2, X3, X4) -> U133#(X1, X2, X3, X4))
    (mark# U133(X1, X2, X3, X4) -> U133#(mark X1, X2, X3, X4), U133#(active X1, X2, X3, X4) -> U133#(X1, X2, X3, X4))
    (mark# U132(X1, X2, X3, X4) -> U132#(mark X1, X2, X3, X4), U132#(X1, X2, X3, mark X4) -> U132#(X1, X2, X3, X4))
    (mark# U132(X1, X2, X3, X4) -> U132#(mark X1, X2, X3, X4), U132#(X1, X2, X3, active X4) -> U132#(X1, X2, X3, X4))
    (mark# U132(X1, X2, X3, X4) -> U132#(mark X1, X2, X3, X4), U132#(X1, X2, mark X3, X4) -> U132#(X1, X2, X3, X4))
    (mark# U132(X1, X2, X3, X4) -> U132#(mark X1, X2, X3, X4), U132#(X1, X2, active X3, X4) -> U132#(X1, X2, X3, X4))
    (mark# U132(X1, X2, X3, X4) -> U132#(mark X1, X2, X3, X4), U132#(X1, mark X2, X3, X4) -> U132#(X1, X2, X3, X4))
    (mark# U132(X1, X2, X3, X4) -> U132#(mark X1, X2, X3, X4), U132#(X1, active X2, X3, X4) -> U132#(X1, X2, X3, X4))
    (mark# U132(X1, X2, X3, X4) -> U132#(mark X1, X2, X3, X4), U132#(mark X1, X2, X3, X4) -> U132#(X1, X2, X3, X4))
    (mark# U132(X1, X2, X3, X4) -> U132#(mark X1, X2, X3, X4), U132#(active X1, X2, X3, X4) -> U132#(X1, X2, X3, X4))
    (active# U91(tt(), V1, V2) -> U92#(isNatKind V1, V1, V2), U92#(X1, X2, mark X3) -> U92#(X1, X2, X3))
    (active# U91(tt(), V1, V2) -> U92#(isNatKind V1, V1, V2), U92#(X1, X2, active X3) -> U92#(X1, X2, X3))
    (active# U91(tt(), V1, V2) -> U92#(isNatKind V1, V1, V2), U92#(X1, mark X2, X3) -> U92#(X1, X2, X3))
    (active# U91(tt(), V1, V2) -> U92#(isNatKind V1, V1, V2), U92#(X1, active X2, X3) -> U92#(X1, X2, X3))
    (active# U43(tt(), V1, V2) -> U44#(isNatIListKind V2, V1, V2), U44#(X1, X2, mark X3) -> U44#(X1, X2, X3))
    (active# U43(tt(), V1, V2) -> U44#(isNatIListKind V2, V1, V2), U44#(X1, X2, active X3) -> U44#(X1, X2, X3))
    (active# U43(tt(), V1, V2) -> U44#(isNatIListKind V2, V1, V2), U44#(X1, mark X2, X3) -> U44#(X1, X2, X3))
    (active# U43(tt(), V1, V2) -> U44#(isNatIListKind V2, V1, V2), U44#(X1, active X2, X3) -> U44#(X1, X2, X3))
    (active# U42(tt(), V1, V2) -> U43#(isNatIListKind V2, V1, V2), U43#(X1, X2, mark X3) -> U43#(X1, X2, X3))
    (active# U42(tt(), V1, V2) -> U43#(isNatIListKind V2, V1, V2), U43#(X1, X2, active X3) -> U43#(X1, X2, X3))
    (active# U42(tt(), V1, V2) -> U43#(isNatIListKind V2, V1, V2), U43#(X1, mark X2, X3) -> U43#(X1, X2, X3))
    (active# U42(tt(), V1, V2) -> U43#(isNatIListKind V2, V1, V2), U43#(X1, active X2, X3) -> U43#(X1, X2, X3))
    (active# isNatList cons(V1, V2) -> U91#(isNatKind V1, V1, V2), U91#(X1, X2, mark X3) -> U91#(X1, X2, X3))
    (active# isNatList cons(V1, V2) -> U91#(isNatKind V1, V1, V2), U91#(X1, X2, active X3) -> U91#(X1, X2, X3))
    (active# isNatList cons(V1, V2) -> U91#(isNatKind V1, V1, V2), U91#(X1, mark X2, X3) -> U91#(X1, X2, X3))
    (active# isNatList cons(V1, V2) -> U91#(isNatKind V1, V1, V2), U91#(X1, active X2, X3) -> U91#(X1, X2, X3))
    (active# U103(tt(), V1, V2) -> U104#(isNatIListKind V2, V1, V2), U104#(X1, X2, mark X3) -> U104#(X1, X2, X3))
    (active# U103(tt(), V1, V2) -> U104#(isNatIListKind V2, V1, V2), U104#(X1, X2, active X3) -> U104#(X1, X2, X3))
    (active# U103(tt(), V1, V2) -> U104#(isNatIListKind V2, V1, V2), U104#(X1, mark X2, X3) -> U104#(X1, X2, X3))
    (active# U103(tt(), V1, V2) -> U104#(isNatIListKind V2, V1, V2), U104#(X1, active X2, X3) -> U104#(X1, X2, X3))
    (active# U102(tt(), V1, V2) -> U103#(isNatIListKind V2, V1, V2), U103#(X1, X2, mark X3) -> U103#(X1, X2, X3))
    (active# U102(tt(), V1, V2) -> U103#(isNatIListKind V2, V1, V2), U103#(X1, X2, active X3) -> U103#(X1, X2, X3))
    (active# U102(tt(), V1, V2) -> U103#(isNatIListKind V2, V1, V2), U103#(X1, mark X2, X3) -> U103#(X1, X2, X3))
    (active# U102(tt(), V1, V2) -> U103#(isNatIListKind V2, V1, V2), U103#(X1, active X2, X3) -> U103#(X1, X2, X3))
    (mark# take(X1, X2) -> take#(mark X1, mark X2), take#(X1, mark X2) -> take#(X1, X2))
    (mark# take(X1, X2) -> take#(mark X1, mark X2), take#(X1, active X2) -> take#(X1, X2))
    (mark# take(X1, X2) -> take#(mark X1, mark X2), take#(mark X1, X2) -> take#(X1, X2))
    (mark# take(X1, X2) -> take#(mark X1, mark X2), take#(active X1, X2) -> take#(X1, X2))
    (active# U81 tt() -> mark# tt(), mark# tt() -> active# tt())
    (active# U62 tt() -> mark# tt(), mark# tt() -> active# tt())
    (active# U46 tt() -> mark# tt(), mark# tt() -> active# tt())
    (active# U23 tt() -> mark# tt(), mark# tt() -> active# tt())
    (active# isNatList nil() -> mark# tt(), mark# tt() -> active# tt())
    (active# length nil() -> mark# 0(), mark# 0() -> active# 0())
    (active# U106 tt() -> mark# tt(), mark# tt() -> active# tt())
    (active# isNatIListKind nil() -> mark# tt(), mark# tt() -> active# tt())
    (active# isNatKind 0() -> mark# tt(), mark# tt() -> active# tt())
    (active# U111(tt(), L, N) -> U112#(isNatIListKind L, L, N), U112#(X1, X2, mark X3) -> U112#(X1, X2, X3))
    (active# U111(tt(), L, N) -> U112#(isNatIListKind L, L, N), U112#(X1, X2, active X3) -> U112#(X1, X2, X3))
    (active# U111(tt(), L, N) -> U112#(isNatIListKind L, L, N), U112#(X1, mark X2, X3) -> U112#(X1, X2, X3))
    (active# U111(tt(), L, N) -> U112#(isNatIListKind L, L, N), U112#(X1, active X2, X3) -> U112#(X1, X2, X3))
    (active# take(s M, cons(N, IL)) -> isNatIList# IL, isNatIList# mark X -> isNatIList# X)
    (active# take(s M, cons(N, IL)) -> isNatIList# IL, isNatIList# active X -> isNatIList# X)
    (active# U131(tt(), IL, M, N) -> isNatIListKind# IL, isNatIListKind# mark X -> isNatIListKind# X)
    (active# U131(tt(), IL, M, N) -> isNatIListKind# IL, isNatIListKind# active X -> isNatIListKind# X)
    (active# U95(tt(), V2) -> mark# U96 isNatList V2, mark# U96 X -> mark# X)
    (active# U95(tt(), V2) -> mark# U96 isNatList V2, mark# U96 X -> active# U96 mark X)
    (active# U95(tt(), V2) -> mark# U96 isNatList V2, mark# U96 X -> U96# mark X)
    (active# U51(tt(), V2) -> mark# U52 isNatIListKind V2, mark# U52 X -> mark# X)
    (active# U51(tt(), V2) -> mark# U52 isNatIListKind V2, mark# U52 X -> active# U52 mark X)
    (active# U51(tt(), V2) -> mark# U52 isNatIListKind V2, mark# U52 X -> U52# mark X)
    (active# U32(tt(), V) -> mark# U33 isNatList V, mark# U33 X -> mark# X)
    (active# U32(tt(), V) -> mark# U33 isNatList V, mark# U33 X -> active# U33 mark X)
    (active# U32(tt(), V) -> mark# U33 isNatList V, mark# U33 X -> U33# mark X)
    (active# U121(tt(), IL) -> mark# U122 isNatIListKind IL, mark# U122 X -> mark# X)
    (active# U121(tt(), IL) -> mark# U122 isNatIListKind IL, mark# U122 X -> active# U122 mark X)
    (active# U121(tt(), IL) -> mark# U122 isNatIListKind IL, mark# U122 X -> U122# mark X)
    (active# U12(tt(), V1) -> mark# U13 isNatList V1, mark# U13 X -> mark# X)
    (active# U12(tt(), V1) -> mark# U13 isNatList V1, mark# U13 X -> active# U13 mark X)
    (active# U12(tt(), V1) -> mark# U13 isNatList V1, mark# U13 X -> U13# mark X)
    (active# isNatKind length V1 -> mark# U71 isNatIListKind V1, mark# U71 X -> mark# X)
    (active# isNatKind length V1 -> mark# U71 isNatIListKind V1, mark# U71 X -> active# U71 mark X)
    (active# isNatKind length V1 -> mark# U71 isNatIListKind V1, mark# U71 X -> U71# mark X)
    (mark# U96 X -> active# U96 mark X, active# U96 tt() -> mark# tt())
    (mark# U71 X -> active# U71 mark X, active# U71 tt() -> mark# tt())
    (mark# U52 X -> active# U52 mark X, active# U52 tt() -> mark# tt())
    (mark# U33 X -> active# U33 mark X, active# U33 tt() -> mark# tt())
    (mark# U122 X -> active# U122 mark X, active# U122 tt() -> mark# nil())
    (mark# length X -> active# length mark X, active# length cons(N, L) -> mark# U111(isNatList L, L, N))
    (mark# length X -> active# length mark X, active# length cons(N, L) -> U111#(isNatList L, L, N))
    (mark# length X -> active# length mark X, active# length cons(N, L) -> isNatList# L)
    (mark# length X -> active# length mark X, active# length nil() -> mark# 0())
    (mark# U106 X -> active# U106 mark X, active# U106 tt() -> mark# tt())
    (U94#(mark X1, X2, X3) -> U94#(X1, X2, X3), U94#(X1, X2, mark X3) -> U94#(X1, X2, X3))
    (U94#(mark X1, X2, X3) -> U94#(X1, X2, X3), U94#(X1, X2, active X3) -> U94#(X1, X2, X3))
    (U94#(mark X1, X2, X3) -> U94#(X1, X2, X3), U94#(X1, mark X2, X3) -> U94#(X1, X2, X3))
    (U94#(mark X1, X2, X3) -> U94#(X1, X2, X3), U94#(X1, active X2, X3) -> U94#(X1, X2, X3))
    (U94#(mark X1, X2, X3) -> U94#(X1, X2, X3), U94#(mark X1, X2, X3) -> U94#(X1, X2, X3))
    (U94#(mark X1, X2, X3) -> U94#(X1, X2, X3), U94#(active X1, X2, X3) -> U94#(X1, X2, X3))
    (U94#(X1, mark X2, X3) -> U94#(X1, X2, X3), U94#(X1, X2, mark X3) -> U94#(X1, X2, X3))
    (U94#(X1, mark X2, X3) -> U94#(X1, X2, X3), U94#(X1, X2, active X3) -> U94#(X1, X2, X3))
    (U94#(X1, mark X2, X3) -> U94#(X1, X2, X3), U94#(X1, mark X2, X3) -> U94#(X1, X2, X3))
    (U94#(X1, mark X2, X3) -> U94#(X1, X2, X3), U94#(X1, active X2, X3) -> U94#(X1, X2, X3))
    (U94#(X1, mark X2, X3) -> U94#(X1, X2, X3), U94#(mark X1, X2, X3) -> U94#(X1, X2, X3))
    (U94#(X1, mark X2, X3) -> U94#(X1, X2, X3), U94#(active X1, X2, X3) -> U94#(X1, X2, X3))
    (U94#(X1, X2, mark X3) -> U94#(X1, X2, X3), U94#(X1, X2, mark X3) -> U94#(X1, X2, X3))
    (U94#(X1, X2, mark X3) -> U94#(X1, X2, X3), U94#(X1, X2, active X3) -> U94#(X1, X2, X3))
    (U94#(X1, X2, mark X3) -> U94#(X1, X2, X3), U94#(X1, mark X2, X3) -> U94#(X1, X2, X3))
    (U94#(X1, X2, mark X3) -> U94#(X1, X2, X3), U94#(X1, active X2, X3) -> U94#(X1, X2, X3))
    (U94#(X1, X2, mark X3) -> U94#(X1, X2, X3), U94#(mark X1, X2, X3) -> U94#(X1, X2, X3))
    (U94#(X1, X2, mark X3) -> U94#(X1, X2, X3), U94#(active X1, X2, X3) -> U94#(X1, X2, X3))
    (U93#(mark X1, X2, X3) -> U93#(X1, X2, X3), U93#(X1, X2, mark X3) -> U93#(X1, X2, X3))
    (U93#(mark X1, X2, X3) -> U93#(X1, X2, X3), U93#(X1, X2, active X3) -> U93#(X1, X2, X3))
    (U93#(mark X1, X2, X3) -> U93#(X1, X2, X3), U93#(X1, mark X2, X3) -> U93#(X1, X2, X3))
    (U93#(mark X1, X2, X3) -> U93#(X1, X2, X3), U93#(X1, active X2, X3) -> U93#(X1, X2, X3))
    (U93#(mark X1, X2, X3) -> U93#(X1, X2, X3), U93#(mark X1, X2, X3) -> U93#(X1, X2, X3))
    (U93#(mark X1, X2, X3) -> U93#(X1, X2, X3), U93#(active X1, X2, X3) -> U93#(X1, X2, X3))
    (U93#(X1, mark X2, X3) -> U93#(X1, X2, X3), U93#(X1, X2, mark X3) -> U93#(X1, X2, X3))
    (U93#(X1, mark X2, X3) -> U93#(X1, X2, X3), U93#(X1, X2, active X3) -> U93#(X1, X2, X3))
    (U93#(X1, mark X2, X3) -> U93#(X1, X2, X3), U93#(X1, mark X2, X3) -> U93#(X1, X2, X3))
    (U93#(X1, mark X2, X3) -> U93#(X1, X2, X3), U93#(X1, active X2, X3) -> U93#(X1, X2, X3))
    (U93#(X1, mark X2, X3) -> U93#(X1, X2, X3), U93#(mark X1, X2, X3) -> U93#(X1, X2, X3))
    (U93#(X1, mark X2, X3) -> U93#(X1, X2, X3), U93#(active X1, X2, X3) -> U93#(X1, X2, X3))
    (U93#(X1, X2, mark X3) -> U93#(X1, X2, X3), U93#(X1, X2, mark X3) -> U93#(X1, X2, X3))
    (U93#(X1, X2, mark X3) -> U93#(X1, X2, X3), U93#(X1, X2, active X3) -> U93#(X1, X2, X3))
    (U93#(X1, X2, mark X3) -> U93#(X1, X2, X3), U93#(X1, mark X2, X3) -> U93#(X1, X2, X3))
    (U93#(X1, X2, mark X3) -> U93#(X1, X2, X3), U93#(X1, active X2, X3) -> U93#(X1, X2, X3))
    (U93#(X1, X2, mark X3) -> U93#(X1, X2, X3), U93#(mark X1, X2, X3) -> U93#(X1, X2, X3))
    (U93#(X1, X2, mark X3) -> U93#(X1, X2, X3), U93#(active X1, X2, X3) -> U93#(X1, X2, X3))
    (U91#(mark X1, X2, X3) -> U91#(X1, X2, X3), U91#(X1, X2, mark X3) -> U91#(X1, X2, X3))
    (U91#(mark X1, X2, X3) -> U91#(X1, X2, X3), U91#(X1, X2, active X3) -> U91#(X1, X2, X3))
    (U91#(mark X1, X2, X3) -> U91#(X1, X2, X3), U91#(X1, mark X2, X3) -> U91#(X1, X2, X3))
    (U91#(mark X1, X2, X3) -> U91#(X1, X2, X3), U91#(X1, active X2, X3) -> U91#(X1, X2, X3))
    (U91#(mark X1, X2, X3) -> U91#(X1, X2, X3), U91#(mark X1, X2, X3) -> U91#(X1, X2, X3))
    (U91#(mark X1, X2, X3) -> U91#(X1, X2, X3), U91#(active X1, X2, X3) -> U91#(X1, X2, X3))
    (U91#(X1, mark X2, X3) -> U91#(X1, X2, X3), U91#(X1, X2, mark X3) -> U91#(X1, X2, X3))
    (U91#(X1, mark X2, X3) -> U91#(X1, X2, X3), U91#(X1, X2, active X3) -> U91#(X1, X2, X3))
    (U91#(X1, mark X2, X3) -> U91#(X1, X2, X3), U91#(X1, mark X2, X3) -> U91#(X1, X2, X3))
    (U91#(X1, mark X2, X3) -> U91#(X1, X2, X3), U91#(X1, active X2, X3) -> U91#(X1, X2, X3))
    (U91#(X1, mark X2, X3) -> U91#(X1, X2, X3), U91#(mark X1, X2, X3) -> U91#(X1, X2, X3))
    (U91#(X1, mark X2, X3) -> U91#(X1, X2, X3), U91#(active X1, X2, X3) -> U91#(X1, X2, X3))
    (U91#(X1, X2, mark X3) -> U91#(X1, X2, X3), U91#(X1, X2, mark X3) -> U91#(X1, X2, X3))
    (U91#(X1, X2, mark X3) -> U91#(X1, X2, X3), U91#(X1, X2, active X3) -> U91#(X1, X2, X3))
    (U91#(X1, X2, mark X3) -> U91#(X1, X2, X3), U91#(X1, mark X2, X3) -> U91#(X1, X2, X3))
    (U91#(X1, X2, mark X3) -> U91#(X1, X2, X3), U91#(X1, active X2, X3) -> U91#(X1, X2, X3))
    (U91#(X1, X2, mark X3) -> U91#(X1, X2, X3), U91#(mark X1, X2, X3) -> U91#(X1, X2, X3))
    (U91#(X1, X2, mark X3) -> U91#(X1, X2, X3), U91#(active X1, X2, X3) -> U91#(X1, X2, X3))
    (U92#(mark X1, X2, X3) -> U92#(X1, X2, X3), U92#(X1, X2, mark X3) -> U92#(X1, X2, X3))
    (U92#(mark X1, X2, X3) -> U92#(X1, X2, X3), U92#(X1, X2, active X3) -> U92#(X1, X2, X3))
    (U92#(mark X1, X2, X3) -> U92#(X1, X2, X3), U92#(X1, mark X2, X3) -> U92#(X1, X2, X3))
    (U92#(mark X1, X2, X3) -> U92#(X1, X2, X3), U92#(X1, active X2, X3) -> U92#(X1, X2, X3))
    (U92#(mark X1, X2, X3) -> U92#(X1, X2, X3), U92#(mark X1, X2, X3) -> U92#(X1, X2, X3))
    (U92#(mark X1, X2, X3) -> U92#(X1, X2, X3), U92#(active X1, X2, X3) -> U92#(X1, X2, X3))
    (U92#(X1, mark X2, X3) -> U92#(X1, X2, X3), U92#(X1, X2, mark X3) -> U92#(X1, X2, X3))
    (U92#(X1, mark X2, X3) -> U92#(X1, X2, X3), U92#(X1, X2, active X3) -> U92#(X1, X2, X3))
    (U92#(X1, mark X2, X3) -> U92#(X1, X2, X3), U92#(X1, mark X2, X3) -> U92#(X1, X2, X3))
    (U92#(X1, mark X2, X3) -> U92#(X1, X2, X3), U92#(X1, active X2, X3) -> U92#(X1, X2, X3))
    (U92#(X1, mark X2, X3) -> U92#(X1, X2, X3), U92#(mark X1, X2, X3) -> U92#(X1, X2, X3))
    (U92#(X1, mark X2, X3) -> U92#(X1, X2, X3), U92#(active X1, X2, X3) -> U92#(X1, X2, X3))
    (U92#(X1, X2, mark X3) -> U92#(X1, X2, X3), U92#(X1, X2, mark X3) -> U92#(X1, X2, X3))
    (U92#(X1, X2, mark X3) -> U92#(X1, X2, X3), U92#(X1, X2, active X3) -> U92#(X1, X2, X3))
    (U92#(X1, X2, mark X3) -> U92#(X1, X2, X3), U92#(X1, mark X2, X3) -> U92#(X1, X2, X3))
    (U92#(X1, X2, mark X3) -> U92#(X1, X2, X3), U92#(X1, active X2, X3) -> U92#(X1, X2, X3))
    (U92#(X1, X2, mark X3) -> U92#(X1, X2, X3), U92#(mark X1, X2, X3) -> U92#(X1, X2, X3))
    (U92#(X1, X2, mark X3) -> U92#(X1, X2, X3), U92#(active X1, X2, X3) -> U92#(X1, X2, X3))
    (U44#(mark X1, X2, X3) -> U44#(X1, X2, X3), U44#(X1, X2, mark X3) -> U44#(X1, X2, X3))
    (U44#(mark X1, X2, X3) -> U44#(X1, X2, X3), U44#(X1, X2, active X3) -> U44#(X1, X2, X3))
    (U44#(mark X1, X2, X3) -> U44#(X1, X2, X3), U44#(X1, mark X2, X3) -> U44#(X1, X2, X3))
    (U44#(mark X1, X2, X3) -> U44#(X1, X2, X3), U44#(X1, active X2, X3) -> U44#(X1, X2, X3))
    (U44#(mark X1, X2, X3) -> U44#(X1, X2, X3), U44#(mark X1, X2, X3) -> U44#(X1, X2, X3))
    (U44#(mark X1, X2, X3) -> U44#(X1, X2, X3), U44#(active X1, X2, X3) -> U44#(X1, X2, X3))
    (U44#(X1, mark X2, X3) -> U44#(X1, X2, X3), U44#(X1, X2, mark X3) -> U44#(X1, X2, X3))
    (U44#(X1, mark X2, X3) -> U44#(X1, X2, X3), U44#(X1, X2, active X3) -> U44#(X1, X2, X3))
    (U44#(X1, mark X2, X3) -> U44#(X1, X2, X3), U44#(X1, mark X2, X3) -> U44#(X1, X2, X3))
    (U44#(X1, mark X2, X3) -> U44#(X1, X2, X3), U44#(X1, active X2, X3) -> U44#(X1, X2, X3))
    (U44#(X1, mark X2, X3) -> U44#(X1, X2, X3), U44#(mark X1, X2, X3) -> U44#(X1, X2, X3))
    (U44#(X1, mark X2, X3) -> U44#(X1, X2, X3), U44#(active X1, X2, X3) -> U44#(X1, X2, X3))
    (U44#(X1, X2, mark X3) -> U44#(X1, X2, X3), U44#(X1, X2, mark X3) -> U44#(X1, X2, X3))
    (U44#(X1, X2, mark X3) -> U44#(X1, X2, X3), U44#(X1, X2, active X3) -> U44#(X1, X2, X3))
    (U44#(X1, X2, mark X3) -> U44#(X1, X2, X3), U44#(X1, mark X2, X3) -> U44#(X1, X2, X3))
    (U44#(X1, X2, mark X3) -> U44#(X1, X2, X3), U44#(X1, active X2, X3) -> U44#(X1, X2, X3))
    (U44#(X1, X2, mark X3) -> U44#(X1, X2, X3), U44#(mark X1, X2, X3) -> U44#(X1, X2, X3))
    (U44#(X1, X2, mark X3) -> U44#(X1, X2, X3), U44#(active X1, X2, X3) -> U44#(X1, X2, X3))
    (U43#(mark X1, X2, X3) -> U43#(X1, X2, X3), U43#(X1, X2, mark X3) -> U43#(X1, X2, X3))
    (U43#(mark X1, X2, X3) -> U43#(X1, X2, X3), U43#(X1, X2, active X3) -> U43#(X1, X2, X3))
    (U43#(mark X1, X2, X3) -> U43#(X1, X2, X3), U43#(X1, mark X2, X3) -> U43#(X1, X2, X3))
    (U43#(mark X1, X2, X3) -> U43#(X1, X2, X3), U43#(X1, active X2, X3) -> U43#(X1, X2, X3))
    (U43#(mark X1, X2, X3) -> U43#(X1, X2, X3), U43#(mark X1, X2, X3) -> U43#(X1, X2, X3))
    (U43#(mark X1, X2, X3) -> U43#(X1, X2, X3), U43#(active X1, X2, X3) -> U43#(X1, X2, X3))
    (U43#(X1, mark X2, X3) -> U43#(X1, X2, X3), U43#(X1, X2, mark X3) -> U43#(X1, X2, X3))
    (U43#(X1, mark X2, X3) -> U43#(X1, X2, X3), U43#(X1, X2, active X3) -> U43#(X1, X2, X3))
    (U43#(X1, mark X2, X3) -> U43#(X1, X2, X3), U43#(X1, mark X2, X3) -> U43#(X1, X2, X3))
    (U43#(X1, mark X2, X3) -> U43#(X1, X2, X3), U43#(X1, active X2, X3) -> U43#(X1, X2, X3))
    (U43#(X1, mark X2, X3) -> U43#(X1, X2, X3), U43#(mark X1, X2, X3) -> U43#(X1, X2, X3))
    (U43#(X1, mark X2, X3) -> U43#(X1, X2, X3), U43#(active X1, X2, X3) -> U43#(X1, X2, X3))
    (U43#(X1, X2, mark X3) -> U43#(X1, X2, X3), U43#(X1, X2, mark X3) -> U43#(X1, X2, X3))
    (U43#(X1, X2, mark X3) -> U43#(X1, X2, X3), U43#(X1, X2, active X3) -> U43#(X1, X2, X3))
    (U43#(X1, X2, mark X3) -> U43#(X1, X2, X3), U43#(X1, mark X2, X3) -> U43#(X1, X2, X3))
    (U43#(X1, X2, mark X3) -> U43#(X1, X2, X3), U43#(X1, active X2, X3) -> U43#(X1, X2, X3))
    (U43#(X1, X2, mark X3) -> U43#(X1, X2, X3), U43#(mark X1, X2, X3) -> U43#(X1, X2, X3))
    (U43#(X1, X2, mark X3) -> U43#(X1, X2, X3), U43#(active X1, X2, X3) -> U43#(X1, X2, X3))
    (U41#(mark X1, X2, X3) -> U41#(X1, X2, X3), U41#(X1, X2, mark X3) -> U41#(X1, X2, X3))
    (U41#(mark X1, X2, X3) -> U41#(X1, X2, X3), U41#(X1, X2, active X3) -> U41#(X1, X2, X3))
    (U41#(mark X1, X2, X3) -> U41#(X1, X2, X3), U41#(X1, mark X2, X3) -> U41#(X1, X2, X3))
    (U41#(mark X1, X2, X3) -> U41#(X1, X2, X3), U41#(X1, active X2, X3) -> U41#(X1, X2, X3))
    (U41#(mark X1, X2, X3) -> U41#(X1, X2, X3), U41#(mark X1, X2, X3) -> U41#(X1, X2, X3))
    (U41#(mark X1, X2, X3) -> U41#(X1, X2, X3), U41#(active X1, X2, X3) -> U41#(X1, X2, X3))
    (U41#(X1, mark X2, X3) -> U41#(X1, X2, X3), U41#(X1, X2, mark X3) -> U41#(X1, X2, X3))
    (U41#(X1, mark X2, X3) -> U41#(X1, X2, X3), U41#(X1, X2, active X3) -> U41#(X1, X2, X3))
    (U41#(X1, mark X2, X3) -> U41#(X1, X2, X3), U41#(X1, mark X2, X3) -> U41#(X1, X2, X3))
    (U41#(X1, mark X2, X3) -> U41#(X1, X2, X3), U41#(X1, active X2, X3) -> U41#(X1, X2, X3))
    (U41#(X1, mark X2, X3) -> U41#(X1, X2, X3), U41#(mark X1, X2, X3) -> U41#(X1, X2, X3))
    (U41#(X1, mark X2, X3) -> U41#(X1, X2, X3), U41#(active X1, X2, X3) -> U41#(X1, X2, X3))
    (U41#(X1, X2, mark X3) -> U41#(X1, X2, X3), U41#(X1, X2, mark X3) -> U41#(X1, X2, X3))
    (U41#(X1, X2, mark X3) -> U41#(X1, X2, X3), U41#(X1, X2, active X3) -> U41#(X1, X2, X3))
    (U41#(X1, X2, mark X3) -> U41#(X1, X2, X3), U41#(X1, mark X2, X3) -> U41#(X1, X2, X3))
    (U41#(X1, X2, mark X3) -> U41#(X1, X2, X3), U41#(X1, active X2, X3) -> U41#(X1, X2, X3))
    (U41#(X1, X2, mark X3) -> U41#(X1, X2, X3), U41#(mark X1, X2, X3) -> U41#(X1, X2, X3))
    (U41#(X1, X2, mark X3) -> U41#(X1, X2, X3), U41#(active X1, X2, X3) -> U41#(X1, X2, X3))
    (U42#(mark X1, X2, X3) -> U42#(X1, X2, X3), U42#(X1, X2, mark X3) -> U42#(X1, X2, X3))
    (U42#(mark X1, X2, X3) -> U42#(X1, X2, X3), U42#(X1, X2, active X3) -> U42#(X1, X2, X3))
    (U42#(mark X1, X2, X3) -> U42#(X1, X2, X3), U42#(X1, mark X2, X3) -> U42#(X1, X2, X3))
    (U42#(mark X1, X2, X3) -> U42#(X1, X2, X3), U42#(X1, active X2, X3) -> U42#(X1, X2, X3))
    (U42#(mark X1, X2, X3) -> U42#(X1, X2, X3), U42#(mark X1, X2, X3) -> U42#(X1, X2, X3))
    (U42#(mark X1, X2, X3) -> U42#(X1, X2, X3), U42#(active X1, X2, X3) -> U42#(X1, X2, X3))
    (U42#(X1, mark X2, X3) -> U42#(X1, X2, X3), U42#(X1, X2, mark X3) -> U42#(X1, X2, X3))
    (U42#(X1, mark X2, X3) -> U42#(X1, X2, X3), U42#(X1, X2, active X3) -> U42#(X1, X2, X3))
    (U42#(X1, mark X2, X3) -> U42#(X1, X2, X3), U42#(X1, mark X2, X3) -> U42#(X1, X2, X3))
    (U42#(X1, mark X2, X3) -> U42#(X1, X2, X3), U42#(X1, active X2, X3) -> U42#(X1, X2, X3))
    (U42#(X1, mark X2, X3) -> U42#(X1, X2, X3), U42#(mark X1, X2, X3) -> U42#(X1, X2, X3))
    (U42#(X1, mark X2, X3) -> U42#(X1, X2, X3), U42#(active X1, X2, X3) -> U42#(X1, X2, X3))
    (U42#(X1, X2, mark X3) -> U42#(X1, X2, X3), U42#(X1, X2, mark X3) -> U42#(X1, X2, X3))
    (U42#(X1, X2, mark X3) -> U42#(X1, X2, X3), U42#(X1, X2, active X3) -> U42#(X1, X2, X3))
    (U42#(X1, X2, mark X3) -> U42#(X1, X2, X3), U42#(X1, mark X2, X3) -> U42#(X1, X2, X3))
    (U42#(X1, X2, mark X3) -> U42#(X1, X2, X3), U42#(X1, active X2, X3) -> U42#(X1, X2, X3))
    (U42#(X1, X2, mark X3) -> U42#(X1, X2, X3), U42#(mark X1, X2, X3) -> U42#(X1, X2, X3))
    (U42#(X1, X2, mark X3) -> U42#(X1, X2, X3), U42#(active X1, X2, X3) -> U42#(X1, X2, X3))
    (U113#(mark X1, X2, X3) -> U113#(X1, X2, X3), U113#(X1, X2, mark X3) -> U113#(X1, X2, X3))
    (U113#(mark X1, X2, X3) -> U113#(X1, X2, X3), U113#(X1, X2, active X3) -> U113#(X1, X2, X3))
    (U113#(mark X1, X2, X3) -> U113#(X1, X2, X3), U113#(X1, mark X2, X3) -> U113#(X1, X2, X3))
    (U113#(mark X1, X2, X3) -> U113#(X1, X2, X3), U113#(X1, active X2, X3) -> U113#(X1, X2, X3))
    (U113#(mark X1, X2, X3) -> U113#(X1, X2, X3), U113#(mark X1, X2, X3) -> U113#(X1, X2, X3))
    (U113#(mark X1, X2, X3) -> U113#(X1, X2, X3), U113#(active X1, X2, X3) -> U113#(X1, X2, X3))
    (U113#(X1, mark X2, X3) -> U113#(X1, X2, X3), U113#(X1, X2, mark X3) -> U113#(X1, X2, X3))
    (U113#(X1, mark X2, X3) -> U113#(X1, X2, X3), U113#(X1, X2, active X3) -> U113#(X1, X2, X3))
    (U113#(X1, mark X2, X3) -> U113#(X1, X2, X3), U113#(X1, mark X2, X3) -> U113#(X1, X2, X3))
    (U113#(X1, mark X2, X3) -> U113#(X1, X2, X3), U113#(X1, active X2, X3) -> U113#(X1, X2, X3))
    (U113#(X1, mark X2, X3) -> U113#(X1, X2, X3), U113#(mark X1, X2, X3) -> U113#(X1, X2, X3))
    (U113#(X1, mark X2, X3) -> U113#(X1, X2, X3), U113#(active X1, X2, X3) -> U113#(X1, X2, X3))
    (U113#(X1, X2, mark X3) -> U113#(X1, X2, X3), U113#(X1, X2, mark X3) -> U113#(X1, X2, X3))
    (U113#(X1, X2, mark X3) -> U113#(X1, X2, X3), U113#(X1, X2, active X3) -> U113#(X1, X2, X3))
    (U113#(X1, X2, mark X3) -> U113#(X1, X2, X3), U113#(X1, mark X2, X3) -> U113#(X1, X2, X3))
    (U113#(X1, X2, mark X3) -> U113#(X1, X2, X3), U113#(X1, active X2, X3) -> U113#(X1, X2, X3))
    (U113#(X1, X2, mark X3) -> U113#(X1, X2, X3), U113#(mark X1, X2, X3) -> U113#(X1, X2, X3))
    (U113#(X1, X2, mark X3) -> U113#(X1, X2, X3), U113#(active X1, X2, X3) -> U113#(X1, X2, X3))
    (U111#(mark X1, X2, X3) -> U111#(X1, X2, X3), U111#(X1, X2, mark X3) -> U111#(X1, X2, X3))
    (U111#(mark X1, X2, X3) -> U111#(X1, X2, X3), U111#(X1, X2, active X3) -> U111#(X1, X2, X3))
    (U111#(mark X1, X2, X3) -> U111#(X1, X2, X3), U111#(X1, mark X2, X3) -> U111#(X1, X2, X3))
    (U111#(mark X1, X2, X3) -> U111#(X1, X2, X3), U111#(X1, active X2, X3) -> U111#(X1, X2, X3))
    (U111#(mark X1, X2, X3) -> U111#(X1, X2, X3), U111#(mark X1, X2, X3) -> U111#(X1, X2, X3))
    (U111#(mark X1, X2, X3) -> U111#(X1, X2, X3), U111#(active X1, X2, X3) -> U111#(X1, X2, X3))
    (U111#(X1, mark X2, X3) -> U111#(X1, X2, X3), U111#(X1, X2, mark X3) -> U111#(X1, X2, X3))
    (U111#(X1, mark X2, X3) -> U111#(X1, X2, X3), U111#(X1, X2, active X3) -> U111#(X1, X2, X3))
    (U111#(X1, mark X2, X3) -> U111#(X1, X2, X3), U111#(X1, mark X2, X3) -> U111#(X1, X2, X3))
    (U111#(X1, mark X2, X3) -> U111#(X1, X2, X3), U111#(X1, active X2, X3) -> U111#(X1, X2, X3))
    (U111#(X1, mark X2, X3) -> U111#(X1, X2, X3), U111#(mark X1, X2, X3) -> U111#(X1, X2, X3))
    (U111#(X1, mark X2, X3) -> U111#(X1, X2, X3), U111#(active X1, X2, X3) -> U111#(X1, X2, X3))
    (U111#(X1, X2, mark X3) -> U111#(X1, X2, X3), U111#(X1, X2, mark X3) -> U111#(X1, X2, X3))
    (U111#(X1, X2, mark X3) -> U111#(X1, X2, X3), U111#(X1, X2, active X3) -> U111#(X1, X2, X3))
    (U111#(X1, X2, mark X3) -> U111#(X1, X2, X3), U111#(X1, mark X2, X3) -> U111#(X1, X2, X3))
    (U111#(X1, X2, mark X3) -> U111#(X1, X2, X3), U111#(X1, active X2, X3) -> U111#(X1, X2, X3))
    (U111#(X1, X2, mark X3) -> U111#(X1, X2, X3), U111#(mark X1, X2, X3) -> U111#(X1, X2, X3))
    (U111#(X1, X2, mark X3) -> U111#(X1, X2, X3), U111#(active X1, X2, X3) -> U111#(X1, X2, X3))
    (U112#(mark X1, X2, X3) -> U112#(X1, X2, X3), U112#(X1, X2, mark X3) -> U112#(X1, X2, X3))
    (U112#(mark X1, X2, X3) -> U112#(X1, X2, X3), U112#(X1, X2, active X3) -> U112#(X1, X2, X3))
    (U112#(mark X1, X2, X3) -> U112#(X1, X2, X3), U112#(X1, mark X2, X3) -> U112#(X1, X2, X3))
    (U112#(mark X1, X2, X3) -> U112#(X1, X2, X3), U112#(X1, active X2, X3) -> U112#(X1, X2, X3))
    (U112#(mark X1, X2, X3) -> U112#(X1, X2, X3), U112#(mark X1, X2, X3) -> U112#(X1, X2, X3))
    (U112#(mark X1, X2, X3) -> U112#(X1, X2, X3), U112#(active X1, X2, X3) -> U112#(X1, X2, X3))
    (U112#(X1, mark X2, X3) -> U112#(X1, X2, X3), U112#(X1, X2, mark X3) -> U112#(X1, X2, X3))
    (U112#(X1, mark X2, X3) -> U112#(X1, X2, X3), U112#(X1, X2, active X3) -> U112#(X1, X2, X3))
    (U112#(X1, mark X2, X3) -> U112#(X1, X2, X3), U112#(X1, mark X2, X3) -> U112#(X1, X2, X3))
    (U112#(X1, mark X2, X3) -> U112#(X1, X2, X3), U112#(X1, active X2, X3) -> U112#(X1, X2, X3))
    (U112#(X1, mark X2, X3) -> U112#(X1, X2, X3), U112#(mark X1, X2, X3) -> U112#(X1, X2, X3))
    (U112#(X1, mark X2, X3) -> U112#(X1, X2, X3), U112#(active X1, X2, X3) -> U112#(X1, X2, X3))
    (U112#(X1, X2, mark X3) -> U112#(X1, X2, X3), U112#(X1, X2, mark X3) -> U112#(X1, X2, X3))
    (U112#(X1, X2, mark X3) -> U112#(X1, X2, X3), U112#(X1, X2, active X3) -> U112#(X1, X2, X3))
    (U112#(X1, X2, mark X3) -> U112#(X1, X2, X3), U112#(X1, mark X2, X3) -> U112#(X1, X2, X3))
    (U112#(X1, X2, mark X3) -> U112#(X1, X2, X3), U112#(X1, active X2, X3) -> U112#(X1, X2, X3))
    (U112#(X1, X2, mark X3) -> U112#(X1, X2, X3), U112#(mark X1, X2, X3) -> U112#(X1, X2, X3))
    (U112#(X1, X2, mark X3) -> U112#(X1, X2, X3), U112#(active X1, X2, X3) -> U112#(X1, X2, X3))
    (U104#(mark X1, X2, X3) -> U104#(X1, X2, X3), U104#(X1, X2, mark X3) -> U104#(X1, X2, X3))
    (U104#(mark X1, X2, X3) -> U104#(X1, X2, X3), U104#(X1, X2, active X3) -> U104#(X1, X2, X3))
    (U104#(mark X1, X2, X3) -> U104#(X1, X2, X3), U104#(X1, mark X2, X3) -> U104#(X1, X2, X3))
    (U104#(mark X1, X2, X3) -> U104#(X1, X2, X3), U104#(X1, active X2, X3) -> U104#(X1, X2, X3))
    (U104#(mark X1, X2, X3) -> U104#(X1, X2, X3), U104#(mark X1, X2, X3) -> U104#(X1, X2, X3))
    (U104#(mark X1, X2, X3) -> U104#(X1, X2, X3), U104#(active X1, X2, X3) -> U104#(X1, X2, X3))
    (U104#(X1, mark X2, X3) -> U104#(X1, X2, X3), U104#(X1, X2, mark X3) -> U104#(X1, X2, X3))
    (U104#(X1, mark X2, X3) -> U104#(X1, X2, X3), U104#(X1, X2, active X3) -> U104#(X1, X2, X3))
    (U104#(X1, mark X2, X3) -> U104#(X1, X2, X3), U104#(X1, mark X2, X3) -> U104#(X1, X2, X3))
    (U104#(X1, mark X2, X3) -> U104#(X1, X2, X3), U104#(X1, active X2, X3) -> U104#(X1, X2, X3))
    (U104#(X1, mark X2, X3) -> U104#(X1, X2, X3), U104#(mark X1, X2, X3) -> U104#(X1, X2, X3))
    (U104#(X1, mark X2, X3) -> U104#(X1, X2, X3), U104#(active X1, X2, X3) -> U104#(X1, X2, X3))
    (U104#(X1, X2, mark X3) -> U104#(X1, X2, X3), U104#(X1, X2, mark X3) -> U104#(X1, X2, X3))
    (U104#(X1, X2, mark X3) -> U104#(X1, X2, X3), U104#(X1, X2, active X3) -> U104#(X1, X2, X3))
    (U104#(X1, X2, mark X3) -> U104#(X1, X2, X3), U104#(X1, mark X2, X3) -> U104#(X1, X2, X3))
    (U104#(X1, X2, mark X3) -> U104#(X1, X2, X3), U104#(X1, active X2, X3) -> U104#(X1, X2, X3))
    (U104#(X1, X2, mark X3) -> U104#(X1, X2, X3), U104#(mark X1, X2, X3) -> U104#(X1, X2, X3))
    (U104#(X1, X2, mark X3) -> U104#(X1, X2, X3), U104#(active X1, X2, X3) -> U104#(X1, X2, X3))
    (U103#(mark X1, X2, X3) -> U103#(X1, X2, X3), U103#(X1, X2, mark X3) -> U103#(X1, X2, X3))
    (U103#(mark X1, X2, X3) -> U103#(X1, X2, X3), U103#(X1, X2, active X3) -> U103#(X1, X2, X3))
    (U103#(mark X1, X2, X3) -> U103#(X1, X2, X3), U103#(X1, mark X2, X3) -> U103#(X1, X2, X3))
    (U103#(mark X1, X2, X3) -> U103#(X1, X2, X3), U103#(X1, active X2, X3) -> U103#(X1, X2, X3))
    (U103#(mark X1, X2, X3) -> U103#(X1, X2, X3), U103#(mark X1, X2, X3) -> U103#(X1, X2, X3))
    (U103#(mark X1, X2, X3) -> U103#(X1, X2, X3), U103#(active X1, X2, X3) -> U103#(X1, X2, X3))
    (U103#(X1, mark X2, X3) -> U103#(X1, X2, X3), U103#(X1, X2, mark X3) -> U103#(X1, X2, X3))
    (U103#(X1, mark X2, X3) -> U103#(X1, X2, X3), U103#(X1, X2, active X3) -> U103#(X1, X2, X3))
    (U103#(X1, mark X2, X3) -> U103#(X1, X2, X3), U103#(X1, mark X2, X3) -> U103#(X1, X2, X3))
    (U103#(X1, mark X2, X3) -> U103#(X1, X2, X3), U103#(X1, active X2, X3) -> U103#(X1, X2, X3))
    (U103#(X1, mark X2, X3) -> U103#(X1, X2, X3), U103#(mark X1, X2, X3) -> U103#(X1, X2, X3))
    (U103#(X1, mark X2, X3) -> U103#(X1, X2, X3), U103#(active X1, X2, X3) -> U103#(X1, X2, X3))
    (U103#(X1, X2, mark X3) -> U103#(X1, X2, X3), U103#(X1, X2, mark X3) -> U103#(X1, X2, X3))
    (U103#(X1, X2, mark X3) -> U103#(X1, X2, X3), U103#(X1, X2, active X3) -> U103#(X1, X2, X3))
    (U103#(X1, X2, mark X3) -> U103#(X1, X2, X3), U103#(X1, mark X2, X3) -> U103#(X1, X2, X3))
    (U103#(X1, X2, mark X3) -> U103#(X1, X2, X3), U103#(X1, active X2, X3) -> U103#(X1, X2, X3))
    (U103#(X1, X2, mark X3) -> U103#(X1, X2, X3), U103#(mark X1, X2, X3) -> U103#(X1, X2, X3))
    (U103#(X1, X2, mark X3) -> U103#(X1, X2, X3), U103#(active X1, X2, X3) -> U103#(X1, X2, X3))
    (U101#(mark X1, X2, X3) -> U101#(X1, X2, X3), U101#(X1, X2, mark X3) -> U101#(X1, X2, X3))
    (U101#(mark X1, X2, X3) -> U101#(X1, X2, X3), U101#(X1, X2, active X3) -> U101#(X1, X2, X3))
    (U101#(mark X1, X2, X3) -> U101#(X1, X2, X3), U101#(X1, mark X2, X3) -> U101#(X1, X2, X3))
    (U101#(mark X1, X2, X3) -> U101#(X1, X2, X3), U101#(X1, active X2, X3) -> U101#(X1, X2, X3))
    (U101#(mark X1, X2, X3) -> U101#(X1, X2, X3), U101#(mark X1, X2, X3) -> U101#(X1, X2, X3))
    (U101#(mark X1, X2, X3) -> U101#(X1, X2, X3), U101#(active X1, X2, X3) -> U101#(X1, X2, X3))
    (U101#(X1, mark X2, X3) -> U101#(X1, X2, X3), U101#(X1, X2, mark X3) -> U101#(X1, X2, X3))
    (U101#(X1, mark X2, X3) -> U101#(X1, X2, X3), U101#(X1, X2, active X3) -> U101#(X1, X2, X3))
    (U101#(X1, mark X2, X3) -> U101#(X1, X2, X3), U101#(X1, mark X2, X3) -> U101#(X1, X2, X3))
    (U101#(X1, mark X2, X3) -> U101#(X1, X2, X3), U101#(X1, active X2, X3) -> U101#(X1, X2, X3))
    (U101#(X1, mark X2, X3) -> U101#(X1, X2, X3), U101#(mark X1, X2, X3) -> U101#(X1, X2, X3))
    (U101#(X1, mark X2, X3) -> U101#(X1, X2, X3), U101#(active X1, X2, X3) -> U101#(X1, X2, X3))
    (U101#(X1, X2, mark X3) -> U101#(X1, X2, X3), U101#(X1, X2, mark X3) -> U101#(X1, X2, X3))
    (U101#(X1, X2, mark X3) -> U101#(X1, X2, X3), U101#(X1, X2, active X3) -> U101#(X1, X2, X3))
    (U101#(X1, X2, mark X3) -> U101#(X1, X2, X3), U101#(X1, mark X2, X3) -> U101#(X1, X2, X3))
    (U101#(X1, X2, mark X3) -> U101#(X1, X2, X3), U101#(X1, active X2, X3) -> U101#(X1, X2, X3))
    (U101#(X1, X2, mark X3) -> U101#(X1, X2, X3), U101#(mark X1, X2, X3) -> U101#(X1, X2, X3))
    (U101#(X1, X2, mark X3) -> U101#(X1, X2, X3), U101#(active X1, X2, X3) -> U101#(X1, X2, X3))
    (U102#(mark X1, X2, X3) -> U102#(X1, X2, X3), U102#(X1, X2, mark X3) -> U102#(X1, X2, X3))
    (U102#(mark X1, X2, X3) -> U102#(X1, X2, X3), U102#(X1, X2, active X3) -> U102#(X1, X2, X3))
    (U102#(mark X1, X2, X3) -> U102#(X1, X2, X3), U102#(X1, mark X2, X3) -> U102#(X1, X2, X3))
    (U102#(mark X1, X2, X3) -> U102#(X1, X2, X3), U102#(X1, active X2, X3) -> U102#(X1, X2, X3))
    (U102#(mark X1, X2, X3) -> U102#(X1, X2, X3), U102#(mark X1, X2, X3) -> U102#(X1, X2, X3))
    (U102#(mark X1, X2, X3) -> U102#(X1, X2, X3), U102#(active X1, X2, X3) -> U102#(X1, X2, X3))
    (U102#(X1, mark X2, X3) -> U102#(X1, X2, X3), U102#(X1, X2, mark X3) -> U102#(X1, X2, X3))
    (U102#(X1, mark X2, X3) -> U102#(X1, X2, X3), U102#(X1, X2, active X3) -> U102#(X1, X2, X3))
    (U102#(X1, mark X2, X3) -> U102#(X1, X2, X3), U102#(X1, mark X2, X3) -> U102#(X1, X2, X3))
    (U102#(X1, mark X2, X3) -> U102#(X1, X2, X3), U102#(X1, active X2, X3) -> U102#(X1, X2, X3))
    (U102#(X1, mark X2, X3) -> U102#(X1, X2, X3), U102#(mark X1, X2, X3) -> U102#(X1, X2, X3))
    (U102#(X1, mark X2, X3) -> U102#(X1, X2, X3), U102#(active X1, X2, X3) -> U102#(X1, X2, X3))
    (U102#(X1, X2, mark X3) -> U102#(X1, X2, X3), U102#(X1, X2, mark X3) -> U102#(X1, X2, X3))
    (U102#(X1, X2, mark X3) -> U102#(X1, X2, X3), U102#(X1, X2, active X3) -> U102#(X1, X2, X3))
    (U102#(X1, X2, mark X3) -> U102#(X1, X2, X3), U102#(X1, mark X2, X3) -> U102#(X1, X2, X3))
    (U102#(X1, X2, mark X3) -> U102#(X1, X2, X3), U102#(X1, active X2, X3) -> U102#(X1, X2, X3))
    (U102#(X1, X2, mark X3) -> U102#(X1, X2, X3), U102#(mark X1, X2, X3) -> U102#(X1, X2, X3))
    (U102#(X1, X2, mark X3) -> U102#(X1, X2, X3), U102#(active X1, X2, X3) -> U102#(X1, X2, X3))
    (mark# U93(X1, X2, X3) -> U93#(mark X1, X2, X3), U93#(X1, X2, mark X3) -> U93#(X1, X2, X3))
    (mark# U93(X1, X2, X3) -> U93#(mark X1, X2, X3), U93#(X1, X2, active X3) -> U93#(X1, X2, X3))
    (mark# U93(X1, X2, X3) -> U93#(mark X1, X2, X3), U93#(X1, mark X2, X3) -> U93#(X1, X2, X3))
    (mark# U93(X1, X2, X3) -> U93#(mark X1, X2, X3), U93#(X1, active X2, X3) -> U93#(X1, X2, X3))
    (mark# U93(X1, X2, X3) -> U93#(mark X1, X2, X3), U93#(mark X1, X2, X3) -> U93#(X1, X2, X3))
    (mark# U93(X1, X2, X3) -> U93#(mark X1, X2, X3), U93#(active X1, X2, X3) -> U93#(X1, X2, X3))
    (mark# U92(X1, X2, X3) -> U92#(mark X1, X2, X3), U92#(X1, X2, mark X3) -> U92#(X1, X2, X3))
    (mark# U92(X1, X2, X3) -> U92#(mark X1, X2, X3), U92#(X1, X2, active X3) -> U92#(X1, X2, X3))
    (mark# U92(X1, X2, X3) -> U92#(mark X1, X2, X3), U92#(X1, mark X2, X3) -> U92#(X1, X2, X3))
    (mark# U92(X1, X2, X3) -> U92#(mark X1, X2, X3), U92#(X1, active X2, X3) -> U92#(X1, X2, X3))
    (mark# U92(X1, X2, X3) -> U92#(mark X1, X2, X3), U92#(mark X1, X2, X3) -> U92#(X1, X2, X3))
    (mark# U92(X1, X2, X3) -> U92#(mark X1, X2, X3), U92#(active X1, X2, X3) -> U92#(X1, X2, X3))
    (mark# U43(X1, X2, X3) -> U43#(mark X1, X2, X3), U43#(X1, X2, mark X3) -> U43#(X1, X2, X3))
    (mark# U43(X1, X2, X3) -> U43#(mark X1, X2, X3), U43#(X1, X2, active X3) -> U43#(X1, X2, X3))
    (mark# U43(X1, X2, X3) -> U43#(mark X1, X2, X3), U43#(X1, mark X2, X3) -> U43#(X1, X2, X3))
    (mark# U43(X1, X2, X3) -> U43#(mark X1, X2, X3), U43#(X1, active X2, X3) -> U43#(X1, X2, X3))
    (mark# U43(X1, X2, X3) -> U43#(mark X1, X2, X3), U43#(mark X1, X2, X3) -> U43#(X1, X2, X3))
    (mark# U43(X1, X2, X3) -> U43#(mark X1, X2, X3), U43#(active X1, X2, X3) -> U43#(X1, X2, X3))
    (mark# U42(X1, X2, X3) -> U42#(mark X1, X2, X3), U42#(X1, X2, mark X3) -> U42#(X1, X2, X3))
    (mark# U42(X1, X2, X3) -> U42#(mark X1, X2, X3), U42#(X1, X2, active X3) -> U42#(X1, X2, X3))
    (mark# U42(X1, X2, X3) -> U42#(mark X1, X2, X3), U42#(X1, mark X2, X3) -> U42#(X1, X2, X3))
    (mark# U42(X1, X2, X3) -> U42#(mark X1, X2, X3), U42#(X1, active X2, X3) -> U42#(X1, X2, X3))
    (mark# U42(X1, X2, X3) -> U42#(mark X1, X2, X3), U42#(mark X1, X2, X3) -> U42#(X1, X2, X3))
    (mark# U42(X1, X2, X3) -> U42#(mark X1, X2, X3), U42#(active X1, X2, X3) -> U42#(X1, X2, X3))
    (mark# U111(X1, X2, X3) -> U111#(mark X1, X2, X3), U111#(X1, X2, mark X3) -> U111#(X1, X2, X3))
    (mark# U111(X1, X2, X3) -> U111#(mark X1, X2, X3), U111#(X1, X2, active X3) -> U111#(X1, X2, X3))
    (mark# U111(X1, X2, X3) -> U111#(mark X1, X2, X3), U111#(X1, mark X2, X3) -> U111#(X1, X2, X3))
    (mark# U111(X1, X2, X3) -> U111#(mark X1, X2, X3), U111#(X1, active X2, X3) -> U111#(X1, X2, X3))
    (mark# U111(X1, X2, X3) -> U111#(mark X1, X2, X3), U111#(mark X1, X2, X3) -> U111#(X1, X2, X3))
    (mark# U111(X1, X2, X3) -> U111#(mark X1, X2, X3), U111#(active X1, X2, X3) -> U111#(X1, X2, X3))
    (mark# U104(X1, X2, X3) -> U104#(mark X1, X2, X3), U104#(X1, X2, mark X3) -> U104#(X1, X2, X3))
    (mark# U104(X1, X2, X3) -> U104#(mark X1, X2, X3), U104#(X1, X2, active X3) -> U104#(X1, X2, X3))
    (mark# U104(X1, X2, X3) -> U104#(mark X1, X2, X3), U104#(X1, mark X2, X3) -> U104#(X1, X2, X3))
    (mark# U104(X1, X2, X3) -> U104#(mark X1, X2, X3), U104#(X1, active X2, X3) -> U104#(X1, X2, X3))
    (mark# U104(X1, X2, X3) -> U104#(mark X1, X2, X3), U104#(mark X1, X2, X3) -> U104#(X1, X2, X3))
    (mark# U104(X1, X2, X3) -> U104#(mark X1, X2, X3), U104#(active X1, X2, X3) -> U104#(X1, X2, X3))
    (mark# U101(X1, X2, X3) -> U101#(mark X1, X2, X3), U101#(X1, X2, mark X3) -> U101#(X1, X2, X3))
    (mark# U101(X1, X2, X3) -> U101#(mark X1, X2, X3), U101#(X1, X2, active X3) -> U101#(X1, X2, X3))
    (mark# U101(X1, X2, X3) -> U101#(mark X1, X2, X3), U101#(X1, mark X2, X3) -> U101#(X1, X2, X3))
    (mark# U101(X1, X2, X3) -> U101#(mark X1, X2, X3), U101#(X1, active X2, X3) -> U101#(X1, X2, X3))
    (mark# U101(X1, X2, X3) -> U101#(mark X1, X2, X3), U101#(mark X1, X2, X3) -> U101#(X1, X2, X3))
    (mark# U101(X1, X2, X3) -> U101#(mark X1, X2, X3), U101#(active X1, X2, X3) -> U101#(X1, X2, X3))
    (active# U31(tt(), V) -> U32#(isNatIListKind V, V), U32#(X1, mark X2) -> U32#(X1, X2))
    (active# U31(tt(), V) -> U32#(isNatIListKind V, V), U32#(X1, active X2) -> U32#(X1, X2))
    (mark# U95(X1, X2) -> mark# X1, mark# cons(X1, X2) -> mark# X1)
    (mark# U95(X1, X2) -> mark# X1, mark# cons(X1, X2) -> cons#(mark X1, X2))
    (mark# U95(X1, X2) -> mark# X1, mark# cons(X1, X2) -> active# cons(mark X1, X2))
    (mark# U95(X1, X2) -> mark# X1, mark# 0() -> active# 0())
    (mark# U95(X1, X2) -> mark# X1, mark# zeros() -> active# zeros())
    (mark# U95(X1, X2) -> mark# X1, mark# U102(X1, X2, X3) -> mark# X1)
    (mark# U95(X1, X2) -> mark# X1, mark# U102(X1, X2, X3) -> active# U102(mark X1, X2, X3))
    (mark# U95(X1, X2) -> mark# X1, mark# U102(X1, X2, X3) -> U102#(mark X1, X2, X3))
    (mark# U95(X1, X2) -> mark# X1, mark# isNatKind X -> active# isNatKind X)
    (mark# U95(X1, X2) -> mark# X1, mark# U101(X1, X2, X3) -> mark# X1)
    (mark# U95(X1, X2) -> mark# X1, mark# U101(X1, X2, X3) -> active# U101(mark X1, X2, X3))
    (mark# U95(X1, X2) -> mark# X1, mark# U101(X1, X2, X3) -> U101#(mark X1, X2, X3))
    (mark# U95(X1, X2) -> mark# X1, mark# tt() -> active# tt())
    (mark# U95(X1, X2) -> mark# X1, mark# U103(X1, X2, X3) -> mark# X1)
    (mark# U95(X1, X2) -> mark# X1, mark# U103(X1, X2, X3) -> active# U103(mark X1, X2, X3))
    (mark# U95(X1, X2) -> mark# X1, mark# U103(X1, X2, X3) -> U103#(mark X1, X2, X3))
    (mark# U95(X1, X2) -> mark# X1, mark# isNatIListKind X -> active# isNatIListKind X)
    (mark# U95(X1, X2) -> mark# X1, mark# U104(X1, X2, X3) -> mark# X1)
    (mark# U95(X1, X2) -> mark# X1, mark# U104(X1, X2, X3) -> active# U104(mark X1, X2, X3))
    (mark# U95(X1, X2) -> mark# X1, mark# U104(X1, X2, X3) -> U104#(mark X1, X2, X3))
    (mark# U95(X1, X2) -> mark# X1, mark# U105(X1, X2) -> mark# X1)
    (mark# U95(X1, X2) -> mark# X1, mark# U105(X1, X2) -> active# U105(mark X1, X2))
    (mark# U95(X1, X2) -> mark# X1, mark# U105(X1, X2) -> U105#(mark X1, X2))
    (mark# U95(X1, X2) -> mark# X1, mark# isNat X -> active# isNat X)
    (mark# U95(X1, X2) -> mark# X1, mark# U106 X -> mark# X)
    (mark# U95(X1, X2) -> mark# X1, mark# U106 X -> active# U106 mark X)
    (mark# U95(X1, X2) -> mark# X1, mark# U106 X -> U106# mark X)
    (mark# U95(X1, X2) -> mark# X1, mark# isNatIList X -> active# isNatIList X)
    (mark# U95(X1, X2) -> mark# X1, mark# U12(X1, X2) -> mark# X1)
    (mark# U95(X1, X2) -> mark# X1, mark# U12(X1, X2) -> active# U12(mark X1, X2))
    (mark# U95(X1, X2) -> mark# X1, mark# U12(X1, X2) -> U12#(mark X1, X2))
    (mark# U95(X1, X2) -> mark# X1, mark# U11(X1, X2) -> mark# X1)
    (mark# U95(X1, X2) -> mark# X1, mark# U11(X1, X2) -> active# U11(mark X1, X2))
    (mark# U95(X1, X2) -> mark# X1, mark# U11(X1, X2) -> U11#(mark X1, X2))
    (mark# U95(X1, X2) -> mark# X1, mark# U112(X1, X2, X3) -> mark# X1)
    (mark# U95(X1, X2) -> mark# X1, mark# U112(X1, X2, X3) -> active# U112(mark X1, X2, X3))
    (mark# U95(X1, X2) -> mark# X1, mark# U112(X1, X2, X3) -> U112#(mark X1, X2, X3))
    (mark# U95(X1, X2) -> mark# X1, mark# U111(X1, X2, X3) -> mark# X1)
    (mark# U95(X1, X2) -> mark# X1, mark# U111(X1, X2, X3) -> active# U111(mark X1, X2, X3))
    (mark# U95(X1, X2) -> mark# X1, mark# U111(X1, X2, X3) -> U111#(mark X1, X2, X3))
    (mark# U95(X1, X2) -> mark# X1, mark# U113(X1, X2, X3) -> mark# X1)
    (mark# U95(X1, X2) -> mark# X1, mark# U113(X1, X2, X3) -> active# U113(mark X1, X2, X3))
    (mark# U95(X1, X2) -> mark# X1, mark# U113(X1, X2, X3) -> U113#(mark X1, X2, X3))
    (mark# U95(X1, X2) -> mark# X1, mark# U114(X1, X2) -> mark# X1)
    (mark# U95(X1, X2) -> mark# X1, mark# U114(X1, X2) -> active# U114(mark X1, X2))
    (mark# U95(X1, X2) -> mark# X1, mark# U114(X1, X2) -> U114#(mark X1, X2))
    (mark# U95(X1, X2) -> mark# X1, mark# s X -> mark# X)
    (mark# U95(X1, X2) -> mark# X1, mark# s X -> active# s mark X)
    (mark# U95(X1, X2) -> mark# X1, mark# s X -> s# mark X)
    (mark# U95(X1, X2) -> mark# X1, mark# length X -> mark# X)
    (mark# U95(X1, X2) -> mark# X1, mark# length X -> active# length mark X)
    (mark# U95(X1, X2) -> mark# X1, mark# length X -> length# mark X)
    (mark# U95(X1, X2) -> mark# X1, mark# U13 X -> mark# X)
    (mark# U95(X1, X2) -> mark# X1, mark# U13 X -> active# U13 mark X)
    (mark# U95(X1, X2) -> mark# X1, mark# U13 X -> U13# mark X)
    (mark# U95(X1, X2) -> mark# X1, mark# isNatList X -> active# isNatList X)
    (mark# U95(X1, X2) -> mark# X1, mark# U122 X -> mark# X)
    (mark# U95(X1, X2) -> mark# X1, mark# U122 X -> active# U122 mark X)
    (mark# U95(X1, X2) -> mark# X1, mark# U122 X -> U122# mark X)
    (mark# U95(X1, X2) -> mark# X1, mark# U121(X1, X2) -> mark# X1)
    (mark# U95(X1, X2) -> mark# X1, mark# U121(X1, X2) -> active# U121(mark X1, X2))
    (mark# U95(X1, X2) -> mark# X1, mark# U121(X1, X2) -> U121#(mark X1, X2))
    (mark# U95(X1, X2) -> mark# X1, mark# nil() -> active# nil())
    (mark# U95(X1, X2) -> mark# X1, mark# U132(X1, X2, X3, X4) -> mark# X1)
    (mark# U95(X1, X2) -> mark# X1, mark# U132(X1, X2, X3, X4) -> active# U132(mark X1, X2, X3, X4))
    (mark# U95(X1, X2) -> mark# X1, mark# U132(X1, X2, X3, X4) -> U132#(mark X1, X2, X3, X4))
    (mark# U95(X1, X2) -> mark# X1, mark# U131(X1, X2, X3, X4) -> mark# X1)
    (mark# U95(X1, X2) -> mark# X1, mark# U131(X1, X2, X3, X4) -> active# U131(mark X1, X2, X3, X4))
    (mark# U95(X1, X2) -> mark# X1, mark# U131(X1, X2, X3, X4) -> U131#(mark X1, X2, X3, X4))
    (mark# U95(X1, X2) -> mark# X1, mark# U133(X1, X2, X3, X4) -> mark# X1)
    (mark# U95(X1, X2) -> mark# X1, mark# U133(X1, X2, X3, X4) -> active# U133(mark X1, X2, X3, X4))
    (mark# U95(X1, X2) -> mark# X1, mark# U133(X1, X2, X3, X4) -> U133#(mark X1, X2, X3, X4))
    (mark# U95(X1, X2) -> mark# X1, mark# U134(X1, X2, X3, X4) -> mark# X1)
    (mark# U95(X1, X2) -> mark# X1, mark# U134(X1, X2, X3, X4) -> active# U134(mark X1, X2, X3, X4))
    (mark# U95(X1, X2) -> mark# X1, mark# U134(X1, X2, X3, X4) -> U134#(mark X1, X2, X3, X4))
    (mark# U95(X1, X2) -> mark# X1, mark# U135(X1, X2, X3, X4) -> mark# X1)
    (mark# U95(X1, X2) -> mark# X1, mark# U135(X1, X2, X3, X4) -> active# U135(mark X1, X2, X3, X4))
    (mark# U95(X1, X2) -> mark# X1, mark# U135(X1, X2, X3, X4) -> U135#(mark X1, X2, X3, X4))
    (mark# U95(X1, X2) -> mark# X1, mark# U136(X1, X2, X3, X4) -> mark# X1)
    (mark# U95(X1, X2) -> mark# X1, mark# U136(X1, X2, X3, X4) -> active# U136(mark X1, X2, X3, X4))
    (mark# U95(X1, X2) -> mark# X1, mark# U136(X1, X2, X3, X4) -> U136#(mark X1, X2, X3, X4))
    (mark# U95(X1, X2) -> mark# X1, mark# take(X1, X2) -> mark# X1)
    (mark# U95(X1, X2) -> mark# X1, mark# take(X1, X2) -> mark# X2)
    (mark# U95(X1, X2) -> mark# X1, mark# take(X1, X2) -> active# take(mark X1, mark X2))
    (mark# U95(X1, X2) -> mark# X1, mark# take(X1, X2) -> take#(mark X1, mark X2))
    (mark# U95(X1, X2) -> mark# X1, mark# U22(X1, X2) -> mark# X1)
    (mark# U95(X1, X2) -> mark# X1, mark# U22(X1, X2) -> active# U22(mark X1, X2))
    (mark# U95(X1, X2) -> mark# X1, mark# U22(X1, X2) -> U22#(mark X1, X2))
    (mark# U95(X1, X2) -> mark# X1, mark# U21(X1, X2) -> mark# X1)
    (mark# U95(X1, X2) -> mark# X1, mark# U21(X1, X2) -> active# U21(mark X1, X2))
    (mark# U95(X1, X2) -> mark# X1, mark# U21(X1, X2) -> U21#(mark X1, X2))
    (mark# U95(X1, X2) -> mark# X1, mark# U23 X -> mark# X)
    (mark# U95(X1, X2) -> mark# X1, mark# U23 X -> active# U23 mark X)
    (mark# U95(X1, X2) -> mark# X1, mark# U23 X -> U23# mark X)
    (mark# U95(X1, X2) -> mark# X1, mark# U32(X1, X2) -> mark# X1)
    (mark# U95(X1, X2) -> mark# X1, mark# U32(X1, X2) -> active# U32(mark X1, X2))
    (mark# U95(X1, X2) -> mark# X1, mark# U32(X1, X2) -> U32#(mark X1, X2))
    (mark# U95(X1, X2) -> mark# X1, mark# U31(X1, X2) -> mark# X1)
    (mark# U95(X1, X2) -> mark# X1, mark# U31(X1, X2) -> active# U31(mark X1, X2))
    (mark# U95(X1, X2) -> mark# X1, mark# U31(X1, X2) -> U31#(mark X1, X2))
    (mark# U95(X1, X2) -> mark# X1, mark# U33 X -> mark# X)
    (mark# U95(X1, X2) -> mark# X1, mark# U33 X -> active# U33 mark X)
    (mark# U95(X1, X2) -> mark# X1, mark# U33 X -> U33# mark X)
    (mark# U95(X1, X2) -> mark# X1, mark# U42(X1, X2, X3) -> mark# X1)
    (mark# U95(X1, X2) -> mark# X1, mark# U42(X1, X2, X3) -> active# U42(mark X1, X2, X3))
    (mark# U95(X1, X2) -> mark# X1, mark# U42(X1, X2, X3) -> U42#(mark X1, X2, X3))
    (mark# U95(X1, X2) -> mark# X1, mark# U41(X1, X2, X3) -> mark# X1)
    (mark# U95(X1, X2) -> mark# X1, mark# U41(X1, X2, X3) -> active# U41(mark X1, X2, X3))
    (mark# U95(X1, X2) -> mark# X1, mark# U41(X1, X2, X3) -> U41#(mark X1, X2, X3))
    (mark# U95(X1, X2) -> mark# X1, mark# U43(X1, X2, X3) -> mark# X1)
    (mark# U95(X1, X2) -> mark# X1, mark# U43(X1, X2, X3) -> active# U43(mark X1, X2, X3))
    (mark# U95(X1, X2) -> mark# X1, mark# U43(X1, X2, X3) -> U43#(mark X1, X2, X3))
    (mark# U95(X1, X2) -> mark# X1, mark# U44(X1, X2, X3) -> mark# X1)
    (mark# U95(X1, X2) -> mark# X1, mark# U44(X1, X2, X3) -> active# U44(mark X1, X2, X3))
    (mark# U95(X1, X2) -> mark# X1, mark# U44(X1, X2, X3) -> U44#(mark X1, X2, X3))
    (mark# U95(X1, X2) -> mark# X1, mark# U45(X1, X2) -> mark# X1)
    (mark# U95(X1, X2) -> mark# X1, mark# U45(X1, X2) -> active# U45(mark X1, X2))
    (mark# U95(X1, X2) -> mark# X1, mark# U45(X1, X2) -> U45#(mark X1, X2))
    (mark# U95(X1, X2) -> mark# X1, mark# U46 X -> mark# X)
    (mark# U95(X1, X2) -> mark# X1, mark# U46 X -> active# U46 mark X)
    (mark# U95(X1, X2) -> mark# X1, mark# U46 X -> U46# mark X)
    (mark# U95(X1, X2) -> mark# X1, mark# U52 X -> mark# X)
    (mark# U95(X1, X2) -> mark# X1, mark# U52 X -> active# U52 mark X)
    (mark# U95(X1, X2) -> mark# X1, mark# U52 X -> U52# mark X)
    (mark# U95(X1, X2) -> mark# X1, mark# U51(X1, X2) -> mark# X1)
    (mark# U95(X1, X2) -> mark# X1, mark# U51(X1, X2) -> active# U51(mark X1, X2))
    (mark# U95(X1, X2) -> mark# X1, mark# U51(X1, X2) -> U51#(mark X1, X2))
    (mark# U95(X1, X2) -> mark# X1, mark# U62 X -> mark# X)
    (mark# U95(X1, X2) -> mark# X1, mark# U62 X -> active# U62 mark X)
    (mark# U95(X1, X2) -> mark# X1, mark# U62 X -> U62# mark X)
    (mark# U95(X1, X2) -> mark# X1, mark# U61(X1, X2) -> mark# X1)
    (mark# U95(X1, X2) -> mark# X1, mark# U61(X1, X2) -> active# U61(mark X1, X2))
    (mark# U95(X1, X2) -> mark# X1, mark# U61(X1, X2) -> U61#(mark X1, X2))
    (mark# U95(X1, X2) -> mark# X1, mark# U71 X -> mark# X)
    (mark# U95(X1, X2) -> mark# X1, mark# U71 X -> active# U71 mark X)
    (mark# U95(X1, X2) -> mark# X1, mark# U71 X -> U71# mark X)
    (mark# U95(X1, X2) -> mark# X1, mark# U81 X -> mark# X)
    (mark# U95(X1, X2) -> mark# X1, mark# U81 X -> active# U81 mark X)
    (mark# U95(X1, X2) -> mark# X1, mark# U81 X -> U81# mark X)
    (mark# U95(X1, X2) -> mark# X1, mark# U92(X1, X2, X3) -> mark# X1)
    (mark# U95(X1, X2) -> mark# X1, mark# U92(X1, X2, X3) -> active# U92(mark X1, X2, X3))
    (mark# U95(X1, X2) -> mark# X1, mark# U92(X1, X2, X3) -> U92#(mark X1, X2, X3))
    (mark# U95(X1, X2) -> mark# X1, mark# U91(X1, X2, X3) -> mark# X1)
    (mark# U95(X1, X2) -> mark# X1, mark# U91(X1, X2, X3) -> active# U91(mark X1, X2, X3))
    (mark# U95(X1, X2) -> mark# X1, mark# U91(X1, X2, X3) -> U91#(mark X1, X2, X3))
    (mark# U95(X1, X2) -> mark# X1, mark# U93(X1, X2, X3) -> mark# X1)
    (mark# U95(X1, X2) -> mark# X1, mark# U93(X1, X2, X3) -> active# U93(mark X1, X2, X3))
    (mark# U95(X1, X2) -> mark# X1, mark# U93(X1, X2, X3) -> U93#(mark X1, X2, X3))
    (mark# U95(X1, X2) -> mark# X1, mark# U94(X1, X2, X3) -> mark# X1)
    (mark# U95(X1, X2) -> mark# X1, mark# U94(X1, X2, X3) -> active# U94(mark X1, X2, X3))
    (mark# U95(X1, X2) -> mark# X1, mark# U94(X1, X2, X3) -> U94#(mark X1, X2, X3))
    (mark# U95(X1, X2) -> mark# X1, mark# U95(X1, X2) -> mark# X1)
    (mark# U95(X1, X2) -> mark# X1, mark# U95(X1, X2) -> active# U95(mark X1, X2))
    (mark# U95(X1, X2) -> mark# X1, mark# U95(X1, X2) -> U95#(mark X1, X2))
    (mark# U95(X1, X2) -> mark# X1, mark# U96 X -> mark# X)
    (mark# U95(X1, X2) -> mark# X1, mark# U96 X -> active# U96 mark X)
    (mark# U95(X1, X2) -> mark# X1, mark# U96 X -> U96# mark X)
    (mark# U93(X1, X2, X3) -> mark# X1, mark# cons(X1, X2) -> mark# X1)
    (mark# U93(X1, X2, X3) -> mark# X1, mark# cons(X1, X2) -> cons#(mark X1, X2))
    (mark# U93(X1, X2, X3) -> mark# X1, mark# cons(X1, X2) -> active# cons(mark X1, X2))
    (mark# U93(X1, X2, X3) -> mark# X1, mark# 0() -> active# 0())
    (mark# U93(X1, X2, X3) -> mark# X1, mark# zeros() -> active# zeros())
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U102(X1, X2, X3) -> mark# X1)
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U102(X1, X2, X3) -> active# U102(mark X1, X2, X3))
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U102(X1, X2, X3) -> U102#(mark X1, X2, X3))
    (mark# U93(X1, X2, X3) -> mark# X1, mark# isNatKind X -> active# isNatKind X)
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U101(X1, X2, X3) -> mark# X1)
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U101(X1, X2, X3) -> active# U101(mark X1, X2, X3))
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U101(X1, X2, X3) -> U101#(mark X1, X2, X3))
    (mark# U93(X1, X2, X3) -> mark# X1, mark# tt() -> active# tt())
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U103(X1, X2, X3) -> mark# X1)
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U103(X1, X2, X3) -> active# U103(mark X1, X2, X3))
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U103(X1, X2, X3) -> U103#(mark X1, X2, X3))
    (mark# U93(X1, X2, X3) -> mark# X1, mark# isNatIListKind X -> active# isNatIListKind X)
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U104(X1, X2, X3) -> mark# X1)
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U104(X1, X2, X3) -> active# U104(mark X1, X2, X3))
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U104(X1, X2, X3) -> U104#(mark X1, X2, X3))
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U105(X1, X2) -> mark# X1)
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U105(X1, X2) -> active# U105(mark X1, X2))
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U105(X1, X2) -> U105#(mark X1, X2))
    (mark# U93(X1, X2, X3) -> mark# X1, mark# isNat X -> active# isNat X)
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U106 X -> mark# X)
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U106 X -> active# U106 mark X)
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U106 X -> U106# mark X)
    (mark# U93(X1, X2, X3) -> mark# X1, mark# isNatIList X -> active# isNatIList X)
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U12(X1, X2) -> mark# X1)
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U12(X1, X2) -> active# U12(mark X1, X2))
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U12(X1, X2) -> U12#(mark X1, X2))
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U11(X1, X2) -> mark# X1)
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U11(X1, X2) -> active# U11(mark X1, X2))
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U11(X1, X2) -> U11#(mark X1, X2))
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U112(X1, X2, X3) -> mark# X1)
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U112(X1, X2, X3) -> active# U112(mark X1, X2, X3))
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U112(X1, X2, X3) -> U112#(mark X1, X2, X3))
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U111(X1, X2, X3) -> mark# X1)
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U111(X1, X2, X3) -> active# U111(mark X1, X2, X3))
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U111(X1, X2, X3) -> U111#(mark X1, X2, X3))
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U113(X1, X2, X3) -> mark# X1)
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U113(X1, X2, X3) -> active# U113(mark X1, X2, X3))
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U113(X1, X2, X3) -> U113#(mark X1, X2, X3))
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U114(X1, X2) -> mark# X1)
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U114(X1, X2) -> active# U114(mark X1, X2))
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U114(X1, X2) -> U114#(mark X1, X2))
    (mark# U93(X1, X2, X3) -> mark# X1, mark# s X -> mark# X)
    (mark# U93(X1, X2, X3) -> mark# X1, mark# s X -> active# s mark X)
    (mark# U93(X1, X2, X3) -> mark# X1, mark# s X -> s# mark X)
    (mark# U93(X1, X2, X3) -> mark# X1, mark# length X -> mark# X)
    (mark# U93(X1, X2, X3) -> mark# X1, mark# length X -> active# length mark X)
    (mark# U93(X1, X2, X3) -> mark# X1, mark# length X -> length# mark X)
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U13 X -> mark# X)
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U13 X -> active# U13 mark X)
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U13 X -> U13# mark X)
    (mark# U93(X1, X2, X3) -> mark# X1, mark# isNatList X -> active# isNatList X)
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U122 X -> mark# X)
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U122 X -> active# U122 mark X)
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U122 X -> U122# mark X)
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U121(X1, X2) -> mark# X1)
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U121(X1, X2) -> active# U121(mark X1, X2))
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U121(X1, X2) -> U121#(mark X1, X2))
    (mark# U93(X1, X2, X3) -> mark# X1, mark# nil() -> active# nil())
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U132(X1, X2, X3, X4) -> mark# X1)
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U132(X1, X2, X3, X4) -> active# U132(mark X1, X2, X3, X4))
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U132(X1, X2, X3, X4) -> U132#(mark X1, X2, X3, X4))
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U131(X1, X2, X3, X4) -> mark# X1)
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U131(X1, X2, X3, X4) -> active# U131(mark X1, X2, X3, X4))
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U131(X1, X2, X3, X4) -> U131#(mark X1, X2, X3, X4))
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U133(X1, X2, X3, X4) -> mark# X1)
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U133(X1, X2, X3, X4) -> active# U133(mark X1, X2, X3, X4))
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U133(X1, X2, X3, X4) -> U133#(mark X1, X2, X3, X4))
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U134(X1, X2, X3, X4) -> mark# X1)
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U134(X1, X2, X3, X4) -> active# U134(mark X1, X2, X3, X4))
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U134(X1, X2, X3, X4) -> U134#(mark X1, X2, X3, X4))
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U135(X1, X2, X3, X4) -> mark# X1)
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U135(X1, X2, X3, X4) -> active# U135(mark X1, X2, X3, X4))
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U135(X1, X2, X3, X4) -> U135#(mark X1, X2, X3, X4))
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U136(X1, X2, X3, X4) -> mark# X1)
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U136(X1, X2, X3, X4) -> active# U136(mark X1, X2, X3, X4))
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U136(X1, X2, X3, X4) -> U136#(mark X1, X2, X3, X4))
    (mark# U93(X1, X2, X3) -> mark# X1, mark# take(X1, X2) -> mark# X1)
    (mark# U93(X1, X2, X3) -> mark# X1, mark# take(X1, X2) -> mark# X2)
    (mark# U93(X1, X2, X3) -> mark# X1, mark# take(X1, X2) -> active# take(mark X1, mark X2))
    (mark# U93(X1, X2, X3) -> mark# X1, mark# take(X1, X2) -> take#(mark X1, mark X2))
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U22(X1, X2) -> mark# X1)
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U22(X1, X2) -> active# U22(mark X1, X2))
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U22(X1, X2) -> U22#(mark X1, X2))
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U21(X1, X2) -> mark# X1)
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U21(X1, X2) -> active# U21(mark X1, X2))
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U21(X1, X2) -> U21#(mark X1, X2))
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U23 X -> mark# X)
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U23 X -> active# U23 mark X)
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U23 X -> U23# mark X)
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U32(X1, X2) -> mark# X1)
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U32(X1, X2) -> active# U32(mark X1, X2))
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U32(X1, X2) -> U32#(mark X1, X2))
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U31(X1, X2) -> mark# X1)
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U31(X1, X2) -> active# U31(mark X1, X2))
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U31(X1, X2) -> U31#(mark X1, X2))
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U33 X -> mark# X)
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U33 X -> active# U33 mark X)
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U33 X -> U33# mark X)
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U42(X1, X2, X3) -> mark# X1)
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U42(X1, X2, X3) -> active# U42(mark X1, X2, X3))
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U42(X1, X2, X3) -> U42#(mark X1, X2, X3))
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U41(X1, X2, X3) -> mark# X1)
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U41(X1, X2, X3) -> active# U41(mark X1, X2, X3))
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U41(X1, X2, X3) -> U41#(mark X1, X2, X3))
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U43(X1, X2, X3) -> mark# X1)
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U43(X1, X2, X3) -> active# U43(mark X1, X2, X3))
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U43(X1, X2, X3) -> U43#(mark X1, X2, X3))
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U44(X1, X2, X3) -> mark# X1)
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U44(X1, X2, X3) -> active# U44(mark X1, X2, X3))
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U44(X1, X2, X3) -> U44#(mark X1, X2, X3))
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U45(X1, X2) -> mark# X1)
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U45(X1, X2) -> active# U45(mark X1, X2))
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U45(X1, X2) -> U45#(mark X1, X2))
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U46 X -> mark# X)
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U46 X -> active# U46 mark X)
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U46 X -> U46# mark X)
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U52 X -> mark# X)
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U52 X -> active# U52 mark X)
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U52 X -> U52# mark X)
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U51(X1, X2) -> mark# X1)
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U51(X1, X2) -> active# U51(mark X1, X2))
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U51(X1, X2) -> U51#(mark X1, X2))
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U62 X -> mark# X)
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U62 X -> active# U62 mark X)
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U62 X -> U62# mark X)
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U61(X1, X2) -> mark# X1)
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U61(X1, X2) -> active# U61(mark X1, X2))
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U61(X1, X2) -> U61#(mark X1, X2))
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U71 X -> mark# X)
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U71 X -> active# U71 mark X)
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U71 X -> U71# mark X)
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U81 X -> mark# X)
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U81 X -> active# U81 mark X)
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U81 X -> U81# mark X)
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U92(X1, X2, X3) -> mark# X1)
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U92(X1, X2, X3) -> active# U92(mark X1, X2, X3))
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U92(X1, X2, X3) -> U92#(mark X1, X2, X3))
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U91(X1, X2, X3) -> mark# X1)
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U91(X1, X2, X3) -> active# U91(mark X1, X2, X3))
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U91(X1, X2, X3) -> U91#(mark X1, X2, X3))
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U93(X1, X2, X3) -> mark# X1)
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U93(X1, X2, X3) -> active# U93(mark X1, X2, X3))
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U93(X1, X2, X3) -> U93#(mark X1, X2, X3))
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U94(X1, X2, X3) -> mark# X1)
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U94(X1, X2, X3) -> active# U94(mark X1, X2, X3))
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U94(X1, X2, X3) -> U94#(mark X1, X2, X3))
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U95(X1, X2) -> mark# X1)
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U95(X1, X2) -> active# U95(mark X1, X2))
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U95(X1, X2) -> U95#(mark X1, X2))
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U96 X -> mark# X)
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U96 X -> active# U96 mark X)
    (mark# U93(X1, X2, X3) -> mark# X1, mark# U96 X -> U96# mark X)
    (mark# U92(X1, X2, X3) -> mark# X1, mark# cons(X1, X2) -> mark# X1)
    (mark# U92(X1, X2, X3) -> mark# X1, mark# cons(X1, X2) -> cons#(mark X1, X2))
    (mark# U92(X1, X2, X3) -> mark# X1, mark# cons(X1, X2) -> active# cons(mark X1, X2))
    (mark# U92(X1, X2, X3) -> mark# X1, mark# 0() -> active# 0())
    (mark# U92(X1, X2, X3) -> mark# X1, mark# zeros() -> active# zeros())
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U102(X1, X2, X3) -> mark# X1)
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U102(X1, X2, X3) -> active# U102(mark X1, X2, X3))
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U102(X1, X2, X3) -> U102#(mark X1, X2, X3))
    (mark# U92(X1, X2, X3) -> mark# X1, mark# isNatKind X -> active# isNatKind X)
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U101(X1, X2, X3) -> mark# X1)
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U101(X1, X2, X3) -> active# U101(mark X1, X2, X3))
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U101(X1, X2, X3) -> U101#(mark X1, X2, X3))
    (mark# U92(X1, X2, X3) -> mark# X1, mark# tt() -> active# tt())
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U103(X1, X2, X3) -> mark# X1)
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U103(X1, X2, X3) -> active# U103(mark X1, X2, X3))
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U103(X1, X2, X3) -> U103#(mark X1, X2, X3))
    (mark# U92(X1, X2, X3) -> mark# X1, mark# isNatIListKind X -> active# isNatIListKind X)
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U104(X1, X2, X3) -> mark# X1)
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U104(X1, X2, X3) -> active# U104(mark X1, X2, X3))
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U104(X1, X2, X3) -> U104#(mark X1, X2, X3))
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U105(X1, X2) -> mark# X1)
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U105(X1, X2) -> active# U105(mark X1, X2))
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U105(X1, X2) -> U105#(mark X1, X2))
    (mark# U92(X1, X2, X3) -> mark# X1, mark# isNat X -> active# isNat X)
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U106 X -> mark# X)
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U106 X -> active# U106 mark X)
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U106 X -> U106# mark X)
    (mark# U92(X1, X2, X3) -> mark# X1, mark# isNatIList X -> active# isNatIList X)
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U12(X1, X2) -> mark# X1)
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U12(X1, X2) -> active# U12(mark X1, X2))
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U12(X1, X2) -> U12#(mark X1, X2))
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U11(X1, X2) -> mark# X1)
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U11(X1, X2) -> active# U11(mark X1, X2))
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U11(X1, X2) -> U11#(mark X1, X2))
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U112(X1, X2, X3) -> mark# X1)
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U112(X1, X2, X3) -> active# U112(mark X1, X2, X3))
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U112(X1, X2, X3) -> U112#(mark X1, X2, X3))
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U111(X1, X2, X3) -> mark# X1)
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U111(X1, X2, X3) -> active# U111(mark X1, X2, X3))
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U111(X1, X2, X3) -> U111#(mark X1, X2, X3))
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U113(X1, X2, X3) -> mark# X1)
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U113(X1, X2, X3) -> active# U113(mark X1, X2, X3))
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U113(X1, X2, X3) -> U113#(mark X1, X2, X3))
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U114(X1, X2) -> mark# X1)
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U114(X1, X2) -> active# U114(mark X1, X2))
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U114(X1, X2) -> U114#(mark X1, X2))
    (mark# U92(X1, X2, X3) -> mark# X1, mark# s X -> mark# X)
    (mark# U92(X1, X2, X3) -> mark# X1, mark# s X -> active# s mark X)
    (mark# U92(X1, X2, X3) -> mark# X1, mark# s X -> s# mark X)
    (mark# U92(X1, X2, X3) -> mark# X1, mark# length X -> mark# X)
    (mark# U92(X1, X2, X3) -> mark# X1, mark# length X -> active# length mark X)
    (mark# U92(X1, X2, X3) -> mark# X1, mark# length X -> length# mark X)
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U13 X -> mark# X)
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U13 X -> active# U13 mark X)
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U13 X -> U13# mark X)
    (mark# U92(X1, X2, X3) -> mark# X1, mark# isNatList X -> active# isNatList X)
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U122 X -> mark# X)
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U122 X -> active# U122 mark X)
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U122 X -> U122# mark X)
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U121(X1, X2) -> mark# X1)
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U121(X1, X2) -> active# U121(mark X1, X2))
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U121(X1, X2) -> U121#(mark X1, X2))
    (mark# U92(X1, X2, X3) -> mark# X1, mark# nil() -> active# nil())
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U132(X1, X2, X3, X4) -> mark# X1)
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U132(X1, X2, X3, X4) -> active# U132(mark X1, X2, X3, X4))
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U132(X1, X2, X3, X4) -> U132#(mark X1, X2, X3, X4))
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U131(X1, X2, X3, X4) -> mark# X1)
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U131(X1, X2, X3, X4) -> active# U131(mark X1, X2, X3, X4))
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U131(X1, X2, X3, X4) -> U131#(mark X1, X2, X3, X4))
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U133(X1, X2, X3, X4) -> mark# X1)
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U133(X1, X2, X3, X4) -> active# U133(mark X1, X2, X3, X4))
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U133(X1, X2, X3, X4) -> U133#(mark X1, X2, X3, X4))
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U134(X1, X2, X3, X4) -> mark# X1)
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U134(X1, X2, X3, X4) -> active# U134(mark X1, X2, X3, X4))
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U134(X1, X2, X3, X4) -> U134#(mark X1, X2, X3, X4))
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U135(X1, X2, X3, X4) -> mark# X1)
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U135(X1, X2, X3, X4) -> active# U135(mark X1, X2, X3, X4))
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U135(X1, X2, X3, X4) -> U135#(mark X1, X2, X3, X4))
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U136(X1, X2, X3, X4) -> mark# X1)
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U136(X1, X2, X3, X4) -> active# U136(mark X1, X2, X3, X4))
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U136(X1, X2, X3, X4) -> U136#(mark X1, X2, X3, X4))
    (mark# U92(X1, X2, X3) -> mark# X1, mark# take(X1, X2) -> mark# X1)
    (mark# U92(X1, X2, X3) -> mark# X1, mark# take(X1, X2) -> mark# X2)
    (mark# U92(X1, X2, X3) -> mark# X1, mark# take(X1, X2) -> active# take(mark X1, mark X2))
    (mark# U92(X1, X2, X3) -> mark# X1, mark# take(X1, X2) -> take#(mark X1, mark X2))
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U22(X1, X2) -> mark# X1)
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U22(X1, X2) -> active# U22(mark X1, X2))
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U22(X1, X2) -> U22#(mark X1, X2))
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U21(X1, X2) -> mark# X1)
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U21(X1, X2) -> active# U21(mark X1, X2))
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U21(X1, X2) -> U21#(mark X1, X2))
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U23 X -> mark# X)
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U23 X -> active# U23 mark X)
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U23 X -> U23# mark X)
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U32(X1, X2) -> mark# X1)
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U32(X1, X2) -> active# U32(mark X1, X2))
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U32(X1, X2) -> U32#(mark X1, X2))
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U31(X1, X2) -> mark# X1)
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U31(X1, X2) -> active# U31(mark X1, X2))
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U31(X1, X2) -> U31#(mark X1, X2))
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U33 X -> mark# X)
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U33 X -> active# U33 mark X)
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U33 X -> U33# mark X)
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U42(X1, X2, X3) -> mark# X1)
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U42(X1, X2, X3) -> active# U42(mark X1, X2, X3))
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U42(X1, X2, X3) -> U42#(mark X1, X2, X3))
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U41(X1, X2, X3) -> mark# X1)
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U41(X1, X2, X3) -> active# U41(mark X1, X2, X3))
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U41(X1, X2, X3) -> U41#(mark X1, X2, X3))
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U43(X1, X2, X3) -> mark# X1)
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U43(X1, X2, X3) -> active# U43(mark X1, X2, X3))
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U43(X1, X2, X3) -> U43#(mark X1, X2, X3))
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U44(X1, X2, X3) -> mark# X1)
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U44(X1, X2, X3) -> active# U44(mark X1, X2, X3))
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U44(X1, X2, X3) -> U44#(mark X1, X2, X3))
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U45(X1, X2) -> mark# X1)
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U45(X1, X2) -> active# U45(mark X1, X2))
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U45(X1, X2) -> U45#(mark X1, X2))
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U46 X -> mark# X)
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U46 X -> active# U46 mark X)
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U46 X -> U46# mark X)
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U52 X -> mark# X)
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U52 X -> active# U52 mark X)
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U52 X -> U52# mark X)
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U51(X1, X2) -> mark# X1)
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U51(X1, X2) -> active# U51(mark X1, X2))
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U51(X1, X2) -> U51#(mark X1, X2))
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U62 X -> mark# X)
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U62 X -> active# U62 mark X)
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U62 X -> U62# mark X)
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U61(X1, X2) -> mark# X1)
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U61(X1, X2) -> active# U61(mark X1, X2))
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U61(X1, X2) -> U61#(mark X1, X2))
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U71 X -> mark# X)
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U71 X -> active# U71 mark X)
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U71 X -> U71# mark X)
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U81 X -> mark# X)
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U81 X -> active# U81 mark X)
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U81 X -> U81# mark X)
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U92(X1, X2, X3) -> mark# X1)
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U92(X1, X2, X3) -> active# U92(mark X1, X2, X3))
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U92(X1, X2, X3) -> U92#(mark X1, X2, X3))
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U91(X1, X2, X3) -> mark# X1)
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U91(X1, X2, X3) -> active# U91(mark X1, X2, X3))
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U91(X1, X2, X3) -> U91#(mark X1, X2, X3))
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U93(X1, X2, X3) -> mark# X1)
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U93(X1, X2, X3) -> active# U93(mark X1, X2, X3))
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U93(X1, X2, X3) -> U93#(mark X1, X2, X3))
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U94(X1, X2, X3) -> mark# X1)
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U94(X1, X2, X3) -> active# U94(mark X1, X2, X3))
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U94(X1, X2, X3) -> U94#(mark X1, X2, X3))
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U95(X1, X2) -> mark# X1)
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U95(X1, X2) -> active# U95(mark X1, X2))
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U95(X1, X2) -> U95#(mark X1, X2))
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U96 X -> mark# X)
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U96 X -> active# U96 mark X)
    (mark# U92(X1, X2, X3) -> mark# X1, mark# U96 X -> U96# mark X)
    (mark# U51(X1, X2) -> mark# X1, mark# cons(X1, X2) -> mark# X1)
    (mark# U51(X1, X2) -> mark# X1, mark# cons(X1, X2) -> cons#(mark X1, X2))
    (mark# U51(X1, X2) -> mark# X1, mark# cons(X1, X2) -> active# cons(mark X1, X2))
    (mark# U51(X1, X2) -> mark# X1, mark# 0() -> active# 0())
    (mark# U51(X1, X2) -> mark# X1, mark# zeros() -> active# zeros())
    (mark# U51(X1, X2) -> mark# X1, mark# U102(X1, X2, X3) -> mark# X1)
    (mark# U51(X1, X2) -> mark# X1, mark# U102(X1, X2, X3) -> active# U102(mark X1, X2, X3))
    (mark# U51(X1, X2) -> mark# X1, mark# U102(X1, X2, X3) -> U102#(mark X1, X2, X3))
    (mark# U51(X1, X2) -> mark# X1, mark# isNatKind X -> active# isNatKind X)
    (mark# U51(X1, X2) -> mark# X1, mark# U101(X1, X2, X3) -> mark# X1)
    (mark# U51(X1, X2) -> mark# X1, mark# U101(X1, X2, X3) -> active# U101(mark X1, X2, X3))
    (mark# U51(X1, X2) -> mark# X1, mark# U101(X1, X2, X3) -> U101#(mark X1, X2, X3))
    (mark# U51(X1, X2) -> mark# X1, mark# tt() -> active# tt())
    (mark# U51(X1, X2) -> mark# X1, mark# U103(X1, X2, X3) -> mark# X1)
    (mark# U51(X1, X2) -> mark# X1, mark# U103(X1, X2, X3) -> active# U103(mark X1, X2, X3))
    (mark# U51(X1, X2) -> mark# X1, mark# U103(X1, X2, X3) -> U103#(mark X1, X2, X3))
    (mark# U51(X1, X2) -> mark# X1, mark# isNatIListKind X -> active# isNatIListKind X)
    (mark# U51(X1, X2) -> mark# X1, mark# U104(X1, X2, X3) -> mark# X1)
    (mark# U51(X1, X2) -> mark# X1, mark# U104(X1, X2, X3) -> active# U104(mark X1, X2, X3))
    (mark# U51(X1, X2) -> mark# X1, mark# U104(X1, X2, X3) -> U104#(mark X1, X2, X3))
    (mark# U51(X1, X2) -> mark# X1, mark# U105(X1, X2) -> mark# X1)
    (mark# U51(X1, X2) -> mark# X1, mark# U105(X1, X2) -> active# U105(mark X1, X2))
    (mark# U51(X1, X2) -> mark# X1, mark# U105(X1, X2) -> U105#(mark X1, X2))
    (mark# U51(X1, X2) -> mark# X1, mark# isNat X -> active# isNat X)
    (mark# U51(X1, X2) -> mark# X1, mark# U106 X -> mark# X)
    (mark# U51(X1, X2) -> mark# X1, mark# U106 X -> active# U106 mark X)
    (mark# U51(X1, X2) -> mark# X1, mark# U106 X -> U106# mark X)
    (mark# U51(X1, X2) -> mark# X1, mark# isNatIList X -> active# isNatIList X)
    (mark# U51(X1, X2) -> mark# X1, mark# U12(X1, X2) -> mark# X1)
    (mark# U51(X1, X2) -> mark# X1, mark# U12(X1, X2) -> active# U12(mark X1, X2))
    (mark# U51(X1, X2) -> mark# X1, mark# U12(X1, X2) -> U12#(mark X1, X2))
    (mark# U51(X1, X2) -> mark# X1, mark# U11(X1, X2) -> mark# X1)
    (mark# U51(X1, X2) -> mark# X1, mark# U11(X1, X2) -> active# U11(mark X1, X2))
    (mark# U51(X1, X2) -> mark# X1, mark# U11(X1, X2) -> U11#(mark X1, X2))
    (mark# U51(X1, X2) -> mark# X1, mark# U112(X1, X2, X3) -> mark# X1)
    (mark# U51(X1, X2) -> mark# X1, mark# U112(X1, X2, X3) -> active# U112(mark X1, X2, X3))
    (mark# U51(X1, X2) -> mark# X1, mark# U112(X1, X2, X3) -> U112#(mark X1, X2, X3))
    (mark# U51(X1, X2) -> mark# X1, mark# U111(X1, X2, X3) -> mark# X1)
    (mark# U51(X1, X2) -> mark# X1, mark# U111(X1, X2, X3) -> active# U111(mark X1, X2, X3))
    (mark# U51(X1, X2) -> mark# X1, mark# U111(X1, X2, X3) -> U111#(mark X1, X2, X3))
    (mark# U51(X1, X2) -> mark# X1, mark# U113(X1, X2, X3) -> mark# X1)
    (mark# U51(X1, X2) -> mark# X1, mark# U113(X1, X2, X3) -> active# U113(mark X1, X2, X3))
    (mark# U51(X1, X2) -> mark# X1, mark# U113(X1, X2, X3) -> U113#(mark X1, X2, X3))
    (mark# U51(X1, X2) -> mark# X1, mark# U114(X1, X2) -> mark# X1)
    (mark# U51(X1, X2) -> mark# X1, mark# U114(X1, X2) -> active# U114(mark X1, X2))
    (mark# U51(X1, X2) -> mark# X1, mark# U114(X1, X2) -> U114#(mark X1, X2))
    (mark# U51(X1, X2) -> mark# X1, mark# s X -> mark# X)
    (mark# U51(X1, X2) -> mark# X1, mark# s X -> active# s mark X)
    (mark# U51(X1, X2) -> mark# X1, mark# s X -> s# mark X)
    (mark# U51(X1, X2) -> mark# X1, mark# length X -> mark# X)
    (mark# U51(X1, X2) -> mark# X1, mark# length X -> active# length mark X)
    (mark# U51(X1, X2) -> mark# X1, mark# length X -> length# mark X)
    (mark# U51(X1, X2) -> mark# X1, mark# U13 X -> mark# X)
    (mark# U51(X1, X2) -> mark# X1, mark# U13 X -> active# U13 mark X)
    (mark# U51(X1, X2) -> mark# X1, mark# U13 X -> U13# mark X)
    (mark# U51(X1, X2) -> mark# X1, mark# isNatList X -> active# isNatList X)
    (mark# U51(X1, X2) -> mark# X1, mark# U122 X -> mark# X)
    (mark# U51(X1, X2) -> mark# X1, mark# U122 X -> active# U122 mark X)
    (mark# U51(X1, X2) -> mark# X1, mark# U122 X -> U122# mark X)
    (mark# U51(X1, X2) -> mark# X1, mark# U121(X1, X2) -> mark# X1)
    (mark# U51(X1, X2) -> mark# X1, mark# U121(X1, X2) -> active# U121(mark X1, X2))
    (mark# U51(X1, X2) -> mark# X1, mark# U121(X1, X2) -> U121#(mark X1, X2))
    (mark# U51(X1, X2) -> mark# X1, mark# nil() -> active# nil())
    (mark# U51(X1, X2) -> mark# X1, mark# U132(X1, X2, X3, X4) -> mark# X1)
    (mark# U51(X1, X2) -> mark# X1, mark# U132(X1, X2, X3, X4) -> active# U132(mark X1, X2, X3, X4))
    (mark# U51(X1, X2) -> mark# X1, mark# U132(X1, X2, X3, X4) -> U132#(mark X1, X2, X3, X4))
    (mark# U51(X1, X2) -> mark# X1, mark# U131(X1, X2, X3, X4) -> mark# X1)
    (mark# U51(X1, X2) -> mark# X1, mark# U131(X1, X2, X3, X4) -> active# U131(mark X1, X2, X3, X4))
    (mark# U51(X1, X2) -> mark# X1, mark# U131(X1, X2, X3, X4) -> U131#(mark X1, X2, X3, X4))
    (mark# U51(X1, X2) -> mark# X1, mark# U133(X1, X2, X3, X4) -> mark# X1)
    (mark# U51(X1, X2) -> mark# X1, mark# U133(X1, X2, X3, X4) -> active# U133(mark X1, X2, X3, X4))
    (mark# U51(X1, X2) -> mark# X1, mark# U133(X1, X2, X3, X4) -> U133#(mark X1, X2, X3, X4))
    (mark# U51(X1, X2) -> mark# X1, mark# U134(X1, X2, X3, X4) -> mark# X1)
    (mark# U51(X1, X2) -> mark# X1, mark# U134(X1, X2, X3, X4) -> active# U134(mark X1, X2, X3, X4))
    (mark# U51(X1, X2) -> mark# X1, mark# U134(X1, X2, X3, X4) -> U134#(mark X1, X2, X3, X4))
    (mark# U51(X1, X2) -> mark# X1, mark# U135(X1, X2, X3, X4) -> mark# X1)
    (mark# U51(X1, X2) -> mark# X1, mark# U135(X1, X2, X3, X4) -> active# U135(mark X1, X2, X3, X4))
    (mark# U51(X1, X2) -> mark# X1, mark# U135(X1, X2, X3, X4) -> U135#(mark X1, X2, X3, X4))
    (mark# U51(X1, X2) -> mark# X1, mark# U136(X1, X2, X3, X4) -> mark# X1)
    (mark# U51(X1, X2) -> mark# X1, mark# U136(X1, X2, X3, X4) -> active# U136(mark X1, X2, X3, X4))
    (mark# U51(X1, X2) -> mark# X1, mark# U136(X1, X2, X3, X4) -> U136#(mark X1, X2, X3, X4))
    (mark# U51(X1, X2) -> mark# X1, mark# take(X1, X2) -> mark# X1)
    (mark# U51(X1, X2) -> mark# X1, mark# take(X1, X2) -> mark# X2)
    (mark# U51(X1, X2) -> mark# X1, mark# take(X1, X2) -> active# take(mark X1, mark X2))
    (mark# U51(X1, X2) -> mark# X1, mark# take(X1, X2) -> take#(mark X1, mark X2))
    (mark# U51(X1, X2) -> mark# X1, mark# U22(X1, X2) -> mark# X1)
    (mark# U51(X1, X2) -> mark# X1, mark# U22(X1, X2) -> active# U22(mark X1, X2))
    (mark# U51(X1, X2) -> mark# X1, mark# U22(X1, X2) -> U22#(mark X1, X2))
    (mark# U51(X1, X2) -> mark# X1, mark# U21(X1, X2) -> mark# X1)
    (mark# U51(X1, X2) -> mark# X1, mark# U21(X1, X2) -> active# U21(mark X1, X2))
    (mark# U51(X1, X2) -> mark# X1, mark# U21(X1, X2) -> U21#(mark X1, X2))
    (mark# U51(X1, X2) -> mark# X1, mark# U23 X -> mark# X)
    (mark# U51(X1, X2) -> mark# X1, mark# U23 X -> active# U23 mark X)
    (mark# U51(X1, X2) -> mark# X1, mark# U23 X -> U23# mark X)
    (mark# U51(X1, X2) -> mark# X1, mark# U32(X1, X2) -> mark# X1)
    (mark# U51(X1, X2) -> mark# X1, mark# U32(X1, X2) -> active# U32(mark X1, X2))
    (mark# U51(X1, X2) -> mark# X1, mark# U32(X1, X2) -> U32#(mark X1, X2))
    (mark# U51(X1, X2) -> mark# X1, mark# U31(X1, X2) -> mark# X1)
    (mark# U51(X1, X2) -> mark# X1, mark# U31(X1, X2) -> active# U31(mark X1, X2))
    (mark# U51(X1, X2) -> mark# X1, mark# U31(X1, X2) -> U31#(mark X1, X2))
    (mark# U51(X1, X2) -> mark# X1, mark# U33 X -> mark# X)
    (mark# U51(X1, X2) -> mark# X1, mark# U33 X -> active# U33 mark X)
    (mark# U51(X1, X2) -> mark# X1, mark# U33 X -> U33# mark X)
    (mark# U51(X1, X2) -> mark# X1, mark# U42(X1, X2, X3) -> mark# X1)
    (mark# U51(X1, X2) -> mark# X1, mark# U42(X1, X2, X3) -> active# U42(mark X1, X2, X3))
    (mark# U51(X1, X2) -> mark# X1, mark# U42(X1, X2, X3) -> U42#(mark X1, X2, X3))
    (mark# U51(X1, X2) -> mark# X1, mark# U41(X1, X2, X3) -> mark# X1)
    (mark# U51(X1, X2) -> mark# X1, mark# U41(X1, X2, X3) -> active# U41(mark X1, X2, X3))
    (mark# U51(X1, X2) -> mark# X1, mark# U41(X1, X2, X3) -> U41#(mark X1, X2, X3))
    (mark# U51(X1, X2) -> mark# X1, mark# U43(X1, X2, X3) -> mark# X1)
    (mark# U51(X1, X2) -> mark# X1, mark# U43(X1, X2, X3) -> active# U43(mark X1, X2, X3))
    (mark# U51(X1, X2) -> mark# X1, mark# U43(X1, X2, X3) -> U43#(mark X1, X2, X3))
    (mark# U51(X1, X2) -> mark# X1, mark# U44(X1, X2, X3) -> mark# X1)
    (mark# U51(X1, X2) -> mark# X1, mark# U44(X1, X2, X3) -> active# U44(mark X1, X2, X3))
    (mark# U51(X1, X2) -> mark# X1, mark# U44(X1, X2, X3) -> U44#(mark X1, X2, X3))
    (mark# U51(X1, X2) -> mark# X1, mark# U45(X1, X2) -> mark# X1)
    (mark# U51(X1, X2) -> mark# X1, mark# U45(X1, X2) -> active# U45(mark X1, X2))
    (mark# U51(X1, X2) -> mark# X1, mark# U45(X1, X2) -> U45#(mark X1, X2))
    (mark# U51(X1, X2) -> mark# X1, mark# U46 X -> mark# X)
    (mark# U51(X1, X2) -> mark# X1, mark# U46 X -> active# U46 mark X)
    (mark# U51(X1, X2) -> mark# X1, mark# U46 X -> U46# mark X)
    (mark# U51(X1, X2) -> mark# X1, mark# U52 X -> mark# X)
    (mark# U51(X1, X2) -> mark# X1, mark# U52 X -> active# U52 mark X)
    (mark# U51(X1, X2) -> mark# X1, mark# U52 X -> U52# mark X)
    (mark# U51(X1, X2) -> mark# X1, mark# U51(X1, X2) -> mark# X1)
    (mark# U51(X1, X2) -> mark# X1, mark# U51(X1, X2) -> active# U51(mark X1, X2))
    (mark# U51(X1, X2) -> mark# X1, mark# U51(X1, X2) -> U51#(mark X1, X2))
    (mark# U51(X1, X2) -> mark# X1, mark# U62 X -> mark# X)
    (mark# U51(X1, X2) -> mark# X1, mark# U62 X -> active# U62 mark X)
    (mark# U51(X1, X2) -> mark# X1, mark# U62 X -> U62# mark X)
    (mark# U51(X1, X2) -> mark# X1, mark# U61(X1, X2) -> mark# X1)
    (mark# U51(X1, X2) -> mark# X1, mark# U61(X1, X2) -> active# U61(mark X1, X2))
    (mark# U51(X1, X2) -> mark# X1, mark# U61(X1, X2) -> U61#(mark X1, X2))
    (mark# U51(X1, X2) -> mark# X1, mark# U71 X -> mark# X)
    (mark# U51(X1, X2) -> mark# X1, mark# U71 X -> active# U71 mark X)
    (mark# U51(X1, X2) -> mark# X1, mark# U71 X -> U71# mark X)
    (mark# U51(X1, X2) -> mark# X1, mark# U81 X -> mark# X)
    (mark# U51(X1, X2) -> mark# X1, mark# U81 X -> active# U81 mark X)
    (mark# U51(X1, X2) -> mark# X1, mark# U81 X -> U81# mark X)
    (mark# U51(X1, X2) -> mark# X1, mark# U92(X1, X2, X3) -> mark# X1)
    (mark# U51(X1, X2) -> mark# X1, mark# U92(X1, X2, X3) -> active# U92(mark X1, X2, X3))
    (mark# U51(X1, X2) -> mark# X1, mark# U92(X1, X2, X3) -> U92#(mark X1, X2, X3))
    (mark# U51(X1, X2) -> mark# X1, mark# U91(X1, X2, X3) -> mark# X1)
    (mark# U51(X1, X2) -> mark# X1, mark# U91(X1, X2, X3) -> active# U91(mark X1, X2, X3))
    (mark# U51(X1, X2) -> mark# X1, mark# U91(X1, X2, X3) -> U91#(mark X1, X2, X3))
    (mark# U51(X1, X2) -> mark# X1, mark# U93(X1, X2, X3) -> mark# X1)
    (mark# U51(X1, X2) -> mark# X1, mark# U93(X1, X2, X3) -> active# U93(mark X1, X2, X3))
    (mark# U51(X1, X2) -> mark# X1, mark# U93(X1, X2, X3) -> U93#(mark X1, X2, X3))
    (mark# U51(X1, X2) -> mark# X1, mark# U94(X1, X2, X3) -> mark# X1)
    (mark# U51(X1, X2) -> mark# X1, mark# U94(X1, X2, X3) -> active# U94(mark X1, X2, X3))
    (mark# U51(X1, X2) -> mark# X1, mark# U94(X1, X2, X3) -> U94#(mark X1, X2, X3))
    (mark# U51(X1, X2) -> mark# X1, mark# U95(X1, X2) -> mark# X1)
    (mark# U51(X1, X2) -> mark# X1, mark# U95(X1, X2) -> active# U95(mark X1, X2))
    (mark# U51(X1, X2) -> mark# X1, mark# U95(X1, X2) -> U95#(mark X1, X2))
    (mark# U51(X1, X2) -> mark# X1, mark# U96 X -> mark# X)
    (mark# U51(X1, X2) -> mark# X1, mark# U96 X -> active# U96 mark X)
    (mark# U51(X1, X2) -> mark# X1, mark# U96 X -> U96# mark X)
    (mark# U44(X1, X2, X3) -> mark# X1, mark# cons(X1, X2) -> mark# X1)
    (mark# U44(X1, X2, X3) -> mark# X1, mark# cons(X1, X2) -> cons#(mark X1, X2))
    (mark# U44(X1, X2, X3) -> mark# X1, mark# cons(X1, X2) -> active# cons(mark X1, X2))
    (mark# U44(X1, X2, X3) -> mark# X1, mark# 0() -> active# 0())
    (mark# U44(X1, X2, X3) -> mark# X1, mark# zeros() -> active# zeros())
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U102(X1, X2, X3) -> mark# X1)
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U102(X1, X2, X3) -> active# U102(mark X1, X2, X3))
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U102(X1, X2, X3) -> U102#(mark X1, X2, X3))
    (mark# U44(X1, X2, X3) -> mark# X1, mark# isNatKind X -> active# isNatKind X)
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U101(X1, X2, X3) -> mark# X1)
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U101(X1, X2, X3) -> active# U101(mark X1, X2, X3))
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U101(X1, X2, X3) -> U101#(mark X1, X2, X3))
    (mark# U44(X1, X2, X3) -> mark# X1, mark# tt() -> active# tt())
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U103(X1, X2, X3) -> mark# X1)
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U103(X1, X2, X3) -> active# U103(mark X1, X2, X3))
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U103(X1, X2, X3) -> U103#(mark X1, X2, X3))
    (mark# U44(X1, X2, X3) -> mark# X1, mark# isNatIListKind X -> active# isNatIListKind X)
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U104(X1, X2, X3) -> mark# X1)
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U104(X1, X2, X3) -> active# U104(mark X1, X2, X3))
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U104(X1, X2, X3) -> U104#(mark X1, X2, X3))
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U105(X1, X2) -> mark# X1)
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U105(X1, X2) -> active# U105(mark X1, X2))
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U105(X1, X2) -> U105#(mark X1, X2))
    (mark# U44(X1, X2, X3) -> mark# X1, mark# isNat X -> active# isNat X)
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U106 X -> mark# X)
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U106 X -> active# U106 mark X)
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U106 X -> U106# mark X)
    (mark# U44(X1, X2, X3) -> mark# X1, mark# isNatIList X -> active# isNatIList X)
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U12(X1, X2) -> mark# X1)
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U12(X1, X2) -> active# U12(mark X1, X2))
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U12(X1, X2) -> U12#(mark X1, X2))
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U11(X1, X2) -> mark# X1)
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U11(X1, X2) -> active# U11(mark X1, X2))
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U11(X1, X2) -> U11#(mark X1, X2))
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U112(X1, X2, X3) -> mark# X1)
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U112(X1, X2, X3) -> active# U112(mark X1, X2, X3))
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U112(X1, X2, X3) -> U112#(mark X1, X2, X3))
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U111(X1, X2, X3) -> mark# X1)
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U111(X1, X2, X3) -> active# U111(mark X1, X2, X3))
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U111(X1, X2, X3) -> U111#(mark X1, X2, X3))
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U113(X1, X2, X3) -> mark# X1)
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U113(X1, X2, X3) -> active# U113(mark X1, X2, X3))
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U113(X1, X2, X3) -> U113#(mark X1, X2, X3))
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U114(X1, X2) -> mark# X1)
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U114(X1, X2) -> active# U114(mark X1, X2))
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U114(X1, X2) -> U114#(mark X1, X2))
    (mark# U44(X1, X2, X3) -> mark# X1, mark# s X -> mark# X)
    (mark# U44(X1, X2, X3) -> mark# X1, mark# s X -> active# s mark X)
    (mark# U44(X1, X2, X3) -> mark# X1, mark# s X -> s# mark X)
    (mark# U44(X1, X2, X3) -> mark# X1, mark# length X -> mark# X)
    (mark# U44(X1, X2, X3) -> mark# X1, mark# length X -> active# length mark X)
    (mark# U44(X1, X2, X3) -> mark# X1, mark# length X -> length# mark X)
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U13 X -> mark# X)
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U13 X -> active# U13 mark X)
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U13 X -> U13# mark X)
    (mark# U44(X1, X2, X3) -> mark# X1, mark# isNatList X -> active# isNatList X)
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U122 X -> mark# X)
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U122 X -> active# U122 mark X)
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U122 X -> U122# mark X)
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U121(X1, X2) -> mark# X1)
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U121(X1, X2) -> active# U121(mark X1, X2))
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U121(X1, X2) -> U121#(mark X1, X2))
    (mark# U44(X1, X2, X3) -> mark# X1, mark# nil() -> active# nil())
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U132(X1, X2, X3, X4) -> mark# X1)
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U132(X1, X2, X3, X4) -> active# U132(mark X1, X2, X3, X4))
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U132(X1, X2, X3, X4) -> U132#(mark X1, X2, X3, X4))
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U131(X1, X2, X3, X4) -> mark# X1)
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U131(X1, X2, X3, X4) -> active# U131(mark X1, X2, X3, X4))
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U131(X1, X2, X3, X4) -> U131#(mark X1, X2, X3, X4))
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U133(X1, X2, X3, X4) -> mark# X1)
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U133(X1, X2, X3, X4) -> active# U133(mark X1, X2, X3, X4))
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U133(X1, X2, X3, X4) -> U133#(mark X1, X2, X3, X4))
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U134(X1, X2, X3, X4) -> mark# X1)
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U134(X1, X2, X3, X4) -> active# U134(mark X1, X2, X3, X4))
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U134(X1, X2, X3, X4) -> U134#(mark X1, X2, X3, X4))
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U135(X1, X2, X3, X4) -> mark# X1)
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U135(X1, X2, X3, X4) -> active# U135(mark X1, X2, X3, X4))
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U135(X1, X2, X3, X4) -> U135#(mark X1, X2, X3, X4))
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U136(X1, X2, X3, X4) -> mark# X1)
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U136(X1, X2, X3, X4) -> active# U136(mark X1, X2, X3, X4))
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U136(X1, X2, X3, X4) -> U136#(mark X1, X2, X3, X4))
    (mark# U44(X1, X2, X3) -> mark# X1, mark# take(X1, X2) -> mark# X1)
    (mark# U44(X1, X2, X3) -> mark# X1, mark# take(X1, X2) -> mark# X2)
    (mark# U44(X1, X2, X3) -> mark# X1, mark# take(X1, X2) -> active# take(mark X1, mark X2))
    (mark# U44(X1, X2, X3) -> mark# X1, mark# take(X1, X2) -> take#(mark X1, mark X2))
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U22(X1, X2) -> mark# X1)
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U22(X1, X2) -> active# U22(mark X1, X2))
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U22(X1, X2) -> U22#(mark X1, X2))
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U21(X1, X2) -> mark# X1)
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U21(X1, X2) -> active# U21(mark X1, X2))
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U21(X1, X2) -> U21#(mark X1, X2))
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U23 X -> mark# X)
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U23 X -> active# U23 mark X)
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U23 X -> U23# mark X)
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U32(X1, X2) -> mark# X1)
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U32(X1, X2) -> active# U32(mark X1, X2))
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U32(X1, X2) -> U32#(mark X1, X2))
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U31(X1, X2) -> mark# X1)
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U31(X1, X2) -> active# U31(mark X1, X2))
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U31(X1, X2) -> U31#(mark X1, X2))
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U33 X -> mark# X)
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U33 X -> active# U33 mark X)
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U33 X -> U33# mark X)
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U42(X1, X2, X3) -> mark# X1)
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U42(X1, X2, X3) -> active# U42(mark X1, X2, X3))
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U42(X1, X2, X3) -> U42#(mark X1, X2, X3))
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U41(X1, X2, X3) -> mark# X1)
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U41(X1, X2, X3) -> active# U41(mark X1, X2, X3))
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U41(X1, X2, X3) -> U41#(mark X1, X2, X3))
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U43(X1, X2, X3) -> mark# X1)
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U43(X1, X2, X3) -> active# U43(mark X1, X2, X3))
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U43(X1, X2, X3) -> U43#(mark X1, X2, X3))
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U44(X1, X2, X3) -> mark# X1)
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U44(X1, X2, X3) -> active# U44(mark X1, X2, X3))
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U44(X1, X2, X3) -> U44#(mark X1, X2, X3))
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U45(X1, X2) -> mark# X1)
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U45(X1, X2) -> active# U45(mark X1, X2))
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U45(X1, X2) -> U45#(mark X1, X2))
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U46 X -> mark# X)
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U46 X -> active# U46 mark X)
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U46 X -> U46# mark X)
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U52 X -> mark# X)
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U52 X -> active# U52 mark X)
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U52 X -> U52# mark X)
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U51(X1, X2) -> mark# X1)
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U51(X1, X2) -> active# U51(mark X1, X2))
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U51(X1, X2) -> U51#(mark X1, X2))
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U62 X -> mark# X)
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U62 X -> active# U62 mark X)
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U62 X -> U62# mark X)
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U61(X1, X2) -> mark# X1)
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U61(X1, X2) -> active# U61(mark X1, X2))
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U61(X1, X2) -> U61#(mark X1, X2))
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U71 X -> mark# X)
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U71 X -> active# U71 mark X)
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U71 X -> U71# mark X)
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U81 X -> mark# X)
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U81 X -> active# U81 mark X)
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U81 X -> U81# mark X)
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U92(X1, X2, X3) -> mark# X1)
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U92(X1, X2, X3) -> active# U92(mark X1, X2, X3))
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U92(X1, X2, X3) -> U92#(mark X1, X2, X3))
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U91(X1, X2, X3) -> mark# X1)
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U91(X1, X2, X3) -> active# U91(mark X1, X2, X3))
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U91(X1, X2, X3) -> U91#(mark X1, X2, X3))
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U93(X1, X2, X3) -> mark# X1)
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U93(X1, X2, X3) -> active# U93(mark X1, X2, X3))
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U93(X1, X2, X3) -> U93#(mark X1, X2, X3))
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U94(X1, X2, X3) -> mark# X1)
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U94(X1, X2, X3) -> active# U94(mark X1, X2, X3))
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U94(X1, X2, X3) -> U94#(mark X1, X2, X3))
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U95(X1, X2) -> mark# X1)
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U95(X1, X2) -> active# U95(mark X1, X2))
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U95(X1, X2) -> U95#(mark X1, X2))
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U96 X -> mark# X)
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U96 X -> active# U96 mark X)
    (mark# U44(X1, X2, X3) -> mark# X1, mark# U96 X -> U96# mark X)
    (mark# U41(X1, X2, X3) -> mark# X1, mark# cons(X1, X2) -> mark# X1)
    (mark# U41(X1, X2, X3) -> mark# X1, mark# cons(X1, X2) -> cons#(mark X1, X2))
    (mark# U41(X1, X2, X3) -> mark# X1, mark# cons(X1, X2) -> active# cons(mark X1, X2))
    (mark# U41(X1, X2, X3) -> mark# X1, mark# 0() -> active# 0())
    (mark# U41(X1, X2, X3) -> mark# X1, mark# zeros() -> active# zeros())
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U102(X1, X2, X3) -> mark# X1)
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U102(X1, X2, X3) -> active# U102(mark X1, X2, X3))
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U102(X1, X2, X3) -> U102#(mark X1, X2, X3))
    (mark# U41(X1, X2, X3) -> mark# X1, mark# isNatKind X -> active# isNatKind X)
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U101(X1, X2, X3) -> mark# X1)
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U101(X1, X2, X3) -> active# U101(mark X1, X2, X3))
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U101(X1, X2, X3) -> U101#(mark X1, X2, X3))
    (mark# U41(X1, X2, X3) -> mark# X1, mark# tt() -> active# tt())
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U103(X1, X2, X3) -> mark# X1)
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U103(X1, X2, X3) -> active# U103(mark X1, X2, X3))
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U103(X1, X2, X3) -> U103#(mark X1, X2, X3))
    (mark# U41(X1, X2, X3) -> mark# X1, mark# isNatIListKind X -> active# isNatIListKind X)
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U104(X1, X2, X3) -> mark# X1)
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U104(X1, X2, X3) -> active# U104(mark X1, X2, X3))
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U104(X1, X2, X3) -> U104#(mark X1, X2, X3))
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U105(X1, X2) -> mark# X1)
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U105(X1, X2) -> active# U105(mark X1, X2))
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U105(X1, X2) -> U105#(mark X1, X2))
    (mark# U41(X1, X2, X3) -> mark# X1, mark# isNat X -> active# isNat X)
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U106 X -> mark# X)
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U106 X -> active# U106 mark X)
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U106 X -> U106# mark X)
    (mark# U41(X1, X2, X3) -> mark# X1, mark# isNatIList X -> active# isNatIList X)
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U12(X1, X2) -> mark# X1)
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U12(X1, X2) -> active# U12(mark X1, X2))
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U12(X1, X2) -> U12#(mark X1, X2))
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U11(X1, X2) -> mark# X1)
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U11(X1, X2) -> active# U11(mark X1, X2))
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U11(X1, X2) -> U11#(mark X1, X2))
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U112(X1, X2, X3) -> mark# X1)
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U112(X1, X2, X3) -> active# U112(mark X1, X2, X3))
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U112(X1, X2, X3) -> U112#(mark X1, X2, X3))
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U111(X1, X2, X3) -> mark# X1)
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U111(X1, X2, X3) -> active# U111(mark X1, X2, X3))
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U111(X1, X2, X3) -> U111#(mark X1, X2, X3))
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U113(X1, X2, X3) -> mark# X1)
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U113(X1, X2, X3) -> active# U113(mark X1, X2, X3))
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U113(X1, X2, X3) -> U113#(mark X1, X2, X3))
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U114(X1, X2) -> mark# X1)
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U114(X1, X2) -> active# U114(mark X1, X2))
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U114(X1, X2) -> U114#(mark X1, X2))
    (mark# U41(X1, X2, X3) -> mark# X1, mark# s X -> mark# X)
    (mark# U41(X1, X2, X3) -> mark# X1, mark# s X -> active# s mark X)
    (mark# U41(X1, X2, X3) -> mark# X1, mark# s X -> s# mark X)
    (mark# U41(X1, X2, X3) -> mark# X1, mark# length X -> mark# X)
    (mark# U41(X1, X2, X3) -> mark# X1, mark# length X -> active# length mark X)
    (mark# U41(X1, X2, X3) -> mark# X1, mark# length X -> length# mark X)
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U13 X -> mark# X)
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U13 X -> active# U13 mark X)
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U13 X -> U13# mark X)
    (mark# U41(X1, X2, X3) -> mark# X1, mark# isNatList X -> active# isNatList X)
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U122 X -> mark# X)
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U122 X -> active# U122 mark X)
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U122 X -> U122# mark X)
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U121(X1, X2) -> mark# X1)
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U121(X1, X2) -> active# U121(mark X1, X2))
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U121(X1, X2) -> U121#(mark X1, X2))
    (mark# U41(X1, X2, X3) -> mark# X1, mark# nil() -> active# nil())
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U132(X1, X2, X3, X4) -> mark# X1)
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U132(X1, X2, X3, X4) -> active# U132(mark X1, X2, X3, X4))
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U132(X1, X2, X3, X4) -> U132#(mark X1, X2, X3, X4))
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U131(X1, X2, X3, X4) -> mark# X1)
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U131(X1, X2, X3, X4) -> active# U131(mark X1, X2, X3, X4))
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U131(X1, X2, X3, X4) -> U131#(mark X1, X2, X3, X4))
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U133(X1, X2, X3, X4) -> mark# X1)
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U133(X1, X2, X3, X4) -> active# U133(mark X1, X2, X3, X4))
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U133(X1, X2, X3, X4) -> U133#(mark X1, X2, X3, X4))
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U134(X1, X2, X3, X4) -> mark# X1)
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U134(X1, X2, X3, X4) -> active# U134(mark X1, X2, X3, X4))
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U134(X1, X2, X3, X4) -> U134#(mark X1, X2, X3, X4))
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U135(X1, X2, X3, X4) -> mark# X1)
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U135(X1, X2, X3, X4) -> active# U135(mark X1, X2, X3, X4))
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U135(X1, X2, X3, X4) -> U135#(mark X1, X2, X3, X4))
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U136(X1, X2, X3, X4) -> mark# X1)
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U136(X1, X2, X3, X4) -> active# U136(mark X1, X2, X3, X4))
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U136(X1, X2, X3, X4) -> U136#(mark X1, X2, X3, X4))
    (mark# U41(X1, X2, X3) -> mark# X1, mark# take(X1, X2) -> mark# X1)
    (mark# U41(X1, X2, X3) -> mark# X1, mark# take(X1, X2) -> mark# X2)
    (mark# U41(X1, X2, X3) -> mark# X1, mark# take(X1, X2) -> active# take(mark X1, mark X2))
    (mark# U41(X1, X2, X3) -> mark# X1, mark# take(X1, X2) -> take#(mark X1, mark X2))
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U22(X1, X2) -> mark# X1)
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U22(X1, X2) -> active# U22(mark X1, X2))
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U22(X1, X2) -> U22#(mark X1, X2))
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U21(X1, X2) -> mark# X1)
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U21(X1, X2) -> active# U21(mark X1, X2))
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U21(X1, X2) -> U21#(mark X1, X2))
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U23 X -> mark# X)
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U23 X -> active# U23 mark X)
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U23 X -> U23# mark X)
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U32(X1, X2) -> mark# X1)
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U32(X1, X2) -> active# U32(mark X1, X2))
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U32(X1, X2) -> U32#(mark X1, X2))
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U31(X1, X2) -> mark# X1)
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U31(X1, X2) -> active# U31(mark X1, X2))
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U31(X1, X2) -> U31#(mark X1, X2))
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U33 X -> mark# X)
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U33 X -> active# U33 mark X)
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U33 X -> U33# mark X)
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U42(X1, X2, X3) -> mark# X1)
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U42(X1, X2, X3) -> active# U42(mark X1, X2, X3))
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U42(X1, X2, X3) -> U42#(mark X1, X2, X3))
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U41(X1, X2, X3) -> mark# X1)
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U41(X1, X2, X3) -> active# U41(mark X1, X2, X3))
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U41(X1, X2, X3) -> U41#(mark X1, X2, X3))
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U43(X1, X2, X3) -> mark# X1)
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U43(X1, X2, X3) -> active# U43(mark X1, X2, X3))
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U43(X1, X2, X3) -> U43#(mark X1, X2, X3))
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U44(X1, X2, X3) -> mark# X1)
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U44(X1, X2, X3) -> active# U44(mark X1, X2, X3))
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U44(X1, X2, X3) -> U44#(mark X1, X2, X3))
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U45(X1, X2) -> mark# X1)
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U45(X1, X2) -> active# U45(mark X1, X2))
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U45(X1, X2) -> U45#(mark X1, X2))
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U46 X -> mark# X)
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U46 X -> active# U46 mark X)
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U46 X -> U46# mark X)
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U52 X -> mark# X)
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U52 X -> active# U52 mark X)
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U52 X -> U52# mark X)
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U51(X1, X2) -> mark# X1)
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U51(X1, X2) -> active# U51(mark X1, X2))
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U51(X1, X2) -> U51#(mark X1, X2))
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U62 X -> mark# X)
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U62 X -> active# U62 mark X)
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U62 X -> U62# mark X)
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U61(X1, X2) -> mark# X1)
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U61(X1, X2) -> active# U61(mark X1, X2))
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U61(X1, X2) -> U61#(mark X1, X2))
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U71 X -> mark# X)
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U71 X -> active# U71 mark X)
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U71 X -> U71# mark X)
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U81 X -> mark# X)
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U81 X -> active# U81 mark X)
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U81 X -> U81# mark X)
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U92(X1, X2, X3) -> mark# X1)
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U92(X1, X2, X3) -> active# U92(mark X1, X2, X3))
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U92(X1, X2, X3) -> U92#(mark X1, X2, X3))
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U91(X1, X2, X3) -> mark# X1)
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U91(X1, X2, X3) -> active# U91(mark X1, X2, X3))
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U91(X1, X2, X3) -> U91#(mark X1, X2, X3))
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U93(X1, X2, X3) -> mark# X1)
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U93(X1, X2, X3) -> active# U93(mark X1, X2, X3))
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U93(X1, X2, X3) -> U93#(mark X1, X2, X3))
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U94(X1, X2, X3) -> mark# X1)
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U94(X1, X2, X3) -> active# U94(mark X1, X2, X3))
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U94(X1, X2, X3) -> U94#(mark X1, X2, X3))
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U95(X1, X2) -> mark# X1)
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U95(X1, X2) -> active# U95(mark X1, X2))
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U95(X1, X2) -> U95#(mark X1, X2))
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U96 X -> mark# X)
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U96 X -> active# U96 mark X)
    (mark# U41(X1, X2, X3) -> mark# X1, mark# U96 X -> U96# mark X)
    (mark# U31(X1, X2) -> mark# X1, mark# cons(X1, X2) -> mark# X1)
    (mark# U31(X1, X2) -> mark# X1, mark# cons(X1, X2) -> cons#(mark X1, X2))
    (mark# U31(X1, X2) -> mark# X1, mark# cons(X1, X2) -> active# cons(mark X1, X2))
    (mark# U31(X1, X2) -> mark# X1, mark# 0() -> active# 0())
    (mark# U31(X1, X2) -> mark# X1, mark# zeros() -> active# zeros())
    (mark# U31(X1, X2) -> mark# X1, mark# U102(X1, X2, X3) -> mark# X1)
    (mark# U31(X1, X2) -> mark# X1, mark# U102(X1, X2, X3) -> active# U102(mark X1, X2, X3))
    (mark# U31(X1, X2) -> mark# X1, mark# U102(X1, X2, X3) -> U102#(mark X1, X2, X3))
    (mark# U31(X1, X2) -> mark# X1, mark# isNatKind X -> active# isNatKind X)
    (mark# U31(X1, X2) -> mark# X1, mark# U101(X1, X2, X3) -> mark# X1)
    (mark# U31(X1, X2) -> mark# X1, mark# U101(X1, X2, X3) -> active# U101(mark X1, X2, X3))
    (mark# U31(X1, X2) -> mark# X1, mark# U101(X1, X2, X3) -> U101#(mark X1, X2, X3))
    (mark# U31(X1, X2) -> mark# X1, mark# tt() -> active# tt())
    (mark# U31(X1, X2) -> mark# X1, mark# U103(X1, X2, X3) -> mark# X1)
    (mark# U31(X1, X2) -> mark# X1, mark# U103(X1, X2, X3) -> active# U103(mark X1, X2, X3))
    (mark# U31(X1, X2) -> mark# X1, mark# U103(X1, X2, X3) -> U103#(mark X1, X2, X3))
    (mark# U31(X1, X2) -> mark# X1, mark# isNatIListKind X -> active# isNatIListKind X)
    (mark# U31(X1, X2) -> mark# X1, mark# U104(X1, X2, X3) -> mark# X1)
    (mark# U31(X1, X2) -> mark# X1, mark# U104(X1, X2, X3) -> active# U104(mark X1, X2, X3))
    (mark# U31(X1, X2) -> mark# X1, mark# U104(X1, X2, X3) -> U104#(mark X1, X2, X3))
    (mark# U31(X1, X2) -> mark# X1, mark# U105(X1, X2) -> mark# X1)
    (mark# U31(X1, X2) -> mark# X1, mark# U105(X1, X2) -> active# U105(mark X1, X2))
    (mark# U31(X1, X2) -> mark# X1, mark# U105(X1, X2) -> U105#(mark X1, X2))
    (mark# U31(X1, X2) -> mark# X1, mark# isNat X -> active# isNat X)
    (mark# U31(X1, X2) -> mark# X1, mark# U106 X -> mark# X)
    (mark# U31(X1, X2) -> mark# X1, mark# U106 X -> active# U106 mark X)
    (mark# U31(X1, X2) -> mark# X1, mark# U106 X -> U106# mark X)
    (mark# U31(X1, X2) -> mark# X1, mark# isNatIList X -> active# isNatIList X)
    (mark# U31(X1, X2) -> mark# X1, mark# U12(X1, X2) -> mark# X1)
    (mark# U31(X1, X2) -> mark# X1, mark# U12(X1, X2) -> active# U12(mark X1, X2))
    (mark# U31(X1, X2) -> mark# X1, mark# U12(X1, X2) -> U12#(mark X1, X2))
    (mark# U31(X1, X2) -> mark# X1, mark# U11(X1, X2) -> mark# X1)
    (mark# U31(X1, X2) -> mark# X1, mark# U11(X1, X2) -> active# U11(mark X1, X2))
    (mark# U31(X1, X2) -> mark# X1, mark# U11(X1, X2) -> U11#(mark X1, X2))
    (mark# U31(X1, X2) -> mark# X1, mark# U112(X1, X2, X3) -> mark# X1)
    (mark# U31(X1, X2) -> mark# X1, mark# U112(X1, X2, X3) -> active# U112(mark X1, X2, X3))
    (mark# U31(X1, X2) -> mark# X1, mark# U112(X1, X2, X3) -> U112#(mark X1, X2, X3))
    (mark# U31(X1, X2) -> mark# X1, mark# U111(X1, X2, X3) -> mark# X1)
    (mark# U31(X1, X2) -> mark# X1, mark# U111(X1, X2, X3) -> active# U111(mark X1, X2, X3))
    (mark# U31(X1, X2) -> mark# X1, mark# U111(X1, X2, X3) -> U111#(mark X1, X2, X3))
    (mark# U31(X1, X2) -> mark# X1, mark# U113(X1, X2, X3) -> mark# X1)
    (mark# U31(X1, X2) -> mark# X1, mark# U113(X1, X2, X3) -> active# U113(mark X1, X2, X3))
    (mark# U31(X1, X2) -> mark# X1, mark# U113(X1, X2, X3) -> U113#(mark X1, X2, X3))
    (mark# U31(X1, X2) -> mark# X1, mark# U114(X1, X2) -> mark# X1)
    (mark# U31(X1, X2) -> mark# X1, mark# U114(X1, X2) -> active# U114(mark X1, X2))
    (mark# U31(X1, X2) -> mark# X1, mark# U114(X1, X2) -> U114#(mark X1, X2))
    (mark# U31(X1, X2) -> mark# X1, mark# s X -> mark# X)
    (mark# U31(X1, X2) -> mark# X1, mark# s X -> active# s mark X)
    (mark# U31(X1, X2) -> mark# X1, mark# s X -> s# mark X)
    (mark# U31(X1, X2) -> mark# X1, mark# length X -> mark# X)
    (mark# U31(X1, X2) -> mark# X1, mark# length X -> active# length mark X)
    (mark# U31(X1, X2) -> mark# X1, mark# length X -> length# mark X)
    (mark# U31(X1, X2) -> mark# X1, mark# U13 X -> mark# X)
    (mark# U31(X1, X2) -> mark# X1, mark# U13 X -> active# U13 mark X)
    (mark# U31(X1, X2) -> mark# X1, mark# U13 X -> U13# mark X)
    (mark# U31(X1, X2) -> mark# X1, mark# isNatList X -> active# isNatList X)
    (mark# U31(X1, X2) -> mark# X1, mark# U122 X -> mark# X)
    (mark# U31(X1, X2) -> mark# X1, mark# U122 X -> active# U122 mark X)
    (mark# U31(X1, X2) -> mark# X1, mark# U122 X -> U122# mark X)
    (mark# U31(X1, X2) -> mark# X1, mark# U121(X1, X2) -> mark# X1)
    (mark# U31(X1, X2) -> mark# X1, mark# U121(X1, X2) -> active# U121(mark X1, X2))
    (mark# U31(X1, X2) -> mark# X1, mark# U121(X1, X2) -> U121#(mark X1, X2))
    (mark# U31(X1, X2) -> mark# X1, mark# nil() -> active# nil())
    (mark# U31(X1, X2) -> mark# X1, mark# U132(X1, X2, X3, X4) -> mark# X1)
    (mark# U31(X1, X2) -> mark# X1, mark# U132(X1, X2, X3, X4) -> active# U132(mark X1, X2, X3, X4))
    (mark# U31(X1, X2) -> mark# X1, mark# U132(X1, X2, X3, X4) -> U132#(mark X1, X2, X3, X4))
    (mark# U31(X1, X2) -> mark# X1, mark# U131(X1, X2, X3, X4) -> mark# X1)
    (mark# U31(X1, X2) -> mark# X1, mark# U131(X1, X2, X3, X4) -> active# U131(mark X1, X2, X3, X4))
    (mark# U31(X1, X2) -> mark# X1, mark# U131(X1, X2, X3, X4) -> U131#(mark X1, X2, X3, X4))
    (mark# U31(X1, X2) -> mark# X1, mark# U133(X1, X2, X3, X4) -> mark# X1)
    (mark# U31(X1, X2) -> mark# X1, mark# U133(X1, X2, X3, X4) -> active# U133(mark X1, X2, X3, X4))
    (mark# U31(X1, X2) -> mark# X1, mark# U133(X1, X2, X3, X4) -> U133#(mark X1, X2, X3, X4))
    (mark# U31(X1, X2) -> mark# X1, mark# U134(X1, X2, X3, X4) -> mark# X1)
    (mark# U31(X1, X2) -> mark# X1, mark# U134(X1, X2, X3, X4) -> active# U134(mark X1, X2, X3, X4))
    (mark# U31(X1, X2) -> mark# X1, mark# U134(X1, X2, X3, X4) -> U134#(mark X1, X2, X3, X4))
    (mark# U31(X1, X2) -> mark# X1, mark# U135(X1, X2, X3, X4) -> mark# X1)
    (mark# U31(X1, X2) -> mark# X1, mark# U135(X1, X2, X3, X4) -> active# U135(mark X1, X2, X3, X4))
    (mark# U31(X1, X2) -> mark# X1, mark# U135(X1, X2, X3, X4) -> U135#(mark X1, X2, X3, X4))
    (mark# U31(X1, X2) -> mark# X1, mark# U136(X1, X2, X3, X4) -> mark# X1)
    (mark# U31(X1, X2) -> mark# X1, mark# U136(X1, X2, X3, X4) -> active# U136(mark X1, X2, X3, X4))
    (mark# U31(X1, X2) -> mark# X1, mark# U136(X1, X2, X3, X4) -> U136#(mark X1, X2, X3, X4))
    (mark# U31(X1, X2) -> mark# X1, mark# take(X1, X2) -> mark# X1)
    (mark# U31(X1, X2) -> mark# X1, mark# take(X1, X2) -> mark# X2)
    (mark# U31(X1, X2) -> mark# X1, mark# take(X1, X2) -> active# take(mark X1, mark X2))
    (mark# U31(X1, X2) -> mark# X1, mark# take(X1, X2) -> take#(mark X1, mark X2))
    (mark# U31(X1, X2) -> mark# X1, mark# U22(X1, X2) -> mark# X1)
    (mark# U31(X1, X2) -> mark# X1, mark# U22(X1, X2) -> active# U22(mark X1, X2))
    (mark# U31(X1, X2) -> mark# X1, mark# U22(X1, X2) -> U22#(mark X1, X2))
    (mark# U31(X1, X2) -> mark# X1, mark# U21(X1, X2) -> mark# X1)
    (mark# U31(X1, X2) -> mark# X1, mark# U21(X1, X2) -> active# U21(mark X1, X2))
    (mark# U31(X1, X2) -> mark# X1, mark# U21(X1, X2) -> U21#(mark X1, X2))
    (mark# U31(X1, X2) -> mark# X1, mark# U23 X -> mark# X)
    (mark# U31(X1, X2) -> mark# X1, mark# U23 X -> active# U23 mark X)
    (mark# U31(X1, X2) -> mark# X1, mark# U23 X -> U23# mark X)
    (mark# U31(X1, X2) -> mark# X1, mark# U32(X1, X2) -> mark# X1)
    (mark# U31(X1, X2) -> mark# X1, mark# U32(X1, X2) -> active# U32(mark X1, X2))
    (mark# U31(X1, X2) -> mark# X1, mark# U32(X1, X2) -> U32#(mark X1, X2))
    (mark# U31(X1, X2) -> mark# X1, mark# U31(X1, X2) -> mark# X1)
    (mark# U31(X1, X2) -> mark# X1, mark# U31(X1, X2) -> active# U31(mark X1, X2))
    (mark# U31(X1, X2) -> mark# X1, mark# U31(X1, X2) -> U31#(mark X1, X2))
    (mark# U31(X1, X2) -> mark# X1, mark# U33 X -> mark# X)
    (mark# U31(X1, X2) -> mark# X1, mark# U33 X -> active# U33 mark X)
    (mark# U31(X1, X2) -> mark# X1, mark# U33 X -> U33# mark X)
    (mark# U31(X1, X2) -> mark# X1, mark# U42(X1, X2, X3) -> mark# X1)
    (mark# U31(X1, X2) -> mark# X1, mark# U42(X1, X2, X3) -> active# U42(mark X1, X2, X3))
    (mark# U31(X1, X2) -> mark# X1, mark# U42(X1, X2, X3) -> U42#(mark X1, X2, X3))
    (mark# U31(X1, X2) -> mark# X1, mark# U41(X1, X2, X3) -> mark# X1)
    (mark# U31(X1, X2) -> mark# X1, mark# U41(X1, X2, X3) -> active# U41(mark X1, X2, X3))
    (mark# U31(X1, X2) -> mark# X1, mark# U41(X1, X2, X3) -> U41#(mark X1, X2, X3))
    (mark# U31(X1, X2) -> mark# X1, mark# U43(X1, X2, X3) -> mark# X1)
    (mark# U31(X1, X2) -> mark# X1, mark# U43(X1, X2, X3) -> active# U43(mark X1, X2, X3))
    (mark# U31(X1, X2) -> mark# X1, mark# U43(X1, X2, X3) -> U43#(mark X1, X2, X3))
    (mark# U31(X1, X2) -> mark# X1, mark# U44(X1, X2, X3) -> mark# X1)
    (mark# U31(X1, X2) -> mark# X1, mark# U44(X1, X2, X3) -> active# U44(mark X1, X2, X3))
    (mark# U31(X1, X2) -> mark# X1, mark# U44(X1, X2, X3) -> U44#(mark X1, X2, X3))
    (mark# U31(X1, X2) -> mark# X1, mark# U45(X1, X2) -> mark# X1)
    (mark# U31(X1, X2) -> mark# X1, mark# U45(X1, X2) -> active# U45(mark X1, X2))
    (mark# U31(X1, X2) -> mark# X1, mark# U45(X1, X2) -> U45#(mark X1, X2))
    (mark# U31(X1, X2) -> mark# X1, mark# U46 X -> mark# X)
    (mark# U31(X1, X2) -> mark# X1, mark# U46 X -> active# U46 mark X)
    (mark# U31(X1, X2) -> mark# X1, mark# U46 X -> U46# mark X)
    (mark# U31(X1, X2) -> mark# X1, mark# U52 X -> mark# X)
    (mark# U31(X1, X2) -> mark# X1, mark# U52 X -> active# U52 mark X)
    (mark# U31(X1, X2) -> mark# X1, mark# U52 X -> U52# mark X)
    (mark# U31(X1, X2) -> mark# X1, mark# U51(X1, X2) -> mark# X1)
    (mark# U31(X1, X2) -> mark# X1, mark# U51(X1, X2) -> active# U51(mark X1, X2))
    (mark# U31(X1, X2) -> mark# X1, mark# U51(X1, X2) -> U51#(mark X1, X2))
    (mark# U31(X1, X2) -> mark# X1, mark# U62 X -> mark# X)
    (mark# U31(X1, X2) -> mark# X1, mark# U62 X -> active# U62 mark X)
    (mark# U31(X1, X2) -> mark# X1, mark# U62 X -> U62# mark X)
    (mark# U31(X1, X2) -> mark# X1, mark# U61(X1, X2) -> mark# X1)
    (mark# U31(X1, X2) -> mark# X1, mark# U61(X1, X2) -> active# U61(mark X1, X2))
    (mark# U31(X1, X2) -> mark# X1, mark# U61(X1, X2) -> U61#(mark X1, X2))
    (mark# U31(X1, X2) -> mark# X1, mark# U71 X -> mark# X)
    (mark# U31(X1, X2) -> mark# X1, mark# U71 X -> active# U71 mark X)
    (mark# U31(X1, X2) -> mark# X1, mark# U71 X -> U71# mark X)
    (mark# U31(X1, X2) -> mark# X1, mark# U81 X -> mark# X)
    (mark# U31(X1, X2) -> mark# X1, mark# U81 X -> active# U81 mark X)
    (mark# U31(X1, X2) -> mark# X1, mark# U81 X -> U81# mark X)
    (mark# U31(X1, X2) -> mark# X1, mark# U92(X1, X2, X3) -> mark# X1)
    (mark# U31(X1, X2) -> mark# X1, mark# U92(X1, X2, X3) -> active# U92(mark X1, X2, X3))
    (mark# U31(X1, X2) -> mark# X1, mark# U92(X1, X2, X3) -> U92#(mark X1, X2, X3))
    (mark# U31(X1, X2) -> mark# X1, mark# U91(X1, X2, X3) -> mark# X1)
    (mark# U31(X1, X2) -> mark# X1, mark# U91(X1, X2, X3) -> active# U91(mark X1, X2, X3))
    (mark# U31(X1, X2) -> mark# X1, mark# U91(X1, X2, X3) -> U91#(mark X1, X2, X3))
    (mark# U31(X1, X2) -> mark# X1, mark# U93(X1, X2, X3) -> mark# X1)
    (mark# U31(X1, X2) -> mark# X1, mark# U93(X1, X2, X3) -> active# U93(mark X1, X2, X3))
    (mark# U31(X1, X2) -> mark# X1, mark# U93(X1, X2, X3) -> U93#(mark X1, X2, X3))
    (mark# U31(X1, X2) -> mark# X1, mark# U94(X1, X2, X3) -> mark# X1)
    (mark# U31(X1, X2) -> mark# X1, mark# U94(X1, X2, X3) -> active# U94(mark X1, X2, X3))
    (mark# U31(X1, X2) -> mark# X1, mark# U94(X1, X2, X3) -> U94#(mark X1, X2, X3))
    (mark# U31(X1, X2) -> mark# X1, mark# U95(X1, X2) -> mark# X1)
    (mark# U31(X1, X2) -> mark# X1, mark# U95(X1, X2) -> active# U95(mark X1, X2))
    (mark# U31(X1, X2) -> mark# X1, mark# U95(X1, X2) -> U95#(mark X1, X2))
    (mark# U31(X1, X2) -> mark# X1, mark# U96 X -> mark# X)
    (mark# U31(X1, X2) -> mark# X1, mark# U96 X -> active# U96 mark X)
    (mark# U31(X1, X2) -> mark# X1, mark# U96 X -> U96# mark X)
    (mark# U21(X1, X2) -> mark# X1, mark# cons(X1, X2) -> mark# X1)
    (mark# U21(X1, X2) -> mark# X1, mark# cons(X1, X2) -> cons#(mark X1, X2))
    (mark# U21(X1, X2) -> mark# X1, mark# cons(X1, X2) -> active# cons(mark X1, X2))
    (mark# U21(X1, X2) -> mark# X1, mark# 0() -> active# 0())
    (mark# U21(X1, X2) -> mark# X1, mark# zeros() -> active# zeros())
    (mark# U21(X1, X2) -> mark# X1, mark# U102(X1, X2, X3) -> mark# X1)
    (mark# U21(X1, X2) -> mark# X1, mark# U102(X1, X2, X3) -> active# U102(mark X1, X2, X3))
    (mark# U21(X1, X2) -> mark# X1, mark# U102(X1, X2, X3) -> U102#(mark X1, X2, X3))
    (mark# U21(X1, X2) -> mark# X1, mark# isNatKind X -> active# isNatKind X)
    (mark# U21(X1, X2) -> mark# X1, mark# U101(X1, X2, X3) -> mark# X1)
    (mark# U21(X1, X2) -> mark# X1, mark# U101(X1, X2, X3) -> active# U101(mark X1, X2, X3))
    (mark# U21(X1, X2) -> mark# X1, mark# U101(X1, X2, X3) -> U101#(mark X1, X2, X3))
    (mark# U21(X1, X2) -> mark# X1, mark# tt() -> active# tt())
    (mark# U21(X1, X2) -> mark# X1, mark# U103(X1, X2, X3) -> mark# X1)
    (mark# U21(X1, X2) -> mark# X1, mark# U103(X1, X2, X3) -> active# U103(mark X1, X2, X3))
    (mark# U21(X1, X2) -> mark# X1, mark# U103(X1, X2, X3) -> U103#(mark X1, X2, X3))
    (mark# U21(X1, X2) -> mark# X1, mark# isNatIListKind X -> active# isNatIListKind X)
    (mark# U21(X1, X2) -> mark# X1, mark# U104(X1, X2, X3) -> mark# X1)
    (mark# U21(X1, X2) -> mark# X1, mark# U104(X1, X2, X3) -> active# U104(mark X1, X2, X3))
    (mark# U21(X1, X2) -> mark# X1, mark# U104(X1, X2, X3) -> U104#(mark X1, X2, X3))
    (mark# U21(X1, X2) -> mark# X1, mark# U105(X1, X2) -> mark# X1)
    (mark# U21(X1, X2) -> mark# X1, mark# U105(X1, X2) -> active# U105(mark X1, X2))
    (mark# U21(X1, X2) -> mark# X1, mark# U105(X1, X2) -> U105#(mark X1, X2))
    (mark# U21(X1, X2) -> mark# X1, mark# isNat X -> active# isNat X)
    (mark# U21(X1, X2) -> mark# X1, mark# U106 X -> mark# X)
    (mark# U21(X1, X2) -> mark# X1, mark# U106 X -> active# U106 mark X)
    (mark# U21(X1, X2) -> mark# X1, mark# U106 X -> U106# mark X)
    (mark# U21(X1, X2) -> mark# X1, mark# isNatIList X -> active# isNatIList X)
    (mark# U21(X1, X2) -> mark# X1, mark# U12(X1, X2) -> mark# X1)
    (mark# U21(X1, X2) -> mark# X1, mark# U12(X1, X2) -> active# U12(mark X1, X2))
    (mark# U21(X1, X2) -> mark# X1, mark# U12(X1, X2) -> U12#(mark X1, X2))
    (mark# U21(X1, X2) -> mark# X1, mark# U11(X1, X2) -> mark# X1)
    (mark# U21(X1, X2) -> mark# X1, mark# U11(X1, X2) -> active# U11(mark X1, X2))
    (mark# U21(X1, X2) -> mark# X1, mark# U11(X1, X2) -> U11#(mark X1, X2))
    (mark# U21(X1, X2) -> mark# X1, mark# U112(X1, X2, X3) -> mark# X1)
    (mark# U21(X1, X2) -> mark# X1, mark# U112(X1, X2, X3) -> active# U112(mark X1, X2, X3))
    (mark# U21(X1, X2) -> mark# X1, mark# U112(X1, X2, X3) -> U112#(mark X1, X2, X3))
    (mark# U21(X1, X2) -> mark# X1, mark# U111(X1, X2, X3) -> mark# X1)
    (mark# U21(X1, X2) -> mark# X1, mark# U111(X1, X2, X3) -> active# U111(mark X1, X2, X3))
    (mark# U21(X1, X2) -> mark# X1, mark# U111(X1, X2, X3) -> U111#(mark X1, X2, X3))
    (mark# U21(X1, X2) -> mark# X1, mark# U113(X1, X2, X3) -> mark# X1)
    (mark# U21(X1, X2) -> mark# X1, mark# U113(X1, X2, X3) -> active# U113(mark X1, X2, X3))
    (mark# U21(X1, X2) -> mark# X1, mark# U113(X1, X2, X3) -> U113#(mark X1, X2, X3))
    (mark# U21(X1, X2) -> mark# X1, mark# U114(X1, X2) -> mark# X1)
    (mark# U21(X1, X2) -> mark# X1, mark# U114(X1, X2) -> active# U114(mark X1, X2))
    (mark# U21(X1, X2) -> mark# X1, mark# U114(X1, X2) -> U114#(mark X1, X2))
    (mark# U21(X1, X2) -> mark# X1, mark# s X -> mark# X)
    (mark# U21(X1, X2) -> mark# X1, mark# s X -> active# s mark X)
    (mark# U21(X1, X2) -> mark# X1, mark# s X -> s# mark X)
    (mark# U21(X1, X2) -> mark# X1, mark# length X -> mark# X)
    (mark# U21(X1, X2) -> mark# X1, mark# length X -> active# length mark X)
    (mark# U21(X1, X2) -> mark# X1, mark# length X -> length# mark X)
    (mark# U21(X1, X2) -> mark# X1, mark# U13 X -> mark# X)
    (mark# U21(X1, X2) -> mark# X1, mark# U13 X -> active# U13 mark X)
    (mark# U21(X1, X2) -> mark# X1, mark# U13 X -> U13# mark X)
    (mark# U21(X1, X2) -> mark# X1, mark# isNatList X -> active# isNatList X)
    (mark# U21(X1, X2) -> mark# X1, mark# U122 X -> mark# X)
    (mark# U21(X1, X2) -> mark# X1, mark# U122 X -> active# U122 mark X)
    (mark# U21(X1, X2) -> mark# X1, mark# U122 X -> U122# mark X)
    (mark# U21(X1, X2) -> mark# X1, mark# U121(X1, X2) -> mark# X1)
    (mark# U21(X1, X2) -> mark# X1, mark# U121(X1, X2) -> active# U121(mark X1, X2))
    (mark# U21(X1, X2) -> mark# X1, mark# U121(X1, X2) -> U121#(mark X1, X2))
    (mark# U21(X1, X2) -> mark# X1, mark# nil() -> active# nil())
    (mark# U21(X1, X2) -> mark# X1, mark# U132(X1, X2, X3, X4) -> mark# X1)
    (mark# U21(X1, X2) -> mark# X1, mark# U132(X1, X2, X3, X4) -> active# U132(mark X1, X2, X3, X4))
    (mark# U21(X1, X2) -> mark# X1, mark# U132(X1, X2, X3, X4) -> U132#(mark X1, X2, X3, X4))
    (mark# U21(X1, X2) -> mark# X1, mark# U131(X1, X2, X3, X4) -> mark# X1)
    (mark# U21(X1, X2) -> mark# X1, mark# U131(X1, X2, X3, X4) -> active# U131(mark X1, X2, X3, X4))
    (mark# U21(X1, X2) -> mark# X1, mark# U131(X1, X2, X3, X4) -> U131#(mark X1, X2, X3, X4))
    (mark# U21(X1, X2) -> mark# X1, mark# U133(X1, X2, X3, X4) -> mark# X1)
    (mark# U21(X1, X2) -> mark# X1, mark# U133(X1, X2, X3, X4) -> active# U133(mark X1, X2, X3, X4))
    (mark# U21(X1, X2) -> mark# X1, mark# U133(X1, X2, X3, X4) -> U133#(mark X1, X2, X3, X4))
    (mark# U21(X1, X2) -> mark# X1, mark# U134(X1, X2, X3, X4) -> mark# X1)
    (mark# U21(X1, X2) -> mark# X1, mark# U134(X1, X2, X3, X4) -> active# U134(mark X1, X2, X3, X4))
    (mark# U21(X1, X2) -> mark# X1, mark# U134(X1, X2, X3, X4) -> U134#(mark X1, X2, X3, X4))
    (mark# U21(X1, X2) -> mark# X1, mark# U135(X1, X2, X3, X4) -> mark# X1)
    (mark# U21(X1, X2) -> mark# X1, mark# U135(X1, X2, X3, X4) -> active# U135(mark X1, X2, X3, X4))
    (mark# U21(X1, X2) -> mark# X1, mark# U135(X1, X2, X3, X4) -> U135#(mark X1, X2, X3, X4))
    (mark# U21(X1, X2) -> mark# X1, mark# U136(X1, X2, X3, X4) -> mark# X1)
    (mark# U21(X1, X2) -> mark# X1, mark# U136(X1, X2, X3, X4) -> active# U136(mark X1, X2, X3, X4))
    (mark# U21(X1, X2) -> mark# X1, mark# U136(X1, X2, X3, X4) -> U136#(mark X1, X2, X3, X4))
    (mark# U21(X1, X2) -> mark# X1, mark# take(X1, X2) -> mark# X1)
    (mark# U21(X1, X2) -> mark# X1, mark# take(X1, X2) -> mark# X2)
    (mark# U21(X1, X2) -> mark# X1, mark# take(X1, X2) -> active# take(mark X1, mark X2))
    (mark# U21(X1, X2) -> mark# X1, mark# take(X1, X2) -> take#(mark X1, mark X2))
    (mark# U21(X1, X2) -> mark# X1, mark# U22(X1, X2) -> mark# X1)
    (mark# U21(X1, X2) -> mark# X1, mark# U22(X1, X2) -> active# U22(mark X1, X2))
    (mark# U21(X1, X2) -> mark# X1, mark# U22(X1, X2) -> U22#(mark X1, X2))
    (mark# U21(X1, X2) -> mark# X1, mark# U21(X1, X2) -> mark# X1)
    (mark# U21(X1, X2) -> mark# X1, mark# U21(X1, X2) -> active# U21(mark X1, X2))
    (mark# U21(X1, X2) -> mark# X1, mark# U21(X1, X2) -> U21#(mark X1, X2))
    (mark# U21(X1, X2) -> mark# X1, mark# U23 X -> mark# X)
    (mark# U21(X1, X2) -> mark# X1, mark# U23 X -> active# U23 mark X)
    (mark# U21(X1, X2) -> mark# X1, mark# U23 X -> U23# mark X)
    (mark# U21(X1, X2) -> mark# X1, mark# U32(X1, X2) -> mark# X1)
    (mark# U21(X1, X2) -> mark# X1, mark# U32(X1, X2) -> active# U32(mark X1, X2))
    (mark# U21(X1, X2) -> mark# X1, mark# U32(X1, X2) -> U32#(mark X1, X2))
    (mark# U21(X1, X2) -> mark# X1, mark# U31(X1, X2) -> mark# X1)
    (mark# U21(X1, X2) -> mark# X1, mark# U31(X1, X2) -> active# U31(mark X1, X2))
    (mark# U21(X1, X2) -> mark# X1, mark# U31(X1, X2) -> U31#(mark X1, X2))
    (mark# U21(X1, X2) -> mark# X1, mark# U33 X -> mark# X)
    (mark# U21(X1, X2) -> mark# X1, mark# U33 X -> active# U33 mark X)
    (mark# U21(X1, X2) -> mark# X1, mark# U33 X -> U33# mark X)
    (mark# U21(X1, X2) -> mark# X1, mark# U42(X1, X2, X3) -> mark# X1)
    (mark# U21(X1, X2) -> mark# X1, mark# U42(X1, X2, X3) -> active# U42(mark X1, X2, X3))
    (mark# U21(X1, X2) -> mark# X1, mark# U42(X1, X2, X3) -> U42#(mark X1, X2, X3))
    (mark# U21(X1, X2) -> mark# X1, mark# U41(X1, X2, X3) -> mark# X1)
    (mark# U21(X1, X2) -> mark# X1, mark# U41(X1, X2, X3) -> active# U41(mark X1, X2, X3))
    (mark# U21(X1, X2) -> mark# X1, mark# U41(X1, X2, X3) -> U41#(mark X1, X2, X3))
    (mark# U21(X1, X2) -> mark# X1, mark# U43(X1, X2, X3) -> mark# X1)
    (mark# U21(X1, X2) -> mark# X1, mark# U43(X1, X2, X3) -> active# U43(mark X1, X2, X3))
    (mark# U21(X1, X2) -> mark# X1, mark# U43(X1, X2, X3) -> U43#(mark X1, X2, X3))
    (mark# U21(X1, X2) -> mark# X1, mark# U44(X1, X2, X3) -> mark# X1)
    (mark# U21(X1, X2) -> mark# X1, mark# U44(X1, X2, X3) -> active# U44(mark X1, X2, X3))
    (mark# U21(X1, X2) -> mark# X1, mark# U44(X1, X2, X3) -> U44#(mark X1, X2, X3))
    (mark# U21(X1, X2) -> mark# X1, mark# U45(X1, X2) -> mark# X1)
    (mark# U21(X1, X2) -> mark# X1, mark# U45(X1, X2) -> active# U45(mark X1, X2))
    (mark# U21(X1, X2) -> mark# X1, mark# U45(X1, X2) -> U45#(mark X1, X2))
    (mark# U21(X1, X2) -> mark# X1, mark# U46 X -> mark# X)
    (mark# U21(X1, X2) -> mark# X1, mark# U46 X -> active# U46 mark X)
    (mark# U21(X1, X2) -> mark# X1, mark# U46 X -> U46# mark X)
    (mark# U21(X1, X2) -> mark# X1, mark# U52 X -> mark# X)
    (mark# U21(X1, X2) -> mark# X1, mark# U52 X -> active# U52 mark X)
    (mark# U21(X1, X2) -> mark# X1, mark# U52 X -> U52# mark X)
    (mark# U21(X1, X2) -> mark# X1, mark# U51(X1, X2) -> mark# X1)
    (mark# U21(X1, X2) -> mark# X1, mark# U51(X1, X2) -> active# U51(mark X1, X2))
    (mark# U21(X1, X2) -> mark# X1, mark# U51(X1, X2) -> U51#(mark X1, X2))
    (mark# U21(X1, X2) -> mark# X1, mark# U62 X -> mark# X)
    (mark# U21(X1, X2) -> mark# X1, mark# U62 X -> active# U62 mark X)
    (mark# U21(X1, X2) -> mark# X1, mark# U62 X -> U62# mark X)
    (mark# U21(X1, X2) -> mark# X1, mark# U61(X1, X2) -> mark# X1)
    (mark# U21(X1, X2) -> mark# X1, mark# U61(X1, X2) -> active# U61(mark X1, X2))
    (mark# U21(X1, X2) -> mark# X1, mark# U61(X1, X2) -> U61#(mark X1, X2))
    (mark# U21(X1, X2) -> mark# X1, mark# U71 X -> mark# X)
    (mark# U21(X1, X2) -> mark# X1, mark# U71 X -> active# U71 mark X)
    (mark# U21(X1, X2) -> mark# X1, mark# U71 X -> U71# mark X)
    (mark# U21(X1, X2) -> mark# X1, mark# U81 X -> mark# X)
    (mark# U21(X1, X2) -> mark# X1, mark# U81 X -> active# U81 mark X)
    (mark# U21(X1, X2) -> mark# X1, mark# U81 X -> U81# mark X)
    (mark# U21(X1, X2) -> mark# X1, mark# U92(X1, X2, X3) -> mark# X1)
    (mark# U21(X1, X2) -> mark# X1, mark# U92(X1, X2, X3) -> active# U92(mark X1, X2, X3))
    (mark# U21(X1, X2) -> mark# X1, mark# U92(X1, X2, X3) -> U92#(mark X1, X2, X3))
    (mark# U21(X1, X2) -> mark# X1, mark# U91(X1, X2, X3) -> mark# X1)
    (mark# U21(X1, X2) -> mark# X1, mark# U91(X1, X2, X3) -> active# U91(mark X1, X2, X3))
    (mark# U21(X1, X2) -> mark# X1, mark# U91(X1, X2, X3) -> U91#(mark X1, X2, X3))
    (mark# U21(X1, X2) -> mark# X1, mark# U93(X1, X2, X3) -> mark# X1)
    (mark# U21(X1, X2) -> mark# X1, mark# U93(X1, X2, X3) -> active# U93(mark X1, X2, X3))
    (mark# U21(X1, X2) -> mark# X1, mark# U93(X1, X2, X3) -> U93#(mark X1, X2, X3))
    (mark# U21(X1, X2) -> mark# X1, mark# U94(X1, X2, X3) -> mark# X1)
    (mark# U21(X1, X2) -> mark# X1, mark# U94(X1, X2, X3) -> active# U94(mark X1, X2, X3))
    (mark# U21(X1, X2) -> mark# X1, mark# U94(X1, X2, X3) -> U94#(mark X1, X2, X3))
    (mark# U21(X1, X2) -> mark# X1, mark# U95(X1, X2) -> mark# X1)
    (mark# U21(X1, X2) -> mark# X1, mark# U95(X1, X2) -> active# U95(mark X1, X2))
    (mark# U21(X1, X2) -> mark# X1, mark# U95(X1, X2) -> U95#(mark X1, X2))
    (mark# U21(X1, X2) -> mark# X1, mark# U96 X -> mark# X)
    (mark# U21(X1, X2) -> mark# X1, mark# U96 X -> active# U96 mark X)
    (mark# U21(X1, X2) -> mark# X1, mark# U96 X -> U96# mark X)
    (mark# take(X1, X2) -> mark# X1, mark# cons(X1, X2) -> mark# X1)
    (mark# take(X1, X2) -> mark# X1, mark# cons(X1, X2) -> cons#(mark X1, X2))
    (mark# take(X1, X2) -> mark# X1, mark# cons(X1, X2) -> active# cons(mark X1, X2))
    (mark# take(X1, X2) -> mark# X1, mark# 0() -> active# 0())
    (mark# take(X1, X2) -> mark# X1, mark# zeros() -> active# zeros())
    (mark# take(X1, X2) -> mark# X1, mark# U102(X1, X2, X3) -> mark# X1)
    (mark# take(X1, X2) -> mark# X1, mark# U102(X1, X2, X3) -> active# U102(mark X1, X2, X3))
    (mark# take(X1, X2) -> mark# X1, mark# U102(X1, X2, X3) -> U102#(mark X1, X2, X3))
    (mark# take(X1, X2) -> mark# X1, mark# isNatKind X -> active# isNatKind X)
    (mark# take(X1, X2) -> mark# X1, mark# U101(X1, X2, X3) -> mark# X1)
    (mark# take(X1, X2) -> mark# X1, mark# U101(X1, X2, X3) -> active# U101(mark X1, X2, X3))
    (mark# take(X1, X2) -> mark# X1, mark# U101(X1, X2, X3) -> U101#(mark X1, X2, X3))
    (mark# take(X1, X2) -> mark# X1, mark# tt() -> active# tt())
    (mark# take(X1, X2) -> mark# X1, mark# U103(X1, X2, X3) -> mark# X1)
    (mark# take(X1, X2) -> mark# X1, mark# U103(X1, X2, X3) -> active# U103(mark X1, X2, X3))
    (mark# take(X1, X2) -> mark# X1, mark# U103(X1, X2, X3) -> U103#(mark X1, X2, X3))
    (mark# take(X1, X2) -> mark# X1, mark# isNatIListKind X -> active# isNatIListKind X)
    (mark# take(X1, X2) -> mark# X1, mark# U104(X1, X2, X3) -> mark# X1)
    (mark# take(X1, X2) -> mark# X1, mark# U104(X1, X2, X3) -> active# U104(mark X1, X2, X3))
    (mark# take(X1, X2) -> mark# X1, mark# U104(X1, X2, X3) -> U104#(mark X1, X2, X3))
    (mark# take(X1, X2) -> mark# X1, mark# U105(X1, X2) -> mark# X1)
    (mark# take(X1, X2) -> mark# X1, mark# U105(X1, X2) -> active# U105(mark X1, X2))
    (mark# take(X1, X2) -> mark# X1, mark# U105(X1, X2) -> U105#(mark X1, X2))
    (mark# take(X1, X2) -> mark# X1, mark# isNat X -> active# isNat X)
    (mark# take(X1, X2) -> mark# X1, mark# U106 X -> mark# X)
    (mark# take(X1, X2) -> mark# X1, mark# U106 X -> active# U106 mark X)
    (mark# take(X1, X2) -> mark# X1, mark# U106 X -> U106# mark X)
    (mark# take(X1, X2) -> mark# X1, mark# isNatIList X -> active# isNatIList X)
    (mark# take(X1, X2) -> mark# X1, mark# U12(X1, X2) -> mark# X1)
    (mark# take(X1, X2) -> mark# X1, mark# U12(X1, X2) -> active# U12(mark X1, X2))
    (mark# take(X1, X2) -> mark# X1, mark# U12(X1, X2) -> U12#(mark X1, X2))
    (mark# take(X1, X2) -> mark# X1, mark# U11(X1, X2) -> mark# X1)
    (mark# take(X1, X2) -> mark# X1, mark# U11(X1, X2) -> active# U11(mark X1, X2))
    (mark# take(X1, X2) -> mark# X1, mark# U11(X1, X2) -> U11#(mark X1, X2))
    (mark# take(X1, X2) -> mark# X1, mark# U112(X1, X2, X3) -> mark# X1)
    (mark# take(X1, X2) -> mark# X1, mark# U112(X1, X2, X3) -> active# U112(mark X1, X2, X3))
    (mark# take(X1, X2) -> mark# X1, mark# U112(X1, X2, X3) -> U112#(mark X1, X2, X3))
    (mark# take(X1, X2) -> mark# X1, mark# U111(X1, X2, X3) -> mark# X1)
    (mark# take(X1, X2) -> mark# X1, mark# U111(X1, X2, X3) -> active# U111(mark X1, X2, X3))
    (mark# take(X1, X2) -> mark# X1, mark# U111(X1, X2, X3) -> U111#(mark X1, X2, X3))
    (mark# take(X1, X2) -> mark# X1, mark# U113(X1, X2, X3) -> mark# X1)
    (mark# take(X1, X2) -> mark# X1, mark# U113(X1, X2, X3) -> active# U113(mark X1, X2, X3))
    (mark# take(X1, X2) -> mark# X1, mark# U113(X1, X2, X3) -> U113#(mark X1, X2, X3))
    (mark# take(X1, X2) -> mark# X1, mark# U114(X1, X2) -> mark# X1)
    (mark# take(X1, X2) -> mark# X1, mark# U114(X1, X2) -> active# U114(mark X1, X2))
    (mark# take(X1, X2) -> mark# X1, mark# U114(X1, X2) -> U114#(mark X1, X2))
    (mark# take(X1, X2) -> mark# X1, mark# s X -> mark# X)
    (mark# take(X1, X2) -> mark# X1, mark# s X -> active# s mark X)
    (mark# take(X1, X2) -> mark# X1, mark# s X -> s# mark X)
    (mark# take(X1, X2) -> mark# X1, mark# length X -> mark# X)
    (mark# take(X1, X2) -> mark# X1, mark# length X -> active# length mark X)
    (mark# take(X1, X2) -> mark# X1, mark# length X -> length# mark X)
    (mark# take(X1, X2) -> mark# X1, mark# U13 X -> mark# X)
    (mark# take(X1, X2) -> mark# X1, mark# U13 X -> active# U13 mark X)
    (mark# take(X1, X2) -> mark# X1, mark# U13 X -> U13# mark X)
    (mark# take(X1, X2) -> mark# X1, mark# isNatList X -> active# isNatList X)
    (mark# take(X1, X2) -> mark# X1, mark# U122 X -> mark# X)
    (mark# take(X1, X2) -> mark# X1, mark# U122 X -> active# U122 mark X)
    (mark# take(X1, X2) -> mark# X1, mark# U122 X -> U122# mark X)
    (mark# take(X1, X2) -> mark# X1, mark# U121(X1, X2) -> mark# X1)
    (mark# take(X1, X2) -> mark# X1, mark# U121(X1, X2) -> active# U121(mark X1, X2))
    (mark# take(X1, X2) -> mark# X1, mark# U121(X1, X2) -> U121#(mark X1, X2))
    (mark# take(X1, X2) -> mark# X1, mark# nil() -> active# nil())
    (mark# take(X1, X2) -> mark# X1, mark# U132(X1, X2, X3, X4) -> mark# X1)
    (mark# take(X1, X2) -> mark# X1, mark# U132(X1, X2, X3, X4) -> active# U132(mark X1, X2, X3, X4))
    (mark# take(X1, X2) -> mark# X1, mark# U132(X1, X2, X3, X4) -> U132#(mark X1, X2, X3, X4))
    (mark# take(X1, X2) -> mark# X1, mark# U131(X1, X2, X3, X4) -> mark# X1)
    (mark# take(X1, X2) -> mark# X1, mark# U131(X1, X2, X3, X4) -> active# U131(mark X1, X2, X3, X4))
    (mark# take(X1, X2) -> mark# X1, mark# U131(X1, X2, X3, X4) -> U131#(mark X1, X2, X3, X4))
    (mark# take(X1, X2) -> mark# X1, mark# U133(X1, X2, X3, X4) -> mark# X1)
    (mark# take(X1, X2) -> mark# X1, mark# U133(X1, X2, X3, X4) -> active# U133(mark X1, X2, X3, X4))
    (mark# take(X1, X2) -> mark# X1, mark# U133(X1, X2, X3, X4) -> U133#(mark X1, X2, X3, X4))
    (mark# take(X1, X2) -> mark# X1, mark# U134(X1, X2, X3, X4) -> mark# X1)
    (mark# take(X1, X2) -> mark# X1, mark# U134(X1, X2, X3, X4) -> active# U134(mark X1, X2, X3, X4))
    (mark# take(X1, X2) -> mark# X1, mark# U134(X1, X2, X3, X4) -> U134#(mark X1, X2, X3, X4))
    (mark# take(X1, X2) -> mark# X1, mark# U135(X1, X2, X3, X4) -> mark# X1)
    (mark# take(X1, X2) -> mark# X1, mark# U135(X1, X2, X3, X4) -> active# U135(mark X1, X2, X3, X4))
    (mark# take(X1, X2) -> mark# X1, mark# U135(X1, X2, X3, X4) -> U135#(mark X1, X2, X3, X4))
    (mark# take(X1, X2) -> mark# X1, mark# U136(X1, X2, X3, X4) -> mark# X1)
    (mark# take(X1, X2) -> mark# X1, mark# U136(X1, X2, X3, X4) -> active# U136(mark X1, X2, X3, X4))
    (mark# take(X1, X2) -> mark# X1, mark# U136(X1, X2, X3, X4) -> U136#(mark X1, X2, X3, X4))
    (mark# take(X1, X2) -> mark# X1, mark# take(X1, X2) -> mark# X1)
    (mark# take(X1, X2) -> mark# X1, mark# take(X1, X2) -> mark# X2)
    (mark# take(X1, X2) -> mark# X1, mark# take(X1, X2) -> active# take(mark X1, mark X2))
    (mark# take(X1, X2) -> mark# X1, mark# take(X1, X2) -> take#(mark X1, mark X2))
    (mark# take(X1, X2) -> mark# X1, mark# U22(X1, X2) -> mark# X1)
    (mark# take(X1, X2) -> mark# X1, mark# U22(X1, X2) -> active# U22(mark X1, X2))
    (mark# take(X1, X2) -> mark# X1, mark# U22(X1, X2) -> U22#(mark X1, X2))
    (mark# take(X1, X2) -> mark# X1, mark# U21(X1, X2) -> mark# X1)
    (mark# take(X1, X2) -> mark# X1, mark# U21(X1, X2) -> active# U21(mark X1, X2))
    (mark# take(X1, X2) -> mark# X1, mark# U21(X1, X2) -> U21#(mark X1, X2))
    (mark# take(X1, X2) -> mark# X1, mark# U23 X -> mark# X)
    (mark# take(X1, X2) -> mark# X1, mark# U23 X -> active# U23 mark X)
    (mark# take(X1, X2) -> mark# X1, mark# U23 X -> U23# mark X)
    (mark# take(X1, X2) -> mark# X1, mark# U32(X1, X2) -> mark# X1)
    (mark# take(X1, X2) -> mark# X1, mark# U32(X1, X2) -> active# U32(mark X1, X2))
    (mark# take(X1, X2) -> mark# X1, mark# U32(X1, X2) -> U32#(mark X1, X2))
    (mark# take(X1, X2) -> mark# X1, mark# U31(X1, X2) -> mark# X1)
    (mark# take(X1, X2) -> mark# X1, mark# U31(X1, X2) -> active# U31(mark X1, X2))
    (mark# take(X1, X2) -> mark# X1, mark# U31(X1, X2) -> U31#(mark X1, X2))
    (mark# take(X1, X2) -> mark# X1, mark# U33 X -> mark# X)
    (mark# take(X1, X2) -> mark# X1, mark# U33 X -> active# U33 mark X)
    (mark# take(X1, X2) -> mark# X1, mark# U33 X -> U33# mark X)
    (mark# take(X1, X2) -> mark# X1, mark# U42(X1, X2, X3) -> mark# X1)
    (mark# take(X1, X2) -> mark# X1, mark# U42(X1, X2, X3) -> active# U42(mark X1, X2, X3))
    (mark# take(X1, X2) -> mark# X1, mark# U42(X1, X2, X3) -> U42#(mark X1, X2, X3))
    (mark# take(X1, X2) -> mark# X1, mark# U41(X1, X2, X3) -> mark# X1)
    (mark# take(X1, X2) -> mark# X1, mark# U41(X1, X2, X3) -> active# U41(mark X1, X2, X3))
    (mark# take(X1, X2) -> mark# X1, mark# U41(X1, X2, X3) -> U41#(mark X1, X2, X3))
    (mark# take(X1, X2) -> mark# X1, mark# U43(X1, X2, X3) -> mark# X1)
    (mark# take(X1, X2) -> mark# X1, mark# U43(X1, X2, X3) -> active# U43(mark X1, X2, X3))
    (mark# take(X1, X2) -> mark# X1, mark# U43(X1, X2, X3) -> U43#(mark X1, X2, X3))
    (mark# take(X1, X2) -> mark# X1, mark# U44(X1, X2, X3) -> mark# X1)
    (mark# take(X1, X2) -> mark# X1, mark# U44(X1, X2, X3) -> active# U44(mark X1, X2, X3))
    (mark# take(X1, X2) -> mark# X1, mark# U44(X1, X2, X3) -> U44#(mark X1, X2, X3))
    (mark# take(X1, X2) -> mark# X1, mark# U45(X1, X2) -> mark# X1)
    (mark# take(X1, X2) -> mark# X1, mark# U45(X1, X2) -> active# U45(mark X1, X2))
    (mark# take(X1, X2) -> mark# X1, mark# U45(X1, X2) -> U45#(mark X1, X2))
    (mark# take(X1, X2) -> mark# X1, mark# U46 X -> mark# X)
    (mark# take(X1, X2) -> mark# X1, mark# U46 X -> active# U46 mark X)
    (mark# take(X1, X2) -> mark# X1, mark# U46 X -> U46# mark X)
    (mark# take(X1, X2) -> mark# X1, mark# U52 X -> mark# X)
    (mark# take(X1, X2) -> mark# X1, mark# U52 X -> active# U52 mark X)
    (mark# take(X1, X2) -> mark# X1, mark# U52 X -> U52# mark X)
    (mark# take(X1, X2) -> mark# X1, mark# U51(X1, X2) -> mark# X1)
    (mark# take(X1, X2) -> mark# X1, mark# U51(X1, X2) -> active# U51(mark X1, X2))
    (mark# take(X1, X2) -> mark# X1, mark# U51(X1, X2) -> U51#(mark X1, X2))
    (mark# take(X1, X2) -> mark# X1, mark# U62 X -> mark# X)
    (mark# take(X1, X2) -> mark# X1, mark# U62 X -> active# U62 mark X)
    (mark# take(X1, X2) -> mark# X1, mark# U62 X -> U62# mark X)
    (mark# take(X1, X2) -> mark# X1, mark# U61(X1, X2) -> mark# X1)
    (mark# take(X1, X2) -> mark# X1, mark# U61(X1, X2) -> active# U61(mark X1, X2))
    (mark# take(X1, X2) -> mark# X1, mark# U61(X1, X2) -> U61#(mark X1, X2))
    (mark# take(X1, X2) -> mark# X1, mark# U71 X -> mark# X)
    (mark# take(X1, X2) -> mark# X1, mark# U71 X -> active# U71 mark X)
    (mark# take(X1, X2) -> mark# X1, mark# U71 X -> U71# mark X)
    (mark# take(X1, X2) -> mark# X1, mark# U81 X -> mark# X)
    (mark# take(X1, X2) -> mark# X1, mark# U81 X -> active# U81 mark X)
    (mark# take(X1, X2) -> mark# X1, mark# U81 X -> U81# mark X)
    (mark# take(X1, X2) -> mark# X1, mark# U92(X1, X2, X3) -> mark# X1)
    (mark# take(X1, X2) -> mark# X1, mark# U92(X1, X2, X3) -> active# U92(mark X1, X2, X3))
    (mark# take(X1, X2) -> mark# X1, mark# U92(X1, X2, X3) -> U92#(mark X1, X2, X3))
    (mark# take(X1, X2) -> mark# X1, mark# U91(X1, X2, X3) -> mark# X1)
    (mark# take(X1, X2) -> mark# X1, mark# U91(X1, X2, X3) -> active# U91(mark X1, X2, X3))
    (mark# take(X1, X2) -> mark# X1, mark# U91(X1, X2, X3) -> U91#(mark X1, X2, X3))
    (mark# take(X1, X2) -> mark# X1, mark# U93(X1, X2, X3) -> mark# X1)
    (mark# take(X1, X2) -> mark# X1, mark# U93(X1, X2, X3) -> active# U93(mark X1, X2, X3))
    (mark# take(X1, X2) -> mark# X1, mark# U93(X1, X2, X3) -> U93#(mark X1, X2, X3))
    (mark# take(X1, X2) -> mark# X1, mark# U94(X1, X2, X3) -> mark# X1)
    (mark# take(X1, X2) -> mark# X1, mark# U94(X1, X2, X3) -> active# U94(mark X1, X2, X3))
    (mark# take(X1, X2) -> mark# X1, mark# U94(X1, X2, X3) -> U94#(mark X1, X2, X3))
    (mark# take(X1, X2) -> mark# X1, mark# U95(X1, X2) -> mark# X1)
    (mark# take(X1, X2) -> mark# X1, mark# U95(X1, X2) -> active# U95(mark X1, X2))
    (mark# take(X1, X2) -> mark# X1, mark# U95(X1, X2) -> U95#(mark X1, X2))
    (mark# take(X1, X2) -> mark# X1, mark# U96 X -> mark# X)
    (mark# take(X1, X2) -> mark# X1, mark# U96 X -> active# U96 mark X)
    (mark# take(X1, X2) -> mark# X1, mark# U96 X -> U96# mark X)
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# cons(X1, X2) -> mark# X1)
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# cons(X1, X2) -> cons#(mark X1, X2))
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# cons(X1, X2) -> active# cons(mark X1, X2))
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# 0() -> active# 0())
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# zeros() -> active# zeros())
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U102(X1, X2, X3) -> mark# X1)
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U102(X1, X2, X3) -> active# U102(mark X1, X2, X3))
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U102(X1, X2, X3) -> U102#(mark X1, X2, X3))
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# isNatKind X -> active# isNatKind X)
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U101(X1, X2, X3) -> mark# X1)
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U101(X1, X2, X3) -> active# U101(mark X1, X2, X3))
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U101(X1, X2, X3) -> U101#(mark X1, X2, X3))
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# tt() -> active# tt())
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U103(X1, X2, X3) -> mark# X1)
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U103(X1, X2, X3) -> active# U103(mark X1, X2, X3))
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U103(X1, X2, X3) -> U103#(mark X1, X2, X3))
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# isNatIListKind X -> active# isNatIListKind X)
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U104(X1, X2, X3) -> mark# X1)
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U104(X1, X2, X3) -> active# U104(mark X1, X2, X3))
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U104(X1, X2, X3) -> U104#(mark X1, X2, X3))
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U105(X1, X2) -> mark# X1)
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U105(X1, X2) -> active# U105(mark X1, X2))
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U105(X1, X2) -> U105#(mark X1, X2))
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# isNat X -> active# isNat X)
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U106 X -> mark# X)
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U106 X -> active# U106 mark X)
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U106 X -> U106# mark X)
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# isNatIList X -> active# isNatIList X)
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U12(X1, X2) -> mark# X1)
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U12(X1, X2) -> active# U12(mark X1, X2))
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U12(X1, X2) -> U12#(mark X1, X2))
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U11(X1, X2) -> mark# X1)
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U11(X1, X2) -> active# U11(mark X1, X2))
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U11(X1, X2) -> U11#(mark X1, X2))
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U112(X1, X2, X3) -> mark# X1)
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U112(X1, X2, X3) -> active# U112(mark X1, X2, X3))
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U112(X1, X2, X3) -> U112#(mark X1, X2, X3))
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U111(X1, X2, X3) -> mark# X1)
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U111(X1, X2, X3) -> active# U111(mark X1, X2, X3))
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U111(X1, X2, X3) -> U111#(mark X1, X2, X3))
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U113(X1, X2, X3) -> mark# X1)
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U113(X1, X2, X3) -> active# U113(mark X1, X2, X3))
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U113(X1, X2, X3) -> U113#(mark X1, X2, X3))
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U114(X1, X2) -> mark# X1)
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U114(X1, X2) -> active# U114(mark X1, X2))
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U114(X1, X2) -> U114#(mark X1, X2))
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# s X -> mark# X)
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# s X -> active# s mark X)
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# s X -> s# mark X)
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# length X -> mark# X)
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# length X -> active# length mark X)
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# length X -> length# mark X)
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U13 X -> mark# X)
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U13 X -> active# U13 mark X)
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U13 X -> U13# mark X)
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# isNatList X -> active# isNatList X)
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U122 X -> mark# X)
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U122 X -> active# U122 mark X)
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U122 X -> U122# mark X)
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U121(X1, X2) -> mark# X1)
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U121(X1, X2) -> active# U121(mark X1, X2))
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U121(X1, X2) -> U121#(mark X1, X2))
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# nil() -> active# nil())
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U132(X1, X2, X3, X4) -> mark# X1)
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U132(X1, X2, X3, X4) -> active# U132(mark X1, X2, X3, X4))
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U132(X1, X2, X3, X4) -> U132#(mark X1, X2, X3, X4))
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U131(X1, X2, X3, X4) -> mark# X1)
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U131(X1, X2, X3, X4) -> active# U131(mark X1, X2, X3, X4))
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U131(X1, X2, X3, X4) -> U131#(mark X1, X2, X3, X4))
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U133(X1, X2, X3, X4) -> mark# X1)
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U133(X1, X2, X3, X4) -> active# U133(mark X1, X2, X3, X4))
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U133(X1, X2, X3, X4) -> U133#(mark X1, X2, X3, X4))
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U134(X1, X2, X3, X4) -> mark# X1)
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U134(X1, X2, X3, X4) -> active# U134(mark X1, X2, X3, X4))
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U134(X1, X2, X3, X4) -> U134#(mark X1, X2, X3, X4))
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U135(X1, X2, X3, X4) -> mark# X1)
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U135(X1, X2, X3, X4) -> active# U135(mark X1, X2, X3, X4))
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U135(X1, X2, X3, X4) -> U135#(mark X1, X2, X3, X4))
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U136(X1, X2, X3, X4) -> mark# X1)
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U136(X1, X2, X3, X4) -> active# U136(mark X1, X2, X3, X4))
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U136(X1, X2, X3, X4) -> U136#(mark X1, X2, X3, X4))
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# take(X1, X2) -> mark# X1)
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# take(X1, X2) -> mark# X2)
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# take(X1, X2) -> active# take(mark X1, mark X2))
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# take(X1, X2) -> take#(mark X1, mark X2))
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U22(X1, X2) -> mark# X1)
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U22(X1, X2) -> active# U22(mark X1, X2))
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U22(X1, X2) -> U22#(mark X1, X2))
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U21(X1, X2) -> mark# X1)
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U21(X1, X2) -> active# U21(mark X1, X2))
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U21(X1, X2) -> U21#(mark X1, X2))
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U23 X -> mark# X)
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U23 X -> active# U23 mark X)
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U23 X -> U23# mark X)
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U32(X1, X2) -> mark# X1)
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U32(X1, X2) -> active# U32(mark X1, X2))
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U32(X1, X2) -> U32#(mark X1, X2))
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U31(X1, X2) -> mark# X1)
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U31(X1, X2) -> active# U31(mark X1, X2))
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U31(X1, X2) -> U31#(mark X1, X2))
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U33 X -> mark# X)
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U33 X -> active# U33 mark X)
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U33 X -> U33# mark X)
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U42(X1, X2, X3) -> mark# X1)
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U42(X1, X2, X3) -> active# U42(mark X1, X2, X3))
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U42(X1, X2, X3) -> U42#(mark X1, X2, X3))
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U41(X1, X2, X3) -> mark# X1)
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U41(X1, X2, X3) -> active# U41(mark X1, X2, X3))
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U41(X1, X2, X3) -> U41#(mark X1, X2, X3))
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U43(X1, X2, X3) -> mark# X1)
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U43(X1, X2, X3) -> active# U43(mark X1, X2, X3))
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U43(X1, X2, X3) -> U43#(mark X1, X2, X3))
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U44(X1, X2, X3) -> mark# X1)
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U44(X1, X2, X3) -> active# U44(mark X1, X2, X3))
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U44(X1, X2, X3) -> U44#(mark X1, X2, X3))
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U45(X1, X2) -> mark# X1)
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U45(X1, X2) -> active# U45(mark X1, X2))
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U45(X1, X2) -> U45#(mark X1, X2))
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U46 X -> mark# X)
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U46 X -> active# U46 mark X)
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U46 X -> U46# mark X)
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U52 X -> mark# X)
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U52 X -> active# U52 mark X)
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U52 X -> U52# mark X)
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U51(X1, X2) -> mark# X1)
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U51(X1, X2) -> active# U51(mark X1, X2))
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U51(X1, X2) -> U51#(mark X1, X2))
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U62 X -> mark# X)
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U62 X -> active# U62 mark X)
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U62 X -> U62# mark X)
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U61(X1, X2) -> mark# X1)
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U61(X1, X2) -> active# U61(mark X1, X2))
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U61(X1, X2) -> U61#(mark X1, X2))
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U71 X -> mark# X)
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U71 X -> active# U71 mark X)
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U71 X -> U71# mark X)
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U81 X -> mark# X)
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U81 X -> active# U81 mark X)
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U81 X -> U81# mark X)
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U92(X1, X2, X3) -> mark# X1)
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U92(X1, X2, X3) -> active# U92(mark X1, X2, X3))
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U92(X1, X2, X3) -> U92#(mark X1, X2, X3))
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U91(X1, X2, X3) -> mark# X1)
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U91(X1, X2, X3) -> active# U91(mark X1, X2, X3))
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U91(X1, X2, X3) -> U91#(mark X1, X2, X3))
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U93(X1, X2, X3) -> mark# X1)
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U93(X1, X2, X3) -> active# U93(mark X1, X2, X3))
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U93(X1, X2, X3) -> U93#(mark X1, X2, X3))
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U94(X1, X2, X3) -> mark# X1)
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U94(X1, X2, X3) -> active# U94(mark X1, X2, X3))
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U94(X1, X2, X3) -> U94#(mark X1, X2, X3))
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U95(X1, X2) -> mark# X1)
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U95(X1, X2) -> active# U95(mark X1, X2))
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U95(X1, X2) -> U95#(mark X1, X2))
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U96 X -> mark# X)
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U96 X -> active# U96 mark X)
    (mark# U135(X1, X2, X3, X4) -> mark# X1, mark# U96 X -> U96# mark X)
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# cons(X1, X2) -> mark# X1)
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# cons(X1, X2) -> cons#(mark X1, X2))
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# cons(X1, X2) -> active# cons(mark X1, X2))
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# 0() -> active# 0())
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# zeros() -> active# zeros())
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U102(X1, X2, X3) -> mark# X1)
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U102(X1, X2, X3) -> active# U102(mark X1, X2, X3))
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U102(X1, X2, X3) -> U102#(mark X1, X2, X3))
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# isNatKind X -> active# isNatKind X)
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U101(X1, X2, X3) -> mark# X1)
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U101(X1, X2, X3) -> active# U101(mark X1, X2, X3))
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U101(X1, X2, X3) -> U101#(mark X1, X2, X3))
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# tt() -> active# tt())
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U103(X1, X2, X3) -> mark# X1)
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U103(X1, X2, X3) -> active# U103(mark X1, X2, X3))
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U103(X1, X2, X3) -> U103#(mark X1, X2, X3))
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# isNatIListKind X -> active# isNatIListKind X)
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U104(X1, X2, X3) -> mark# X1)
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U104(X1, X2, X3) -> active# U104(mark X1, X2, X3))
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U104(X1, X2, X3) -> U104#(mark X1, X2, X3))
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U105(X1, X2) -> mark# X1)
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U105(X1, X2) -> active# U105(mark X1, X2))
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U105(X1, X2) -> U105#(mark X1, X2))
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# isNat X -> active# isNat X)
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U106 X -> mark# X)
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U106 X -> active# U106 mark X)
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U106 X -> U106# mark X)
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# isNatIList X -> active# isNatIList X)
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U12(X1, X2) -> mark# X1)
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U12(X1, X2) -> active# U12(mark X1, X2))
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U12(X1, X2) -> U12#(mark X1, X2))
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U11(X1, X2) -> mark# X1)
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U11(X1, X2) -> active# U11(mark X1, X2))
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U11(X1, X2) -> U11#(mark X1, X2))
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U112(X1, X2, X3) -> mark# X1)
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U112(X1, X2, X3) -> active# U112(mark X1, X2, X3))
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U112(X1, X2, X3) -> U112#(mark X1, X2, X3))
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U111(X1, X2, X3) -> mark# X1)
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U111(X1, X2, X3) -> active# U111(mark X1, X2, X3))
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U111(X1, X2, X3) -> U111#(mark X1, X2, X3))
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U113(X1, X2, X3) -> mark# X1)
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U113(X1, X2, X3) -> active# U113(mark X1, X2, X3))
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U113(X1, X2, X3) -> U113#(mark X1, X2, X3))
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U114(X1, X2) -> mark# X1)
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U114(X1, X2) -> active# U114(mark X1, X2))
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U114(X1, X2) -> U114#(mark X1, X2))
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# s X -> mark# X)
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# s X -> active# s mark X)
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# s X -> s# mark X)
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# length X -> mark# X)
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# length X -> active# length mark X)
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# length X -> length# mark X)
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U13 X -> mark# X)
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U13 X -> active# U13 mark X)
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U13 X -> U13# mark X)
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# isNatList X -> active# isNatList X)
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U122 X -> mark# X)
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U122 X -> active# U122 mark X)
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U122 X -> U122# mark X)
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U121(X1, X2) -> mark# X1)
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U121(X1, X2) -> active# U121(mark X1, X2))
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U121(X1, X2) -> U121#(mark X1, X2))
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# nil() -> active# nil())
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U132(X1, X2, X3, X4) -> mark# X1)
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U132(X1, X2, X3, X4) -> active# U132(mark X1, X2, X3, X4))
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U132(X1, X2, X3, X4) -> U132#(mark X1, X2, X3, X4))
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U131(X1, X2, X3, X4) -> mark# X1)
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U131(X1, X2, X3, X4) -> active# U131(mark X1, X2, X3, X4))
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U131(X1, X2, X3, X4) -> U131#(mark X1, X2, X3, X4))
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U133(X1, X2, X3, X4) -> mark# X1)
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U133(X1, X2, X3, X4) -> active# U133(mark X1, X2, X3, X4))
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U133(X1, X2, X3, X4) -> U133#(mark X1, X2, X3, X4))
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U134(X1, X2, X3, X4) -> mark# X1)
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U134(X1, X2, X3, X4) -> active# U134(mark X1, X2, X3, X4))
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U134(X1, X2, X3, X4) -> U134#(mark X1, X2, X3, X4))
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U135(X1, X2, X3, X4) -> mark# X1)
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U135(X1, X2, X3, X4) -> active# U135(mark X1, X2, X3, X4))
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U135(X1, X2, X3, X4) -> U135#(mark X1, X2, X3, X4))
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U136(X1, X2, X3, X4) -> mark# X1)
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U136(X1, X2, X3, X4) -> active# U136(mark X1, X2, X3, X4))
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U136(X1, X2, X3, X4) -> U136#(mark X1, X2, X3, X4))
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# take(X1, X2) -> mark# X1)
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# take(X1, X2) -> mark# X2)
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# take(X1, X2) -> active# take(mark X1, mark X2))
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# take(X1, X2) -> take#(mark X1, mark X2))
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U22(X1, X2) -> mark# X1)
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U22(X1, X2) -> active# U22(mark X1, X2))
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U22(X1, X2) -> U22#(mark X1, X2))
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U21(X1, X2) -> mark# X1)
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U21(X1, X2) -> active# U21(mark X1, X2))
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U21(X1, X2) -> U21#(mark X1, X2))
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U23 X -> mark# X)
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U23 X -> active# U23 mark X)
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U23 X -> U23# mark X)
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U32(X1, X2) -> mark# X1)
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U32(X1, X2) -> active# U32(mark X1, X2))
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U32(X1, X2) -> U32#(mark X1, X2))
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U31(X1, X2) -> mark# X1)
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U31(X1, X2) -> active# U31(mark X1, X2))
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U31(X1, X2) -> U31#(mark X1, X2))
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U33 X -> mark# X)
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U33 X -> active# U33 mark X)
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U33 X -> U33# mark X)
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U42(X1, X2, X3) -> mark# X1)
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U42(X1, X2, X3) -> active# U42(mark X1, X2, X3))
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U42(X1, X2, X3) -> U42#(mark X1, X2, X3))
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U41(X1, X2, X3) -> mark# X1)
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U41(X1, X2, X3) -> active# U41(mark X1, X2, X3))
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U41(X1, X2, X3) -> U41#(mark X1, X2, X3))
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U43(X1, X2, X3) -> mark# X1)
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U43(X1, X2, X3) -> active# U43(mark X1, X2, X3))
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U43(X1, X2, X3) -> U43#(mark X1, X2, X3))
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U44(X1, X2, X3) -> mark# X1)
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U44(X1, X2, X3) -> active# U44(mark X1, X2, X3))
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U44(X1, X2, X3) -> U44#(mark X1, X2, X3))
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U45(X1, X2) -> mark# X1)
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U45(X1, X2) -> active# U45(mark X1, X2))
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U45(X1, X2) -> U45#(mark X1, X2))
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U46 X -> mark# X)
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U46 X -> active# U46 mark X)
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U46 X -> U46# mark X)
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U52 X -> mark# X)
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U52 X -> active# U52 mark X)
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U52 X -> U52# mark X)
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U51(X1, X2) -> mark# X1)
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U51(X1, X2) -> active# U51(mark X1, X2))
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U51(X1, X2) -> U51#(mark X1, X2))
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U62 X -> mark# X)
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U62 X -> active# U62 mark X)
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U62 X -> U62# mark X)
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U61(X1, X2) -> mark# X1)
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U61(X1, X2) -> active# U61(mark X1, X2))
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U61(X1, X2) -> U61#(mark X1, X2))
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U71 X -> mark# X)
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U71 X -> active# U71 mark X)
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U71 X -> U71# mark X)
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U81 X -> mark# X)
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U81 X -> active# U81 mark X)
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U81 X -> U81# mark X)
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U92(X1, X2, X3) -> mark# X1)
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U92(X1, X2, X3) -> active# U92(mark X1, X2, X3))
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U92(X1, X2, X3) -> U92#(mark X1, X2, X3))
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U91(X1, X2, X3) -> mark# X1)
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U91(X1, X2, X3) -> active# U91(mark X1, X2, X3))
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U91(X1, X2, X3) -> U91#(mark X1, X2, X3))
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U93(X1, X2, X3) -> mark# X1)
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U93(X1, X2, X3) -> active# U93(mark X1, X2, X3))
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U93(X1, X2, X3) -> U93#(mark X1, X2, X3))
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U94(X1, X2, X3) -> mark# X1)
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U94(X1, X2, X3) -> active# U94(mark X1, X2, X3))
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U94(X1, X2, X3) -> U94#(mark X1, X2, X3))
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U95(X1, X2) -> mark# X1)
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U95(X1, X2) -> active# U95(mark X1, X2))
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U95(X1, X2) -> U95#(mark X1, X2))
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U96 X -> mark# X)
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U96 X -> active# U96 mark X)
    (mark# U133(X1, X2, X3, X4) -> mark# X1, mark# U96 X -> U96# mark X)
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# cons(X1, X2) -> mark# X1)
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# cons(X1, X2) -> cons#(mark X1, X2))
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# cons(X1, X2) -> active# cons(mark X1, X2))
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# 0() -> active# 0())
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# zeros() -> active# zeros())
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U102(X1, X2, X3) -> mark# X1)
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U102(X1, X2, X3) -> active# U102(mark X1, X2, X3))
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U102(X1, X2, X3) -> U102#(mark X1, X2, X3))
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# isNatKind X -> active# isNatKind X)
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U101(X1, X2, X3) -> mark# X1)
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U101(X1, X2, X3) -> active# U101(mark X1, X2, X3))
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U101(X1, X2, X3) -> U101#(mark X1, X2, X3))
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# tt() -> active# tt())
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U103(X1, X2, X3) -> mark# X1)
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U103(X1, X2, X3) -> active# U103(mark X1, X2, X3))
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U103(X1, X2, X3) -> U103#(mark X1, X2, X3))
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# isNatIListKind X -> active# isNatIListKind X)
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U104(X1, X2, X3) -> mark# X1)
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U104(X1, X2, X3) -> active# U104(mark X1, X2, X3))
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U104(X1, X2, X3) -> U104#(mark X1, X2, X3))
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U105(X1, X2) -> mark# X1)
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U105(X1, X2) -> active# U105(mark X1, X2))
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U105(X1, X2) -> U105#(mark X1, X2))
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# isNat X -> active# isNat X)
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U106 X -> mark# X)
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U106 X -> active# U106 mark X)
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U106 X -> U106# mark X)
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# isNatIList X -> active# isNatIList X)
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U12(X1, X2) -> mark# X1)
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U12(X1, X2) -> active# U12(mark X1, X2))
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U12(X1, X2) -> U12#(mark X1, X2))
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U11(X1, X2) -> mark# X1)
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U11(X1, X2) -> active# U11(mark X1, X2))
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U11(X1, X2) -> U11#(mark X1, X2))
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U112(X1, X2, X3) -> mark# X1)
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U112(X1, X2, X3) -> active# U112(mark X1, X2, X3))
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U112(X1, X2, X3) -> U112#(mark X1, X2, X3))
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U111(X1, X2, X3) -> mark# X1)
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U111(X1, X2, X3) -> active# U111(mark X1, X2, X3))
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U111(X1, X2, X3) -> U111#(mark X1, X2, X3))
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U113(X1, X2, X3) -> mark# X1)
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U113(X1, X2, X3) -> active# U113(mark X1, X2, X3))
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U113(X1, X2, X3) -> U113#(mark X1, X2, X3))
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U114(X1, X2) -> mark# X1)
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U114(X1, X2) -> active# U114(mark X1, X2))
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U114(X1, X2) -> U114#(mark X1, X2))
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# s X -> mark# X)
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# s X -> active# s mark X)
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# s X -> s# mark X)
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# length X -> mark# X)
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# length X -> active# length mark X)
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# length X -> length# mark X)
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U13 X -> mark# X)
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U13 X -> active# U13 mark X)
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U13 X -> U13# mark X)
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# isNatList X -> active# isNatList X)
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U122 X -> mark# X)
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U122 X -> active# U122 mark X)
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U122 X -> U122# mark X)
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U121(X1, X2) -> mark# X1)
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U121(X1, X2) -> active# U121(mark X1, X2))
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U121(X1, X2) -> U121#(mark X1, X2))
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# nil() -> active# nil())
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U132(X1, X2, X3, X4) -> mark# X1)
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U132(X1, X2, X3, X4) -> active# U132(mark X1, X2, X3, X4))
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U132(X1, X2, X3, X4) -> U132#(mark X1, X2, X3, X4))
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U131(X1, X2, X3, X4) -> mark# X1)
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U131(X1, X2, X3, X4) -> active# U131(mark X1, X2, X3, X4))
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U131(X1, X2, X3, X4) -> U131#(mark X1, X2, X3, X4))
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U133(X1, X2, X3, X4) -> mark# X1)
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U133(X1, X2, X3, X4) -> active# U133(mark X1, X2, X3, X4))
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U133(X1, X2, X3, X4) -> U133#(mark X1, X2, X3, X4))
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U134(X1, X2, X3, X4) -> mark# X1)
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U134(X1, X2, X3, X4) -> active# U134(mark X1, X2, X3, X4))
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U134(X1, X2, X3, X4) -> U134#(mark X1, X2, X3, X4))
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U135(X1, X2, X3, X4) -> mark# X1)
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U135(X1, X2, X3, X4) -> active# U135(mark X1, X2, X3, X4))
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U135(X1, X2, X3, X4) -> U135#(mark X1, X2, X3, X4))
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U136(X1, X2, X3, X4) -> mark# X1)
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U136(X1, X2, X3, X4) -> active# U136(mark X1, X2, X3, X4))
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U136(X1, X2, X3, X4) -> U136#(mark X1, X2, X3, X4))
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# take(X1, X2) -> mark# X1)
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# take(X1, X2) -> mark# X2)
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# take(X1, X2) -> active# take(mark X1, mark X2))
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# take(X1, X2) -> take#(mark X1, mark X2))
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U22(X1, X2) -> mark# X1)
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U22(X1, X2) -> active# U22(mark X1, X2))
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U22(X1, X2) -> U22#(mark X1, X2))
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U21(X1, X2) -> mark# X1)
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U21(X1, X2) -> active# U21(mark X1, X2))
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U21(X1, X2) -> U21#(mark X1, X2))
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U23 X -> mark# X)
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U23 X -> active# U23 mark X)
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U23 X -> U23# mark X)
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U32(X1, X2) -> mark# X1)
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U32(X1, X2) -> active# U32(mark X1, X2))
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U32(X1, X2) -> U32#(mark X1, X2))
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U31(X1, X2) -> mark# X1)
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U31(X1, X2) -> active# U31(mark X1, X2))
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U31(X1, X2) -> U31#(mark X1, X2))
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U33 X -> mark# X)
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U33 X -> active# U33 mark X)
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U33 X -> U33# mark X)
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U42(X1, X2, X3) -> mark# X1)
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U42(X1, X2, X3) -> active# U42(mark X1, X2, X3))
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U42(X1, X2, X3) -> U42#(mark X1, X2, X3))
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U41(X1, X2, X3) -> mark# X1)
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U41(X1, X2, X3) -> active# U41(mark X1, X2, X3))
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U41(X1, X2, X3) -> U41#(mark X1, X2, X3))
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U43(X1, X2, X3) -> mark# X1)
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U43(X1, X2, X3) -> active# U43(mark X1, X2, X3))
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U43(X1, X2, X3) -> U43#(mark X1, X2, X3))
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U44(X1, X2, X3) -> mark# X1)
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U44(X1, X2, X3) -> active# U44(mark X1, X2, X3))
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U44(X1, X2, X3) -> U44#(mark X1, X2, X3))
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U45(X1, X2) -> mark# X1)
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U45(X1, X2) -> active# U45(mark X1, X2))
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U45(X1, X2) -> U45#(mark X1, X2))
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U46 X -> mark# X)
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U46 X -> active# U46 mark X)
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U46 X -> U46# mark X)
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U52 X -> mark# X)
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U52 X -> active# U52 mark X)
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U52 X -> U52# mark X)
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U51(X1, X2) -> mark# X1)
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U51(X1, X2) -> active# U51(mark X1, X2))
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U51(X1, X2) -> U51#(mark X1, X2))
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U62 X -> mark# X)
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U62 X -> active# U62 mark X)
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U62 X -> U62# mark X)
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U61(X1, X2) -> mark# X1)
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U61(X1, X2) -> active# U61(mark X1, X2))
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U61(X1, X2) -> U61#(mark X1, X2))
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U71 X -> mark# X)
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U71 X -> active# U71 mark X)
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U71 X -> U71# mark X)
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U81 X -> mark# X)
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U81 X -> active# U81 mark X)
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U81 X -> U81# mark X)
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U92(X1, X2, X3) -> mark# X1)
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U92(X1, X2, X3) -> active# U92(mark X1, X2, X3))
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U92(X1, X2, X3) -> U92#(mark X1, X2, X3))
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U91(X1, X2, X3) -> mark# X1)
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U91(X1, X2, X3) -> active# U91(mark X1, X2, X3))
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U91(X1, X2, X3) -> U91#(mark X1, X2, X3))
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U93(X1, X2, X3) -> mark# X1)
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U93(X1, X2, X3) -> active# U93(mark X1, X2, X3))
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U93(X1, X2, X3) -> U93#(mark X1, X2, X3))
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U94(X1, X2, X3) -> mark# X1)
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U94(X1, X2, X3) -> active# U94(mark X1, X2, X3))
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U94(X1, X2, X3) -> U94#(mark X1, X2, X3))
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U95(X1, X2) -> mark# X1)
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U95(X1, X2) -> active# U95(mark X1, X2))
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U95(X1, X2) -> U95#(mark X1, X2))
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U96 X -> mark# X)
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U96 X -> active# U96 mark X)
    (mark# U132(X1, X2, X3, X4) -> mark# X1, mark# U96 X -> U96# mark X)
    (mark# U114(X1, X2) -> mark# X1, mark# cons(X1, X2) -> mark# X1)
    (mark# U114(X1, X2) -> mark# X1, mark# cons(X1, X2) -> cons#(mark X1, X2))
    (mark# U114(X1, X2) -> mark# X1, mark# cons(X1, X2) -> active# cons(mark X1, X2))
    (mark# U114(X1, X2) -> mark# X1, mark# 0() -> active# 0())
    (mark# U114(X1, X2) -> mark# X1, mark# zeros() -> active# zeros())
    (mark# U114(X1, X2) -> mark# X1, mark# U102(X1, X2, X3) -> mark# X1)
    (mark# U114(X1, X2) -> mark# X1, mark# U102(X1, X2, X3) -> active# U102(mark X1, X2, X3))
    (mark# U114(X1, X2) -> mark# X1, mark# U102(X1, X2, X3) -> U102#(mark X1, X2, X3))
    (mark# U114(X1, X2) -> mark# X1, mark# isNatKind X -> active# isNatKind X)
    (mark# U114(X1, X2) -> mark# X1, mark# U101(X1, X2, X3) -> mark# X1)
    (mark# U114(X1, X2) -> mark# X1, mark# U101(X1, X2, X3) -> active# U101(mark X1, X2, X3))
    (mark# U114(X1, X2) -> mark# X1, mark# U101(X1, X2, X3) -> U101#(mark X1, X2, X3))
    (mark# U114(X1, X2) -> mark# X1, mark# tt() -> active# tt())
    (mark# U114(X1, X2) -> mark# X1, mark# U103(X1, X2, X3) -> mark# X1)
    (mark# U114(X1, X2) -> mark# X1, mark# U103(X1, X2, X3) -> active# U103(mark X1, X2, X3))
    (mark# U114(X1, X2) -> mark# X1, mark# U103(X1, X2, X3) -> U103#(mark X1, X2, X3))
    (mark# U114(X1, X2) -> mark# X1, mark# isNatIListKind X -> active# isNatIListKind X)
    (mark# U114(X1, X2) -> mark# X1, mark# U104(X1, X2, X3) -> mark# X1)
    (mark# U114(X1, X2) -> mark# X1, mark# U104(X1, X2, X3) -> active# U104(mark X1, X2, X3))
    (mark# U114(X1, X2) -> mark# X1, mark# U104(X1, X2, X3) -> U104#(mark X1, X2, X3))
    (mark# U114(X1, X2) -> mark# X1, mark# U105(X1, X2) -> mark# X1)
    (mark# U114(X1, X2) -> mark# X1, mark# U105(X1, X2) -> active# U105(mark X1, X2))
    (mark# U114(X1, X2) -> mark# X1, mark# U105(X1, X2) -> U105#(mark X1, X2))
    (mark# U114(X1, X2) -> mark# X1, mark# isNat X -> active# isNat X)
    (mark# U114(X1, X2) -> mark# X1, mark# U106 X -> mark# X)
    (mark# U114(X1, X2) -> mark# X1, mark# U106 X -> active# U106 mark X)
    (mark# U114(X1, X2) -> mark# X1, mark# U106 X -> U106# mark X)
    (mark# U114(X1, X2) -> mark# X1, mark# isNatIList X -> active# isNatIList X)
    (mark# U114(X1, X2) -> mark# X1, mark# U12(X1, X2) -> mark# X1)
    (mark# U114(X1, X2) -> mark# X1, mark# U12(X1, X2) -> active# U12(mark X1, X2))
    (mark# U114(X1, X2) -> mark# X1, mark# U12(X1, X2) -> U12#(mark X1, X2))
    (mark# U114(X1, X2) -> mark# X1, mark# U11(X1, X2) -> mark# X1)
    (mark# U114(X1, X2) -> mark# X1, mark# U11(X1, X2) -> active# U11(mark X1, X2))
    (mark# U114(X1, X2) -> mark# X1, mark# U11(X1, X2) -> U11#(mark X1, X2))
    (mark# U114(X1, X2) -> mark# X1, mark# U112(X1, X2, X3) -> mark# X1)
    (mark# U114(X1, X2) -> mark# X1, mark# U112(X1, X2, X3) -> active# U112(mark X1, X2, X3))
    (mark# U114(X1, X2) -> mark# X1, mark# U112(X1, X2, X3) -> U112#(mark X1, X2, X3))
    (mark# U114(X1, X2) -> mark# X1, mark# U111(X1, X2, X3) -> mark# X1)
    (mark# U114(X1, X2) -> mark# X1, mark# U111(X1, X2, X3) -> active# U111(mark X1, X2, X3))
    (mark# U114(X1, X2) -> mark# X1, mark# U111(X1, X2, X3) -> U111#(mark X1, X2, X3))
    (mark# U114(X1, X2) -> mark# X1, mark# U113(X1, X2, X3) -> mark# X1)
    (mark# U114(X1, X2) -> mark# X1, mark# U113(X1, X2, X3) -> active# U113(mark X1, X2, X3))
    (mark# U114(X1, X2) -> mark# X1, mark# U113(X1, X2, X3) -> U113#(mark X1, X2, X3))
    (mark# U114(X1, X2) -> mark# X1, mark# U114(X1, X2) -> mark# X1)
    (mark# U114(X1, X2) -> mark# X1, mark# U114(X1, X2) -> active# U114(mark X1, X2))
    (mark# U114(X1, X2) -> mark# X1, mark# U114(X1, X2) -> U114#(mark X1, X2))
    (mark# U114(X1, X2) -> mark# X1, mark# s X -> mark# X)
    (mark# U114(X1, X2) -> mark# X1, mark# s X -> active# s mark X)
    (mark# U114(X1, X2) -> mark# X1, mark# s X -> s# mark X)
    (mark# U114(X1, X2) -> mark# X1, mark# length X -> mark# X)
    (mark# U114(X1, X2) -> mark# X1, mark# length X -> active# length mark X)
    (mark# U114(X1, X2) -> mark# X1, mark# length X -> length# mark X)
    (mark# U114(X1, X2) -> mark# X1, mark# U13 X -> mark# X)
    (mark# U114(X1, X2) -> mark# X1, mark# U13 X -> active# U13 mark X)
    (mark# U114(X1, X2) -> mark# X1, mark# U13 X -> U13# mark X)
    (mark# U114(X1, X2) -> mark# X1, mark# isNatList X -> active# isNatList X)
    (mark# U114(X1, X2) -> mark# X1, mark# U122 X -> mark# X)
    (mark# U114(X1, X2) -> mark# X1, mark# U122 X -> active# U122 mark X)
    (mark# U114(X1, X2) -> mark# X1, mark# U122 X -> U122# mark X)
    (mark# U114(X1, X2) -> mark# X1, mark# U121(X1, X2) -> mark# X1)
    (mark# U114(X1, X2) -> mark# X1, mark# U121(X1, X2) -> active# U121(mark X1, X2))
    (mark# U114(X1, X2) -> mark# X1, mark# U121(X1, X2) -> U121#(mark X1, X2))
    (mark# U114(X1, X2) -> mark# X1, mark# nil() -> active# nil())
    (mark# U114(X1, X2) -> mark# X1, mark# U132(X1, X2, X3, X4) -> mark# X1)
    (mark# U114(X1, X2) -> mark# X1, mark# U132(X1, X2, X3, X4) -> active# U132(mark X1, X2, X3, X4))
    (mark# U114(X1, X2) -> mark# X1, mark# U132(X1, X2, X3, X4) -> U132#(mark X1, X2, X3, X4))
    (mark# U114(X1, X2) -> mark# X1, mark# U131(X1, X2, X3, X4) -> mark# X1)
    (mark# U114(X1, X2) -> mark# X1, mark# U131(X1, X2, X3, X4) -> active# U131(mark X1, X2, X3, X4))
    (mark# U114(X1, X2) -> mark# X1, mark# U131(X1, X2, X3, X4) -> U131#(mark X1, X2, X3, X4))
    (mark# U114(X1, X2) -> mark# X1, mark# U133(X1, X2, X3, X4) -> mark# X1)
    (mark# U114(X1, X2) -> mark# X1, mark# U133(X1, X2, X3, X4) -> active# U133(mark X1, X2, X3, X4))
    (mark# U114(X1, X2) -> mark# X1, mark# U133(X1, X2, X3, X4) -> U133#(mark X1, X2, X3, X4))
    (mark# U114(X1, X2) -> mark# X1, mark# U134(X1, X2, X3, X4) -> mark# X1)
    (mark# U114(X1, X2) -> mark# X1, mark# U134(X1, X2, X3, X4) -> active# U134(mark X1, X2, X3, X4))
    (mark# U114(X1, X2) -> mark# X1, mark# U134(X1, X2, X3, X4) -> U134#(mark X1, X2, X3, X4))
    (mark# U114(X1, X2) -> mark# X1, mark# U135(X1, X2, X3, X4) -> mark# X1)
    (mark# U114(X1, X2) -> mark# X1, mark# U135(X1, X2, X3, X4) -> active# U135(mark X1, X2, X3, X4))
    (mark# U114(X1, X2) -> mark# X1, mark# U135(X1, X2, X3, X4) -> U135#(mark X1, X2, X3, X4))
    (mark# U114(X1, X2) -> mark# X1, mark# U136(X1, X2, X3, X4) -> mark# X1)
    (mark# U114(X1, X2) -> mark# X1, mark# U136(X1, X2, X3, X4) -> active# U136(mark X1, X2, X3, X4))
    (mark# U114(X1, X2) -> mark# X1, mark# U136(X1, X2, X3, X4) -> U136#(mark X1, X2, X3, X4))
    (mark# U114(X1, X2) -> mark# X1, mark# take(X1, X2) -> mark# X1)
    (mark# U114(X1, X2) -> mark# X1, mark# take(X1, X2) -> mark# X2)
    (mark# U114(X1, X2) -> mark# X1, mark# take(X1, X2) -> active# take(mark X1, mark X2))
    (mark# U114(X1, X2) -> mark# X1, mark# take(X1, X2) -> take#(mark X1, mark X2))
    (mark# U114(X1, X2) -> mark# X1, mark# U22(X1, X2) -> mark# X1)
    (mark# U114(X1, X2) -> mark# X1, mark# U22(X1, X2) -> active# U22(mark X1, X2))
    (mark# U114(X1, X2) -> mark# X1, mark# U22(X1, X2) -> U22#(mark X1, X2))
    (mark# U114(X1, X2) -> mark# X1, mark# U21(X1, X2) -> mark# X1)
    (mark# U114(X1, X2) -> mark# X1, mark# U21(X1, X2) -> active# U21(mark X1, X2))
    (mark# U114(X1, X2) -> mark# X1, mark# U21(X1, X2) -> U21#(mark X1, X2))
    (mark# U114(X1, X2) -> mark# X1, mark# U23 X -> mark# X)
    (mark# U114(X1, X2) -> mark# X1, mark# U23 X -> active# U23 mark X)
    (mark# U114(X1, X2) -> mark# X1, mark# U23 X -> U23# mark X)
    (mark# U114(X1, X2) -> mark# X1, mark# U32(X1, X2) -> mark# X1)
    (mark# U114(X1, X2) -> mark# X1, mark# U32(X1, X2) -> active# U32(mark X1, X2))
    (mark# U114(X1, X2) -> mark# X1, mark# U32(X1, X2) -> U32#(mark X1, X2))
    (mark# U114(X1, X2) -> mark# X1, mark# U31(X1, X2) -> mark# X1)
    (mark# U114(X1, X2) -> mark# X1, mark# U31(X1, X2) -> active# U31(mark X1, X2))
    (mark# U114(X1, X2) -> mark# X1, mark# U31(X1, X2) -> U31#(mark X1, X2))
    (mark# U114(X1, X2) -> mark# X1, mark# U33 X -> mark# X)
    (mark# U114(X1, X2) -> mark# X1, mark# U33 X -> active# U33 mark X)
    (mark# U114(X1, X2) -> mark# X1, mark# U33 X -> U33# mark X)
    (mark# U114(X1, X2) -> mark# X1, mark# U42(X1, X2, X3) -> mark# X1)
    (mark# U114(X1, X2) -> mark# X1, mark# U42(X1, X2, X3) -> active# U42(mark X1, X2, X3))
    (mark# U114(X1, X2) -> mark# X1, mark# U42(X1, X2, X3) -> U42#(mark X1, X2, X3))
    (mark# U114(X1, X2) -> mark# X1, mark# U41(X1, X2, X3) -> mark# X1)
    (mark# U114(X1, X2) -> mark# X1, mark# U41(X1, X2, X3) -> active# U41(mark X1, X2, X3))
    (mark# U114(X1, X2) -> mark# X1, mark# U41(X1, X2, X3) -> U41#(mark X1, X2, X3))
    (mark# U114(X1, X2) -> mark# X1, mark# U43(X1, X2, X3) -> mark# X1)
    (mark# U114(X1, X2) -> mark# X1, mark# U43(X1, X2, X3) -> active# U43(mark X1, X2, X3))
    (mark# U114(X1, X2) -> mark# X1, mark# U43(X1, X2, X3) -> U43#(mark X1, X2, X3))
    (mark# U114(X1, X2) -> mark# X1, mark# U44(X1, X2, X3) -> mark# X1)
    (mark# U114(X1, X2) -> mark# X1, mark# U44(X1, X2, X3) -> active# U44(mark X1, X2, X3))
    (mark# U114(X1, X2) -> mark# X1, mark# U44(X1, X2, X3) -> U44#(mark X1, X2, X3))
    (mark# U114(X1, X2) -> mark# X1, mark# U45(X1, X2) -> mark# X1)
    (mark# U114(X1, X2) -> mark# X1, mark# U45(X1, X2) -> active# U45(mark X1, X2))
    (mark# U114(X1, X2) -> mark# X1, mark# U45(X1, X2) -> U45#(mark X1, X2))
    (mark# U114(X1, X2) -> mark# X1, mark# U46 X -> mark# X)
    (mark# U114(X1, X2) -> mark# X1, mark# U46 X -> active# U46 mark X)
    (mark# U114(X1, X2) -> mark# X1, mark# U46 X -> U46# mark X)
    (mark# U114(X1, X2) -> mark# X1, mark# U52 X -> mark# X)
    (mark# U114(X1, X2) -> mark# X1, mark# U52 X -> active# U52 mark X)
    (mark# U114(X1, X2) -> mark# X1, mark# U52 X -> U52# mark X)
    (mark# U114(X1, X2) -> mark# X1, mark# U51(X1, X2) -> mark# X1)
    (mark# U114(X1, X2) -> mark# X1, mark# U51(X1, X2) -> active# U51(mark X1, X2))
    (mark# U114(X1, X2) -> mark# X1, mark# U51(X1, X2) -> U51#(mark X1, X2))
    (mark# U114(X1, X2) -> mark# X1, mark# U62 X -> mark# X)
    (mark# U114(X1, X2) -> mark# X1, mark# U62 X -> active# U62 mark X)
    (mark# U114(X1, X2) -> mark# X1, mark# U62 X -> U62# mark X)
    (mark# U114(X1, X2) -> mark# X1, mark# U61(X1, X2) -> mark# X1)
    (mark# U114(X1, X2) -> mark# X1, mark# U61(X1, X2) -> active# U61(mark X1, X2))
    (mark# U114(X1, X2) -> mark# X1, mark# U61(X1, X2) -> U61#(mark X1, X2))
    (mark# U114(X1, X2) -> mark# X1, mark# U71 X -> mark# X)
    (mark# U114(X1, X2) -> mark# X1, mark# U71 X -> active# U71 mark X)
    (mark# U114(X1, X2) -> mark# X1, mark# U71 X -> U71# mark X)
    (mark# U114(X1, X2) -> mark# X1, mark# U81 X -> mark# X)
    (mark# U114(X1, X2) -> mark# X1, mark# U81 X -> active# U81 mark X)
    (mark# U114(X1, X2) -> mark# X1, mark# U81 X -> U81# mark X)
    (mark# U114(X1, X2) -> mark# X1, mark# U92(X1, X2, X3) -> mark# X1)
    (mark# U114(X1, X2) -> mark# X1, mark# U92(X1, X2, X3) -> active# U92(mark X1, X2, X3))
    (mark# U114(X1, X2) -> mark# X1, mark# U92(X1, X2, X3) -> U92#(mark X1, X2, X3))
    (mark# U114(X1, X2) -> mark# X1, mark# U91(X1, X2, X3) -> mark# X1)
    (mark# U114(X1, X2) -> mark# X1, mark# U91(X1, X2, X3) -> active# U91(mark X1, X2, X3))
    (mark# U114(X1, X2) -> mark# X1, mark# U91(X1, X2, X3) -> U91#(mark X1, X2, X3))
    (mark# U114(X1, X2) -> mark# X1, mark# U93(X1, X2, X3) -> mark# X1)
    (mark# U114(X1, X2) -> mark# X1, mark# U93(X1, X2, X3) -> active# U93(mark X1, X2, X3))
    (mark# U114(X1, X2) -> mark# X1, mark# U93(X1, X2, X3) -> U93#(mark X1, X2, X3))
    (mark# U114(X1, X2) -> mark# X1, mark# U94(X1, X2, X3) -> mark# X1)
    (mark# U114(X1, X2) -> mark# X1, mark# U94(X1, X2, X3) -> active# U94(mark X1, X2, X3))
    (mark# U114(X1, X2) -> mark# X1, mark# U94(X1, X2, X3) -> U94#(mark X1, X2, X3))
    (mark# U114(X1, X2) -> mark# X1, mark# U95(X1, X2) -> mark# X1)
    (mark# U114(X1, X2) -> mark# X1, mark# U95(X1, X2) -> active# U95(mark X1, X2))
    (mark# U114(X1, X2) -> mark# X1, mark# U95(X1, X2) -> U95#(mark X1, X2))
    (mark# U114(X1, X2) -> mark# X1, mark# U96 X -> mark# X)
    (mark# U114(X1, X2) -> mark# X1, mark# U96 X -> active# U96 mark X)
    (mark# U114(X1, X2) -> mark# X1, mark# U96 X -> U96# mark X)
    (mark# U111(X1, X2, X3) -> mark# X1, mark# cons(X1, X2) -> mark# X1)
    (mark# U111(X1, X2, X3) -> mark# X1, mark# cons(X1, X2) -> cons#(mark X1, X2))
    (mark# U111(X1, X2, X3) -> mark# X1, mark# cons(X1, X2) -> active# cons(mark X1, X2))
    (mark# U111(X1, X2, X3) -> mark# X1, mark# 0() -> active# 0())
    (mark# U111(X1, X2, X3) -> mark# X1, mark# zeros() -> active# zeros())
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U102(X1, X2, X3) -> mark# X1)
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U102(X1, X2, X3) -> active# U102(mark X1, X2, X3))
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U102(X1, X2, X3) -> U102#(mark X1, X2, X3))
    (mark# U111(X1, X2, X3) -> mark# X1, mark# isNatKind X -> active# isNatKind X)
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U101(X1, X2, X3) -> mark# X1)
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U101(X1, X2, X3) -> active# U101(mark X1, X2, X3))
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U101(X1, X2, X3) -> U101#(mark X1, X2, X3))
    (mark# U111(X1, X2, X3) -> mark# X1, mark# tt() -> active# tt())
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U103(X1, X2, X3) -> mark# X1)
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U103(X1, X2, X3) -> active# U103(mark X1, X2, X3))
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U103(X1, X2, X3) -> U103#(mark X1, X2, X3))
    (mark# U111(X1, X2, X3) -> mark# X1, mark# isNatIListKind X -> active# isNatIListKind X)
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U104(X1, X2, X3) -> mark# X1)
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U104(X1, X2, X3) -> active# U104(mark X1, X2, X3))
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U104(X1, X2, X3) -> U104#(mark X1, X2, X3))
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U105(X1, X2) -> mark# X1)
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U105(X1, X2) -> active# U105(mark X1, X2))
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U105(X1, X2) -> U105#(mark X1, X2))
    (mark# U111(X1, X2, X3) -> mark# X1, mark# isNat X -> active# isNat X)
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U106 X -> mark# X)
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U106 X -> active# U106 mark X)
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U106 X -> U106# mark X)
    (mark# U111(X1, X2, X3) -> mark# X1, mark# isNatIList X -> active# isNatIList X)
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U12(X1, X2) -> mark# X1)
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U12(X1, X2) -> active# U12(mark X1, X2))
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U12(X1, X2) -> U12#(mark X1, X2))
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U11(X1, X2) -> mark# X1)
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U11(X1, X2) -> active# U11(mark X1, X2))
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U11(X1, X2) -> U11#(mark X1, X2))
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U112(X1, X2, X3) -> mark# X1)
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U112(X1, X2, X3) -> active# U112(mark X1, X2, X3))
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U112(X1, X2, X3) -> U112#(mark X1, X2, X3))
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U111(X1, X2, X3) -> mark# X1)
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U111(X1, X2, X3) -> active# U111(mark X1, X2, X3))
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U111(X1, X2, X3) -> U111#(mark X1, X2, X3))
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U113(X1, X2, X3) -> mark# X1)
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U113(X1, X2, X3) -> active# U113(mark X1, X2, X3))
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U113(X1, X2, X3) -> U113#(mark X1, X2, X3))
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U114(X1, X2) -> mark# X1)
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U114(X1, X2) -> active# U114(mark X1, X2))
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U114(X1, X2) -> U114#(mark X1, X2))
    (mark# U111(X1, X2, X3) -> mark# X1, mark# s X -> mark# X)
    (mark# U111(X1, X2, X3) -> mark# X1, mark# s X -> active# s mark X)
    (mark# U111(X1, X2, X3) -> mark# X1, mark# s X -> s# mark X)
    (mark# U111(X1, X2, X3) -> mark# X1, mark# length X -> mark# X)
    (mark# U111(X1, X2, X3) -> mark# X1, mark# length X -> active# length mark X)
    (mark# U111(X1, X2, X3) -> mark# X1, mark# length X -> length# mark X)
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U13 X -> mark# X)
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U13 X -> active# U13 mark X)
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U13 X -> U13# mark X)
    (mark# U111(X1, X2, X3) -> mark# X1, mark# isNatList X -> active# isNatList X)
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U122 X -> mark# X)
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U122 X -> active# U122 mark X)
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U122 X -> U122# mark X)
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U121(X1, X2) -> mark# X1)
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U121(X1, X2) -> active# U121(mark X1, X2))
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U121(X1, X2) -> U121#(mark X1, X2))
    (mark# U111(X1, X2, X3) -> mark# X1, mark# nil() -> active# nil())
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U132(X1, X2, X3, X4) -> mark# X1)
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U132(X1, X2, X3, X4) -> active# U132(mark X1, X2, X3, X4))
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U132(X1, X2, X3, X4) -> U132#(mark X1, X2, X3, X4))
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U131(X1, X2, X3, X4) -> mark# X1)
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U131(X1, X2, X3, X4) -> active# U131(mark X1, X2, X3, X4))
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U131(X1, X2, X3, X4) -> U131#(mark X1, X2, X3, X4))
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U133(X1, X2, X3, X4) -> mark# X1)
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U133(X1, X2, X3, X4) -> active# U133(mark X1, X2, X3, X4))
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U133(X1, X2, X3, X4) -> U133#(mark X1, X2, X3, X4))
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U134(X1, X2, X3, X4) -> mark# X1)
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U134(X1, X2, X3, X4) -> active# U134(mark X1, X2, X3, X4))
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U134(X1, X2, X3, X4) -> U134#(mark X1, X2, X3, X4))
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U135(X1, X2, X3, X4) -> mark# X1)
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U135(X1, X2, X3, X4) -> active# U135(mark X1, X2, X3, X4))
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U135(X1, X2, X3, X4) -> U135#(mark X1, X2, X3, X4))
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U136(X1, X2, X3, X4) -> mark# X1)
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U136(X1, X2, X3, X4) -> active# U136(mark X1, X2, X3, X4))
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U136(X1, X2, X3, X4) -> U136#(mark X1, X2, X3, X4))
    (mark# U111(X1, X2, X3) -> mark# X1, mark# take(X1, X2) -> mark# X1)
    (mark# U111(X1, X2, X3) -> mark# X1, mark# take(X1, X2) -> mark# X2)
    (mark# U111(X1, X2, X3) -> mark# X1, mark# take(X1, X2) -> active# take(mark X1, mark X2))
    (mark# U111(X1, X2, X3) -> mark# X1, mark# take(X1, X2) -> take#(mark X1, mark X2))
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U22(X1, X2) -> mark# X1)
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U22(X1, X2) -> active# U22(mark X1, X2))
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U22(X1, X2) -> U22#(mark X1, X2))
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U21(X1, X2) -> mark# X1)
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U21(X1, X2) -> active# U21(mark X1, X2))
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U21(X1, X2) -> U21#(mark X1, X2))
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U23 X -> mark# X)
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U23 X -> active# U23 mark X)
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U23 X -> U23# mark X)
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U32(X1, X2) -> mark# X1)
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U32(X1, X2) -> active# U32(mark X1, X2))
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U32(X1, X2) -> U32#(mark X1, X2))
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U31(X1, X2) -> mark# X1)
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U31(X1, X2) -> active# U31(mark X1, X2))
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U31(X1, X2) -> U31#(mark X1, X2))
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U33 X -> mark# X)
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U33 X -> active# U33 mark X)
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U33 X -> U33# mark X)
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U42(X1, X2, X3) -> mark# X1)
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U42(X1, X2, X3) -> active# U42(mark X1, X2, X3))
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U42(X1, X2, X3) -> U42#(mark X1, X2, X3))
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U41(X1, X2, X3) -> mark# X1)
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U41(X1, X2, X3) -> active# U41(mark X1, X2, X3))
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U41(X1, X2, X3) -> U41#(mark X1, X2, X3))
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U43(X1, X2, X3) -> mark# X1)
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U43(X1, X2, X3) -> active# U43(mark X1, X2, X3))
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U43(X1, X2, X3) -> U43#(mark X1, X2, X3))
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U44(X1, X2, X3) -> mark# X1)
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U44(X1, X2, X3) -> active# U44(mark X1, X2, X3))
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U44(X1, X2, X3) -> U44#(mark X1, X2, X3))
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U45(X1, X2) -> mark# X1)
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U45(X1, X2) -> active# U45(mark X1, X2))
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U45(X1, X2) -> U45#(mark X1, X2))
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U46 X -> mark# X)
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U46 X -> active# U46 mark X)
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U46 X -> U46# mark X)
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U52 X -> mark# X)
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U52 X -> active# U52 mark X)
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U52 X -> U52# mark X)
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U51(X1, X2) -> mark# X1)
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U51(X1, X2) -> active# U51(mark X1, X2))
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U51(X1, X2) -> U51#(mark X1, X2))
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U62 X -> mark# X)
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U62 X -> active# U62 mark X)
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U62 X -> U62# mark X)
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U61(X1, X2) -> mark# X1)
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U61(X1, X2) -> active# U61(mark X1, X2))
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U61(X1, X2) -> U61#(mark X1, X2))
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U71 X -> mark# X)
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U71 X -> active# U71 mark X)
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U71 X -> U71# mark X)
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U81 X -> mark# X)
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U81 X -> active# U81 mark X)
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U81 X -> U81# mark X)
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U92(X1, X2, X3) -> mark# X1)
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U92(X1, X2, X3) -> active# U92(mark X1, X2, X3))
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U92(X1, X2, X3) -> U92#(mark X1, X2, X3))
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U91(X1, X2, X3) -> mark# X1)
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U91(X1, X2, X3) -> active# U91(mark X1, X2, X3))
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U91(X1, X2, X3) -> U91#(mark X1, X2, X3))
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U93(X1, X2, X3) -> mark# X1)
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U93(X1, X2, X3) -> active# U93(mark X1, X2, X3))
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U93(X1, X2, X3) -> U93#(mark X1, X2, X3))
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U94(X1, X2, X3) -> mark# X1)
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U94(X1, X2, X3) -> active# U94(mark X1, X2, X3))
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U94(X1, X2, X3) -> U94#(mark X1, X2, X3))
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U95(X1, X2) -> mark# X1)
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U95(X1, X2) -> active# U95(mark X1, X2))
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U95(X1, X2) -> U95#(mark X1, X2))
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U96 X -> mark# X)
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U96 X -> active# U96 mark X)
    (mark# U111(X1, X2, X3) -> mark# X1, mark# U96 X -> U96# mark X)
    (mark# U11(X1, X2) -> mark# X1, mark# cons(X1, X2) -> mark# X1)
    (mark# U11(X1, X2) -> mark# X1, mark# cons(X1, X2) -> cons#(mark X1, X2))
    (mark# U11(X1, X2) -> mark# X1, mark# cons(X1, X2) -> active# cons(mark X1, X2))
    (mark# U11(X1, X2) -> mark# X1, mark# 0() -> active# 0())
    (mark# U11(X1, X2) -> mark# X1, mark# zeros() -> active# zeros())
    (mark# U11(X1, X2) -> mark# X1, mark# U102(X1, X2, X3) -> mark# X1)
    (mark# U11(X1, X2) -> mark# X1, mark# U102(X1, X2, X3) -> active# U102(mark X1, X2, X3))
    (mark# U11(X1, X2) -> mark# X1, mark# U102(X1, X2, X3) -> U102#(mark X1, X2, X3))
    (mark# U11(X1, X2) -> mark# X1, mark# isNatKind X -> active# isNatKind X)
    (mark# U11(X1, X2) -> mark# X1, mark# U101(X1, X2, X3) -> mark# X1)
    (mark# U11(X1, X2) -> mark# X1, mark# U101(X1, X2, X3) -> active# U101(mark X1, X2, X3))
    (mark# U11(X1, X2) -> mark# X1, mark# U101(X1, X2, X3) -> U101#(mark X1, X2, X3))
    (mark# U11(X1, X2) -> mark# X1, mark# tt() -> active# tt())
    (mark# U11(X1, X2) -> mark# X1, mark# U103(X1, X2, X3) -> mark# X1)
    (mark# U11(X1, X2) -> mark# X1, mark# U103(X1, X2, X3) -> active# U103(mark X1, X2, X3))
    (mark# U11(X1, X2) -> mark# X1, mark# U103(X1, X2, X3) -> U103#(mark X1, X2, X3))
    (mark# U11(X1, X2) -> mark# X1, mark# isNatIListKind X -> active# isNatIListKind X)
    (mark# U11(X1, X2) -> mark# X1, mark# U104(X1, X2, X3) -> mark# X1)
    (mark# U11(X1, X2) -> mark# X1, mark# U104(X1, X2, X3) -> active# U104(mark X1, X2, X3))
    (mark# U11(X1, X2) -> mark# X1, mark# U104(X1, X2, X3) -> U104#(mark X1, X2, X3))
    (mark# U11(X1, X2) -> mark# X1, mark# U105(X1, X2) -> mark# X1)
    (mark# U11(X1, X2) -> mark# X1, mark# U105(X1, X2) -> active# U105(mark X1, X2))
    (mark# U11(X1, X2) -> mark# X1, mark# U105(X1, X2) -> U105#(mark X1, X2))
    (mark# U11(X1, X2) -> mark# X1, mark# isNat X -> active# isNat X)
    (mark# U11(X1, X2) -> mark# X1, mark# U106 X -> mark# X)
    (mark# U11(X1, X2) -> mark# X1, mark# U106 X -> active# U106 mark X)
    (mark# U11(X1, X2) -> mark# X1, mark# U106 X -> U106# mark X)
    (mark# U11(X1, X2) -> mark# X1, mark# isNatIList X -> active# isNatIList X)
    (mark# U11(X1, X2) -> mark# X1, mark# U12(X1, X2) -> mark# X1)
    (mark# U11(X1, X2) -> mark# X1, mark# U12(X1, X2) -> active# U12(mark X1, X2))
    (mark# U11(X1, X2) -> mark# X1, mark# U12(X1, X2) -> U12#(mark X1, X2))
    (mark# U11(X1, X2) -> mark# X1, mark# U11(X1, X2) -> mark# X1)
    (mark# U11(X1, X2) -> mark# X1, mark# U11(X1, X2) -> active# U11(mark X1, X2))
    (mark# U11(X1, X2) -> mark# X1, mark# U11(X1, X2) -> U11#(mark X1, X2))
    (mark# U11(X1, X2) -> mark# X1, mark# U112(X1, X2, X3) -> mark# X1)
    (mark# U11(X1, X2) -> mark# X1, mark# U112(X1, X2, X3) -> active# U112(mark X1, X2, X3))
    (mark# U11(X1, X2) -> mark# X1, mark# U112(X1, X2, X3) -> U112#(mark X1, X2, X3))
    (mark# U11(X1, X2) -> mark# X1, mark# U111(X1, X2, X3) -> mark# X1)
    (mark# U11(X1, X2) -> mark# X1, mark# U111(X1, X2, X3) -> active# U111(mark X1, X2, X3))
    (mark# U11(X1, X2) -> mark# X1, mark# U111(X1, X2, X3) -> U111#(mark X1, X2, X3))
    (mark# U11(X1, X2) -> mark# X1, mark# U113(X1, X2, X3) -> mark# X1)
    (mark# U11(X1, X2) -> mark# X1, mark# U113(X1, X2, X3) -> active# U113(mark X1, X2, X3))
    (mark# U11(X1, X2) -> mark# X1, mark# U113(X1, X2, X3) -> U113#(mark X1, X2, X3))
    (mark# U11(X1, X2) -> mark# X1, mark# U114(X1, X2) -> mark# X1)
    (mark# U11(X1, X2) -> mark# X1, mark# U114(X1, X2) -> active# U114(mark X1, X2))
    (mark# U11(X1, X2) -> mark# X1, mark# U114(X1, X2) -> U114#(mark X1, X2))
    (mark# U11(X1, X2) -> mark# X1, mark# s X -> mark# X)
    (mark# U11(X1, X2) -> mark# X1, mark# s X -> active# s mark X)
    (mark# U11(X1, X2) -> mark# X1, mark# s X -> s# mark X)
    (mark# U11(X1, X2) -> mark# X1, mark# length X -> mark# X)
    (mark# U11(X1, X2) -> mark# X1, mark# length X -> active# length mark X)
    (mark# U11(X1, X2) -> mark# X1, mark# length X -> length# mark X)
    (mark# U11(X1, X2) -> mark# X1, mark# U13 X -> mark# X)
    (mark# U11(X1, X2) -> mark# X1, mark# U13 X -> active# U13 mark X)
    (mark# U11(X1, X2) -> mark# X1, mark# U13 X -> U13# mark X)
    (mark# U11(X1, X2) -> mark# X1, mark# isNatList X -> active# isNatList X)
    (mark# U11(X1, X2) -> mark# X1, mark# U122 X -> mark# X)
    (mark# U11(X1, X2) -> mark# X1, mark# U122 X -> active# U122 mark X)
    (mark# U11(X1, X2) -> mark# X1, mark# U122 X -> U122# mark X)
    (mark# U11(X1, X2) -> mark# X1, mark# U121(X1, X2) -> mark# X1)
    (mark# U11(X1, X2) -> mark# X1, mark# U121(X1, X2) -> active# U121(mark X1, X2))
    (mark# U11(X1, X2) -> mark# X1, mark# U121(X1, X2) -> U121#(mark X1, X2))
    (mark# U11(X1, X2) -> mark# X1, mark# nil() -> active# nil())
    (mark# U11(X1, X2) -> mark# X1, mark# U132(X1, X2, X3, X4) -> mark# X1)
    (mark# U11(X1, X2) -> mark# X1, mark# U132(X1, X2, X3, X4) -> active# U132(mark X1, X2, X3, X4))
    (mark# U11(X1, X2) -> mark# X1, mark# U132(X1, X2, X3, X4) -> U132#(mark X1, X2, X3, X4))
    (mark# U11(X1, X2) -> mark# X1, mark# U131(X1, X2, X3, X4) -> mark# X1)
    (mark# U11(X1, X2) -> mark# X1, mark# U131(X1, X2, X3, X4) -> active# U131(mark X1, X2, X3, X4))
    (mark# U11(X1, X2) -> mark# X1, mark# U131(X1, X2, X3, X4) -> U131#(mark X1, X2, X3, X4))
    (mark# U11(X1, X2) -> mark# X1, mark# U133(X1, X2, X3, X4) -> mark# X1)
    (mark# U11(X1, X2) -> mark# X1, mark# U133(X1, X2, X3, X4) -> active# U133(mark X1, X2, X3, X4))
    (mark# U11(X1, X2) -> mark# X1, mark# U133(X1, X2, X3, X4) -> U133#(mark X1, X2, X3, X4))
    (mark# U11(X1, X2) -> mark# X1, mark# U134(X1, X2, X3, X4) -> mark# X1)
    (mark# U11(X1, X2) -> mark# X1, mark# U134(X1, X2, X3, X4) -> active# U134(mark X1, X2, X3, X4))
    (mark# U11(X1, X2) -> mark# X1, mark# U134(X1, X2, X3, X4) -> U134#(mark X1, X2, X3, X4))
    (mark# U11(X1, X2) -> mark# X1, mark# U135(X1, X2, X3, X4) -> mark# X1)
    (mark# U11(X1, X2) -> mark# X1, mark# U135(X1, X2, X3, X4) -> active# U135(mark X1, X2, X3, X4))
    (mark# U11(X1, X2) -> mark# X1, mark# U135(X1, X2, X3, X4) -> U135#(mark X1, X2, X3, X4))
    (mark# U11(X1, X2) -> mark# X1, mark# U136(X1, X2, X3, X4) -> mark# X1)
    (mark# U11(X1, X2) -> mark# X1, mark# U136(X1, X2, X3, X4) -> active# U136(mark X1, X2, X3, X4))
    (mark# U11(X1, X2) -> mark# X1, mark# U136(X1, X2, X3, X4) -> U136#(mark X1, X2, X3, X4))
    (mark# U11(X1, X2) -> mark# X1, mark# take(X1, X2) -> mark# X1)
    (mark# U11(X1, X2) -> mark# X1, mark# take(X1, X2) -> mark# X2)
    (mark# U11(X1, X2) -> mark# X1, mark# take(X1, X2) -> active# take(mark X1, mark X2))
    (mark# U11(X1, X2) -> mark# X1, mark# take(X1, X2) -> take#(mark X1, mark X2))
    (mark# U11(X1, X2) -> mark# X1, mark# U22(X1, X2) -> mark# X1)
    (mark# U11(X1, X2) -> mark# X1, mark# U22(X1, X2) -> active# U22(mark X1, X2))
    (mark# U11(X1, X2) -> mark# X1, mark# U22(X1, X2) -> U22#(mark X1, X2))
    (mark# U11(X1, X2) -> mark# X1, mark# U21(X1, X2) -> mark# X1)
    (mark# U11(X1, X2) -> mark# X1, mark# U21(X1, X2) -> active# U21(mark X1, X2))
    (mark# U11(X1, X2) -> mark# X1, mark# U21(X1, X2) -> U21#(mark X1, X2))
    (mark# U11(X1, X2) -> mark# X1, mark# U23 X -> mark# X)
    (mark# U11(X1, X2) -> mark# X1, mark# U23 X -> active# U23 mark X)
    (mark# U11(X1, X2) -> mark# X1, mark# U23 X -> U23# mark X)
    (mark# U11(X1, X2) -> mark# X1, mark# U32(X1, X2) -> mark# X1)
    (mark# U11(X1, X2) -> mark# X1, mark# U32(X1, X2) -> active# U32(mark X1, X2))
    (mark# U11(X1, X2) -> mark# X1, mark# U32(X1, X2) -> U32#(mark X1, X2))
    (mark# U11(X1, X2) -> mark# X1, mark# U31(X1, X2) -> mark# X1)
    (mark# U11(X1, X2) -> mark# X1, mark# U31(X1, X2) -> active# U31(mark X1, X2))
    (mark# U11(X1, X2) -> mark# X1, mark# U31(X1, X2) -> U31#(mark X1, X2))
    (mark# U11(X1, X2) -> mark# X1, mark# U33 X -> mark# X)
    (mark# U11(X1, X2) -> mark# X1, mark# U33 X -> active# U33 mark X)
    (mark# U11(X1, X2) -> mark# X1, mark# U33 X -> U33# mark X)
    (mark# U11(X1, X2) -> mark# X1, mark# U42(X1, X2, X3) -> mark# X1)
    (mark# U11(X1, X2) -> mark# X1, mark# U42(X1, X2, X3) -> active# U42(mark X1, X2, X3))
    (mark# U11(X1, X2) -> mark# X1, mark# U42(X1, X2, X3) -> U42#(mark X1, X2, X3))
    (mark# U11(X1, X2) -> mark# X1, mark# U41(X1, X2, X3) -> mark# X1)
    (mark# U11(X1, X2) -> mark# X1, mark# U41(X1, X2, X3) -> active# U41(mark X1, X2, X3))
    (mark# U11(X1, X2) -> mark# X1, mark# U41(X1, X2, X3) -> U41#(mark X1, X2, X3))
    (mark# U11(X1, X2) -> mark# X1, mark# U43(X1, X2, X3) -> mark# X1)
    (mark# U11(X1, X2) -> mark# X1, mark# U43(X1, X2, X3) -> active# U43(mark X1, X2, X3))
    (mark# U11(X1, X2) -> mark# X1, mark# U43(X1, X2, X3) -> U43#(mark X1, X2, X3))
    (mark# U11(X1, X2) -> mark# X1, mark# U44(X1, X2, X3) -> mark# X1)
    (mark# U11(X1, X2) -> mark# X1, mark# U44(X1, X2, X3) -> active# U44(mark X1, X2, X3))
    (mark# U11(X1, X2) -> mark# X1, mark# U44(X1, X2, X3) -> U44#(mark X1, X2, X3))
    (mark# U11(X1, X2) -> mark# X1, mark# U45(X1, X2) -> mark# X1)
    (mark# U11(X1, X2) -> mark# X1, mark# U45(X1, X2) -> active# U45(mark X1, X2))
    (mark# U11(X1, X2) -> mark# X1, mark# U45(X1, X2) -> U45#(mark X1, X2))
    (mark# U11(X1, X2) -> mark# X1, mark# U46 X -> mark# X)
    (mark# U11(X1, X2) -> mark# X1, mark# U46 X -> active# U46 mark X)
    (mark# U11(X1, X2) -> mark# X1, mark# U46 X -> U46# mark X)
    (mark# U11(X1, X2) -> mark# X1, mark# U52 X -> mark# X)
    (mark# U11(X1, X2) -> mark# X1, mark# U52 X -> active# U52 mark X)
    (mark# U11(X1, X2) -> mark# X1, mark# U52 X -> U52# mark X)
    (mark# U11(X1, X2) -> mark# X1, mark# U51(X1, X2) -> mark# X1)
    (mark# U11(X1, X2) -> mark# X1, mark# U51(X1, X2) -> active# U51(mark X1, X2))
    (mark# U11(X1, X2) -> mark# X1, mark# U51(X1, X2) -> U51#(mark X1, X2))
    (mark# U11(X1, X2) -> mark# X1, mark# U62 X -> mark# X)
    (mark# U11(X1, X2) -> mark# X1, mark# U62 X -> active# U62 mark X)
    (mark# U11(X1, X2) -> mark# X1, mark# U62 X -> U62# mark X)
    (mark# U11(X1, X2) -> mark# X1, mark# U61(X1, X2) -> mark# X1)
    (mark# U11(X1, X2) -> mark# X1, mark# U61(X1, X2) -> active# U61(mark X1, X2))
    (mark# U11(X1, X2) -> mark# X1, mark# U61(X1, X2) -> U61#(mark X1, X2))
    (mark# U11(X1, X2) -> mark# X1, mark# U71 X -> mark# X)
    (mark# U11(X1, X2) -> mark# X1, mark# U71 X -> active# U71 mark X)
    (mark# U11(X1, X2) -> mark# X1, mark# U71 X -> U71# mark X)
    (mark# U11(X1, X2) -> mark# X1, mark# U81 X -> mark# X)
    (mark# U11(X1, X2) -> mark# X1, mark# U81 X -> active# U81 mark X)
    (mark# U11(X1, X2) -> mark# X1, mark# U81 X -> U81# mark X)
    (mark# U11(X1, X2) -> mark# X1, mark# U92(X1, X2, X3) -> mark# X1)
    (mark# U11(X1, X2) -> mark# X1, mark# U92(X1, X2, X3) -> active# U92(mark X1, X2, X3))
    (mark# U11(X1, X2) -> mark# X1, mark# U92(X1, X2, X3) -> U92#(mark X1, X2, X3))
    (mark# U11(X1, X2) -> mark# X1, mark# U91(X1, X2, X3) -> mark# X1)
    (mark# U11(X1, X2) -> mark# X1, mark# U91(X1, X2, X3) -> active# U91(mark X1, X2, X3))
    (mark# U11(X1, X2) -> mark# X1, mark# U91(X1, X2, X3) -> U91#(mark X1, X2, X3))
    (mark# U11(X1, X2) -> mark# X1, mark# U93(X1, X2, X3) -> mark# X1)
    (mark# U11(X1, X2) -> mark# X1, mark# U93(X1, X2, X3) -> active# U93(mark X1, X2, X3))
    (mark# U11(X1, X2) -> mark# X1, mark# U93(X1, X2, X3) -> U93#(mark X1, X2, X3))
    (mark# U11(X1, X2) -> mark# X1, mark# U94(X1, X2, X3) -> mark# X1)
    (mark# U11(X1, X2) -> mark# X1, mark# U94(X1, X2, X3) -> active# U94(mark X1, X2, X3))
    (mark# U11(X1, X2) -> mark# X1, mark# U94(X1, X2, X3) -> U94#(mark X1, X2, X3))
    (mark# U11(X1, X2) -> mark# X1, mark# U95(X1, X2) -> mark# X1)
    (mark# U11(X1, X2) -> mark# X1, mark# U95(X1, X2) -> active# U95(mark X1, X2))
    (mark# U11(X1, X2) -> mark# X1, mark# U95(X1, X2) -> U95#(mark X1, X2))
    (mark# U11(X1, X2) -> mark# X1, mark# U96 X -> mark# X)
    (mark# U11(X1, X2) -> mark# X1, mark# U96 X -> active# U96 mark X)
    (mark# U11(X1, X2) -> mark# X1, mark# U96 X -> U96# mark X)
    (mark# U105(X1, X2) -> mark# X1, mark# cons(X1, X2) -> mark# X1)
    (mark# U105(X1, X2) -> mark# X1, mark# cons(X1, X2) -> cons#(mark X1, X2))
    (mark# U105(X1, X2) -> mark# X1, mark# cons(X1, X2) -> active# cons(mark X1, X2))
    (mark# U105(X1, X2) -> mark# X1, mark# 0() -> active# 0())
    (mark# U105(X1, X2) -> mark# X1, mark# zeros() -> active# zeros())
    (mark# U105(X1, X2) -> mark# X1, mark# U102(X1, X2, X3) -> mark# X1)
    (mark# U105(X1, X2) -> mark# X1, mark# U102(X1, X2, X3) -> active# U102(mark X1, X2, X3))
    (mark# U105(X1, X2) -> mark# X1, mark# U102(X1, X2, X3) -> U102#(mark X1, X2, X3))
    (mark# U105(X1, X2) -> mark# X1, mark# isNatKind X -> active# isNatKind X)
    (mark# U105(X1, X2) -> mark# X1, mark# U101(X1, X2, X3) -> mark# X1)
    (mark# U105(X1, X2) -> mark# X1, mark# U101(X1, X2, X3) -> active# U101(mark X1, X2, X3))
    (mark# U105(X1, X2) -> mark# X1, mark# U101(X1, X2, X3) -> U101#(mark X1, X2, X3))
    (mark# U105(X1, X2) -> mark# X1, mark# tt() -> active# tt())
    (mark# U105(X1, X2) -> mark# X1, mark# U103(X1, X2, X3) -> mark# X1)
    (mark# U105(X1, X2) -> mark# X1, mark# U103(X1, X2, X3) -> active# U103(mark X1, X2, X3))
    (mark# U105(X1, X2) -> mark# X1, mark# U103(X1, X2, X3) -> U103#(mark X1, X2, X3))
    (mark# U105(X1, X2) -> mark# X1, mark# isNatIListKind X -> active# isNatIListKind X)
    (mark# U105(X1, X2) -> mark# X1, mark# U104(X1, X2, X3) -> mark# X1)
    (mark# U105(X1, X2) -> mark# X1, mark# U104(X1, X2, X3) -> active# U104(mark X1, X2, X3))
    (mark# U105(X1, X2) -> mark# X1, mark# U104(X1, X2, X3) -> U104#(mark X1, X2, X3))
    (mark# U105(X1, X2) -> mark# X1, mark# U105(X1, X2) -> mark# X1)
    (mark# U105(X1, X2) -> mark# X1, mark# U105(X1, X2) -> active# U105(mark X1, X2))
    (mark# U105(X1, X2) -> mark# X1, mark# U105(X1, X2) -> U105#(mark X1, X2))
    (mark# U105(X1, X2) -> mark# X1, mark# isNat X -> active# isNat X)
    (mark# U105(X1, X2) -> mark# X1, mark# U106 X -> mark# X)
    (mark# U105(X1, X2) -> mark# X1, mark# U106 X -> active# U106 mark X)
    (mark# U105(X1, X2) -> mark# X1, mark# U106 X -> U106# mark X)
    (mark# U105(X1, X2) -> mark# X1, mark# isNatIList X -> active# isNatIList X)
    (mark# U105(X1, X2) -> mark# X1, mark# U12(X1, X2) -> mark# X1)
    (mark# U105(X1, X2) -> mark# X1, mark# U12(X1, X2) -> active# U12(mark X1, X2))
    (mark# U105(X1, X2) -> mark# X1, mark# U12(X1, X2) -> U12#(mark X1, X2))
    (mark# U105(X1, X2) -> mark# X1, mark# U11(X1, X2) -> mark# X1)
    (mark# U105(X1, X2) -> mark# X1, mark# U11(X1, X2) -> active# U11(mark X1, X2))
    (mark# U105(X1, X2) -> mark# X1, mark# U11(X1, X2) -> U11#(mark X1, X2))
    (mark# U105(X1, X2) -> mark# X1, mark# U112(X1, X2, X3) -> mark# X1)
    (mark# U105(X1, X2) -> mark# X1, mark# U112(X1, X2, X3) -> active# U112(mark X1, X2, X3))
    (mark# U105(X1, X2) -> mark# X1, mark# U112(X1, X2, X3) -> U112#(mark X1, X2, X3))
    (mark# U105(X1, X2) -> mark# X1, mark# U111(X1, X2, X3) -> mark# X1)
    (mark# U105(X1, X2) -> mark# X1, mark# U111(X1, X2, X3) -> active# U111(mark X1, X2, X3))
    (mark# U105(X1, X2) -> mark# X1, mark# U111(X1, X2, X3) -> U111#(mark X1, X2, X3))
    (mark# U105(X1, X2) -> mark# X1, mark# U113(X1, X2, X3) -> mark# X1)
    (mark# U105(X1, X2) -> mark# X1, mark# U113(X1, X2, X3) -> active# U113(mark X1, X2, X3))
    (mark# U105(X1, X2) -> mark# X1, mark# U113(X1, X2, X3) -> U113#(mark X1, X2, X3))
    (mark# U105(X1, X2) -> mark# X1, mark# U114(X1, X2) -> mark# X1)
    (mark# U105(X1, X2) -> mark# X1, mark# U114(X1, X2) -> active# U114(mark X1, X2))
    (mark# U105(X1, X2) -> mark# X1, mark# U114(X1, X2) -> U114#(mark X1, X2))
    (mark# U105(X1, X2) -> mark# X1, mark# s X -> mark# X)
    (mark# U105(X1, X2) -> mark# X1, mark# s X -> active# s mark X)
    (mark# U105(X1, X2) -> mark# X1, mark# s X -> s# mark X)
    (mark# U105(X1, X2) -> mark# X1, mark# length X -> mark# X)
    (mark# U105(X1, X2) -> mark# X1, mark# length X -> active# length mark X)
    (mark# U105(X1, X2) -> mark# X1, mark# length X -> length# mark X)
    (mark# U105(X1, X2) -> mark# X1, mark# U13 X -> mark# X)
    (mark# U105(X1, X2) -> mark# X1, mark# U13 X -> active# U13 mark X)
    (mark# U105(X1, X2) -> mark# X1, mark# U13 X -> U13# mark X)
    (mark# U105(X1, X2) -> mark# X1, mark# isNatList X -> active# isNatList X)
    (mark# U105(X1, X2) -> mark# X1, mark# U122 X -> mark# X)
    (mark# U105(X1, X2) -> mark# X1, mark# U122 X -> active# U122 mark X)
    (mark# U105(X1, X2) -> mark# X1, mark# U122 X -> U122# mark X)
    (mark# U105(X1, X2) -> mark# X1, mark# U121(X1, X2) -> mark# X1)
    (mark# U105(X1, X2) -> mark# X1, mark# U121(X1, X2) -> active# U121(mark X1, X2))
    (mark# U105(X1, X2) -> mark# X1, mark# U121(X1, X2) -> U121#(mark X1, X2))
    (mark# U105(X1, X2) -> mark# X1, mark# nil() -> active# nil())
    (mark# U105(X1, X2) -> mark# X1, mark# U132(X1, X2, X3, X4) -> mark# X1)
    (mark# U105(X1, X2) -> mark# X1, mark# U132(X1, X2, X3, X4) -> active# U132(mark X1, X2, X3, X4))
    (mark# U105(X1, X2) -> mark# X1, mark# U132(X1, X2, X3, X4) -> U132#(mark X1, X2, X3, X4))
    (mark# U105(X1, X2) -> mark# X1, mark# U131(X1, X2, X3, X4) -> mark# X1)
    (mark# U105(X1, X2) -> mark# X1, mark# U131(X1, X2, X3, X4) -> active# U131(mark X1, X2, X3, X4))
    (mark# U105(X1, X2) -> mark# X1, mark# U131(X1, X2, X3, X4) -> U131#(mark X1, X2, X3, X4))
    (mark# U105(X1, X2) -> mark# X1, mark# U133(X1, X2, X3, X4) -> mark# X1)
    (mark# U105(X1, X2) -> mark# X1, mark# U133(X1, X2, X3, X4) -> active# U133(mark X1, X2, X3, X4))
    (mark# U105(X1, X2) -> mark# X1, mark# U133(X1, X2, X3, X4) -> U133#(mark X1, X2, X3, X4))
    (mark# U105(X1, X2) -> mark# X1, mark# U134(X1, X2, X3, X4) -> mark# X1)
    (mark# U105(X1, X2) -> mark# X1, mark# U134(X1, X2, X3, X4) -> active# U134(mark X1, X2, X3, X4))
    (mark# U105(X1, X2) -> mark# X1, mark# U134(X1, X2, X3, X4) -> U134#(mark X1, X2, X3, X4))
    (mark# U105(X1, X2) -> mark# X1, mark# U135(X1, X2, X3, X4) -> mark# X1)
    (mark# U105(X1, X2) -> mark# X1, mark# U135(X1, X2, X3, X4) -> active# U135(mark X1, X2, X3, X4))
    (mark# U105(X1, X2) -> mark# X1, mark# U135(X1, X2, X3, X4) -> U135#(mark X1, X2, X3, X4))
    (mark# U105(X1, X2) -> mark# X1, mark# U136(X1, X2, X3, X4) -> mark# X1)
    (mark# U105(X1, X2) -> mark# X1, mark# U136(X1, X2, X3, X4) -> active# U136(mark X1, X2, X3, X4))
    (mark# U105(X1, X2) -> mark# X1, mark# U136(X1, X2, X3, X4) -> U136#(mark X1, X2, X3, X4))
    (mark# U105(X1, X2) -> mark# X1, mark# take(X1, X2) -> mark# X1)
    (mark# U105(X1, X2) -> mark# X1, mark# take(X1, X2) -> mark# X2)
    (mark# U105(X1, X2) -> mark# X1, mark# take(X1, X2) -> active# take(mark X1, mark X2))
    (mark# U105(X1, X2) -> mark# X1, mark# take(X1, X2) -> take#(mark X1, mark X2))
    (mark# U105(X1, X2) -> mark# X1, mark# U22(X1, X2) -> mark# X1)
    (mark# U105(X1, X2) -> mark# X1, mark# U22(X1, X2) -> active# U22(mark X1, X2))
    (mark# U105(X1, X2) -> mark# X1, mark# U22(X1, X2) -> U22#(mark X1, X2))
    (mark# U105(X1, X2) -> mark# X1, mark# U21(X1, X2) -> mark# X1)
    (mark# U105(X1, X2) -> mark# X1, mark# U21(X1, X2) -> active# U21(mark X1, X2))
    (mark# U105(X1, X2) -> mark# X1, mark# U21(X1, X2) -> U21#(mark X1, X2))
    (mark# U105(X1, X2) -> mark# X1, mark# U23 X -> mark# X)
    (mark# U105(X1, X2) -> mark# X1, mark# U23 X -> active# U23 mark X)
    (mark# U105(X1, X2) -> mark# X1, mark# U23 X -> U23# mark X)
    (mark# U105(X1, X2) -> mark# X1, mark# U32(X1, X2) -> mark# X1)
    (mark# U105(X1, X2) -> mark# X1, mark# U32(X1, X2) -> active# U32(mark X1, X2))
    (mark# U105(X1, X2) -> mark# X1, mark# U32(X1, X2) -> U32#(mark X1, X2))
    (mark# U105(X1, X2) -> mark# X1, mark# U31(X1, X2) -> mark# X1)
    (mark# U105(X1, X2) -> mark# X1, mark# U31(X1, X2) -> active# U31(mark X1, X2))
    (mark# U105(X1, X2) -> mark# X1, mark# U31(X1, X2) -> U31#(mark X1, X2))
    (mark# U105(X1, X2) -> mark# X1, mark# U33 X -> mark# X)
    (mark# U105(X1, X2) -> mark# X1, mark# U33 X -> active# U33 mark X)
    (mark# U105(X1, X2) -> mark# X1, mark# U33 X -> U33# mark X)
    (mark# U105(X1, X2) -> mark# X1, mark# U42(X1, X2, X3) -> mark# X1)
    (mark# U105(X1, X2) -> mark# X1, mark# U42(X1, X2, X3) -> active# U42(mark X1, X2, X3))
    (mark# U105(X1, X2) -> mark# X1, mark# U42(X1, X2, X3) -> U42#(mark X1, X2, X3))
    (mark# U105(X1, X2) -> mark# X1, mark# U41(X1, X2, X3) -> mark# X1)
    (mark# U105(X1, X2) -> mark# X1, mark# U41(X1, X2, X3) -> active# U41(mark X1, X2, X3))
    (mark# U105(X1, X2) -> mark# X1, mark# U41(X1, X2, X3) -> U41#(mark X1, X2, X3))
    (mark# U105(X1, X2) -> mark# X1, mark# U43(X1, X2, X3) -> mark# X1)
    (mark# U105(X1, X2) -> mark# X1, mark# U43(X1, X2, X3) -> active# U43(mark X1, X2, X3))
    (mark# U105(X1, X2) -> mark# X1, mark# U43(X1, X2, X3) -> U43#(mark X1, X2, X3))
    (mark# U105(X1, X2) -> mark# X1, mark# U44(X1, X2, X3) -> mark# X1)
    (mark# U105(X1, X2) -> mark# X1, mark# U44(X1, X2, X3) -> active# U44(mark X1, X2, X3))
    (mark# U105(X1, X2) -> mark# X1, mark# U44(X1, X2, X3) -> U44#(mark X1, X2, X3))
    (mark# U105(X1, X2) -> mark# X1, mark# U45(X1, X2) -> mark# X1)
    (mark# U105(X1, X2) -> mark# X1, mark# U45(X1, X2) -> active# U45(mark X1, X2))
    (mark# U105(X1, X2) -> mark# X1, mark# U45(X1, X2) -> U45#(mark X1, X2))
    (mark# U105(X1, X2) -> mark# X1, mark# U46 X -> mark# X)
    (mark# U105(X1, X2) -> mark# X1, mark# U46 X -> active# U46 mark X)
    (mark# U105(X1, X2) -> mark# X1, mark# U46 X -> U46# mark X)
    (mark# U105(X1, X2) -> mark# X1, mark# U52 X -> mark# X)
    (mark# U105(X1, X2) -> mark# X1, mark# U52 X -> active# U52 mark X)
    (mark# U105(X1, X2) -> mark# X1, mark# U52 X -> U52# mark X)
    (mark# U105(X1, X2) -> mark# X1, mark# U51(X1, X2) -> mark# X1)
    (mark# U105(X1, X2) -> mark# X1, mark# U51(X1, X2) -> active# U51(mark X1, X2))
    (mark# U105(X1, X2) -> mark# X1, mark# U51(X1, X2) -> U51#(mark X1, X2))
    (mark# U105(X1, X2) -> mark# X1, mark# U62 X -> mark# X)
    (mark# U105(X1, X2) -> mark# X1, mark# U62 X -> active# U62 mark X)
    (mark# U105(X1, X2) -> mark# X1, mark# U62 X -> U62# mark X)
    (mark# U105(X1, X2) -> mark# X1, mark# U61(X1, X2) -> mark# X1)
    (mark# U105(X1, X2) -> mark# X1, mark# U61(X1, X2) -> active# U61(mark X1, X2))
    (mark# U105(X1, X2) -> mark# X1, mark# U61(X1, X2) -> U61#(mark X1, X2))
    (mark# U105(X1, X2) -> mark# X1, mark# U71 X -> mark# X)
    (mark# U105(X1, X2) -> mark# X1, mark# U71 X -> active# U71 mark X)
    (mark# U105(X1, X2) -> mark# X1, mark# U71 X -> U71# mark X)
    (mark# U105(X1, X2) -> mark# X1, mark# U81 X -> mark# X)
    (mark# U105(X1, X2) -> mark# X1, mark# U81 X -> active# U81 mark X)
    (mark# U105(X1, X2) -> mark# X1, mark# U81 X -> U81# mark X)
    (mark# U105(X1, X2) -> mark# X1, mark# U92(X1, X2, X3) -> mark# X1)
    (mark# U105(X1, X2) -> mark# X1, mark# U92(X1, X2, X3) -> active# U92(mark X1, X2, X3))
    (mark# U105(X1, X2) -> mark# X1, mark# U92(X1, X2, X3) -> U92#(mark X1, X2, X3))
    (mark# U105(X1, X2) -> mark# X1, mark# U91(X1, X2, X3) -> mark# X1)
    (mark# U105(X1, X2) -> mark# X1, mark# U91(X1, X2, X3) -> active# U91(mark X1, X2, X3))
    (mark# U105(X1, X2) -> mark# X1, mark# U91(X1, X2, X3) -> U91#(mark X1, X2, X3))
    (mark# U105(X1, X2) -> mark# X1, mark# U93(X1, X2, X3) -> mark# X1)
    (mark# U105(X1, X2) -> mark# X1, mark# U93(X1, X2, X3) -> active# U93(mark X1, X2, X3))
    (mark# U105(X1, X2) -> mark# X1, mark# U93(X1, X2, X3) -> U93#(mark X1, X2, X3))
    (mark# U105(X1, X2) -> mark# X1, mark# U94(X1, X2, X3) -> mark# X1)
    (mark# U105(X1, X2) -> mark# X1, mark# U94(X1, X2, X3) -> active# U94(mark X1, X2, X3))
    (mark# U105(X1, X2) -> mark# X1, mark# U94(X1, X2, X3) -> U94#(mark X1, X2, X3))
    (mark# U105(X1, X2) -> mark# X1, mark# U95(X1, X2) -> mark# X1)
    (mark# U105(X1, X2) -> mark# X1, mark# U95(X1, X2) -> active# U95(mark X1, X2))
    (mark# U105(X1, X2) -> mark# X1, mark# U95(X1, X2) -> U95#(mark X1, X2))
    (mark# U105(X1, X2) -> mark# X1, mark# U96 X -> mark# X)
    (mark# U105(X1, X2) -> mark# X1, mark# U96 X -> active# U96 mark X)
    (mark# U105(X1, X2) -> mark# X1, mark# U96 X -> U96# mark X)
    (mark# U103(X1, X2, X3) -> mark# X1, mark# cons(X1, X2) -> mark# X1)
    (mark# U103(X1, X2, X3) -> mark# X1, mark# cons(X1, X2) -> cons#(mark X1, X2))
    (mark# U103(X1, X2, X3) -> mark# X1, mark# cons(X1, X2) -> active# cons(mark X1, X2))
    (mark# U103(X1, X2, X3) -> mark# X1, mark# 0() -> active# 0())
    (mark# U103(X1, X2, X3) -> mark# X1, mark# zeros() -> active# zeros())
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U102(X1, X2, X3) -> mark# X1)
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U102(X1, X2, X3) -> active# U102(mark X1, X2, X3))
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U102(X1, X2, X3) -> U102#(mark X1, X2, X3))
    (mark# U103(X1, X2, X3) -> mark# X1, mark# isNatKind X -> active# isNatKind X)
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U101(X1, X2, X3) -> mark# X1)
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U101(X1, X2, X3) -> active# U101(mark X1, X2, X3))
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U101(X1, X2, X3) -> U101#(mark X1, X2, X3))
    (mark# U103(X1, X2, X3) -> mark# X1, mark# tt() -> active# tt())
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U103(X1, X2, X3) -> mark# X1)
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U103(X1, X2, X3) -> active# U103(mark X1, X2, X3))
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U103(X1, X2, X3) -> U103#(mark X1, X2, X3))
    (mark# U103(X1, X2, X3) -> mark# X1, mark# isNatIListKind X -> active# isNatIListKind X)
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U104(X1, X2, X3) -> mark# X1)
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U104(X1, X2, X3) -> active# U104(mark X1, X2, X3))
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U104(X1, X2, X3) -> U104#(mark X1, X2, X3))
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U105(X1, X2) -> mark# X1)
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U105(X1, X2) -> active# U105(mark X1, X2))
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U105(X1, X2) -> U105#(mark X1, X2))
    (mark# U103(X1, X2, X3) -> mark# X1, mark# isNat X -> active# isNat X)
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U106 X -> mark# X)
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U106 X -> active# U106 mark X)
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U106 X -> U106# mark X)
    (mark# U103(X1, X2, X3) -> mark# X1, mark# isNatIList X -> active# isNatIList X)
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U12(X1, X2) -> mark# X1)
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U12(X1, X2) -> active# U12(mark X1, X2))
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U12(X1, X2) -> U12#(mark X1, X2))
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U11(X1, X2) -> mark# X1)
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U11(X1, X2) -> active# U11(mark X1, X2))
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U11(X1, X2) -> U11#(mark X1, X2))
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U112(X1, X2, X3) -> mark# X1)
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U112(X1, X2, X3) -> active# U112(mark X1, X2, X3))
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U112(X1, X2, X3) -> U112#(mark X1, X2, X3))
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U111(X1, X2, X3) -> mark# X1)
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U111(X1, X2, X3) -> active# U111(mark X1, X2, X3))
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U111(X1, X2, X3) -> U111#(mark X1, X2, X3))
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U113(X1, X2, X3) -> mark# X1)
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U113(X1, X2, X3) -> active# U113(mark X1, X2, X3))
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U113(X1, X2, X3) -> U113#(mark X1, X2, X3))
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U114(X1, X2) -> mark# X1)
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U114(X1, X2) -> active# U114(mark X1, X2))
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U114(X1, X2) -> U114#(mark X1, X2))
    (mark# U103(X1, X2, X3) -> mark# X1, mark# s X -> mark# X)
    (mark# U103(X1, X2, X3) -> mark# X1, mark# s X -> active# s mark X)
    (mark# U103(X1, X2, X3) -> mark# X1, mark# s X -> s# mark X)
    (mark# U103(X1, X2, X3) -> mark# X1, mark# length X -> mark# X)
    (mark# U103(X1, X2, X3) -> mark# X1, mark# length X -> active# length mark X)
    (mark# U103(X1, X2, X3) -> mark# X1, mark# length X -> length# mark X)
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U13 X -> mark# X)
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U13 X -> active# U13 mark X)
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U13 X -> U13# mark X)
    (mark# U103(X1, X2, X3) -> mark# X1, mark# isNatList X -> active# isNatList X)
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U122 X -> mark# X)
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U122 X -> active# U122 mark X)
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U122 X -> U122# mark X)
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U121(X1, X2) -> mark# X1)
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U121(X1, X2) -> active# U121(mark X1, X2))
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U121(X1, X2) -> U121#(mark X1, X2))
    (mark# U103(X1, X2, X3) -> mark# X1, mark# nil() -> active# nil())
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U132(X1, X2, X3, X4) -> mark# X1)
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U132(X1, X2, X3, X4) -> active# U132(mark X1, X2, X3, X4))
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U132(X1, X2, X3, X4) -> U132#(mark X1, X2, X3, X4))
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U131(X1, X2, X3, X4) -> mark# X1)
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U131(X1, X2, X3, X4) -> active# U131(mark X1, X2, X3, X4))
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U131(X1, X2, X3, X4) -> U131#(mark X1, X2, X3, X4))
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U133(X1, X2, X3, X4) -> mark# X1)
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U133(X1, X2, X3, X4) -> active# U133(mark X1, X2, X3, X4))
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U133(X1, X2, X3, X4) -> U133#(mark X1, X2, X3, X4))
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U134(X1, X2, X3, X4) -> mark# X1)
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U134(X1, X2, X3, X4) -> active# U134(mark X1, X2, X3, X4))
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U134(X1, X2, X3, X4) -> U134#(mark X1, X2, X3, X4))
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U135(X1, X2, X3, X4) -> mark# X1)
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U135(X1, X2, X3, X4) -> active# U135(mark X1, X2, X3, X4))
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U135(X1, X2, X3, X4) -> U135#(mark X1, X2, X3, X4))
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U136(X1, X2, X3, X4) -> mark# X1)
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U136(X1, X2, X3, X4) -> active# U136(mark X1, X2, X3, X4))
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U136(X1, X2, X3, X4) -> U136#(mark X1, X2, X3, X4))
    (mark# U103(X1, X2, X3) -> mark# X1, mark# take(X1, X2) -> mark# X1)
    (mark# U103(X1, X2, X3) -> mark# X1, mark# take(X1, X2) -> mark# X2)
    (mark# U103(X1, X2, X3) -> mark# X1, mark# take(X1, X2) -> active# take(mark X1, mark X2))
    (mark# U103(X1, X2, X3) -> mark# X1, mark# take(X1, X2) -> take#(mark X1, mark X2))
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U22(X1, X2) -> mark# X1)
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U22(X1, X2) -> active# U22(mark X1, X2))
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U22(X1, X2) -> U22#(mark X1, X2))
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U21(X1, X2) -> mark# X1)
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U21(X1, X2) -> active# U21(mark X1, X2))
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U21(X1, X2) -> U21#(mark X1, X2))
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U23 X -> mark# X)
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U23 X -> active# U23 mark X)
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U23 X -> U23# mark X)
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U32(X1, X2) -> mark# X1)
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U32(X1, X2) -> active# U32(mark X1, X2))
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U32(X1, X2) -> U32#(mark X1, X2))
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U31(X1, X2) -> mark# X1)
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U31(X1, X2) -> active# U31(mark X1, X2))
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U31(X1, X2) -> U31#(mark X1, X2))
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U33 X -> mark# X)
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U33 X -> active# U33 mark X)
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U33 X -> U33# mark X)
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U42(X1, X2, X3) -> mark# X1)
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U42(X1, X2, X3) -> active# U42(mark X1, X2, X3))
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U42(X1, X2, X3) -> U42#(mark X1, X2, X3))
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U41(X1, X2, X3) -> mark# X1)
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U41(X1, X2, X3) -> active# U41(mark X1, X2, X3))
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U41(X1, X2, X3) -> U41#(mark X1, X2, X3))
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U43(X1, X2, X3) -> mark# X1)
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U43(X1, X2, X3) -> active# U43(mark X1, X2, X3))
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U43(X1, X2, X3) -> U43#(mark X1, X2, X3))
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U44(X1, X2, X3) -> mark# X1)
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U44(X1, X2, X3) -> active# U44(mark X1, X2, X3))
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U44(X1, X2, X3) -> U44#(mark X1, X2, X3))
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U45(X1, X2) -> mark# X1)
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U45(X1, X2) -> active# U45(mark X1, X2))
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U45(X1, X2) -> U45#(mark X1, X2))
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U46 X -> mark# X)
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U46 X -> active# U46 mark X)
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U46 X -> U46# mark X)
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U52 X -> mark# X)
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U52 X -> active# U52 mark X)
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U52 X -> U52# mark X)
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U51(X1, X2) -> mark# X1)
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U51(X1, X2) -> active# U51(mark X1, X2))
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U51(X1, X2) -> U51#(mark X1, X2))
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U62 X -> mark# X)
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U62 X -> active# U62 mark X)
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U62 X -> U62# mark X)
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U61(X1, X2) -> mark# X1)
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U61(X1, X2) -> active# U61(mark X1, X2))
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U61(X1, X2) -> U61#(mark X1, X2))
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U71 X -> mark# X)
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U71 X -> active# U71 mark X)
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U71 X -> U71# mark X)
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U81 X -> mark# X)
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U81 X -> active# U81 mark X)
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U81 X -> U81# mark X)
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U92(X1, X2, X3) -> mark# X1)
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U92(X1, X2, X3) -> active# U92(mark X1, X2, X3))
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U92(X1, X2, X3) -> U92#(mark X1, X2, X3))
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U91(X1, X2, X3) -> mark# X1)
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U91(X1, X2, X3) -> active# U91(mark X1, X2, X3))
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U91(X1, X2, X3) -> U91#(mark X1, X2, X3))
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U93(X1, X2, X3) -> mark# X1)
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U93(X1, X2, X3) -> active# U93(mark X1, X2, X3))
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U93(X1, X2, X3) -> U93#(mark X1, X2, X3))
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U94(X1, X2, X3) -> mark# X1)
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U94(X1, X2, X3) -> active# U94(mark X1, X2, X3))
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U94(X1, X2, X3) -> U94#(mark X1, X2, X3))
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U95(X1, X2) -> mark# X1)
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U95(X1, X2) -> active# U95(mark X1, X2))
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U95(X1, X2) -> U95#(mark X1, X2))
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U96 X -> mark# X)
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U96 X -> active# U96 mark X)
    (mark# U103(X1, X2, X3) -> mark# X1, mark# U96 X -> U96# mark X)
    (mark# U102(X1, X2, X3) -> mark# X1, mark# cons(X1, X2) -> mark# X1)
    (mark# U102(X1, X2, X3) -> mark# X1, mark# cons(X1, X2) -> cons#(mark X1, X2))
    (mark# U102(X1, X2, X3) -> mark# X1, mark# cons(X1, X2) -> active# cons(mark X1, X2))
    (mark# U102(X1, X2, X3) -> mark# X1, mark# 0() -> active# 0())
    (mark# U102(X1, X2, X3) -> mark# X1, mark# zeros() -> active# zeros())
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U102(X1, X2, X3) -> mark# X1)
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U102(X1, X2, X3) -> active# U102(mark X1, X2, X3))
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U102(X1, X2, X3) -> U102#(mark X1, X2, X3))
    (mark# U102(X1, X2, X3) -> mark# X1, mark# isNatKind X -> active# isNatKind X)
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U101(X1, X2, X3) -> mark# X1)
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U101(X1, X2, X3) -> active# U101(mark X1, X2, X3))
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U101(X1, X2, X3) -> U101#(mark X1, X2, X3))
    (mark# U102(X1, X2, X3) -> mark# X1, mark# tt() -> active# tt())
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U103(X1, X2, X3) -> mark# X1)
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U103(X1, X2, X3) -> active# U103(mark X1, X2, X3))
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U103(X1, X2, X3) -> U103#(mark X1, X2, X3))
    (mark# U102(X1, X2, X3) -> mark# X1, mark# isNatIListKind X -> active# isNatIListKind X)
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U104(X1, X2, X3) -> mark# X1)
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U104(X1, X2, X3) -> active# U104(mark X1, X2, X3))
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U104(X1, X2, X3) -> U104#(mark X1, X2, X3))
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U105(X1, X2) -> mark# X1)
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U105(X1, X2) -> active# U105(mark X1, X2))
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U105(X1, X2) -> U105#(mark X1, X2))
    (mark# U102(X1, X2, X3) -> mark# X1, mark# isNat X -> active# isNat X)
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U106 X -> mark# X)
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U106 X -> active# U106 mark X)
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U106 X -> U106# mark X)
    (mark# U102(X1, X2, X3) -> mark# X1, mark# isNatIList X -> active# isNatIList X)
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U12(X1, X2) -> mark# X1)
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U12(X1, X2) -> active# U12(mark X1, X2))
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U12(X1, X2) -> U12#(mark X1, X2))
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U11(X1, X2) -> mark# X1)
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U11(X1, X2) -> active# U11(mark X1, X2))
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U11(X1, X2) -> U11#(mark X1, X2))
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U112(X1, X2, X3) -> mark# X1)
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U112(X1, X2, X3) -> active# U112(mark X1, X2, X3))
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U112(X1, X2, X3) -> U112#(mark X1, X2, X3))
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U111(X1, X2, X3) -> mark# X1)
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U111(X1, X2, X3) -> active# U111(mark X1, X2, X3))
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U111(X1, X2, X3) -> U111#(mark X1, X2, X3))
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U113(X1, X2, X3) -> mark# X1)
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U113(X1, X2, X3) -> active# U113(mark X1, X2, X3))
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U113(X1, X2, X3) -> U113#(mark X1, X2, X3))
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U114(X1, X2) -> mark# X1)
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U114(X1, X2) -> active# U114(mark X1, X2))
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U114(X1, X2) -> U114#(mark X1, X2))
    (mark# U102(X1, X2, X3) -> mark# X1, mark# s X -> mark# X)
    (mark# U102(X1, X2, X3) -> mark# X1, mark# s X -> active# s mark X)
    (mark# U102(X1, X2, X3) -> mark# X1, mark# s X -> s# mark X)
    (mark# U102(X1, X2, X3) -> mark# X1, mark# length X -> mark# X)
    (mark# U102(X1, X2, X3) -> mark# X1, mark# length X -> active# length mark X)
    (mark# U102(X1, X2, X3) -> mark# X1, mark# length X -> length# mark X)
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U13 X -> mark# X)
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U13 X -> active# U13 mark X)
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U13 X -> U13# mark X)
    (mark# U102(X1, X2, X3) -> mark# X1, mark# isNatList X -> active# isNatList X)
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U122 X -> mark# X)
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U122 X -> active# U122 mark X)
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U122 X -> U122# mark X)
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U121(X1, X2) -> mark# X1)
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U121(X1, X2) -> active# U121(mark X1, X2))
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U121(X1, X2) -> U121#(mark X1, X2))
    (mark# U102(X1, X2, X3) -> mark# X1, mark# nil() -> active# nil())
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U132(X1, X2, X3, X4) -> mark# X1)
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U132(X1, X2, X3, X4) -> active# U132(mark X1, X2, X3, X4))
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U132(X1, X2, X3, X4) -> U132#(mark X1, X2, X3, X4))
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U131(X1, X2, X3, X4) -> mark# X1)
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U131(X1, X2, X3, X4) -> active# U131(mark X1, X2, X3, X4))
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U131(X1, X2, X3, X4) -> U131#(mark X1, X2, X3, X4))
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U133(X1, X2, X3, X4) -> mark# X1)
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U133(X1, X2, X3, X4) -> active# U133(mark X1, X2, X3, X4))
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U133(X1, X2, X3, X4) -> U133#(mark X1, X2, X3, X4))
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U134(X1, X2, X3, X4) -> mark# X1)
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U134(X1, X2, X3, X4) -> active# U134(mark X1, X2, X3, X4))
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U134(X1, X2, X3, X4) -> U134#(mark X1, X2, X3, X4))
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U135(X1, X2, X3, X4) -> mark# X1)
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U135(X1, X2, X3, X4) -> active# U135(mark X1, X2, X3, X4))
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U135(X1, X2, X3, X4) -> U135#(mark X1, X2, X3, X4))
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U136(X1, X2, X3, X4) -> mark# X1)
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U136(X1, X2, X3, X4) -> active# U136(mark X1, X2, X3, X4))
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U136(X1, X2, X3, X4) -> U136#(mark X1, X2, X3, X4))
    (mark# U102(X1, X2, X3) -> mark# X1, mark# take(X1, X2) -> mark# X1)
    (mark# U102(X1, X2, X3) -> mark# X1, mark# take(X1, X2) -> mark# X2)
    (mark# U102(X1, X2, X3) -> mark# X1, mark# take(X1, X2) -> active# take(mark X1, mark X2))
    (mark# U102(X1, X2, X3) -> mark# X1, mark# take(X1, X2) -> take#(mark X1, mark X2))
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U22(X1, X2) -> mark# X1)
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U22(X1, X2) -> active# U22(mark X1, X2))
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U22(X1, X2) -> U22#(mark X1, X2))
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U21(X1, X2) -> mark# X1)
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U21(X1, X2) -> active# U21(mark X1, X2))
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U21(X1, X2) -> U21#(mark X1, X2))
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U23 X -> mark# X)
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U23 X -> active# U23 mark X)
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U23 X -> U23# mark X)
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U32(X1, X2) -> mark# X1)
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U32(X1, X2) -> active# U32(mark X1, X2))
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U32(X1, X2) -> U32#(mark X1, X2))
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U31(X1, X2) -> mark# X1)
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U31(X1, X2) -> active# U31(mark X1, X2))
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U31(X1, X2) -> U31#(mark X1, X2))
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U33 X -> mark# X)
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U33 X -> active# U33 mark X)
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U33 X -> U33# mark X)
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U42(X1, X2, X3) -> mark# X1)
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U42(X1, X2, X3) -> active# U42(mark X1, X2, X3))
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U42(X1, X2, X3) -> U42#(mark X1, X2, X3))
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U41(X1, X2, X3) -> mark# X1)
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U41(X1, X2, X3) -> active# U41(mark X1, X2, X3))
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U41(X1, X2, X3) -> U41#(mark X1, X2, X3))
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U43(X1, X2, X3) -> mark# X1)
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U43(X1, X2, X3) -> active# U43(mark X1, X2, X3))
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U43(X1, X2, X3) -> U43#(mark X1, X2, X3))
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U44(X1, X2, X3) -> mark# X1)
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U44(X1, X2, X3) -> active# U44(mark X1, X2, X3))
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U44(X1, X2, X3) -> U44#(mark X1, X2, X3))
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U45(X1, X2) -> mark# X1)
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U45(X1, X2) -> active# U45(mark X1, X2))
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U45(X1, X2) -> U45#(mark X1, X2))
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U46 X -> mark# X)
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U46 X -> active# U46 mark X)
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U46 X -> U46# mark X)
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U52 X -> mark# X)
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U52 X -> active# U52 mark X)
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U52 X -> U52# mark X)
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U51(X1, X2) -> mark# X1)
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U51(X1, X2) -> active# U51(mark X1, X2))
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U51(X1, X2) -> U51#(mark X1, X2))
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U62 X -> mark# X)
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U62 X -> active# U62 mark X)
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U62 X -> U62# mark X)
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U61(X1, X2) -> mark# X1)
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U61(X1, X2) -> active# U61(mark X1, X2))
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U61(X1, X2) -> U61#(mark X1, X2))
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U71 X -> mark# X)
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U71 X -> active# U71 mark X)
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U71 X -> U71# mark X)
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U81 X -> mark# X)
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U81 X -> active# U81 mark X)
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U81 X -> U81# mark X)
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U92(X1, X2, X3) -> mark# X1)
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U92(X1, X2, X3) -> active# U92(mark X1, X2, X3))
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U92(X1, X2, X3) -> U92#(mark X1, X2, X3))
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U91(X1, X2, X3) -> mark# X1)
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U91(X1, X2, X3) -> active# U91(mark X1, X2, X3))
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U91(X1, X2, X3) -> U91#(mark X1, X2, X3))
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U93(X1, X2, X3) -> mark# X1)
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U93(X1, X2, X3) -> active# U93(mark X1, X2, X3))
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U93(X1, X2, X3) -> U93#(mark X1, X2, X3))
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U94(X1, X2, X3) -> mark# X1)
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U94(X1, X2, X3) -> active# U94(mark X1, X2, X3))
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U94(X1, X2, X3) -> U94#(mark X1, X2, X3))
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U95(X1, X2) -> mark# X1)
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U95(X1, X2) -> active# U95(mark X1, X2))
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U95(X1, X2) -> U95#(mark X1, X2))
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U96 X -> mark# X)
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U96 X -> active# U96 mark X)
    (mark# U102(X1, X2, X3) -> mark# X1, mark# U96 X -> U96# mark X)
    (active# length cons(N, L) -> isNatList# L, isNatList# mark X -> isNatList# X)
    (active# length cons(N, L) -> isNatList# L, isNatList# active X -> isNatList# X)
    (active# U111(tt(), L, N) -> isNatIListKind# L, isNatIListKind# mark X -> isNatIListKind# X)
    (active# U111(tt(), L, N) -> isNatIListKind# L, isNatIListKind# active X -> isNatIListKind# X)
    (active# U11(tt(), V1) -> U12#(isNatIListKind V1, V1), U12#(X1, mark X2) -> U12#(X1, X2))
    (active# U11(tt(), V1) -> U12#(isNatIListKind V1, V1), U12#(X1, active X2) -> U12#(X1, X2))
    (active# isNat s V1 -> U21#(isNatKind V1, V1), U21#(X1, mark X2) -> U21#(X1, X2))
    (active# isNat s V1 -> U21#(isNatKind V1, V1), U21#(X1, active X2) -> U21#(X1, X2))
    (U96# mark X -> U96# X, U96# mark X -> U96# X)
    (U96# mark X -> U96# X, U96# active X -> U96# X)
    (U81# mark X -> U81# X, U81# mark X -> U81# X)
    (U81# mark X -> U81# X, U81# active X -> U81# X)
    (U71# mark X -> U71# X, U71# mark X -> U71# X)
    (U71# mark X -> U71# X, U71# active X -> U71# X)
    (U62# mark X -> U62# X, U62# mark X -> U62# X)
    (U62# mark X -> U62# X, U62# active X -> U62# X)
    (U52# mark X -> U52# X, U52# mark X -> U52# X)
    (U52# mark X -> U52# X, U52# active X -> U52# X)
    (U46# mark X -> U46# X, U46# mark X -> U46# X)
    (U46# mark X -> U46# X, U46# active X -> U46# X)
    (U33# mark X -> U33# X, U33# mark X -> U33# X)
    (U33# mark X -> U33# X, U33# active X -> U33# X)
    (U23# mark X -> U23# X, U23# mark X -> U23# X)
    (U23# mark X -> U23# X, U23# active X -> U23# X)
    (U122# mark X -> U122# X, U122# mark X -> U122# X)
    (U122# mark X -> U122# X, U122# active X -> U122# X)
    (isNatList# mark X -> isNatList# X, isNatList# mark X -> isNatList# X)
    (isNatList# mark X -> isNatList# X, isNatList# active X -> isNatList# X)
    (U13# mark X -> U13# X, U13# mark X -> U13# X)
    (U13# mark X -> U13# X, U13# active X -> U13# X)
    (length# mark X -> length# X, length# mark X -> length# X)
    (length# mark X -> length# X, length# active X -> length# X)
    (s# mark X -> s# X, s# mark X -> s# X)
    (s# mark X -> s# X, s# active X -> s# X)
    (isNatIList# mark X -> isNatIList# X, isNatIList# mark X -> isNatIList# X)
    (isNatIList# mark X -> isNatIList# X, isNatIList# active X -> isNatIList# X)
    (U106# mark X -> U106# X, U106# mark X -> U106# X)
    (U106# mark X -> U106# X, U106# active X -> U106# X)
    (isNat# mark X -> isNat# X, isNat# mark X -> isNat# X)
    (isNat# mark X -> isNat# X, isNat# active X -> isNat# X)
    (isNatIListKind# mark X -> isNatIListKind# X, isNatIListKind# mark X -> isNatIListKind# X)
    (isNatIListKind# mark X -> isNatIListKind# X, isNatIListKind# active X -> isNatIListKind# X)
    (isNatKind# mark X -> isNatKind# X, isNatKind# mark X -> isNatKind# X)
    (isNatKind# mark X -> isNatKind# X, isNatKind# active X -> isNatKind# X)
    (mark# U81 X -> mark# X, mark# cons(X1, X2) -> mark# X1)
    (mark# U81 X -> mark# X, mark# cons(X1, X2) -> cons#(mark X1, X2))
    (mark# U81 X -> mark# X, mark# cons(X1, X2) -> active# cons(mark X1, X2))
    (mark# U81 X -> mark# X, mark# 0() -> active# 0())
    (mark# U81 X -> mark# X, mark# zeros() -> active# zeros())
    (mark# U81 X -> mark# X, mark# U102(X1, X2, X3) -> mark# X1)
    (mark# U81 X -> mark# X, mark# U102(X1, X2, X3) -> active# U102(mark X1, X2, X3))
    (mark# U81 X -> mark# X, mark# U102(X1, X2, X3) -> U102#(mark X1, X2, X3))
    (mark# U81 X -> mark# X, mark# isNatKind X -> active# isNatKind X)
    (mark# U81 X -> mark# X, mark# U101(X1, X2, X3) -> mark# X1)
    (mark# U81 X -> mark# X, mark# U101(X1, X2, X3) -> active# U101(mark X1, X2, X3))
    (mark# U81 X -> mark# X, mark# U101(X1, X2, X3) -> U101#(mark X1, X2, X3))
    (mark# U81 X -> mark# X, mark# tt() -> active# tt())
    (mark# U81 X -> mark# X, mark# U103(X1, X2, X3) -> mark# X1)
    (mark# U81 X -> mark# X, mark# U103(X1, X2, X3) -> active# U103(mark X1, X2, X3))
    (mark# U81 X -> mark# X, mark# U103(X1, X2, X3) -> U103#(mark X1, X2, X3))
    (mark# U81 X -> mark# X, mark# isNatIListKind X -> active# isNatIListKind X)
    (mark# U81 X -> mark# X, mark# U104(X1, X2, X3) -> mark# X1)
    (mark# U81 X -> mark# X, mark# U104(X1, X2, X3) -> active# U104(mark X1, X2, X3))
    (mark# U81 X -> mark# X, mark# U104(X1, X2, X3) -> U104#(mark X1, X2, X3))
    (mark# U81 X -> mark# X, mark# U105(X1, X2) -> mark# X1)
    (mark# U81 X -> mark# X, mark# U105(X1, X2) -> active# U105(mark X1, X2))
    (mark# U81 X -> mark# X, mark# U105(X1, X2) -> U105#(mark X1, X2))
    (mark# U81 X -> mark# X, mark# isNat X -> active# isNat X)
    (mark# U81 X -> mark# X, mark# U106 X -> mark# X)
    (mark# U81 X -> mark# X, mark# U106 X -> active# U106 mark X)
    (mark# U81 X -> mark# X, mark# U106 X -> U106# mark X)
    (mark# U81 X -> mark# X, mark# isNatIList X -> active# isNatIList X)
    (mark# U81 X -> mark# X, mark# U12(X1, X2) -> mark# X1)
    (mark# U81 X -> mark# X, mark# U12(X1, X2) -> active# U12(mark X1, X2))
    (mark# U81 X -> mark# X, mark# U12(X1, X2) -> U12#(mark X1, X2))
    (mark# U81 X -> mark# X, mark# U11(X1, X2) -> mark# X1)
    (mark# U81 X -> mark# X, mark# U11(X1, X2) -> active# U11(mark X1, X2))
    (mark# U81 X -> mark# X, mark# U11(X1, X2) -> U11#(mark X1, X2))
    (mark# U81 X -> mark# X, mark# U112(X1, X2, X3) -> mark# X1)
    (mark# U81 X -> mark# X, mark# U112(X1, X2, X3) -> active# U112(mark X1, X2, X3))
    (mark# U81 X -> mark# X, mark# U112(X1, X2, X3) -> U112#(mark X1, X2, X3))
    (mark# U81 X -> mark# X, mark# U111(X1, X2, X3) -> mark# X1)
    (mark# U81 X -> mark# X, mark# U111(X1, X2, X3) -> active# U111(mark X1, X2, X3))
    (mark# U81 X -> mark# X, mark# U111(X1, X2, X3) -> U111#(mark X1, X2, X3))
    (mark# U81 X -> mark# X, mark# U113(X1, X2, X3) -> mark# X1)
    (mark# U81 X -> mark# X, mark# U113(X1, X2, X3) -> active# U113(mark X1, X2, X3))
    (mark# U81 X -> mark# X, mark# U113(X1, X2, X3) -> U113#(mark X1, X2, X3))
    (mark# U81 X -> mark# X, mark# U114(X1, X2) -> mark# X1)
    (mark# U81 X -> mark# X, mark# U114(X1, X2) -> active# U114(mark X1, X2))
    (mark# U81 X -> mark# X, mark# U114(X1, X2) -> U114#(mark X1, X2))
    (mark# U81 X -> mark# X, mark# s X -> mark# X)
    (mark# U81 X -> mark# X, mark# s X -> active# s mark X)
    (mark# U81 X -> mark# X, mark# s X -> s# mark X)
    (mark# U81 X -> mark# X, mark# length X -> mark# X)
    (mark# U81 X -> mark# X, mark# length X -> active# length mark X)
    (mark# U81 X -> mark# X, mark# length X -> length# mark X)
    (mark# U81 X -> mark# X, mark# U13 X -> mark# X)
    (mark# U81 X -> mark# X, mark# U13 X -> active# U13 mark X)
    (mark# U81 X -> mark# X, mark# U13 X -> U13# mark X)
    (mark# U81 X -> mark# X, mark# isNatList X -> active# isNatList X)
    (mark# U81 X -> mark# X, mark# U122 X -> mark# X)
    (mark# U81 X -> mark# X, mark# U122 X -> active# U122 mark X)
    (mark# U81 X -> mark# X, mark# U122 X -> U122# mark X)
    (mark# U81 X -> mark# X, mark# U121(X1, X2) -> mark# X1)
    (mark# U81 X -> mark# X, mark# U121(X1, X2) -> active# U121(mark X1, X2))
    (mark# U81 X -> mark# X, mark# U121(X1, X2) -> U121#(mark X1, X2))
    (mark# U81 X -> mark# X, mark# nil() -> active# nil())
    (mark# U81 X -> mark# X, mark# U132(X1, X2, X3, X4) -> mark# X1)
    (mark# U81 X -> mark# X, mark# U132(X1, X2, X3, X4) -> active# U132(mark X1, X2, X3, X4))
    (mark# U81 X -> mark# X, mark# U132(X1, X2, X3, X4) -> U132#(mark X1, X2, X3, X4))
    (mark# U81 X -> mark# X, mark# U131(X1, X2, X3, X4) -> mark# X1)
    (mark# U81 X -> mark# X, mark# U131(X1, X2, X3, X4) -> active# U131(mark X1, X2, X3, X4))
    (mark# U81 X -> mark# X, mark# U131(X1, X2, X3, X4) -> U131#(mark X1, X2, X3, X4))
    (mark# U81 X -> mark# X, mark# U133(X1, X2, X3, X4) -> mark# X1)
    (mark# U81 X -> mark# X, mark# U133(X1, X2, X3, X4) -> active# U133(mark X1, X2, X3, X4))
    (mark# U81 X -> mark# X, mark# U133(X1, X2, X3, X4) -> U133#(mark X1, X2, X3, X4))
    (mark# U81 X -> mark# X, mark# U134(X1, X2, X3, X4) -> mark# X1)
    (mark# U81 X -> mark# X, mark# U134(X1, X2, X3, X4) -> active# U134(mark X1, X2, X3, X4))
    (mark# U81 X -> mark# X, mark# U134(X1, X2, X3, X4) -> U134#(mark X1, X2, X3, X4))
    (mark# U81 X -> mark# X, mark# U135(X1, X2, X3, X4) -> mark# X1)
    (mark# U81 X -> mark# X, mark# U135(X1, X2, X3, X4) -> active# U135(mark X1, X2, X3, X4))
    (mark# U81 X -> mark# X, mark# U135(X1, X2, X3, X4) -> U135#(mark X1, X2, X3, X4))
    (mark# U81 X -> mark# X, mark# U136(X1, X2, X3, X4) -> mark# X1)
    (mark# U81 X -> mark# X, mark# U136(X1, X2, X3, X4) -> active# U136(mark X1, X2, X3, X4))
    (mark# U81 X -> mark# X, mark# U136(X1, X2, X3, X4) -> U136#(mark X1, X2, X3, X4))
    (mark# U81 X -> mark# X, mark# take(X1, X2) -> mark# X1)
    (mark# U81 X -> mark# X, mark# take(X1, X2) -> mark# X2)
    (mark# U81 X -> mark# X, mark# take(X1, X2) -> active# take(mark X1, mark X2))
    (mark# U81 X -> mark# X, mark# take(X1, X2) -> take#(mark X1, mark X2))
    (mark# U81 X -> mark# X, mark# U22(X1, X2) -> mark# X1)
    (mark# U81 X -> mark# X, mark# U22(X1, X2) -> active# U22(mark X1, X2))
    (mark# U81 X -> mark# X, mark# U22(X1, X2) -> U22#(mark X1, X2))
    (mark# U81 X -> mark# X, mark# U21(X1, X2) -> mark# X1)
    (mark# U81 X -> mark# X, mark# U21(X1, X2) -> active# U21(mark X1, X2))
    (mark# U81 X -> mark# X, mark# U21(X1, X2) -> U21#(mark X1, X2))
    (mark# U81 X -> mark# X, mark# U23 X -> mark# X)
    (mark# U81 X -> mark# X, mark# U23 X -> active# U23 mark X)
    (mark# U81 X -> mark# X, mark# U23 X -> U23# mark X)
    (mark# U81 X -> mark# X, mark# U32(X1, X2) -> mark# X1)
    (mark# U81 X -> mark# X, mark# U32(X1, X2) -> active# U32(mark X1, X2))
    (mark# U81 X -> mark# X, mark# U32(X1, X2) -> U32#(mark X1, X2))
    (mark# U81 X -> mark# X, mark# U31(X1, X2) -> mark# X1)
    (mark# U81 X -> mark# X, mark# U31(X1, X2) -> active# U31(mark X1, X2))
    (mark# U81 X -> mark# X, mark# U31(X1, X2) -> U31#(mark X1, X2))
    (mark# U81 X -> mark# X, mark# U33 X -> mark# X)
    (mark# U81 X -> mark# X, mark# U33 X -> active# U33 mark X)
    (mark# U81 X -> mark# X, mark# U33 X -> U33# mark X)
    (mark# U81 X -> mark# X, mark# U42(X1, X2, X3) -> mark# X1)
    (mark# U81 X -> mark# X, mark# U42(X1, X2, X3) -> active# U42(mark X1, X2, X3))
    (mark# U81 X -> mark# X, mark# U42(X1, X2, X3) -> U42#(mark X1, X2, X3))
    (mark# U81 X -> mark# X, mark# U41(X1, X2, X3) -> mark# X1)
    (mark# U81 X -> mark# X, mark# U41(X1, X2, X3) -> active# U41(mark X1, X2, X3))
    (mark# U81 X -> mark# X, mark# U41(X1, X2, X3) -> U41#(mark X1, X2, X3))
    (mark# U81 X -> mark# X, mark# U43(X1, X2, X3) -> mark# X1)
    (mark# U81 X -> mark# X, mark# U43(X1, X2, X3) -> active# U43(mark X1, X2, X3))
    (mark# U81 X -> mark# X, mark# U43(X1, X2, X3) -> U43#(mark X1, X2, X3))
    (mark# U81 X -> mark# X, mark# U44(X1, X2, X3) -> mark# X1)
    (mark# U81 X -> mark# X, mark# U44(X1, X2, X3) -> active# U44(mark X1, X2, X3))
    (mark# U81 X -> mark# X, mark# U44(X1, X2, X3) -> U44#(mark X1, X2, X3))
    (mark# U81 X -> mark# X, mark# U45(X1, X2) -> mark# X1)
    (mark# U81 X -> mark# X, mark# U45(X1, X2) -> active# U45(mark X1, X2))
    (mark# U81 X -> mark# X, mark# U45(X1, X2) -> U45#(mark X1, X2))
    (mark# U81 X -> mark# X, mark# U46 X -> mark# X)
    (mark# U81 X -> mark# X, mark# U46 X -> active# U46 mark X)
    (mark# U81 X -> mark# X, mark# U46 X -> U46# mark X)
    (mark# U81 X -> mark# X, mark# U52 X -> mark# X)
    (mark# U81 X -> mark# X, mark# U52 X -> active# U52 mark X)
    (mark# U81 X -> mark# X, mark# U52 X -> U52# mark X)
    (mark# U81 X -> mark# X, mark# U51(X1, X2) -> mark# X1)
    (mark# U81 X -> mark# X, mark# U51(X1, X2) -> active# U51(mark X1, X2))
    (mark# U81 X -> mark# X, mark# U51(X1, X2) -> U51#(mark X1, X2))
    (mark# U81 X -> mark# X, mark# U62 X -> mark# X)
    (mark# U81 X -> mark# X, mark# U62 X -> active# U62 mark X)
    (mark# U81 X -> mark# X, mark# U62 X -> U62# mark X)
    (mark# U81 X -> mark# X, mark# U61(X1, X2) -> mark# X1)
    (mark# U81 X -> mark# X, mark# U61(X1, X2) -> active# U61(mark X1, X2))
    (mark# U81 X -> mark# X, mark# U61(X1, X2) -> U61#(mark X1, X2))
    (mark# U81 X -> mark# X, mark# U71 X -> mark# X)
    (mark# U81 X -> mark# X, mark# U71 X -> active# U71 mark X)
    (mark# U81 X -> mark# X, mark# U71 X -> U71# mark X)
    (mark# U81 X -> mark# X, mark# U81 X -> mark# X)
    (mark# U81 X -> mark# X, mark# U81 X -> active# U81 mark X)
    (mark# U81 X -> mark# X, mark# U81 X -> U81# mark X)
    (mark# U81 X -> mark# X, mark# U92(X1, X2, X3) -> mark# X1)
    (mark# U81 X -> mark# X, mark# U92(X1, X2, X3) -> active# U92(mark X1, X2, X3))
    (mark# U81 X -> mark# X, mark# U92(X1, X2, X3) -> U92#(mark X1, X2, X3))
    (mark# U81 X -> mark# X, mark# U91(X1, X2, X3) -> mark# X1)
    (mark# U81 X -> mark# X, mark# U91(X1, X2, X3) -> active# U91(mark X1, X2, X3))
    (mark# U81 X -> mark# X, mark# U91(X1, X2, X3) -> U91#(mark X1, X2, X3))
    (mark# U81 X -> mark# X, mark# U93(X1, X2, X3) -> mark# X1)
    (mark# U81 X -> mark# X, mark# U93(X1, X2, X3) -> active# U93(mark X1, X2, X3))
    (mark# U81 X -> mark# X, mark# U93(X1, X2, X3) -> U93#(mark X1, X2, X3))
    (mark# U81 X -> mark# X, mark# U94(X1, X2, X3) -> mark# X1)
    (mark# U81 X -> mark# X, mark# U94(X1, X2, X3) -> active# U94(mark X1, X2, X3))
    (mark# U81 X -> mark# X, mark# U94(X1, X2, X3) -> U94#(mark X1, X2, X3))
    (mark# U81 X -> mark# X, mark# U95(X1, X2) -> mark# X1)
    (mark# U81 X -> mark# X, mark# U95(X1, X2) -> active# U95(mark X1, X2))
    (mark# U81 X -> mark# X, mark# U95(X1, X2) -> U95#(mark X1, X2))
    (mark# U81 X -> mark# X, mark# U96 X -> mark# X)
    (mark# U81 X -> mark# X, mark# U96 X -> active# U96 mark X)
    (mark# U81 X -> mark# X, mark# U96 X -> U96# mark X)
    (mark# U62 X -> mark# X, mark# cons(X1, X2) -> mark# X1)
    (mark# U62 X -> mark# X, mark# cons(X1, X2) -> cons#(mark X1, X2))
    (mark# U62 X -> mark# X, mark# cons(X1, X2) -> active# cons(mark X1, X2))
    (mark# U62 X -> mark# X, mark# 0() -> active# 0())
    (mark# U62 X -> mark# X, mark# zeros() -> active# zeros())
    (mark# U62 X -> mark# X, mark# U102(X1, X2, X3) -> mark# X1)
    (mark# U62 X -> mark# X, mark# U102(X1, X2, X3) -> active# U102(mark X1, X2, X3))
    (mark# U62 X -> mark# X, mark# U102(X1, X2, X3) -> U102#(mark X1, X2, X3))
    (mark# U62 X -> mark# X, mark# isNatKind X -> active# isNatKind X)
    (mark# U62 X -> mark# X, mark# U101(X1, X2, X3) -> mark# X1)
    (mark# U62 X -> mark# X, mark# U101(X1, X2, X3) -> active# U101(mark X1, X2, X3))
    (mark# U62 X -> mark# X, mark# U101(X1, X2, X3) -> U101#(mark X1, X2, X3))
    (mark# U62 X -> mark# X, mark# tt() -> active# tt())
    (mark# U62 X -> mark# X, mark# U103(X1, X2, X3) -> mark# X1)
    (mark# U62 X -> mark# X, mark# U103(X1, X2, X3) -> active# U103(mark X1, X2, X3))
    (mark# U62 X -> mark# X, mark# U103(X1, X2, X3) -> U103#(mark X1, X2, X3))
    (mark# U62 X -> mark# X, mark# isNatIListKind X -> active# isNatIListKind X)
    (mark# U62 X -> mark# X, mark# U104(X1, X2, X3) -> mark# X1)
    (mark# U62 X -> mark# X, mark# U104(X1, X2, X3) -> active# U104(mark X1, X2, X3))
    (mark# U62 X -> mark# X, mark# U104(X1, X2, X3) -> U104#(mark X1, X2, X3))
    (mark# U62 X -> mark# X, mark# U105(X1, X2) -> mark# X1)
    (mark# U62 X -> mark# X, mark# U105(X1, X2) -> active# U105(mark X1, X2))
    (mark# U62 X -> mark# X, mark# U105(X1, X2) -> U105#(mark X1, X2))
    (mark# U62 X -> mark# X, mark# isNat X -> active# isNat X)
    (mark# U62 X -> mark# X, mark# U106 X -> mark# X)
    (mark# U62 X -> mark# X, mark# U106 X -> active# U106 mark X)
    (mark# U62 X -> mark# X, mark# U106 X -> U106# mark X)
    (mark# U62 X -> mark# X, mark# isNatIList X -> active# isNatIList X)
    (mark# U62 X -> mark# X, mark# U12(X1, X2) -> mark# X1)
    (mark# U62 X -> mark# X, mark# U12(X1, X2) -> active# U12(mark X1, X2))
    (mark# U62 X -> mark# X, mark# U12(X1, X2) -> U12#(mark X1, X2))
    (mark# U62 X -> mark# X, mark# U11(X1, X2) -> mark# X1)
    (mark# U62 X -> mark# X, mark# U11(X1, X2) -> active# U11(mark X1, X2))
    (mark# U62 X -> mark# X, mark# U11(X1, X2) -> U11#(mark X1, X2))
    (mark# U62 X -> mark# X, mark# U112(X1, X2, X3) -> mark# X1)
    (mark# U62 X -> mark# X, mark# U112(X1, X2, X3) -> active# U112(mark X1, X2, X3))
    (mark# U62 X -> mark# X, mark# U112(X1, X2, X3) -> U112#(mark X1, X2, X3))
    (mark# U62 X -> mark# X, mark# U111(X1, X2, X3) -> mark# X1)
    (mark# U62 X -> mark# X, mark# U111(X1, X2, X3) -> active# U111(mark X1, X2, X3))
    (mark# U62 X -> mark# X, mark# U111(X1, X2, X3) -> U111#(mark X1, X2, X3))
    (mark# U62 X -> mark# X, mark# U113(X1, X2, X3) -> mark# X1)
    (mark# U62 X -> mark# X, mark# U113(X1, X2, X3) -> active# U113(mark X1, X2, X3))
    (mark# U62 X -> mark# X, mark# U113(X1, X2, X3) -> U113#(mark X1, X2, X3))
    (mark# U62 X -> mark# X, mark# U114(X1, X2) -> mark# X1)
    (mark# U62 X -> mark# X, mark# U114(X1, X2) -> active# U114(mark X1, X2))
    (mark# U62 X -> mark# X, mark# U114(X1, X2) -> U114#(mark X1, X2))
    (mark# U62 X -> mark# X, mark# s X -> mark# X)
    (mark# U62 X -> mark# X, mark# s X -> active# s mark X)
    (mark# U62 X -> mark# X, mark# s X -> s# mark X)
    (mark# U62 X -> mark# X, mark# length X -> mark# X)
    (mark# U62 X -> mark# X, mark# length X -> active# length mark X)
    (mark# U62 X -> mark# X, mark# length X -> length# mark X)
    (mark# U62 X -> mark# X, mark# U13 X -> mark# X)
    (mark# U62 X -> mark# X, mark# U13 X -> active# U13 mark X)
    (mark# U62 X -> mark# X, mark# U13 X -> U13# mark X)
    (mark# U62 X -> mark# X, mark# isNatList X -> active# isNatList X)
    (mark# U62 X -> mark# X, mark# U122 X -> mark# X)
    (mark# U62 X -> mark# X, mark# U122 X -> active# U122 mark X)
    (mark# U62 X -> mark# X, mark# U122 X -> U122# mark X)
    (mark# U62 X -> mark# X, mark# U121(X1, X2) -> mark# X1)
    (mark# U62 X -> mark# X, mark# U121(X1, X2) -> active# U121(mark X1, X2))
    (mark# U62 X -> mark# X, mark# U121(X1, X2) -> U121#(mark X1, X2))
    (mark# U62 X -> mark# X, mark# nil() -> active# nil())
    (mark# U62 X -> mark# X, mark# U132(X1, X2, X3, X4) -> mark# X1)
    (mark# U62 X -> mark# X, mark# U132(X1, X2, X3, X4) -> active# U132(mark X1, X2, X3, X4))
    (mark# U62 X -> mark# X, mark# U132(X1, X2, X3, X4) -> U132#(mark X1, X2, X3, X4))
    (mark# U62 X -> mark# X, mark# U131(X1, X2, X3, X4) -> mark# X1)
    (mark# U62 X -> mark# X, mark# U131(X1, X2, X3, X4) -> active# U131(mark X1, X2, X3, X4))
    (mark# U62 X -> mark# X, mark# U131(X1, X2, X3, X4) -> U131#(mark X1, X2, X3, X4))
    (mark# U62 X -> mark# X, mark# U133(X1, X2, X3, X4) -> mark# X1)
    (mark# U62 X -> mark# X, mark# U133(X1, X2, X3, X4) -> active# U133(mark X1, X2, X3, X4))
    (mark# U62 X -> mark# X, mark# U133(X1, X2, X3, X4) -> U133#(mark X1, X2, X3, X4))
    (mark# U62 X -> mark# X, mark# U134(X1, X2, X3, X4) -> mark# X1)
    (mark# U62 X -> mark# X, mark# U134(X1, X2, X3, X4) -> active# U134(mark X1, X2, X3, X4))
    (mark# U62 X -> mark# X, mark# U134(X1, X2, X3, X4) -> U134#(mark X1, X2, X3, X4))
    (mark# U62 X -> mark# X, mark# U135(X1, X2, X3, X4) -> mark# X1)
    (mark# U62 X -> mark# X, mark# U135(X1, X2, X3, X4) -> active# U135(mark X1, X2, X3, X4))
    (mark# U62 X -> mark# X, mark# U135(X1, X2, X3, X4) -> U135#(mark X1, X2, X3, X4))
    (mark# U62 X -> mark# X, mark# U136(X1, X2, X3, X4) -> mark# X1)
    (mark# U62 X -> mark# X, mark# U136(X1, X2, X3, X4) -> active# U136(mark X1, X2, X3, X4))
    (mark# U62 X -> mark# X, mark# U136(X1, X2, X3, X4) -> U136#(mark X1, X2, X3, X4))
    (mark# U62 X -> mark# X, mark# take(X1, X2) -> mark# X1)
    (mark# U62 X -> mark# X, mark# take(X1, X2) -> mark# X2)
    (mark# U62 X -> mark# X, mark# take(X1, X2) -> active# take(mark X1, mark X2))
    (mark# U62 X -> mark# X, mark# take(X1, X2) -> take#(mark X1, mark X2))
    (mark# U62 X -> mark# X, mark# U22(X1, X2) -> mark# X1)
    (mark# U62 X -> mark# X, mark# U22(X1, X2) -> active# U22(mark X1, X2))
    (mark# U62 X -> mark# X, mark# U22(X1, X2) -> U22#(mark X1, X2))
    (mark# U62 X -> mark# X, mark# U21(X1, X2) -> mark# X1)
    (mark# U62 X -> mark# X, mark# U21(X1, X2) -> active# U21(mark X1, X2))
    (mark# U62 X -> mark# X, mark# U21(X1, X2) -> U21#(mark X1, X2))
    (mark# U62 X -> mark# X, mark# U23 X -> mark# X)
    (mark# U62 X -> mark# X, mark# U23 X -> active# U23 mark X)
    (mark# U62 X -> mark# X, mark# U23 X -> U23# mark X)
    (mark# U62 X -> mark# X, mark# U32(X1, X2) -> mark# X1)
    (mark# U62 X -> mark# X, mark# U32(X1, X2) -> active# U32(mark X1, X2))
    (mark# U62 X -> mark# X, mark# U32(X1, X2) -> U32#(mark X1, X2))
    (mark# U62 X -> mark# X, mark# U31(X1, X2) -> mark# X1)
    (mark# U62 X -> mark# X, mark# U31(X1, X2) -> active# U31(mark X1, X2))
    (mark# U62 X -> mark# X, mark# U31(X1, X2) -> U31#(mark X1, X2))
    (mark# U62 X -> mark# X, mark# U33 X -> mark# X)
    (mark# U62 X -> mark# X, mark# U33 X -> active# U33 mark X)
    (mark# U62 X -> mark# X, mark# U33 X -> U33# mark X)
    (mark# U62 X -> mark# X, mark# U42(X1, X2, X3) -> mark# X1)
    (mark# U62 X -> mark# X, mark# U42(X1, X2, X3) -> active# U42(mark X1, X2, X3))
    (mark# U62 X -> mark# X, mark# U42(X1, X2, X3) -> U42#(mark X1, X2, X3))
    (mark# U62 X -> mark# X, mark# U41(X1, X2, X3) -> mark# X1)
    (mark# U62 X -> mark# X, mark# U41(X1, X2, X3) -> active# U41(mark X1, X2, X3))
    (mark# U62 X -> mark# X, mark# U41(X1, X2, X3) -> U41#(mark X1, X2, X3))
    (mark# U62 X -> mark# X, mark# U43(X1, X2, X3) -> mark# X1)
    (mark# U62 X -> mark# X, mark# U43(X1, X2, X3) -> active# U43(mark X1, X2, X3))
    (mark# U62 X -> mark# X, mark# U43(X1, X2, X3) -> U43#(mark X1, X2, X3))
    (mark# U62 X -> mark# X, mark# U44(X1, X2, X3) -> mark# X1)
    (mark# U62 X -> mark# X, mark# U44(X1, X2, X3) -> active# U44(mark X1, X2, X3))
    (mark# U62 X -> mark# X, mark# U44(X1, X2, X3) -> U44#(mark X1, X2, X3))
    (mark# U62 X -> mark# X, mark# U45(X1, X2) -> mark# X1)
    (mark# U62 X -> mark# X, mark# U45(X1, X2) -> active# U45(mark X1, X2))
    (mark# U62 X -> mark# X, mark# U45(X1, X2) -> U45#(mark X1, X2))
    (mark# U62 X -> mark# X, mark# U46 X -> mark# X)
    (mark# U62 X -> mark# X, mark# U46 X -> active# U46 mark X)
    (mark# U62 X -> mark# X, mark# U46 X -> U46# mark X)
    (mark# U62 X -> mark# X, mark# U52 X -> mark# X)
    (mark# U62 X -> mark# X, mark# U52 X -> active# U52 mark X)
    (mark# U62 X -> mark# X, mark# U52 X -> U52# mark X)
    (mark# U62 X -> mark# X, mark# U51(X1, X2) -> mark# X1)
    (mark# U62 X -> mark# X, mark# U51(X1, X2) -> active# U51(mark X1, X2))
    (mark# U62 X -> mark# X, mark# U51(X1, X2) -> U51#(mark X1, X2))
    (mark# U62 X -> mark# X, mark# U62 X -> mark# X)
    (mark# U62 X -> mark# X, mark# U62 X -> active# U62 mark X)
    (mark# U62 X -> mark# X, mark# U62 X -> U62# mark X)
    (mark# U62 X -> mark# X, mark# U61(X1, X2) -> mark# X1)
    (mark# U62 X -> mark# X, mark# U61(X1, X2) -> active# U61(mark X1, X2))
    (mark# U62 X -> mark# X, mark# U61(X1, X2) -> U61#(mark X1, X2))
    (mark# U62 X -> mark# X, mark# U71 X -> mark# X)
    (mark# U62 X -> mark# X, mark# U71 X -> active# U71 mark X)
    (mark# U62 X -> mark# X, mark# U71 X -> U71# mark X)
    (mark# U62 X -> mark# X, mark# U81 X -> mark# X)
    (mark# U62 X -> mark# X, mark# U81 X -> active# U81 mark X)
    (mark# U62 X -> mark# X, mark# U81 X -> U81# mark X)
    (mark# U62 X -> mark# X, mark# U92(X1, X2, X3) -> mark# X1)
    (mark# U62 X -> mark# X, mark# U92(X1, X2, X3) -> active# U92(mark X1, X2, X3))
    (mark# U62 X -> mark# X, mark# U92(X1, X2, X3) -> U92#(mark X1, X2, X3))
    (mark# U62 X -> mark# X, mark# U91(X1, X2, X3) -> mark# X1)
    (mark# U62 X -> mark# X, mark# U91(X1, X2, X3) -> active# U91(mark X1, X2, X3))
    (mark# U62 X -> mark# X, mark# U91(X1, X2, X3) -> U91#(mark X1, X2, X3))
    (mark# U62 X -> mark# X, mark# U93(X1, X2, X3) -> mark# X1)
    (mark# U62 X -> mark# X, mark# U93(X1, X2, X3) -> active# U93(mark X1, X2, X3))
    (mark# U62 X -> mark# X, mark# U93(X1, X2, X3) -> U93#(mark X1, X2, X3))
    (mark# U62 X -> mark# X, mark# U94(X1, X2, X3) -> mark# X1)
    (mark# U62 X -> mark# X, mark# U94(X1, X2, X3) -> active# U94(mark X1, X2, X3))
    (mark# U62 X -> mark# X, mark# U94(X1, X2, X3) -> U94#(mark X1, X2, X3))
    (mark# U62 X -> mark# X, mark# U95(X1, X2) -> mark# X1)
    (mark# U62 X -> mark# X, mark# U95(X1, X2) -> active# U95(mark X1, X2))
    (mark# U62 X -> mark# X, mark# U95(X1, X2) -> U95#(mark X1, X2))
    (mark# U62 X -> mark# X, mark# U96 X -> mark# X)
    (mark# U62 X -> mark# X, mark# U96 X -> active# U96 mark X)
    (mark# U62 X -> mark# X, mark# U96 X -> U96# mark X)
    (mark# U46 X -> mark# X, mark# cons(X1, X2) -> mark# X1)
    (mark# U46 X -> mark# X, mark# cons(X1, X2) -> cons#(mark X1, X2))
    (mark# U46 X -> mark# X, mark# cons(X1, X2) -> active# cons(mark X1, X2))
    (mark# U46 X -> mark# X, mark# 0() -> active# 0())
    (mark# U46 X -> mark# X, mark# zeros() -> active# zeros())
    (mark# U46 X -> mark# X, mark# U102(X1, X2, X3) -> mark# X1)
    (mark# U46 X -> mark# X, mark# U102(X1, X2, X3) -> active# U102(mark X1, X2, X3))
    (mark# U46 X -> mark# X, mark# U102(X1, X2, X3) -> U102#(mark X1, X2, X3))
    (mark# U46 X -> mark# X, mark# isNatKind X -> active# isNatKind X)
    (mark# U46 X -> mark# X, mark# U101(X1, X2, X3) -> mark# X1)
    (mark# U46 X -> mark# X, mark# U101(X1, X2, X3) -> active# U101(mark X1, X2, X3))
    (mark# U46 X -> mark# X, mark# U101(X1, X2, X3) -> U101#(mark X1, X2, X3))
    (mark# U46 X -> mark# X, mark# tt() -> active# tt())
    (mark# U46 X -> mark# X, mark# U103(X1, X2, X3) -> mark# X1)
    (mark# U46 X -> mark# X, mark# U103(X1, X2, X3) -> active# U103(mark X1, X2, X3))
    (mark# U46 X -> mark# X, mark# U103(X1, X2, X3) -> U103#(mark X1, X2, X3))
    (mark# U46 X -> mark# X, mark# isNatIListKind X -> active# isNatIListKind X)
    (mark# U46 X -> mark# X, mark# U104(X1, X2, X3) -> mark# X1)
    (mark# U46 X -> mark# X, mark# U104(X1, X2, X3) -> active# U104(mark X1, X2, X3))
    (mark# U46 X -> mark# X, mark# U104(X1, X2, X3) -> U104#(mark X1, X2, X3))
    (mark# U46 X -> mark# X, mark# U105(X1, X2) -> mark# X1)
    (mark# U46 X -> mark# X, mark# U105(X1, X2) -> active# U105(mark X1, X2))
    (mark# U46 X -> mark# X, mark# U105(X1, X2) -> U105#(mark X1, X2))
    (mark# U46 X -> mark# X, mark# isNat X -> active# isNat X)
    (mark# U46 X -> mark# X, mark# U106 X -> mark# X)
    (mark# U46 X -> mark# X, mark# U106 X -> active# U106 mark X)
    (mark# U46 X -> mark# X, mark# U106 X -> U106# mark X)
    (mark# U46 X -> mark# X, mark# isNatIList X -> active# isNatIList X)
    (mark# U46 X -> mark# X, mark# U12(X1, X2) -> mark# X1)
    (mark# U46 X -> mark# X, mark# U12(X1, X2) -> active# U12(mark X1, X2))
    (mark# U46 X -> mark# X, mark# U12(X1, X2) -> U12#(mark X1, X2))
    (mark# U46 X -> mark# X, mark# U11(X1, X2) -> mark# X1)
    (mark# U46 X -> mark# X, mark# U11(X1, X2) -> active# U11(mark X1, X2))
    (mark# U46 X -> mark# X, mark# U11(X1, X2) -> U11#(mark X1, X2))
    (mark# U46 X -> mark# X, mark# U112(X1, X2, X3) -> mark# X1)
    (mark# U46 X -> mark# X, mark# U112(X1, X2, X3) -> active# U112(mark X1, X2, X3))
    (mark# U46 X -> mark# X, mark# U112(X1, X2, X3) -> U112#(mark X1, X2, X3))
    (mark# U46 X -> mark# X, mark# U111(X1, X2, X3) -> mark# X1)
    (mark# U46 X -> mark# X, mark# U111(X1, X2, X3) -> active# U111(mark X1, X2, X3))
    (mark# U46 X -> mark# X, mark# U111(X1, X2, X3) -> U111#(mark X1, X2, X3))
    (mark# U46 X -> mark# X, mark# U113(X1, X2, X3) -> mark# X1)
    (mark# U46 X -> mark# X, mark# U113(X1, X2, X3) -> active# U113(mark X1, X2, X3))
    (mark# U46 X -> mark# X, mark# U113(X1, X2, X3) -> U113#(mark X1, X2, X3))
    (mark# U46 X -> mark# X, mark# U114(X1, X2) -> mark# X1)
    (mark# U46 X -> mark# X, mark# U114(X1, X2) -> active# U114(mark X1, X2))
    (mark# U46 X -> mark# X, mark# U114(X1, X2) -> U114#(mark X1, X2))
    (mark# U46 X -> mark# X, mark# s X -> mark# X)
    (mark# U46 X -> mark# X, mark# s X -> active# s mark X)
    (mark# U46 X -> mark# X, mark# s X -> s# mark X)
    (mark# U46 X -> mark# X, mark# length X -> mark# X)
    (mark# U46 X -> mark# X, mark# length X -> active# length mark X)
    (mark# U46 X -> mark# X, mark# length X -> length# mark X)
    (mark# U46 X -> mark# X, mark# U13 X -> mark# X)
    (mark# U46 X -> mark# X, mark# U13 X -> active# U13 mark X)
    (mark# U46 X -> mark# X, mark# U13 X -> U13# mark X)
    (mark# U46 X -> mark# X, mark# isNatList X -> active# isNatList X)
    (mark# U46 X -> mark# X, mark# U122 X -> mark# X)
    (mark# U46 X -> mark# X, mark# U122 X -> active# U122 mark X)
    (mark# U46 X -> mark# X, mark# U122 X -> U122# mark X)
    (mark# U46 X -> mark# X, mark# U121(X1, X2) -> mark# X1)
    (mark# U46 X -> mark# X, mark# U121(X1, X2) -> active# U121(mark X1, X2))
    (mark# U46 X -> mark# X, mark# U121(X1, X2) -> U121#(mark X1, X2))
    (mark# U46 X -> mark# X, mark# nil() -> active# nil())
    (mark# U46 X -> mark# X, mark# U132(X1, X2, X3, X4) -> mark# X1)
    (mark# U46 X -> mark# X, mark# U132(X1, X2, X3, X4) -> active# U132(mark X1, X2, X3, X4))
    (mark# U46 X -> mark# X, mark# U132(X1, X2, X3, X4) -> U132#(mark X1, X2, X3, X4))
    (mark# U46 X -> mark# X, mark# U131(X1, X2, X3, X4) -> mark# X1)
    (mark# U46 X -> mark# X, mark# U131(X1, X2, X3, X4) -> active# U131(mark X1, X2, X3, X4))
    (mark# U46 X -> mark# X, mark# U131(X1, X2, X3, X4) -> U131#(mark X1, X2, X3, X4))
    (mark# U46 X -> mark# X, mark# U133(X1, X2, X3, X4) -> mark# X1)
    (mark# U46 X -> mark# X, mark# U133(X1, X2, X3, X4) -> active# U133(mark X1, X2, X3, X4))
    (mark# U46 X -> mark# X, mark# U133(X1, X2, X3, X4) -> U133#(mark X1, X2, X3, X4))
    (mark# U46 X -> mark# X, mark# U134(X1, X2, X3, X4) -> mark# X1)
    (mark# U46 X -> mark# X, mark# U134(X1, X2, X3, X4) -> active# U134(mark X1, X2, X3, X4))
    (mark# U46 X -> mark# X, mark# U134(X1, X2, X3, X4) -> U134#(mark X1, X2, X3, X4))
    (mark# U46 X -> mark# X, mark# U135(X1, X2, X3, X4) -> mark# X1)
    (mark# U46 X -> mark# X, mark# U135(X1, X2, X3, X4) -> active# U135(mark X1, X2, X3, X4))
    (mark# U46 X -> mark# X, mark# U135(X1, X2, X3, X4) -> U135#(mark X1, X2, X3, X4))
    (mark# U46 X -> mark# X, mark# U136(X1, X2, X3, X4) -> mark# X1)
    (mark# U46 X -> mark# X, mark# U136(X1, X2, X3, X4) -> active# U136(mark X1, X2, X3, X4))
    (mark# U46 X -> mark# X, mark# U136(X1, X2, X3, X4) -> U136#(mark X1, X2, X3, X4))
    (mark# U46 X -> mark# X, mark# take(X1, X2) -> mark# X1)
    (mark# U46 X -> mark# X, mark# take(X1, X2) -> mark# X2)
    (mark# U46 X -> mark# X, mark# take(X1, X2) -> active# take(mark X1, mark X2))
    (mark# U46 X -> mark# X, mark# take(X1, X2) -> take#(mark X1, mark X2))
    (mark# U46 X -> mark# X, mark# U22(X1, X2) -> mark# X1)
    (mark# U46 X -> mark# X, mark# U22(X1, X2) -> active# U22(mark X1, X2))
    (mark# U46 X -> mark# X, mark# U22(X1, X2) -> U22#(mark X1, X2))
    (mark# U46 X -> mark# X, mark# U21(X1, X2) -> mark# X1)
    (mark# U46 X -> mark# X, mark# U21(X1, X2) -> active# U21(mark X1, X2))
    (mark# U46 X -> mark# X, mark# U21(X1, X2) -> U21#(mark X1, X2))
    (mark# U46 X -> mark# X, mark# U23 X -> mark# X)
    (mark# U46 X -> mark# X, mark# U23 X -> active# U23 mark X)
    (mark# U46 X -> mark# X, mark# U23 X -> U23# mark X)
    (mark# U46 X -> mark# X, mark# U32(X1, X2) -> mark# X1)
    (mark# U46 X -> mark# X, mark# U32(X1, X2) -> active# U32(mark X1, X2))
    (mark# U46 X -> mark# X, mark# U32(X1, X2) -> U32#(mark X1, X2))
    (mark# U46 X -> mark# X, mark# U31(X1, X2) -> mark# X1)
    (mark# U46 X -> mark# X, mark# U31(X1, X2) -> active# U31(mark X1, X2))
    (mark# U46 X -> mark# X, mark# U31(X1, X2) -> U31#(mark X1, X2))
    (mark# U46 X -> mark# X, mark# U33 X -> mark# X)
    (mark# U46 X -> mark# X, mark# U33 X -> active# U33 mark X)
    (mark# U46 X -> mark# X, mark# U33 X -> U33# mark X)
    (mark# U46 X -> mark# X, mark# U42(X1, X2, X3) -> mark# X1)
    (mark# U46 X -> mark# X, mark# U42(X1, X2, X3) -> active# U42(mark X1, X2, X3))
    (mark# U46 X -> mark# X, mark# U42(X1, X2, X3) -> U42#(mark X1, X2, X3))
    (mark# U46 X -> mark# X, mark# U41(X1, X2, X3) -> mark# X1)
    (mark# U46 X -> mark# X, mark# U41(X1, X2, X3) -> active# U41(mark X1, X2, X3))
    (mark# U46 X -> mark# X, mark# U41(X1, X2, X3) -> U41#(mark X1, X2, X3))
    (mark# U46 X -> mark# X, mark# U43(X1, X2, X3) -> mark# X1)
    (mark# U46 X -> mark# X, mark# U43(X1, X2, X3) -> active# U43(mark X1, X2, X3))
    (mark# U46 X -> mark# X, mark# U43(X1, X2, X3) -> U43#(mark X1, X2, X3))
    (mark# U46 X -> mark# X, mark# U44(X1, X2, X3) -> mark# X1)
    (mark# U46 X -> mark# X, mark# U44(X1, X2, X3) -> active# U44(mark X1, X2, X3))
    (mark# U46 X -> mark# X, mark# U44(X1, X2, X3) -> U44#(mark X1, X2, X3))
    (mark# U46 X -> mark# X, mark# U45(X1, X2) -> mark# X1)
    (mark# U46 X -> mark# X, mark# U45(X1, X2) -> active# U45(mark X1, X2))
    (mark# U46 X -> mark# X, mark# U45(X1, X2) -> U45#(mark X1, X2))
    (mark# U46 X -> mark# X, mark# U46 X -> mark# X)
    (mark# U46 X -> mark# X, mark# U46 X -> active# U46 mark X)
    (mark# U46 X -> mark# X, mark# U46 X -> U46# mark X)
    (mark# U46 X -> mark# X, mark# U52 X -> mark# X)
    (mark# U46 X -> mark# X, mark# U52 X -> active# U52 mark X)
    (mark# U46 X -> mark# X, mark# U52 X -> U52# mark X)
    (mark# U46 X -> mark# X, mark# U51(X1, X2) -> mark# X1)
    (mark# U46 X -> mark# X, mark# U51(X1, X2) -> active# U51(mark X1, X2))
    (mark# U46 X -> mark# X, mark# U51(X1, X2) -> U51#(mark X1, X2))
    (mark# U46 X -> mark# X, mark# U62 X -> mark# X)
    (mark# U46 X -> mark# X, mark# U62 X -> active# U62 mark X)
    (mark# U46 X -> mark# X, mark# U62 X -> U62# mark X)
    (mark# U46 X -> mark# X, mark# U61(X1, X2) -> mark# X1)
    (mark# U46 X -> mark# X, mark# U61(X1, X2) -> active# U61(mark X1, X2))
    (mark# U46 X -> mark# X, mark# U61(X1, X2) -> U61#(mark X1, X2))
    (mark# U46 X -> mark# X, mark# U71 X -> mark# X)
    (mark# U46 X -> mark# X, mark# U71 X -> active# U71 mark X)
    (mark# U46 X -> mark# X, mark# U71 X -> U71# mark X)
    (mark# U46 X -> mark# X, mark# U81 X -> mark# X)
    (mark# U46 X -> mark# X, mark# U81 X -> active# U81 mark X)
    (mark# U46 X -> mark# X, mark# U81 X -> U81# mark X)
    (mark# U46 X -> mark# X, mark# U92(X1, X2, X3) -> mark# X1)
    (mark# U46 X -> mark# X, mark# U92(X1, X2, X3) -> active# U92(mark X1, X2, X3))
    (mark# U46 X -> mark# X, mark# U92(X1, X2, X3) -> U92#(mark X1, X2, X3))
    (mark# U46 X -> mark# X, mark# U91(X1, X2, X3) -> mark# X1)
    (mark# U46 X -> mark# X, mark# U91(X1, X2, X3) -> active# U91(mark X1, X2, X3))
    (mark# U46 X -> mark# X, mark# U91(X1, X2, X3) -> U91#(mark X1, X2, X3))
    (mark# U46 X -> mark# X, mark# U93(X1, X2, X3) -> mark# X1)
    (mark# U46 X -> mark# X, mark# U93(X1, X2, X3) -> active# U93(mark X1, X2, X3))
    (mark# U46 X -> mark# X, mark# U93(X1, X2, X3) -> U93#(mark X1, X2, X3))
    (mark# U46 X -> mark# X, mark# U94(X1, X2, X3) -> mark# X1)
    (mark# U46 X -> mark# X, mark# U94(X1, X2, X3) -> active# U94(mark X1, X2, X3))
    (mark# U46 X -> mark# X, mark# U94(X1, X2, X3) -> U94#(mark X1, X2, X3))
    (mark# U46 X -> mark# X, mark# U95(X1, X2) -> mark# X1)
    (mark# U46 X -> mark# X, mark# U95(X1, X2) -> active# U95(mark X1, X2))
    (mark# U46 X -> mark# X, mark# U95(X1, X2) -> U95#(mark X1, X2))
    (mark# U46 X -> mark# X, mark# U96 X -> mark# X)
    (mark# U46 X -> mark# X, mark# U96 X -> active# U96 mark X)
    (mark# U46 X -> mark# X, mark# U96 X -> U96# mark X)
    (mark# U23 X -> mark# X, mark# cons(X1, X2) -> mark# X1)
    (mark# U23 X -> mark# X, mark# cons(X1, X2) -> cons#(mark X1, X2))
    (mark# U23 X -> mark# X, mark# cons(X1, X2) -> active# cons(mark X1, X2))
    (mark# U23 X -> mark# X, mark# 0() -> active# 0())
    (mark# U23 X -> mark# X, mark# zeros() -> active# zeros())
    (mark# U23 X -> mark# X, mark# U102(X1, X2, X3) -> mark# X1)
    (mark# U23 X -> mark# X, mark# U102(X1, X2, X3) -> active# U102(mark X1, X2, X3))
    (mark# U23 X -> mark# X, mark# U102(X1, X2, X3) -> U102#(mark X1, X2, X3))
    (mark# U23 X -> mark# X, mark# isNatKind X -> active# isNatKind X)
    (mark# U23 X -> mark# X, mark# U101(X1, X2, X3) -> mark# X1)
    (mark# U23 X -> mark# X, mark# U101(X1, X2, X3) -> active# U101(mark X1, X2, X3))
    (mark# U23 X -> mark# X, mark# U101(X1, X2, X3) -> U101#(mark X1, X2, X3))
    (mark# U23 X -> mark# X, mark# tt() -> active# tt())
    (mark# U23 X -> mark# X, mark# U103(X1, X2, X3) -> mark# X1)
    (mark# U23 X -> mark# X, mark# U103(X1, X2, X3) -> active# U103(mark X1, X2, X3))
    (mark# U23 X -> mark# X, mark# U103(X1, X2, X3) -> U103#(mark X1, X2, X3))
    (mark# U23 X -> mark# X, mark# isNatIListKind X -> active# isNatIListKind X)
    (mark# U23 X -> mark# X, mark# U104(X1, X2, X3) -> mark# X1)
    (mark# U23 X -> mark# X, mark# U104(X1, X2, X3) -> active# U104(mark X1, X2, X3))
    (mark# U23 X -> mark# X, mark# U104(X1, X2, X3) -> U104#(mark X1, X2, X3))
    (mark# U23 X -> mark# X, mark# U105(X1, X2) -> mark# X1)
    (mark# U23 X -> mark# X, mark# U105(X1, X2) -> active# U105(mark X1, X2))
    (mark# U23 X -> mark# X, mark# U105(X1, X2) -> U105#(mark X1, X2))
    (mark# U23 X -> mark# X, mark# isNat X -> active# isNat X)
    (mark# U23 X -> mark# X, mark# U106 X -> mark# X)
    (mark# U23 X -> mark# X, mark# U106 X -> active# U106 mark X)
    (mark# U23 X -> mark# X, mark# U106 X -> U106# mark X)
    (mark# U23 X -> mark# X, mark# isNatIList X -> active# isNatIList X)
    (mark# U23 X -> mark# X, mark# U12(X1, X2) -> mark# X1)
    (mark# U23 X -> mark# X, mark# U12(X1, X2) -> active# U12(mark X1, X2))
    (mark# U23 X -> mark# X, mark# U12(X1, X2) -> U12#(mark X1, X2))
    (mark# U23 X -> mark# X, mark# U11(X1, X2) -> mark# X1)
    (mark# U23 X -> mark# X, mark# U11(X1, X2) -> active# U11(mark X1, X2))
    (mark# U23 X -> mark# X, mark# U11(X1, X2) -> U11#(mark X1, X2))
    (mark# U23 X -> mark# X, mark# U112(X1, X2, X3) -> mark# X1)
    (mark# U23 X -> mark# X, mark# U112(X1, X2, X3) -> active# U112(mark X1, X2, X3))
    (mark# U23 X -> mark# X, mark# U112(X1, X2, X3) -> U112#(mark X1, X2, X3))
    (mark# U23 X -> mark# X, mark# U111(X1, X2, X3) -> mark# X1)
    (mark# U23 X -> mark# X, mark# U111(X1, X2, X3) -> active# U111(mark X1, X2, X3))
    (mark# U23 X -> mark# X, mark# U111(X1, X2, X3) -> U111#(mark X1, X2, X3))
    (mark# U23 X -> mark# X, mark# U113(X1, X2, X3) -> mark# X1)
    (mark# U23 X -> mark# X, mark# U113(X1, X2, X3) -> active# U113(mark X1, X2, X3))
    (mark# U23 X -> mark# X, mark# U113(X1, X2, X3) -> U113#(mark X1, X2, X3))
    (mark# U23 X -> mark# X, mark# U114(X1, X2) -> mark# X1)
    (mark# U23 X -> mark# X, mark# U114(X1, X2) -> active# U114(mark X1, X2))
    (mark# U23 X -> mark# X, mark# U114(X1, X2) -> U114#(mark X1, X2))
    (mark# U23 X -> mark# X, mark# s X -> mark# X)
    (mark# U23 X -> mark# X, mark# s X -> active# s mark X)
    (mark# U23 X -> mark# X, mark# s X -> s# mark X)
    (mark# U23 X -> mark# X, mark# length X -> mark# X)
    (mark# U23 X -> mark# X, mark# length X -> active# length mark X)
    (mark# U23 X -> mark# X, mark# length X -> length# mark X)
    (mark# U23 X -> mark# X, mark# U13 X -> mark# X)
    (mark# U23 X -> mark# X, mark# U13 X -> active# U13 mark X)
    (mark# U23 X -> mark# X, mark# U13 X -> U13# mark X)
    (mark# U23 X -> mark# X, mark# isNatList X -> active# isNatList X)
    (mark# U23 X -> mark# X, mark# U122 X -> mark# X)
    (mark# U23 X -> mark# X, mark# U122 X -> active# U122 mark X)
    (mark# U23 X -> mark# X, mark# U122 X -> U122# mark X)
    (mark# U23 X -> mark# X, mark# U121(X1, X2) -> mark# X1)
    (mark# U23 X -> mark# X, mark# U121(X1, X2) -> active# U121(mark X1, X2))
    (mark# U23 X -> mark# X, mark# U121(X1, X2) -> U121#(mark X1, X2))
    (mark# U23 X -> mark# X, mark# nil() -> active# nil())
    (mark# U23 X -> mark# X, mark# U132(X1, X2, X3, X4) -> mark# X1)
    (mark# U23 X -> mark# X, mark# U132(X1, X2, X3, X4) -> active# U132(mark X1, X2, X3, X4))
    (mark# U23 X -> mark# X, mark# U132(X1, X2, X3, X4) -> U132#(mark X1, X2, X3, X4))
    (mark# U23 X -> mark# X, mark# U131(X1, X2, X3, X4) -> mark# X1)
    (mark# U23 X -> mark# X, mark# U131(X1, X2, X3, X4) -> active# U131(mark X1, X2, X3, X4))
    (mark# U23 X -> mark# X, mark# U131(X1, X2, X3, X4) -> U131#(mark X1, X2, X3, X4))
    (mark# U23 X -> mark# X, mark# U133(X1, X2, X3, X4) -> mark# X1)
    (mark# U23 X -> mark# X, mark# U133(X1, X2, X3, X4) -> active# U133(mark X1, X2, X3, X4))
    (mark# U23 X -> mark# X, mark# U133(X1, X2, X3, X4) -> U133#(mark X1, X2, X3, X4))
    (mark# U23 X -> mark# X, mark# U134(X1, X2, X3, X4) -> mark# X1)
    (mark# U23 X -> mark# X, mark# U134(X1, X2, X3, X4) -> active# U134(mark X1, X2, X3, X4))
    (mark# U23 X -> mark# X, mark# U134(X1, X2, X3, X4) -> U134#(mark X1, X2, X3, X4))
    (mark# U23 X -> mark# X, mark# U135(X1, X2, X3, X4) -> mark# X1)
    (mark# U23 X -> mark# X, mark# U135(X1, X2, X3, X4) -> active# U135(mark X1, X2, X3, X4))
    (mark# U23 X -> mark# X, mark# U135(X1, X2, X3, X4) -> U135#(mark X1, X2, X3, X4))
    (mark# U23 X -> mark# X, mark# U136(X1, X2, X3, X4) -> mark# X1)
    (mark# U23 X -> mark# X, mark# U136(X1, X2, X3, X4) -> active# U136(mark X1, X2, X3, X4))
    (mark# U23 X -> mark# X, mark# U136(X1, X2, X3, X4) -> U136#(mark X1, X2, X3, X4))
    (mark# U23 X -> mark# X, mark# take(X1, X2) -> mark# X1)
    (mark# U23 X -> mark# X, mark# take(X1, X2) -> mark# X2)
    (mark# U23 X -> mark# X, mark# take(X1, X2) -> active# take(mark X1, mark X2))
    (mark# U23 X -> mark# X, mark# take(X1, X2) -> take#(mark X1, mark X2))
    (mark# U23 X -> mark# X, mark# U22(X1, X2) -> mark# X1)
    (mark# U23 X -> mark# X, mark# U22(X1, X2) -> active# U22(mark X1, X2))
    (mark# U23 X -> mark# X, mark# U22(X1, X2) -> U22#(mark X1, X2))
    (mark# U23 X -> mark# X, mark# U21(X1, X2) -> mark# X1)
    (mark# U23 X -> mark# X, mark# U21(X1, X2) -> active# U21(mark X1, X2))
    (mark# U23 X -> mark# X, mark# U21(X1, X2) -> U21#(mark X1, X2))
    (mark# U23 X -> mark# X, mark# U23 X -> mark# X)
    (mark# U23 X -> mark# X, mark# U23 X -> active# U23 mark X)
    (mark# U23 X -> mark# X, mark# U23 X -> U23# mark X)
    (mark# U23 X -> mark# X, mark# U32(X1, X2) -> mark# X1)
    (mark# U23 X -> mark# X, mark# U32(X1, X2) -> active# U32(mark X1, X2))
    (mark# U23 X -> mark# X, mark# U32(X1, X2) -> U32#(mark X1, X2))
    (mark# U23 X -> mark# X, mark# U31(X1, X2) -> mark# X1)
    (mark# U23 X -> mark# X, mark# U31(X1, X2) -> active# U31(mark X1, X2))
    (mark# U23 X -> mark# X, mark# U31(X1, X2) -> U31#(mark X1, X2))
    (mark# U23 X -> mark# X, mark# U33 X -> mark# X)
    (mark# U23 X -> mark# X, mark# U33 X -> active# U33 mark X)
    (mark# U23 X -> mark# X, mark# U33 X -> U33# mark X)
    (mark# U23 X -> mark# X, mark# U42(X1, X2, X3) -> mark# X1)
    (mark# U23 X -> mark# X, mark# U42(X1, X2, X3) -> active# U42(mark X1, X2, X3))
    (mark# U23 X -> mark# X, mark# U42(X1, X2, X3) -> U42#(mark X1, X2, X3))
    (mark# U23 X -> mark# X, mark# U41(X1, X2, X3) -> mark# X1)
    (mark# U23 X -> mark# X, mark# U41(X1, X2, X3) -> active# U41(mark X1, X2, X3))
    (mark# U23 X -> mark# X, mark# U41(X1, X2, X3) -> U41#(mark X1, X2, X3))
    (mark# U23 X -> mark# X, mark# U43(X1, X2, X3) -> mark# X1)
    (mark# U23 X -> mark# X, mark# U43(X1, X2, X3) -> active# U43(mark X1, X2, X3))
    (mark# U23 X -> mark# X, mark# U43(X1, X2, X3) -> U43#(mark X1, X2, X3))
    (mark# U23 X -> mark# X, mark# U44(X1, X2, X3) -> mark# X1)
    (mark# U23 X -> mark# X, mark# U44(X1, X2, X3) -> active# U44(mark X1, X2, X3))
    (mark# U23 X -> mark# X, mark# U44(X1, X2, X3) -> U44#(mark X1, X2, X3))
    (mark# U23 X -> mark# X, mark# U45(X1, X2) -> mark# X1)
    (mark# U23 X -> mark# X, mark# U45(X1, X2) -> active# U45(mark X1, X2))
    (mark# U23 X -> mark# X, mark# U45(X1, X2) -> U45#(mark X1, X2))
    (mark# U23 X -> mark# X, mark# U46 X -> mark# X)
    (mark# U23 X -> mark# X, mark# U46 X -> active# U46 mark X)
    (mark# U23 X -> mark# X, mark# U46 X -> U46# mark X)
    (mark# U23 X -> mark# X, mark# U52 X -> mark# X)
    (mark# U23 X -> mark# X, mark# U52 X -> active# U52 mark X)
    (mark# U23 X -> mark# X, mark# U52 X -> U52# mark X)
    (mark# U23 X -> mark# X, mark# U51(X1, X2) -> mark# X1)
    (mark# U23 X -> mark# X, mark# U51(X1, X2) -> active# U51(mark X1, X2))
    (mark# U23 X -> mark# X, mark# U51(X1, X2) -> U51#(mark X1, X2))
    (mark# U23 X -> mark# X, mark# U62 X -> mark# X)
    (mark# U23 X -> mark# X, mark# U62 X -> active# U62 mark X)
    (mark# U23 X -> mark# X, mark# U62 X -> U62# mark X)
    (mark# U23 X -> mark# X, mark# U61(X1, X2) -> mark# X1)
    (mark# U23 X -> mark# X, mark# U61(X1, X2) -> active# U61(mark X1, X2))
    (mark# U23 X -> mark# X, mark# U61(X1, X2) -> U61#(mark X1, X2))
    (mark# U23 X -> mark# X, mark# U71 X -> mark# X)
    (mark# U23 X -> mark# X, mark# U71 X -> active# U71 mark X)
    (mark# U23 X -> mark# X, mark# U71 X -> U71# mark X)
    (mark# U23 X -> mark# X, mark# U81 X -> mark# X)
    (mark# U23 X -> mark# X, mark# U81 X -> active# U81 mark X)
    (mark# U23 X -> mark# X, mark# U81 X -> U81# mark X)
    (mark# U23 X -> mark# X, mark# U92(X1, X2, X3) -> mark# X1)
    (mark# U23 X -> mark# X, mark# U92(X1, X2, X3) -> active# U92(mark X1, X2, X3))
    (mark# U23 X -> mark# X, mark# U92(X1, X2, X3) -> U92#(mark X1, X2, X3))
    (mark# U23 X -> mark# X, mark# U91(X1, X2, X3) -> mark# X1)
    (mark# U23 X -> mark# X, mark# U91(X1, X2, X3) -> active# U91(mark X1, X2, X3))
    (mark# U23 X -> mark# X, mark# U91(X1, X2, X3) -> U91#(mark X1, X2, X3))
    (mark# U23 X -> mark# X, mark# U93(X1, X2, X3) -> mark# X1)
    (mark# U23 X -> mark# X, mark# U93(X1, X2, X3) -> active# U93(mark X1, X2, X3))
    (mark# U23 X -> mark# X, mark# U93(X1, X2, X3) -> U93#(mark X1, X2, X3))
    (mark# U23 X -> mark# X, mark# U94(X1, X2, X3) -> mark# X1)
    (mark# U23 X -> mark# X, mark# U94(X1, X2, X3) -> active# U94(mark X1, X2, X3))
    (mark# U23 X -> mark# X, mark# U94(X1, X2, X3) -> U94#(mark X1, X2, X3))
    (mark# U23 X -> mark# X, mark# U95(X1, X2) -> mark# X1)
    (mark# U23 X -> mark# X, mark# U95(X1, X2) -> active# U95(mark X1, X2))
    (mark# U23 X -> mark# X, mark# U95(X1, X2) -> U95#(mark X1, X2))
    (mark# U23 X -> mark# X, mark# U96 X -> mark# X)
    (mark# U23 X -> mark# X, mark# U96 X -> active# U96 mark X)
    (mark# U23 X -> mark# X, mark# U96 X -> U96# mark X)
    (mark# U13 X -> mark# X, mark# cons(X1, X2) -> mark# X1)
    (mark# U13 X -> mark# X, mark# cons(X1, X2) -> cons#(mark X1, X2))
    (mark# U13 X -> mark# X, mark# cons(X1, X2) -> active# cons(mark X1, X2))
    (mark# U13 X -> mark# X, mark# 0() -> active# 0())
    (mark# U13 X -> mark# X, mark# zeros() -> active# zeros())
    (mark# U13 X -> mark# X, mark# U102(X1, X2, X3) -> mark# X1)
    (mark# U13 X -> mark# X, mark# U102(X1, X2, X3) -> active# U102(mark X1, X2, X3))
    (mark# U13 X -> mark# X, mark# U102(X1, X2, X3) -> U102#(mark X1, X2, X3))
    (mark# U13 X -> mark# X, mark# isNatKind X -> active# isNatKind X)
    (mark# U13 X -> mark# X, mark# U101(X1, X2, X3) -> mark# X1)
    (mark# U13 X -> mark# X, mark# U101(X1, X2, X3) -> active# U101(mark X1, X2, X3))
    (mark# U13 X -> mark# X, mark# U101(X1, X2, X3) -> U101#(mark X1, X2, X3))
    (mark# U13 X -> mark# X, mark# tt() -> active# tt())
    (mark# U13 X -> mark# X, mark# U103(X1, X2, X3) -> mark# X1)
    (mark# U13 X -> mark# X, mark# U103(X1, X2, X3) -> active# U103(mark X1, X2, X3))
    (mark# U13 X -> mark# X, mark# U103(X1, X2, X3) -> U103#(mark X1, X2, X3))
    (mark# U13 X -> mark# X, mark# isNatIListKind X -> active# isNatIListKind X)
    (mark# U13 X -> mark# X, mark# U104(X1, X2, X3) -> mark# X1)
    (mark# U13 X -> mark# X, mark# U104(X1, X2, X3) -> active# U104(mark X1, X2, X3))
    (mark# U13 X -> mark# X, mark# U104(X1, X2, X3) -> U104#(mark X1, X2, X3))
    (mark# U13 X -> mark# X, mark# U105(X1, X2) -> mark# X1)
    (mark# U13 X -> mark# X, mark# U105(X1, X2) -> active# U105(mark X1, X2))
    (mark# U13 X -> mark# X, mark# U105(X1, X2) -> U105#(mark X1, X2))
    (mark# U13 X -> mark# X, mark# isNat X -> active# isNat X)
    (mark# U13 X -> mark# X, mark# U106 X -> mark# X)
    (mark# U13 X -> mark# X, mark# U106 X -> active# U106 mark X)
    (mark# U13 X -> mark# X, mark# U106 X -> U106# mark X)
    (mark# U13 X -> mark# X, mark# isNatIList X -> active# isNatIList X)
    (mark# U13 X -> mark# X, mark# U12(X1, X2) -> mark# X1)
    (mark# U13 X -> mark# X, mark# U12(X1, X2) -> active# U12(mark X1, X2))
    (mark# U13 X -> mark# X, mark# U12(X1, X2) -> U12#(mark X1, X2))
    (mark# U13 X -> mark# X, mark# U11(X1, X2) -> mark# X1)
    (mark# U13 X -> mark# X, mark# U11(X1, X2) -> active# U11(mark X1, X2))
    (mark# U13 X -> mark# X, mark# U11(X1, X2) -> U11#(mark X1, X2))
    (mark# U13 X -> mark# X, mark# U112(X1, X2, X3) -> mark# X1)
    (mark# U13 X -> mark# X, mark# U112(X1, X2, X3) -> active# U112(mark X1, X2, X3))
    (mark# U13 X -> mark# X, mark# U112(X1, X2, X3) -> U112#(mark X1, X2, X3))
    (mark# U13 X -> mark# X, mark# U111(X1, X2, X3) -> mark# X1)
    (mark# U13 X -> mark# X, mark# U111(X1, X2, X3) -> active# U111(mark X1, X2, X3))
    (mark# U13 X -> mark# X, mark# U111(X1, X2, X3) -> U111#(mark X1, X2, X3))
    (mark# U13 X -> mark# X, mark# U113(X1, X2, X3) -> mark# X1)
    (mark# U13 X -> mark# X, mark# U113(X1, X2, X3) -> active# U113(mark X1, X2, X3))
    (mark# U13 X -> mark# X, mark# U113(X1, X2, X3) -> U113#(mark X1, X2, X3))
    (mark# U13 X -> mark# X, mark# U114(X1, X2) -> mark# X1)
    (mark# U13 X -> mark# X, mark# U114(X1, X2) -> active# U114(mark X1, X2))
    (mark# U13 X -> mark# X, mark# U114(X1, X2) -> U114#(mark X1, X2))
    (mark# U13 X -> mark# X, mark# s X -> mark# X)
    (mark# U13 X -> mark# X, mark# s X -> active# s mark X)
    (mark# U13 X -> mark# X, mark# s X -> s# mark X)
    (mark# U13 X -> mark# X, mark# length X -> mark# X)
    (mark# U13 X -> mark# X, mark# length X -> active# length mark X)
    (mark# U13 X -> mark# X, mark# length X -> length# mark X)
    (mark# U13 X -> mark# X, mark# U13 X -> mark# X)
    (mark# U13 X -> mark# X, mark# U13 X -> active# U13 mark X)
    (mark# U13 X -> mark# X, mark# U13 X -> U13# mark X)
    (mark# U13 X -> mark# X, mark# isNatList X -> active# isNatList X)
    (mark# U13 X -> mark# X, mark# U122 X -> mark# X)
    (mark# U13 X -> mark# X, mark# U122 X -> active# U122 mark X)
    (mark# U13 X -> mark# X, mark# U122 X -> U122# mark X)
    (mark# U13 X -> mark# X, mark# U121(X1, X2) -> mark# X1)
    (mark# U13 X -> mark# X, mark# U121(X1, X2) -> active# U121(mark X1, X2))
    (mark# U13 X -> mark# X, mark# U121(X1, X2) -> U121#(mark X1, X2))
    (mark# U13 X -> mark# X, mark# nil() -> active# nil())
    (mark# U13 X -> mark# X, mark# U132(X1, X2, X3, X4) -> mark# X1)
    (mark# U13 X -> mark# X, mark# U132(X1, X2, X3, X4) -> active# U132(mark X1, X2, X3, X4))
    (mark# U13 X -> mark# X, mark# U132(X1, X2, X3, X4) -> U132#(mark X1, X2, X3, X4))
    (mark# U13 X -> mark# X, mark# U131(X1, X2, X3, X4) -> mark# X1)
    (mark# U13 X -> mark# X, mark# U131(X1, X2, X3, X4) -> active# U131(mark X1, X2, X3, X4))
    (mark# U13 X -> mark# X, mark# U131(X1, X2, X3, X4) -> U131#(mark X1, X2, X3, X4))
    (mark# U13 X -> mark# X, mark# U133(X1, X2, X3, X4) -> mark# X1)
    (mark# U13 X -> mark# X, mark# U133(X1, X2, X3, X4) -> active# U133(mark X1, X2, X3, X4))
    (mark# U13 X -> mark# X, mark# U133(X1, X2, X3, X4) -> U133#(mark X1, X2, X3, X4))
    (mark# U13 X -> mark# X, mark# U134(X1, X2, X3, X4) -> mark# X1)
    (mark# U13 X -> mark# X, mark# U134(X1, X2, X3, X4) -> active# U134(mark X1, X2, X3, X4))
    (mark# U13 X -> mark# X, mark# U134(X1, X2, X3, X4) -> U134#(mark X1, X2, X3, X4))
    (mark# U13 X -> mark# X, mark# U135(X1, X2, X3, X4) -> mark# X1)
    (mark# U13 X -> mark# X, mark# U135(X1, X2, X3, X4) -> active# U135(mark X1, X2, X3, X4))
    (mark# U13 X -> mark# X, mark# U135(X1, X2, X3, X4) -> U135#(mark X1, X2, X3, X4))
    (mark# U13 X -> mark# X, mark# U136(X1, X2, X3, X4) -> mark# X1)
    (mark# U13 X -> mark# X, mark# U136(X1, X2, X3, X4) -> active# U136(mark X1, X2, X3, X4))
    (mark# U13 X -> mark# X, mark# U136(X1, X2, X3, X4) -> U136#(mark X1, X2, X3, X4))
    (mark# U13 X -> mark# X, mark# take(X1, X2) -> mark# X1)
    (mark# U13 X -> mark# X, mark# take(X1, X2) -> mark# X2)
    (mark# U13 X -> mark# X, mark# take(X1, X2) -> active# take(mark X1, mark X2))
    (mark# U13 X -> mark# X, mark# take(X1, X2) -> take#(mark X1, mark X2))
    (mark# U13 X -> mark# X, mark# U22(X1, X2) -> mark# X1)
    (mark# U13 X -> mark# X, mark# U22(X1, X2) -> active# U22(mark X1, X2))
    (mark# U13 X -> mark# X, mark# U22(X1, X2) -> U22#(mark X1, X2))
    (mark# U13 X -> mark# X, mark# U21(X1, X2) -> mark# X1)
    (mark# U13 X -> mark# X, mark# U21(X1, X2) -> active# U21(mark X1, X2))
    (mark# U13 X -> mark# X, mark# U21(X1, X2) -> U21#(mark X1, X2))
    (mark# U13 X -> mark# X, mark# U23 X -> mark# X)
    (mark# U13 X -> mark# X, mark# U23 X -> active# U23 mark X)
    (mark# U13 X -> mark# X, mark# U23 X -> U23# mark X)
    (mark# U13 X -> mark# X, mark# U32(X1, X2) -> mark# X1)
    (mark# U13 X -> mark# X, mark# U32(X1, X2) -> active# U32(mark X1, X2))
    (mark# U13 X -> mark# X, mark# U32(X1, X2) -> U32#(mark X1, X2))
    (mark# U13 X -> mark# X, mark# U31(X1, X2) -> mark# X1)
    (mark# U13 X -> mark# X, mark# U31(X1, X2) -> active# U31(mark X1, X2))
    (mark# U13 X -> mark# X, mark# U31(X1, X2) -> U31#(mark X1, X2))
    (mark# U13 X -> mark# X, mark# U33 X -> mark# X)
    (mark# U13 X -> mark# X, mark# U33 X -> active# U33 mark X)
    (mark# U13 X -> mark# X, mark# U33 X -> U33# mark X)
    (mark# U13 X -> mark# X, mark# U42(X1, X2, X3) -> mark# X1)
    (mark# U13 X -> mark# X, mark# U42(X1, X2, X3) -> active# U42(mark X1, X2, X3))
    (mark# U13 X -> mark# X, mark# U42(X1, X2, X3) -> U42#(mark X1, X2, X3))
    (mark# U13 X -> mark# X, mark# U41(X1, X2, X3) -> mark# X1)
    (mark# U13 X -> mark# X, mark# U41(X1, X2, X3) -> active# U41(mark X1, X2, X3))
    (mark# U13 X -> mark# X, mark# U41(X1, X2, X3) -> U41#(mark X1, X2, X3))
    (mark# U13 X -> mark# X, mark# U43(X1, X2, X3) -> mark# X1)
    (mark# U13 X -> mark# X, mark# U43(X1, X2, X3) -> active# U43(mark X1, X2, X3))
    (mark# U13 X -> mark# X, mark# U43(X1, X2, X3) -> U43#(mark X1, X2, X3))
    (mark# U13 X -> mark# X, mark# U44(X1, X2, X3) -> mark# X1)
    (mark# U13 X -> mark# X, mark# U44(X1, X2, X3) -> active# U44(mark X1, X2, X3))
    (mark# U13 X -> mark# X, mark# U44(X1, X2, X3) -> U44#(mark X1, X2, X3))
    (mark# U13 X -> mark# X, mark# U45(X1, X2) -> mark# X1)
    (mark# U13 X -> mark# X, mark# U45(X1, X2) -> active# U45(mark X1, X2))
    (mark# U13 X -> mark# X, mark# U45(X1, X2) -> U45#(mark X1, X2))
    (mark# U13 X -> mark# X, mark# U46 X -> mark# X)
    (mark# U13 X -> mark# X, mark# U46 X -> active# U46 mark X)
    (mark# U13 X -> mark# X, mark# U46 X -> U46# mark X)
    (mark# U13 X -> mark# X, mark# U52 X -> mark# X)
    (mark# U13 X -> mark# X, mark# U52 X -> active# U52 mark X)
    (mark# U13 X -> mark# X, mark# U52 X -> U52# mark X)
    (mark# U13 X -> mark# X, mark# U51(X1, X2) -> mark# X1)
    (mark# U13 X -> mark# X, mark# U51(X1, X2) -> active# U51(mark X1, X2))
    (mark# U13 X -> mark# X, mark# U51(X1, X2) -> U51#(mark X1, X2))
    (mark# U13 X -> mark# X, mark# U62 X -> mark# X)
    (mark# U13 X -> mark# X, mark# U62 X -> active# U62 mark X)
    (mark# U13 X -> mark# X, mark# U62 X -> U62# mark X)
    (mark# U13 X -> mark# X, mark# U61(X1, X2) -> mark# X1)
    (mark# U13 X -> mark# X, mark# U61(X1, X2) -> active# U61(mark X1, X2))
    (mark# U13 X -> mark# X, mark# U61(X1, X2) -> U61#(mark X1, X2))
    (mark# U13 X -> mark# X, mark# U71 X -> mark# X)
    (mark# U13 X -> mark# X, mark# U71 X -> active# U71 mark X)
    (mark# U13 X -> mark# X, mark# U71 X -> U71# mark X)
    (mark# U13 X -> mark# X, mark# U81 X -> mark# X)
    (mark# U13 X -> mark# X, mark# U81 X -> active# U81 mark X)
    (mark# U13 X -> mark# X, mark# U81 X -> U81# mark X)
    (mark# U13 X -> mark# X, mark# U92(X1, X2, X3) -> mark# X1)
    (mark# U13 X -> mark# X, mark# U92(X1, X2, X3) -> active# U92(mark X1, X2, X3))
    (mark# U13 X -> mark# X, mark# U92(X1, X2, X3) -> U92#(mark X1, X2, X3))
    (mark# U13 X -> mark# X, mark# U91(X1, X2, X3) -> mark# X1)
    (mark# U13 X -> mark# X, mark# U91(X1, X2, X3) -> active# U91(mark X1, X2, X3))
    (mark# U13 X -> mark# X, mark# U91(X1, X2, X3) -> U91#(mark X1, X2, X3))
    (mark# U13 X -> mark# X, mark# U93(X1, X2, X3) -> mark# X1)
    (mark# U13 X -> mark# X, mark# U93(X1, X2, X3) -> active# U93(mark X1, X2, X3))
    (mark# U13 X -> mark# X, mark# U93(X1, X2, X3) -> U93#(mark X1, X2, X3))
    (mark# U13 X -> mark# X, mark# U94(X1, X2, X3) -> mark# X1)
    (mark# U13 X -> mark# X, mark# U94(X1, X2, X3) -> active# U94(mark X1, X2, X3))
    (mark# U13 X -> mark# X, mark# U94(X1, X2, X3) -> U94#(mark X1, X2, X3))
    (mark# U13 X -> mark# X, mark# U95(X1, X2) -> mark# X1)
    (mark# U13 X -> mark# X, mark# U95(X1, X2) -> active# U95(mark X1, X2))
    (mark# U13 X -> mark# X, mark# U95(X1, X2) -> U95#(mark X1, X2))
    (mark# U13 X -> mark# X, mark# U96 X -> mark# X)
    (mark# U13 X -> mark# X, mark# U96 X -> active# U96 mark X)
    (mark# U13 X -> mark# X, mark# U96 X -> U96# mark X)
    (mark# s X -> mark# X, mark# cons(X1, X2) -> mark# X1)
    (mark# s X -> mark# X, mark# cons(X1, X2) -> cons#(mark X1, X2))
    (mark# s X -> mark# X, mark# cons(X1, X2) -> active# cons(mark X1, X2))
    (mark# s X -> mark# X, mark# 0() -> active# 0())
    (mark# s X -> mark# X, mark# zeros() -> active# zeros())
    (mark# s X -> mark# X, mark# U102(X1, X2, X3) -> mark# X1)
    (mark# s X -> mark# X, mark# U102(X1, X2, X3) -> active# U102(mark X1, X2, X3))
    (mark# s X -> mark# X, mark# U102(X1, X2, X3) -> U102#(mark X1, X2, X3))
    (mark# s X -> mark# X, mark# isNatKind X -> active# isNatKind X)
    (mark# s X -> mark# X, mark# U101(X1, X2, X3) -> mark# X1)
    (mark# s X -> mark# X, mark# U101(X1, X2, X3) -> active# U101(mark X1, X2, X3))
    (mark# s X -> mark# X, mark# U101(X1, X2, X3) -> U101#(mark X1, X2, X3))
    (mark# s X -> mark# X, mark# tt() -> active# tt())
    (mark# s X -> mark# X, mark# U103(X1, X2, X3) -> mark# X1)
    (mark# s X -> mark# X, mark# U103(X1, X2, X3) -> active# U103(mark X1, X2, X3))
    (mark# s X -> mark# X, mark# U103(X1, X2, X3) -> U103#(mark X1, X2, X3))
    (mark# s X -> mark# X, mark# isNatIListKind X -> active# isNatIListKind X)
    (mark# s X -> mark# X, mark# U104(X1, X2, X3) -> mark# X1)
    (mark# s X -> mark# X, mark# U104(X1, X2, X3) -> active# U104(mark X1, X2, X3))
    (mark# s X -> mark# X, mark# U104(X1, X2, X3) -> U104#(mark X1, X2, X3))
    (mark# s X -> mark# X, mark# U105(X1, X2) -> mark# X1)
    (mark# s X -> mark# X, mark# U105(X1, X2) -> active# U105(mark X1, X2))
    (mark# s X -> mark# X, mark# U105(X1, X2) -> U105#(mark X1, X2))
    (mark# s X -> mark# X, mark# isNat X -> active# isNat X)
    (mark# s X -> mark# X, mark# U106 X -> mark# X)
    (mark# s X -> mark# X, mark# U106 X -> active# U106 mark X)
    (mark# s X -> mark# X, mark# U106 X -> U106# mark X)
    (mark# s X -> mark# X, mark# isNatIList X -> active# isNatIList X)
    (mark# s X -> mark# X, mark# U12(X1, X2) -> mark# X1)
    (mark# s X -> mark# X, mark# U12(X1, X2) -> active# U12(mark X1, X2))
    (mark# s X -> mark# X, mark# U12(X1, X2) -> U12#(mark X1, X2))
    (mark# s X -> mark# X, mark# U11(X1, X2) -> mark# X1)
    (mark# s X -> mark# X, mark# U11(X1, X2) -> active# U11(mark X1, X2))
    (mark# s X -> mark# X, mark# U11(X1, X2) -> U11#(mark X1, X2))
    (mark# s X -> mark# X, mark# U112(X1, X2, X3) -> mark# X1)
    (mark# s X -> mark# X, mark# U112(X1, X2, X3) -> active# U112(mark X1, X2, X3))
    (mark# s X -> mark# X, mark# U112(X1, X2, X3) -> U112#(mark X1, X2, X3))
    (mark# s X -> mark# X, mark# U111(X1, X2, X3) -> mark# X1)
    (mark# s X -> mark# X, mark# U111(X1, X2, X3) -> active# U111(mark X1, X2, X3))
    (mark# s X -> mark# X, mark# U111(X1, X2, X3) -> U111#(mark X1, X2, X3))
    (mark# s X -> mark# X, mark# U113(X1, X2, X3) -> mark# X1)
    (mark# s X -> mark# X, mark# U113(X1, X2, X3) -> active# U113(mark X1, X2, X3))
    (mark# s X -> mark# X, mark# U113(X1, X2, X3) -> U113#(mark X1, X2, X3))
    (mark# s X -> mark# X, mark# U114(X1, X2) -> mark# X1)
    (mark# s X -> mark# X, mark# U114(X1, X2) -> active# U114(mark X1, X2))
    (mark# s X -> mark# X, mark# U114(X1, X2) -> U114#(mark X1, X2))
    (mark# s X -> mark# X, mark# s X -> mark# X)
    (mark# s X -> mark# X, mark# s X -> active# s mark X)
    (mark# s X -> mark# X, mark# s X -> s# mark X)
    (mark# s X -> mark# X, mark# length X -> mark# X)
    (mark# s X -> mark# X, mark# length X -> active# length mark X)
    (mark# s X -> mark# X, mark# length X -> length# mark X)
    (mark# s X -> mark# X, mark# U13 X -> mark# X)
    (mark# s X -> mark# X, mark# U13 X -> active# U13 mark X)
    (mark# s X -> mark# X, mark# U13 X -> U13# mark X)
    (mark# s X -> mark# X, mark# isNatList X -> active# isNatList X)
    (mark# s X -> mark# X, mark# U122 X -> mark# X)
    (mark# s X -> mark# X, mark# U122 X -> active# U122 mark X)
    (mark# s X -> mark# X, mark# U122 X -> U122# mark X)
    (mark# s X -> mark# X, mark# U121(X1, X2) -> mark# X1)
    (mark# s X -> mark# X, mark# U121(X1, X2) -> active# U121(mark X1, X2))
    (mark# s X -> mark# X, mark# U121(X1, X2) -> U121#(mark X1, X2))
    (mark# s X -> mark# X, mark# nil() -> active# nil())
    (mark# s X -> mark# X, mark# U132(X1, X2, X3, X4) -> mark# X1)
    (mark# s X -> mark# X, mark# U132(X1, X2, X3, X4) -> active# U132(mark X1, X2, X3, X4))
    (mark# s X -> mark# X, mark# U132(X1, X2, X3, X4) -> U132#(mark X1, X2, X3, X4))
    (mark# s X -> mark# X, mark# U131(X1, X2, X3, X4) -> mark# X1)
    (mark# s X -> mark# X, mark# U131(X1, X2, X3, X4) -> active# U131(mark X1, X2, X3, X4))
    (mark# s X -> mark# X, mark# U131(X1, X2, X3, X4) -> U131#(mark X1, X2, X3, X4))
    (mark# s X -> mark# X, mark# U133(X1, X2, X3, X4) -> mark# X1)
    (mark# s X -> mark# X, mark# U133(X1, X2, X3, X4) -> active# U133(mark X1, X2, X3, X4))
    (mark# s X -> mark# X, mark# U133(X1, X2, X3, X4) -> U133#(mark X1, X2, X3, X4))
    (mark# s X -> mark# X, mark# U134(X1, X2, X3, X4) -> mark# X1)
    (mark# s X -> mark# X, mark# U134(X1, X2, X3, X4) -> active# U134(mark X1, X2, X3, X4))
    (mark# s X -> mark# X, mark# U134(X1, X2, X3, X4) -> U134#(mark X1, X2, X3, X4))
    (mark# s X -> mark# X, mark# U135(X1, X2, X3, X4) -> mark# X1)
    (mark# s X -> mark# X, mark# U135(X1, X2, X3, X4) -> active# U135(mark X1, X2, X3, X4))
    (mark# s X -> mark# X, mark# U135(X1, X2, X3, X4) -> U135#(mark X1, X2, X3, X4))
    (mark# s X -> mark# X, mark# U136(X1, X2, X3, X4) -> mark# X1)
    (mark# s X -> mark# X, mark# U136(X1, X2, X3, X4) -> active# U136(mark X1, X2, X3, X4))
    (mark# s X -> mark# X, mark# U136(X1, X2, X3, X4) -> U136#(mark X1, X2, X3, X4))
    (mark# s X -> mark# X, mark# take(X1, X2) -> mark# X1)
    (mark# s X -> mark# X, mark# take(X1, X2) -> mark# X2)
    (mark# s X -> mark# X, mark# take(X1, X2) -> active# take(mark X1, mark X2))
    (mark# s X -> mark# X, mark# take(X1, X2) -> take#(mark X1, mark X2))
    (mark# s X -> mark# X, mark# U22(X1, X2) -> mark# X1)
    (mark# s X -> mark# X, mark# U22(X1, X2) -> active# U22(mark X1, X2))
    (mark# s X -> mark# X, mark# U22(X1, X2) -> U22#(mark X1, X2))
    (mark# s X -> mark# X, mark# U21(X1, X2) -> mark# X1)
    (mark# s X -> mark# X, mark# U21(X1, X2) -> active# U21(mark X1, X2))
    (mark# s X -> mark# X, mark# U21(X1, X2) -> U21#(mark X1, X2))
    (mark# s X -> mark# X, mark# U23 X -> mark# X)
    (mark# s X -> mark# X, mark# U23 X -> active# U23 mark X)
    (mark# s X -> mark# X, mark# U23 X -> U23# mark X)
    (mark# s X -> mark# X, mark# U32(X1, X2) -> mark# X1)
    (mark# s X -> mark# X, mark# U32(X1, X2) -> active# U32(mark X1, X2))
    (mark# s X -> mark# X, mark# U32(X1, X2) -> U32#(mark X1, X2))
    (mark# s X -> mark# X, mark# U31(X1, X2) -> mark# X1)
    (mark# s X -> mark# X, mark# U31(X1, X2) -> active# U31(mark X1, X2))
    (mark# s X -> mark# X, mark# U31(X1, X2) -> U31#(mark X1, X2))
    (mark# s X -> mark# X, mark# U33 X -> mark# X)
    (mark# s X -> mark# X, mark# U33 X -> active# U33 mark X)
    (mark# s X -> mark# X, mark# U33 X -> U33# mark X)
    (mark# s X -> mark# X, mark# U42(X1, X2, X3) -> mark# X1)
    (mark# s X -> mark# X, mark# U42(X1, X2, X3) -> active# U42(mark X1, X2, X3))
    (mark# s X -> mark# X, mark# U42(X1, X2, X3) -> U42#(mark X1, X2, X3))
    (mark# s X -> mark# X, mark# U41(X1, X2, X3) -> mark# X1)
    (mark# s X -> mark# X, mark# U41(X1, X2, X3) -> active# U41(mark X1, X2, X3))
    (mark# s X -> mark# X, mark# U41(X1, X2, X3) -> U41#(mark X1, X2, X3))
    (mark# s X -> mark# X, mark# U43(X1, X2, X3) -> mark# X1)
    (mark# s X -> mark# X, mark# U43(X1, X2, X3) -> active# U43(mark X1, X2, X3))
    (mark# s X -> mark# X, mark# U43(X1, X2, X3) -> U43#(mark X1, X2, X3))
    (mark# s X -> mark# X, mark# U44(X1, X2, X3) -> mark# X1)
    (mark# s X -> mark# X, mark# U44(X1, X2, X3) -> active# U44(mark X1, X2, X3))
    (mark# s X -> mark# X, mark# U44(X1, X2, X3) -> U44#(mark X1, X2, X3))
    (mark# s X -> mark# X, mark# U45(X1, X2) -> mark# X1)
    (mark# s X -> mark# X, mark# U45(X1, X2) -> active# U45(mark X1, X2))
    (mark# s X -> mark# X, mark# U45(X1, X2) -> U45#(mark X1, X2))
    (mark# s X -> mark# X, mark# U46 X -> mark# X)
    (mark# s X -> mark# X, mark# U46 X -> active# U46 mark X)
    (mark# s X -> mark# X, mark# U46 X -> U46# mark X)
    (mark# s X -> mark# X, mark# U52 X -> mark# X)
    (mark# s X -> mark# X, mark# U52 X -> active# U52 mark X)
    (mark# s X -> mark# X, mark# U52 X -> U52# mark X)
    (mark# s X -> mark# X, mark# U51(X1, X2) -> mark# X1)
    (mark# s X -> mark# X, mark# U51(X1, X2) -> active# U51(mark X1, X2))
    (mark# s X -> mark# X, mark# U51(X1, X2) -> U51#(mark X1, X2))
    (mark# s X -> mark# X, mark# U62 X -> mark# X)
    (mark# s X -> mark# X, mark# U62 X -> active# U62 mark X)
    (mark# s X -> mark# X, mark# U62 X -> U62# mark X)
    (mark# s X -> mark# X, mark# U61(X1, X2) -> mark# X1)
    (mark# s X -> mark# X, mark# U61(X1, X2) -> active# U61(mark X1, X2))
    (mark# s X -> mark# X, mark# U61(X1, X2) -> U61#(mark X1, X2))
    (mark# s X -> mark# X, mark# U71 X -> mark# X)
    (mark# s X -> mark# X, mark# U71 X -> active# U71 mark X)
    (mark# s X -> mark# X, mark# U71 X -> U71# mark X)
    (mark# s X -> mark# X, mark# U81 X -> mark# X)
    (mark# s X -> mark# X, mark# U81 X -> active# U81 mark X)
    (mark# s X -> mark# X, mark# U81 X -> U81# mark X)
    (mark# s X -> mark# X, mark# U92(X1, X2, X3) -> mark# X1)
    (mark# s X -> mark# X, mark# U92(X1, X2, X3) -> active# U92(mark X1, X2, X3))
    (mark# s X -> mark# X, mark# U92(X1, X2, X3) -> U92#(mark X1, X2, X3))
    (mark# s X -> mark# X, mark# U91(X1, X2, X3) -> mark# X1)
    (mark# s X -> mark# X, mark# U91(X1, X2, X3) -> active# U91(mark X1, X2, X3))
    (mark# s X -> mark# X, mark# U91(X1, X2, X3) -> U91#(mark X1, X2, X3))
    (mark# s X -> mark# X, mark# U93(X1, X2, X3) -> mark# X1)
    (mark# s X -> mark# X, mark# U93(X1, X2, X3) -> active# U93(mark X1, X2, X3))
    (mark# s X -> mark# X, mark# U93(X1, X2, X3) -> U93#(mark X1, X2, X3))
    (mark# s X -> mark# X, mark# U94(X1, X2, X3) -> mark# X1)
    (mark# s X -> mark# X, mark# U94(X1, X2, X3) -> active# U94(mark X1, X2, X3))
    (mark# s X -> mark# X, mark# U94(X1, X2, X3) -> U94#(mark X1, X2, X3))
    (mark# s X -> mark# X, mark# U95(X1, X2) -> mark# X1)
    (mark# s X -> mark# X, mark# U95(X1, X2) -> active# U95(mark X1, X2))
    (mark# s X -> mark# X, mark# U95(X1, X2) -> U95#(mark X1, X2))
    (mark# s X -> mark# X, mark# U96 X -> mark# X)
    (mark# s X -> mark# X, mark# U96 X -> active# U96 mark X)
    (mark# s X -> mark# X, mark# U96 X -> U96# mark X)
    (active# U133(tt(), IL, M, N) -> isNatKind# M, isNatKind# mark X -> isNatKind# X)
    (active# U133(tt(), IL, M, N) -> isNatKind# M, isNatKind# active X -> isNatKind# X)
    (active# U94(tt(), V1, V2) -> isNat# V1, isNat# mark X -> isNat# X)
    (active# U94(tt(), V1, V2) -> isNat# V1, isNat# active X -> isNat# X)
    (active# U44(tt(), V1, V2) -> isNat# V1, isNat# mark X -> isNat# X)
    (active# U44(tt(), V1, V2) -> isNat# V1, isNat# active X -> isNat# X)
    (active# U21(tt(), V1) -> isNatKind# V1, isNatKind# mark X -> isNatKind# X)
    (active# U21(tt(), V1) -> isNatKind# V1, isNatKind# active X -> isNatKind# X)
    (active# isNatList take(V1, V2) -> isNatKind# V1, isNatKind# mark X -> isNatKind# X)
    (active# isNatList take(V1, V2) -> isNatKind# V1, isNatKind# active X -> isNatKind# X)
    (active# U11(tt(), V1) -> isNatIListKind# V1, isNatIListKind# mark X -> isNatIListKind# X)
    (active# U11(tt(), V1) -> isNatIListKind# V1, isNatIListKind# active X -> isNatIListKind# X)
    (active# isNatIList cons(V1, V2) -> isNatKind# V1, isNatKind# mark X -> isNatKind# X)
    (active# isNatIList cons(V1, V2) -> isNatKind# V1, isNatKind# active X -> isNatKind# X)
    (active# isNat s V1 -> isNatKind# V1, isNatKind# mark X -> isNatKind# X)
    (active# isNat s V1 -> isNatKind# V1, isNatKind# active X -> isNatKind# X)
    (active# isNatIListKind take(V1, V2) -> isNatKind# V1, isNatKind# mark X -> isNatKind# X)
    (active# isNatIListKind take(V1, V2) -> isNatKind# V1, isNatKind# active X -> isNatKind# X)
    (active# U101(tt(), V1, V2) -> isNatKind# V1, isNatKind# mark X -> isNatKind# X)
    (active# U101(tt(), V1, V2) -> isNatKind# V1, isNatKind# active X -> isNatKind# X)
    (active# isNatKind s V1 -> isNatKind# V1, isNatKind# mark X -> isNatKind# X)
    (active# isNatKind s V1 -> isNatKind# V1, isNatKind# active X -> isNatKind# X)
    (active# U91(tt(), V1, V2) -> mark# U92(isNatKind V1, V1, V2), mark# U92(X1, X2, X3) -> mark# X1)
    (active# U91(tt(), V1, V2) -> mark# U92(isNatKind V1, V1, V2), mark# U92(X1, X2, X3) -> active# U92(mark X1, X2, X3))
    (active# U91(tt(), V1, V2) -> mark# U92(isNatKind V1, V1, V2), mark# U92(X1, X2, X3) -> U92#(mark X1, X2, X3))
    (active# U43(tt(), V1, V2) -> mark# U44(isNatIListKind V2, V1, V2), mark# U44(X1, X2, X3) -> mark# X1)
    (active# U43(tt(), V1, V2) -> mark# U44(isNatIListKind V2, V1, V2), mark# U44(X1, X2, X3) -> active# U44(mark X1, X2, X3))
    (active# U43(tt(), V1, V2) -> mark# U44(isNatIListKind V2, V1, V2), mark# U44(X1, X2, X3) -> U44#(mark X1, X2, X3))
    (active# U42(tt(), V1, V2) -> mark# U43(isNatIListKind V2, V1, V2), mark# U43(X1, X2, X3) -> mark# X1)
    (active# U42(tt(), V1, V2) -> mark# U43(isNatIListKind V2, V1, V2), mark# U43(X1, X2, X3) -> active# U43(mark X1, X2, X3))
    (active# U42(tt(), V1, V2) -> mark# U43(isNatIListKind V2, V1, V2), mark# U43(X1, X2, X3) -> U43#(mark X1, X2, X3))
    (active# U135(tt(), IL, M, N) -> mark# U136(isNatKind N, IL, M, N), mark# U136(X1, X2, X3, X4) -> mark# X1)
    (active# U135(tt(), IL, M, N) -> mark# U136(isNatKind N, IL, M, N), mark# U136(X1, X2, X3, X4) -> active# U136(mark X1, X2, X3, X4))
    (active# U135(tt(), IL, M, N) -> mark# U136(isNatKind N, IL, M, N), mark# U136(X1, X2, X3, X4) -> U136#(mark X1, X2, X3, X4))
    (active# U133(tt(), IL, M, N) -> mark# U134(isNatKind M, IL, M, N), mark# U134(X1, X2, X3, X4) -> mark# X1)
    (active# U133(tt(), IL, M, N) -> mark# U134(isNatKind M, IL, M, N), mark# U134(X1, X2, X3, X4) -> active# U134(mark X1, X2, X3, X4))
    (active# U133(tt(), IL, M, N) -> mark# U134(isNatKind M, IL, M, N), mark# U134(X1, X2, X3, X4) -> U134#(mark X1, X2, X3, X4))
    (active# U132(tt(), IL, M, N) -> mark# U133(isNat M, IL, M, N), mark# U133(X1, X2, X3, X4) -> mark# X1)
    (active# U132(tt(), IL, M, N) -> mark# U133(isNat M, IL, M, N), mark# U133(X1, X2, X3, X4) -> active# U133(mark X1, X2, X3, X4))
    (active# U132(tt(), IL, M, N) -> mark# U133(isNat M, IL, M, N), mark# U133(X1, X2, X3, X4) -> U133#(mark X1, X2, X3, X4))
    (active# isNatList cons(V1, V2) -> mark# U91(isNatKind V1, V1, V2), mark# U91(X1, X2, X3) -> mark# X1)
    (active# isNatList cons(V1, V2) -> mark# U91(isNatKind V1, V1, V2), mark# U91(X1, X2, X3) -> active# U91(mark X1, X2, X3))
    (active# isNatList cons(V1, V2) -> mark# U91(isNatKind V1, V1, V2), mark# U91(X1, X2, X3) -> U91#(mark X1, X2, X3))
    (active# U111(tt(), L, N) -> mark# U112(isNatIListKind L, L, N), mark# U112(X1, X2, X3) -> mark# X1)
    (active# U111(tt(), L, N) -> mark# U112(isNatIListKind L, L, N), mark# U112(X1, X2, X3) -> active# U112(mark X1, X2, X3))
    (active# U111(tt(), L, N) -> mark# U112(isNatIListKind L, L, N), mark# U112(X1, X2, X3) -> U112#(mark X1, X2, X3))
    (active# isNatIList cons(V1, V2) -> mark# U41(isNatKind V1, V1, V2), mark# U41(X1, X2, X3) -> mark# X1)
    (active# isNatIList cons(V1, V2) -> mark# U41(isNatKind V1, V1, V2), mark# U41(X1, X2, X3) -> active# U41(mark X1, X2, X3))
    (active# isNatIList cons(V1, V2) -> mark# U41(isNatKind V1, V1, V2), mark# U41(X1, X2, X3) -> U41#(mark X1, X2, X3))
    (active# U101(tt(), V1, V2) -> mark# U102(isNatKind V1, V1, V2), mark# U102(X1, X2, X3) -> mark# X1)
    (active# U101(tt(), V1, V2) -> mark# U102(isNatKind V1, V1, V2), mark# U102(X1, X2, X3) -> active# U102(mark X1, X2, X3))
    (active# U101(tt(), V1, V2) -> mark# U102(isNatKind V1, V1, V2), mark# U102(X1, X2, X3) -> U102#(mark X1, X2, X3))
    (mark# U94(X1, X2, X3) -> active# U94(mark X1, X2, X3), active# U94(tt(), V1, V2) -> mark# U95(isNat V1, V2))
    (mark# U94(X1, X2, X3) -> active# U94(mark X1, X2, X3), active# U94(tt(), V1, V2) -> isNat# V1)
    (mark# U94(X1, X2, X3) -> active# U94(mark X1, X2, X3), active# U94(tt(), V1, V2) -> U95#(isNat V1, V2))
    (mark# U91(X1, X2, X3) -> active# U91(mark X1, X2, X3), active# U91(tt(), V1, V2) -> mark# U92(isNatKind V1, V1, V2))
    (mark# U91(X1, X2, X3) -> active# U91(mark X1, X2, X3), active# U91(tt(), V1, V2) -> isNatKind# V1)
    (mark# U91(X1, X2, X3) -> active# U91(mark X1, X2, X3), active# U91(tt(), V1, V2) -> U92#(isNatKind V1, V1, V2))
    (mark# U44(X1, X2, X3) -> active# U44(mark X1, X2, X3), active# U44(tt(), V1, V2) -> mark# U45(isNat V1, V2))
    (mark# U44(X1, X2, X3) -> active# U44(mark X1, X2, X3), active# U44(tt(), V1, V2) -> isNat# V1)
    (mark# U44(X1, X2, X3) -> active# U44(mark X1, X2, X3), active# U44(tt(), V1, V2) -> U45#(isNat V1, V2))
    (mark# U41(X1, X2, X3) -> active# U41(mark X1, X2, X3), active# U41(tt(), V1, V2) -> mark# U42(isNatKind V1, V1, V2))
    (mark# U41(X1, X2, X3) -> active# U41(mark X1, X2, X3), active# U41(tt(), V1, V2) -> isNatKind# V1)
    (mark# U41(X1, X2, X3) -> active# U41(mark X1, X2, X3), active# U41(tt(), V1, V2) -> U42#(isNatKind V1, V1, V2))
    (mark# U136(X1, X2, X3, X4) -> active# U136(mark X1, X2, X3, X4), active# U136(tt(), IL, M, N) -> mark# cons(N, take(M, IL)))
    (mark# U136(X1, X2, X3, X4) -> active# U136(mark X1, X2, X3, X4), active# U136(tt(), IL, M, N) -> cons#(N, take(M, IL)))
    (mark# U136(X1, X2, X3, X4) -> active# U136(mark X1, X2, X3, X4), active# U136(tt(), IL, M, N) -> take#(M, IL))
    (mark# U134(X1, X2, X3, X4) -> active# U134(mark X1, X2, X3, X4), active# U134(tt(), IL, M, N) -> mark# U135(isNat N, IL, M, N))
    (mark# U134(X1, X2, X3, X4) -> active# U134(mark X1, X2, X3, X4), active# U134(tt(), IL, M, N) -> isNat# N)
    (mark# U134(X1, X2, X3, X4) -> active# U134(mark X1, X2, X3, X4), active# U134(tt(), IL, M, N) -> U135#(isNat N, IL, M, N))
    (mark# U131(X1, X2, X3, X4) -> active# U131(mark X1, X2, X3, X4), active# U131(tt(), IL, M, N) -> mark# U132(isNatIListKind IL, IL, M, N))
    (mark# U131(X1, X2, X3, X4) -> active# U131(mark X1, X2, X3, X4), active# U131(tt(), IL, M, N) -> isNatIListKind# IL)
    (mark# U131(X1, X2, X3, X4) -> active# U131(mark X1, X2, X3, X4), active# U131(tt(), IL, M, N) -> U132#(isNatIListKind IL, IL, M, N))
    (mark# U113(X1, X2, X3) -> active# U113(mark X1, X2, X3), active# U113(tt(), L, N) -> mark# U114(isNatKind N, L))
    (mark# U113(X1, X2, X3) -> active# U113(mark X1, X2, X3), active# U113(tt(), L, N) -> isNatKind# N)
    (mark# U113(X1, X2, X3) -> active# U113(mark X1, X2, X3), active# U113(tt(), L, N) -> U114#(isNatKind N, L))
    (mark# U112(X1, X2, X3) -> active# U112(mark X1, X2, X3), active# U112(tt(), L, N) -> mark# U113(isNat N, L, N))
    (mark# U112(X1, X2, X3) -> active# U112(mark X1, X2, X3), active# U112(tt(), L, N) -> isNat# N)
    (mark# U112(X1, X2, X3) -> active# U112(mark X1, X2, X3), active# U112(tt(), L, N) -> U113#(isNat N, L, N))
    (mark# U103(X1, X2, X3) -> active# U103(mark X1, X2, X3), active# U103(tt(), V1, V2) -> mark# U104(isNatIListKind V2, V1, V2))
    (mark# U103(X1, X2, X3) -> active# U103(mark X1, X2, X3), active# U103(tt(), V1, V2) -> isNatIListKind# V2)
    (mark# U103(X1, X2, X3) -> active# U103(mark X1, X2, X3), active# U103(tt(), V1, V2) -> U104#(isNatIListKind V2, V1, V2))
    (mark# U102(X1, X2, X3) -> active# U102(mark X1, X2, X3), active# U102(tt(), V1, V2) -> mark# U103(isNatIListKind V2, V1, V2))
    (mark# U102(X1, X2, X3) -> active# U102(mark X1, X2, X3), active# U102(tt(), V1, V2) -> U103#(isNatIListKind V2, V1, V2))
    (mark# U102(X1, X2, X3) -> active# U102(mark X1, X2, X3), active# U102(tt(), V1, V2) -> isNatIListKind# V2)
   }
   STATUS:
    arrows: 0.967664
    SCCS (55):
     Scc:
      {                 mark# cons(X1, X2) -> mark# X1,
                             mark# zeros() -> active# zeros(),
                    mark# U102(X1, X2, X3) -> mark# X1,
                    mark# U102(X1, X2, X3) -> active# U102(mark X1, X2, X3),
                         mark# isNatKind X -> active# isNatKind X,
                    mark# U101(X1, X2, X3) -> mark# X1,
                    mark# U101(X1, X2, X3) -> active# U101(mark X1, X2, X3),
                    mark# U103(X1, X2, X3) -> mark# X1,
                    mark# U103(X1, X2, X3) -> active# U103(mark X1, X2, X3),
                    mark# isNatIListKind X -> active# isNatIListKind X,
                    mark# U104(X1, X2, X3) -> mark# X1,
                    mark# U104(X1, X2, X3) -> active# U104(mark X1, X2, X3),
                        mark# U105(X1, X2) -> mark# X1,
                        mark# U105(X1, X2) -> active# U105(mark X1, X2),
                             mark# isNat X -> active# isNat X,
                              mark# U106 X -> mark# X,
                        mark# isNatIList X -> active# isNatIList X,
                         mark# U12(X1, X2) -> mark# X1,
                         mark# U12(X1, X2) -> active# U12(mark X1, X2),
                         mark# U11(X1, X2) -> mark# X1,
                         mark# U11(X1, X2) -> active# U11(mark X1, X2),
                    mark# U112(X1, X2, X3) -> mark# X1,
                    mark# U112(X1, X2, X3) -> active# U112(mark X1, X2, X3),
                    mark# U111(X1, X2, X3) -> mark# X1,
                    mark# U111(X1, X2, X3) -> active# U111(mark X1, X2, X3),
                    mark# U113(X1, X2, X3) -> mark# X1,
                    mark# U113(X1, X2, X3) -> active# U113(mark X1, X2, X3),
                        mark# U114(X1, X2) -> mark# X1,
                        mark# U114(X1, X2) -> active# U114(mark X1, X2),
                                 mark# s X -> mark# X,
                            mark# length X -> mark# X,
                            mark# length X -> active# length mark X,
                               mark# U13 X -> mark# X,
                         mark# isNatList X -> active# isNatList X,
                              mark# U122 X -> mark# X,
                        mark# U121(X1, X2) -> mark# X1,
                        mark# U121(X1, X2) -> active# U121(mark X1, X2),
                mark# U132(X1, X2, X3, X4) -> mark# X1,
                mark# U132(X1, X2, X3, X4) -> active# U132(mark X1, X2, X3, X4),
                mark# U131(X1, X2, X3, X4) -> mark# X1,
                mark# U131(X1, X2, X3, X4) -> active# U131(mark X1, X2, X3, X4),
                mark# U133(X1, X2, X3, X4) -> mark# X1,
                mark# U133(X1, X2, X3, X4) -> active# U133(mark X1, X2, X3, X4),
                mark# U134(X1, X2, X3, X4) -> mark# X1,
                mark# U134(X1, X2, X3, X4) -> active# U134(mark X1, X2, X3, X4),
                mark# U135(X1, X2, X3, X4) -> mark# X1,
                mark# U135(X1, X2, X3, X4) -> active# U135(mark X1, X2, X3, X4),
                mark# U136(X1, X2, X3, X4) -> mark# X1,
                mark# U136(X1, X2, X3, X4) -> active# U136(mark X1, X2, X3, X4),
                        mark# take(X1, X2) -> mark# X1,
                        mark# take(X1, X2) -> mark# X2,
                        mark# take(X1, X2) -> active# take(mark X1, mark X2),
                         mark# U22(X1, X2) -> mark# X1,
                         mark# U22(X1, X2) -> active# U22(mark X1, X2),
                         mark# U21(X1, X2) -> mark# X1,
                         mark# U21(X1, X2) -> active# U21(mark X1, X2),
                               mark# U23 X -> mark# X,
                         mark# U32(X1, X2) -> mark# X1,
                         mark# U32(X1, X2) -> active# U32(mark X1, X2),
                         mark# U31(X1, X2) -> mark# X1,
                         mark# U31(X1, X2) -> active# U31(mark X1, X2),
                               mark# U33 X -> mark# X,
                     mark# U42(X1, X2, X3) -> mark# X1,
                     mark# U42(X1, X2, X3) -> active# U42(mark X1, X2, X3),
                     mark# U41(X1, X2, X3) -> mark# X1,
                     mark# U41(X1, X2, X3) -> active# U41(mark X1, X2, X3),
                     mark# U43(X1, X2, X3) -> mark# X1,
                     mark# U43(X1, X2, X3) -> active# U43(mark X1, X2, X3),
                     mark# U44(X1, X2, X3) -> mark# X1,
                     mark# U44(X1, X2, X3) -> active# U44(mark X1, X2, X3),
                         mark# U45(X1, X2) -> mark# X1,
                         mark# U45(X1, X2) -> active# U45(mark X1, X2),
                               mark# U46 X -> mark# X,
                               mark# U52 X -> mark# X,
                         mark# U51(X1, X2) -> mark# X1,
                         mark# U51(X1, X2) -> active# U51(mark X1, X2),
                               mark# U62 X -> mark# X,
                         mark# U61(X1, X2) -> mark# X1,
                         mark# U61(X1, X2) -> active# U61(mark X1, X2),
                               mark# U71 X -> mark# X,
                               mark# U81 X -> mark# X,
                     mark# U92(X1, X2, X3) -> mark# X1,
                     mark# U92(X1, X2, X3) -> active# U92(mark X1, X2, X3),
                     mark# U91(X1, X2, X3) -> mark# X1,
                     mark# U91(X1, X2, X3) -> active# U91(mark X1, X2, X3),
                     mark# U93(X1, X2, X3) -> mark# X1,
                     mark# U93(X1, X2, X3) -> active# U93(mark X1, X2, X3),
                     mark# U94(X1, X2, X3) -> mark# X1,
                     mark# U94(X1, X2, X3) -> active# U94(mark X1, X2, X3),
                         mark# U95(X1, X2) -> mark# X1,
                         mark# U95(X1, X2) -> active# U95(mark X1, X2),
                               mark# U96 X -> mark# X,
                           active# zeros() -> mark# cons(0(), zeros()),
                active# U102(tt(), V1, V2) -> mark# U103(isNatIListKind V2, V1, V2),
                    active# isNatKind s V1 -> mark# U81 isNatKind V1,
               active# isNatKind length V1 -> mark# U71 isNatIListKind V1,
                active# U101(tt(), V1, V2) -> mark# U102(isNatKind V1, V1, V2),
                active# U103(tt(), V1, V2) -> mark# U104(isNatIListKind V2, V1, V2),
       active# isNatIListKind cons(V1, V2) -> mark# U51(isNatKind V1, V2),
       active# isNatIListKind take(V1, V2) -> mark# U61(isNatKind V1, V2),
                active# U104(tt(), V1, V2) -> mark# U105(isNat V1, V2),
                    active# U105(tt(), V2) -> mark# U106 isNatIList V2,
                        active# isNat s V1 -> mark# U21(isNatKind V1, V1),
                   active# isNat length V1 -> mark# U11(isNatIListKind V1, V1),
                      active# isNatIList V -> mark# U31(isNatIListKind V, V),
           active# isNatIList cons(V1, V2) -> mark# U41(isNatKind V1, V1, V2),
                     active# U12(tt(), V1) -> mark# U13 isNatList V1,
                     active# U11(tt(), V1) -> mark# U12(isNatIListKind V1, V1),
                  active# U112(tt(), L, N) -> mark# U113(isNat N, L, N),
                  active# U111(tt(), L, N) -> mark# U112(isNatIListKind L, L, N),
                  active# U113(tt(), L, N) -> mark# U114(isNatKind N, L),
                     active# U114(tt(), L) -> mark# s length L,
                 active# length cons(N, L) -> mark# U111(isNatList L, L, N),
            active# isNatList cons(V1, V2) -> mark# U91(isNatKind V1, V1, V2),
            active# isNatList take(V1, V2) -> mark# U101(isNatKind V1, V1, V2),
                    active# U121(tt(), IL) -> mark# U122 isNatIListKind IL,
              active# U132(tt(), IL, M, N) -> mark# U133(isNat M, IL, M, N),
              active# U131(tt(), IL, M, N) -> mark# U132(isNatIListKind IL, IL, M, N),
              active# U133(tt(), IL, M, N) -> mark# U134(isNatKind M, IL, M, N),
              active# U134(tt(), IL, M, N) -> mark# U135(isNat N, IL, M, N),
              active# U135(tt(), IL, M, N) -> mark# U136(isNatKind N, IL, M, N),
              active# U136(tt(), IL, M, N) -> mark# cons(N, take(M, IL)),
                     active# take(0(), IL) -> mark# U121(isNatIList IL, IL),
            active# take(s M, cons(N, IL)) -> mark# U131(isNatIList IL, IL, M, N),
                     active# U22(tt(), V1) -> mark# U23 isNat V1,
                     active# U21(tt(), V1) -> mark# U22(isNatKind V1, V1),
                      active# U32(tt(), V) -> mark# U33 isNatList V,
                      active# U31(tt(), V) -> mark# U32(isNatIListKind V, V),
                 active# U42(tt(), V1, V2) -> mark# U43(isNatIListKind V2, V1, V2),
                 active# U41(tt(), V1, V2) -> mark# U42(isNatKind V1, V1, V2),
                 active# U43(tt(), V1, V2) -> mark# U44(isNatIListKind V2, V1, V2),
                 active# U44(tt(), V1, V2) -> mark# U45(isNat V1, V2),
                     active# U45(tt(), V2) -> mark# U46 isNatIList V2,
                     active# U51(tt(), V2) -> mark# U52 isNatIListKind V2,
                     active# U61(tt(), V2) -> mark# U62 isNatIListKind V2,
                 active# U92(tt(), V1, V2) -> mark# U93(isNatIListKind V2, V1, V2),
                 active# U91(tt(), V1, V2) -> mark# U92(isNatKind V1, V1, V2),
                 active# U93(tt(), V1, V2) -> mark# U94(isNatIListKind V2, V1, V2),
                 active# U94(tt(), V1, V2) -> mark# U95(isNat V1, V2),
                     active# U95(tt(), V2) -> mark# U96 isNatList V2}
     Scc:
      {  isNat# mark X -> isNat# X,
       isNat# active X -> isNat# X}
     Scc:
      {  U96# mark X -> U96# X,
       U96# active X -> U96# X}
     Scc:
      {  U95#(X1, mark X2) -> U95#(X1, X2),
       U95#(X1, active X2) -> U95#(X1, X2),
         U95#(mark X1, X2) -> U95#(X1, X2),
       U95#(active X1, X2) -> U95#(X1, X2)}
     Scc:
      {  U94#(X1, X2, mark X3) -> U94#(X1, X2, X3),
       U94#(X1, X2, active X3) -> U94#(X1, X2, X3),
         U94#(X1, mark X2, X3) -> U94#(X1, X2, X3),
       U94#(X1, active X2, X3) -> U94#(X1, X2, X3),
         U94#(mark X1, X2, X3) -> U94#(X1, X2, X3),
       U94#(active X1, X2, X3) -> U94#(X1, X2, X3)}
     Scc:
      {  U93#(X1, X2, mark X3) -> U93#(X1, X2, X3),
       U93#(X1, X2, active X3) -> U93#(X1, X2, X3),
         U93#(X1, mark X2, X3) -> U93#(X1, X2, X3),
       U93#(X1, active X2, X3) -> U93#(X1, X2, X3),
         U93#(mark X1, X2, X3) -> U93#(X1, X2, X3),
       U93#(active X1, X2, X3) -> U93#(X1, X2, X3)}
     Scc:
      {  U91#(X1, X2, mark X3) -> U91#(X1, X2, X3),
       U91#(X1, X2, active X3) -> U91#(X1, X2, X3),
         U91#(X1, mark X2, X3) -> U91#(X1, X2, X3),
       U91#(X1, active X2, X3) -> U91#(X1, X2, X3),
         U91#(mark X1, X2, X3) -> U91#(X1, X2, X3),
       U91#(active X1, X2, X3) -> U91#(X1, X2, X3)}
     Scc:
      {  U92#(X1, X2, mark X3) -> U92#(X1, X2, X3),
       U92#(X1, X2, active X3) -> U92#(X1, X2, X3),
         U92#(X1, mark X2, X3) -> U92#(X1, X2, X3),
       U92#(X1, active X2, X3) -> U92#(X1, X2, X3),
         U92#(mark X1, X2, X3) -> U92#(X1, X2, X3),
       U92#(active X1, X2, X3) -> U92#(X1, X2, X3)}
     Scc:
      {  U81# mark X -> U81# X,
       U81# active X -> U81# X}
     Scc:
      {  U71# mark X -> U71# X,
       U71# active X -> U71# X}
     Scc:
      {  U61#(X1, mark X2) -> U61#(X1, X2),
       U61#(X1, active X2) -> U61#(X1, X2),
         U61#(mark X1, X2) -> U61#(X1, X2),
       U61#(active X1, X2) -> U61#(X1, X2)}
     Scc:
      {  U62# mark X -> U62# X,
       U62# active X -> U62# X}
     Scc:
      {  U51#(X1, mark X2) -> U51#(X1, X2),
       U51#(X1, active X2) -> U51#(X1, X2),
         U51#(mark X1, X2) -> U51#(X1, X2),
       U51#(active X1, X2) -> U51#(X1, X2)}
     Scc:
      {  U52# mark X -> U52# X,
       U52# active X -> U52# X}
     Scc:
      {  U46# mark X -> U46# X,
       U46# active X -> U46# X}
     Scc:
      {  U45#(X1, mark X2) -> U45#(X1, X2),
       U45#(X1, active X2) -> U45#(X1, X2),
         U45#(mark X1, X2) -> U45#(X1, X2),
       U45#(active X1, X2) -> U45#(X1, X2)}
     Scc:
      {  U44#(X1, X2, mark X3) -> U44#(X1, X2, X3),
       U44#(X1, X2, active X3) -> U44#(X1, X2, X3),
         U44#(X1, mark X2, X3) -> U44#(X1, X2, X3),
       U44#(X1, active X2, X3) -> U44#(X1, X2, X3),
         U44#(mark X1, X2, X3) -> U44#(X1, X2, X3),
       U44#(active X1, X2, X3) -> U44#(X1, X2, X3)}
     Scc:
      {  U43#(X1, X2, mark X3) -> U43#(X1, X2, X3),
       U43#(X1, X2, active X3) -> U43#(X1, X2, X3),
         U43#(X1, mark X2, X3) -> U43#(X1, X2, X3),
       U43#(X1, active X2, X3) -> U43#(X1, X2, X3),
         U43#(mark X1, X2, X3) -> U43#(X1, X2, X3),
       U43#(active X1, X2, X3) -> U43#(X1, X2, X3)}
     Scc:
      {  U41#(X1, X2, mark X3) -> U41#(X1, X2, X3),
       U41#(X1, X2, active X3) -> U41#(X1, X2, X3),
         U41#(X1, mark X2, X3) -> U41#(X1, X2, X3),
       U41#(X1, active X2, X3) -> U41#(X1, X2, X3),
         U41#(mark X1, X2, X3) -> U41#(X1, X2, X3),
       U41#(active X1, X2, X3) -> U41#(X1, X2, X3)}
     Scc:
      {  U42#(X1, X2, mark X3) -> U42#(X1, X2, X3),
       U42#(X1, X2, active X3) -> U42#(X1, X2, X3),
         U42#(X1, mark X2, X3) -> U42#(X1, X2, X3),
       U42#(X1, active X2, X3) -> U42#(X1, X2, X3),
         U42#(mark X1, X2, X3) -> U42#(X1, X2, X3),
       U42#(active X1, X2, X3) -> U42#(X1, X2, X3)}
     Scc:
      {  U33# mark X -> U33# X,
       U33# active X -> U33# X}
     Scc:
      {  U31#(X1, mark X2) -> U31#(X1, X2),
       U31#(X1, active X2) -> U31#(X1, X2),
         U31#(mark X1, X2) -> U31#(X1, X2),
       U31#(active X1, X2) -> U31#(X1, X2)}
     Scc:
      {  U32#(X1, mark X2) -> U32#(X1, X2),
       U32#(X1, active X2) -> U32#(X1, X2),
         U32#(mark X1, X2) -> U32#(X1, X2),
       U32#(active X1, X2) -> U32#(X1, X2)}
     Scc:
      {  U23# mark X -> U23# X,
       U23# active X -> U23# X}
     Scc:
      {  U21#(X1, mark X2) -> U21#(X1, X2),
       U21#(X1, active X2) -> U21#(X1, X2),
         U21#(mark X1, X2) -> U21#(X1, X2),
       U21#(active X1, X2) -> U21#(X1, X2)}
     Scc:
      {  U22#(X1, mark X2) -> U22#(X1, X2),
       U22#(X1, active X2) -> U22#(X1, X2),
         U22#(mark X1, X2) -> U22#(X1, X2),
       U22#(active X1, X2) -> U22#(X1, X2)}
     Scc:
      {  isNatIList# mark X -> isNatIList# X,
       isNatIList# active X -> isNatIList# X}
     Scc:
      {  U136#(X1, X2, X3, mark X4) -> U136#(X1, X2, X3, X4),
       U136#(X1, X2, X3, active X4) -> U136#(X1, X2, X3, X4),
         U136#(X1, X2, mark X3, X4) -> U136#(X1, X2, X3, X4),
       U136#(X1, X2, active X3, X4) -> U136#(X1, X2, X3, X4),
         U136#(X1, mark X2, X3, X4) -> U136#(X1, X2, X3, X4),
       U136#(X1, active X2, X3, X4) -> U136#(X1, X2, X3, X4),
         U136#(mark X1, X2, X3, X4) -> U136#(X1, X2, X3, X4),
       U136#(active X1, X2, X3, X4) -> U136#(X1, X2, X3, X4)}
     Scc:
      {  U135#(X1, X2, X3, mark X4) -> U135#(X1, X2, X3, X4),
       U135#(X1, X2, X3, active X4) -> U135#(X1, X2, X3, X4),
         U135#(X1, X2, mark X3, X4) -> U135#(X1, X2, X3, X4),
       U135#(X1, X2, active X3, X4) -> U135#(X1, X2, X3, X4),
         U135#(X1, mark X2, X3, X4) -> U135#(X1, X2, X3, X4),
       U135#(X1, active X2, X3, X4) -> U135#(X1, X2, X3, X4),
         U135#(mark X1, X2, X3, X4) -> U135#(X1, X2, X3, X4),
       U135#(active X1, X2, X3, X4) -> U135#(X1, X2, X3, X4)}
     Scc:
      {  U134#(X1, X2, X3, mark X4) -> U134#(X1, X2, X3, X4),
       U134#(X1, X2, X3, active X4) -> U134#(X1, X2, X3, X4),
         U134#(X1, X2, mark X3, X4) -> U134#(X1, X2, X3, X4),
       U134#(X1, X2, active X3, X4) -> U134#(X1, X2, X3, X4),
         U134#(X1, mark X2, X3, X4) -> U134#(X1, X2, X3, X4),
       U134#(X1, active X2, X3, X4) -> U134#(X1, X2, X3, X4),
         U134#(mark X1, X2, X3, X4) -> U134#(X1, X2, X3, X4),
       U134#(active X1, X2, X3, X4) -> U134#(X1, X2, X3, X4)}
     Scc:
      {  U133#(X1, X2, X3, mark X4) -> U133#(X1, X2, X3, X4),
       U133#(X1, X2, X3, active X4) -> U133#(X1, X2, X3, X4),
         U133#(X1, X2, mark X3, X4) -> U133#(X1, X2, X3, X4),
       U133#(X1, X2, active X3, X4) -> U133#(X1, X2, X3, X4),
         U133#(X1, mark X2, X3, X4) -> U133#(X1, X2, X3, X4),
       U133#(X1, active X2, X3, X4) -> U133#(X1, X2, X3, X4),
         U133#(mark X1, X2, X3, X4) -> U133#(X1, X2, X3, X4),
       U133#(active X1, X2, X3, X4) -> U133#(X1, X2, X3, X4)}
     Scc:
      {  U131#(X1, X2, X3, mark X4) -> U131#(X1, X2, X3, X4),
       U131#(X1, X2, X3, active X4) -> U131#(X1, X2, X3, X4),
         U131#(X1, X2, mark X3, X4) -> U131#(X1, X2, X3, X4),
       U131#(X1, X2, active X3, X4) -> U131#(X1, X2, X3, X4),
         U131#(X1, mark X2, X3, X4) -> U131#(X1, X2, X3, X4),
       U131#(X1, active X2, X3, X4) -> U131#(X1, X2, X3, X4),
         U131#(mark X1, X2, X3, X4) -> U131#(X1, X2, X3, X4),
       U131#(active X1, X2, X3, X4) -> U131#(X1, X2, X3, X4)}
     Scc:
      {  U132#(X1, X2, X3, mark X4) -> U132#(X1, X2, X3, X4),
       U132#(X1, X2, X3, active X4) -> U132#(X1, X2, X3, X4),
         U132#(X1, X2, mark X3, X4) -> U132#(X1, X2, X3, X4),
       U132#(X1, X2, active X3, X4) -> U132#(X1, X2, X3, X4),
         U132#(X1, mark X2, X3, X4) -> U132#(X1, X2, X3, X4),
       U132#(X1, active X2, X3, X4) -> U132#(X1, X2, X3, X4),
         U132#(mark X1, X2, X3, X4) -> U132#(X1, X2, X3, X4),
       U132#(active X1, X2, X3, X4) -> U132#(X1, X2, X3, X4)}
     Scc:
      {  U121#(X1, mark X2) -> U121#(X1, X2),
       U121#(X1, active X2) -> U121#(X1, X2),
         U121#(mark X1, X2) -> U121#(X1, X2),
       U121#(active X1, X2) -> U121#(X1, X2)}
     Scc:
      {  U122# mark X -> U122# X,
       U122# active X -> U122# X}
     Scc:
      {  U13# mark X -> U13# X,
       U13# active X -> U13# X}
     Scc:
      {  length# mark X -> length# X,
       length# active X -> length# X}
     Scc:
      {  isNatList# mark X -> isNatList# X,
       isNatList# active X -> isNatList# X}
     Scc:
      {  s# mark X -> s# X,
       s# active X -> s# X}
     Scc:
      {  U114#(X1, mark X2) -> U114#(X1, X2),
       U114#(X1, active X2) -> U114#(X1, X2),
         U114#(mark X1, X2) -> U114#(X1, X2),
       U114#(active X1, X2) -> U114#(X1, X2)}
     Scc:
      {  U113#(X1, X2, mark X3) -> U113#(X1, X2, X3),
       U113#(X1, X2, active X3) -> U113#(X1, X2, X3),
         U113#(X1, mark X2, X3) -> U113#(X1, X2, X3),
       U113#(X1, active X2, X3) -> U113#(X1, X2, X3),
         U113#(mark X1, X2, X3) -> U113#(X1, X2, X3),
       U113#(active X1, X2, X3) -> U113#(X1, X2, X3)}
     Scc:
      {  U111#(X1, X2, mark X3) -> U111#(X1, X2, X3),
       U111#(X1, X2, active X3) -> U111#(X1, X2, X3),
         U111#(X1, mark X2, X3) -> U111#(X1, X2, X3),
       U111#(X1, active X2, X3) -> U111#(X1, X2, X3),
         U111#(mark X1, X2, X3) -> U111#(X1, X2, X3),
       U111#(active X1, X2, X3) -> U111#(X1, X2, X3)}
     Scc:
      {  U112#(X1, X2, mark X3) -> U112#(X1, X2, X3),
       U112#(X1, X2, active X3) -> U112#(X1, X2, X3),
         U112#(X1, mark X2, X3) -> U112#(X1, X2, X3),
       U112#(X1, active X2, X3) -> U112#(X1, X2, X3),
         U112#(mark X1, X2, X3) -> U112#(X1, X2, X3),
       U112#(active X1, X2, X3) -> U112#(X1, X2, X3)}
     Scc:
      {  U11#(X1, mark X2) -> U11#(X1, X2),
       U11#(X1, active X2) -> U11#(X1, X2),
         U11#(mark X1, X2) -> U11#(X1, X2),
       U11#(active X1, X2) -> U11#(X1, X2)}
     Scc:
      {  isNatIListKind# mark X -> isNatIListKind# X,
       isNatIListKind# active X -> isNatIListKind# X}
     Scc:
      {  U12#(X1, mark X2) -> U12#(X1, X2),
       U12#(X1, active X2) -> U12#(X1, X2),
         U12#(mark X1, X2) -> U12#(X1, X2),
       U12#(active X1, X2) -> U12#(X1, X2)}
     Scc:
      {  U106# mark X -> U106# X,
       U106# active X -> U106# X}
     Scc:
      {  U105#(X1, mark X2) -> U105#(X1, X2),
       U105#(X1, active X2) -> U105#(X1, X2),
         U105#(mark X1, X2) -> U105#(X1, X2),
       U105#(active X1, X2) -> U105#(X1, X2)}
     Scc:
      {  U104#(X1, X2, mark X3) -> U104#(X1, X2, X3),
       U104#(X1, X2, active X3) -> U104#(X1, X2, X3),
         U104#(X1, mark X2, X3) -> U104#(X1, X2, X3),
       U104#(X1, active X2, X3) -> U104#(X1, X2, X3),
         U104#(mark X1, X2, X3) -> U104#(X1, X2, X3),
       U104#(active X1, X2, X3) -> U104#(X1, X2, X3)}
     Scc:
      {  U103#(X1, X2, mark X3) -> U103#(X1, X2, X3),
       U103#(X1, X2, active X3) -> U103#(X1, X2, X3),
         U103#(X1, mark X2, X3) -> U103#(X1, X2, X3),
       U103#(X1, active X2, X3) -> U103#(X1, X2, X3),
         U103#(mark X1, X2, X3) -> U103#(X1, X2, X3),
       U103#(active X1, X2, X3) -> U103#(X1, X2, X3)}
     Scc:
      {  U101#(X1, X2, mark X3) -> U101#(X1, X2, X3),
       U101#(X1, X2, active X3) -> U101#(X1, X2, X3),
         U101#(X1, mark X2, X3) -> U101#(X1, X2, X3),
       U101#(X1, active X2, X3) -> U101#(X1, X2, X3),
         U101#(mark X1, X2, X3) -> U101#(X1, X2, X3),
       U101#(active X1, X2, X3) -> U101#(X1, X2, X3)}
     Scc:
      {  isNatKind# mark X -> isNatKind# X,
       isNatKind# active X -> isNatKind# X}
     Scc:
      {  U102#(X1, X2, mark X3) -> U102#(X1, X2, X3),
       U102#(X1, X2, active X3) -> U102#(X1, X2, X3),
         U102#(X1, mark X2, X3) -> U102#(X1, X2, X3),
       U102#(X1, active X2, X3) -> U102#(X1, X2, X3),
         U102#(mark X1, X2, X3) -> U102#(X1, X2, X3),
       U102#(active X1, X2, X3) -> U102#(X1, X2, X3)}
     Scc:
      {  cons#(X1, mark X2) -> cons#(X1, X2),
       cons#(X1, active X2) -> cons#(X1, X2),
         cons#(mark X1, X2) -> cons#(X1, X2),
       cons#(active X1, X2) -> cons#(X1, X2)}
     Scc:
      {  take#(X1, mark X2) -> take#(X1, X2),
       take#(X1, active X2) -> take#(X1, X2),
         take#(mark X1, X2) -> take#(X1, X2),
       take#(active X1, X2) -> take#(X1, X2)}
     
     SCC (140):
      Strict:
       {                 mark# cons(X1, X2) -> mark# X1,
                              mark# zeros() -> active# zeros(),
                     mark# U102(X1, X2, X3) -> mark# X1,
                     mark# U102(X1, X2, X3) -> active# U102(mark X1, X2, X3),
                          mark# isNatKind X -> active# isNatKind X,
                     mark# U101(X1, X2, X3) -> mark# X1,
                     mark# U101(X1, X2, X3) -> active# U101(mark X1, X2, X3),
                     mark# U103(X1, X2, X3) -> mark# X1,
                     mark# U103(X1, X2, X3) -> active# U103(mark X1, X2, X3),
                     mark# isNatIListKind X -> active# isNatIListKind X,
                     mark# U104(X1, X2, X3) -> mark# X1,
                     mark# U104(X1, X2, X3) -> active# U104(mark X1, X2, X3),
                         mark# U105(X1, X2) -> mark# X1,
                         mark# U105(X1, X2) -> active# U105(mark X1, X2),
                              mark# isNat X -> active# isNat X,
                               mark# U106 X -> mark# X,
                         mark# isNatIList X -> active# isNatIList X,
                          mark# U12(X1, X2) -> mark# X1,
                          mark# U12(X1, X2) -> active# U12(mark X1, X2),
                          mark# U11(X1, X2) -> mark# X1,
                          mark# U11(X1, X2) -> active# U11(mark X1, X2),
                     mark# U112(X1, X2, X3) -> mark# X1,
                     mark# U112(X1, X2, X3) -> active# U112(mark X1, X2, X3),
                     mark# U111(X1, X2, X3) -> mark# X1,
                     mark# U111(X1, X2, X3) -> active# U111(mark X1, X2, X3),
                     mark# U113(X1, X2, X3) -> mark# X1,
                     mark# U113(X1, X2, X3) -> active# U113(mark X1, X2, X3),
                         mark# U114(X1, X2) -> mark# X1,
                         mark# U114(X1, X2) -> active# U114(mark X1, X2),
                                  mark# s X -> mark# X,
                             mark# length X -> mark# X,
                             mark# length X -> active# length mark X,
                                mark# U13 X -> mark# X,
                          mark# isNatList X -> active# isNatList X,
                               mark# U122 X -> mark# X,
                         mark# U121(X1, X2) -> mark# X1,
                         mark# U121(X1, X2) -> active# U121(mark X1, X2),
                 mark# U132(X1, X2, X3, X4) -> mark# X1,
                 mark# U132(X1, X2, X3, X4) -> active# U132(mark X1, X2, X3, X4),
                 mark# U131(X1, X2, X3, X4) -> mark# X1,
                 mark# U131(X1, X2, X3, X4) -> active# U131(mark X1, X2, X3, X4),
                 mark# U133(X1, X2, X3, X4) -> mark# X1,
                 mark# U133(X1, X2, X3, X4) -> active# U133(mark X1, X2, X3, X4),
                 mark# U134(X1, X2, X3, X4) -> mark# X1,
                 mark# U134(X1, X2, X3, X4) -> active# U134(mark X1, X2, X3, X4),
                 mark# U135(X1, X2, X3, X4) -> mark# X1,
                 mark# U135(X1, X2, X3, X4) -> active# U135(mark X1, X2, X3, X4),
                 mark# U136(X1, X2, X3, X4) -> mark# X1,
                 mark# U136(X1, X2, X3, X4) -> active# U136(mark X1, X2, X3, X4),
                         mark# take(X1, X2) -> mark# X1,
                         mark# take(X1, X2) -> mark# X2,
                         mark# take(X1, X2) -> active# take(mark X1, mark X2),
                          mark# U22(X1, X2) -> mark# X1,
                          mark# U22(X1, X2) -> active# U22(mark X1, X2),
                          mark# U21(X1, X2) -> mark# X1,
                          mark# U21(X1, X2) -> active# U21(mark X1, X2),
                                mark# U23 X -> mark# X,
                          mark# U32(X1, X2) -> mark# X1,
                          mark# U32(X1, X2) -> active# U32(mark X1, X2),
                          mark# U31(X1, X2) -> mark# X1,
                          mark# U31(X1, X2) -> active# U31(mark X1, X2),
                                mark# U33 X -> mark# X,
                      mark# U42(X1, X2, X3) -> mark# X1,
                      mark# U42(X1, X2, X3) -> active# U42(mark X1, X2, X3),
                      mark# U41(X1, X2, X3) -> mark# X1,
                      mark# U41(X1, X2, X3) -> active# U41(mark X1, X2, X3),
                      mark# U43(X1, X2, X3) -> mark# X1,
                      mark# U43(X1, X2, X3) -> active# U43(mark X1, X2, X3),
                      mark# U44(X1, X2, X3) -> mark# X1,
                      mark# U44(X1, X2, X3) -> active# U44(mark X1, X2, X3),
                          mark# U45(X1, X2) -> mark# X1,
                          mark# U45(X1, X2) -> active# U45(mark X1, X2),
                                mark# U46 X -> mark# X,
                                mark# U52 X -> mark# X,
                          mark# U51(X1, X2) -> mark# X1,
                          mark# U51(X1, X2) -> active# U51(mark X1, X2),
                                mark# U62 X -> mark# X,
                          mark# U61(X1, X2) -> mark# X1,
                          mark# U61(X1, X2) -> active# U61(mark X1, X2),
                                mark# U71 X -> mark# X,
                                mark# U81 X -> mark# X,
                      mark# U92(X1, X2, X3) -> mark# X1,
                      mark# U92(X1, X2, X3) -> active# U92(mark X1, X2, X3),
                      mark# U91(X1, X2, X3) -> mark# X1,
                      mark# U91(X1, X2, X3) -> active# U91(mark X1, X2, X3),
                      mark# U93(X1, X2, X3) -> mark# X1,
                      mark# U93(X1, X2, X3) -> active# U93(mark X1, X2, X3),
                      mark# U94(X1, X2, X3) -> mark# X1,
                      mark# U94(X1, X2, X3) -> active# U94(mark X1, X2, X3),
                          mark# U95(X1, X2) -> mark# X1,
                          mark# U95(X1, X2) -> active# U95(mark X1, X2),
                                mark# U96 X -> mark# X,
                            active# zeros() -> mark# cons(0(), zeros()),
                 active# U102(tt(), V1, V2) -> mark# U103(isNatIListKind V2, V1, V2),
                     active# isNatKind s V1 -> mark# U81 isNatKind V1,
                active# isNatKind length V1 -> mark# U71 isNatIListKind V1,
                 active# U101(tt(), V1, V2) -> mark# U102(isNatKind V1, V1, V2),
                 active# U103(tt(), V1, V2) -> mark# U104(isNatIListKind V2, V1, V2),
        active# isNatIListKind cons(V1, V2) -> mark# U51(isNatKind V1, V2),
        active# isNatIListKind take(V1, V2) -> mark# U61(isNatKind V1, V2),
                 active# U104(tt(), V1, V2) -> mark# U105(isNat V1, V2),
                     active# U105(tt(), V2) -> mark# U106 isNatIList V2,
                         active# isNat s V1 -> mark# U21(isNatKind V1, V1),
                    active# isNat length V1 -> mark# U11(isNatIListKind V1, V1),
                       active# isNatIList V -> mark# U31(isNatIListKind V, V),
            active# isNatIList cons(V1, V2) -> mark# U41(isNatKind V1, V1, V2),
                      active# U12(tt(), V1) -> mark# U13 isNatList V1,
                      active# U11(tt(), V1) -> mark# U12(isNatIListKind V1, V1),
                   active# U112(tt(), L, N) -> mark# U113(isNat N, L, N),
                   active# U111(tt(), L, N) -> mark# U112(isNatIListKind L, L, N),
                   active# U113(tt(), L, N) -> mark# U114(isNatKind N, L),
                      active# U114(tt(), L) -> mark# s length L,
                  active# length cons(N, L) -> mark# U111(isNatList L, L, N),
             active# isNatList cons(V1, V2) -> mark# U91(isNatKind V1, V1, V2),
             active# isNatList take(V1, V2) -> mark# U101(isNatKind V1, V1, V2),
                     active# U121(tt(), IL) -> mark# U122 isNatIListKind IL,
               active# U132(tt(), IL, M, N) -> mark# U133(isNat M, IL, M, N),
               active# U131(tt(), IL, M, N) -> mark# U132(isNatIListKind IL, IL, M, N),
               active# U133(tt(), IL, M, N) -> mark# U134(isNatKind M, IL, M, N),
               active# U134(tt(), IL, M, N) -> mark# U135(isNat N, IL, M, N),
               active# U135(tt(), IL, M, N) -> mark# U136(isNatKind N, IL, M, N),
               active# U136(tt(), IL, M, N) -> mark# cons(N, take(M, IL)),
                      active# take(0(), IL) -> mark# U121(isNatIList IL, IL),
             active# take(s M, cons(N, IL)) -> mark# U131(isNatIList IL, IL, M, N),
                      active# U22(tt(), V1) -> mark# U23 isNat V1,
                      active# U21(tt(), V1) -> mark# U22(isNatKind V1, V1),
                       active# U32(tt(), V) -> mark# U33 isNatList V,
                       active# U31(tt(), V) -> mark# U32(isNatIListKind V, V),
                  active# U42(tt(), V1, V2) -> mark# U43(isNatIListKind V2, V1, V2),
                  active# U41(tt(), V1, V2) -> mark# U42(isNatKind V1, V1, V2),
                  active# U43(tt(), V1, V2) -> mark# U44(isNatIListKind V2, V1, V2),
                  active# U44(tt(), V1, V2) -> mark# U45(isNat V1, V2),
                      active# U45(tt(), V2) -> mark# U46 isNatIList V2,
                      active# U51(tt(), V2) -> mark# U52 isNatIListKind V2,
                      active# U61(tt(), V2) -> mark# U62 isNatIListKind V2,
                  active# U92(tt(), V1, V2) -> mark# U93(isNatIListKind V2, V1, V2),
                  active# U91(tt(), V1, V2) -> mark# U92(isNatKind V1, V1, V2),
                  active# U93(tt(), V1, V2) -> mark# U94(isNatIListKind V2, V1, V2),
                  active# U94(tt(), V1, V2) -> mark# U95(isNat V1, V2),
                      active# U95(tt(), V2) -> mark# U96 isNatList V2}
      Weak:
      {
                        mark cons(X1, X2) -> active cons(mark X1, X2),
                                 mark 0() -> active 0(),
                             mark zeros() -> active zeros(),
                    mark U102(X1, X2, X3) -> active U102(mark X1, X2, X3),
                         mark isNatKind X -> active isNatKind X,
                    mark U101(X1, X2, X3) -> active U101(mark X1, X2, X3),
                                mark tt() -> active tt(),
                    mark U103(X1, X2, X3) -> active U103(mark X1, X2, X3),
                    mark isNatIListKind X -> active isNatIListKind X,
                    mark U104(X1, X2, X3) -> active U104(mark X1, X2, X3),
                        mark U105(X1, X2) -> active U105(mark X1, X2),
                             mark isNat X -> active isNat X,
                              mark U106 X -> active U106 mark X,
                        mark isNatIList X -> active isNatIList X,
                         mark U12(X1, X2) -> active U12(mark X1, X2),
                         mark U11(X1, X2) -> active U11(mark X1, X2),
                    mark U112(X1, X2, X3) -> active U112(mark X1, X2, X3),
                    mark U111(X1, X2, X3) -> active U111(mark X1, X2, X3),
                    mark U113(X1, X2, X3) -> active U113(mark X1, X2, X3),
                        mark U114(X1, X2) -> active U114(mark X1, X2),
                                 mark s X -> active s mark X,
                            mark length X -> active length mark X,
                               mark U13 X -> active U13 mark X,
                         mark isNatList X -> active isNatList X,
                              mark U122 X -> active U122 mark X,
                        mark U121(X1, X2) -> active U121(mark X1, X2),
                               mark nil() -> active nil(),
                mark U132(X1, X2, X3, X4) -> active U132(mark X1, X2, X3, X4),
                mark U131(X1, X2, X3, X4) -> active U131(mark X1, X2, X3, X4),
                mark U133(X1, X2, X3, X4) -> active U133(mark X1, X2, X3, X4),
                mark U134(X1, X2, X3, X4) -> active U134(mark X1, X2, X3, X4),
                mark U135(X1, X2, X3, X4) -> active U135(mark X1, X2, X3, X4),
                mark U136(X1, X2, X3, X4) -> active U136(mark X1, X2, X3, X4),
                        mark take(X1, X2) -> active take(mark X1, mark X2),
                         mark U22(X1, X2) -> active U22(mark X1, X2),
                         mark U21(X1, X2) -> active U21(mark X1, X2),
                               mark U23 X -> active U23 mark X,
                         mark U32(X1, X2) -> active U32(mark X1, X2),
                         mark U31(X1, X2) -> active U31(mark X1, X2),
                               mark U33 X -> active U33 mark X,
                     mark U42(X1, X2, X3) -> active U42(mark X1, X2, X3),
                     mark U41(X1, X2, X3) -> active U41(mark X1, X2, X3),
                     mark U43(X1, X2, X3) -> active U43(mark X1, X2, X3),
                     mark U44(X1, X2, X3) -> active U44(mark X1, X2, X3),
                         mark U45(X1, X2) -> active U45(mark X1, X2),
                               mark U46 X -> active U46 mark X,
                               mark U52 X -> active U52 mark X,
                         mark U51(X1, X2) -> active U51(mark X1, X2),
                               mark U62 X -> active U62 mark X,
                         mark U61(X1, X2) -> active U61(mark X1, X2),
                               mark U71 X -> active U71 mark X,
                               mark U81 X -> active U81 mark X,
                     mark U92(X1, X2, X3) -> active U92(mark X1, X2, X3),
                     mark U91(X1, X2, X3) -> active U91(mark X1, X2, X3),
                     mark U93(X1, X2, X3) -> active U93(mark X1, X2, X3),
                     mark U94(X1, X2, X3) -> active U94(mark X1, X2, X3),
                         mark U95(X1, X2) -> active U95(mark X1, X2),
                               mark U96 X -> active U96 mark X,
                        cons(X1, mark X2) -> cons(X1, X2),
                      cons(X1, active X2) -> cons(X1, X2),
                        cons(mark X1, X2) -> cons(X1, X2),
                      cons(active X1, X2) -> cons(X1, X2),
                           active zeros() -> mark cons(0(), zeros()),
                active U102(tt(), V1, V2) -> mark U103(isNatIListKind V2, V1, V2),
                     active isNatKind 0() -> mark tt(),
                    active isNatKind s V1 -> mark U81 isNatKind V1,
               active isNatKind length V1 -> mark U71 isNatIListKind V1,
                active U101(tt(), V1, V2) -> mark U102(isNatKind V1, V1, V2),
                active U103(tt(), V1, V2) -> mark U104(isNatIListKind V2, V1, V2),
       active isNatIListKind cons(V1, V2) -> mark U51(isNatKind V1, V2),
            active isNatIListKind zeros() -> mark tt(),
              active isNatIListKind nil() -> mark tt(),
       active isNatIListKind take(V1, V2) -> mark U61(isNatKind V1, V2),
                active U104(tt(), V1, V2) -> mark U105(isNat V1, V2),
                    active U105(tt(), V2) -> mark U106 isNatIList V2,
                         active isNat 0() -> mark tt(),
                        active isNat s V1 -> mark U21(isNatKind V1, V1),
                   active isNat length V1 -> mark U11(isNatIListKind V1, V1),
                         active U106 tt() -> mark tt(),
                      active isNatIList V -> mark U31(isNatIListKind V, V),
           active isNatIList cons(V1, V2) -> mark U41(isNatKind V1, V1, V2),
                active isNatIList zeros() -> mark tt(),
                     active U12(tt(), V1) -> mark U13 isNatList V1,
                     active U11(tt(), V1) -> mark U12(isNatIListKind V1, V1),
                  active U112(tt(), L, N) -> mark U113(isNat N, L, N),
                  active U111(tt(), L, N) -> mark U112(isNatIListKind L, L, N),
                  active U113(tt(), L, N) -> mark U114(isNatKind N, L),
                     active U114(tt(), L) -> mark s length L,
                 active length cons(N, L) -> mark U111(isNatList L, L, N),
                      active length nil() -> mark 0(),
                          active U13 tt() -> mark tt(),
            active isNatList cons(V1, V2) -> mark U91(isNatKind V1, V1, V2),
                   active isNatList nil() -> mark tt(),
            active isNatList take(V1, V2) -> mark U101(isNatKind V1, V1, V2),
                         active U122 tt() -> mark nil(),
                    active U121(tt(), IL) -> mark U122 isNatIListKind IL,
              active U132(tt(), IL, M, N) -> mark U133(isNat M, IL, M, N),
              active U131(tt(), IL, M, N) -> mark U132(isNatIListKind IL, IL, M, N),
              active U133(tt(), IL, M, N) -> mark U134(isNatKind M, IL, M, N),
              active U134(tt(), IL, M, N) -> mark U135(isNat N, IL, M, N),
              active U135(tt(), IL, M, N) -> mark U136(isNatKind N, IL, M, N),
              active U136(tt(), IL, M, N) -> mark cons(N, take(M, IL)),
                     active take(0(), IL) -> mark U121(isNatIList IL, IL),
            active take(s M, cons(N, IL)) -> mark U131(isNatIList IL, IL, M, N),
                     active U22(tt(), V1) -> mark U23 isNat V1,
                     active U21(tt(), V1) -> mark U22(isNatKind V1, V1),
                          active U23 tt() -> mark tt(),
                      active U32(tt(), V) -> mark U33 isNatList V,
                      active U31(tt(), V) -> mark U32(isNatIListKind V, V),
                          active U33 tt() -> mark tt(),
                 active U42(tt(), V1, V2) -> mark U43(isNatIListKind V2, V1, V2),
                 active U41(tt(), V1, V2) -> mark U42(isNatKind V1, V1, V2),
                 active U43(tt(), V1, V2) -> mark U44(isNatIListKind V2, V1, V2),
                 active U44(tt(), V1, V2) -> mark U45(isNat V1, V2),
                     active U45(tt(), V2) -> mark U46 isNatIList V2,
                          active U46 tt() -> mark tt(),
                          active U52 tt() -> mark tt(),
                     active U51(tt(), V2) -> mark U52 isNatIListKind V2,
                          active U62 tt() -> mark tt(),
                     active U61(tt(), V2) -> mark U62 isNatIListKind V2,
                          active U71 tt() -> mark tt(),
                          active U81 tt() -> mark tt(),
                 active U92(tt(), V1, V2) -> mark U93(isNatIListKind V2, V1, V2),
                 active U91(tt(), V1, V2) -> mark U92(isNatKind V1, V1, V2),
                 active U93(tt(), V1, V2) -> mark U94(isNatIListKind V2, V1, V2),
                 active U94(tt(), V1, V2) -> mark U95(isNat V1, V2),
                     active U95(tt(), V2) -> mark U96 isNatList V2,
                          active U96 tt() -> mark tt(),
                    U102(X1, X2, mark X3) -> U102(X1, X2, X3),
                  U102(X1, X2, active X3) -> U102(X1, X2, X3),
                    U102(X1, mark X2, X3) -> U102(X1, X2, X3),
                  U102(X1, active X2, X3) -> U102(X1, X2, X3),
                    U102(mark X1, X2, X3) -> U102(X1, X2, X3),
                  U102(active X1, X2, X3) -> U102(X1, X2, X3),
                         isNatKind mark X -> isNatKind X,
                       isNatKind active X -> isNatKind X,
                    U101(X1, X2, mark X3) -> U101(X1, X2, X3),
                  U101(X1, X2, active X3) -> U101(X1, X2, X3),
                    U101(X1, mark X2, X3) -> U101(X1, X2, X3),
                  U101(X1, active X2, X3) -> U101(X1, X2, X3),
                    U101(mark X1, X2, X3) -> U101(X1, X2, X3),
                  U101(active X1, X2, X3) -> U101(X1, X2, X3),
                    U103(X1, X2, mark X3) -> U103(X1, X2, X3),
                  U103(X1, X2, active X3) -> U103(X1, X2, X3),
                    U103(X1, mark X2, X3) -> U103(X1, X2, X3),
                  U103(X1, active X2, X3) -> U103(X1, X2, X3),
                    U103(mark X1, X2, X3) -> U103(X1, X2, X3),
                  U103(active X1, X2, X3) -> U103(X1, X2, X3),
                    isNatIListKind mark X -> isNatIListKind X,
                  isNatIListKind active X -> isNatIListKind X,
                    U104(X1, X2, mark X3) -> U104(X1, X2, X3),
                  U104(X1, X2, active X3) -> U104(X1, X2, X3),
                    U104(X1, mark X2, X3) -> U104(X1, X2, X3),
                  U104(X1, active X2, X3) -> U104(X1, X2, X3),
                    U104(mark X1, X2, X3) -> U104(X1, X2, X3),
                  U104(active X1, X2, X3) -> U104(X1, X2, X3),
                        U105(X1, mark X2) -> U105(X1, X2),
                      U105(X1, active X2) -> U105(X1, X2),
                        U105(mark X1, X2) -> U105(X1, X2),
                      U105(active X1, X2) -> U105(X1, X2),
                             isNat mark X -> isNat X,
                           isNat active X -> isNat X,
                              U106 mark X -> U106 X,
                            U106 active X -> U106 X,
                        isNatIList mark X -> isNatIList X,
                      isNatIList active X -> isNatIList X,
                         U12(X1, mark X2) -> U12(X1, X2),
                       U12(X1, active X2) -> U12(X1, X2),
                         U12(mark X1, X2) -> U12(X1, X2),
                       U12(active X1, X2) -> U12(X1, X2),
                         U11(X1, mark X2) -> U11(X1, X2),
                       U11(X1, active X2) -> U11(X1, X2),
                         U11(mark X1, X2) -> U11(X1, X2),
                       U11(active X1, X2) -> U11(X1, X2),
                    U112(X1, X2, mark X3) -> U112(X1, X2, X3),
                  U112(X1, X2, active X3) -> U112(X1, X2, X3),
                    U112(X1, mark X2, X3) -> U112(X1, X2, X3),
                  U112(X1, active X2, X3) -> U112(X1, X2, X3),
                    U112(mark X1, X2, X3) -> U112(X1, X2, X3),
                  U112(active X1, X2, X3) -> U112(X1, X2, X3),
                    U111(X1, X2, mark X3) -> U111(X1, X2, X3),
                  U111(X1, X2, active X3) -> U111(X1, X2, X3),
                    U111(X1, mark X2, X3) -> U111(X1, X2, X3),
                  U111(X1, active X2, X3) -> U111(X1, X2, X3),
                    U111(mark X1, X2, X3) -> U111(X1, X2, X3),
                  U111(active X1, X2, X3) -> U111(X1, X2, X3),
                    U113(X1, X2, mark X3) -> U113(X1, X2, X3),
                  U113(X1, X2, active X3) -> U113(X1, X2, X3),
                    U113(X1, mark X2, X3) -> U113(X1, X2, X3),
                  U113(X1, active X2, X3) -> U113(X1, X2, X3),
                    U113(mark X1, X2, X3) -> U113(X1, X2, X3),
                  U113(active X1, X2, X3) -> U113(X1, X2, X3),
                        U114(X1, mark X2) -> U114(X1, X2),
                      U114(X1, active X2) -> U114(X1, X2),
                        U114(mark X1, X2) -> U114(X1, X2),
                      U114(active X1, X2) -> U114(X1, X2),
                                 s mark X -> s X,
                               s active X -> s X,
                            length mark X -> length X,
                          length active X -> length X,
                               U13 mark X -> U13 X,
                             U13 active X -> U13 X,
                         isNatList mark X -> isNatList X,
                       isNatList active X -> isNatList X,
                              U122 mark X -> U122 X,
                            U122 active X -> U122 X,
                        U121(X1, mark X2) -> U121(X1, X2),
                      U121(X1, active X2) -> U121(X1, X2),
                        U121(mark X1, X2) -> U121(X1, X2),
                      U121(active X1, X2) -> U121(X1, X2),
                U132(X1, X2, X3, mark X4) -> U132(X1, X2, X3, X4),
              U132(X1, X2, X3, active X4) -> U132(X1, X2, X3, X4),
                U132(X1, X2, mark X3, X4) -> U132(X1, X2, X3, X4),
              U132(X1, X2, active X3, X4) -> U132(X1, X2, X3, X4),
                U132(X1, mark X2, X3, X4) -> U132(X1, X2, X3, X4),
              U132(X1, active X2, X3, X4) -> U132(X1, X2, X3, X4),
                U132(mark X1, X2, X3, X4) -> U132(X1, X2, X3, X4),
              U132(active X1, X2, X3, X4) -> U132(X1, X2, X3, X4),
                U131(X1, X2, X3, mark X4) -> U131(X1, X2, X3, X4),
              U131(X1, X2, X3, active X4) -> U131(X1, X2, X3, X4),
                U131(X1, X2, mark X3, X4) -> U131(X1, X2, X3, X4),
              U131(X1, X2, active X3, X4) -> U131(X1, X2, X3, X4),
                U131(X1, mark X2, X3, X4) -> U131(X1, X2, X3, X4),
              U131(X1, active X2, X3, X4) -> U131(X1, X2, X3, X4),
                U131(mark X1, X2, X3, X4) -> U131(X1, X2, X3, X4),
              U131(active X1, X2, X3, X4) -> U131(X1, X2, X3, X4),
                U133(X1, X2, X3, mark X4) -> U133(X1, X2, X3, X4),
              U133(X1, X2, X3, active X4) -> U133(X1, X2, X3, X4),
                U133(X1, X2, mark X3, X4) -> U133(X1, X2, X3, X4),
              U133(X1, X2, active X3, X4) -> U133(X1, X2, X3, X4),
                U133(X1, mark X2, X3, X4) -> U133(X1, X2, X3, X4),
              U133(X1, active X2, X3, X4) -> U133(X1, X2, X3, X4),
                U133(mark X1, X2, X3, X4) -> U133(X1, X2, X3, X4),
              U133(active X1, X2, X3, X4) -> U133(X1, X2, X3, X4),
                U134(X1, X2, X3, mark X4) -> U134(X1, X2, X3, X4),
              U134(X1, X2, X3, active X4) -> U134(X1, X2, X3, X4),
                U134(X1, X2, mark X3, X4) -> U134(X1, X2, X3, X4),
              U134(X1, X2, active X3, X4) -> U134(X1, X2, X3, X4),
                U134(X1, mark X2, X3, X4) -> U134(X1, X2, X3, X4),
              U134(X1, active X2, X3, X4) -> U134(X1, X2, X3, X4),
                U134(mark X1, X2, X3, X4) -> U134(X1, X2, X3, X4),
              U134(active X1, X2, X3, X4) -> U134(X1, X2, X3, X4),
                U135(X1, X2, X3, mark X4) -> U135(X1, X2, X3, X4),
              U135(X1, X2, X3, active X4) -> U135(X1, X2, X3, X4),
                U135(X1, X2, mark X3, X4) -> U135(X1, X2, X3, X4),
              U135(X1, X2, active X3, X4) -> U135(X1, X2, X3, X4),
                U135(X1, mark X2, X3, X4) -> U135(X1, X2, X3, X4),
              U135(X1, active X2, X3, X4) -> U135(X1, X2, X3, X4),
                U135(mark X1, X2, X3, X4) -> U135(X1, X2, X3, X4),
              U135(active X1, X2, X3, X4) -> U135(X1, X2, X3, X4),
                U136(X1, X2, X3, mark X4) -> U136(X1, X2, X3, X4),
              U136(X1, X2, X3, active X4) -> U136(X1, X2, X3, X4),
                U136(X1, X2, mark X3, X4) -> U136(X1, X2, X3, X4),
              U136(X1, X2, active X3, X4) -> U136(X1, X2, X3, X4),
                U136(X1, mark X2, X3, X4) -> U136(X1, X2, X3, X4),
              U136(X1, active X2, X3, X4) -> U136(X1, X2, X3, X4),
                U136(mark X1, X2, X3, X4) -> U136(X1, X2, X3, X4),
              U136(active X1, X2, X3, X4) -> U136(X1, X2, X3, X4),
                        take(X1, mark X2) -> take(X1, X2),
                      take(X1, active X2) -> take(X1, X2),
                        take(mark X1, X2) -> take(X1, X2),
                      take(active X1, X2) -> take(X1, X2),
                         U22(X1, mark X2) -> U22(X1, X2),
                       U22(X1, active X2) -> U22(X1, X2),
                         U22(mark X1, X2) -> U22(X1, X2),
                       U22(active X1, X2) -> U22(X1, X2),
                         U21(X1, mark X2) -> U21(X1, X2),
                       U21(X1, active X2) -> U21(X1, X2),
                         U21(mark X1, X2) -> U21(X1, X2),
                       U21(active X1, X2) -> U21(X1, X2),
                               U23 mark X -> U23 X,
                             U23 active X -> U23 X,
                         U32(X1, mark X2) -> U32(X1, X2),
                       U32(X1, active X2) -> U32(X1, X2),
                         U32(mark X1, X2) -> U32(X1, X2),
                       U32(active X1, X2) -> U32(X1, X2),
                         U31(X1, mark X2) -> U31(X1, X2),
                       U31(X1, active X2) -> U31(X1, X2),
                         U31(mark X1, X2) -> U31(X1, X2),
                       U31(active X1, X2) -> U31(X1, X2),
                               U33 mark X -> U33 X,
                             U33 active X -> U33 X,
                     U42(X1, X2, mark X3) -> U42(X1, X2, X3),
                   U42(X1, X2, active X3) -> U42(X1, X2, X3),
                     U42(X1, mark X2, X3) -> U42(X1, X2, X3),
                   U42(X1, active X2, X3) -> U42(X1, X2, X3),
                     U42(mark X1, X2, X3) -> U42(X1, X2, X3),
                   U42(active X1, X2, X3) -> U42(X1, X2, X3),
                     U41(X1, X2, mark X3) -> U41(X1, X2, X3),
                   U41(X1, X2, active X3) -> U41(X1, X2, X3),
                     U41(X1, mark X2, X3) -> U41(X1, X2, X3),
                   U41(X1, active X2, X3) -> U41(X1, X2, X3),
                     U41(mark X1, X2, X3) -> U41(X1, X2, X3),
                   U41(active X1, X2, X3) -> U41(X1, X2, X3),
                     U43(X1, X2, mark X3) -> U43(X1, X2, X3),
                   U43(X1, X2, active X3) -> U43(X1, X2, X3),
                     U43(X1, mark X2, X3) -> U43(X1, X2, X3),
                   U43(X1, active X2, X3) -> U43(X1, X2, X3),
                     U43(mark X1, X2, X3) -> U43(X1, X2, X3),
                   U43(active X1, X2, X3) -> U43(X1, X2, X3),
                     U44(X1, X2, mark X3) -> U44(X1, X2, X3),
                   U44(X1, X2, active X3) -> U44(X1, X2, X3),
                     U44(X1, mark X2, X3) -> U44(X1, X2, X3),
                   U44(X1, active X2, X3) -> U44(X1, X2, X3),
                     U44(mark X1, X2, X3) -> U44(X1, X2, X3),
                   U44(active X1, X2, X3) -> U44(X1, X2, X3),
                         U45(X1, mark X2) -> U45(X1, X2),
                       U45(X1, active X2) -> U45(X1, X2),
                         U45(mark X1, X2) -> U45(X1, X2),
                       U45(active X1, X2) -> U45(X1, X2),
                               U46 mark X -> U46 X,
                             U46 active X -> U46 X,
                               U52 mark X -> U52 X,
                             U52 active X -> U52 X,
                         U51(X1, mark X2) -> U51(X1, X2),
                       U51(X1, active X2) -> U51(X1, X2),
                         U51(mark X1, X2) -> U51(X1, X2),
                       U51(active X1, X2) -> U51(X1, X2),
                               U62 mark X -> U62 X,
                             U62 active X -> U62 X,
                         U61(X1, mark X2) -> U61(X1, X2),
                       U61(X1, active X2) -> U61(X1, X2),
                         U61(mark X1, X2) -> U61(X1, X2),
                       U61(active X1, X2) -> U61(X1, X2),
                               U71 mark X -> U71 X,
                             U71 active X -> U71 X,
                               U81 mark X -> U81 X,
                             U81 active X -> U81 X,
                     U92(X1, X2, mark X3) -> U92(X1, X2, X3),
                   U92(X1, X2, active X3) -> U92(X1, X2, X3),
                     U92(X1, mark X2, X3) -> U92(X1, X2, X3),
                   U92(X1, active X2, X3) -> U92(X1, X2, X3),
                     U92(mark X1, X2, X3) -> U92(X1, X2, X3),
                   U92(active X1, X2, X3) -> U92(X1, X2, X3),
                     U91(X1, X2, mark X3) -> U91(X1, X2, X3),
                   U91(X1, X2, active X3) -> U91(X1, X2, X3),
                     U91(X1, mark X2, X3) -> U91(X1, X2, X3),
                   U91(X1, active X2, X3) -> U91(X1, X2, X3),
                     U91(mark X1, X2, X3) -> U91(X1, X2, X3),
                   U91(active X1, X2, X3) -> U91(X1, X2, X3),
                     U93(X1, X2, mark X3) -> U93(X1, X2, X3),
                   U93(X1, X2, active X3) -> U93(X1, X2, X3),
                     U93(X1, mark X2, X3) -> U93(X1, X2, X3),
                   U93(X1, active X2, X3) -> U93(X1, X2, X3),
                     U93(mark X1, X2, X3) -> U93(X1, X2, X3),
                   U93(active X1, X2, X3) -> U93(X1, X2, X3),
                     U94(X1, X2, mark X3) -> U94(X1, X2, X3),
                   U94(X1, X2, active X3) -> U94(X1, X2, X3),
                     U94(X1, mark X2, X3) -> U94(X1, X2, X3),
                   U94(X1, active X2, X3) -> U94(X1, X2, X3),
                     U94(mark X1, X2, X3) -> U94(X1, X2, X3),
                   U94(active X1, X2, X3) -> U94(X1, X2, X3),
                         U95(X1, mark X2) -> U95(X1, X2),
                       U95(X1, active X2) -> U95(X1, X2),
                         U95(mark X1, X2) -> U95(X1, X2),
                       U95(active X1, X2) -> U95(X1, X2),
                               U96 mark X -> U96 X,
                             U96 active X -> U96 X
      }
      Open
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     SCC (2):
      Strict:
       {  isNat# mark X -> isNat# X,
        isNat# active X -> isNat# X}
      Weak:
      {
                        mark cons(X1, X2) -> active cons(mark X1, X2),
                                 mark 0() -> active 0(),
                             mark zeros() -> active zeros(),
                    mark U102(X1, X2, X3) -> active U102(mark X1, X2, X3),
                         mark isNatKind X -> active isNatKind X,
                    mark U101(X1, X2, X3) -> active U101(mark X1, X2, X3),
                                mark tt() -> active tt(),
                    mark U103(X1, X2, X3) -> active U103(mark X1, X2, X3),
                    mark isNatIListKind X -> active isNatIListKind X,
                    mark U104(X1, X2, X3) -> active U104(mark X1, X2, X3),
                        mark U105(X1, X2) -> active U105(mark X1, X2),
                             mark isNat X -> active isNat X,
                              mark U106 X -> active U106 mark X,
                        mark isNatIList X -> active isNatIList X,
                         mark U12(X1, X2) -> active U12(mark X1, X2),
                         mark U11(X1, X2) -> active U11(mark X1, X2),
                    mark U112(X1, X2, X3) -> active U112(mark X1, X2, X3),
                    mark U111(X1, X2, X3) -> active U111(mark X1, X2, X3),
                    mark U113(X1, X2, X3) -> active U113(mark X1, X2, X3),
                        mark U114(X1, X2) -> active U114(mark X1, X2),
                                 mark s X -> active s mark X,
                            mark length X -> active length mark X,
                               mark U13 X -> active U13 mark X,
                         mark isNatList X -> active isNatList X,
                              mark U122 X -> active U122 mark X,
                        mark U121(X1, X2) -> active U121(mark X1, X2),
                               mark nil() -> active nil(),
                mark U132(X1, X2, X3, X4) -> active U132(mark X1, X2, X3, X4),
                mark U131(X1, X2, X3, X4) -> active U131(mark X1, X2, X3, X4),
                mark U133(X1, X2, X3, X4) -> active U133(mark X1, X2, X3, X4),
                mark U134(X1, X2, X3, X4) -> active U134(mark X1, X2, X3, X4),
                mark U135(X1, X2, X3, X4) -> active U135(mark X1, X2, X3, X4),
                mark U136(X1, X2, X3, X4) -> active U136(mark X1, X2, X3, X4),
                        mark take(X1, X2) -> active take(mark X1, mark X2),
                         mark U22(X1, X2) -> active U22(mark X1, X2),
                         mark U21(X1, X2) -> active U21(mark X1, X2),
                               mark U23 X -> active U23 mark X,
                         mark U32(X1, X2) -> active U32(mark X1, X2),
                         mark U31(X1, X2) -> active U31(mark X1, X2),
                               mark U33 X -> active U33 mark X,
                     mark U42(X1, X2, X3) -> active U42(mark X1, X2, X3),
                     mark U41(X1, X2, X3) -> active U41(mark X1, X2, X3),
                     mark U43(X1, X2, X3) -> active U43(mark X1, X2, X3),
                     mark U44(X1, X2, X3) -> active U44(mark X1, X2, X3),
                         mark U45(X1, X2) -> active U45(mark X1, X2),
                               mark U46 X -> active U46 mark X,
                               mark U52 X -> active U52 mark X,
                         mark U51(X1, X2) -> active U51(mark X1, X2),
                               mark U62 X -> active U62 mark X,
                         mark U61(X1, X2) -> active U61(mark X1, X2),
                               mark U71 X -> active U71 mark X,
                               mark U81 X -> active U81 mark X,
                     mark U92(X1, X2, X3) -> active U92(mark X1, X2, X3),
                     mark U91(X1, X2, X3) -> active U91(mark X1, X2, X3),
                     mark U93(X1, X2, X3) -> active U93(mark X1, X2, X3),
                     mark U94(X1, X2, X3) -> active U94(mark X1, X2, X3),
                         mark U95(X1, X2) -> active U95(mark X1, X2),
                               mark U96 X -> active U96 mark X,
                        cons(X1, mark X2) -> cons(X1, X2),
                      cons(X1, active X2) -> cons(X1, X2),
                        cons(mark X1, X2) -> cons(X1, X2),
                      cons(active X1, X2) -> cons(X1, X2),
                           active zeros() -> mark cons(0(), zeros()),
                active U102(tt(), V1, V2) -> mark U103(isNatIListKind V2, V1, V2),
                     active isNatKind 0() -> mark tt(),
                    active isNatKind s V1 -> mark U81 isNatKind V1,
               active isNatKind length V1 -> mark U71 isNatIListKind V1,
                active U101(tt(), V1, V2) -> mark U102(isNatKind V1, V1, V2),
                active U103(tt(), V1, V2) -> mark U104(isNatIListKind V2, V1, V2),
       active isNatIListKind cons(V1, V2) -> mark U51(isNatKind V1, V2),
            active isNatIListKind zeros() -> mark tt(),
              active isNatIListKind nil() -> mark tt(),
       active isNatIListKind take(V1, V2) -> mark U61(isNatKind V1, V2),
                active U104(tt(), V1, V2) -> mark U105(isNat V1, V2),
                    active U105(tt(), V2) -> mark U106 isNatIList V2,
                         active isNat 0() -> mark tt(),
                        active isNat s V1 -> mark U21(isNatKind V1, V1),
                   active isNat length V1 -> mark U11(isNatIListKind V1, V1),
                         active U106 tt() -> mark tt(),
                      active isNatIList V -> mark U31(isNatIListKind V, V),
           active isNatIList cons(V1, V2) -> mark U41(isNatKind V1, V1, V2),
                active isNatIList zeros() -> mark tt(),
                     active U12(tt(), V1) -> mark U13 isNatList V1,
                     active U11(tt(), V1) -> mark U12(isNatIListKind V1, V1),
                  active U112(tt(), L, N) -> mark U113(isNat N, L, N),
                  active U111(tt(), L, N) -> mark U112(isNatIListKind L, L, N),
                  active U113(tt(), L, N) -> mark U114(isNatKind N, L),
                     active U114(tt(), L) -> mark s length L,
                 active length cons(N, L) -> mark U111(isNatList L, L, N),
                      active length nil() -> mark 0(),
                          active U13 tt() -> mark tt(),
            active isNatList cons(V1, V2) -> mark U91(isNatKind V1, V1, V2),
                   active isNatList nil() -> mark tt(),
            active isNatList take(V1, V2) -> mark U101(isNatKind V1, V1, V2),
                         active U122 tt() -> mark nil(),
                    active U121(tt(), IL) -> mark U122 isNatIListKind IL,
              active U132(tt(), IL, M, N) -> mark U133(isNat M, IL, M, N),
              active U131(tt(), IL, M, N) -> mark U132(isNatIListKind IL, IL, M, N),
              active U133(tt(), IL, M, N) -> mark U134(isNatKind M, IL, M, N),
              active U134(tt(), IL, M, N) -> mark U135(isNat N, IL, M, N),
              active U135(tt(), IL, M, N) -> mark U136(isNatKind N, IL, M, N),
              active U136(tt(), IL, M, N) -> mark cons(N, take(M, IL)),
                     active take(0(), IL) -> mark U121(isNatIList IL, IL),
            active take(s M, cons(N, IL)) -> mark U131(isNatIList IL, IL, M, N),
                     active U22(tt(), V1) -> mark U23 isNat V1,
                     active U21(tt(), V1) -> mark U22(isNatKind V1, V1),
                          active U23 tt() -> mark tt(),
                      active U32(tt(), V) -> mark U33 isNatList V,
                      active U31(tt(), V) -> mark U32(isNatIListKind V, V),
                          active U33 tt() -> mark tt(),
                 active U42(tt(), V1, V2) -> mark U43(isNatIListKind V2, V1, V2),
                 active U41(tt(), V1, V2) -> mark U42(isNatKind V1, V1, V2),
                 active U43(tt(), V1, V2) -> mark U44(isNatIListKind V2, V1, V2),
                 active U44(tt(), V1, V2) -> mark U45(isNat V1, V2),
                     active U45(tt(), V2) -> mark U46 isNatIList V2,
                          active U46 tt() -> mark tt(),
                          active U52 tt() -> mark tt(),
                     active U51(tt(), V2) -> mark U52 isNatIListKind V2,
                          active U62 tt() -> mark tt(),
                     active U61(tt(), V2) -> mark U62 isNatIListKind V2,
                          active U71 tt() -> mark tt(),
                          active U81 tt() -> mark tt(),
                 active U92(tt(), V1, V2) -> mark U93(isNatIListKind V2, V1, V2),
                 active U91(tt(), V1, V2) -> mark U92(isNatKind V1, V1, V2),
                 active U93(tt(), V1, V2) -> mark U94(isNatIListKind V2, V1, V2),
                 active U94(tt(), V1, V2) -> mark U95(isNat V1, V2),
                     active U95(tt(), V2) -> mark U96 isNatList V2,
                          active U96 tt() -> mark tt(),
                    U102(X1, X2, mark X3) -> U102(X1, X2, X3),
                  U102(X1, X2, active X3) -> U102(X1, X2, X3),
                    U102(X1, mark X2, X3) -> U102(X1, X2, X3),
                  U102(X1, active X2, X3) -> U102(X1, X2, X3),
                    U102(mark X1, X2, X3) -> U102(X1, X2, X3),
                  U102(active X1, X2, X3) -> U102(X1, X2, X3),
                         isNatKind mark X -> isNatKind X,
                       isNatKind active X -> isNatKind X,
                    U101(X1, X2, mark X3) -> U101(X1, X2, X3),
                  U101(X1, X2, active X3) -> U101(X1, X2, X3),
                    U101(X1, mark X2, X3) -> U101(X1, X2, X3),
                  U101(X1, active X2, X3) -> U101(X1, X2, X3),
                    U101(mark X1, X2, X3) -> U101(X1, X2, X3),
                  U101(active X1, X2, X3) -> U101(X1, X2, X3),
                    U103(X1, X2, mark X3) -> U103(X1, X2, X3),
                  U103(X1, X2, active X3) -> U103(X1, X2, X3),
                    U103(X1, mark X2, X3) -> U103(X1, X2, X3),
                  U103(X1, active X2, X3) -> U103(X1, X2, X3),
                    U103(mark X1, X2, X3) -> U103(X1, X2, X3),
                  U103(active X1, X2, X3) -> U103(X1, X2, X3),
                    isNatIListKind mark X -> isNatIListKind X,
                  isNatIListKind active X -> isNatIListKind X,
                    U104(X1, X2, mark X3) -> U104(X1, X2, X3),
                  U104(X1, X2, active X3) -> U104(X1, X2, X3),
                    U104(X1, mark X2, X3) -> U104(X1, X2, X3),
                  U104(X1, active X2, X3) -> U104(X1, X2, X3),
                    U104(mark X1, X2, X3) -> U104(X1, X2, X3),
                  U104(active X1, X2, X3) -> U104(X1, X2, X3),
                        U105(X1, mark X2) -> U105(X1, X2),
                      U105(X1, active X2) -> U105(X1, X2),
                        U105(mark X1, X2) -> U105(X1, X2),
                      U105(active X1, X2) -> U105(X1, X2),
                             isNat mark X -> isNat X,
                           isNat active X -> isNat X,
                              U106 mark X -> U106 X,
                            U106 active X -> U106 X,
                        isNatIList mark X -> isNatIList X,
                      isNatIList active X -> isNatIList X,
                         U12(X1, mark X2) -> U12(X1, X2),
                       U12(X1, active X2) -> U12(X1, X2),
                         U12(mark X1, X2) -> U12(X1, X2),
                       U12(active X1, X2) -> U12(X1, X2),
                         U11(X1, mark X2) -> U11(X1, X2),
                       U11(X1, active X2) -> U11(X1, X2),
                         U11(mark X1, X2) -> U11(X1, X2),
                       U11(active X1, X2) -> U11(X1, X2),
                    U112(X1, X2, mark X3) -> U112(X1, X2, X3),
                  U112(X1, X2, active X3) -> U112(X1, X2, X3),
                    U112(X1, mark X2, X3) -> U112(X1, X2, X3),
                  U112(X1, active X2, X3) -> U112(X1, X2, X3),
                    U112(mark X1, X2, X3) -> U112(X1, X2, X3),
                  U112(active X1, X2, X3) -> U112(X1, X2, X3),
                    U111(X1, X2, mark X3) -> U111(X1, X2, X3),
                  U111(X1, X2, active X3) -> U111(X1, X2, X3),
                    U111(X1, mark X2, X3) -> U111(X1, X2, X3),
                  U111(X1, active X2, X3) -> U111(X1, X2, X3),
                    U111(mark X1, X2, X3) -> U111(X1, X2, X3),
                  U111(active X1, X2, X3) -> U111(X1, X2, X3),
                    U113(X1, X2, mark X3) -> U113(X1, X2, X3),
                  U113(X1, X2, active X3) -> U113(X1, X2, X3),
                    U113(X1, mark X2, X3) -> U113(X1, X2, X3),
                  U113(X1, active X2, X3) -> U113(X1, X2, X3),
                    U113(mark X1, X2, X3) -> U113(X1, X2, X3),
                  U113(active X1, X2, X3) -> U113(X1, X2, X3),
                        U114(X1, mark X2) -> U114(X1, X2),
                      U114(X1, active X2) -> U114(X1, X2),
                        U114(mark X1, X2) -> U114(X1, X2),
                      U114(active X1, X2) -> U114(X1, X2),
                                 s mark X -> s X,
                               s active X -> s X,
                            length mark X -> length X,
                          length active X -> length X,
                               U13 mark X -> U13 X,
                             U13 active X -> U13 X,
                         isNatList mark X -> isNatList X,
                       isNatList active X -> isNatList X,
                              U122 mark X -> U122 X,
                            U122 active X -> U122 X,
                        U121(X1, mark X2) -> U121(X1, X2),
                      U121(X1, active X2) -> U121(X1, X2),
                        U121(mark X1, X2) -> U121(X1, X2),
                      U121(active X1, X2) -> U121(X1, X2),
                U132(X1, X2, X3, mark X4) -> U132(X1, X2, X3, X4),
              U132(X1, X2, X3, active X4) -> U132(X1, X2, X3, X4),
                U132(X1, X2, mark X3, X4) -> U132(X1, X2, X3, X4),
              U132(X1, X2, active X3, X4) -> U132(X1, X2, X3, X4),
                U132(X1, mark X2, X3, X4) -> U132(X1, X2, X3, X4),
              U132(X1, active X2, X3, X4) -> U132(X1, X2, X3, X4),
                U132(mark X1, X2, X3, X4) -> U132(X1, X2, X3, X4),
              U132(active X1, X2, X3, X4) -> U132(X1, X2, X3, X4),
                U131(X1, X2, X3, mark X4) -> U131(X1, X2, X3, X4),
              U131(X1, X2, X3, active X4) -> U131(X1, X2, X3, X4),
                U131(X1, X2, mark X3, X4) -> U131(X1, X2, X3, X4),
              U131(X1, X2, active X3, X4) -> U131(X1, X2, X3, X4),
                U131(X1, mark X2, X3, X4) -> U131(X1, X2, X3, X4),
              U131(X1, active X2, X3, X4) -> U131(X1, X2, X3, X4),
                U131(mark X1, X2, X3, X4) -> U131(X1, X2, X3, X4),
              U131(active X1, X2, X3, X4) -> U131(X1, X2, X3, X4),
                U133(X1, X2, X3, mark X4) -> U133(X1, X2, X3, X4),
              U133(X1, X2, X3, active X4) -> U133(X1, X2, X3, X4),
                U133(X1, X2, mark X3, X4) -> U133(X1, X2, X3, X4),
              U133(X1, X2, active X3, X4) -> U133(X1, X2, X3, X4),
                U133(X1, mark X2, X3, X4) -> U133(X1, X2, X3, X4),
              U133(X1, active X2, X3, X4) -> U133(X1, X2, X3, X4),
                U133(mark X1, X2, X3, X4) -> U133(X1, X2, X3, X4),
              U133(active X1, X2, X3, X4) -> U133(X1, X2, X3, X4),
                U134(X1, X2, X3, mark X4) -> U134(X1, X2, X3, X4),
              U134(X1, X2, X3, active X4) -> U134(X1, X2, X3, X4),
                U134(X1, X2, mark X3, X4) -> U134(X1, X2, X3, X4),
              U134(X1, X2, active X3, X4) -> U134(X1, X2, X3, X4),
                U134(X1, mark X2, X3, X4) -> U134(X1, X2, X3, X4),
              U134(X1, active X2, X3, X4) -> U134(X1, X2, X3, X4),
                U134(mark X1, X2, X3, X4) -> U134(X1, X2, X3, X4),
              U134(active X1, X2, X3, X4) -> U134(X1, X2, X3, X4),
                U135(X1, X2, X3, mark X4) -> U135(X1, X2, X3, X4),
              U135(X1, X2, X3, active X4) -> U135(X1, X2, X3, X4),
                U135(X1, X2, mark X3, X4) -> U135(X1, X2, X3, X4),
              U135(X1, X2, active X3, X4) -> U135(X1, X2, X3, X4),
                U135(X1, mark X2, X3, X4) -> U135(X1, X2, X3, X4),
              U135(X1, active X2, X3, X4) -> U135(X1, X2, X3, X4),
                U135(mark X1, X2, X3, X4) -> U135(X1, X2, X3, X4),
              U135(active X1, X2, X3, X4) -> U135(X1, X2, X3, X4),
                U136(X1, X2, X3, mark X4) -> U136(X1, X2, X3, X4),
              U136(X1, X2, X3, active X4) -> U136(X1, X2, X3, X4),
                U136(X1, X2, mark X3, X4) -> U136(X1, X2, X3, X4),
              U136(X1, X2, active X3, X4) -> U136(X1, X2, X3, X4),
                U136(X1, mark X2, X3, X4) -> U136(X1, X2, X3, X4),
              U136(X1, active X2, X3, X4) -> U136(X1, X2, X3, X4),
                U136(mark X1, X2, X3, X4) -> U136(X1, X2, X3, X4),
              U136(active X1, X2, X3, X4) -> U136(X1, X2, X3, X4),
                        take(X1, mark X2) -> take(X1, X2),
                      take(X1, active X2) -> take(X1, X2),
                        take(mark X1, X2) -> take(X1, X2),
                      take(active X1, X2) -> take(X1, X2),
                         U22(X1, mark X2) -> U22(X1, X2),
                       U22(X1, active X2) -> U22(X1, X2),
                         U22(mark X1, X2) -> U22(X1, X2),
                       U22(active X1, X2) -> U22(X1, X2),
                         U21(X1, mark X2) -> U21(X1, X2),
                       U21(X1, active X2) -> U21(X1, X2),
                         U21(mark X1, X2) -> U21(X1, X2),
                       U21(active X1, X2) -> U21(X1, X2),
                               U23 mark X -> U23 X,
                             U23 active X -> U23 X,
                         U32(X1, mark X2) -> U32(X1, X2),
                       U32(X1, active X2) -> U32(X1, X2),
                         U32(mark X1, X2) -> U32(X1, X2),
                       U32(active X1, X2) -> U32(X1, X2),
                         U31(X1, mark X2) -> U31(X1, X2),
                       U31(X1, active X2) -> U31(X1, X2),
                         U31(mark X1, X2) -> U31(X1, X2),
                       U31(active X1, X2) -> U31(X1, X2),
                               U33 mark X -> U33 X,
                             U33 active X -> U33 X,
                     U42(X1, X2, mark X3) -> U42(X1, X2, X3),
                   U42(X1, X2, active X3) -> U42(X1, X2, X3),
                     U42(X1, mark X2, X3) -> U42(X1, X2, X3),
                   U42(X1, active X2, X3) -> U42(X1, X2, X3),
                     U42(mark X1, X2, X3) -> U42(X1, X2, X3),
                   U42(active X1, X2, X3) -> U42(X1, X2, X3),
                     U41(X1, X2, mark X3) -> U41(X1, X2, X3),
                   U41(X1, X2, active X3) -> U41(X1, X2, X3),
                     U41(X1, mark X2, X3) -> U41(X1, X2, X3),
                   U41(X1, active X2, X3) -> U41(X1, X2, X3),
                     U41(mark X1, X2, X3) -> U41(X1, X2, X3),
                   U41(active X1, X2, X3) -> U41(X1, X2, X3),
                     U43(X1, X2, mark X3) -> U43(X1, X2, X3),
                   U43(X1, X2, active X3) -> U43(X1, X2, X3),
                     U43(X1, mark X2, X3) -> U43(X1, X2, X3),
                   U43(X1, active X2, X3) -> U43(X1, X2, X3),
                     U43(mark X1, X2, X3) -> U43(X1, X2, X3),
                   U43(active X1, X2, X3) -> U43(X1, X2, X3),
                     U44(X1, X2, mark X3) -> U44(X1, X2, X3),
                   U44(X1, X2, active X3) -> U44(X1, X2, X3),
                     U44(X1, mark X2, X3) -> U44(X1, X2, X3),
                   U44(X1, active X2, X3) -> U44(X1, X2, X3),
                     U44(mark X1, X2, X3) -> U44(X1, X2, X3),
                   U44(active X1, X2, X3) -> U44(X1, X2, X3),
                         U45(X1, mark X2) -> U45(X1, X2),
                       U45(X1, active X2) -> U45(X1, X2),
                         U45(mark X1, X2) -> U45(X1, X2),
                       U45(active X1, X2) -> U45(X1, X2),
                               U46 mark X -> U46 X,
                             U46 active X -> U46 X,
                               U52 mark X -> U52 X,
                             U52 active X -> U52 X,
                         U51(X1, mark X2) -> U51(X1, X2),
                       U51(X1, active X2) -> U51(X1, X2),
                         U51(mark X1, X2) -> U51(X1, X2),
                       U51(active X1, X2) -> U51(X1, X2),
                               U62 mark X -> U62 X,
                             U62 active X -> U62 X,
                         U61(X1, mark X2) -> U61(X1, X2),
                       U61(X1, active X2) -> U61(X1, X2),
                         U61(mark X1, X2) -> U61(X1, X2),
                       U61(active X1, X2) -> U61(X1, X2),
                               U71 mark X -> U71 X,
                             U71 active X -> U71 X,
                               U81 mark X -> U81 X,
                             U81 active X -> U81 X,
                     U92(X1, X2, mark X3) -> U92(X1, X2, X3),
                   U92(X1, X2, active X3) -> U92(X1, X2, X3),
                     U92(X1, mark X2, X3) -> U92(X1, X2, X3),
                   U92(X1, active X2, X3) -> U92(X1, X2, X3),
                     U92(mark X1, X2, X3) -> U92(X1, X2, X3),
                   U92(active X1, X2, X3) -> U92(X1, X2, X3),
                     U91(X1, X2, mark X3) -> U91(X1, X2, X3),
                   U91(X1, X2, active X3) -> U91(X1, X2, X3),
                     U91(X1, mark X2, X3) -> U91(X1, X2, X3),
                   U91(X1, active X2, X3) -> U91(X1, X2, X3),
                     U91(mark X1, X2, X3) -> U91(X1, X2, X3),
                   U91(active X1, X2, X3) -> U91(X1, X2, X3),
                     U93(X1, X2, mark X3) -> U93(X1, X2, X3),
                   U93(X1, X2, active X3) -> U93(X1, X2, X3),
                     U93(X1, mark X2, X3) -> U93(X1, X2, X3),
                   U93(X1, active X2, X3) -> U93(X1, X2, X3),
                     U93(mark X1, X2, X3) -> U93(X1, X2, X3),
                   U93(active X1, X2, X3) -> U93(X1, X2, X3),
                     U94(X1, X2, mark X3) -> U94(X1, X2, X3),
                   U94(X1, X2, active X3) -> U94(X1, X2, X3),
                     U94(X1, mark X2, X3) -> U94(X1, X2, X3),
                   U94(X1, active X2, X3) -> U94(X1, X2, X3),
                     U94(mark X1, X2, X3) -> U94(X1, X2, X3),
                   U94(active X1, X2, X3) -> U94(X1, X2, X3),
                         U95(X1, mark X2) -> U95(X1, X2),
                       U95(X1, active X2) -> U95(X1, X2),
                         U95(mark X1, X2) -> U95(X1, X2),
                       U95(active X1, X2) -> U95(X1, X2),
                               U96 mark X -> U96 X,
                             U96 active X -> U96 X
      }
      Open
     
     
     
     SCC (2):
      Strict:
       {  U96# mark X -> U96# X,
        U96# active X -> U96# X}
      Weak:
      {
                        mark cons(X1, X2) -> active cons(mark X1, X2),
                                 mark 0() -> active 0(),
                             mark zeros() -> active zeros(),
                    mark U102(X1, X2, X3) -> active U102(mark X1, X2, X3),
                         mark isNatKind X -> active isNatKind X,
                    mark U101(X1, X2, X3) -> active U101(mark X1, X2, X3),
                                mark tt() -> active tt(),
                    mark U103(X1, X2, X3) -> active U103(mark X1, X2, X3),
                    mark isNatIListKind X -> active isNatIListKind X,
                    mark U104(X1, X2, X3) -> active U104(mark X1, X2, X3),
                        mark U105(X1, X2) -> active U105(mark X1, X2),
                             mark isNat X -> active isNat X,
                              mark U106 X -> active U106 mark X,
                        mark isNatIList X -> active isNatIList X,
                         mark U12(X1, X2) -> active U12(mark X1, X2),
                         mark U11(X1, X2) -> active U11(mark X1, X2),
                    mark U112(X1, X2, X3) -> active U112(mark X1, X2, X3),
                    mark U111(X1, X2, X3) -> active U111(mark X1, X2, X3),
                    mark U113(X1, X2, X3) -> active U113(mark X1, X2, X3),
                        mark U114(X1, X2) -> active U114(mark X1, X2),
                                 mark s X -> active s mark X,
                            mark length X -> active length mark X,
                               mark U13 X -> active U13 mark X,
                         mark isNatList X -> active isNatList X,
                              mark U122 X -> active U122 mark X,
                        mark U121(X1, X2) -> active U121(mark X1, X2),
                               mark nil() -> active nil(),
                mark U132(X1, X2, X3, X4) -> active U132(mark X1, X2, X3, X4),
                mark U131(X1, X2, X3, X4) -> active U131(mark X1, X2, X3, X4),
                mark U133(X1, X2, X3, X4) -> active U133(mark X1, X2, X3, X4),
                mark U134(X1, X2, X3, X4) -> active U134(mark X1, X2, X3, X4),
                mark U135(X1, X2, X3, X4) -> active U135(mark X1, X2, X3, X4),
                mark U136(X1, X2, X3, X4) -> active U136(mark X1, X2, X3, X4),
                        mark take(X1, X2) -> active take(mark X1, mark X2),
                         mark U22(X1, X2) -> active U22(mark X1, X2),
                         mark U21(X1, X2) -> active U21(mark X1, X2),
                               mark U23 X -> active U23 mark X,
                         mark U32(X1, X2) -> active U32(mark X1, X2),
                         mark U31(X1, X2) -> active U31(mark X1, X2),
                               mark U33 X -> active U33 mark X,
                     mark U42(X1, X2, X3) -> active U42(mark X1, X2, X3),
                     mark U41(X1, X2, X3) -> active U41(mark X1, X2, X3),
                     mark U43(X1, X2, X3) -> active U43(mark X1, X2, X3),
                     mark U44(X1, X2, X3) -> active U44(mark X1, X2, X3),
                         mark U45(X1, X2) -> active U45(mark X1, X2),
                               mark U46 X -> active U46 mark X,
                               mark U52 X -> active U52 mark X,
                         mark U51(X1, X2) -> active U51(mark X1, X2),
                               mark U62 X -> active U62 mark X,
                         mark U61(X1, X2) -> active U61(mark X1, X2),
                               mark U71 X -> active U71 mark X,
                               mark U81 X -> active U81 mark X,
                     mark U92(X1, X2, X3) -> active U92(mark X1, X2, X3),
                     mark U91(X1, X2, X3) -> active U91(mark X1, X2, X3),
                     mark U93(X1, X2, X3) -> active U93(mark X1, X2, X3),
                     mark U94(X1, X2, X3) -> active U94(mark X1, X2, X3),
                         mark U95(X1, X2) -> active U95(mark X1, X2),
                               mark U96 X -> active U96 mark X,
                        cons(X1, mark X2) -> cons(X1, X2),
                      cons(X1, active X2) -> cons(X1, X2),
                        cons(mark X1, X2) -> cons(X1, X2),
                      cons(active X1, X2) -> cons(X1, X2),
                           active zeros() -> mark cons(0(), zeros()),
                active U102(tt(), V1, V2) -> mark U103(isNatIListKind V2, V1, V2),
                     active isNatKind 0() -> mark tt(),
                    active isNatKind s V1 -> mark U81 isNatKind V1,
               active isNatKind length V1 -> mark U71 isNatIListKind V1,
                active U101(tt(), V1, V2) -> mark U102(isNatKind V1, V1, V2),
                active U103(tt(), V1, V2) -> mark U104(isNatIListKind V2, V1, V2),
       active isNatIListKind cons(V1, V2) -> mark U51(isNatKind V1, V2),
            active isNatIListKind zeros() -> mark tt(),
              active isNatIListKind nil() -> mark tt(),
       active isNatIListKind take(V1, V2) -> mark U61(isNatKind V1, V2),
                active U104(tt(), V1, V2) -> mark U105(isNat V1, V2),
                    active U105(tt(), V2) -> mark U106 isNatIList V2,
                         active isNat 0() -> mark tt(),
                        active isNat s V1 -> mark U21(isNatKind V1, V1),
                   active isNat length V1 -> mark U11(isNatIListKind V1, V1),
                         active U106 tt() -> mark tt(),
                      active isNatIList V -> mark U31(isNatIListKind V, V),
           active isNatIList cons(V1, V2) -> mark U41(isNatKind V1, V1, V2),
                active isNatIList zeros() -> mark tt(),
                     active U12(tt(), V1) -> mark U13 isNatList V1,
                     active U11(tt(), V1) -> mark U12(isNatIListKind V1, V1),
                  active U112(tt(), L, N) -> mark U113(isNat N, L, N),
                  active U111(tt(), L, N) -> mark U112(isNatIListKind L, L, N),
                  active U113(tt(), L, N) -> mark U114(isNatKind N, L),
                     active U114(tt(), L) -> mark s length L,
                 active length cons(N, L) -> mark U111(isNatList L, L, N),
                      active length nil() -> mark 0(),
                          active U13 tt() -> mark tt(),
            active isNatList cons(V1, V2) -> mark U91(isNatKind V1, V1, V2),
                   active isNatList nil() -> mark tt(),
            active isNatList take(V1, V2) -> mark U101(isNatKind V1, V1, V2),
                         active U122 tt() -> mark nil(),
                    active U121(tt(), IL) -> mark U122 isNatIListKind IL,
              active U132(tt(), IL, M, N) -> mark U133(isNat M, IL, M, N),
              active U131(tt(), IL, M, N) -> mark U132(isNatIListKind IL, IL, M, N),
              active U133(tt(), IL, M, N) -> mark U134(isNatKind M, IL, M, N),
              active U134(tt(), IL, M, N) -> mark U135(isNat N, IL, M, N),
              active U135(tt(), IL, M, N) -> mark U136(isNatKind N, IL, M, N),
              active U136(tt(), IL, M, N) -> mark cons(N, take(M, IL)),
                     active take(0(), IL) -> mark U121(isNatIList IL, IL),
            active take(s M, cons(N, IL)) -> mark U131(isNatIList IL, IL, M, N),
                     active U22(tt(), V1) -> mark U23 isNat V1,
                     active U21(tt(), V1) -> mark U22(isNatKind V1, V1),
                          active U23 tt() -> mark tt(),
                      active U32(tt(), V) -> mark U33 isNatList V,
                      active U31(tt(), V) -> mark U32(isNatIListKind V, V),
                          active U33 tt() -> mark tt(),
                 active U42(tt(), V1, V2) -> mark U43(isNatIListKind V2, V1, V2),
                 active U41(tt(), V1, V2) -> mark U42(isNatKind V1, V1, V2),
                 active U43(tt(), V1, V2) -> mark U44(isNatIListKind V2, V1, V2),
                 active U44(tt(), V1, V2) -> mark U45(isNat V1, V2),
                     active U45(tt(), V2) -> mark U46 isNatIList V2,
                          active U46 tt() -> mark tt(),
                          active U52 tt() -> mark tt(),
                     active U51(tt(), V2) -> mark U52 isNatIListKind V2,
                          active U62 tt() -> mark tt(),
                     active U61(tt(), V2) -> mark U62 isNatIListKind V2,
                          active U71 tt() -> mark tt(),
                          active U81 tt() -> mark tt(),
                 active U92(tt(), V1, V2) -> mark U93(isNatIListKind V2, V1, V2),
                 active U91(tt(), V1, V2) -> mark U92(isNatKind V1, V1, V2),
                 active U93(tt(), V1, V2) -> mark U94(isNatIListKind V2, V1, V2),
                 active U94(tt(), V1, V2) -> mark U95(isNat V1, V2),
                     active U95(tt(), V2) -> mark U96 isNatList V2,
                          active U96 tt() -> mark tt(),
                    U102(X1, X2, mark X3) -> U102(X1, X2, X3),
                  U102(X1, X2, active X3) -> U102(X1, X2, X3),
                    U102(X1, mark X2, X3) -> U102(X1, X2, X3),
                  U102(X1, active X2, X3) -> U102(X1, X2, X3),
                    U102(mark X1, X2, X3) -> U102(X1, X2, X3),
                  U102(active X1, X2, X3) -> U102(X1, X2, X3),
                         isNatKind mark X -> isNatKind X,
                       isNatKind active X -> isNatKind X,
                    U101(X1, X2, mark X3) -> U101(X1, X2, X3),
                  U101(X1, X2, active X3) -> U101(X1, X2, X3),
                    U101(X1, mark X2, X3) -> U101(X1, X2, X3),
                  U101(X1, active X2, X3) -> U101(X1, X2, X3),
                    U101(mark X1, X2, X3) -> U101(X1, X2, X3),
                  U101(active X1, X2, X3) -> U101(X1, X2, X3),
                    U103(X1, X2, mark X3) -> U103(X1, X2, X3),
                  U103(X1, X2, active X3) -> U103(X1, X2, X3),
                    U103(X1, mark X2, X3) -> U103(X1, X2, X3),
                  U103(X1, active X2, X3) -> U103(X1, X2, X3),
                    U103(mark X1, X2, X3) -> U103(X1, X2, X3),
                  U103(active X1, X2, X3) -> U103(X1, X2, X3),
                    isNatIListKind mark X -> isNatIListKind X,
                  isNatIListKind active X -> isNatIListKind X,
                    U104(X1, X2, mark X3) -> U104(X1, X2, X3),
                  U104(X1, X2, active X3) -> U104(X1, X2, X3),
                    U104(X1, mark X2, X3) -> U104(X1, X2, X3),
                  U104(X1, active X2, X3) -> U104(X1, X2, X3),
                    U104(mark X1, X2, X3) -> U104(X1, X2, X3),
                  U104(active X1, X2, X3) -> U104(X1, X2, X3),
                        U105(X1, mark X2) -> U105(X1, X2),
                      U105(X1, active X2) -> U105(X1, X2),
                        U105(mark X1, X2) -> U105(X1, X2),
                      U105(active X1, X2) -> U105(X1, X2),
                             isNat mark X -> isNat X,
                           isNat active X -> isNat X,
                              U106 mark X -> U106 X,
                            U106 active X -> U106 X,
                        isNatIList mark X -> isNatIList X,
                      isNatIList active X -> isNatIList X,
                         U12(X1, mark X2) -> U12(X1, X2),
                       U12(X1, active X2) -> U12(X1, X2),
                         U12(mark X1, X2) -> U12(X1, X2),
                       U12(active X1, X2) -> U12(X1, X2),
                         U11(X1, mark X2) -> U11(X1, X2),
                       U11(X1, active X2) -> U11(X1, X2),
                         U11(mark X1, X2) -> U11(X1, X2),
                       U11(active X1, X2) -> U11(X1, X2),
                    U112(X1, X2, mark X3) -> U112(X1, X2, X3),
                  U112(X1, X2, active X3) -> U112(X1, X2, X3),
                    U112(X1, mark X2, X3) -> U112(X1, X2, X3),
                  U112(X1, active X2, X3) -> U112(X1, X2, X3),
                    U112(mark X1, X2, X3) -> U112(X1, X2, X3),
                  U112(active X1, X2, X3) -> U112(X1, X2, X3),
                    U111(X1, X2, mark X3) -> U111(X1, X2, X3),
                  U111(X1, X2, active X3) -> U111(X1, X2, X3),
                    U111(X1, mark X2, X3) -> U111(X1, X2, X3),
                  U111(X1, active X2, X3) -> U111(X1, X2, X3),
                    U111(mark X1, X2, X3) -> U111(X1, X2, X3),
                  U111(active X1, X2, X3) -> U111(X1, X2, X3),
                    U113(X1, X2, mark X3) -> U113(X1, X2, X3),
                  U113(X1, X2, active X3) -> U113(X1, X2, X3),
                    U113(X1, mark X2, X3) -> U113(X1, X2, X3),
                  U113(X1, active X2, X3) -> U113(X1, X2, X3),
                    U113(mark X1, X2, X3) -> U113(X1, X2, X3),
                  U113(active X1, X2, X3) -> U113(X1, X2, X3),
                        U114(X1, mark X2) -> U114(X1, X2),
                      U114(X1, active X2) -> U114(X1, X2),
                        U114(mark X1, X2) -> U114(X1, X2),
                      U114(active X1, X2) -> U114(X1, X2),
                                 s mark X -> s X,
                               s active X -> s X,
                            length mark X -> length X,
                          length active X -> length X,
                               U13 mark X -> U13 X,
                             U13 active X -> U13 X,
                         isNatList mark X -> isNatList X,
                       isNatList active X -> isNatList X,
                              U122 mark X -> U122 X,
                            U122 active X -> U122 X,
                        U121(X1, mark X2) -> U121(X1, X2),
                      U121(X1, active X2) -> U121(X1, X2),
                        U121(mark X1, X2) -> U121(X1, X2),
                      U121(active X1, X2) -> U121(X1, X2),
                U132(X1, X2, X3, mark X4) -> U132(X1, X2, X3, X4),
              U132(X1, X2, X3, active X4) -> U132(X1, X2, X3, X4),
                U132(X1, X2, mark X3, X4) -> U132(X1, X2, X3, X4),
              U132(X1, X2, active X3, X4) -> U132(X1, X2, X3, X4),
                U132(X1, mark X2, X3, X4) -> U132(X1, X2, X3, X4),
              U132(X1, active X2, X3, X4) -> U132(X1, X2, X3, X4),
                U132(mark X1, X2, X3, X4) -> U132(X1, X2, X3, X4),
              U132(active X1, X2, X3, X4) -> U132(X1, X2, X3, X4),
                U131(X1, X2, X3, mark X4) -> U131(X1, X2, X3, X4),
              U131(X1, X2, X3, active X4) -> U131(X1, X2, X3, X4),
                U131(X1, X2, mark X3, X4) -> U131(X1, X2, X3, X4),
              U131(X1, X2, active X3, X4) -> U131(X1, X2, X3, X4),
                U131(X1, mark X2, X3, X4) -> U131(X1, X2, X3, X4),
              U131(X1, active X2, X3, X4) -> U131(X1, X2, X3, X4),
                U131(mark X1, X2, X3, X4) -> U131(X1, X2, X3, X4),
              U131(active X1, X2, X3, X4) -> U131(X1, X2, X3, X4),
                U133(X1, X2, X3, mark X4) -> U133(X1, X2, X3, X4),
              U133(X1, X2, X3, active X4) -> U133(X1, X2, X3, X4),
                U133(X1, X2, mark X3, X4) -> U133(X1, X2, X3, X4),
              U133(X1, X2, active X3, X4) -> U133(X1, X2, X3, X4),
                U133(X1, mark X2, X3, X4) -> U133(X1, X2, X3, X4),
              U133(X1, active X2, X3, X4) -> U133(X1, X2, X3, X4),
                U133(mark X1, X2, X3, X4) -> U133(X1, X2, X3, X4),
              U133(active X1, X2, X3, X4) -> U133(X1, X2, X3, X4),
                U134(X1, X2, X3, mark X4) -> U134(X1, X2, X3, X4),
              U134(X1, X2, X3, active X4) -> U134(X1, X2, X3, X4),
                U134(X1, X2, mark X3, X4) -> U134(X1, X2, X3, X4),
              U134(X1, X2, active X3, X4) -> U134(X1, X2, X3, X4),
                U134(X1, mark X2, X3, X4) -> U134(X1, X2, X3, X4),
              U134(X1, active X2, X3, X4) -> U134(X1, X2, X3, X4),
                U134(mark X1, X2, X3, X4) -> U134(X1, X2, X3, X4),
              U134(active X1, X2, X3, X4) -> U134(X1, X2, X3, X4),
                U135(X1, X2, X3, mark X4) -> U135(X1, X2, X3, X4),
              U135(X1, X2, X3, active X4) -> U135(X1, X2, X3, X4),
                U135(X1, X2, mark X3, X4) -> U135(X1, X2, X3, X4),
              U135(X1, X2, active X3, X4) -> U135(X1, X2, X3, X4),
                U135(X1, mark X2, X3, X4) -> U135(X1, X2, X3, X4),
              U135(X1, active X2, X3, X4) -> U135(X1, X2, X3, X4),
                U135(mark X1, X2, X3, X4) -> U135(X1, X2, X3, X4),
              U135(active X1, X2, X3, X4) -> U135(X1, X2, X3, X4),
                U136(X1, X2, X3, mark X4) -> U136(X1, X2, X3, X4),
              U136(X1, X2, X3, active X4) -> U136(X1, X2, X3, X4),
                U136(X1, X2, mark X3, X4) -> U136(X1, X2, X3, X4),
              U136(X1, X2, active X3, X4) -> U136(X1, X2, X3, X4),
                U136(X1, mark X2, X3, X4) -> U136(X1, X2, X3, X4),
              U136(X1, active X2, X3, X4) -> U136(X1, X2, X3, X4),
                U136(mark X1, X2, X3, X4) -> U136(X1, X2, X3, X4),
              U136(active X1, X2, X3, X4) -> U136(X1, X2, X3, X4),
                        take(X1, mark X2) -> take(X1, X2),
                      take(X1, active X2) -> take(X1, X2),
                        take(mark X1, X2) -> take(X1, X2),
                      take(active X1, X2) -> take(X1, X2),
                         U22(X1, mark X2) -> U22(X1, X2),
                       U22(X1, active X2) -> U22(X1, X2),
                         U22(mark X1, X2) -> U22(X1, X2),
                       U22(active X1, X2) -> U22(X1, X2),
                         U21(X1, mark X2) -> U21(X1, X2),
                       U21(X1, active X2) -> U21(X1, X2),
                         U21(mark X1, X2) -> U21(X1, X2),
                       U21(active X1, X2) -> U21(X1, X2),
                               U23 mark X -> U23 X,
                             U23 active X -> U23 X,
                         U32(X1, mark X2) -> U32(X1, X2),
                       U32(X1, active X2) -> U32(X1, X2),
                         U32(mark X1, X2) -> U32(X1, X2),
                       U32(active X1, X2) -> U32(X1, X2),
                         U31(X1, mark X2) -> U31(X1, X2),
                       U31(X1, active X2) -> U31(X1, X2),
                         U31(mark X1, X2) -> U31(X1, X2),
                       U31(active X1, X2) -> U31(X1, X2),
                               U33 mark X -> U33 X,
                             U33 active X -> U33 X,
                     U42(X1, X2, mark X3) -> U42(X1, X2, X3),
                   U42(X1, X2, active X3) -> U42(X1, X2, X3),
                     U42(X1, mark X2, X3) -> U42(X1, X2, X3),
                   U42(X1, active X2, X3) -> U42(X1, X2, X3),
                     U42(mark X1, X2, X3) -> U42(X1, X2, X3),
                   U42(active X1, X2, X3) -> U42(X1, X2, X3),
                     U41(X1, X2, mark X3) -> U41(X1, X2, X3),
                   U41(X1, X2, active X3) -> U41(X1, X2, X3),
                     U41(X1, mark X2, X3) -> U41(X1, X2, X3),
                   U41(X1, active X2, X3) -> U41(X1, X2, X3),
                     U41(mark X1, X2, X3) -> U41(X1, X2, X3),
                   U41(active X1, X2, X3) -> U41(X1, X2, X3),
                     U43(X1, X2, mark X3) -> U43(X1, X2, X3),
                   U43(X1, X2, active X3) -> U43(X1, X2, X3),
                     U43(X1, mark X2, X3) -> U43(X1, X2, X3),
                   U43(X1, active X2, X3) -> U43(X1, X2, X3),
                     U43(mark X1, X2, X3) -> U43(X1, X2, X3),
                   U43(active X1, X2, X3) -> U43(X1, X2, X3),
                     U44(X1, X2, mark X3) -> U44(X1, X2, X3),
                   U44(X1, X2, active X3) -> U44(X1, X2, X3),
                     U44(X1, mark X2, X3) -> U44(X1, X2, X3),
                   U44(X1, active X2, X3) -> U44(X1, X2, X3),
                     U44(mark X1, X2, X3) -> U44(X1, X2, X3),
                   U44(active X1, X2, X3) -> U44(X1, X2, X3),
                         U45(X1, mark X2) -> U45(X1, X2),
                       U45(X1, active X2) -> U45(X1, X2),
                         U45(mark X1, X2) -> U45(X1, X2),
                       U45(active X1, X2) -> U45(X1, X2),
                               U46 mark X -> U46 X,
                             U46 active X -> U46 X,
                               U52 mark X -> U52 X,
                             U52 active X -> U52 X,
                         U51(X1, mark X2) -> U51(X1, X2),
                       U51(X1, active X2) -> U51(X1, X2),
                         U51(mark X1, X2) -> U51(X1, X2),
                       U51(active X1, X2) -> U51(X1, X2),
                               U62 mark X -> U62 X,
                             U62 active X -> U62 X,
                         U61(X1, mark X2) -> U61(X1, X2),
                       U61(X1, active X2) -> U61(X1, X2),
                         U61(mark X1, X2) -> U61(X1, X2),
                       U61(active X1, X2) -> U61(X1, X2),
                               U71 mark X -> U71 X,
                             U71 active X -> U71 X,
                               U81 mark X -> U81 X,
                             U81 active X -> U81 X,
                     U92(X1, X2, mark X3) -> U92(X1, X2, X3),
                   U92(X1, X2, active X3) -> U92(X1, X2, X3),
                     U92(X1, mark X2, X3) -> U92(X1, X2, X3),
                   U92(X1, active X2, X3) -> U92(X1, X2, X3),
                     U92(mark X1, X2, X3) -> U92(X1, X2, X3),
                   U92(active X1, X2, X3) -> U92(X1, X2, X3),
                     U91(X1, X2, mark X3) -> U91(X1, X2, X3),
                   U91(X1, X2, active X3) -> U91(X1, X2, X3),
                     U91(X1, mark X2, X3) -> U91(X1, X2, X3),
                   U91(X1, active X2, X3) -> U91(X1, X2, X3),
                     U91(mark X1, X2, X3) -> U91(X1, X2, X3),
                   U91(active X1, X2, X3) -> U91(X1, X2, X3),
                     U93(X1, X2, mark X3) -> U93(X1, X2, X3),
                   U93(X1, X2, active X3) -> U93(X1, X2, X3),
                     U93(X1, mark X2, X3) -> U93(X1, X2, X3),
                   U93(X1, active X2, X3) -> U93(X1, X2, X3),
                     U93(mark X1, X2, X3) -> U93(X1, X2, X3),
                   U93(active X1, X2, X3) -> U93(X1, X2, X3),
                     U94(X1, X2, mark X3) -> U94(X1, X2, X3),
                   U94(X1, X2, active X3) -> U94(X1, X2, X3),
                     U94(X1, mark X2, X3) -> U94(X1, X2, X3),
                   U94(X1, active X2, X3) -> U94(X1, X2, X3),
                     U94(mark X1, X2, X3) -> U94(X1, X2, X3),
                   U94(active X1, X2, X3) -> U94(X1, X2, X3),
                         U95(X1, mark X2) -> U95(X1, X2),
                       U95(X1, active X2) -> U95(X1, X2),
                         U95(mark X1, X2) -> U95(X1, X2),
                       U95(active X1, X2) -> U95(X1, X2),
                               U96 mark X -> U96 X,
                             U96 active X -> U96 X
      }
      Open
     
     
     
     SCC (4):
      Strict:
       {  U95#(X1, mark X2) -> U95#(X1, X2),
        U95#(X1, active X2) -> U95#(X1, X2),
          U95#(mark X1, X2) -> U95#(X1, X2),
        U95#(active X1, X2) -> U95#(X1, X2)}
      Weak:
      {
                        mark cons(X1, X2) -> active cons(mark X1, X2),
                                 mark 0() -> active 0(),
                             mark zeros() -> active zeros(),
                    mark U102(X1, X2, X3) -> active U102(mark X1, X2, X3),
                         mark isNatKind X -> active isNatKind X,
                    mark U101(X1, X2, X3) -> active U101(mark X1, X2, X3),
                                mark tt() -> active tt(),
                    mark U103(X1, X2, X3) -> active U103(mark X1, X2, X3),
                    mark isNatIListKind X -> active isNatIListKind X,
                    mark U104(X1, X2, X3) -> active U104(mark X1, X2, X3),
                        mark U105(X1, X2) -> active U105(mark X1, X2),
                             mark isNat X -> active isNat X,
                              mark U106 X -> active U106 mark X,
                        mark isNatIList X -> active isNatIList X,
                         mark U12(X1, X2) -> active U12(mark X1, X2),
                         mark U11(X1, X2) -> active U11(mark X1, X2),
                    mark U112(X1, X2, X3) -> active U112(mark X1, X2, X3),
                    mark U111(X1, X2, X3) -> active U111(mark X1, X2, X3),
                    mark U113(X1, X2, X3) -> active U113(mark X1, X2, X3),
                        mark U114(X1, X2) -> active U114(mark X1, X2),
                                 mark s X -> active s mark X,
                            mark length X -> active length mark X,
                               mark U13 X -> active U13 mark X,
                         mark isNatList X -> active isNatList X,
                              mark U122 X -> active U122 mark X,
                        mark U121(X1, X2) -> active U121(mark X1, X2),
                               mark nil() -> active nil(),
                mark U132(X1, X2, X3, X4) -> active U132(mark X1, X2, X3, X4),
                mark U131(X1, X2, X3, X4) -> active U131(mark X1, X2, X3, X4),
                mark U133(X1, X2, X3, X4) -> active U133(mark X1, X2, X3, X4),
                mark U134(X1, X2, X3, X4) -> active U134(mark X1, X2, X3, X4),
                mark U135(X1, X2, X3, X4) -> active U135(mark X1, X2, X3, X4),
                mark U136(X1, X2, X3, X4) -> active U136(mark X1, X2, X3, X4),
                        mark take(X1, X2) -> active take(mark X1, mark X2),
                         mark U22(X1, X2) -> active U22(mark X1, X2),
                         mark U21(X1, X2) -> active U21(mark X1, X2),
                               mark U23 X -> active U23 mark X,
                         mark U32(X1, X2) -> active U32(mark X1, X2),
                         mark U31(X1, X2) -> active U31(mark X1, X2),
                               mark U33 X -> active U33 mark X,
                     mark U42(X1, X2, X3) -> active U42(mark X1, X2, X3),
                     mark U41(X1, X2, X3) -> active U41(mark X1, X2, X3),
                     mark U43(X1, X2, X3) -> active U43(mark X1, X2, X3),
                     mark U44(X1, X2, X3) -> active U44(mark X1, X2, X3),
                         mark U45(X1, X2) -> active U45(mark X1, X2),
                               mark U46 X -> active U46 mark X,
                               mark U52 X -> active U52 mark X,
                         mark U51(X1, X2) -> active U51(mark X1, X2),
                               mark U62 X -> active U62 mark X,
                         mark U61(X1, X2) -> active U61(mark X1, X2),
                               mark U71 X -> active U71 mark X,
                               mark U81 X -> active U81 mark X,
                     mark U92(X1, X2, X3) -> active U92(mark X1, X2, X3),
                     mark U91(X1, X2, X3) -> active U91(mark X1, X2, X3),
                     mark U93(X1, X2, X3) -> active U93(mark X1, X2, X3),
                     mark U94(X1, X2, X3) -> active U94(mark X1, X2, X3),
                         mark U95(X1, X2) -> active U95(mark X1, X2),
                               mark U96 X -> active U96 mark X,
                        cons(X1, mark X2) -> cons(X1, X2),
                      cons(X1, active X2) -> cons(X1, X2),
                        cons(mark X1, X2) -> cons(X1, X2),
                      cons(active X1, X2) -> cons(X1, X2),
                           active zeros() -> mark cons(0(), zeros()),
                active U102(tt(), V1, V2) -> mark U103(isNatIListKind V2, V1, V2),
                     active isNatKind 0() -> mark tt(),
                    active isNatKind s V1 -> mark U81 isNatKind V1,
               active isNatKind length V1 -> mark U71 isNatIListKind V1,
                active U101(tt(), V1, V2) -> mark U102(isNatKind V1, V1, V2),
                active U103(tt(), V1, V2) -> mark U104(isNatIListKind V2, V1, V2),
       active isNatIListKind cons(V1, V2) -> mark U51(isNatKind V1, V2),
            active isNatIListKind zeros() -> mark tt(),
              active isNatIListKind nil() -> mark tt(),
       active isNatIListKind take(V1, V2) -> mark U61(isNatKind V1, V2),
                active U104(tt(), V1, V2) -> mark U105(isNat V1, V2),
                    active U105(tt(), V2) -> mark U106 isNatIList V2,
                         active isNat 0() -> mark tt(),
                        active isNat s V1 -> mark U21(isNatKind V1, V1),
                   active isNat length V1 -> mark U11(isNatIListKind V1, V1),
                         active U106 tt() -> mark tt(),
                      active isNatIList V -> mark U31(isNatIListKind V, V),
           active isNatIList cons(V1, V2) -> mark U41(isNatKind V1, V1, V2),
                active isNatIList zeros() -> mark tt(),
                     active U12(tt(), V1) -> mark U13 isNatList V1,
                     active U11(tt(), V1) -> mark U12(isNatIListKind V1, V1),
                  active U112(tt(), L, N) -> mark U113(isNat N, L, N),
                  active U111(tt(), L, N) -> mark U112(isNatIListKind L, L, N),
                  active U113(tt(), L, N) -> mark U114(isNatKind N, L),
                     active U114(tt(), L) -> mark s length L,
                 active length cons(N, L) -> mark U111(isNatList L, L, N),
                      active length nil() -> mark 0(),
                          active U13 tt() -> mark tt(),
            active isNatList cons(V1, V2) -> mark U91(isNatKind V1, V1, V2),
                   active isNatList nil() -> mark tt(),
            active isNatList take(V1, V2) -> mark U101(isNatKind V1, V1, V2),
                         active U122 tt() -> mark nil(),
                    active U121(tt(), IL) -> mark U122 isNatIListKind IL,
              active U132(tt(), IL, M, N) -> mark U133(isNat M, IL, M, N),
              active U131(tt(), IL, M, N) -> mark U132(isNatIListKind IL, IL, M, N),
              active U133(tt(), IL, M, N) -> mark U134(isNatKind M, IL, M, N),
              active U134(tt(), IL, M, N) -> mark U135(isNat N, IL, M, N),
              active U135(tt(), IL, M, N) -> mark U136(isNatKind N, IL, M, N),
              active U136(tt(), IL, M, N) -> mark cons(N, take(M, IL)),
                     active take(0(), IL) -> mark U121(isNatIList IL, IL),
            active take(s M, cons(N, IL)) -> mark U131(isNatIList IL, IL, M, N),
                     active U22(tt(), V1) -> mark U23 isNat V1,
                     active U21(tt(), V1) -> mark U22(isNatKind V1, V1),
                          active U23 tt() -> mark tt(),
                      active U32(tt(), V) -> mark U33 isNatList V,
                      active U31(tt(), V) -> mark U32(isNatIListKind V, V),
                          active U33 tt() -> mark tt(),
                 active U42(tt(), V1, V2) -> mark U43(isNatIListKind V2, V1, V2),
                 active U41(tt(), V1, V2) -> mark U42(isNatKind V1, V1, V2),
                 active U43(tt(), V1, V2) -> mark U44(isNatIListKind V2, V1, V2),
                 active U44(tt(), V1, V2) -> mark U45(isNat V1, V2),
                     active U45(tt(), V2) -> mark U46 isNatIList V2,
                          active U46 tt() -> mark tt(),
                          active U52 tt() -> mark tt(),
                     active U51(tt(), V2) -> mark U52 isNatIListKind V2,
                          active U62 tt() -> mark tt(),
                     active U61(tt(), V2) -> mark U62 isNatIListKind V2,
                          active U71 tt() -> mark tt(),
                          active U81 tt() -> mark tt(),
                 active U92(tt(), V1, V2) -> mark U93(isNatIListKind V2, V1, V2),
                 active U91(tt(), V1, V2) -> mark U92(isNatKind V1, V1, V2),
                 active U93(tt(), V1, V2) -> mark U94(isNatIListKind V2, V1, V2),
                 active U94(tt(), V1, V2) -> mark U95(isNat V1, V2),
                     active U95(tt(), V2) -> mark U96 isNatList V2,
                          active U96 tt() -> mark tt(),
                    U102(X1, X2, mark X3) -> U102(X1, X2, X3),
                  U102(X1, X2, active X3) -> U102(X1, X2, X3),
                    U102(X1, mark X2, X3) -> U102(X1, X2, X3),
                  U102(X1, active X2, X3) -> U102(X1, X2, X3),
                    U102(mark X1, X2, X3) -> U102(X1, X2, X3),
                  U102(active X1, X2, X3) -> U102(X1, X2, X3),
                         isNatKind mark X -> isNatKind X,
                       isNatKind active X -> isNatKind X,
                    U101(X1, X2, mark X3) -> U101(X1, X2, X3),
                  U101(X1, X2, active X3) -> U101(X1, X2, X3),
                    U101(X1, mark X2, X3) -> U101(X1, X2, X3),
                  U101(X1, active X2, X3) -> U101(X1, X2, X3),
                    U101(mark X1, X2, X3) -> U101(X1, X2, X3),
                  U101(active X1, X2, X3) -> U101(X1, X2, X3),
                    U103(X1, X2, mark X3) -> U103(X1, X2, X3),
                  U103(X1, X2, active X3) -> U103(X1, X2, X3),
                    U103(X1, mark X2, X3) -> U103(X1, X2, X3),
                  U103(X1, active X2, X3) -> U103(X1, X2, X3),
                    U103(mark X1, X2, X3) -> U103(X1, X2, X3),
                  U103(active X1, X2, X3) -> U103(X1, X2, X3),
                    isNatIListKind mark X -> isNatIListKind X,
                  isNatIListKind active X -> isNatIListKind X,
                    U104(X1, X2, mark X3) -> U104(X1, X2, X3),
                  U104(X1, X2, active X3) -> U104(X1, X2, X3),
                    U104(X1, mark X2, X3) -> U104(X1, X2, X3),
                  U104(X1, active X2, X3) -> U104(X1, X2, X3),
                    U104(mark X1, X2, X3) -> U104(X1, X2, X3),
                  U104(active X1, X2, X3) -> U104(X1, X2, X3),
                        U105(X1, mark X2) -> U105(X1, X2),
                      U105(X1, active X2) -> U105(X1, X2),
                        U105(mark X1, X2) -> U105(X1, X2),
                      U105(active X1, X2) -> U105(X1, X2),
                             isNat mark X -> isNat X,
                           isNat active X -> isNat X,
                              U106 mark X -> U106 X,
                            U106 active X -> U106 X,
                        isNatIList mark X -> isNatIList X,
                      isNatIList active X -> isNatIList X,
                         U12(X1, mark X2) -> U12(X1, X2),
                       U12(X1, active X2) -> U12(X1, X2),
                         U12(mark X1, X2) -> U12(X1, X2),
                       U12(active X1, X2) -> U12(X1, X2),
                         U11(X1, mark X2) -> U11(X1, X2),
                       U11(X1, active X2) -> U11(X1, X2),
                         U11(mark X1, X2) -> U11(X1, X2),
                       U11(active X1, X2) -> U11(X1, X2),
                    U112(X1, X2, mark X3) -> U112(X1, X2, X3),
                  U112(X1, X2, active X3) -> U112(X1, X2, X3),
                    U112(X1, mark X2, X3) -> U112(X1, X2, X3),
                  U112(X1, active X2, X3) -> U112(X1, X2, X3),
                    U112(mark X1, X2, X3) -> U112(X1, X2, X3),
                  U112(active X1, X2, X3) -> U112(X1, X2, X3),
                    U111(X1, X2, mark X3) -> U111(X1, X2, X3),
                  U111(X1, X2, active X3) -> U111(X1, X2, X3),
                    U111(X1, mark X2, X3) -> U111(X1, X2, X3),
                  U111(X1, active X2, X3) -> U111(X1, X2, X3),
                    U111(mark X1, X2, X3) -> U111(X1, X2, X3),
                  U111(active X1, X2, X3) -> U111(X1, X2, X3),
                    U113(X1, X2, mark X3) -> U113(X1, X2, X3),
                  U113(X1, X2, active X3) -> U113(X1, X2, X3),
                    U113(X1, mark X2, X3) -> U113(X1, X2, X3),
                  U113(X1, active X2, X3) -> U113(X1, X2, X3),
                    U113(mark X1, X2, X3) -> U113(X1, X2, X3),
                  U113(active X1, X2, X3) -> U113(X1, X2, X3),
                        U114(X1, mark X2) -> U114(X1, X2),
                      U114(X1, active X2) -> U114(X1, X2),
                        U114(mark X1, X2) -> U114(X1, X2),
                      U114(active X1, X2) -> U114(X1, X2),
                                 s mark X -> s X,
                               s active X -> s X,
                            length mark X -> length X,
                          length active X -> length X,
                               U13 mark X -> U13 X,
                             U13 active X -> U13 X,
                         isNatList mark X -> isNatList X,
                       isNatList active X -> isNatList X,
                              U122 mark X -> U122 X,
                            U122 active X -> U122 X,
                        U121(X1, mark X2) -> U121(X1, X2),
                      U121(X1, active X2) -> U121(X1, X2),
                        U121(mark X1, X2) -> U121(X1, X2),
                      U121(active X1, X2) -> U121(X1, X2),
                U132(X1, X2, X3, mark X4) -> U132(X1, X2, X3, X4),
              U132(X1, X2, X3, active X4) -> U132(X1, X2, X3, X4),
                U132(X1, X2, mark X3, X4) -> U132(X1, X2, X3, X4),
              U132(X1, X2, active X3, X4) -> U132(X1, X2, X3, X4),
                U132(X1, mark X2, X3, X4) -> U132(X1, X2, X3, X4),
              U132(X1, active X2, X3, X4) -> U132(X1, X2, X3, X4),
                U132(mark X1, X2, X3, X4) -> U132(X1, X2, X3, X4),
              U132(active X1, X2, X3, X4) -> U132(X1, X2, X3, X4),
                U131(X1, X2, X3, mark X4) -> U131(X1, X2, X3, X4),
              U131(X1, X2, X3, active X4) -> U131(X1, X2, X3, X4),
                U131(X1, X2, mark X3, X4) -> U131(X1, X2, X3, X4),
              U131(X1, X2, active X3, X4) -> U131(X1, X2, X3, X4),
                U131(X1, mark X2, X3, X4) -> U131(X1, X2, X3, X4),
              U131(X1, active X2, X3, X4) -> U131(X1, X2, X3, X4),
                U131(mark X1, X2, X3, X4) -> U131(X1, X2, X3, X4),
              U131(active X1, X2, X3, X4) -> U131(X1, X2, X3, X4),
                U133(X1, X2, X3, mark X4) -> U133(X1, X2, X3, X4),
              U133(X1, X2, X3, active X4) -> U133(X1, X2, X3, X4),
                U133(X1, X2, mark X3, X4) -> U133(X1, X2, X3, X4),
              U133(X1, X2, active X3, X4) -> U133(X1, X2, X3, X4),
                U133(X1, mark X2, X3, X4) -> U133(X1, X2, X3, X4),
              U133(X1, active X2, X3, X4) -> U133(X1, X2, X3, X4),
                U133(mark X1, X2, X3, X4) -> U133(X1, X2, X3, X4),
              U133(active X1, X2, X3, X4) -> U133(X1, X2, X3, X4),
                U134(X1, X2, X3, mark X4) -> U134(X1, X2, X3, X4),
              U134(X1, X2, X3, active X4) -> U134(X1, X2, X3, X4),
                U134(X1, X2, mark X3, X4) -> U134(X1, X2, X3, X4),
              U134(X1, X2, active X3, X4) -> U134(X1, X2, X3, X4),
                U134(X1, mark X2, X3, X4) -> U134(X1, X2, X3, X4),
              U134(X1, active X2, X3, X4) -> U134(X1, X2, X3, X4),
                U134(mark X1, X2, X3, X4) -> U134(X1, X2, X3, X4),
              U134(active X1, X2, X3, X4) -> U134(X1, X2, X3, X4),
                U135(X1, X2, X3, mark X4) -> U135(X1, X2, X3, X4),
              U135(X1, X2, X3, active X4) -> U135(X1, X2, X3, X4),
                U135(X1, X2, mark X3, X4) -> U135(X1, X2, X3, X4),
              U135(X1, X2, active X3, X4) -> U135(X1, X2, X3, X4),
                U135(X1, mark X2, X3, X4) -> U135(X1, X2, X3, X4),
              U135(X1, active X2, X3, X4) -> U135(X1, X2, X3, X4),
                U135(mark X1, X2, X3, X4) -> U135(X1, X2, X3, X4),
              U135(active X1, X2, X3, X4) -> U135(X1, X2, X3, X4),
                U136(X1, X2, X3, mark X4) -> U136(X1, X2, X3, X4),
              U136(X1, X2, X3, active X4) -> U136(X1, X2, X3, X4),
                U136(X1, X2, mark X3, X4) -> U136(X1, X2, X3, X4),
              U136(X1, X2, active X3, X4) -> U136(X1, X2, X3, X4),
                U136(X1, mark X2, X3, X4) -> U136(X1, X2, X3, X4),
              U136(X1, active X2, X3, X4) -> U136(X1, X2, X3, X4),
                U136(mark X1, X2, X3, X4) -> U136(X1, X2, X3, X4),
              U136(active X1, X2, X3, X4) -> U136(X1, X2, X3, X4),
                        take(X1, mark X2) -> take(X1, X2),
                      take(X1, active X2) -> take(X1, X2),
                        take(mark X1, X2) -> take(X1, X2),
                      take(active X1, X2) -> take(X1, X2),
                         U22(X1, mark X2) -> U22(X1, X2),
                       U22(X1, active X2) -> U22(X1, X2),
                         U22(mark X1, X2) -> U22(X1, X2),
                       U22(active X1, X2) -> U22(X1, X2),
                         U21(X1, mark X2) -> U21(X1, X2),
                       U21(X1, active X2) -> U21(X1, X2),
                         U21(mark X1, X2) -> U21(X1, X2),
                       U21(active X1, X2) -> U21(X1, X2),
                               U23 mark X -> U23 X,
                             U23 active X -> U23 X,
                         U32(X1, mark X2) -> U32(X1, X2),
                       U32(X1, active X2) -> U32(X1, X2),
                         U32(mark X1, X2) -> U32(X1, X2),
                       U32(active X1, X2) -> U32(X1, X2),
                         U31(X1, mark X2) -> U31(X1, X2),
                       U31(X1, active X2) -> U31(X1, X2),
                         U31(mark X1, X2) -> U31(X1, X2),
                       U31(active X1, X2) -> U31(X1, X2),
                               U33 mark X -> U33 X,
                             U33 active X -> U33 X,
                     U42(X1, X2, mark X3) -> U42(X1, X2, X3),
                   U42(X1, X2, active X3) -> U42(X1, X2, X3),
                     U42(X1, mark X2, X3) -> U42(X1, X2, X3),
                   U42(X1, active X2, X3) -> U42(X1, X2, X3),
                     U42(mark X1, X2, X3) -> U42(X1, X2, X3),
                   U42(active X1, X2, X3) -> U42(X1, X2, X3),
                     U41(X1, X2, mark X3) -> U41(X1, X2, X3),
                   U41(X1, X2, active X3) -> U41(X1, X2, X3),
                     U41(X1, mark X2, X3) -> U41(X1, X2, X3),
                   U41(X1, active X2, X3) -> U41(X1, X2, X3),
                     U41(mark X1, X2, X3) -> U41(X1, X2, X3),
                   U41(active X1, X2, X3) -> U41(X1, X2, X3),
                     U43(X1, X2, mark X3) -> U43(X1, X2, X3),
                   U43(X1, X2, active X3) -> U43(X1, X2, X3),
                     U43(X1, mark X2, X3) -> U43(X1, X2, X3),
                   U43(X1, active X2, X3) -> U43(X1, X2, X3),
                     U43(mark X1, X2, X3) -> U43(X1, X2, X3),
                   U43(active X1, X2, X3) -> U43(X1, X2, X3),
                     U44(X1, X2, mark X3) -> U44(X1, X2, X3),
                   U44(X1, X2, active X3) -> U44(X1, X2, X3),
                     U44(X1, mark X2, X3) -> U44(X1, X2, X3),
                   U44(X1, active X2, X3) -> U44(X1, X2, X3),
                     U44(mark X1, X2, X3) -> U44(X1, X2, X3),
                   U44(active X1, X2, X3) -> U44(X1, X2, X3),
                         U45(X1, mark X2) -> U45(X1, X2),
                       U45(X1, active X2) -> U45(X1, X2),
                         U45(mark X1, X2) -> U45(X1, X2),
                       U45(active X1, X2) -> U45(X1, X2),
                               U46 mark X -> U46 X,
                             U46 active X -> U46 X,
                               U52 mark X -> U52 X,
                             U52 active X -> U52 X,
                         U51(X1, mark X2) -> U51(X1, X2),
                       U51(X1, active X2) -> U51(X1, X2),
                         U51(mark X1, X2) -> U51(X1, X2),
                       U51(active X1, X2) -> U51(X1, X2),
                               U62 mark X -> U62 X,
                             U62 active X -> U62 X,
                         U61(X1, mark X2) -> U61(X1, X2),
                       U61(X1, active X2) -> U61(X1, X2),
                         U61(mark X1, X2) -> U61(X1, X2),
                       U61(active X1, X2) -> U61(X1, X2),
                               U71 mark X -> U71 X,
                             U71 active X -> U71 X,
                               U81 mark X -> U81 X,
                             U81 active X -> U81 X,
                     U92(X1, X2, mark X3) -> U92(X1, X2, X3),
                   U92(X1, X2, active X3) -> U92(X1, X2, X3),
                     U92(X1, mark X2, X3) -> U92(X1, X2, X3),
                   U92(X1, active X2, X3) -> U92(X1, X2, X3),
                     U92(mark X1, X2, X3) -> U92(X1, X2, X3),
                   U92(active X1, X2, X3) -> U92(X1, X2, X3),
                     U91(X1, X2, mark X3) -> U91(X1, X2, X3),
                   U91(X1, X2, active X3) -> U91(X1, X2, X3),
                     U91(X1, mark X2, X3) -> U91(X1, X2, X3),
                   U91(X1, active X2, X3) -> U91(X1, X2, X3),
                     U91(mark X1, X2, X3) -> U91(X1, X2, X3),
                   U91(active X1, X2, X3) -> U91(X1, X2, X3),
                     U93(X1, X2, mark X3) -> U93(X1, X2, X3),
                   U93(X1, X2, active X3) -> U93(X1, X2, X3),
                     U93(X1, mark X2, X3) -> U93(X1, X2, X3),
                   U93(X1, active X2, X3) -> U93(X1, X2, X3),
                     U93(mark X1, X2, X3) -> U93(X1, X2, X3),
                   U93(active X1, X2, X3) -> U93(X1, X2, X3),
                     U94(X1, X2, mark X3) -> U94(X1, X2, X3),
                   U94(X1, X2, active X3) -> U94(X1, X2, X3),
                     U94(X1, mark X2, X3) -> U94(X1, X2, X3),
                   U94(X1, active X2, X3) -> U94(X1, X2, X3),
                     U94(mark X1, X2, X3) -> U94(X1, X2, X3),
                   U94(active X1, X2, X3) -> U94(X1, X2, X3),
                         U95(X1, mark X2) -> U95(X1, X2),
                       U95(X1, active X2) -> U95(X1, X2),
                         U95(mark X1, X2) -> U95(X1, X2),
                       U95(active X1, X2) -> U95(X1, X2),
                               U96 mark X -> U96 X,
                             U96 active X -> U96 X
      }
      Open
     
     SCC (6):
      Strict:
       {  U94#(X1, X2, mark X3) -> U94#(X1, X2, X3),
        U94#(X1, X2, active X3) -> U94#(X1, X2, X3),
          U94#(X1, mark X2, X3) -> U94#(X1, X2, X3),
        U94#(X1, active X2, X3) -> U94#(X1, X2, X3),
          U94#(mark X1, X2, X3) -> U94#(X1, X2, X3),
        U94#(active X1, X2, X3) -> U94#(X1, X2, X3)}
      Weak:
      {
                        mark cons(X1, X2) -> active cons(mark X1, X2),
                                 mark 0() -> active 0(),
                             mark zeros() -> active zeros(),
                    mark U102(X1, X2, X3) -> active U102(mark X1, X2, X3),
                         mark isNatKind X -> active isNatKind X,
                    mark U101(X1, X2, X3) -> active U101(mark X1, X2, X3),
                                mark tt() -> active tt(),
                    mark U103(X1, X2, X3) -> active U103(mark X1, X2, X3),
                    mark isNatIListKind X -> active isNatIListKind X,
                    mark U104(X1, X2, X3) -> active U104(mark X1, X2, X3),
                        mark U105(X1, X2) -> active U105(mark X1, X2),
                             mark isNat X -> active isNat X,
                              mark U106 X -> active U106 mark X,
                        mark isNatIList X -> active isNatIList X,
                         mark U12(X1, X2) -> active U12(mark X1, X2),
                         mark U11(X1, X2) -> active U11(mark X1, X2),
                    mark U112(X1, X2, X3) -> active U112(mark X1, X2, X3),
                    mark U111(X1, X2, X3) -> active U111(mark X1, X2, X3),
                    mark U113(X1, X2, X3) -> active U113(mark X1, X2, X3),
                        mark U114(X1, X2) -> active U114(mark X1, X2),
                                 mark s X -> active s mark X,
                            mark length X -> active length mark X,
                               mark U13 X -> active U13 mark X,
                         mark isNatList X -> active isNatList X,
                              mark U122 X -> active U122 mark X,
                        mark U121(X1, X2) -> active U121(mark X1, X2),
                               mark nil() -> active nil(),
                mark U132(X1, X2, X3, X4) -> active U132(mark X1, X2, X3, X4),
                mark U131(X1, X2, X3, X4) -> active U131(mark X1, X2, X3, X4),
                mark U133(X1, X2, X3, X4) -> active U133(mark X1, X2, X3, X4),
                mark U134(X1, X2, X3, X4) -> active U134(mark X1, X2, X3, X4),
                mark U135(X1, X2, X3, X4) -> active U135(mark X1, X2, X3, X4),
                mark U136(X1, X2, X3, X4) -> active U136(mark X1, X2, X3, X4),
                        mark take(X1, X2) -> active take(mark X1, mark X2),
                         mark U22(X1, X2) -> active U22(mark X1, X2),
                         mark U21(X1, X2) -> active U21(mark X1, X2),
                               mark U23 X -> active U23 mark X,
                         mark U32(X1, X2) -> active U32(mark X1, X2),
                         mark U31(X1, X2) -> active U31(mark X1, X2),
                               mark U33 X -> active U33 mark X,
                     mark U42(X1, X2, X3) -> active U42(mark X1, X2, X3),
                     mark U41(X1, X2, X3) -> active U41(mark X1, X2, X3),
                     mark U43(X1, X2, X3) -> active U43(mark X1, X2, X3),
                     mark U44(X1, X2, X3) -> active U44(mark X1, X2, X3),
                         mark U45(X1, X2) -> active U45(mark X1, X2),
                               mark U46 X -> active U46 mark X,
                               mark U52 X -> active U52 mark X,
                         mark U51(X1, X2) -> active U51(mark X1, X2),
                               mark U62 X -> active U62 mark X,
                         mark U61(X1, X2) -> active U61(mark X1, X2),
                               mark U71 X -> active U71 mark X,
                               mark U81 X -> active U81 mark X,
                     mark U92(X1, X2, X3) -> active U92(mark X1, X2, X3),
                     mark U91(X1, X2, X3) -> active U91(mark X1, X2, X3),
                     mark U93(X1, X2, X3) -> active U93(mark X1, X2, X3),
                     mark U94(X1, X2, X3) -> active U94(mark X1, X2, X3),
                         mark U95(X1, X2) -> active U95(mark X1, X2),
                               mark U96 X -> active U96 mark X,
                        cons(X1, mark X2) -> cons(X1, X2),
                      cons(X1, active X2) -> cons(X1, X2),
                        cons(mark X1, X2) -> cons(X1, X2),
                      cons(active X1, X2) -> cons(X1, X2),
                           active zeros() -> mark cons(0(), zeros()),
                active U102(tt(), V1, V2) -> mark U103(isNatIListKind V2, V1, V2),
                     active isNatKind 0() -> mark tt(),
                    active isNatKind s V1 -> mark U81 isNatKind V1,
               active isNatKind length V1 -> mark U71 isNatIListKind V1,
                active U101(tt(), V1, V2) -> mark U102(isNatKind V1, V1, V2),
                active U103(tt(), V1, V2) -> mark U104(isNatIListKind V2, V1, V2),
       active isNatIListKind cons(V1, V2) -> mark U51(isNatKind V1, V2),
            active isNatIListKind zeros() -> mark tt(),
              active isNatIListKind nil() -> mark tt(),
       active isNatIListKind take(V1, V2) -> mark U61(isNatKind V1, V2),
                active U104(tt(), V1, V2) -> mark U105(isNat V1, V2),
                    active U105(tt(), V2) -> mark U106 isNatIList V2,
                         active isNat 0() -> mark tt(),
                        active isNat s V1 -> mark U21(isNatKind V1, V1),
                   active isNat length V1 -> mark U11(isNatIListKind V1, V1),
                         active U106 tt() -> mark tt(),
                      active isNatIList V -> mark U31(isNatIListKind V, V),
           active isNatIList cons(V1, V2) -> mark U41(isNatKind V1, V1, V2),
                active isNatIList zeros() -> mark tt(),
                     active U12(tt(), V1) -> mark U13 isNatList V1,
                     active U11(tt(), V1) -> mark U12(isNatIListKind V1, V1),
                  active U112(tt(), L, N) -> mark U113(isNat N, L, N),
                  active U111(tt(), L, N) -> mark U112(isNatIListKind L, L, N),
                  active U113(tt(), L, N) -> mark U114(isNatKind N, L),
                     active U114(tt(), L) -> mark s length L,
                 active length cons(N, L) -> mark U111(isNatList L, L, N),
                      active length nil() -> mark 0(),
                          active U13 tt() -> mark tt(),
            active isNatList cons(V1, V2) -> mark U91(isNatKind V1, V1, V2),
                   active isNatList nil() -> mark tt(),
            active isNatList take(V1, V2) -> mark U101(isNatKind V1, V1, V2),
                         active U122 tt() -> mark nil(),
                    active U121(tt(), IL) -> mark U122 isNatIListKind IL,
              active U132(tt(), IL, M, N) -> mark U133(isNat M, IL, M, N),
              active U131(tt(), IL, M, N) -> mark U132(isNatIListKind IL, IL, M, N),
              active U133(tt(), IL, M, N) -> mark U134(isNatKind M, IL, M, N),
              active U134(tt(), IL, M, N) -> mark U135(isNat N, IL, M, N),
              active U135(tt(), IL, M, N) -> mark U136(isNatKind N, IL, M, N),
              active U136(tt(), IL, M, N) -> mark cons(N, take(M, IL)),
                     active take(0(), IL) -> mark U121(isNatIList IL, IL),
            active take(s M, cons(N, IL)) -> mark U131(isNatIList IL, IL, M, N),
                     active U22(tt(), V1) -> mark U23 isNat V1,
                     active U21(tt(), V1) -> mark U22(isNatKind V1, V1),
                          active U23 tt() -> mark tt(),
                      active U32(tt(), V) -> mark U33 isNatList V,
                      active U31(tt(), V) -> mark U32(isNatIListKind V, V),
                          active U33 tt() -> mark tt(),
                 active U42(tt(), V1, V2) -> mark U43(isNatIListKind V2, V1, V2),
                 active U41(tt(), V1, V2) -> mark U42(isNatKind V1, V1, V2),
                 active U43(tt(), V1, V2) -> mark U44(isNatIListKind V2, V1, V2),
                 active U44(tt(), V1, V2) -> mark U45(isNat V1, V2),
                     active U45(tt(), V2) -> mark U46 isNatIList V2,
                          active U46 tt() -> mark tt(),
                          active U52 tt() -> mark tt(),
                     active U51(tt(), V2) -> mark U52 isNatIListKind V2,
                          active U62 tt() -> mark tt(),
                     active U61(tt(), V2) -> mark U62 isNatIListKind V2,
                          active U71 tt() -> mark tt(),
                          active U81 tt() -> mark tt(),
                 active U92(tt(), V1, V2) -> mark U93(isNatIListKind V2, V1, V2),
                 active U91(tt(), V1, V2) -> mark U92(isNatKind V1, V1, V2),
                 active U93(tt(), V1, V2) -> mark U94(isNatIListKind V2, V1, V2),
                 active U94(tt(), V1, V2) -> mark U95(isNat V1, V2),
                     active U95(tt(), V2) -> mark U96 isNatList V2,
                          active U96 tt() -> mark tt(),
                    U102(X1, X2, mark X3) -> U102(X1, X2, X3),
                  U102(X1, X2, active X3) -> U102(X1, X2, X3),
                    U102(X1, mark X2, X3) -> U102(X1, X2, X3),
                  U102(X1, active X2, X3) -> U102(X1, X2, X3),
                    U102(mark X1, X2, X3) -> U102(X1, X2, X3),
                  U102(active X1, X2, X3) -> U102(X1, X2, X3),
                         isNatKind mark X -> isNatKind X,
                       isNatKind active X -> isNatKind X,
                    U101(X1, X2, mark X3) -> U101(X1, X2, X3),
                  U101(X1, X2, active X3) -> U101(X1, X2, X3),
                    U101(X1, mark X2, X3) -> U101(X1, X2, X3),
                  U101(X1, active X2, X3) -> U101(X1, X2, X3),
                    U101(mark X1, X2, X3) -> U101(X1, X2, X3),
                  U101(active X1, X2, X3) -> U101(X1, X2, X3),
                    U103(X1, X2, mark X3) -> U103(X1, X2, X3),
                  U103(X1, X2, active X3) -> U103(X1, X2, X3),
                    U103(X1, mark X2, X3) -> U103(X1, X2, X3),
                  U103(X1, active X2, X3) -> U103(X1, X2, X3),
                    U103(mark X1, X2, X3) -> U103(X1, X2, X3),
                  U103(active X1, X2, X3) -> U103(X1, X2, X3),
                    isNatIListKind mark X -> isNatIListKind X,
                  isNatIListKind active X -> isNatIListKind X,
                    U104(X1, X2, mark X3) -> U104(X1, X2, X3),
                  U104(X1, X2, active X3) -> U104(X1, X2, X3),
                    U104(X1, mark X2, X3) -> U104(X1, X2, X3),
                  U104(X1, active X2, X3) -> U104(X1, X2, X3),
                    U104(mark X1, X2, X3) -> U104(X1, X2, X3),
                  U104(active X1, X2, X3) -> U104(X1, X2, X3),
                        U105(X1, mark X2) -> U105(X1, X2),
                      U105(X1, active X2) -> U105(X1, X2),
                        U105(mark X1, X2) -> U105(X1, X2),
                      U105(active X1, X2) -> U105(X1, X2),
                             isNat mark X -> isNat X,
                           isNat active X -> isNat X,
                              U106 mark X -> U106 X,
                            U106 active X -> U106 X,
                        isNatIList mark X -> isNatIList X,
                      isNatIList active X -> isNatIList X,
                         U12(X1, mark X2) -> U12(X1, X2),
                       U12(X1, active X2) -> U12(X1, X2),
                         U12(mark X1, X2) -> U12(X1, X2),
                       U12(active X1, X2) -> U12(X1, X2),
                         U11(X1, mark X2) -> U11(X1, X2),
                       U11(X1, active X2) -> U11(X1, X2),
                         U11(mark X1, X2) -> U11(X1, X2),
                       U11(active X1, X2) -> U11(X1, X2),
                    U112(X1, X2, mark X3) -> U112(X1, X2, X3),
                  U112(X1, X2, active X3) -> U112(X1, X2, X3),
                    U112(X1, mark X2, X3) -> U112(X1, X2, X3),
                  U112(X1, active X2, X3) -> U112(X1, X2, X3),
                    U112(mark X1, X2, X3) -> U112(X1, X2, X3),
                  U112(active X1, X2, X3) -> U112(X1, X2, X3),
                    U111(X1, X2, mark X3) -> U111(X1, X2, X3),
                  U111(X1, X2, active X3) -> U111(X1, X2, X3),
                    U111(X1, mark X2, X3) -> U111(X1, X2, X3),
                  U111(X1, active X2, X3) -> U111(X1, X2, X3),
                    U111(mark X1, X2, X3) -> U111(X1, X2, X3),
                  U111(active X1, X2, X3) -> U111(X1, X2, X3),
                    U113(X1, X2, mark X3) -> U113(X1, X2, X3),
                  U113(X1, X2, active X3) -> U113(X1, X2, X3),
                    U113(X1, mark X2, X3) -> U113(X1, X2, X3),
                  U113(X1, active X2, X3) -> U113(X1, X2, X3),
                    U113(mark X1, X2, X3) -> U113(X1, X2, X3),
                  U113(active X1, X2, X3) -> U113(X1, X2, X3),
                        U114(X1, mark X2) -> U114(X1, X2),
                      U114(X1, active X2) -> U114(X1, X2),
                        U114(mark X1, X2) -> U114(X1, X2),
                      U114(active X1, X2) -> U114(X1, X2),
                                 s mark X -> s X,
                               s active X -> s X,
                            length mark X -> length X,
                          length active X -> length X,
                               U13 mark X -> U13 X,
                             U13 active X -> U13 X,
                         isNatList mark X -> isNatList X,
                       isNatList active X -> isNatList X,
                              U122 mark X -> U122 X,
                            U122 active X -> U122 X,
                        U121(X1, mark X2) -> U121(X1, X2),
                      U121(X1, active X2) -> U121(X1, X2),
                        U121(mark X1, X2) -> U121(X1, X2),
                      U121(active X1, X2) -> U121(X1, X2),
                U132(X1, X2, X3, mark X4) -> U132(X1, X2, X3, X4),
              U132(X1, X2, X3, active X4) -> U132(X1, X2, X3, X4),
                U132(X1, X2, mark X3, X4) -> U132(X1, X2, X3, X4),
              U132(X1, X2, active X3, X4) -> U132(X1, X2, X3, X4),
                U132(X1, mark X2, X3, X4) -> U132(X1, X2, X3, X4),
              U132(X1, active X2, X3, X4) -> U132(X1, X2, X3, X4),
                U132(mark X1, X2, X3, X4) -> U132(X1, X2, X3, X4),
              U132(active X1, X2, X3, X4) -> U132(X1, X2, X3, X4),
                U131(X1, X2, X3, mark X4) -> U131(X1, X2, X3, X4),
              U131(X1, X2, X3, active X4) -> U131(X1, X2, X3, X4),
                U131(X1, X2, mark X3, X4) -> U131(X1, X2, X3, X4),
              U131(X1, X2, active X3, X4) -> U131(X1, X2, X3, X4),
                U131(X1, mark X2, X3, X4) -> U131(X1, X2, X3, X4),
              U131(X1, active X2, X3, X4) -> U131(X1, X2, X3, X4),
                U131(mark X1, X2, X3, X4) -> U131(X1, X2, X3, X4),
              U131(active X1, X2, X3, X4) -> U131(X1, X2, X3, X4),
                U133(X1, X2, X3, mark X4) -> U133(X1, X2, X3, X4),
              U133(X1, X2, X3, active X4) -> U133(X1, X2, X3, X4),
                U133(X1, X2, mark X3, X4) -> U133(X1, X2, X3, X4),
              U133(X1, X2, active X3, X4) -> U133(X1, X2, X3, X4),
                U133(X1, mark X2, X3, X4) -> U133(X1, X2, X3, X4),
              U133(X1, active X2, X3, X4) -> U133(X1, X2, X3, X4),
                U133(mark X1, X2, X3, X4) -> U133(X1, X2, X3, X4),
              U133(active X1, X2, X3, X4) -> U133(X1, X2, X3, X4),
                U134(X1, X2, X3, mark X4) -> U134(X1, X2, X3, X4),
              U134(X1, X2, X3, active X4) -> U134(X1, X2, X3, X4),
                U134(X1, X2, mark X3, X4) -> U134(X1, X2, X3, X4),
              U134(X1, X2, active X3, X4) -> U134(X1, X2, X3, X4),
                U134(X1, mark X2, X3, X4) -> U134(X1, X2, X3, X4),
              U134(X1, active X2, X3, X4) -> U134(X1, X2, X3, X4),
                U134(mark X1, X2, X3, X4) -> U134(X1, X2, X3, X4),
              U134(active X1, X2, X3, X4) -> U134(X1, X2, X3, X4),
                U135(X1, X2, X3, mark X4) -> U135(X1, X2, X3, X4),
              U135(X1, X2, X3, active X4) -> U135(X1, X2, X3, X4),
                U135(X1, X2, mark X3, X4) -> U135(X1, X2, X3, X4),
              U135(X1, X2, active X3, X4) -> U135(X1, X2, X3, X4),
                U135(X1, mark X2, X3, X4) -> U135(X1, X2, X3, X4),
              U135(X1, active X2, X3, X4) -> U135(X1, X2, X3, X4),
                U135(mark X1, X2, X3, X4) -> U135(X1, X2, X3, X4),
              U135(active X1, X2, X3, X4) -> U135(X1, X2, X3, X4),
                U136(X1, X2, X3, mark X4) -> U136(X1, X2, X3, X4),
              U136(X1, X2, X3, active X4) -> U136(X1, X2, X3, X4),
                U136(X1, X2, mark X3, X4) -> U136(X1, X2, X3, X4),
              U136(X1, X2, active X3, X4) -> U136(X1, X2, X3, X4),
                U136(X1, mark X2, X3, X4) -> U136(X1, X2, X3, X4),
              U136(X1, active X2, X3, X4) -> U136(X1, X2, X3, X4),
                U136(mark X1, X2, X3, X4) -> U136(X1, X2, X3, X4),
              U136(active X1, X2, X3, X4) -> U136(X1, X2, X3, X4),
                        take(X1, mark X2) -> take(X1, X2),
                      take(X1, active X2) -> take(X1, X2),
                        take(mark X1, X2) -> take(X1, X2),
                      take(active X1, X2) -> take(X1, X2),
                         U22(X1, mark X2) -> U22(X1, X2),
                       U22(X1, active X2) -> U22(X1, X2),
                         U22(mark X1, X2) -> U22(X1, X2),
                       U22(active X1, X2) -> U22(X1, X2),
                         U21(X1, mark X2) -> U21(X1, X2),
                       U21(X1, active X2) -> U21(X1, X2),
                         U21(mark X1, X2) -> U21(X1, X2),
                       U21(active X1, X2) -> U21(X1, X2),
                               U23 mark X -> U23 X,
                             U23 active X -> U23 X,
                         U32(X1, mark X2) -> U32(X1, X2),
                       U32(X1, active X2) -> U32(X1, X2),
                         U32(mark X1, X2) -> U32(X1, X2),
                       U32(active X1, X2) -> U32(X1, X2),
                         U31(X1, mark X2) -> U31(X1, X2),
                       U31(X1, active X2) -> U31(X1, X2),
                         U31(mark X1, X2) -> U31(X1, X2),
                       U31(active X1, X2) -> U31(X1, X2),
                               U33 mark X -> U33 X,
                             U33 active X -> U33 X,
                     U42(X1, X2, mark X3) -> U42(X1, X2, X3),
                   U42(X1, X2, active X3) -> U42(X1, X2, X3),
                     U42(X1, mark X2, X3) -> U42(X1, X2, X3),
                   U42(X1, active X2, X3) -> U42(X1, X2, X3),
                     U42(mark X1, X2, X3) -> U42(X1, X2, X3),
                   U42(active X1, X2, X3) -> U42(X1, X2, X3),
                     U41(X1, X2, mark X3) -> U41(X1, X2, X3),
                   U41(X1, X2, active X3) -> U41(X1, X2, X3),
                     U41(X1, mark X2, X3) -> U41(X1, X2, X3),
                   U41(X1, active X2, X3) -> U41(X1, X2, X3),
                     U41(mark X1, X2, X3) -> U41(X1, X2, X3),
                   U41(active X1, X2, X3) -> U41(X1, X2, X3),
                     U43(X1, X2, mark X3) -> U43(X1, X2, X3),
                   U43(X1, X2, active X3) -> U43(X1, X2, X3),
                     U43(X1, mark X2, X3) -> U43(X1, X2, X3),
                   U43(X1, active X2, X3) -> U43(X1, X2, X3),
                     U43(mark X1, X2, X3) -> U43(X1, X2, X3),
                   U43(active X1, X2, X3) -> U43(X1, X2, X3),
                     U44(X1, X2, mark X3) -> U44(X1, X2, X3),
                   U44(X1, X2, active X3) -> U44(X1, X2, X3),
                     U44(X1, mark X2, X3) -> U44(X1, X2, X3),
                   U44(X1, active X2, X3) -> U44(X1, X2, X3),
                     U44(mark X1, X2, X3) -> U44(X1, X2, X3),
                   U44(active X1, X2, X3) -> U44(X1, X2, X3),
                         U45(X1, mark X2) -> U45(X1, X2),
                       U45(X1, active X2) -> U45(X1, X2),
                         U45(mark X1, X2) -> U45(X1, X2),
                       U45(active X1, X2) -> U45(X1, X2),
                               U46 mark X -> U46 X,
                             U46 active X -> U46 X,
                               U52 mark X -> U52 X,
                             U52 active X -> U52 X,
                         U51(X1, mark X2) -> U51(X1, X2),
                       U51(X1, active X2) -> U51(X1, X2),
                         U51(mark X1, X2) -> U51(X1, X2),
                       U51(active X1, X2) -> U51(X1, X2),
                               U62 mark X -> U62 X,
                             U62 active X -> U62 X,
                         U61(X1, mark X2) -> U61(X1, X2),
                       U61(X1, active X2) -> U61(X1, X2),
                         U61(mark X1, X2) -> U61(X1, X2),
                       U61(active X1, X2) -> U61(X1, X2),
                               U71 mark X -> U71 X,
                             U71 active X -> U71 X,
                               U81 mark X -> U81 X,
                             U81 active X -> U81 X,
                     U92(X1, X2, mark X3) -> U92(X1, X2, X3),
                   U92(X1, X2, active X3) -> U92(X1, X2, X3),
                     U92(X1, mark X2, X3) -> U92(X1, X2, X3),
                   U92(X1, active X2, X3) -> U92(X1, X2, X3),
                     U92(mark X1, X2, X3) -> U92(X1, X2, X3),
                   U92(active X1, X2, X3) -> U92(X1, X2, X3),
                     U91(X1, X2, mark X3) -> U91(X1, X2, X3),
                   U91(X1, X2, active X3) -> U91(X1, X2, X3),
                     U91(X1, mark X2, X3) -> U91(X1, X2, X3),
                   U91(X1, active X2, X3) -> U91(X1, X2, X3),
                     U91(mark X1, X2, X3) -> U91(X1, X2, X3),
                   U91(active X1, X2, X3) -> U91(X1, X2, X3),
                     U93(X1, X2, mark X3) -> U93(X1, X2, X3),
                   U93(X1, X2, active X3) -> U93(X1, X2, X3),
                     U93(X1, mark X2, X3) -> U93(X1, X2, X3),
                   U93(X1, active X2, X3) -> U93(X1, X2, X3),
                     U93(mark X1, X2, X3) -> U93(X1, X2, X3),
                   U93(active X1, X2, X3) -> U93(X1, X2, X3),
                     U94(X1, X2, mark X3) -> U94(X1, X2, X3),
                   U94(X1, X2, active X3) -> U94(X1, X2, X3),
                     U94(X1, mark X2, X3) -> U94(X1, X2, X3),
                   U94(X1, active X2, X3) -> U94(X1, X2, X3),
                     U94(mark X1, X2, X3) -> U94(X1, X2, X3),
                   U94(active X1, X2, X3) -> U94(X1, X2, X3),
                         U95(X1, mark X2) -> U95(X1, X2),
                       U95(X1, active X2) -> U95(X1, X2),
                         U95(mark X1, X2) -> U95(X1, X2),
                       U95(active X1, X2) -> U95(X1, X2),
                               U96 mark X -> U96 X,
                             U96 active X -> U96 X
      }
      Open
     
     SCC (6):
      Strict:
       {  U93#(X1, X2, mark X3) -> U93#(X1, X2, X3),
        U93#(X1, X2, active X3) -> U93#(X1, X2, X3),
          U93#(X1, mark X2, X3) -> U93#(X1, X2, X3),
        U93#(X1, active X2, X3) -> U93#(X1, X2, X3),
          U93#(mark X1, X2, X3) -> U93#(X1, X2, X3),
        U93#(active X1, X2, X3) -> U93#(X1, X2, X3)}
      Weak:
      {
                        mark cons(X1, X2) -> active cons(mark X1, X2),
                                 mark 0() -> active 0(),
                             mark zeros() -> active zeros(),
                    mark U102(X1, X2, X3) -> active U102(mark X1, X2, X3),
                         mark isNatKind X -> active isNatKind X,
                    mark U101(X1, X2, X3) -> active U101(mark X1, X2, X3),
                                mark tt() -> active tt(),
                    mark U103(X1, X2, X3) -> active U103(mark X1, X2, X3),
                    mark isNatIListKind X -> active isNatIListKind X,
                    mark U104(X1, X2, X3) -> active U104(mark X1, X2, X3),
                        mark U105(X1, X2) -> active U105(mark X1, X2),
                             mark isNat X -> active isNat X,
                              mark U106 X -> active U106 mark X,
                        mark isNatIList X -> active isNatIList X,
                         mark U12(X1, X2) -> active U12(mark X1, X2),
                         mark U11(X1, X2) -> active U11(mark X1, X2),
                    mark U112(X1, X2, X3) -> active U112(mark X1, X2, X3),
                    mark U111(X1, X2, X3) -> active U111(mark X1, X2, X3),
                    mark U113(X1, X2, X3) -> active U113(mark X1, X2, X3),
                        mark U114(X1, X2) -> active U114(mark X1, X2),
                                 mark s X -> active s mark X,
                            mark length X -> active length mark X,
                               mark U13 X -> active U13 mark X,
                         mark isNatList X -> active isNatList X,
                              mark U122 X -> active U122 mark X,
                        mark U121(X1, X2) -> active U121(mark X1, X2),
                               mark nil() -> active nil(),
                mark U132(X1, X2, X3, X4) -> active U132(mark X1, X2, X3, X4),
                mark U131(X1, X2, X3, X4) -> active U131(mark X1, X2, X3, X4),
                mark U133(X1, X2, X3, X4) -> active U133(mark X1, X2, X3, X4),
                mark U134(X1, X2, X3, X4) -> active U134(mark X1, X2, X3, X4),
                mark U135(X1, X2, X3, X4) -> active U135(mark X1, X2, X3, X4),
                mark U136(X1, X2, X3, X4) -> active U136(mark X1, X2, X3, X4),
                        mark take(X1, X2) -> active take(mark X1, mark X2),
                         mark U22(X1, X2) -> active U22(mark X1, X2),
                         mark U21(X1, X2) -> active U21(mark X1, X2),
                               mark U23 X -> active U23 mark X,
                         mark U32(X1, X2) -> active U32(mark X1, X2),
                         mark U31(X1, X2) -> active U31(mark X1, X2),
                               mark U33 X -> active U33 mark X,
                     mark U42(X1, X2, X3) -> active U42(mark X1, X2, X3),
                     mark U41(X1, X2, X3) -> active U41(mark X1, X2, X3),
                     mark U43(X1, X2, X3) -> active U43(mark X1, X2, X3),
                     mark U44(X1, X2, X3) -> active U44(mark X1, X2, X3),
                         mark U45(X1, X2) -> active U45(mark X1, X2),
                               mark U46 X -> active U46 mark X,
                               mark U52 X -> active U52 mark X,
                         mark U51(X1, X2) -> active U51(mark X1, X2),
                               mark U62 X -> active U62 mark X,
                         mark U61(X1, X2) -> active U61(mark X1, X2),
                               mark U71 X -> active U71 mark X,
                               mark U81 X -> active U81 mark X,
                     mark U92(X1, X2, X3) -> active U92(mark X1, X2, X3),
                     mark U91(X1, X2, X3) -> active U91(mark X1, X2, X3),
                     mark U93(X1, X2, X3) -> active U93(mark X1, X2, X3),
                     mark U94(X1, X2, X3) -> active U94(mark X1, X2, X3),
                         mark U95(X1, X2) -> active U95(mark X1, X2),
                               mark U96 X -> active U96 mark X,
                        cons(X1, mark X2) -> cons(X1, X2),
                      cons(X1, active X2) -> cons(X1, X2),
                        cons(mark X1, X2) -> cons(X1, X2),
                      cons(active X1, X2) -> cons(X1, X2),
                           active zeros() -> mark cons(0(), zeros()),
                active U102(tt(), V1, V2) -> mark U103(isNatIListKind V2, V1, V2),
                     active isNatKind 0() -> mark tt(),
                    active isNatKind s V1 -> mark U81 isNatKind V1,
               active isNatKind length V1 -> mark U71 isNatIListKind V1,
                active U101(tt(), V1, V2) -> mark U102(isNatKind V1, V1, V2),
                active U103(tt(), V1, V2) -> mark U104(isNatIListKind V2, V1, V2),
       active isNatIListKind cons(V1, V2) -> mark U51(isNatKind V1, V2),
            active isNatIListKind zeros() -> mark tt(),
              active isNatIListKind nil() -> mark tt(),
       active isNatIListKind take(V1, V2) -> mark U61(isNatKind V1, V2),
                active U104(tt(), V1, V2) -> mark U105(isNat V1, V2),
                    active U105(tt(), V2) -> mark U106 isNatIList V2,
                         active isNat 0() -> mark tt(),
                        active isNat s V1 -> mark U21(isNatKind V1, V1),
                   active isNat length V1 -> mark U11(isNatIListKind V1, V1),
                         active U106 tt() -> mark tt(),
                      active isNatIList V -> mark U31(isNatIListKind V, V),
           active isNatIList cons(V1, V2) -> mark U41(isNatKind V1, V1, V2),
                active isNatIList zeros() -> mark tt(),
                     active U12(tt(), V1) -> mark U13 isNatList V1,
                     active U11(tt(), V1) -> mark U12(isNatIListKind V1, V1),
                  active U112(tt(), L, N) -> mark U113(isNat N, L, N),
                  active U111(tt(), L, N) -> mark U112(isNatIListKind L, L, N),
                  active U113(tt(), L, N) -> mark U114(isNatKind N, L),
                     active U114(tt(), L) -> mark s length L,
                 active length cons(N, L) -> mark U111(isNatList L, L, N),
                      active length nil() -> mark 0(),
                          active U13 tt() -> mark tt(),
            active isNatList cons(V1, V2) -> mark U91(isNatKind V1, V1, V2),
                   active isNatList nil() -> mark tt(),
            active isNatList take(V1, V2) -> mark U101(isNatKind V1, V1, V2),
                         active U122 tt() -> mark nil(),
                    active U121(tt(), IL) -> mark U122 isNatIListKind IL,
              active U132(tt(), IL, M, N) -> mark U133(isNat M, IL, M, N),
              active U131(tt(), IL, M, N) -> mark U132(isNatIListKind IL, IL, M, N),
              active U133(tt(), IL, M, N) -> mark U134(isNatKind M, IL, M, N),
              active U134(tt(), IL, M, N) -> mark U135(isNat N, IL, M, N),
              active U135(tt(), IL, M, N) -> mark U136(isNatKind N, IL, M, N),
              active U136(tt(), IL, M, N) -> mark cons(N, take(M, IL)),
                     active take(0(), IL) -> mark U121(isNatIList IL, IL),
            active take(s M, cons(N, IL)) -> mark U131(isNatIList IL, IL, M, N),
                     active U22(tt(), V1) -> mark U23 isNat V1,
                     active U21(tt(), V1) -> mark U22(isNatKind V1, V1),
                          active U23 tt() -> mark tt(),
                      active U32(tt(), V) -> mark U33 isNatList V,
                      active U31(tt(), V) -> mark U32(isNatIListKind V, V),
                          active U33 tt() -> mark tt(),
                 active U42(tt(), V1, V2) -> mark U43(isNatIListKind V2, V1, V2),
                 active U41(tt(), V1, V2) -> mark U42(isNatKind V1, V1, V2),
                 active U43(tt(), V1, V2) -> mark U44(isNatIListKind V2, V1, V2),
                 active U44(tt(), V1, V2) -> mark U45(isNat V1, V2),
                     active U45(tt(), V2) -> mark U46 isNatIList V2,
                          active U46 tt() -> mark tt(),
                          active U52 tt() -> mark tt(),
                     active U51(tt(), V2) -> mark U52 isNatIListKind V2,
                          active U62 tt() -> mark tt(),
                     active U61(tt(), V2) -> mark U62 isNatIListKind V2,
                          active U71 tt() -> mark tt(),
                          active U81 tt() -> mark tt(),
                 active U92(tt(), V1, V2) -> mark U93(isNatIListKind V2, V1, V2),
                 active U91(tt(), V1, V2) -> mark U92(isNatKind V1, V1, V2),
                 active U93(tt(), V1, V2) -> mark U94(isNatIListKind V2, V1, V2),
                 active U94(tt(), V1, V2) -> mark U95(isNat V1, V2),
                     active U95(tt(), V2) -> mark U96 isNatList V2,
                          active U96 tt() -> mark tt(),
                    U102(X1, X2, mark X3) -> U102(X1, X2, X3),
                  U102(X1, X2, active X3) -> U102(X1, X2, X3),
                    U102(X1, mark X2, X3) -> U102(X1, X2, X3),
                  U102(X1, active X2, X3) -> U102(X1, X2, X3),
                    U102(mark X1, X2, X3) -> U102(X1, X2, X3),
                  U102(active X1, X2, X3) -> U102(X1, X2, X3),
                         isNatKind mark X -> isNatKind X,
                       isNatKind active X -> isNatKind X,
                    U101(X1, X2, mark X3) -> U101(X1, X2, X3),
                  U101(X1, X2, active X3) -> U101(X1, X2, X3),
                    U101(X1, mark X2, X3) -> U101(X1, X2, X3),
                  U101(X1, active X2, X3) -> U101(X1, X2, X3),
                    U101(mark X1, X2, X3) -> U101(X1, X2, X3),
                  U101(active X1, X2, X3) -> U101(X1, X2, X3),
                    U103(X1, X2, mark X3) -> U103(X1, X2, X3),
                  U103(X1, X2, active X3) -> U103(X1, X2, X3),
                    U103(X1, mark X2, X3) -> U103(X1, X2, X3),
                  U103(X1, active X2, X3) -> U103(X1, X2, X3),
                    U103(mark X1, X2, X3) -> U103(X1, X2, X3),
                  U103(active X1, X2, X3) -> U103(X1, X2, X3),
                    isNatIListKind mark X -> isNatIListKind X,
                  isNatIListKind active X -> isNatIListKind X,
                    U104(X1, X2, mark X3) -> U104(X1, X2, X3),
                  U104(X1, X2, active X3) -> U104(X1, X2, X3),
                    U104(X1, mark X2, X3) -> U104(X1, X2, X3),
                  U104(X1, active X2, X3) -> U104(X1, X2, X3),
                    U104(mark X1, X2, X3) -> U104(X1, X2, X3),
                  U104(active X1, X2, X3) -> U104(X1, X2, X3),
                        U105(X1, mark X2) -> U105(X1, X2),
                      U105(X1, active X2) -> U105(X1, X2),
                        U105(mark X1, X2) -> U105(X1, X2),
                      U105(active X1, X2) -> U105(X1, X2),
                             isNat mark X -> isNat X,
                           isNat active X -> isNat X,
                              U106 mark X -> U106 X,
                            U106 active X -> U106 X,
                        isNatIList mark X -> isNatIList X,
                      isNatIList active X -> isNatIList X,
                         U12(X1, mark X2) -> U12(X1, X2),
                       U12(X1, active X2) -> U12(X1, X2),
                         U12(mark X1, X2) -> U12(X1, X2),
                       U12(active X1, X2) -> U12(X1, X2),
                         U11(X1, mark X2) -> U11(X1, X2),
                       U11(X1, active X2) -> U11(X1, X2),
                         U11(mark X1, X2) -> U11(X1, X2),
                       U11(active X1, X2) -> U11(X1, X2),
                    U112(X1, X2, mark X3) -> U112(X1, X2, X3),
                  U112(X1, X2, active X3) -> U112(X1, X2, X3),
                    U112(X1, mark X2, X3) -> U112(X1, X2, X3),
                  U112(X1, active X2, X3) -> U112(X1, X2, X3),
                    U112(mark X1, X2, X3) -> U112(X1, X2, X3),
                  U112(active X1, X2, X3) -> U112(X1, X2, X3),
                    U111(X1, X2, mark X3) -> U111(X1, X2, X3),
                  U111(X1, X2, active X3) -> U111(X1, X2, X3),
                    U111(X1, mark X2, X3) -> U111(X1, X2, X3),
                  U111(X1, active X2, X3) -> U111(X1, X2, X3),
                    U111(mark X1, X2, X3) -> U111(X1, X2, X3),
                  U111(active X1, X2, X3) -> U111(X1, X2, X3),
                    U113(X1, X2, mark X3) -> U113(X1, X2, X3),
                  U113(X1, X2, active X3) -> U113(X1, X2, X3),
                    U113(X1, mark X2, X3) -> U113(X1, X2, X3),
                  U113(X1, active X2, X3) -> U113(X1, X2, X3),
                    U113(mark X1, X2, X3) -> U113(X1, X2, X3),
                  U113(active X1, X2, X3) -> U113(X1, X2, X3),
                        U114(X1, mark X2) -> U114(X1, X2),
                      U114(X1, active X2) -> U114(X1, X2),
                        U114(mark X1, X2) -> U114(X1, X2),
                      U114(active X1, X2) -> U114(X1, X2),
                                 s mark X -> s X,
                               s active X -> s X,
                            length mark X -> length X,
                          length active X -> length X,
                               U13 mark X -> U13 X,
                             U13 active X -> U13 X,
                         isNatList mark X -> isNatList X,
                       isNatList active X -> isNatList X,
                              U122 mark X -> U122 X,
                            U122 active X -> U122 X,
                        U121(X1, mark X2) -> U121(X1, X2),
                      U121(X1, active X2) -> U121(X1, X2),
                        U121(mark X1, X2) -> U121(X1, X2),
                      U121(active X1, X2) -> U121(X1, X2),
                U132(X1, X2, X3, mark X4) -> U132(X1, X2, X3, X4),
              U132(X1, X2, X3, active X4) -> U132(X1, X2, X3, X4),
                U132(X1, X2, mark X3, X4) -> U132(X1, X2, X3, X4),
              U132(X1, X2, active X3, X4) -> U132(X1, X2, X3, X4),
                U132(X1, mark X2, X3, X4) -> U132(X1, X2, X3, X4),
              U132(X1, active X2, X3, X4) -> U132(X1, X2, X3, X4),
                U132(mark X1, X2, X3, X4) -> U132(X1, X2, X3, X4),
              U132(active X1, X2, X3, X4) -> U132(X1, X2, X3, X4),
                U131(X1, X2, X3, mark X4) -> U131(X1, X2, X3, X4),
              U131(X1, X2, X3, active X4) -> U131(X1, X2, X3, X4),
                U131(X1, X2, mark X3, X4) -> U131(X1, X2, X3, X4),
              U131(X1, X2, active X3, X4) -> U131(X1, X2, X3, X4),
                U131(X1, mark X2, X3, X4) -> U131(X1, X2, X3, X4),
              U131(X1, active X2, X3, X4) -> U131(X1, X2, X3, X4),
                U131(mark X1, X2, X3, X4) -> U131(X1, X2, X3, X4),
              U131(active X1, X2, X3, X4) -> U131(X1, X2, X3, X4),
                U133(X1, X2, X3, mark X4) -> U133(X1, X2, X3, X4),
              U133(X1, X2, X3, active X4) -> U133(X1, X2, X3, X4),
                U133(X1, X2, mark X3, X4) -> U133(X1, X2, X3, X4),
              U133(X1, X2, active X3, X4) -> U133(X1, X2, X3, X4),
                U133(X1, mark X2, X3, X4) -> U133(X1, X2, X3, X4),
              U133(X1, active X2, X3, X4) -> U133(X1, X2, X3, X4),
                U133(mark X1, X2, X3, X4) -> U133(X1, X2, X3, X4),
              U133(active X1, X2, X3, X4) -> U133(X1, X2, X3, X4),
                U134(X1, X2, X3, mark X4) -> U134(X1, X2, X3, X4),
              U134(X1, X2, X3, active X4) -> U134(X1, X2, X3, X4),
                U134(X1, X2, mark X3, X4) -> U134(X1, X2, X3, X4),
              U134(X1, X2, active X3, X4) -> U134(X1, X2, X3, X4),
                U134(X1, mark X2, X3, X4) -> U134(X1, X2, X3, X4),
              U134(X1, active X2, X3, X4) -> U134(X1, X2, X3, X4),
                U134(mark X1, X2, X3, X4) -> U134(X1, X2, X3, X4),
              U134(active X1, X2, X3, X4) -> U134(X1, X2, X3, X4),
                U135(X1, X2, X3, mark X4) -> U135(X1, X2, X3, X4),
              U135(X1, X2, X3, active X4) -> U135(X1, X2, X3, X4),
                U135(X1, X2, mark X3, X4) -> U135(X1, X2, X3, X4),
              U135(X1, X2, active X3, X4) -> U135(X1, X2, X3, X4),
                U135(X1, mark X2, X3, X4) -> U135(X1, X2, X3, X4),
              U135(X1, active X2, X3, X4) -> U135(X1, X2, X3, X4),
                U135(mark X1, X2, X3, X4) -> U135(X1, X2, X3, X4),
              U135(active X1, X2, X3, X4) -> U135(X1, X2, X3, X4),
                U136(X1, X2, X3, mark X4) -> U136(X1, X2, X3, X4),
              U136(X1, X2, X3, active X4) -> U136(X1, X2, X3, X4),
                U136(X1, X2, mark X3, X4) -> U136(X1, X2, X3, X4),
              U136(X1, X2, active X3, X4) -> U136(X1, X2, X3, X4),
                U136(X1, mark X2, X3, X4) -> U136(X1, X2, X3, X4),
              U136(X1, active X2, X3, X4) -> U136(X1, X2, X3, X4),
                U136(mark X1, X2, X3, X4) -> U136(X1, X2, X3, X4),
              U136(active X1, X2, X3, X4) -> U136(X1, X2, X3, X4),
                        take(X1, mark X2) -> take(X1, X2),
                      take(X1, active X2) -> take(X1, X2),
                        take(mark X1, X2) -> take(X1, X2),
                      take(active X1, X2) -> take(X1, X2),
                         U22(X1, mark X2) -> U22(X1, X2),
                       U22(X1, active X2) -> U22(X1, X2),
                         U22(mark X1, X2) -> U22(X1, X2),
                       U22(active X1, X2) -> U22(X1, X2),
                         U21(X1, mark X2) -> U21(X1, X2),
                       U21(X1, active X2) -> U21(X1, X2),
                         U21(mark X1, X2) -> U21(X1, X2),
                       U21(active X1, X2) -> U21(X1, X2),
                               U23 mark X -> U23 X,
                             U23 active X -> U23 X,
                         U32(X1, mark X2) -> U32(X1, X2),
                       U32(X1, active X2) -> U32(X1, X2),
                         U32(mark X1, X2) -> U32(X1, X2),
                       U32(active X1, X2) -> U32(X1, X2),
                         U31(X1, mark X2) -> U31(X1, X2),
                       U31(X1, active X2) -> U31(X1, X2),
                         U31(mark X1, X2) -> U31(X1, X2),
                       U31(active X1, X2) -> U31(X1, X2),
                               U33 mark X -> U33 X,
                             U33 active X -> U33 X,
                     U42(X1, X2, mark X3) -> U42(X1, X2, X3),
                   U42(X1, X2, active X3) -> U42(X1, X2, X3),
                     U42(X1, mark X2, X3) -> U42(X1, X2, X3),
                   U42(X1, active X2, X3) -> U42(X1, X2, X3),
                     U42(mark X1, X2, X3) -> U42(X1, X2, X3),
                   U42(active X1, X2, X3) -> U42(X1, X2, X3),
                     U41(X1, X2, mark X3) -> U41(X1, X2, X3),
                   U41(X1, X2, active X3) -> U41(X1, X2, X3),
                     U41(X1, mark X2, X3) -> U41(X1, X2, X3),
                   U41(X1, active X2, X3) -> U41(X1, X2, X3),
                     U41(mark X1, X2, X3) -> U41(X1, X2, X3),
                   U41(active X1, X2, X3) -> U41(X1, X2, X3),
                     U43(X1, X2, mark X3) -> U43(X1, X2, X3),
                   U43(X1, X2, active X3) -> U43(X1, X2, X3),
                     U43(X1, mark X2, X3) -> U43(X1, X2, X3),
                   U43(X1, active X2, X3) -> U43(X1, X2, X3),
                     U43(mark X1, X2, X3) -> U43(X1, X2, X3),
                   U43(active X1, X2, X3) -> U43(X1, X2, X3),
                     U44(X1, X2, mark X3) -> U44(X1, X2, X3),
                   U44(X1, X2, active X3) -> U44(X1, X2, X3),
                     U44(X1, mark X2, X3) -> U44(X1, X2, X3),
                   U44(X1, active X2, X3) -> U44(X1, X2, X3),
                     U44(mark X1, X2, X3) -> U44(X1, X2, X3),
                   U44(active X1, X2, X3) -> U44(X1, X2, X3),
                         U45(X1, mark X2) -> U45(X1, X2),
                       U45(X1, active X2) -> U45(X1, X2),
                         U45(mark X1, X2) -> U45(X1, X2),
                       U45(active X1, X2) -> U45(X1, X2),
                               U46 mark X -> U46 X,
                             U46 active X -> U46 X,
                               U52 mark X -> U52 X,
                             U52 active X -> U52 X,
                         U51(X1, mark X2) -> U51(X1, X2),
                       U51(X1, active X2) -> U51(X1, X2),
                         U51(mark X1, X2) -> U51(X1, X2),
                       U51(active X1, X2) -> U51(X1, X2),
                               U62 mark X -> U62 X,
                             U62 active X -> U62 X,
                         U61(X1, mark X2) -> U61(X1, X2),
                       U61(X1, active X2) -> U61(X1, X2),
                         U61(mark X1, X2) -> U61(X1, X2),
                       U61(active X1, X2) -> U61(X1, X2),
                               U71 mark X -> U71 X,
                             U71 active X -> U71 X,
                               U81 mark X -> U81 X,
                             U81 active X -> U81 X,
                     U92(X1, X2, mark X3) -> U92(X1, X2, X3),
                   U92(X1, X2, active X3) -> U92(X1, X2, X3),
                     U92(X1, mark X2, X3) -> U92(X1, X2, X3),
                   U92(X1, active X2, X3) -> U92(X1, X2, X3),
                     U92(mark X1, X2, X3) -> U92(X1, X2, X3),
                   U92(active X1, X2, X3) -> U92(X1, X2, X3),
                     U91(X1, X2, mark X3) -> U91(X1, X2, X3),
                   U91(X1, X2, active X3) -> U91(X1, X2, X3),
                     U91(X1, mark X2, X3) -> U91(X1, X2, X3),
                   U91(X1, active X2, X3) -> U91(X1, X2, X3),
                     U91(mark X1, X2, X3) -> U91(X1, X2, X3),
                   U91(active X1, X2, X3) -> U91(X1, X2, X3),
                     U93(X1, X2, mark X3) -> U93(X1, X2, X3),
                   U93(X1, X2, active X3) -> U93(X1, X2, X3),
                     U93(X1, mark X2, X3) -> U93(X1, X2, X3),
                   U93(X1, active X2, X3) -> U93(X1, X2, X3),
                     U93(mark X1, X2, X3) -> U93(X1, X2, X3),
                   U93(active X1, X2, X3) -> U93(X1, X2, X3),
                     U94(X1, X2, mark X3) -> U94(X1, X2, X3),
                   U94(X1, X2, active X3) -> U94(X1, X2, X3),
                     U94(X1, mark X2, X3) -> U94(X1, X2, X3),
                   U94(X1, active X2, X3) -> U94(X1, X2, X3),
                     U94(mark X1, X2, X3) -> U94(X1, X2, X3),
                   U94(active X1, X2, X3) -> U94(X1, X2, X3),
                         U95(X1, mark X2) -> U95(X1, X2),
                       U95(X1, active X2) -> U95(X1, X2),
                         U95(mark X1, X2) -> U95(X1, X2),
                       U95(active X1, X2) -> U95(X1, X2),
                               U96 mark X -> U96 X,
                             U96 active X -> U96 X
      }
      Open
     
     SCC (6):
      Strict:
       {  U91#(X1, X2, mark X3) -> U91#(X1, X2, X3),
        U91#(X1, X2, active X3) -> U91#(X1, X2, X3),
          U91#(X1, mark X2, X3) -> U91#(X1, X2, X3),
        U91#(X1, active X2, X3) -> U91#(X1, X2, X3),
          U91#(mark X1, X2, X3) -> U91#(X1, X2, X3),
        U91#(active X1, X2, X3) -> U91#(X1, X2, X3)}
      Weak:
      {
                        mark cons(X1, X2) -> active cons(mark X1, X2),
                                 mark 0() -> active 0(),
                             mark zeros() -> active zeros(),
                    mark U102(X1, X2, X3) -> active U102(mark X1, X2, X3),
                         mark isNatKind X -> active isNatKind X,
                    mark U101(X1, X2, X3) -> active U101(mark X1, X2, X3),
                                mark tt() -> active tt(),
                    mark U103(X1, X2, X3) -> active U103(mark X1, X2, X3),
                    mark isNatIListKind X -> active isNatIListKind X,
                    mark U104(X1, X2, X3) -> active U104(mark X1, X2, X3),
                        mark U105(X1, X2) -> active U105(mark X1, X2),
                             mark isNat X -> active isNat X,
                              mark U106 X -> active U106 mark X,
                        mark isNatIList X -> active isNatIList X,
                         mark U12(X1, X2) -> active U12(mark X1, X2),
                         mark U11(X1, X2) -> active U11(mark X1, X2),
                    mark U112(X1, X2, X3) -> active U112(mark X1, X2, X3),
                    mark U111(X1, X2, X3) -> active U111(mark X1, X2, X3),
                    mark U113(X1, X2, X3) -> active U113(mark X1, X2, X3),
                        mark U114(X1, X2) -> active U114(mark X1, X2),
                                 mark s X -> active s mark X,
                            mark length X -> active length mark X,
                               mark U13 X -> active U13 mark X,
                         mark isNatList X -> active isNatList X,
                              mark U122 X -> active U122 mark X,
                        mark U121(X1, X2) -> active U121(mark X1, X2),
                               mark nil() -> active nil(),
                mark U132(X1, X2, X3, X4) -> active U132(mark X1, X2, X3, X4),
                mark U131(X1, X2, X3, X4) -> active U131(mark X1, X2, X3, X4),
                mark U133(X1, X2, X3, X4) -> active U133(mark X1, X2, X3, X4),
                mark U134(X1, X2, X3, X4) -> active U134(mark X1, X2, X3, X4),
                mark U135(X1, X2, X3, X4) -> active U135(mark X1, X2, X3, X4),
                mark U136(X1, X2, X3, X4) -> active U136(mark X1, X2, X3, X4),
                        mark take(X1, X2) -> active take(mark X1, mark X2),
                         mark U22(X1, X2) -> active U22(mark X1, X2),
                         mark U21(X1, X2) -> active U21(mark X1, X2),
                               mark U23 X -> active U23 mark X,
                         mark U32(X1, X2) -> active U32(mark X1, X2),
                         mark U31(X1, X2) -> active U31(mark X1, X2),
                               mark U33 X -> active U33 mark X,
                     mark U42(X1, X2, X3) -> active U42(mark X1, X2, X3),
                     mark U41(X1, X2, X3) -> active U41(mark X1, X2, X3),
                     mark U43(X1, X2, X3) -> active U43(mark X1, X2, X3),
                     mark U44(X1, X2, X3) -> active U44(mark X1, X2, X3),
                         mark U45(X1, X2) -> active U45(mark X1, X2),
                               mark U46 X -> active U46 mark X,
                               mark U52 X -> active U52 mark X,
                         mark U51(X1, X2) -> active U51(mark X1, X2),
                               mark U62 X -> active U62 mark X,
                         mark U61(X1, X2) -> active U61(mark X1, X2),
                               mark U71 X -> active U71 mark X,
                               mark U81 X -> active U81 mark X,
                     mark U92(X1, X2, X3) -> active U92(mark X1, X2, X3),
                     mark U91(X1, X2, X3) -> active U91(mark X1, X2, X3),
                     mark U93(X1, X2, X3) -> active U93(mark X1, X2, X3),
                     mark U94(X1, X2, X3) -> active U94(mark X1, X2, X3),
                         mark U95(X1, X2) -> active U95(mark X1, X2),
                               mark U96 X -> active U96 mark X,
                        cons(X1, mark X2) -> cons(X1, X2),
                      cons(X1, active X2) -> cons(X1, X2),
                        cons(mark X1, X2) -> cons(X1, X2),
                      cons(active X1, X2) -> cons(X1, X2),
                           active zeros() -> mark cons(0(), zeros()),
                active U102(tt(), V1, V2) -> mark U103(isNatIListKind V2, V1, V2),
                     active isNatKind 0() -> mark tt(),
                    active isNatKind s V1 -> mark U81 isNatKind V1,
               active isNatKind length V1 -> mark U71 isNatIListKind V1,
                active U101(tt(), V1, V2) -> mark U102(isNatKind V1, V1, V2),
                active U103(tt(), V1, V2) -> mark U104(isNatIListKind V2, V1, V2),
       active isNatIListKind cons(V1, V2) -> mark U51(isNatKind V1, V2),
            active isNatIListKind zeros() -> mark tt(),
              active isNatIListKind nil() -> mark tt(),
       active isNatIListKind take(V1, V2) -> mark U61(isNatKind V1, V2),
                active U104(tt(), V1, V2) -> mark U105(isNat V1, V2),
                    active U105(tt(), V2) -> mark U106 isNatIList V2,
                         active isNat 0() -> mark tt(),
                        active isNat s V1 -> mark U21(isNatKind V1, V1),
                   active isNat length V1 -> mark U11(isNatIListKind V1, V1),
                         active U106 tt() -> mark tt(),
                      active isNatIList V -> mark U31(isNatIListKind V, V),
           active isNatIList cons(V1, V2) -> mark U41(isNatKind V1, V1, V2),
                active isNatIList zeros() -> mark tt(),
                     active U12(tt(), V1) -> mark U13 isNatList V1,
                     active U11(tt(), V1) -> mark U12(isNatIListKind V1, V1),
                  active U112(tt(), L, N) -> mark U113(isNat N, L, N),
                  active U111(tt(), L, N) -> mark U112(isNatIListKind L, L, N),
                  active U113(tt(), L, N) -> mark U114(isNatKind N, L),
                     active U114(tt(), L) -> mark s length L,
                 active length cons(N, L) -> mark U111(isNatList L, L, N),
                      active length nil() -> mark 0(),
                          active U13 tt() -> mark tt(),
            active isNatList cons(V1, V2) -> mark U91(isNatKind V1, V1, V2),
                   active isNatList nil() -> mark tt(),
            active isNatList take(V1, V2) -> mark U101(isNatKind V1, V1, V2),
                         active U122 tt() -> mark nil(),
                    active U121(tt(), IL) -> mark U122 isNatIListKind IL,
              active U132(tt(), IL, M, N) -> mark U133(isNat M, IL, M, N),
              active U131(tt(), IL, M, N) -> mark U132(isNatIListKind IL, IL, M, N),
              active U133(tt(), IL, M, N) -> mark U134(isNatKind M, IL, M, N),
              active U134(tt(), IL, M, N) -> mark U135(isNat N, IL, M, N),
              active U135(tt(), IL, M, N) -> mark U136(isNatKind N, IL, M, N),
              active U136(tt(), IL, M, N) -> mark cons(N, take(M, IL)),
                     active take(0(), IL) -> mark U121(isNatIList IL, IL),
            active take(s M, cons(N, IL)) -> mark U131(isNatIList IL, IL, M, N),
                     active U22(tt(), V1) -> mark U23 isNat V1,
                     active U21(tt(), V1) -> mark U22(isNatKind V1, V1),
                          active U23 tt() -> mark tt(),
                      active U32(tt(), V) -> mark U33 isNatList V,
                      active U31(tt(), V) -> mark U32(isNatIListKind V, V),
                          active U33 tt() -> mark tt(),
                 active U42(tt(), V1, V2) -> mark U43(isNatIListKind V2, V1, V2),
                 active U41(tt(), V1, V2) -> mark U42(isNatKind V1, V1, V2),
                 active U43(tt(), V1, V2) -> mark U44(isNatIListKind V2, V1, V2),
                 active U44(tt(), V1, V2) -> mark U45(isNat V1, V2),
                     active U45(tt(), V2) -> mark U46 isNatIList V2,
                          active U46 tt() -> mark tt(),
                          active U52 tt() -> mark tt(),
                     active U51(tt(), V2) -> mark U52 isNatIListKind V2,
                          active U62 tt() -> mark tt(),
                     active U61(tt(), V2) -> mark U62 isNatIListKind V2,
                          active U71 tt() -> mark tt(),
                          active U81 tt() -> mark tt(),
                 active U92(tt(), V1, V2) -> mark U93(isNatIListKind V2, V1, V2),
                 active U91(tt(), V1, V2) -> mark U92(isNatKind V1, V1, V2),
                 active U93(tt(), V1, V2) -> mark U94(isNatIListKind V2, V1, V2),
                 active U94(tt(), V1, V2) -> mark U95(isNat V1, V2),
                     active U95(tt(), V2) -> mark U96 isNatList V2,
                          active U96 tt() -> mark tt(),
                    U102(X1, X2, mark X3) -> U102(X1, X2, X3),
                  U102(X1, X2, active X3) -> U102(X1, X2, X3),
                    U102(X1, mark X2, X3) -> U102(X1, X2, X3),
                  U102(X1, active X2, X3) -> U102(X1, X2, X3),
                    U102(mark X1, X2, X3) -> U102(X1, X2, X3),
                  U102(active X1, X2, X3) -> U102(X1, X2, X3),
                         isNatKind mark X -> isNatKind X,
                       isNatKind active X -> isNatKind X,
                    U101(X1, X2, mark X3) -> U101(X1, X2, X3),
                  U101(X1, X2, active X3) -> U101(X1, X2, X3),
                    U101(X1, mark X2, X3) -> U101(X1, X2, X3),
                  U101(X1, active X2, X3) -> U101(X1, X2, X3),
                    U101(mark X1, X2, X3) -> U101(X1, X2, X3),
                  U101(active X1, X2, X3) -> U101(X1, X2, X3),
                    U103(X1, X2, mark X3) -> U103(X1, X2, X3),
                  U103(X1, X2, active X3) -> U103(X1, X2, X3),
                    U103(X1, mark X2, X3) -> U103(X1, X2, X3),
                  U103(X1, active X2, X3) -> U103(X1, X2, X3),
                    U103(mark X1, X2, X3) -> U103(X1, X2, X3),
                  U103(active X1, X2, X3) -> U103(X1, X2, X3),
                    isNatIListKind mark X -> isNatIListKind X,
                  isNatIListKind active X -> isNatIListKind X,
                    U104(X1, X2, mark X3) -> U104(X1, X2, X3),
                  U104(X1, X2, active X3) -> U104(X1, X2, X3),
                    U104(X1, mark X2, X3) -> U104(X1, X2, X3),
                  U104(X1, active X2, X3) -> U104(X1, X2, X3),
                    U104(mark X1, X2, X3) -> U104(X1, X2, X3),
                  U104(active X1, X2, X3) -> U104(X1, X2, X3),
                        U105(X1, mark X2) -> U105(X1, X2),
                      U105(X1, active X2) -> U105(X1, X2),
                        U105(mark X1, X2) -> U105(X1, X2),
                      U105(active X1, X2) -> U105(X1, X2),
                             isNat mark X -> isNat X,
                           isNat active X -> isNat X,
                              U106 mark X -> U106 X,
                            U106 active X -> U106 X,
                        isNatIList mark X -> isNatIList X,
                      isNatIList active X -> isNatIList X,
                         U12(X1, mark X2) -> U12(X1, X2),
                       U12(X1, active X2) -> U12(X1, X2),
                         U12(mark X1, X2) -> U12(X1, X2),
                       U12(active X1, X2) -> U12(X1, X2),
                         U11(X1, mark X2) -> U11(X1, X2),
                       U11(X1, active X2) -> U11(X1, X2),
                         U11(mark X1, X2) -> U11(X1, X2),
                       U11(active X1, X2) -> U11(X1, X2),
                    U112(X1, X2, mark X3) -> U112(X1, X2, X3),
                  U112(X1, X2, active X3) -> U112(X1, X2, X3),
                    U112(X1, mark X2, X3) -> U112(X1, X2, X3),
                  U112(X1, active X2, X3) -> U112(X1, X2, X3),
                    U112(mark X1, X2, X3) -> U112(X1, X2, X3),
                  U112(active X1, X2, X3) -> U112(X1, X2, X3),
                    U111(X1, X2, mark X3) -> U111(X1, X2, X3),
                  U111(X1, X2, active X3) -> U111(X1, X2, X3),
                    U111(X1, mark X2, X3) -> U111(X1, X2, X3),
                  U111(X1, active X2, X3) -> U111(X1, X2, X3),
                    U111(mark X1, X2, X3) -> U111(X1, X2, X3),
                  U111(active X1, X2, X3) -> U111(X1, X2, X3),
                    U113(X1, X2, mark X3) -> U113(X1, X2, X3),
                  U113(X1, X2, active X3) -> U113(X1, X2, X3),
                    U113(X1, mark X2, X3) -> U113(X1, X2, X3),
                  U113(X1, active X2, X3) -> U113(X1, X2, X3),
                    U113(mark X1, X2, X3) -> U113(X1, X2, X3),
                  U113(active X1, X2, X3) -> U113(X1, X2, X3),
                        U114(X1, mark X2) -> U114(X1, X2),
                      U114(X1, active X2) -> U114(X1, X2),
                        U114(mark X1, X2) -> U114(X1, X2),
                      U114(active X1, X2) -> U114(X1, X2),
                                 s mark X -> s X,
                               s active X -> s X,
                            length mark X -> length X,
                          length active X -> length X,
                               U13 mark X -> U13 X,
                             U13 active X -> U13 X,
                         isNatList mark X -> isNatList X,
                       isNatList active X -> isNatList X,
                              U122 mark X -> U122 X,
                            U122 active X -> U122 X,
                        U121(X1, mark X2) -> U121(X1, X2),
                      U121(X1, active X2) -> U121(X1, X2),
                        U121(mark X1, X2) -> U121(X1, X2),
                      U121(active X1, X2) -> U121(X1, X2),
                U132(X1, X2, X3, mark X4) -> U132(X1, X2, X3, X4),
              U132(X1, X2, X3, active X4) -> U132(X1, X2, X3, X4),
                U132(X1, X2, mark X3, X4) -> U132(X1, X2, X3, X4),
              U132(X1, X2, active X3, X4) -> U132(X1, X2, X3, X4),
                U132(X1, mark X2, X3, X4) -> U132(X1, X2, X3, X4),
              U132(X1, active X2, X3, X4) -> U132(X1, X2, X3, X4),
                U132(mark X1, X2, X3, X4) -> U132(X1, X2, X3, X4),
              U132(active X1, X2, X3, X4) -> U132(X1, X2, X3, X4),
                U131(X1, X2, X3, mark X4) -> U131(X1, X2, X3, X4),
              U131(X1, X2, X3, active X4) -> U131(X1, X2, X3, X4),
                U131(X1, X2, mark X3, X4) -> U131(X1, X2, X3, X4),
              U131(X1, X2, active X3, X4) -> U131(X1, X2, X3, X4),
                U131(X1, mark X2, X3, X4) -> U131(X1, X2, X3, X4),
              U131(X1, active X2, X3, X4) -> U131(X1, X2, X3, X4),
                U131(mark X1, X2, X3, X4) -> U131(X1, X2, X3, X4),
              U131(active X1, X2, X3, X4) -> U131(X1, X2, X3, X4),
                U133(X1, X2, X3, mark X4) -> U133(X1, X2, X3, X4),
              U133(X1, X2, X3, active X4) -> U133(X1, X2, X3, X4),
                U133(X1, X2, mark X3, X4) -> U133(X1, X2, X3, X4),
              U133(X1, X2, active X3, X4) -> U133(X1, X2, X3, X4),
                U133(X1, mark X2, X3, X4) -> U133(X1, X2, X3, X4),
              U133(X1, active X2, X3, X4) -> U133(X1, X2, X3, X4),
                U133(mark X1, X2, X3, X4) -> U133(X1, X2, X3, X4),
              U133(active X1, X2, X3, X4) -> U133(X1, X2, X3, X4),
                U134(X1, X2, X3, mark X4) -> U134(X1, X2, X3, X4),
              U134(X1, X2, X3, active X4) -> U134(X1, X2, X3, X4),
                U134(X1, X2, mark X3, X4) -> U134(X1, X2, X3, X4),
              U134(X1, X2, active X3, X4) -> U134(X1, X2, X3, X4),
                U134(X1, mark X2, X3, X4) -> U134(X1, X2, X3, X4),
              U134(X1, active X2, X3, X4) -> U134(X1, X2, X3, X4),
                U134(mark X1, X2, X3, X4) -> U134(X1, X2, X3, X4),
              U134(active X1, X2, X3, X4) -> U134(X1, X2, X3, X4),
                U135(X1, X2, X3, mark X4) -> U135(X1, X2, X3, X4),
              U135(X1, X2, X3, active X4) -> U135(X1, X2, X3, X4),
                U135(X1, X2, mark X3, X4) -> U135(X1, X2, X3, X4),
              U135(X1, X2, active X3, X4) -> U135(X1, X2, X3, X4),
                U135(X1, mark X2, X3, X4) -> U135(X1, X2, X3, X4),
              U135(X1, active X2, X3, X4) -> U135(X1, X2, X3, X4),
                U135(mark X1, X2, X3, X4) -> U135(X1, X2, X3, X4),
              U135(active X1, X2, X3, X4) -> U135(X1, X2, X3, X4),
                U136(X1, X2, X3, mark X4) -> U136(X1, X2, X3, X4),
              U136(X1, X2, X3, active X4) -> U136(X1, X2, X3, X4),
                U136(X1, X2, mark X3, X4) -> U136(X1, X2, X3, X4),
              U136(X1, X2, active X3, X4) -> U136(X1, X2, X3, X4),
                U136(X1, mark X2, X3, X4) -> U136(X1, X2, X3, X4),
              U136(X1, active X2, X3, X4) -> U136(X1, X2, X3, X4),
                U136(mark X1, X2, X3, X4) -> U136(X1, X2, X3, X4),
              U136(active X1, X2, X3, X4) -> U136(X1, X2, X3, X4),
                        take(X1, mark X2) -> take(X1, X2),
                      take(X1, active X2) -> take(X1, X2),
                        take(mark X1, X2) -> take(X1, X2),
                      take(active X1, X2) -> take(X1, X2),
                         U22(X1, mark X2) -> U22(X1, X2),
                       U22(X1, active X2) -> U22(X1, X2),
                         U22(mark X1, X2) -> U22(X1, X2),
                       U22(active X1, X2) -> U22(X1, X2),
                         U21(X1, mark X2) -> U21(X1, X2),
                       U21(X1, active X2) -> U21(X1, X2),
                         U21(mark X1, X2) -> U21(X1, X2),
                       U21(active X1, X2) -> U21(X1, X2),
                               U23 mark X -> U23 X,
                             U23 active X -> U23 X,
                         U32(X1, mark X2) -> U32(X1, X2),
                       U32(X1, active X2) -> U32(X1, X2),
                         U32(mark X1, X2) -> U32(X1, X2),
                       U32(active X1, X2) -> U32(X1, X2),
                         U31(X1, mark X2) -> U31(X1, X2),
                       U31(X1, active X2) -> U31(X1, X2),
                         U31(mark X1, X2) -> U31(X1, X2),
                       U31(active X1, X2) -> U31(X1, X2),
                               U33 mark X -> U33 X,
                             U33 active X -> U33 X,
                     U42(X1, X2, mark X3) -> U42(X1, X2, X3),
                   U42(X1, X2, active X3) -> U42(X1, X2, X3),
                     U42(X1, mark X2, X3) -> U42(X1, X2, X3),
                   U42(X1, active X2, X3) -> U42(X1, X2, X3),
                     U42(mark X1, X2, X3) -> U42(X1, X2, X3),
                   U42(active X1, X2, X3) -> U42(X1, X2, X3),
                     U41(X1, X2, mark X3) -> U41(X1, X2, X3),
                   U41(X1, X2, active X3) -> U41(X1, X2, X3),
                     U41(X1, mark X2, X3) -> U41(X1, X2, X3),
                   U41(X1, active X2, X3) -> U41(X1, X2, X3),
                     U41(mark X1, X2, X3) -> U41(X1, X2, X3),
                   U41(active X1, X2, X3) -> U41(X1, X2, X3),
                     U43(X1, X2, mark X3) -> U43(X1, X2, X3),
                   U43(X1, X2, active X3) -> U43(X1, X2, X3),
                     U43(X1, mark X2, X3) -> U43(X1, X2, X3),
                   U43(X1, active X2, X3) -> U43(X1, X2, X3),
                     U43(mark X1, X2, X3) -> U43(X1, X2, X3),
                   U43(active X1, X2, X3) -> U43(X1, X2, X3),
                     U44(X1, X2, mark X3) -> U44(X1, X2, X3),
                   U44(X1, X2, active X3) -> U44(X1, X2, X3),
                     U44(X1, mark X2, X3) -> U44(X1, X2, X3),
                   U44(X1, active X2, X3) -> U44(X1, X2, X3),
                     U44(mark X1, X2, X3) -> U44(X1, X2, X3),
                   U44(active X1, X2, X3) -> U44(X1, X2, X3),
                         U45(X1, mark X2) -> U45(X1, X2),
                       U45(X1, active X2) -> U45(X1, X2),
                         U45(mark X1, X2) -> U45(X1, X2),
                       U45(active X1, X2) -> U45(X1, X2),
                               U46 mark X -> U46 X,
                             U46 active X -> U46 X,
                               U52 mark X -> U52 X,
                             U52 active X -> U52 X,
                         U51(X1, mark X2) -> U51(X1, X2),
                       U51(X1, active X2) -> U51(X1, X2),
                         U51(mark X1, X2) -> U51(X1, X2),
                       U51(active X1, X2) -> U51(X1, X2),
                               U62 mark X -> U62 X,
                             U62 active X -> U62 X,
                         U61(X1, mark X2) -> U61(X1, X2),
                       U61(X1, active X2) -> U61(X1, X2),
                         U61(mark X1, X2) -> U61(X1, X2),
                       U61(active X1, X2) -> U61(X1, X2),
                               U71 mark X -> U71 X,
                             U71 active X -> U71 X,
                               U81 mark X -> U81 X,
                             U81 active X -> U81 X,
                     U92(X1, X2, mark X3) -> U92(X1, X2, X3),
                   U92(X1, X2, active X3) -> U92(X1, X2, X3),
                     U92(X1, mark X2, X3) -> U92(X1, X2, X3),
                   U92(X1, active X2, X3) -> U92(X1, X2, X3),
                     U92(mark X1, X2, X3) -> U92(X1, X2, X3),
                   U92(active X1, X2, X3) -> U92(X1, X2, X3),
                     U91(X1, X2, mark X3) -> U91(X1, X2, X3),
                   U91(X1, X2, active X3) -> U91(X1, X2, X3),
                     U91(X1, mark X2, X3) -> U91(X1, X2, X3),
                   U91(X1, active X2, X3) -> U91(X1, X2, X3),
                     U91(mark X1, X2, X3) -> U91(X1, X2, X3),
                   U91(active X1, X2, X3) -> U91(X1, X2, X3),
                     U93(X1, X2, mark X3) -> U93(X1, X2, X3),
                   U93(X1, X2, active X3) -> U93(X1, X2, X3),
                     U93(X1, mark X2, X3) -> U93(X1, X2, X3),
                   U93(X1, active X2, X3) -> U93(X1, X2, X3),
                     U93(mark X1, X2, X3) -> U93(X1, X2, X3),
                   U93(active X1, X2, X3) -> U93(X1, X2, X3),
                     U94(X1, X2, mark X3) -> U94(X1, X2, X3),
                   U94(X1, X2, active X3) -> U94(X1, X2, X3),
                     U94(X1, mark X2, X3) -> U94(X1, X2, X3),
                   U94(X1, active X2, X3) -> U94(X1, X2, X3),
                     U94(mark X1, X2, X3) -> U94(X1, X2, X3),
                   U94(active X1, X2, X3) -> U94(X1, X2, X3),
                         U95(X1, mark X2) -> U95(X1, X2),
                       U95(X1, active X2) -> U95(X1, X2),
                         U95(mark X1, X2) -> U95(X1, X2),
                       U95(active X1, X2) -> U95(X1, X2),
                               U96 mark X -> U96 X,
                             U96 active X -> U96 X
      }
      Open
     
     
     
     SCC (6):
      Strict:
       {  U92#(X1, X2, mark X3) -> U92#(X1, X2, X3),
        U92#(X1, X2, active X3) -> U92#(X1, X2, X3),
          U92#(X1, mark X2, X3) -> U92#(X1, X2, X3),
        U92#(X1, active X2, X3) -> U92#(X1, X2, X3),
          U92#(mark X1, X2, X3) -> U92#(X1, X2, X3),
        U92#(active X1, X2, X3) -> U92#(X1, X2, X3)}
      Weak:
      {
                        mark cons(X1, X2) -> active cons(mark X1, X2),
                                 mark 0() -> active 0(),
                             mark zeros() -> active zeros(),
                    mark U102(X1, X2, X3) -> active U102(mark X1, X2, X3),
                         mark isNatKind X -> active isNatKind X,
                    mark U101(X1, X2, X3) -> active U101(mark X1, X2, X3),
                                mark tt() -> active tt(),
                    mark U103(X1, X2, X3) -> active U103(mark X1, X2, X3),
                    mark isNatIListKind X -> active isNatIListKind X,
                    mark U104(X1, X2, X3) -> active U104(mark X1, X2, X3),
                        mark U105(X1, X2) -> active U105(mark X1, X2),
                             mark isNat X -> active isNat X,
                              mark U106 X -> active U106 mark X,
                        mark isNatIList X -> active isNatIList X,
                         mark U12(X1, X2) -> active U12(mark X1, X2),
                         mark U11(X1, X2) -> active U11(mark X1, X2),
                    mark U112(X1, X2, X3) -> active U112(mark X1, X2, X3),
                    mark U111(X1, X2, X3) -> active U111(mark X1, X2, X3),
                    mark U113(X1, X2, X3) -> active U113(mark X1, X2, X3),
                        mark U114(X1, X2) -> active U114(mark X1, X2),
                                 mark s X -> active s mark X,
                            mark length X -> active length mark X,
                               mark U13 X -> active U13 mark X,
                         mark isNatList X -> active isNatList X,
                              mark U122 X -> active U122 mark X,
                        mark U121(X1, X2) -> active U121(mark X1, X2),
                               mark nil() -> active nil(),
                mark U132(X1, X2, X3, X4) -> active U132(mark X1, X2, X3, X4),
                mark U131(X1, X2, X3, X4) -> active U131(mark X1, X2, X3, X4),
                mark U133(X1, X2, X3, X4) -> active U133(mark X1, X2, X3, X4),
                mark U134(X1, X2, X3, X4) -> active U134(mark X1, X2, X3, X4),
                mark U135(X1, X2, X3, X4) -> active U135(mark X1, X2, X3, X4),
                mark U136(X1, X2, X3, X4) -> active U136(mark X1, X2, X3, X4),
                        mark take(X1, X2) -> active take(mark X1, mark X2),
                         mark U22(X1, X2) -> active U22(mark X1, X2),
                         mark U21(X1, X2) -> active U21(mark X1, X2),
                               mark U23 X -> active U23 mark X,
                         mark U32(X1, X2) -> active U32(mark X1, X2),
                         mark U31(X1, X2) -> active U31(mark X1, X2),
                               mark U33 X -> active U33 mark X,
                     mark U42(X1, X2, X3) -> active U42(mark X1, X2, X3),
                     mark U41(X1, X2, X3) -> active U41(mark X1, X2, X3),
                     mark U43(X1, X2, X3) -> active U43(mark X1, X2, X3),
                     mark U44(X1, X2, X3) -> active U44(mark X1, X2, X3),
                         mark U45(X1, X2) -> active U45(mark X1, X2),
                               mark U46 X -> active U46 mark X,
                               mark U52 X -> active U52 mark X,
                         mark U51(X1, X2) -> active U51(mark X1, X2),
                               mark U62 X -> active U62 mark X,
                         mark U61(X1, X2) -> active U61(mark X1, X2),
                               mark U71 X -> active U71 mark X,
                               mark U81 X -> active U81 mark X,
                     mark U92(X1, X2, X3) -> active U92(mark X1, X2, X3),
                     mark U91(X1, X2, X3) -> active U91(mark X1, X2, X3),
                     mark U93(X1, X2, X3) -> active U93(mark X1, X2, X3),
                     mark U94(X1, X2, X3) -> active U94(mark X1, X2, X3),
                         mark U95(X1, X2) -> active U95(mark X1, X2),
                               mark U96 X -> active U96 mark X,
                        cons(X1, mark X2) -> cons(X1, X2),
                      cons(X1, active X2) -> cons(X1, X2),
                        cons(mark X1, X2) -> cons(X1, X2),
                      cons(active X1, X2) -> cons(X1, X2),
                           active zeros() -> mark cons(0(), zeros()),
                active U102(tt(), V1, V2) -> mark U103(isNatIListKind V2, V1, V2),
                     active isNatKind 0() -> mark tt(),
                    active isNatKind s V1 -> mark U81 isNatKind V1,
               active isNatKind length V1 -> mark U71 isNatIListKind V1,
                active U101(tt(), V1, V2) -> mark U102(isNatKind V1, V1, V2),
                active U103(tt(), V1, V2) -> mark U104(isNatIListKind V2, V1, V2),
       active isNatIListKind cons(V1, V2) -> mark U51(isNatKind V1, V2),
            active isNatIListKind zeros() -> mark tt(),
              active isNatIListKind nil() -> mark tt(),
       active isNatIListKind take(V1, V2) -> mark U61(isNatKind V1, V2),
                active U104(tt(), V1, V2) -> mark U105(isNat V1, V2),
                    active U105(tt(), V2) -> mark U106 isNatIList V2,
                         active isNat 0() -> mark tt(),
                        active isNat s V1 -> mark U21(isNatKind V1, V1),
                   active isNat length V1 -> mark U11(isNatIListKind V1, V1),
                         active U106 tt() -> mark tt(),
                      active isNatIList V -> mark U31(isNatIListKind V, V),
           active isNatIList cons(V1, V2) -> mark U41(isNatKind V1, V1, V2),
                active isNatIList zeros() -> mark tt(),
                     active U12(tt(), V1) -> mark U13 isNatList V1,
                     active U11(tt(), V1) -> mark U12(isNatIListKind V1, V1),
                  active U112(tt(), L, N) -> mark U113(isNat N, L, N),
                  active U111(tt(), L, N) -> mark U112(isNatIListKind L, L, N),
                  active U113(tt(), L, N) -> mark U114(isNatKind N, L),
                     active U114(tt(), L) -> mark s length L,
                 active length cons(N, L) -> mark U111(isNatList L, L, N),
                      active length nil() -> mark 0(),
                          active U13 tt() -> mark tt(),
            active isNatList cons(V1, V2) -> mark U91(isNatKind V1, V1, V2),
                   active isNatList nil() -> mark tt(),
            active isNatList take(V1, V2) -> mark U101(isNatKind V1, V1, V2),
                         active U122 tt() -> mark nil(),
                    active U121(tt(), IL) -> mark U122 isNatIListKind IL,
              active U132(tt(), IL, M, N) -> mark U133(isNat M, IL, M, N),
              active U131(tt(), IL, M, N) -> mark U132(isNatIListKind IL, IL, M, N),
              active U133(tt(), IL, M, N) -> mark U134(isNatKind M, IL, M, N),
              active U134(tt(), IL, M, N) -> mark U135(isNat N, IL, M, N),
              active U135(tt(), IL, M, N) -> mark U136(isNatKind N, IL, M, N),
              active U136(tt(), IL, M, N) -> mark cons(N, take(M, IL)),
                     active take(0(), IL) -> mark U121(isNatIList IL, IL),
            active take(s M, cons(N, IL)) -> mark U131(isNatIList IL, IL, M, N),
                     active U22(tt(), V1) -> mark U23 isNat V1,
                     active U21(tt(), V1) -> mark U22(isNatKind V1, V1),
                          active U23 tt() -> mark tt(),
                      active U32(tt(), V) -> mark U33 isNatList V,
                      active U31(tt(), V) -> mark U32(isNatIListKind V, V),
                          active U33 tt() -> mark tt(),
                 active U42(tt(), V1, V2) -> mark U43(isNatIListKind V2, V1, V2),
                 active U41(tt(), V1, V2) -> mark U42(isNatKind V1, V1, V2),
                 active U43(tt(), V1, V2) -> mark U44(isNatIListKind V2, V1, V2),
                 active U44(tt(), V1, V2) -> mark U45(isNat V1, V2),
                     active U45(tt(), V2) -> mark U46 isNatIList V2,
                          active U46 tt() -> mark tt(),
                          active U52 tt() -> mark tt(),
                     active U51(tt(), V2) -> mark U52 isNatIListKind V2,
                          active U62 tt() -> mark tt(),
                     active U61(tt(), V2) -> mark U62 isNatIListKind V2,
                          active U71 tt() -> mark tt(),
                          active U81 tt() -> mark tt(),
                 active U92(tt(), V1, V2) -> mark U93(isNatIListKind V2, V1, V2),
                 active U91(tt(), V1, V2) -> mark U92(isNatKind V1, V1, V2),
                 active U93(tt(), V1, V2) -> mark U94(isNatIListKind V2, V1, V2),
                 active U94(tt(), V1, V2) -> mark U95(isNat V1, V2),
                     active U95(tt(), V2) -> mark U96 isNatList V2,
                          active U96 tt() -> mark tt(),
                    U102(X1, X2, mark X3) -> U102(X1, X2, X3),
                  U102(X1, X2, active X3) -> U102(X1, X2, X3),
                    U102(X1, mark X2, X3) -> U102(X1, X2, X3),
                  U102(X1, active X2, X3) -> U102(X1, X2, X3),
                    U102(mark X1, X2, X3) -> U102(X1, X2, X3),
                  U102(active X1, X2, X3) -> U102(X1, X2, X3),
                         isNatKind mark X -> isNatKind X,
                       isNatKind active X -> isNatKind X,
                    U101(X1, X2, mark X3) -> U101(X1, X2, X3),
                  U101(X1, X2, active X3) -> U101(X1, X2, X3),
                    U101(X1, mark X2, X3) -> U101(X1, X2, X3),
                  U101(X1, active X2, X3) -> U101(X1, X2, X3),
                    U101(mark X1, X2, X3) -> U101(X1, X2, X3),
                  U101(active X1, X2, X3) -> U101(X1, X2, X3),
                    U103(X1, X2, mark X3) -> U103(X1, X2, X3),
                  U103(X1, X2, active X3) -> U103(X1, X2, X3),
                    U103(X1, mark X2, X3) -> U103(X1, X2, X3),
                  U103(X1, active X2, X3) -> U103(X1, X2, X3),
                    U103(mark X1, X2, X3) -> U103(X1, X2, X3),
                  U103(active X1, X2, X3) -> U103(X1, X2, X3),
                    isNatIListKind mark X -> isNatIListKind X,
                  isNatIListKind active X -> isNatIListKind X,
                    U104(X1, X2, mark X3) -> U104(X1, X2, X3),
                  U104(X1, X2, active X3) -> U104(X1, X2, X3),
                    U104(X1, mark X2, X3) -> U104(X1, X2, X3),
                  U104(X1, active X2, X3) -> U104(X1, X2, X3),
                    U104(mark X1, X2, X3) -> U104(X1, X2, X3),
                  U104(active X1, X2, X3) -> U104(X1, X2, X3),
                        U105(X1, mark X2) -> U105(X1, X2),
                      U105(X1, active X2) -> U105(X1, X2),
                        U105(mark X1, X2) -> U105(X1, X2),
                      U105(active X1, X2) -> U105(X1, X2),
                             isNat mark X -> isNat X,
                           isNat active X -> isNat X,
                              U106 mark X -> U106 X,
                            U106 active X -> U106 X,
                        isNatIList mark X -> isNatIList X,
                      isNatIList active X -> isNatIList X,
                         U12(X1, mark X2) -> U12(X1, X2),
                       U12(X1, active X2) -> U12(X1, X2),
                         U12(mark X1, X2) -> U12(X1, X2),
                       U12(active X1, X2) -> U12(X1, X2),
                         U11(X1, mark X2) -> U11(X1, X2),
                       U11(X1, active X2) -> U11(X1, X2),
                         U11(mark X1, X2) -> U11(X1, X2),
                       U11(active X1, X2) -> U11(X1, X2),
                    U112(X1, X2, mark X3) -> U112(X1, X2, X3),
                  U112(X1, X2, active X3) -> U112(X1, X2, X3),
                    U112(X1, mark X2, X3) -> U112(X1, X2, X3),
                  U112(X1, active X2, X3) -> U112(X1, X2, X3),
                    U112(mark X1, X2, X3) -> U112(X1, X2, X3),
                  U112(active X1, X2, X3) -> U112(X1, X2, X3),
                    U111(X1, X2, mark X3) -> U111(X1, X2, X3),
                  U111(X1, X2, active X3) -> U111(X1, X2, X3),
                    U111(X1, mark X2, X3) -> U111(X1, X2, X3),
                  U111(X1, active X2, X3) -> U111(X1, X2, X3),
                    U111(mark X1, X2, X3) -> U111(X1, X2, X3),
                  U111(active X1, X2, X3) -> U111(X1, X2, X3),
                    U113(X1, X2, mark X3) -> U113(X1, X2, X3),
                  U113(X1, X2, active X3) -> U113(X1, X2, X3),
                    U113(X1, mark X2, X3) -> U113(X1, X2, X3),
                  U113(X1, active X2, X3) -> U113(X1, X2, X3),
                    U113(mark X1, X2, X3) -> U113(X1, X2, X3),
                  U113(active X1, X2, X3) -> U113(X1, X2, X3),
                        U114(X1, mark X2) -> U114(X1, X2),
                      U114(X1, active X2) -> U114(X1, X2),
                        U114(mark X1, X2) -> U114(X1, X2),
                      U114(active X1, X2) -> U114(X1, X2),
                                 s mark X -> s X,
                               s active X -> s X,
                            length mark X -> length X,
                          length active X -> length X,
                               U13 mark X -> U13 X,
                             U13 active X -> U13 X,
                         isNatList mark X -> isNatList X,
                       isNatList active X -> isNatList X,
                              U122 mark X -> U122 X,
                            U122 active X -> U122 X,
                        U121(X1, mark X2) -> U121(X1, X2),
                      U121(X1, active X2) -> U121(X1, X2),
                        U121(mark X1, X2) -> U121(X1, X2),
                      U121(active X1, X2) -> U121(X1, X2),
                U132(X1, X2, X3, mark X4) -> U132(X1, X2, X3, X4),
              U132(X1, X2, X3, active X4) -> U132(X1, X2, X3, X4),
                U132(X1, X2, mark X3, X4) -> U132(X1, X2, X3, X4),
              U132(X1, X2, active X3, X4) -> U132(X1, X2, X3, X4),
                U132(X1, mark X2, X3, X4) -> U132(X1, X2, X3, X4),
              U132(X1, active X2, X3, X4) -> U132(X1, X2, X3, X4),
                U132(mark X1, X2, X3, X4) -> U132(X1, X2, X3, X4),
              U132(active X1, X2, X3, X4) -> U132(X1, X2, X3, X4),
                U131(X1, X2, X3, mark X4) -> U131(X1, X2, X3, X4),
              U131(X1, X2, X3, active X4) -> U131(X1, X2, X3, X4),
                U131(X1, X2, mark X3, X4) -> U131(X1, X2, X3, X4),
              U131(X1, X2, active X3, X4) -> U131(X1, X2, X3, X4),
                U131(X1, mark X2, X3, X4) -> U131(X1, X2, X3, X4),
              U131(X1, active X2, X3, X4) -> U131(X1, X2, X3, X4),
                U131(mark X1, X2, X3, X4) -> U131(X1, X2, X3, X4),
              U131(active X1, X2, X3, X4) -> U131(X1, X2, X3, X4),
                U133(X1, X2, X3, mark X4) -> U133(X1, X2, X3, X4),
              U133(X1, X2, X3, active X4) -> U133(X1, X2, X3, X4),
                U133(X1, X2, mark X3, X4) -> U133(X1, X2, X3, X4),
              U133(X1, X2, active X3, X4) -> U133(X1, X2, X3, X4),
                U133(X1, mark X2, X3, X4) -> U133(X1, X2, X3, X4),
              U133(X1, active X2, X3, X4) -> U133(X1, X2, X3, X4),
                U133(mark X1, X2, X3, X4) -> U133(X1, X2, X3, X4),
              U133(active X1, X2, X3, X4) -> U133(X1, X2, X3, X4),
                U134(X1, X2, X3, mark X4) -> U134(X1, X2, X3, X4),
              U134(X1, X2, X3, active X4) -> U134(X1, X2, X3, X4),
                U134(X1, X2, mark X3, X4) -> U134(X1, X2, X3, X4),
              U134(X1, X2, active X3, X4) -> U134(X1, X2, X3, X4),
                U134(X1, mark X2, X3, X4) -> U134(X1, X2, X3, X4),
              U134(X1, active X2, X3, X4) -> U134(X1, X2, X3, X4),
                U134(mark X1, X2, X3, X4) -> U134(X1, X2, X3, X4),
              U134(active X1, X2, X3, X4) -> U134(X1, X2, X3, X4),
                U135(X1, X2, X3, mark X4) -> U135(X1, X2, X3, X4),
              U135(X1, X2, X3, active X4) -> U135(X1, X2, X3, X4),
                U135(X1, X2, mark X3, X4) -> U135(X1, X2, X3, X4),
              U135(X1, X2, active X3, X4) -> U135(X1, X2, X3, X4),
                U135(X1, mark X2, X3, X4) -> U135(X1, X2, X3, X4),
              U135(X1, active X2, X3, X4) -> U135(X1, X2, X3, X4),
                U135(mark X1, X2, X3, X4) -> U135(X1, X2, X3, X4),
              U135(active X1, X2, X3, X4) -> U135(X1, X2, X3, X4),
                U136(X1, X2, X3, mark X4) -> U136(X1, X2, X3, X4),
              U136(X1, X2, X3, active X4) -> U136(X1, X2, X3, X4),
                U136(X1, X2, mark X3, X4) -> U136(X1, X2, X3, X4),
              U136(X1, X2, active X3, X4) -> U136(X1, X2, X3, X4),
                U136(X1, mark X2, X3, X4) -> U136(X1, X2, X3, X4),
              U136(X1, active X2, X3, X4) -> U136(X1, X2, X3, X4),
                U136(mark X1, X2, X3, X4) -> U136(X1, X2, X3, X4),
              U136(active X1, X2, X3, X4) -> U136(X1, X2, X3, X4),
                        take(X1, mark X2) -> take(X1, X2),
                      take(X1, active X2) -> take(X1, X2),
                        take(mark X1, X2) -> take(X1, X2),
                      take(active X1, X2) -> take(X1, X2),
                         U22(X1, mark X2) -> U22(X1, X2),
                       U22(X1, active X2) -> U22(X1, X2),
                         U22(mark X1, X2) -> U22(X1, X2),
                       U22(active X1, X2) -> U22(X1, X2),
                         U21(X1, mark X2) -> U21(X1, X2),
                       U21(X1, active X2) -> U21(X1, X2),
                         U21(mark X1, X2) -> U21(X1, X2),
                       U21(active X1, X2) -> U21(X1, X2),
                               U23 mark X -> U23 X,
                             U23 active X -> U23 X,
                         U32(X1, mark X2) -> U32(X1, X2),
                       U32(X1, active X2) -> U32(X1, X2),
                         U32(mark X1, X2) -> U32(X1, X2),
                       U32(active X1, X2) -> U32(X1, X2),
                         U31(X1, mark X2) -> U31(X1, X2),
                       U31(X1, active X2) -> U31(X1, X2),
                         U31(mark X1, X2) -> U31(X1, X2),
                       U31(active X1, X2) -> U31(X1, X2),
                               U33 mark X -> U33 X,
                             U33 active X -> U33 X,
                     U42(X1, X2, mark X3) -> U42(X1, X2, X3),
                   U42(X1, X2, active X3) -> U42(X1, X2, X3),
                     U42(X1, mark X2, X3) -> U42(X1, X2, X3),
                   U42(X1, active X2, X3) -> U42(X1, X2, X3),
                     U42(mark X1, X2, X3) -> U42(X1, X2, X3),
                   U42(active X1, X2, X3) -> U42(X1, X2, X3),
                     U41(X1, X2, mark X3) -> U41(X1, X2, X3),
                   U41(X1, X2, active X3) -> U41(X1, X2, X3),
                     U41(X1, mark X2, X3) -> U41(X1, X2, X3),
                   U41(X1, active X2, X3) -> U41(X1, X2, X3),
                     U41(mark X1, X2, X3) -> U41(X1, X2, X3),
                   U41(active X1, X2, X3) -> U41(X1, X2, X3),
                     U43(X1, X2, mark X3) -> U43(X1, X2, X3),
                   U43(X1, X2, active X3) -> U43(X1, X2, X3),
                     U43(X1, mark X2, X3) -> U43(X1, X2, X3),
                   U43(X1, active X2, X3) -> U43(X1, X2, X3),
                     U43(mark X1, X2, X3) -> U43(X1, X2, X3),
                   U43(active X1, X2, X3) -> U43(X1, X2, X3),
                     U44(X1, X2, mark X3) -> U44(X1, X2, X3),
                   U44(X1, X2, active X3) -> U44(X1, X2, X3),
                     U44(X1, mark X2, X3) -> U44(X1, X2, X3),
                   U44(X1, active X2, X3) -> U44(X1, X2, X3),
                     U44(mark X1, X2, X3) -> U44(X1, X2, X3),
                   U44(active X1, X2, X3) -> U44(X1, X2, X3),
                         U45(X1, mark X2) -> U45(X1, X2),
                       U45(X1, active X2) -> U45(X1, X2),
                         U45(mark X1, X2) -> U45(X1, X2),
                       U45(active X1, X2) -> U45(X1, X2),
                               U46 mark X -> U46 X,
                             U46 active X -> U46 X,
                               U52 mark X -> U52 X,
                             U52 active X -> U52 X,
                         U51(X1, mark X2) -> U51(X1, X2),
                       U51(X1, active X2) -> U51(X1, X2),
                         U51(mark X1, X2) -> U51(X1, X2),
                       U51(active X1, X2) -> U51(X1, X2),
                               U62 mark X -> U62 X,
                             U62 active X -> U62 X,
                         U61(X1, mark X2) -> U61(X1, X2),
                       U61(X1, active X2) -> U61(X1, X2),
                         U61(mark X1, X2) -> U61(X1, X2),
                       U61(active X1, X2) -> U61(X1, X2),
                               U71 mark X -> U71 X,
                             U71 active X -> U71 X,
                               U81 mark X -> U81 X,
                             U81 active X -> U81 X,
                     U92(X1, X2, mark X3) -> U92(X1, X2, X3),
                   U92(X1, X2, active X3) -> U92(X1, X2, X3),
                     U92(X1, mark X2, X3) -> U92(X1, X2, X3),
                   U92(X1, active X2, X3) -> U92(X1, X2, X3),
                     U92(mark X1, X2, X3) -> U92(X1, X2, X3),
                   U92(active X1, X2, X3) -> U92(X1, X2, X3),
                     U91(X1, X2, mark X3) -> U91(X1, X2, X3),
                   U91(X1, X2, active X3) -> U91(X1, X2, X3),
                     U91(X1, mark X2, X3) -> U91(X1, X2, X3),
                   U91(X1, active X2, X3) -> U91(X1, X2, X3),
                     U91(mark X1, X2, X3) -> U91(X1, X2, X3),
                   U91(active X1, X2, X3) -> U91(X1, X2, X3),
                     U93(X1, X2, mark X3) -> U93(X1, X2, X3),
                   U93(X1, X2, active X3) -> U93(X1, X2, X3),
                     U93(X1, mark X2, X3) -> U93(X1, X2, X3),
                   U93(X1, active X2, X3) -> U93(X1, X2, X3),
                     U93(mark X1, X2, X3) -> U93(X1, X2, X3),
                   U93(active X1, X2, X3) -> U93(X1, X2, X3),
                     U94(X1, X2, mark X3) -> U94(X1, X2, X3),
                   U94(X1, X2, active X3) -> U94(X1, X2, X3),
                     U94(X1, mark X2, X3) -> U94(X1, X2, X3),
                   U94(X1, active X2, X3) -> U94(X1, X2, X3),
                     U94(mark X1, X2, X3) -> U94(X1, X2, X3),
                   U94(active X1, X2, X3) -> U94(X1, X2, X3),
                         U95(X1, mark X2) -> U95(X1, X2),
                       U95(X1, active X2) -> U95(X1, X2),
                         U95(mark X1, X2) -> U95(X1, X2),
                       U95(active X1, X2) -> U95(X1, X2),
                               U96 mark X -> U96 X,
                             U96 active X -> U96 X
      }
      Open
     
     SCC (2):
      Strict:
       {  U81# mark X -> U81# X,
        U81# active X -> U81# X}
      Weak:
      {
                        mark cons(X1, X2) -> active cons(mark X1, X2),
                                 mark 0() -> active 0(),
                             mark zeros() -> active zeros(),
                    mark U102(X1, X2, X3) -> active U102(mark X1, X2, X3),
                         mark isNatKind X -> active isNatKind X,
                    mark U101(X1, X2, X3) -> active U101(mark X1, X2, X3),
                                mark tt() -> active tt(),
                    mark U103(X1, X2, X3) -> active U103(mark X1, X2, X3),
                    mark isNatIListKind X -> active isNatIListKind X,
                    mark U104(X1, X2, X3) -> active U104(mark X1, X2, X3),
                        mark U105(X1, X2) -> active U105(mark X1, X2),
                             mark isNat X -> active isNat X,
                              mark U106 X -> active U106 mark X,
                        mark isNatIList X -> active isNatIList X,
                         mark U12(X1, X2) -> active U12(mark X1, X2),
                         mark U11(X1, X2) -> active U11(mark X1, X2),
                    mark U112(X1, X2, X3) -> active U112(mark X1, X2, X3),
                    mark U111(X1, X2, X3) -> active U111(mark X1, X2, X3),
                    mark U113(X1, X2, X3) -> active U113(mark X1, X2, X3),
                        mark U114(X1, X2) -> active U114(mark X1, X2),
                                 mark s X -> active s mark X,
                            mark length X -> active length mark X,
                               mark U13 X -> active U13 mark X,
                         mark isNatList X -> active isNatList X,
                              mark U122 X -> active U122 mark X,
                        mark U121(X1, X2) -> active U121(mark X1, X2),
                               mark nil() -> active nil(),
                mark U132(X1, X2, X3, X4) -> active U132(mark X1, X2, X3, X4),
                mark U131(X1, X2, X3, X4) -> active U131(mark X1, X2, X3, X4),
                mark U133(X1, X2, X3, X4) -> active U133(mark X1, X2, X3, X4),
                mark U134(X1, X2, X3, X4) -> active U134(mark X1, X2, X3, X4),
                mark U135(X1, X2, X3, X4) -> active U135(mark X1, X2, X3, X4),
                mark U136(X1, X2, X3, X4) -> active U136(mark X1, X2, X3, X4),
                        mark take(X1, X2) -> active take(mark X1, mark X2),
                         mark U22(X1, X2) -> active U22(mark X1, X2),
                         mark U21(X1, X2) -> active U21(mark X1, X2),
                               mark U23 X -> active U23 mark X,
                         mark U32(X1, X2) -> active U32(mark X1, X2),
                         mark U31(X1, X2) -> active U31(mark X1, X2),
                               mark U33 X -> active U33 mark X,
                     mark U42(X1, X2, X3) -> active U42(mark X1, X2, X3),
                     mark U41(X1, X2, X3) -> active U41(mark X1, X2, X3),
                     mark U43(X1, X2, X3) -> active U43(mark X1, X2, X3),
                     mark U44(X1, X2, X3) -> active U44(mark X1, X2, X3),
                         mark U45(X1, X2) -> active U45(mark X1, X2),
                               mark U46 X -> active U46 mark X,
                               mark U52 X -> active U52 mark X,
                         mark U51(X1, X2) -> active U51(mark X1, X2),
                               mark U62 X -> active U62 mark X,
                         mark U61(X1, X2) -> active U61(mark X1, X2),
                               mark U71 X -> active U71 mark X,
                               mark U81 X -> active U81 mark X,
                     mark U92(X1, X2, X3) -> active U92(mark X1, X2, X3),
                     mark U91(X1, X2, X3) -> active U91(mark X1, X2, X3),
                     mark U93(X1, X2, X3) -> active U93(mark X1, X2, X3),
                     mark U94(X1, X2, X3) -> active U94(mark X1, X2, X3),
                         mark U95(X1, X2) -> active U95(mark X1, X2),
                               mark U96 X -> active U96 mark X,
                        cons(X1, mark X2) -> cons(X1, X2),
                      cons(X1, active X2) -> cons(X1, X2),
                        cons(mark X1, X2) -> cons(X1, X2),
                      cons(active X1, X2) -> cons(X1, X2),
                           active zeros() -> mark cons(0(), zeros()),
                active U102(tt(), V1, V2) -> mark U103(isNatIListKind V2, V1, V2),
                     active isNatKind 0() -> mark tt(),
                    active isNatKind s V1 -> mark U81 isNatKind V1,
               active isNatKind length V1 -> mark U71 isNatIListKind V1,
                active U101(tt(), V1, V2) -> mark U102(isNatKind V1, V1, V2),
                active U103(tt(), V1, V2) -> mark U104(isNatIListKind V2, V1, V2),
       active isNatIListKind cons(V1, V2) -> mark U51(isNatKind V1, V2),
            active isNatIListKind zeros() -> mark tt(),
              active isNatIListKind nil() -> mark tt(),
       active isNatIListKind take(V1, V2) -> mark U61(isNatKind V1, V2),
                active U104(tt(), V1, V2) -> mark U105(isNat V1, V2),
                    active U105(tt(), V2) -> mark U106 isNatIList V2,
                         active isNat 0() -> mark tt(),
                        active isNat s V1 -> mark U21(isNatKind V1, V1),
                   active isNat length V1 -> mark U11(isNatIListKind V1, V1),
                         active U106 tt() -> mark tt(),
                      active isNatIList V -> mark U31(isNatIListKind V, V),
           active isNatIList cons(V1, V2) -> mark U41(isNatKind V1, V1, V2),
                active isNatIList zeros() -> mark tt(),
                     active U12(tt(), V1) -> mark U13 isNatList V1,
                     active U11(tt(), V1) -> mark U12(isNatIListKind V1, V1),
                  active U112(tt(), L, N) -> mark U113(isNat N, L, N),
                  active U111(tt(), L, N) -> mark U112(isNatIListKind L, L, N),
                  active U113(tt(), L, N) -> mark U114(isNatKind N, L),
                     active U114(tt(), L) -> mark s length L,
                 active length cons(N, L) -> mark U111(isNatList L, L, N),
                      active length nil() -> mark 0(),
                          active U13 tt() -> mark tt(),
            active isNatList cons(V1, V2) -> mark U91(isNatKind V1, V1, V2),
                   active isNatList nil() -> mark tt(),
            active isNatList take(V1, V2) -> mark U101(isNatKind V1, V1, V2),
                         active U122 tt() -> mark nil(),
                    active U121(tt(), IL) -> mark U122 isNatIListKind IL,
              active U132(tt(), IL, M, N) -> mark U133(isNat M, IL, M, N),
              active U131(tt(), IL, M, N) -> mark U132(isNatIListKind IL, IL, M, N),
              active U133(tt(), IL, M, N) -> mark U134(isNatKind M, IL, M, N),
              active U134(tt(), IL, M, N) -> mark U135(isNat N, IL, M, N),
              active U135(tt(), IL, M, N) -> mark U136(isNatKind N, IL, M, N),
              active U136(tt(), IL, M, N) -> mark cons(N, take(M, IL)),
                     active take(0(), IL) -> mark U121(isNatIList IL, IL),
            active take(s M, cons(N, IL)) -> mark U131(isNatIList IL, IL, M, N),
                     active U22(tt(), V1) -> mark U23 isNat V1,
                     active U21(tt(), V1) -> mark U22(isNatKind V1, V1),
                          active U23 tt() -> mark tt(),
                      active U32(tt(), V) -> mark U33 isNatList V,
                      active U31(tt(), V) -> mark U32(isNatIListKind V, V),
                          active U33 tt() -> mark tt(),
                 active U42(tt(), V1, V2) -> mark U43(isNatIListKind V2, V1, V2),
                 active U41(tt(), V1, V2) -> mark U42(isNatKind V1, V1, V2),
                 active U43(tt(), V1, V2) -> mark U44(isNatIListKind V2, V1, V2),
                 active U44(tt(), V1, V2) -> mark U45(isNat V1, V2),
                     active U45(tt(), V2) -> mark U46 isNatIList V2,
                          active U46 tt() -> mark tt(),
                          active U52 tt() -> mark tt(),
                     active U51(tt(), V2) -> mark U52 isNatIListKind V2,
                          active U62 tt() -> mark tt(),
                     active U61(tt(), V2) -> mark U62 isNatIListKind V2,
                          active U71 tt() -> mark tt(),
                          active U81 tt() -> mark tt(),
                 active U92(tt(), V1, V2) -> mark U93(isNatIListKind V2, V1, V2),
                 active U91(tt(), V1, V2) -> mark U92(isNatKind V1, V1, V2),
                 active U93(tt(), V1, V2) -> mark U94(isNatIListKind V2, V1, V2),
                 active U94(tt(), V1, V2) -> mark U95(isNat V1, V2),
                     active U95(tt(), V2) -> mark U96 isNatList V2,
                          active U96 tt() -> mark tt(),
                    U102(X1, X2, mark X3) -> U102(X1, X2, X3),
                  U102(X1, X2, active X3) -> U102(X1, X2, X3),
                    U102(X1, mark X2, X3) -> U102(X1, X2, X3),
                  U102(X1, active X2, X3) -> U102(X1, X2, X3),
                    U102(mark X1, X2, X3) -> U102(X1, X2, X3),
                  U102(active X1, X2, X3) -> U102(X1, X2, X3),
                         isNatKind mark X -> isNatKind X,
                       isNatKind active X -> isNatKind X,
                    U101(X1, X2, mark X3) -> U101(X1, X2, X3),
                  U101(X1, X2, active X3) -> U101(X1, X2, X3),
                    U101(X1, mark X2, X3) -> U101(X1, X2, X3),
                  U101(X1, active X2, X3) -> U101(X1, X2, X3),
                    U101(mark X1, X2, X3) -> U101(X1, X2, X3),
                  U101(active X1, X2, X3) -> U101(X1, X2, X3),
                    U103(X1, X2, mark X3) -> U103(X1, X2, X3),
                  U103(X1, X2, active X3) -> U103(X1, X2, X3),
                    U103(X1, mark X2, X3) -> U103(X1, X2, X3),
                  U103(X1, active X2, X3) -> U103(X1, X2, X3),
                    U103(mark X1, X2, X3) -> U103(X1, X2, X3),
                  U103(active X1, X2, X3) -> U103(X1, X2, X3),
                    isNatIListKind mark X -> isNatIListKind X,
                  isNatIListKind active X -> isNatIListKind X,
                    U104(X1, X2, mark X3) -> U104(X1, X2, X3),
                  U104(X1, X2, active X3) -> U104(X1, X2, X3),
                    U104(X1, mark X2, X3) -> U104(X1, X2, X3),
                  U104(X1, active X2, X3) -> U104(X1, X2, X3),
                    U104(mark X1, X2, X3) -> U104(X1, X2, X3),
                  U104(active X1, X2, X3) -> U104(X1, X2, X3),
                        U105(X1, mark X2) -> U105(X1, X2),
                      U105(X1, active X2) -> U105(X1, X2),
                        U105(mark X1, X2) -> U105(X1, X2),
                      U105(active X1, X2) -> U105(X1, X2),
                             isNat mark X -> isNat X,
                           isNat active X -> isNat X,
                              U106 mark X -> U106 X,
                            U106 active X -> U106 X,
                        isNatIList mark X -> isNatIList X,
                      isNatIList active X -> isNatIList X,
                         U12(X1, mark X2) -> U12(X1, X2),
                       U12(X1, active X2) -> U12(X1, X2),
                         U12(mark X1, X2) -> U12(X1, X2),
                       U12(active X1, X2) -> U12(X1, X2),
                         U11(X1, mark X2) -> U11(X1, X2),
                       U11(X1, active X2) -> U11(X1, X2),
                         U11(mark X1, X2) -> U11(X1, X2),
                       U11(active X1, X2) -> U11(X1, X2),
                    U112(X1, X2, mark X3) -> U112(X1, X2, X3),
                  U112(X1, X2, active X3) -> U112(X1, X2, X3),
                    U112(X1, mark X2, X3) -> U112(X1, X2, X3),
                  U112(X1, active X2, X3) -> U112(X1, X2, X3),
                    U112(mark X1, X2, X3) -> U112(X1, X2, X3),
                  U112(active X1, X2, X3) -> U112(X1, X2, X3),
                    U111(X1, X2, mark X3) -> U111(X1, X2, X3),
                  U111(X1, X2, active X3) -> U111(X1, X2, X3),
                    U111(X1, mark X2, X3) -> U111(X1, X2, X3),
                  U111(X1, active X2, X3) -> U111(X1, X2, X3),
                    U111(mark X1, X2, X3) -> U111(X1, X2, X3),
                  U111(active X1, X2, X3) -> U111(X1, X2, X3),
                    U113(X1, X2, mark X3) -> U113(X1, X2, X3),
                  U113(X1, X2, active X3) -> U113(X1, X2, X3),
                    U113(X1, mark X2, X3) -> U113(X1, X2, X3),
                  U113(X1, active X2, X3) -> U113(X1, X2, X3),
                    U113(mark X1, X2, X3) -> U113(X1, X2, X3),
                  U113(active X1, X2, X3) -> U113(X1, X2, X3),
                        U114(X1, mark X2) -> U114(X1, X2),
                      U114(X1, active X2) -> U114(X1, X2),
                        U114(mark X1, X2) -> U114(X1, X2),
                      U114(active X1, X2) -> U114(X1, X2),
                                 s mark X -> s X,
                               s active X -> s X,
                            length mark X -> length X,
                          length active X -> length X,
                               U13 mark X -> U13 X,
                             U13 active X -> U13 X,
                         isNatList mark X -> isNatList X,
                       isNatList active X -> isNatList X,
                              U122 mark X -> U122 X,
                            U122 active X -> U122 X,
                        U121(X1, mark X2) -> U121(X1, X2),
                      U121(X1, active X2) -> U121(X1, X2),
                        U121(mark X1, X2) -> U121(X1, X2),
                      U121(active X1, X2) -> U121(X1, X2),
                U132(X1, X2, X3, mark X4) -> U132(X1, X2, X3, X4),
              U132(X1, X2, X3, active X4) -> U132(X1, X2, X3, X4),
                U132(X1, X2, mark X3, X4) -> U132(X1, X2, X3, X4),
              U132(X1, X2, active X3, X4) -> U132(X1, X2, X3, X4),
                U132(X1, mark X2, X3, X4) -> U132(X1, X2, X3, X4),
              U132(X1, active X2, X3, X4) -> U132(X1, X2, X3, X4),
                U132(mark X1, X2, X3, X4) -> U132(X1, X2, X3, X4),
              U132(active X1, X2, X3, X4) -> U132(X1, X2, X3, X4),
                U131(X1, X2, X3, mark X4) -> U131(X1, X2, X3, X4),
              U131(X1, X2, X3, active X4) -> U131(X1, X2, X3, X4),
                U131(X1, X2, mark X3, X4) -> U131(X1, X2, X3, X4),
              U131(X1, X2, active X3, X4) -> U131(X1, X2, X3, X4),
                U131(X1, mark X2, X3, X4) -> U131(X1, X2, X3, X4),
              U131(X1, active X2, X3, X4) -> U131(X1, X2, X3, X4),
                U131(mark X1, X2, X3, X4) -> U131(X1, X2, X3, X4),
              U131(active X1, X2, X3, X4) -> U131(X1, X2, X3, X4),
                U133(X1, X2, X3, mark X4) -> U133(X1, X2, X3, X4),
              U133(X1, X2, X3, active X4) -> U133(X1, X2, X3, X4),
                U133(X1, X2, mark X3, X4) -> U133(X1, X2, X3, X4),
              U133(X1, X2, active X3, X4) -> U133(X1, X2, X3, X4),
                U133(X1, mark X2, X3, X4) -> U133(X1, X2, X3, X4),
              U133(X1, active X2, X3, X4) -> U133(X1, X2, X3, X4),
                U133(mark X1, X2, X3, X4) -> U133(X1, X2, X3, X4),
              U133(active X1, X2, X3, X4) -> U133(X1, X2, X3, X4),
                U134(X1, X2, X3, mark X4) -> U134(X1, X2, X3, X4),
              U134(X1, X2, X3, active X4) -> U134(X1, X2, X3, X4),
                U134(X1, X2, mark X3, X4) -> U134(X1, X2, X3, X4),
              U134(X1, X2, active X3, X4) -> U134(X1, X2, X3, X4),
                U134(X1, mark X2, X3, X4) -> U134(X1, X2, X3, X4),
              U134(X1, active X2, X3, X4) -> U134(X1, X2, X3, X4),
                U134(mark X1, X2, X3, X4) -> U134(X1, X2, X3, X4),
              U134(active X1, X2, X3, X4) -> U134(X1, X2, X3, X4),
                U135(X1, X2, X3, mark X4) -> U135(X1, X2, X3, X4),
              U135(X1, X2, X3, active X4) -> U135(X1, X2, X3, X4),
                U135(X1, X2, mark X3, X4) -> U135(X1, X2, X3, X4),
              U135(X1, X2, active X3, X4) -> U135(X1, X2, X3, X4),
                U135(X1, mark X2, X3, X4) -> U135(X1, X2, X3, X4),
              U135(X1, active X2, X3, X4) -> U135(X1, X2, X3, X4),
                U135(mark X1, X2, X3, X4) -> U135(X1, X2, X3, X4),
              U135(active X1, X2, X3, X4) -> U135(X1, X2, X3, X4),
                U136(X1, X2, X3, mark X4) -> U136(X1, X2, X3, X4),
              U136(X1, X2, X3, active X4) -> U136(X1, X2, X3, X4),
                U136(X1, X2, mark X3, X4) -> U136(X1, X2, X3, X4),
              U136(X1, X2, active X3, X4) -> U136(X1, X2, X3, X4),
                U136(X1, mark X2, X3, X4) -> U136(X1, X2, X3, X4),
              U136(X1, active X2, X3, X4) -> U136(X1, X2, X3, X4),
                U136(mark X1, X2, X3, X4) -> U136(X1, X2, X3, X4),
              U136(active X1, X2, X3, X4) -> U136(X1, X2, X3, X4),
                        take(X1, mark X2) -> take(X1, X2),
                      take(X1, active X2) -> take(X1, X2),
                        take(mark X1, X2) -> take(X1, X2),
                      take(active X1, X2) -> take(X1, X2),
                         U22(X1, mark X2) -> U22(X1, X2),
                       U22(X1, active X2) -> U22(X1, X2),
                         U22(mark X1, X2) -> U22(X1, X2),
                       U22(active X1, X2) -> U22(X1, X2),
                         U21(X1, mark X2) -> U21(X1, X2),
                       U21(X1, active X2) -> U21(X1, X2),
                         U21(mark X1, X2) -> U21(X1, X2),
                       U21(active X1, X2) -> U21(X1, X2),
                               U23 mark X -> U23 X,
                             U23 active X -> U23 X,
                         U32(X1, mark X2) -> U32(X1, X2),
                       U32(X1, active X2) -> U32(X1, X2),
                         U32(mark X1, X2) -> U32(X1, X2),
                       U32(active X1, X2) -> U32(X1, X2),
                         U31(X1, mark X2) -> U31(X1, X2),
                       U31(X1, active X2) -> U31(X1, X2),
                         U31(mark X1, X2) -> U31(X1, X2),
                       U31(active X1, X2) -> U31(X1, X2),
                               U33 mark X -> U33 X,
                             U33 active X -> U33 X,
                     U42(X1, X2, mark X3) -> U42(X1, X2, X3),
                   U42(X1, X2, active X3) -> U42(X1, X2, X3),
                     U42(X1, mark X2, X3) -> U42(X1, X2, X3),
                   U42(X1, active X2, X3) -> U42(X1, X2, X3),
                     U42(mark X1, X2, X3) -> U42(X1, X2, X3),
                   U42(active X1, X2, X3) -> U42(X1, X2, X3),
                     U41(X1, X2, mark X3) -> U41(X1, X2, X3),
                   U41(X1, X2, active X3) -> U41(X1, X2, X3),
                     U41(X1, mark X2, X3) -> U41(X1, X2, X3),
                   U41(X1, active X2, X3) -> U41(X1, X2, X3),
                     U41(mark X1, X2, X3) -> U41(X1, X2, X3),
                   U41(active X1, X2, X3) -> U41(X1, X2, X3),
                     U43(X1, X2, mark X3) -> U43(X1, X2, X3),
                   U43(X1, X2, active X3) -> U43(X1, X2, X3),
                     U43(X1, mark X2, X3) -> U43(X1, X2, X3),
                   U43(X1, active X2, X3) -> U43(X1, X2, X3),
                     U43(mark X1, X2, X3) -> U43(X1, X2, X3),
                   U43(active X1, X2, X3) -> U43(X1, X2, X3),
                     U44(X1, X2, mark X3) -> U44(X1, X2, X3),
                   U44(X1, X2, active X3) -> U44(X1, X2, X3),
                     U44(X1, mark X2, X3) -> U44(X1, X2, X3),
                   U44(X1, active X2, X3) -> U44(X1, X2, X3),
                     U44(mark X1, X2, X3) -> U44(X1, X2, X3),
                   U44(active X1, X2, X3) -> U44(X1, X2, X3),
                         U45(X1, mark X2) -> U45(X1, X2),
                       U45(X1, active X2) -> U45(X1, X2),
                         U45(mark X1, X2) -> U45(X1, X2),
                       U45(active X1, X2) -> U45(X1, X2),
                               U46 mark X -> U46 X,
                             U46 active X -> U46 X,
                               U52 mark X -> U52 X,
                             U52 active X -> U52 X,
                         U51(X1, mark X2) -> U51(X1, X2),
                       U51(X1, active X2) -> U51(X1, X2),
                         U51(mark X1, X2) -> U51(X1, X2),
                       U51(active X1, X2) -> U51(X1, X2),
                               U62 mark X -> U62 X,
                             U62 active X -> U62 X,
                         U61(X1, mark X2) -> U61(X1, X2),
                       U61(X1, active X2) -> U61(X1, X2),
                         U61(mark X1, X2) -> U61(X1, X2),
                       U61(active X1, X2) -> U61(X1, X2),
                               U71 mark X -> U71 X,
                             U71 active X -> U71 X,
                               U81 mark X -> U81 X,
                             U81 active X -> U81 X,
                     U92(X1, X2, mark X3) -> U92(X1, X2, X3),
                   U92(X1, X2, active X3) -> U92(X1, X2, X3),
                     U92(X1, mark X2, X3) -> U92(X1, X2, X3),
                   U92(X1, active X2, X3) -> U92(X1, X2, X3),
                     U92(mark X1, X2, X3) -> U92(X1, X2, X3),
                   U92(active X1, X2, X3) -> U92(X1, X2, X3),
                     U91(X1, X2, mark X3) -> U91(X1, X2, X3),
                   U91(X1, X2, active X3) -> U91(X1, X2, X3),
                     U91(X1, mark X2, X3) -> U91(X1, X2, X3),
                   U91(X1, active X2, X3) -> U91(X1, X2, X3),
                     U91(mark X1, X2, X3) -> U91(X1, X2, X3),
                   U91(active X1, X2, X3) -> U91(X1, X2, X3),
                     U93(X1, X2, mark X3) -> U93(X1, X2, X3),
                   U93(X1, X2, active X3) -> U93(X1, X2, X3),
                     U93(X1, mark X2, X3) -> U93(X1, X2, X3),
                   U93(X1, active X2, X3) -> U93(X1, X2, X3),
                     U93(mark X1, X2, X3) -> U93(X1, X2, X3),
                   U93(active X1, X2, X3) -> U93(X1, X2, X3),
                     U94(X1, X2, mark X3) -> U94(X1, X2, X3),
                   U94(X1, X2, active X3) -> U94(X1, X2, X3),
                     U94(X1, mark X2, X3) -> U94(X1, X2, X3),
                   U94(X1, active X2, X3) -> U94(X1, X2, X3),
                     U94(mark X1, X2, X3) -> U94(X1, X2, X3),
                   U94(active X1, X2, X3) -> U94(X1, X2, X3),
                         U95(X1, mark X2) -> U95(X1, X2),
                       U95(X1, active X2) -> U95(X1, X2),
                         U95(mark X1, X2) -> U95(X1, X2),
                       U95(active X1, X2) -> U95(X1, X2),
                               U96 mark X -> U96 X,
                             U96 active X -> U96 X
      }
      Open
     
     
     
     SCC (2):
      Strict:
       {  U71# mark X -> U71# X,
        U71# active X -> U71# X}
      Weak:
      {
                        mark cons(X1, X2) -> active cons(mark X1, X2),
                                 mark 0() -> active 0(),
                             mark zeros() -> active zeros(),
                    mark U102(X1, X2, X3) -> active U102(mark X1, X2, X3),
                         mark isNatKind X -> active isNatKind X,
                    mark U101(X1, X2, X3) -> active U101(mark X1, X2, X3),
                                mark tt() -> active tt(),
                    mark U103(X1, X2, X3) -> active U103(mark X1, X2, X3),
                    mark isNatIListKind X -> active isNatIListKind X,
                    mark U104(X1, X2, X3) -> active U104(mark X1, X2, X3),
                        mark U105(X1, X2) -> active U105(mark X1, X2),
                             mark isNat X -> active isNat X,
                              mark U106 X -> active U106 mark X,
                        mark isNatIList X -> active isNatIList X,
                         mark U12(X1, X2) -> active U12(mark X1, X2),
                         mark U11(X1, X2) -> active U11(mark X1, X2),
                    mark U112(X1, X2, X3) -> active U112(mark X1, X2, X3),
                    mark U111(X1, X2, X3) -> active U111(mark X1, X2, X3),
                    mark U113(X1, X2, X3) -> active U113(mark X1, X2, X3),
                        mark U114(X1, X2) -> active U114(mark X1, X2),
                                 mark s X -> active s mark X,
                            mark length X -> active length mark X,
                               mark U13 X -> active U13 mark X,
                         mark isNatList X -> active isNatList X,
                              mark U122 X -> active U122 mark X,
                        mark U121(X1, X2) -> active U121(mark X1, X2),
                               mark nil() -> active nil(),
                mark U132(X1, X2, X3, X4) -> active U132(mark X1, X2, X3, X4),
                mark U131(X1, X2, X3, X4) -> active U131(mark X1, X2, X3, X4),
                mark U133(X1, X2, X3, X4) -> active U133(mark X1, X2, X3, X4),
                mark U134(X1, X2, X3, X4) -> active U134(mark X1, X2, X3, X4),
                mark U135(X1, X2, X3, X4) -> active U135(mark X1, X2, X3, X4),
                mark U136(X1, X2, X3, X4) -> active U136(mark X1, X2, X3, X4),
                        mark take(X1, X2) -> active take(mark X1, mark X2),
                         mark U22(X1, X2) -> active U22(mark X1, X2),
                         mark U21(X1, X2) -> active U21(mark X1, X2),
                               mark U23 X -> active U23 mark X,
                         mark U32(X1, X2) -> active U32(mark X1, X2),
                         mark U31(X1, X2) -> active U31(mark X1, X2),
                               mark U33 X -> active U33 mark X,
                     mark U42(X1, X2, X3) -> active U42(mark X1, X2, X3),
                     mark U41(X1, X2, X3) -> active U41(mark X1, X2, X3),
                     mark U43(X1, X2, X3) -> active U43(mark X1, X2, X3),
                     mark U44(X1, X2, X3) -> active U44(mark X1, X2, X3),
                         mark U45(X1, X2) -> active U45(mark X1, X2),
                               mark U46 X -> active U46 mark X,
                               mark U52 X -> active U52 mark X,
                         mark U51(X1, X2) -> active U51(mark X1, X2),
                               mark U62 X -> active U62 mark X,
                         mark U61(X1, X2) -> active U61(mark X1, X2),
                               mark U71 X -> active U71 mark X,
                               mark U81 X -> active U81 mark X,
                     mark U92(X1, X2, X3) -> active U92(mark X1, X2, X3),
                     mark U91(X1, X2, X3) -> active U91(mark X1, X2, X3),
                     mark U93(X1, X2, X3) -> active U93(mark X1, X2, X3),
                     mark U94(X1, X2, X3) -> active U94(mark X1, X2, X3),
                         mark U95(X1, X2) -> active U95(mark X1, X2),
                               mark U96 X -> active U96 mark X,
                        cons(X1, mark X2) -> cons(X1, X2),
                      cons(X1, active X2) -> cons(X1, X2),
                        cons(mark X1, X2) -> cons(X1, X2),
                      cons(active X1, X2) -> cons(X1, X2),
                           active zeros() -> mark cons(0(), zeros()),
                active U102(tt(), V1, V2) -> mark U103(isNatIListKind V2, V1, V2),
                     active isNatKind 0() -> mark tt(),
                    active isNatKind s V1 -> mark U81 isNatKind V1,
               active isNatKind length V1 -> mark U71 isNatIListKind V1,
                active U101(tt(), V1, V2) -> mark U102(isNatKind V1, V1, V2),
                active U103(tt(), V1, V2) -> mark U104(isNatIListKind V2, V1, V2),
       active isNatIListKind cons(V1, V2) -> mark U51(isNatKind V1, V2),
            active isNatIListKind zeros() -> mark tt(),
              active isNatIListKind nil() -> mark tt(),
       active isNatIListKind take(V1, V2) -> mark U61(isNatKind V1, V2),
                active U104(tt(), V1, V2) -> mark U105(isNat V1, V2),
                    active U105(tt(), V2) -> mark U106 isNatIList V2,
                         active isNat 0() -> mark tt(),
                        active isNat s V1 -> mark U21(isNatKind V1, V1),
                   active isNat length V1 -> mark U11(isNatIListKind V1, V1),
                         active U106 tt() -> mark tt(),
                      active isNatIList V -> mark U31(isNatIListKind V, V),
           active isNatIList cons(V1, V2) -> mark U41(isNatKind V1, V1, V2),
                active isNatIList zeros() -> mark tt(),
                     active U12(tt(), V1) -> mark U13 isNatList V1,
                     active U11(tt(), V1) -> mark U12(isNatIListKind V1, V1),
                  active U112(tt(), L, N) -> mark U113(isNat N, L, N),
                  active U111(tt(), L, N) -> mark U112(isNatIListKind L, L, N),
                  active U113(tt(), L, N) -> mark U114(isNatKind N, L),
                     active U114(tt(), L) -> mark s length L,
                 active length cons(N, L) -> mark U111(isNatList L, L, N),
                      active length nil() -> mark 0(),
                          active U13 tt() -> mark tt(),
            active isNatList cons(V1, V2) -> mark U91(isNatKind V1, V1, V2),
                   active isNatList nil() -> mark tt(),
            active isNatList take(V1, V2) -> mark U101(isNatKind V1, V1, V2),
                         active U122 tt() -> mark nil(),
                    active U121(tt(), IL) -> mark U122 isNatIListKind IL,
              active U132(tt(), IL, M, N) -> mark U133(isNat M, IL, M, N),
              active U131(tt(), IL, M, N) -> mark U132(isNatIListKind IL, IL, M, N),
              active U133(tt(), IL, M, N) -> mark U134(isNatKind M, IL, M, N),
              active U134(tt(), IL, M, N) -> mark U135(isNat N, IL, M, N),
              active U135(tt(), IL, M, N) -> mark U136(isNatKind N, IL, M, N),
              active U136(tt(), IL, M, N) -> mark cons(N, take(M, IL)),
                     active take(0(), IL) -> mark U121(isNatIList IL, IL),
            active take(s M, cons(N, IL)) -> mark U131(isNatIList IL, IL, M, N),
                     active U22(tt(), V1) -> mark U23 isNat V1,
                     active U21(tt(), V1) -> mark U22(isNatKind V1, V1),
                          active U23 tt() -> mark tt(),
                      active U32(tt(), V) -> mark U33 isNatList V,
                      active U31(tt(), V) -> mark U32(isNatIListKind V, V),
                          active U33 tt() -> mark tt(),
                 active U42(tt(), V1, V2) -> mark U43(isNatIListKind V2, V1, V2),
                 active U41(tt(), V1, V2) -> mark U42(isNatKind V1, V1, V2),
                 active U43(tt(), V1, V2) -> mark U44(isNatIListKind V2, V1, V2),
                 active U44(tt(), V1, V2) -> mark U45(isNat V1, V2),
                     active U45(tt(), V2) -> mark U46 isNatIList V2,
                          active U46 tt() -> mark tt(),
                          active U52 tt() -> mark tt(),
                     active U51(tt(), V2) -> mark U52 isNatIListKind V2,
                          active U62 tt() -> mark tt(),
                     active U61(tt(), V2) -> mark U62 isNatIListKind V2,
                          active U71 tt() -> mark tt(),
                          active U81 tt() -> mark tt(),
                 active U92(tt(), V1, V2) -> mark U93(isNatIListKind V2, V1, V2),
                 active U91(tt(), V1, V2) -> mark U92(isNatKind V1, V1, V2),
                 active U93(tt(), V1, V2) -> mark U94(isNatIListKind V2, V1, V2),
                 active U94(tt(), V1, V2) -> mark U95(isNat V1, V2),
                     active U95(tt(), V2) -> mark U96 isNatList V2,
                          active U96 tt() -> mark tt(),
                    U102(X1, X2, mark X3) -> U102(X1, X2, X3),
                  U102(X1, X2, active X3) -> U102(X1, X2, X3),
                    U102(X1, mark X2, X3) -> U102(X1, X2, X3),
                  U102(X1, active X2, X3) -> U102(X1, X2, X3),
                    U102(mark X1, X2, X3) -> U102(X1, X2, X3),
                  U102(active X1, X2, X3) -> U102(X1, X2, X3),
                         isNatKind mark X -> isNatKind X,
                       isNatKind active X -> isNatKind X,
                    U101(X1, X2, mark X3) -> U101(X1, X2, X3),
                  U101(X1, X2, active X3) -> U101(X1, X2, X3),
                    U101(X1, mark X2, X3) -> U101(X1, X2, X3),
                  U101(X1, active X2, X3) -> U101(X1, X2, X3),
                    U101(mark X1, X2, X3) -> U101(X1, X2, X3),
                  U101(active X1, X2, X3) -> U101(X1, X2, X3),
                    U103(X1, X2, mark X3) -> U103(X1, X2, X3),
                  U103(X1, X2, active X3) -> U103(X1, X2, X3),
                    U103(X1, mark X2, X3) -> U103(X1, X2, X3),
                  U103(X1, active X2, X3) -> U103(X1, X2, X3),
                    U103(mark X1, X2, X3) -> U103(X1, X2, X3),
                  U103(active X1, X2, X3) -> U103(X1, X2, X3),
                    isNatIListKind mark X -> isNatIListKind X,
                  isNatIListKind active X -> isNatIListKind X,
                    U104(X1, X2, mark X3) -> U104(X1, X2, X3),
                  U104(X1, X2, active X3) -> U104(X1, X2, X3),
                    U104(X1, mark X2, X3) -> U104(X1, X2, X3),
                  U104(X1, active X2, X3) -> U104(X1, X2, X3),
                    U104(mark X1, X2, X3) -> U104(X1, X2, X3),
                  U104(active X1, X2, X3) -> U104(X1, X2, X3),
                        U105(X1, mark X2) -> U105(X1, X2),
                      U105(X1, active X2) -> U105(X1, X2),
                        U105(mark X1, X2) -> U105(X1, X2),
                      U105(active X1, X2) -> U105(X1, X2),
                             isNat mark X -> isNat X,
                           isNat active X -> isNat X,
                              U106 mark X -> U106 X,
                            U106 active X -> U106 X,
                        isNatIList mark X -> isNatIList X,
                      isNatIList active X -> isNatIList X,
                         U12(X1, mark X2) -> U12(X1, X2),
                       U12(X1, active X2) -> U12(X1, X2),
                         U12(mark X1, X2) -> U12(X1, X2),
                       U12(active X1, X2) -> U12(X1, X2),
                         U11(X1, mark X2) -> U11(X1, X2),
                       U11(X1, active X2) -> U11(X1, X2),
                         U11(mark X1, X2) -> U11(X1, X2),
                       U11(active X1, X2) -> U11(X1, X2),
                    U112(X1, X2, mark X3) -> U112(X1, X2, X3),
                  U112(X1, X2, active X3) -> U112(X1, X2, X3),
                    U112(X1, mark X2, X3) -> U112(X1, X2, X3),
                  U112(X1, active X2, X3) -> U112(X1, X2, X3),
                    U112(mark X1, X2, X3) -> U112(X1, X2, X3),
                  U112(active X1, X2, X3) -> U112(X1, X2, X3),
                    U111(X1, X2, mark X3) -> U111(X1, X2, X3),
                  U111(X1, X2, active X3) -> U111(X1, X2, X3),
                    U111(X1, mark X2, X3) -> U111(X1, X2, X3),
                  U111(X1, active X2, X3) -> U111(X1, X2, X3),
                    U111(mark X1, X2, X3) -> U111(X1, X2, X3),
                  U111(active X1, X2, X3) -> U111(X1, X2, X3),
                    U113(X1, X2, mark X3) -> U113(X1, X2, X3),
                  U113(X1, X2, active X3) -> U113(X1, X2, X3),
                    U113(X1, mark X2, X3) -> U113(X1, X2, X3),
                  U113(X1, active X2, X3) -> U113(X1, X2, X3),
                    U113(mark X1, X2, X3) -> U113(X1, X2, X3),
                  U113(active X1, X2, X3) -> U113(X1, X2, X3),
                        U114(X1, mark X2) -> U114(X1, X2),
                      U114(X1, active X2) -> U114(X1, X2),
                        U114(mark X1, X2) -> U114(X1, X2),
                      U114(active X1, X2) -> U114(X1, X2),
                                 s mark X -> s X,
                               s active X -> s X,
                            length mark X -> length X,
                          length active X -> length X,
                               U13 mark X -> U13 X,
                             U13 active X -> U13 X,
                         isNatList mark X -> isNatList X,
                       isNatList active X -> isNatList X,
                              U122 mark X -> U122 X,
                            U122 active X -> U122 X,
                        U121(X1, mark X2) -> U121(X1, X2),
                      U121(X1, active X2) -> U121(X1, X2),
                        U121(mark X1, X2) -> U121(X1, X2),
                      U121(active X1, X2) -> U121(X1, X2),
                U132(X1, X2, X3, mark X4) -> U132(X1, X2, X3, X4),
              U132(X1, X2, X3, active X4) -> U132(X1, X2, X3, X4),
                U132(X1, X2, mark X3, X4) -> U132(X1, X2, X3, X4),
              U132(X1, X2, active X3, X4) -> U132(X1, X2, X3, X4),
                U132(X1, mark X2, X3, X4) -> U132(X1, X2, X3, X4),
              U132(X1, active X2, X3, X4) -> U132(X1, X2, X3, X4),
                U132(mark X1, X2, X3, X4) -> U132(X1, X2, X3, X4),
              U132(active X1, X2, X3, X4) -> U132(X1, X2, X3, X4),
                U131(X1, X2, X3, mark X4) -> U131(X1, X2, X3, X4),
              U131(X1, X2, X3, active X4) -> U131(X1, X2, X3, X4),
                U131(X1, X2, mark X3, X4) -> U131(X1, X2, X3, X4),
              U131(X1, X2, active X3, X4) -> U131(X1, X2, X3, X4),
                U131(X1, mark X2, X3, X4) -> U131(X1, X2, X3, X4),
              U131(X1, active X2, X3, X4) -> U131(X1, X2, X3, X4),
                U131(mark X1, X2, X3, X4) -> U131(X1, X2, X3, X4),
              U131(active X1, X2, X3, X4) -> U131(X1, X2, X3, X4),
                U133(X1, X2, X3, mark X4) -> U133(X1, X2, X3, X4),
              U133(X1, X2, X3, active X4) -> U133(X1, X2, X3, X4),
                U133(X1, X2, mark X3, X4) -> U133(X1, X2, X3, X4),
              U133(X1, X2, active X3, X4) -> U133(X1, X2, X3, X4),
                U133(X1, mark X2, X3, X4) -> U133(X1, X2, X3, X4),
              U133(X1, active X2, X3, X4) -> U133(X1, X2, X3, X4),
                U133(mark X1, X2, X3, X4) -> U133(X1, X2, X3, X4),
              U133(active X1, X2, X3, X4) -> U133(X1, X2, X3, X4),
                U134(X1, X2, X3, mark X4) -> U134(X1, X2, X3, X4),
              U134(X1, X2, X3, active X4) -> U134(X1, X2, X3, X4),
                U134(X1, X2, mark X3, X4) -> U134(X1, X2, X3, X4),
              U134(X1, X2, active X3, X4) -> U134(X1, X2, X3, X4),
                U134(X1, mark X2, X3, X4) -> U134(X1, X2, X3, X4),
              U134(X1, active X2, X3, X4) -> U134(X1, X2, X3, X4),
                U134(mark X1, X2, X3, X4) -> U134(X1, X2, X3, X4),
              U134(active X1, X2, X3, X4) -> U134(X1, X2, X3, X4),
                U135(X1, X2, X3, mark X4) -> U135(X1, X2, X3, X4),
              U135(X1, X2, X3, active X4) -> U135(X1, X2, X3, X4),
                U135(X1, X2, mark X3, X4) -> U135(X1, X2, X3, X4),
              U135(X1, X2, active X3, X4) -> U135(X1, X2, X3, X4),
                U135(X1, mark X2, X3, X4) -> U135(X1, X2, X3, X4),
              U135(X1, active X2, X3, X4) -> U135(X1, X2, X3, X4),
                U135(mark X1, X2, X3, X4) -> U135(X1, X2, X3, X4),
              U135(active X1, X2, X3, X4) -> U135(X1, X2, X3, X4),
                U136(X1, X2, X3, mark X4) -> U136(X1, X2, X3, X4),
              U136(X1, X2, X3, active X4) -> U136(X1, X2, X3, X4),
                U136(X1, X2, mark X3, X4) -> U136(X1, X2, X3, X4),
              U136(X1, X2, active X3, X4) -> U136(X1, X2, X3, X4),
                U136(X1, mark X2, X3, X4) -> U136(X1, X2, X3, X4),
              U136(X1, active X2, X3, X4) -> U136(X1, X2, X3, X4),
                U136(mark X1, X2, X3, X4) -> U136(X1, X2, X3, X4),
              U136(active X1, X2, X3, X4) -> U136(X1, X2, X3, X4),
                        take(X1, mark X2) -> take(X1, X2),
                      take(X1, active X2) -> take(X1, X2),
                        take(mark X1, X2) -> take(X1, X2),
                      take(active X1, X2) -> take(X1, X2),
                         U22(X1, mark X2) -> U22(X1, X2),
                       U22(X1, active X2) -> U22(X1, X2),
                         U22(mark X1, X2) -> U22(X1, X2),
                       U22(active X1, X2) -> U22(X1, X2),
                         U21(X1, mark X2) -> U21(X1, X2),
                       U21(X1, active X2) -> U21(X1, X2),
                         U21(mark X1, X2) -> U21(X1, X2),
                       U21(active X1, X2) -> U21(X1, X2),
                               U23 mark X -> U23 X,
                             U23 active X -> U23 X,
                         U32(X1, mark X2) -> U32(X1, X2),
                       U32(X1, active X2) -> U32(X1, X2),
                         U32(mark X1, X2) -> U32(X1, X2),
                       U32(active X1, X2) -> U32(X1, X2),
                         U31(X1, mark X2) -> U31(X1, X2),
                       U31(X1, active X2) -> U31(X1, X2),
                         U31(mark X1, X2) -> U31(X1, X2),
                       U31(active X1, X2) -> U31(X1, X2),
                               U33 mark X -> U33 X,
                             U33 active X -> U33 X,
                     U42(X1, X2, mark X3) -> U42(X1, X2, X3),
                   U42(X1, X2, active X3) -> U42(X1, X2, X3),
                     U42(X1, mark X2, X3) -> U42(X1, X2, X3),
                   U42(X1, active X2, X3) -> U42(X1, X2, X3),
                     U42(mark X1, X2, X3) -> U42(X1, X2, X3),
                   U42(active X1, X2, X3) -> U42(X1, X2, X3),
                     U41(X1, X2, mark X3) -> U41(X1, X2, X3),
                   U41(X1, X2, active X3) -> U41(X1, X2, X3),
                     U41(X1, mark X2, X3) -> U41(X1, X2, X3),
                   U41(X1, active X2, X3) -> U41(X1, X2, X3),
                     U41(mark X1, X2, X3) -> U41(X1, X2, X3),
                   U41(active X1, X2, X3) -> U41(X1, X2, X3),
                     U43(X1, X2, mark X3) -> U43(X1, X2, X3),
                   U43(X1, X2, active X3) -> U43(X1, X2, X3),
                     U43(X1, mark X2, X3) -> U43(X1, X2, X3),
                   U43(X1, active X2, X3) -> U43(X1, X2, X3),
                     U43(mark X1, X2, X3) -> U43(X1, X2, X3),
                   U43(active X1, X2, X3) -> U43(X1, X2, X3),
                     U44(X1, X2, mark X3) -> U44(X1, X2, X3),
                   U44(X1, X2, active X3) -> U44(X1, X2, X3),
                     U44(X1, mark X2, X3) -> U44(X1, X2, X3),
                   U44(X1, active X2, X3) -> U44(X1, X2, X3),
                     U44(mark X1, X2, X3) -> U44(X1, X2, X3),
                   U44(active X1, X2, X3) -> U44(X1, X2, X3),
                         U45(X1, mark X2) -> U45(X1, X2),
                       U45(X1, active X2) -> U45(X1, X2),
                         U45(mark X1, X2) -> U45(X1, X2),
                       U45(active X1, X2) -> U45(X1, X2),
                               U46 mark X -> U46 X,
                             U46 active X -> U46 X,
                               U52 mark X -> U52 X,
                             U52 active X -> U52 X,
                         U51(X1, mark X2) -> U51(X1, X2),
                       U51(X1, active X2) -> U51(X1, X2),
                         U51(mark X1, X2) -> U51(X1, X2),
                       U51(active X1, X2) -> U51(X1, X2),
                               U62 mark X -> U62 X,
                             U62 active X -> U62 X,
                         U61(X1, mark X2) -> U61(X1, X2),
                       U61(X1, active X2) -> U61(X1, X2),
                         U61(mark X1, X2) -> U61(X1, X2),
                       U61(active X1, X2) -> U61(X1, X2),
                               U71 mark X -> U71 X,
                             U71 active X -> U71 X,
                               U81 mark X -> U81 X,
                             U81 active X -> U81 X,
                     U92(X1, X2, mark X3) -> U92(X1, X2, X3),
                   U92(X1, X2, active X3) -> U92(X1, X2, X3),
                     U92(X1, mark X2, X3) -> U92(X1, X2, X3),
                   U92(X1, active X2, X3) -> U92(X1, X2, X3),
                     U92(mark X1, X2, X3) -> U92(X1, X2, X3),
                   U92(active X1, X2, X3) -> U92(X1, X2, X3),
                     U91(X1, X2, mark X3) -> U91(X1, X2, X3),
                   U91(X1, X2, active X3) -> U91(X1, X2, X3),
                     U91(X1, mark X2, X3) -> U91(X1, X2, X3),
                   U91(X1, active X2, X3) -> U91(X1, X2, X3),
                     U91(mark X1, X2, X3) -> U91(X1, X2, X3),
                   U91(active X1, X2, X3) -> U91(X1, X2, X3),
                     U93(X1, X2, mark X3) -> U93(X1, X2, X3),
                   U93(X1, X2, active X3) -> U93(X1, X2, X3),
                     U93(X1, mark X2, X3) -> U93(X1, X2, X3),
                   U93(X1, active X2, X3) -> U93(X1, X2, X3),
                     U93(mark X1, X2, X3) -> U93(X1, X2, X3),
                   U93(active X1, X2, X3) -> U93(X1, X2, X3),
                     U94(X1, X2, mark X3) -> U94(X1, X2, X3),
                   U94(X1, X2, active X3) -> U94(X1, X2, X3),
                     U94(X1, mark X2, X3) -> U94(X1, X2, X3),
                   U94(X1, active X2, X3) -> U94(X1, X2, X3),
                     U94(mark X1, X2, X3) -> U94(X1, X2, X3),
                   U94(active X1, X2, X3) -> U94(X1, X2, X3),
                         U95(X1, mark X2) -> U95(X1, X2),
                       U95(X1, active X2) -> U95(X1, X2),
                         U95(mark X1, X2) -> U95(X1, X2),
                       U95(active X1, X2) -> U95(X1, X2),
                               U96 mark X -> U96 X,
                             U96 active X -> U96 X
      }
      Open
     
     
     
     SCC (4):
      Strict:
       {  U61#(X1, mark X2) -> U61#(X1, X2),
        U61#(X1, active X2) -> U61#(X1, X2),
          U61#(mark X1, X2) -> U61#(X1, X2),
        U61#(active X1, X2) -> U61#(X1, X2)}
      Weak:
      {
                        mark cons(X1, X2) -> active cons(mark X1, X2),
                                 mark 0() -> active 0(),
                             mark zeros() -> active zeros(),
                    mark U102(X1, X2, X3) -> active U102(mark X1, X2, X3),
                         mark isNatKind X -> active isNatKind X,
                    mark U101(X1, X2, X3) -> active U101(mark X1, X2, X3),
                                mark tt() -> active tt(),
                    mark U103(X1, X2, X3) -> active U103(mark X1, X2, X3),
                    mark isNatIListKind X -> active isNatIListKind X,
                    mark U104(X1, X2, X3) -> active U104(mark X1, X2, X3),
                        mark U105(X1, X2) -> active U105(mark X1, X2),
                             mark isNat X -> active isNat X,
                              mark U106 X -> active U106 mark X,
                        mark isNatIList X -> active isNatIList X,
                         mark U12(X1, X2) -> active U12(mark X1, X2),
                         mark U11(X1, X2) -> active U11(mark X1, X2),
                    mark U112(X1, X2, X3) -> active U112(mark X1, X2, X3),
                    mark U111(X1, X2, X3) -> active U111(mark X1, X2, X3),
                    mark U113(X1, X2, X3) -> active U113(mark X1, X2, X3),
                        mark U114(X1, X2) -> active U114(mark X1, X2),
                                 mark s X -> active s mark X,
                            mark length X -> active length mark X,
                               mark U13 X -> active U13 mark X,
                         mark isNatList X -> active isNatList X,
                              mark U122 X -> active U122 mark X,
                        mark U121(X1, X2) -> active U121(mark X1, X2),
                               mark nil() -> active nil(),
                mark U132(X1, X2, X3, X4) -> active U132(mark X1, X2, X3, X4),
                mark U131(X1, X2, X3, X4) -> active U131(mark X1, X2, X3, X4),
                mark U133(X1, X2, X3, X4) -> active U133(mark X1, X2, X3, X4),
                mark U134(X1, X2, X3, X4) -> active U134(mark X1, X2, X3, X4),
                mark U135(X1, X2, X3, X4) -> active U135(mark X1, X2, X3, X4),
                mark U136(X1, X2, X3, X4) -> active U136(mark X1, X2, X3, X4),
                        mark take(X1, X2) -> active take(mark X1, mark X2),
                         mark U22(X1, X2) -> active U22(mark X1, X2),
                         mark U21(X1, X2) -> active U21(mark X1, X2),
                               mark U23 X -> active U23 mark X,
                         mark U32(X1, X2) -> active U32(mark X1, X2),
                         mark U31(X1, X2) -> active U31(mark X1, X2),
                               mark U33 X -> active U33 mark X,
                     mark U42(X1, X2, X3) -> active U42(mark X1, X2, X3),
                     mark U41(X1, X2, X3) -> active U41(mark X1, X2, X3),
                     mark U43(X1, X2, X3) -> active U43(mark X1, X2, X3),
                     mark U44(X1, X2, X3) -> active U44(mark X1, X2, X3),
                         mark U45(X1, X2) -> active U45(mark X1, X2),
                               mark U46 X -> active U46 mark X,
                               mark U52 X -> active U52 mark X,
                         mark U51(X1, X2) -> active U51(mark X1, X2),
                               mark U62 X -> active U62 mark X,
                         mark U61(X1, X2) -> active U61(mark X1, X2),
                               mark U71 X -> active U71 mark X,
                               mark U81 X -> active U81 mark X,
                     mark U92(X1, X2, X3) -> active U92(mark X1, X2, X3),
                     mark U91(X1, X2, X3) -> active U91(mark X1, X2, X3),
                     mark U93(X1, X2, X3) -> active U93(mark X1, X2, X3),
                     mark U94(X1, X2, X3) -> active U94(mark X1, X2, X3),
                         mark U95(X1, X2) -> active U95(mark X1, X2),
                               mark U96 X -> active U96 mark X,
                        cons(X1, mark X2) -> cons(X1, X2),
                      cons(X1, active X2) -> cons(X1, X2),
                        cons(mark X1, X2) -> cons(X1, X2),
                      cons(active X1, X2) -> cons(X1, X2),
                           active zeros() -> mark cons(0(), zeros()),
                active U102(tt(), V1, V2) -> mark U103(isNatIListKind V2, V1, V2),
                     active isNatKind 0() -> mark tt(),
                    active isNatKind s V1 -> mark U81 isNatKind V1,
               active isNatKind length V1 -> mark U71 isNatIListKind V1,
                active U101(tt(), V1, V2) -> mark U102(isNatKind V1, V1, V2),
                active U103(tt(), V1, V2) -> mark U104(isNatIListKind V2, V1, V2),
       active isNatIListKind cons(V1, V2) -> mark U51(isNatKind V1, V2),
            active isNatIListKind zeros() -> mark tt(),
              active isNatIListKind nil() -> mark tt(),
       active isNatIListKind take(V1, V2) -> mark U61(isNatKind V1, V2),
                active U104(tt(), V1, V2) -> mark U105(isNat V1, V2),
                    active U105(tt(), V2) -> mark U106 isNatIList V2,
                         active isNat 0() -> mark tt(),
                        active isNat s V1 -> mark U21(isNatKind V1, V1),
                   active isNat length V1 -> mark U11(isNatIListKind V1, V1),
                         active U106 tt() -> mark tt(),
                      active isNatIList V -> mark U31(isNatIListKind V, V),
           active isNatIList cons(V1, V2) -> mark U41(isNatKind V1, V1, V2),
                active isNatIList zeros() -> mark tt(),
                     active U12(tt(), V1) -> mark U13 isNatList V1,
                     active U11(tt(), V1) -> mark U12(isNatIListKind V1, V1),
                  active U112(tt(), L, N) -> mark U113(isNat N, L, N),
                  active U111(tt(), L, N) -> mark U112(isNatIListKind L, L, N),
                  active U113(tt(), L, N) -> mark U114(isNatKind N, L),
                     active U114(tt(), L) -> mark s length L,
                 active length cons(N, L) -> mark U111(isNatList L, L, N),
                      active length nil() -> mark 0(),
                          active U13 tt() -> mark tt(),
            active isNatList cons(V1, V2) -> mark U91(isNatKind V1, V1, V2),
                   active isNatList nil() -> mark tt(),
            active isNatList take(V1, V2) -> mark U101(isNatKind V1, V1, V2),
                         active U122 tt() -> mark nil(),
                    active U121(tt(), IL) -> mark U122 isNatIListKind IL,
              active U132(tt(), IL, M, N) -> mark U133(isNat M, IL, M, N),
              active U131(tt(), IL, M, N) -> mark U132(isNatIListKind IL, IL, M, N),
              active U133(tt(), IL, M, N) -> mark U134(isNatKind M, IL, M, N),
              active U134(tt(), IL, M, N) -> mark U135(isNat N, IL, M, N),
              active U135(tt(), IL, M, N) -> mark U136(isNatKind N, IL, M, N),
              active U136(tt(), IL, M, N) -> mark cons(N, take(M, IL)),
                     active take(0(), IL) -> mark U121(isNatIList IL, IL),
            active take(s M, cons(N, IL)) -> mark U131(isNatIList IL, IL, M, N),
                     active U22(tt(), V1) -> mark U23 isNat V1,
                     active U21(tt(), V1) -> mark U22(isNatKind V1, V1),
                          active U23 tt() -> mark tt(),
                      active U32(tt(), V) -> mark U33 isNatList V,
                      active U31(tt(), V) -> mark U32(isNatIListKind V, V),
                          active U33 tt() -> mark tt(),
                 active U42(tt(), V1, V2) -> mark U43(isNatIListKind V2, V1, V2),
                 active U41(tt(), V1, V2) -> mark U42(isNatKind V1, V1, V2),
                 active U43(tt(), V1, V2) -> mark U44(isNatIListKind V2, V1, V2),
                 active U44(tt(), V1, V2) -> mark U45(isNat V1, V2),
                     active U45(tt(), V2) -> mark U46 isNatIList V2,
                          active U46 tt() -> mark tt(),
                          active U52 tt() -> mark tt(),
                     active U51(tt(), V2) -> mark U52 isNatIListKind V2,
                          active U62 tt() -> mark tt(),
                     active U61(tt(), V2) -> mark U62 isNatIListKind V2,
                          active U71 tt() -> mark tt(),
                          active U81 tt() -> mark tt(),
                 active U92(tt(), V1, V2) -> mark U93(isNatIListKind V2, V1, V2),
                 active U91(tt(), V1, V2) -> mark U92(isNatKind V1, V1, V2),
                 active U93(tt(), V1, V2) -> mark U94(isNatIListKind V2, V1, V2),
                 active U94(tt(), V1, V2) -> mark U95(isNat V1, V2),
                     active U95(tt(), V2) -> mark U96 isNatList V2,
                          active U96 tt() -> mark tt(),
                    U102(X1, X2, mark X3) -> U102(X1, X2, X3),
                  U102(X1, X2, active X3) -> U102(X1, X2, X3),
                    U102(X1, mark X2, X3) -> U102(X1, X2, X3),
                  U102(X1, active X2, X3) -> U102(X1, X2, X3),
                    U102(mark X1, X2, X3) -> U102(X1, X2, X3),
                  U102(active X1, X2, X3) -> U102(X1, X2, X3),
                         isNatKind mark X -> isNatKind X,
                       isNatKind active X -> isNatKind X,
                    U101(X1, X2, mark X3) -> U101(X1, X2, X3),
                  U101(X1, X2, active X3) -> U101(X1, X2, X3),
                    U101(X1, mark X2, X3) -> U101(X1, X2, X3),
                  U101(X1, active X2, X3) -> U101(X1, X2, X3),
                    U101(mark X1, X2, X3) -> U101(X1, X2, X3),
                  U101(active X1, X2, X3) -> U101(X1, X2, X3),
                    U103(X1, X2, mark X3) -> U103(X1, X2, X3),
                  U103(X1, X2, active X3) -> U103(X1, X2, X3),
                    U103(X1, mark X2, X3) -> U103(X1, X2, X3),
                  U103(X1, active X2, X3) -> U103(X1, X2, X3),
                    U103(mark X1, X2, X3) -> U103(X1, X2, X3),
                  U103(active X1, X2, X3) -> U103(X1, X2, X3),
                    isNatIListKind mark X -> isNatIListKind X,
                  isNatIListKind active X -> isNatIListKind X,
                    U104(X1, X2, mark X3) -> U104(X1, X2, X3),
                  U104(X1, X2, active X3) -> U104(X1, X2, X3),
                    U104(X1, mark X2, X3) -> U104(X1, X2, X3),
                  U104(X1, active X2, X3) -> U104(X1, X2, X3),
                    U104(mark X1, X2, X3) -> U104(X1, X2, X3),
                  U104(active X1, X2, X3) -> U104(X1, X2, X3),
                        U105(X1, mark X2) -> U105(X1, X2),
                      U105(X1, active X2) -> U105(X1, X2),
                        U105(mark X1, X2) -> U105(X1, X2),
                      U105(active X1, X2) -> U105(X1, X2),
                             isNat mark X -> isNat X,
                           isNat active X -> isNat X,
                              U106 mark X -> U106 X,
                            U106 active X -> U106 X,
                        isNatIList mark X -> isNatIList X,
                      isNatIList active X -> isNatIList X,
                         U12(X1, mark X2) -> U12(X1, X2),
                       U12(X1, active X2) -> U12(X1, X2),
                         U12(mark X1, X2) -> U12(X1, X2),
                       U12(active X1, X2) -> U12(X1, X2),
                         U11(X1, mark X2) -> U11(X1, X2),
                       U11(X1, active X2) -> U11(X1, X2),
                         U11(mark X1, X2) -> U11(X1, X2),
                       U11(active X1, X2) -> U11(X1, X2),
                    U112(X1, X2, mark X3) -> U112(X1, X2, X3),
                  U112(X1, X2, active X3) -> U112(X1, X2, X3),
                    U112(X1, mark X2, X3) -> U112(X1, X2, X3),
                  U112(X1, active X2, X3) -> U112(X1, X2, X3),
                    U112(mark X1, X2, X3) -> U112(X1, X2, X3),
                  U112(active X1, X2, X3) -> U112(X1, X2, X3),
                    U111(X1, X2, mark X3) -> U111(X1, X2, X3),
                  U111(X1, X2, active X3) -> U111(X1, X2, X3),
                    U111(X1, mark X2, X3) -> U111(X1, X2, X3),
                  U111(X1, active X2, X3) -> U111(X1, X2, X3),
                    U111(mark X1, X2, X3) -> U111(X1, X2, X3),
                  U111(active X1, X2, X3) -> U111(X1, X2, X3),
                    U113(X1, X2, mark X3) -> U113(X1, X2, X3),
                  U113(X1, X2, active X3) -> U113(X1, X2, X3),
                    U113(X1, mark X2, X3) -> U113(X1, X2, X3),
                  U113(X1, active X2, X3) -> U113(X1, X2, X3),
                    U113(mark X1, X2, X3) -> U113(X1, X2, X3),
                  U113(active X1, X2, X3) -> U113(X1, X2, X3),
                        U114(X1, mark X2) -> U114(X1, X2),
                      U114(X1, active X2) -> U114(X1, X2),
                        U114(mark X1, X2) -> U114(X1, X2),
                      U114(active X1, X2) -> U114(X1, X2),
                                 s mark X -> s X,
                               s active X -> s X,
                            length mark X -> length X,
                          length active X -> length X,
                               U13 mark X -> U13 X,
                             U13 active X -> U13 X,
                         isNatList mark X -> isNatList X,
                       isNatList active X -> isNatList X,
                              U122 mark X -> U122 X,
                            U122 active X -> U122 X,
                        U121(X1, mark X2) -> U121(X1, X2),
                      U121(X1, active X2) -> U121(X1, X2),
                        U121(mark X1, X2) -> U121(X1, X2),
                      U121(active X1, X2) -> U121(X1, X2),
                U132(X1, X2, X3, mark X4) -> U132(X1, X2, X3, X4),
              U132(X1, X2, X3, active X4) -> U132(X1, X2, X3, X4),
                U132(X1, X2, mark X3, X4) -> U132(X1, X2, X3, X4),
              U132(X1, X2, active X3, X4) -> U132(X1, X2, X3, X4),
                U132(X1, mark X2, X3, X4) -> U132(X1, X2, X3, X4),
              U132(X1, active X2, X3, X4) -> U132(X1, X2, X3, X4),
                U132(mark X1, X2, X3, X4) -> U132(X1, X2, X3, X4),
              U132(active X1, X2, X3, X4) -> U132(X1, X2, X3, X4),
                U131(X1, X2, X3, mark X4) -> U131(X1, X2, X3, X4),
              U131(X1, X2, X3, active X4) -> U131(X1, X2, X3, X4),
                U131(X1, X2, mark X3, X4) -> U131(X1, X2, X3, X4),
              U131(X1, X2, active X3, X4) -> U131(X1, X2, X3, X4),
                U131(X1, mark X2, X3, X4) -> U131(X1, X2, X3, X4),
              U131(X1, active X2, X3, X4) -> U131(X1, X2, X3, X4),
                U131(mark X1, X2, X3, X4) -> U131(X1, X2, X3, X4),
              U131(active X1, X2, X3, X4) -> U131(X1, X2, X3, X4),
                U133(X1, X2, X3, mark X4) -> U133(X1, X2, X3, X4),
              U133(X1, X2, X3, active X4) -> U133(X1, X2, X3, X4),
                U133(X1, X2, mark X3, X4) -> U133(X1, X2, X3, X4),
              U133(X1, X2, active X3, X4) -> U133(X1, X2, X3, X4),
                U133(X1, mark X2, X3, X4) -> U133(X1, X2, X3, X4),
              U133(X1, active X2, X3, X4) -> U133(X1, X2, X3, X4),
                U133(mark X1, X2, X3, X4) -> U133(X1, X2, X3, X4),
              U133(active X1, X2, X3, X4) -> U133(X1, X2, X3, X4),
                U134(X1, X2, X3, mark X4) -> U134(X1, X2, X3, X4),
              U134(X1, X2, X3, active X4) -> U134(X1, X2, X3, X4),
                U134(X1, X2, mark X3, X4) -> U134(X1, X2, X3, X4),
              U134(X1, X2, active X3, X4) -> U134(X1, X2, X3, X4),
                U134(X1, mark X2, X3, X4) -> U134(X1, X2, X3, X4),
              U134(X1, active X2, X3, X4) -> U134(X1, X2, X3, X4),
                U134(mark X1, X2, X3, X4) -> U134(X1, X2, X3, X4),
              U134(active X1, X2, X3, X4) -> U134(X1, X2, X3, X4),
                U135(X1, X2, X3, mark X4) -> U135(X1, X2, X3, X4),
              U135(X1, X2, X3, active X4) -> U135(X1, X2, X3, X4),
                U135(X1, X2, mark X3, X4) -> U135(X1, X2, X3, X4),
              U135(X1, X2, active X3, X4) -> U135(X1, X2, X3, X4),
                U135(X1, mark X2, X3, X4) -> U135(X1, X2, X3, X4),
              U135(X1, active X2, X3, X4) -> U135(X1, X2, X3, X4),
                U135(mark X1, X2, X3, X4) -> U135(X1, X2, X3, X4),
              U135(active X1, X2, X3, X4) -> U135(X1, X2, X3, X4),
                U136(X1, X2, X3, mark X4) -> U136(X1, X2, X3, X4),
              U136(X1, X2, X3, active X4) -> U136(X1, X2, X3, X4),
                U136(X1, X2, mark X3, X4) -> U136(X1, X2, X3, X4),
              U136(X1, X2, active X3, X4) -> U136(X1, X2, X3, X4),
                U136(X1, mark X2, X3, X4) -> U136(X1, X2, X3, X4),
              U136(X1, active X2, X3, X4) -> U136(X1, X2, X3, X4),
                U136(mark X1, X2, X3, X4) -> U136(X1, X2, X3, X4),
              U136(active X1, X2, X3, X4) -> U136(X1, X2, X3, X4),
                        take(X1, mark X2) -> take(X1, X2),
                      take(X1, active X2) -> take(X1, X2),
                        take(mark X1, X2) -> take(X1, X2),
                      take(active X1, X2) -> take(X1, X2),
                         U22(X1, mark X2) -> U22(X1, X2),
                       U22(X1, active X2) -> U22(X1, X2),
                         U22(mark X1, X2) -> U22(X1, X2),
                       U22(active X1, X2) -> U22(X1, X2),
                         U21(X1, mark X2) -> U21(X1, X2),
                       U21(X1, active X2) -> U21(X1, X2),
                         U21(mark X1, X2) -> U21(X1, X2),
                       U21(active X1, X2) -> U21(X1, X2),
                               U23 mark X -> U23 X,
                             U23 active X -> U23 X,
                         U32(X1, mark X2) -> U32(X1, X2),
                       U32(X1, active X2) -> U32(X1, X2),
                         U32(mark X1, X2) -> U32(X1, X2),
                       U32(active X1, X2) -> U32(X1, X2),
                         U31(X1, mark X2) -> U31(X1, X2),
                       U31(X1, active X2) -> U31(X1, X2),
                         U31(mark X1, X2) -> U31(X1, X2),
                       U31(active X1, X2) -> U31(X1, X2),
                               U33 mark X -> U33 X,
                             U33 active X -> U33 X,
                     U42(X1, X2, mark X3) -> U42(X1, X2, X3),
                   U42(X1, X2, active X3) -> U42(X1, X2, X3),
                     U42(X1, mark X2, X3) -> U42(X1, X2, X3),
                   U42(X1, active X2, X3) -> U42(X1, X2, X3),
                     U42(mark X1, X2, X3) -> U42(X1, X2, X3),
                   U42(active X1, X2, X3) -> U42(X1, X2, X3),
                     U41(X1, X2, mark X3) -> U41(X1, X2, X3),
                   U41(X1, X2, active X3) -> U41(X1, X2, X3),
                     U41(X1, mark X2, X3) -> U41(X1, X2, X3),
                   U41(X1, active X2, X3) -> U41(X1, X2, X3),
                     U41(mark X1, X2, X3) -> U41(X1, X2, X3),
                   U41(active X1, X2, X3) -> U41(X1, X2, X3),
                     U43(X1, X2, mark X3) -> U43(X1, X2, X3),
                   U43(X1, X2, active X3) -> U43(X1, X2, X3),
                     U43(X1, mark X2, X3) -> U43(X1, X2, X3),
                   U43(X1, active X2, X3) -> U43(X1, X2, X3),
                     U43(mark X1, X2, X3) -> U43(X1, X2, X3),
                   U43(active X1, X2, X3) -> U43(X1, X2, X3),
                     U44(X1, X2, mark X3) -> U44(X1, X2, X3),
                   U44(X1, X2, active X3) -> U44(X1, X2, X3),
                     U44(X1, mark X2, X3) -> U44(X1, X2, X3),
                   U44(X1, active X2, X3) -> U44(X1, X2, X3),
                     U44(mark X1, X2, X3) -> U44(X1, X2, X3),
                   U44(active X1, X2, X3) -> U44(X1, X2, X3),
                         U45(X1, mark X2) -> U45(X1, X2),
                       U45(X1, active X2) -> U45(X1, X2),
                         U45(mark X1, X2) -> U45(X1, X2),
                       U45(active X1, X2) -> U45(X1, X2),
                               U46 mark X -> U46 X,
                             U46 active X -> U46 X,
                               U52 mark X -> U52 X,
                             U52 active X -> U52 X,
                         U51(X1, mark X2) -> U51(X1, X2),
                       U51(X1, active X2) -> U51(X1, X2),
                         U51(mark X1, X2) -> U51(X1, X2),
                       U51(active X1, X2) -> U51(X1, X2),
                               U62 mark X -> U62 X,
                             U62 active X -> U62 X,
                         U61(X1, mark X2) -> U61(X1, X2),
                       U61(X1, active X2) -> U61(X1, X2),
                         U61(mark X1, X2) -> U61(X1, X2),
                       U61(active X1, X2) -> U61(X1, X2),
                               U71 mark X -> U71 X,
                             U71 active X -> U71 X,
                               U81 mark X -> U81 X,
                             U81 active X -> U81 X,
                     U92(X1, X2, mark X3) -> U92(X1, X2, X3),
                   U92(X1, X2, active X3) -> U92(X1, X2, X3),
                     U92(X1, mark X2, X3) -> U92(X1, X2, X3),
                   U92(X1, active X2, X3) -> U92(X1, X2, X3),
                     U92(mark X1, X2, X3) -> U92(X1, X2, X3),
                   U92(active X1, X2, X3) -> U92(X1, X2, X3),
                     U91(X1, X2, mark X3) -> U91(X1, X2, X3),
                   U91(X1, X2, active X3) -> U91(X1, X2, X3),
                     U91(X1, mark X2, X3) -> U91(X1, X2, X3),
                   U91(X1, active X2, X3) -> U91(X1, X2, X3),
                     U91(mark X1, X2, X3) -> U91(X1, X2, X3),
                   U91(active X1, X2, X3) -> U91(X1, X2, X3),
                     U93(X1, X2, mark X3) -> U93(X1, X2, X3),
                   U93(X1, X2, active X3) -> U93(X1, X2, X3),
                     U93(X1, mark X2, X3) -> U93(X1, X2, X3),
                   U93(X1, active X2, X3) -> U93(X1, X2, X3),
                     U93(mark X1, X2, X3) -> U93(X1, X2, X3),
                   U93(active X1, X2, X3) -> U93(X1, X2, X3),
                     U94(X1, X2, mark X3) -> U94(X1, X2, X3),
                   U94(X1, X2, active X3) -> U94(X1, X2, X3),
                     U94(X1, mark X2, X3) -> U94(X1, X2, X3),
                   U94(X1, active X2, X3) -> U94(X1, X2, X3),
                     U94(mark X1, X2, X3) -> U94(X1, X2, X3),
                   U94(active X1, X2, X3) -> U94(X1, X2, X3),
                         U95(X1, mark X2) -> U95(X1, X2),
                       U95(X1, active X2) -> U95(X1, X2),
                         U95(mark X1, X2) -> U95(X1, X2),
                       U95(active X1, X2) -> U95(X1, X2),
                               U96 mark X -> U96 X,
                             U96 active X -> U96 X
      }
      Open
     
     
     
     SCC (2):
      Strict:
       {  U62# mark X -> U62# X,
        U62# active X -> U62# X}
      Weak:
      {
                        mark cons(X1, X2) -> active cons(mark X1, X2),
                                 mark 0() -> active 0(),
                             mark zeros() -> active zeros(),
                    mark U102(X1, X2, X3) -> active U102(mark X1, X2, X3),
                         mark isNatKind X -> active isNatKind X,
                    mark U101(X1, X2, X3) -> active U101(mark X1, X2, X3),
                                mark tt() -> active tt(),
                    mark U103(X1, X2, X3) -> active U103(mark X1, X2, X3),
                    mark isNatIListKind X -> active isNatIListKind X,
                    mark U104(X1, X2, X3) -> active U104(mark X1, X2, X3),
                        mark U105(X1, X2) -> active U105(mark X1, X2),
                             mark isNat X -> active isNat X,
                              mark U106 X -> active U106 mark X,
                        mark isNatIList X -> active isNatIList X,
                         mark U12(X1, X2) -> active U12(mark X1, X2),
                         mark U11(X1, X2) -> active U11(mark X1, X2),
                    mark U112(X1, X2, X3) -> active U112(mark X1, X2, X3),
                    mark U111(X1, X2, X3) -> active U111(mark X1, X2, X3),
                    mark U113(X1, X2, X3) -> active U113(mark X1, X2, X3),
                        mark U114(X1, X2) -> active U114(mark X1, X2),
                                 mark s X -> active s mark X,
                            mark length X -> active length mark X,
                               mark U13 X -> active U13 mark X,
                         mark isNatList X -> active isNatList X,
                              mark U122 X -> active U122 mark X,
                        mark U121(X1, X2) -> active U121(mark X1, X2),
                               mark nil() -> active nil(),
                mark U132(X1, X2, X3, X4) -> active U132(mark X1, X2, X3, X4),
                mark U131(X1, X2, X3, X4) -> active U131(mark X1, X2, X3, X4),
                mark U133(X1, X2, X3, X4) -> active U133(mark X1, X2, X3, X4),
                mark U134(X1, X2, X3, X4) -> active U134(mark X1, X2, X3, X4),
                mark U135(X1, X2, X3, X4) -> active U135(mark X1, X2, X3, X4),
                mark U136(X1, X2, X3, X4) -> active U136(mark X1, X2, X3, X4),
                        mark take(X1, X2) -> active take(mark X1, mark X2),
                         mark U22(X1, X2) -> active U22(mark X1, X2),
                         mark U21(X1, X2) -> active U21(mark X1, X2),
                               mark U23 X -> active U23 mark X,
                         mark U32(X1, X2) -> active U32(mark X1, X2),
                         mark U31(X1, X2) -> active U31(mark X1, X2),
                               mark U33 X -> active U33 mark X,
                     mark U42(X1, X2, X3) -> active U42(mark X1, X2, X3),
                     mark U41(X1, X2, X3) -> active U41(mark X1, X2, X3),
                     mark U43(X1, X2, X3) -> active U43(mark X1, X2, X3),
                     mark U44(X1, X2, X3) -> active U44(mark X1, X2, X3),
                         mark U45(X1, X2) -> active U45(mark X1, X2),
                               mark U46 X -> active U46 mark X,
                               mark U52 X -> active U52 mark X,
                         mark U51(X1, X2) -> active U51(mark X1, X2),
                               mark U62 X -> active U62 mark X,
                         mark U61(X1, X2) -> active U61(mark X1, X2),
                               mark U71 X -> active U71 mark X,
                               mark U81 X -> active U81 mark X,
                     mark U92(X1, X2, X3) -> active U92(mark X1, X2, X3),
                     mark U91(X1, X2, X3) -> active U91(mark X1, X2, X3),
                     mark U93(X1, X2, X3) -> active U93(mark X1, X2, X3),
                     mark U94(X1, X2, X3) -> active U94(mark X1, X2, X3),
                         mark U95(X1, X2) -> active U95(mark X1, X2),
                               mark U96 X -> active U96 mark X,
                        cons(X1, mark X2) -> cons(X1, X2),
                      cons(X1, active X2) -> cons(X1, X2),
                        cons(mark X1, X2) -> cons(X1, X2),
                      cons(active X1, X2) -> cons(X1, X2),
                           active zeros() -> mark cons(0(), zeros()),
                active U102(tt(), V1, V2) -> mark U103(isNatIListKind V2, V1, V2),
                     active isNatKind 0() -> mark tt(),
                    active isNatKind s V1 -> mark U81 isNatKind V1,
               active isNatKind length V1 -> mark U71 isNatIListKind V1,
                active U101(tt(), V1, V2) -> mark U102(isNatKind V1, V1, V2),
                active U103(tt(), V1, V2) -> mark U104(isNatIListKind V2, V1, V2),
       active isNatIListKind cons(V1, V2) -> mark U51(isNatKind V1, V2),
            active isNatIListKind zeros() -> mark tt(),
              active isNatIListKind nil() -> mark tt(),
       active isNatIListKind take(V1, V2) -> mark U61(isNatKind V1, V2),
                active U104(tt(), V1, V2) -> mark U105(isNat V1, V2),
                    active U105(tt(), V2) -> mark U106 isNatIList V2,
                         active isNat 0() -> mark tt(),
                        active isNat s V1 -> mark U21(isNatKind V1, V1),
                   active isNat length V1 -> mark U11(isNatIListKind V1, V1),
                         active U106 tt() -> mark tt(),
                      active isNatIList V -> mark U31(isNatIListKind V, V),
           active isNatIList cons(V1, V2) -> mark U41(isNatKind V1, V1, V2),
                active isNatIList zeros() -> mark tt(),
                     active U12(tt(), V1) -> mark U13 isNatList V1,
                     active U11(tt(), V1) -> mark U12(isNatIListKind V1, V1),
                  active U112(tt(), L, N) -> mark U113(isNat N, L, N),
                  active U111(tt(), L, N) -> mark U112(isNatIListKind L, L, N),
                  active U113(tt(), L, N) -> mark U114(isNatKind N, L),
                     active U114(tt(), L) -> mark s length L,
                 active length cons(N, L) -> mark U111(isNatList L, L, N),
                      active length nil() -> mark 0(),
                          active U13 tt() -> mark tt(),
            active isNatList cons(V1, V2) -> mark U91(isNatKind V1, V1, V2),
                   active isNatList nil() -> mark tt(),
            active isNatList take(V1, V2) -> mark U101(isNatKind V1, V1, V2),
                         active U122 tt() -> mark nil(),
                    active U121(tt(), IL) -> mark U122 isNatIListKind IL,
              active U132(tt(), IL, M, N) -> mark U133(isNat M, IL, M, N),
              active U131(tt(), IL, M, N) -> mark U132(isNatIListKind IL, IL, M, N),
              active U133(tt(), IL, M, N) -> mark U134(isNatKind M, IL, M, N),
              active U134(tt(), IL, M, N) -> mark U135(isNat N, IL, M, N),
              active U135(tt(), IL, M, N) -> mark U136(isNatKind N, IL, M, N),
              active U136(tt(), IL, M, N) -> mark cons(N, take(M, IL)),
                     active take(0(), IL) -> mark U121(isNatIList IL, IL),
            active take(s M, cons(N, IL)) -> mark U131(isNatIList IL, IL, M, N),
                     active U22(tt(), V1) -> mark U23 isNat V1,
                     active U21(tt(), V1) -> mark U22(isNatKind V1, V1),
                          active U23 tt() -> mark tt(),
                      active U32(tt(), V) -> mark U33 isNatList V,
                      active U31(tt(), V) -> mark U32(isNatIListKind V, V),
                          active U33 tt() -> mark tt(),
                 active U42(tt(), V1, V2) -> mark U43(isNatIListKind V2, V1, V2),
                 active U41(tt(), V1, V2) -> mark U42(isNatKind V1, V1, V2),
                 active U43(tt(), V1, V2) -> mark U44(isNatIListKind V2, V1, V2),
                 active U44(tt(), V1, V2) -> mark U45(isNat V1, V2),
                     active U45(tt(), V2) -> mark U46 isNatIList V2,
                          active U46 tt() -> mark tt(),
                          active U52 tt() -> mark tt(),
                     active U51(tt(), V2) -> mark U52 isNatIListKind V2,
                          active U62 tt() -> mark tt(),
                     active U61(tt(), V2) -> mark U62 isNatIListKind V2,
                          active U71 tt() -> mark tt(),
                          active U81 tt() -> mark tt(),
                 active U92(tt(), V1, V2) -> mark U93(isNatIListKind V2, V1, V2),
                 active U91(tt(), V1, V2) -> mark U92(isNatKind V1, V1, V2),
                 active U93(tt(), V1, V2) -> mark U94(isNatIListKind V2, V1, V2),
                 active U94(tt(), V1, V2) -> mark U95(isNat V1, V2),
                     active U95(tt(), V2) -> mark U96 isNatList V2,
                          active U96 tt() -> mark tt(),
                    U102(X1, X2, mark X3) -> U102(X1, X2, X3),
                  U102(X1, X2, active X3) -> U102(X1, X2, X3),
                    U102(X1, mark X2, X3) -> U102(X1, X2, X3),
                  U102(X1, active X2, X3) -> U102(X1, X2, X3),
                    U102(mark X1, X2, X3) -> U102(X1, X2, X3),
                  U102(active X1, X2, X3) -> U102(X1, X2, X3),
                         isNatKind mark X -> isNatKind X,
                       isNatKind active X -> isNatKind X,
                    U101(X1, X2, mark X3) -> U101(X1, X2, X3),
                  U101(X1, X2, active X3) -> U101(X1, X2, X3),
                    U101(X1, mark X2, X3) -> U101(X1, X2, X3),
                  U101(X1, active X2, X3) -> U101(X1, X2, X3),
                    U101(mark X1, X2, X3) -> U101(X1, X2, X3),
                  U101(active X1, X2, X3) -> U101(X1, X2, X3),
                    U103(X1, X2, mark X3) -> U103(X1, X2, X3),
                  U103(X1, X2, active X3) -> U103(X1, X2, X3),
                    U103(X1, mark X2, X3) -> U103(X1, X2, X3),
                  U103(X1, active X2, X3) -> U103(X1, X2, X3),
                    U103(mark X1, X2, X3) -> U103(X1, X2, X3),
                  U103(active X1, X2, X3) -> U103(X1, X2, X3),
                    isNatIListKind mark X -> isNatIListKind X,
                  isNatIListKind active X -> isNatIListKind X,
                    U104(X1, X2, mark X3) -> U104(X1, X2, X3),
                  U104(X1, X2, active X3) -> U104(X1, X2, X3),
                    U104(X1, mark X2, X3) -> U104(X1, X2, X3),
                  U104(X1, active X2, X3) -> U104(X1, X2, X3),
                    U104(mark X1, X2, X3) -> U104(X1, X2, X3),
                  U104(active X1, X2, X3) -> U104(X1, X2, X3),
                        U105(X1, mark X2) -> U105(X1, X2),
                      U105(X1, active X2) -> U105(X1, X2),
                        U105(mark X1, X2) -> U105(X1, X2),
                      U105(active X1, X2) -> U105(X1, X2),
                             isNat mark X -> isNat X,
                           isNat active X -> isNat X,
                              U106 mark X -> U106 X,
                            U106 active X -> U106 X,
                        isNatIList mark X -> isNatIList X,
                      isNatIList active X -> isNatIList X,
                         U12(X1, mark X2) -> U12(X1, X2),
                       U12(X1, active X2) -> U12(X1, X2),
                         U12(mark X1, X2) -> U12(X1, X2),
                       U12(active X1, X2) -> U12(X1, X2),
                         U11(X1, mark X2) -> U11(X1, X2),
                       U11(X1, active X2) -> U11(X1, X2),
                         U11(mark X1, X2) -> U11(X1, X2),
                       U11(active X1, X2) -> U11(X1, X2),
                    U112(X1, X2, mark X3) -> U112(X1, X2, X3),
                  U112(X1, X2, active X3) -> U112(X1, X2, X3),
                    U112(X1, mark X2, X3) -> U112(X1, X2, X3),
                  U112(X1, active X2, X3) -> U112(X1, X2, X3),
                    U112(mark X1, X2, X3) -> U112(X1, X2, X3),
                  U112(active X1, X2, X3) -> U112(X1, X2, X3),
                    U111(X1, X2, mark X3) -> U111(X1, X2, X3),
                  U111(X1, X2, active X3) -> U111(X1, X2, X3),
                    U111(X1, mark X2, X3) -> U111(X1, X2, X3),
                  U111(X1, active X2, X3) -> U111(X1, X2, X3),
                    U111(mark X1, X2, X3) -> U111(X1, X2, X3),
                  U111(active X1, X2, X3) -> U111(X1, X2, X3),
                    U113(X1, X2, mark X3) -> U113(X1, X2, X3),
                  U113(X1, X2, active X3) -> U113(X1, X2, X3),
                    U113(X1, mark X2, X3) -> U113(X1, X2, X3),
                  U113(X1, active X2, X3) -> U113(X1, X2, X3),
                    U113(mark X1, X2, X3) -> U113(X1, X2, X3),
                  U113(active X1, X2, X3) -> U113(X1, X2, X3),
                        U114(X1, mark X2) -> U114(X1, X2),
                      U114(X1, active X2) -> U114(X1, X2),
                        U114(mark X1, X2) -> U114(X1, X2),
                      U114(active X1, X2) -> U114(X1, X2),
                                 s mark X -> s X,
                               s active X -> s X,
                            length mark X -> length X,
                          length active X -> length X,
                               U13 mark X -> U13 X,
                             U13 active X -> U13 X,
                         isNatList mark X -> isNatList X,
                       isNatList active X -> isNatList X,
                              U122 mark X -> U122 X,
                            U122 active X -> U122 X,
                        U121(X1, mark X2) -> U121(X1, X2),
                      U121(X1, active X2) -> U121(X1, X2),
                        U121(mark X1, X2) -> U121(X1, X2),
                      U121(active X1, X2) -> U121(X1, X2),
                U132(X1, X2, X3, mark X4) -> U132(X1, X2, X3, X4),
              U132(X1, X2, X3, active X4) -> U132(X1, X2, X3, X4),
                U132(X1, X2, mark X3, X4) -> U132(X1, X2, X3, X4),
              U132(X1, X2, active X3, X4) -> U132(X1, X2, X3, X4),
                U132(X1, mark X2, X3, X4) -> U132(X1, X2, X3, X4),
              U132(X1, active X2, X3, X4) -> U132(X1, X2, X3, X4),
                U132(mark X1, X2, X3, X4) -> U132(X1, X2, X3, X4),
              U132(active X1, X2, X3, X4) -> U132(X1, X2, X3, X4),
                U131(X1, X2, X3, mark X4) -> U131(X1, X2, X3, X4),
              U131(X1, X2, X3, active X4) -> U131(X1, X2, X3, X4),
                U131(X1, X2, mark X3, X4) -> U131(X1, X2, X3, X4),
              U131(X1, X2, active X3, X4) -> U131(X1, X2, X3, X4),
                U131(X1, mark X2, X3, X4) -> U131(X1, X2, X3, X4),
              U131(X1, active X2, X3, X4) -> U131(X1, X2, X3, X4),
                U131(mark X1, X2, X3, X4) -> U131(X1, X2, X3, X4),
              U131(active X1, X2, X3, X4) -> U131(X1, X2, X3, X4),
                U133(X1, X2, X3, mark X4) -> U133(X1, X2, X3, X4),
              U133(X1, X2, X3, active X4) -> U133(X1, X2, X3, X4),
                U133(X1, X2, mark X3, X4) -> U133(X1, X2, X3, X4),
              U133(X1, X2, active X3, X4) -> U133(X1, X2, X3, X4),
                U133(X1, mark X2, X3, X4) -> U133(X1, X2, X3, X4),
              U133(X1, active X2, X3, X4) -> U133(X1, X2, X3, X4),
                U133(mark X1, X2, X3, X4) -> U133(X1, X2, X3, X4),
              U133(active X1, X2, X3, X4) -> U133(X1, X2, X3, X4),
                U134(X1, X2, X3, mark X4) -> U134(X1, X2, X3, X4),
              U134(X1, X2, X3, active X4) -> U134(X1, X2, X3, X4),
                U134(X1, X2, mark X3, X4) -> U134(X1, X2, X3, X4),
              U134(X1, X2, active X3, X4) -> U134(X1, X2, X3, X4),
                U134(X1, mark X2, X3, X4) -> U134(X1, X2, X3, X4),
              U134(X1, active X2, X3, X4) -> U134(X1, X2, X3, X4),
                U134(mark X1, X2, X3, X4) -> U134(X1, X2, X3, X4),
              U134(active X1, X2, X3, X4) -> U134(X1, X2, X3, X4),
                U135(X1, X2, X3, mark X4) -> U135(X1, X2, X3, X4),
              U135(X1, X2, X3, active X4) -> U135(X1, X2, X3, X4),
                U135(X1, X2, mark X3, X4) -> U135(X1, X2, X3, X4),
              U135(X1, X2, active X3, X4) -> U135(X1, X2, X3, X4),
                U135(X1, mark X2, X3, X4) -> U135(X1, X2, X3, X4),
              U135(X1, active X2, X3, X4) -> U135(X1, X2, X3, X4),
                U135(mark X1, X2, X3, X4) -> U135(X1, X2, X3, X4),
              U135(active X1, X2, X3, X4) -> U135(X1, X2, X3, X4),
                U136(X1, X2, X3, mark X4) -> U136(X1, X2, X3, X4),
              U136(X1, X2, X3, active X4) -> U136(X1, X2, X3, X4),
                U136(X1, X2, mark X3, X4) -> U136(X1, X2, X3, X4),
              U136(X1, X2, active X3, X4) -> U136(X1, X2, X3, X4),
                U136(X1, mark X2, X3, X4) -> U136(X1, X2, X3, X4),
              U136(X1, active X2, X3, X4) -> U136(X1, X2, X3, X4),
                U136(mark X1, X2, X3, X4) -> U136(X1, X2, X3, X4),
              U136(active X1, X2, X3, X4) -> U136(X1, X2, X3, X4),
                        take(X1, mark X2) -> take(X1, X2),
                      take(X1, active X2) -> take(X1, X2),
                        take(mark X1, X2) -> take(X1, X2),
                      take(active X1, X2) -> take(X1, X2),
                         U22(X1, mark X2) -> U22(X1, X2),
                       U22(X1, active X2) -> U22(X1, X2),
                         U22(mark X1, X2) -> U22(X1, X2),
                       U22(active X1, X2) -> U22(X1, X2),
                         U21(X1, mark X2) -> U21(X1, X2),
                       U21(X1, active X2) -> U21(X1, X2),
                         U21(mark X1, X2) -> U21(X1, X2),
                       U21(active X1, X2) -> U21(X1, X2),
                               U23 mark X -> U23 X,
                             U23 active X -> U23 X,
                         U32(X1, mark X2) -> U32(X1, X2),
                       U32(X1, active X2) -> U32(X1, X2),
                         U32(mark X1, X2) -> U32(X1, X2),
                       U32(active X1, X2) -> U32(X1, X2),
                         U31(X1, mark X2) -> U31(X1, X2),
                       U31(X1, active X2) -> U31(X1, X2),
                         U31(mark X1, X2) -> U31(X1, X2),
                       U31(active X1, X2) -> U31(X1, X2),
                               U33 mark X -> U33 X,
                             U33 active X -> U33 X,
                     U42(X1, X2, mark X3) -> U42(X1, X2, X3),
                   U42(X1, X2, active X3) -> U42(X1, X2, X3),
                     U42(X1, mark X2, X3) -> U42(X1, X2, X3),
                   U42(X1, active X2, X3) -> U42(X1, X2, X3),
                     U42(mark X1, X2, X3) -> U42(X1, X2, X3),
                   U42(active X1, X2, X3) -> U42(X1, X2, X3),
                     U41(X1, X2, mark X3) -> U41(X1, X2, X3),
                   U41(X1, X2, active X3) -> U41(X1, X2, X3),
                     U41(X1, mark X2, X3) -> U41(X1, X2, X3),
                   U41(X1, active X2, X3) -> U41(X1, X2, X3),
                     U41(mark X1, X2, X3) -> U41(X1, X2, X3),
                   U41(active X1, X2, X3) -> U41(X1, X2, X3),
                     U43(X1, X2, mark X3) -> U43(X1, X2, X3),
                   U43(X1, X2, active X3) -> U43(X1, X2, X3),
                     U43(X1, mark X2, X3) -> U43(X1, X2, X3),
                   U43(X1, active X2, X3) -> U43(X1, X2, X3),
                     U43(mark X1, X2, X3) -> U43(X1, X2, X3),
                   U43(active X1, X2, X3) -> U43(X1, X2, X3),
                     U44(X1, X2, mark X3) -> U44(X1, X2, X3),
                   U44(X1, X2, active X3) -> U44(X1, X2, X3),
                     U44(X1, mark X2, X3) -> U44(X1, X2, X3),
                   U44(X1, active X2, X3) -> U44(X1, X2, X3),
                     U44(mark X1, X2, X3) -> U44(X1, X2, X3),
                   U44(active X1, X2, X3) -> U44(X1, X2, X3),
                         U45(X1, mark X2) -> U45(X1, X2),
                       U45(X1, active X2) -> U45(X1, X2),
                         U45(mark X1, X2) -> U45(X1, X2),
                       U45(active X1, X2) -> U45(X1, X2),
                               U46 mark X -> U46 X,
                             U46 active X -> U46 X,
                               U52 mark X -> U52 X,
                             U52 active X -> U52 X,
                         U51(X1, mark X2) -> U51(X1, X2),
                       U51(X1, active X2) -> U51(X1, X2),
                         U51(mark X1, X2) -> U51(X1, X2),
                       U51(active X1, X2) -> U51(X1, X2),
                               U62 mark X -> U62 X,
                             U62 active X -> U62 X,
                         U61(X1, mark X2) -> U61(X1, X2),
                       U61(X1, active X2) -> U61(X1, X2),
                         U61(mark X1, X2) -> U61(X1, X2),
                       U61(active X1, X2) -> U61(X1, X2),
                               U71 mark X -> U71 X,
                             U71 active X -> U71 X,
                               U81 mark X -> U81 X,
                             U81 active X -> U81 X,
                     U92(X1, X2, mark X3) -> U92(X1, X2, X3),
                   U92(X1, X2, active X3) -> U92(X1, X2, X3),
                     U92(X1, mark X2, X3) -> U92(X1, X2, X3),
                   U92(X1, active X2, X3) -> U92(X1, X2, X3),
                     U92(mark X1, X2, X3) -> U92(X1, X2, X3),
                   U92(active X1, X2, X3) -> U92(X1, X2, X3),
                     U91(X1, X2, mark X3) -> U91(X1, X2, X3),
                   U91(X1, X2, active X3) -> U91(X1, X2, X3),
                     U91(X1, mark X2, X3) -> U91(X1, X2, X3),
                   U91(X1, active X2, X3) -> U91(X1, X2, X3),
                     U91(mark X1, X2, X3) -> U91(X1, X2, X3),
                   U91(active X1, X2, X3) -> U91(X1, X2, X3),
                     U93(X1, X2, mark X3) -> U93(X1, X2, X3),
                   U93(X1, X2, active X3) -> U93(X1, X2, X3),
                     U93(X1, mark X2, X3) -> U93(X1, X2, X3),
                   U93(X1, active X2, X3) -> U93(X1, X2, X3),
                     U93(mark X1, X2, X3) -> U93(X1, X2, X3),
                   U93(active X1, X2, X3) -> U93(X1, X2, X3),
                     U94(X1, X2, mark X3) -> U94(X1, X2, X3),
                   U94(X1, X2, active X3) -> U94(X1, X2, X3),
                     U94(X1, mark X2, X3) -> U94(X1, X2, X3),
                   U94(X1, active X2, X3) -> U94(X1, X2, X3),
                     U94(mark X1, X2, X3) -> U94(X1, X2, X3),
                   U94(active X1, X2, X3) -> U94(X1, X2, X3),
                         U95(X1, mark X2) -> U95(X1, X2),
                       U95(X1, active X2) -> U95(X1, X2),
                         U95(mark X1, X2) -> U95(X1, X2),
                       U95(active X1, X2) -> U95(X1, X2),
                               U96 mark X -> U96 X,
                             U96 active X -> U96 X
      }
      Open
     
     
     
     SCC (4):
      Strict:
       {  U51#(X1, mark X2) -> U51#(X1, X2),
        U51#(X1, active X2) -> U51#(X1, X2),
          U51#(mark X1, X2) -> U51#(X1, X2),
        U51#(active X1, X2) -> U51#(X1, X2)}
      Weak:
      {
                        mark cons(X1, X2) -> active cons(mark X1, X2),
                                 mark 0() -> active 0(),
                             mark zeros() -> active zeros(),
                    mark U102(X1, X2, X3) -> active U102(mark X1, X2, X3),
                         mark isNatKind X -> active isNatKind X,
                    mark U101(X1, X2, X3) -> active U101(mark X1, X2, X3),
                                mark tt() -> active tt(),
                    mark U103(X1, X2, X3) -> active U103(mark X1, X2, X3),
                    mark isNatIListKind X -> active isNatIListKind X,
                    mark U104(X1, X2, X3) -> active U104(mark X1, X2, X3),
                        mark U105(X1, X2) -> active U105(mark X1, X2),
                             mark isNat X -> active isNat X,
                              mark U106 X -> active U106 mark X,
                        mark isNatIList X -> active isNatIList X,
                         mark U12(X1, X2) -> active U12(mark X1, X2),
                         mark U11(X1, X2) -> active U11(mark X1, X2),
                    mark U112(X1, X2, X3) -> active U112(mark X1, X2, X3),
                    mark U111(X1, X2, X3) -> active U111(mark X1, X2, X3),
                    mark U113(X1, X2, X3) -> active U113(mark X1, X2, X3),
                        mark U114(X1, X2) -> active U114(mark X1, X2),
                                 mark s X -> active s mark X,
                            mark length X -> active length mark X,
                               mark U13 X -> active U13 mark X,
                         mark isNatList X -> active isNatList X,
                              mark U122 X -> active U122 mark X,
                        mark U121(X1, X2) -> active U121(mark X1, X2),
                               mark nil() -> active nil(),
                mark U132(X1, X2, X3, X4) -> active U132(mark X1, X2, X3, X4),
                mark U131(X1, X2, X3, X4) -> active U131(mark X1, X2, X3, X4),
                mark U133(X1, X2, X3, X4) -> active U133(mark X1, X2, X3, X4),
                mark U134(X1, X2, X3, X4) -> active U134(mark X1, X2, X3, X4),
                mark U135(X1, X2, X3, X4) -> active U135(mark X1, X2, X3, X4),
                mark U136(X1, X2, X3, X4) -> active U136(mark X1, X2, X3, X4),
                        mark take(X1, X2) -> active take(mark X1, mark X2),
                         mark U22(X1, X2) -> active U22(mark X1, X2),
                         mark U21(X1, X2) -> active U21(mark X1, X2),
                               mark U23 X -> active U23 mark X,
                         mark U32(X1, X2) -> active U32(mark X1, X2),
                         mark U31(X1, X2) -> active U31(mark X1, X2),
                               mark U33 X -> active U33 mark X,
                     mark U42(X1, X2, X3) -> active U42(mark X1, X2, X3),
                     mark U41(X1, X2, X3) -> active U41(mark X1, X2, X3),
                     mark U43(X1, X2, X3) -> active U43(mark X1, X2, X3),
                     mark U44(X1, X2, X3) -> active U44(mark X1, X2, X3),
                         mark U45(X1, X2) -> active U45(mark X1, X2),
                               mark U46 X -> active U46 mark X,
                               mark U52 X -> active U52 mark X,
                         mark U51(X1, X2) -> active U51(mark X1, X2),
                               mark U62 X -> active U62 mark X,
                         mark U61(X1, X2) -> active U61(mark X1, X2),
                               mark U71 X -> active U71 mark X,
                               mark U81 X -> active U81 mark X,
                     mark U92(X1, X2, X3) -> active U92(mark X1, X2, X3),
                     mark U91(X1, X2, X3) -> active U91(mark X1, X2, X3),
                     mark U93(X1, X2, X3) -> active U93(mark X1, X2, X3),
                     mark U94(X1, X2, X3) -> active U94(mark X1, X2, X3),
                         mark U95(X1, X2) -> active U95(mark X1, X2),
                               mark U96 X -> active U96 mark X,
                        cons(X1, mark X2) -> cons(X1, X2),
                      cons(X1, active X2) -> cons(X1, X2),
                        cons(mark X1, X2) -> cons(X1, X2),
                      cons(active X1, X2) -> cons(X1, X2),
                           active zeros() -> mark cons(0(), zeros()),
                active U102(tt(), V1, V2) -> mark U103(isNatIListKind V2, V1, V2),
                     active isNatKind 0() -> mark tt(),
                    active isNatKind s V1 -> mark U81 isNatKind V1,
               active isNatKind length V1 -> mark U71 isNatIListKind V1,
                active U101(tt(), V1, V2) -> mark U102(isNatKind V1, V1, V2),
                active U103(tt(), V1, V2) -> mark U104(isNatIListKind V2, V1, V2),
       active isNatIListKind cons(V1, V2) -> mark U51(isNatKind V1, V2),
            active isNatIListKind zeros() -> mark tt(),
              active isNatIListKind nil() -> mark tt(),
       active isNatIListKind take(V1, V2) -> mark U61(isNatKind V1, V2),
                active U104(tt(), V1, V2) -> mark U105(isNat V1, V2),
                    active U105(tt(), V2) -> mark U106 isNatIList V2,
                         active isNat 0() -> mark tt(),
                        active isNat s V1 -> mark U21(isNatKind V1, V1),
                   active isNat length V1 -> mark U11(isNatIListKind V1, V1),
                         active U106 tt() -> mark tt(),
                      active isNatIList V -> mark U31(isNatIListKind V, V),
           active isNatIList cons(V1, V2) -> mark U41(isNatKind V1, V1, V2),
                active isNatIList zeros() -> mark tt(),
                     active U12(tt(), V1) -> mark U13 isNatList V1,
                     active U11(tt(), V1) -> mark U12(isNatIListKind V1, V1),
                  active U112(tt(), L, N) -> mark U113(isNat N, L, N),
                  active U111(tt(), L, N) -> mark U112(isNatIListKind L, L, N),
                  active U113(tt(), L, N) -> mark U114(isNatKind N, L),
                     active U114(tt(), L) -> mark s length L,
                 active length cons(N, L) -> mark U111(isNatList L, L, N),
                      active length nil() -> mark 0(),
                          active U13 tt() -> mark tt(),
            active isNatList cons(V1, V2) -> mark U91(isNatKind V1, V1, V2),
                   active isNatList nil() -> mark tt(),
            active isNatList take(V1, V2) -> mark U101(isNatKind V1, V1, V2),
                         active U122 tt() -> mark nil(),
                    active U121(tt(), IL) -> mark U122 isNatIListKind IL,
              active U132(tt(), IL, M, N) -> mark U133(isNat M, IL, M, N),
              active U131(tt(), IL, M, N) -> mark U132(isNatIListKind IL, IL, M, N),
              active U133(tt(), IL, M, N) -> mark U134(isNatKind M, IL, M, N),
              active U134(tt(), IL, M, N) -> mark U135(isNat N, IL, M, N),
              active U135(tt(), IL, M, N) -> mark U136(isNatKind N, IL, M, N),
              active U136(tt(), IL, M, N) -> mark cons(N, take(M, IL)),
                     active take(0(), IL) -> mark U121(isNatIList IL, IL),
            active take(s M, cons(N, IL)) -> mark U131(isNatIList IL, IL, M, N),
                     active U22(tt(), V1) -> mark U23 isNat V1,
                     active U21(tt(), V1) -> mark U22(isNatKind V1, V1),
                          active U23 tt() -> mark tt(),
                      active U32(tt(), V) -> mark U33 isNatList V,
                      active U31(tt(), V) -> mark U32(isNatIListKind V, V),
                          active U33 tt() -> mark tt(),
                 active U42(tt(), V1, V2) -> mark U43(isNatIListKind V2, V1, V2),
                 active U41(tt(), V1, V2) -> mark U42(isNatKind V1, V1, V2),
                 active U43(tt(), V1, V2) -> mark U44(isNatIListKind V2, V1, V2),
                 active U44(tt(), V1, V2) -> mark U45(isNat V1, V2),
                     active U45(tt(), V2) -> mark U46 isNatIList V2,
                          active U46 tt() -> mark tt(),
                          active U52 tt() -> mark tt(),
                     active U51(tt(), V2) -> mark U52 isNatIListKind V2,
                          active U62 tt() -> mark tt(),
                     active U61(tt(), V2) -> mark U62 isNatIListKind V2,
                          active U71 tt() -> mark tt(),
                          active U81 tt() -> mark tt(),
                 active U92(tt(), V1, V2) -> mark U93(isNatIListKind V2, V1, V2),
                 active U91(tt(), V1, V2) -> mark U92(isNatKind V1, V1, V2),
                 active U93(tt(), V1, V2) -> mark U94(isNatIListKind V2, V1, V2),
                 active U94(tt(), V1, V2) -> mark U95(isNat V1, V2),
                     active U95(tt(), V2) -> mark U96 isNatList V2,
                          active U96 tt() -> mark tt(),
                    U102(X1, X2, mark X3) -> U102(X1, X2, X3),
                  U102(X1, X2, active X3) -> U102(X1, X2, X3),
                    U102(X1, mark X2, X3) -> U102(X1, X2, X3),
                  U102(X1, active X2, X3) -> U102(X1, X2, X3),
                    U102(mark X1, X2, X3) -> U102(X1, X2, X3),
                  U102(active X1, X2, X3) -> U102(X1, X2, X3),
                         isNatKind mark X -> isNatKind X,
                       isNatKind active X -> isNatKind X,
                    U101(X1, X2, mark X3) -> U101(X1, X2, X3),
                  U101(X1, X2, active X3) -> U101(X1, X2, X3),
                    U101(X1, mark X2, X3) -> U101(X1, X2, X3),
                  U101(X1, active X2, X3) -> U101(X1, X2, X3),
                    U101(mark X1, X2, X3) -> U101(X1, X2, X3),
                  U101(active X1, X2, X3) -> U101(X1, X2, X3),
                    U103(X1, X2, mark X3) -> U103(X1, X2, X3),
                  U103(X1, X2, active X3) -> U103(X1, X2, X3),
                    U103(X1, mark X2, X3) -> U103(X1, X2, X3),
                  U103(X1, active X2, X3) -> U103(X1, X2, X3),
                    U103(mark X1, X2, X3) -> U103(X1, X2, X3),
                  U103(active X1, X2, X3) -> U103(X1, X2, X3),
                    isNatIListKind mark X -> isNatIListKind X,
                  isNatIListKind active X -> isNatIListKind X,
                    U104(X1, X2, mark X3) -> U104(X1, X2, X3),
                  U104(X1, X2, active X3) -> U104(X1, X2, X3),
                    U104(X1, mark X2, X3) -> U104(X1, X2, X3),
                  U104(X1, active X2, X3) -> U104(X1, X2, X3),
                    U104(mark X1, X2, X3) -> U104(X1, X2, X3),
                  U104(active X1, X2, X3) -> U104(X1, X2, X3),
                        U105(X1, mark X2) -> U105(X1, X2),
                      U105(X1, active X2) -> U105(X1, X2),
                        U105(mark X1, X2) -> U105(X1, X2),
                      U105(active X1, X2) -> U105(X1, X2),
                             isNat mark X -> isNat X,
                           isNat active X -> isNat X,
                              U106 mark X -> U106 X,
                            U106 active X -> U106 X,
                        isNatIList mark X -> isNatIList X,
                      isNatIList active X -> isNatIList X,
                         U12(X1, mark X2) -> U12(X1, X2),
                       U12(X1, active X2) -> U12(X1, X2),
                         U12(mark X1, X2) -> U12(X1, X2),
                       U12(active X1, X2) -> U12(X1, X2),
                         U11(X1, mark X2) -> U11(X1, X2),
                       U11(X1, active X2) -> U11(X1, X2),
                         U11(mark X1, X2) -> U11(X1, X2),
                       U11(active X1, X2) -> U11(X1, X2),
                    U112(X1, X2, mark X3) -> U112(X1, X2, X3),
                  U112(X1, X2, active X3) -> U112(X1, X2, X3),
                    U112(X1, mark X2, X3) -> U112(X1, X2, X3),
                  U112(X1, active X2, X3) -> U112(X1, X2, X3),
                    U112(mark X1, X2, X3) -> U112(X1, X2, X3),
                  U112(active X1, X2, X3) -> U112(X1, X2, X3),
                    U111(X1, X2, mark X3) -> U111(X1, X2, X3),
                  U111(X1, X2, active X3) -> U111(X1, X2, X3),
                    U111(X1, mark X2, X3) -> U111(X1, X2, X3),
                  U111(X1, active X2, X3) -> U111(X1, X2, X3),
                    U111(mark X1, X2, X3) -> U111(X1, X2, X3),
                  U111(active X1, X2, X3) -> U111(X1, X2, X3),
                    U113(X1, X2, mark X3) -> U113(X1, X2, X3),
                  U113(X1, X2, active X3) -> U113(X1, X2, X3),
                    U113(X1, mark X2, X3) -> U113(X1, X2, X3),
                  U113(X1, active X2, X3) -> U113(X1, X2, X3),
                    U113(mark X1, X2, X3) -> U113(X1, X2, X3),
                  U113(active X1, X2, X3) -> U113(X1, X2, X3),
                        U114(X1, mark X2) -> U114(X1, X2),
                      U114(X1, active X2) -> U114(X1, X2),
                        U114(mark X1, X2) -> U114(X1, X2),
                      U114(active X1, X2) -> U114(X1, X2),
                                 s mark X -> s X,
                               s active X -> s X,
                            length mark X -> length X,
                          length active X -> length X,
                               U13 mark X -> U13 X,
                             U13 active X -> U13 X,
                         isNatList mark X -> isNatList X,
                       isNatList active X -> isNatList X,
                              U122 mark X -> U122 X,
                            U122 active X -> U122 X,
                        U121(X1, mark X2) -> U121(X1, X2),
                      U121(X1, active X2) -> U121(X1, X2),
                        U121(mark X1, X2) -> U121(X1, X2),
                      U121(active X1, X2) -> U121(X1, X2),
                U132(X1, X2, X3, mark X4) -> U132(X1, X2, X3, X4),
              U132(X1, X2, X3, active X4) -> U132(X1, X2, X3, X4),
                U132(X1, X2, mark X3, X4) -> U132(X1, X2, X3, X4),
              U132(X1, X2, active X3, X4) -> U132(X1, X2, X3, X4),
                U132(X1, mark X2, X3, X4) -> U132(X1, X2, X3, X4),
              U132(X1, active X2, X3, X4) -> U132(X1, X2, X3, X4),
                U132(mark X1, X2, X3, X4) -> U132(X1, X2, X3, X4),
              U132(active X1, X2, X3, X4) -> U132(X1, X2, X3, X4),
                U131(X1, X2, X3, mark X4) -> U131(X1, X2, X3, X4),
              U131(X1, X2, X3, active X4) -> U131(X1, X2, X3, X4),
                U131(X1, X2, mark X3, X4) -> U131(X1, X2, X3, X4),
              U131(X1, X2, active X3, X4) -> U131(X1, X2, X3, X4),
                U131(X1, mark X2, X3, X4) -> U131(X1, X2, X3, X4),
              U131(X1, active X2, X3, X4) -> U131(X1, X2, X3, X4),
                U131(mark X1, X2, X3, X4) -> U131(X1, X2, X3, X4),
              U131(active X1, X2, X3, X4) -> U131(X1, X2, X3, X4),
                U133(X1, X2, X3, mark X4) -> U133(X1, X2, X3, X4),
              U133(X1, X2, X3, active X4) -> U133(X1, X2, X3, X4),
                U133(X1, X2, mark X3, X4) -> U133(X1, X2, X3, X4),
              U133(X1, X2, active X3, X4) -> U133(X1, X2, X3, X4),
                U133(X1, mark X2, X3, X4) -> U133(X1, X2, X3, X4),
              U133(X1, active X2, X3, X4) -> U133(X1, X2, X3, X4),
                U133(mark X1, X2, X3, X4) -> U133(X1, X2, X3, X4),
              U133(active X1, X2, X3, X4) -> U133(X1, X2, X3, X4),
                U134(X1, X2, X3, mark X4) -> U134(X1, X2, X3, X4),
              U134(X1, X2, X3, active X4) -> U134(X1, X2, X3, X4),
                U134(X1, X2, mark X3, X4) -> U134(X1, X2, X3, X4),
              U134(X1, X2, active X3, X4) -> U134(X1, X2, X3, X4),
                U134(X1, mark X2, X3, X4) -> U134(X1, X2, X3, X4),
              U134(X1, active X2, X3, X4) -> U134(X1, X2, X3, X4),
                U134(mark X1, X2, X3, X4) -> U134(X1, X2, X3, X4),
              U134(active X1, X2, X3, X4) -> U134(X1, X2, X3, X4),
                U135(X1, X2, X3, mark X4) -> U135(X1, X2, X3, X4),
              U135(X1, X2, X3, active X4) -> U135(X1, X2, X3, X4),
                U135(X1, X2, mark X3, X4) -> U135(X1, X2, X3, X4),
              U135(X1, X2, active X3, X4) -> U135(X1, X2, X3, X4),
                U135(X1, mark X2, X3, X4) -> U135(X1, X2, X3, X4),
              U135(X1, active X2, X3, X4) -> U135(X1, X2, X3, X4),
                U135(mark X1, X2, X3, X4) -> U135(X1, X2, X3, X4),
              U135(active X1, X2, X3, X4) -> U135(X1, X2, X3, X4),
                U136(X1, X2, X3, mark X4) -> U136(X1, X2, X3, X4),
              U136(X1, X2, X3, active X4) -> U136(X1, X2, X3, X4),
                U136(X1, X2, mark X3, X4) -> U136(X1, X2, X3, X4),
              U136(X1, X2, active X3, X4) -> U136(X1, X2, X3, X4),
                U136(X1, mark X2, X3, X4) -> U136(X1, X2, X3, X4),
              U136(X1, active X2, X3, X4) -> U136(X1, X2, X3, X4),
                U136(mark X1, X2, X3, X4) -> U136(X1, X2, X3, X4),
              U136(active X1, X2, X3, X4) -> U136(X1, X2, X3, X4),
                        take(X1, mark X2) -> take(X1, X2),
                      take(X1, active X2) -> take(X1, X2),
                        take(mark X1, X2) -> take(X1, X2),
                      take(active X1, X2) -> take(X1, X2),
                         U22(X1, mark X2) -> U22(X1, X2),
                       U22(X1, active X2) -> U22(X1, X2),
                         U22(mark X1, X2) -> U22(X1, X2),
                       U22(active X1, X2) -> U22(X1, X2),
                         U21(X1, mark X2) -> U21(X1, X2),
                       U21(X1, active X2) -> U21(X1, X2),
                         U21(mark X1, X2) -> U21(X1, X2),
                       U21(active X1, X2) -> U21(X1, X2),
                               U23 mark X -> U23 X,
                             U23 active X -> U23 X,
                         U32(X1, mark X2) -> U32(X1, X2),
                       U32(X1, active X2) -> U32(X1, X2),
                         U32(mark X1, X2) -> U32(X1, X2),
                       U32(active X1, X2) -> U32(X1, X2),
                         U31(X1, mark X2) -> U31(X1, X2),
                       U31(X1, active X2) -> U31(X1, X2),
                         U31(mark X1, X2) -> U31(X1, X2),
                       U31(active X1, X2) -> U31(X1, X2),
                               U33 mark X -> U33 X,
                             U33 active X -> U33 X,
                     U42(X1, X2, mark X3) -> U42(X1, X2, X3),
                   U42(X1, X2, active X3) -> U42(X1, X2, X3),
                     U42(X1, mark X2, X3) -> U42(X1, X2, X3),
                   U42(X1, active X2, X3) -> U42(X1, X2, X3),
                     U42(mark X1, X2, X3) -> U42(X1, X2, X3),
                   U42(active X1, X2, X3) -> U42(X1, X2, X3),
                     U41(X1, X2, mark X3) -> U41(X1, X2, X3),
                   U41(X1, X2, active X3) -> U41(X1, X2, X3),
                     U41(X1, mark X2, X3) -> U41(X1, X2, X3),
                   U41(X1, active X2, X3) -> U41(X1, X2, X3),
                     U41(mark X1, X2, X3) -> U41(X1, X2, X3),
                   U41(active X1, X2, X3) -> U41(X1, X2, X3),
                     U43(X1, X2, mark X3) -> U43(X1, X2, X3),
                   U43(X1, X2, active X3) -> U43(X1, X2, X3),
                     U43(X1, mark X2, X3) -> U43(X1, X2, X3),
                   U43(X1, active X2, X3) -> U43(X1, X2, X3),
                     U43(mark X1, X2, X3) -> U43(X1, X2, X3),
                   U43(active X1, X2, X3) -> U43(X1, X2, X3),
                     U44(X1, X2, mark X3) -> U44(X1, X2, X3),
                   U44(X1, X2, active X3) -> U44(X1, X2, X3),
                     U44(X1, mark X2, X3) -> U44(X1, X2, X3),
                   U44(X1, active X2, X3) -> U44(X1, X2, X3),
                     U44(mark X1, X2, X3) -> U44(X1, X2, X3),
                   U44(active X1, X2, X3) -> U44(X1, X2, X3),
                         U45(X1, mark X2) -> U45(X1, X2),
                       U45(X1, active X2) -> U45(X1, X2),
                         U45(mark X1, X2) -> U45(X1, X2),
                       U45(active X1, X2) -> U45(X1, X2),
                               U46 mark X -> U46 X,
                             U46 active X -> U46 X,
                               U52 mark X -> U52 X,
                             U52 active X -> U52 X,
                         U51(X1, mark X2) -> U51(X1, X2),
                       U51(X1, active X2) -> U51(X1, X2),
                         U51(mark X1, X2) -> U51(X1, X2),
                       U51(active X1, X2) -> U51(X1, X2),
                               U62 mark X -> U62 X,
                             U62 active X -> U62 X,
                         U61(X1, mark X2) -> U61(X1, X2),
                       U61(X1, active X2) -> U61(X1, X2),
                         U61(mark X1, X2) -> U61(X1, X2),
                       U61(active X1, X2) -> U61(X1, X2),
                               U71 mark X -> U71 X,
                             U71 active X -> U71 X,
                               U81 mark X -> U81 X,
                             U81 active X -> U81 X,
                     U92(X1, X2, mark X3) -> U92(X1, X2, X3),
                   U92(X1, X2, active X3) -> U92(X1, X2, X3),
                     U92(X1, mark X2, X3) -> U92(X1, X2, X3),
                   U92(X1, active X2, X3) -> U92(X1, X2, X3),
                     U92(mark X1, X2, X3) -> U92(X1, X2, X3),
                   U92(active X1, X2, X3) -> U92(X1, X2, X3),
                     U91(X1, X2, mark X3) -> U91(X1, X2, X3),
                   U91(X1, X2, active X3) -> U91(X1, X2, X3),
                     U91(X1, mark X2, X3) -> U91(X1, X2, X3),
                   U91(X1, active X2, X3) -> U91(X1, X2, X3),
                     U91(mark X1, X2, X3) -> U91(X1, X2, X3),
                   U91(active X1, X2, X3) -> U91(X1, X2, X3),
                     U93(X1, X2, mark X3) -> U93(X1, X2, X3),
                   U93(X1, X2, active X3) -> U93(X1, X2, X3),
                     U93(X1, mark X2, X3) -> U93(X1, X2, X3),
                   U93(X1, active X2, X3) -> U93(X1, X2, X3),
                     U93(mark X1, X2, X3) -> U93(X1, X2, X3),
                   U93(active X1, X2, X3) -> U93(X1, X2, X3),
                     U94(X1, X2, mark X3) -> U94(X1, X2, X3),
                   U94(X1, X2, active X3) -> U94(X1, X2, X3),
                     U94(X1, mark X2, X3) -> U94(X1, X2, X3),
                   U94(X1, active X2, X3) -> U94(X1, X2, X3),
                     U94(mark X1, X2, X3) -> U94(X1, X2, X3),
                   U94(active X1, X2, X3) -> U94(X1, X2, X3),
                         U95(X1, mark X2) -> U95(X1, X2),
                       U95(X1, active X2) -> U95(X1, X2),
                         U95(mark X1, X2) -> U95(X1, X2),
                       U95(active X1, X2) -> U95(X1, X2),
                               U96 mark X -> U96 X,
                             U96 active X -> U96 X
      }
      Open
     
     
     
     SCC (2):
      Strict:
       {  U52# mark X -> U52# X,
        U52# active X -> U52# X}
      Weak:
      {
                        mark cons(X1, X2) -> active cons(mark X1, X2),
                                 mark 0() -> active 0(),
                             mark zeros() -> active zeros(),
                    mark U102(X1, X2, X3) -> active U102(mark X1, X2, X3),
                         mark isNatKind X -> active isNatKind X,
                    mark U101(X1, X2, X3) -> active U101(mark X1, X2, X3),
                                mark tt() -> active tt(),
                    mark U103(X1, X2, X3) -> active U103(mark X1, X2, X3),
                    mark isNatIListKind X -> active isNatIListKind X,
                    mark U104(X1, X2, X3) -> active U104(mark X1, X2, X3),
                        mark U105(X1, X2) -> active U105(mark X1, X2),
                             mark isNat X -> active isNat X,
                              mark U106 X -> active U106 mark X,
                        mark isNatIList X -> active isNatIList X,
                         mark U12(X1, X2) -> active U12(mark X1, X2),
                         mark U11(X1, X2) -> active U11(mark X1, X2),
                    mark U112(X1, X2, X3) -> active U112(mark X1, X2, X3),
                    mark U111(X1, X2, X3) -> active U111(mark X1, X2, X3),
                    mark U113(X1, X2, X3) -> active U113(mark X1, X2, X3),
                        mark U114(X1, X2) -> active U114(mark X1, X2),
                                 mark s X -> active s mark X,
                            mark length X -> active length mark X,
                               mark U13 X -> active U13 mark X,
                         mark isNatList X -> active isNatList X,
                              mark U122 X -> active U122 mark X,
                        mark U121(X1, X2) -> active U121(mark X1, X2),
                               mark nil() -> active nil(),
                mark U132(X1, X2, X3, X4) -> active U132(mark X1, X2, X3, X4),
                mark U131(X1, X2, X3, X4) -> active U131(mark X1, X2, X3, X4),
                mark U133(X1, X2, X3, X4) -> active U133(mark X1, X2, X3, X4),
                mark U134(X1, X2, X3, X4) -> active U134(mark X1, X2, X3, X4),
                mark U135(X1, X2, X3, X4) -> active U135(mark X1, X2, X3, X4),
                mark U136(X1, X2, X3, X4) -> active U136(mark X1, X2, X3, X4),
                        mark take(X1, X2) -> active take(mark X1, mark X2),
                         mark U22(X1, X2) -> active U22(mark X1, X2),
                         mark U21(X1, X2) -> active U21(mark X1, X2),
                               mark U23 X -> active U23 mark X,
                         mark U32(X1, X2) -> active U32(mark X1, X2),
                         mark U31(X1, X2) -> active U31(mark X1, X2),
                               mark U33 X -> active U33 mark X,
                     mark U42(X1, X2, X3) -> active U42(mark X1, X2, X3),
                     mark U41(X1, X2, X3) -> active U41(mark X1, X2, X3),
                     mark U43(X1, X2, X3) -> active U43(mark X1, X2, X3),
                     mark U44(X1, X2, X3) -> active U44(mark X1, X2, X3),
                         mark U45(X1, X2) -> active U45(mark X1, X2),
                               mark U46 X -> active U46 mark X,
                               mark U52 X -> active U52 mark X,
                         mark U51(X1, X2) -> active U51(mark X1, X2),
                               mark U62 X -> active U62 mark X,
                         mark U61(X1, X2) -> active U61(mark X1, X2),
                               mark U71 X -> active U71 mark X,
                               mark U81 X -> active U81 mark X,
                     mark U92(X1, X2, X3) -> active U92(mark X1, X2, X3),
                     mark U91(X1, X2, X3) -> active U91(mark X1, X2, X3),
                     mark U93(X1, X2, X3) -> active U93(mark X1, X2, X3),
                     mark U94(X1, X2, X3) -> active U94(mark X1, X2, X3),
                         mark U95(X1, X2) -> active U95(mark X1, X2),
                               mark U96 X -> active U96 mark X,
                        cons(X1, mark X2) -> cons(X1, X2),
                      cons(X1, active X2) -> cons(X1, X2),
                        cons(mark X1, X2) -> cons(X1, X2),
                      cons(active X1, X2) -> cons(X1, X2),
                           active zeros() -> mark cons(0(), zeros()),
                active U102(tt(), V1, V2) -> mark U103(isNatIListKind V2, V1, V2),
                     active isNatKind 0() -> mark tt(),
                    active isNatKind s V1 -> mark U81 isNatKind V1,
               active isNatKind length V1 -> mark U71 isNatIListKind V1,
                active U101(tt(), V1, V2) -> mark U102(isNatKind V1, V1, V2),
                active U103(tt(), V1, V2) -> mark U104(isNatIListKind V2, V1, V2),
       active isNatIListKind cons(V1, V2) -> mark U51(isNatKind V1, V2),
            active isNatIListKind zeros() -> mark tt(),
              active isNatIListKind nil() -> mark tt(),
       active isNatIListKind take(V1, V2) -> mark U61(isNatKind V1, V2),
                active U104(tt(), V1, V2) -> mark U105(isNat V1, V2),
                    active U105(tt(), V2) -> mark U106 isNatIList V2,
                         active isNat 0() -> mark tt(),
                        active isNat s V1 -> mark U21(isNatKind V1, V1),
                   active isNat length V1 -> mark U11(isNatIListKind V1, V1),
                         active U106 tt() -> mark tt(),
                      active isNatIList V -> mark U31(isNatIListKind V, V),
           active isNatIList cons(V1, V2) -> mark U41(isNatKind V1, V1, V2),
                active isNatIList zeros() -> mark tt(),
                     active U12(tt(), V1) -> mark U13 isNatList V1,
                     active U11(tt(), V1) -> mark U12(isNatIListKind V1, V1),
                  active U112(tt(), L, N) -> mark U113(isNat N, L, N),
                  active U111(tt(), L, N) -> mark U112(isNatIListKind L, L, N),
                  active U113(tt(), L, N) -> mark U114(isNatKind N, L),
                     active U114(tt(), L) -> mark s length L,
                 active length cons(N, L) -> mark U111(isNatList L, L, N),
                      active length nil() -> mark 0(),
                          active U13 tt() -> mark tt(),
            active isNatList cons(V1, V2) -> mark U91(isNatKind V1, V1, V2),
                   active isNatList nil() -> mark tt(),
            active isNatList take(V1, V2) -> mark U101(isNatKind V1, V1, V2),
                         active U122 tt() -> mark nil(),
                    active U121(tt(), IL) -> mark U122 isNatIListKind IL,
              active U132(tt(), IL, M, N) -> mark U133(isNat M, IL, M, N),
              active U131(tt(), IL, M, N) -> mark U132(isNatIListKind IL, IL, M, N),
              active U133(tt(), IL, M, N) -> mark U134(isNatKind M, IL, M, N),
              active U134(tt(), IL, M, N) -> mark U135(isNat N, IL, M, N),
              active U135(tt(), IL, M, N) -> mark U136(isNatKind N, IL, M, N),
              active U136(tt(), IL, M, N) -> mark cons(N, take(M, IL)),
                     active take(0(), IL) -> mark U121(isNatIList IL, IL),
            active take(s M, cons(N, IL)) -> mark U131(isNatIList IL, IL, M, N),
                     active U22(tt(), V1) -> mark U23 isNat V1,
                     active U21(tt(), V1) -> mark U22(isNatKind V1, V1),
                          active U23 tt() -> mark tt(),
                      active U32(tt(), V) -> mark U33 isNatList V,
                      active U31(tt(), V) -> mark U32(isNatIListKind V, V),
                          active U33 tt() -> mark tt(),
                 active U42(tt(), V1, V2) -> mark U43(isNatIListKind V2, V1, V2),
                 active U41(tt(), V1, V2) -> mark U42(isNatKind V1, V1, V2),
                 active U43(tt(), V1, V2) -> mark U44(isNatIListKind V2, V1, V2),
                 active U44(tt(), V1, V2) -> mark U45(isNat V1, V2),
                     active U45(tt(), V2) -> mark U46 isNatIList V2,
                          active U46 tt() -> mark tt(),
                          active U52 tt() -> mark tt(),
                     active U51(tt(), V2) -> mark U52 isNatIListKind V2,
                          active U62 tt() -> mark tt(),
                     active U61(tt(), V2) -> mark U62 isNatIListKind V2,
                          active U71 tt() -> mark tt(),
                          active U81 tt() -> mark tt(),
                 active U92(tt(), V1, V2) -> mark U93(isNatIListKind V2, V1, V2),
                 active U91(tt(), V1, V2) -> mark U92(isNatKind V1, V1, V2),
                 active U93(tt(), V1, V2) -> mark U94(isNatIListKind V2, V1, V2),
                 active U94(tt(), V1, V2) -> mark U95(isNat V1, V2),
                     active U95(tt(), V2) -> mark U96 isNatList V2,
                          active U96 tt() -> mark tt(),
                    U102(X1, X2, mark X3) -> U102(X1, X2, X3),
                  U102(X1, X2, active X3) -> U102(X1, X2, X3),
                    U102(X1, mark X2, X3) -> U102(X1, X2, X3),
                  U102(X1, active X2, X3) -> U102(X1, X2, X3),
                    U102(mark X1, X2, X3) -> U102(X1, X2, X3),
                  U102(active X1, X2, X3) -> U102(X1, X2, X3),
                         isNatKind mark X -> isNatKind X,
                       isNatKind active X -> isNatKind X,
                    U101(X1, X2, mark X3) -> U101(X1, X2, X3),
                  U101(X1, X2, active X3) -> U101(X1, X2, X3),
                    U101(X1, mark X2, X3) -> U101(X1, X2, X3),
                  U101(X1, active X2, X3) -> U101(X1, X2, X3),
                    U101(mark X1, X2, X3) -> U101(X1, X2, X3),
                  U101(active X1, X2, X3) -> U101(X1, X2, X3),
                    U103(X1, X2, mark X3) -> U103(X1, X2, X3),
                  U103(X1, X2, active X3) -> U103(X1, X2, X3),
                    U103(X1, mark X2, X3) -> U103(X1, X2, X3),
                  U103(X1, active X2, X3) -> U103(X1, X2, X3),
                    U103(mark X1, X2, X3) -> U103(X1, X2, X3),
                  U103(active X1, X2, X3) -> U103(X1, X2, X3),
                    isNatIListKind mark X -> isNatIListKind X,
                  isNatIListKind active X -> isNatIListKind X,
                    U104(X1, X2, mark X3) -> U104(X1, X2, X3),
                  U104(X1, X2, active X3) -> U104(X1, X2, X3),
                    U104(X1, mark X2, X3) -> U104(X1, X2, X3),
                  U104(X1, active X2, X3) -> U104(X1, X2, X3),
                    U104(mark X1, X2, X3) -> U104(X1, X2, X3),
                  U104(active X1, X2, X3) -> U104(X1, X2, X3),
                        U105(X1, mark X2) -> U105(X1, X2),
                      U105(X1, active X2) -> U105(X1, X2),
                        U105(mark X1, X2) -> U105(X1, X2),
                      U105(active X1, X2) -> U105(X1, X2),
                             isNat mark X -> isNat X,
                           isNat active X -> isNat X,
                              U106 mark X -> U106 X,
                            U106 active X -> U106 X,
                        isNatIList mark X -> isNatIList X,
                      isNatIList active X -> isNatIList X,
                         U12(X1, mark X2) -> U12(X1, X2),
                       U12(X1, active X2) -> U12(X1, X2),
                         U12(mark X1, X2) -> U12(X1, X2),
                       U12(active X1, X2) -> U12(X1, X2),
                         U11(X1, mark X2) -> U11(X1, X2),
                       U11(X1, active X2) -> U11(X1, X2),
                         U11(mark X1, X2) -> U11(X1, X2),
                       U11(active X1, X2) -> U11(X1, X2),
                    U112(X1, X2, mark X3) -> U112(X1, X2, X3),
                  U112(X1, X2, active X3) -> U112(X1, X2, X3),
                    U112(X1, mark X2, X3) -> U112(X1, X2, X3),
                  U112(X1, active X2, X3) -> U112(X1, X2, X3),
                    U112(mark X1, X2, X3) -> U112(X1, X2, X3),
                  U112(active X1, X2, X3) -> U112(X1, X2, X3),
                    U111(X1, X2, mark X3) -> U111(X1, X2, X3),
                  U111(X1, X2, active X3) -> U111(X1, X2, X3),
                    U111(X1, mark X2, X3) -> U111(X1, X2, X3),
                  U111(X1, active X2, X3) -> U111(X1, X2, X3),
                    U111(mark X1, X2, X3) -> U111(X1, X2, X3),
                  U111(active X1, X2, X3) -> U111(X1, X2, X3),
                    U113(X1, X2, mark X3) -> U113(X1, X2, X3),
                  U113(X1, X2, active X3) -> U113(X1, X2, X3),
                    U113(X1, mark X2, X3) -> U113(X1, X2, X3),
                  U113(X1, active X2, X3) -> U113(X1, X2, X3),
                    U113(mark X1, X2, X3) -> U113(X1, X2, X3),
                  U113(active X1, X2, X3) -> U113(X1, X2, X3),
                        U114(X1, mark X2) -> U114(X1, X2),
                      U114(X1, active X2) -> U114(X1, X2),
                        U114(mark X1, X2) -> U114(X1, X2),
                      U114(active X1, X2) -> U114(X1, X2),
                                 s mark X -> s X,
                               s active X -> s X,
                            length mark X -> length X,
                          length active X -> length X,
                               U13 mark X -> U13 X,
                             U13 active X -> U13 X,
                         isNatList mark X -> isNatList X,
                       isNatList active X -> isNatList X,
                              U122 mark X -> U122 X,
                            U122 active X -> U122 X,
                        U121(X1, mark X2) -> U121(X1, X2),
                      U121(X1, active X2) -> U121(X1, X2),
                        U121(mark X1, X2) -> U121(X1, X2),
                      U121(active X1, X2) -> U121(X1, X2),
                U132(X1, X2, X3, mark X4) -> U132(X1, X2, X3, X4),
              U132(X1, X2, X3, active X4) -> U132(X1, X2, X3, X4),
                U132(X1, X2, mark X3, X4) -> U132(X1, X2, X3, X4),
              U132(X1, X2, active X3, X4) -> U132(X1, X2, X3, X4),
                U132(X1, mark X2, X3, X4) -> U132(X1, X2, X3, X4),
              U132(X1, active X2, X3, X4) -> U132(X1, X2, X3, X4),
                U132(mark X1, X2, X3, X4) -> U132(X1, X2, X3, X4),
              U132(active X1, X2, X3, X4) -> U132(X1, X2, X3, X4),
                U131(X1, X2, X3, mark X4) -> U131(X1, X2, X3, X4),
              U131(X1, X2, X3, active X4) -> U131(X1, X2, X3, X4),
                U131(X1, X2, mark X3, X4) -> U131(X1, X2, X3, X4),
              U131(X1, X2, active X3, X4) -> U131(X1, X2, X3, X4),
                U131(X1, mark X2, X3, X4) -> U131(X1, X2, X3, X4),
              U131(X1, active X2, X3, X4) -> U131(X1, X2, X3, X4),
                U131(mark X1, X2, X3, X4) -> U131(X1, X2, X3, X4),
              U131(active X1, X2, X3, X4) -> U131(X1, X2, X3, X4),
                U133(X1, X2, X3, mark X4) -> U133(X1, X2, X3, X4),
              U133(X1, X2, X3, active X4) -> U133(X1, X2, X3, X4),
                U133(X1, X2, mark X3, X4) -> U133(X1, X2, X3, X4),
              U133(X1, X2, active X3, X4) -> U133(X1, X2, X3, X4),
                U133(X1, mark X2, X3, X4) -> U133(X1, X2, X3, X4),
              U133(X1, active X2, X3, X4) -> U133(X1, X2, X3, X4),
                U133(mark X1, X2, X3, X4) -> U133(X1, X2, X3, X4),
              U133(active X1, X2, X3, X4) -> U133(X1, X2, X3, X4),
                U134(X1, X2, X3, mark X4) -> U134(X1, X2, X3, X4),
              U134(X1, X2, X3, active X4) -> U134(X1, X2, X3, X4),
                U134(X1, X2, mark X3, X4) -> U134(X1, X2, X3, X4),
              U134(X1, X2, active X3, X4) -> U134(X1, X2, X3, X4),
                U134(X1, mark X2, X3, X4) -> U134(X1, X2, X3, X4),
              U134(X1, active X2, X3, X4) -> U134(X1, X2, X3, X4),
                U134(mark X1, X2, X3, X4) -> U134(X1, X2, X3, X4),
              U134(active X1, X2, X3, X4) -> U134(X1, X2, X3, X4),
                U135(X1, X2, X3, mark X4) -> U135(X1, X2, X3, X4),
              U135(X1, X2, X3, active X4) -> U135(X1, X2, X3, X4),
                U135(X1, X2, mark X3, X4) -> U135(X1, X2, X3, X4),
              U135(X1, X2, active X3, X4) -> U135(X1, X2, X3, X4),
                U135(X1, mark X2, X3, X4) -> U135(X1, X2, X3, X4),
              U135(X1, active X2, X3, X4) -> U135(X1, X2, X3, X4),
                U135(mark X1, X2, X3, X4) -> U135(X1, X2, X3, X4),
              U135(active X1, X2, X3, X4) -> U135(X1, X2, X3, X4),
                U136(X1, X2, X3, mark X4) -> U136(X1, X2, X3, X4),
              U136(X1, X2, X3, active X4) -> U136(X1, X2, X3, X4),
                U136(X1, X2, mark X3, X4) -> U136(X1, X2, X3, X4),
              U136(X1, X2, active X3, X4) -> U136(X1, X2, X3, X4),
                U136(X1, mark X2, X3, X4) -> U136(X1, X2, X3, X4),
              U136(X1, active X2, X3, X4) -> U136(X1, X2, X3, X4),
                U136(mark X1, X2, X3, X4) -> U136(X1, X2, X3, X4),
              U136(active X1, X2, X3, X4) -> U136(X1, X2, X3, X4),
                        take(X1, mark X2) -> take(X1, X2),
                      take(X1, active X2) -> take(X1, X2),
                        take(mark X1, X2) -> take(X1, X2),
                      take(active X1, X2) -> take(X1, X2),
                         U22(X1, mark X2) -> U22(X1, X2),
                       U22(X1, active X2) -> U22(X1, X2),
                         U22(mark X1, X2) -> U22(X1, X2),
                       U22(active X1, X2) -> U22(X1, X2),
                         U21(X1, mark X2) -> U21(X1, X2),
                       U21(X1, active X2) -> U21(X1, X2),
                         U21(mark X1, X2) -> U21(X1, X2),
                       U21(active X1, X2) -> U21(X1, X2),
                               U23 mark X -> U23 X,
                             U23 active X -> U23 X,
                         U32(X1, mark X2) -> U32(X1, X2),
                       U32(X1, active X2) -> U32(X1, X2),
                         U32(mark X1, X2) -> U32(X1, X2),
                       U32(active X1, X2) -> U32(X1, X2),
                         U31(X1, mark X2) -> U31(X1, X2),
                       U31(X1, active X2) -> U31(X1, X2),
                         U31(mark X1, X2) -> U31(X1, X2),
                       U31(active X1, X2) -> U31(X1, X2),
                               U33 mark X -> U33 X,
                             U33 active X -> U33 X,
                     U42(X1, X2, mark X3) -> U42(X1, X2, X3),
                   U42(X1, X2, active X3) -> U42(X1, X2, X3),
                     U42(X1, mark X2, X3) -> U42(X1, X2, X3),
                   U42(X1, active X2, X3) -> U42(X1, X2, X3),
                     U42(mark X1, X2, X3) -> U42(X1, X2, X3),
                   U42(active X1, X2, X3) -> U42(X1, X2, X3),
                     U41(X1, X2, mark X3) -> U41(X1, X2, X3),
                   U41(X1, X2, active X3) -> U41(X1, X2, X3),
                     U41(X1, mark X2, X3) -> U41(X1, X2, X3),
                   U41(X1, active X2, X3) -> U41(X1, X2, X3),
                     U41(mark X1, X2, X3) -> U41(X1, X2, X3),
                   U41(active X1, X2, X3) -> U41(X1, X2, X3),
                     U43(X1, X2, mark X3) -> U43(X1, X2, X3),
                   U43(X1, X2, active X3) -> U43(X1, X2, X3),
                     U43(X1, mark X2, X3) -> U43(X1, X2, X3),
                   U43(X1, active X2, X3) -> U43(X1, X2, X3),
                     U43(mark X1, X2, X3) -> U43(X1, X2, X3),
                   U43(active X1, X2, X3) -> U43(X1, X2, X3),
                     U44(X1, X2, mark X3) -> U44(X1, X2, X3),
                   U44(X1, X2, active X3) -> U44(X1, X2, X3),
                     U44(X1, mark X2, X3) -> U44(X1, X2, X3),
                   U44(X1, active X2, X3) -> U44(X1, X2, X3),
                     U44(mark X1, X2, X3) -> U44(X1, X2, X3),
                   U44(active X1, X2, X3) -> U44(X1, X2, X3),
                         U45(X1, mark X2) -> U45(X1, X2),
                       U45(X1, active X2) -> U45(X1, X2),
                         U45(mark X1, X2) -> U45(X1, X2),
                       U45(active X1, X2) -> U45(X1, X2),
                               U46 mark X -> U46 X,
                             U46 active X -> U46 X,
                               U52 mark X -> U52 X,
                             U52 active X -> U52 X,
                         U51(X1, mark X2) -> U51(X1, X2),
                       U51(X1, active X2) -> U51(X1, X2),
                         U51(mark X1, X2) -> U51(X1, X2),
                       U51(active X1, X2) -> U51(X1, X2),
                               U62 mark X -> U62 X,
                             U62 active X -> U62 X,
                         U61(X1, mark X2) -> U61(X1, X2),
                       U61(X1, active X2) -> U61(X1, X2),
                         U61(mark X1, X2) -> U61(X1, X2),
                       U61(active X1, X2) -> U61(X1, X2),
                               U71 mark X -> U71 X,
                             U71 active X -> U71 X,
                               U81 mark X -> U81 X,
                             U81 active X -> U81 X,
                     U92(X1, X2, mark X3) -> U92(X1, X2, X3),
                   U92(X1, X2, active X3) -> U92(X1, X2, X3),
                     U92(X1, mark X2, X3) -> U92(X1, X2, X3),
                   U92(X1, active X2, X3) -> U92(X1, X2, X3),
                     U92(mark X1, X2, X3) -> U92(X1, X2, X3),
                   U92(active X1, X2, X3) -> U92(X1, X2, X3),
                     U91(X1, X2, mark X3) -> U91(X1, X2, X3),
                   U91(X1, X2, active X3) -> U91(X1, X2, X3),
                     U91(X1, mark X2, X3) -> U91(X1, X2, X3),
                   U91(X1, active X2, X3) -> U91(X1, X2, X3),
                     U91(mark X1, X2, X3) -> U91(X1, X2, X3),
                   U91(active X1, X2, X3) -> U91(X1, X2, X3),
                     U93(X1, X2, mark X3) -> U93(X1, X2, X3),
                   U93(X1, X2, active X3) -> U93(X1, X2, X3),
                     U93(X1, mark X2, X3) -> U93(X1, X2, X3),
                   U93(X1, active X2, X3) -> U93(X1, X2, X3),
                     U93(mark X1, X2, X3) -> U93(X1, X2, X3),
                   U93(active X1, X2, X3) -> U93(X1, X2, X3),
                     U94(X1, X2, mark X3) -> U94(X1, X2, X3),
                   U94(X1, X2, active X3) -> U94(X1, X2, X3),
                     U94(X1, mark X2, X3) -> U94(X1, X2, X3),
                   U94(X1, active X2, X3) -> U94(X1, X2, X3),
                     U94(mark X1, X2, X3) -> U94(X1, X2, X3),
                   U94(active X1, X2, X3) -> U94(X1, X2, X3),
                         U95(X1, mark X2) -> U95(X1, X2),
                       U95(X1, active X2) -> U95(X1, X2),
                         U95(mark X1, X2) -> U95(X1, X2),
                       U95(active X1, X2) -> U95(X1, X2),
                               U96 mark X -> U96 X,
                             U96 active X -> U96 X
      }
      Open
     
     
     
     SCC (2):
      Strict:
       {  U46# mark X -> U46# X,
        U46# active X -> U46# X}
      Weak:
      {
                        mark cons(X1, X2) -> active cons(mark X1, X2),
                                 mark 0() -> active 0(),
                             mark zeros() -> active zeros(),
                    mark U102(X1, X2, X3) -> active U102(mark X1, X2, X3),
                         mark isNatKind X -> active isNatKind X,
                    mark U101(X1, X2, X3) -> active U101(mark X1, X2, X3),
                                mark tt() -> active tt(),
                    mark U103(X1, X2, X3) -> active U103(mark X1, X2, X3),
                    mark isNatIListKind X -> active isNatIListKind X,
                    mark U104(X1, X2, X3) -> active U104(mark X1, X2, X3),
                        mark U105(X1, X2) -> active U105(mark X1, X2),
                             mark isNat X -> active isNat X,
                              mark U106 X -> active U106 mark X,
                        mark isNatIList X -> active isNatIList X,
                         mark U12(X1, X2) -> active U12(mark X1, X2),
                         mark U11(X1, X2) -> active U11(mark X1, X2),
                    mark U112(X1, X2, X3) -> active U112(mark X1, X2, X3),
                    mark U111(X1, X2, X3) -> active U111(mark X1, X2, X3),
                    mark U113(X1, X2, X3) -> active U113(mark X1, X2, X3),
                        mark U114(X1, X2) -> active U114(mark X1, X2),
                                 mark s X -> active s mark X,
                            mark length X -> active length mark X,
                               mark U13 X -> active U13 mark X,
                         mark isNatList X -> active isNatList X,
                              mark U122 X -> active U122 mark X,
                        mark U121(X1, X2) -> active U121(mark X1, X2),
                               mark nil() -> active nil(),
                mark U132(X1, X2, X3, X4) -> active U132(mark X1, X2, X3, X4),
                mark U131(X1, X2, X3, X4) -> active U131(mark X1, X2, X3, X4),
                mark U133(X1, X2, X3, X4) -> active U133(mark X1, X2, X3, X4),
                mark U134(X1, X2, X3, X4) -> active U134(mark X1, X2, X3, X4),
                mark U135(X1, X2, X3, X4) -> active U135(mark X1, X2, X3, X4),
                mark U136(X1, X2, X3, X4) -> active U136(mark X1, X2, X3, X4),
                        mark take(X1, X2) -> active take(mark X1, mark X2),
                         mark U22(X1, X2) -> active U22(mark X1, X2),
                         mark U21(X1, X2) -> active U21(mark X1, X2),
                               mark U23 X -> active U23 mark X,
                         mark U32(X1, X2) -> active U32(mark X1, X2),
                         mark U31(X1, X2) -> active U31(mark X1, X2),
                               mark U33 X -> active U33 mark X,
                     mark U42(X1, X2, X3) -> active U42(mark X1, X2, X3),
                     mark U41(X1, X2, X3) -> active U41(mark X1, X2, X3),
                     mark U43(X1, X2, X3) -> active U43(mark X1, X2, X3),
                     mark U44(X1, X2, X3) -> active U44(mark X1, X2, X3),
                         mark U45(X1, X2) -> active U45(mark X1, X2),
                               mark U46 X -> active U46 mark X,
                               mark U52 X -> active U52 mark X,
                         mark U51(X1, X2) -> active U51(mark X1, X2),
                               mark U62 X -> active U62 mark X,
                         mark U61(X1, X2) -> active U61(mark X1, X2),
                               mark U71 X -> active U71 mark X,
                               mark U81 X -> active U81 mark X,
                     mark U92(X1, X2, X3) -> active U92(mark X1, X2, X3),
                     mark U91(X1, X2, X3) -> active U91(mark X1, X2, X3),
                     mark U93(X1, X2, X3) -> active U93(mark X1, X2, X3),
                     mark U94(X1, X2, X3) -> active U94(mark X1, X2, X3),
                         mark U95(X1, X2) -> active U95(mark X1, X2),
                               mark U96 X -> active U96 mark X,
                        cons(X1, mark X2) -> cons(X1, X2),
                      cons(X1, active X2) -> cons(X1, X2),
                        cons(mark X1, X2) -> cons(X1, X2),
                      cons(active X1, X2) -> cons(X1, X2),
                           active zeros() -> mark cons(0(), zeros()),
                active U102(tt(), V1, V2) -> mark U103(isNatIListKind V2, V1, V2),
                     active isNatKind 0() -> mark tt(),
                    active isNatKind s V1 -> mark U81 isNatKind V1,
               active isNatKind length V1 -> mark U71 isNatIListKind V1,
                active U101(tt(), V1, V2) -> mark U102(isNatKind V1, V1, V2),
                active U103(tt(), V1, V2) -> mark U104(isNatIListKind V2, V1, V2),
       active isNatIListKind cons(V1, V2) -> mark U51(isNatKind V1, V2),
            active isNatIListKind zeros() -> mark tt(),
              active isNatIListKind nil() -> mark tt(),
       active isNatIListKind take(V1, V2) -> mark U61(isNatKind V1, V2),
                active U104(tt(), V1, V2) -> mark U105(isNat V1, V2),
                    active U105(tt(), V2) -> mark U106 isNatIList V2,
                         active isNat 0() -> mark tt(),
                        active isNat s V1 -> mark U21(isNatKind V1, V1),
                   active isNat length V1 -> mark U11(isNatIListKind V1, V1),
                         active U106 tt() -> mark tt(),
                      active isNatIList V -> mark U31(isNatIListKind V, V),
           active isNatIList cons(V1, V2) -> mark U41(isNatKind V1, V1, V2),
                active isNatIList zeros() -> mark tt(),
                     active U12(tt(), V1) -> mark U13 isNatList V1,
                     active U11(tt(), V1) -> mark U12(isNatIListKind V1, V1),
                  active U112(tt(), L, N) -> mark U113(isNat N, L, N),
                  active U111(tt(), L, N) -> mark U112(isNatIListKind L, L, N),
                  active U113(tt(), L, N) -> mark U114(isNatKind N, L),
                     active U114(tt(), L) -> mark s length L,
                 active length cons(N, L) -> mark U111(isNatList L, L, N),
                      active length nil() -> mark 0(),
                          active U13 tt() -> mark tt(),
            active isNatList cons(V1, V2) -> mark U91(isNatKind V1, V1, V2),
                   active isNatList nil() -> mark tt(),
            active isNatList take(V1, V2) -> mark U101(isNatKind V1, V1, V2),
                         active U122 tt() -> mark nil(),
                    active U121(tt(), IL) -> mark U122 isNatIListKind IL,
              active U132(tt(), IL, M, N) -> mark U133(isNat M, IL, M, N),
              active U131(tt(), IL, M, N) -> mark U132(isNatIListKind IL, IL, M, N),
              active U133(tt(), IL, M, N) -> mark U134(isNatKind M, IL, M, N),
              active U134(tt(), IL, M, N) -> mark U135(isNat N, IL, M, N),
              active U135(tt(), IL, M, N) -> mark U136(isNatKind N, IL, M, N),
              active U136(tt(), IL, M, N) -> mark cons(N, take(M, IL)),
                     active take(0(), IL) -> mark U121(isNatIList IL, IL),
            active take(s M, cons(N, IL)) -> mark U131(isNatIList IL, IL, M, N),
                     active U22(tt(), V1) -> mark U23 isNat V1,
                     active U21(tt(), V1) -> mark U22(isNatKind V1, V1),
                          active U23 tt() -> mark tt(),
                      active U32(tt(), V) -> mark U33 isNatList V,
                      active U31(tt(), V) -> mark U32(isNatIListKind V, V),
                          active U33 tt() -> mark tt(),
                 active U42(tt(), V1, V2) -> mark U43(isNatIListKind V2, V1, V2),
                 active U41(tt(), V1, V2) -> mark U42(isNatKind V1, V1, V2),
                 active U43(tt(), V1, V2) -> mark U44(isNatIListKind V2, V1, V2),
                 active U44(tt(), V1, V2) -> mark U45(isNat V1, V2),
                     active U45(tt(), V2) -> mark U46 isNatIList V2,
                          active U46 tt() -> mark tt(),
                          active U52 tt() -> mark tt(),
                     active U51(tt(), V2) -> mark U52 isNatIListKind V2,
                          active U62 tt() -> mark tt(),
                     active U61(tt(), V2) -> mark U62 isNatIListKind V2,
                          active U71 tt() -> mark tt(),
                          active U81 tt() -> mark tt(),
                 active U92(tt(), V1, V2) -> mark U93(isNatIListKind V2, V1, V2),
                 active U91(tt(), V1, V2) -> mark U92(isNatKind V1, V1, V2),
                 active U93(tt(), V1, V2) -> mark U94(isNatIListKind V2, V1, V2),
                 active U94(tt(), V1, V2) -> mark U95(isNat V1, V2),
                     active U95(tt(), V2) -> mark U96 isNatList V2,
                          active U96 tt() -> mark tt(),
                    U102(X1, X2, mark X3) -> U102(X1, X2, X3),
                  U102(X1, X2, active X3) -> U102(X1, X2, X3),
                    U102(X1, mark X2, X3) -> U102(X1, X2, X3),
                  U102(X1, active X2, X3) -> U102(X1, X2, X3),
                    U102(mark X1, X2, X3) -> U102(X1, X2, X3),
                  U102(active X1, X2, X3) -> U102(X1, X2, X3),
                         isNatKind mark X -> isNatKind X,
                       isNatKind active X -> isNatKind X,
                    U101(X1, X2, mark X3) -> U101(X1, X2, X3),
                  U101(X1, X2, active X3) -> U101(X1, X2, X3),
                    U101(X1, mark X2, X3) -> U101(X1, X2, X3),
                  U101(X1, active X2, X3) -> U101(X1, X2, X3),
                    U101(mark X1, X2, X3) -> U101(X1, X2, X3),
                  U101(active X1, X2, X3) -> U101(X1, X2, X3),
                    U103(X1, X2, mark X3) -> U103(X1, X2, X3),
                  U103(X1, X2, active X3) -> U103(X1, X2, X3),
                    U103(X1, mark X2, X3) -> U103(X1, X2, X3),
                  U103(X1, active X2, X3) -> U103(X1, X2, X3),
                    U103(mark X1, X2, X3) -> U103(X1, X2, X3),
                  U103(active X1, X2, X3) -> U103(X1, X2, X3),
                    isNatIListKind mark X -> isNatIListKind X,
                  isNatIListKind active X -> isNatIListKind X,
                    U104(X1, X2, mark X3) -> U104(X1, X2, X3),
                  U104(X1, X2, active X3) -> U104(X1, X2, X3),
                    U104(X1, mark X2, X3) -> U104(X1, X2, X3),
                  U104(X1, active X2, X3) -> U104(X1, X2, X3),
                    U104(mark X1, X2, X3) -> U104(X1, X2, X3),
                  U104(active X1, X2, X3) -> U104(X1, X2, X3),
                        U105(X1, mark X2) -> U105(X1, X2),
                      U105(X1, active X2) -> U105(X1, X2),
                        U105(mark X1, X2) -> U105(X1, X2),
                      U105(active X1, X2) -> U105(X1, X2),
                             isNat mark X -> isNat X,
                           isNat active X -> isNat X,
                              U106 mark X -> U106 X,
                            U106 active X -> U106 X,
                        isNatIList mark X -> isNatIList X,
                      isNatIList active X -> isNatIList X,
                         U12(X1, mark X2) -> U12(X1, X2),
                       U12(X1, active X2) -> U12(X1, X2),
                         U12(mark X1, X2) -> U12(X1, X2),
                       U12(active X1, X2) -> U12(X1, X2),
                         U11(X1, mark X2) -> U11(X1, X2),
                       U11(X1, active X2) -> U11(X1, X2),
                         U11(mark X1, X2) -> U11(X1, X2),
                       U11(active X1, X2) -> U11(X1, X2),
                    U112(X1, X2, mark X3) -> U112(X1, X2, X3),
                  U112(X1, X2, active X3) -> U112(X1, X2, X3),
                    U112(X1, mark X2, X3) -> U112(X1, X2, X3),
                  U112(X1, active X2, X3) -> U112(X1, X2, X3),
                    U112(mark X1, X2, X3) -> U112(X1, X2, X3),
                  U112(active X1, X2, X3) -> U112(X1, X2, X3),
                    U111(X1, X2, mark X3) -> U111(X1, X2, X3),
                  U111(X1, X2, active X3) -> U111(X1, X2, X3),
                    U111(X1, mark X2, X3) -> U111(X1, X2, X3),
                  U111(X1, active X2, X3) -> U111(X1, X2, X3),
                    U111(mark X1, X2, X3) -> U111(X1, X2, X3),
                  U111(active X1, X2, X3) -> U111(X1, X2, X3),
                    U113(X1, X2, mark X3) -> U113(X1, X2, X3),
                  U113(X1, X2, active X3) -> U113(X1, X2, X3),
                    U113(X1, mark X2, X3) -> U113(X1, X2, X3),
                  U113(X1, active X2, X3) -> U113(X1, X2, X3),
                    U113(mark X1, X2, X3) -> U113(X1, X2, X3),
                  U113(active X1, X2, X3) -> U113(X1, X2, X3),
                        U114(X1, mark X2) -> U114(X1, X2),
                      U114(X1, active X2) -> U114(X1, X2),
                        U114(mark X1, X2) -> U114(X1, X2),
                      U114(active X1, X2) -> U114(X1, X2),
                                 s mark X -> s X,
                               s active X -> s X,
                            length mark X -> length X,
                          length active X -> length X,
                               U13 mark X -> U13 X,
                             U13 active X -> U13 X,
                         isNatList mark X -> isNatList X,
                       isNatList active X -> isNatList X,
                              U122 mark X -> U122 X,
                            U122 active X -> U122 X,
                        U121(X1, mark X2) -> U121(X1, X2),
                      U121(X1, active X2) -> U121(X1, X2),
                        U121(mark X1, X2) -> U121(X1, X2),
                      U121(active X1, X2) -> U121(X1, X2),
                U132(X1, X2, X3, mark X4) -> U132(X1, X2, X3, X4),
              U132(X1, X2, X3, active X4) -> U132(X1, X2, X3, X4),
                U132(X1, X2, mark X3, X4) -> U132(X1, X2, X3, X4),
              U132(X1, X2, active X3, X4) -> U132(X1, X2, X3, X4),
                U132(X1, mark X2, X3, X4) -> U132(X1, X2, X3, X4),
              U132(X1, active X2, X3, X4) -> U132(X1, X2, X3, X4),
                U132(mark X1, X2, X3, X4) -> U132(X1, X2, X3, X4),
              U132(active X1, X2, X3, X4) -> U132(X1, X2, X3, X4),
                U131(X1, X2, X3, mark X4) -> U131(X1, X2, X3, X4),
              U131(X1, X2, X3, active X4) -> U131(X1, X2, X3, X4),
                U131(X1, X2, mark X3, X4) -> U131(X1, X2, X3, X4),
              U131(X1, X2, active X3, X4) -> U131(X1, X2, X3, X4),
                U131(X1, mark X2, X3, X4) -> U131(X1, X2, X3, X4),
              U131(X1, active X2, X3, X4) -> U131(X1, X2, X3, X4),
                U131(mark X1, X2, X3, X4) -> U131(X1, X2, X3, X4),
              U131(active X1, X2, X3, X4) -> U131(X1, X2, X3, X4),
                U133(X1, X2, X3, mark X4) -> U133(X1, X2, X3, X4),
              U133(X1, X2, X3, active X4) -> U133(X1, X2, X3, X4),
                U133(X1, X2, mark X3, X4) -> U133(X1, X2, X3, X4),
              U133(X1, X2, active X3, X4) -> U133(X1, X2, X3, X4),
                U133(X1, mark X2, X3, X4) -> U133(X1, X2, X3, X4),
              U133(X1, active X2, X3, X4) -> U133(X1, X2, X3, X4),
                U133(mark X1, X2, X3, X4) -> U133(X1, X2, X3, X4),
              U133(active X1, X2, X3, X4) -> U133(X1, X2, X3, X4),
                U134(X1, X2, X3, mark X4) -> U134(X1, X2, X3, X4),
              U134(X1, X2, X3, active X4) -> U134(X1, X2, X3, X4),
                U134(X1, X2, mark X3, X4) -> U134(X1, X2, X3, X4),
              U134(X1, X2, active X3, X4) -> U134(X1, X2, X3, X4),
                U134(X1, mark X2, X3, X4) -> U134(X1, X2, X3, X4),
              U134(X1, active X2, X3, X4) -> U134(X1, X2, X3, X4),
                U134(mark X1, X2, X3, X4) -> U134(X1, X2, X3, X4),
              U134(active X1, X2, X3, X4) -> U134(X1, X2, X3, X4),
                U135(X1, X2, X3, mark X4) -> U135(X1, X2, X3, X4),
              U135(X1, X2, X3, active X4) -> U135(X1, X2, X3, X4),
                U135(X1, X2, mark X3, X4) -> U135(X1, X2, X3, X4),
              U135(X1, X2, active X3, X4) -> U135(X1, X2, X3, X4),
                U135(X1, mark X2, X3, X4) -> U135(X1, X2, X3, X4),
              U135(X1, active X2, X3, X4) -> U135(X1, X2, X3, X4),
                U135(mark X1, X2, X3, X4) -> U135(X1, X2, X3, X4),
              U135(active X1, X2, X3, X4) -> U135(X1, X2, X3, X4),
                U136(X1, X2, X3, mark X4) -> U136(X1, X2, X3, X4),
              U136(X1, X2, X3, active X4) -> U136(X1, X2, X3, X4),
                U136(X1, X2, mark X3, X4) -> U136(X1, X2, X3, X4),
              U136(X1, X2, active X3, X4) -> U136(X1, X2, X3, X4),
                U136(X1, mark X2, X3, X4) -> U136(X1, X2, X3, X4),
              U136(X1, active X2, X3, X4) -> U136(X1, X2, X3, X4),
                U136(mark X1, X2, X3, X4) -> U136(X1, X2, X3, X4),
              U136(active X1, X2, X3, X4) -> U136(X1, X2, X3, X4),
                        take(X1, mark X2) -> take(X1, X2),
                      take(X1, active X2) -> take(X1, X2),
                        take(mark X1, X2) -> take(X1, X2),
                      take(active X1, X2) -> take(X1, X2),
                         U22(X1, mark X2) -> U22(X1, X2),
                       U22(X1, active X2) -> U22(X1, X2),
                         U22(mark X1, X2) -> U22(X1, X2),
                       U22(active X1, X2) -> U22(X1, X2),
                         U21(X1, mark X2) -> U21(X1, X2),
                       U21(X1, active X2) -> U21(X1, X2),
                         U21(mark X1, X2) -> U21(X1, X2),
                       U21(active X1, X2) -> U21(X1, X2),
                               U23 mark X -> U23 X,
                             U23 active X -> U23 X,
                         U32(X1, mark X2) -> U32(X1, X2),
                       U32(X1, active X2) -> U32(X1, X2),
                         U32(mark X1, X2) -> U32(X1, X2),
                       U32(active X1, X2) -> U32(X1, X2),
                         U31(X1, mark X2) -> U31(X1, X2),
                       U31(X1, active X2) -> U31(X1, X2),
                         U31(mark X1, X2) -> U31(X1, X2),
                       U31(active X1, X2) -> U31(X1, X2),
                               U33 mark X -> U33 X,
                             U33 active X -> U33 X,
                     U42(X1, X2, mark X3) -> U42(X1, X2, X3),
                   U42(X1, X2, active X3) -> U42(X1, X2, X3),
                     U42(X1, mark X2, X3) -> U42(X1, X2, X3),
                   U42(X1, active X2, X3) -> U42(X1, X2, X3),
                     U42(mark X1, X2, X3) -> U42(X1, X2, X3),
                   U42(active X1, X2, X3) -> U42(X1, X2, X3),
                     U41(X1, X2, mark X3) -> U41(X1, X2, X3),
                   U41(X1, X2, active X3) -> U41(X1, X2, X3),
                     U41(X1, mark X2, X3) -> U41(X1, X2, X3),
                   U41(X1, active X2, X3) -> U41(X1, X2, X3),
                     U41(mark X1, X2, X3) -> U41(X1, X2, X3),
                   U41(active X1, X2, X3) -> U41(X1, X2, X3),
                     U43(X1, X2, mark X3) -> U43(X1, X2, X3),
                   U43(X1, X2, active X3) -> U43(X1, X2, X3),
                     U43(X1, mark X2, X3) -> U43(X1, X2, X3),
                   U43(X1, active X2, X3) -> U43(X1, X2, X3),
                     U43(mark X1, X2, X3) -> U43(X1, X2, X3),
                   U43(active X1, X2, X3) -> U43(X1, X2, X3),
                     U44(X1, X2, mark X3) -> U44(X1, X2, X3),
                   U44(X1, X2, active X3) -> U44(X1, X2, X3),
                     U44(X1, mark X2, X3) -> U44(X1, X2, X3),
                   U44(X1, active X2, X3) -> U44(X1, X2, X3),
                     U44(mark X1, X2, X3) -> U44(X1, X2, X3),
                   U44(active X1, X2, X3) -> U44(X1, X2, X3),
                         U45(X1, mark X2) -> U45(X1, X2),
                       U45(X1, active X2) -> U45(X1, X2),
                         U45(mark X1, X2) -> U45(X1, X2),
                       U45(active X1, X2) -> U45(X1, X2),
                               U46 mark X -> U46 X,
                             U46 active X -> U46 X,
                               U52 mark X -> U52 X,
                             U52 active X -> U52 X,
                         U51(X1, mark X2) -> U51(X1, X2),
                       U51(X1, active X2) -> U51(X1, X2),
                         U51(mark X1, X2) -> U51(X1, X2),
                       U51(active X1, X2) -> U51(X1, X2),
                               U62 mark X -> U62 X,
                             U62 active X -> U62 X,
                         U61(X1, mark X2) -> U61(X1, X2),
                       U61(X1, active X2) -> U61(X1, X2),
                         U61(mark X1, X2) -> U61(X1, X2),
                       U61(active X1, X2) -> U61(X1, X2),
                               U71 mark X -> U71 X,
                             U71 active X -> U71 X,
                               U81 mark X -> U81 X,
                             U81 active X -> U81 X,
                     U92(X1, X2, mark X3) -> U92(X1, X2, X3),
                   U92(X1, X2, active X3) -> U92(X1, X2, X3),
                     U92(X1, mark X2, X3) -> U92(X1, X2, X3),
                   U92(X1, active X2, X3) -> U92(X1, X2, X3),
                     U92(mark X1, X2, X3) -> U92(X1, X2, X3),
                   U92(active X1, X2, X3) -> U92(X1, X2, X3),
                     U91(X1, X2, mark X3) -> U91(X1, X2, X3),
                   U91(X1, X2, active X3) -> U91(X1, X2, X3),
                     U91(X1, mark X2, X3) -> U91(X1, X2, X3),
                   U91(X1, active X2, X3) -> U91(X1, X2, X3),
                     U91(mark X1, X2, X3) -> U91(X1, X2, X3),
                   U91(active X1, X2, X3) -> U91(X1, X2, X3),
                     U93(X1, X2, mark X3) -> U93(X1, X2, X3),
                   U93(X1, X2, active X3) -> U93(X1, X2, X3),
                     U93(X1, mark X2, X3) -> U93(X1, X2, X3),
                   U93(X1, active X2, X3) -> U93(X1, X2, X3),
                     U93(mark X1, X2, X3) -> U93(X1, X2, X3),
                   U93(active X1, X2, X3) -> U93(X1, X2, X3),
                     U94(X1, X2, mark X3) -> U94(X1, X2, X3),
                   U94(X1, X2, active X3) -> U94(X1, X2, X3),
                     U94(X1, mark X2, X3) -> U94(X1, X2, X3),
                   U94(X1, active X2, X3) -> U94(X1, X2, X3),
                     U94(mark X1, X2, X3) -> U94(X1, X2, X3),
                   U94(active X1, X2, X3) -> U94(X1, X2, X3),
                         U95(X1, mark X2) -> U95(X1, X2),
                       U95(X1, active X2) -> U95(X1, X2),
                         U95(mark X1, X2) -> U95(X1, X2),
                       U95(active X1, X2) -> U95(X1, X2),
                               U96 mark X -> U96 X,
                             U96 active X -> U96 X
      }
      Open
     
     
     
     SCC (4):
      Strict:
       {  U45#(X1, mark X2) -> U45#(X1, X2),
        U45#(X1, active X2) -> U45#(X1, X2),
          U45#(mark X1, X2) -> U45#(X1, X2),
        U45#(active X1, X2) -> U45#(X1, X2)}
      Weak:
      {
                        mark cons(X1, X2) -> active cons(mark X1, X2),
                                 mark 0() -> active 0(),
                             mark zeros() -> active zeros(),
                    mark U102(X1, X2, X3) -> active U102(mark X1, X2, X3),
                         mark isNatKind X -> active isNatKind X,
                    mark U101(X1, X2, X3) -> active U101(mark X1, X2, X3),
                                mark tt() -> active tt(),
                    mark U103(X1, X2, X3) -> active U103(mark X1, X2, X3),
                    mark isNatIListKind X -> active isNatIListKind X,
                    mark U104(X1, X2, X3) -> active U104(mark X1, X2, X3),
                        mark U105(X1, X2) -> active U105(mark X1, X2),
                             mark isNat X -> active isNat X,
                              mark U106 X -> active U106 mark X,
                        mark isNatIList X -> active isNatIList X,
                         mark U12(X1, X2) -> active U12(mark X1, X2),
                         mark U11(X1, X2) -> active U11(mark X1, X2),
                    mark U112(X1, X2, X3) -> active U112(mark X1, X2, X3),
                    mark U111(X1, X2, X3) -> active U111(mark X1, X2, X3),
                    mark U113(X1, X2, X3) -> active U113(mark X1, X2, X3),
                        mark U114(X1, X2) -> active U114(mark X1, X2),
                                 mark s X -> active s mark X,
                            mark length X -> active length mark X,
                               mark U13 X -> active U13 mark X,
                         mark isNatList X -> active isNatList X,
                              mark U122 X -> active U122 mark X,
                        mark U121(X1, X2) -> active U121(mark X1, X2),
                               mark nil() -> active nil(),
                mark U132(X1, X2, X3, X4) -> active U132(mark X1, X2, X3, X4),
                mark U131(X1, X2, X3, X4) -> active U131(mark X1, X2, X3, X4),
                mark U133(X1, X2, X3, X4) -> active U133(mark X1, X2, X3, X4),
                mark U134(X1, X2, X3, X4) -> active U134(mark X1, X2, X3, X4),
                mark U135(X1, X2, X3, X4) -> active U135(mark X1, X2, X3, X4),
                mark U136(X1, X2, X3, X4) -> active U136(mark X1, X2, X3, X4),
                        mark take(X1, X2) -> active take(mark X1, mark X2),
                         mark U22(X1, X2) -> active U22(mark X1, X2),
                         mark U21(X1, X2) -> active U21(mark X1, X2),
                               mark U23 X -> active U23 mark X,
                         mark U32(X1, X2) -> active U32(mark X1, X2),
                         mark U31(X1, X2) -> active U31(mark X1, X2),
                               mark U33 X -> active U33 mark X,
                     mark U42(X1, X2, X3) -> active U42(mark X1, X2, X3),
                     mark U41(X1, X2, X3) -> active U41(mark X1, X2, X3),
                     mark U43(X1, X2, X3) -> active U43(mark X1, X2, X3),
                     mark U44(X1, X2, X3) -> active U44(mark X1, X2, X3),
                         mark U45(X1, X2) -> active U45(mark X1, X2),
                               mark U46 X -> active U46 mark X,
                               mark U52 X -> active U52 mark X,
                         mark U51(X1, X2) -> active U51(mark X1, X2),
                               mark U62 X -> active U62 mark X,
                         mark U61(X1, X2) -> active U61(mark X1, X2),
                               mark U71 X -> active U71 mark X,
                               mark U81 X -> active U81 mark X,
                     mark U92(X1, X2, X3) -> active U92(mark X1, X2, X3),
                     mark U91(X1, X2, X3) -> active U91(mark X1, X2, X3),
                     mark U93(X1, X2, X3) -> active U93(mark X1, X2, X3),
                     mark U94(X1, X2, X3) -> active U94(mark X1, X2, X3),
                         mark U95(X1, X2) -> active U95(mark X1, X2),
                               mark U96 X -> active U96 mark X,
                        cons(X1, mark X2) -> cons(X1, X2),
                      cons(X1, active X2) -> cons(X1, X2),
                        cons(mark X1, X2) -> cons(X1, X2),
                      cons(active X1, X2) -> cons(X1, X2),
                           active zeros() -> mark cons(0(), zeros()),
                active U102(tt(), V1, V2) -> mark U103(isNatIListKind V2, V1, V2),
                     active isNatKind 0() -> mark tt(),
                    active isNatKind s V1 -> mark U81 isNatKind V1,
               active isNatKind length V1 -> mark U71 isNatIListKind V1,
                active U101(tt(), V1, V2) -> mark U102(isNatKind V1, V1, V2),
                active U103(tt(), V1, V2) -> mark U104(isNatIListKind V2, V1, V2),
       active isNatIListKind cons(V1, V2) -> mark U51(isNatKind V1, V2),
            active isNatIListKind zeros() -> mark tt(),
              active isNatIListKind nil() -> mark tt(),
       active isNatIListKind take(V1, V2) -> mark U61(isNatKind V1, V2),
                active U104(tt(), V1, V2) -> mark U105(isNat V1, V2),
                    active U105(tt(), V2) -> mark U106 isNatIList V2,
                         active isNat 0() -> mark tt(),
                        active isNat s V1 -> mark U21(isNatKind V1, V1),
                   active isNat length V1 -> mark U11(isNatIListKind V1, V1),
                         active U106 tt() -> mark tt(),
                      active isNatIList V -> mark U31(isNatIListKind V, V),
           active isNatIList cons(V1, V2) -> mark U41(isNatKind V1, V1, V2),
                active isNatIList zeros() -> mark tt(),
                     active U12(tt(), V1) -> mark U13 isNatList V1,
                     active U11(tt(), V1) -> mark U12(isNatIListKind V1, V1),
                  active U112(tt(), L, N) -> mark U113(isNat N, L, N),
                  active U111(tt(), L, N) -> mark U112(isNatIListKind L, L, N),
                  active U113(tt(), L, N) -> mark U114(isNatKind N, L),
                     active U114(tt(), L) -> mark s length L,
                 active length cons(N, L) -> mark U111(isNatList L, L, N),
                      active length nil() -> mark 0(),
                          active U13 tt() -> mark tt(),
            active isNatList cons(V1, V2) -> mark U91(isNatKind V1, V1, V2),
                   active isNatList nil() -> mark tt(),
            active isNatList take(V1, V2) -> mark U101(isNatKind V1, V1, V2),
                         active U122 tt() -> mark nil(),
                    active U121(tt(), IL) -> mark U122 isNatIListKind IL,
              active U132(tt(), IL, M, N) -> mark U133(isNat M, IL, M, N),
              active U131(tt(), IL, M, N) -> mark U132(isNatIListKind IL, IL, M, N),
              active U133(tt(), IL, M, N) -> mark U134(isNatKind M, IL, M, N),
              active U134(tt(), IL, M, N) -> mark U135(isNat N, IL, M, N),
              active U135(tt(), IL, M, N) -> mark U136(isNatKind N, IL, M, N),
              active U136(tt(), IL, M, N) -> mark cons(N, take(M, IL)),
                     active take(0(), IL) -> mark U121(isNatIList IL, IL),
            active take(s M, cons(N, IL)) -> mark U131(isNatIList IL, IL, M, N),
                     active U22(tt(), V1) -> mark U23 isNat V1,
                     active U21(tt(), V1) -> mark U22(isNatKind V1, V1),
                          active U23 tt() -> mark tt(),
                      active U32(tt(), V) -> mark U33 isNatList V,
                      active U31(tt(), V) -> mark U32(isNatIListKind V, V),
                          active U33 tt() -> mark tt(),
                 active U42(tt(), V1, V2) -> mark U43(isNatIListKind V2, V1, V2),
                 active U41(tt(), V1, V2) -> mark U42(isNatKind V1, V1, V2),
                 active U43(tt(), V1, V2) -> mark U44(isNatIListKind V2, V1, V2),
                 active U44(tt(), V1, V2) -> mark U45(isNat V1, V2),
                     active U45(tt(), V2) -> mark U46 isNatIList V2,
                          active U46 tt() -> mark tt(),
                          active U52 tt() -> mark tt(),
                     active U51(tt(), V2) -> mark U52 isNatIListKind V2,
                          active U62 tt() -> mark tt(),
                     active U61(tt(), V2) -> mark U62 isNatIListKind V2,
                          active U71 tt() -> mark tt(),
                          active U81 tt() -> mark tt(),
                 active U92(tt(), V1, V2) -> mark U93(isNatIListKind V2, V1, V2),
                 active U91(tt(), V1, V2) -> mark U92(isNatKind V1, V1, V2),
                 active U93(tt(), V1, V2) -> mark U94(isNatIListKind V2, V1, V2),
                 active U94(tt(), V1, V2) -> mark U95(isNat V1, V2),
                     active U95(tt(), V2) -> mark U96 isNatList V2,
                          active U96 tt() -> mark tt(),
                    U102(X1, X2, mark X3) -> U102(X1, X2, X3),
                  U102(X1, X2, active X3) -> U102(X1, X2, X3),
                    U102(X1, mark X2, X3) -> U102(X1, X2, X3),
                  U102(X1, active X2, X3) -> U102(X1, X2, X3),
                    U102(mark X1, X2, X3) -> U102(X1, X2, X3),
                  U102(active X1, X2, X3) -> U102(X1, X2, X3),
                         isNatKind mark X -> isNatKind X,
                       isNatKind active X -> isNatKind X,
                    U101(X1, X2, mark X3) -> U101(X1, X2, X3),
                  U101(X1, X2, active X3) -> U101(X1, X2, X3),
                    U101(X1, mark X2, X3) -> U101(X1, X2, X3),
                  U101(X1, active X2, X3) -> U101(X1, X2, X3),
                    U101(mark X1, X2, X3) -> U101(X1, X2, X3),
                  U101(active X1, X2, X3) -> U101(X1, X2, X3),
                    U103(X1, X2, mark X3) -> U103(X1, X2, X3),
                  U103(X1, X2, active X3) -> U103(X1, X2, X3),
                    U103(X1, mark X2, X3) -> U103(X1, X2, X3),
                  U103(X1, active X2, X3) -> U103(X1, X2, X3),
                    U103(mark X1, X2, X3) -> U103(X1, X2, X3),
                  U103(active X1, X2, X3) -> U103(X1, X2, X3),
                    isNatIListKind mark X -> isNatIListKind X,
                  isNatIListKind active X -> isNatIListKind X,
                    U104(X1, X2, mark X3) -> U104(X1, X2, X3),
                  U104(X1, X2, active X3) -> U104(X1, X2, X3),
                    U104(X1, mark X2, X3) -> U104(X1, X2, X3),
                  U104(X1, active X2, X3) -> U104(X1, X2, X3),
                    U104(mark X1, X2, X3) -> U104(X1, X2, X3),
                  U104(active X1, X2, X3) -> U104(X1, X2, X3),
                        U105(X1, mark X2) -> U105(X1, X2),
                      U105(X1, active X2) -> U105(X1, X2),
                        U105(mark X1, X2) -> U105(X1, X2),
                      U105(active X1, X2) -> U105(X1, X2),
                             isNat mark X -> isNat X,
                           isNat active X -> isNat X,
                              U106 mark X -> U106 X,
                            U106 active X -> U106 X,
                        isNatIList mark X -> isNatIList X,
                      isNatIList active X -> isNatIList X,
                         U12(X1, mark X2) -> U12(X1, X2),
                       U12(X1, active X2) -> U12(X1, X2),
                         U12(mark X1, X2) -> U12(X1, X2),
                       U12(active X1, X2) -> U12(X1, X2),
                         U11(X1, mark X2) -> U11(X1, X2),
                       U11(X1, active X2) -> U11(X1, X2),
                         U11(mark X1, X2) -> U11(X1, X2),
                       U11(active X1, X2) -> U11(X1, X2),
                    U112(X1, X2, mark X3) -> U112(X1, X2, X3),
                  U112(X1, X2, active X3) -> U112(X1, X2, X3),
                    U112(X1, mark X2, X3) -> U112(X1, X2, X3),
                  U112(X1, active X2, X3) -> U112(X1, X2, X3),
                    U112(mark X1, X2, X3) -> U112(X1, X2, X3),
                  U112(active X1, X2, X3) -> U112(X1, X2, X3),
                    U111(X1, X2, mark X3) -> U111(X1, X2, X3),
                  U111(X1, X2, active X3) -> U111(X1, X2, X3),
                    U111(X1, mark X2, X3) -> U111(X1, X2, X3),
                  U111(X1, active X2, X3) -> U111(X1, X2, X3),
                    U111(mark X1, X2, X3) -> U111(X1, X2, X3),
                  U111(active X1, X2, X3) -> U111(X1, X2, X3),
                    U113(X1, X2, mark X3) -> U113(X1, X2, X3),
                  U113(X1, X2, active X3) -> U113(X1, X2, X3),
                    U113(X1, mark X2, X3) -> U113(X1, X2, X3),
                  U113(X1, active X2, X3) -> U113(X1, X2, X3),
                    U113(mark X1, X2, X3) -> U113(X1, X2, X3),
                  U113(active X1, X2, X3) -> U113(X1, X2, X3),
                        U114(X1, mark X2) -> U114(X1, X2),
                      U114(X1, active X2) -> U114(X1, X2),
                        U114(mark X1, X2) -> U114(X1, X2),
                      U114(active X1, X2) -> U114(X1, X2),
                                 s mark X -> s X,
                               s active X -> s X,
                            length mark X -> length X,
                          length active X -> length X,
                               U13 mark X -> U13 X,
                             U13 active X -> U13 X,
                         isNatList mark X -> isNatList X,
                       isNatList active X -> isNatList X,
                              U122 mark X -> U122 X,
                            U122 active X -> U122 X,
                        U121(X1, mark X2) -> U121(X1, X2),
                      U121(X1, active X2) -> U121(X1, X2),
                        U121(mark X1, X2) -> U121(X1, X2),
                      U121(active X1, X2) -> U121(X1, X2),
                U132(X1, X2, X3, mark X4) -> U132(X1, X2, X3, X4),
              U132(X1, X2, X3, active X4) -> U132(X1, X2, X3, X4),
                U132(X1, X2, mark X3, X4) -> U132(X1, X2, X3, X4),
              U132(X1, X2, active X3, X4) -> U132(X1, X2, X3, X4),
                U132(X1, mark X2, X3, X4) -> U132(X1, X2, X3, X4),
              U132(X1, active X2, X3, X4) -> U132(X1, X2, X3, X4),
                U132(mark X1, X2, X3, X4) -> U132(X1, X2, X3, X4),
              U132(active X1, X2, X3, X4) -> U132(X1, X2, X3, X4),
                U131(X1, X2, X3, mark X4) -> U131(X1, X2, X3, X4),
              U131(X1, X2, X3, active X4) -> U131(X1, X2, X3, X4),
                U131(X1, X2, mark X3, X4) -> U131(X1, X2, X3, X4),
              U131(X1, X2, active X3, X4) -> U131(X1, X2, X3, X4),
                U131(X1, mark X2, X3, X4) -> U131(X1, X2, X3, X4),
              U131(X1, active X2, X3, X4) -> U131(X1, X2, X3, X4),
                U131(mark X1, X2, X3, X4) -> U131(X1, X2, X3, X4),
              U131(active X1, X2, X3, X4) -> U131(X1, X2, X3, X4),
                U133(X1, X2, X3, mark X4) -> U133(X1, X2, X3, X4),
              U133(X1, X2, X3, active X4) -> U133(X1, X2, X3, X4),
                U133(X1, X2, mark X3, X4) -> U133(X1, X2, X3, X4),
              U133(X1, X2, active X3, X4) -> U133(X1, X2, X3, X4),
                U133(X1, mark X2, X3, X4) -> U133(X1, X2, X3, X4),
              U133(X1, active X2, X3, X4) -> U133(X1, X2, X3, X4),
                U133(mark X1, X2, X3, X4) -> U133(X1, X2, X3, X4),
              U133(active X1, X2, X3, X4) -> U133(X1, X2, X3, X4),
                U134(X1, X2, X3, mark X4) -> U134(X1, X2, X3, X4),
              U134(X1, X2, X3, active X4) -> U134(X1, X2, X3, X4),
                U134(X1, X2, mark X3, X4) -> U134(X1, X2, X3, X4),
              U134(X1, X2, active X3, X4) -> U134(X1, X2, X3, X4),
                U134(X1, mark X2, X3, X4) -> U134(X1, X2, X3, X4),
              U134(X1, active X2, X3, X4) -> U134(X1, X2, X3, X4),
                U134(mark X1, X2, X3, X4) -> U134(X1, X2, X3, X4),
              U134(active X1, X2, X3, X4) -> U134(X1, X2, X3, X4),
                U135(X1, X2, X3, mark X4) -> U135(X1, X2, X3, X4),
              U135(X1, X2, X3, active X4) -> U135(X1, X2, X3, X4),
                U135(X1, X2, mark X3, X4) -> U135(X1, X2, X3, X4),
              U135(X1, X2, active X3, X4) -> U135(X1, X2, X3, X4),
                U135(X1, mark X2, X3, X4) -> U135(X1, X2, X3, X4),
              U135(X1, active X2, X3, X4) -> U135(X1, X2, X3, X4),
                U135(mark X1, X2, X3, X4) -> U135(X1, X2, X3, X4),
              U135(active X1, X2, X3, X4) -> U135(X1, X2, X3, X4),
                U136(X1, X2, X3, mark X4) -> U136(X1, X2, X3, X4),
              U136(X1, X2, X3, active X4) -> U136(X1, X2, X3, X4),
                U136(X1, X2, mark X3, X4) -> U136(X1, X2, X3, X4),
              U136(X1, X2, active X3, X4) -> U136(X1, X2, X3, X4),
                U136(X1, mark X2, X3, X4) -> U136(X1, X2, X3, X4),
              U136(X1, active X2, X3, X4) -> U136(X1, X2, X3, X4),
                U136(mark X1, X2, X3, X4) -> U136(X1, X2, X3, X4),
              U136(active X1, X2, X3, X4) -> U136(X1, X2, X3, X4),
                        take(X1, mark X2) -> take(X1, X2),
                      take(X1, active X2) -> take(X1, X2),
                        take(mark X1, X2) -> take(X1, X2),
                      take(active X1, X2) -> take(X1, X2),
                         U22(X1, mark X2) -> U22(X1, X2),
                       U22(X1, active X2) -> U22(X1, X2),
                         U22(mark X1, X2) -> U22(X1, X2),
                       U22(active X1, X2) -> U22(X1, X2),
                         U21(X1, mark X2) -> U21(X1, X2),
                       U21(X1, active X2) -> U21(X1, X2),
                         U21(mark X1, X2) -> U21(X1, X2),
                       U21(active X1, X2) -> U21(X1, X2),
                               U23 mark X -> U23 X,
                             U23 active X -> U23 X,
                         U32(X1, mark X2) -> U32(X1, X2),
                       U32(X1, active X2) -> U32(X1, X2),
                         U32(mark X1, X2) -> U32(X1, X2),
                       U32(active X1, X2) -> U32(X1, X2),
                         U31(X1, mark X2) -> U31(X1, X2),
                       U31(X1, active X2) -> U31(X1, X2),
                         U31(mark X1, X2) -> U31(X1, X2),
                       U31(active X1, X2) -> U31(X1, X2),
                               U33 mark X -> U33 X,
                             U33 active X -> U33 X,
                     U42(X1, X2, mark X3) -> U42(X1, X2, X3),
                   U42(X1, X2, active X3) -> U42(X1, X2, X3),
                     U42(X1, mark X2, X3) -> U42(X1, X2, X3),
                   U42(X1, active X2, X3) -> U42(X1, X2, X3),
                     U42(mark X1, X2, X3) -> U42(X1, X2, X3),
                   U42(active X1, X2, X3) -> U42(X1, X2, X3),
                     U41(X1, X2, mark X3) -> U41(X1, X2, X3),
                   U41(X1, X2, active X3) -> U41(X1, X2, X3),
                     U41(X1, mark X2, X3) -> U41(X1, X2, X3),
                   U41(X1, active X2, X3) -> U41(X1, X2, X3),
                     U41(mark X1, X2, X3) -> U41(X1, X2, X3),
                   U41(active X1, X2, X3) -> U41(X1, X2, X3),
                     U43(X1, X2, mark X3) -> U43(X1, X2, X3),
                   U43(X1, X2, active X3) -> U43(X1, X2, X3),
                     U43(X1, mark X2, X3) -> U43(X1, X2, X3),
                   U43(X1, active X2, X3) -> U43(X1, X2, X3),
                     U43(mark X1, X2, X3) -> U43(X1, X2, X3),
                   U43(active X1, X2, X3) -> U43(X1, X2, X3),
                     U44(X1, X2, mark X3) -> U44(X1, X2, X3),
                   U44(X1, X2, active X3) -> U44(X1, X2, X3),
                     U44(X1, mark X2, X3) -> U44(X1, X2, X3),
                   U44(X1, active X2, X3) -> U44(X1, X2, X3),
                     U44(mark X1, X2, X3) -> U44(X1, X2, X3),
                   U44(active X1, X2, X3) -> U44(X1, X2, X3),
                         U45(X1, mark X2) -> U45(X1, X2),
                       U45(X1, active X2) -> U45(X1, X2),
                         U45(mark X1, X2) -> U45(X1, X2),
                       U45(active X1, X2) -> U45(X1, X2),
                               U46 mark X -> U46 X,
                             U46 active X -> U46 X,
                               U52 mark X -> U52 X,
                             U52 active X -> U52 X,
                         U51(X1, mark X2) -> U51(X1, X2),
                       U51(X1, active X2) -> U51(X1, X2),
                         U51(mark X1, X2) -> U51(X1, X2),
                       U51(active X1, X2) -> U51(X1, X2),
                               U62 mark X -> U62 X,
                             U62 active X -> U62 X,
                         U61(X1, mark X2) -> U61(X1, X2),
                       U61(X1, active X2) -> U61(X1, X2),
                         U61(mark X1, X2) -> U61(X1, X2),
                       U61(active X1, X2) -> U61(X1, X2),
                               U71 mark X -> U71 X,
                             U71 active X -> U71 X,
                               U81 mark X -> U81 X,
                             U81 active X -> U81 X,
                     U92(X1, X2, mark X3) -> U92(X1, X2, X3),
                   U92(X1, X2, active X3) -> U92(X1, X2, X3),
                     U92(X1, mark X2, X3) -> U92(X1, X2, X3),
                   U92(X1, active X2, X3) -> U92(X1, X2, X3),
                     U92(mark X1, X2, X3) -> U92(X1, X2, X3),
                   U92(active X1, X2, X3) -> U92(X1, X2, X3),
                     U91(X1, X2, mark X3) -> U91(X1, X2, X3),
                   U91(X1, X2, active X3) -> U91(X1, X2, X3),
                     U91(X1, mark X2, X3) -> U91(X1, X2, X3),
                   U91(X1, active X2, X3) -> U91(X1, X2, X3),
                     U91(mark X1, X2, X3) -> U91(X1, X2, X3),
                   U91(active X1, X2, X3) -> U91(X1, X2, X3),
                     U93(X1, X2, mark X3) -> U93(X1, X2, X3),
                   U93(X1, X2, active X3) -> U93(X1, X2, X3),
                     U93(X1, mark X2, X3) -> U93(X1, X2, X3),
                   U93(X1, active X2, X3) -> U93(X1, X2, X3),
                     U93(mark X1, X2, X3) -> U93(X1, X2, X3),
                   U93(active X1, X2, X3) -> U93(X1, X2, X3),
                     U94(X1, X2, mark X3) -> U94(X1, X2, X3),
                   U94(X1, X2, active X3) -> U94(X1, X2, X3),
                     U94(X1, mark X2, X3) -> U94(X1, X2, X3),
                   U94(X1, active X2, X3) -> U94(X1, X2, X3),
                     U94(mark X1, X2, X3) -> U94(X1, X2, X3),
                   U94(active X1, X2, X3) -> U94(X1, X2, X3),
                         U95(X1, mark X2) -> U95(X1, X2),
                       U95(X1, active X2) -> U95(X1, X2),
                         U95(mark X1, X2) -> U95(X1, X2),
                       U95(active X1, X2) -> U95(X1, X2),
                               U96 mark X -> U96 X,
                             U96 active X -> U96 X
      }
      Open
     
     SCC (6):
      Strict:
       {  U44#(X1, X2, mark X3) -> U44#(X1, X2, X3),
        U44#(X1, X2, active X3) -> U44#(X1, X2, X3),
          U44#(X1, mark X2, X3) -> U44#(X1, X2, X3),
        U44#(X1, active X2, X3) -> U44#(X1, X2, X3),
          U44#(mark X1, X2, X3) -> U44#(X1, X2, X3),
        U44#(active X1, X2, X3) -> U44#(X1, X2, X3)}
      Weak:
      {
                        mark cons(X1, X2) -> active cons(mark X1, X2),
                                 mark 0() -> active 0(),
                             mark zeros() -> active zeros(),
                    mark U102(X1, X2, X3) -> active U102(mark X1, X2, X3),
                         mark isNatKind X -> active isNatKind X,
                    mark U101(X1, X2, X3) -> active U101(mark X1, X2, X3),
                                mark tt() -> active tt(),
                    mark U103(X1, X2, X3) -> active U103(mark X1, X2, X3),
                    mark isNatIListKind X -> active isNatIListKind X,
                    mark U104(X1, X2, X3) -> active U104(mark X1, X2, X3),
                        mark U105(X1, X2) -> active U105(mark X1, X2),
                             mark isNat X -> active isNat X,
                              mark U106 X -> active U106 mark X,
                        mark isNatIList X -> active isNatIList X,
                         mark U12(X1, X2) -> active U12(mark X1, X2),
                         mark U11(X1, X2) -> active U11(mark X1, X2),
                    mark U112(X1, X2, X3) -> active U112(mark X1, X2, X3),
                    mark U111(X1, X2, X3) -> active U111(mark X1, X2, X3),
                    mark U113(X1, X2, X3) -> active U113(mark X1, X2, X3),
                        mark U114(X1, X2) -> active U114(mark X1, X2),
                                 mark s X -> active s mark X,
                            mark length X -> active length mark X,
                               mark U13 X -> active U13 mark X,
                         mark isNatList X -> active isNatList X,
                              mark U122 X -> active U122 mark X,
                        mark U121(X1, X2) -> active U121(mark X1, X2),
                               mark nil() -> active nil(),
                mark U132(X1, X2, X3, X4) -> active U132(mark X1, X2, X3, X4),
                mark U131(X1, X2, X3, X4) -> active U131(mark X1, X2, X3, X4),
                mark U133(X1, X2, X3, X4) -> active U133(mark X1, X2, X3, X4),
                mark U134(X1, X2, X3, X4) -> active U134(mark X1, X2, X3, X4),
                mark U135(X1, X2, X3, X4) -> active U135(mark X1, X2, X3, X4),
                mark U136(X1, X2, X3, X4) -> active U136(mark X1, X2, X3, X4),
                        mark take(X1, X2) -> active take(mark X1, mark X2),
                         mark U22(X1, X2) -> active U22(mark X1, X2),
                         mark U21(X1, X2) -> active U21(mark X1, X2),
                               mark U23 X -> active U23 mark X,
                         mark U32(X1, X2) -> active U32(mark X1, X2),
                         mark U31(X1, X2) -> active U31(mark X1, X2),
                               mark U33 X -> active U33 mark X,
                     mark U42(X1, X2, X3) -> active U42(mark X1, X2, X3),
                     mark U41(X1, X2, X3) -> active U41(mark X1, X2, X3),
                     mark U43(X1, X2, X3) -> active U43(mark X1, X2, X3),
                     mark U44(X1, X2, X3) -> active U44(mark X1, X2, X3),
                         mark U45(X1, X2) -> active U45(mark X1, X2),
                               mark U46 X -> active U46 mark X,
                               mark U52 X -> active U52 mark X,
                         mark U51(X1, X2) -> active U51(mark X1, X2),
                               mark U62 X -> active U62 mark X,
                         mark U61(X1, X2) -> active U61(mark X1, X2),
                               mark U71 X -> active U71 mark X,
                               mark U81 X -> active U81 mark X,
                     mark U92(X1, X2, X3) -> active U92(mark X1, X2, X3),
                     mark U91(X1, X2, X3) -> active U91(mark X1, X2, X3),
                     mark U93(X1, X2, X3) -> active U93(mark X1, X2, X3),
                     mark U94(X1, X2, X3) -> active U94(mark X1, X2, X3),
                         mark U95(X1, X2) -> active U95(mark X1, X2),
                               mark U96 X -> active U96 mark X,
                        cons(X1, mark X2) -> cons(X1, X2),
                      cons(X1, active X2) -> cons(X1, X2),
                        cons(mark X1, X2) -> cons(X1, X2),
                      cons(active X1, X2) -> cons(X1, X2),
                           active zeros() -> mark cons(0(), zeros()),
                active U102(tt(), V1, V2) -> mark U103(isNatIListKind V2, V1, V2),
                     active isNatKind 0() -> mark tt(),
                    active isNatKind s V1 -> mark U81 isNatKind V1,
               active isNatKind length V1 -> mark U71 isNatIListKind V1,
                active U101(tt(), V1, V2) -> mark U102(isNatKind V1, V1, V2),
                active U103(tt(), V1, V2) -> mark U104(isNatIListKind V2, V1, V2),
       active isNatIListKind cons(V1, V2) -> mark U51(isNatKind V1, V2),
            active isNatIListKind zeros() -> mark tt(),
              active isNatIListKind nil() -> mark tt(),
       active isNatIListKind take(V1, V2) -> mark U61(isNatKind V1, V2),
                active U104(tt(), V1, V2) -> mark U105(isNat V1, V2),
                    active U105(tt(), V2) -> mark U106 isNatIList V2,
                         active isNat 0() -> mark tt(),
                        active isNat s V1 -> mark U21(isNatKind V1, V1),
                   active isNat length V1 -> mark U11(isNatIListKind V1, V1),
                         active U106 tt() -> mark tt(),
                      active isNatIList V -> mark U31(isNatIListKind V, V),
           active isNatIList cons(V1, V2) -> mark U41(isNatKind V1, V1, V2),
                active isNatIList zeros() -> mark tt(),
                     active U12(tt(), V1) -> mark U13 isNatList V1,
                     active U11(tt(), V1) -> mark U12(isNatIListKind V1, V1),
                  active U112(tt(), L, N) -> mark U113(isNat N, L, N),
                  active U111(tt(), L, N) -> mark U112(isNatIListKind L, L, N),
                  active U113(tt(), L, N) -> mark U114(isNatKind N, L),
                     active U114(tt(), L) -> mark s length L,
                 active length cons(N, L) -> mark U111(isNatList L, L, N),
                      active length nil() -> mark 0(),
                          active U13 tt() -> mark tt(),
            active isNatList cons(V1, V2) -> mark U91(isNatKind V1, V1, V2),
                   active isNatList nil() -> mark tt(),
            active isNatList take(V1, V2) -> mark U101(isNatKind V1, V1, V2),
                         active U122 tt() -> mark nil(),
                    active U121(tt(), IL) -> mark U122 isNatIListKind IL,
              active U132(tt(), IL, M, N) -> mark U133(isNat M, IL, M, N),
              active U131(tt(), IL, M, N) -> mark U132(isNatIListKind IL, IL, M, N),
              active U133(tt(), IL, M, N) -> mark U134(isNatKind M, IL, M, N),
              active U134(tt(), IL, M, N) -> mark U135(isNat N, IL, M, N),
              active U135(tt(), IL, M, N) -> mark U136(isNatKind N, IL, M, N),
              active U136(tt(), IL, M, N) -> mark cons(N, take(M, IL)),
                     active take(0(), IL) -> mark U121(isNatIList IL, IL),
            active take(s M, cons(N, IL)) -> mark U131(isNatIList IL, IL, M, N),
                     active U22(tt(), V1) -> mark U23 isNat V1,
                     active U21(tt(), V1) -> mark U22(isNatKind V1, V1),
                          active U23 tt() -> mark tt(),
                      active U32(tt(), V) -> mark U33 isNatList V,
                      active U31(tt(), V) -> mark U32(isNatIListKind V, V),
                          active U33 tt() -> mark tt(),
                 active U42(tt(), V1, V2) -> mark U43(isNatIListKind V2, V1, V2),
                 active U41(tt(), V1, V2) -> mark U42(isNatKind V1, V1, V2),
                 active U43(tt(), V1, V2) -> mark U44(isNatIListKind V2, V1, V2),
                 active U44(tt(), V1, V2) -> mark U45(isNat V1, V2),
                     active U45(tt(), V2) -> mark U46 isNatIList V2,
                          active U46 tt() -> mark tt(),
                          active U52 tt() -> mark tt(),
                     active U51(tt(), V2) -> mark U52 isNatIListKind V2,
                          active U62 tt() -> mark tt(),
                     active U61(tt(), V2) -> mark U62 isNatIListKind V2,
                          active U71 tt() -> mark tt(),
                          active U81 tt() -> mark tt(),
                 active U92(tt(), V1, V2) -> mark U93(isNatIListKind V2, V1, V2),
                 active U91(tt(), V1, V2) -> mark U92(isNatKind V1, V1, V2),
                 active U93(tt(), V1, V2) -> mark U94(isNatIListKind V2, V1, V2),
                 active U94(tt(), V1, V2) -> mark U95(isNat V1, V2),
                     active U95(tt(), V2) -> mark U96 isNatList V2,
                          active U96 tt() -> mark tt(),
                    U102(X1, X2, mark X3) -> U102(X1, X2, X3),
                  U102(X1, X2, active X3) -> U102(X1, X2, X3),
                    U102(X1, mark X2, X3) -> U102(X1, X2, X3),
                  U102(X1, active X2, X3) -> U102(X1, X2, X3),
                    U102(mark X1, X2, X3) -> U102(X1, X2, X3),
                  U102(active X1, X2, X3) -> U102(X1, X2, X3),
                         isNatKind mark X -> isNatKind X,
                       isNatKind active X -> isNatKind X,
                    U101(X1, X2, mark X3) -> U101(X1, X2, X3),
                  U101(X1, X2, active X3) -> U101(X1, X2, X3),
                    U101(X1, mark X2, X3) -> U101(X1, X2, X3),
                  U101(X1, active X2, X3) -> U101(X1, X2, X3),
                    U101(mark X1, X2, X3) -> U101(X1, X2, X3),
                  U101(active X1, X2, X3) -> U101(X1, X2, X3),
                    U103(X1, X2, mark X3) -> U103(X1, X2, X3),
                  U103(X1, X2, active X3) -> U103(X1, X2, X3),
                    U103(X1, mark X2, X3) -> U103(X1, X2, X3),
                  U103(X1, active X2, X3) -> U103(X1, X2, X3),
                    U103(mark X1, X2, X3) -> U103(X1, X2, X3),
                  U103(active X1, X2, X3) -> U103(X1, X2, X3),
                    isNatIListKind mark X -> isNatIListKind X,
                  isNatIListKind active X -> isNatIListKind X,
                    U104(X1, X2, mark X3) -> U104(X1, X2, X3),
                  U104(X1, X2, active X3) -> U104(X1, X2, X3),
                    U104(X1, mark X2, X3) -> U104(X1, X2, X3),
                  U104(X1, active X2, X3) -> U104(X1, X2, X3),
                    U104(mark X1, X2, X3) -> U104(X1, X2, X3),
                  U104(active X1, X2, X3) -> U104(X1, X2, X3),
                        U105(X1, mark X2) -> U105(X1, X2),
                      U105(X1, active X2) -> U105(X1, X2),
                        U105(mark X1, X2) -> U105(X1, X2),
                      U105(active X1, X2) -> U105(X1, X2),
                             isNat mark X -> isNat X,
                           isNat active X -> isNat X,
                              U106 mark X -> U106 X,
                            U106 active X -> U106 X,
                        isNatIList mark X -> isNatIList X,
                      isNatIList active X -> isNatIList X,
                         U12(X1, mark X2) -> U12(X1, X2),
                       U12(X1, active X2) -> U12(X1, X2),
                         U12(mark X1, X2) -> U12(X1, X2),
                       U12(active X1, X2) -> U12(X1, X2),
                         U11(X1, mark X2) -> U11(X1, X2),
                       U11(X1, active X2) -> U11(X1, X2),
                         U11(mark X1, X2) -> U11(X1, X2),
                       U11(active X1, X2) -> U11(X1, X2),
                    U112(X1, X2, mark X3) -> U112(X1, X2, X3),
                  U112(X1, X2, active X3) -> U112(X1, X2, X3),
                    U112(X1, mark X2, X3) -> U112(X1, X2, X3),
                  U112(X1, active X2, X3) -> U112(X1, X2, X3),
                    U112(mark X1, X2, X3) -> U112(X1, X2, X3),
                  U112(active X1, X2, X3) -> U112(X1, X2, X3),
                    U111(X1, X2, mark X3) -> U111(X1, X2, X3),
                  U111(X1, X2, active X3) -> U111(X1, X2, X3),
                    U111(X1, mark X2, X3) -> U111(X1, X2, X3),
                  U111(X1, active X2, X3) -> U111(X1, X2, X3),
                    U111(mark X1, X2, X3) -> U111(X1, X2, X3),
                  U111(active X1, X2, X3) -> U111(X1, X2, X3),
                    U113(X1, X2, mark X3) -> U113(X1, X2, X3),
                  U113(X1, X2, active X3) -> U113(X1, X2, X3),
                    U113(X1, mark X2, X3) -> U113(X1, X2, X3),
                  U113(X1, active X2, X3) -> U113(X1, X2, X3),
                    U113(mark X1, X2, X3) -> U113(X1, X2, X3),
                  U113(active X1, X2, X3) -> U113(X1, X2, X3),
                        U114(X1, mark X2) -> U114(X1, X2),
                      U114(X1, active X2) -> U114(X1, X2),
                        U114(mark X1, X2) -> U114(X1, X2),
                      U114(active X1, X2) -> U114(X1, X2),
                                 s mark X -> s X,
                               s active X -> s X,
                            length mark X -> length X,
                          length active X -> length X,
                               U13 mark X -> U13 X,
                             U13 active X -> U13 X,
                         isNatList mark X -> isNatList X,
                       isNatList active X -> isNatList X,
                              U122 mark X -> U122 X,
                            U122 active X -> U122 X,
                        U121(X1, mark X2) -> U121(X1, X2),
                      U121(X1, active X2) -> U121(X1, X2),
                        U121(mark X1, X2) -> U121(X1, X2),
                      U121(active X1, X2) -> U121(X1, X2),
                U132(X1, X2, X3, mark X4) -> U132(X1, X2, X3, X4),
              U132(X1, X2, X3, active X4) -> U132(X1, X2, X3, X4),
                U132(X1, X2, mark X3, X4) -> U132(X1, X2, X3, X4),
              U132(X1, X2, active X3, X4) -> U132(X1, X2, X3, X4),
                U132(X1, mark X2, X3, X4) -> U132(X1, X2, X3, X4),
              U132(X1, active X2, X3, X4) -> U132(X1, X2, X3, X4),
                U132(mark X1, X2, X3, X4) -> U132(X1, X2, X3, X4),
              U132(active X1, X2, X3, X4) -> U132(X1, X2, X3, X4),
                U131(X1, X2, X3, mark X4) -> U131(X1, X2, X3, X4),
              U131(X1, X2, X3, active X4) -> U131(X1, X2, X3, X4),
                U131(X1, X2, mark X3, X4) -> U131(X1, X2, X3, X4),
              U131(X1, X2, active X3, X4) -> U131(X1, X2, X3, X4),
                U131(X1, mark X2, X3, X4) -> U131(X1, X2, X3, X4),
              U131(X1, active X2, X3, X4) -> U131(X1, X2, X3, X4),
                U131(mark X1, X2, X3, X4) -> U131(X1, X2, X3, X4),
              U131(active X1, X2, X3, X4) -> U131(X1, X2, X3, X4),
                U133(X1, X2, X3, mark X4) -> U133(X1, X2, X3, X4),
              U133(X1, X2, X3, active X4) -> U133(X1, X2, X3, X4),
                U133(X1, X2, mark X3, X4) -> U133(X1, X2, X3, X4),
              U133(X1, X2, active X3, X4) -> U133(X1, X2, X3, X4),
                U133(X1, mark X2, X3, X4) -> U133(X1, X2, X3, X4),
              U133(X1, active X2, X3, X4) -> U133(X1, X2, X3, X4),
                U133(mark X1, X2, X3, X4) -> U133(X1, X2, X3, X4),
              U133(active X1, X2, X3, X4) -> U133(X1, X2, X3, X4),
                U134(X1, X2, X3, mark X4) -> U134(X1, X2, X3, X4),
              U134(X1, X2, X3, active X4) -> U134(X1, X2, X3, X4),
                U134(X1, X2, mark X3, X4) -> U134(X1, X2, X3, X4),
              U134(X1, X2, active X3, X4) -> U134(X1, X2, X3, X4),
                U134(X1, mark X2, X3, X4) -> U134(X1, X2, X3, X4),
              U134(X1, active X2, X3, X4) -> U134(X1, X2, X3, X4),
                U134(mark X1, X2, X3, X4) -> U134(X1, X2, X3, X4),
              U134(active X1, X2, X3, X4) -> U134(X1, X2, X3, X4),
                U135(X1, X2, X3, mark X4) -> U135(X1, X2, X3, X4),
              U135(X1, X2, X3, active X4) -> U135(X1, X2, X3, X4),
                U135(X1, X2, mark X3, X4) -> U135(X1, X2, X3, X4),
              U135(X1, X2, active X3, X4) -> U135(X1, X2, X3, X4),
                U135(X1, mark X2, X3, X4) -> U135(X1, X2, X3, X4),
              U135(X1, active X2, X3, X4) -> U135(X1, X2, X3, X4),
                U135(mark X1, X2, X3, X4) -> U135(X1, X2, X3, X4),
              U135(active X1, X2, X3, X4) -> U135(X1, X2, X3, X4),
                U136(X1, X2, X3, mark X4) -> U136(X1, X2, X3, X4),
              U136(X1, X2, X3, active X4) -> U136(X1, X2, X3, X4),
                U136(X1, X2, mark X3, X4) -> U136(X1, X2, X3, X4),
              U136(X1, X2, active X3, X4) -> U136(X1, X2, X3, X4),
                U136(X1, mark X2, X3, X4) -> U136(X1, X2, X3, X4),
              U136(X1, active X2, X3, X4) -> U136(X1, X2, X3, X4),
                U136(mark X1, X2, X3, X4) -> U136(X1, X2, X3, X4),
              U136(active X1, X2, X3, X4) -> U136(X1, X2, X3, X4),
                        take(X1, mark X2) -> take(X1, X2),
                      take(X1, active X2) -> take(X1, X2),
                        take(mark X1, X2) -> take(X1, X2),
                      take(active X1, X2) -> take(X1, X2),
                         U22(X1, mark X2) -> U22(X1, X2),
                       U22(X1, active X2) -> U22(X1, X2),
                         U22(mark X1, X2) -> U22(X1, X2),
                       U22(active X1, X2) -> U22(X1, X2),
                         U21(X1, mark X2) -> U21(X1, X2),
                       U21(X1, active X2) -> U21(X1, X2),
                         U21(mark X1, X2) -> U21(X1, X2),
                       U21(active X1, X2) -> U21(X1, X2),
                               U23 mark X -> U23 X,
                             U23 active X -> U23 X,
                         U32(X1, mark X2) -> U32(X1, X2),
                       U32(X1, active X2) -> U32(X1, X2),
                         U32(mark X1, X2) -> U32(X1, X2),
                       U32(active X1, X2) -> U32(X1, X2),
                         U31(X1, mark X2) -> U31(X1, X2),
                       U31(X1, active X2) -> U31(X1, X2),
                         U31(mark X1, X2) -> U31(X1, X2),
                       U31(active X1, X2) -> U31(X1, X2),
                               U33 mark X -> U33 X,
                             U33 active X -> U33 X,
                     U42(X1, X2, mark X3) -> U42(X1, X2, X3),
                   U42(X1, X2, active X3) -> U42(X1, X2, X3),
                     U42(X1, mark X2, X3) -> U42(X1, X2, X3),
                   U42(X1, active X2, X3) -> U42(X1, X2, X3),
                     U42(mark X1, X2, X3) -> U42(X1, X2, X3),
                   U42(active X1, X2, X3) -> U42(X1, X2, X3),
                     U41(X1, X2, mark X3) -> U41(X1, X2, X3),
                   U41(X1, X2, active X3) -> U41(X1, X2, X3),
                     U41(X1, mark X2, X3) -> U41(X1, X2, X3),
                   U41(X1, active X2, X3) -> U41(X1, X2, X3),
                     U41(mark X1, X2, X3) -> U41(X1, X2, X3),
                   U41(active X1, X2, X3) -> U41(X1, X2, X3),
                     U43(X1, X2, mark X3) -> U43(X1, X2, X3),
                   U43(X1, X2, active X3) -> U43(X1, X2, X3),
                     U43(X1, mark X2, X3) -> U43(X1, X2, X3),
                   U43(X1, active X2, X3) -> U43(X1, X2, X3),
                     U43(mark X1, X2, X3) -> U43(X1, X2, X3),
                   U43(active X1, X2, X3) -> U43(X1, X2, X3),
                     U44(X1, X2, mark X3) -> U44(X1, X2, X3),
                   U44(X1, X2, active X3) -> U44(X1, X2, X3),
                     U44(X1, mark X2, X3) -> U44(X1, X2, X3),
                   U44(X1, active X2, X3) -> U44(X1, X2, X3),
                     U44(mark X1, X2, X3) -> U44(X1, X2, X3),
                   U44(active X1, X2, X3) -> U44(X1, X2, X3),
                         U45(X1, mark X2) -> U45(X1, X2),
                       U45(X1, active X2) -> U45(X1, X2),
                         U45(mark X1, X2) -> U45(X1, X2),
                       U45(active X1, X2) -> U45(X1, X2),
                               U46 mark X -> U46 X,
                             U46 active X -> U46 X,
                               U52 mark X -> U52 X,
                             U52 active X -> U52 X,
                         U51(X1, mark X2) -> U51(X1, X2),
                       U51(X1, active X2) -> U51(X1, X2),
                         U51(mark X1, X2) -> U51(X1, X2),
                       U51(active X1, X2) -> U51(X1, X2),
                               U62 mark X -> U62 X,
                             U62 active X -> U62 X,
                         U61(X1, mark X2) -> U61(X1, X2),
                       U61(X1, active X2) -> U61(X1, X2),
                         U61(mark X1, X2) -> U61(X1, X2),
                       U61(active X1, X2) -> U61(X1, X2),
                               U71 mark X -> U71 X,
                             U71 active X -> U71 X,
                               U81 mark X -> U81 X,
                             U81 active X -> U81 X,
                     U92(X1, X2, mark X3) -> U92(X1, X2, X3),
                   U92(X1, X2, active X3) -> U92(X1, X2, X3),
                     U92(X1, mark X2, X3) -> U92(X1, X2, X3),
                   U92(X1, active X2, X3) -> U92(X1, X2, X3),
                     U92(mark X1, X2, X3) -> U92(X1, X2, X3),
                   U92(active X1, X2, X3) -> U92(X1, X2, X3),
                     U91(X1, X2, mark X3) -> U91(X1, X2, X3),
                   U91(X1, X2, active X3) -> U91(X1, X2, X3),
                     U91(X1, mark X2, X3) -> U91(X1, X2, X3),
                   U91(X1, active X2, X3) -> U91(X1, X2, X3),
                     U91(mark X1, X2, X3) -> U91(X1, X2, X3),
                   U91(active X1, X2, X3) -> U91(X1, X2, X3),
                     U93(X1, X2, mark X3) -> U93(X1, X2, X3),
                   U93(X1, X2, active X3) -> U93(X1, X2, X3),
                     U93(X1, mark X2, X3) -> U93(X1, X2, X3),
                   U93(X1, active X2, X3) -> U93(X1, X2, X3),
                     U93(mark X1, X2, X3) -> U93(X1, X2, X3),
                   U93(active X1, X2, X3) -> U93(X1, X2, X3),
                     U94(X1, X2, mark X3) -> U94(X1, X2, X3),
                   U94(X1, X2, active X3) -> U94(X1, X2, X3),
                     U94(X1, mark X2, X3) -> U94(X1, X2, X3),
                   U94(X1, active X2, X3) -> U94(X1, X2, X3),
                     U94(mark X1, X2, X3) -> U94(X1, X2, X3),
                   U94(active X1, X2, X3) -> U94(X1, X2, X3),
                         U95(X1, mark X2) -> U95(X1, X2),
                       U95(X1, active X2) -> U95(X1, X2),
                         U95(mark X1, X2) -> U95(X1, X2),
                       U95(active X1, X2) -> U95(X1, X2),
                               U96 mark X -> U96 X,
                             U96 active X -> U96 X
      }
      Open
     
     SCC (6):
      Strict:
       {  U43#(X1, X2, mark X3) -> U43#(X1, X2, X3),
        U43#(X1, X2, active X3) -> U43#(X1, X2, X3),
          U43#(X1, mark X2, X3) -> U43#(X1, X2, X3),
        U43#(X1, active X2, X3) -> U43#(X1, X2, X3),
          U43#(mark X1, X2, X3) -> U43#(X1, X2, X3),
        U43#(active X1, X2, X3) -> U43#(X1, X2, X3)}
      Weak:
      {
                        mark cons(X1, X2) -> active cons(mark X1, X2),
                                 mark 0() -> active 0(),
                             mark zeros() -> active zeros(),
                    mark U102(X1, X2, X3) -> active U102(mark X1, X2, X3),
                         mark isNatKind X -> active isNatKind X,
                    mark U101(X1, X2, X3) -> active U101(mark X1, X2, X3),
                                mark tt() -> active tt(),
                    mark U103(X1, X2, X3) -> active U103(mark X1, X2, X3),
                    mark isNatIListKind X -> active isNatIListKind X,
                    mark U104(X1, X2, X3) -> active U104(mark X1, X2, X3),
                        mark U105(X1, X2) -> active U105(mark X1, X2),
                             mark isNat X -> active isNat X,
                              mark U106 X -> active U106 mark X,
                        mark isNatIList X -> active isNatIList X,
                         mark U12(X1, X2) -> active U12(mark X1, X2),
                         mark U11(X1, X2) -> active U11(mark X1, X2),
                    mark U112(X1, X2, X3) -> active U112(mark X1, X2, X3),
                    mark U111(X1, X2, X3) -> active U111(mark X1, X2, X3),
                    mark U113(X1, X2, X3) -> active U113(mark X1, X2, X3),
                        mark U114(X1, X2) -> active U114(mark X1, X2),
                                 mark s X -> active s mark X,
                            mark length X -> active length mark X,
                               mark U13 X -> active U13 mark X,
                         mark isNatList X -> active isNatList X,
                              mark U122 X -> active U122 mark X,
                        mark U121(X1, X2) -> active U121(mark X1, X2),
                               mark nil() -> active nil(),
                mark U132(X1, X2, X3, X4) -> active U132(mark X1, X2, X3, X4),
                mark U131(X1, X2, X3, X4) -> active U131(mark X1, X2, X3, X4),
                mark U133(X1, X2, X3, X4) -> active U133(mark X1, X2, X3, X4),
                mark U134(X1, X2, X3, X4) -> active U134(mark X1, X2, X3, X4),
                mark U135(X1, X2, X3, X4) -> active U135(mark X1, X2, X3, X4),
                mark U136(X1, X2, X3, X4) -> active U136(mark X1, X2, X3, X4),
                        mark take(X1, X2) -> active take(mark X1, mark X2),
                         mark U22(X1, X2) -> active U22(mark X1, X2),
                         mark U21(X1, X2) -> active U21(mark X1, X2),
                               mark U23 X -> active U23 mark X,
                         mark U32(X1, X2) -> active U32(mark X1, X2),
                         mark U31(X1, X2) -> active U31(mark X1, X2),
                               mark U33 X -> active U33 mark X,
                     mark U42(X1, X2, X3) -> active U42(mark X1, X2, X3),
                     mark U41(X1, X2, X3) -> active U41(mark X1, X2, X3),
                     mark U43(X1, X2, X3) -> active U43(mark X1, X2, X3),
                     mark U44(X1, X2, X3) -> active U44(mark X1, X2, X3),
                         mark U45(X1, X2) -> active U45(mark X1, X2),
                               mark U46 X -> active U46 mark X,
                               mark U52 X -> active U52 mark X,
                         mark U51(X1, X2) -> active U51(mark X1, X2),
                               mark U62 X -> active U62 mark X,
                         mark U61(X1, X2) -> active U61(mark X1, X2),
                               mark U71 X -> active U71 mark X,
                               mark U81 X -> active U81 mark X,
                     mark U92(X1, X2, X3) -> active U92(mark X1, X2, X3),
                     mark U91(X1, X2, X3) -> active U91(mark X1, X2, X3),
                     mark U93(X1, X2, X3) -> active U93(mark X1, X2, X3),
                     mark U94(X1, X2, X3) -> active U94(mark X1, X2, X3),
                         mark U95(X1, X2) -> active U95(mark X1, X2),
                               mark U96 X -> active U96 mark X,
                        cons(X1, mark X2) -> cons(X1, X2),
                      cons(X1, active X2) -> cons(X1, X2),
                        cons(mark X1, X2) -> cons(X1, X2),
                      cons(active X1, X2) -> cons(X1, X2),
                           active zeros() -> mark cons(0(), zeros()),
                active U102(tt(), V1, V2) -> mark U103(isNatIListKind V2, V1, V2),
                     active isNatKind 0() -> mark tt(),
                    active isNatKind s V1 -> mark U81 isNatKind V1,
               active isNatKind length V1 -> mark U71 isNatIListKind V1,
                active U101(tt(), V1, V2) -> mark U102(isNatKind V1, V1, V2),
                active U103(tt(), V1, V2) -> mark U104(isNatIListKind V2, V1, V2),
       active isNatIListKind cons(V1, V2) -> mark U51(isNatKind V1, V2),
            active isNatIListKind zeros() -> mark tt(),
              active isNatIListKind nil() -> mark tt(),
       active isNatIListKind take(V1, V2) -> mark U61(isNatKind V1, V2),
                active U104(tt(), V1, V2) -> mark U105(isNat V1, V2),
                    active U105(tt(), V2) -> mark U106 isNatIList V2,
                         active isNat 0() -> mark tt(),
                        active isNat s V1 -> mark U21(isNatKind V1, V1),
                   active isNat length V1 -> mark U11(isNatIListKind V1, V1),
                         active U106 tt() -> mark tt(),
                      active isNatIList V -> mark U31(isNatIListKind V, V),
           active isNatIList cons(V1, V2) -> mark U41(isNatKind V1, V1, V2),
                active isNatIList zeros() -> mark tt(),
                     active U12(tt(), V1) -> mark U13 isNatList V1,
                     active U11(tt(), V1) -> mark U12(isNatIListKind V1, V1),
                  active U112(tt(), L, N) -> mark U113(isNat N, L, N),
                  active U111(tt(), L, N) -> mark U112(isNatIListKind L, L, N),
                  active U113(tt(), L, N) -> mark U114(isNatKind N, L),
                     active U114(tt(), L) -> mark s length L,
                 active length cons(N, L) -> mark U111(isNatList L, L, N),
                      active length nil() -> mark 0(),
                          active U13 tt() -> mark tt(),
            active isNatList cons(V1, V2) -> mark U91(isNatKind V1, V1, V2),
                   active isNatList nil() -> mark tt(),
            active isNatList take(V1, V2) -> mark U101(isNatKind V1, V1, V2),
                         active U122 tt() -> mark nil(),
                    active U121(tt(), IL) -> mark U122 isNatIListKind IL,
              active U132(tt(), IL, M, N) -> mark U133(isNat M, IL, M, N),
              active U131(tt(), IL, M, N) -> mark U132(isNatIListKind IL, IL, M, N),
              active U133(tt(), IL, M, N) -> mark U134(isNatKind M, IL, M, N),
              active U134(tt(), IL, M, N) -> mark U135(isNat N, IL, M, N),
              active U135(tt(), IL, M, N) -> mark U136(isNatKind N, IL, M, N),
              active U136(tt(), IL, M, N) -> mark cons(N, take(M, IL)),
                     active take(0(), IL) -> mark U121(isNatIList IL, IL),
            active take(s M, cons(N, IL)) -> mark U131(isNatIList IL, IL, M, N),
                     active U22(tt(), V1) -> mark U23 isNat V1,
                     active U21(tt(), V1) -> mark U22(isNatKind V1, V1),
                          active U23 tt() -> mark tt(),
                      active U32(tt(), V) -> mark U33 isNatList V,
                      active U31(tt(), V) -> mark U32(isNatIListKind V, V),
                          active U33 tt() -> mark tt(),
                 active U42(tt(), V1, V2) -> mark U43(isNatIListKind V2, V1, V2),
                 active U41(tt(), V1, V2) -> mark U42(isNatKind V1, V1, V2),
                 active U43(tt(), V1, V2) -> mark U44(isNatIListKind V2, V1, V2),
                 active U44(tt(), V1, V2) -> mark U45(isNat V1, V2),
                     active U45(tt(), V2) -> mark U46 isNatIList V2,
                          active U46 tt() -> mark tt(),
                          active U52 tt() -> mark tt(),
                     active U51(tt(), V2) -> mark U52 isNatIListKind V2,
                          active U62 tt() -> mark tt(),
                     active U61(tt(), V2) -> mark U62 isNatIListKind V2,
                          active U71 tt() -> mark tt(),
                          active U81 tt() -> mark tt(),
                 active U92(tt(), V1, V2) -> mark U93(isNatIListKind V2, V1, V2),
                 active U91(tt(), V1, V2) -> mark U92(isNatKind V1, V1, V2),
                 active U93(tt(), V1, V2) -> mark U94(isNatIListKind V2, V1, V2),
                 active U94(tt(), V1, V2) -> mark U95(isNat V1, V2),
                     active U95(tt(), V2) -> mark U96 isNatList V2,
                          active U96 tt() -> mark tt(),
                    U102(X1, X2, mark X3) -> U102(X1, X2, X3),
                  U102(X1, X2, active X3) -> U102(X1, X2, X3),
                    U102(X1, mark X2, X3) -> U102(X1, X2, X3),
                  U102(X1, active X2, X3) -> U102(X1, X2, X3),
                    U102(mark X1, X2, X3) -> U102(X1, X2, X3),
                  U102(active X1, X2, X3) -> U102(X1, X2, X3),
                         isNatKind mark X -> isNatKind X,
                       isNatKind active X -> isNatKind X,
                    U101(X1, X2, mark X3) -> U101(X1, X2, X3),
                  U101(X1, X2, active X3) -> U101(X1, X2, X3),
                    U101(X1, mark X2, X3) -> U101(X1, X2, X3),
                  U101(X1, active X2, X3) -> U101(X1, X2, X3),
                    U101(mark X1, X2, X3) -> U101(X1, X2, X3),
                  U101(active X1, X2, X3) -> U101(X1, X2, X3),
                    U103(X1, X2, mark X3) -> U103(X1, X2, X3),
                  U103(X1, X2, active X3) -> U103(X1, X2, X3),
                    U103(X1, mark X2, X3) -> U103(X1, X2, X3),
                  U103(X1, active X2, X3) -> U103(X1, X2, X3),
                    U103(mark X1, X2, X3) -> U103(X1, X2, X3),
                  U103(active X1, X2, X3) -> U103(X1, X2, X3),
                    isNatIListKind mark X -> isNatIListKind X,
                  isNatIListKind active X -> isNatIListKind X,
                    U104(X1, X2, mark X3) -> U104(X1, X2, X3),
                  U104(X1, X2, active X3) -> U104(X1, X2, X3),
                    U104(X1, mark X2, X3) -> U104(X1, X2, X3),
                  U104(X1, active X2, X3) -> U104(X1, X2, X3),
                    U104(mark X1, X2, X3) -> U104(X1, X2, X3),
                  U104(active X1, X2, X3) -> U104(X1, X2, X3),
                        U105(X1, mark X2) -> U105(X1, X2),
                      U105(X1, active X2) -> U105(X1, X2),
                        U105(mark X1, X2) -> U105(X1, X2),
                      U105(active X1, X2) -> U105(X1, X2),
                             isNat mark X -> isNat X,
                           isNat active X -> isNat X,
                              U106 mark X -> U106 X,
                            U106 active X -> U106 X,
                        isNatIList mark X -> isNatIList X,
                      isNatIList active X -> isNatIList X,
                         U12(X1, mark X2) -> U12(X1, X2),
                       U12(X1, active X2) -> U12(X1, X2),
                         U12(mark X1, X2) -> U12(X1, X2),
                       U12(active X1, X2) -> U12(X1, X2),
                         U11(X1, mark X2) -> U11(X1, X2),
                       U11(X1, active X2) -> U11(X1, X2),
                         U11(mark X1, X2) -> U11(X1, X2),
                       U11(active X1, X2) -> U11(X1, X2),
                    U112(X1, X2, mark X3) -> U112(X1, X2, X3),
                  U112(X1, X2, active X3) -> U112(X1, X2, X3),
                    U112(X1, mark X2, X3) -> U112(X1, X2, X3),
                  U112(X1, active X2, X3) -> U112(X1, X2, X3),
                    U112(mark X1, X2, X3) -> U112(X1, X2, X3),
                  U112(active X1, X2, X3) -> U112(X1, X2, X3),
                    U111(X1, X2, mark X3) -> U111(X1, X2, X3),
                  U111(X1, X2, active X3) -> U111(X1, X2, X3),
                    U111(X1, mark X2, X3) -> U111(X1, X2, X3),
                  U111(X1, active X2, X3) -> U111(X1, X2, X3),
                    U111(mark X1, X2, X3) -> U111(X1, X2, X3),
                  U111(active X1, X2, X3) -> U111(X1, X2, X3),
                    U113(X1, X2, mark X3) -> U113(X1, X2, X3),
                  U113(X1, X2, active X3) -> U113(X1, X2, X3),
                    U113(X1, mark X2, X3) -> U113(X1, X2, X3),
                  U113(X1, active X2, X3) -> U113(X1, X2, X3),
                    U113(mark X1, X2, X3) -> U113(X1, X2, X3),
                  U113(active X1, X2, X3) -> U113(X1, X2, X3),
                        U114(X1, mark X2) -> U114(X1, X2),
                      U114(X1, active X2) -> U114(X1, X2),
                        U114(mark X1, X2) -> U114(X1, X2),
                      U114(active X1, X2) -> U114(X1, X2),
                                 s mark X -> s X,
                               s active X -> s X,
                            length mark X -> length X,
                          length active X -> length X,
                               U13 mark X -> U13 X,
                             U13 active X -> U13 X,
                         isNatList mark X -> isNatList X,
                       isNatList active X -> isNatList X,
                              U122 mark X -> U122 X,
                            U122 active X -> U122 X,
                        U121(X1, mark X2) -> U121(X1, X2),
                      U121(X1, active X2) -> U121(X1, X2),
                        U121(mark X1, X2) -> U121(X1, X2),
                      U121(active X1, X2) -> U121(X1, X2),
                U132(X1, X2, X3, mark X4) -> U132(X1, X2, X3, X4),
              U132(X1, X2, X3, active X4) -> U132(X1, X2, X3, X4),
                U132(X1, X2, mark X3, X4) -> U132(X1, X2, X3, X4),
              U132(X1, X2, active X3, X4) -> U132(X1, X2, X3, X4),
                U132(X1, mark X2, X3, X4) -> U132(X1, X2, X3, X4),
              U132(X1, active X2, X3, X4) -> U132(X1, X2, X3, X4),
                U132(mark X1, X2, X3, X4) -> U132(X1, X2, X3, X4),
              U132(active X1, X2, X3, X4) -> U132(X1, X2, X3, X4),
                U131(X1, X2, X3, mark X4) -> U131(X1, X2, X3, X4),
              U131(X1, X2, X3, active X4) -> U131(X1, X2, X3, X4),
                U131(X1, X2, mark X3, X4) -> U131(X1, X2, X3, X4),
              U131(X1, X2, active X3, X4) -> U131(X1, X2, X3, X4),
                U131(X1, mark X2, X3, X4) -> U131(X1, X2, X3, X4),
              U131(X1, active X2, X3, X4) -> U131(X1, X2, X3, X4),
                U131(mark X1, X2, X3, X4) -> U131(X1, X2, X3, X4),
              U131(active X1, X2, X3, X4) -> U131(X1, X2, X3, X4),
                U133(X1, X2, X3, mark X4) -> U133(X1, X2, X3, X4),
              U133(X1, X2, X3, active X4) -> U133(X1, X2, X3, X4),
                U133(X1, X2, mark X3, X4) -> U133(X1, X2, X3, X4),
              U133(X1, X2, active X3, X4) -> U133(X1, X2, X3, X4),
                U133(X1, mark X2, X3, X4) -> U133(X1, X2, X3, X4),
              U133(X1, active X2, X3, X4) -> U133(X1, X2, X3, X4),
                U133(mark X1, X2, X3, X4) -> U133(X1, X2, X3, X4),
              U133(active X1, X2, X3, X4) -> U133(X1, X2, X3, X4),
                U134(X1, X2, X3, mark X4) -> U134(X1, X2, X3, X4),
              U134(X1, X2, X3, active X4) -> U134(X1, X2, X3, X4),
                U134(X1, X2, mark X3, X4) -> U134(X1, X2, X3, X4),
              U134(X1, X2, active X3, X4) -> U134(X1, X2, X3, X4),
                U134(X1, mark X2, X3, X4) -> U134(X1, X2, X3, X4),
              U134(X1, active X2, X3, X4) -> U134(X1, X2, X3, X4),
                U134(mark X1, X2, X3, X4) -> U134(X1, X2, X3, X4),
              U134(active X1, X2, X3, X4) -> U134(X1, X2, X3, X4),
                U135(X1, X2, X3, mark X4) -> U135(X1, X2, X3, X4),
              U135(X1, X2, X3, active X4) -> U135(X1, X2, X3, X4),
                U135(X1, X2, mark X3, X4) -> U135(X1, X2, X3, X4),
              U135(X1, X2, active X3, X4) -> U135(X1, X2, X3, X4),
                U135(X1, mark X2, X3, X4) -> U135(X1, X2, X3, X4),
              U135(X1, active X2, X3, X4) -> U135(X1, X2, X3, X4),
                U135(mark X1, X2, X3, X4) -> U135(X1, X2, X3, X4),
              U135(active X1, X2, X3, X4) -> U135(X1, X2, X3, X4),
                U136(X1, X2, X3, mark X4) -> U136(X1, X2, X3, X4),
              U136(X1, X2, X3, active X4) -> U136(X1, X2, X3, X4),
                U136(X1, X2, mark X3, X4) -> U136(X1, X2, X3, X4),
              U136(X1, X2, active X3, X4) -> U136(X1, X2, X3, X4),
                U136(X1, mark X2, X3, X4) -> U136(X1, X2, X3, X4),
              U136(X1, active X2, X3, X4) -> U136(X1, X2, X3, X4),
                U136(mark X1, X2, X3, X4) -> U136(X1, X2, X3, X4),
              U136(active X1, X2, X3, X4) -> U136(X1, X2, X3, X4),
                        take(X1, mark X2) -> take(X1, X2),
                      take(X1, active X2) -> take(X1, X2),
                        take(mark X1, X2) -> take(X1, X2),
                      take(active X1, X2) -> take(X1, X2),
                         U22(X1, mark X2) -> U22(X1, X2),
                       U22(X1, active X2) -> U22(X1, X2),
                         U22(mark X1, X2) -> U22(X1, X2),
                       U22(active X1, X2) -> U22(X1, X2),
                         U21(X1, mark X2) -> U21(X1, X2),
                       U21(X1, active X2) -> U21(X1, X2),
                         U21(mark X1, X2) -> U21(X1, X2),
                       U21(active X1, X2) -> U21(X1, X2),
                               U23 mark X -> U23 X,
                             U23 active X -> U23 X,
                         U32(X1, mark X2) -> U32(X1, X2),
                       U32(X1, active X2) -> U32(X1, X2),
                         U32(mark X1, X2) -> U32(X1, X2),
                       U32(active X1, X2) -> U32(X1, X2),
                         U31(X1, mark X2) -> U31(X1, X2),
                       U31(X1, active X2) -> U31(X1, X2),
                         U31(mark X1, X2) -> U31(X1, X2),
                       U31(active X1, X2) -> U31(X1, X2),
                               U33 mark X -> U33 X,
                             U33 active X -> U33 X,
                     U42(X1, X2, mark X3) -> U42(X1, X2, X3),
                   U42(X1, X2, active X3) -> U42(X1, X2, X3),
                     U42(X1, mark X2, X3) -> U42(X1, X2, X3),
                   U42(X1, active X2, X3) -> U42(X1, X2, X3),
                     U42(mark X1, X2, X3) -> U42(X1, X2, X3),
                   U42(active X1, X2, X3) -> U42(X1, X2, X3),
                     U41(X1, X2, mark X3) -> U41(X1, X2, X3),
                   U41(X1, X2, active X3) -> U41(X1, X2, X3),
                     U41(X1, mark X2, X3) -> U41(X1, X2, X3),
                   U41(X1, active X2, X3) -> U41(X1, X2, X3),
                     U41(mark X1, X2, X3) -> U41(X1, X2, X3),
                   U41(active X1, X2, X3) -> U41(X1, X2, X3),
                     U43(X1, X2, mark X3) -> U43(X1, X2, X3),
                   U43(X1, X2, active X3) -> U43(X1, X2, X3),
                     U43(X1, mark X2, X3) -> U43(X1, X2, X3),
                   U43(X1, active X2, X3) -> U43(X1, X2, X3),
                     U43(mark X1, X2, X3) -> U43(X1, X2, X3),
                   U43(active X1, X2, X3) -> U43(X1, X2, X3),
                     U44(X1, X2, mark X3) -> U44(X1, X2, X3),
                   U44(X1, X2, active X3) -> U44(X1, X2, X3),
                     U44(X1, mark X2, X3) -> U44(X1, X2, X3),
                   U44(X1, active X2, X3) -> U44(X1, X2, X3),
                     U44(mark X1, X2, X3) -> U44(X1, X2, X3),
                   U44(active X1, X2, X3) -> U44(X1, X2, X3),
                         U45(X1, mark X2) -> U45(X1, X2),
                       U45(X1, active X2) -> U45(X1, X2),
                         U45(mark X1, X2) -> U45(X1, X2),
                       U45(active X1, X2) -> U45(X1, X2),
                               U46 mark X -> U46 X,
                             U46 active X -> U46 X,
                               U52 mark X -> U52 X,
                             U52 active X -> U52 X,
                         U51(X1, mark X2) -> U51(X1, X2),
                       U51(X1, active X2) -> U51(X1, X2),
                         U51(mark X1, X2) -> U51(X1, X2),
                       U51(active X1, X2) -> U51(X1, X2),
                               U62 mark X -> U62 X,
                             U62 active X -> U62 X,
                         U61(X1, mark X2) -> U61(X1, X2),
                       U61(X1, active X2) -> U61(X1, X2),
                         U61(mark X1, X2) -> U61(X1, X2),
                       U61(active X1, X2) -> U61(X1, X2),
                               U71 mark X -> U71 X,
                             U71 active X -> U71 X,
                               U81 mark X -> U81 X,
                             U81 active X -> U81 X,
                     U92(X1, X2, mark X3) -> U92(X1, X2, X3),
                   U92(X1, X2, active X3) -> U92(X1, X2, X3),
                     U92(X1, mark X2, X3) -> U92(X1, X2, X3),
                   U92(X1, active X2, X3) -> U92(X1, X2, X3),
                     U92(mark X1, X2, X3) -> U92(X1, X2, X3),
                   U92(active X1, X2, X3) -> U92(X1, X2, X3),
                     U91(X1, X2, mark X3) -> U91(X1, X2, X3),
                   U91(X1, X2, active X3) -> U91(X1, X2, X3),
                     U91(X1, mark X2, X3) -> U91(X1, X2, X3),
                   U91(X1, active X2, X3) -> U91(X1, X2, X3),
                     U91(mark X1, X2, X3) -> U91(X1, X2, X3),
                   U91(active X1, X2, X3) -> U91(X1, X2, X3),
                     U93(X1, X2, mark X3) -> U93(X1, X2, X3),
                   U93(X1, X2, active X3) -> U93(X1, X2, X3),
                     U93(X1, mark X2, X3) -> U93(X1, X2, X3),
                   U93(X1, active X2, X3) -> U93(X1, X2, X3),
                     U93(mark X1, X2, X3) -> U93(X1, X2, X3),
                   U93(active X1, X2, X3) -> U93(X1, X2, X3),
                     U94(X1, X2, mark X3) -> U94(X1, X2, X3),
                   U94(X1, X2, active X3) -> U94(X1, X2, X3),
                     U94(X1, mark X2, X3) -> U94(X1, X2, X3),
                   U94(X1, active X2, X3) -> U94(X1, X2, X3),
                     U94(mark X1, X2, X3) -> U94(X1, X2, X3),
                   U94(active X1, X2, X3) -> U94(X1, X2, X3),
                         U95(X1, mark X2) -> U95(X1, X2),
                       U95(X1, active X2) -> U95(X1, X2),
                         U95(mark X1, X2) -> U95(X1, X2),
                       U95(active X1, X2) -> U95(X1, X2),
                               U96 mark X -> U96 X,
                             U96 active X -> U96 X
      }
      Open
     
     SCC (6):
      Strict:
       {  U41#(X1, X2, mark X3) -> U41#(X1, X2, X3),
        U41#(X1, X2, active X3) -> U41#(X1, X2, X3),
          U41#(X1, mark X2, X3) -> U41#(X1, X2, X3),
        U41#(X1, active X2, X3) -> U41#(X1, X2, X3),
          U41#(mark X1, X2, X3) -> U41#(X1, X2, X3),
        U41#(active X1, X2, X3) -> U41#(X1, X2, X3)}
      Weak:
      {
                        mark cons(X1, X2) -> active cons(mark X1, X2),
                                 mark 0() -> active 0(),
                             mark zeros() -> active zeros(),
                    mark U102(X1, X2, X3) -> active U102(mark X1, X2, X3),
                         mark isNatKind X -> active isNatKind X,
                    mark U101(X1, X2, X3) -> active U101(mark X1, X2, X3),
                                mark tt() -> active tt(),
                    mark U103(X1, X2, X3) -> active U103(mark X1, X2, X3),
                    mark isNatIListKind X -> active isNatIListKind X,
                    mark U104(X1, X2, X3) -> active U104(mark X1, X2, X3),
                        mark U105(X1, X2) -> active U105(mark X1, X2),
                             mark isNat X -> active isNat X,
                              mark U106 X -> active U106 mark X,
                        mark isNatIList X -> active isNatIList X,
                         mark U12(X1, X2) -> active U12(mark X1, X2),
                         mark U11(X1, X2) -> active U11(mark X1, X2),
                    mark U112(X1, X2, X3) -> active U112(mark X1, X2, X3),
                    mark U111(X1, X2, X3) -> active U111(mark X1, X2, X3),
                    mark U113(X1, X2, X3) -> active U113(mark X1, X2, X3),
                        mark U114(X1, X2) -> active U114(mark X1, X2),
                                 mark s X -> active s mark X,
                            mark length X -> active length mark X,
                               mark U13 X -> active U13 mark X,
                         mark isNatList X -> active isNatList X,
                              mark U122 X -> active U122 mark X,
                        mark U121(X1, X2) -> active U121(mark X1, X2),
                               mark nil() -> active nil(),
                mark U132(X1, X2, X3, X4) -> active U132(mark X1, X2, X3, X4),
                mark U131(X1, X2, X3, X4) -> active U131(mark X1, X2, X3, X4),
                mark U133(X1, X2, X3, X4) -> active U133(mark X1, X2, X3, X4),
                mark U134(X1, X2, X3, X4) -> active U134(mark X1, X2, X3, X4),
                mark U135(X1, X2, X3, X4) -> active U135(mark X1, X2, X3, X4),
                mark U136(X1, X2, X3, X4) -> active U136(mark X1, X2, X3, X4),
                        mark take(X1, X2) -> active take(mark X1, mark X2),
                         mark U22(X1, X2) -> active U22(mark X1, X2),
                         mark U21(X1, X2) -> active U21(mark X1, X2),
                               mark U23 X -> active U23 mark X,
                         mark U32(X1, X2) -> active U32(mark X1, X2),
                         mark U31(X1, X2) -> active U31(mark X1, X2),
                               mark U33 X -> active U33 mark X,
                     mark U42(X1, X2, X3) -> active U42(mark X1, X2, X3),
                     mark U41(X1, X2, X3) -> active U41(mark X1, X2, X3),
                     mark U43(X1, X2, X3) -> active U43(mark X1, X2, X3),
                     mark U44(X1, X2, X3) -> active U44(mark X1, X2, X3),
                         mark U45(X1, X2) -> active U45(mark X1, X2),
                               mark U46 X -> active U46 mark X,
                               mark U52 X -> active U52 mark X,
                         mark U51(X1, X2) -> active U51(mark X1, X2),
                               mark U62 X -> active U62 mark X,
                         mark U61(X1, X2) -> active U61(mark X1, X2),
                               mark U71 X -> active U71 mark X,
                               mark U81 X -> active U81 mark X,
                     mark U92(X1, X2, X3) -> active U92(mark X1, X2, X3),
                     mark U91(X1, X2, X3) -> active U91(mark X1, X2, X3),
                     mark U93(X1, X2, X3) -> active U93(mark X1, X2, X3),
                     mark U94(X1, X2, X3) -> active U94(mark X1, X2, X3),
                         mark U95(X1, X2) -> active U95(mark X1, X2),
                               mark U96 X -> active U96 mark X,
                        cons(X1, mark X2) -> cons(X1, X2),
                      cons(X1, active X2) -> cons(X1, X2),
                        cons(mark X1, X2) -> cons(X1, X2),
                      cons(active X1, X2) -> cons(X1, X2),
                           active zeros() -> mark cons(0(), zeros()),
                active U102(tt(), V1, V2) -> mark U103(isNatIListKind V2, V1, V2),
                     active isNatKind 0() -> mark tt(),
                    active isNatKind s V1 -> mark U81 isNatKind V1,
               active isNatKind length V1 -> mark U71 isNatIListKind V1,
                active U101(tt(), V1, V2) -> mark U102(isNatKind V1, V1, V2),
                active U103(tt(), V1, V2) -> mark U104(isNatIListKind V2, V1, V2),
       active isNatIListKind cons(V1, V2) -> mark U51(isNatKind V1, V2),
            active isNatIListKind zeros() -> mark tt(),
              active isNatIListKind nil() -> mark tt(),
       active isNatIListKind take(V1, V2) -> mark U61(isNatKind V1, V2),
                active U104(tt(), V1, V2) -> mark U105(isNat V1, V2),
                    active U105(tt(), V2) -> mark U106 isNatIList V2,
                         active isNat 0() -> mark tt(),
                        active isNat s V1 -> mark U21(isNatKind V1, V1),
                   active isNat length V1 -> mark U11(isNatIListKind V1, V1),
                         active U106 tt() -> mark tt(),
                      active isNatIList V -> mark U31(isNatIListKind V, V),
           active isNatIList cons(V1, V2) -> mark U41(isNatKind V1, V1, V2),
                active isNatIList zeros() -> mark tt(),
                     active U12(tt(), V1) -> mark U13 isNatList V1,
                     active U11(tt(), V1) -> mark U12(isNatIListKind V1, V1),
                  active U112(tt(), L, N) -> mark U113(isNat N, L, N),
                  active U111(tt(), L, N) -> mark U112(isNatIListKind L, L, N),
                  active U113(tt(), L, N) -> mark U114(isNatKind N, L),
                     active U114(tt(), L) -> mark s length L,
                 active length cons(N, L) -> mark U111(isNatList L, L, N),
                      active length nil() -> mark 0(),
                          active U13 tt() -> mark tt(),
            active isNatList cons(V1, V2) -> mark U91(isNatKind V1, V1, V2),
                   active isNatList nil() -> mark tt(),
            active isNatList take(V1, V2) -> mark U101(isNatKind V1, V1, V2),
                         active U122 tt() -> mark nil(),
                    active U121(tt(), IL) -> mark U122 isNatIListKind IL,
              active U132(tt(), IL, M, N) -> mark U133(isNat M, IL, M, N),
              active U131(tt(), IL, M, N) -> mark U132(isNatIListKind IL, IL, M, N),
              active U133(tt(), IL, M, N) -> mark U134(isNatKind M, IL, M, N),
              active U134(tt(), IL, M, N) -> mark U135(isNat N, IL, M, N),
              active U135(tt(), IL, M, N) -> mark U136(isNatKind N, IL, M, N),
              active U136(tt(), IL, M, N) -> mark cons(N, take(M, IL)),
                     active take(0(), IL) -> mark U121(isNatIList IL, IL),
            active take(s M, cons(N, IL)) -> mark U131(isNatIList IL, IL, M, N),
                     active U22(tt(), V1) -> mark U23 isNat V1,
                     active U21(tt(), V1) -> mark U22(isNatKind V1, V1),
                          active U23 tt() -> mark tt(),
                      active U32(tt(), V) -> mark U33 isNatList V,
                      active U31(tt(), V) -> mark U32(isNatIListKind V, V),
                          active U33 tt() -> mark tt(),
                 active U42(tt(), V1, V2) -> mark U43(isNatIListKind V2, V1, V2),
                 active U41(tt(), V1, V2) -> mark U42(isNatKind V1, V1, V2),
                 active U43(tt(), V1, V2) -> mark U44(isNatIListKind V2, V1, V2),
                 active U44(tt(), V1, V2) -> mark U45(isNat V1, V2),
                     active U45(tt(), V2) -> mark U46 isNatIList V2,
                          active U46 tt() -> mark tt(),
                          active U52 tt() -> mark tt(),
                     active U51(tt(), V2) -> mark U52 isNatIListKind V2,
                          active U62 tt() -> mark tt(),
                     active U61(tt(), V2) -> mark U62 isNatIListKind V2,
                          active U71 tt() -> mark tt(),
                          active U81 tt() -> mark tt(),
                 active U92(tt(), V1, V2) -> mark U93(isNatIListKind V2, V1, V2),
                 active U91(tt(), V1, V2) -> mark U92(isNatKind V1, V1, V2),
                 active U93(tt(), V1, V2) -> mark U94(isNatIListKind V2, V1, V2),
                 active U94(tt(), V1, V2) -> mark U95(isNat V1, V2),
                     active U95(tt(), V2) -> mark U96 isNatList V2,
                          active U96 tt() -> mark tt(),
                    U102(X1, X2, mark X3) -> U102(X1, X2, X3),
                  U102(X1, X2, active X3) -> U102(X1, X2, X3),
                    U102(X1, mark X2, X3) -> U102(X1, X2, X3),
                  U102(X1, active X2, X3) -> U102(X1, X2, X3),
                    U102(mark X1, X2, X3) -> U102(X1, X2, X3),
                  U102(active X1, X2, X3) -> U102(X1, X2, X3),
                         isNatKind mark X -> isNatKind X,
                       isNatKind active X -> isNatKind X,
                    U101(X1, X2, mark X3) -> U101(X1, X2, X3),
                  U101(X1, X2, active X3) -> U101(X1, X2, X3),
                    U101(X1, mark X2, X3) -> U101(X1, X2, X3),
                  U101(X1, active X2, X3) -> U101(X1, X2, X3),
                    U101(mark X1, X2, X3) -> U101(X1, X2, X3),
                  U101(active X1, X2, X3) -> U101(X1, X2, X3),
                    U103(X1, X2, mark X3) -> U103(X1, X2, X3),
                  U103(X1, X2, active X3) -> U103(X1, X2, X3),
                    U103(X1, mark X2, X3) -> U103(X1, X2, X3),
                  U103(X1, active X2, X3) -> U103(X1, X2, X3),
                    U103(mark X1, X2, X3) -> U103(X1, X2, X3),
                  U103(active X1, X2, X3) -> U103(X1, X2, X3),
                    isNatIListKind mark X -> isNatIListKind X,
                  isNatIListKind active X -> isNatIListKind X,
                    U104(X1, X2, mark X3) -> U104(X1, X2, X3),
                  U104(X1, X2, active X3) -> U104(X1, X2, X3),
                    U104(X1, mark X2, X3) -> U104(X1, X2, X3),
                  U104(X1, active X2, X3) -> U104(X1, X2, X3),
                    U104(mark X1, X2, X3) -> U104(X1, X2, X3),
                  U104(active X1, X2, X3) -> U104(X1, X2, X3),
                        U105(X1, mark X2) -> U105(X1, X2),
                      U105(X1, active X2) -> U105(X1, X2),
                        U105(mark X1, X2) -> U105(X1, X2),
                      U105(active X1, X2) -> U105(X1, X2),
                             isNat mark X -> isNat X,
                           isNat active X -> isNat X,
                              U106 mark X -> U106 X,
                            U106 active X -> U106 X,
                        isNatIList mark X -> isNatIList X,
                      isNatIList active X -> isNatIList X,
                         U12(X1, mark X2) -> U12(X1, X2),
                       U12(X1, active X2) -> U12(X1, X2),
                         U12(mark X1, X2) -> U12(X1, X2),
                       U12(active X1, X2) -> U12(X1, X2),
                         U11(X1, mark X2) -> U11(X1, X2),
                       U11(X1, active X2) -> U11(X1, X2),
                         U11(mark X1, X2) -> U11(X1, X2),
                       U11(active X1, X2) -> U11(X1, X2),
                    U112(X1, X2, mark X3) -> U112(X1, X2, X3),
                  U112(X1, X2, active X3) -> U112(X1, X2, X3),
                    U112(X1, mark X2, X3) -> U112(X1, X2, X3),
                  U112(X1, active X2, X3) -> U112(X1, X2, X3),
                    U112(mark X1, X2, X3) -> U112(X1, X2, X3),
                  U112(active X1, X2, X3) -> U112(X1, X2, X3),
                    U111(X1, X2, mark X3) -> U111(X1, X2, X3),
                  U111(X1, X2, active X3) -> U111(X1, X2, X3),
                    U111(X1, mark X2, X3) -> U111(X1, X2, X3),
                  U111(X1, active X2, X3) -> U111(X1, X2, X3),
                    U111(mark X1, X2, X3) -> U111(X1, X2, X3),
                  U111(active X1, X2, X3) -> U111(X1, X2, X3),
                    U113(X1, X2, mark X3) -> U113(X1, X2, X3),
                  U113(X1, X2, active X3) -> U113(X1, X2, X3),
                    U113(X1, mark X2, X3) -> U113(X1, X2, X3),
                  U113(X1, active X2, X3) -> U113(X1, X2, X3),
                    U113(mark X1, X2, X3) -> U113(X1, X2, X3),
                  U113(active X1, X2, X3) -> U113(X1, X2, X3),
                        U114(X1, mark X2) -> U114(X1, X2),
                      U114(X1, active X2) -> U114(X1, X2),
                        U114(mark X1, X2) -> U114(X1, X2),
                      U114(active X1, X2) -> U114(X1, X2),
                                 s mark X -> s X,
                               s active X -> s X,
                            length mark X -> length X,
                          length active X -> length X,
                               U13 mark X -> U13 X,
                             U13 active X -> U13 X,
                         isNatList mark X -> isNatList X,
                       isNatList active X -> isNatList X,
                              U122 mark X -> U122 X,
                            U122 active X -> U122 X,
                        U121(X1, mark X2) -> U121(X1, X2),
                      U121(X1, active X2) -> U121(X1, X2),
                        U121(mark X1, X2) -> U121(X1, X2),
                      U121(active X1, X2) -> U121(X1, X2),
                U132(X1, X2, X3, mark X4) -> U132(X1, X2, X3, X4),
              U132(X1, X2, X3, active X4) -> U132(X1, X2, X3, X4),
                U132(X1, X2, mark X3, X4) -> U132(X1, X2, X3, X4),
              U132(X1, X2, active X3, X4) -> U132(X1, X2, X3, X4),
                U132(X1, mark X2, X3, X4) -> U132(X1, X2, X3, X4),
              U132(X1, active X2, X3, X4) -> U132(X1, X2, X3, X4),
                U132(mark X1, X2, X3, X4) -> U132(X1, X2, X3, X4),
              U132(active X1, X2, X3, X4) -> U132(X1, X2, X3, X4),
                U131(X1, X2, X3, mark X4) -> U131(X1, X2, X3, X4),
              U131(X1, X2, X3, active X4) -> U131(X1, X2, X3, X4),
                U131(X1, X2, mark X3, X4) -> U131(X1, X2, X3, X4),
              U131(X1, X2, active X3, X4) -> U131(X1, X2, X3, X4),
                U131(X1, mark X2, X3, X4) -> U131(X1, X2, X3, X4),
              U131(X1, active X2, X3, X4) -> U131(X1, X2, X3, X4),
                U131(mark X1, X2, X3, X4) -> U131(X1, X2, X3, X4),
              U131(active X1, X2, X3, X4) -> U131(X1, X2, X3, X4),
                U133(X1, X2, X3, mark X4) -> U133(X1, X2, X3, X4),
              U133(X1, X2, X3, active X4) -> U133(X1, X2, X3, X4),
                U133(X1, X2, mark X3, X4) -> U133(X1, X2, X3, X4),
              U133(X1, X2, active X3, X4) -> U133(X1, X2, X3, X4),
                U133(X1, mark X2, X3, X4) -> U133(X1, X2, X3, X4),
              U133(X1, active X2, X3, X4) -> U133(X1, X2, X3, X4),
                U133(mark X1, X2, X3, X4) -> U133(X1, X2, X3, X4),
              U133(active X1, X2, X3, X4) -> U133(X1, X2, X3, X4),
                U134(X1, X2, X3, mark X4) -> U134(X1, X2, X3, X4),
              U134(X1, X2, X3, active X4) -> U134(X1, X2, X3, X4),
                U134(X1, X2, mark X3, X4) -> U134(X1, X2, X3, X4),
              U134(X1, X2, active X3, X4) -> U134(X1, X2, X3, X4),
                U134(X1, mark X2, X3, X4) -> U134(X1, X2, X3, X4),
              U134(X1, active X2, X3, X4) -> U134(X1, X2, X3, X4),
                U134(mark X1, X2, X3, X4) -> U134(X1, X2, X3, X4),
              U134(active X1, X2, X3, X4) -> U134(X1, X2, X3, X4),
                U135(X1, X2, X3, mark X4) -> U135(X1, X2, X3, X4),
              U135(X1, X2, X3, active X4) -> U135(X1, X2, X3, X4),
                U135(X1, X2, mark X3, X4) -> U135(X1, X2, X3, X4),
              U135(X1, X2, active X3, X4) -> U135(X1, X2, X3, X4),
                U135(X1, mark X2, X3, X4) -> U135(X1, X2, X3, X4),
              U135(X1, active X2, X3, X4) -> U135(X1, X2, X3, X4),
                U135(mark X1, X2, X3, X4) -> U135(X1, X2, X3, X4),
              U135(active X1, X2, X3, X4) -> U135(X1, X2, X3, X4),
                U136(X1, X2, X3, mark X4) -> U136(X1, X2, X3, X4),
              U136(X1, X2, X3, active X4) -> U136(X1, X2, X3, X4),
                U136(X1, X2, mark X3, X4) -> U136(X1, X2, X3, X4),
              U136(X1, X2, active X3, X4) -> U136(X1, X2, X3, X4),
                U136(X1, mark X2, X3, X4) -> U136(X1, X2, X3, X4),
              U136(X1, active X2, X3, X4) -> U136(X1, X2, X3, X4),
                U136(mark X1, X2, X3, X4) -> U136(X1, X2, X3, X4),
              U136(active X1, X2, X3, X4) -> U136(X1, X2, X3, X4),
                        take(X1, mark X2) -> take(X1, X2),
                      take(X1, active X2) -> take(X1, X2),
                        take(mark X1, X2) -> take(X1, X2),
                      take(active X1, X2) -> take(X1, X2),
                         U22(X1, mark X2) -> U22(X1, X2),
                       U22(X1, active X2) -> U22(X1, X2),
                         U22(mark X1, X2) -> U22(X1, X2),
                       U22(active X1, X2) -> U22(X1, X2),
                         U21(X1, mark X2) -> U21(X1, X2),
                       U21(X1, active X2) -> U21(X1, X2),
                         U21(mark X1, X2) -> U21(X1, X2),
                       U21(active X1, X2) -> U21(X1, X2),
                               U23 mark X -> U23 X,
                             U23 active X -> U23 X,
                         U32(X1, mark X2) -> U32(X1, X2),
                       U32(X1, active X2) -> U32(X1, X2),
                         U32(mark X1, X2) -> U32(X1, X2),
                       U32(active X1, X2) -> U32(X1, X2),
                         U31(X1, mark X2) -> U31(X1, X2),
                       U31(X1, active X2) -> U31(X1, X2),
                         U31(mark X1, X2) -> U31(X1, X2),
                       U31(active X1, X2) -> U31(X1, X2),
                               U33 mark X -> U33 X,
                             U33 active X -> U33 X,
                     U42(X1, X2, mark X3) -> U42(X1, X2, X3),
                   U42(X1, X2, active X3) -> U42(X1, X2, X3),
                     U42(X1, mark X2, X3) -> U42(X1, X2, X3),
                   U42(X1, active X2, X3) -> U42(X1, X2, X3),
                     U42(mark X1, X2, X3) -> U42(X1, X2, X3),
                   U42(active X1, X2, X3) -> U42(X1, X2, X3),
                     U41(X1, X2, mark X3) -> U41(X1, X2, X3),
                   U41(X1, X2, active X3) -> U41(X1, X2, X3),
                     U41(X1, mark X2, X3) -> U41(X1, X2, X3),
                   U41(X1, active X2, X3) -> U41(X1, X2, X3),
                     U41(mark X1, X2, X3) -> U41(X1, X2, X3),
                   U41(active X1, X2, X3) -> U41(X1, X2, X3),
                     U43(X1, X2, mark X3) -> U43(X1, X2, X3),
                   U43(X1, X2, active X3) -> U43(X1, X2, X3),
                     U43(X1, mark X2, X3) -> U43(X1, X2, X3),
                   U43(X1, active X2, X3) -> U43(X1, X2, X3),
                     U43(mark X1, X2, X3) -> U43(X1, X2, X3),
                   U43(active X1, X2, X3) -> U43(X1, X2, X3),
                     U44(X1, X2, mark X3) -> U44(X1, X2, X3),
                   U44(X1, X2, active X3) -> U44(X1, X2, X3),
                     U44(X1, mark X2, X3) -> U44(X1, X2, X3),
                   U44(X1, active X2, X3) -> U44(X1, X2, X3),
                     U44(mark X1, X2, X3) -> U44(X1, X2, X3),
                   U44(active X1, X2, X3) -> U44(X1, X2, X3),
                         U45(X1, mark X2) -> U45(X1, X2),
                       U45(X1, active X2) -> U45(X1, X2),
                         U45(mark X1, X2) -> U45(X1, X2),
                       U45(active X1, X2) -> U45(X1, X2),
                               U46 mark X -> U46 X,
                             U46 active X -> U46 X,
                               U52 mark X -> U52 X,
                             U52 active X -> U52 X,
                         U51(X1, mark X2) -> U51(X1, X2),
                       U51(X1, active X2) -> U51(X1, X2),
                         U51(mark X1, X2) -> U51(X1, X2),
                       U51(active X1, X2) -> U51(X1, X2),
                               U62 mark X -> U62 X,
                             U62 active X -> U62 X,
                         U61(X1, mark X2) -> U61(X1, X2),
                       U61(X1, active X2) -> U61(X1, X2),
                         U61(mark X1, X2) -> U61(X1, X2),
                       U61(active X1, X2) -> U61(X1, X2),
                               U71 mark X -> U71 X,
                             U71 active X -> U71 X,
                               U81 mark X -> U81 X,
                             U81 active X -> U81 X,
                     U92(X1, X2, mark X3) -> U92(X1, X2, X3),
                   U92(X1, X2, active X3) -> U92(X1, X2, X3),
                     U92(X1, mark X2, X3) -> U92(X1, X2, X3),
                   U92(X1, active X2, X3) -> U92(X1, X2, X3),
                     U92(mark X1, X2, X3) -> U92(X1, X2, X3),
                   U92(active X1, X2, X3) -> U92(X1, X2, X3),
                     U91(X1, X2, mark X3) -> U91(X1, X2, X3),
                   U91(X1, X2, active X3) -> U91(X1, X2, X3),
                     U91(X1, mark X2, X3) -> U91(X1, X2, X3),
                   U91(X1, active X2, X3) -> U91(X1, X2, X3),
                     U91(mark X1, X2, X3) -> U91(X1, X2, X3),
                   U91(active X1, X2, X3) -> U91(X1, X2, X3),
                     U93(X1, X2, mark X3) -> U93(X1, X2, X3),
                   U93(X1, X2, active X3) -> U93(X1, X2, X3),
                     U93(X1, mark X2, X3) -> U93(X1, X2, X3),
                   U93(X1, active X2, X3) -> U93(X1, X2, X3),
                     U93(mark X1, X2, X3) -> U93(X1, X2, X3),
                   U93(active X1, X2, X3) -> U93(X1, X2, X3),
                     U94(X1, X2, mark X3) -> U94(X1, X2, X3),
                   U94(X1, X2, active X3) -> U94(X1, X2, X3),
                     U94(X1, mark X2, X3) -> U94(X1, X2, X3),
                   U94(X1, active X2, X3) -> U94(X1, X2, X3),
                     U94(mark X1, X2, X3) -> U94(X1, X2, X3),
                   U94(active X1, X2, X3) -> U94(X1, X2, X3),
                         U95(X1, mark X2) -> U95(X1, X2),
                       U95(X1, active X2) -> U95(X1, X2),
                         U95(mark X1, X2) -> U95(X1, X2),
                       U95(active X1, X2) -> U95(X1, X2),
                               U96 mark X -> U96 X,
                             U96 active X -> U96 X
      }
      Open
     
     
     
     SCC (6):
      Strict:
       {  U42#(X1, X2, mark X3) -> U42#(X1, X2, X3),
        U42#(X1, X2, active X3) -> U42#(X1, X2, X3),
          U42#(X1, mark X2, X3) -> U42#(X1, X2, X3),
        U42#(X1, active X2, X3) -> U42#(X1, X2, X3),
          U42#(mark X1, X2, X3) -> U42#(X1, X2, X3),
        U42#(active X1, X2, X3) -> U42#(X1, X2, X3)}
      Weak:
      {
                        mark cons(X1, X2) -> active cons(mark X1, X2),
                                 mark 0() -> active 0(),
                             mark zeros() -> active zeros(),
                    mark U102(X1, X2, X3) -> active U102(mark X1, X2, X3),
                         mark isNatKind X -> active isNatKind X,
                    mark U101(X1, X2, X3) -> active U101(mark X1, X2, X3),
                                mark tt() -> active tt(),
                    mark U103(X1, X2, X3) -> active U103(mark X1, X2, X3),
                    mark isNatIListKind X -> active isNatIListKind X,
                    mark U104(X1, X2, X3) -> active U104(mark X1, X2, X3),
                        mark U105(X1, X2) -> active U105(mark X1, X2),
                             mark isNat X -> active isNat X,
                              mark U106 X -> active U106 mark X,
                        mark isNatIList X -> active isNatIList X,
                         mark U12(X1, X2) -> active U12(mark X1, X2),
                         mark U11(X1, X2) -> active U11(mark X1, X2),
                    mark U112(X1, X2, X3) -> active U112(mark X1, X2, X3),
                    mark U111(X1, X2, X3) -> active U111(mark X1, X2, X3),
                    mark U113(X1, X2, X3) -> active U113(mark X1, X2, X3),
                        mark U114(X1, X2) -> active U114(mark X1, X2),
                                 mark s X -> active s mark X,
                            mark length X -> active length mark X,
                               mark U13 X -> active U13 mark X,
                         mark isNatList X -> active isNatList X,
                              mark U122 X -> active U122 mark X,
                        mark U121(X1, X2) -> active U121(mark X1, X2),
                               mark nil() -> active nil(),
                mark U132(X1, X2, X3, X4) -> active U132(mark X1, X2, X3, X4),
                mark U131(X1, X2, X3, X4) -> active U131(mark X1, X2, X3, X4),
                mark U133(X1, X2, X3, X4) -> active U133(mark X1, X2, X3, X4),
                mark U134(X1, X2, X3, X4) -> active U134(mark X1, X2, X3, X4),
                mark U135(X1, X2, X3, X4) -> active U135(mark X1, X2, X3, X4),
                mark U136(X1, X2, X3, X4) -> active U136(mark X1, X2, X3, X4),
                        mark take(X1, X2) -> active take(mark X1, mark X2),
                         mark U22(X1, X2) -> active U22(mark X1, X2),
                         mark U21(X1, X2) -> active U21(mark X1, X2),
                               mark U23 X -> active U23 mark X,
                         mark U32(X1, X2) -> active U32(mark X1, X2),
                         mark U31(X1, X2) -> active U31(mark X1, X2),
                               mark U33 X -> active U33 mark X,
                     mark U42(X1, X2, X3) -> active U42(mark X1, X2, X3),
                     mark U41(X1, X2, X3) -> active U41(mark X1, X2, X3),
                     mark U43(X1, X2, X3) -> active U43(mark X1, X2, X3),
                     mark U44(X1, X2, X3) -> active U44(mark X1, X2, X3),
                         mark U45(X1, X2) -> active U45(mark X1, X2),
                               mark U46 X -> active U46 mark X,
                               mark U52 X -> active U52 mark X,
                         mark U51(X1, X2) -> active U51(mark X1, X2),
                               mark U62 X -> active U62 mark X,
                         mark U61(X1, X2) -> active U61(mark X1, X2),
                               mark U71 X -> active U71 mark X,
                               mark U81 X -> active U81 mark X,
                     mark U92(X1, X2, X3) -> active U92(mark X1, X2, X3),
                     mark U91(X1, X2, X3) -> active U91(mark X1, X2, X3),
                     mark U93(X1, X2, X3) -> active U93(mark X1, X2, X3),
                     mark U94(X1, X2, X3) -> active U94(mark X1, X2, X3),
                         mark U95(X1, X2) -> active U95(mark X1, X2),
                               mark U96 X -> active U96 mark X,
                        cons(X1, mark X2) -> cons(X1, X2),
                      cons(X1, active X2) -> cons(X1, X2),
                        cons(mark X1, X2) -> cons(X1, X2),
                      cons(active X1, X2) -> cons(X1, X2),
                           active zeros() -> mark cons(0(), zeros()),
                active U102(tt(), V1, V2) -> mark U103(isNatIListKind V2, V1, V2),
                     active isNatKind 0() -> mark tt(),
                    active isNatKind s V1 -> mark U81 isNatKind V1,
               active isNatKind length V1 -> mark U71 isNatIListKind V1,
                active U101(tt(), V1, V2) -> mark U102(isNatKind V1, V1, V2),
                active U103(tt(), V1, V2) -> mark U104(isNatIListKind V2, V1, V2),
       active isNatIListKind cons(V1, V2) -> mark U51(isNatKind V1, V2),
            active isNatIListKind zeros() -> mark tt(),
              active isNatIListKind nil() -> mark tt(),
       active isNatIListKind take(V1, V2) -> mark U61(isNatKind V1, V2),
                active U104(tt(), V1, V2) -> mark U105(isNat V1, V2),
                    active U105(tt(), V2) -> mark U106 isNatIList V2,
                         active isNat 0() -> mark tt(),
                        active isNat s V1 -> mark U21(isNatKind V1, V1),
                   active isNat length V1 -> mark U11(isNatIListKind V1, V1),
                         active U106 tt() -> mark tt(),
                      active isNatIList V -> mark U31(isNatIListKind V, V),
           active isNatIList cons(V1, V2) -> mark U41(isNatKind V1, V1, V2),
                active isNatIList zeros() -> mark tt(),
                     active U12(tt(), V1) -> mark U13 isNatList V1,
                     active U11(tt(), V1) -> mark U12(isNatIListKind V1, V1),
                  active U112(tt(), L, N) -> mark U113(isNat N, L, N),
                  active U111(tt(), L, N) -> mark U112(isNatIListKind L, L, N),
                  active U113(tt(), L, N) -> mark U114(isNatKind N, L),
                     active U114(tt(), L) -> mark s length L,
                 active length cons(N, L) -> mark U111(isNatList L, L, N),
                      active length nil() -> mark 0(),
                          active U13 tt() -> mark tt(),
            active isNatList cons(V1, V2) -> mark U91(isNatKind V1, V1, V2),
                   active isNatList nil() -> mark tt(),
            active isNatList take(V1, V2) -> mark U101(isNatKind V1, V1, V2),
                         active U122 tt() -> mark nil(),
                    active U121(tt(), IL) -> mark U122 isNatIListKind IL,
              active U132(tt(), IL, M, N) -> mark U133(isNat M, IL, M, N),
              active U131(tt(), IL, M, N) -> mark U132(isNatIListKind IL, IL, M, N),
              active U133(tt(), IL, M, N) -> mark U134(isNatKind M, IL, M, N),
              active U134(tt(), IL, M, N) -> mark U135(isNat N, IL, M, N),
              active U135(tt(), IL, M, N) -> mark U136(isNatKind N, IL, M, N),
              active U136(tt(), IL, M, N) -> mark cons(N, take(M, IL)),
                     active take(0(), IL) -> mark U121(isNatIList IL, IL),
            active take(s M, cons(N, IL)) -> mark U131(isNatIList IL, IL, M, N),
                     active U22(tt(), V1) -> mark U23 isNat V1,
                     active U21(tt(), V1) -> mark U22(isNatKind V1, V1),
                          active U23 tt() -> mark tt(),
                      active U32(tt(), V) -> mark U33 isNatList V,
                      active U31(tt(), V) -> mark U32(isNatIListKind V, V),
                          active U33 tt() -> mark tt(),
                 active U42(tt(), V1, V2) -> mark U43(isNatIListKind V2, V1, V2),
                 active U41(tt(), V1, V2) -> mark U42(isNatKind V1, V1, V2),
                 active U43(tt(), V1, V2) -> mark U44(isNatIListKind V2, V1, V2),
                 active U44(tt(), V1, V2) -> mark U45(isNat V1, V2),
                     active U45(tt(), V2) -> mark U46 isNatIList V2,
                          active U46 tt() -> mark tt(),
                          active U52 tt() -> mark tt(),
                     active U51(tt(), V2) -> mark U52 isNatIListKind V2,
                          active U62 tt() -> mark tt(),
                     active U61(tt(), V2) -> mark U62 isNatIListKind V2,
                          active U71 tt() -> mark tt(),
                          active U81 tt() -> mark tt(),
                 active U92(tt(), V1, V2) -> mark U93(isNatIListKind V2, V1, V2),
                 active U91(tt(), V1, V2) -> mark U92(isNatKind V1, V1, V2),
                 active U93(tt(), V1, V2) -> mark U94(isNatIListKind V2, V1, V2),
                 active U94(tt(), V1, V2) -> mark U95(isNat V1, V2),
                     active U95(tt(), V2) -> mark U96 isNatList V2,
                          active U96 tt() -> mark tt(),
                    U102(X1, X2, mark X3) -> U102(X1, X2, X3),
                  U102(X1, X2, active X3) -> U102(X1, X2, X3),
                    U102(X1, mark X2, X3) -> U102(X1, X2, X3),
                  U102(X1, active X2, X3) -> U102(X1, X2, X3),
                    U102(mark X1, X2, X3) -> U102(X1, X2, X3),
                  U102(active X1, X2, X3) -> U102(X1, X2, X3),
                         isNatKind mark X -> isNatKind X,
                       isNatKind active X -> isNatKind X,
                    U101(X1, X2, mark X3) -> U101(X1, X2, X3),
                  U101(X1, X2, active X3) -> U101(X1, X2, X3),
                    U101(X1, mark X2, X3) -> U101(X1, X2, X3),
                  U101(X1, active X2, X3) -> U101(X1, X2, X3),
                    U101(mark X1, X2, X3) -> U101(X1, X2, X3),
                  U101(active X1, X2, X3) -> U101(X1, X2, X3),
                    U103(X1, X2, mark X3) -> U103(X1, X2, X3),
                  U103(X1, X2, active X3) -> U103(X1, X2, X3),
                    U103(X1, mark X2, X3) -> U103(X1, X2, X3),
                  U103(X1, active X2, X3) -> U103(X1, X2, X3),
                    U103(mark X1, X2, X3) -> U103(X1, X2, X3),
                  U103(active X1, X2, X3) -> U103(X1, X2, X3),
                    isNatIListKind mark X -> isNatIListKind X,
                  isNatIListKind active X -> isNatIListKind X,
                    U104(X1, X2, mark X3) -> U104(X1, X2, X3),
                  U104(X1, X2, active X3) -> U104(X1, X2, X3),
                    U104(X1, mark X2, X3) -> U104(X1, X2, X3),
                  U104(X1, active X2, X3) -> U104(X1, X2, X3),
                    U104(mark X1, X2, X3) -> U104(X1, X2, X3),
                  U104(active X1, X2, X3) -> U104(X1, X2, X3),
                        U105(X1, mark X2) -> U105(X1, X2),
                      U105(X1, active X2) -> U105(X1, X2),
                        U105(mark X1, X2) -> U105(X1, X2),
                      U105(active X1, X2) -> U105(X1, X2),
                             isNat mark X -> isNat X,
                           isNat active X -> isNat X,
                              U106 mark X -> U106 X,
                            U106 active X -> U106 X,
                        isNatIList mark X -> isNatIList X,
                      isNatIList active X -> isNatIList X,
                         U12(X1, mark X2) -> U12(X1, X2),
                       U12(X1, active X2) -> U12(X1, X2),
                         U12(mark X1, X2) -> U12(X1, X2),
                       U12(active X1, X2) -> U12(X1, X2),
                         U11(X1, mark X2) -> U11(X1, X2),
                       U11(X1, active X2) -> U11(X1, X2),
                         U11(mark X1, X2) -> U11(X1, X2),
                       U11(active X1, X2) -> U11(X1, X2),
                    U112(X1, X2, mark X3) -> U112(X1, X2, X3),
                  U112(X1, X2, active X3) -> U112(X1, X2, X3),
                    U112(X1, mark X2, X3) -> U112(X1, X2, X3),
                  U112(X1, active X2, X3) -> U112(X1, X2, X3),
                    U112(mark X1, X2, X3) -> U112(X1, X2, X3),
                  U112(active X1, X2, X3) -> U112(X1, X2, X3),
                    U111(X1, X2, mark X3) -> U111(X1, X2, X3),
                  U111(X1, X2, active X3) -> U111(X1, X2, X3),
                    U111(X1, mark X2, X3) -> U111(X1, X2, X3),
                  U111(X1, active X2, X3) -> U111(X1, X2, X3),
                    U111(mark X1, X2, X3) -> U111(X1, X2, X3),
                  U111(active X1, X2, X3) -> U111(X1, X2, X3),
                    U113(X1, X2, mark X3) -> U113(X1, X2, X3),
                  U113(X1, X2, active X3) -> U113(X1, X2, X3),
                    U113(X1, mark X2, X3) -> U113(X1, X2, X3),
                  U113(X1, active X2, X3) -> U113(X1, X2, X3),
                    U113(mark X1, X2, X3) -> U113(X1, X2, X3),
                  U113(active X1, X2, X3) -> U113(X1, X2, X3),
                        U114(X1, mark X2) -> U114(X1, X2),
                      U114(X1, active X2) -> U114(X1, X2),
                        U114(mark X1, X2) -> U114(X1, X2),
                      U114(active X1, X2) -> U114(X1, X2),
                                 s mark X -> s X,
                               s active X -> s X,
                            length mark X -> length X,
                          length active X -> length X,
                               U13 mark X -> U13 X,
                             U13 active X -> U13 X,
                         isNatList mark X -> isNatList X,
                       isNatList active X -> isNatList X,
                              U122 mark X -> U122 X,
                            U122 active X -> U122 X,
                        U121(X1, mark X2) -> U121(X1, X2),
                      U121(X1, active X2) -> U121(X1, X2),
                        U121(mark X1, X2) -> U121(X1, X2),
                      U121(active X1, X2) -> U121(X1, X2),
                U132(X1, X2, X3, mark X4) -> U132(X1, X2, X3, X4),
              U132(X1, X2, X3, active X4) -> U132(X1, X2, X3, X4),
                U132(X1, X2, mark X3, X4) -> U132(X1, X2, X3, X4),
              U132(X1, X2, active X3, X4) -> U132(X1, X2, X3, X4),
                U132(X1, mark X2, X3, X4) -> U132(X1, X2, X3, X4),
              U132(X1, active X2, X3, X4) -> U132(X1, X2, X3, X4),
                U132(mark X1, X2, X3, X4) -> U132(X1, X2, X3, X4),
              U132(active X1, X2, X3, X4) -> U132(X1, X2, X3, X4),
                U131(X1, X2, X3, mark X4) -> U131(X1, X2, X3, X4),
              U131(X1, X2, X3, active X4) -> U131(X1, X2, X3, X4),
                U131(X1, X2, mark X3, X4) -> U131(X1, X2, X3, X4),
              U131(X1, X2, active X3, X4) -> U131(X1, X2, X3, X4),
                U131(X1, mark X2, X3, X4) -> U131(X1, X2, X3, X4),
              U131(X1, active X2, X3, X4) -> U131(X1, X2, X3, X4),
                U131(mark X1, X2, X3, X4) -> U131(X1, X2, X3, X4),
              U131(active X1, X2, X3, X4) -> U131(X1, X2, X3, X4),
                U133(X1, X2, X3, mark X4) -> U133(X1, X2, X3, X4),
              U133(X1, X2, X3, active X4) -> U133(X1, X2, X3, X4),
                U133(X1, X2, mark X3, X4) -> U133(X1, X2, X3, X4),
              U133(X1, X2, active X3, X4) -> U133(X1, X2, X3, X4),
                U133(X1, mark X2, X3, X4) -> U133(X1, X2, X3, X4),
              U133(X1, active X2, X3, X4) -> U133(X1, X2, X3, X4),
                U133(mark X1, X2, X3, X4) -> U133(X1, X2, X3, X4),
              U133(active X1, X2, X3, X4) -> U133(X1, X2, X3, X4),
                U134(X1, X2, X3, mark X4) -> U134(X1, X2, X3, X4),
              U134(X1, X2, X3, active X4) -> U134(X1, X2, X3, X4),
                U134(X1, X2, mark X3, X4) -> U134(X1, X2, X3, X4),
              U134(X1, X2, active X3, X4) -> U134(X1, X2, X3, X4),
                U134(X1, mark X2, X3, X4) -> U134(X1, X2, X3, X4),
              U134(X1, active X2, X3, X4) -> U134(X1, X2, X3, X4),
                U134(mark X1, X2, X3, X4) -> U134(X1, X2, X3, X4),
              U134(active X1, X2, X3, X4) -> U134(X1, X2, X3, X4),
                U135(X1, X2, X3, mark X4) -> U135(X1, X2, X3, X4),
              U135(X1, X2, X3, active X4) -> U135(X1, X2, X3, X4),
                U135(X1, X2, mark X3, X4) -> U135(X1, X2, X3, X4),
              U135(X1, X2, active X3, X4) -> U135(X1, X2, X3, X4),
                U135(X1, mark X2, X3, X4) -> U135(X1, X2, X3, X4),
              U135(X1, active X2, X3, X4) -> U135(X1, X2, X3, X4),
                U135(mark X1, X2, X3, X4) -> U135(X1, X2, X3, X4),
              U135(active X1, X2, X3, X4) -> U135(X1, X2, X3, X4),
                U136(X1, X2, X3, mark X4) -> U136(X1, X2, X3, X4),
              U136(X1, X2, X3, active X4) -> U136(X1, X2, X3, X4),
                U136(X1, X2, mark X3, X4) -> U136(X1, X2, X3, X4),
              U136(X1, X2, active X3, X4) -> U136(X1, X2, X3, X4),
                U136(X1, mark X2, X3, X4) -> U136(X1, X2, X3, X4),
              U136(X1, active X2, X3, X4) -> U136(X1, X2, X3, X4),
                U136(mark X1, X2, X3, X4) -> U136(X1, X2, X3, X4),
              U136(active X1, X2, X3, X4) -> U136(X1, X2, X3, X4),
                        take(X1, mark X2) -> take(X1, X2),
                      take(X1, active X2) -> take(X1, X2),
                        take(mark X1, X2) -> take(X1, X2),
                      take(active X1, X2) -> take(X1, X2),
                         U22(X1, mark X2) -> U22(X1, X2),
                       U22(X1, active X2) -> U22(X1, X2),
                         U22(mark X1, X2) -> U22(X1, X2),
                       U22(active X1, X2) -> U22(X1, X2),
                         U21(X1, mark X2) -> U21(X1, X2),
                       U21(X1, active X2) -> U21(X1, X2),
                         U21(mark X1, X2) -> U21(X1, X2),
                       U21(active X1, X2) -> U21(X1, X2),
                               U23 mark X -> U23 X,
                             U23 active X -> U23 X,
                         U32(X1, mark X2) -> U32(X1, X2),
                       U32(X1, active X2) -> U32(X1, X2),
                         U32(mark X1, X2) -> U32(X1, X2),
                       U32(active X1, X2) -> U32(X1, X2),
                         U31(X1, mark X2) -> U31(X1, X2),
                       U31(X1, active X2) -> U31(X1, X2),
                         U31(mark X1, X2) -> U31(X1, X2),
                       U31(active X1, X2) -> U31(X1, X2),
                               U33 mark X -> U33 X,
                             U33 active X -> U33 X,
                     U42(X1, X2, mark X3) -> U42(X1, X2, X3),
                   U42(X1, X2, active X3) -> U42(X1, X2, X3),
                     U42(X1, mark X2, X3) -> U42(X1, X2, X3),
                   U42(X1, active X2, X3) -> U42(X1, X2, X3),
                     U42(mark X1, X2, X3) -> U42(X1, X2, X3),
                   U42(active X1, X2, X3) -> U42(X1, X2, X3),
                     U41(X1, X2, mark X3) -> U41(X1, X2, X3),
                   U41(X1, X2, active X3) -> U41(X1, X2, X3),
                     U41(X1, mark X2, X3) -> U41(X1, X2, X3),
                   U41(X1, active X2, X3) -> U41(X1, X2, X3),
                     U41(mark X1, X2, X3) -> U41(X1, X2, X3),
                   U41(active X1, X2, X3) -> U41(X1, X2, X3),
                     U43(X1, X2, mark X3) -> U43(X1, X2, X3),
                   U43(X1, X2, active X3) -> U43(X1, X2, X3),
                     U43(X1, mark X2, X3) -> U43(X1, X2, X3),
                   U43(X1, active X2, X3) -> U43(X1, X2, X3),
                     U43(mark X1, X2, X3) -> U43(X1, X2, X3),
                   U43(active X1, X2, X3) -> U43(X1, X2, X3),
                     U44(X1, X2, mark X3) -> U44(X1, X2, X3),
                   U44(X1, X2, active X3) -> U44(X1, X2, X3),
                     U44(X1, mark X2, X3) -> U44(X1, X2, X3),
                   U44(X1, active X2, X3) -> U44(X1, X2, X3),
                     U44(mark X1, X2, X3) -> U44(X1, X2, X3),
                   U44(active X1, X2, X3) -> U44(X1, X2, X3),
                         U45(X1, mark X2) -> U45(X1, X2),
                       U45(X1, active X2) -> U45(X1, X2),
                         U45(mark X1, X2) -> U45(X1, X2),
                       U45(active X1, X2) -> U45(X1, X2),
                               U46 mark X -> U46 X,
                             U46 active X -> U46 X,
                               U52 mark X -> U52 X,
                             U52 active X -> U52 X,
                         U51(X1, mark X2) -> U51(X1, X2),
                       U51(X1, active X2) -> U51(X1, X2),
                         U51(mark X1, X2) -> U51(X1, X2),
                       U51(active X1, X2) -> U51(X1, X2),
                               U62 mark X -> U62 X,
                             U62 active X -> U62 X,
                         U61(X1, mark X2) -> U61(X1, X2),
                       U61(X1, active X2) -> U61(X1, X2),
                         U61(mark X1, X2) -> U61(X1, X2),
                       U61(active X1, X2) -> U61(X1, X2),
                               U71 mark X -> U71 X,
                             U71 active X -> U71 X,
                               U81 mark X -> U81 X,
                             U81 active X -> U81 X,
                     U92(X1, X2, mark X3) -> U92(X1, X2, X3),
                   U92(X1, X2, active X3) -> U92(X1, X2, X3),
                     U92(X1, mark X2, X3) -> U92(X1, X2, X3),
                   U92(X1, active X2, X3) -> U92(X1, X2, X3),
                     U92(mark X1, X2, X3) -> U92(X1, X2, X3),
                   U92(active X1, X2, X3) -> U92(X1, X2, X3),
                     U91(X1, X2, mark X3) -> U91(X1, X2, X3),
                   U91(X1, X2, active X3) -> U91(X1, X2, X3),
                     U91(X1, mark X2, X3) -> U91(X1, X2, X3),
                   U91(X1, active X2, X3) -> U91(X1, X2, X3),
                     U91(mark X1, X2, X3) -> U91(X1, X2, X3),
                   U91(active X1, X2, X3) -> U91(X1, X2, X3),
                     U93(X1, X2, mark X3) -> U93(X1, X2, X3),
                   U93(X1, X2, active X3) -> U93(X1, X2, X3),
                     U93(X1, mark X2, X3) -> U93(X1, X2, X3),
                   U93(X1, active X2, X3) -> U93(X1, X2, X3),
                     U93(mark X1, X2, X3) -> U93(X1, X2, X3),
                   U93(active X1, X2, X3) -> U93(X1, X2, X3),
                     U94(X1, X2, mark X3) -> U94(X1, X2, X3),
                   U94(X1, X2, active X3) -> U94(X1, X2, X3),
                     U94(X1, mark X2, X3) -> U94(X1, X2, X3),
                   U94(X1, active X2, X3) -> U94(X1, X2, X3),
                     U94(mark X1, X2, X3) -> U94(X1, X2, X3),
                   U94(active X1, X2, X3) -> U94(X1, X2, X3),
                         U95(X1, mark X2) -> U95(X1, X2),
                       U95(X1, active X2) -> U95(X1, X2),
                         U95(mark X1, X2) -> U95(X1, X2),
                       U95(active X1, X2) -> U95(X1, X2),
                               U96 mark X -> U96 X,
                             U96 active X -> U96 X
      }
      Open
     
     SCC (2):
      Strict:
       {  U33# mark X -> U33# X,
        U33# active X -> U33# X}
      Weak:
      {
                        mark cons(X1, X2) -> active cons(mark X1, X2),
                                 mark 0() -> active 0(),
                             mark zeros() -> active zeros(),
                    mark U102(X1, X2, X3) -> active U102(mark X1, X2, X3),
                         mark isNatKind X -> active isNatKind X,
                    mark U101(X1, X2, X3) -> active U101(mark X1, X2, X3),
                                mark tt() -> active tt(),
                    mark U103(X1, X2, X3) -> active U103(mark X1, X2, X3),
                    mark isNatIListKind X -> active isNatIListKind X,
                    mark U104(X1, X2, X3) -> active U104(mark X1, X2, X3),
                        mark U105(X1, X2) -> active U105(mark X1, X2),
                             mark isNat X -> active isNat X,
                              mark U106 X -> active U106 mark X,
                        mark isNatIList X -> active isNatIList X,
                         mark U12(X1, X2) -> active U12(mark X1, X2),
                         mark U11(X1, X2) -> active U11(mark X1, X2),
                    mark U112(X1, X2, X3) -> active U112(mark X1, X2, X3),
                    mark U111(X1, X2, X3) -> active U111(mark X1, X2, X3),
                    mark U113(X1, X2, X3) -> active U113(mark X1, X2, X3),
                        mark U114(X1, X2) -> active U114(mark X1, X2),
                                 mark s X -> active s mark X,
                            mark length X -> active length mark X,
                               mark U13 X -> active U13 mark X,
                         mark isNatList X -> active isNatList X,
                              mark U122 X -> active U122 mark X,
                        mark U121(X1, X2) -> active U121(mark X1, X2),
                               mark nil() -> active nil(),
                mark U132(X1, X2, X3, X4) -> active U132(mark X1, X2, X3, X4),
                mark U131(X1, X2, X3, X4) -> active U131(mark X1, X2, X3, X4),
                mark U133(X1, X2, X3, X4) -> active U133(mark X1, X2, X3, X4),
                mark U134(X1, X2, X3, X4) -> active U134(mark X1, X2, X3, X4),
                mark U135(X1, X2, X3, X4) -> active U135(mark X1, X2, X3, X4),
                mark U136(X1, X2, X3, X4) -> active U136(mark X1, X2, X3, X4),
                        mark take(X1, X2) -> active take(mark X1, mark X2),
                         mark U22(X1, X2) -> active U22(mark X1, X2),
                         mark U21(X1, X2) -> active U21(mark X1, X2),
                               mark U23 X -> active U23 mark X,
                         mark U32(X1, X2) -> active U32(mark X1, X2),
                         mark U31(X1, X2) -> active U31(mark X1, X2),
                               mark U33 X -> active U33 mark X,
                     mark U42(X1, X2, X3) -> active U42(mark X1, X2, X3),
                     mark U41(X1, X2, X3) -> active U41(mark X1, X2, X3),
                     mark U43(X1, X2, X3) -> active U43(mark X1, X2, X3),
                     mark U44(X1, X2, X3) -> active U44(mark X1, X2, X3),
                         mark U45(X1, X2) -> active U45(mark X1, X2),
                               mark U46 X -> active U46 mark X,
                               mark U52 X -> active U52 mark X,
                         mark U51(X1, X2) -> active U51(mark X1, X2),
                               mark U62 X -> active U62 mark X,
                         mark U61(X1, X2) -> active U61(mark X1, X2),
                               mark U71 X -> active U71 mark X,
                               mark U81 X -> active U81 mark X,
                     mark U92(X1, X2, X3) -> active U92(mark X1, X2, X3),
                     mark U91(X1, X2, X3) -> active U91(mark X1, X2, X3),
                     mark U93(X1, X2, X3) -> active U93(mark X1, X2, X3),
                     mark U94(X1, X2, X3) -> active U94(mark X1, X2, X3),
                         mark U95(X1, X2) -> active U95(mark X1, X2),
                               mark U96 X -> active U96 mark X,
                        cons(X1, mark X2) -> cons(X1, X2),
                      cons(X1, active X2) -> cons(X1, X2),
                        cons(mark X1, X2) -> cons(X1, X2),
                      cons(active X1, X2) -> cons(X1, X2),
                           active zeros() -> mark cons(0(), zeros()),
                active U102(tt(), V1, V2) -> mark U103(isNatIListKind V2, V1, V2),
                     active isNatKind 0() -> mark tt(),
                    active isNatKind s V1 -> mark U81 isNatKind V1,
               active isNatKind length V1 -> mark U71 isNatIListKind V1,
                active U101(tt(), V1, V2) -> mark U102(isNatKind V1, V1, V2),
                active U103(tt(), V1, V2) -> mark U104(isNatIListKind V2, V1, V2),
       active isNatIListKind cons(V1, V2) -> mark U51(isNatKind V1, V2),
            active isNatIListKind zeros() -> mark tt(),
              active isNatIListKind nil() -> mark tt(),
       active isNatIListKind take(V1, V2) -> mark U61(isNatKind V1, V2),
                active U104(tt(), V1, V2) -> mark U105(isNat V1, V2),
                    active U105(tt(), V2) -> mark U106 isNatIList V2,
                         active isNat 0() -> mark tt(),
                        active isNat s V1 -> mark U21(isNatKind V1, V1),
                   active isNat length V1 -> mark U11(isNatIListKind V1, V1),
                         active U106 tt() -> mark tt(),
                      active isNatIList V -> mark U31(isNatIListKind V, V),
           active isNatIList cons(V1, V2) -> mark U41(isNatKind V1, V1, V2),
                active isNatIList zeros() -> mark tt(),
                     active U12(tt(), V1) -> mark U13 isNatList V1,
                     active U11(tt(), V1) -> mark U12(isNatIListKind V1, V1),
                  active U112(tt(), L, N) -> mark U113(isNat N, L, N),
                  active U111(tt(), L, N) -> mark U112(isNatIListKind L, L, N),
                  active U113(tt(), L, N) -> mark U114(isNatKind N, L),
                     active U114(tt(), L) -> mark s length L,
                 active length cons(N, L) -> mark U111(isNatList L, L, N),
                      active length nil() -> mark 0(),
                          active U13 tt() -> mark tt(),
            active isNatList cons(V1, V2) -> mark U91(isNatKind V1, V1, V2),
                   active isNatList nil() -> mark tt(),
            active isNatList take(V1, V2) -> mark U101(isNatKind V1, V1, V2),
                         active U122 tt() -> mark nil(),
                    active U121(tt(), IL) -> mark U122 isNatIListKind IL,
              active U132(tt(), IL, M, N) -> mark U133(isNat M, IL, M, N),
              active U131(tt(), IL, M, N) -> mark U132(isNatIListKind IL, IL, M, N),
              active U133(tt(), IL, M, N) -> mark U134(isNatKind M, IL, M, N),
              active U134(tt(), IL, M, N) -> mark U135(isNat N, IL, M, N),
              active U135(tt(), IL, M, N) -> mark U136(isNatKind N, IL, M, N),
              active U136(tt(), IL, M, N) -> mark cons(N, take(M, IL)),
                     active take(0(), IL) -> mark U121(isNatIList IL, IL),
            active take(s M, cons(N, IL)) -> mark U131(isNatIList IL, IL, M, N),
                     active U22(tt(), V1) -> mark U23 isNat V1,
                     active U21(tt(), V1) -> mark U22(isNatKind V1, V1),
                          active U23 tt() -> mark tt(),
                      active U32(tt(), V) -> mark U33 isNatList V,
                      active U31(tt(), V) -> mark U32(isNatIListKind V, V),
                          active U33 tt() -> mark tt(),
                 active U42(tt(), V1, V2) -> mark U43(isNatIListKind V2, V1, V2),
                 active U41(tt(), V1, V2) -> mark U42(isNatKind V1, V1, V2),
                 active U43(tt(), V1, V2) -> mark U44(isNatIListKind V2, V1, V2),
                 active U44(tt(), V1, V2) -> mark U45(isNat V1, V2),
                     active U45(tt(), V2) -> mark U46 isNatIList V2,
                          active U46 tt() -> mark tt(),
                          active U52 tt() -> mark tt(),
                     active U51(tt(), V2) -> mark U52 isNatIListKind V2,
                          active U62 tt() -> mark tt(),
                     active U61(tt(), V2) -> mark U62 isNatIListKind V2,
                          active U71 tt() -> mark tt(),
                          active U81 tt() -> mark tt(),
                 active U92(tt(), V1, V2) -> mark U93(isNatIListKind V2, V1, V2),
                 active U91(tt(), V1, V2) -> mark U92(isNatKind V1, V1, V2),
                 active U93(tt(), V1, V2) -> mark U94(isNatIListKind V2, V1, V2),
                 active U94(tt(), V1, V2) -> mark U95(isNat V1, V2),
                     active U95(tt(), V2) -> mark U96 isNatList V2,
                          active U96 tt() -> mark tt(),
                    U102(X1, X2, mark X3) -> U102(X1, X2, X3),
                  U102(X1, X2, active X3) -> U102(X1, X2, X3),
                    U102(X1, mark X2, X3) -> U102(X1, X2, X3),
                  U102(X1, active X2, X3) -> U102(X1, X2, X3),
                    U102(mark X1, X2, X3) -> U102(X1, X2, X3),
                  U102(active X1, X2, X3) -> U102(X1, X2, X3),
                         isNatKind mark X -> isNatKind X,
                       isNatKind active X -> isNatKind X,
                    U101(X1, X2, mark X3) -> U101(X1, X2, X3),
                  U101(X1, X2, active X3) -> U101(X1, X2, X3),
                    U101(X1, mark X2, X3) -> U101(X1, X2, X3),
                  U101(X1, active X2, X3) -> U101(X1, X2, X3),
                    U101(mark X1, X2, X3) -> U101(X1, X2, X3),
                  U101(active X1, X2, X3) -> U101(X1, X2, X3),
                    U103(X1, X2, mark X3) -> U103(X1, X2, X3),
                  U103(X1, X2, active X3) -> U103(X1, X2, X3),
                    U103(X1, mark X2, X3) -> U103(X1, X2, X3),
                  U103(X1, active X2, X3) -> U103(X1, X2, X3),
                    U103(mark X1, X2, X3) -> U103(X1, X2, X3),
                  U103(active X1, X2, X3) -> U103(X1, X2, X3),
                    isNatIListKind mark X -> isNatIListKind X,
                  isNatIListKind active X -> isNatIListKind X,
                    U104(X1, X2, mark X3) -> U104(X1, X2, X3),
                  U104(X1, X2, active X3) -> U104(X1, X2, X3),
                    U104(X1, mark X2, X3) -> U104(X1, X2, X3),
                  U104(X1, active X2, X3) -> U104(X1, X2, X3),
                    U104(mark X1, X2, X3) -> U104(X1, X2, X3),
                  U104(active X1, X2, X3) -> U104(X1, X2, X3),
                        U105(X1, mark X2) -> U105(X1, X2),
                      U105(X1, active X2) -> U105(X1, X2),
                        U105(mark X1, X2) -> U105(X1, X2),
                      U105(active X1, X2) -> U105(X1, X2),
                             isNat mark X -> isNat X,
                           isNat active X -> isNat X,
                              U106 mark X -> U106 X,
                            U106 active X -> U106 X,
                        isNatIList mark X -> isNatIList X,
                      isNatIList active X -> isNatIList X,
                         U12(X1, mark X2) -> U12(X1, X2),
                       U12(X1, active X2) -> U12(X1, X2),
                         U12(mark X1, X2) -> U12(X1, X2),
                       U12(active X1, X2) -> U12(X1, X2),
                         U11(X1, mark X2) -> U11(X1, X2),
                       U11(X1, active X2) -> U11(X1, X2),
                         U11(mark X1, X2) -> U11(X1, X2),
                       U11(active X1, X2) -> U11(X1, X2),
                    U112(X1, X2, mark X3) -> U112(X1, X2, X3),
                  U112(X1, X2, active X3) -> U112(X1, X2, X3),
                    U112(X1, mark X2, X3) -> U112(X1, X2, X3),
                  U112(X1, active X2, X3) -> U112(X1, X2, X3),
                    U112(mark X1, X2, X3) -> U112(X1, X2, X3),
                  U112(active X1, X2, X3) -> U112(X1, X2, X3),
                    U111(X1, X2, mark X3) -> U111(X1, X2, X3),
                  U111(X1, X2, active X3) -> U111(X1, X2, X3),
                    U111(X1, mark X2, X3) -> U111(X1, X2, X3),
                  U111(X1, active X2, X3) -> U111(X1, X2, X3),
                    U111(mark X1, X2, X3) -> U111(X1, X2, X3),
                  U111(active X1, X2, X3) -> U111(X1, X2, X3),
                    U113(X1, X2, mark X3) -> U113(X1, X2, X3),
                  U113(X1, X2, active X3) -> U113(X1, X2, X3),
                    U113(X1, mark X2, X3) -> U113(X1, X2, X3),
                  U113(X1, active X2, X3) -> U113(X1, X2, X3),
                    U113(mark X1, X2, X3) -> U113(X1, X2, X3),
                  U113(active X1, X2, X3) -> U113(X1, X2, X3),
                        U114(X1, mark X2) -> U114(X1, X2),
                      U114(X1, active X2) -> U114(X1, X2),
                        U114(mark X1, X2) -> U114(X1, X2),
                      U114(active X1, X2) -> U114(X1, X2),
                                 s mark X -> s X,
                               s active X -> s X,
                            length mark X -> length X,
                          length active X -> length X,
                               U13 mark X -> U13 X,
                             U13 active X -> U13 X,
                         isNatList mark X -> isNatList X,
                       isNatList active X -> isNatList X,
                              U122 mark X -> U122 X,
                            U122 active X -> U122 X,
                        U121(X1, mark X2) -> U121(X1, X2),
                      U121(X1, active X2) -> U121(X1, X2),
                        U121(mark X1, X2) -> U121(X1, X2),
                      U121(active X1, X2) -> U121(X1, X2),
                U132(X1, X2, X3, mark X4) -> U132(X1, X2, X3, X4),
              U132(X1, X2, X3, active X4) -> U132(X1, X2, X3, X4),
                U132(X1, X2, mark X3, X4) -> U132(X1, X2, X3, X4),
              U132(X1, X2, active X3, X4) -> U132(X1, X2, X3, X4),
                U132(X1, mark X2, X3, X4) -> U132(X1, X2, X3, X4),
              U132(X1, active X2, X3, X4) -> U132(X1, X2, X3, X4),
                U132(mark X1, X2, X3, X4) -> U132(X1, X2, X3, X4),
              U132(active X1, X2, X3, X4) -> U132(X1, X2, X3, X4),
                U131(X1, X2, X3, mark X4) -> U131(X1, X2, X3, X4),
              U131(X1, X2, X3, active X4) -> U131(X1, X2, X3, X4),
                U131(X1, X2, mark X3, X4) -> U131(X1, X2, X3, X4),
              U131(X1, X2, active X3, X4) -> U131(X1, X2, X3, X4),
                U131(X1, mark X2, X3, X4) -> U131(X1, X2, X3, X4),
              U131(X1, active X2, X3, X4) -> U131(X1, X2, X3, X4),
                U131(mark X1, X2, X3, X4) -> U131(X1, X2, X3, X4),
              U131(active X1, X2, X3, X4) -> U131(X1, X2, X3, X4),
                U133(X1, X2, X3, mark X4) -> U133(X1, X2, X3, X4),
              U133(X1, X2, X3, active X4) -> U133(X1, X2, X3, X4),
                U133(X1, X2, mark X3, X4) -> U133(X1, X2, X3, X4),
              U133(X1, X2, active X3, X4) -> U133(X1, X2, X3, X4),
                U133(X1, mark X2, X3, X4) -> U133(X1, X2, X3, X4),
              U133(X1, active X2, X3, X4) -> U133(X1, X2, X3, X4),
                U133(mark X1, X2, X3, X4) -> U133(X1, X2, X3, X4),
              U133(active X1, X2, X3, X4) -> U133(X1, X2, X3, X4),
                U134(X1, X2, X3, mark X4) -> U134(X1, X2, X3, X4),
              U134(X1, X2, X3, active X4) -> U134(X1, X2, X3, X4),
                U134(X1, X2, mark X3, X4) -> U134(X1, X2, X3, X4),
              U134(X1, X2, active X3, X4) -> U134(X1, X2, X3, X4),
                U134(X1, mark X2, X3, X4) -> U134(X1, X2, X3, X4),
              U134(X1, active X2, X3, X4) -> U134(X1, X2, X3, X4),
                U134(mark X1, X2, X3, X4) -> U134(X1, X2, X3, X4),
              U134(active X1, X2, X3, X4) -> U134(X1, X2, X3, X4),
                U135(X1, X2, X3, mark X4) -> U135(X1, X2, X3, X4),
              U135(X1, X2, X3, active X4) -> U135(X1, X2, X3, X4),
                U135(X1, X2, mark X3, X4) -> U135(X1, X2, X3, X4),
              U135(X1, X2, active X3, X4) -> U135(X1, X2, X3, X4),
                U135(X1, mark X2, X3, X4) -> U135(X1, X2, X3, X4),
              U135(X1, active X2, X3, X4) -> U135(X1, X2, X3, X4),
                U135(mark X1, X2, X3, X4) -> U135(X1, X2, X3, X4),
              U135(active X1, X2, X3, X4) -> U135(X1, X2, X3, X4),
                U136(X1, X2, X3, mark X4) -> U136(X1, X2, X3, X4),
              U136(X1, X2, X3, active X4) -> U136(X1, X2, X3, X4),
                U136(X1, X2, mark X3, X4) -> U136(X1, X2, X3, X4),
              U136(X1, X2, active X3, X4) -> U136(X1, X2, X3, X4),
                U136(X1, mark X2, X3, X4) -> U136(X1, X2, X3, X4),
              U136(X1, active X2, X3, X4) -> U136(X1, X2, X3, X4),
                U136(mark X1, X2, X3, X4) -> U136(X1, X2, X3, X4),
              U136(active X1, X2, X3, X4) -> U136(X1, X2, X3, X4),
                        take(X1, mark X2) -> take(X1, X2),
                      take(X1, active X2) -> take(X1, X2),
                        take(mark X1, X2) -> take(X1, X2),
                      take(active X1, X2) -> take(X1, X2),
                         U22(X1, mark X2) -> U22(X1, X2),
                       U22(X1, active X2) -> U22(X1, X2),
                         U22(mark X1, X2) -> U22(X1, X2),
                       U22(active X1, X2) -> U22(X1, X2),
                         U21(X1, mark X2) -> U21(X1, X2),
                       U21(X1, active X2) -> U21(X1, X2),
                         U21(mark X1, X2) -> U21(X1, X2),
                       U21(active X1, X2) -> U21(X1, X2),
                               U23 mark X -> U23 X,
                             U23 active X -> U23 X,
                         U32(X1, mark X2) -> U32(X1, X2),
                       U32(X1, active X2) -> U32(X1, X2),
                         U32(mark X1, X2) -> U32(X1, X2),
                       U32(active X1, X2) -> U32(X1, X2),
                         U31(X1, mark X2) -> U31(X1, X2),
                       U31(X1, active X2) -> U31(X1, X2),
                         U31(mark X1, X2) -> U31(X1, X2),
                       U31(active X1, X2) -> U31(X1, X2),
                               U33 mark X -> U33 X,
                             U33 active X -> U33 X,
                     U42(X1, X2, mark X3) -> U42(X1, X2, X3),
                   U42(X1, X2, active X3) -> U42(X1, X2, X3),
                     U42(X1, mark X2, X3) -> U42(X1, X2, X3),
                   U42(X1, active X2, X3) -> U42(X1, X2, X3),
                     U42(mark X1, X2, X3) -> U42(X1, X2, X3),
                   U42(active X1, X2, X3) -> U42(X1, X2, X3),
                     U41(X1, X2, mark X3) -> U41(X1, X2, X3),
                   U41(X1, X2, active X3) -> U41(X1, X2, X3),
                     U41(X1, mark X2, X3) -> U41(X1, X2, X3),
                   U41(X1, active X2, X3) -> U41(X1, X2, X3),
                     U41(mark X1, X2, X3) -> U41(X1, X2, X3),
                   U41(active X1, X2, X3) -> U41(X1, X2, X3),
                     U43(X1, X2, mark X3) -> U43(X1, X2, X3),
                   U43(X1, X2, active X3) -> U43(X1, X2, X3),
                     U43(X1, mark X2, X3) -> U43(X1, X2, X3),
                   U43(X1, active X2, X3) -> U43(X1, X2, X3),
                     U43(mark X1, X2, X3) -> U43(X1, X2, X3),
                   U43(active X1, X2, X3) -> U43(X1, X2, X3),
                     U44(X1, X2, mark X3) -> U44(X1, X2, X3),
                   U44(X1, X2, active X3) -> U44(X1, X2, X3),
                     U44(X1, mark X2, X3) -> U44(X1, X2, X3),
                   U44(X1, active X2, X3) -> U44(X1, X2, X3),
                     U44(mark X1, X2, X3) -> U44(X1, X2, X3),
                   U44(active X1, X2, X3) -> U44(X1, X2, X3),
                         U45(X1, mark X2) -> U45(X1, X2),
                       U45(X1, active X2) -> U45(X1, X2),
                         U45(mark X1, X2) -> U45(X1, X2),
                       U45(active X1, X2) -> U45(X1, X2),
                               U46 mark X -> U46 X,
                             U46 active X -> U46 X,
                               U52 mark X -> U52 X,
                             U52 active X -> U52 X,
                         U51(X1, mark X2) -> U51(X1, X2),
                       U51(X1, active X2) -> U51(X1, X2),
                         U51(mark X1, X2) -> U51(X1, X2),
                       U51(active X1, X2) -> U51(X1, X2),
                               U62 mark X -> U62 X,
                             U62 active X -> U62 X,
                         U61(X1, mark X2) -> U61(X1, X2),
                       U61(X1, active X2) -> U61(X1, X2),
                         U61(mark X1, X2) -> U61(X1, X2),
                       U61(active X1, X2) -> U61(X1, X2),
                               U71 mark X -> U71 X,
                             U71 active X -> U71 X,
                               U81 mark X -> U81 X,
                             U81 active X -> U81 X,
                     U92(X1, X2, mark X3) -> U92(X1, X2, X3),
                   U92(X1, X2, active X3) -> U92(X1, X2, X3),
                     U92(X1, mark X2, X3) -> U92(X1, X2, X3),
                   U92(X1, active X2, X3) -> U92(X1, X2, X3),
                     U92(mark X1, X2, X3) -> U92(X1, X2, X3),
                   U92(active X1, X2, X3) -> U92(X1, X2, X3),
                     U91(X1, X2, mark X3) -> U91(X1, X2, X3),
                   U91(X1, X2, active X3) -> U91(X1, X2, X3),
                     U91(X1, mark X2, X3) -> U91(X1, X2, X3),
                   U91(X1, active X2, X3) -> U91(X1, X2, X3),
                     U91(mark X1, X2, X3) -> U91(X1, X2, X3),
                   U91(active X1, X2, X3) -> U91(X1, X2, X3),
                     U93(X1, X2, mark X3) -> U93(X1, X2, X3),
                   U93(X1, X2, active X3) -> U93(X1, X2, X3),
                     U93(X1, mark X2, X3) -> U93(X1, X2, X3),
                   U93(X1, active X2, X3) -> U93(X1, X2, X3),
                     U93(mark X1, X2, X3) -> U93(X1, X2, X3),
                   U93(active X1, X2, X3) -> U93(X1, X2, X3),
                     U94(X1, X2, mark X3) -> U94(X1, X2, X3),
                   U94(X1, X2, active X3) -> U94(X1, X2, X3),
                     U94(X1, mark X2, X3) -> U94(X1, X2, X3),
                   U94(X1, active X2, X3) -> U94(X1, X2, X3),
                     U94(mark X1, X2, X3) -> U94(X1, X2, X3),
                   U94(active X1, X2, X3) -> U94(X1, X2, X3),
                         U95(X1, mark X2) -> U95(X1, X2),
                       U95(X1, active X2) -> U95(X1, X2),
                         U95(mark X1, X2) -> U95(X1, X2),
                       U95(active X1, X2) -> U95(X1, X2),
                               U96 mark X -> U96 X,
                             U96 active X -> U96 X
      }
      Open
     
     
     
     SCC (4):
      Strict:
       {  U31#(X1, mark X2) -> U31#(X1, X2),
        U31#(X1, active X2) -> U31#(X1, X2),
          U31#(mark X1, X2) -> U31#(X1, X2),
        U31#(active X1, X2) -> U31#(X1, X2)}
      Weak:
      {
                        mark cons(X1, X2) -> active cons(mark X1, X2),
                                 mark 0() -> active 0(),
                             mark zeros() -> active zeros(),
                    mark U102(X1, X2, X3) -> active U102(mark X1, X2, X3),
                         mark isNatKind X -> active isNatKind X,
                    mark U101(X1, X2, X3) -> active U101(mark X1, X2, X3),
                                mark tt() -> active tt(),
                    mark U103(X1, X2, X3) -> active U103(mark X1, X2, X3),
                    mark isNatIListKind X -> active isNatIListKind X,
                    mark U104(X1, X2, X3) -> active U104(mark X1, X2, X3),
                        mark U105(X1, X2) -> active U105(mark X1, X2),
                             mark isNat X -> active isNat X,
                              mark U106 X -> active U106 mark X,
                        mark isNatIList X -> active isNatIList X,
                         mark U12(X1, X2) -> active U12(mark X1, X2),
                         mark U11(X1, X2) -> active U11(mark X1, X2),
                    mark U112(X1, X2, X3) -> active U112(mark X1, X2, X3),
                    mark U111(X1, X2, X3) -> active U111(mark X1, X2, X3),
                    mark U113(X1, X2, X3) -> active U113(mark X1, X2, X3),
                        mark U114(X1, X2) -> active U114(mark X1, X2),
                                 mark s X -> active s mark X,
                            mark length X -> active length mark X,
                               mark U13 X -> active U13 mark X,
                         mark isNatList X -> active isNatList X,
                              mark U122 X -> active U122 mark X,
                        mark U121(X1, X2) -> active U121(mark X1, X2),
                               mark nil() -> active nil(),
                mark U132(X1, X2, X3, X4) -> active U132(mark X1, X2, X3, X4),
                mark U131(X1, X2, X3, X4) -> active U131(mark X1, X2, X3, X4),
                mark U133(X1, X2, X3, X4) -> active U133(mark X1, X2, X3, X4),
                mark U134(X1, X2, X3, X4) -> active U134(mark X1, X2, X3, X4),
                mark U135(X1, X2, X3, X4) -> active U135(mark X1, X2, X3, X4),
                mark U136(X1, X2, X3, X4) -> active U136(mark X1, X2, X3, X4),
                        mark take(X1, X2) -> active take(mark X1, mark X2),
                         mark U22(X1, X2) -> active U22(mark X1, X2),
                         mark U21(X1, X2) -> active U21(mark X1, X2),
                               mark U23 X -> active U23 mark X,
                         mark U32(X1, X2) -> active U32(mark X1, X2),
                         mark U31(X1, X2) -> active U31(mark X1, X2),
                               mark U33 X -> active U33 mark X,
                     mark U42(X1, X2, X3) -> active U42(mark X1, X2, X3),
                     mark U41(X1, X2, X3) -> active U41(mark X1, X2, X3),
                     mark U43(X1, X2, X3) -> active U43(mark X1, X2, X3),
                     mark U44(X1, X2, X3) -> active U44(mark X1, X2, X3),
                         mark U45(X1, X2) -> active U45(mark X1, X2),
                               mark U46 X -> active U46 mark X,
                               mark U52 X -> active U52 mark X,
                         mark U51(X1, X2) -> active U51(mark X1, X2),
                               mark U62 X -> active U62 mark X,
                         mark U61(X1, X2) -> active U61(mark X1, X2),
                               mark U71 X -> active U71 mark X,
                               mark U81 X -> active U81 mark X,
                     mark U92(X1, X2, X3) -> active U92(mark X1, X2, X3),
                     mark U91(X1, X2, X3) -> active U91(mark X1, X2, X3),
                     mark U93(X1, X2, X3) -> active U93(mark X1, X2, X3),
                     mark U94(X1, X2, X3) -> active U94(mark X1, X2, X3),
                         mark U95(X1, X2) -> active U95(mark X1, X2),
                               mark U96 X -> active U96 mark X,
                        cons(X1, mark X2) -> cons(X1, X2),
                      cons(X1, active X2) -> cons(X1, X2),
                        cons(mark X1, X2) -> cons(X1, X2),
                      cons(active X1, X2) -> cons(X1, X2),
                           active zeros() -> mark cons(0(), zeros()),
                active U102(tt(), V1, V2) -> mark U103(isNatIListKind V2, V1, V2),
                     active isNatKind 0() -> mark tt(),
                    active isNatKind s V1 -> mark U81 isNatKind V1,
               active isNatKind length V1 -> mark U71 isNatIListKind V1,
                active U101(tt(), V1, V2) -> mark U102(isNatKind V1, V1, V2),
                active U103(tt(), V1, V2) -> mark U104(isNatIListKind V2, V1, V2),
       active isNatIListKind cons(V1, V2) -> mark U51(isNatKind V1, V2),
            active isNatIListKind zeros() -> mark tt(),
              active isNatIListKind nil() -> mark tt(),
       active isNatIListKind take(V1, V2) -> mark U61(isNatKind V1, V2),
                active U104(tt(), V1, V2) -> mark U105(isNat V1, V2),
                    active U105(tt(), V2) -> mark U106 isNatIList V2,
                         active isNat 0() -> mark tt(),
                        active isNat s V1 -> mark U21(isNatKind V1, V1),
                   active isNat length V1 -> mark U11(isNatIListKind V1, V1),
                         active U106 tt() -> mark tt(),
                      active isNatIList V -> mark U31(isNatIListKind V, V),
           active isNatIList cons(V1, V2) -> mark U41(isNatKind V1, V1, V2),
                active isNatIList zeros() -> mark tt(),
                     active U12(tt(), V1) -> mark U13 isNatList V1,
                     active U11(tt(), V1) -> mark U12(isNatIListKind V1, V1),
                  active U112(tt(), L, N) -> mark U113(isNat N, L, N),
                  active U111(tt(), L, N) -> mark U112(isNatIListKind L, L, N),
                  active U113(tt(), L, N) -> mark U114(isNatKind N, L),
                     active U114(tt(), L) -> mark s length L,
                 active length cons(N, L) -> mark U111(isNatList L, L, N),
                      active length nil() -> mark 0(),
                          active U13 tt() -> mark tt(),
            active isNatList cons(V1, V2) -> mark U91(isNatKind V1, V1, V2),
                   active isNatList nil() -> mark tt(),
            active isNatList take(V1, V2) -> mark U101(isNatKind V1, V1, V2),
                         active U122 tt() -> mark nil(),
                    active U121(tt(), IL) -> mark U122 isNatIListKind IL,
              active U132(tt(), IL, M, N) -> mark U133(isNat M, IL, M, N),
              active U131(tt(), IL, M, N) -> mark U132(isNatIListKind IL, IL, M, N),
              active U133(tt(), IL, M, N) -> mark U134(isNatKind M, IL, M, N),
              active U134(tt(), IL, M, N) -> mark U135(isNat N, IL, M, N),
              active U135(tt(), IL, M, N) -> mark U136(isNatKind N, IL, M, N),
              active U136(tt(), IL, M, N) -> mark cons(N, take(M, IL)),
                     active take(0(), IL) -> mark U121(isNatIList IL, IL),
            active take(s M, cons(N, IL)) -> mark U131(isNatIList IL, IL, M, N),
                     active U22(tt(), V1) -> mark U23 isNat V1,
                     active U21(tt(), V1) -> mark U22(isNatKind V1, V1),
                          active U23 tt() -> mark tt(),
                      active U32(tt(), V) -> mark U33 isNatList V,
                      active U31(tt(), V) -> mark U32(isNatIListKind V, V),
                          active U33 tt() -> mark tt(),
                 active U42(tt(), V1, V2) -> mark U43(isNatIListKind V2, V1, V2),
                 active U41(tt(), V1, V2) -> mark U42(isNatKind V1, V1, V2),
                 active U43(tt(), V1, V2) -> mark U44(isNatIListKind V2, V1, V2),
                 active U44(tt(), V1, V2) -> mark U45(isNat V1, V2),
                     active U45(tt(), V2) -> mark U46 isNatIList V2,
                          active U46 tt() -> mark tt(),
                          active U52 tt() -> mark tt(),
                     active U51(tt(), V2) -> mark U52 isNatIListKind V2,
                          active U62 tt() -> mark tt(),
                     active U61(tt(), V2) -> mark U62 isNatIListKind V2,
                          active U71 tt() -> mark tt(),
                          active U81 tt() -> mark tt(),
                 active U92(tt(), V1, V2) -> mark U93(isNatIListKind V2, V1, V2),
                 active U91(tt(), V1, V2) -> mark U92(isNatKind V1, V1, V2),
                 active U93(tt(), V1, V2) -> mark U94(isNatIListKind V2, V1, V2),
                 active U94(tt(), V1, V2) -> mark U95(isNat V1, V2),
                     active U95(tt(), V2) -> mark U96 isNatList V2,
                          active U96 tt() -> mark tt(),
                    U102(X1, X2, mark X3) -> U102(X1, X2, X3),
                  U102(X1, X2, active X3) -> U102(X1, X2, X3),
                    U102(X1, mark X2, X3) -> U102(X1, X2, X3),
                  U102(X1, active X2, X3) -> U102(X1, X2, X3),
                    U102(mark X1, X2, X3) -> U102(X1, X2, X3),
                  U102(active X1, X2, X3) -> U102(X1, X2, X3),
                         isNatKind mark X -> isNatKind X,
                       isNatKind active X -> isNatKind X,
                    U101(X1, X2, mark X3) -> U101(X1, X2, X3),
                  U101(X1, X2, active X3) -> U101(X1, X2, X3),
                    U101(X1, mark X2, X3) -> U101(X1, X2, X3),
                  U101(X1, active X2, X3) -> U101(X1, X2, X3),
                    U101(mark X1, X2, X3) -> U101(X1, X2, X3),
                  U101(active X1, X2, X3) -> U101(X1, X2, X3),
                    U103(X1, X2, mark X3) -> U103(X1, X2, X3),
                  U103(X1, X2, active X3) -> U103(X1, X2, X3),
                    U103(X1, mark X2, X3) -> U103(X1, X2, X3),
                  U103(X1, active X2, X3) -> U103(X1, X2, X3),
                    U103(mark X1, X2, X3) -> U103(X1, X2, X3),
                  U103(active X1, X2, X3) -> U103(X1, X2, X3),
                    isNatIListKind mark X -> isNatIListKind X,
                  isNatIListKind active X -> isNatIListKind X,
                    U104(X1, X2, mark X3) -> U104(X1, X2, X3),
                  U104(X1, X2, active X3) -> U104(X1, X2, X3),
                    U104(X1, mark X2, X3) -> U104(X1, X2, X3),
                  U104(X1, active X2, X3) -> U104(X1, X2, X3),
                    U104(mark X1, X2, X3) -> U104(X1, X2, X3),
                  U104(active X1, X2, X3) -> U104(X1, X2, X3),
                        U105(X1, mark X2) -> U105(X1, X2),
                      U105(X1, active X2) -> U105(X1, X2),
                        U105(mark X1, X2) -> U105(X1, X2),
                      U105(active X1, X2) -> U105(X1, X2),
                             isNat mark X -> isNat X,
                           isNat active X -> isNat X,
                              U106 mark X -> U106 X,
                            U106 active X -> U106 X,
                        isNatIList mark X -> isNatIList X,
                      isNatIList active X -> isNatIList X,
                         U12(X1, mark X2) -> U12(X1, X2),
                       U12(X1, active X2) -> U12(X1, X2),
                         U12(mark X1, X2) -> U12(X1, X2),
                       U12(active X1, X2) -> U12(X1, X2),
                         U11(X1, mark X2) -> U11(X1, X2),
                       U11(X1, active X2) -> U11(X1, X2),
                         U11(mark X1, X2) -> U11(X1, X2),
                       U11(active X1, X2) -> U11(X1, X2),
                    U112(X1, X2, mark X3) -> U112(X1, X2, X3),
                  U112(X1, X2, active X3) -> U112(X1, X2, X3),
                    U112(X1, mark X2, X3) -> U112(X1, X2, X3),
                  U112(X1, active X2, X3) -> U112(X1, X2, X3),
                    U112(mark X1, X2, X3) -> U112(X1, X2, X3),
                  U112(active X1, X2, X3) -> U112(X1, X2, X3),
                    U111(X1, X2, mark X3) -> U111(X1, X2, X3),
                  U111(X1, X2, active X3) -> U111(X1, X2, X3),
                    U111(X1, mark X2, X3) -> U111(X1, X2, X3),
                  U111(X1, active X2, X3) -> U111(X1, X2, X3),
                    U111(mark X1, X2, X3) -> U111(X1, X2, X3),
                  U111(active X1, X2, X3) -> U111(X1, X2, X3),
                    U113(X1, X2, mark X3) -> U113(X1, X2, X3),
                  U113(X1, X2, active X3) -> U113(X1, X2, X3),
                    U113(X1, mark X2, X3) -> U113(X1, X2, X3),
                  U113(X1, active X2, X3) -> U113(X1, X2, X3),
                    U113(mark X1, X2, X3) -> U113(X1, X2, X3),
                  U113(active X1, X2, X3) -> U113(X1, X2, X3),
                        U114(X1, mark X2) -> U114(X1, X2),
                      U114(X1, active X2) -> U114(X1, X2),
                        U114(mark X1, X2) -> U114(X1, X2),
                      U114(active X1, X2) -> U114(X1, X2),
                                 s mark X -> s X,
                               s active X -> s X,
                            length mark X -> length X,
                          length active X -> length X,
                               U13 mark X -> U13 X,
                             U13 active X -> U13 X,
                         isNatList mark X -> isNatList X,
                       isNatList active X -> isNatList X,
                              U122 mark X -> U122 X,
                            U122 active X -> U122 X,
                        U121(X1, mark X2) -> U121(X1, X2),
                      U121(X1, active X2) -> U121(X1, X2),
                        U121(mark X1, X2) -> U121(X1, X2),
                      U121(active X1, X2) -> U121(X1, X2),
                U132(X1, X2, X3, mark X4) -> U132(X1, X2, X3, X4),
              U132(X1, X2, X3, active X4) -> U132(X1, X2, X3, X4),
                U132(X1, X2, mark X3, X4) -> U132(X1, X2, X3, X4),
              U132(X1, X2, active X3, X4) -> U132(X1, X2, X3, X4),
                U132(X1, mark X2, X3, X4) -> U132(X1, X2, X3, X4),
              U132(X1, active X2, X3, X4) -> U132(X1, X2, X3, X4),
                U132(mark X1, X2, X3, X4) -> U132(X1, X2, X3, X4),
              U132(active X1, X2, X3, X4) -> U132(X1, X2, X3, X4),
                U131(X1, X2, X3, mark X4) -> U131(X1, X2, X3, X4),
              U131(X1, X2, X3, active X4) -> U131(X1, X2, X3, X4),
                U131(X1, X2, mark X3, X4) -> U131(X1, X2, X3, X4),
              U131(X1, X2, active X3, X4) -> U131(X1, X2, X3, X4),
                U131(X1, mark X2, X3, X4) -> U131(X1, X2, X3, X4),
              U131(X1, active X2, X3, X4) -> U131(X1, X2, X3, X4),
                U131(mark X1, X2, X3, X4) -> U131(X1, X2, X3, X4),
              U131(active X1, X2, X3, X4) -> U131(X1, X2, X3, X4),
                U133(X1, X2, X3, mark X4) -> U133(X1, X2, X3, X4),
              U133(X1, X2, X3, active X4) -> U133(X1, X2, X3, X4),
                U133(X1, X2, mark X3, X4) -> U133(X1, X2, X3, X4),
              U133(X1, X2, active X3, X4) -> U133(X1, X2, X3, X4),
                U133(X1, mark X2, X3, X4) -> U133(X1, X2, X3, X4),
              U133(X1, active X2, X3, X4) -> U133(X1, X2, X3, X4),
                U133(mark X1, X2, X3, X4) -> U133(X1, X2, X3, X4),
              U133(active X1, X2, X3, X4) -> U133(X1, X2, X3, X4),
                U134(X1, X2, X3, mark X4) -> U134(X1, X2, X3, X4),
              U134(X1, X2, X3, active X4) -> U134(X1, X2, X3, X4),
                U134(X1, X2, mark X3, X4) -> U134(X1, X2, X3, X4),
              U134(X1, X2, active X3, X4) -> U134(X1, X2, X3, X4),
                U134(X1, mark X2, X3, X4) -> U134(X1, X2, X3, X4),
              U134(X1, active X2, X3, X4) -> U134(X1, X2, X3, X4),
                U134(mark X1, X2, X3, X4) -> U134(X1, X2, X3, X4),
              U134(active X1, X2, X3, X4) -> U134(X1, X2, X3, X4),
                U135(X1, X2, X3, mark X4) -> U135(X1, X2, X3, X4),
              U135(X1, X2, X3, active X4) -> U135(X1, X2, X3, X4),
                U135(X1, X2, mark X3, X4) -> U135(X1, X2, X3, X4),
              U135(X1, X2, active X3, X4) -> U135(X1, X2, X3, X4),
                U135(X1, mark X2, X3, X4) -> U135(X1, X2, X3, X4),
              U135(X1, active X2, X3, X4) -> U135(X1, X2, X3, X4),
                U135(mark X1, X2, X3, X4) -> U135(X1, X2, X3, X4),
              U135(active X1, X2, X3, X4) -> U135(X1, X2, X3, X4),
                U136(X1, X2, X3, mark X4) -> U136(X1, X2, X3, X4),
              U136(X1, X2, X3, active X4) -> U136(X1, X2, X3, X4),
                U136(X1, X2, mark X3, X4) -> U136(X1, X2, X3, X4),
              U136(X1, X2, active X3, X4) -> U136(X1, X2, X3, X4),
                U136(X1, mark X2, X3, X4) -> U136(X1, X2, X3, X4),
              U136(X1, active X2, X3, X4) -> U136(X1, X2, X3, X4),
                U136(mark X1, X2, X3, X4) -> U136(X1, X2, X3, X4),
              U136(active X1, X2, X3, X4) -> U136(X1, X2, X3, X4),
                        take(X1, mark X2) -> take(X1, X2),
                      take(X1, active X2) -> take(X1, X2),
                        take(mark X1, X2) -> take(X1, X2),
                      take(active X1, X2) -> take(X1, X2),
                         U22(X1, mark X2) -> U22(X1, X2),
                       U22(X1, active X2) -> U22(X1, X2),
                         U22(mark X1, X2) -> U22(X1, X2),
                       U22(active X1, X2) -> U22(X1, X2),
                         U21(X1, mark X2) -> U21(X1, X2),
                       U21(X1, active X2) -> U21(X1, X2),
                         U21(mark X1, X2) -> U21(X1, X2),
                       U21(active X1, X2) -> U21(X1, X2),
                               U23 mark X -> U23 X,
                             U23 active X -> U23 X,
                         U32(X1, mark X2) -> U32(X1, X2),
                       U32(X1, active X2) -> U32(X1, X2),
                         U32(mark X1, X2) -> U32(X1, X2),
                       U32(active X1, X2) -> U32(X1, X2),
                         U31(X1, mark X2) -> U31(X1, X2),
                       U31(X1, active X2) -> U31(X1, X2),
                         U31(mark X1, X2) -> U31(X1, X2),
                       U31(active X1, X2) -> U31(X1, X2),
                               U33 mark X -> U33 X,
                             U33 active X -> U33 X,
                     U42(X1, X2, mark X3) -> U42(X1, X2, X3),
                   U42(X1, X2, active X3) -> U42(X1, X2, X3),
                     U42(X1, mark X2, X3) -> U42(X1, X2, X3),
                   U42(X1, active X2, X3) -> U42(X1, X2, X3),
                     U42(mark X1, X2, X3) -> U42(X1, X2, X3),
                   U42(active X1, X2, X3) -> U42(X1, X2, X3),
                     U41(X1, X2, mark X3) -> U41(X1, X2, X3),
                   U41(X1, X2, active X3) -> U41(X1, X2, X3),
                     U41(X1, mark X2, X3) -> U41(X1, X2, X3),
                   U41(X1, active X2, X3) -> U41(X1, X2, X3),
                     U41(mark X1, X2, X3) -> U41(X1, X2, X3),
                   U41(active X1, X2, X3) -> U41(X1, X2, X3),
                     U43(X1, X2, mark X3) -> U43(X1, X2, X3),
                   U43(X1, X2, active X3) -> U43(X1, X2, X3),
                     U43(X1, mark X2, X3) -> U43(X1, X2, X3),
                   U43(X1, active X2, X3) -> U43(X1, X2, X3),
                     U43(mark X1, X2, X3) -> U43(X1, X2, X3),
                   U43(active X1, X2, X3) -> U43(X1, X2, X3),
                     U44(X1, X2, mark X3) -> U44(X1, X2, X3),
                   U44(X1, X2, active X3) -> U44(X1, X2, X3),
                     U44(X1, mark X2, X3) -> U44(X1, X2, X3),
                   U44(X1, active X2, X3) -> U44(X1, X2, X3),
                     U44(mark X1, X2, X3) -> U44(X1, X2, X3),
                   U44(active X1, X2, X3) -> U44(X1, X2, X3),
                         U45(X1, mark X2) -> U45(X1, X2),
                       U45(X1, active X2) -> U45(X1, X2),
                         U45(mark X1, X2) -> U45(X1, X2),
                       U45(active X1, X2) -> U45(X1, X2),
                               U46 mark X -> U46 X,
                             U46 active X -> U46 X,
                               U52 mark X -> U52 X,
                             U52 active X -> U52 X,
                         U51(X1, mark X2) -> U51(X1, X2),
                       U51(X1, active X2) -> U51(X1, X2),
                         U51(mark X1, X2) -> U51(X1, X2),
                       U51(active X1, X2) -> U51(X1, X2),
                               U62 mark X -> U62 X,
                             U62 active X -> U62 X,
                         U61(X1, mark X2) -> U61(X1, X2),
                       U61(X1, active X2) -> U61(X1, X2),
                         U61(mark X1, X2) -> U61(X1, X2),
                       U61(active X1, X2) -> U61(X1, X2),
                               U71 mark X -> U71 X,
                             U71 active X -> U71 X,
                               U81 mark X -> U81 X,
                             U81 active X -> U81 X,
                     U92(X1, X2, mark X3) -> U92(X1, X2, X3),
                   U92(X1, X2, active X3) -> U92(X1, X2, X3),
                     U92(X1, mark X2, X3) -> U92(X1, X2, X3),
                   U92(X1, active X2, X3) -> U92(X1, X2, X3),
                     U92(mark X1, X2, X3) -> U92(X1, X2, X3),
                   U92(active X1, X2, X3) -> U92(X1, X2, X3),
                     U91(X1, X2, mark X3) -> U91(X1, X2, X3),
                   U91(X1, X2, active X3) -> U91(X1, X2, X3),
                     U91(X1, mark X2, X3) -> U91(X1, X2, X3),
                   U91(X1, active X2, X3) -> U91(X1, X2, X3),
                     U91(mark X1, X2, X3) -> U91(X1, X2, X3),
                   U91(active X1, X2, X3) -> U91(X1, X2, X3),
                     U93(X1, X2, mark X3) -> U93(X1, X2, X3),
                   U93(X1, X2, active X3) -> U93(X1, X2, X3),
                     U93(X1, mark X2, X3) -> U93(X1, X2, X3),
                   U93(X1, active X2, X3) -> U93(X1, X2, X3),
                     U93(mark X1, X2, X3) -> U93(X1, X2, X3),
                   U93(active X1, X2, X3) -> U93(X1, X2, X3),
                     U94(X1, X2, mark X3) -> U94(X1, X2, X3),
                   U94(X1, X2, active X3) -> U94(X1, X2, X3),
                     U94(X1, mark X2, X3) -> U94(X1, X2, X3),
                   U94(X1, active X2, X3) -> U94(X1, X2, X3),
                     U94(mark X1, X2, X3) -> U94(X1, X2, X3),
                   U94(active X1, X2, X3) -> U94(X1, X2, X3),
                         U95(X1, mark X2) -> U95(X1, X2),
                       U95(X1, active X2) -> U95(X1, X2),
                         U95(mark X1, X2) -> U95(X1, X2),
                       U95(active X1, X2) -> U95(X1, X2),
                               U96 mark X -> U96 X,
                             U96 active X -> U96 X
      }
      Open
     
     
     
     SCC (4):
      Strict:
       {  U32#(X1, mark X2) -> U32#(X1, X2),
        U32#(X1, active X2) -> U32#(X1, X2),
          U32#(mark X1, X2) -> U32#(X1, X2),
        U32#(active X1, X2) -> U32#(X1, X2)}
      Weak:
      {
                        mark cons(X1, X2) -> active cons(mark X1, X2),
                                 mark 0() -> active 0(),
                             mark zeros() -> active zeros(),
                    mark U102(X1, X2, X3) -> active U102(mark X1, X2, X3),
                         mark isNatKind X -> active isNatKind X,
                    mark U101(X1, X2, X3) -> active U101(mark X1, X2, X3),
                                mark tt() -> active tt(),
                    mark U103(X1, X2, X3) -> active U103(mark X1, X2, X3),
                    mark isNatIListKind X -> active isNatIListKind X,
                    mark U104(X1, X2, X3) -> active U104(mark X1, X2, X3),
                        mark U105(X1, X2) -> active U105(mark X1, X2),
                             mark isNat X -> active isNat X,
                              mark U106 X -> active U106 mark X,
                        mark isNatIList X -> active isNatIList X,
                         mark U12(X1, X2) -> active U12(mark X1, X2),
                         mark U11(X1, X2) -> active U11(mark X1, X2),
                    mark U112(X1, X2, X3) -> active U112(mark X1, X2, X3),
                    mark U111(X1, X2, X3) -> active U111(mark X1, X2, X3),
                    mark U113(X1, X2, X3) -> active U113(mark X1, X2, X3),
                        mark U114(X1, X2) -> active U114(mark X1, X2),
                                 mark s X -> active s mark X,
                            mark length X -> active length mark X,
                               mark U13 X -> active U13 mark X,
                         mark isNatList X -> active isNatList X,
                              mark U122 X -> active U122 mark X,
                        mark U121(X1, X2) -> active U121(mark X1, X2),
                               mark nil() -> active nil(),
                mark U132(X1, X2, X3, X4) -> active U132(mark X1, X2, X3, X4),
                mark U131(X1, X2, X3, X4) -> active U131(mark X1, X2, X3, X4),
                mark U133(X1, X2, X3, X4) -> active U133(mark X1, X2, X3, X4),
                mark U134(X1, X2, X3, X4) -> active U134(mark X1, X2, X3, X4),
                mark U135(X1, X2, X3, X4) -> active U135(mark X1, X2, X3, X4),
                mark U136(X1, X2, X3, X4) -> active U136(mark X1, X2, X3, X4),
                        mark take(X1, X2) -> active take(mark X1, mark X2),
                         mark U22(X1, X2) -> active U22(mark X1, X2),
                         mark U21(X1, X2) -> active U21(mark X1, X2),
                               mark U23 X -> active U23 mark X,
                         mark U32(X1, X2) -> active U32(mark X1, X2),
                         mark U31(X1, X2) -> active U31(mark X1, X2),
                               mark U33 X -> active U33 mark X,
                     mark U42(X1, X2, X3) -> active U42(mark X1, X2, X3),
                     mark U41(X1, X2, X3) -> active U41(mark X1, X2, X3),
                     mark U43(X1, X2, X3) -> active U43(mark X1, X2, X3),
                     mark U44(X1, X2, X3) -> active U44(mark X1, X2, X3),
                         mark U45(X1, X2) -> active U45(mark X1, X2),
                               mark U46 X -> active U46 mark X,
                               mark U52 X -> active U52 mark X,
                         mark U51(X1, X2) -> active U51(mark X1, X2),
                               mark U62 X -> active U62 mark X,
                         mark U61(X1, X2) -> active U61(mark X1, X2),
                               mark U71 X -> active U71 mark X,
                               mark U81 X -> active U81 mark X,
                     mark U92(X1, X2, X3) -> active U92(mark X1, X2, X3),
                     mark U91(X1, X2, X3) -> active U91(mark X1, X2, X3),
                     mark U93(X1, X2, X3) -> active U93(mark X1, X2, X3),
                     mark U94(X1, X2, X3) -> active U94(mark X1, X2, X3),
                         mark U95(X1, X2) -> active U95(mark X1, X2),
                               mark U96 X -> active U96 mark X,
                        cons(X1, mark X2) -> cons(X1, X2),
                      cons(X1, active X2) -> cons(X1, X2),
                        cons(mark X1, X2) -> cons(X1, X2),
                      cons(active X1, X2) -> cons(X1, X2),
                           active zeros() -> mark cons(0(), zeros()),
                active U102(tt(), V1, V2) -> mark U103(isNatIListKind V2, V1, V2),
                     active isNatKind 0() -> mark tt(),
                    active isNatKind s V1 -> mark U81 isNatKind V1,
               active isNatKind length V1 -> mark U71 isNatIListKind V1,
                active U101(tt(), V1, V2) -> mark U102(isNatKind V1, V1, V2),
                active U103(tt(), V1, V2) -> mark U104(isNatIListKind V2, V1, V2),
       active isNatIListKind cons(V1, V2) -> mark U51(isNatKind V1, V2),
            active isNatIListKind zeros() -> mark tt(),
              active isNatIListKind nil() -> mark tt(),
       active isNatIListKind take(V1, V2) -> mark U61(isNatKind V1, V2),
                active U104(tt(), V1, V2) -> mark U105(isNat V1, V2),
                    active U105(tt(), V2) -> mark U106 isNatIList V2,
                         active isNat 0() -> mark tt(),
                        active isNat s V1 -> mark U21(isNatKind V1, V1),
                   active isNat length V1 -> mark U11(isNatIListKind V1, V1),
                         active U106 tt() -> mark tt(),
                      active isNatIList V -> mark U31(isNatIListKind V, V),
           active isNatIList cons(V1, V2) -> mark U41(isNatKind V1, V1, V2),
                active isNatIList zeros() -> mark tt(),
                     active U12(tt(), V1) -> mark U13 isNatList V1,
                     active U11(tt(), V1) -> mark U12(isNatIListKind V1, V1),
                  active U112(tt(), L, N) -> mark U113(isNat N, L, N),
                  active U111(tt(), L, N) -> mark U112(isNatIListKind L, L, N),
                  active U113(tt(), L, N) -> mark U114(isNatKind N, L),
                     active U114(tt(), L) -> mark s length L,
                 active length cons(N, L) -> mark U111(isNatList L, L, N),
                      active length nil() -> mark 0(),
                          active U13 tt() -> mark tt(),
            active isNatList cons(V1, V2) -> mark U91(isNatKind V1, V1, V2),
                   active isNatList nil() -> mark tt(),
            active isNatList take(V1, V2) -> mark U101(isNatKind V1, V1, V2),
                         active U122 tt() -> mark nil(),
                    active U121(tt(), IL) -> mark U122 isNatIListKind IL,
              active U132(tt(), IL, M, N) -> mark U133(isNat M, IL, M, N),
              active U131(tt(), IL, M, N) -> mark U132(isNatIListKind IL, IL, M, N),
              active U133(tt(), IL, M, N) -> mark U134(isNatKind M, IL, M, N),
              active U134(tt(), IL, M, N) -> mark U135(isNat N, IL, M, N),
              active U135(tt(), IL, M, N) -> mark U136(isNatKind N, IL, M, N),
              active U136(tt(), IL, M, N) -> mark cons(N, take(M, IL)),
                     active take(0(), IL) -> mark U121(isNatIList IL, IL),
            active take(s M, cons(N, IL)) -> mark U131(isNatIList IL, IL, M, N),
                     active U22(tt(), V1) -> mark U23 isNat V1,
                     active U21(tt(), V1) -> mark U22(isNatKind V1, V1),
                          active U23 tt() -> mark tt(),
                      active U32(tt(), V) -> mark U33 isNatList V,
                      active U31(tt(), V) -> mark U32(isNatIListKind V, V),
                          active U33 tt() -> mark tt(),
                 active U42(tt(), V1, V2) -> mark U43(isNatIListKind V2, V1, V2),
                 active U41(tt(), V1, V2) -> mark U42(isNatKind V1, V1, V2),
                 active U43(tt(), V1, V2) -> mark U44(isNatIListKind V2, V1, V2),
                 active U44(tt(), V1, V2) -> mark U45(isNat V1, V2),
                     active U45(tt(), V2) -> mark U46 isNatIList V2,
                          active U46 tt() -> mark tt(),
                          active U52 tt() -> mark tt(),
                     active U51(tt(), V2) -> mark U52 isNatIListKind V2,
                          active U62 tt() -> mark tt(),
                     active U61(tt(), V2) -> mark U62 isNatIListKind V2,
                          active U71 tt() -> mark tt(),
                          active U81 tt() -> mark tt(),
                 active U92(tt(), V1, V2) -> mark U93(isNatIListKind V2, V1, V2),
                 active U91(tt(), V1, V2) -> mark U92(isNatKind V1, V1, V2),
                 active U93(tt(), V1, V2) -> mark U94(isNatIListKind V2, V1, V2),
                 active U94(tt(), V1, V2) -> mark U95(isNat V1, V2),
                     active U95(tt(), V2) -> mark U96 isNatList V2,
                          active U96 tt() -> mark tt(),
                    U102(X1, X2, mark X3) -> U102(X1, X2, X3),
                  U102(X1, X2, active X3) -> U102(X1, X2, X3),
                    U102(X1, mark X2, X3) -> U102(X1, X2, X3),
                  U102(X1, active X2, X3) -> U102(X1, X2, X3),
                    U102(mark X1, X2, X3) -> U102(X1, X2, X3),
                  U102(active X1, X2, X3) -> U102(X1, X2, X3),
                         isNatKind mark X -> isNatKind X,
                       isNatKind active X -> isNatKind X,
                    U101(X1, X2, mark X3) -> U101(X1, X2, X3),
                  U101(X1, X2, active X3) -> U101(X1, X2, X3),
                    U101(X1, mark X2, X3) -> U101(X1, X2, X3),
                  U101(X1, active X2, X3) -> U101(X1, X2, X3),
                    U101(mark X1, X2, X3) -> U101(X1, X2, X3),
                  U101(active X1, X2, X3) -> U101(X1, X2, X3),
                    U103(X1, X2, mark X3) -> U103(X1, X2, X3),
                  U103(X1, X2, active X3) -> U103(X1, X2, X3),
                    U103(X1, mark X2, X3) -> U103(X1, X2, X3),
                  U103(X1, active X2, X3) -> U103(X1, X2, X3),
                    U103(mark X1, X2, X3) -> U103(X1, X2, X3),
                  U103(active X1, X2, X3) -> U103(X1, X2, X3),
                    isNatIListKind mark X -> isNatIListKind X,
                  isNatIListKind active X -> isNatIListKind X,
                    U104(X1, X2, mark X3) -> U104(X1, X2, X3),
                  U104(X1, X2, active X3) -> U104(X1, X2, X3),
                    U104(X1, mark X2, X3) -> U104(X1, X2, X3),
                  U104(X1, active X2, X3) -> U104(X1, X2, X3),
                    U104(mark X1, X2, X3) -> U104(X1, X2, X3),
                  U104(active X1, X2, X3) -> U104(X1, X2, X3),
                        U105(X1, mark X2) -> U105(X1, X2),
                      U105(X1, active X2) -> U105(X1, X2),
                        U105(mark X1, X2) -> U105(X1, X2),
                      U105(active X1, X2) -> U105(X1, X2),
                             isNat mark X -> isNat X,
                           isNat active X -> isNat X,
                              U106 mark X -> U106 X,
                            U106 active X -> U106 X,
                        isNatIList mark X -> isNatIList X,
                      isNatIList active X -> isNatIList X,
                         U12(X1, mark X2) -> U12(X1, X2),
                       U12(X1, active X2) -> U12(X1, X2),
                         U12(mark X1, X2) -> U12(X1, X2),
                       U12(active X1, X2) -> U12(X1, X2),
                         U11(X1, mark X2) -> U11(X1, X2),
                       U11(X1, active X2) -> U11(X1, X2),
                         U11(mark X1, X2) -> U11(X1, X2),
                       U11(active X1, X2) -> U11(X1, X2),
                    U112(X1, X2, mark X3) -> U112(X1, X2, X3),
                  U112(X1, X2, active X3) -> U112(X1, X2, X3),
                    U112(X1, mark X2, X3) -> U112(X1, X2, X3),
                  U112(X1, active X2, X3) -> U112(X1, X2, X3),
                    U112(mark X1, X2, X3) -> U112(X1, X2, X3),
                  U112(active X1, X2, X3) -> U112(X1, X2, X3),
                    U111(X1, X2, mark X3) -> U111(X1, X2, X3),
                  U111(X1, X2, active X3) -> U111(X1, X2, X3),
                    U111(X1, mark X2, X3) -> U111(X1, X2, X3),
                  U111(X1, active X2, X3) -> U111(X1, X2, X3),
                    U111(mark X1, X2, X3) -> U111(X1, X2, X3),
                  U111(active X1, X2, X3) -> U111(X1, X2, X3),
                    U113(X1, X2, mark X3) -> U113(X1, X2, X3),
                  U113(X1, X2, active X3) -> U113(X1, X2, X3),
                    U113(X1, mark X2, X3) -> U113(X1, X2, X3),
                  U113(X1, active X2, X3) -> U113(X1, X2, X3),
                    U113(mark X1, X2, X3) -> U113(X1, X2, X3),
                  U113(active X1, X2, X3) -> U113(X1, X2, X3),
                        U114(X1, mark X2) -> U114(X1, X2),
                      U114(X1, active X2) -> U114(X1, X2),
                        U114(mark X1, X2) -> U114(X1, X2),
                      U114(active X1, X2) -> U114(X1, X2),
                                 s mark X -> s X,
                               s active X -> s X,
                            length mark X -> length X,
                          length active X -> length X,
                               U13 mark X -> U13 X,
                             U13 active X -> U13 X,
                         isNatList mark X -> isNatList X,
                       isNatList active X -> isNatList X,
                              U122 mark X -> U122 X,
                            U122 active X -> U122 X,
                        U121(X1, mark X2) -> U121(X1, X2),
                      U121(X1, active X2) -> U121(X1, X2),
                        U121(mark X1, X2) -> U121(X1, X2),
                      U121(active X1, X2) -> U121(X1, X2),
                U132(X1, X2, X3, mark X4) -> U132(X1, X2, X3, X4),
              U132(X1, X2, X3, active X4) -> U132(X1, X2, X3, X4),
                U132(X1, X2, mark X3, X4) -> U132(X1, X2, X3, X4),
              U132(X1, X2, active X3, X4) -> U132(X1, X2, X3, X4),
                U132(X1, mark X2, X3, X4) -> U132(X1, X2, X3, X4),
              U132(X1, active X2, X3, X4) -> U132(X1, X2, X3, X4),
                U132(mark X1, X2, X3, X4) -> U132(X1, X2, X3, X4),
              U132(active X1, X2, X3, X4) -> U132(X1, X2, X3, X4),
                U131(X1, X2, X3, mark X4) -> U131(X1, X2, X3, X4),
              U131(X1, X2, X3, active X4) -> U131(X1, X2, X3, X4),
                U131(X1, X2, mark X3, X4) -> U131(X1, X2, X3, X4),
              U131(X1, X2, active X3, X4) -> U131(X1, X2, X3, X4),
                U131(X1, mark X2, X3, X4) -> U131(X1, X2, X3, X4),
              U131(X1, active X2, X3, X4) -> U131(X1, X2, X3, X4),
                U131(mark X1, X2, X3, X4) -> U131(X1, X2, X3, X4),
              U131(active X1, X2, X3, X4) -> U131(X1, X2, X3, X4),
                U133(X1, X2, X3, mark X4) -> U133(X1, X2, X3, X4),
              U133(X1, X2, X3, active X4) -> U133(X1, X2, X3, X4),
                U133(X1, X2, mark X3, X4) -> U133(X1, X2, X3, X4),
              U133(X1, X2, active X3, X4) -> U133(X1, X2, X3, X4),
                U133(X1, mark X2, X3, X4) -> U133(X1, X2, X3, X4),
              U133(X1, active X2, X3, X4) -> U133(X1, X2, X3, X4),
                U133(mark X1, X2, X3, X4) -> U133(X1, X2, X3, X4),
              U133(active X1, X2, X3, X4) -> U133(X1, X2, X3, X4),
                U134(X1, X2, X3, mark X4) -> U134(X1, X2, X3, X4),
              U134(X1, X2, X3, active X4) -> U134(X1, X2, X3, X4),
                U134(X1, X2, mark X3, X4) -> U134(X1, X2, X3, X4),
              U134(X1, X2, active X3, X4) -> U134(X1, X2, X3, X4),
                U134(X1, mark X2, X3, X4) -> U134(X1, X2, X3, X4),
              U134(X1, active X2, X3, X4) -> U134(X1, X2, X3, X4),
                U134(mark X1, X2, X3, X4) -> U134(X1, X2, X3, X4),
              U134(active X1, X2, X3, X4) -> U134(X1, X2, X3, X4),
                U135(X1, X2, X3, mark X4) -> U135(X1, X2, X3, X4),
              U135(X1, X2, X3, active X4) -> U135(X1, X2, X3, X4),
                U135(X1, X2, mark X3, X4) -> U135(X1, X2, X3, X4),
              U135(X1, X2, active X3, X4) -> U135(X1, X2, X3, X4),
                U135(X1, mark X2, X3, X4) -> U135(X1, X2, X3, X4),
              U135(X1, active X2, X3, X4) -> U135(X1, X2, X3, X4),
                U135(mark X1, X2, X3, X4) -> U135(X1, X2, X3, X4),
              U135(active X1, X2, X3, X4) -> U135(X1, X2, X3, X4),
                U136(X1, X2, X3, mark X4) -> U136(X1, X2, X3, X4),
              U136(X1, X2, X3, active X4) -> U136(X1, X2, X3, X4),
                U136(X1, X2, mark X3, X4) -> U136(X1, X2, X3, X4),
              U136(X1, X2, active X3, X4) -> U136(X1, X2, X3, X4),
                U136(X1, mark X2, X3, X4) -> U136(X1, X2, X3, X4),
              U136(X1, active X2, X3, X4) -> U136(X1, X2, X3, X4),
                U136(mark X1, X2, X3, X4) -> U136(X1, X2, X3, X4),
              U136(active X1, X2, X3, X4) -> U136(X1, X2, X3, X4),
                        take(X1, mark X2) -> take(X1, X2),
                      take(X1, active X2) -> take(X1, X2),
                        take(mark X1, X2) -> take(X1, X2),
                      take(active X1, X2) -> take(X1, X2),
                         U22(X1, mark X2) -> U22(X1, X2),
                       U22(X1, active X2) -> U22(X1, X2),
                         U22(mark X1, X2) -> U22(X1, X2),
                       U22(active X1, X2) -> U22(X1, X2),
                         U21(X1, mark X2) -> U21(X1, X2),
                       U21(X1, active X2) -> U21(X1, X2),
                         U21(mark X1, X2) -> U21(X1, X2),
                       U21(active X1, X2) -> U21(X1, X2),
                               U23 mark X -> U23 X,
                             U23 active X -> U23 X,
                         U32(X1, mark X2) -> U32(X1, X2),
                       U32(X1, active X2) -> U32(X1, X2),
                         U32(mark X1, X2) -> U32(X1, X2),
                       U32(active X1, X2) -> U32(X1, X2),
                         U31(X1, mark X2) -> U31(X1, X2),
                       U31(X1, active X2) -> U31(X1, X2),
                         U31(mark X1, X2) -> U31(X1, X2),
                       U31(active X1, X2) -> U31(X1, X2),
                               U33 mark X -> U33 X,
                             U33 active X -> U33 X,
                     U42(X1, X2, mark X3) -> U42(X1, X2, X3),
                   U42(X1, X2, active X3) -> U42(X1, X2, X3),
                     U42(X1, mark X2, X3) -> U42(X1, X2, X3),
                   U42(X1, active X2, X3) -> U42(X1, X2, X3),
                     U42(mark X1, X2, X3) -> U42(X1, X2, X3),
                   U42(active X1, X2, X3) -> U42(X1, X2, X3),
                     U41(X1, X2, mark X3) -> U41(X1, X2, X3),
                   U41(X1, X2, active X3) -> U41(X1, X2, X3),
                     U41(X1, mark X2, X3) -> U41(X1, X2, X3),
                   U41(X1, active X2, X3) -> U41(X1, X2, X3),
                     U41(mark X1, X2, X3) -> U41(X1, X2, X3),
                   U41(active X1, X2, X3) -> U41(X1, X2, X3),
                     U43(X1, X2, mark X3) -> U43(X1, X2, X3),
                   U43(X1, X2, active X3) -> U43(X1, X2, X3),
                     U43(X1, mark X2, X3) -> U43(X1, X2, X3),
                   U43(X1, active X2, X3) -> U43(X1, X2, X3),
                     U43(mark X1, X2, X3) -> U43(X1, X2, X3),
                   U43(active X1, X2, X3) -> U43(X1, X2, X3),
                     U44(X1, X2, mark X3) -> U44(X1, X2, X3),
                   U44(X1, X2, active X3) -> U44(X1, X2, X3),
                     U44(X1, mark X2, X3) -> U44(X1, X2, X3),
                   U44(X1, active X2, X3) -> U44(X1, X2, X3),
                     U44(mark X1, X2, X3) -> U44(X1, X2, X3),
                   U44(active X1, X2, X3) -> U44(X1, X2, X3),
                         U45(X1, mark X2) -> U45(X1, X2),
                       U45(X1, active X2) -> U45(X1, X2),
                         U45(mark X1, X2) -> U45(X1, X2),
                       U45(active X1, X2) -> U45(X1, X2),
                               U46 mark X -> U46 X,
                             U46 active X -> U46 X,
                               U52 mark X -> U52 X,
                             U52 active X -> U52 X,
                         U51(X1, mark X2) -> U51(X1, X2),
                       U51(X1, active X2) -> U51(X1, X2),
                         U51(mark X1, X2) -> U51(X1, X2),
                       U51(active X1, X2) -> U51(X1, X2),
                               U62 mark X -> U62 X,
                             U62 active X -> U62 X,
                         U61(X1, mark X2) -> U61(X1, X2),
                       U61(X1, active X2) -> U61(X1, X2),
                         U61(mark X1, X2) -> U61(X1, X2),
                       U61(active X1, X2) -> U61(X1, X2),
                               U71 mark X -> U71 X,
                             U71 active X -> U71 X,
                               U81 mark X -> U81 X,
                             U81 active X -> U81 X,
                     U92(X1, X2, mark X3) -> U92(X1, X2, X3),
                   U92(X1, X2, active X3) -> U92(X1, X2, X3),
                     U92(X1, mark X2, X3) -> U92(X1, X2, X3),
                   U92(X1, active X2, X3) -> U92(X1, X2, X3),
                     U92(mark X1, X2, X3) -> U92(X1, X2, X3),
                   U92(active X1, X2, X3) -> U92(X1, X2, X3),
                     U91(X1, X2, mark X3) -> U91(X1, X2, X3),
                   U91(X1, X2, active X3) -> U91(X1, X2, X3),
                     U91(X1, mark X2, X3) -> U91(X1, X2, X3),
                   U91(X1, active X2, X3) -> U91(X1, X2, X3),
                     U91(mark X1, X2, X3) -> U91(X1, X2, X3),
                   U91(active X1, X2, X3) -> U91(X1, X2, X3),
                     U93(X1, X2, mark X3) -> U93(X1, X2, X3),
                   U93(X1, X2, active X3) -> U93(X1, X2, X3),
                     U93(X1, mark X2, X3) -> U93(X1, X2, X3),
                   U93(X1, active X2, X3) -> U93(X1, X2, X3),
                     U93(mark X1, X2, X3) -> U93(X1, X2, X3),
                   U93(active X1, X2, X3) -> U93(X1, X2, X3),
                     U94(X1, X2, mark X3) -> U94(X1, X2, X3),
                   U94(X1, X2, active X3) -> U94(X1, X2, X3),
                     U94(X1, mark X2, X3) -> U94(X1, X2, X3),
                   U94(X1, active X2, X3) -> U94(X1, X2, X3),
                     U94(mark X1, X2, X3) -> U94(X1, X2, X3),
                   U94(active X1, X2, X3) -> U94(X1, X2, X3),
                         U95(X1, mark X2) -> U95(X1, X2),
                       U95(X1, active X2) -> U95(X1, X2),
                         U95(mark X1, X2) -> U95(X1, X2),
                       U95(active X1, X2) -> U95(X1, X2),
                               U96 mark X -> U96 X,
                             U96 active X -> U96 X
      }
      Open
     
     SCC (2):
      Strict:
       {  U23# mark X -> U23# X,
        U23# active X -> U23# X}
      Weak:
      {
                        mark cons(X1, X2) -> active cons(mark X1, X2),
                                 mark 0() -> active 0(),
                             mark zeros() -> active zeros(),
                    mark U102(X1, X2, X3) -> active U102(mark X1, X2, X3),
                         mark isNatKind X -> active isNatKind X,
                    mark U101(X1, X2, X3) -> active U101(mark X1, X2, X3),
                                mark tt() -> active tt(),
                    mark U103(X1, X2, X3) -> active U103(mark X1, X2, X3),
                    mark isNatIListKind X -> active isNatIListKind X,
                    mark U104(X1, X2, X3) -> active U104(mark X1, X2, X3),
                        mark U105(X1, X2) -> active U105(mark X1, X2),
                             mark isNat X -> active isNat X,
                              mark U106 X -> active U106 mark X,
                        mark isNatIList X -> active isNatIList X,
                         mark U12(X1, X2) -> active U12(mark X1, X2),
                         mark U11(X1, X2) -> active U11(mark X1, X2),
                    mark U112(X1, X2, X3) -> active U112(mark X1, X2, X3),
                    mark U111(X1, X2, X3) -> active U111(mark X1, X2, X3),
                    mark U113(X1, X2, X3) -> active U113(mark X1, X2, X3),
                        mark U114(X1, X2) -> active U114(mark X1, X2),
                                 mark s X -> active s mark X,
                            mark length X -> active length mark X,
                               mark U13 X -> active U13 mark X,
                         mark isNatList X -> active isNatList X,
                              mark U122 X -> active U122 mark X,
                        mark U121(X1, X2) -> active U121(mark X1, X2),
                               mark nil() -> active nil(),
                mark U132(X1, X2, X3, X4) -> active U132(mark X1, X2, X3, X4),
                mark U131(X1, X2, X3, X4) -> active U131(mark X1, X2, X3, X4),
                mark U133(X1, X2, X3, X4) -> active U133(mark X1, X2, X3, X4),
                mark U134(X1, X2, X3, X4) -> active U134(mark X1, X2, X3, X4),
                mark U135(X1, X2, X3, X4) -> active U135(mark X1, X2, X3, X4),
                mark U136(X1, X2, X3, X4) -> active U136(mark X1, X2, X3, X4),
                        mark take(X1, X2) -> active take(mark X1, mark X2),
                         mark U22(X1, X2) -> active U22(mark X1, X2),
                         mark U21(X1, X2) -> active U21(mark X1, X2),
                               mark U23 X -> active U23 mark X,
                         mark U32(X1, X2) -> active U32(mark X1, X2),
                         mark U31(X1, X2) -> active U31(mark X1, X2),
                               mark U33 X -> active U33 mark X,
                     mark U42(X1, X2, X3) -> active U42(mark X1, X2, X3),
                     mark U41(X1, X2, X3) -> active U41(mark X1, X2, X3),
                     mark U43(X1, X2, X3) -> active U43(mark X1, X2, X3),
                     mark U44(X1, X2, X3) -> active U44(mark X1, X2, X3),
                         mark U45(X1, X2) -> active U45(mark X1, X2),
                               mark U46 X -> active U46 mark X,
                               mark U52 X -> active U52 mark X,
                         mark U51(X1, X2) -> active U51(mark X1, X2),
                               mark U62 X -> active U62 mark X,
                         mark U61(X1, X2) -> active U61(mark X1, X2),
                               mark U71 X -> active U71 mark X,
                               mark U81 X -> active U81 mark X,
                     mark U92(X1, X2, X3) -> active U92(mark X1, X2, X3),
                     mark U91(X1, X2, X3) -> active U91(mark X1, X2, X3),
                     mark U93(X1, X2, X3) -> active U93(mark X1, X2, X3),
                     mark U94(X1, X2, X3) -> active U94(mark X1, X2, X3),
                         mark U95(X1, X2) -> active U95(mark X1, X2),
                               mark U96 X -> active U96 mark X,
                        cons(X1, mark X2) -> cons(X1, X2),
                      cons(X1, active X2) -> cons(X1, X2),
                        cons(mark X1, X2) -> cons(X1, X2),
                      cons(active X1, X2) -> cons(X1, X2),
                           active zeros() -> mark cons(0(), zeros()),
                active U102(tt(), V1, V2) -> mark U103(isNatIListKind V2, V1, V2),
                     active isNatKind 0() -> mark tt(),
                    active isNatKind s V1 -> mark U81 isNatKind V1,
               active isNatKind length V1 -> mark U71 isNatIListKind V1,
                active U101(tt(), V1, V2) -> mark U102(isNatKind V1, V1, V2),
                active U103(tt(), V1, V2) -> mark U104(isNatIListKind V2, V1, V2),
       active isNatIListKind cons(V1, V2) -> mark U51(isNatKind V1, V2),
            active isNatIListKind zeros() -> mark tt(),
              active isNatIListKind nil() -> mark tt(),
       active isNatIListKind take(V1, V2) -> mark U61(isNatKind V1, V2),
                active U104(tt(), V1, V2) -> mark U105(isNat V1, V2),
                    active U105(tt(), V2) -> mark U106 isNatIList V2,
                         active isNat 0() -> mark tt(),
                        active isNat s V1 -> mark U21(isNatKind V1, V1),
                   active isNat length V1 -> mark U11(isNatIListKind V1, V1),
                         active U106 tt() -> mark tt(),
                      active isNatIList V -> mark U31(isNatIListKind V, V),
           active isNatIList cons(V1, V2) -> mark U41(isNatKind V1, V1, V2),
                active isNatIList zeros() -> mark tt(),
                     active U12(tt(), V1) -> mark U13 isNatList V1,
                     active U11(tt(), V1) -> mark U12(isNatIListKind V1, V1),
                  active U112(tt(), L, N) -> mark U113(isNat N, L, N),
                  active U111(tt(), L, N) -> mark U112(isNatIListKind L, L, N),
                  active U113(tt(), L, N) -> mark U114(isNatKind N, L),
                     active U114(tt(), L) -> mark s length L,
                 active length cons(N, L) -> mark U111(isNatList L, L, N),
                      active length nil() -> mark 0(),
                          active U13 tt() -> mark tt(),
            active isNatList cons(V1, V2) -> mark U91(isNatKind V1, V1, V2),
                   active isNatList nil() -> mark tt(),
            active isNatList take(V1, V2) -> mark U101(isNatKind V1, V1, V2),
                         active U122 tt() -> mark nil(),
                    active U121(tt(), IL) -> mark U122 isNatIListKind IL,
              active U132(tt(), IL, M, N) -> mark U133(isNat M, IL, M, N),
              active U131(tt(), IL, M, N) -> mark U132(isNatIListKind IL, IL, M, N),
              active U133(tt(), IL, M, N) -> mark U134(isNatKind M, IL, M, N),
              active U134(tt(), IL, M, N) -> mark U135(isNat N, IL, M, N),
              active U135(tt(), IL, M, N) -> mark U136(isNatKind N, IL, M, N),
              active U136(tt(), IL, M, N) -> mark cons(N, take(M, IL)),
                     active take(0(), IL) -> mark U121(isNatIList IL, IL),
            active take(s M, cons(N, IL)) -> mark U131(isNatIList IL, IL, M, N),
                     active U22(tt(), V1) -> mark U23 isNat V1,
                     active U21(tt(), V1) -> mark U22(isNatKind V1, V1),
                          active U23 tt() -> mark tt(),
                      active U32(tt(), V) -> mark U33 isNatList V,
                      active U31(tt(), V) -> mark U32(isNatIListKind V, V),
                          active U33 tt() -> mark tt(),
                 active U42(tt(), V1, V2) -> mark U43(isNatIListKind V2, V1, V2),
                 active U41(tt(), V1, V2) -> mark U42(isNatKind V1, V1, V2),
                 active U43(tt(), V1, V2) -> mark U44(isNatIListKind V2, V1, V2),
                 active U44(tt(), V1, V2) -> mark U45(isNat V1, V2),
                     active U45(tt(), V2) -> mark U46 isNatIList V2,
                          active U46 tt() -> mark tt(),
                          active U52 tt() -> mark tt(),
                     active U51(tt(), V2) -> mark U52 isNatIListKind V2,
                          active U62 tt() -> mark tt(),
                     active U61(tt(), V2) -> mark U62 isNatIListKind V2,
                          active U71 tt() -> mark tt(),
                          active U81 tt() -> mark tt(),
                 active U92(tt(), V1, V2) -> mark U93(isNatIListKind V2, V1, V2),
                 active U91(tt(), V1, V2) -> mark U92(isNatKind V1, V1, V2),
                 active U93(tt(), V1, V2) -> mark U94(isNatIListKind V2, V1, V2),
                 active U94(tt(), V1, V2) -> mark U95(isNat V1, V2),
                     active U95(tt(), V2) -> mark U96 isNatList V2,
                          active U96 tt() -> mark tt(),
                    U102(X1, X2, mark X3) -> U102(X1, X2, X3),
                  U102(X1, X2, active X3) -> U102(X1, X2, X3),
                    U102(X1, mark X2, X3) -> U102(X1, X2, X3),
                  U102(X1, active X2, X3) -> U102(X1, X2, X3),
                    U102(mark X1, X2, X3) -> U102(X1, X2, X3),
                  U102(active X1, X2, X3) -> U102(X1, X2, X3),
                         isNatKind mark X -> isNatKind X,
                       isNatKind active X -> isNatKind X,
                    U101(X1, X2, mark X3) -> U101(X1, X2, X3),
                  U101(X1, X2, active X3) -> U101(X1, X2, X3),
                    U101(X1, mark X2, X3) -> U101(X1, X2, X3),
                  U101(X1, active X2, X3) -> U101(X1, X2, X3),
                    U101(mark X1, X2, X3) -> U101(X1, X2, X3),
                  U101(active X1, X2, X3) -> U101(X1, X2, X3),
                    U103(X1, X2, mark X3) -> U103(X1, X2, X3),
                  U103(X1, X2, active X3) -> U103(X1, X2, X3),
                    U103(X1, mark X2, X3) -> U103(X1, X2, X3),
                  U103(X1, active X2, X3) -> U103(X1, X2, X3),
                    U103(mark X1, X2, X3) -> U103(X1, X2, X3),
                  U103(active X1, X2, X3) -> U103(X1, X2, X3),
                    isNatIListKind mark X -> isNatIListKind X,
                  isNatIListKind active X -> isNatIListKind X,
                    U104(X1, X2, mark X3) -> U104(X1, X2, X3),
                  U104(X1, X2, active X3) -> U104(X1, X2, X3),
                    U104(X1, mark X2, X3) -> U104(X1, X2, X3),
                  U104(X1, active X2, X3) -> U104(X1, X2, X3),
                    U104(mark X1, X2, X3) -> U104(X1, X2, X3),
                  U104(active X1, X2, X3) -> U104(X1, X2, X3),
                        U105(X1, mark X2) -> U105(X1, X2),
                      U105(X1, active X2) -> U105(X1, X2),
                        U105(mark X1, X2) -> U105(X1, X2),
                      U105(active X1, X2) -> U105(X1, X2),
                             isNat mark X -> isNat X,
                           isNat active X -> isNat X,
                              U106 mark X -> U106 X,
                            U106 active X -> U106 X,
                        isNatIList mark X -> isNatIList X,
                      isNatIList active X -> isNatIList X,
                         U12(X1, mark X2) -> U12(X1, X2),
                       U12(X1, active X2) -> U12(X1, X2),
                         U12(mark X1, X2) -> U12(X1, X2),
                       U12(active X1, X2) -> U12(X1, X2),
                         U11(X1, mark X2) -> U11(X1, X2),
                       U11(X1, active X2) -> U11(X1, X2),
                         U11(mark X1, X2) -> U11(X1, X2),
                       U11(active X1, X2) -> U11(X1, X2),
                    U112(X1, X2, mark X3) -> U112(X1, X2, X3),
                  U112(X1, X2, active X3) -> U112(X1, X2, X3),
                    U112(X1, mark X2, X3) -> U112(X1, X2, X3),
                  U112(X1, active X2, X3) -> U112(X1, X2, X3),
                    U112(mark X1, X2, X3) -> U112(X1, X2, X3),
                  U112(active X1, X2, X3) -> U112(X1, X2, X3),
                    U111(X1, X2, mark X3) -> U111(X1, X2, X3),
                  U111(X1, X2, active X3) -> U111(X1, X2, X3),
                    U111(X1, mark X2, X3) -> U111(X1, X2, X3),
                  U111(X1, active X2, X3) -> U111(X1, X2, X3),
                    U111(mark X1, X2, X3) -> U111(X1, X2, X3),
                  U111(active X1, X2, X3) -> U111(X1, X2, X3),
                    U113(X1, X2, mark X3) -> U113(X1, X2, X3),
                  U113(X1, X2, active X3) -> U113(X1, X2, X3),
                    U113(X1, mark X2, X3) -> U113(X1, X2, X3),
                  U113(X1, active X2, X3) -> U113(X1, X2, X3),
                    U113(mark X1, X2, X3) -> U113(X1, X2, X3),
                  U113(active X1, X2, X3) -> U113(X1, X2, X3),
                        U114(X1, mark X2) -> U114(X1, X2),
                      U114(X1, active X2) -> U114(X1, X2),
                        U114(mark X1, X2) -> U114(X1, X2),
                      U114(active X1, X2) -> U114(X1, X2),
                                 s mark X -> s X,
                               s active X -> s X,
                            length mark X -> length X,
                          length active X -> length X,
                               U13 mark X -> U13 X,
                             U13 active X -> U13 X,
                         isNatList mark X -> isNatList X,
                       isNatList active X -> isNatList X,
                              U122 mark X -> U122 X,
                            U122 active X -> U122 X,
                        U121(X1, mark X2) -> U121(X1, X2),
                      U121(X1, active X2) -> U121(X1, X2),
                        U121(mark X1, X2) -> U121(X1, X2),
                      U121(active X1, X2) -> U121(X1, X2),
                U132(X1, X2, X3, mark X4) -> U132(X1, X2, X3, X4),
              U132(X1, X2, X3, active X4) -> U132(X1, X2, X3, X4),
                U132(X1, X2, mark X3, X4) -> U132(X1, X2, X3, X4),
              U132(X1, X2, active X3, X4) -> U132(X1, X2, X3, X4),
                U132(X1, mark X2, X3, X4) -> U132(X1, X2, X3, X4),
              U132(X1, active X2, X3, X4) -> U132(X1, X2, X3, X4),
                U132(mark X1, X2, X3, X4) -> U132(X1, X2, X3, X4),
              U132(active X1, X2, X3, X4) -> U132(X1, X2, X3, X4),
                U131(X1, X2, X3, mark X4) -> U131(X1, X2, X3, X4),
              U131(X1, X2, X3, active X4) -> U131(X1, X2, X3, X4),
                U131(X1, X2, mark X3, X4) -> U131(X1, X2, X3, X4),
              U131(X1, X2, active X3, X4) -> U131(X1, X2, X3, X4),
                U131(X1, mark X2, X3, X4) -> U131(X1, X2, X3, X4),
              U131(X1, active X2, X3, X4) -> U131(X1, X2, X3, X4),
                U131(mark X1, X2, X3, X4) -> U131(X1, X2, X3, X4),
              U131(active X1, X2, X3, X4) -> U131(X1, X2, X3, X4),
                U133(X1, X2, X3, mark X4) -> U133(X1, X2, X3, X4),
              U133(X1, X2, X3, active X4) -> U133(X1, X2, X3, X4),
                U133(X1, X2, mark X3, X4) -> U133(X1, X2, X3, X4),
              U133(X1, X2, active X3, X4) -> U133(X1, X2, X3, X4),
                U133(X1, mark X2, X3, X4) -> U133(X1, X2, X3, X4),
              U133(X1, active X2, X3, X4) -> U133(X1, X2, X3, X4),
                U133(mark X1, X2, X3, X4) -> U133(X1, X2, X3, X4),
              U133(active X1, X2, X3, X4) -> U133(X1, X2, X3, X4),
                U134(X1, X2, X3, mark X4) -> U134(X1, X2, X3, X4),
              U134(X1, X2, X3, active X4) -> U134(X1, X2, X3, X4),
                U134(X1, X2, mark X3, X4) -> U134(X1, X2, X3, X4),
              U134(X1, X2, active X3, X4) -> U134(X1, X2, X3, X4),
                U134(X1, mark X2, X3, X4) -> U134(X1, X2, X3, X4),
              U134(X1, active X2, X3, X4) -> U134(X1, X2, X3, X4),
                U134(mark X1, X2, X3, X4) -> U134(X1, X2, X3, X4),
              U134(active X1, X2, X3, X4) -> U134(X1, X2, X3, X4),
                U135(X1, X2, X3, mark X4) -> U135(X1, X2, X3, X4),
              U135(X1, X2, X3, active X4) -> U135(X1, X2, X3, X4),
                U135(X1, X2, mark X3, X4) -> U135(X1, X2, X3, X4),
              U135(X1, X2, active X3, X4) -> U135(X1, X2, X3, X4),
                U135(X1, mark X2, X3, X4) -> U135(X1, X2, X3, X4),
              U135(X1, active X2, X3, X4) -> U135(X1, X2, X3, X4),
                U135(mark X1, X2, X3, X4) -> U135(X1, X2, X3, X4),
              U135(active X1, X2, X3, X4) -> U135(X1, X2, X3, X4),
                U136(X1, X2, X3, mark X4) -> U136(X1, X2, X3, X4),
              U136(X1, X2, X3, active X4) -> U136(X1, X2, X3, X4),
                U136(X1, X2, mark X3, X4) -> U136(X1, X2, X3, X4),
              U136(X1, X2, active X3, X4) -> U136(X1, X2, X3, X4),
                U136(X1, mark X2, X3, X4) -> U136(X1, X2, X3, X4),
              U136(X1, active X2, X3, X4) -> U136(X1, X2, X3, X4),
                U136(mark X1, X2, X3, X4) -> U136(X1, X2, X3, X4),
              U136(active X1, X2, X3, X4) -> U136(X1, X2, X3, X4),
                        take(X1, mark X2) -> take(X1, X2),
                      take(X1, active X2) -> take(X1, X2),
                        take(mark X1, X2) -> take(X1, X2),
                      take(active X1, X2) -> take(X1, X2),
                         U22(X1, mark X2) -> U22(X1, X2),
                       U22(X1, active X2) -> U22(X1, X2),
                         U22(mark X1, X2) -> U22(X1, X2),
                       U22(active X1, X2) -> U22(X1, X2),
                         U21(X1, mark X2) -> U21(X1, X2),
                       U21(X1, active X2) -> U21(X1, X2),
                         U21(mark X1, X2) -> U21(X1, X2),
                       U21(active X1, X2) -> U21(X1, X2),
                               U23 mark X -> U23 X,
                             U23 active X -> U23 X,
                         U32(X1, mark X2) -> U32(X1, X2),
                       U32(X1, active X2) -> U32(X1, X2),
                         U32(mark X1, X2) -> U32(X1, X2),
                       U32(active X1, X2) -> U32(X1, X2),
                         U31(X1, mark X2) -> U31(X1, X2),
                       U31(X1, active X2) -> U31(X1, X2),
                         U31(mark X1, X2) -> U31(X1, X2),
                       U31(active X1, X2) -> U31(X1, X2),
                               U33 mark X -> U33 X,
                             U33 active X -> U33 X,
                     U42(X1, X2, mark X3) -> U42(X1, X2, X3),
                   U42(X1, X2, active X3) -> U42(X1, X2, X3),
                     U42(X1, mark X2, X3) -> U42(X1, X2, X3),
                   U42(X1, active X2, X3) -> U42(X1, X2, X3),
                     U42(mark X1, X2, X3) -> U42(X1, X2, X3),
                   U42(active X1, X2, X3) -> U42(X1, X2, X3),
                     U41(X1, X2, mark X3) -> U41(X1, X2, X3),
                   U41(X1, X2, active X3) -> U41(X1, X2, X3),
                     U41(X1, mark X2, X3) -> U41(X1, X2, X3),
                   U41(X1, active X2, X3) -> U41(X1, X2, X3),
                     U41(mark X1, X2, X3) -> U41(X1, X2, X3),
                   U41(active X1, X2, X3) -> U41(X1, X2, X3),
                     U43(X1, X2, mark X3) -> U43(X1, X2, X3),
                   U43(X1, X2, active X3) -> U43(X1, X2, X3),
                     U43(X1, mark X2, X3) -> U43(X1, X2, X3),
                   U43(X1, active X2, X3) -> U43(X1, X2, X3),
                     U43(mark X1, X2, X3) -> U43(X1, X2, X3),
                   U43(active X1, X2, X3) -> U43(X1, X2, X3),
                     U44(X1, X2, mark X3) -> U44(X1, X2, X3),
                   U44(X1, X2, active X3) -> U44(X1, X2, X3),
                     U44(X1, mark X2, X3) -> U44(X1, X2, X3),
                   U44(X1, active X2, X3) -> U44(X1, X2, X3),
                     U44(mark X1, X2, X3) -> U44(X1, X2, X3),
                   U44(active X1, X2, X3) -> U44(X1, X2, X3),
                         U45(X1, mark X2) -> U45(X1, X2),
                       U45(X1, active X2) -> U45(X1, X2),
                         U45(mark X1, X2) -> U45(X1, X2),
                       U45(active X1, X2) -> U45(X1, X2),
                               U46 mark X -> U46 X,
                             U46 active X -> U46 X,
                               U52 mark X -> U52 X,
                             U52 active X -> U52 X,
                         U51(X1, mark X2) -> U51(X1, X2),
                       U51(X1, active X2) -> U51(X1, X2),
                         U51(mark X1, X2) -> U51(X1, X2),
                       U51(active X1, X2) -> U51(X1, X2),
                               U62 mark X -> U62 X,
                             U62 active X -> U62 X,
                         U61(X1, mark X2) -> U61(X1, X2),
                       U61(X1, active X2) -> U61(X1, X2),
                         U61(mark X1, X2) -> U61(X1, X2),
                       U61(active X1, X2) -> U61(X1, X2),
                               U71 mark X -> U71 X,
                             U71 active X -> U71 X,
                               U81 mark X -> U81 X,
                             U81 active X -> U81 X,
                     U92(X1, X2, mark X3) -> U92(X1, X2, X3),
                   U92(X1, X2, active X3) -> U92(X1, X2, X3),
                     U92(X1, mark X2, X3) -> U92(X1, X2, X3),
                   U92(X1, active X2, X3) -> U92(X1, X2, X3),
                     U92(mark X1, X2, X3) -> U92(X1, X2, X3),
                   U92(active X1, X2, X3) -> U92(X1, X2, X3),
                     U91(X1, X2, mark X3) -> U91(X1, X2, X3),
                   U91(X1, X2, active X3) -> U91(X1, X2, X3),
                     U91(X1, mark X2, X3) -> U91(X1, X2, X3),
                   U91(X1, active X2, X3) -> U91(X1, X2, X3),
                     U91(mark X1, X2, X3) -> U91(X1, X2, X3),
                   U91(active X1, X2, X3) -> U91(X1, X2, X3),
                     U93(X1, X2, mark X3) -> U93(X1, X2, X3),
                   U93(X1, X2, active X3) -> U93(X1, X2, X3),
                     U93(X1, mark X2, X3) -> U93(X1, X2, X3),
                   U93(X1, active X2, X3) -> U93(X1, X2, X3),
                     U93(mark X1, X2, X3) -> U93(X1, X2, X3),
                   U93(active X1, X2, X3) -> U93(X1, X2, X3),
                     U94(X1, X2, mark X3) -> U94(X1, X2, X3),
                   U94(X1, X2, active X3) -> U94(X1, X2, X3),
                     U94(X1, mark X2, X3) -> U94(X1, X2, X3),
                   U94(X1, active X2, X3) -> U94(X1, X2, X3),
                     U94(mark X1, X2, X3) -> U94(X1, X2, X3),
                   U94(active X1, X2, X3) -> U94(X1, X2, X3),
                         U95(X1, mark X2) -> U95(X1, X2),
                       U95(X1, active X2) -> U95(X1, X2),
                         U95(mark X1, X2) -> U95(X1, X2),
                       U95(active X1, X2) -> U95(X1, X2),
                               U96 mark X -> U96 X,
                             U96 active X -> U96 X
      }
      Open
     
     
     
     SCC (4):
      Strict:
       {  U21#(X1, mark X2) -> U21#(X1, X2),
        U21#(X1, active X2) -> U21#(X1, X2),
          U21#(mark X1, X2) -> U21#(X1, X2),
        U21#(active X1, X2) -> U21#(X1, X2)}
      Weak:
      {
                        mark cons(X1, X2) -> active cons(mark X1, X2),
                                 mark 0() -> active 0(),
                             mark zeros() -> active zeros(),
                    mark U102(X1, X2, X3) -> active U102(mark X1, X2, X3),
                         mark isNatKind X -> active isNatKind X,
                    mark U101(X1, X2, X3) -> active U101(mark X1, X2, X3),
                                mark tt() -> active tt(),
                    mark U103(X1, X2, X3) -> active U103(mark X1, X2, X3),
                    mark isNatIListKind X -> active isNatIListKind X,
                    mark U104(X1, X2, X3) -> active U104(mark X1, X2, X3),
                        mark U105(X1, X2) -> active U105(mark X1, X2),
                             mark isNat X -> active isNat X,
                              mark U106 X -> active U106 mark X,
                        mark isNatIList X -> active isNatIList X,
                         mark U12(X1, X2) -> active U12(mark X1, X2),
                         mark U11(X1, X2) -> active U11(mark X1, X2),
                    mark U112(X1, X2, X3) -> active U112(mark X1, X2, X3),
                    mark U111(X1, X2, X3) -> active U111(mark X1, X2, X3),
                    mark U113(X1, X2, X3) -> active U113(mark X1, X2, X3),
                        mark U114(X1, X2) -> active U114(mark X1, X2),
                                 mark s X -> active s mark X,
                            mark length X -> active length mark X,
                               mark U13 X -> active U13 mark X,
                         mark isNatList X -> active isNatList X,
                              mark U122 X -> active U122 mark X,
                        mark U121(X1, X2) -> active U121(mark X1, X2),
                               mark nil() -> active nil(),
                mark U132(X1, X2, X3, X4) -> active U132(mark X1, X2, X3, X4),
                mark U131(X1, X2, X3, X4) -> active U131(mark X1, X2, X3, X4),
                mark U133(X1, X2, X3, X4) -> active U133(mark X1, X2, X3, X4),
                mark U134(X1, X2, X3, X4) -> active U134(mark X1, X2, X3, X4),
                mark U135(X1, X2, X3, X4) -> active U135(mark X1, X2, X3, X4),
                mark U136(X1, X2, X3, X4) -> active U136(mark X1, X2, X3, X4),
                        mark take(X1, X2) -> active take(mark X1, mark X2),
                         mark U22(X1, X2) -> active U22(mark X1, X2),
                         mark U21(X1, X2) -> active U21(mark X1, X2),
                               mark U23 X -> active U23 mark X,
                         mark U32(X1, X2) -> active U32(mark X1, X2),
                         mark U31(X1, X2) -> active U31(mark X1, X2),
                               mark U33 X -> active U33 mark X,
                     mark U42(X1, X2, X3) -> active U42(mark X1, X2, X3),
                     mark U41(X1, X2, X3) -> active U41(mark X1, X2, X3),
                     mark U43(X1, X2, X3) -> active U43(mark X1, X2, X3),
                     mark U44(X1, X2, X3) -> active U44(mark X1, X2, X3),
                         mark U45(X1, X2) -> active U45(mark X1, X2),
                               mark U46 X -> active U46 mark X,
                               mark U52 X -> active U52 mark X,
                         mark U51(X1, X2) -> active U51(mark X1, X2),
                               mark U62 X -> active U62 mark X,
                         mark U61(X1, X2) -> active U61(mark X1, X2),
                               mark U71 X -> active U71 mark X,
                               mark U81 X -> active U81 mark X,
                     mark U92(X1, X2, X3) -> active U92(mark X1, X2, X3),
                     mark U91(X1, X2, X3) -> active U91(mark X1, X2, X3),
                     mark U93(X1, X2, X3) -> active U93(mark X1, X2, X3),
                     mark U94(X1, X2, X3) -> active U94(mark X1, X2, X3),
                         mark U95(X1, X2) -> active U95(mark X1, X2),
                               mark U96 X -> active U96 mark X,
                        cons(X1, mark X2) -> cons(X1, X2),
                      cons(X1, active X2) -> cons(X1, X2),
                        cons(mark X1, X2) -> cons(X1, X2),
                      cons(active X1, X2) -> cons(X1, X2),
                           active zeros() -> mark cons(0(), zeros()),
                active U102(tt(), V1, V2) -> mark U103(isNatIListKind V2, V1, V2),
                     active isNatKind 0() -> mark tt(),
                    active isNatKind s V1 -> mark U81 isNatKind V1,
               active isNatKind length V1 -> mark U71 isNatIListKind V1,
                active U101(tt(), V1, V2) -> mark U102(isNatKind V1, V1, V2),
                active U103(tt(), V1, V2) -> mark U104(isNatIListKind V2, V1, V2),
       active isNatIListKind cons(V1, V2) -> mark U51(isNatKind V1, V2),
            active isNatIListKind zeros() -> mark tt(),
              active isNatIListKind nil() -> mark tt(),
       active isNatIListKind take(V1, V2) -> mark U61(isNatKind V1, V2),
                active U104(tt(), V1, V2) -> mark U105(isNat V1, V2),
                    active U105(tt(), V2) -> mark U106 isNatIList V2,
                         active isNat 0() -> mark tt(),
                        active isNat s V1 -> mark U21(isNatKind V1, V1),
                   active isNat length V1 -> mark U11(isNatIListKind V1, V1),
                         active U106 tt() -> mark tt(),
                      active isNatIList V -> mark U31(isNatIListKind V, V),
           active isNatIList cons(V1, V2) -> mark U41(isNatKind V1, V1, V2),
                active isNatIList zeros() -> mark tt(),
                     active U12(tt(), V1) -> mark U13 isNatList V1,
                     active U11(tt(), V1) -> mark U12(isNatIListKind V1, V1),
                  active U112(tt(), L, N) -> mark U113(isNat N, L, N),
                  active U111(tt(), L, N) -> mark U112(isNatIListKind L, L, N),
                  active U113(tt(), L, N) -> mark U114(isNatKind N, L),
                     active U114(tt(), L) -> mark s length L,
                 active length cons(N, L) -> mark U111(isNatList L, L, N),
                      active length nil() -> mark 0(),
                          active U13 tt() -> mark tt(),
            active isNatList cons(V1, V2) -> mark U91(isNatKind V1, V1, V2),
                   active isNatList nil() -> mark tt(),
            active isNatList take(V1, V2) -> mark U101(isNatKind V1, V1, V2),
                         active U122 tt() -> mark nil(),
                    active U121(tt(), IL) -> mark U122 isNatIListKind IL,
              active U132(tt(), IL, M, N) -> mark U133(isNat M, IL, M, N),
              active U131(tt(), IL, M, N) -> mark U132(isNatIListKind IL, IL, M, N),
              active U133(tt(), IL, M, N) -> mark U134(isNatKind M, IL, M, N),
              active U134(tt(), IL, M, N) -> mark U135(isNat N, IL, M, N),
              active U135(tt(), IL, M, N) -> mark U136(isNatKind N, IL, M, N),
              active U136(tt(), IL, M, N) -> mark cons(N, take(M, IL)),
                     active take(0(), IL) -> mark U121(isNatIList IL, IL),
            active take(s M, cons(N, IL)) -> mark U131(isNatIList IL, IL, M, N),
                     active U22(tt(), V1) -> mark U23 isNat V1,
                     active U21(tt(), V1) -> mark U22(isNatKind V1, V1),
                          active U23 tt() -> mark tt(),
                      active U32(tt(), V) -> mark U33 isNatList V,
                      active U31(tt(), V) -> mark U32(isNatIListKind V, V),
                          active U33 tt() -> mark tt(),
                 active U42(tt(), V1, V2) -> mark U43(isNatIListKind V2, V1, V2),
                 active U41(tt(), V1, V2) -> mark U42(isNatKind V1, V1, V2),
                 active U43(tt(), V1, V2) -> mark U44(isNatIListKind V2, V1, V2),
                 active U44(tt(), V1, V2) -> mark U45(isNat V1, V2),
                     active U45(tt(), V2) -> mark U46 isNatIList V2,
                          active U46 tt() -> mark tt(),
                          active U52 tt() -> mark tt(),
                     active U51(tt(), V2) -> mark U52 isNatIListKind V2,
                          active U62 tt() -> mark tt(),
                     active U61(tt(), V2) -> mark U62 isNatIListKind V2,
                          active U71 tt() -> mark tt(),
                          active U81 tt() -> mark tt(),
                 active U92(tt(), V1, V2) -> mark U93(isNatIListKind V2, V1, V2),
                 active U91(tt(), V1, V2) -> mark U92(isNatKind V1, V1, V2),
                 active U93(tt(), V1, V2) -> mark U94(isNatIListKind V2, V1, V2),
                 active U94(tt(), V1, V2) -> mark U95(isNat V1, V2),
                     active U95(tt(), V2) -> mark U96 isNatList V2,
                          active U96 tt() -> mark tt(),
                    U102(X1, X2, mark X3) -> U102(X1, X2, X3),
                  U102(X1, X2, active X3) -> U102(X1, X2, X3),
                    U102(X1, mark X2, X3) -> U102(X1, X2, X3),
                  U102(X1, active X2, X3) -> U102(X1, X2, X3),
                    U102(mark X1, X2, X3) -> U102(X1, X2, X3),
                  U102(active X1, X2, X3) -> U102(X1, X2, X3),
                         isNatKind mark X -> isNatKind X,
                       isNatKind active X -> isNatKind X,
                    U101(X1, X2, mark X3) -> U101(X1, X2, X3),
                  U101(X1, X2, active X3) -> U101(X1, X2, X3),
                    U101(X1, mark X2, X3) -> U101(X1, X2, X3),
                  U101(X1, active X2, X3) -> U101(X1, X2, X3),
                    U101(mark X1, X2, X3) -> U101(X1, X2, X3),
                  U101(active X1, X2, X3) -> U101(X1, X2, X3),
                    U103(X1, X2, mark X3) -> U103(X1, X2, X3),
                  U103(X1, X2, active X3) -> U103(X1, X2, X3),
                    U103(X1, mark X2, X3) -> U103(X1, X2, X3),
                  U103(X1, active X2, X3) -> U103(X1, X2, X3),
                    U103(mark X1, X2, X3) -> U103(X1, X2, X3),
                  U103(active X1, X2, X3) -> U103(X1, X2, X3),
                    isNatIListKind mark X -> isNatIListKind X,
                  isNatIListKind active X -> isNatIListKind X,
                    U104(X1, X2, mark X3) -> U104(X1, X2, X3),
                  U104(X1, X2, active X3) -> U104(X1, X2, X3),
                    U104(X1, mark X2, X3) -> U104(X1, X2, X3),
                  U104(X1, active X2, X3) -> U104(X1, X2, X3),
                    U104(mark X1, X2, X3) -> U104(X1, X2, X3),
                  U104(active X1, X2, X3) -> U104(X1, X2, X3),
                        U105(X1, mark X2) -> U105(X1, X2),
                      U105(X1, active X2) -> U105(X1, X2),
                        U105(mark X1, X2) -> U105(X1, X2),
                      U105(active X1, X2) -> U105(X1, X2),
                             isNat mark X -> isNat X,
                           isNat active X -> isNat X,
                              U106 mark X -> U106 X,
                            U106 active X -> U106 X,
                        isNatIList mark X -> isNatIList X,
                      isNatIList active X -> isNatIList X,
                         U12(X1, mark X2) -> U12(X1, X2),
                       U12(X1, active X2) -> U12(X1, X2),
                         U12(mark X1, X2) -> U12(X1, X2),
                       U12(active X1, X2) -> U12(X1, X2),
                         U11(X1, mark X2) -> U11(X1, X2),
                       U11(X1, active X2) -> U11(X1, X2),
                         U11(mark X1, X2) -> U11(X1, X2),
                       U11(active X1, X2) -> U11(X1, X2),
                    U112(X1, X2, mark X3) -> U112(X1, X2, X3),
                  U112(X1, X2, active X3) -> U112(X1, X2, X3),
                    U112(X1, mark X2, X3) -> U112(X1, X2, X3),
                  U112(X1, active X2, X3) -> U112(X1, X2, X3),
                    U112(mark X1, X2, X3) -> U112(X1, X2, X3),
                  U112(active X1, X2, X3) -> U112(X1, X2, X3),
                    U111(X1, X2, mark X3) -> U111(X1, X2, X3),
                  U111(X1, X2, active X3) -> U111(X1, X2, X3),
                    U111(X1, mark X2, X3) -> U111(X1, X2, X3),
                  U111(X1, active X2, X3) -> U111(X1, X2, X3),
                    U111(mark X1, X2, X3) -> U111(X1, X2, X3),
                  U111(active X1, X2, X3) -> U111(X1, X2, X3),
                    U113(X1, X2, mark X3) -> U113(X1, X2, X3),
                  U113(X1, X2, active X3) -> U113(X1, X2, X3),
                    U113(X1, mark X2, X3) -> U113(X1, X2, X3),
                  U113(X1, active X2, X3) -> U113(X1, X2, X3),
                    U113(mark X1, X2, X3) -> U113(X1, X2, X3),
                  U113(active X1, X2, X3) -> U113(X1, X2, X3),
                        U114(X1, mark X2) -> U114(X1, X2),
                      U114(X1, active X2) -> U114(X1, X2),
                        U114(mark X1, X2) -> U114(X1, X2),
                      U114(active X1, X2) -> U114(X1, X2),
                                 s mark X -> s X,
                               s active X -> s X,
                            length mark X -> length X,
                          length active X -> length X,
                               U13 mark X -> U13 X,
                             U13 active X -> U13 X,
                         isNatList mark X -> isNatList X,
                       isNatList active X -> isNatList X,
                              U122 mark X -> U122 X,
                            U122 active X -> U122 X,
                        U121(X1, mark X2) -> U121(X1, X2),
                      U121(X1, active X2) -> U121(X1, X2),
                        U121(mark X1, X2) -> U121(X1, X2),
                      U121(active X1, X2) -> U121(X1, X2),
                U132(X1, X2, X3, mark X4) -> U132(X1, X2, X3, X4),
              U132(X1, X2, X3, active X4) -> U132(X1, X2, X3, X4),
                U132(X1, X2, mark X3, X4) -> U132(X1, X2, X3, X4),
              U132(X1, X2, active X3, X4) -> U132(X1, X2, X3, X4),
                U132(X1, mark X2, X3, X4) -> U132(X1, X2, X3, X4),
              U132(X1, active X2, X3, X4) -> U132(X1, X2, X3, X4),
                U132(mark X1, X2, X3, X4) -> U132(X1, X2, X3, X4),
              U132(active X1, X2, X3, X4) -> U132(X1, X2, X3, X4),
                U131(X1, X2, X3, mark X4) -> U131(X1, X2, X3, X4),
              U131(X1, X2, X3, active X4) -> U131(X1, X2, X3, X4),
                U131(X1, X2, mark X3, X4) -> U131(X1, X2, X3, X4),
              U131(X1, X2, active X3, X4) -> U131(X1, X2, X3, X4),
                U131(X1, mark X2, X3, X4) -> U131(X1, X2, X3, X4),
              U131(X1, active X2, X3, X4) -> U131(X1, X2, X3, X4),
                U131(mark X1, X2, X3, X4) -> U131(X1, X2, X3, X4),
              U131(active X1, X2, X3, X4) -> U131(X1, X2, X3, X4),
                U133(X1, X2, X3, mark X4) -> U133(X1, X2, X3, X4),
              U133(X1, X2, X3, active X4) -> U133(X1, X2, X3, X4),
                U133(X1, X2, mark X3, X4) -> U133(X1, X2, X3, X4),
              U133(X1, X2, active X3, X4) -> U133(X1, X2, X3, X4),
                U133(X1, mark X2, X3, X4) -> U133(X1, X2, X3, X4),
              U133(X1, active X2, X3, X4) -> U133(X1, X2, X3, X4),
                U133(mark X1, X2, X3, X4) -> U133(X1, X2, X3, X4),
              U133(active X1, X2, X3, X4) -> U133(X1, X2, X3, X4),
                U134(X1, X2, X3, mark X4) -> U134(X1, X2, X3, X4),
              U134(X1, X2, X3, active X4) -> U134(X1, X2, X3, X4),
                U134(X1, X2, mark X3, X4) -> U134(X1, X2, X3, X4),
              U134(X1, X2, active X3, X4) -> U134(X1, X2, X3, X4),
                U134(X1, mark X2, X3, X4) -> U134(X1, X2, X3, X4),
              U134(X1, active X2, X3, X4) -> U134(X1, X2, X3, X4),
                U134(mark X1, X2, X3, X4) -> U134(X1, X2, X3, X4),
              U134(active X1, X2, X3, X4) -> U134(X1, X2, X3, X4),
                U135(X1, X2, X3, mark X4) -> U135(X1, X2, X3, X4),
              U135(X1, X2, X3, active X4) -> U135(X1, X2, X3, X4),
                U135(X1, X2, mark X3, X4) -> U135(X1, X2, X3, X4),
              U135(X1, X2, active X3, X4) -> U135(X1, X2, X3, X4),
                U135(X1, mark X2, X3, X4) -> U135(X1, X2, X3, X4),
              U135(X1, active X2, X3, X4) -> U135(X1, X2, X3, X4),
                U135(mark X1, X2, X3, X4) -> U135(X1, X2, X3, X4),
              U135(active X1, X2, X3, X4) -> U135(X1, X2, X3, X4),
                U136(X1, X2, X3, mark X4) -> U136(X1, X2, X3, X4),
              U136(X1, X2, X3, active X4) -> U136(X1, X2, X3, X4),
                U136(X1, X2, mark X3, X4) -> U136(X1, X2, X3, X4),
              U136(X1, X2, active X3, X4) -> U136(X1, X2, X3, X4),
                U136(X1, mark X2, X3, X4) -> U136(X1, X2, X3, X4),
              U136(X1, active X2, X3, X4) -> U136(X1, X2, X3, X4),
                U136(mark X1, X2, X3, X4) -> U136(X1, X2, X3, X4),
              U136(active X1, X2, X3, X4) -> U136(X1, X2, X3, X4),
                        take(X1, mark X2) -> take(X1, X2),
                      take(X1, active X2) -> take(X1, X2),
                        take(mark X1, X2) -> take(X1, X2),
                      take(active X1, X2) -> take(X1, X2),
                         U22(X1, mark X2) -> U22(X1, X2),
                       U22(X1, active X2) -> U22(X1, X2),
                         U22(mark X1, X2) -> U22(X1, X2),
                       U22(active X1, X2) -> U22(X1, X2),
                         U21(X1, mark X2) -> U21(X1, X2),
                       U21(X1, active X2) -> U21(X1, X2),
                         U21(mark X1, X2) -> U21(X1, X2),
                       U21(active X1, X2) -> U21(X1, X2),
                               U23 mark X -> U23 X,
                             U23 active X -> U23 X,
                         U32(X1, mark X2) -> U32(X1, X2),
                       U32(X1, active X2) -> U32(X1, X2),
                         U32(mark X1, X2) -> U32(X1, X2),
                       U32(active X1, X2) -> U32(X1, X2),
                         U31(X1, mark X2) -> U31(X1, X2),
                       U31(X1, active X2) -> U31(X1, X2),
                         U31(mark X1, X2) -> U31(X1, X2),
                       U31(active X1, X2) -> U31(X1, X2),
                               U33 mark X -> U33 X,
                             U33 active X -> U33 X,
                     U42(X1, X2, mark X3) -> U42(X1, X2, X3),
                   U42(X1, X2, active X3) -> U42(X1, X2, X3),
                     U42(X1, mark X2, X3) -> U42(X1, X2, X3),
                   U42(X1, active X2, X3) -> U42(X1, X2, X3),
                     U42(mark X1, X2, X3) -> U42(X1, X2, X3),
                   U42(active X1, X2, X3) -> U42(X1, X2, X3),
                     U41(X1, X2, mark X3) -> U41(X1, X2, X3),
                   U41(X1, X2, active X3) -> U41(X1, X2, X3),
                     U41(X1, mark X2, X3) -> U41(X1, X2, X3),
                   U41(X1, active X2, X3) -> U41(X1, X2, X3),
                     U41(mark X1, X2, X3) -> U41(X1, X2, X3),
                   U41(active X1, X2, X3) -> U41(X1, X2, X3),
                     U43(X1, X2, mark X3) -> U43(X1, X2, X3),
                   U43(X1, X2, active X3) -> U43(X1, X2, X3),
                     U43(X1, mark X2, X3) -> U43(X1, X2, X3),
                   U43(X1, active X2, X3) -> U43(X1, X2, X3),
                     U43(mark X1, X2, X3) -> U43(X1, X2, X3),
                   U43(active X1, X2, X3) -> U43(X1, X2, X3),
                     U44(X1, X2, mark X3) -> U44(X1, X2, X3),
                   U44(X1, X2, active X3) -> U44(X1, X2, X3),
                     U44(X1, mark X2, X3) -> U44(X1, X2, X3),
                   U44(X1, active X2, X3) -> U44(X1, X2, X3),
                     U44(mark X1, X2, X3) -> U44(X1, X2, X3),
                   U44(active X1, X2, X3) -> U44(X1, X2, X3),
                         U45(X1, mark X2) -> U45(X1, X2),
                       U45(X1, active X2) -> U45(X1, X2),
                         U45(mark X1, X2) -> U45(X1, X2),
                       U45(active X1, X2) -> U45(X1, X2),
                               U46 mark X -> U46 X,
                             U46 active X -> U46 X,
                               U52 mark X -> U52 X,
                             U52 active X -> U52 X,
                         U51(X1, mark X2) -> U51(X1, X2),
                       U51(X1, active X2) -> U51(X1, X2),
                         U51(mark X1, X2) -> U51(X1, X2),
                       U51(active X1, X2) -> U51(X1, X2),
                               U62 mark X -> U62 X,
                             U62 active X -> U62 X,
                         U61(X1, mark X2) -> U61(X1, X2),
                       U61(X1, active X2) -> U61(X1, X2),
                         U61(mark X1, X2) -> U61(X1, X2),
                       U61(active X1, X2) -> U61(X1, X2),
                               U71 mark X -> U71 X,
                             U71 active X -> U71 X,
                               U81 mark X -> U81 X,
                             U81 active X -> U81 X,
                     U92(X1, X2, mark X3) -> U92(X1, X2, X3),
                   U92(X1, X2, active X3) -> U92(X1, X2, X3),
                     U92(X1, mark X2, X3) -> U92(X1, X2, X3),
                   U92(X1, active X2, X3) -> U92(X1, X2, X3),
                     U92(mark X1, X2, X3) -> U92(X1, X2, X3),
                   U92(active X1, X2, X3) -> U92(X1, X2, X3),
                     U91(X1, X2, mark X3) -> U91(X1, X2, X3),
                   U91(X1, X2, active X3) -> U91(X1, X2, X3),
                     U91(X1, mark X2, X3) -> U91(X1, X2, X3),
                   U91(X1, active X2, X3) -> U91(X1, X2, X3),
                     U91(mark X1, X2, X3) -> U91(X1, X2, X3),
                   U91(active X1, X2, X3) -> U91(X1, X2, X3),
                     U93(X1, X2, mark X3) -> U93(X1, X2, X3),
                   U93(X1, X2, active X3) -> U93(X1, X2, X3),
                     U93(X1, mark X2, X3) -> U93(X1, X2, X3),
                   U93(X1, active X2, X3) -> U93(X1, X2, X3),
                     U93(mark X1, X2, X3) -> U93(X1, X2, X3),
                   U93(active X1, X2, X3) -> U93(X1, X2, X3),
                     U94(X1, X2, mark X3) -> U94(X1, X2, X3),
                   U94(X1, X2, active X3) -> U94(X1, X2, X3),
                     U94(X1, mark X2, X3) -> U94(X1, X2, X3),
                   U94(X1, active X2, X3) -> U94(X1, X2, X3),
                     U94(mark X1, X2, X3) -> U94(X1, X2, X3),
                   U94(active X1, X2, X3) -> U94(X1, X2, X3),
                         U95(X1, mark X2) -> U95(X1, X2),
                       U95(X1, active X2) -> U95(X1, X2),
                         U95(mark X1, X2) -> U95(X1, X2),
                       U95(active X1, X2) -> U95(X1, X2),
                               U96 mark X -> U96 X,
                             U96 active X -> U96 X
      }
      Open
     
     
     
     SCC (4):
      Strict:
       {  U22#(X1, mark X2) -> U22#(X1, X2),
        U22#(X1, active X2) -> U22#(X1, X2),
          U22#(mark X1, X2) -> U22#(X1, X2),
        U22#(active X1, X2) -> U22#(X1, X2)}
      Weak:
      {
                        mark cons(X1, X2) -> active cons(mark X1, X2),
                                 mark 0() -> active 0(),
                             mark zeros() -> active zeros(),
                    mark U102(X1, X2, X3) -> active U102(mark X1, X2, X3),
                         mark isNatKind X -> active isNatKind X,
                    mark U101(X1, X2, X3) -> active U101(mark X1, X2, X3),
                                mark tt() -> active tt(),
                    mark U103(X1, X2, X3) -> active U103(mark X1, X2, X3),
                    mark isNatIListKind X -> active isNatIListKind X,
                    mark U104(X1, X2, X3) -> active U104(mark X1, X2, X3),
                        mark U105(X1, X2) -> active U105(mark X1, X2),
                             mark isNat X -> active isNat X,
                              mark U106 X -> active U106 mark X,
                        mark isNatIList X -> active isNatIList X,
                         mark U12(X1, X2) -> active U12(mark X1, X2),
                         mark U11(X1, X2) -> active U11(mark X1, X2),
                    mark U112(X1, X2, X3) -> active U112(mark X1, X2, X3),
                    mark U111(X1, X2, X3) -> active U111(mark X1, X2, X3),
                    mark U113(X1, X2, X3) -> active U113(mark X1, X2, X3),
                        mark U114(X1, X2) -> active U114(mark X1, X2),
                                 mark s X -> active s mark X,
                            mark length X -> active length mark X,
                               mark U13 X -> active U13 mark X,
                         mark isNatList X -> active isNatList X,
                              mark U122 X -> active U122 mark X,
                        mark U121(X1, X2) -> active U121(mark X1, X2),
                               mark nil() -> active nil(),
                mark U132(X1, X2, X3, X4) -> active U132(mark X1, X2, X3, X4),
                mark U131(X1, X2, X3, X4) -> active U131(mark X1, X2, X3, X4),
                mark U133(X1, X2, X3, X4) -> active U133(mark X1, X2, X3, X4),
                mark U134(X1, X2, X3, X4) -> active U134(mark X1, X2, X3, X4),
                mark U135(X1, X2, X3, X4) -> active U135(mark X1, X2, X3, X4),
                mark U136(X1, X2, X3, X4) -> active U136(mark X1, X2, X3, X4),
                        mark take(X1, X2) -> active take(mark X1, mark X2),
                         mark U22(X1, X2) -> active U22(mark X1, X2),
                         mark U21(X1, X2) -> active U21(mark X1, X2),
                               mark U23 X -> active U23 mark X,
                         mark U32(X1, X2) -> active U32(mark X1, X2),
                         mark U31(X1, X2) -> active U31(mark X1, X2),
                               mark U33 X -> active U33 mark X,
                     mark U42(X1, X2, X3) -> active U42(mark X1, X2, X3),
                     mark U41(X1, X2, X3) -> active U41(mark X1, X2, X3),
                     mark U43(X1, X2, X3) -> active U43(mark X1, X2, X3),
                     mark U44(X1, X2, X3) -> active U44(mark X1, X2, X3),
                         mark U45(X1, X2) -> active U45(mark X1, X2),
                               mark U46 X -> active U46 mark X,
                               mark U52 X -> active U52 mark X,
                         mark U51(X1, X2) -> active U51(mark X1, X2),
                               mark U62 X -> active U62 mark X,
                         mark U61(X1, X2) -> active U61(mark X1, X2),
                               mark U71 X -> active U71 mark X,
                               mark U81 X -> active U81 mark X,
                     mark U92(X1, X2, X3) -> active U92(mark X1, X2, X3),
                     mark U91(X1, X2, X3) -> active U91(mark X1, X2, X3),
                     mark U93(X1, X2, X3) -> active U93(mark X1, X2, X3),
                     mark U94(X1, X2, X3) -> active U94(mark X1, X2, X3),
                         mark U95(X1, X2) -> active U95(mark X1, X2),
                               mark U96 X -> active U96 mark X,
                        cons(X1, mark X2) -> cons(X1, X2),
                      cons(X1, active X2) -> cons(X1, X2),
                        cons(mark X1, X2) -> cons(X1, X2),
                      cons(active X1, X2) -> cons(X1, X2),
                           active zeros() -> mark cons(0(), zeros()),
                active U102(tt(), V1, V2) -> mark U103(isNatIListKind V2, V1, V2),
                     active isNatKind 0() -> mark tt(),
                    active isNatKind s V1 -> mark U81 isNatKind V1,
               active isNatKind length V1 -> mark U71 isNatIListKind V1,
                active U101(tt(), V1, V2) -> mark U102(isNatKind V1, V1, V2),
                active U103(tt(), V1, V2) -> mark U104(isNatIListKind V2, V1, V2),
       active isNatIListKind cons(V1, V2) -> mark U51(isNatKind V1, V2),
            active isNatIListKind zeros() -> mark tt(),
              active isNatIListKind nil() -> mark tt(),
       active isNatIListKind take(V1, V2) -> mark U61(isNatKind V1, V2),
                active U104(tt(), V1, V2) -> mark U105(isNat V1, V2),
                    active U105(tt(), V2) -> mark U106 isNatIList V2,
                         active isNat 0() -> mark tt(),
                        active isNat s V1 -> mark U21(isNatKind V1, V1),
                   active isNat length V1 -> mark U11(isNatIListKind V1, V1),
                         active U106 tt() -> mark tt(),
                      active isNatIList V -> mark U31(isNatIListKind V, V),
           active isNatIList cons(V1, V2) -> mark U41(isNatKind V1, V1, V2),
                active isNatIList zeros() -> mark tt(),
                     active U12(tt(), V1) -> mark U13 isNatList V1,
                     active U11(tt(), V1) -> mark U12(isNatIListKind V1, V1),
                  active U112(tt(), L, N) -> mark U113(isNat N, L, N),
                  active U111(tt(), L, N) -> mark U112(isNatIListKind L, L, N),
                  active U113(tt(), L, N) -> mark U114(isNatKind N, L),
                     active U114(tt(), L) -> mark s length L,
                 active length cons(N, L) -> mark U111(isNatList L, L, N),
                      active length nil() -> mark 0(),
                          active U13 tt() -> mark tt(),
            active isNatList cons(V1, V2) -> mark U91(isNatKind V1, V1, V2),
                   active isNatList nil() -> mark tt(),
            active isNatList take(V1, V2) -> mark U101(isNatKind V1, V1, V2),
                         active U122 tt() -> mark nil(),
                    active U121(tt(), IL) -> mark U122 isNatIListKind IL,
              active U132(tt(), IL, M, N) -> mark U133(isNat M, IL, M, N),
              active U131(tt(), IL, M, N) -> mark U132(isNatIListKind IL, IL, M, N),
              active U133(tt(), IL, M, N) -> mark U134(isNatKind M, IL, M, N),
              active U134(tt(), IL, M, N) -> mark U135(isNat N, IL, M, N),
              active U135(tt(), IL, M, N) -> mark U136(isNatKind N, IL, M, N),
              active U136(tt(), IL, M, N) -> mark cons(N, take(M, IL)),
                     active take(0(), IL) -> mark U121(isNatIList IL, IL),
            active take(s M, cons(N, IL)) -> mark U131(isNatIList IL, IL, M, N),
                     active U22(tt(), V1) -> mark U23 isNat V1,
                     active U21(tt(), V1) -> mark U22(isNatKind V1, V1),
                          active U23 tt() -> mark tt(),
                      active U32(tt(), V) -> mark U33 isNatList V,
                      active U31(tt(), V) -> mark U32(isNatIListKind V, V),
                          active U33 tt() -> mark tt(),
                 active U42(tt(), V1, V2) -> mark U43(isNatIListKind V2, V1, V2),
                 active U41(tt(), V1, V2) -> mark U42(isNatKind V1, V1, V2),
                 active U43(tt(), V1, V2) -> mark U44(isNatIListKind V2, V1, V2),
                 active U44(tt(), V1, V2) -> mark U45(isNat V1, V2),
                     active U45(tt(), V2) -> mark U46 isNatIList V2,
                          active U46 tt() -> mark tt(),
                          active U52 tt() -> mark tt(),
                     active U51(tt(), V2) -> mark U52 isNatIListKind V2,
                          active U62 tt() -> mark tt(),
                     active U61(tt(), V2) -> mark U62 isNatIListKind V2,
                          active U71 tt() -> mark tt(),
                          active U81 tt() -> mark tt(),
                 active U92(tt(), V1, V2) -> mark U93(isNatIListKind V2, V1, V2),
                 active U91(tt(), V1, V2) -> mark U92(isNatKind V1, V1, V2),
                 active U93(tt(), V1, V2) -> mark U94(isNatIListKind V2, V1, V2),
                 active U94(tt(), V1, V2) -> mark U95(isNat V1, V2),
                     active U95(tt(), V2) -> mark U96 isNatList V2,
                          active U96 tt() -> mark tt(),
                    U102(X1, X2, mark X3) -> U102(X1, X2, X3),
                  U102(X1, X2, active X3) -> U102(X1, X2, X3),
                    U102(X1, mark X2, X3) -> U102(X1, X2, X3),
                  U102(X1, active X2, X3) -> U102(X1, X2, X3),
                    U102(mark X1, X2, X3) -> U102(X1, X2, X3),
                  U102(active X1, X2, X3) -> U102(X1, X2, X3),
                         isNatKind mark X -> isNatKind X,
                       isNatKind active X -> isNatKind X,
                    U101(X1, X2, mark X3) -> U101(X1, X2, X3),
                  U101(X1, X2, active X3) -> U101(X1, X2, X3),
                    U101(X1, mark X2, X3) -> U101(X1, X2, X3),
                  U101(X1, active X2, X3) -> U101(X1, X2, X3),
                    U101(mark X1, X2, X3) -> U101(X1, X2, X3),
                  U101(active X1, X2, X3) -> U101(X1, X2, X3),
                    U103(X1, X2, mark X3) -> U103(X1, X2, X3),
                  U103(X1, X2, active X3) -> U103(X1, X2, X3),
                    U103(X1, mark X2, X3) -> U103(X1, X2, X3),
                  U103(X1, active X2, X3) -> U103(X1, X2, X3),
                    U103(mark X1, X2, X3) -> U103(X1, X2, X3),
                  U103(active X1, X2, X3) -> U103(X1, X2, X3),
                    isNatIListKind mark X -> isNatIListKind X,
                  isNatIListKind active X -> isNatIListKind X,
                    U104(X1, X2, mark X3) -> U104(X1, X2, X3),
                  U104(X1, X2, active X3) -> U104(X1, X2, X3),
                    U104(X1, mark X2, X3) -> U104(X1, X2, X3),
                  U104(X1, active X2, X3) -> U104(X1, X2, X3),
                    U104(mark X1, X2, X3) -> U104(X1, X2, X3),
                  U104(active X1, X2, X3) -> U104(X1, X2, X3),
                        U105(X1, mark X2) -> U105(X1, X2),
                      U105(X1, active X2) -> U105(X1, X2),
                        U105(mark X1, X2) -> U105(X1, X2),
                      U105(active X1, X2) -> U105(X1, X2),
                             isNat mark X -> isNat X,
                           isNat active X -> isNat X,
                              U106 mark X -> U106 X,
                            U106 active X -> U106 X,
                        isNatIList mark X -> isNatIList X,
                      isNatIList active X -> isNatIList X,
                         U12(X1, mark X2) -> U12(X1, X2),
                       U12(X1, active X2) -> U12(X1, X2),
                         U12(mark X1, X2) -> U12(X1, X2),
                       U12(active X1, X2) -> U12(X1, X2),
                         U11(X1, mark X2) -> U11(X1, X2),
                       U11(X1, active X2) -> U11(X1, X2),
                         U11(mark X1, X2) -> U11(X1, X2),
                       U11(active X1, X2) -> U11(X1, X2),
                    U112(X1, X2, mark X3) -> U112(X1, X2, X3),
                  U112(X1, X2, active X3) -> U112(X1, X2, X3),
                    U112(X1, mark X2, X3) -> U112(X1, X2, X3),
                  U112(X1, active X2, X3) -> U112(X1, X2, X3),
                    U112(mark X1, X2, X3) -> U112(X1, X2, X3),
                  U112(active X1, X2, X3) -> U112(X1, X2, X3),
                    U111(X1, X2, mark X3) -> U111(X1, X2, X3),
                  U111(X1, X2, active X3) -> U111(X1, X2, X3),
                    U111(X1, mark X2, X3) -> U111(X1, X2, X3),
                  U111(X1, active X2, X3) -> U111(X1, X2, X3),
                    U111(mark X1, X2, X3) -> U111(X1, X2, X3),
                  U111(active X1, X2, X3) -> U111(X1, X2, X3),
                    U113(X1, X2, mark X3) -> U113(X1, X2, X3),
                  U113(X1, X2, active X3) -> U113(X1, X2, X3),
                    U113(X1, mark X2, X3) -> U113(X1, X2, X3),
                  U113(X1, active X2, X3) -> U113(X1, X2, X3),
                    U113(mark X1, X2, X3) -> U113(X1, X2, X3),
                  U113(active X1, X2, X3) -> U113(X1, X2, X3),
                        U114(X1, mark X2) -> U114(X1, X2),
                      U114(X1, active X2) -> U114(X1, X2),
                        U114(mark X1, X2) -> U114(X1, X2),
                      U114(active X1, X2) -> U114(X1, X2),
                                 s mark X -> s X,
                               s active X -> s X,
                            length mark X -> length X,
                          length active X -> length X,
                               U13 mark X -> U13 X,
                             U13 active X -> U13 X,
                         isNatList mark X -> isNatList X,
                       isNatList active X -> isNatList X,
                              U122 mark X -> U122 X,
                            U122 active X -> U122 X,
                        U121(X1, mark X2) -> U121(X1, X2),
                      U121(X1, active X2) -> U121(X1, X2),
                        U121(mark X1, X2) -> U121(X1, X2),
                      U121(active X1, X2) -> U121(X1, X2),
                U132(X1, X2, X3, mark X4) -> U132(X1, X2, X3, X4),
              U132(X1, X2, X3, active X4) -> U132(X1, X2, X3, X4),
                U132(X1, X2, mark X3, X4) -> U132(X1, X2, X3, X4),
              U132(X1, X2, active X3, X4) -> U132(X1, X2, X3, X4),
                U132(X1, mark X2, X3, X4) -> U132(X1, X2, X3, X4),
              U132(X1, active X2, X3, X4) -> U132(X1, X2, X3, X4),
                U132(mark X1, X2, X3, X4) -> U132(X1, X2, X3, X4),
              U132(active X1, X2, X3, X4) -> U132(X1, X2, X3, X4),
                U131(X1, X2, X3, mark X4) -> U131(X1, X2, X3, X4),
              U131(X1, X2, X3, active X4) -> U131(X1, X2, X3, X4),
                U131(X1, X2, mark X3, X4) -> U131(X1, X2, X3, X4),
              U131(X1, X2, active X3, X4) -> U131(X1, X2, X3, X4),
                U131(X1, mark X2, X3, X4) -> U131(X1, X2, X3, X4),
              U131(X1, active X2, X3, X4) -> U131(X1, X2, X3, X4),
                U131(mark X1, X2, X3, X4) -> U131(X1, X2, X3, X4),
              U131(active X1, X2, X3, X4) -> U131(X1, X2, X3, X4),
                U133(X1, X2, X3, mark X4) -> U133(X1, X2, X3, X4),
              U133(X1, X2, X3, active X4) -> U133(X1, X2, X3, X4),
                U133(X1, X2, mark X3, X4) -> U133(X1, X2, X3, X4),
              U133(X1, X2, active X3, X4) -> U133(X1, X2, X3, X4),
                U133(X1, mark X2, X3, X4) -> U133(X1, X2, X3, X4),
              U133(X1, active X2, X3, X4) -> U133(X1, X2, X3, X4),
                U133(mark X1, X2, X3, X4) -> U133(X1, X2, X3, X4),
              U133(active X1, X2, X3, X4) -> U133(X1, X2, X3, X4),
                U134(X1, X2, X3, mark X4) -> U134(X1, X2, X3, X4),
              U134(X1, X2, X3, active X4) -> U134(X1, X2, X3, X4),
                U134(X1, X2, mark X3, X4) -> U134(X1, X2, X3, X4),
              U134(X1, X2, active X3, X4) -> U134(X1, X2, X3, X4),
                U134(X1, mark X2, X3, X4) -> U134(X1, X2, X3, X4),
              U134(X1, active X2, X3, X4) -> U134(X1, X2, X3, X4),
                U134(mark X1, X2, X3, X4) -> U134(X1, X2, X3, X4),
              U134(active X1, X2, X3, X4) -> U134(X1, X2, X3, X4),
                U135(X1, X2, X3, mark X4) -> U135(X1, X2, X3, X4),
              U135(X1, X2, X3, active X4) -> U135(X1, X2, X3, X4),
                U135(X1, X2, mark X3, X4) -> U135(X1, X2, X3, X4),
              U135(X1, X2, active X3, X4) -> U135(X1, X2, X3, X4),
                U135(X1, mark X2, X3, X4) -> U135(X1, X2, X3, X4),
              U135(X1, active X2, X3, X4) -> U135(X1, X2, X3, X4),
                U135(mark X1, X2, X3, X4) -> U135(X1, X2, X3, X4),
              U135(active X1, X2, X3, X4) -> U135(X1, X2, X3, X4),
                U136(X1, X2, X3, mark X4) -> U136(X1, X2, X3, X4),
              U136(X1, X2, X3, active X4) -> U136(X1, X2, X3, X4),
                U136(X1, X2, mark X3, X4) -> U136(X1, X2, X3, X4),
              U136(X1, X2, active X3, X4) -> U136(X1, X2, X3, X4),
                U136(X1, mark X2, X3, X4) -> U136(X1, X2, X3, X4),
              U136(X1, active X2, X3, X4) -> U136(X1, X2, X3, X4),
                U136(mark X1, X2, X3, X4) -> U136(X1, X2, X3, X4),
              U136(active X1, X2, X3, X4) -> U136(X1, X2, X3, X4),
                        take(X1, mark X2) -> take(X1, X2),
                      take(X1, active X2) -> take(X1, X2),
                        take(mark X1, X2) -> take(X1, X2),
                      take(active X1, X2) -> take(X1, X2),
                         U22(X1, mark X2) -> U22(X1, X2),
                       U22(X1, active X2) -> U22(X1, X2),
                         U22(mark X1, X2) -> U22(X1, X2),
                       U22(active X1, X2) -> U22(X1, X2),
                         U21(X1, mark X2) -> U21(X1, X2),
                       U21(X1, active X2) -> U21(X1, X2),
                         U21(mark X1, X2) -> U21(X1, X2),
                       U21(active X1, X2) -> U21(X1, X2),
                               U23 mark X -> U23 X,
                             U23 active X -> U23 X,
                         U32(X1, mark X2) -> U32(X1, X2),
                       U32(X1, active X2) -> U32(X1, X2),
                         U32(mark X1, X2) -> U32(X1, X2),
                       U32(active X1, X2) -> U32(X1, X2),
                         U31(X1, mark X2) -> U31(X1, X2),
                       U31(X1, active X2) -> U31(X1, X2),
                         U31(mark X1, X2) -> U31(X1, X2),
                       U31(active X1, X2) -> U31(X1, X2),
                               U33 mark X -> U33 X,
                             U33 active X -> U33 X,
                     U42(X1, X2, mark X3) -> U42(X1, X2, X3),
                   U42(X1, X2, active X3) -> U42(X1, X2, X3),
                     U42(X1, mark X2, X3) -> U42(X1, X2, X3),
                   U42(X1, active X2, X3) -> U42(X1, X2, X3),
                     U42(mark X1, X2, X3) -> U42(X1, X2, X3),
                   U42(active X1, X2, X3) -> U42(X1, X2, X3),
                     U41(X1, X2, mark X3) -> U41(X1, X2, X3),
                   U41(X1, X2, active X3) -> U41(X1, X2, X3),
                     U41(X1, mark X2, X3) -> U41(X1, X2, X3),
                   U41(X1, active X2, X3) -> U41(X1, X2, X3),
                     U41(mark X1, X2, X3) -> U41(X1, X2, X3),
                   U41(active X1, X2, X3) -> U41(X1, X2, X3),
                     U43(X1, X2, mark X3) -> U43(X1, X2, X3),
                   U43(X1, X2, active X3) -> U43(X1, X2, X3),
                     U43(X1, mark X2, X3) -> U43(X1, X2, X3),
                   U43(X1, active X2, X3) -> U43(X1, X2, X3),
                     U43(mark X1, X2, X3) -> U43(X1, X2, X3),
                   U43(active X1, X2, X3) -> U43(X1, X2, X3),
                     U44(X1, X2, mark X3) -> U44(X1, X2, X3),
                   U44(X1, X2, active X3) -> U44(X1, X2, X3),
                     U44(X1, mark X2, X3) -> U44(X1, X2, X3),
                   U44(X1, active X2, X3) -> U44(X1, X2, X3),
                     U44(mark X1, X2, X3) -> U44(X1, X2, X3),
                   U44(active X1, X2, X3) -> U44(X1, X2, X3),
                         U45(X1, mark X2) -> U45(X1, X2),
                       U45(X1, active X2) -> U45(X1, X2),
                         U45(mark X1, X2) -> U45(X1, X2),
                       U45(active X1, X2) -> U45(X1, X2),
                               U46 mark X -> U46 X,
                             U46 active X -> U46 X,
                               U52 mark X -> U52 X,
                             U52 active X -> U52 X,
                         U51(X1, mark X2) -> U51(X1, X2),
                       U51(X1, active X2) -> U51(X1, X2),
                         U51(mark X1, X2) -> U51(X1, X2),
                       U51(active X1, X2) -> U51(X1, X2),
                               U62 mark X -> U62 X,
                             U62 active X -> U62 X,
                         U61(X1, mark X2) -> U61(X1, X2),
                       U61(X1, active X2) -> U61(X1, X2),
                         U61(mark X1, X2) -> U61(X1, X2),
                       U61(active X1, X2) -> U61(X1, X2),
                               U71 mark X -> U71 X,
                             U71 active X -> U71 X,
                               U81 mark X -> U81 X,
                             U81 active X -> U81 X,
                     U92(X1, X2, mark X3) -> U92(X1, X2, X3),
                   U92(X1, X2, active X3) -> U92(X1, X2, X3),
                     U92(X1, mark X2, X3) -> U92(X1, X2, X3),
                   U92(X1, active X2, X3) -> U92(X1, X2, X3),
                     U92(mark X1, X2, X3) -> U92(X1, X2, X3),
                   U92(active X1, X2, X3) -> U92(X1, X2, X3),
                     U91(X1, X2, mark X3) -> U91(X1, X2, X3),
                   U91(X1, X2, active X3) -> U91(X1, X2, X3),
                     U91(X1, mark X2, X3) -> U91(X1, X2, X3),
                   U91(X1, active X2, X3) -> U91(X1, X2, X3),
                     U91(mark X1, X2, X3) -> U91(X1, X2, X3),
                   U91(active X1, X2, X3) -> U91(X1, X2, X3),
                     U93(X1, X2, mark X3) -> U93(X1, X2, X3),
                   U93(X1, X2, active X3) -> U93(X1, X2, X3),
                     U93(X1, mark X2, X3) -> U93(X1, X2, X3),
                   U93(X1, active X2, X3) -> U93(X1, X2, X3),
                     U93(mark X1, X2, X3) -> U93(X1, X2, X3),
                   U93(active X1, X2, X3) -> U93(X1, X2, X3),
                     U94(X1, X2, mark X3) -> U94(X1, X2, X3),
                   U94(X1, X2, active X3) -> U94(X1, X2, X3),
                     U94(X1, mark X2, X3) -> U94(X1, X2, X3),
                   U94(X1, active X2, X3) -> U94(X1, X2, X3),
                     U94(mark X1, X2, X3) -> U94(X1, X2, X3),
                   U94(active X1, X2, X3) -> U94(X1, X2, X3),
                         U95(X1, mark X2) -> U95(X1, X2),
                       U95(X1, active X2) -> U95(X1, X2),
                         U95(mark X1, X2) -> U95(X1, X2),
                       U95(active X1, X2) -> U95(X1, X2),
                               U96 mark X -> U96 X,
                             U96 active X -> U96 X
      }
      Open
     
     
     
     
     
     SCC (2):
      Strict:
       {  isNatIList# mark X -> isNatIList# X,
        isNatIList# active X -> isNatIList# X}
      Weak:
      {
                        mark cons(X1, X2) -> active cons(mark X1, X2),
                                 mark 0() -> active 0(),
                             mark zeros() -> active zeros(),
                    mark U102(X1, X2, X3) -> active U102(mark X1, X2, X3),
                         mark isNatKind X -> active isNatKind X,
                    mark U101(X1, X2, X3) -> active U101(mark X1, X2, X3),
                                mark tt() -> active tt(),
                    mark U103(X1, X2, X3) -> active U103(mark X1, X2, X3),
                    mark isNatIListKind X -> active isNatIListKind X,
                    mark U104(X1, X2, X3) -> active U104(mark X1, X2, X3),
                        mark U105(X1, X2) -> active U105(mark X1, X2),
                             mark isNat X -> active isNat X,
                              mark U106 X -> active U106 mark X,
                        mark isNatIList X -> active isNatIList X,
                         mark U12(X1, X2) -> active U12(mark X1, X2),
                         mark U11(X1, X2) -> active U11(mark X1, X2),
                    mark U112(X1, X2, X3) -> active U112(mark X1, X2, X3),
                    mark U111(X1, X2, X3) -> active U111(mark X1, X2, X3),
                    mark U113(X1, X2, X3) -> active U113(mark X1, X2, X3),
                        mark U114(X1, X2) -> active U114(mark X1, X2),
                                 mark s X -> active s mark X,
                            mark length X -> active length mark X,
                               mark U13 X -> active U13 mark X,
                         mark isNatList X -> active isNatList X,
                              mark U122 X -> active U122 mark X,
                        mark U121(X1, X2) -> active U121(mark X1, X2),
                               mark nil() -> active nil(),
                mark U132(X1, X2, X3, X4) -> active U132(mark X1, X2, X3, X4),
                mark U131(X1, X2, X3, X4) -> active U131(mark X1, X2, X3, X4),
                mark U133(X1, X2, X3, X4) -> active U133(mark X1, X2, X3, X4),
                mark U134(X1, X2, X3, X4) -> active U134(mark X1, X2, X3, X4),
                mark U135(X1, X2, X3, X4) -> active U135(mark X1, X2, X3, X4),
                mark U136(X1, X2, X3, X4) -> active U136(mark X1, X2, X3, X4),
                        mark take(X1, X2) -> active take(mark X1, mark X2),
                         mark U22(X1, X2) -> active U22(mark X1, X2),
                         mark U21(X1, X2) -> active U21(mark X1, X2),
                               mark U23 X -> active U23 mark X,
                         mark U32(X1, X2) -> active U32(mark X1, X2),
                         mark U31(X1, X2) -> active U31(mark X1, X2),
                               mark U33 X -> active U33 mark X,
                     mark U42(X1, X2, X3) -> active U42(mark X1, X2, X3),
                     mark U41(X1, X2, X3) -> active U41(mark X1, X2, X3),
                     mark U43(X1, X2, X3) -> active U43(mark X1, X2, X3),
                     mark U44(X1, X2, X3) -> active U44(mark X1, X2, X3),
                         mark U45(X1, X2) -> active U45(mark X1, X2),
                               mark U46 X -> active U46 mark X,
                               mark U52 X -> active U52 mark X,
                         mark U51(X1, X2) -> active U51(mark X1, X2),
                               mark U62 X -> active U62 mark X,
                         mark U61(X1, X2) -> active U61(mark X1, X2),
                               mark U71 X -> active U71 mark X,
                               mark U81 X -> active U81 mark X,
                     mark U92(X1, X2, X3) -> active U92(mark X1, X2, X3),
                     mark U91(X1, X2, X3) -> active U91(mark X1, X2, X3),
                     mark U93(X1, X2, X3) -> active U93(mark X1, X2, X3),
                     mark U94(X1, X2, X3) -> active U94(mark X1, X2, X3),
                         mark U95(X1, X2) -> active U95(mark X1, X2),
                               mark U96 X -> active U96 mark X,
                        cons(X1, mark X2) -> cons(X1, X2),
                      cons(X1, active X2) -> cons(X1, X2),
                        cons(mark X1, X2) -> cons(X1, X2),
                      cons(active X1, X2) -> cons(X1, X2),
                           active zeros() -> mark cons(0(), zeros()),
                active U102(tt(), V1, V2) -> mark U103(isNatIListKind V2, V1, V2),
                     active isNatKind 0() -> mark tt(),
                    active isNatKind s V1 -> mark U81 isNatKind V1,
               active isNatKind length V1 -> mark U71 isNatIListKind V1,
                active U101(tt(), V1, V2) -> mark U102(isNatKind V1, V1, V2),
                active U103(tt(), V1, V2) -> mark U104(isNatIListKind V2, V1, V2),
       active isNatIListKind cons(V1, V2) -> mark U51(isNatKind V1, V2),
            active isNatIListKind zeros() -> mark tt(),
              active isNatIListKind nil() -> mark tt(),
       active isNatIListKind take(V1, V2) -> mark U61(isNatKind V1, V2),
                active U104(tt(), V1, V2) -> mark U105(isNat V1, V2),
                    active U105(tt(), V2) -> mark U106 isNatIList V2,
                         active isNat 0() -> mark tt(),
                        active isNat s V1 -> mark U21(isNatKind V1, V1),
                   active isNat length V1 -> mark U11(isNatIListKind V1, V1),
                         active U106 tt() -> mark tt(),
                      active isNatIList V -> mark U31(isNatIListKind V, V),
           active isNatIList cons(V1, V2) -> mark U41(isNatKind V1, V1, V2),
                active isNatIList zeros() -> mark tt(),
                     active U12(tt(), V1) -> mark U13 isNatList V1,
                     active U11(tt(), V1) -> mark U12(isNatIListKind V1, V1),
                  active U112(tt(), L, N) -> mark U113(isNat N, L, N),
                  active U111(tt(), L, N) -> mark U112(isNatIListKind L, L, N),
                  active U113(tt(), L, N) -> mark U114(isNatKind N, L),
                     active U114(tt(), L) -> mark s length L,
                 active length cons(N, L) -> mark U111(isNatList L, L, N),
                      active length nil() -> mark 0(),
                          active U13 tt() -> mark tt(),
            active isNatList cons(V1, V2) -> mark U91(isNatKind V1, V1, V2),
                   active isNatList nil() -> mark tt(),
            active isNatList take(V1, V2) -> mark U101(isNatKind V1, V1, V2),
                         active U122 tt() -> mark nil(),
                    active U121(tt(), IL) -> mark U122 isNatIListKind IL,
              active U132(tt(), IL, M, N) -> mark U133(isNat M, IL, M, N),
              active U131(tt(), IL, M, N) -> mark U132(isNatIListKind IL, IL, M, N),
              active U133(tt(), IL, M, N) -> mark U134(isNatKind M, IL, M, N),
              active U134(tt(), IL, M, N) -> mark U135(isNat N, IL, M, N),
              active U135(tt(), IL, M, N) -> mark U136(isNatKind N, IL, M, N),
              active U136(tt(), IL, M, N) -> mark cons(N, take(M, IL)),
                     active take(0(), IL) -> mark U121(isNatIList IL, IL),
            active take(s M, cons(N, IL)) -> mark U131(isNatIList IL, IL, M, N),
                     active U22(tt(), V1) -> mark U23 isNat V1,
                     active U21(tt(), V1) -> mark U22(isNatKind V1, V1),
                          active U23 tt() -> mark tt(),
                      active U32(tt(), V) -> mark U33 isNatList V,
                      active U31(tt(), V) -> mark U32(isNatIListKind V, V),
                          active U33 tt() -> mark tt(),
                 active U42(tt(), V1, V2) -> mark U43(isNatIListKind V2, V1, V2),
                 active U41(tt(), V1, V2) -> mark U42(isNatKind V1, V1, V2),
                 active U43(tt(), V1, V2) -> mark U44(isNatIListKind V2, V1, V2),
                 active U44(tt(), V1, V2) -> mark U45(isNat V1, V2),
                     active U45(tt(), V2) -> mark U46 isNatIList V2,
                          active U46 tt() -> mark tt(),
                          active U52 tt() -> mark tt(),
                     active U51(tt(), V2) -> mark U52 isNatIListKind V2,
                          active U62 tt() -> mark tt(),
                     active U61(tt(), V2) -> mark U62 isNatIListKind V2,
                          active U71 tt() -> mark tt(),
                          active U81 tt() -> mark tt(),
                 active U92(tt(), V1, V2) -> mark U93(isNatIListKind V2, V1, V2),
                 active U91(tt(), V1, V2) -> mark U92(isNatKind V1, V1, V2),
                 active U93(tt(), V1, V2) -> mark U94(isNatIListKind V2, V1, V2),
                 active U94(tt(), V1, V2) -> mark U95(isNat V1, V2),
                     active U95(tt(), V2) -> mark U96 isNatList V2,
                          active U96 tt() -> mark tt(),
                    U102(X1, X2, mark X3) -> U102(X1, X2, X3),
                  U102(X1, X2, active X3) -> U102(X1, X2, X3),
                    U102(X1, mark X2, X3) -> U102(X1, X2, X3),
                  U102(X1, active X2, X3) -> U102(X1, X2, X3),
                    U102(mark X1, X2, X3) -> U102(X1, X2, X3),
                  U102(active X1, X2, X3) -> U102(X1, X2, X3),
                         isNatKind mark X -> isNatKind X,
                       isNatKind active X -> isNatKind X,
                    U101(X1, X2, mark X3) -> U101(X1, X2, X3),
                  U101(X1, X2, active X3) -> U101(X1, X2, X3),
                    U101(X1, mark X2, X3) -> U101(X1, X2, X3),
                  U101(X1, active X2, X3) -> U101(X1, X2, X3),
                    U101(mark X1, X2, X3) -> U101(X1, X2, X3),
                  U101(active X1, X2, X3) -> U101(X1, X2, X3),
                    U103(X1, X2, mark X3) -> U103(X1, X2, X3),
                  U103(X1, X2, active X3) -> U103(X1, X2, X3),
                    U103(X1, mark X2, X3) -> U103(X1, X2, X3),
                  U103(X1, active X2, X3) -> U103(X1, X2, X3),
                    U103(mark X1, X2, X3) -> U103(X1, X2, X3),
                  U103(active X1, X2, X3) -> U103(X1, X2, X3),
                    isNatIListKind mark X -> isNatIListKind X,
                  isNatIListKind active X -> isNatIListKind X,
                    U104(X1, X2, mark X3) -> U104(X1, X2, X3),
                  U104(X1, X2, active X3) -> U104(X1, X2, X3),
                    U104(X1, mark X2, X3) -> U104(X1, X2, X3),
                  U104(X1, active X2, X3) -> U104(X1, X2, X3),
                    U104(mark X1, X2, X3) -> U104(X1, X2, X3),
                  U104(active X1, X2, X3) -> U104(X1, X2, X3),
                        U105(X1, mark X2) -> U105(X1, X2),
                      U105(X1, active X2) -> U105(X1, X2),
                        U105(mark X1, X2) -> U105(X1, X2),
                      U105(active X1, X2) -> U105(X1, X2),
                             isNat mark X -> isNat X,
                           isNat active X -> isNat X,
                              U106 mark X -> U106 X,
                            U106 active X -> U106 X,
                        isNatIList mark X -> isNatIList X,
                      isNatIList active X -> isNatIList X,
                         U12(X1, mark X2) -> U12(X1, X2),
                       U12(X1, active X2) -> U12(X1, X2),
                         U12(mark X1, X2) -> U12(X1, X2),
                       U12(active X1, X2) -> U12(X1, X2),
                         U11(X1, mark X2) -> U11(X1, X2),
                       U11(X1, active X2) -> U11(X1, X2),
                         U11(mark X1, X2) -> U11(X1, X2),
                       U11(active X1, X2) -> U11(X1, X2),
                    U112(X1, X2, mark X3) -> U112(X1, X2, X3),
                  U112(X1, X2, active X3) -> U112(X1, X2, X3),
                    U112(X1, mark X2, X3) -> U112(X1, X2, X3),
                  U112(X1, active X2, X3) -> U112(X1, X2, X3),
                    U112(mark X1, X2, X3) -> U112(X1, X2, X3),
                  U112(active X1, X2, X3) -> U112(X1, X2, X3),
                    U111(X1, X2, mark X3) -> U111(X1, X2, X3),
                  U111(X1, X2, active X3) -> U111(X1, X2, X3),
                    U111(X1, mark X2, X3) -> U111(X1, X2, X3),
                  U111(X1, active X2, X3) -> U111(X1, X2, X3),
                    U111(mark X1, X2, X3) -> U111(X1, X2, X3),
                  U111(active X1, X2, X3) -> U111(X1, X2, X3),
                    U113(X1, X2, mark X3) -> U113(X1, X2, X3),
                  U113(X1, X2, active X3) -> U113(X1, X2, X3),
                    U113(X1, mark X2, X3) -> U113(X1, X2, X3),
                  U113(X1, active X2, X3) -> U113(X1, X2, X3),
                    U113(mark X1, X2, X3) -> U113(X1, X2, X3),
                  U113(active X1, X2, X3) -> U113(X1, X2, X3),
                        U114(X1, mark X2) -> U114(X1, X2),
                      U114(X1, active X2) -> U114(X1, X2),
                        U114(mark X1, X2) -> U114(X1, X2),
                      U114(active X1, X2) -> U114(X1, X2),
                                 s mark X -> s X,
                               s active X -> s X,
                            length mark X -> length X,
                          length active X -> length X,
                               U13 mark X -> U13 X,
                             U13 active X -> U13 X,
                         isNatList mark X -> isNatList X,
                       isNatList active X -> isNatList X,
                              U122 mark X -> U122 X,
                            U122 active X -> U122 X,
                        U121(X1, mark X2) -> U121(X1, X2),
                      U121(X1, active X2) -> U121(X1, X2),
                        U121(mark X1, X2) -> U121(X1, X2),
                      U121(active X1, X2) -> U121(X1, X2),
                U132(X1, X2, X3, mark X4) -> U132(X1, X2, X3, X4),
              U132(X1, X2, X3, active X4) -> U132(X1, X2, X3, X4),
                U132(X1, X2, mark X3, X4) -> U132(X1, X2, X3, X4),
              U132(X1, X2, active X3, X4) -> U132(X1, X2, X3, X4),
                U132(X1, mark X2, X3, X4) -> U132(X1, X2, X3, X4),
              U132(X1, active X2, X3, X4) -> U132(X1, X2, X3, X4),
                U132(mark X1, X2, X3, X4) -> U132(X1, X2, X3, X4),
              U132(active X1, X2, X3, X4) -> U132(X1, X2, X3, X4),
                U131(X1, X2, X3, mark X4) -> U131(X1, X2, X3, X4),
              U131(X1, X2, X3, active X4) -> U131(X1, X2, X3, X4),
                U131(X1, X2, mark X3, X4) -> U131(X1, X2, X3, X4),
              U131(X1, X2, active X3, X4) -> U131(X1, X2, X3, X4),
                U131(X1, mark X2, X3, X4) -> U131(X1, X2, X3, X4),
              U131(X1, active X2, X3, X4) -> U131(X1, X2, X3, X4),
                U131(mark X1, X2, X3, X4) -> U131(X1, X2, X3, X4),
              U131(active X1, X2, X3, X4) -> U131(X1, X2, X3, X4),
                U133(X1, X2, X3, mark X4) -> U133(X1, X2, X3, X4),
              U133(X1, X2, X3, active X4) -> U133(X1, X2, X3, X4),
                U133(X1, X2, mark X3, X4) -> U133(X1, X2, X3, X4),
              U133(X1, X2, active X3, X4) -> U133(X1, X2, X3, X4),
                U133(X1, mark X2, X3, X4) -> U133(X1, X2, X3, X4),
              U133(X1, active X2, X3, X4) -> U133(X1, X2, X3, X4),
                U133(mark X1, X2, X3, X4) -> U133(X1, X2, X3, X4),
              U133(active X1, X2, X3, X4) -> U133(X1, X2, X3, X4),
                U134(X1, X2, X3, mark X4) -> U134(X1, X2, X3, X4),
              U134(X1, X2, X3, active X4) -> U134(X1, X2, X3, X4),
                U134(X1, X2, mark X3, X4) -> U134(X1, X2, X3, X4),
              U134(X1, X2, active X3, X4) -> U134(X1, X2, X3, X4),
                U134(X1, mark X2, X3, X4) -> U134(X1, X2, X3, X4),
              U134(X1, active X2, X3, X4) -> U134(X1, X2, X3, X4),
                U134(mark X1, X2, X3, X4) -> U134(X1, X2, X3, X4),
              U134(active X1, X2, X3, X4) -> U134(X1, X2, X3, X4),
                U135(X1, X2, X3, mark X4) -> U135(X1, X2, X3, X4),
              U135(X1, X2, X3, active X4) -> U135(X1, X2, X3, X4),
                U135(X1, X2, mark X3, X4) -> U135(X1, X2, X3, X4),
              U135(X1, X2, active X3, X4) -> U135(X1, X2, X3, X4),
                U135(X1, mark X2, X3, X4) -> U135(X1, X2, X3, X4),
              U135(X1, active X2, X3, X4) -> U135(X1, X2, X3, X4),
                U135(mark X1, X2, X3, X4) -> U135(X1, X2, X3, X4),
              U135(active X1, X2, X3, X4) -> U135(X1, X2, X3, X4),
                U136(X1, X2, X3, mark X4) -> U136(X1, X2, X3, X4),
              U136(X1, X2, X3, active X4) -> U136(X1, X2, X3, X4),
                U136(X1, X2, mark X3, X4) -> U136(X1, X2, X3, X4),
              U136(X1, X2, active X3, X4) -> U136(X1, X2, X3, X4),
                U136(X1, mark X2, X3, X4) -> U136(X1, X2, X3, X4),
              U136(X1, active X2, X3, X4) -> U136(X1, X2, X3, X4),
                U136(mark X1, X2, X3, X4) -> U136(X1, X2, X3, X4),
              U136(active X1, X2, X3, X4) -> U136(X1, X2, X3, X4),
                        take(X1, mark X2) -> take(X1, X2),
                      take(X1, active X2) -> take(X1, X2),
                        take(mark X1, X2) -> take(X1, X2),
                      take(active X1, X2) -> take(X1, X2),
                         U22(X1, mark X2) -> U22(X1, X2),
                       U22(X1, active X2) -> U22(X1, X2),
                         U22(mark X1, X2) -> U22(X1, X2),
                       U22(active X1, X2) -> U22(X1, X2),
                         U21(X1, mark X2) -> U21(X1, X2),
                       U21(X1, active X2) -> U21(X1, X2),
                         U21(mark X1, X2) -> U21(X1, X2),
                       U21(active X1, X2) -> U21(X1, X2),
                               U23 mark X -> U23 X,
                             U23 active X -> U23 X,
                         U32(X1, mark X2) -> U32(X1, X2),
                       U32(X1, active X2) -> U32(X1, X2),
                         U32(mark X1, X2) -> U32(X1, X2),
                       U32(active X1, X2) -> U32(X1, X2),
                         U31(X1, mark X2) -> U31(X1, X2),
                       U31(X1, active X2) -> U31(X1, X2),
                         U31(mark X1, X2) -> U31(X1, X2),
                       U31(active X1, X2) -> U31(X1, X2),
                               U33 mark X -> U33 X,
                             U33 active X -> U33 X,
                     U42(X1, X2, mark X3) -> U42(X1, X2, X3),
                   U42(X1, X2, active X3) -> U42(X1, X2, X3),
                     U42(X1, mark X2, X3) -> U42(X1, X2, X3),
                   U42(X1, active X2, X3) -> U42(X1, X2, X3),
                     U42(mark X1, X2, X3) -> U42(X1, X2, X3),
                   U42(active X1, X2, X3) -> U42(X1, X2, X3),
                     U41(X1, X2, mark X3) -> U41(X1, X2, X3),
                   U41(X1, X2, active X3) -> U41(X1, X2, X3),
                     U41(X1, mark X2, X3) -> U41(X1, X2, X3),
                   U41(X1, active X2, X3) -> U41(X1, X2, X3),
                     U41(mark X1, X2, X3) -> U41(X1, X2, X3),
                   U41(active X1, X2, X3) -> U41(X1, X2, X3),
                     U43(X1, X2, mark X3) -> U43(X1, X2, X3),
                   U43(X1, X2, active X3) -> U43(X1, X2, X3),
                     U43(X1, mark X2, X3) -> U43(X1, X2, X3),
                   U43(X1, active X2, X3) -> U43(X1, X2, X3),
                     U43(mark X1, X2, X3) -> U43(X1, X2, X3),
                   U43(active X1, X2, X3) -> U43(X1, X2, X3),
                     U44(X1, X2, mark X3) -> U44(X1, X2, X3),
                   U44(X1, X2, active X3) -> U44(X1, X2, X3),
                     U44(X1, mark X2, X3) -> U44(X1, X2, X3),
                   U44(X1, active X2, X3) -> U44(X1, X2, X3),
                     U44(mark X1, X2, X3) -> U44(X1, X2, X3),
                   U44(active X1, X2, X3) -> U44(X1, X2, X3),
                         U45(X1, mark X2) -> U45(X1, X2),
                       U45(X1, active X2) -> U45(X1, X2),
                         U45(mark X1, X2) -> U45(X1, X2),
                       U45(active X1, X2) -> U45(X1, X2),
                               U46 mark X -> U46 X,
                             U46 active X -> U46 X,
                               U52 mark X -> U52 X,
                             U52 active X -> U52 X,
                         U51(X1, mark X2) -> U51(X1, X2),
                       U51(X1, active X2) -> U51(X1, X2),
                         U51(mark X1, X2) -> U51(X1, X2),
                       U51(active X1, X2) -> U51(X1, X2),
                               U62 mark X -> U62 X,
                             U62 active X -> U62 X,
                         U61(X1, mark X2) -> U61(X1, X2),
                       U61(X1, active X2) -> U61(X1, X2),
                         U61(mark X1, X2) -> U61(X1, X2),
                       U61(active X1, X2) -> U61(X1, X2),
                               U71 mark X -> U71 X,
                             U71 active X -> U71 X,
                               U81 mark X -> U81 X,
                             U81 active X -> U81 X,
                     U92(X1, X2, mark X3) -> U92(X1, X2, X3),
                   U92(X1, X2, active X3) -> U92(X1, X2, X3),
                     U92(X1, mark X2, X3) -> U92(X1, X2, X3),
                   U92(X1, active X2, X3) -> U92(X1, X2, X3),
                     U92(mark X1, X2, X3) -> U92(X1, X2, X3),
                   U92(active X1, X2, X3) -> U92(X1, X2, X3),
                     U91(X1, X2, mark X3) -> U91(X1, X2, X3),
                   U91(X1, X2, active X3) -> U91(X1, X2, X3),
                     U91(X1, mark X2, X3) -> U91(X1, X2, X3),
                   U91(X1, active X2, X3) -> U91(X1, X2, X3),
                     U91(mark X1, X2, X3) -> U91(X1, X2, X3),
                   U91(active X1, X2, X3) -> U91(X1, X2, X3),
                     U93(X1, X2, mark X3) -> U93(X1, X2, X3),
                   U93(X1, X2, active X3) -> U93(X1, X2, X3),
                     U93(X1, mark X2, X3) -> U93(X1, X2, X3),
                   U93(X1, active X2, X3) -> U93(X1, X2, X3),
                     U93(mark X1, X2, X3) -> U93(X1, X2, X3),
                   U93(active X1, X2, X3) -> U93(X1, X2, X3),
                     U94(X1, X2, mark X3) -> U94(X1, X2, X3),
                   U94(X1, X2, active X3) -> U94(X1, X2, X3),
                     U94(X1, mark X2, X3) -> U94(X1, X2, X3),
                   U94(X1, active X2, X3) -> U94(X1, X2, X3),
                     U94(mark X1, X2, X3) -> U94(X1, X2, X3),
                   U94(active X1, X2, X3) -> U94(X1, X2, X3),
                         U95(X1, mark X2) -> U95(X1, X2),
                       U95(X1, active X2) -> U95(X1, X2),
                         U95(mark X1, X2) -> U95(X1, X2),
                       U95(active X1, X2) -> U95(X1, X2),
                               U96 mark X -> U96 X,
                             U96 active X -> U96 X
      }
      Open
     
     SCC (8):
      Strict:
       {  U136#(X1, X2, X3, mark X4) -> U136#(X1, X2, X3, X4),
        U136#(X1, X2, X3, active X4) -> U136#(X1, X2, X3, X4),
          U136#(X1, X2, mark X3, X4) -> U136#(X1, X2, X3, X4),
        U136#(X1, X2, active X3, X4) -> U136#(X1, X2, X3, X4),
          U136#(X1, mark X2, X3, X4) -> U136#(X1, X2, X3, X4),
        U136#(X1, active X2, X3, X4) -> U136#(X1, X2, X3, X4),
          U136#(mark X1, X2, X3, X4) -> U136#(X1, X2, X3, X4),
        U136#(active X1, X2, X3, X4) -> U136#(X1, X2, X3, X4)}
      Weak:
      {
                        mark cons(X1, X2) -> active cons(mark X1, X2),
                                 mark 0() -> active 0(),
                             mark zeros() -> active zeros(),
                    mark U102(X1, X2, X3) -> active U102(mark X1, X2, X3),
                         mark isNatKind X -> active isNatKind X,
                    mark U101(X1, X2, X3) -> active U101(mark X1, X2, X3),
                                mark tt() -> active tt(),
                    mark U103(X1, X2, X3) -> active U103(mark X1, X2, X3),
                    mark isNatIListKind X -> active isNatIListKind X,
                    mark U104(X1, X2, X3) -> active U104(mark X1, X2, X3),
                        mark U105(X1, X2) -> active U105(mark X1, X2),
                             mark isNat X -> active isNat X,
                              mark U106 X -> active U106 mark X,
                        mark isNatIList X -> active isNatIList X,
                         mark U12(X1, X2) -> active U12(mark X1, X2),
                         mark U11(X1, X2) -> active U11(mark X1, X2),
                    mark U112(X1, X2, X3) -> active U112(mark X1, X2, X3),
                    mark U111(X1, X2, X3) -> active U111(mark X1, X2, X3),
                    mark U113(X1, X2, X3) -> active U113(mark X1, X2, X3),
                        mark U114(X1, X2) -> active U114(mark X1, X2),
                                 mark s X -> active s mark X,
                            mark length X -> active length mark X,
                               mark U13 X -> active U13 mark X,
                         mark isNatList X -> active isNatList X,
                              mark U122 X -> active U122 mark X,
                        mark U121(X1, X2) -> active U121(mark X1, X2),
                               mark nil() -> active nil(),
                mark U132(X1, X2, X3, X4) -> active U132(mark X1, X2, X3, X4),
                mark U131(X1, X2, X3, X4) -> active U131(mark X1, X2, X3, X4),
                mark U133(X1, X2, X3, X4) -> active U133(mark X1, X2, X3, X4),
                mark U134(X1, X2, X3, X4) -> active U134(mark X1, X2, X3, X4),
                mark U135(X1, X2, X3, X4) -> active U135(mark X1, X2, X3, X4),
                mark U136(X1, X2, X3, X4) -> active U136(mark X1, X2, X3, X4),
                        mark take(X1, X2) -> active take(mark X1, mark X2),
                         mark U22(X1, X2) -> active U22(mark X1, X2),
                         mark U21(X1, X2) -> active U21(mark X1, X2),
                               mark U23 X -> active U23 mark X,
                         mark U32(X1, X2) -> active U32(mark X1, X2),
                         mark U31(X1, X2) -> active U31(mark X1, X2),
                               mark U33 X -> active U33 mark X,
                     mark U42(X1, X2, X3) -> active U42(mark X1, X2, X3),
                     mark U41(X1, X2, X3) -> active U41(mark X1, X2, X3),
                     mark U43(X1, X2, X3) -> active U43(mark X1, X2, X3),
                     mark U44(X1, X2, X3) -> active U44(mark X1, X2, X3),
                         mark U45(X1, X2) -> active U45(mark X1, X2),
                               mark U46 X -> active U46 mark X,
                               mark U52 X -> active U52 mark X,
                         mark U51(X1, X2) -> active U51(mark X1, X2),
                               mark U62 X -> active U62 mark X,
                         mark U61(X1, X2) -> active U61(mark X1, X2),
                               mark U71 X -> active U71 mark X,
                               mark U81 X -> active U81 mark X,
                     mark U92(X1, X2, X3) -> active U92(mark X1, X2, X3),
                     mark U91(X1, X2, X3) -> active U91(mark X1, X2, X3),
                     mark U93(X1, X2, X3) -> active U93(mark X1, X2, X3),
                     mark U94(X1, X2, X3) -> active U94(mark X1, X2, X3),
                         mark U95(X1, X2) -> active U95(mark X1, X2),
                               mark U96 X -> active U96 mark X,
                        cons(X1, mark X2) -> cons(X1, X2),
                      cons(X1, active X2) -> cons(X1, X2),
                        cons(mark X1, X2) -> cons(X1, X2),
                      cons(active X1, X2) -> cons(X1, X2),
                           active zeros() -> mark cons(0(), zeros()),
                active U102(tt(), V1, V2) -> mark U103(isNatIListKind V2, V1, V2),
                     active isNatKind 0() -> mark tt(),
                    active isNatKind s V1 -> mark U81 isNatKind V1,
               active isNatKind length V1 -> mark U71 isNatIListKind V1,
                active U101(tt(), V1, V2) -> mark U102(isNatKind V1, V1, V2),
                active U103(tt(), V1, V2) -> mark U104(isNatIListKind V2, V1, V2),
       active isNatIListKind cons(V1, V2) -> mark U51(isNatKind V1, V2),
            active isNatIListKind zeros() -> mark tt(),
              active isNatIListKind nil() -> mark tt(),
       active isNatIListKind take(V1, V2) -> mark U61(isNatKind V1, V2),
                active U104(tt(), V1, V2) -> mark U105(isNat V1, V2),
                    active U105(tt(), V2) -> mark U106 isNatIList V2,
                         active isNat 0() -> mark tt(),
                        active isNat s V1 -> mark U21(isNatKind V1, V1),
                   active isNat length V1 -> mark U11(isNatIListKind V1, V1),
                         active U106 tt() -> mark tt(),
                      active isNatIList V -> mark U31(isNatIListKind V, V),
           active isNatIList cons(V1, V2) -> mark U41(isNatKind V1, V1, V2),
                active isNatIList zeros() -> mark tt(),
                     active U12(tt(), V1) -> mark U13 isNatList V1,
                     active U11(tt(), V1) -> mark U12(isNatIListKind V1, V1),
                  active U112(tt(), L, N) -> mark U113(isNat N, L, N),
                  active U111(tt(), L, N) -> mark U112(isNatIListKind L, L, N),
                  active U113(tt(), L, N) -> mark U114(isNatKind N, L),
                     active U114(tt(), L) -> mark s length L,
                 active length cons(N, L) -> mark U111(isNatList L, L, N),
                      active length nil() -> mark 0(),
                          active U13 tt() -> mark tt(),
            active isNatList cons(V1, V2) -> mark U91(isNatKind V1, V1, V2),
                   active isNatList nil() -> mark tt(),
            active isNatList take(V1, V2) -> mark U101(isNatKind V1, V1, V2),
                         active U122 tt() -> mark nil(),
                    active U121(tt(), IL) -> mark U122 isNatIListKind IL,
              active U132(tt(), IL, M, N) -> mark U133(isNat M, IL, M, N),
              active U131(tt(), IL, M, N) -> mark U132(isNatIListKind IL, IL, M, N),
              active U133(tt(), IL, M, N) -> mark U134(isNatKind M, IL, M, N),
              active U134(tt(), IL, M, N) -> mark U135(isNat N, IL, M, N),
              active U135(tt(), IL, M, N) -> mark U136(isNatKind N, IL, M, N),
              active U136(tt(), IL, M, N) -> mark cons(N, take(M, IL)),
                     active take(0(), IL) -> mark U121(isNatIList IL, IL),
            active take(s M, cons(N, IL)) -> mark U131(isNatIList IL, IL, M, N),
                     active U22(tt(), V1) -> mark U23 isNat V1,
                     active U21(tt(), V1) -> mark U22(isNatKind V1, V1),
                          active U23 tt() -> mark tt(),
                      active U32(tt(), V) -> mark U33 isNatList V,
                      active U31(tt(), V) -> mark U32(isNatIListKind V, V),
                          active U33 tt() -> mark tt(),
                 active U42(tt(), V1, V2) -> mark U43(isNatIListKind V2, V1, V2),
                 active U41(tt(), V1, V2) -> mark U42(isNatKind V1, V1, V2),
                 active U43(tt(), V1, V2) -> mark U44(isNatIListKind V2, V1, V2),
                 active U44(tt(), V1, V2) -> mark U45(isNat V1, V2),
                     active U45(tt(), V2) -> mark U46 isNatIList V2,
                          active U46 tt() -> mark tt(),
                          active U52 tt() -> mark tt(),
                     active U51(tt(), V2) -> mark U52 isNatIListKind V2,
                          active U62 tt() -> mark tt(),
                     active U61(tt(), V2) -> mark U62 isNatIListKind V2,
                          active U71 tt() -> mark tt(),
                          active U81 tt() -> mark tt(),
                 active U92(tt(), V1, V2) -> mark U93(isNatIListKind V2, V1, V2),
                 active U91(tt(), V1, V2) -> mark U92(isNatKind V1, V1, V2),
                 active U93(tt(), V1, V2) -> mark U94(isNatIListKind V2, V1, V2),
                 active U94(tt(), V1, V2) -> mark U95(isNat V1, V2),
                     active U95(tt(), V2) -> mark U96 isNatList V2,
                          active U96 tt() -> mark tt(),
                    U102(X1, X2, mark X3) -> U102(X1, X2, X3),
                  U102(X1, X2, active X3) -> U102(X1, X2, X3),
                    U102(X1, mark X2, X3) -> U102(X1, X2, X3),
                  U102(X1, active X2, X3) -> U102(X1, X2, X3),
                    U102(mark X1, X2, X3) -> U102(X1, X2, X3),
                  U102(active X1, X2, X3) -> U102(X1, X2, X3),
                         isNatKind mark X -> isNatKind X,
                       isNatKind active X -> isNatKind X,
                    U101(X1, X2, mark X3) -> U101(X1, X2, X3),
                  U101(X1, X2, active X3) -> U101(X1, X2, X3),
                    U101(X1, mark X2, X3) -> U101(X1, X2, X3),
                  U101(X1, active X2, X3) -> U101(X1, X2, X3),
                    U101(mark X1, X2, X3) -> U101(X1, X2, X3),
                  U101(active X1, X2, X3) -> U101(X1, X2, X3),
                    U103(X1, X2, mark X3) -> U103(X1, X2, X3),
                  U103(X1, X2, active X3) -> U103(X1, X2, X3),
                    U103(X1, mark X2, X3) -> U103(X1, X2, X3),
                  U103(X1, active X2, X3) -> U103(X1, X2, X3),
                    U103(mark X1, X2, X3) -> U103(X1, X2, X3),
                  U103(active X1, X2, X3) -> U103(X1, X2, X3),
                    isNatIListKind mark X -> isNatIListKind X,
                  isNatIListKind active X -> isNatIListKind X,
                    U104(X1, X2, mark X3) -> U104(X1, X2, X3),
                  U104(X1, X2, active X3) -> U104(X1, X2, X3),
                    U104(X1, mark X2, X3) -> U104(X1, X2, X3),
                  U104(X1, active X2, X3) -> U104(X1, X2, X3),
                    U104(mark X1, X2, X3) -> U104(X1, X2, X3),
                  U104(active X1, X2, X3) -> U104(X1, X2, X3),
                        U105(X1, mark X2) -> U105(X1, X2),
                      U105(X1, active X2) -> U105(X1, X2),
                        U105(mark X1, X2) -> U105(X1, X2),
                      U105(active X1, X2) -> U105(X1, X2),
                             isNat mark X -> isNat X,
                           isNat active X -> isNat X,
                              U106 mark X -> U106 X,
                            U106 active X -> U106 X,
                        isNatIList mark X -> isNatIList X,
                      isNatIList active X -> isNatIList X,
                         U12(X1, mark X2) -> U12(X1, X2),
                       U12(X1, active X2) -> U12(X1, X2),
                         U12(mark X1, X2) -> U12(X1, X2),
                       U12(active X1, X2) -> U12(X1, X2),
                         U11(X1, mark X2) -> U11(X1, X2),
                       U11(X1, active X2) -> U11(X1, X2),
                         U11(mark X1, X2) -> U11(X1, X2),
                       U11(active X1, X2) -> U11(X1, X2),
                    U112(X1, X2, mark X3) -> U112(X1, X2, X3),
                  U112(X1, X2, active X3) -> U112(X1, X2, X3),
                    U112(X1, mark X2, X3) -> U112(X1, X2, X3),
                  U112(X1, active X2, X3) -> U112(X1, X2, X3),
                    U112(mark X1, X2, X3) -> U112(X1, X2, X3),
                  U112(active X1, X2, X3) -> U112(X1, X2, X3),
                    U111(X1, X2, mark X3) -> U111(X1, X2, X3),
                  U111(X1, X2, active X3) -> U111(X1, X2, X3),
                    U111(X1, mark X2, X3) -> U111(X1, X2, X3),
                  U111(X1, active X2, X3) -> U111(X1, X2, X3),
                    U111(mark X1, X2, X3) -> U111(X1, X2, X3),
                  U111(active X1, X2, X3) -> U111(X1, X2, X3),
                    U113(X1, X2, mark X3) -> U113(X1, X2, X3),
                  U113(X1, X2, active X3) -> U113(X1, X2, X3),
                    U113(X1, mark X2, X3) -> U113(X1, X2, X3),
                  U113(X1, active X2, X3) -> U113(X1, X2, X3),
                    U113(mark X1, X2, X3) -> U113(X1, X2, X3),
                  U113(active X1, X2, X3) -> U113(X1, X2, X3),
                        U114(X1, mark X2) -> U114(X1, X2),
                      U114(X1, active X2) -> U114(X1, X2),
                        U114(mark X1, X2) -> U114(X1, X2),
                      U114(active X1, X2) -> U114(X1, X2),
                                 s mark X -> s X,
                               s active X -> s X,
                            length mark X -> length X,
                          length active X -> length X,
                               U13 mark X -> U13 X,
                             U13 active X -> U13 X,
                         isNatList mark X -> isNatList X,
                       isNatList active X -> isNatList X,
                              U122 mark X -> U122 X,
                            U122 active X -> U122 X,
                        U121(X1, mark X2) -> U121(X1, X2),
                      U121(X1, active X2) -> U121(X1, X2),
                        U121(mark X1, X2) -> U121(X1, X2),
                      U121(active X1, X2) -> U121(X1, X2),
                U132(X1, X2, X3, mark X4) -> U132(X1, X2, X3, X4),
              U132(X1, X2, X3, active X4) -> U132(X1, X2, X3, X4),
                U132(X1, X2, mark X3, X4) -> U132(X1, X2, X3, X4),
              U132(X1, X2, active X3, X4) -> U132(X1, X2, X3, X4),
                U132(X1, mark X2, X3, X4) -> U132(X1, X2, X3, X4),
              U132(X1, active X2, X3, X4) -> U132(X1, X2, X3, X4),
                U132(mark X1, X2, X3, X4) -> U132(X1, X2, X3, X4),
              U132(active X1, X2, X3, X4) -> U132(X1, X2, X3, X4),
                U131(X1, X2, X3, mark X4) -> U131(X1, X2, X3, X4),
              U131(X1, X2, X3, active X4) -> U131(X1, X2, X3, X4),
                U131(X1, X2, mark X3, X4) -> U131(X1, X2, X3, X4),
              U131(X1, X2, active X3, X4) -> U131(X1, X2, X3, X4),
                U131(X1, mark X2, X3, X4) -> U131(X1, X2, X3, X4),
              U131(X1, active X2, X3, X4) -> U131(X1, X2, X3, X4),
                U131(mark X1, X2, X3, X4) -> U131(X1, X2, X3, X4),
              U131(active X1, X2, X3, X4) -> U131(X1, X2, X3, X4),
                U133(X1, X2, X3, mark X4) -> U133(X1, X2, X3, X4),
              U133(X1, X2, X3, active X4) -> U133(X1, X2, X3, X4),
                U133(X1, X2, mark X3, X4) -> U133(X1, X2, X3, X4),
              U133(X1, X2, active X3, X4) -> U133(X1, X2, X3, X4),
                U133(X1, mark X2, X3, X4) -> U133(X1, X2, X3, X4),
              U133(X1, active X2, X3, X4) -> U133(X1, X2, X3, X4),
                U133(mark X1, X2, X3, X4) -> U133(X1, X2, X3, X4),
              U133(active X1, X2, X3, X4) -> U133(X1, X2, X3, X4),
                U134(X1, X2, X3, mark X4) -> U134(X1, X2, X3, X4),
              U134(X1, X2, X3, active X4) -> U134(X1, X2, X3, X4),
                U134(X1, X2, mark X3, X4) -> U134(X1, X2, X3, X4),
              U134(X1, X2, active X3, X4) -> U134(X1, X2, X3, X4),
                U134(X1, mark X2, X3, X4) -> U134(X1, X2, X3, X4),
              U134(X1, active X2, X3, X4) -> U134(X1, X2, X3, X4),
                U134(mark X1, X2, X3, X4) -> U134(X1, X2, X3, X4),
              U134(active X1, X2, X3, X4) -> U134(X1, X2, X3, X4),
                U135(X1, X2, X3, mark X4) -> U135(X1, X2, X3, X4),
              U135(X1, X2, X3, active X4) -> U135(X1, X2, X3, X4),
                U135(X1, X2, mark X3, X4) -> U135(X1, X2, X3, X4),
              U135(X1, X2, active X3, X4) -> U135(X1, X2, X3, X4),
                U135(X1, mark X2, X3, X4) -> U135(X1, X2, X3, X4),
              U135(X1, active X2, X3, X4) -> U135(X1, X2, X3, X4),
                U135(mark X1, X2, X3, X4) -> U135(X1, X2, X3, X4),
              U135(active X1, X2, X3, X4) -> U135(X1, X2, X3, X4),
                U136(X1, X2, X3, mark X4) -> U136(X1, X2, X3, X4),
              U136(X1, X2, X3, active X4) -> U136(X1, X2, X3, X4),
                U136(X1, X2, mark X3, X4) -> U136(X1, X2, X3, X4),
              U136(X1, X2, active X3, X4) -> U136(X1, X2, X3, X4),
                U136(X1, mark X2, X3, X4) -> U136(X1, X2, X3, X4),
              U136(X1, active X2, X3, X4) -> U136(X1, X2, X3, X4),
                U136(mark X1, X2, X3, X4) -> U136(X1, X2, X3, X4),
              U136(active X1, X2, X3, X4) -> U136(X1, X2, X3, X4),
                        take(X1, mark X2) -> take(X1, X2),
                      take(X1, active X2) -> take(X1, X2),
                        take(mark X1, X2) -> take(X1, X2),
                      take(active X1, X2) -> take(X1, X2),
                         U22(X1, mark X2) -> U22(X1, X2),
                       U22(X1, active X2) -> U22(X1, X2),
                         U22(mark X1, X2) -> U22(X1, X2),
                       U22(active X1, X2) -> U22(X1, X2),
                         U21(X1, mark X2) -> U21(X1, X2),
                       U21(X1, active X2) -> U21(X1, X2),
                         U21(mark X1, X2) -> U21(X1, X2),
                       U21(active X1, X2) -> U21(X1, X2),
                               U23 mark X -> U23 X,
                             U23 active X -> U23 X,
                         U32(X1, mark X2) -> U32(X1, X2),
                       U32(X1, active X2) -> U32(X1, X2),
                         U32(mark X1, X2) -> U32(X1, X2),
                       U32(active X1, X2) -> U32(X1, X2),
                         U31(X1, mark X2) -> U31(X1, X2),
                       U31(X1, active X2) -> U31(X1, X2),
                         U31(mark X1, X2) -> U31(X1, X2),
                       U31(active X1, X2) -> U31(X1, X2),
                               U33 mark X -> U33 X,
                             U33 active X -> U33 X,
                     U42(X1, X2, mark X3) -> U42(X1, X2, X3),
                   U42(X1, X2, active X3) -> U42(X1, X2, X3),
                     U42(X1, mark X2, X3) -> U42(X1, X2, X3),
                   U42(X1, active X2, X3) -> U42(X1, X2, X3),
                     U42(mark X1, X2, X3) -> U42(X1, X2, X3),
                   U42(active X1, X2, X3) -> U42(X1, X2, X3),
                     U41(X1, X2, mark X3) -> U41(X1, X2, X3),
                   U41(X1, X2, active X3) -> U41(X1, X2, X3),
                     U41(X1, mark X2, X3) -> U41(X1, X2, X3),
                   U41(X1, active X2, X3) -> U41(X1, X2, X3),
                     U41(mark X1, X2, X3) -> U41(X1, X2, X3),
                   U41(active X1, X2, X3) -> U41(X1, X2, X3),
                     U43(X1, X2, mark X3) -> U43(X1, X2, X3),
                   U43(X1, X2, active X3) -> U43(X1, X2, X3),
                     U43(X1, mark X2, X3) -> U43(X1, X2, X3),
                   U43(X1, active X2, X3) -> U43(X1, X2, X3),
                     U43(mark X1, X2, X3) -> U43(X1, X2, X3),
                   U43(active X1, X2, X3) -> U43(X1, X2, X3),
                     U44(X1, X2, mark X3) -> U44(X1, X2, X3),
                   U44(X1, X2, active X3) -> U44(X1, X2, X3),
                     U44(X1, mark X2, X3) -> U44(X1, X2, X3),
                   U44(X1, active X2, X3) -> U44(X1, X2, X3),
                     U44(mark X1, X2, X3) -> U44(X1, X2, X3),
                   U44(active X1, X2, X3) -> U44(X1, X2, X3),
                         U45(X1, mark X2) -> U45(X1, X2),
                       U45(X1, active X2) -> U45(X1, X2),
                         U45(mark X1, X2) -> U45(X1, X2),
                       U45(active X1, X2) -> U45(X1, X2),
                               U46 mark X -> U46 X,
                             U46 active X -> U46 X,
                               U52 mark X -> U52 X,
                             U52 active X -> U52 X,
                         U51(X1, mark X2) -> U51(X1, X2),
                       U51(X1, active X2) -> U51(X1, X2),
                         U51(mark X1, X2) -> U51(X1, X2),
                       U51(active X1, X2) -> U51(X1, X2),
                               U62 mark X -> U62 X,
                             U62 active X -> U62 X,
                         U61(X1, mark X2) -> U61(X1, X2),
                       U61(X1, active X2) -> U61(X1, X2),
                         U61(mark X1, X2) -> U61(X1, X2),
                       U61(active X1, X2) -> U61(X1, X2),
                               U71 mark X -> U71 X,
                             U71 active X -> U71 X,
                               U81 mark X -> U81 X,
                             U81 active X -> U81 X,
                     U92(X1, X2, mark X3) -> U92(X1, X2, X3),
                   U92(X1, X2, active X3) -> U92(X1, X2, X3),
                     U92(X1, mark X2, X3) -> U92(X1, X2, X3),
                   U92(X1, active X2, X3) -> U92(X1, X2, X3),
                     U92(mark X1, X2, X3) -> U92(X1, X2, X3),
                   U92(active X1, X2, X3) -> U92(X1, X2, X3),
                     U91(X1, X2, mark X3) -> U91(X1, X2, X3),
                   U91(X1, X2, active X3) -> U91(X1, X2, X3),
                     U91(X1, mark X2, X3) -> U91(X1, X2, X3),
                   U91(X1, active X2, X3) -> U91(X1, X2, X3),
                     U91(mark X1, X2, X3) -> U91(X1, X2, X3),
                   U91(active X1, X2, X3) -> U91(X1, X2, X3),
                     U93(X1, X2, mark X3) -> U93(X1, X2, X3),
                   U93(X1, X2, active X3) -> U93(X1, X2, X3),
                     U93(X1, mark X2, X3) -> U93(X1, X2, X3),
                   U93(X1, active X2, X3) -> U93(X1, X2, X3),
                     U93(mark X1, X2, X3) -> U93(X1, X2, X3),
                   U93(active X1, X2, X3) -> U93(X1, X2, X3),
                     U94(X1, X2, mark X3) -> U94(X1, X2, X3),
                   U94(X1, X2, active X3) -> U94(X1, X2, X3),
                     U94(X1, mark X2, X3) -> U94(X1, X2, X3),
                   U94(X1, active X2, X3) -> U94(X1, X2, X3),
                     U94(mark X1, X2, X3) -> U94(X1, X2, X3),
                   U94(active X1, X2, X3) -> U94(X1, X2, X3),
                         U95(X1, mark X2) -> U95(X1, X2),
                       U95(X1, active X2) -> U95(X1, X2),
                         U95(mark X1, X2) -> U95(X1, X2),
                       U95(active X1, X2) -> U95(X1, X2),
                               U96 mark X -> U96 X,
                             U96 active X -> U96 X
      }
      Open
     
     
     SCC (8):
      Strict:
       {  U135#(X1, X2, X3, mark X4) -> U135#(X1, X2, X3, X4),
        U135#(X1, X2, X3, active X4) -> U135#(X1, X2, X3, X4),
          U135#(X1, X2, mark X3, X4) -> U135#(X1, X2, X3, X4),
        U135#(X1, X2, active X3, X4) -> U135#(X1, X2, X3, X4),
          U135#(X1, mark X2, X3, X4) -> U135#(X1, X2, X3, X4),
        U135#(X1, active X2, X3, X4) -> U135#(X1, X2, X3, X4),
          U135#(mark X1, X2, X3, X4) -> U135#(X1, X2, X3, X4),
        U135#(active X1, X2, X3, X4) -> U135#(X1, X2, X3, X4)}
      Weak:
      {
                        mark cons(X1, X2) -> active cons(mark X1, X2),
                                 mark 0() -> active 0(),
                             mark zeros() -> active zeros(),
                    mark U102(X1, X2, X3) -> active U102(mark X1, X2, X3),
                         mark isNatKind X -> active isNatKind X,
                    mark U101(X1, X2, X3) -> active U101(mark X1, X2, X3),
                                mark tt() -> active tt(),
                    mark U103(X1, X2, X3) -> active U103(mark X1, X2, X3),
                    mark isNatIListKind X -> active isNatIListKind X,
                    mark U104(X1, X2, X3) -> active U104(mark X1, X2, X3),
                        mark U105(X1, X2) -> active U105(mark X1, X2),
                             mark isNat X -> active isNat X,
                              mark U106 X -> active U106 mark X,
                        mark isNatIList X -> active isNatIList X,
                         mark U12(X1, X2) -> active U12(mark X1, X2),
                         mark U11(X1, X2) -> active U11(mark X1, X2),
                    mark U112(X1, X2, X3) -> active U112(mark X1, X2, X3),
                    mark U111(X1, X2, X3) -> active U111(mark X1, X2, X3),
                    mark U113(X1, X2, X3) -> active U113(mark X1, X2, X3),
                        mark U114(X1, X2) -> active U114(mark X1, X2),
                                 mark s X -> active s mark X,
                            mark length X -> active length mark X,
                               mark U13 X -> active U13 mark X,
                         mark isNatList X -> active isNatList X,
                              mark U122 X -> active U122 mark X,
                        mark U121(X1, X2) -> active U121(mark X1, X2),
                               mark nil() -> active nil(),
                mark U132(X1, X2, X3, X4) -> active U132(mark X1, X2, X3, X4),
                mark U131(X1, X2, X3, X4) -> active U131(mark X1, X2, X3, X4),
                mark U133(X1, X2, X3, X4) -> active U133(mark X1, X2, X3, X4),
                mark U134(X1, X2, X3, X4) -> active U134(mark X1, X2, X3, X4),
                mark U135(X1, X2, X3, X4) -> active U135(mark X1, X2, X3, X4),
                mark U136(X1, X2, X3, X4) -> active U136(mark X1, X2, X3, X4),
                        mark take(X1, X2) -> active take(mark X1, mark X2),
                         mark U22(X1, X2) -> active U22(mark X1, X2),
                         mark U21(X1, X2) -> active U21(mark X1, X2),
                               mark U23 X -> active U23 mark X,
                         mark U32(X1, X2) -> active U32(mark X1, X2),
                         mark U31(X1, X2) -> active U31(mark X1, X2),
                               mark U33 X -> active U33 mark X,
                     mark U42(X1, X2, X3) -> active U42(mark X1, X2, X3),
                     mark U41(X1, X2, X3) -> active U41(mark X1, X2, X3),
                     mark U43(X1, X2, X3) -> active U43(mark X1, X2, X3),
                     mark U44(X1, X2, X3) -> active U44(mark X1, X2, X3),
                         mark U45(X1, X2) -> active U45(mark X1, X2),
                               mark U46 X -> active U46 mark X,
                               mark U52 X -> active U52 mark X,
                         mark U51(X1, X2) -> active U51(mark X1, X2),
                               mark U62 X -> active U62 mark X,
                         mark U61(X1, X2) -> active U61(mark X1, X2),
                               mark U71 X -> active U71 mark X,
                               mark U81 X -> active U81 mark X,
                     mark U92(X1, X2, X3) -> active U92(mark X1, X2, X3),
                     mark U91(X1, X2, X3) -> active U91(mark X1, X2, X3),
                     mark U93(X1, X2, X3) -> active U93(mark X1, X2, X3),
                     mark U94(X1, X2, X3) -> active U94(mark X1, X2, X3),
                         mark U95(X1, X2) -> active U95(mark X1, X2),
                               mark U96 X -> active U96 mark X,
                        cons(X1, mark X2) -> cons(X1, X2),
                      cons(X1, active X2) -> cons(X1, X2),
                        cons(mark X1, X2) -> cons(X1, X2),
                      cons(active X1, X2) -> cons(X1, X2),
                           active zeros() -> mark cons(0(), zeros()),
                active U102(tt(), V1, V2) -> mark U103(isNatIListKind V2, V1, V2),
                     active isNatKind 0() -> mark tt(),
                    active isNatKind s V1 -> mark U81 isNatKind V1,
               active isNatKind length V1 -> mark U71 isNatIListKind V1,
                active U101(tt(), V1, V2) -> mark U102(isNatKind V1, V1, V2),
                active U103(tt(), V1, V2) -> mark U104(isNatIListKind V2, V1, V2),
       active isNatIListKind cons(V1, V2) -> mark U51(isNatKind V1, V2),
            active isNatIListKind zeros() -> mark tt(),
              active isNatIListKind nil() -> mark tt(),
       active isNatIListKind take(V1, V2) -> mark U61(isNatKind V1, V2),
                active U104(tt(), V1, V2) -> mark U105(isNat V1, V2),
                    active U105(tt(), V2) -> mark U106 isNatIList V2,
                         active isNat 0() -> mark tt(),
                        active isNat s V1 -> mark U21(isNatKind V1, V1),
                   active isNat length V1 -> mark U11(isNatIListKind V1, V1),
                         active U106 tt() -> mark tt(),
                      active isNatIList V -> mark U31(isNatIListKind V, V),
           active isNatIList cons(V1, V2) -> mark U41(isNatKind V1, V1, V2),
                active isNatIList zeros() -> mark tt(),
                     active U12(tt(), V1) -> mark U13 isNatList V1,
                     active U11(tt(), V1) -> mark U12(isNatIListKind V1, V1),
                  active U112(tt(), L, N) -> mark U113(isNat N, L, N),
                  active U111(tt(), L, N) -> mark U112(isNatIListKind L, L, N),
                  active U113(tt(), L, N) -> mark U114(isNatKind N, L),
                     active U114(tt(), L) -> mark s length L,
                 active length cons(N, L) -> mark U111(isNatList L, L, N),
                      active length nil() -> mark 0(),
                          active U13 tt() -> mark tt(),
            active isNatList cons(V1, V2) -> mark U91(isNatKind V1, V1, V2),
                   active isNatList nil() -> mark tt(),
            active isNatList take(V1, V2) -> mark U101(isNatKind V1, V1, V2),
                         active U122 tt() -> mark nil(),
                    active U121(tt(), IL) -> mark U122 isNatIListKind IL,
              active U132(tt(), IL, M, N) -> mark U133(isNat M, IL, M, N),
              active U131(tt(), IL, M, N) -> mark U132(isNatIListKind IL, IL, M, N),
              active U133(tt(), IL, M, N) -> mark U134(isNatKind M, IL, M, N),
              active U134(tt(), IL, M, N) -> mark U135(isNat N, IL, M, N),
              active U135(tt(), IL, M, N) -> mark U136(isNatKind N, IL, M, N),
              active U136(tt(), IL, M, N) -> mark cons(N, take(M, IL)),
                     active take(0(), IL) -> mark U121(isNatIList IL, IL),
            active take(s M, cons(N, IL)) -> mark U131(isNatIList IL, IL, M, N),
                     active U22(tt(), V1) -> mark U23 isNat V1,
                     active U21(tt(), V1) -> mark U22(isNatKind V1, V1),
                          active U23 tt() -> mark tt(),
                      active U32(tt(), V) -> mark U33 isNatList V,
                      active U31(tt(), V) -> mark U32(isNatIListKind V, V),
                          active U33 tt() -> mark tt(),
                 active U42(tt(), V1, V2) -> mark U43(isNatIListKind V2, V1, V2),
                 active U41(tt(), V1, V2) -> mark U42(isNatKind V1, V1, V2),
                 active U43(tt(), V1, V2) -> mark U44(isNatIListKind V2, V1, V2),
                 active U44(tt(), V1, V2) -> mark U45(isNat V1, V2),
                     active U45(tt(), V2) -> mark U46 isNatIList V2,
                          active U46 tt() -> mark tt(),
                          active U52 tt() -> mark tt(),
                     active U51(tt(), V2) -> mark U52 isNatIListKind V2,
                          active U62 tt() -> mark tt(),
                     active U61(tt(), V2) -> mark U62 isNatIListKind V2,
                          active U71 tt() -> mark tt(),
                          active U81 tt() -> mark tt(),
                 active U92(tt(), V1, V2) -> mark U93(isNatIListKind V2, V1, V2),
                 active U91(tt(), V1, V2) -> mark U92(isNatKind V1, V1, V2),
                 active U93(tt(), V1, V2) -> mark U94(isNatIListKind V2, V1, V2),
                 active U94(tt(), V1, V2) -> mark U95(isNat V1, V2),
                     active U95(tt(), V2) -> mark U96 isNatList V2,
                          active U96 tt() -> mark tt(),
                    U102(X1, X2, mark X3) -> U102(X1, X2, X3),
                  U102(X1, X2, active X3) -> U102(X1, X2, X3),
                    U102(X1, mark X2, X3) -> U102(X1, X2, X3),
                  U102(X1, active X2, X3) -> U102(X1, X2, X3),
                    U102(mark X1, X2, X3) -> U102(X1, X2, X3),
                  U102(active X1, X2, X3) -> U102(X1, X2, X3),
                         isNatKind mark X -> isNatKind X,
                       isNatKind active X -> isNatKind X,
                    U101(X1, X2, mark X3) -> U101(X1, X2, X3),
                  U101(X1, X2, active X3) -> U101(X1, X2, X3),
                    U101(X1, mark X2, X3) -> U101(X1, X2, X3),
                  U101(X1, active X2, X3) -> U101(X1, X2, X3),
                    U101(mark X1, X2, X3) -> U101(X1, X2, X3),
                  U101(active X1, X2, X3) -> U101(X1, X2, X3),
                    U103(X1, X2, mark X3) -> U103(X1, X2, X3),
                  U103(X1, X2, active X3) -> U103(X1, X2, X3),
                    U103(X1, mark X2, X3) -> U103(X1, X2, X3),
                  U103(X1, active X2, X3) -> U103(X1, X2, X3),
                    U103(mark X1, X2, X3) -> U103(X1, X2, X3),
                  U103(active X1, X2, X3) -> U103(X1, X2, X3),
                    isNatIListKind mark X -> isNatIListKind X,
                  isNatIListKind active X -> isNatIListKind X,
                    U104(X1, X2, mark X3) -> U104(X1, X2, X3),
                  U104(X1, X2, active X3) -> U104(X1, X2, X3),
                    U104(X1, mark X2, X3) -> U104(X1, X2, X3),
                  U104(X1, active X2, X3) -> U104(X1, X2, X3),
                    U104(mark X1, X2, X3) -> U104(X1, X2, X3),
                  U104(active X1, X2, X3) -> U104(X1, X2, X3),
                        U105(X1, mark X2) -> U105(X1, X2),
                      U105(X1, active X2) -> U105(X1, X2),
                        U105(mark X1, X2) -> U105(X1, X2),
                      U105(active X1, X2) -> U105(X1, X2),
                             isNat mark X -> isNat X,
                           isNat active X -> isNat X,
                              U106 mark X -> U106 X,
                            U106 active X -> U106 X,
                        isNatIList mark X -> isNatIList X,
                      isNatIList active X -> isNatIList X,
                         U12(X1, mark X2) -> U12(X1, X2),
                       U12(X1, active X2) -> U12(X1, X2),
                         U12(mark X1, X2) -> U12(X1, X2),
                       U12(active X1, X2) -> U12(X1, X2),
                         U11(X1, mark X2) -> U11(X1, X2),
                       U11(X1, active X2) -> U11(X1, X2),
                         U11(mark X1, X2) -> U11(X1, X2),
                       U11(active X1, X2) -> U11(X1, X2),
                    U112(X1, X2, mark X3) -> U112(X1, X2, X3),
                  U112(X1, X2, active X3) -> U112(X1, X2, X3),
                    U112(X1, mark X2, X3) -> U112(X1, X2, X3),
                  U112(X1, active X2, X3) -> U112(X1, X2, X3),
                    U112(mark X1, X2, X3) -> U112(X1, X2, X3),
                  U112(active X1, X2, X3) -> U112(X1, X2, X3),
                    U111(X1, X2, mark X3) -> U111(X1, X2, X3),
                  U111(X1, X2, active X3) -> U111(X1, X2, X3),
                    U111(X1, mark X2, X3) -> U111(X1, X2, X3),
                  U111(X1, active X2, X3) -> U111(X1, X2, X3),
                    U111(mark X1, X2, X3) -> U111(X1, X2, X3),
                  U111(active X1, X2, X3) -> U111(X1, X2, X3),
                    U113(X1, X2, mark X3) -> U113(X1, X2, X3),
                  U113(X1, X2, active X3) -> U113(X1, X2, X3),
                    U113(X1, mark X2, X3) -> U113(X1, X2, X3),
                  U113(X1, active X2, X3) -> U113(X1, X2, X3),
                    U113(mark X1, X2, X3) -> U113(X1, X2, X3),
                  U113(active X1, X2, X3) -> U113(X1, X2, X3),
                        U114(X1, mark X2) -> U114(X1, X2),
                      U114(X1, active X2) -> U114(X1, X2),
                        U114(mark X1, X2) -> U114(X1, X2),
                      U114(active X1, X2) -> U114(X1, X2),
                                 s mark X -> s X,
                               s active X -> s X,
                            length mark X -> length X,
                          length active X -> length X,
                               U13 mark X -> U13 X,
                             U13 active X -> U13 X,
                         isNatList mark X -> isNatList X,
                       isNatList active X -> isNatList X,
                              U122 mark X -> U122 X,
                            U122 active X -> U122 X,
                        U121(X1, mark X2) -> U121(X1, X2),
                      U121(X1, active X2) -> U121(X1, X2),
                        U121(mark X1, X2) -> U121(X1, X2),
                      U121(active X1, X2) -> U121(X1, X2),
                U132(X1, X2, X3, mark X4) -> U132(X1, X2, X3, X4),
              U132(X1, X2, X3, active X4) -> U132(X1, X2, X3, X4),
                U132(X1, X2, mark X3, X4) -> U132(X1, X2, X3, X4),
              U132(X1, X2, active X3, X4) -> U132(X1, X2, X3, X4),
                U132(X1, mark X2, X3, X4) -> U132(X1, X2, X3, X4),
              U132(X1, active X2, X3, X4) -> U132(X1, X2, X3, X4),
                U132(mark X1, X2, X3, X4) -> U132(X1, X2, X3, X4),
              U132(active X1, X2, X3, X4) -> U132(X1, X2, X3, X4),
                U131(X1, X2, X3, mark X4) -> U131(X1, X2, X3, X4),
              U131(X1, X2, X3, active X4) -> U131(X1, X2, X3, X4),
                U131(X1, X2, mark X3, X4) -> U131(X1, X2, X3, X4),
              U131(X1, X2, active X3, X4) -> U131(X1, X2, X3, X4),
                U131(X1, mark X2, X3, X4) -> U131(X1, X2, X3, X4),
              U131(X1, active X2, X3, X4) -> U131(X1, X2, X3, X4),
                U131(mark X1, X2, X3, X4) -> U131(X1, X2, X3, X4),
              U131(active X1, X2, X3, X4) -> U131(X1, X2, X3, X4),
                U133(X1, X2, X3, mark X4) -> U133(X1, X2, X3, X4),
              U133(X1, X2, X3, active X4) -> U133(X1, X2, X3, X4),
                U133(X1, X2, mark X3, X4) -> U133(X1, X2, X3, X4),
              U133(X1, X2, active X3, X4) -> U133(X1, X2, X3, X4),
                U133(X1, mark X2, X3, X4) -> U133(X1, X2, X3, X4),
              U133(X1, active X2, X3, X4) -> U133(X1, X2, X3, X4),
                U133(mark X1, X2, X3, X4) -> U133(X1, X2, X3, X4),
              U133(active X1, X2, X3, X4) -> U133(X1, X2, X3, X4),
                U134(X1, X2, X3, mark X4) -> U134(X1, X2, X3, X4),
              U134(X1, X2, X3, active X4) -> U134(X1, X2, X3, X4),
                U134(X1, X2, mark X3, X4) -> U134(X1, X2, X3, X4),
              U134(X1, X2, active X3, X4) -> U134(X1, X2, X3, X4),
                U134(X1, mark X2, X3, X4) -> U134(X1, X2, X3, X4),
              U134(X1, active X2, X3, X4) -> U134(X1, X2, X3, X4),
                U134(mark X1, X2, X3, X4) -> U134(X1, X2, X3, X4),
              U134(active X1, X2, X3, X4) -> U134(X1, X2, X3, X4),
                U135(X1, X2, X3, mark X4) -> U135(X1, X2, X3, X4),
              U135(X1, X2, X3, active X4) -> U135(X1, X2, X3, X4),
                U135(X1, X2, mark X3, X4) -> U135(X1, X2, X3, X4),
              U135(X1, X2, active X3, X4) -> U135(X1, X2, X3, X4),
                U135(X1, mark X2, X3, X4) -> U135(X1, X2, X3, X4),
              U135(X1, active X2, X3, X4) -> U135(X1, X2, X3, X4),
                U135(mark X1, X2, X3, X4) -> U135(X1, X2, X3, X4),
              U135(active X1, X2, X3, X4) -> U135(X1, X2, X3, X4),
                U136(X1, X2, X3, mark X4) -> U136(X1, X2, X3, X4),
              U136(X1, X2, X3, active X4) -> U136(X1, X2, X3, X4),
                U136(X1, X2, mark X3, X4) -> U136(X1, X2, X3, X4),
              U136(X1, X2, active X3, X4) -> U136(X1, X2, X3, X4),
                U136(X1, mark X2, X3, X4) -> U136(X1, X2, X3, X4),
              U136(X1, active X2, X3, X4) -> U136(X1, X2, X3, X4),
                U136(mark X1, X2, X3, X4) -> U136(X1, X2, X3, X4),
              U136(active X1, X2, X3, X4) -> U136(X1, X2, X3, X4),
                        take(X1, mark X2) -> take(X1, X2),
                      take(X1, active X2) -> take(X1, X2),
                        take(mark X1, X2) -> take(X1, X2),
                      take(active X1, X2) -> take(X1, X2),
                         U22(X1, mark X2) -> U22(X1, X2),
                       U22(X1, active X2) -> U22(X1, X2),
                         U22(mark X1, X2) -> U22(X1, X2),
                       U22(active X1, X2) -> U22(X1, X2),
                         U21(X1, mark X2) -> U21(X1, X2),
                       U21(X1, active X2) -> U21(X1, X2),
                         U21(mark X1, X2) -> U21(X1, X2),
                       U21(active X1, X2) -> U21(X1, X2),
                               U23 mark X -> U23 X,
                             U23 active X -> U23 X,
                         U32(X1, mark X2) -> U32(X1, X2),
                       U32(X1, active X2) -> U32(X1, X2),
                         U32(mark X1, X2) -> U32(X1, X2),
                       U32(active X1, X2) -> U32(X1, X2),
                         U31(X1, mark X2) -> U31(X1, X2),
                       U31(X1, active X2) -> U31(X1, X2),
                         U31(mark X1, X2) -> U31(X1, X2),
                       U31(active X1, X2) -> U31(X1, X2),
                               U33 mark X -> U33 X,
                             U33 active X -> U33 X,
                     U42(X1, X2, mark X3) -> U42(X1, X2, X3),
                   U42(X1, X2, active X3) -> U42(X1, X2, X3),
                     U42(X1, mark X2, X3) -> U42(X1, X2, X3),
                   U42(X1, active X2, X3) -> U42(X1, X2, X3),
                     U42(mark X1, X2, X3) -> U42(X1, X2, X3),
                   U42(active X1, X2, X3) -> U42(X1, X2, X3),
                     U41(X1, X2, mark X3) -> U41(X1, X2, X3),
                   U41(X1, X2, active X3) -> U41(X1, X2, X3),
                     U41(X1, mark X2, X3) -> U41(X1, X2, X3),
                   U41(X1, active X2, X3) -> U41(X1, X2, X3),
                     U41(mark X1, X2, X3) -> U41(X1, X2, X3),
                   U41(active X1, X2, X3) -> U41(X1, X2, X3),
                     U43(X1, X2, mark X3) -> U43(X1, X2, X3),
                   U43(X1, X2, active X3) -> U43(X1, X2, X3),
                     U43(X1, mark X2, X3) -> U43(X1, X2, X3),
                   U43(X1, active X2, X3) -> U43(X1, X2, X3),
                     U43(mark X1, X2, X3) -> U43(X1, X2, X3),
                   U43(active X1, X2, X3) -> U43(X1, X2, X3),
                     U44(X1, X2, mark X3) -> U44(X1, X2, X3),
                   U44(X1, X2, active X3) -> U44(X1, X2, X3),
                     U44(X1, mark X2, X3) -> U44(X1, X2, X3),
                   U44(X1, active X2, X3) -> U44(X1, X2, X3),
                     U44(mark X1, X2, X3) -> U44(X1, X2, X3),
                   U44(active X1, X2, X3) -> U44(X1, X2, X3),
                         U45(X1, mark X2) -> U45(X1, X2),
                       U45(X1, active X2) -> U45(X1, X2),
                         U45(mark X1, X2) -> U45(X1, X2),
                       U45(active X1, X2) -> U45(X1, X2),
                               U46 mark X -> U46 X,
                             U46 active X -> U46 X,
                               U52 mark X -> U52 X,
                             U52 active X -> U52 X,
                         U51(X1, mark X2) -> U51(X1, X2),
                       U51(X1, active X2) -> U51(X1, X2),
                         U51(mark X1, X2) -> U51(X1, X2),
                       U51(active X1, X2) -> U51(X1, X2),
                               U62 mark X -> U62 X,
                             U62 active X -> U62 X,
                         U61(X1, mark X2) -> U61(X1, X2),
                       U61(X1, active X2) -> U61(X1, X2),
                         U61(mark X1, X2) -> U61(X1, X2),
                       U61(active X1, X2) -> U61(X1, X2),
                               U71 mark X -> U71 X,
                             U71 active X -> U71 X,
                               U81 mark X -> U81 X,
                             U81 active X -> U81 X,
                     U92(X1, X2, mark X3) -> U92(X1, X2, X3),
                   U92(X1, X2, active X3) -> U92(X1, X2, X3),
                     U92(X1, mark X2, X3) -> U92(X1, X2, X3),
                   U92(X1, active X2, X3) -> U92(X1, X2, X3),
                     U92(mark X1, X2, X3) -> U92(X1, X2, X3),
                   U92(active X1, X2, X3) -> U92(X1, X2, X3),
                     U91(X1, X2, mark X3) -> U91(X1, X2, X3),
                   U91(X1, X2, active X3) -> U91(X1, X2, X3),
                     U91(X1, mark X2, X3) -> U91(X1, X2, X3),
                   U91(X1, active X2, X3) -> U91(X1, X2, X3),
                     U91(mark X1, X2, X3) -> U91(X1, X2, X3),
                   U91(active X1, X2, X3) -> U91(X1, X2, X3),
                     U93(X1, X2, mark X3) -> U93(X1, X2, X3),
                   U93(X1, X2, active X3) -> U93(X1, X2, X3),
                     U93(X1, mark X2, X3) -> U93(X1, X2, X3),
                   U93(X1, active X2, X3) -> U93(X1, X2, X3),
                     U93(mark X1, X2, X3) -> U93(X1, X2, X3),
                   U93(active X1, X2, X3) -> U93(X1, X2, X3),
                     U94(X1, X2, mark X3) -> U94(X1, X2, X3),
                   U94(X1, X2, active X3) -> U94(X1, X2, X3),
                     U94(X1, mark X2, X3) -> U94(X1, X2, X3),
                   U94(X1, active X2, X3) -> U94(X1, X2, X3),
                     U94(mark X1, X2, X3) -> U94(X1, X2, X3),
                   U94(active X1, X2, X3) -> U94(X1, X2, X3),
                         U95(X1, mark X2) -> U95(X1, X2),
                       U95(X1, active X2) -> U95(X1, X2),
                         U95(mark X1, X2) -> U95(X1, X2),
                       U95(active X1, X2) -> U95(X1, X2),
                               U96 mark X -> U96 X,
                             U96 active X -> U96 X
      }
      Open
     
     SCC (8):
      Strict:
       {  U134#(X1, X2, X3, mark X4) -> U134#(X1, X2, X3, X4),
        U134#(X1, X2, X3, active X4) -> U134#(X1, X2, X3, X4),
          U134#(X1, X2, mark X3, X4) -> U134#(X1, X2, X3, X4),
        U134#(X1, X2, active X3, X4) -> U134#(X1, X2, X3, X4),
          U134#(X1, mark X2, X3, X4) -> U134#(X1, X2, X3, X4),
        U134#(X1, active X2, X3, X4) -> U134#(X1, X2, X3, X4),
          U134#(mark X1, X2, X3, X4) -> U134#(X1, X2, X3, X4),
        U134#(active X1, X2, X3, X4) -> U134#(X1, X2, X3, X4)}
      Weak:
      {
                        mark cons(X1, X2) -> active cons(mark X1, X2),
                                 mark 0() -> active 0(),
                             mark zeros() -> active zeros(),
                    mark U102(X1, X2, X3) -> active U102(mark X1, X2, X3),
                         mark isNatKind X -> active isNatKind X,
                    mark U101(X1, X2, X3) -> active U101(mark X1, X2, X3),
                                mark tt() -> active tt(),
                    mark U103(X1, X2, X3) -> active U103(mark X1, X2, X3),
                    mark isNatIListKind X -> active isNatIListKind X,
                    mark U104(X1, X2, X3) -> active U104(mark X1, X2, X3),
                        mark U105(X1, X2) -> active U105(mark X1, X2),
                             mark isNat X -> active isNat X,
                              mark U106 X -> active U106 mark X,
                        mark isNatIList X -> active isNatIList X,
                         mark U12(X1, X2) -> active U12(mark X1, X2),
                         mark U11(X1, X2) -> active U11(mark X1, X2),
                    mark U112(X1, X2, X3) -> active U112(mark X1, X2, X3),
                    mark U111(X1, X2, X3) -> active U111(mark X1, X2, X3),
                    mark U113(X1, X2, X3) -> active U113(mark X1, X2, X3),
                        mark U114(X1, X2) -> active U114(mark X1, X2),
                                 mark s X -> active s mark X,
                            mark length X -> active length mark X,
                               mark U13 X -> active U13 mark X,
                         mark isNatList X -> active isNatList X,
                              mark U122 X -> active U122 mark X,
                        mark U121(X1, X2) -> active U121(mark X1, X2),
                               mark nil() -> active nil(),
                mark U132(X1, X2, X3, X4) -> active U132(mark X1, X2, X3, X4),
                mark U131(X1, X2, X3, X4) -> active U131(mark X1, X2, X3, X4),
                mark U133(X1, X2, X3, X4) -> active U133(mark X1, X2, X3, X4),
                mark U134(X1, X2, X3, X4) -> active U134(mark X1, X2, X3, X4),
                mark U135(X1, X2, X3, X4) -> active U135(mark X1, X2, X3, X4),
                mark U136(X1, X2, X3, X4) -> active U136(mark X1, X2, X3, X4),
                        mark take(X1, X2) -> active take(mark X1, mark X2),
                         mark U22(X1, X2) -> active U22(mark X1, X2),
                         mark U21(X1, X2) -> active U21(mark X1, X2),
                               mark U23 X -> active U23 mark X,
                         mark U32(X1, X2) -> active U32(mark X1, X2),
                         mark U31(X1, X2) -> active U31(mark X1, X2),
                               mark U33 X -> active U33 mark X,
                     mark U42(X1, X2, X3) -> active U42(mark X1, X2, X3),
                     mark U41(X1, X2, X3) -> active U41(mark X1, X2, X3),
                     mark U43(X1, X2, X3) -> active U43(mark X1, X2, X3),
                     mark U44(X1, X2, X3) -> active U44(mark X1, X2, X3),
                         mark U45(X1, X2) -> active U45(mark X1, X2),
                               mark U46 X -> active U46 mark X,
                               mark U52 X -> active U52 mark X,
                         mark U51(X1, X2) -> active U51(mark X1, X2),
                               mark U62 X -> active U62 mark X,
                         mark U61(X1, X2) -> active U61(mark X1, X2),
                               mark U71 X -> active U71 mark X,
                               mark U81 X -> active U81 mark X,
                     mark U92(X1, X2, X3) -> active U92(mark X1, X2, X3),
                     mark U91(X1, X2, X3) -> active U91(mark X1, X2, X3),
                     mark U93(X1, X2, X3) -> active U93(mark X1, X2, X3),
                     mark U94(X1, X2, X3) -> active U94(mark X1, X2, X3),
                         mark U95(X1, X2) -> active U95(mark X1, X2),
                               mark U96 X -> active U96 mark X,
                        cons(X1, mark X2) -> cons(X1, X2),
                      cons(X1, active X2) -> cons(X1, X2),
                        cons(mark X1, X2) -> cons(X1, X2),
                      cons(active X1, X2) -> cons(X1, X2),
                           active zeros() -> mark cons(0(), zeros()),
                active U102(tt(), V1, V2) -> mark U103(isNatIListKind V2, V1, V2),
                     active isNatKind 0() -> mark tt(),
                    active isNatKind s V1 -> mark U81 isNatKind V1,
               active isNatKind length V1 -> mark U71 isNatIListKind V1,
                active U101(tt(), V1, V2) -> mark U102(isNatKind V1, V1, V2),
                active U103(tt(), V1, V2) -> mark U104(isNatIListKind V2, V1, V2),
       active isNatIListKind cons(V1, V2) -> mark U51(isNatKind V1, V2),
            active isNatIListKind zeros() -> mark tt(),
              active isNatIListKind nil() -> mark tt(),
       active isNatIListKind take(V1, V2) -> mark U61(isNatKind V1, V2),
                active U104(tt(), V1, V2) -> mark U105(isNat V1, V2),
                    active U105(tt(), V2) -> mark U106 isNatIList V2,
                         active isNat 0() -> mark tt(),
                        active isNat s V1 -> mark U21(isNatKind V1, V1),
                   active isNat length V1 -> mark U11(isNatIListKind V1, V1),
                         active U106 tt() -> mark tt(),
                      active isNatIList V -> mark U31(isNatIListKind V, V),
           active isNatIList cons(V1, V2) -> mark U41(isNatKind V1, V1, V2),
                active isNatIList zeros() -> mark tt(),
                     active U12(tt(), V1) -> mark U13 isNatList V1,
                     active U11(tt(), V1) -> mark U12(isNatIListKind V1, V1),
                  active U112(tt(), L, N) -> mark U113(isNat N, L, N),
                  active U111(tt(), L, N) -> mark U112(isNatIListKind L, L, N),
                  active U113(tt(), L, N) -> mark U114(isNatKind N, L),
                     active U114(tt(), L) -> mark s length L,
                 active length cons(N, L) -> mark U111(isNatList L, L, N),
                      active length nil() -> mark 0(),
                          active U13 tt() -> mark tt(),
            active isNatList cons(V1, V2) -> mark U91(isNatKind V1, V1, V2),
                   active isNatList nil() -> mark tt(),
            active isNatList take(V1, V2) -> mark U101(isNatKind V1, V1, V2),
                         active U122 tt() -> mark nil(),
                    active U121(tt(), IL) -> mark U122 isNatIListKind IL,
              active U132(tt(), IL, M, N) -> mark U133(isNat M, IL, M, N),
              active U131(tt(), IL, M, N) -> mark U132(isNatIListKind IL, IL, M, N),
              active U133(tt(), IL, M, N) -> mark U134(isNatKind M, IL, M, N),
              active U134(tt(), IL, M, N) -> mark U135(isNat N, IL, M, N),
              active U135(tt(), IL, M, N) -> mark U136(isNatKind N, IL, M, N),
              active U136(tt(), IL, M, N) -> mark cons(N, take(M, IL)),
                     active take(0(), IL) -> mark U121(isNatIList IL, IL),
            active take(s M, cons(N, IL)) -> mark U131(isNatIList IL, IL, M, N),
                     active U22(tt(), V1) -> mark U23 isNat V1,
                     active U21(tt(), V1) -> mark U22(isNatKind V1, V1),
                          active U23 tt() -> mark tt(),
                      active U32(tt(), V) -> mark U33 isNatList V,
                      active U31(tt(), V) -> mark U32(isNatIListKind V, V),
                          active U33 tt() -> mark tt(),
                 active U42(tt(), V1, V2) -> mark U43(isNatIListKind V2, V1, V2),
                 active U41(tt(), V1, V2) -> mark U42(isNatKind V1, V1, V2),
                 active U43(tt(), V1, V2) -> mark U44(isNatIListKind V2, V1, V2),
                 active U44(tt(), V1, V2) -> mark U45(isNat V1, V2),
                     active U45(tt(), V2) -> mark U46 isNatIList V2,
                          active U46 tt() -> mark tt(),
                          active U52 tt() -> mark tt(),
                     active U51(tt(), V2) -> mark U52 isNatIListKind V2,
                          active U62 tt() -> mark tt(),
                     active U61(tt(), V2) -> mark U62 isNatIListKind V2,
                          active U71 tt() -> mark tt(),
                          active U81 tt() -> mark tt(),
                 active U92(tt(), V1, V2) -> mark U93(isNatIListKind V2, V1, V2),
                 active U91(tt(), V1, V2) -> mark U92(isNatKind V1, V1, V2),
                 active U93(tt(), V1, V2) -> mark U94(isNatIListKind V2, V1, V2),
                 active U94(tt(), V1, V2) -> mark U95(isNat V1, V2),
                     active U95(tt(), V2) -> mark U96 isNatList V2,
                          active U96 tt() -> mark tt(),
                    U102(X1, X2, mark X3) -> U102(X1, X2, X3),
                  U102(X1, X2, active X3) -> U102(X1, X2, X3),
                    U102(X1, mark X2, X3) -> U102(X1, X2, X3),
                  U102(X1, active X2, X3) -> U102(X1, X2, X3),
                    U102(mark X1, X2, X3) -> U102(X1, X2, X3),
                  U102(active X1, X2, X3) -> U102(X1, X2, X3),
                         isNatKind mark X -> isNatKind X,
                       isNatKind active X -> isNatKind X,
                    U101(X1, X2, mark X3) -> U101(X1, X2, X3),
                  U101(X1, X2, active X3) -> U101(X1, X2, X3),
                    U101(X1, mark X2, X3) -> U101(X1, X2, X3),
                  U101(X1, active X2, X3) -> U101(X1, X2, X3),
                    U101(mark X1, X2, X3) -> U101(X1, X2, X3),
                  U101(active X1, X2, X3) -> U101(X1, X2, X3),
                    U103(X1, X2, mark X3) -> U103(X1, X2, X3),
                  U103(X1, X2, active X3) -> U103(X1, X2, X3),
                    U103(X1, mark X2, X3) -> U103(X1, X2, X3),
                  U103(X1, active X2, X3) -> U103(X1, X2, X3),
                    U103(mark X1, X2, X3) -> U103(X1, X2, X3),
                  U103(active X1, X2, X3) -> U103(X1, X2, X3),
                    isNatIListKind mark X -> isNatIListKind X,
                  isNatIListKind active X -> isNatIListKind X,
                    U104(X1, X2, mark X3) -> U104(X1, X2, X3),
                  U104(X1, X2, active X3) -> U104(X1, X2, X3),
                    U104(X1, mark X2, X3) -> U104(X1, X2, X3),
                  U104(X1, active X2, X3) -> U104(X1, X2, X3),
                    U104(mark X1, X2, X3) -> U104(X1, X2, X3),
                  U104(active X1, X2, X3) -> U104(X1, X2, X3),
                        U105(X1, mark X2) -> U105(X1, X2),
                      U105(X1, active X2) -> U105(X1, X2),
                        U105(mark X1, X2) -> U105(X1, X2),
                      U105(active X1, X2) -> U105(X1, X2),
                             isNat mark X -> isNat X,
                           isNat active X -> isNat X,
                              U106 mark X -> U106 X,
                            U106 active X -> U106 X,
                        isNatIList mark X -> isNatIList X,
                      isNatIList active X -> isNatIList X,
                         U12(X1, mark X2) -> U12(X1, X2),
                       U12(X1, active X2) -> U12(X1, X2),
                         U12(mark X1, X2) -> U12(X1, X2),
                       U12(active X1, X2) -> U12(X1, X2),
                         U11(X1, mark X2) -> U11(X1, X2),
                       U11(X1, active X2) -> U11(X1, X2),
                         U11(mark X1, X2) -> U11(X1, X2),
                       U11(active X1, X2) -> U11(X1, X2),
                    U112(X1, X2, mark X3) -> U112(X1, X2, X3),
                  U112(X1, X2, active X3) -> U112(X1, X2, X3),
                    U112(X1, mark X2, X3) -> U112(X1, X2, X3),
                  U112(X1, active X2, X3) -> U112(X1, X2, X3),
                    U112(mark X1, X2, X3) -> U112(X1, X2, X3),
                  U112(active X1, X2, X3) -> U112(X1, X2, X3),
                    U111(X1, X2, mark X3) -> U111(X1, X2, X3),
                  U111(X1, X2, active X3) -> U111(X1, X2, X3),
                    U111(X1, mark X2, X3) -> U111(X1, X2, X3),
                  U111(X1, active X2, X3) -> U111(X1, X2, X3),
                    U111(mark X1, X2, X3) -> U111(X1, X2, X3),
                  U111(active X1, X2, X3) -> U111(X1, X2, X3),
                    U113(X1, X2, mark X3) -> U113(X1, X2, X3),
                  U113(X1, X2, active X3) -> U113(X1, X2, X3),
                    U113(X1, mark X2, X3) -> U113(X1, X2, X3),
                  U113(X1, active X2, X3) -> U113(X1, X2, X3),
                    U113(mark X1, X2, X3) -> U113(X1, X2, X3),
                  U113(active X1, X2, X3) -> U113(X1, X2, X3),
                        U114(X1, mark X2) -> U114(X1, X2),
                      U114(X1, active X2) -> U114(X1, X2),
                        U114(mark X1, X2) -> U114(X1, X2),
                      U114(active X1, X2) -> U114(X1, X2),
                                 s mark X -> s X,
                               s active X -> s X,
                            length mark X -> length X,
                          length active X -> length X,
                               U13 mark X -> U13 X,
                             U13 active X -> U13 X,
                         isNatList mark X -> isNatList X,
                       isNatList active X -> isNatList X,
                              U122 mark X -> U122 X,
                            U122 active X -> U122 X,
                        U121(X1, mark X2) -> U121(X1, X2),
                      U121(X1, active X2) -> U121(X1, X2),
                        U121(mark X1, X2) -> U121(X1, X2),
                      U121(active X1, X2) -> U121(X1, X2),
                U132(X1, X2, X3, mark X4) -> U132(X1, X2, X3, X4),
              U132(X1, X2, X3, active X4) -> U132(X1, X2, X3, X4),
                U132(X1, X2, mark X3, X4) -> U132(X1, X2, X3, X4),
              U132(X1, X2, active X3, X4) -> U132(X1, X2, X3, X4),
                U132(X1, mark X2, X3, X4) -> U132(X1, X2, X3, X4),
              U132(X1, active X2, X3, X4) -> U132(X1, X2, X3, X4),
                U132(mark X1, X2, X3, X4) -> U132(X1, X2, X3, X4),
              U132(active X1, X2, X3, X4) -> U132(X1, X2, X3, X4),
                U131(X1, X2, X3, mark X4) -> U131(X1, X2, X3, X4),
              U131(X1, X2, X3, active X4) -> U131(X1, X2, X3, X4),
                U131(X1, X2, mark X3, X4) -> U131(X1, X2, X3, X4),
              U131(X1, X2, active X3, X4) -> U131(X1, X2, X3, X4),
                U131(X1, mark X2, X3, X4) -> U131(X1, X2, X3, X4),
              U131(X1, active X2, X3, X4) -> U131(X1, X2, X3, X4),
                U131(mark X1, X2, X3, X4) -> U131(X1, X2, X3, X4),
              U131(active X1, X2, X3, X4) -> U131(X1, X2, X3, X4),
                U133(X1, X2, X3, mark X4) -> U133(X1, X2, X3, X4),
              U133(X1, X2, X3, active X4) -> U133(X1, X2, X3, X4),
                U133(X1, X2, mark X3, X4) -> U133(X1, X2, X3, X4),
              U133(X1, X2, active X3, X4) -> U133(X1, X2, X3, X4),
                U133(X1, mark X2, X3, X4) -> U133(X1, X2, X3, X4),
              U133(X1, active X2, X3, X4) -> U133(X1, X2, X3, X4),
                U133(mark X1, X2, X3, X4) -> U133(X1, X2, X3, X4),
              U133(active X1, X2, X3, X4) -> U133(X1, X2, X3, X4),
                U134(X1, X2, X3, mark X4) -> U134(X1, X2, X3, X4),
              U134(X1, X2, X3, active X4) -> U134(X1, X2, X3, X4),
                U134(X1, X2, mark X3, X4) -> U134(X1, X2, X3, X4),
              U134(X1, X2, active X3, X4) -> U134(X1, X2, X3, X4),
                U134(X1, mark X2, X3, X4) -> U134(X1, X2, X3, X4),
              U134(X1, active X2, X3, X4) -> U134(X1, X2, X3, X4),
                U134(mark X1, X2, X3, X4) -> U134(X1, X2, X3, X4),
              U134(active X1, X2, X3, X4) -> U134(X1, X2, X3, X4),
                U135(X1, X2, X3, mark X4) -> U135(X1, X2, X3, X4),
              U135(X1, X2, X3, active X4) -> U135(X1, X2, X3, X4),
                U135(X1, X2, mark X3, X4) -> U135(X1, X2, X3, X4),
              U135(X1, X2, active X3, X4) -> U135(X1, X2, X3, X4),
                U135(X1, mark X2, X3, X4) -> U135(X1, X2, X3, X4),
              U135(X1, active X2, X3, X4) -> U135(X1, X2, X3, X4),
                U135(mark X1, X2, X3, X4) -> U135(X1, X2, X3, X4),
              U135(active X1, X2, X3, X4) -> U135(X1, X2, X3, X4),
                U136(X1, X2, X3, mark X4) -> U136(X1, X2, X3, X4),
              U136(X1, X2, X3, active X4) -> U136(X1, X2, X3, X4),
                U136(X1, X2, mark X3, X4) -> U136(X1, X2, X3, X4),
              U136(X1, X2, active X3, X4) -> U136(X1, X2, X3, X4),
                U136(X1, mark X2, X3, X4) -> U136(X1, X2, X3, X4),
              U136(X1, active X2, X3, X4) -> U136(X1, X2, X3, X4),
                U136(mark X1, X2, X3, X4) -> U136(X1, X2, X3, X4),
              U136(active X1, X2, X3, X4) -> U136(X1, X2, X3, X4),
                        take(X1, mark X2) -> take(X1, X2),
                      take(X1, active X2) -> take(X1, X2),
                        take(mark X1, X2) -> take(X1, X2),
                      take(active X1, X2) -> take(X1, X2),
                         U22(X1, mark X2) -> U22(X1, X2),
                       U22(X1, active X2) -> U22(X1, X2),
                         U22(mark X1, X2) -> U22(X1, X2),
                       U22(active X1, X2) -> U22(X1, X2),
                         U21(X1, mark X2) -> U21(X1, X2),
                       U21(X1, active X2) -> U21(X1, X2),
                         U21(mark X1, X2) -> U21(X1, X2),
                       U21(active X1, X2) -> U21(X1, X2),
                               U23 mark X -> U23 X,
                             U23 active X -> U23 X,
                         U32(X1, mark X2) -> U32(X1, X2),
                       U32(X1, active X2) -> U32(X1, X2),
                         U32(mark X1, X2) -> U32(X1, X2),
                       U32(active X1, X2) -> U32(X1, X2),
                         U31(X1, mark X2) -> U31(X1, X2),
                       U31(X1, active X2) -> U31(X1, X2),
                         U31(mark X1, X2) -> U31(X1, X2),
                       U31(active X1, X2) -> U31(X1, X2),
                               U33 mark X -> U33 X,
                             U33 active X -> U33 X,
                     U42(X1, X2, mark X3) -> U42(X1, X2, X3),
                   U42(X1, X2, active X3) -> U42(X1, X2, X3),
                     U42(X1, mark X2, X3) -> U42(X1, X2, X3),
                   U42(X1, active X2, X3) -> U42(X1, X2, X3),
                     U42(mark X1, X2, X3) -> U42(X1, X2, X3),
                   U42(active X1, X2, X3) -> U42(X1, X2, X3),
                     U41(X1, X2, mark X3) -> U41(X1, X2, X3),
                   U41(X1, X2, active X3) -> U41(X1, X2, X3),
                     U41(X1, mark X2, X3) -> U41(X1, X2, X3),
                   U41(X1, active X2, X3) -> U41(X1, X2, X3),
                     U41(mark X1, X2, X3) -> U41(X1, X2, X3),
                   U41(active X1, X2, X3) -> U41(X1, X2, X3),
                     U43(X1, X2, mark X3) -> U43(X1, X2, X3),
                   U43(X1, X2, active X3) -> U43(X1, X2, X3),
                     U43(X1, mark X2, X3) -> U43(X1, X2, X3),
                   U43(X1, active X2, X3) -> U43(X1, X2, X3),
                     U43(mark X1, X2, X3) -> U43(X1, X2, X3),
                   U43(active X1, X2, X3) -> U43(X1, X2, X3),
                     U44(X1, X2, mark X3) -> U44(X1, X2, X3),
                   U44(X1, X2, active X3) -> U44(X1, X2, X3),
                     U44(X1, mark X2, X3) -> U44(X1, X2, X3),
                   U44(X1, active X2, X3) -> U44(X1, X2, X3),
                     U44(mark X1, X2, X3) -> U44(X1, X2, X3),
                   U44(active X1, X2, X3) -> U44(X1, X2, X3),
                         U45(X1, mark X2) -> U45(X1, X2),
                       U45(X1, active X2) -> U45(X1, X2),
                         U45(mark X1, X2) -> U45(X1, X2),
                       U45(active X1, X2) -> U45(X1, X2),
                               U46 mark X -> U46 X,
                             U46 active X -> U46 X,
                               U52 mark X -> U52 X,
                             U52 active X -> U52 X,
                         U51(X1, mark X2) -> U51(X1, X2),
                       U51(X1, active X2) -> U51(X1, X2),
                         U51(mark X1, X2) -> U51(X1, X2),
                       U51(active X1, X2) -> U51(X1, X2),
                               U62 mark X -> U62 X,
                             U62 active X -> U62 X,
                         U61(X1, mark X2) -> U61(X1, X2),
                       U61(X1, active X2) -> U61(X1, X2),
                         U61(mark X1, X2) -> U61(X1, X2),
                       U61(active X1, X2) -> U61(X1, X2),
                               U71 mark X -> U71 X,
                             U71 active X -> U71 X,
                               U81 mark X -> U81 X,
                             U81 active X -> U81 X,
                     U92(X1, X2, mark X3) -> U92(X1, X2, X3),
                   U92(X1, X2, active X3) -> U92(X1, X2, X3),
                     U92(X1, mark X2, X3) -> U92(X1, X2, X3),
                   U92(X1, active X2, X3) -> U92(X1, X2, X3),
                     U92(mark X1, X2, X3) -> U92(X1, X2, X3),
                   U92(active X1, X2, X3) -> U92(X1, X2, X3),
                     U91(X1, X2, mark X3) -> U91(X1, X2, X3),
                   U91(X1, X2, active X3) -> U91(X1, X2, X3),
                     U91(X1, mark X2, X3) -> U91(X1, X2, X3),
                   U91(X1, active X2, X3) -> U91(X1, X2, X3),
                     U91(mark X1, X2, X3) -> U91(X1, X2, X3),
                   U91(active X1, X2, X3) -> U91(X1, X2, X3),
                     U93(X1, X2, mark X3) -> U93(X1, X2, X3),
                   U93(X1, X2, active X3) -> U93(X1, X2, X3),
                     U93(X1, mark X2, X3) -> U93(X1, X2, X3),
                   U93(X1, active X2, X3) -> U93(X1, X2, X3),
                     U93(mark X1, X2, X3) -> U93(X1, X2, X3),
                   U93(active X1, X2, X3) -> U93(X1, X2, X3),
                     U94(X1, X2, mark X3) -> U94(X1, X2, X3),
                   U94(X1, X2, active X3) -> U94(X1, X2, X3),
                     U94(X1, mark X2, X3) -> U94(X1, X2, X3),
                   U94(X1, active X2, X3) -> U94(X1, X2, X3),
                     U94(mark X1, X2, X3) -> U94(X1, X2, X3),
                   U94(active X1, X2, X3) -> U94(X1, X2, X3),
                         U95(X1, mark X2) -> U95(X1, X2),
                       U95(X1, active X2) -> U95(X1, X2),
                         U95(mark X1, X2) -> U95(X1, X2),
                       U95(active X1, X2) -> U95(X1, X2),
                               U96 mark X -> U96 X,
                             U96 active X -> U96 X
      }
      Open
     
     SCC (8):
      Strict:
       {  U133#(X1, X2, X3, mark X4) -> U133#(X1, X2, X3, X4),
        U133#(X1, X2, X3, active X4) -> U133#(X1, X2, X3, X4),
          U133#(X1, X2, mark X3, X4) -> U133#(X1, X2, X3, X4),
        U133#(X1, X2, active X3, X4) -> U133#(X1, X2, X3, X4),
          U133#(X1, mark X2, X3, X4) -> U133#(X1, X2, X3, X4),
        U133#(X1, active X2, X3, X4) -> U133#(X1, X2, X3, X4),
          U133#(mark X1, X2, X3, X4) -> U133#(X1, X2, X3, X4),
        U133#(active X1, X2, X3, X4) -> U133#(X1, X2, X3, X4)}
      Weak:
      {
                        mark cons(X1, X2) -> active cons(mark X1, X2),
                                 mark 0() -> active 0(),
                             mark zeros() -> active zeros(),
                    mark U102(X1, X2, X3) -> active U102(mark X1, X2, X3),
                         mark isNatKind X -> active isNatKind X,
                    mark U101(X1, X2, X3) -> active U101(mark X1, X2, X3),
                                mark tt() -> active tt(),
                    mark U103(X1, X2, X3) -> active U103(mark X1, X2, X3),
                    mark isNatIListKind X -> active isNatIListKind X,
                    mark U104(X1, X2, X3) -> active U104(mark X1, X2, X3),
                        mark U105(X1, X2) -> active U105(mark X1, X2),
                             mark isNat X -> active isNat X,
                              mark U106 X -> active U106 mark X,
                        mark isNatIList X -> active isNatIList X,
                         mark U12(X1, X2) -> active U12(mark X1, X2),
                         mark U11(X1, X2) -> active U11(mark X1, X2),
                    mark U112(X1, X2, X3) -> active U112(mark X1, X2, X3),
                    mark U111(X1, X2, X3) -> active U111(mark X1, X2, X3),
                    mark U113(X1, X2, X3) -> active U113(mark X1, X2, X3),
                        mark U114(X1, X2) -> active U114(mark X1, X2),
                                 mark s X -> active s mark X,
                            mark length X -> active length mark X,
                               mark U13 X -> active U13 mark X,
                         mark isNatList X -> active isNatList X,
                              mark U122 X -> active U122 mark X,
                        mark U121(X1, X2) -> active U121(mark X1, X2),
                               mark nil() -> active nil(),
                mark U132(X1, X2, X3, X4) -> active U132(mark X1, X2, X3, X4),
                mark U131(X1, X2, X3, X4) -> active U131(mark X1, X2, X3, X4),
                mark U133(X1, X2, X3, X4) -> active U133(mark X1, X2, X3, X4),
                mark U134(X1, X2, X3, X4) -> active U134(mark X1, X2, X3, X4),
                mark U135(X1, X2, X3, X4) -> active U135(mark X1, X2, X3, X4),
                mark U136(X1, X2, X3, X4) -> active U136(mark X1, X2, X3, X4),
                        mark take(X1, X2) -> active take(mark X1, mark X2),
                         mark U22(X1, X2) -> active U22(mark X1, X2),
                         mark U21(X1, X2) -> active U21(mark X1, X2),
                               mark U23 X -> active U23 mark X,
                         mark U32(X1, X2) -> active U32(mark X1, X2),
                         mark U31(X1, X2) -> active U31(mark X1, X2),
                               mark U33 X -> active U33 mark X,
                     mark U42(X1, X2, X3) -> active U42(mark X1, X2, X3),
                     mark U41(X1, X2, X3) -> active U41(mark X1, X2, X3),
                     mark U43(X1, X2, X3) -> active U43(mark X1, X2, X3),
                     mark U44(X1, X2, X3) -> active U44(mark X1, X2, X3),
                         mark U45(X1, X2) -> active U45(mark X1, X2),
                               mark U46 X -> active U46 mark X,
                               mark U52 X -> active U52 mark X,
                         mark U51(X1, X2) -> active U51(mark X1, X2),
                               mark U62 X -> active U62 mark X,
                         mark U61(X1, X2) -> active U61(mark X1, X2),
                               mark U71 X -> active U71 mark X,
                               mark U81 X -> active U81 mark X,
                     mark U92(X1, X2, X3) -> active U92(mark X1, X2, X3),
                     mark U91(X1, X2, X3) -> active U91(mark X1, X2, X3),
                     mark U93(X1, X2, X3) -> active U93(mark X1, X2, X3),
                     mark U94(X1, X2, X3) -> active U94(mark X1, X2, X3),
                         mark U95(X1, X2) -> active U95(mark X1, X2),
                               mark U96 X -> active U96 mark X,
                        cons(X1, mark X2) -> cons(X1, X2),
                      cons(X1, active X2) -> cons(X1, X2),
                        cons(mark X1, X2) -> cons(X1, X2),
                      cons(active X1, X2) -> cons(X1, X2),
                           active zeros() -> mark cons(0(), zeros()),
                active U102(tt(), V1, V2) -> mark U103(isNatIListKind V2, V1, V2),
                     active isNatKind 0() -> mark tt(),
                    active isNatKind s V1 -> mark U81 isNatKind V1,
               active isNatKind length V1 -> mark U71 isNatIListKind V1,
                active U101(tt(), V1, V2) -> mark U102(isNatKind V1, V1, V2),
                active U103(tt(), V1, V2) -> mark U104(isNatIListKind V2, V1, V2),
       active isNatIListKind cons(V1, V2) -> mark U51(isNatKind V1, V2),
            active isNatIListKind zeros() -> mark tt(),
              active isNatIListKind nil() -> mark tt(),
       active isNatIListKind take(V1, V2) -> mark U61(isNatKind V1, V2),
                active U104(tt(), V1, V2) -> mark U105(isNat V1, V2),
                    active U105(tt(), V2) -> mark U106 isNatIList V2,
                         active isNat 0() -> mark tt(),
                        active isNat s V1 -> mark U21(isNatKind V1, V1),
                   active isNat length V1 -> mark U11(isNatIListKind V1, V1),
                         active U106 tt() -> mark tt(),
                      active isNatIList V -> mark U31(isNatIListKind V, V),
           active isNatIList cons(V1, V2) -> mark U41(isNatKind V1, V1, V2),
                active isNatIList zeros() -> mark tt(),
                     active U12(tt(), V1) -> mark U13 isNatList V1,
                     active U11(tt(), V1) -> mark U12(isNatIListKind V1, V1),
                  active U112(tt(), L, N) -> mark U113(isNat N, L, N),
                  active U111(tt(), L, N) -> mark U112(isNatIListKind L, L, N),
                  active U113(tt(), L, N) -> mark U114(isNatKind N, L),
                     active U114(tt(), L) -> mark s length L,
                 active length cons(N, L) -> mark U111(isNatList L, L, N),
                      active length nil() -> mark 0(),
                          active U13 tt() -> mark tt(),
            active isNatList cons(V1, V2) -> mark U91(isNatKind V1, V1, V2),
                   active isNatList nil() -> mark tt(),
            active isNatList take(V1, V2) -> mark U101(isNatKind V1, V1, V2),
                         active U122 tt() -> mark nil(),
                    active U121(tt(), IL) -> mark U122 isNatIListKind IL,
              active U132(tt(), IL, M, N) -> mark U133(isNat M, IL, M, N),
              active U131(tt(), IL, M, N) -> mark U132(isNatIListKind IL, IL, M, N),
              active U133(tt(), IL, M, N) -> mark U134(isNatKind M, IL, M, N),
              active U134(tt(), IL, M, N) -> mark U135(isNat N, IL, M, N),
              active U135(tt(), IL, M, N) -> mark U136(isNatKind N, IL, M, N),
              active U136(tt(), IL, M, N) -> mark cons(N, take(M, IL)),
                     active take(0(), IL) -> mark U121(isNatIList IL, IL),
            active take(s M, cons(N, IL)) -> mark U131(isNatIList IL, IL, M, N),
                     active U22(tt(), V1) -> mark U23 isNat V1,
                     active U21(tt(), V1) -> mark U22(isNatKind V1, V1),
                          active U23 tt() -> mark tt(),
                      active U32(tt(), V) -> mark U33 isNatList V,
                      active U31(tt(), V) -> mark U32(isNatIListKind V, V),
                          active U33 tt() -> mark tt(),
                 active U42(tt(), V1, V2) -> mark U43(isNatIListKind V2, V1, V2),
                 active U41(tt(), V1, V2) -> mark U42(isNatKind V1, V1, V2),
                 active U43(tt(), V1, V2) -> mark U44(isNatIListKind V2, V1, V2),
                 active U44(tt(), V1, V2) -> mark U45(isNat V1, V2),
                     active U45(tt(), V2) -> mark U46 isNatIList V2,
                          active U46 tt() -> mark tt(),
                          active U52 tt() -> mark tt(),
                     active U51(tt(), V2) -> mark U52 isNatIListKind V2,
                          active U62 tt() -> mark tt(),
                     active U61(tt(), V2) -> mark U62 isNatIListKind V2,
                          active U71 tt() -> mark tt(),
                          active U81 tt() -> mark tt(),
                 active U92(tt(), V1, V2) -> mark U93(isNatIListKind V2, V1, V2),
                 active U91(tt(), V1, V2) -> mark U92(isNatKind V1, V1, V2),
                 active U93(tt(), V1, V2) -> mark U94(isNatIListKind V2, V1, V2),
                 active U94(tt(), V1, V2) -> mark U95(isNat V1, V2),
                     active U95(tt(), V2) -> mark U96 isNatList V2,
                          active U96 tt() -> mark tt(),
                    U102(X1, X2, mark X3) -> U102(X1, X2, X3),
                  U102(X1, X2, active X3) -> U102(X1, X2, X3),
                    U102(X1, mark X2, X3) -> U102(X1, X2, X3),
                  U102(X1, active X2, X3) -> U102(X1, X2, X3),
                    U102(mark X1, X2, X3) -> U102(X1, X2, X3),
                  U102(active X1, X2, X3) -> U102(X1, X2, X3),
                         isNatKind mark X -> isNatKind X,
                       isNatKind active X -> isNatKind X,
                    U101(X1, X2, mark X3) -> U101(X1, X2, X3),
                  U101(X1, X2, active X3) -> U101(X1, X2, X3),
                    U101(X1, mark X2, X3) -> U101(X1, X2, X3),
                  U101(X1, active X2, X3) -> U101(X1, X2, X3),
                    U101(mark X1, X2, X3) -> U101(X1, X2, X3),
                  U101(active X1, X2, X3) -> U101(X1, X2, X3),
                    U103(X1, X2, mark X3) -> U103(X1, X2, X3),
                  U103(X1, X2, active X3) -> U103(X1, X2, X3),
                    U103(X1, mark X2, X3) -> U103(X1, X2, X3),
                  U103(X1, active X2, X3) -> U103(X1, X2, X3),
                    U103(mark X1, X2, X3) -> U103(X1, X2, X3),
                  U103(active X1, X2, X3) -> U103(X1, X2, X3),
                    isNatIListKind mark X -> isNatIListKind X,
                  isNatIListKind active X -> isNatIListKind X,
                    U104(X1, X2, mark X3) -> U104(X1, X2, X3),
                  U104(X1, X2, active X3) -> U104(X1, X2, X3),
                    U104(X1, mark X2, X3) -> U104(X1, X2, X3),
                  U104(X1, active X2, X3) -> U104(X1, X2, X3),
                    U104(mark X1, X2, X3) -> U104(X1, X2, X3),
                  U104(active X1, X2, X3) -> U104(X1, X2, X3),
                        U105(X1, mark X2) -> U105(X1, X2),
                      U105(X1, active X2) -> U105(X1, X2),
                        U105(mark X1, X2) -> U105(X1, X2),
                      U105(active X1, X2) -> U105(X1, X2),
                             isNat mark X -> isNat X,
                           isNat active X -> isNat X,
                              U106 mark X -> U106 X,
                            U106 active X -> U106 X,
                        isNatIList mark X -> isNatIList X,
                      isNatIList active X -> isNatIList X,
                         U12(X1, mark X2) -> U12(X1, X2),
                       U12(X1, active X2) -> U12(X1, X2),
                         U12(mark X1, X2) -> U12(X1, X2),
                       U12(active X1, X2) -> U12(X1, X2),
                         U11(X1, mark X2) -> U11(X1, X2),
                       U11(X1, active X2) -> U11(X1, X2),
                         U11(mark X1, X2) -> U11(X1, X2),
                       U11(active X1, X2) -> U11(X1, X2),
                    U112(X1, X2, mark X3) -> U112(X1, X2, X3),
                  U112(X1, X2, active X3) -> U112(X1, X2, X3),
                    U112(X1, mark X2, X3) -> U112(X1, X2, X3),
                  U112(X1, active X2, X3) -> U112(X1, X2, X3),
                    U112(mark X1, X2, X3) -> U112(X1, X2, X3),
                  U112(active X1, X2, X3) -> U112(X1, X2, X3),
                    U111(X1, X2, mark X3) -> U111(X1, X2, X3),
                  U111(X1, X2, active X3) -> U111(X1, X2, X3),
                    U111(X1, mark X2, X3) -> U111(X1, X2, X3),
                  U111(X1, active X2, X3) -> U111(X1, X2, X3),
                    U111(mark X1, X2, X3) -> U111(X1, X2, X3),
                  U111(active X1, X2, X3) -> U111(X1, X2, X3),
                    U113(X1, X2, mark X3) -> U113(X1, X2, X3),
                  U113(X1, X2, active X3) -> U113(X1, X2, X3),
                    U113(X1, mark X2, X3) -> U113(X1, X2, X3),
                  U113(X1, active X2, X3) -> U113(X1, X2, X3),
                    U113(mark X1, X2, X3) -> U113(X1, X2, X3),
                  U113(active X1, X2, X3) -> U113(X1, X2, X3),
                        U114(X1, mark X2) -> U114(X1, X2),
                      U114(X1, active X2) -> U114(X1, X2),
                        U114(mark X1, X2) -> U114(X1, X2),
                      U114(active X1, X2) -> U114(X1, X2),
                                 s mark X -> s X,
                               s active X -> s X,
                            length mark X -> length X,
                          length active X -> length X,
                               U13 mark X -> U13 X,
                             U13 active X -> U13 X,
                         isNatList mark X -> isNatList X,
                       isNatList active X -> isNatList X,
                              U122 mark X -> U122 X,
                            U122 active X -> U122 X,
                        U121(X1, mark X2) -> U121(X1, X2),
                      U121(X1, active X2) -> U121(X1, X2),
                        U121(mark X1, X2) -> U121(X1, X2),
                      U121(active X1, X2) -> U121(X1, X2),
                U132(X1, X2, X3, mark X4) -> U132(X1, X2, X3, X4),
              U132(X1, X2, X3, active X4) -> U132(X1, X2, X3, X4),
                U132(X1, X2, mark X3, X4) -> U132(X1, X2, X3, X4),
              U132(X1, X2, active X3, X4) -> U132(X1, X2, X3, X4),
                U132(X1, mark X2, X3, X4) -> U132(X1, X2, X3, X4),
              U132(X1, active X2, X3, X4) -> U132(X1, X2, X3, X4),
                U132(mark X1, X2, X3, X4) -> U132(X1, X2, X3, X4),
              U132(active X1, X2, X3, X4) -> U132(X1, X2, X3, X4),
                U131(X1, X2, X3, mark X4) -> U131(X1, X2, X3, X4),
              U131(X1, X2, X3, active X4) -> U131(X1, X2, X3, X4),
                U131(X1, X2, mark X3, X4) -> U131(X1, X2, X3, X4),
              U131(X1, X2, active X3, X4) -> U131(X1, X2, X3, X4),
                U131(X1, mark X2, X3, X4) -> U131(X1, X2, X3, X4),
              U131(X1, active X2, X3, X4) -> U131(X1, X2, X3, X4),
                U131(mark X1, X2, X3, X4) -> U131(X1, X2, X3, X4),
              U131(active X1, X2, X3, X4) -> U131(X1, X2, X3, X4),
                U133(X1, X2, X3, mark X4) -> U133(X1, X2, X3, X4),
              U133(X1, X2, X3, active X4) -> U133(X1, X2, X3, X4),
                U133(X1, X2, mark X3, X4) -> U133(X1, X2, X3, X4),
              U133(X1, X2, active X3, X4) -> U133(X1, X2, X3, X4),
                U133(X1, mark X2, X3, X4) -> U133(X1, X2, X3, X4),
              U133(X1, active X2, X3, X4) -> U133(X1, X2, X3, X4),
                U133(mark X1, X2, X3, X4) -> U133(X1, X2, X3, X4),
              U133(active X1, X2, X3, X4) -> U133(X1, X2, X3, X4),
                U134(X1, X2, X3, mark X4) -> U134(X1, X2, X3, X4),
              U134(X1, X2, X3, active X4) -> U134(X1, X2, X3, X4),
                U134(X1, X2, mark X3, X4) -> U134(X1, X2, X3, X4),
              U134(X1, X2, active X3, X4) -> U134(X1, X2, X3, X4),
                U134(X1, mark X2, X3, X4) -> U134(X1, X2, X3, X4),
              U134(X1, active X2, X3, X4) -> U134(X1, X2, X3, X4),
                U134(mark X1, X2, X3, X4) -> U134(X1, X2, X3, X4),
              U134(active X1, X2, X3, X4) -> U134(X1, X2, X3, X4),
                U135(X1, X2, X3, mark X4) -> U135(X1, X2, X3, X4),
              U135(X1, X2, X3, active X4) -> U135(X1, X2, X3, X4),
                U135(X1, X2, mark X3, X4) -> U135(X1, X2, X3, X4),
              U135(X1, X2, active X3, X4) -> U135(X1, X2, X3, X4),
                U135(X1, mark X2, X3, X4) -> U135(X1, X2, X3, X4),
              U135(X1, active X2, X3, X4) -> U135(X1, X2, X3, X4),
                U135(mark X1, X2, X3, X4) -> U135(X1, X2, X3, X4),
              U135(active X1, X2, X3, X4) -> U135(X1, X2, X3, X4),
                U136(X1, X2, X3, mark X4) -> U136(X1, X2, X3, X4),
              U136(X1, X2, X3, active X4) -> U136(X1, X2, X3, X4),
                U136(X1, X2, mark X3, X4) -> U136(X1, X2, X3, X4),
              U136(X1, X2, active X3, X4) -> U136(X1, X2, X3, X4),
                U136(X1, mark X2, X3, X4) -> U136(X1, X2, X3, X4),
              U136(X1, active X2, X3, X4) -> U136(X1, X2, X3, X4),
                U136(mark X1, X2, X3, X4) -> U136(X1, X2, X3, X4),
              U136(active X1, X2, X3, X4) -> U136(X1, X2, X3, X4),
                        take(X1, mark X2) -> take(X1, X2),
                      take(X1, active X2) -> take(X1, X2),
                        take(mark X1, X2) -> take(X1, X2),
                      take(active X1, X2) -> take(X1, X2),
                         U22(X1, mark X2) -> U22(X1, X2),
                       U22(X1, active X2) -> U22(X1, X2),
                         U22(mark X1, X2) -> U22(X1, X2),
                       U22(active X1, X2) -> U22(X1, X2),
                         U21(X1, mark X2) -> U21(X1, X2),
                       U21(X1, active X2) -> U21(X1, X2),
                         U21(mark X1, X2) -> U21(X1, X2),
                       U21(active X1, X2) -> U21(X1, X2),
                               U23 mark X -> U23 X,
                             U23 active X -> U23 X,
                         U32(X1, mark X2) -> U32(X1, X2),
                       U32(X1, active X2) -> U32(X1, X2),
                         U32(mark X1, X2) -> U32(X1, X2),
                       U32(active X1, X2) -> U32(X1, X2),
                         U31(X1, mark X2) -> U31(X1, X2),
                       U31(X1, active X2) -> U31(X1, X2),
                         U31(mark X1, X2) -> U31(X1, X2),
                       U31(active X1, X2) -> U31(X1, X2),
                               U33 mark X -> U33 X,
                             U33 active X -> U33 X,
                     U42(X1, X2, mark X3) -> U42(X1, X2, X3),
                   U42(X1, X2, active X3) -> U42(X1, X2, X3),
                     U42(X1, mark X2, X3) -> U42(X1, X2, X3),
                   U42(X1, active X2, X3) -> U42(X1, X2, X3),
                     U42(mark X1, X2, X3) -> U42(X1, X2, X3),
                   U42(active X1, X2, X3) -> U42(X1, X2, X3),
                     U41(X1, X2, mark X3) -> U41(X1, X2, X3),
                   U41(X1, X2, active X3) -> U41(X1, X2, X3),
                     U41(X1, mark X2, X3) -> U41(X1, X2, X3),
                   U41(X1, active X2, X3) -> U41(X1, X2, X3),
                     U41(mark X1, X2, X3) -> U41(X1, X2, X3),
                   U41(active X1, X2, X3) -> U41(X1, X2, X3),
                     U43(X1, X2, mark X3) -> U43(X1, X2, X3),
                   U43(X1, X2, active X3) -> U43(X1, X2, X3),
                     U43(X1, mark X2, X3) -> U43(X1, X2, X3),
                   U43(X1, active X2, X3) -> U43(X1, X2, X3),
                     U43(mark X1, X2, X3) -> U43(X1, X2, X3),
                   U43(active X1, X2, X3) -> U43(X1, X2, X3),
                     U44(X1, X2, mark X3) -> U44(X1, X2, X3),
                   U44(X1, X2, active X3) -> U44(X1, X2, X3),
                     U44(X1, mark X2, X3) -> U44(X1, X2, X3),
                   U44(X1, active X2, X3) -> U44(X1, X2, X3),
                     U44(mark X1, X2, X3) -> U44(X1, X2, X3),
                   U44(active X1, X2, X3) -> U44(X1, X2, X3),
                         U45(X1, mark X2) -> U45(X1, X2),
                       U45(X1, active X2) -> U45(X1, X2),
                         U45(mark X1, X2) -> U45(X1, X2),
                       U45(active X1, X2) -> U45(X1, X2),
                               U46 mark X -> U46 X,
                             U46 active X -> U46 X,
                               U52 mark X -> U52 X,
                             U52 active X -> U52 X,
                         U51(X1, mark X2) -> U51(X1, X2),
                       U51(X1, active X2) -> U51(X1, X2),
                         U51(mark X1, X2) -> U51(X1, X2),
                       U51(active X1, X2) -> U51(X1, X2),
                               U62 mark X -> U62 X,
                             U62 active X -> U62 X,
                         U61(X1, mark X2) -> U61(X1, X2),
                       U61(X1, active X2) -> U61(X1, X2),
                         U61(mark X1, X2) -> U61(X1, X2),
                       U61(active X1, X2) -> U61(X1, X2),
                               U71 mark X -> U71 X,
                             U71 active X -> U71 X,
                               U81 mark X -> U81 X,
                             U81 active X -> U81 X,
                     U92(X1, X2, mark X3) -> U92(X1, X2, X3),
                   U92(X1, X2, active X3) -> U92(X1, X2, X3),
                     U92(X1, mark X2, X3) -> U92(X1, X2, X3),
                   U92(X1, active X2, X3) -> U92(X1, X2, X3),
                     U92(mark X1, X2, X3) -> U92(X1, X2, X3),
                   U92(active X1, X2, X3) -> U92(X1, X2, X3),
                     U91(X1, X2, mark X3) -> U91(X1, X2, X3),
                   U91(X1, X2, active X3) -> U91(X1, X2, X3),
                     U91(X1, mark X2, X3) -> U91(X1, X2, X3),
                   U91(X1, active X2, X3) -> U91(X1, X2, X3),
                     U91(mark X1, X2, X3) -> U91(X1, X2, X3),
                   U91(active X1, X2, X3) -> U91(X1, X2, X3),
                     U93(X1, X2, mark X3) -> U93(X1, X2, X3),
                   U93(X1, X2, active X3) -> U93(X1, X2, X3),
                     U93(X1, mark X2, X3) -> U93(X1, X2, X3),
                   U93(X1, active X2, X3) -> U93(X1, X2, X3),
                     U93(mark X1, X2, X3) -> U93(X1, X2, X3),
                   U93(active X1, X2, X3) -> U93(X1, X2, X3),
                     U94(X1, X2, mark X3) -> U94(X1, X2, X3),
                   U94(X1, X2, active X3) -> U94(X1, X2, X3),
                     U94(X1, mark X2, X3) -> U94(X1, X2, X3),
                   U94(X1, active X2, X3) -> U94(X1, X2, X3),
                     U94(mark X1, X2, X3) -> U94(X1, X2, X3),
                   U94(active X1, X2, X3) -> U94(X1, X2, X3),
                         U95(X1, mark X2) -> U95(X1, X2),
                       U95(X1, active X2) -> U95(X1, X2),
                         U95(mark X1, X2) -> U95(X1, X2),
                       U95(active X1, X2) -> U95(X1, X2),
                               U96 mark X -> U96 X,
                             U96 active X -> U96 X
      }
      Open
     
     SCC (8):
      Strict:
       {  U131#(X1, X2, X3, mark X4) -> U131#(X1, X2, X3, X4),
        U131#(X1, X2, X3, active X4) -> U131#(X1, X2, X3, X4),
          U131#(X1, X2, mark X3, X4) -> U131#(X1, X2, X3, X4),
        U131#(X1, X2, active X3, X4) -> U131#(X1, X2, X3, X4),
          U131#(X1, mark X2, X3, X4) -> U131#(X1, X2, X3, X4),
        U131#(X1, active X2, X3, X4) -> U131#(X1, X2, X3, X4),
          U131#(mark X1, X2, X3, X4) -> U131#(X1, X2, X3, X4),
        U131#(active X1, X2, X3, X4) -> U131#(X1, X2, X3, X4)}
      Weak:
      {
                        mark cons(X1, X2) -> active cons(mark X1, X2),
                                 mark 0() -> active 0(),
                             mark zeros() -> active zeros(),
                    mark U102(X1, X2, X3) -> active U102(mark X1, X2, X3),
                         mark isNatKind X -> active isNatKind X,
                    mark U101(X1, X2, X3) -> active U101(mark X1, X2, X3),
                                mark tt() -> active tt(),
                    mark U103(X1, X2, X3) -> active U103(mark X1, X2, X3),
                    mark isNatIListKind X -> active isNatIListKind X,
                    mark U104(X1, X2, X3) -> active U104(mark X1, X2, X3),
                        mark U105(X1, X2) -> active U105(mark X1, X2),
                             mark isNat X -> active isNat X,
                              mark U106 X -> active U106 mark X,
                        mark isNatIList X -> active isNatIList X,
                         mark U12(X1, X2) -> active U12(mark X1, X2),
                         mark U11(X1, X2) -> active U11(mark X1, X2),
                    mark U112(X1, X2, X3) -> active U112(mark X1, X2, X3),
                    mark U111(X1, X2, X3) -> active U111(mark X1, X2, X3),
                    mark U113(X1, X2, X3) -> active U113(mark X1, X2, X3),
                        mark U114(X1, X2) -> active U114(mark X1, X2),
                                 mark s X -> active s mark X,
                            mark length X -> active length mark X,
                               mark U13 X -> active U13 mark X,
                         mark isNatList X -> active isNatList X,
                              mark U122 X -> active U122 mark X,
                        mark U121(X1, X2) -> active U121(mark X1, X2),
                               mark nil() -> active nil(),
                mark U132(X1, X2, X3, X4) -> active U132(mark X1, X2, X3, X4),
                mark U131(X1, X2, X3, X4) -> active U131(mark X1, X2, X3, X4),
                mark U133(X1, X2, X3, X4) -> active U133(mark X1, X2, X3, X4),
                mark U134(X1, X2, X3, X4) -> active U134(mark X1, X2, X3, X4),
                mark U135(X1, X2, X3, X4) -> active U135(mark X1, X2, X3, X4),
                mark U136(X1, X2, X3, X4) -> active U136(mark X1, X2, X3, X4),
                        mark take(X1, X2) -> active take(mark X1, mark X2),
                         mark U22(X1, X2) -> active U22(mark X1, X2),
                         mark U21(X1, X2) -> active U21(mark X1, X2),
                               mark U23 X -> active U23 mark X,
                         mark U32(X1, X2) -> active U32(mark X1, X2),
                         mark U31(X1, X2) -> active U31(mark X1, X2),
                               mark U33 X -> active U33 mark X,
                     mark U42(X1, X2, X3) -> active U42(mark X1, X2, X3),
                     mark U41(X1, X2, X3) -> active U41(mark X1, X2, X3),
                     mark U43(X1, X2, X3) -> active U43(mark X1, X2, X3),
                     mark U44(X1, X2, X3) -> active U44(mark X1, X2, X3),
                         mark U45(X1, X2) -> active U45(mark X1, X2),
                               mark U46 X -> active U46 mark X,
                               mark U52 X -> active U52 mark X,
                         mark U51(X1, X2) -> active U51(mark X1, X2),
                               mark U62 X -> active U62 mark X,
                         mark U61(X1, X2) -> active U61(mark X1, X2),
                               mark U71 X -> active U71 mark X,
                               mark U81 X -> active U81 mark X,
                     mark U92(X1, X2, X3) -> active U92(mark X1, X2, X3),
                     mark U91(X1, X2, X3) -> active U91(mark X1, X2, X3),
                     mark U93(X1, X2, X3) -> active U93(mark X1, X2, X3),
                     mark U94(X1, X2, X3) -> active U94(mark X1, X2, X3),
                         mark U95(X1, X2) -> active U95(mark X1, X2),
                               mark U96 X -> active U96 mark X,
                        cons(X1, mark X2) -> cons(X1, X2),
                      cons(X1, active X2) -> cons(X1, X2),
                        cons(mark X1, X2) -> cons(X1, X2),
                      cons(active X1, X2) -> cons(X1, X2),
                           active zeros() -> mark cons(0(), zeros()),
                active U102(tt(), V1, V2) -> mark U103(isNatIListKind V2, V1, V2),
                     active isNatKind 0() -> mark tt(),
                    active isNatKind s V1 -> mark U81 isNatKind V1,
               active isNatKind length V1 -> mark U71 isNatIListKind V1,
                active U101(tt(), V1, V2) -> mark U102(isNatKind V1, V1, V2),
                active U103(tt(), V1, V2) -> mark U104(isNatIListKind V2, V1, V2),
       active isNatIListKind cons(V1, V2) -> mark U51(isNatKind V1, V2),
            active isNatIListKind zeros() -> mark tt(),
              active isNatIListKind nil() -> mark tt(),
       active isNatIListKind take(V1, V2) -> mark U61(isNatKind V1, V2),
                active U104(tt(), V1, V2) -> mark U105(isNat V1, V2),
                    active U105(tt(), V2) -> mark U106 isNatIList V2,
                         active isNat 0() -> mark tt(),
                        active isNat s V1 -> mark U21(isNatKind V1, V1),
                   active isNat length V1 -> mark U11(isNatIListKind V1, V1),
                         active U106 tt() -> mark tt(),
                      active isNatIList V -> mark U31(isNatIListKind V, V),
           active isNatIList cons(V1, V2) -> mark U41(isNatKind V1, V1, V2),
                active isNatIList zeros() -> mark tt(),
                     active U12(tt(), V1) -> mark U13 isNatList V1,
                     active U11(tt(), V1) -> mark U12(isNatIListKind V1, V1),
                  active U112(tt(), L, N) -> mark U113(isNat N, L, N),
                  active U111(tt(), L, N) -> mark U112(isNatIListKind L, L, N),
                  active U113(tt(), L, N) -> mark U114(isNatKind N, L),
                     active U114(tt(), L) -> mark s length L,
                 active length cons(N, L) -> mark U111(isNatList L, L, N),
                      active length nil() -> mark 0(),
                          active U13 tt() -> mark tt(),
            active isNatList cons(V1, V2) -> mark U91(isNatKind V1, V1, V2),
                   active isNatList nil() -> mark tt(),
            active isNatList take(V1, V2) -> mark U101(isNatKind V1, V1, V2),
                         active U122 tt() -> mark nil(),
                    active U121(tt(), IL) -> mark U122 isNatIListKind IL,
              active U132(tt(), IL, M, N) -> mark U133(isNat M, IL, M, N),
              active U131(tt(), IL, M, N) -> mark U132(isNatIListKind IL, IL, M, N),
              active U133(tt(), IL, M, N) -> mark U134(isNatKind M, IL, M, N),
              active U134(tt(), IL, M, N) -> mark U135(isNat N, IL, M, N),
              active U135(tt(), IL, M, N) -> mark U136(isNatKind N, IL, M, N),
              active U136(tt(), IL, M, N) -> mark cons(N, take(M, IL)),
                     active take(0(), IL) -> mark U121(isNatIList IL, IL),
            active take(s M, cons(N, IL)) -> mark U131(isNatIList IL, IL, M, N),
                     active U22(tt(), V1) -> mark U23 isNat V1,
                     active U21(tt(), V1) -> mark U22(isNatKind V1, V1),
                          active U23 tt() -> mark tt(),
                      active U32(tt(), V) -> mark U33 isNatList V,
                      active U31(tt(), V) -> mark U32(isNatIListKind V, V),
                          active U33 tt() -> mark tt(),
                 active U42(tt(), V1, V2) -> mark U43(isNatIListKind V2, V1, V2),
                 active U41(tt(), V1, V2) -> mark U42(isNatKind V1, V1, V2),
                 active U43(tt(), V1, V2) -> mark U44(isNatIListKind V2, V1, V2),
                 active U44(tt(), V1, V2) -> mark U45(isNat V1, V2),
                     active U45(tt(), V2) -> mark U46 isNatIList V2,
                          active U46 tt() -> mark tt(),
                          active U52 tt() -> mark tt(),
                     active U51(tt(), V2) -> mark U52 isNatIListKind V2,
                          active U62 tt() -> mark tt(),
                     active U61(tt(), V2) -> mark U62 isNatIListKind V2,
                          active U71 tt() -> mark tt(),
                          active U81 tt() -> mark tt(),
                 active U92(tt(), V1, V2) -> mark U93(isNatIListKind V2, V1, V2),
                 active U91(tt(), V1, V2) -> mark U92(isNatKind V1, V1, V2),
                 active U93(tt(), V1, V2) -> mark U94(isNatIListKind V2, V1, V2),
                 active U94(tt(), V1, V2) -> mark U95(isNat V1, V2),
                     active U95(tt(), V2) -> mark U96 isNatList V2,
                          active U96 tt() -> mark tt(),
                    U102(X1, X2, mark X3) -> U102(X1, X2, X3),
                  U102(X1, X2, active X3) -> U102(X1, X2, X3),
                    U102(X1, mark X2, X3) -> U102(X1, X2, X3),
                  U102(X1, active X2, X3) -> U102(X1, X2, X3),
                    U102(mark X1, X2, X3) -> U102(X1, X2, X3),
                  U102(active X1, X2, X3) -> U102(X1, X2, X3),
                         isNatKind mark X -> isNatKind X,
                       isNatKind active X -> isNatKind X,
                    U101(X1, X2, mark X3) -> U101(X1, X2, X3),
                  U101(X1, X2, active X3) -> U101(X1, X2, X3),
                    U101(X1, mark X2, X3) -> U101(X1, X2, X3),
                  U101(X1, active X2, X3) -> U101(X1, X2, X3),
                    U101(mark X1, X2, X3) -> U101(X1, X2, X3),
                  U101(active X1, X2, X3) -> U101(X1, X2, X3),
                    U103(X1, X2, mark X3) -> U103(X1, X2, X3),
                  U103(X1, X2, active X3) -> U103(X1, X2, X3),
                    U103(X1, mark X2, X3) -> U103(X1, X2, X3),
                  U103(X1, active X2, X3) -> U103(X1, X2, X3),
                    U103(mark X1, X2, X3) -> U103(X1, X2, X3),
                  U103(active X1, X2, X3) -> U103(X1, X2, X3),
                    isNatIListKind mark X -> isNatIListKind X,
                  isNatIListKind active X -> isNatIListKind X,
                    U104(X1, X2, mark X3) -> U104(X1, X2, X3),
                  U104(X1, X2, active X3) -> U104(X1, X2, X3),
                    U104(X1, mark X2, X3) -> U104(X1, X2, X3),
                  U104(X1, active X2, X3) -> U104(X1, X2, X3),
                    U104(mark X1, X2, X3) -> U104(X1, X2, X3),
                  U104(active X1, X2, X3) -> U104(X1, X2, X3),
                        U105(X1, mark X2) -> U105(X1, X2),
                      U105(X1, active X2) -> U105(X1, X2),
                        U105(mark X1, X2) -> U105(X1, X2),
                      U105(active X1, X2) -> U105(X1, X2),
                             isNat mark X -> isNat X,
                           isNat active X -> isNat X,
                              U106 mark X -> U106 X,
                            U106 active X -> U106 X,
                        isNatIList mark X -> isNatIList X,
                      isNatIList active X -> isNatIList X,
                         U12(X1, mark X2) -> U12(X1, X2),
                       U12(X1, active X2) -> U12(X1, X2),
                         U12(mark X1, X2) -> U12(X1, X2),
                       U12(active X1, X2) -> U12(X1, X2),
                         U11(X1, mark X2) -> U11(X1, X2),
                       U11(X1, active X2) -> U11(X1, X2),
                         U11(mark X1, X2) -> U11(X1, X2),
                       U11(active X1, X2) -> U11(X1, X2),
                    U112(X1, X2, mark X3) -> U112(X1, X2, X3),
                  U112(X1, X2, active X3) -> U112(X1, X2, X3),
                    U112(X1, mark X2, X3) -> U112(X1, X2, X3),
                  U112(X1, active X2, X3) -> U112(X1, X2, X3),
                    U112(mark X1, X2, X3) -> U112(X1, X2, X3),
                  U112(active X1, X2, X3) -> U112(X1, X2, X3),
                    U111(X1, X2, mark X3) -> U111(X1, X2, X3),
                  U111(X1, X2, active X3) -> U111(X1, X2, X3),
                    U111(X1, mark X2, X3) -> U111(X1, X2, X3),
                  U111(X1, active X2, X3) -> U111(X1, X2, X3),
                    U111(mark X1, X2, X3) -> U111(X1, X2, X3),
                  U111(active X1, X2, X3) -> U111(X1, X2, X3),
                    U113(X1, X2, mark X3) -> U113(X1, X2, X3),
                  U113(X1, X2, active X3) -> U113(X1, X2, X3),
                    U113(X1, mark X2, X3) -> U113(X1, X2, X3),
                  U113(X1, active X2, X3) -> U113(X1, X2, X3),
                    U113(mark X1, X2, X3) -> U113(X1, X2, X3),
                  U113(active X1, X2, X3) -> U113(X1, X2, X3),
                        U114(X1, mark X2) -> U114(X1, X2),
                      U114(X1, active X2) -> U114(X1, X2),
                        U114(mark X1, X2) -> U114(X1, X2),
                      U114(active X1, X2) -> U114(X1, X2),
                                 s mark X -> s X,
                               s active X -> s X,
                            length mark X -> length X,
                          length active X -> length X,
                               U13 mark X -> U13 X,
                             U13 active X -> U13 X,
                         isNatList mark X -> isNatList X,
                       isNatList active X -> isNatList X,
                              U122 mark X -> U122 X,
                            U122 active X -> U122 X,
                        U121(X1, mark X2) -> U121(X1, X2),
                      U121(X1, active X2) -> U121(X1, X2),
                        U121(mark X1, X2) -> U121(X1, X2),
                      U121(active X1, X2) -> U121(X1, X2),
                U132(X1, X2, X3, mark X4) -> U132(X1, X2, X3, X4),
              U132(X1, X2, X3, active X4) -> U132(X1, X2, X3, X4),
                U132(X1, X2, mark X3, X4) -> U132(X1, X2, X3, X4),
              U132(X1, X2, active X3, X4) -> U132(X1, X2, X3, X4),
                U132(X1, mark X2, X3, X4) -> U132(X1, X2, X3, X4),
              U132(X1, active X2, X3, X4) -> U132(X1, X2, X3, X4),
                U132(mark X1, X2, X3, X4) -> U132(X1, X2, X3, X4),
              U132(active X1, X2, X3, X4) -> U132(X1, X2, X3, X4),
                U131(X1, X2, X3, mark X4) -> U131(X1, X2, X3, X4),
              U131(X1, X2, X3, active X4) -> U131(X1, X2, X3, X4),
                U131(X1, X2, mark X3, X4) -> U131(X1, X2, X3, X4),
              U131(X1, X2, active X3, X4) -> U131(X1, X2, X3, X4),
                U131(X1, mark X2, X3, X4) -> U131(X1, X2, X3, X4),
              U131(X1, active X2, X3, X4) -> U131(X1, X2, X3, X4),
                U131(mark X1, X2, X3, X4) -> U131(X1, X2, X3, X4),
              U131(active X1, X2, X3, X4) -> U131(X1, X2, X3, X4),
                U133(X1, X2, X3, mark X4) -> U133(X1, X2, X3, X4),
              U133(X1, X2, X3, active X4) -> U133(X1, X2, X3, X4),
                U133(X1, X2, mark X3, X4) -> U133(X1, X2, X3, X4),
              U133(X1, X2, active X3, X4) -> U133(X1, X2, X3, X4),
                U133(X1, mark X2, X3, X4) -> U133(X1, X2, X3, X4),
              U133(X1, active X2, X3, X4) -> U133(X1, X2, X3, X4),
                U133(mark X1, X2, X3, X4) -> U133(X1, X2, X3, X4),
              U133(active X1, X2, X3, X4) -> U133(X1, X2, X3, X4),
                U134(X1, X2, X3, mark X4) -> U134(X1, X2, X3, X4),
              U134(X1, X2, X3, active X4) -> U134(X1, X2, X3, X4),
                U134(X1, X2, mark X3, X4) -> U134(X1, X2, X3, X4),
              U134(X1, X2, active X3, X4) -> U134(X1, X2, X3, X4),
                U134(X1, mark X2, X3, X4) -> U134(X1, X2, X3, X4),
              U134(X1, active X2, X3, X4) -> U134(X1, X2, X3, X4),
                U134(mark X1, X2, X3, X4) -> U134(X1, X2, X3, X4),
              U134(active X1, X2, X3, X4) -> U134(X1, X2, X3, X4),
                U135(X1, X2, X3, mark X4) -> U135(X1, X2, X3, X4),
              U135(X1, X2, X3, active X4) -> U135(X1, X2, X3, X4),
                U135(X1, X2, mark X3, X4) -> U135(X1, X2, X3, X4),
              U135(X1, X2, active X3, X4) -> U135(X1, X2, X3, X4),
                U135(X1, mark X2, X3, X4) -> U135(X1, X2, X3, X4),
              U135(X1, active X2, X3, X4) -> U135(X1, X2, X3, X4),
                U135(mark X1, X2, X3, X4) -> U135(X1, X2, X3, X4),
              U135(active X1, X2, X3, X4) -> U135(X1, X2, X3, X4),
                U136(X1, X2, X3, mark X4) -> U136(X1, X2, X3, X4),
              U136(X1, X2, X3, active X4) -> U136(X1, X2, X3, X4),
                U136(X1, X2, mark X3, X4) -> U136(X1, X2, X3, X4),
              U136(X1, X2, active X3, X4) -> U136(X1, X2, X3, X4),
                U136(X1, mark X2, X3, X4) -> U136(X1, X2, X3, X4),
              U136(X1, active X2, X3, X4) -> U136(X1, X2, X3, X4),
                U136(mark X1, X2, X3, X4) -> U136(X1, X2, X3, X4),
              U136(active X1, X2, X3, X4) -> U136(X1, X2, X3, X4),
                        take(X1, mark X2) -> take(X1, X2),
                      take(X1, active X2) -> take(X1, X2),
                        take(mark X1, X2) -> take(X1, X2),
                      take(active X1, X2) -> take(X1, X2),
                         U22(X1, mark X2) -> U22(X1, X2),
                       U22(X1, active X2) -> U22(X1, X2),
                         U22(mark X1, X2) -> U22(X1, X2),
                       U22(active X1, X2) -> U22(X1, X2),
                         U21(X1, mark X2) -> U21(X1, X2),
                       U21(X1, active X2) -> U21(X1, X2),
                         U21(mark X1, X2) -> U21(X1, X2),
                       U21(active X1, X2) -> U21(X1, X2),
                               U23 mark X -> U23 X,
                             U23 active X -> U23 X,
                         U32(X1, mark X2) -> U32(X1, X2),
                       U32(X1, active X2) -> U32(X1, X2),
                         U32(mark X1, X2) -> U32(X1, X2),
                       U32(active X1, X2) -> U32(X1, X2),
                         U31(X1, mark X2) -> U31(X1, X2),
                       U31(X1, active X2) -> U31(X1, X2),
                         U31(mark X1, X2) -> U31(X1, X2),
                       U31(active X1, X2) -> U31(X1, X2),
                               U33 mark X -> U33 X,
                             U33 active X -> U33 X,
                     U42(X1, X2, mark X3) -> U42(X1, X2, X3),
                   U42(X1, X2, active X3) -> U42(X1, X2, X3),
                     U42(X1, mark X2, X3) -> U42(X1, X2, X3),
                   U42(X1, active X2, X3) -> U42(X1, X2, X3),
                     U42(mark X1, X2, X3) -> U42(X1, X2, X3),
                   U42(active X1, X2, X3) -> U42(X1, X2, X3),
                     U41(X1, X2, mark X3) -> U41(X1, X2, X3),
                   U41(X1, X2, active X3) -> U41(X1, X2, X3),
                     U41(X1, mark X2, X3) -> U41(X1, X2, X3),
                   U41(X1, active X2, X3) -> U41(X1, X2, X3),
                     U41(mark X1, X2, X3) -> U41(X1, X2, X3),
                   U41(active X1, X2, X3) -> U41(X1, X2, X3),
                     U43(X1, X2, mark X3) -> U43(X1, X2, X3),
                   U43(X1, X2, active X3) -> U43(X1, X2, X3),
                     U43(X1, mark X2, X3) -> U43(X1, X2, X3),
                   U43(X1, active X2, X3) -> U43(X1, X2, X3),
                     U43(mark X1, X2, X3) -> U43(X1, X2, X3),
                   U43(active X1, X2, X3) -> U43(X1, X2, X3),
                     U44(X1, X2, mark X3) -> U44(X1, X2, X3),
                   U44(X1, X2, active X3) -> U44(X1, X2, X3),
                     U44(X1, mark X2, X3) -> U44(X1, X2, X3),
                   U44(X1, active X2, X3) -> U44(X1, X2, X3),
                     U44(mark X1, X2, X3) -> U44(X1, X2, X3),
                   U44(active X1, X2, X3) -> U44(X1, X2, X3),
                         U45(X1, mark X2) -> U45(X1, X2),
                       U45(X1, active X2) -> U45(X1, X2),
                         U45(mark X1, X2) -> U45(X1, X2),
                       U45(active X1, X2) -> U45(X1, X2),
                               U46 mark X -> U46 X,
                             U46 active X -> U46 X,
                               U52 mark X -> U52 X,
                             U52 active X -> U52 X,
                         U51(X1, mark X2) -> U51(X1, X2),
                       U51(X1, active X2) -> U51(X1, X2),
                         U51(mark X1, X2) -> U51(X1, X2),
                       U51(active X1, X2) -> U51(X1, X2),
                               U62 mark X -> U62 X,
                             U62 active X -> U62 X,
                         U61(X1, mark X2) -> U61(X1, X2),
                       U61(X1, active X2) -> U61(X1, X2),
                         U61(mark X1, X2) -> U61(X1, X2),
                       U61(active X1, X2) -> U61(X1, X2),
                               U71 mark X -> U71 X,
                             U71 active X -> U71 X,
                               U81 mark X -> U81 X,
                             U81 active X -> U81 X,
                     U92(X1, X2, mark X3) -> U92(X1, X2, X3),
                   U92(X1, X2, active X3) -> U92(X1, X2, X3),
                     U92(X1, mark X2, X3) -> U92(X1, X2, X3),
                   U92(X1, active X2, X3) -> U92(X1, X2, X3),
                     U92(mark X1, X2, X3) -> U92(X1, X2, X3),
                   U92(active X1, X2, X3) -> U92(X1, X2, X3),
                     U91(X1, X2, mark X3) -> U91(X1, X2, X3),
                   U91(X1, X2, active X3) -> U91(X1, X2, X3),
                     U91(X1, mark X2, X3) -> U91(X1, X2, X3),
                   U91(X1, active X2, X3) -> U91(X1, X2, X3),
                     U91(mark X1, X2, X3) -> U91(X1, X2, X3),
                   U91(active X1, X2, X3) -> U91(X1, X2, X3),
                     U93(X1, X2, mark X3) -> U93(X1, X2, X3),
                   U93(X1, X2, active X3) -> U93(X1, X2, X3),
                     U93(X1, mark X2, X3) -> U93(X1, X2, X3),
                   U93(X1, active X2, X3) -> U93(X1, X2, X3),
                     U93(mark X1, X2, X3) -> U93(X1, X2, X3),
                   U93(active X1, X2, X3) -> U93(X1, X2, X3),
                     U94(X1, X2, mark X3) -> U94(X1, X2, X3),
                   U94(X1, X2, active X3) -> U94(X1, X2, X3),
                     U94(X1, mark X2, X3) -> U94(X1, X2, X3),
                   U94(X1, active X2, X3) -> U94(X1, X2, X3),
                     U94(mark X1, X2, X3) -> U94(X1, X2, X3),
                   U94(active X1, X2, X3) -> U94(X1, X2, X3),
                         U95(X1, mark X2) -> U95(X1, X2),
                       U95(X1, active X2) -> U95(X1, X2),
                         U95(mark X1, X2) -> U95(X1, X2),
                       U95(active X1, X2) -> U95(X1, X2),
                               U96 mark X -> U96 X,
                             U96 active X -> U96 X
      }
      Open
     
     
     
     SCC (8):
      Strict:
       {  U132#(X1, X2, X3, mark X4) -> U132#(X1, X2, X3, X4),
        U132#(X1, X2, X3, active X4) -> U132#(X1, X2, X3, X4),
          U132#(X1, X2, mark X3, X4) -> U132#(X1, X2, X3, X4),
        U132#(X1, X2, active X3, X4) -> U132#(X1, X2, X3, X4),
          U132#(X1, mark X2, X3, X4) -> U132#(X1, X2, X3, X4),
        U132#(X1, active X2, X3, X4) -> U132#(X1, X2, X3, X4),
          U132#(mark X1, X2, X3, X4) -> U132#(X1, X2, X3, X4),
        U132#(active X1, X2, X3, X4) -> U132#(X1, X2, X3, X4)}
      Weak:
      {
                        mark cons(X1, X2) -> active cons(mark X1, X2),
                                 mark 0() -> active 0(),
                             mark zeros() -> active zeros(),
                    mark U102(X1, X2, X3) -> active U102(mark X1, X2, X3),
                         mark isNatKind X -> active isNatKind X,
                    mark U101(X1, X2, X3) -> active U101(mark X1, X2, X3),
                                mark tt() -> active tt(),
                    mark U103(X1, X2, X3) -> active U103(mark X1, X2, X3),
                    mark isNatIListKind X -> active isNatIListKind X,
                    mark U104(X1, X2, X3) -> active U104(mark X1, X2, X3),
                        mark U105(X1, X2) -> active U105(mark X1, X2),
                             mark isNat X -> active isNat X,
                              mark U106 X -> active U106 mark X,
                        mark isNatIList X -> active isNatIList X,
                         mark U12(X1, X2) -> active U12(mark X1, X2),
                         mark U11(X1, X2) -> active U11(mark X1, X2),
                    mark U112(X1, X2, X3) -> active U112(mark X1, X2, X3),
                    mark U111(X1, X2, X3) -> active U111(mark X1, X2, X3),
                    mark U113(X1, X2, X3) -> active U113(mark X1, X2, X3),
                        mark U114(X1, X2) -> active U114(mark X1, X2),
                                 mark s X -> active s mark X,
                            mark length X -> active length mark X,
                               mark U13 X -> active U13 mark X,
                         mark isNatList X -> active isNatList X,
                              mark U122 X -> active U122 mark X,
                        mark U121(X1, X2) -> active U121(mark X1, X2),
                               mark nil() -> active nil(),
                mark U132(X1, X2, X3, X4) -> active U132(mark X1, X2, X3, X4),
                mark U131(X1, X2, X3, X4) -> active U131(mark X1, X2, X3, X4),
                mark U133(X1, X2, X3, X4) -> active U133(mark X1, X2, X3, X4),
                mark U134(X1, X2, X3, X4) -> active U134(mark X1, X2, X3, X4),
                mark U135(X1, X2, X3, X4) -> active U135(mark X1, X2, X3, X4),
                mark U136(X1, X2, X3, X4) -> active U136(mark X1, X2, X3, X4),
                        mark take(X1, X2) -> active take(mark X1, mark X2),
                         mark U22(X1, X2) -> active U22(mark X1, X2),
                         mark U21(X1, X2) -> active U21(mark X1, X2),
                               mark U23 X -> active U23 mark X,
                         mark U32(X1, X2) -> active U32(mark X1, X2),
                         mark U31(X1, X2) -> active U31(mark X1, X2),
                               mark U33 X -> active U33 mark X,
                     mark U42(X1, X2, X3) -> active U42(mark X1, X2, X3),
                     mark U41(X1, X2, X3) -> active U41(mark X1, X2, X3),
                     mark U43(X1, X2, X3) -> active U43(mark X1, X2, X3),
                     mark U44(X1, X2, X3) -> active U44(mark X1, X2, X3),
                         mark U45(X1, X2) -> active U45(mark X1, X2),
                               mark U46 X -> active U46 mark X,
                               mark U52 X -> active U52 mark X,
                         mark U51(X1, X2) -> active U51(mark X1, X2),
                               mark U62 X -> active U62 mark X,
                         mark U61(X1, X2) -> active U61(mark X1, X2),
                               mark U71 X -> active U71 mark X,
                               mark U81 X -> active U81 mark X,
                     mark U92(X1, X2, X3) -> active U92(mark X1, X2, X3),
                     mark U91(X1, X2, X3) -> active U91(mark X1, X2, X3),
                     mark U93(X1, X2, X3) -> active U93(mark X1, X2, X3),
                     mark U94(X1, X2, X3) -> active U94(mark X1, X2, X3),
                         mark U95(X1, X2) -> active U95(mark X1, X2),
                               mark U96 X -> active U96 mark X,
                        cons(X1, mark X2) -> cons(X1, X2),
                      cons(X1, active X2) -> cons(X1, X2),
                        cons(mark X1, X2) -> cons(X1, X2),
                      cons(active X1, X2) -> cons(X1, X2),
                           active zeros() -> mark cons(0(), zeros()),
                active U102(tt(), V1, V2) -> mark U103(isNatIListKind V2, V1, V2),
                     active isNatKind 0() -> mark tt(),
                    active isNatKind s V1 -> mark U81 isNatKind V1,
               active isNatKind length V1 -> mark U71 isNatIListKind V1,
                active U101(tt(), V1, V2) -> mark U102(isNatKind V1, V1, V2),
                active U103(tt(), V1, V2) -> mark U104(isNatIListKind V2, V1, V2),
       active isNatIListKind cons(V1, V2) -> mark U51(isNatKind V1, V2),
            active isNatIListKind zeros() -> mark tt(),
              active isNatIListKind nil() -> mark tt(),
       active isNatIListKind take(V1, V2) -> mark U61(isNatKind V1, V2),
                active U104(tt(), V1, V2) -> mark U105(isNat V1, V2),
                    active U105(tt(), V2) -> mark U106 isNatIList V2,
                         active isNat 0() -> mark tt(),
                        active isNat s V1 -> mark U21(isNatKind V1, V1),
                   active isNat length V1 -> mark U11(isNatIListKind V1, V1),
                         active U106 tt() -> mark tt(),
                      active isNatIList V -> mark U31(isNatIListKind V, V),
           active isNatIList cons(V1, V2) -> mark U41(isNatKind V1, V1, V2),
                active isNatIList zeros() -> mark tt(),
                     active U12(tt(), V1) -> mark U13 isNatList V1,
                     active U11(tt(), V1) -> mark U12(isNatIListKind V1, V1),
                  active U112(tt(), L, N) -> mark U113(isNat N, L, N),
                  active U111(tt(), L, N) -> mark U112(isNatIListKind L, L, N),
                  active U113(tt(), L, N) -> mark U114(isNatKind N, L),
                     active U114(tt(), L) -> mark s length L,
                 active length cons(N, L) -> mark U111(isNatList L, L, N),
                      active length nil() -> mark 0(),
                          active U13 tt() -> mark tt(),
            active isNatList cons(V1, V2) -> mark U91(isNatKind V1, V1, V2),
                   active isNatList nil() -> mark tt(),
            active isNatList take(V1, V2) -> mark U101(isNatKind V1, V1, V2),
                         active U122 tt() -> mark nil(),
                    active U121(tt(), IL) -> mark U122 isNatIListKind IL,
              active U132(tt(), IL, M, N) -> mark U133(isNat M, IL, M, N),
              active U131(tt(), IL, M, N) -> mark U132(isNatIListKind IL, IL, M, N),
              active U133(tt(), IL, M, N) -> mark U134(isNatKind M, IL, M, N),
              active U134(tt(), IL, M, N) -> mark U135(isNat N, IL, M, N),
              active U135(tt(), IL, M, N) -> mark U136(isNatKind N, IL, M, N),
              active U136(tt(), IL, M, N) -> mark cons(N, take(M, IL)),
                     active take(0(), IL) -> mark U121(isNatIList IL, IL),
            active take(s M, cons(N, IL)) -> mark U131(isNatIList IL, IL, M, N),
                     active U22(tt(), V1) -> mark U23 isNat V1,
                     active U21(tt(), V1) -> mark U22(isNatKind V1, V1),
                          active U23 tt() -> mark tt(),
                      active U32(tt(), V) -> mark U33 isNatList V,
                      active U31(tt(), V) -> mark U32(isNatIListKind V, V),
                          active U33 tt() -> mark tt(),
                 active U42(tt(), V1, V2) -> mark U43(isNatIListKind V2, V1, V2),
                 active U41(tt(), V1, V2) -> mark U42(isNatKind V1, V1, V2),
                 active U43(tt(), V1, V2) -> mark U44(isNatIListKind V2, V1, V2),
                 active U44(tt(), V1, V2) -> mark U45(isNat V1, V2),
                     active U45(tt(), V2) -> mark U46 isNatIList V2,
                          active U46 tt() -> mark tt(),
                          active U52 tt() -> mark tt(),
                     active U51(tt(), V2) -> mark U52 isNatIListKind V2,
                          active U62 tt() -> mark tt(),
                     active U61(tt(), V2) -> mark U62 isNatIListKind V2,
                          active U71 tt() -> mark tt(),
                          active U81 tt() -> mark tt(),
                 active U92(tt(), V1, V2) -> mark U93(isNatIListKind V2, V1, V2),
                 active U91(tt(), V1, V2) -> mark U92(isNatKind V1, V1, V2),
                 active U93(tt(), V1, V2) -> mark U94(isNatIListKind V2, V1, V2),
                 active U94(tt(), V1, V2) -> mark U95(isNat V1, V2),
                     active U95(tt(), V2) -> mark U96 isNatList V2,
                          active U96 tt() -> mark tt(),
                    U102(X1, X2, mark X3) -> U102(X1, X2, X3),
                  U102(X1, X2, active X3) -> U102(X1, X2, X3),
                    U102(X1, mark X2, X3) -> U102(X1, X2, X3),
                  U102(X1, active X2, X3) -> U102(X1, X2, X3),
                    U102(mark X1, X2, X3) -> U102(X1, X2, X3),
                  U102(active X1, X2, X3) -> U102(X1, X2, X3),
                         isNatKind mark X -> isNatKind X,
                       isNatKind active X -> isNatKind X,
                    U101(X1, X2, mark X3) -> U101(X1, X2, X3),
                  U101(X1, X2, active X3) -> U101(X1, X2, X3),
                    U101(X1, mark X2, X3) -> U101(X1, X2, X3),
                  U101(X1, active X2, X3) -> U101(X1, X2, X3),
                    U101(mark X1, X2, X3) -> U101(X1, X2, X3),
                  U101(active X1, X2, X3) -> U101(X1, X2, X3),
                    U103(X1, X2, mark X3) -> U103(X1, X2, X3),
                  U103(X1, X2, active X3) -> U103(X1, X2, X3),
                    U103(X1, mark X2, X3) -> U103(X1, X2, X3),
                  U103(X1, active X2, X3) -> U103(X1, X2, X3),
                    U103(mark X1, X2, X3) -> U103(X1, X2, X3),
                  U103(active X1, X2, X3) -> U103(X1, X2, X3),
                    isNatIListKind mark X -> isNatIListKind X,
                  isNatIListKind active X -> isNatIListKind X,
                    U104(X1, X2, mark X3) -> U104(X1, X2, X3),
                  U104(X1, X2, active X3) -> U104(X1, X2, X3),
                    U104(X1, mark X2, X3) -> U104(X1, X2, X3),
                  U104(X1, active X2, X3) -> U104(X1, X2, X3),
                    U104(mark X1, X2, X3) -> U104(X1, X2, X3),
                  U104(active X1, X2, X3) -> U104(X1, X2, X3),
                        U105(X1, mark X2) -> U105(X1, X2),
                      U105(X1, active X2) -> U105(X1, X2),
                        U105(mark X1, X2) -> U105(X1, X2),
                      U105(active X1, X2) -> U105(X1, X2),
                             isNat mark X -> isNat X,
                           isNat active X -> isNat X,
                              U106 mark X -> U106 X,
                            U106 active X -> U106 X,
                        isNatIList mark X -> isNatIList X,
                      isNatIList active X -> isNatIList X,
                         U12(X1, mark X2) -> U12(X1, X2),
                       U12(X1, active X2) -> U12(X1, X2),
                         U12(mark X1, X2) -> U12(X1, X2),
                       U12(active X1, X2) -> U12(X1, X2),
                         U11(X1, mark X2) -> U11(X1, X2),
                       U11(X1, active X2) -> U11(X1, X2),
                         U11(mark X1, X2) -> U11(X1, X2),
                       U11(active X1, X2) -> U11(X1, X2),
                    U112(X1, X2, mark X3) -> U112(X1, X2, X3),
                  U112(X1, X2, active X3) -> U112(X1, X2, X3),
                    U112(X1, mark X2, X3) -> U112(X1, X2, X3),
                  U112(X1, active X2, X3) -> U112(X1, X2, X3),
                    U112(mark X1, X2, X3) -> U112(X1, X2, X3),
                  U112(active X1, X2, X3) -> U112(X1, X2, X3),
                    U111(X1, X2, mark X3) -> U111(X1, X2, X3),
                  U111(X1, X2, active X3) -> U111(X1, X2, X3),
                    U111(X1, mark X2, X3) -> U111(X1, X2, X3),
                  U111(X1, active X2, X3) -> U111(X1, X2, X3),
                    U111(mark X1, X2, X3) -> U111(X1, X2, X3),
                  U111(active X1, X2, X3) -> U111(X1, X2, X3),
                    U113(X1, X2, mark X3) -> U113(X1, X2, X3),
                  U113(X1, X2, active X3) -> U113(X1, X2, X3),
                    U113(X1, mark X2, X3) -> U113(X1, X2, X3),
                  U113(X1, active X2, X3) -> U113(X1, X2, X3),
                    U113(mark X1, X2, X3) -> U113(X1, X2, X3),
                  U113(active X1, X2, X3) -> U113(X1, X2, X3),
                        U114(X1, mark X2) -> U114(X1, X2),
                      U114(X1, active X2) -> U114(X1, X2),
                        U114(mark X1, X2) -> U114(X1, X2),
                      U114(active X1, X2) -> U114(X1, X2),
                                 s mark X -> s X,
                               s active X -> s X,
                            length mark X -> length X,
                          length active X -> length X,
                               U13 mark X -> U13 X,
                             U13 active X -> U13 X,
                         isNatList mark X -> isNatList X,
                       isNatList active X -> isNatList X,
                              U122 mark X -> U122 X,
                            U122 active X -> U122 X,
                        U121(X1, mark X2) -> U121(X1, X2),
                      U121(X1, active X2) -> U121(X1, X2),
                        U121(mark X1, X2) -> U121(X1, X2),
                      U121(active X1, X2) -> U121(X1, X2),
                U132(X1, X2, X3, mark X4) -> U132(X1, X2, X3, X4),
              U132(X1, X2, X3, active X4) -> U132(X1, X2, X3, X4),
                U132(X1, X2, mark X3, X4) -> U132(X1, X2, X3, X4),
              U132(X1, X2, active X3, X4) -> U132(X1, X2, X3, X4),
                U132(X1, mark X2, X3, X4) -> U132(X1, X2, X3, X4),
              U132(X1, active X2, X3, X4) -> U132(X1, X2, X3, X4),
                U132(mark X1, X2, X3, X4) -> U132(X1, X2, X3, X4),
              U132(active X1, X2, X3, X4) -> U132(X1, X2, X3, X4),
                U131(X1, X2, X3, mark X4) -> U131(X1, X2, X3, X4),
              U131(X1, X2, X3, active X4) -> U131(X1, X2, X3, X4),
                U131(X1, X2, mark X3, X4) -> U131(X1, X2, X3, X4),
              U131(X1, X2, active X3, X4) -> U131(X1, X2, X3, X4),
                U131(X1, mark X2, X3, X4) -> U131(X1, X2, X3, X4),
              U131(X1, active X2, X3, X4) -> U131(X1, X2, X3, X4),
                U131(mark X1, X2, X3, X4) -> U131(X1, X2, X3, X4),
              U131(active X1, X2, X3, X4) -> U131(X1, X2, X3, X4),
                U133(X1, X2, X3, mark X4) -> U133(X1, X2, X3, X4),
              U133(X1, X2, X3, active X4) -> U133(X1, X2, X3, X4),
                U133(X1, X2, mark X3, X4) -> U133(X1, X2, X3, X4),
              U133(X1, X2, active X3, X4) -> U133(X1, X2, X3, X4),
                U133(X1, mark X2, X3, X4) -> U133(X1, X2, X3, X4),
              U133(X1, active X2, X3, X4) -> U133(X1, X2, X3, X4),
                U133(mark X1, X2, X3, X4) -> U133(X1, X2, X3, X4),
              U133(active X1, X2, X3, X4) -> U133(X1, X2, X3, X4),
                U134(X1, X2, X3, mark X4) -> U134(X1, X2, X3, X4),
              U134(X1, X2, X3, active X4) -> U134(X1, X2, X3, X4),
                U134(X1, X2, mark X3, X4) -> U134(X1, X2, X3, X4),
              U134(X1, X2, active X3, X4) -> U134(X1, X2, X3, X4),
                U134(X1, mark X2, X3, X4) -> U134(X1, X2, X3, X4),
              U134(X1, active X2, X3, X4) -> U134(X1, X2, X3, X4),
                U134(mark X1, X2, X3, X4) -> U134(X1, X2, X3, X4),
              U134(active X1, X2, X3, X4) -> U134(X1, X2, X3, X4),
                U135(X1, X2, X3, mark X4) -> U135(X1, X2, X3, X4),
              U135(X1, X2, X3, active X4) -> U135(X1, X2, X3, X4),
                U135(X1, X2, mark X3, X4) -> U135(X1, X2, X3, X4),
              U135(X1, X2, active X3, X4) -> U135(X1, X2, X3, X4),
                U135(X1, mark X2, X3, X4) -> U135(X1, X2, X3, X4),
              U135(X1, active X2, X3, X4) -> U135(X1, X2, X3, X4),
                U135(mark X1, X2, X3, X4) -> U135(X1, X2, X3, X4),
              U135(active X1, X2, X3, X4) -> U135(X1, X2, X3, X4),
                U136(X1, X2, X3, mark X4) -> U136(X1, X2, X3, X4),
              U136(X1, X2, X3, active X4) -> U136(X1, X2, X3, X4),
                U136(X1, X2, mark X3, X4) -> U136(X1, X2, X3, X4),
              U136(X1, X2, active X3, X4) -> U136(X1, X2, X3, X4),
                U136(X1, mark X2, X3, X4) -> U136(X1, X2, X3, X4),
              U136(X1, active X2, X3, X4) -> U136(X1, X2, X3, X4),
                U136(mark X1, X2, X3, X4) -> U136(X1, X2, X3, X4),
              U136(active X1, X2, X3, X4) -> U136(X1, X2, X3, X4),
                        take(X1, mark X2) -> take(X1, X2),
                      take(X1, active X2) -> take(X1, X2),
                        take(mark X1, X2) -> take(X1, X2),
                      take(active X1, X2) -> take(X1, X2),
                         U22(X1, mark X2) -> U22(X1, X2),
                       U22(X1, active X2) -> U22(X1, X2),
                         U22(mark X1, X2) -> U22(X1, X2),
                       U22(active X1, X2) -> U22(X1, X2),
                         U21(X1, mark X2) -> U21(X1, X2),
                       U21(X1, active X2) -> U21(X1, X2),
                         U21(mark X1, X2) -> U21(X1, X2),
                       U21(active X1, X2) -> U21(X1, X2),
                               U23 mark X -> U23 X,
                             U23 active X -> U23 X,
                         U32(X1, mark X2) -> U32(X1, X2),
                       U32(X1, active X2) -> U32(X1, X2),
                         U32(mark X1, X2) -> U32(X1, X2),
                       U32(active X1, X2) -> U32(X1, X2),
                         U31(X1, mark X2) -> U31(X1, X2),
                       U31(X1, active X2) -> U31(X1, X2),
                         U31(mark X1, X2) -> U31(X1, X2),
                       U31(active X1, X2) -> U31(X1, X2),
                               U33 mark X -> U33 X,
                             U33 active X -> U33 X,
                     U42(X1, X2, mark X3) -> U42(X1, X2, X3),
                   U42(X1, X2, active X3) -> U42(X1, X2, X3),
                     U42(X1, mark X2, X3) -> U42(X1, X2, X3),
                   U42(X1, active X2, X3) -> U42(X1, X2, X3),
                     U42(mark X1, X2, X3) -> U42(X1, X2, X3),
                   U42(active X1, X2, X3) -> U42(X1, X2, X3),
                     U41(X1, X2, mark X3) -> U41(X1, X2, X3),
                   U41(X1, X2, active X3) -> U41(X1, X2, X3),
                     U41(X1, mark X2, X3) -> U41(X1, X2, X3),
                   U41(X1, active X2, X3) -> U41(X1, X2, X3),
                     U41(mark X1, X2, X3) -> U41(X1, X2, X3),
                   U41(active X1, X2, X3) -> U41(X1, X2, X3),
                     U43(X1, X2, mark X3) -> U43(X1, X2, X3),
                   U43(X1, X2, active X3) -> U43(X1, X2, X3),
                     U43(X1, mark X2, X3) -> U43(X1, X2, X3),
                   U43(X1, active X2, X3) -> U43(X1, X2, X3),
                     U43(mark X1, X2, X3) -> U43(X1, X2, X3),
                   U43(active X1, X2, X3) -> U43(X1, X2, X3),
                     U44(X1, X2, mark X3) -> U44(X1, X2, X3),
                   U44(X1, X2, active X3) -> U44(X1, X2, X3),
                     U44(X1, mark X2, X3) -> U44(X1, X2, X3),
                   U44(X1, active X2, X3) -> U44(X1, X2, X3),
                     U44(mark X1, X2, X3) -> U44(X1, X2, X3),
                   U44(active X1, X2, X3) -> U44(X1, X2, X3),
                         U45(X1, mark X2) -> U45(X1, X2),
                       U45(X1, active X2) -> U45(X1, X2),
                         U45(mark X1, X2) -> U45(X1, X2),
                       U45(active X1, X2) -> U45(X1, X2),
                               U46 mark X -> U46 X,
                             U46 active X -> U46 X,
                               U52 mark X -> U52 X,
                             U52 active X -> U52 X,
                         U51(X1, mark X2) -> U51(X1, X2),
                       U51(X1, active X2) -> U51(X1, X2),
                         U51(mark X1, X2) -> U51(X1, X2),
                       U51(active X1, X2) -> U51(X1, X2),
                               U62 mark X -> U62 X,
                             U62 active X -> U62 X,
                         U61(X1, mark X2) -> U61(X1, X2),
                       U61(X1, active X2) -> U61(X1, X2),
                         U61(mark X1, X2) -> U61(X1, X2),
                       U61(active X1, X2) -> U61(X1, X2),
                               U71 mark X -> U71 X,
                             U71 active X -> U71 X,
                               U81 mark X -> U81 X,
                             U81 active X -> U81 X,
                     U92(X1, X2, mark X3) -> U92(X1, X2, X3),
                   U92(X1, X2, active X3) -> U92(X1, X2, X3),
                     U92(X1, mark X2, X3) -> U92(X1, X2, X3),
                   U92(X1, active X2, X3) -> U92(X1, X2, X3),
                     U92(mark X1, X2, X3) -> U92(X1, X2, X3),
                   U92(active X1, X2, X3) -> U92(X1, X2, X3),
                     U91(X1, X2, mark X3) -> U91(X1, X2, X3),
                   U91(X1, X2, active X3) -> U91(X1, X2, X3),
                     U91(X1, mark X2, X3) -> U91(X1, X2, X3),
                   U91(X1, active X2, X3) -> U91(X1, X2, X3),
                     U91(mark X1, X2, X3) -> U91(X1, X2, X3),
                   U91(active X1, X2, X3) -> U91(X1, X2, X3),
                     U93(X1, X2, mark X3) -> U93(X1, X2, X3),
                   U93(X1, X2, active X3) -> U93(X1, X2, X3),
                     U93(X1, mark X2, X3) -> U93(X1, X2, X3),
                   U93(X1, active X2, X3) -> U93(X1, X2, X3),
                     U93(mark X1, X2, X3) -> U93(X1, X2, X3),
                   U93(active X1, X2, X3) -> U93(X1, X2, X3),
                     U94(X1, X2, mark X3) -> U94(X1, X2, X3),
                   U94(X1, X2, active X3) -> U94(X1, X2, X3),
                     U94(X1, mark X2, X3) -> U94(X1, X2, X3),
                   U94(X1, active X2, X3) -> U94(X1, X2, X3),
                     U94(mark X1, X2, X3) -> U94(X1, X2, X3),
                   U94(active X1, X2, X3) -> U94(X1, X2, X3),
                         U95(X1, mark X2) -> U95(X1, X2),
                       U95(X1, active X2) -> U95(X1, X2),
                         U95(mark X1, X2) -> U95(X1, X2),
                       U95(active X1, X2) -> U95(X1, X2),
                               U96 mark X -> U96 X,
                             U96 active X -> U96 X
      }
      Open
     
     SCC (4):
      Strict:
       {  U121#(X1, mark X2) -> U121#(X1, X2),
        U121#(X1, active X2) -> U121#(X1, X2),
          U121#(mark X1, X2) -> U121#(X1, X2),
        U121#(active X1, X2) -> U121#(X1, X2)}
      Weak:
      {
                        mark cons(X1, X2) -> active cons(mark X1, X2),
                                 mark 0() -> active 0(),
                             mark zeros() -> active zeros(),
                    mark U102(X1, X2, X3) -> active U102(mark X1, X2, X3),
                         mark isNatKind X -> active isNatKind X,
                    mark U101(X1, X2, X3) -> active U101(mark X1, X2, X3),
                                mark tt() -> active tt(),
                    mark U103(X1, X2, X3) -> active U103(mark X1, X2, X3),
                    mark isNatIListKind X -> active isNatIListKind X,
                    mark U104(X1, X2, X3) -> active U104(mark X1, X2, X3),
                        mark U105(X1, X2) -> active U105(mark X1, X2),
                             mark isNat X -> active isNat X,
                              mark U106 X -> active U106 mark X,
                        mark isNatIList X -> active isNatIList X,
                         mark U12(X1, X2) -> active U12(mark X1, X2),
                         mark U11(X1, X2) -> active U11(mark X1, X2),
                    mark U112(X1, X2, X3) -> active U112(mark X1, X2, X3),
                    mark U111(X1, X2, X3) -> active U111(mark X1, X2, X3),
                    mark U113(X1, X2, X3) -> active U113(mark X1, X2, X3),
                        mark U114(X1, X2) -> active U114(mark X1, X2),
                                 mark s X -> active s mark X,
                            mark length X -> active length mark X,
                               mark U13 X -> active U13 mark X,
                         mark isNatList X -> active isNatList X,
                              mark U122 X -> active U122 mark X,
                        mark U121(X1, X2) -> active U121(mark X1, X2),
                               mark nil() -> active nil(),
                mark U132(X1, X2, X3, X4) -> active U132(mark X1, X2, X3, X4),
                mark U131(X1, X2, X3, X4) -> active U131(mark X1, X2, X3, X4),
                mark U133(X1, X2, X3, X4) -> active U133(mark X1, X2, X3, X4),
                mark U134(X1, X2, X3, X4) -> active U134(mark X1, X2, X3, X4),
                mark U135(X1, X2, X3, X4) -> active U135(mark X1, X2, X3, X4),
                mark U136(X1, X2, X3, X4) -> active U136(mark X1, X2, X3, X4),
                        mark take(X1, X2) -> active take(mark X1, mark X2),
                         mark U22(X1, X2) -> active U22(mark X1, X2),
                         mark U21(X1, X2) -> active U21(mark X1, X2),
                               mark U23 X -> active U23 mark X,
                         mark U32(X1, X2) -> active U32(mark X1, X2),
                         mark U31(X1, X2) -> active U31(mark X1, X2),
                               mark U33 X -> active U33 mark X,
                     mark U42(X1, X2, X3) -> active U42(mark X1, X2, X3),
                     mark U41(X1, X2, X3) -> active U41(mark X1, X2, X3),
                     mark U43(X1, X2, X3) -> active U43(mark X1, X2, X3),
                     mark U44(X1, X2, X3) -> active U44(mark X1, X2, X3),
                         mark U45(X1, X2) -> active U45(mark X1, X2),
                               mark U46 X -> active U46 mark X,
                               mark U52 X -> active U52 mark X,
                         mark U51(X1, X2) -> active U51(mark X1, X2),
                               mark U62 X -> active U62 mark X,
                         mark U61(X1, X2) -> active U61(mark X1, X2),
                               mark U71 X -> active U71 mark X,
                               mark U81 X -> active U81 mark X,
                     mark U92(X1, X2, X3) -> active U92(mark X1, X2, X3),
                     mark U91(X1, X2, X3) -> active U91(mark X1, X2, X3),
                     mark U93(X1, X2, X3) -> active U93(mark X1, X2, X3),
                     mark U94(X1, X2, X3) -> active U94(mark X1, X2, X3),
                         mark U95(X1, X2) -> active U95(mark X1, X2),
                               mark U96 X -> active U96 mark X,
                        cons(X1, mark X2) -> cons(X1, X2),
                      cons(X1, active X2) -> cons(X1, X2),
                        cons(mark X1, X2) -> cons(X1, X2),
                      cons(active X1, X2) -> cons(X1, X2),
                           active zeros() -> mark cons(0(), zeros()),
                active U102(tt(), V1, V2) -> mark U103(isNatIListKind V2, V1, V2),
                     active isNatKind 0() -> mark tt(),
                    active isNatKind s V1 -> mark U81 isNatKind V1,
               active isNatKind length V1 -> mark U71 isNatIListKind V1,
                active U101(tt(), V1, V2) -> mark U102(isNatKind V1, V1, V2),
                active U103(tt(), V1, V2) -> mark U104(isNatIListKind V2, V1, V2),
       active isNatIListKind cons(V1, V2) -> mark U51(isNatKind V1, V2),
            active isNatIListKind zeros() -> mark tt(),
              active isNatIListKind nil() -> mark tt(),
       active isNatIListKind take(V1, V2) -> mark U61(isNatKind V1, V2),
                active U104(tt(), V1, V2) -> mark U105(isNat V1, V2),
                    active U105(tt(), V2) -> mark U106 isNatIList V2,
                         active isNat 0() -> mark tt(),
                        active isNat s V1 -> mark U21(isNatKind V1, V1),
                   active isNat length V1 -> mark U11(isNatIListKind V1, V1),
                         active U106 tt() -> mark tt(),
                      active isNatIList V -> mark U31(isNatIListKind V, V),
           active isNatIList cons(V1, V2) -> mark U41(isNatKind V1, V1, V2),
                active isNatIList zeros() -> mark tt(),
                     active U12(tt(), V1) -> mark U13 isNatList V1,
                     active U11(tt(), V1) -> mark U12(isNatIListKind V1, V1),
                  active U112(tt(), L, N) -> mark U113(isNat N, L, N),
                  active U111(tt(), L, N) -> mark U112(isNatIListKind L, L, N),
                  active U113(tt(), L, N) -> mark U114(isNatKind N, L),
                     active U114(tt(), L) -> mark s length L,
                 active length cons(N, L) -> mark U111(isNatList L, L, N),
                      active length nil() -> mark 0(),
                          active U13 tt() -> mark tt(),
            active isNatList cons(V1, V2) -> mark U91(isNatKind V1, V1, V2),
                   active isNatList nil() -> mark tt(),
            active isNatList take(V1, V2) -> mark U101(isNatKind V1, V1, V2),
                         active U122 tt() -> mark nil(),
                    active U121(tt(), IL) -> mark U122 isNatIListKind IL,
              active U132(tt(), IL, M, N) -> mark U133(isNat M, IL, M, N),
              active U131(tt(), IL, M, N) -> mark U132(isNatIListKind IL, IL, M, N),
              active U133(tt(), IL, M, N) -> mark U134(isNatKind M, IL, M, N),
              active U134(tt(), IL, M, N) -> mark U135(isNat N, IL, M, N),
              active U135(tt(), IL, M, N) -> mark U136(isNatKind N, IL, M, N),
              active U136(tt(), IL, M, N) -> mark cons(N, take(M, IL)),
                     active take(0(), IL) -> mark U121(isNatIList IL, IL),
            active take(s M, cons(N, IL)) -> mark U131(isNatIList IL, IL, M, N),
                     active U22(tt(), V1) -> mark U23 isNat V1,
                     active U21(tt(), V1) -> mark U22(isNatKind V1, V1),
                          active U23 tt() -> mark tt(),
                      active U32(tt(), V) -> mark U33 isNatList V,
                      active U31(tt(), V) -> mark U32(isNatIListKind V, V),
                          active U33 tt() -> mark tt(),
                 active U42(tt(), V1, V2) -> mark U43(isNatIListKind V2, V1, V2),
                 active U41(tt(), V1, V2) -> mark U42(isNatKind V1, V1, V2),
                 active U43(tt(), V1, V2) -> mark U44(isNatIListKind V2, V1, V2),
                 active U44(tt(), V1, V2) -> mark U45(isNat V1, V2),
                     active U45(tt(), V2) -> mark U46 isNatIList V2,
                          active U46 tt() -> mark tt(),
                          active U52 tt() -> mark tt(),
                     active U51(tt(), V2) -> mark U52 isNatIListKind V2,
                          active U62 tt() -> mark tt(),
                     active U61(tt(), V2) -> mark U62 isNatIListKind V2,
                          active U71 tt() -> mark tt(),
                          active U81 tt() -> mark tt(),
                 active U92(tt(), V1, V2) -> mark U93(isNatIListKind V2, V1, V2),
                 active U91(tt(), V1, V2) -> mark U92(isNatKind V1, V1, V2),
                 active U93(tt(), V1, V2) -> mark U94(isNatIListKind V2, V1, V2),
                 active U94(tt(), V1, V2) -> mark U95(isNat V1, V2),
                     active U95(tt(), V2) -> mark U96 isNatList V2,
                          active U96 tt() -> mark tt(),
                    U102(X1, X2, mark X3) -> U102(X1, X2, X3),
                  U102(X1, X2, active X3) -> U102(X1, X2, X3),
                    U102(X1, mark X2, X3) -> U102(X1, X2, X3),
                  U102(X1, active X2, X3) -> U102(X1, X2, X3),
                    U102(mark X1, X2, X3) -> U102(X1, X2, X3),
                  U102(active X1, X2, X3) -> U102(X1, X2, X3),
                         isNatKind mark X -> isNatKind X,
                       isNatKind active X -> isNatKind X,
                    U101(X1, X2, mark X3) -> U101(X1, X2, X3),
                  U101(X1, X2, active X3) -> U101(X1, X2, X3),
                    U101(X1, mark X2, X3) -> U101(X1, X2, X3),
                  U101(X1, active X2, X3) -> U101(X1, X2, X3),
                    U101(mark X1, X2, X3) -> U101(X1, X2, X3),
                  U101(active X1, X2, X3) -> U101(X1, X2, X3),
                    U103(X1, X2, mark X3) -> U103(X1, X2, X3),
                  U103(X1, X2, active X3) -> U103(X1, X2, X3),
                    U103(X1, mark X2, X3) -> U103(X1, X2, X3),
                  U103(X1, active X2, X3) -> U103(X1, X2, X3),
                    U103(mark X1, X2, X3) -> U103(X1, X2, X3),
                  U103(active X1, X2, X3) -> U103(X1, X2, X3),
                    isNatIListKind mark X -> isNatIListKind X,
                  isNatIListKind active X -> isNatIListKind X,
                    U104(X1, X2, mark X3) -> U104(X1, X2, X3),
                  U104(X1, X2, active X3) -> U104(X1, X2, X3),
                    U104(X1, mark X2, X3) -> U104(X1, X2, X3),
                  U104(X1, active X2, X3) -> U104(X1, X2, X3),
                    U104(mark X1, X2, X3) -> U104(X1, X2, X3),
                  U104(active X1, X2, X3) -> U104(X1, X2, X3),
                        U105(X1, mark X2) -> U105(X1, X2),
                      U105(X1, active X2) -> U105(X1, X2),
                        U105(mark X1, X2) -> U105(X1, X2),
                      U105(active X1, X2) -> U105(X1, X2),
                             isNat mark X -> isNat X,
                           isNat active X -> isNat X,
                              U106 mark X -> U106 X,
                            U106 active X -> U106 X,
                        isNatIList mark X -> isNatIList X,
                      isNatIList active X -> isNatIList X,
                         U12(X1, mark X2) -> U12(X1, X2),
                       U12(X1, active X2) -> U12(X1, X2),
                         U12(mark X1, X2) -> U12(X1, X2),
                       U12(active X1, X2) -> U12(X1, X2),
                         U11(X1, mark X2) -> U11(X1, X2),
                       U11(X1, active X2) -> U11(X1, X2),
                         U11(mark X1, X2) -> U11(X1, X2),
                       U11(active X1, X2) -> U11(X1, X2),
                    U112(X1, X2, mark X3) -> U112(X1, X2, X3),
                  U112(X1, X2, active X3) -> U112(X1, X2, X3),
                    U112(X1, mark X2, X3) -> U112(X1, X2, X3),
                  U112(X1, active X2, X3) -> U112(X1, X2, X3),
                    U112(mark X1, X2, X3) -> U112(X1, X2, X3),
                  U112(active X1, X2, X3) -> U112(X1, X2, X3),
                    U111(X1, X2, mark X3) -> U111(X1, X2, X3),
                  U111(X1, X2, active X3) -> U111(X1, X2, X3),
                    U111(X1, mark X2, X3) -> U111(X1, X2, X3),
                  U111(X1, active X2, X3) -> U111(X1, X2, X3),
                    U111(mark X1, X2, X3) -> U111(X1, X2, X3),
                  U111(active X1, X2, X3) -> U111(X1, X2, X3),
                    U113(X1, X2, mark X3) -> U113(X1, X2, X3),
                  U113(X1, X2, active X3) -> U113(X1, X2, X3),
                    U113(X1, mark X2, X3) -> U113(X1, X2, X3),
                  U113(X1, active X2, X3) -> U113(X1, X2, X3),
                    U113(mark X1, X2, X3) -> U113(X1, X2, X3),
                  U113(active X1, X2, X3) -> U113(X1, X2, X3),
                        U114(X1, mark X2) -> U114(X1, X2),
                      U114(X1, active X2) -> U114(X1, X2),
                        U114(mark X1, X2) -> U114(X1, X2),
                      U114(active X1, X2) -> U114(X1, X2),
                                 s mark X -> s X,
                               s active X -> s X,
                            length mark X -> length X,
                          length active X -> length X,
                               U13 mark X -> U13 X,
                             U13 active X -> U13 X,
                         isNatList mark X -> isNatList X,
                       isNatList active X -> isNatList X,
                              U122 mark X -> U122 X,
                            U122 active X -> U122 X,
                        U121(X1, mark X2) -> U121(X1, X2),
                      U121(X1, active X2) -> U121(X1, X2),
                        U121(mark X1, X2) -> U121(X1, X2),
                      U121(active X1, X2) -> U121(X1, X2),
                U132(X1, X2, X3, mark X4) -> U132(X1, X2, X3, X4),
              U132(X1, X2, X3, active X4) -> U132(X1, X2, X3, X4),
                U132(X1, X2, mark X3, X4) -> U132(X1, X2, X3, X4),
              U132(X1, X2, active X3, X4) -> U132(X1, X2, X3, X4),
                U132(X1, mark X2, X3, X4) -> U132(X1, X2, X3, X4),
              U132(X1, active X2, X3, X4) -> U132(X1, X2, X3, X4),
                U132(mark X1, X2, X3, X4) -> U132(X1, X2, X3, X4),
              U132(active X1, X2, X3, X4) -> U132(X1, X2, X3, X4),
                U131(X1, X2, X3, mark X4) -> U131(X1, X2, X3, X4),
              U131(X1, X2, X3, active X4) -> U131(X1, X2, X3, X4),
                U131(X1, X2, mark X3, X4) -> U131(X1, X2, X3, X4),
              U131(X1, X2, active X3, X4) -> U131(X1, X2, X3, X4),
                U131(X1, mark X2, X3, X4) -> U131(X1, X2, X3, X4),
              U131(X1, active X2, X3, X4) -> U131(X1, X2, X3, X4),
                U131(mark X1, X2, X3, X4) -> U131(X1, X2, X3, X4),
              U131(active X1, X2, X3, X4) -> U131(X1, X2, X3, X4),
                U133(X1, X2, X3, mark X4) -> U133(X1, X2, X3, X4),
              U133(X1, X2, X3, active X4) -> U133(X1, X2, X3, X4),
                U133(X1, X2, mark X3, X4) -> U133(X1, X2, X3, X4),
              U133(X1, X2, active X3, X4) -> U133(X1, X2, X3, X4),
                U133(X1, mark X2, X3, X4) -> U133(X1, X2, X3, X4),
              U133(X1, active X2, X3, X4) -> U133(X1, X2, X3, X4),
                U133(mark X1, X2, X3, X4) -> U133(X1, X2, X3, X4),
              U133(active X1, X2, X3, X4) -> U133(X1, X2, X3, X4),
                U134(X1, X2, X3, mark X4) -> U134(X1, X2, X3, X4),
              U134(X1, X2, X3, active X4) -> U134(X1, X2, X3, X4),
                U134(X1, X2, mark X3, X4) -> U134(X1, X2, X3, X4),
              U134(X1, X2, active X3, X4) -> U134(X1, X2, X3, X4),
                U134(X1, mark X2, X3, X4) -> U134(X1, X2, X3, X4),
              U134(X1, active X2, X3, X4) -> U134(X1, X2, X3, X4),
                U134(mark X1, X2, X3, X4) -> U134(X1, X2, X3, X4),
              U134(active X1, X2, X3, X4) -> U134(X1, X2, X3, X4),
                U135(X1, X2, X3, mark X4) -> U135(X1, X2, X3, X4),
              U135(X1, X2, X3, active X4) -> U135(X1, X2, X3, X4),
                U135(X1, X2, mark X3, X4) -> U135(X1, X2, X3, X4),
              U135(X1, X2, active X3, X4) -> U135(X1, X2, X3, X4),
                U135(X1, mark X2, X3, X4) -> U135(X1, X2, X3, X4),
              U135(X1, active X2, X3, X4) -> U135(X1, X2, X3, X4),
                U135(mark X1, X2, X3, X4) -> U135(X1, X2, X3, X4),
              U135(active X1, X2, X3, X4) -> U135(X1, X2, X3, X4),
                U136(X1, X2, X3, mark X4) -> U136(X1, X2, X3, X4),
              U136(X1, X2, X3, active X4) -> U136(X1, X2, X3, X4),
                U136(X1, X2, mark X3, X4) -> U136(X1, X2, X3, X4),
              U136(X1, X2, active X3, X4) -> U136(X1, X2, X3, X4),
                U136(X1, mark X2, X3, X4) -> U136(X1, X2, X3, X4),
              U136(X1, active X2, X3, X4) -> U136(X1, X2, X3, X4),
                U136(mark X1, X2, X3, X4) -> U136(X1, X2, X3, X4),
              U136(active X1, X2, X3, X4) -> U136(X1, X2, X3, X4),
                        take(X1, mark X2) -> take(X1, X2),
                      take(X1, active X2) -> take(X1, X2),
                        take(mark X1, X2) -> take(X1, X2),
                      take(active X1, X2) -> take(X1, X2),
                         U22(X1, mark X2) -> U22(X1, X2),
                       U22(X1, active X2) -> U22(X1, X2),
                         U22(mark X1, X2) -> U22(X1, X2),
                       U22(active X1, X2) -> U22(X1, X2),
                         U21(X1, mark X2) -> U21(X1, X2),
                       U21(X1, active X2) -> U21(X1, X2),
                         U21(mark X1, X2) -> U21(X1, X2),
                       U21(active X1, X2) -> U21(X1, X2),
                               U23 mark X -> U23 X,
                             U23 active X -> U23 X,
                         U32(X1, mark X2) -> U32(X1, X2),
                       U32(X1, active X2) -> U32(X1, X2),
                         U32(mark X1, X2) -> U32(X1, X2),
                       U32(active X1, X2) -> U32(X1, X2),
                         U31(X1, mark X2) -> U31(X1, X2),
                       U31(X1, active X2) -> U31(X1, X2),
                         U31(mark X1, X2) -> U31(X1, X2),
                       U31(active X1, X2) -> U31(X1, X2),
                               U33 mark X -> U33 X,
                             U33 active X -> U33 X,
                     U42(X1, X2, mark X3) -> U42(X1, X2, X3),
                   U42(X1, X2, active X3) -> U42(X1, X2, X3),
                     U42(X1, mark X2, X3) -> U42(X1, X2, X3),
                   U42(X1, active X2, X3) -> U42(X1, X2, X3),
                     U42(mark X1, X2, X3) -> U42(X1, X2, X3),
                   U42(active X1, X2, X3) -> U42(X1, X2, X3),
                     U41(X1, X2, mark X3) -> U41(X1, X2, X3),
                   U41(X1, X2, active X3) -> U41(X1, X2, X3),
                     U41(X1, mark X2, X3) -> U41(X1, X2, X3),
                   U41(X1, active X2, X3) -> U41(X1, X2, X3),
                     U41(mark X1, X2, X3) -> U41(X1, X2, X3),
                   U41(active X1, X2, X3) -> U41(X1, X2, X3),
                     U43(X1, X2, mark X3) -> U43(X1, X2, X3),
                   U43(X1, X2, active X3) -> U43(X1, X2, X3),
                     U43(X1, mark X2, X3) -> U43(X1, X2, X3),
                   U43(X1, active X2, X3) -> U43(X1, X2, X3),
                     U43(mark X1, X2, X3) -> U43(X1, X2, X3),
                   U43(active X1, X2, X3) -> U43(X1, X2, X3),
                     U44(X1, X2, mark X3) -> U44(X1, X2, X3),
                   U44(X1, X2, active X3) -> U44(X1, X2, X3),
                     U44(X1, mark X2, X3) -> U44(X1, X2, X3),
                   U44(X1, active X2, X3) -> U44(X1, X2, X3),
                     U44(mark X1, X2, X3) -> U44(X1, X2, X3),
                   U44(active X1, X2, X3) -> U44(X1, X2, X3),
                         U45(X1, mark X2) -> U45(X1, X2),
                       U45(X1, active X2) -> U45(X1, X2),
                         U45(mark X1, X2) -> U45(X1, X2),
                       U45(active X1, X2) -> U45(X1, X2),
                               U46 mark X -> U46 X,
                             U46 active X -> U46 X,
                               U52 mark X -> U52 X,
                             U52 active X -> U52 X,
                         U51(X1, mark X2) -> U51(X1, X2),
                       U51(X1, active X2) -> U51(X1, X2),
                         U51(mark X1, X2) -> U51(X1, X2),
                       U51(active X1, X2) -> U51(X1, X2),
                               U62 mark X -> U62 X,
                             U62 active X -> U62 X,
                         U61(X1, mark X2) -> U61(X1, X2),
                       U61(X1, active X2) -> U61(X1, X2),
                         U61(mark X1, X2) -> U61(X1, X2),
                       U61(active X1, X2) -> U61(X1, X2),
                               U71 mark X -> U71 X,
                             U71 active X -> U71 X,
                               U81 mark X -> U81 X,
                             U81 active X -> U81 X,
                     U92(X1, X2, mark X3) -> U92(X1, X2, X3),
                   U92(X1, X2, active X3) -> U92(X1, X2, X3),
                     U92(X1, mark X2, X3) -> U92(X1, X2, X3),
                   U92(X1, active X2, X3) -> U92(X1, X2, X3),
                     U92(mark X1, X2, X3) -> U92(X1, X2, X3),
                   U92(active X1, X2, X3) -> U92(X1, X2, X3),
                     U91(X1, X2, mark X3) -> U91(X1, X2, X3),
                   U91(X1, X2, active X3) -> U91(X1, X2, X3),
                     U91(X1, mark X2, X3) -> U91(X1, X2, X3),
                   U91(X1, active X2, X3) -> U91(X1, X2, X3),
                     U91(mark X1, X2, X3) -> U91(X1, X2, X3),
                   U91(active X1, X2, X3) -> U91(X1, X2, X3),
                     U93(X1, X2, mark X3) -> U93(X1, X2, X3),
                   U93(X1, X2, active X3) -> U93(X1, X2, X3),
                     U93(X1, mark X2, X3) -> U93(X1, X2, X3),
                   U93(X1, active X2, X3) -> U93(X1, X2, X3),
                     U93(mark X1, X2, X3) -> U93(X1, X2, X3),
                   U93(active X1, X2, X3) -> U93(X1, X2, X3),
                     U94(X1, X2, mark X3) -> U94(X1, X2, X3),
                   U94(X1, X2, active X3) -> U94(X1, X2, X3),
                     U94(X1, mark X2, X3) -> U94(X1, X2, X3),
                   U94(X1, active X2, X3) -> U94(X1, X2, X3),
                     U94(mark X1, X2, X3) -> U94(X1, X2, X3),
                   U94(active X1, X2, X3) -> U94(X1, X2, X3),
                         U95(X1, mark X2) -> U95(X1, X2),
                       U95(X1, active X2) -> U95(X1, X2),
                         U95(mark X1, X2) -> U95(X1, X2),
                       U95(active X1, X2) -> U95(X1, X2),
                               U96 mark X -> U96 X,
                             U96 active X -> U96 X
      }
      Open
     
     
     
     SCC (2):
      Strict:
       {  U122# mark X -> U122# X,
        U122# active X -> U122# X}
      Weak:
      {
                        mark cons(X1, X2) -> active cons(mark X1, X2),
                                 mark 0() -> active 0(),
                             mark zeros() -> active zeros(),
                    mark U102(X1, X2, X3) -> active U102(mark X1, X2, X3),
                         mark isNatKind X -> active isNatKind X,
                    mark U101(X1, X2, X3) -> active U101(mark X1, X2, X3),
                                mark tt() -> active tt(),
                    mark U103(X1, X2, X3) -> active U103(mark X1, X2, X3),
                    mark isNatIListKind X -> active isNatIListKind X,
                    mark U104(X1, X2, X3) -> active U104(mark X1, X2, X3),
                        mark U105(X1, X2) -> active U105(mark X1, X2),
                             mark isNat X -> active isNat X,
                              mark U106 X -> active U106 mark X,
                        mark isNatIList X -> active isNatIList X,
                         mark U12(X1, X2) -> active U12(mark X1, X2),
                         mark U11(X1, X2) -> active U11(mark X1, X2),
                    mark U112(X1, X2, X3) -> active U112(mark X1, X2, X3),
                    mark U111(X1, X2, X3) -> active U111(mark X1, X2, X3),
                    mark U113(X1, X2, X3) -> active U113(mark X1, X2, X3),
                        mark U114(X1, X2) -> active U114(mark X1, X2),
                                 mark s X -> active s mark X,
                            mark length X -> active length mark X,
                               mark U13 X -> active U13 mark X,
                         mark isNatList X -> active isNatList X,
                              mark U122 X -> active U122 mark X,
                        mark U121(X1, X2) -> active U121(mark X1, X2),
                               mark nil() -> active nil(),
                mark U132(X1, X2, X3, X4) -> active U132(mark X1, X2, X3, X4),
                mark U131(X1, X2, X3, X4) -> active U131(mark X1, X2, X3, X4),
                mark U133(X1, X2, X3, X4) -> active U133(mark X1, X2, X3, X4),
                mark U134(X1, X2, X3, X4) -> active U134(mark X1, X2, X3, X4),
                mark U135(X1, X2, X3, X4) -> active U135(mark X1, X2, X3, X4),
                mark U136(X1, X2, X3, X4) -> active U136(mark X1, X2, X3, X4),
                        mark take(X1, X2) -> active take(mark X1, mark X2),
                         mark U22(X1, X2) -> active U22(mark X1, X2),
                         mark U21(X1, X2) -> active U21(mark X1, X2),
                               mark U23 X -> active U23 mark X,
                         mark U32(X1, X2) -> active U32(mark X1, X2),
                         mark U31(X1, X2) -> active U31(mark X1, X2),
                               mark U33 X -> active U33 mark X,
                     mark U42(X1, X2, X3) -> active U42(mark X1, X2, X3),
                     mark U41(X1, X2, X3) -> active U41(mark X1, X2, X3),
                     mark U43(X1, X2, X3) -> active U43(mark X1, X2, X3),
                     mark U44(X1, X2, X3) -> active U44(mark X1, X2, X3),
                         mark U45(X1, X2) -> active U45(mark X1, X2),
                               mark U46 X -> active U46 mark X,
                               mark U52 X -> active U52 mark X,
                         mark U51(X1, X2) -> active U51(mark X1, X2),
                               mark U62 X -> active U62 mark X,
                         mark U61(X1, X2) -> active U61(mark X1, X2),
                               mark U71 X -> active U71 mark X,
                               mark U81 X -> active U81 mark X,
                     mark U92(X1, X2, X3) -> active U92(mark X1, X2, X3),
                     mark U91(X1, X2, X3) -> active U91(mark X1, X2, X3),
                     mark U93(X1, X2, X3) -> active U93(mark X1, X2, X3),
                     mark U94(X1, X2, X3) -> active U94(mark X1, X2, X3),
                         mark U95(X1, X2) -> active U95(mark X1, X2),
                               mark U96 X -> active U96 mark X,
                        cons(X1, mark X2) -> cons(X1, X2),
                      cons(X1, active X2) -> cons(X1, X2),
                        cons(mark X1, X2) -> cons(X1, X2),
                      cons(active X1, X2) -> cons(X1, X2),
                           active zeros() -> mark cons(0(), zeros()),
                active U102(tt(), V1, V2) -> mark U103(isNatIListKind V2, V1, V2),
                     active isNatKind 0() -> mark tt(),
                    active isNatKind s V1 -> mark U81 isNatKind V1,
               active isNatKind length V1 -> mark U71 isNatIListKind V1,
                active U101(tt(), V1, V2) -> mark U102(isNatKind V1, V1, V2),
                active U103(tt(), V1, V2) -> mark U104(isNatIListKind V2, V1, V2),
       active isNatIListKind cons(V1, V2) -> mark U51(isNatKind V1, V2),
            active isNatIListKind zeros() -> mark tt(),
              active isNatIListKind nil() -> mark tt(),
       active isNatIListKind take(V1, V2) -> mark U61(isNatKind V1, V2),
                active U104(tt(), V1, V2) -> mark U105(isNat V1, V2),
                    active U105(tt(), V2) -> mark U106 isNatIList V2,
                         active isNat 0() -> mark tt(),
                        active isNat s V1 -> mark U21(isNatKind V1, V1),
                   active isNat length V1 -> mark U11(isNatIListKind V1, V1),
                         active U106 tt() -> mark tt(),
                      active isNatIList V -> mark U31(isNatIListKind V, V),
           active isNatIList cons(V1, V2) -> mark U41(isNatKind V1, V1, V2),
                active isNatIList zeros() -> mark tt(),
                     active U12(tt(), V1) -> mark U13 isNatList V1,
                     active U11(tt(), V1) -> mark U12(isNatIListKind V1, V1),
                  active U112(tt(), L, N) -> mark U113(isNat N, L, N),
                  active U111(tt(), L, N) -> mark U112(isNatIListKind L, L, N),
                  active U113(tt(), L, N) -> mark U114(isNatKind N, L),
                     active U114(tt(), L) -> mark s length L,
                 active length cons(N, L) -> mark U111(isNatList L, L, N),
                      active length nil() -> mark 0(),
                          active U13 tt() -> mark tt(),
            active isNatList cons(V1, V2) -> mark U91(isNatKind V1, V1, V2),
                   active isNatList nil() -> mark tt(),
            active isNatList take(V1, V2) -> mark U101(isNatKind V1, V1, V2),
                         active U122 tt() -> mark nil(),
                    active U121(tt(), IL) -> mark U122 isNatIListKind IL,
              active U132(tt(), IL, M, N) -> mark U133(isNat M, IL, M, N),
              active U131(tt(), IL, M, N) -> mark U132(isNatIListKind IL, IL, M, N),
              active U133(tt(), IL, M, N) -> mark U134(isNatKind M, IL, M, N),
              active U134(tt(), IL, M, N) -> mark U135(isNat N, IL, M, N),
              active U135(tt(), IL, M, N) -> mark U136(isNatKind N, IL, M, N),
              active U136(tt(), IL, M, N) -> mark cons(N, take(M, IL)),
                     active take(0(), IL) -> mark U121(isNatIList IL, IL),
            active take(s M, cons(N, IL)) -> mark U131(isNatIList IL, IL, M, N),
                     active U22(tt(), V1) -> mark U23 isNat V1,
                     active U21(tt(), V1) -> mark U22(isNatKind V1, V1),
                          active U23 tt() -> mark tt(),
                      active U32(tt(), V) -> mark U33 isNatList V,
                      active U31(tt(), V) -> mark U32(isNatIListKind V, V),
                          active U33 tt() -> mark tt(),
                 active U42(tt(), V1, V2) -> mark U43(isNatIListKind V2, V1, V2),
                 active U41(tt(), V1, V2) -> mark U42(isNatKind V1, V1, V2),
                 active U43(tt(), V1, V2) -> mark U44(isNatIListKind V2, V1, V2),
                 active U44(tt(), V1, V2) -> mark U45(isNat V1, V2),
                     active U45(tt(), V2) -> mark U46 isNatIList V2,
                          active U46 tt() -> mark tt(),
                          active U52 tt() -> mark tt(),
                     active U51(tt(), V2) -> mark U52 isNatIListKind V2,
                          active U62 tt() -> mark tt(),
                     active U61(tt(), V2) -> mark U62 isNatIListKind V2,
                          active U71 tt() -> mark tt(),
                          active U81 tt() -> mark tt(),
                 active U92(tt(), V1, V2) -> mark U93(isNatIListKind V2, V1, V2),
                 active U91(tt(), V1, V2) -> mark U92(isNatKind V1, V1, V2),
                 active U93(tt(), V1, V2) -> mark U94(isNatIListKind V2, V1, V2),
                 active U94(tt(), V1, V2) -> mark U95(isNat V1, V2),
                     active U95(tt(), V2) -> mark U96 isNatList V2,
                          active U96 tt() -> mark tt(),
                    U102(X1, X2, mark X3) -> U102(X1, X2, X3),
                  U102(X1, X2, active X3) -> U102(X1, X2, X3),
                    U102(X1, mark X2, X3) -> U102(X1, X2, X3),
                  U102(X1, active X2, X3) -> U102(X1, X2, X3),
                    U102(mark X1, X2, X3) -> U102(X1, X2, X3),
                  U102(active X1, X2, X3) -> U102(X1, X2, X3),
                         isNatKind mark X -> isNatKind X,
                       isNatKind active X -> isNatKind X,
                    U101(X1, X2, mark X3) -> U101(X1, X2, X3),
                  U101(X1, X2, active X3) -> U101(X1, X2, X3),
                    U101(X1, mark X2, X3) -> U101(X1, X2, X3),
                  U101(X1, active X2, X3) -> U101(X1, X2, X3),
                    U101(mark X1, X2, X3) -> U101(X1, X2, X3),
                  U101(active X1, X2, X3) -> U101(X1, X2, X3),
                    U103(X1, X2, mark X3) -> U103(X1, X2, X3),
                  U103(X1, X2, active X3) -> U103(X1, X2, X3),
                    U103(X1, mark X2, X3) -> U103(X1, X2, X3),
                  U103(X1, active X2, X3) -> U103(X1, X2, X3),
                    U103(mark X1, X2, X3) -> U103(X1, X2, X3),
                  U103(active X1, X2, X3) -> U103(X1, X2, X3),
                    isNatIListKind mark X -> isNatIListKind X,
                  isNatIListKind active X -> isNatIListKind X,
                    U104(X1, X2, mark X3) -> U104(X1, X2, X3),
                  U104(X1, X2, active X3) -> U104(X1, X2, X3),
                    U104(X1, mark X2, X3) -> U104(X1, X2, X3),
                  U104(X1, active X2, X3) -> U104(X1, X2, X3),
                    U104(mark X1, X2, X3) -> U104(X1, X2, X3),
                  U104(active X1, X2, X3) -> U104(X1, X2, X3),
                        U105(X1, mark X2) -> U105(X1, X2),
                      U105(X1, active X2) -> U105(X1, X2),
                        U105(mark X1, X2) -> U105(X1, X2),
                      U105(active X1, X2) -> U105(X1, X2),
                             isNat mark X -> isNat X,
                           isNat active X -> isNat X,
                              U106 mark X -> U106 X,
                            U106 active X -> U106 X,
                        isNatIList mark X -> isNatIList X,
                      isNatIList active X -> isNatIList X,
                         U12(X1, mark X2) -> U12(X1, X2),
                       U12(X1, active X2) -> U12(X1, X2),
                         U12(mark X1, X2) -> U12(X1, X2),
                       U12(active X1, X2) -> U12(X1, X2),
                         U11(X1, mark X2) -> U11(X1, X2),
                       U11(X1, active X2) -> U11(X1, X2),
                         U11(mark X1, X2) -> U11(X1, X2),
                       U11(active X1, X2) -> U11(X1, X2),
                    U112(X1, X2, mark X3) -> U112(X1, X2, X3),
                  U112(X1, X2, active X3) -> U112(X1, X2, X3),
                    U112(X1, mark X2, X3) -> U112(X1, X2, X3),
                  U112(X1, active X2, X3) -> U112(X1, X2, X3),
                    U112(mark X1, X2, X3) -> U112(X1, X2, X3),
                  U112(active X1, X2, X3) -> U112(X1, X2, X3),
                    U111(X1, X2, mark X3) -> U111(X1, X2, X3),
                  U111(X1, X2, active X3) -> U111(X1, X2, X3),
                    U111(X1, mark X2, X3) -> U111(X1, X2, X3),
                  U111(X1, active X2, X3) -> U111(X1, X2, X3),
                    U111(mark X1, X2, X3) -> U111(X1, X2, X3),
                  U111(active X1, X2, X3) -> U111(X1, X2, X3),
                    U113(X1, X2, mark X3) -> U113(X1, X2, X3),
                  U113(X1, X2, active X3) -> U113(X1, X2, X3),
                    U113(X1, mark X2, X3) -> U113(X1, X2, X3),
                  U113(X1, active X2, X3) -> U113(X1, X2, X3),
                    U113(mark X1, X2, X3) -> U113(X1, X2, X3),
                  U113(active X1, X2, X3) -> U113(X1, X2, X3),
                        U114(X1, mark X2) -> U114(X1, X2),
                      U114(X1, active X2) -> U114(X1, X2),
                        U114(mark X1, X2) -> U114(X1, X2),
                      U114(active X1, X2) -> U114(X1, X2),
                                 s mark X -> s X,
                               s active X -> s X,
                            length mark X -> length X,
                          length active X -> length X,
                               U13 mark X -> U13 X,
                             U13 active X -> U13 X,
                         isNatList mark X -> isNatList X,
                       isNatList active X -> isNatList X,
                              U122 mark X -> U122 X,
                            U122 active X -> U122 X,
                        U121(X1, mark X2) -> U121(X1, X2),
                      U121(X1, active X2) -> U121(X1, X2),
                        U121(mark X1, X2) -> U121(X1, X2),
                      U121(active X1, X2) -> U121(X1, X2),
                U132(X1, X2, X3, mark X4) -> U132(X1, X2, X3, X4),
              U132(X1, X2, X3, active X4) -> U132(X1, X2, X3, X4),
                U132(X1, X2, mark X3, X4) -> U132(X1, X2, X3, X4),
              U132(X1, X2, active X3, X4) -> U132(X1, X2, X3, X4),
                U132(X1, mark X2, X3, X4) -> U132(X1, X2, X3, X4),
              U132(X1, active X2, X3, X4) -> U132(X1, X2, X3, X4),
                U132(mark X1, X2, X3, X4) -> U132(X1, X2, X3, X4),
              U132(active X1, X2, X3, X4) -> U132(X1, X2, X3, X4),
                U131(X1, X2, X3, mark X4) -> U131(X1, X2, X3, X4),
              U131(X1, X2, X3, active X4) -> U131(X1, X2, X3, X4),
                U131(X1, X2, mark X3, X4) -> U131(X1, X2, X3, X4),
              U131(X1, X2, active X3, X4) -> U131(X1, X2, X3, X4),
                U131(X1, mark X2, X3, X4) -> U131(X1, X2, X3, X4),
              U131(X1, active X2, X3, X4) -> U131(X1, X2, X3, X4),
                U131(mark X1, X2, X3, X4) -> U131(X1, X2, X3, X4),
              U131(active X1, X2, X3, X4) -> U131(X1, X2, X3, X4),
                U133(X1, X2, X3, mark X4) -> U133(X1, X2, X3, X4),
              U133(X1, X2, X3, active X4) -> U133(X1, X2, X3, X4),
                U133(X1, X2, mark X3, X4) -> U133(X1, X2, X3, X4),
              U133(X1, X2, active X3, X4) -> U133(X1, X2, X3, X4),
                U133(X1, mark X2, X3, X4) -> U133(X1, X2, X3, X4),
              U133(X1, active X2, X3, X4) -> U133(X1, X2, X3, X4),
                U133(mark X1, X2, X3, X4) -> U133(X1, X2, X3, X4),
              U133(active X1, X2, X3, X4) -> U133(X1, X2, X3, X4),
                U134(X1, X2, X3, mark X4) -> U134(X1, X2, X3, X4),
              U134(X1, X2, X3, active X4) -> U134(X1, X2, X3, X4),
                U134(X1, X2, mark X3, X4) -> U134(X1, X2, X3, X4),
              U134(X1, X2, active X3, X4) -> U134(X1, X2, X3, X4),
                U134(X1, mark X2, X3, X4) -> U134(X1, X2, X3, X4),
              U134(X1, active X2, X3, X4) -> U134(X1, X2, X3, X4),
                U134(mark X1, X2, X3, X4) -> U134(X1, X2, X3, X4),
              U134(active X1, X2, X3, X4) -> U134(X1, X2, X3, X4),
                U135(X1, X2, X3, mark X4) -> U135(X1, X2, X3, X4),
              U135(X1, X2, X3, active X4) -> U135(X1, X2, X3, X4),
                U135(X1, X2, mark X3, X4) -> U135(X1, X2, X3, X4),
              U135(X1, X2, active X3, X4) -> U135(X1, X2, X3, X4),
                U135(X1, mark X2, X3, X4) -> U135(X1, X2, X3, X4),
              U135(X1, active X2, X3, X4) -> U135(X1, X2, X3, X4),
                U135(mark X1, X2, X3, X4) -> U135(X1, X2, X3, X4),
              U135(active X1, X2, X3, X4) -> U135(X1, X2, X3, X4),
                U136(X1, X2, X3, mark X4) -> U136(X1, X2, X3, X4),
              U136(X1, X2, X3, active X4) -> U136(X1, X2, X3, X4),
                U136(X1, X2, mark X3, X4) -> U136(X1, X2, X3, X4),
              U136(X1, X2, active X3, X4) -> U136(X1, X2, X3, X4),
                U136(X1, mark X2, X3, X4) -> U136(X1, X2, X3, X4),
              U136(X1, active X2, X3, X4) -> U136(X1, X2, X3, X4),
                U136(mark X1, X2, X3, X4) -> U136(X1, X2, X3, X4),
              U136(active X1, X2, X3, X4) -> U136(X1, X2, X3, X4),
                        take(X1, mark X2) -> take(X1, X2),
                      take(X1, active X2) -> take(X1, X2),
                        take(mark X1, X2) -> take(X1, X2),
                      take(active X1, X2) -> take(X1, X2),
                         U22(X1, mark X2) -> U22(X1, X2),
                       U22(X1, active X2) -> U22(X1, X2),
                         U22(mark X1, X2) -> U22(X1, X2),
                       U22(active X1, X2) -> U22(X1, X2),
                         U21(X1, mark X2) -> U21(X1, X2),
                       U21(X1, active X2) -> U21(X1, X2),
                         U21(mark X1, X2) -> U21(X1, X2),
                       U21(active X1, X2) -> U21(X1, X2),
                               U23 mark X -> U23 X,
                             U23 active X -> U23 X,
                         U32(X1, mark X2) -> U32(X1, X2),
                       U32(X1, active X2) -> U32(X1, X2),
                         U32(mark X1, X2) -> U32(X1, X2),
                       U32(active X1, X2) -> U32(X1, X2),
                         U31(X1, mark X2) -> U31(X1, X2),
                       U31(X1, active X2) -> U31(X1, X2),
                         U31(mark X1, X2) -> U31(X1, X2),
                       U31(active X1, X2) -> U31(X1, X2),
                               U33 mark X -> U33 X,
                             U33 active X -> U33 X,
                     U42(X1, X2, mark X3) -> U42(X1, X2, X3),
                   U42(X1, X2, active X3) -> U42(X1, X2, X3),
                     U42(X1, mark X2, X3) -> U42(X1, X2, X3),
                   U42(X1, active X2, X3) -> U42(X1, X2, X3),
                     U42(mark X1, X2, X3) -> U42(X1, X2, X3),
                   U42(active X1, X2, X3) -> U42(X1, X2, X3),
                     U41(X1, X2, mark X3) -> U41(X1, X2, X3),
                   U41(X1, X2, active X3) -> U41(X1, X2, X3),
                     U41(X1, mark X2, X3) -> U41(X1, X2, X3),
                   U41(X1, active X2, X3) -> U41(X1, X2, X3),
                     U41(mark X1, X2, X3) -> U41(X1, X2, X3),
                   U41(active X1, X2, X3) -> U41(X1, X2, X3),
                     U43(X1, X2, mark X3) -> U43(X1, X2, X3),
                   U43(X1, X2, active X3) -> U43(X1, X2, X3),
                     U43(X1, mark X2, X3) -> U43(X1, X2, X3),
                   U43(X1, active X2, X3) -> U43(X1, X2, X3),
                     U43(mark X1, X2, X3) -> U43(X1, X2, X3),
                   U43(active X1, X2, X3) -> U43(X1, X2, X3),
                     U44(X1, X2, mark X3) -> U44(X1, X2, X3),
                   U44(X1, X2, active X3) -> U44(X1, X2, X3),
                     U44(X1, mark X2, X3) -> U44(X1, X2, X3),
                   U44(X1, active X2, X3) -> U44(X1, X2, X3),
                     U44(mark X1, X2, X3) -> U44(X1, X2, X3),
                   U44(active X1, X2, X3) -> U44(X1, X2, X3),
                         U45(X1, mark X2) -> U45(X1, X2),
                       U45(X1, active X2) -> U45(X1, X2),
                         U45(mark X1, X2) -> U45(X1, X2),
                       U45(active X1, X2) -> U45(X1, X2),
                               U46 mark X -> U46 X,
                             U46 active X -> U46 X,
                               U52 mark X -> U52 X,
                             U52 active X -> U52 X,
                         U51(X1, mark X2) -> U51(X1, X2),
                       U51(X1, active X2) -> U51(X1, X2),
                         U51(mark X1, X2) -> U51(X1, X2),
                       U51(active X1, X2) -> U51(X1, X2),
                               U62 mark X -> U62 X,
                             U62 active X -> U62 X,
                         U61(X1, mark X2) -> U61(X1, X2),
                       U61(X1, active X2) -> U61(X1, X2),
                         U61(mark X1, X2) -> U61(X1, X2),
                       U61(active X1, X2) -> U61(X1, X2),
                               U71 mark X -> U71 X,
                             U71 active X -> U71 X,
                               U81 mark X -> U81 X,
                             U81 active X -> U81 X,
                     U92(X1, X2, mark X3) -> U92(X1, X2, X3),
                   U92(X1, X2, active X3) -> U92(X1, X2, X3),
                     U92(X1, mark X2, X3) -> U92(X1, X2, X3),
                   U92(X1, active X2, X3) -> U92(X1, X2, X3),
                     U92(mark X1, X2, X3) -> U92(X1, X2, X3),
                   U92(active X1, X2, X3) -> U92(X1, X2, X3),
                     U91(X1, X2, mark X3) -> U91(X1, X2, X3),
                   U91(X1, X2, active X3) -> U91(X1, X2, X3),
                     U91(X1, mark X2, X3) -> U91(X1, X2, X3),
                   U91(X1, active X2, X3) -> U91(X1, X2, X3),
                     U91(mark X1, X2, X3) -> U91(X1, X2, X3),
                   U91(active X1, X2, X3) -> U91(X1, X2, X3),
                     U93(X1, X2, mark X3) -> U93(X1, X2, X3),
                   U93(X1, X2, active X3) -> U93(X1, X2, X3),
                     U93(X1, mark X2, X3) -> U93(X1, X2, X3),
                   U93(X1, active X2, X3) -> U93(X1, X2, X3),
                     U93(mark X1, X2, X3) -> U93(X1, X2, X3),
                   U93(active X1, X2, X3) -> U93(X1, X2, X3),
                     U94(X1, X2, mark X3) -> U94(X1, X2, X3),
                   U94(X1, X2, active X3) -> U94(X1, X2, X3),
                     U94(X1, mark X2, X3) -> U94(X1, X2, X3),
                   U94(X1, active X2, X3) -> U94(X1, X2, X3),
                     U94(mark X1, X2, X3) -> U94(X1, X2, X3),
                   U94(active X1, X2, X3) -> U94(X1, X2, X3),
                         U95(X1, mark X2) -> U95(X1, X2),
                       U95(X1, active X2) -> U95(X1, X2),
                         U95(mark X1, X2) -> U95(X1, X2),
                       U95(active X1, X2) -> U95(X1, X2),
                               U96 mark X -> U96 X,
                             U96 active X -> U96 X
      }
      Open
     
     
     
     
     SCC (2):
      Strict:
       {  U13# mark X -> U13# X,
        U13# active X -> U13# X}
      Weak:
      {
                        mark cons(X1, X2) -> active cons(mark X1, X2),
                                 mark 0() -> active 0(),
                             mark zeros() -> active zeros(),
                    mark U102(X1, X2, X3) -> active U102(mark X1, X2, X3),
                         mark isNatKind X -> active isNatKind X,
                    mark U101(X1, X2, X3) -> active U101(mark X1, X2, X3),
                                mark tt() -> active tt(),
                    mark U103(X1, X2, X3) -> active U103(mark X1, X2, X3),
                    mark isNatIListKind X -> active isNatIListKind X,
                    mark U104(X1, X2, X3) -> active U104(mark X1, X2, X3),
                        mark U105(X1, X2) -> active U105(mark X1, X2),
                             mark isNat X -> active isNat X,
                              mark U106 X -> active U106 mark X,
                        mark isNatIList X -> active isNatIList X,
                         mark U12(X1, X2) -> active U12(mark X1, X2),
                         mark U11(X1, X2) -> active U11(mark X1, X2),
                    mark U112(X1, X2, X3) -> active U112(mark X1, X2, X3),
                    mark U111(X1, X2, X3) -> active U111(mark X1, X2, X3),
                    mark U113(X1, X2, X3) -> active U113(mark X1, X2, X3),
                        mark U114(X1, X2) -> active U114(mark X1, X2),
                                 mark s X -> active s mark X,
                            mark length X -> active length mark X,
                               mark U13 X -> active U13 mark X,
                         mark isNatList X -> active isNatList X,
                              mark U122 X -> active U122 mark X,
                        mark U121(X1, X2) -> active U121(mark X1, X2),
                               mark nil() -> active nil(),
                mark U132(X1, X2, X3, X4) -> active U132(mark X1, X2, X3, X4),
                mark U131(X1, X2, X3, X4) -> active U131(mark X1, X2, X3, X4),
                mark U133(X1, X2, X3, X4) -> active U133(mark X1, X2, X3, X4),
                mark U134(X1, X2, X3, X4) -> active U134(mark X1, X2, X3, X4),
                mark U135(X1, X2, X3, X4) -> active U135(mark X1, X2, X3, X4),
                mark U136(X1, X2, X3, X4) -> active U136(mark X1, X2, X3, X4),
                        mark take(X1, X2) -> active take(mark X1, mark X2),
                         mark U22(X1, X2) -> active U22(mark X1, X2),
                         mark U21(X1, X2) -> active U21(mark X1, X2),
                               mark U23 X -> active U23 mark X,
                         mark U32(X1, X2) -> active U32(mark X1, X2),
                         mark U31(X1, X2) -> active U31(mark X1, X2),
                               mark U33 X -> active U33 mark X,
                     mark U42(X1, X2, X3) -> active U42(mark X1, X2, X3),
                     mark U41(X1, X2, X3) -> active U41(mark X1, X2, X3),
                     mark U43(X1, X2, X3) -> active U43(mark X1, X2, X3),
                     mark U44(X1, X2, X3) -> active U44(mark X1, X2, X3),
                         mark U45(X1, X2) -> active U45(mark X1, X2),
                               mark U46 X -> active U46 mark X,
                               mark U52 X -> active U52 mark X,
                         mark U51(X1, X2) -> active U51(mark X1, X2),
                               mark U62 X -> active U62 mark X,
                         mark U61(X1, X2) -> active U61(mark X1, X2),
                               mark U71 X -> active U71 mark X,
                               mark U81 X -> active U81 mark X,
                     mark U92(X1, X2, X3) -> active U92(mark X1, X2, X3),
                     mark U91(X1, X2, X3) -> active U91(mark X1, X2, X3),
                     mark U93(X1, X2, X3) -> active U93(mark X1, X2, X3),
                     mark U94(X1, X2, X3) -> active U94(mark X1, X2, X3),
                         mark U95(X1, X2) -> active U95(mark X1, X2),
                               mark U96 X -> active U96 mark X,
                        cons(X1, mark X2) -> cons(X1, X2),
                      cons(X1, active X2) -> cons(X1, X2),
                        cons(mark X1, X2) -> cons(X1, X2),
                      cons(active X1, X2) -> cons(X1, X2),
                           active zeros() -> mark cons(0(), zeros()),
                active U102(tt(), V1, V2) -> mark U103(isNatIListKind V2, V1, V2),
                     active isNatKind 0() -> mark tt(),
                    active isNatKind s V1 -> mark U81 isNatKind V1,
               active isNatKind length V1 -> mark U71 isNatIListKind V1,
                active U101(tt(), V1, V2) -> mark U102(isNatKind V1, V1, V2),
                active U103(tt(), V1, V2) -> mark U104(isNatIListKind V2, V1, V2),
       active isNatIListKind cons(V1, V2) -> mark U51(isNatKind V1, V2),
            active isNatIListKind zeros() -> mark tt(),
              active isNatIListKind nil() -> mark tt(),
       active isNatIListKind take(V1, V2) -> mark U61(isNatKind V1, V2),
                active U104(tt(), V1, V2) -> mark U105(isNat V1, V2),
                    active U105(tt(), V2) -> mark U106 isNatIList V2,
                         active isNat 0() -> mark tt(),
                        active isNat s V1 -> mark U21(isNatKind V1, V1),
                   active isNat length V1 -> mark U11(isNatIListKind V1, V1),
                         active U106 tt() -> mark tt(),
                      active isNatIList V -> mark U31(isNatIListKind V, V),
           active isNatIList cons(V1, V2) -> mark U41(isNatKind V1, V1, V2),
                active isNatIList zeros() -> mark tt(),
                     active U12(tt(), V1) -> mark U13 isNatList V1,
                     active U11(tt(), V1) -> mark U12(isNatIListKind V1, V1),
                  active U112(tt(), L, N) -> mark U113(isNat N, L, N),
                  active U111(tt(), L, N) -> mark U112(isNatIListKind L, L, N),
                  active U113(tt(), L, N) -> mark U114(isNatKind N, L),
                     active U114(tt(), L) -> mark s length L,
                 active length cons(N, L) -> mark U111(isNatList L, L, N),
                      active length nil() -> mark 0(),
                          active U13 tt() -> mark tt(),
            active isNatList cons(V1, V2) -> mark U91(isNatKind V1, V1, V2),
                   active isNatList nil() -> mark tt(),
            active isNatList take(V1, V2) -> mark U101(isNatKind V1, V1, V2),
                         active U122 tt() -> mark nil(),
                    active U121(tt(), IL) -> mark U122 isNatIListKind IL,
              active U132(tt(), IL, M, N) -> mark U133(isNat M, IL, M, N),
              active U131(tt(), IL, M, N) -> mark U132(isNatIListKind IL, IL, M, N),
              active U133(tt(), IL, M, N) -> mark U134(isNatKind M, IL, M, N),
              active U134(tt(), IL, M, N) -> mark U135(isNat N, IL, M, N),
              active U135(tt(), IL, M, N) -> mark U136(isNatKind N, IL, M, N),
              active U136(tt(), IL, M, N) -> mark cons(N, take(M, IL)),
                     active take(0(), IL) -> mark U121(isNatIList IL, IL),
            active take(s M, cons(N, IL)) -> mark U131(isNatIList IL, IL, M, N),
                     active U22(tt(), V1) -> mark U23 isNat V1,
                     active U21(tt(), V1) -> mark U22(isNatKind V1, V1),
                          active U23 tt() -> mark tt(),
                      active U32(tt(), V) -> mark U33 isNatList V,
                      active U31(tt(), V) -> mark U32(isNatIListKind V, V),
                          active U33 tt() -> mark tt(),
                 active U42(tt(), V1, V2) -> mark U43(isNatIListKind V2, V1, V2),
                 active U41(tt(), V1, V2) -> mark U42(isNatKind V1, V1, V2),
                 active U43(tt(), V1, V2) -> mark U44(isNatIListKind V2, V1, V2),
                 active U44(tt(), V1, V2) -> mark U45(isNat V1, V2),
                     active U45(tt(), V2) -> mark U46 isNatIList V2,
                          active U46 tt() -> mark tt(),
                          active U52 tt() -> mark tt(),
                     active U51(tt(), V2) -> mark U52 isNatIListKind V2,
                          active U62 tt() -> mark tt(),
                     active U61(tt(), V2) -> mark U62 isNatIListKind V2,
                          active U71 tt() -> mark tt(),
                          active U81 tt() -> mark tt(),
                 active U92(tt(), V1, V2) -> mark U93(isNatIListKind V2, V1, V2),
                 active U91(tt(), V1, V2) -> mark U92(isNatKind V1, V1, V2),
                 active U93(tt(), V1, V2) -> mark U94(isNatIListKind V2, V1, V2),
                 active U94(tt(), V1, V2) -> mark U95(isNat V1, V2),
                     active U95(tt(), V2) -> mark U96 isNatList V2,
                          active U96 tt() -> mark tt(),
                    U102(X1, X2, mark X3) -> U102(X1, X2, X3),
                  U102(X1, X2, active X3) -> U102(X1, X2, X3),
                    U102(X1, mark X2, X3) -> U102(X1, X2, X3),
                  U102(X1, active X2, X3) -> U102(X1, X2, X3),
                    U102(mark X1, X2, X3) -> U102(X1, X2, X3),
                  U102(active X1, X2, X3) -> U102(X1, X2, X3),
                         isNatKind mark X -> isNatKind X,
                       isNatKind active X -> isNatKind X,
                    U101(X1, X2, mark X3) -> U101(X1, X2, X3),
                  U101(X1, X2, active X3) -> U101(X1, X2, X3),
                    U101(X1, mark X2, X3) -> U101(X1, X2, X3),
                  U101(X1, active X2, X3) -> U101(X1, X2, X3),
                    U101(mark X1, X2, X3) -> U101(X1, X2, X3),
                  U101(active X1, X2, X3) -> U101(X1, X2, X3),
                    U103(X1, X2, mark X3) -> U103(X1, X2, X3),
                  U103(X1, X2, active X3) -> U103(X1, X2, X3),
                    U103(X1, mark X2, X3) -> U103(X1, X2, X3),
                  U103(X1, active X2, X3) -> U103(X1, X2, X3),
                    U103(mark X1, X2, X3) -> U103(X1, X2, X3),
                  U103(active X1, X2, X3) -> U103(X1, X2, X3),
                    isNatIListKind mark X -> isNatIListKind X,
                  isNatIListKind active X -> isNatIListKind X,
                    U104(X1, X2, mark X3) -> U104(X1, X2, X3),
                  U104(X1, X2, active X3) -> U104(X1, X2, X3),
                    U104(X1, mark X2, X3) -> U104(X1, X2, X3),
                  U104(X1, active X2, X3) -> U104(X1, X2, X3),
                    U104(mark X1, X2, X3) -> U104(X1, X2, X3),
                  U104(active X1, X2, X3) -> U104(X1, X2, X3),
                        U105(X1, mark X2) -> U105(X1, X2),
                      U105(X1, active X2) -> U105(X1, X2),
                        U105(mark X1, X2) -> U105(X1, X2),
                      U105(active X1, X2) -> U105(X1, X2),
                             isNat mark X -> isNat X,
                           isNat active X -> isNat X,
                              U106 mark X -> U106 X,
                            U106 active X -> U106 X,
                        isNatIList mark X -> isNatIList X,
                      isNatIList active X -> isNatIList X,
                         U12(X1, mark X2) -> U12(X1, X2),
                       U12(X1, active X2) -> U12(X1, X2),
                         U12(mark X1, X2) -> U12(X1, X2),
                       U12(active X1, X2) -> U12(X1, X2),
                         U11(X1, mark X2) -> U11(X1, X2),
                       U11(X1, active X2) -> U11(X1, X2),
                         U11(mark X1, X2) -> U11(X1, X2),
                       U11(active X1, X2) -> U11(X1, X2),
                    U112(X1, X2, mark X3) -> U112(X1, X2, X3),
                  U112(X1, X2, active X3) -> U112(X1, X2, X3),
                    U112(X1, mark X2, X3) -> U112(X1, X2, X3),
                  U112(X1, active X2, X3) -> U112(X1, X2, X3),
                    U112(mark X1, X2, X3) -> U112(X1, X2, X3),
                  U112(active X1, X2, X3) -> U112(X1, X2, X3),
                    U111(X1, X2, mark X3) -> U111(X1, X2, X3),
                  U111(X1, X2, active X3) -> U111(X1, X2, X3),
                    U111(X1, mark X2, X3) -> U111(X1, X2, X3),
                  U111(X1, active X2, X3) -> U111(X1, X2, X3),
                    U111(mark X1, X2, X3) -> U111(X1, X2, X3),
                  U111(active X1, X2, X3) -> U111(X1, X2, X3),
                    U113(X1, X2, mark X3) -> U113(X1, X2, X3),
                  U113(X1, X2, active X3) -> U113(X1, X2, X3),
                    U113(X1, mark X2, X3) -> U113(X1, X2, X3),
                  U113(X1, active X2, X3) -> U113(X1, X2, X3),
                    U113(mark X1, X2, X3) -> U113(X1, X2, X3),
                  U113(active X1, X2, X3) -> U113(X1, X2, X3),
                        U114(X1, mark X2) -> U114(X1, X2),
                      U114(X1, active X2) -> U114(X1, X2),
                        U114(mark X1, X2) -> U114(X1, X2),
                      U114(active X1, X2) -> U114(X1, X2),
                                 s mark X -> s X,
                               s active X -> s X,
                            length mark X -> length X,
                          length active X -> length X,
                               U13 mark X -> U13 X,
                             U13 active X -> U13 X,
                         isNatList mark X -> isNatList X,
                       isNatList active X -> isNatList X,
                              U122 mark X -> U122 X,
                            U122 active X -> U122 X,
                        U121(X1, mark X2) -> U121(X1, X2),
                      U121(X1, active X2) -> U121(X1, X2),
                        U121(mark X1, X2) -> U121(X1, X2),
                      U121(active X1, X2) -> U121(X1, X2),
                U132(X1, X2, X3, mark X4) -> U132(X1, X2, X3, X4),
              U132(X1, X2, X3, active X4) -> U132(X1, X2, X3, X4),
                U132(X1, X2, mark X3, X4) -> U132(X1, X2, X3, X4),
              U132(X1, X2, active X3, X4) -> U132(X1, X2, X3, X4),
                U132(X1, mark X2, X3, X4) -> U132(X1, X2, X3, X4),
              U132(X1, active X2, X3, X4) -> U132(X1, X2, X3, X4),
                U132(mark X1, X2, X3, X4) -> U132(X1, X2, X3, X4),
              U132(active X1, X2, X3, X4) -> U132(X1, X2, X3, X4),
                U131(X1, X2, X3, mark X4) -> U131(X1, X2, X3, X4),
              U131(X1, X2, X3, active X4) -> U131(X1, X2, X3, X4),
                U131(X1, X2, mark X3, X4) -> U131(X1, X2, X3, X4),
              U131(X1, X2, active X3, X4) -> U131(X1, X2, X3, X4),
                U131(X1, mark X2, X3, X4) -> U131(X1, X2, X3, X4),
              U131(X1, active X2, X3, X4) -> U131(X1, X2, X3, X4),
                U131(mark X1, X2, X3, X4) -> U131(X1, X2, X3, X4),
              U131(active X1, X2, X3, X4) -> U131(X1, X2, X3, X4),
                U133(X1, X2, X3, mark X4) -> U133(X1, X2, X3, X4),
              U133(X1, X2, X3, active X4) -> U133(X1, X2, X3, X4),
                U133(X1, X2, mark X3, X4) -> U133(X1, X2, X3, X4),
              U133(X1, X2, active X3, X4) -> U133(X1, X2, X3, X4),
                U133(X1, mark X2, X3, X4) -> U133(X1, X2, X3, X4),
              U133(X1, active X2, X3, X4) -> U133(X1, X2, X3, X4),
                U133(mark X1, X2, X3, X4) -> U133(X1, X2, X3, X4),
              U133(active X1, X2, X3, X4) -> U133(X1, X2, X3, X4),
                U134(X1, X2, X3, mark X4) -> U134(X1, X2, X3, X4),
              U134(X1, X2, X3, active X4) -> U134(X1, X2, X3, X4),
                U134(X1, X2, mark X3, X4) -> U134(X1, X2, X3, X4),
              U134(X1, X2, active X3, X4) -> U134(X1, X2, X3, X4),
                U134(X1, mark X2, X3, X4) -> U134(X1, X2, X3, X4),
              U134(X1, active X2, X3, X4) -> U134(X1, X2, X3, X4),
                U134(mark X1, X2, X3, X4) -> U134(X1, X2, X3, X4),
              U134(active X1, X2, X3, X4) -> U134(X1, X2, X3, X4),
                U135(X1, X2, X3, mark X4) -> U135(X1, X2, X3, X4),
              U135(X1, X2, X3, active X4) -> U135(X1, X2, X3, X4),
                U135(X1, X2, mark X3, X4) -> U135(X1, X2, X3, X4),
              U135(X1, X2, active X3, X4) -> U135(X1, X2, X3, X4),
                U135(X1, mark X2, X3, X4) -> U135(X1, X2, X3, X4),
              U135(X1, active X2, X3, X4) -> U135(X1, X2, X3, X4),
                U135(mark X1, X2, X3, X4) -> U135(X1, X2, X3, X4),
              U135(active X1, X2, X3, X4) -> U135(X1, X2, X3, X4),
                U136(X1, X2, X3, mark X4) -> U136(X1, X2, X3, X4),
              U136(X1, X2, X3, active X4) -> U136(X1, X2, X3, X4),
                U136(X1, X2, mark X3, X4) -> U136(X1, X2, X3, X4),
              U136(X1, X2, active X3, X4) -> U136(X1, X2, X3, X4),
                U136(X1, mark X2, X3, X4) -> U136(X1, X2, X3, X4),
              U136(X1, active X2, X3, X4) -> U136(X1, X2, X3, X4),
                U136(mark X1, X2, X3, X4) -> U136(X1, X2, X3, X4),
              U136(active X1, X2, X3, X4) -> U136(X1, X2, X3, X4),
                        take(X1, mark X2) -> take(X1, X2),
                      take(X1, active X2) -> take(X1, X2),
                        take(mark X1, X2) -> take(X1, X2),
                      take(active X1, X2) -> take(X1, X2),
                         U22(X1, mark X2) -> U22(X1, X2),
                       U22(X1, active X2) -> U22(X1, X2),
                         U22(mark X1, X2) -> U22(X1, X2),
                       U22(active X1, X2) -> U22(X1, X2),
                         U21(X1, mark X2) -> U21(X1, X2),
                       U21(X1, active X2) -> U21(X1, X2),
                         U21(mark X1, X2) -> U21(X1, X2),
                       U21(active X1, X2) -> U21(X1, X2),
                               U23 mark X -> U23 X,
                             U23 active X -> U23 X,
                         U32(X1, mark X2) -> U32(X1, X2),
                       U32(X1, active X2) -> U32(X1, X2),
                         U32(mark X1, X2) -> U32(X1, X2),
                       U32(active X1, X2) -> U32(X1, X2),
                         U31(X1, mark X2) -> U31(X1, X2),
                       U31(X1, active X2) -> U31(X1, X2),
                         U31(mark X1, X2) -> U31(X1, X2),
                       U31(active X1, X2) -> U31(X1, X2),
                               U33 mark X -> U33 X,
                             U33 active X -> U33 X,
                     U42(X1, X2, mark X3) -> U42(X1, X2, X3),
                   U42(X1, X2, active X3) -> U42(X1, X2, X3),
                     U42(X1, mark X2, X3) -> U42(X1, X2, X3),
                   U42(X1, active X2, X3) -> U42(X1, X2, X3),
                     U42(mark X1, X2, X3) -> U42(X1, X2, X3),
                   U42(active X1, X2, X3) -> U42(X1, X2, X3),
                     U41(X1, X2, mark X3) -> U41(X1, X2, X3),
                   U41(X1, X2, active X3) -> U41(X1, X2, X3),
                     U41(X1, mark X2, X3) -> U41(X1, X2, X3),
                   U41(X1, active X2, X3) -> U41(X1, X2, X3),
                     U41(mark X1, X2, X3) -> U41(X1, X2, X3),
                   U41(active X1, X2, X3) -> U41(X1, X2, X3),
                     U43(X1, X2, mark X3) -> U43(X1, X2, X3),
                   U43(X1, X2, active X3) -> U43(X1, X2, X3),
                     U43(X1, mark X2, X3) -> U43(X1, X2, X3),
                   U43(X1, active X2, X3) -> U43(X1, X2, X3),
                     U43(mark X1, X2, X3) -> U43(X1, X2, X3),
                   U43(active X1, X2, X3) -> U43(X1, X2, X3),
                     U44(X1, X2, mark X3) -> U44(X1, X2, X3),
                   U44(X1, X2, active X3) -> U44(X1, X2, X3),
                     U44(X1, mark X2, X3) -> U44(X1, X2, X3),
                   U44(X1, active X2, X3) -> U44(X1, X2, X3),
                     U44(mark X1, X2, X3) -> U44(X1, X2, X3),
                   U44(active X1, X2, X3) -> U44(X1, X2, X3),
                         U45(X1, mark X2) -> U45(X1, X2),
                       U45(X1, active X2) -> U45(X1, X2),
                         U45(mark X1, X2) -> U45(X1, X2),
                       U45(active X1, X2) -> U45(X1, X2),
                               U46 mark X -> U46 X,
                             U46 active X -> U46 X,
                               U52 mark X -> U52 X,
                             U52 active X -> U52 X,
                         U51(X1, mark X2) -> U51(X1, X2),
                       U51(X1, active X2) -> U51(X1, X2),
                         U51(mark X1, X2) -> U51(X1, X2),
                       U51(active X1, X2) -> U51(X1, X2),
                               U62 mark X -> U62 X,
                             U62 active X -> U62 X,
                         U61(X1, mark X2) -> U61(X1, X2),
                       U61(X1, active X2) -> U61(X1, X2),
                         U61(mark X1, X2) -> U61(X1, X2),
                       U61(active X1, X2) -> U61(X1, X2),
                               U71 mark X -> U71 X,
                             U71 active X -> U71 X,
                               U81 mark X -> U81 X,
                             U81 active X -> U81 X,
                     U92(X1, X2, mark X3) -> U92(X1, X2, X3),
                   U92(X1, X2, active X3) -> U92(X1, X2, X3),
                     U92(X1, mark X2, X3) -> U92(X1, X2, X3),
                   U92(X1, active X2, X3) -> U92(X1, X2, X3),
                     U92(mark X1, X2, X3) -> U92(X1, X2, X3),
                   U92(active X1, X2, X3) -> U92(X1, X2, X3),
                     U91(X1, X2, mark X3) -> U91(X1, X2, X3),
                   U91(X1, X2, active X3) -> U91(X1, X2, X3),
                     U91(X1, mark X2, X3) -> U91(X1, X2, X3),
                   U91(X1, active X2, X3) -> U91(X1, X2, X3),
                     U91(mark X1, X2, X3) -> U91(X1, X2, X3),
                   U91(active X1, X2, X3) -> U91(X1, X2, X3),
                     U93(X1, X2, mark X3) -> U93(X1, X2, X3),
                   U93(X1, X2, active X3) -> U93(X1, X2, X3),
                     U93(X1, mark X2, X3) -> U93(X1, X2, X3),
                   U93(X1, active X2, X3) -> U93(X1, X2, X3),
                     U93(mark X1, X2, X3) -> U93(X1, X2, X3),
                   U93(active X1, X2, X3) -> U93(X1, X2, X3),
                     U94(X1, X2, mark X3) -> U94(X1, X2, X3),
                   U94(X1, X2, active X3) -> U94(X1, X2, X3),
                     U94(X1, mark X2, X3) -> U94(X1, X2, X3),
                   U94(X1, active X2, X3) -> U94(X1, X2, X3),
                     U94(mark X1, X2, X3) -> U94(X1, X2, X3),
                   U94(active X1, X2, X3) -> U94(X1, X2, X3),
                         U95(X1, mark X2) -> U95(X1, X2),
                       U95(X1, active X2) -> U95(X1, X2),
                         U95(mark X1, X2) -> U95(X1, X2),
                       U95(active X1, X2) -> U95(X1, X2),
                               U96 mark X -> U96 X,
                             U96 active X -> U96 X
      }
      Open
     
     
     
     SCC (2):
      Strict:
       {  length# mark X -> length# X,
        length# active X -> length# X}
      Weak:
      {
                        mark cons(X1, X2) -> active cons(mark X1, X2),
                                 mark 0() -> active 0(),
                             mark zeros() -> active zeros(),
                    mark U102(X1, X2, X3) -> active U102(mark X1, X2, X3),
                         mark isNatKind X -> active isNatKind X,
                    mark U101(X1, X2, X3) -> active U101(mark X1, X2, X3),
                                mark tt() -> active tt(),
                    mark U103(X1, X2, X3) -> active U103(mark X1, X2, X3),
                    mark isNatIListKind X -> active isNatIListKind X,
                    mark U104(X1, X2, X3) -> active U104(mark X1, X2, X3),
                        mark U105(X1, X2) -> active U105(mark X1, X2),
                             mark isNat X -> active isNat X,
                              mark U106 X -> active U106 mark X,
                        mark isNatIList X -> active isNatIList X,
                         mark U12(X1, X2) -> active U12(mark X1, X2),
                         mark U11(X1, X2) -> active U11(mark X1, X2),
                    mark U112(X1, X2, X3) -> active U112(mark X1, X2, X3),
                    mark U111(X1, X2, X3) -> active U111(mark X1, X2, X3),
                    mark U113(X1, X2, X3) -> active U113(mark X1, X2, X3),
                        mark U114(X1, X2) -> active U114(mark X1, X2),
                                 mark s X -> active s mark X,
                            mark length X -> active length mark X,
                               mark U13 X -> active U13 mark X,
                         mark isNatList X -> active isNatList X,
                              mark U122 X -> active U122 mark X,
                        mark U121(X1, X2) -> active U121(mark X1, X2),
                               mark nil() -> active nil(),
                mark U132(X1, X2, X3, X4) -> active U132(mark X1, X2, X3, X4),
                mark U131(X1, X2, X3, X4) -> active U131(mark X1, X2, X3, X4),
                mark U133(X1, X2, X3, X4) -> active U133(mark X1, X2, X3, X4),
                mark U134(X1, X2, X3, X4) -> active U134(mark X1, X2, X3, X4),
                mark U135(X1, X2, X3, X4) -> active U135(mark X1, X2, X3, X4),
                mark U136(X1, X2, X3, X4) -> active U136(mark X1, X2, X3, X4),
                        mark take(X1, X2) -> active take(mark X1, mark X2),
                         mark U22(X1, X2) -> active U22(mark X1, X2),
                         mark U21(X1, X2) -> active U21(mark X1, X2),
                               mark U23 X -> active U23 mark X,
                         mark U32(X1, X2) -> active U32(mark X1, X2),
                         mark U31(X1, X2) -> active U31(mark X1, X2),
                               mark U33 X -> active U33 mark X,
                     mark U42(X1, X2, X3) -> active U42(mark X1, X2, X3),
                     mark U41(X1, X2, X3) -> active U41(mark X1, X2, X3),
                     mark U43(X1, X2, X3) -> active U43(mark X1, X2, X3),
                     mark U44(X1, X2, X3) -> active U44(mark X1, X2, X3),
                         mark U45(X1, X2) -> active U45(mark X1, X2),
                               mark U46 X -> active U46 mark X,
                               mark U52 X -> active U52 mark X,
                         mark U51(X1, X2) -> active U51(mark X1, X2),
                               mark U62 X -> active U62 mark X,
                         mark U61(X1, X2) -> active U61(mark X1, X2),
                               mark U71 X -> active U71 mark X,
                               mark U81 X -> active U81 mark X,
                     mark U92(X1, X2, X3) -> active U92(mark X1, X2, X3),
                     mark U91(X1, X2, X3) -> active U91(mark X1, X2, X3),
                     mark U93(X1, X2, X3) -> active U93(mark X1, X2, X3),
                     mark U94(X1, X2, X3) -> active U94(mark X1, X2, X3),
                         mark U95(X1, X2) -> active U95(mark X1, X2),
                               mark U96 X -> active U96 mark X,
                        cons(X1, mark X2) -> cons(X1, X2),
                      cons(X1, active X2) -> cons(X1, X2),
                        cons(mark X1, X2) -> cons(X1, X2),
                      cons(active X1, X2) -> cons(X1, X2),
                           active zeros() -> mark cons(0(), zeros()),
                active U102(tt(), V1, V2) -> mark U103(isNatIListKind V2, V1, V2),
                     active isNatKind 0() -> mark tt(),
                    active isNatKind s V1 -> mark U81 isNatKind V1,
               active isNatKind length V1 -> mark U71 isNatIListKind V1,
                active U101(tt(), V1, V2) -> mark U102(isNatKind V1, V1, V2),
                active U103(tt(), V1, V2) -> mark U104(isNatIListKind V2, V1, V2),
       active isNatIListKind cons(V1, V2) -> mark U51(isNatKind V1, V2),
            active isNatIListKind zeros() -> mark tt(),
              active isNatIListKind nil() -> mark tt(),
       active isNatIListKind take(V1, V2) -> mark U61(isNatKind V1, V2),
                active U104(tt(), V1, V2) -> mark U105(isNat V1, V2),
                    active U105(tt(), V2) -> mark U106 isNatIList V2,
                         active isNat 0() -> mark tt(),
                        active isNat s V1 -> mark U21(isNatKind V1, V1),
                   active isNat length V1 -> mark U11(isNatIListKind V1, V1),
                         active U106 tt() -> mark tt(),
                      active isNatIList V -> mark U31(isNatIListKind V, V),
           active isNatIList cons(V1, V2) -> mark U41(isNatKind V1, V1, V2),
                active isNatIList zeros() -> mark tt(),
                     active U12(tt(), V1) -> mark U13 isNatList V1,
                     active U11(tt(), V1) -> mark U12(isNatIListKind V1, V1),
                  active U112(tt(), L, N) -> mark U113(isNat N, L, N),
                  active U111(tt(), L, N) -> mark U112(isNatIListKind L, L, N),
                  active U113(tt(), L, N) -> mark U114(isNatKind N, L),
                     active U114(tt(), L) -> mark s length L,
                 active length cons(N, L) -> mark U111(isNatList L, L, N),
                      active length nil() -> mark 0(),
                          active U13 tt() -> mark tt(),
            active isNatList cons(V1, V2) -> mark U91(isNatKind V1, V1, V2),
                   active isNatList nil() -> mark tt(),
            active isNatList take(V1, V2) -> mark U101(isNatKind V1, V1, V2),
                         active U122 tt() -> mark nil(),
                    active U121(tt(), IL) -> mark U122 isNatIListKind IL,
              active U132(tt(), IL, M, N) -> mark U133(isNat M, IL, M, N),
              active U131(tt(), IL, M, N) -> mark U132(isNatIListKind IL, IL, M, N),
              active U133(tt(), IL, M, N) -> mark U134(isNatKind M, IL, M, N),
              active U134(tt(), IL, M, N) -> mark U135(isNat N, IL, M, N),
              active U135(tt(), IL, M, N) -> mark U136(isNatKind N, IL, M, N),
              active U136(tt(), IL, M, N) -> mark cons(N, take(M, IL)),
                     active take(0(), IL) -> mark U121(isNatIList IL, IL),
            active take(s M, cons(N, IL)) -> mark U131(isNatIList IL, IL, M, N),
                     active U22(tt(), V1) -> mark U23 isNat V1,
                     active U21(tt(), V1) -> mark U22(isNatKind V1, V1),
                          active U23 tt() -> mark tt(),
                      active U32(tt(), V) -> mark U33 isNatList V,
                      active U31(tt(), V) -> mark U32(isNatIListKind V, V),
                          active U33 tt() -> mark tt(),
                 active U42(tt(), V1, V2) -> mark U43(isNatIListKind V2, V1, V2),
                 active U41(tt(), V1, V2) -> mark U42(isNatKind V1, V1, V2),
                 active U43(tt(), V1, V2) -> mark U44(isNatIListKind V2, V1, V2),
                 active U44(tt(), V1, V2) -> mark U45(isNat V1, V2),
                     active U45(tt(), V2) -> mark U46 isNatIList V2,
                          active U46 tt() -> mark tt(),
                          active U52 tt() -> mark tt(),
                     active U51(tt(), V2) -> mark U52 isNatIListKind V2,
                          active U62 tt() -> mark tt(),
                     active U61(tt(), V2) -> mark U62 isNatIListKind V2,
                          active U71 tt() -> mark tt(),
                          active U81 tt() -> mark tt(),
                 active U92(tt(), V1, V2) -> mark U93(isNatIListKind V2, V1, V2),
                 active U91(tt(), V1, V2) -> mark U92(isNatKind V1, V1, V2),
                 active U93(tt(), V1, V2) -> mark U94(isNatIListKind V2, V1, V2),
                 active U94(tt(), V1, V2) -> mark U95(isNat V1, V2),
                     active U95(tt(), V2) -> mark U96 isNatList V2,
                          active U96 tt() -> mark tt(),
                    U102(X1, X2, mark X3) -> U102(X1, X2, X3),
                  U102(X1, X2, active X3) -> U102(X1, X2, X3),
                    U102(X1, mark X2, X3) -> U102(X1, X2, X3),
                  U102(X1, active X2, X3) -> U102(X1, X2, X3),
                    U102(mark X1, X2, X3) -> U102(X1, X2, X3),
                  U102(active X1, X2, X3) -> U102(X1, X2, X3),
                         isNatKind mark X -> isNatKind X,
                       isNatKind active X -> isNatKind X,
                    U101(X1, X2, mark X3) -> U101(X1, X2, X3),
                  U101(X1, X2, active X3) -> U101(X1, X2, X3),
                    U101(X1, mark X2, X3) -> U101(X1, X2, X3),
                  U101(X1, active X2, X3) -> U101(X1, X2, X3),
                    U101(mark X1, X2, X3) -> U101(X1, X2, X3),
                  U101(active X1, X2, X3) -> U101(X1, X2, X3),
                    U103(X1, X2, mark X3) -> U103(X1, X2, X3),
                  U103(X1, X2, active X3) -> U103(X1, X2, X3),
                    U103(X1, mark X2, X3) -> U103(X1, X2, X3),
                  U103(X1, active X2, X3) -> U103(X1, X2, X3),
                    U103(mark X1, X2, X3) -> U103(X1, X2, X3),
                  U103(active X1, X2, X3) -> U103(X1, X2, X3),
                    isNatIListKind mark X -> isNatIListKind X,
                  isNatIListKind active X -> isNatIListKind X,
                    U104(X1, X2, mark X3) -> U104(X1, X2, X3),
                  U104(X1, X2, active X3) -> U104(X1, X2, X3),
                    U104(X1, mark X2, X3) -> U104(X1, X2, X3),
                  U104(X1, active X2, X3) -> U104(X1, X2, X3),
                    U104(mark X1, X2, X3) -> U104(X1, X2, X3),
                  U104(active X1, X2, X3) -> U104(X1, X2, X3),
                        U105(X1, mark X2) -> U105(X1, X2),
                      U105(X1, active X2) -> U105(X1, X2),
                        U105(mark X1, X2) -> U105(X1, X2),
                      U105(active X1, X2) -> U105(X1, X2),
                             isNat mark X -> isNat X,
                           isNat active X -> isNat X,
                              U106 mark X -> U106 X,
                            U106 active X -> U106 X,
                        isNatIList mark X -> isNatIList X,
                      isNatIList active X -> isNatIList X,
                         U12(X1, mark X2) -> U12(X1, X2),
                       U12(X1, active X2) -> U12(X1, X2),
                         U12(mark X1, X2) -> U12(X1, X2),
                       U12(active X1, X2) -> U12(X1, X2),
                         U11(X1, mark X2) -> U11(X1, X2),
                       U11(X1, active X2) -> U11(X1, X2),
                         U11(mark X1, X2) -> U11(X1, X2),
                       U11(active X1, X2) -> U11(X1, X2),
                    U112(X1, X2, mark X3) -> U112(X1, X2, X3),
                  U112(X1, X2, active X3) -> U112(X1, X2, X3),
                    U112(X1, mark X2, X3) -> U112(X1, X2, X3),
                  U112(X1, active X2, X3) -> U112(X1, X2, X3),
                    U112(mark X1, X2, X3) -> U112(X1, X2, X3),
                  U112(active X1, X2, X3) -> U112(X1, X2, X3),
                    U111(X1, X2, mark X3) -> U111(X1, X2, X3),
                  U111(X1, X2, active X3) -> U111(X1, X2, X3),
                    U111(X1, mark X2, X3) -> U111(X1, X2, X3),
                  U111(X1, active X2, X3) -> U111(X1, X2, X3),
                    U111(mark X1, X2, X3) -> U111(X1, X2, X3),
                  U111(active X1, X2, X3) -> U111(X1, X2, X3),
                    U113(X1, X2, mark X3) -> U113(X1, X2, X3),
                  U113(X1, X2, active X3) -> U113(X1, X2, X3),
                    U113(X1, mark X2, X3) -> U113(X1, X2, X3),
                  U113(X1, active X2, X3) -> U113(X1, X2, X3),
                    U113(mark X1, X2, X3) -> U113(X1, X2, X3),
                  U113(active X1, X2, X3) -> U113(X1, X2, X3),
                        U114(X1, mark X2) -> U114(X1, X2),
                      U114(X1, active X2) -> U114(X1, X2),
                        U114(mark X1, X2) -> U114(X1, X2),
                      U114(active X1, X2) -> U114(X1, X2),
                                 s mark X -> s X,
                               s active X -> s X,
                            length mark X -> length X,
                          length active X -> length X,
                               U13 mark X -> U13 X,
                             U13 active X -> U13 X,
                         isNatList mark X -> isNatList X,
                       isNatList active X -> isNatList X,
                              U122 mark X -> U122 X,
                            U122 active X -> U122 X,
                        U121(X1, mark X2) -> U121(X1, X2),
                      U121(X1, active X2) -> U121(X1, X2),
                        U121(mark X1, X2) -> U121(X1, X2),
                      U121(active X1, X2) -> U121(X1, X2),
                U132(X1, X2, X3, mark X4) -> U132(X1, X2, X3, X4),
              U132(X1, X2, X3, active X4) -> U132(X1, X2, X3, X4),
                U132(X1, X2, mark X3, X4) -> U132(X1, X2, X3, X4),
              U132(X1, X2, active X3, X4) -> U132(X1, X2, X3, X4),
                U132(X1, mark X2, X3, X4) -> U132(X1, X2, X3, X4),
              U132(X1, active X2, X3, X4) -> U132(X1, X2, X3, X4),
                U132(mark X1, X2, X3, X4) -> U132(X1, X2, X3, X4),
              U132(active X1, X2, X3, X4) -> U132(X1, X2, X3, X4),
                U131(X1, X2, X3, mark X4) -> U131(X1, X2, X3, X4),
              U131(X1, X2, X3, active X4) -> U131(X1, X2, X3, X4),
                U131(X1, X2, mark X3, X4) -> U131(X1, X2, X3, X4),
              U131(X1, X2, active X3, X4) -> U131(X1, X2, X3, X4),
                U131(X1, mark X2, X3, X4) -> U131(X1, X2, X3, X4),
              U131(X1, active X2, X3, X4) -> U131(X1, X2, X3, X4),
                U131(mark X1, X2, X3, X4) -> U131(X1, X2, X3, X4),
              U131(active X1, X2, X3, X4) -> U131(X1, X2, X3, X4),
                U133(X1, X2, X3, mark X4) -> U133(X1, X2, X3, X4),
              U133(X1, X2, X3, active X4) -> U133(X1, X2, X3, X4),
                U133(X1, X2, mark X3, X4) -> U133(X1, X2, X3, X4),
              U133(X1, X2, active X3, X4) -> U133(X1, X2, X3, X4),
                U133(X1, mark X2, X3, X4) -> U133(X1, X2, X3, X4),
              U133(X1, active X2, X3, X4) -> U133(X1, X2, X3, X4),
                U133(mark X1, X2, X3, X4) -> U133(X1, X2, X3, X4),
              U133(active X1, X2, X3, X4) -> U133(X1, X2, X3, X4),
                U134(X1, X2, X3, mark X4) -> U134(X1, X2, X3, X4),
              U134(X1, X2, X3, active X4) -> U134(X1, X2, X3, X4),
                U134(X1, X2, mark X3, X4) -> U134(X1, X2, X3, X4),
              U134(X1, X2, active X3, X4) -> U134(X1, X2, X3, X4),
                U134(X1, mark X2, X3, X4) -> U134(X1, X2, X3, X4),
              U134(X1, active X2, X3, X4) -> U134(X1, X2, X3, X4),
                U134(mark X1, X2, X3, X4) -> U134(X1, X2, X3, X4),
              U134(active X1, X2, X3, X4) -> U134(X1, X2, X3, X4),
                U135(X1, X2, X3, mark X4) -> U135(X1, X2, X3, X4),
              U135(X1, X2, X3, active X4) -> U135(X1, X2, X3, X4),
                U135(X1, X2, mark X3, X4) -> U135(X1, X2, X3, X4),
              U135(X1, X2, active X3, X4) -> U135(X1, X2, X3, X4),
                U135(X1, mark X2, X3, X4) -> U135(X1, X2, X3, X4),
              U135(X1, active X2, X3, X4) -> U135(X1, X2, X3, X4),
                U135(mark X1, X2, X3, X4) -> U135(X1, X2, X3, X4),
              U135(active X1, X2, X3, X4) -> U135(X1, X2, X3, X4),
                U136(X1, X2, X3, mark X4) -> U136(X1, X2, X3, X4),
              U136(X1, X2, X3, active X4) -> U136(X1, X2, X3, X4),
                U136(X1, X2, mark X3, X4) -> U136(X1, X2, X3, X4),
              U136(X1, X2, active X3, X4) -> U136(X1, X2, X3, X4),
                U136(X1, mark X2, X3, X4) -> U136(X1, X2, X3, X4),
              U136(X1, active X2, X3, X4) -> U136(X1, X2, X3, X4),
                U136(mark X1, X2, X3, X4) -> U136(X1, X2, X3, X4),
              U136(active X1, X2, X3, X4) -> U136(X1, X2, X3, X4),
                        take(X1, mark X2) -> take(X1, X2),
                      take(X1, active X2) -> take(X1, X2),
                        take(mark X1, X2) -> take(X1, X2),
                      take(active X1, X2) -> take(X1, X2),
                         U22(X1, mark X2) -> U22(X1, X2),
                       U22(X1, active X2) -> U22(X1, X2),
                         U22(mark X1, X2) -> U22(X1, X2),
                       U22(active X1, X2) -> U22(X1, X2),
                         U21(X1, mark X2) -> U21(X1, X2),
                       U21(X1, active X2) -> U21(X1, X2),
                         U21(mark X1, X2) -> U21(X1, X2),
                       U21(active X1, X2) -> U21(X1, X2),
                               U23 mark X -> U23 X,
                             U23 active X -> U23 X,
                         U32(X1, mark X2) -> U32(X1, X2),
                       U32(X1, active X2) -> U32(X1, X2),
                         U32(mark X1, X2) -> U32(X1, X2),
                       U32(active X1, X2) -> U32(X1, X2),
                         U31(X1, mark X2) -> U31(X1, X2),
                       U31(X1, active X2) -> U31(X1, X2),
                         U31(mark X1, X2) -> U31(X1, X2),
                       U31(active X1, X2) -> U31(X1, X2),
                               U33 mark X -> U33 X,
                             U33 active X -> U33 X,
                     U42(X1, X2, mark X3) -> U42(X1, X2, X3),
                   U42(X1, X2, active X3) -> U42(X1, X2, X3),
                     U42(X1, mark X2, X3) -> U42(X1, X2, X3),
                   U42(X1, active X2, X3) -> U42(X1, X2, X3),
                     U42(mark X1, X2, X3) -> U42(X1, X2, X3),
                   U42(active X1, X2, X3) -> U42(X1, X2, X3),
                     U41(X1, X2, mark X3) -> U41(X1, X2, X3),
                   U41(X1, X2, active X3) -> U41(X1, X2, X3),
                     U41(X1, mark X2, X3) -> U41(X1, X2, X3),
                   U41(X1, active X2, X3) -> U41(X1, X2, X3),
                     U41(mark X1, X2, X3) -> U41(X1, X2, X3),
                   U41(active X1, X2, X3) -> U41(X1, X2, X3),
                     U43(X1, X2, mark X3) -> U43(X1, X2, X3),
                   U43(X1, X2, active X3) -> U43(X1, X2, X3),
                     U43(X1, mark X2, X3) -> U43(X1, X2, X3),
                   U43(X1, active X2, X3) -> U43(X1, X2, X3),
                     U43(mark X1, X2, X3) -> U43(X1, X2, X3),
                   U43(active X1, X2, X3) -> U43(X1, X2, X3),
                     U44(X1, X2, mark X3) -> U44(X1, X2, X3),
                   U44(X1, X2, active X3) -> U44(X1, X2, X3),
                     U44(X1, mark X2, X3) -> U44(X1, X2, X3),
                   U44(X1, active X2, X3) -> U44(X1, X2, X3),
                     U44(mark X1, X2, X3) -> U44(X1, X2, X3),
                   U44(active X1, X2, X3) -> U44(X1, X2, X3),
                         U45(X1, mark X2) -> U45(X1, X2),
                       U45(X1, active X2) -> U45(X1, X2),
                         U45(mark X1, X2) -> U45(X1, X2),
                       U45(active X1, X2) -> U45(X1, X2),
                               U46 mark X -> U46 X,
                             U46 active X -> U46 X,
                               U52 mark X -> U52 X,
                             U52 active X -> U52 X,
                         U51(X1, mark X2) -> U51(X1, X2),
                       U51(X1, active X2) -> U51(X1, X2),
                         U51(mark X1, X2) -> U51(X1, X2),
                       U51(active X1, X2) -> U51(X1, X2),
                               U62 mark X -> U62 X,
                             U62 active X -> U62 X,
                         U61(X1, mark X2) -> U61(X1, X2),
                       U61(X1, active X2) -> U61(X1, X2),
                         U61(mark X1, X2) -> U61(X1, X2),
                       U61(active X1, X2) -> U61(X1, X2),
                               U71 mark X -> U71 X,
                             U71 active X -> U71 X,
                               U81 mark X -> U81 X,
                             U81 active X -> U81 X,
                     U92(X1, X2, mark X3) -> U92(X1, X2, X3),
                   U92(X1, X2, active X3) -> U92(X1, X2, X3),
                     U92(X1, mark X2, X3) -> U92(X1, X2, X3),
                   U92(X1, active X2, X3) -> U92(X1, X2, X3),
                     U92(mark X1, X2, X3) -> U92(X1, X2, X3),
                   U92(active X1, X2, X3) -> U92(X1, X2, X3),
                     U91(X1, X2, mark X3) -> U91(X1, X2, X3),
                   U91(X1, X2, active X3) -> U91(X1, X2, X3),
                     U91(X1, mark X2, X3) -> U91(X1, X2, X3),
                   U91(X1, active X2, X3) -> U91(X1, X2, X3),
                     U91(mark X1, X2, X3) -> U91(X1, X2, X3),
                   U91(active X1, X2, X3) -> U91(X1, X2, X3),
                     U93(X1, X2, mark X3) -> U93(X1, X2, X3),
                   U93(X1, X2, active X3) -> U93(X1, X2, X3),
                     U93(X1, mark X2, X3) -> U93(X1, X2, X3),
                   U93(X1, active X2, X3) -> U93(X1, X2, X3),
                     U93(mark X1, X2, X3) -> U93(X1, X2, X3),
                   U93(active X1, X2, X3) -> U93(X1, X2, X3),
                     U94(X1, X2, mark X3) -> U94(X1, X2, X3),
                   U94(X1, X2, active X3) -> U94(X1, X2, X3),
                     U94(X1, mark X2, X3) -> U94(X1, X2, X3),
                   U94(X1, active X2, X3) -> U94(X1, X2, X3),
                     U94(mark X1, X2, X3) -> U94(X1, X2, X3),
                   U94(active X1, X2, X3) -> U94(X1, X2, X3),
                         U95(X1, mark X2) -> U95(X1, X2),
                       U95(X1, active X2) -> U95(X1, X2),
                         U95(mark X1, X2) -> U95(X1, X2),
                       U95(active X1, X2) -> U95(X1, X2),
                               U96 mark X -> U96 X,
                             U96 active X -> U96 X
      }
      Open
     
     
     SCC (2):
      Strict:
       {  isNatList# mark X -> isNatList# X,
        isNatList# active X -> isNatList# X}
      Weak:
      {
                        mark cons(X1, X2) -> active cons(mark X1, X2),
                                 mark 0() -> active 0(),
                             mark zeros() -> active zeros(),
                    mark U102(X1, X2, X3) -> active U102(mark X1, X2, X3),
                         mark isNatKind X -> active isNatKind X,
                    mark U101(X1, X2, X3) -> active U101(mark X1, X2, X3),
                                mark tt() -> active tt(),
                    mark U103(X1, X2, X3) -> active U103(mark X1, X2, X3),
                    mark isNatIListKind X -> active isNatIListKind X,
                    mark U104(X1, X2, X3) -> active U104(mark X1, X2, X3),
                        mark U105(X1, X2) -> active U105(mark X1, X2),
                             mark isNat X -> active isNat X,
                              mark U106 X -> active U106 mark X,
                        mark isNatIList X -> active isNatIList X,
                         mark U12(X1, X2) -> active U12(mark X1, X2),
                         mark U11(X1, X2) -> active U11(mark X1, X2),
                    mark U112(X1, X2, X3) -> active U112(mark X1, X2, X3),
                    mark U111(X1, X2, X3) -> active U111(mark X1, X2, X3),
                    mark U113(X1, X2, X3) -> active U113(mark X1, X2, X3),
                        mark U114(X1, X2) -> active U114(mark X1, X2),
                                 mark s X -> active s mark X,
                            mark length X -> active length mark X,
                               mark U13 X -> active U13 mark X,
                         mark isNatList X -> active isNatList X,
                              mark U122 X -> active U122 mark X,
                        mark U121(X1, X2) -> active U121(mark X1, X2),
                               mark nil() -> active nil(),
                mark U132(X1, X2, X3, X4) -> active U132(mark X1, X2, X3, X4),
                mark U131(X1, X2, X3, X4) -> active U131(mark X1, X2, X3, X4),
                mark U133(X1, X2, X3, X4) -> active U133(mark X1, X2, X3, X4),
                mark U134(X1, X2, X3, X4) -> active U134(mark X1, X2, X3, X4),
                mark U135(X1, X2, X3, X4) -> active U135(mark X1, X2, X3, X4),
                mark U136(X1, X2, X3, X4) -> active U136(mark X1, X2, X3, X4),
                        mark take(X1, X2) -> active take(mark X1, mark X2),
                         mark U22(X1, X2) -> active U22(mark X1, X2),
                         mark U21(X1, X2) -> active U21(mark X1, X2),
                               mark U23 X -> active U23 mark X,
                         mark U32(X1, X2) -> active U32(mark X1, X2),
                         mark U31(X1, X2) -> active U31(mark X1, X2),
                               mark U33 X -> active U33 mark X,
                     mark U42(X1, X2, X3) -> active U42(mark X1, X2, X3),
                     mark U41(X1, X2, X3) -> active U41(mark X1, X2, X3),
                     mark U43(X1, X2, X3) -> active U43(mark X1, X2, X3),
                     mark U44(X1, X2, X3) -> active U44(mark X1, X2, X3),
                         mark U45(X1, X2) -> active U45(mark X1, X2),
                               mark U46 X -> active U46 mark X,
                               mark U52 X -> active U52 mark X,
                         mark U51(X1, X2) -> active U51(mark X1, X2),
                               mark U62 X -> active U62 mark X,
                         mark U61(X1, X2) -> active U61(mark X1, X2),
                               mark U71 X -> active U71 mark X,
                               mark U81 X -> active U81 mark X,
                     mark U92(X1, X2, X3) -> active U92(mark X1, X2, X3),
                     mark U91(X1, X2, X3) -> active U91(mark X1, X2, X3),
                     mark U93(X1, X2, X3) -> active U93(mark X1, X2, X3),
                     mark U94(X1, X2, X3) -> active U94(mark X1, X2, X3),
                         mark U95(X1, X2) -> active U95(mark X1, X2),
                               mark U96 X -> active U96 mark X,
                        cons(X1, mark X2) -> cons(X1, X2),
                      cons(X1, active X2) -> cons(X1, X2),
                        cons(mark X1, X2) -> cons(X1, X2),
                      cons(active X1, X2) -> cons(X1, X2),
                           active zeros() -> mark cons(0(), zeros()),
                active U102(tt(), V1, V2) -> mark U103(isNatIListKind V2, V1, V2),
                     active isNatKind 0() -> mark tt(),
                    active isNatKind s V1 -> mark U81 isNatKind V1,
               active isNatKind length V1 -> mark U71 isNatIListKind V1,
                active U101(tt(), V1, V2) -> mark U102(isNatKind V1, V1, V2),
                active U103(tt(), V1, V2) -> mark U104(isNatIListKind V2, V1, V2),
       active isNatIListKind cons(V1, V2) -> mark U51(isNatKind V1, V2),
            active isNatIListKind zeros() -> mark tt(),
              active isNatIListKind nil() -> mark tt(),
       active isNatIListKind take(V1, V2) -> mark U61(isNatKind V1, V2),
                active U104(tt(), V1, V2) -> mark U105(isNat V1, V2),
                    active U105(tt(), V2) -> mark U106 isNatIList V2,
                         active isNat 0() -> mark tt(),
                        active isNat s V1 -> mark U21(isNatKind V1, V1),
                   active isNat length V1 -> mark U11(isNatIListKind V1, V1),
                         active U106 tt() -> mark tt(),
                      active isNatIList V -> mark U31(isNatIListKind V, V),
           active isNatIList cons(V1, V2) -> mark U41(isNatKind V1, V1, V2),
                active isNatIList zeros() -> mark tt(),
                     active U12(tt(), V1) -> mark U13 isNatList V1,
                     active U11(tt(), V1) -> mark U12(isNatIListKind V1, V1),
                  active U112(tt(), L, N) -> mark U113(isNat N, L, N),
                  active U111(tt(), L, N) -> mark U112(isNatIListKind L, L, N),
                  active U113(tt(), L, N) -> mark U114(isNatKind N, L),
                     active U114(tt(), L) -> mark s length L,
                 active length cons(N, L) -> mark U111(isNatList L, L, N),
                      active length nil() -> mark 0(),
                          active U13 tt() -> mark tt(),
            active isNatList cons(V1, V2) -> mark U91(isNatKind V1, V1, V2),
                   active isNatList nil() -> mark tt(),
            active isNatList take(V1, V2) -> mark U101(isNatKind V1, V1, V2),
                         active U122 tt() -> mark nil(),
                    active U121(tt(), IL) -> mark U122 isNatIListKind IL,
              active U132(tt(), IL, M, N) -> mark U133(isNat M, IL, M, N),
              active U131(tt(), IL, M, N) -> mark U132(isNatIListKind IL, IL, M, N),
              active U133(tt(), IL, M, N) -> mark U134(isNatKind M, IL, M, N),
              active U134(tt(), IL, M, N) -> mark U135(isNat N, IL, M, N),
              active U135(tt(), IL, M, N) -> mark U136(isNatKind N, IL, M, N),
              active U136(tt(), IL, M, N) -> mark cons(N, take(M, IL)),
                     active take(0(), IL) -> mark U121(isNatIList IL, IL),
            active take(s M, cons(N, IL)) -> mark U131(isNatIList IL, IL, M, N),
                     active U22(tt(), V1) -> mark U23 isNat V1,
                     active U21(tt(), V1) -> mark U22(isNatKind V1, V1),
                          active U23 tt() -> mark tt(),
                      active U32(tt(), V) -> mark U33 isNatList V,
                      active U31(tt(), V) -> mark U32(isNatIListKind V, V),
                          active U33 tt() -> mark tt(),
                 active U42(tt(), V1, V2) -> mark U43(isNatIListKind V2, V1, V2),
                 active U41(tt(), V1, V2) -> mark U42(isNatKind V1, V1, V2),
                 active U43(tt(), V1, V2) -> mark U44(isNatIListKind V2, V1, V2),
                 active U44(tt(), V1, V2) -> mark U45(isNat V1, V2),
                     active U45(tt(), V2) -> mark U46 isNatIList V2,
                          active U46 tt() -> mark tt(),
                          active U52 tt() -> mark tt(),
                     active U51(tt(), V2) -> mark U52 isNatIListKind V2,
                          active U62 tt() -> mark tt(),
                     active U61(tt(), V2) -> mark U62 isNatIListKind V2,
                          active U71 tt() -> mark tt(),
                          active U81 tt() -> mark tt(),
                 active U92(tt(), V1, V2) -> mark U93(isNatIListKind V2, V1, V2),
                 active U91(tt(), V1, V2) -> mark U92(isNatKind V1, V1, V2),
                 active U93(tt(), V1, V2) -> mark U94(isNatIListKind V2, V1, V2),
                 active U94(tt(), V1, V2) -> mark U95(isNat V1, V2),
                     active U95(tt(), V2) -> mark U96 isNatList V2,
                          active U96 tt() -> mark tt(),
                    U102(X1, X2, mark X3) -> U102(X1, X2, X3),
                  U102(X1, X2, active X3) -> U102(X1, X2, X3),
                    U102(X1, mark X2, X3) -> U102(X1, X2, X3),
                  U102(X1, active X2, X3) -> U102(X1, X2, X3),
                    U102(mark X1, X2, X3) -> U102(X1, X2, X3),
                  U102(active X1, X2, X3) -> U102(X1, X2, X3),
                         isNatKind mark X -> isNatKind X,
                       isNatKind active X -> isNatKind X,
                    U101(X1, X2, mark X3) -> U101(X1, X2, X3),
                  U101(X1, X2, active X3) -> U101(X1, X2, X3),
                    U101(X1, mark X2, X3) -> U101(X1, X2, X3),
                  U101(X1, active X2, X3) -> U101(X1, X2, X3),
                    U101(mark X1, X2, X3) -> U101(X1, X2, X3),
                  U101(active X1, X2, X3) -> U101(X1, X2, X3),
                    U103(X1, X2, mark X3) -> U103(X1, X2, X3),
                  U103(X1, X2, active X3) -> U103(X1, X2, X3),
                    U103(X1, mark X2, X3) -> U103(X1, X2, X3),
                  U103(X1, active X2, X3) -> U103(X1, X2, X3),
                    U103(mark X1, X2, X3) -> U103(X1, X2, X3),
                  U103(active X1, X2, X3) -> U103(X1, X2, X3),
                    isNatIListKind mark X -> isNatIListKind X,
                  isNatIListKind active X -> isNatIListKind X,
                    U104(X1, X2, mark X3) -> U104(X1, X2, X3),
                  U104(X1, X2, active X3) -> U104(X1, X2, X3),
                    U104(X1, mark X2, X3) -> U104(X1, X2, X3),
                  U104(X1, active X2, X3) -> U104(X1, X2, X3),
                    U104(mark X1, X2, X3) -> U104(X1, X2, X3),
                  U104(active X1, X2, X3) -> U104(X1, X2, X3),
                        U105(X1, mark X2) -> U105(X1, X2),
                      U105(X1, active X2) -> U105(X1, X2),
                        U105(mark X1, X2) -> U105(X1, X2),
                      U105(active X1, X2) -> U105(X1, X2),
                             isNat mark X -> isNat X,
                           isNat active X -> isNat X,
                              U106 mark X -> U106 X,
                            U106 active X -> U106 X,
                        isNatIList mark X -> isNatIList X,
                      isNatIList active X -> isNatIList X,
                         U12(X1, mark X2) -> U12(X1, X2),
                       U12(X1, active X2) -> U12(X1, X2),
                         U12(mark X1, X2) -> U12(X1, X2),
                       U12(active X1, X2) -> U12(X1, X2),
                         U11(X1, mark X2) -> U11(X1, X2),
                       U11(X1, active X2) -> U11(X1, X2),
                         U11(mark X1, X2) -> U11(X1, X2),
                       U11(active X1, X2) -> U11(X1, X2),
                    U112(X1, X2, mark X3) -> U112(X1, X2, X3),
                  U112(X1, X2, active X3) -> U112(X1, X2, X3),
                    U112(X1, mark X2, X3) -> U112(X1, X2, X3),
                  U112(X1, active X2, X3) -> U112(X1, X2, X3),
                    U112(mark X1, X2, X3) -> U112(X1, X2, X3),
                  U112(active X1, X2, X3) -> U112(X1, X2, X3),
                    U111(X1, X2, mark X3) -> U111(X1, X2, X3),
                  U111(X1, X2, active X3) -> U111(X1, X2, X3),
                    U111(X1, mark X2, X3) -> U111(X1, X2, X3),
                  U111(X1, active X2, X3) -> U111(X1, X2, X3),
                    U111(mark X1, X2, X3) -> U111(X1, X2, X3),
                  U111(active X1, X2, X3) -> U111(X1, X2, X3),
                    U113(X1, X2, mark X3) -> U113(X1, X2, X3),
                  U113(X1, X2, active X3) -> U113(X1, X2, X3),
                    U113(X1, mark X2, X3) -> U113(X1, X2, X3),
                  U113(X1, active X2, X3) -> U113(X1, X2, X3),
                    U113(mark X1, X2, X3) -> U113(X1, X2, X3),
                  U113(active X1, X2, X3) -> U113(X1, X2, X3),
                        U114(X1, mark X2) -> U114(X1, X2),
                      U114(X1, active X2) -> U114(X1, X2),
                        U114(mark X1, X2) -> U114(X1, X2),
                      U114(active X1, X2) -> U114(X1, X2),
                                 s mark X -> s X,
                               s active X -> s X,
                            length mark X -> length X,
                          length active X -> length X,
                               U13 mark X -> U13 X,
                             U13 active X -> U13 X,
                         isNatList mark X -> isNatList X,
                       isNatList active X -> isNatList X,
                              U122 mark X -> U122 X,
                            U122 active X -> U122 X,
                        U121(X1, mark X2) -> U121(X1, X2),
                      U121(X1, active X2) -> U121(X1, X2),
                        U121(mark X1, X2) -> U121(X1, X2),
                      U121(active X1, X2) -> U121(X1, X2),
                U132(X1, X2, X3, mark X4) -> U132(X1, X2, X3, X4),
              U132(X1, X2, X3, active X4) -> U132(X1, X2, X3, X4),
                U132(X1, X2, mark X3, X4) -> U132(X1, X2, X3, X4),
              U132(X1, X2, active X3, X4) -> U132(X1, X2, X3, X4),
                U132(X1, mark X2, X3, X4) -> U132(X1, X2, X3, X4),
              U132(X1, active X2, X3, X4) -> U132(X1, X2, X3, X4),
                U132(mark X1, X2, X3, X4) -> U132(X1, X2, X3, X4),
              U132(active X1, X2, X3, X4) -> U132(X1, X2, X3, X4),
                U131(X1, X2, X3, mark X4) -> U131(X1, X2, X3, X4),
              U131(X1, X2, X3, active X4) -> U131(X1, X2, X3, X4),
                U131(X1, X2, mark X3, X4) -> U131(X1, X2, X3, X4),
              U131(X1, X2, active X3, X4) -> U131(X1, X2, X3, X4),
                U131(X1, mark X2, X3, X4) -> U131(X1, X2, X3, X4),
              U131(X1, active X2, X3, X4) -> U131(X1, X2, X3, X4),
                U131(mark X1, X2, X3, X4) -> U131(X1, X2, X3, X4),
              U131(active X1, X2, X3, X4) -> U131(X1, X2, X3, X4),
                U133(X1, X2, X3, mark X4) -> U133(X1, X2, X3, X4),
              U133(X1, X2, X3, active X4) -> U133(X1, X2, X3, X4),
                U133(X1, X2, mark X3, X4) -> U133(X1, X2, X3, X4),
              U133(X1, X2, active X3, X4) -> U133(X1, X2, X3, X4),
                U133(X1, mark X2, X3, X4) -> U133(X1, X2, X3, X4),
              U133(X1, active X2, X3, X4) -> U133(X1, X2, X3, X4),
                U133(mark X1, X2, X3, X4) -> U133(X1, X2, X3, X4),
              U133(active X1, X2, X3, X4) -> U133(X1, X2, X3, X4),
                U134(X1, X2, X3, mark X4) -> U134(X1, X2, X3, X4),
              U134(X1, X2, X3, active X4) -> U134(X1, X2, X3, X4),
                U134(X1, X2, mark X3, X4) -> U134(X1, X2, X3, X4),
              U134(X1, X2, active X3, X4) -> U134(X1, X2, X3, X4),
                U134(X1, mark X2, X3, X4) -> U134(X1, X2, X3, X4),
              U134(X1, active X2, X3, X4) -> U134(X1, X2, X3, X4),
                U134(mark X1, X2, X3, X4) -> U134(X1, X2, X3, X4),
              U134(active X1, X2, X3, X4) -> U134(X1, X2, X3, X4),
                U135(X1, X2, X3, mark X4) -> U135(X1, X2, X3, X4),
              U135(X1, X2, X3, active X4) -> U135(X1, X2, X3, X4),
                U135(X1, X2, mark X3, X4) -> U135(X1, X2, X3, X4),
              U135(X1, X2, active X3, X4) -> U135(X1, X2, X3, X4),
                U135(X1, mark X2, X3, X4) -> U135(X1, X2, X3, X4),
              U135(X1, active X2, X3, X4) -> U135(X1, X2, X3, X4),
                U135(mark X1, X2, X3, X4) -> U135(X1, X2, X3, X4),
              U135(active X1, X2, X3, X4) -> U135(X1, X2, X3, X4),
                U136(X1, X2, X3, mark X4) -> U136(X1, X2, X3, X4),
              U136(X1, X2, X3, active X4) -> U136(X1, X2, X3, X4),
                U136(X1, X2, mark X3, X4) -> U136(X1, X2, X3, X4),
              U136(X1, X2, active X3, X4) -> U136(X1, X2, X3, X4),
                U136(X1, mark X2, X3, X4) -> U136(X1, X2, X3, X4),
              U136(X1, active X2, X3, X4) -> U136(X1, X2, X3, X4),
                U136(mark X1, X2, X3, X4) -> U136(X1, X2, X3, X4),
              U136(active X1, X2, X3, X4) -> U136(X1, X2, X3, X4),
                        take(X1, mark X2) -> take(X1, X2),
                      take(X1, active X2) -> take(X1, X2),
                        take(mark X1, X2) -> take(X1, X2),
                      take(active X1, X2) -> take(X1, X2),
                         U22(X1, mark X2) -> U22(X1, X2),
                       U22(X1, active X2) -> U22(X1, X2),
                         U22(mark X1, X2) -> U22(X1, X2),
                       U22(active X1, X2) -> U22(X1, X2),
                         U21(X1, mark X2) -> U21(X1, X2),
                       U21(X1, active X2) -> U21(X1, X2),
                         U21(mark X1, X2) -> U21(X1, X2),
                       U21(active X1, X2) -> U21(X1, X2),
                               U23 mark X -> U23 X,
                             U23 active X -> U23 X,
                         U32(X1, mark X2) -> U32(X1, X2),
                       U32(X1, active X2) -> U32(X1, X2),
                         U32(mark X1, X2) -> U32(X1, X2),
                       U32(active X1, X2) -> U32(X1, X2),
                         U31(X1, mark X2) -> U31(X1, X2),
                       U31(X1, active X2) -> U31(X1, X2),
                         U31(mark X1, X2) -> U31(X1, X2),
                       U31(active X1, X2) -> U31(X1, X2),
                               U33 mark X -> U33 X,
                             U33 active X -> U33 X,
                     U42(X1, X2, mark X3) -> U42(X1, X2, X3),
                   U42(X1, X2, active X3) -> U42(X1, X2, X3),
                     U42(X1, mark X2, X3) -> U42(X1, X2, X3),
                   U42(X1, active X2, X3) -> U42(X1, X2, X3),
                     U42(mark X1, X2, X3) -> U42(X1, X2, X3),
                   U42(active X1, X2, X3) -> U42(X1, X2, X3),
                     U41(X1, X2, mark X3) -> U41(X1, X2, X3),
                   U41(X1, X2, active X3) -> U41(X1, X2, X3),
                     U41(X1, mark X2, X3) -> U41(X1, X2, X3),
                   U41(X1, active X2, X3) -> U41(X1, X2, X3),
                     U41(mark X1, X2, X3) -> U41(X1, X2, X3),
                   U41(active X1, X2, X3) -> U41(X1, X2, X3),
                     U43(X1, X2, mark X3) -> U43(X1, X2, X3),
                   U43(X1, X2, active X3) -> U43(X1, X2, X3),
                     U43(X1, mark X2, X3) -> U43(X1, X2, X3),
                   U43(X1, active X2, X3) -> U43(X1, X2, X3),
                     U43(mark X1, X2, X3) -> U43(X1, X2, X3),
                   U43(active X1, X2, X3) -> U43(X1, X2, X3),
                     U44(X1, X2, mark X3) -> U44(X1, X2, X3),
                   U44(X1, X2, active X3) -> U44(X1, X2, X3),
                     U44(X1, mark X2, X3) -> U44(X1, X2, X3),
                   U44(X1, active X2, X3) -> U44(X1, X2, X3),
                     U44(mark X1, X2, X3) -> U44(X1, X2, X3),
                   U44(active X1, X2, X3) -> U44(X1, X2, X3),
                         U45(X1, mark X2) -> U45(X1, X2),
                       U45(X1, active X2) -> U45(X1, X2),
                         U45(mark X1, X2) -> U45(X1, X2),
                       U45(active X1, X2) -> U45(X1, X2),
                               U46 mark X -> U46 X,
                             U46 active X -> U46 X,
                               U52 mark X -> U52 X,
                             U52 active X -> U52 X,
                         U51(X1, mark X2) -> U51(X1, X2),
                       U51(X1, active X2) -> U51(X1, X2),
                         U51(mark X1, X2) -> U51(X1, X2),
                       U51(active X1, X2) -> U51(X1, X2),
                               U62 mark X -> U62 X,
                             U62 active X -> U62 X,
                         U61(X1, mark X2) -> U61(X1, X2),
                       U61(X1, active X2) -> U61(X1, X2),
                         U61(mark X1, X2) -> U61(X1, X2),
                       U61(active X1, X2) -> U61(X1, X2),
                               U71 mark X -> U71 X,
                             U71 active X -> U71 X,
                               U81 mark X -> U81 X,
                             U81 active X -> U81 X,
                     U92(X1, X2, mark X3) -> U92(X1, X2, X3),
                   U92(X1, X2, active X3) -> U92(X1, X2, X3),
                     U92(X1, mark X2, X3) -> U92(X1, X2, X3),
                   U92(X1, active X2, X3) -> U92(X1, X2, X3),
                     U92(mark X1, X2, X3) -> U92(X1, X2, X3),
                   U92(active X1, X2, X3) -> U92(X1, X2, X3),
                     U91(X1, X2, mark X3) -> U91(X1, X2, X3),
                   U91(X1, X2, active X3) -> U91(X1, X2, X3),
                     U91(X1, mark X2, X3) -> U91(X1, X2, X3),
                   U91(X1, active X2, X3) -> U91(X1, X2, X3),
                     U91(mark X1, X2, X3) -> U91(X1, X2, X3),
                   U91(active X1, X2, X3) -> U91(X1, X2, X3),
                     U93(X1, X2, mark X3) -> U93(X1, X2, X3),
                   U93(X1, X2, active X3) -> U93(X1, X2, X3),
                     U93(X1, mark X2, X3) -> U93(X1, X2, X3),
                   U93(X1, active X2, X3) -> U93(X1, X2, X3),
                     U93(mark X1, X2, X3) -> U93(X1, X2, X3),
                   U93(active X1, X2, X3) -> U93(X1, X2, X3),
                     U94(X1, X2, mark X3) -> U94(X1, X2, X3),
                   U94(X1, X2, active X3) -> U94(X1, X2, X3),
                     U94(X1, mark X2, X3) -> U94(X1, X2, X3),
                   U94(X1, active X2, X3) -> U94(X1, X2, X3),
                     U94(mark X1, X2, X3) -> U94(X1, X2, X3),
                   U94(active X1, X2, X3) -> U94(X1, X2, X3),
                         U95(X1, mark X2) -> U95(X1, X2),
                       U95(X1, active X2) -> U95(X1, X2),
                         U95(mark X1, X2) -> U95(X1, X2),
                       U95(active X1, X2) -> U95(X1, X2),
                               U96 mark X -> U96 X,
                             U96 active X -> U96 X
      }
      Open
     
     
     SCC (2):
      Strict:
       {  s# mark X -> s# X,
        s# active X -> s# X}
      Weak:
      {
                        mark cons(X1, X2) -> active cons(mark X1, X2),
                                 mark 0() -> active 0(),
                             mark zeros() -> active zeros(),
                    mark U102(X1, X2, X3) -> active U102(mark X1, X2, X3),
                         mark isNatKind X -> active isNatKind X,
                    mark U101(X1, X2, X3) -> active U101(mark X1, X2, X3),
                                mark tt() -> active tt(),
                    mark U103(X1, X2, X3) -> active U103(mark X1, X2, X3),
                    mark isNatIListKind X -> active isNatIListKind X,
                    mark U104(X1, X2, X3) -> active U104(mark X1, X2, X3),
                        mark U105(X1, X2) -> active U105(mark X1, X2),
                             mark isNat X -> active isNat X,
                              mark U106 X -> active U106 mark X,
                        mark isNatIList X -> active isNatIList X,
                         mark U12(X1, X2) -> active U12(mark X1, X2),
                         mark U11(X1, X2) -> active U11(mark X1, X2),
                    mark U112(X1, X2, X3) -> active U112(mark X1, X2, X3),
                    mark U111(X1, X2, X3) -> active U111(mark X1, X2, X3),
                    mark U113(X1, X2, X3) -> active U113(mark X1, X2, X3),
                        mark U114(X1, X2) -> active U114(mark X1, X2),
                                 mark s X -> active s mark X,
                            mark length X -> active length mark X,
                               mark U13 X -> active U13 mark X,
                         mark isNatList X -> active isNatList X,
                              mark U122 X -> active U122 mark X,
                        mark U121(X1, X2) -> active U121(mark X1, X2),
                               mark nil() -> active nil(),
                mark U132(X1, X2, X3, X4) -> active U132(mark X1, X2, X3, X4),
                mark U131(X1, X2, X3, X4) -> active U131(mark X1, X2, X3, X4),
                mark U133(X1, X2, X3, X4) -> active U133(mark X1, X2, X3, X4),
                mark U134(X1, X2, X3, X4) -> active U134(mark X1, X2, X3, X4),
                mark U135(X1, X2, X3, X4) -> active U135(mark X1, X2, X3, X4),
                mark U136(X1, X2, X3, X4) -> active U136(mark X1, X2, X3, X4),
                        mark take(X1, X2) -> active take(mark X1, mark X2),
                         mark U22(X1, X2) -> active U22(mark X1, X2),
                         mark U21(X1, X2) -> active U21(mark X1, X2),
                               mark U23 X -> active U23 mark X,
                         mark U32(X1, X2) -> active U32(mark X1, X2),
                         mark U31(X1, X2) -> active U31(mark X1, X2),
                               mark U33 X -> active U33 mark X,
                     mark U42(X1, X2, X3) -> active U42(mark X1, X2, X3),
                     mark U41(X1, X2, X3) -> active U41(mark X1, X2, X3),
                     mark U43(X1, X2, X3) -> active U43(mark X1, X2, X3),
                     mark U44(X1, X2, X3) -> active U44(mark X1, X2, X3),
                         mark U45(X1, X2) -> active U45(mark X1, X2),
                               mark U46 X -> active U46 mark X,
                               mark U52 X -> active U52 mark X,
                         mark U51(X1, X2) -> active U51(mark X1, X2),
                               mark U62 X -> active U62 mark X,
                         mark U61(X1, X2) -> active U61(mark X1, X2),
                               mark U71 X -> active U71 mark X,
                               mark U81 X -> active U81 mark X,
                     mark U92(X1, X2, X3) -> active U92(mark X1, X2, X3),
                     mark U91(X1, X2, X3) -> active U91(mark X1, X2, X3),
                     mark U93(X1, X2, X3) -> active U93(mark X1, X2, X3),
                     mark U94(X1, X2, X3) -> active U94(mark X1, X2, X3),
                         mark U95(X1, X2) -> active U95(mark X1, X2),
                               mark U96 X -> active U96 mark X,
                        cons(X1, mark X2) -> cons(X1, X2),
                      cons(X1, active X2) -> cons(X1, X2),
                        cons(mark X1, X2) -> cons(X1, X2),
                      cons(active X1, X2) -> cons(X1, X2),
                           active zeros() -> mark cons(0(), zeros()),
                active U102(tt(), V1, V2) -> mark U103(isNatIListKind V2, V1, V2),
                     active isNatKind 0() -> mark tt(),
                    active isNatKind s V1 -> mark U81 isNatKind V1,
               active isNatKind length V1 -> mark U71 isNatIListKind V1,
                active U101(tt(), V1, V2) -> mark U102(isNatKind V1, V1, V2),
                active U103(tt(), V1, V2) -> mark U104(isNatIListKind V2, V1, V2),
       active isNatIListKind cons(V1, V2) -> mark U51(isNatKind V1, V2),
            active isNatIListKind zeros() -> mark tt(),
              active isNatIListKind nil() -> mark tt(),
       active isNatIListKind take(V1, V2) -> mark U61(isNatKind V1, V2),
                active U104(tt(), V1, V2) -> mark U105(isNat V1, V2),
                    active U105(tt(), V2) -> mark U106 isNatIList V2,
                         active isNat 0() -> mark tt(),
                        active isNat s V1 -> mark U21(isNatKind V1, V1),
                   active isNat length V1 -> mark U11(isNatIListKind V1, V1),
                         active U106 tt() -> mark tt(),
                      active isNatIList V -> mark U31(isNatIListKind V, V),
           active isNatIList cons(V1, V2) -> mark U41(isNatKind V1, V1, V2),
                active isNatIList zeros() -> mark tt(),
                     active U12(tt(), V1) -> mark U13 isNatList V1,
                     active U11(tt(), V1) -> mark U12(isNatIListKind V1, V1),
                  active U112(tt(), L, N) -> mark U113(isNat N, L, N),
                  active U111(tt(), L, N) -> mark U112(isNatIListKind L, L, N),
                  active U113(tt(), L, N) -> mark U114(isNatKind N, L),
                     active U114(tt(), L) -> mark s length L,
                 active length cons(N, L) -> mark U111(isNatList L, L, N),
                      active length nil() -> mark 0(),
                          active U13 tt() -> mark tt(),
            active isNatList cons(V1, V2) -> mark U91(isNatKind V1, V1, V2),
                   active isNatList nil() -> mark tt(),
            active isNatList take(V1, V2) -> mark U101(isNatKind V1, V1, V2),
                         active U122 tt() -> mark nil(),
                    active U121(tt(), IL) -> mark U122 isNatIListKind IL,
              active U132(tt(), IL, M, N) -> mark U133(isNat M, IL, M, N),
              active U131(tt(), IL, M, N) -> mark U132(isNatIListKind IL, IL, M, N),
              active U133(tt(), IL, M, N) -> mark U134(isNatKind M, IL, M, N),
              active U134(tt(), IL, M, N) -> mark U135(isNat N, IL, M, N),
              active U135(tt(), IL, M, N) -> mark U136(isNatKind N, IL, M, N),
              active U136(tt(), IL, M, N) -> mark cons(N, take(M, IL)),
                     active take(0(), IL) -> mark U121(isNatIList IL, IL),
            active take(s M, cons(N, IL)) -> mark U131(isNatIList IL, IL, M, N),
                     active U22(tt(), V1) -> mark U23 isNat V1,
                     active U21(tt(), V1) -> mark U22(isNatKind V1, V1),
                          active U23 tt() -> mark tt(),
                      active U32(tt(), V) -> mark U33 isNatList V,
                      active U31(tt(), V) -> mark U32(isNatIListKind V, V),
                          active U33 tt() -> mark tt(),
                 active U42(tt(), V1, V2) -> mark U43(isNatIListKind V2, V1, V2),
                 active U41(tt(), V1, V2) -> mark U42(isNatKind V1, V1, V2),
                 active U43(tt(), V1, V2) -> mark U44(isNatIListKind V2, V1, V2),
                 active U44(tt(), V1, V2) -> mark U45(isNat V1, V2),
                     active U45(tt(), V2) -> mark U46 isNatIList V2,
                          active U46 tt() -> mark tt(),
                          active U52 tt() -> mark tt(),
                     active U51(tt(), V2) -> mark U52 isNatIListKind V2,
                          active U62 tt() -> mark tt(),
                     active U61(tt(), V2) -> mark U62 isNatIListKind V2,
                          active U71 tt() -> mark tt(),
                          active U81 tt() -> mark tt(),
                 active U92(tt(), V1, V2) -> mark U93(isNatIListKind V2, V1, V2),
                 active U91(tt(), V1, V2) -> mark U92(isNatKind V1, V1, V2),
                 active U93(tt(), V1, V2) -> mark U94(isNatIListKind V2, V1, V2),
                 active U94(tt(), V1, V2) -> mark U95(isNat V1, V2),
                     active U95(tt(), V2) -> mark U96 isNatList V2,
                          active U96 tt() -> mark tt(),
                    U102(X1, X2, mark X3) -> U102(X1, X2, X3),
                  U102(X1, X2, active X3) -> U102(X1, X2, X3),
                    U102(X1, mark X2, X3) -> U102(X1, X2, X3),
                  U102(X1, active X2, X3) -> U102(X1, X2, X3),
                    U102(mark X1, X2, X3) -> U102(X1, X2, X3),
                  U102(active X1, X2, X3) -> U102(X1, X2, X3),
                         isNatKind mark X -> isNatKind X,
                       isNatKind active X -> isNatKind X,
                    U101(X1, X2, mark X3) -> U101(X1, X2, X3),
                  U101(X1, X2, active X3) -> U101(X1, X2, X3),
                    U101(X1, mark X2, X3) -> U101(X1, X2, X3),
                  U101(X1, active X2, X3) -> U101(X1, X2, X3),
                    U101(mark X1, X2, X3) -> U101(X1, X2, X3),
                  U101(active X1, X2, X3) -> U101(X1, X2, X3),
                    U103(X1, X2, mark X3) -> U103(X1, X2, X3),
                  U103(X1, X2, active X3) -> U103(X1, X2, X3),
                    U103(X1, mark X2, X3) -> U103(X1, X2, X3),
                  U103(X1, active X2, X3) -> U103(X1, X2, X3),
                    U103(mark X1, X2, X3) -> U103(X1, X2, X3),
                  U103(active X1, X2, X3) -> U103(X1, X2, X3),
                    isNatIListKind mark X -> isNatIListKind X,
                  isNatIListKind active X -> isNatIListKind X,
                    U104(X1, X2, mark X3) -> U104(X1, X2, X3),
                  U104(X1, X2, active X3) -> U104(X1, X2, X3),
                    U104(X1, mark X2, X3) -> U104(X1, X2, X3),
                  U104(X1, active X2, X3) -> U104(X1, X2, X3),
                    U104(mark X1, X2, X3) -> U104(X1, X2, X3),
                  U104(active X1, X2, X3) -> U104(X1, X2, X3),
                        U105(X1, mark X2) -> U105(X1, X2),
                      U105(X1, active X2) -> U105(X1, X2),
                        U105(mark X1, X2) -> U105(X1, X2),
                      U105(active X1, X2) -> U105(X1, X2),
                             isNat mark X -> isNat X,
                           isNat active X -> isNat X,
                              U106 mark X -> U106 X,
                            U106 active X -> U106 X,
                        isNatIList mark X -> isNatIList X,
                      isNatIList active X -> isNatIList X,
                         U12(X1, mark X2) -> U12(X1, X2),
                       U12(X1, active X2) -> U12(X1, X2),
                         U12(mark X1, X2) -> U12(X1, X2),
                       U12(active X1, X2) -> U12(X1, X2),
                         U11(X1, mark X2) -> U11(X1, X2),
                       U11(X1, active X2) -> U11(X1, X2),
                         U11(mark X1, X2) -> U11(X1, X2),
                       U11(active X1, X2) -> U11(X1, X2),
                    U112(X1, X2, mark X3) -> U112(X1, X2, X3),
                  U112(X1, X2, active X3) -> U112(X1, X2, X3),
                    U112(X1, mark X2, X3) -> U112(X1, X2, X3),
                  U112(X1, active X2, X3) -> U112(X1, X2, X3),
                    U112(mark X1, X2, X3) -> U112(X1, X2, X3),
                  U112(active X1, X2, X3) -> U112(X1, X2, X3),
                    U111(X1, X2, mark X3) -> U111(X1, X2, X3),
                  U111(X1, X2, active X3) -> U111(X1, X2, X3),
                    U111(X1, mark X2, X3) -> U111(X1, X2, X3),
                  U111(X1, active X2, X3) -> U111(X1, X2, X3),
                    U111(mark X1, X2, X3) -> U111(X1, X2, X3),
                  U111(active X1, X2, X3) -> U111(X1, X2, X3),
                    U113(X1, X2, mark X3) -> U113(X1, X2, X3),
                  U113(X1, X2, active X3) -> U113(X1, X2, X3),
                    U113(X1, mark X2, X3) -> U113(X1, X2, X3),
                  U113(X1, active X2, X3) -> U113(X1, X2, X3),
                    U113(mark X1, X2, X3) -> U113(X1, X2, X3),
                  U113(active X1, X2, X3) -> U113(X1, X2, X3),
                        U114(X1, mark X2) -> U114(X1, X2),
                      U114(X1, active X2) -> U114(X1, X2),
                        U114(mark X1, X2) -> U114(X1, X2),
                      U114(active X1, X2) -> U114(X1, X2),
                                 s mark X -> s X,
                               s active X -> s X,
                            length mark X -> length X,
                          length active X -> length X,
                               U13 mark X -> U13 X,
                             U13 active X -> U13 X,
                         isNatList mark X -> isNatList X,
                       isNatList active X -> isNatList X,
                              U122 mark X -> U122 X,
                            U122 active X -> U122 X,
                        U121(X1, mark X2) -> U121(X1, X2),
                      U121(X1, active X2) -> U121(X1, X2),
                        U121(mark X1, X2) -> U121(X1, X2),
                      U121(active X1, X2) -> U121(X1, X2),
                U132(X1, X2, X3, mark X4) -> U132(X1, X2, X3, X4),
              U132(X1, X2, X3, active X4) -> U132(X1, X2, X3, X4),
                U132(X1, X2, mark X3, X4) -> U132(X1, X2, X3, X4),
              U132(X1, X2, active X3, X4) -> U132(X1, X2, X3, X4),
                U132(X1, mark X2, X3, X4) -> U132(X1, X2, X3, X4),
              U132(X1, active X2, X3, X4) -> U132(X1, X2, X3, X4),
                U132(mark X1, X2, X3, X4) -> U132(X1, X2, X3, X4),
              U132(active X1, X2, X3, X4) -> U132(X1, X2, X3, X4),
                U131(X1, X2, X3, mark X4) -> U131(X1, X2, X3, X4),
              U131(X1, X2, X3, active X4) -> U131(X1, X2, X3, X4),
                U131(X1, X2, mark X3, X4) -> U131(X1, X2, X3, X4),
              U131(X1, X2, active X3, X4) -> U131(X1, X2, X3, X4),
                U131(X1, mark X2, X3, X4) -> U131(X1, X2, X3, X4),
              U131(X1, active X2, X3, X4) -> U131(X1, X2, X3, X4),
                U131(mark X1, X2, X3, X4) -> U131(X1, X2, X3, X4),
              U131(active X1, X2, X3, X4) -> U131(X1, X2, X3, X4),
                U133(X1, X2, X3, mark X4) -> U133(X1, X2, X3, X4),
              U133(X1, X2, X3, active X4) -> U133(X1, X2, X3, X4),
                U133(X1, X2, mark X3, X4) -> U133(X1, X2, X3, X4),
              U133(X1, X2, active X3, X4) -> U133(X1, X2, X3, X4),
                U133(X1, mark X2, X3, X4) -> U133(X1, X2, X3, X4),
              U133(X1, active X2, X3, X4) -> U133(X1, X2, X3, X4),
                U133(mark X1, X2, X3, X4) -> U133(X1, X2, X3, X4),
              U133(active X1, X2, X3, X4) -> U133(X1, X2, X3, X4),
                U134(X1, X2, X3, mark X4) -> U134(X1, X2, X3, X4),
              U134(X1, X2, X3, active X4) -> U134(X1, X2, X3, X4),
                U134(X1, X2, mark X3, X4) -> U134(X1, X2, X3, X4),
              U134(X1, X2, active X3, X4) -> U134(X1, X2, X3, X4),
                U134(X1, mark X2, X3, X4) -> U134(X1, X2, X3, X4),
              U134(X1, active X2, X3, X4) -> U134(X1, X2, X3, X4),
                U134(mark X1, X2, X3, X4) -> U134(X1, X2, X3, X4),
              U134(active X1, X2, X3, X4) -> U134(X1, X2, X3, X4),
                U135(X1, X2, X3, mark X4) -> U135(X1, X2, X3, X4),
              U135(X1, X2, X3, active X4) -> U135(X1, X2, X3, X4),
                U135(X1, X2, mark X3, X4) -> U135(X1, X2, X3, X4),
              U135(X1, X2, active X3, X4) -> U135(X1, X2, X3, X4),
                U135(X1, mark X2, X3, X4) -> U135(X1, X2, X3, X4),
              U135(X1, active X2, X3, X4) -> U135(X1, X2, X3, X4),
                U135(mark X1, X2, X3, X4) -> U135(X1, X2, X3, X4),
              U135(active X1, X2, X3, X4) -> U135(X1, X2, X3, X4),
                U136(X1, X2, X3, mark X4) -> U136(X1, X2, X3, X4),
              U136(X1, X2, X3, active X4) -> U136(X1, X2, X3, X4),
                U136(X1, X2, mark X3, X4) -> U136(X1, X2, X3, X4),
              U136(X1, X2, active X3, X4) -> U136(X1, X2, X3, X4),
                U136(X1, mark X2, X3, X4) -> U136(X1, X2, X3, X4),
              U136(X1, active X2, X3, X4) -> U136(X1, X2, X3, X4),
                U136(mark X1, X2, X3, X4) -> U136(X1, X2, X3, X4),
              U136(active X1, X2, X3, X4) -> U136(X1, X2, X3, X4),
                        take(X1, mark X2) -> take(X1, X2),
                      take(X1, active X2) -> take(X1, X2),
                        take(mark X1, X2) -> take(X1, X2),
                      take(active X1, X2) -> take(X1, X2),
                         U22(X1, mark X2) -> U22(X1, X2),
                       U22(X1, active X2) -> U22(X1, X2),
                         U22(mark X1, X2) -> U22(X1, X2),
                       U22(active X1, X2) -> U22(X1, X2),
                         U21(X1, mark X2) -> U21(X1, X2),
                       U21(X1, active X2) -> U21(X1, X2),
                         U21(mark X1, X2) -> U21(X1, X2),
                       U21(active X1, X2) -> U21(X1, X2),
                               U23 mark X -> U23 X,
                             U23 active X -> U23 X,
                         U32(X1, mark X2) -> U32(X1, X2),
                       U32(X1, active X2) -> U32(X1, X2),
                         U32(mark X1, X2) -> U32(X1, X2),
                       U32(active X1, X2) -> U32(X1, X2),
                         U31(X1, mark X2) -> U31(X1, X2),
                       U31(X1, active X2) -> U31(X1, X2),
                         U31(mark X1, X2) -> U31(X1, X2),
                       U31(active X1, X2) -> U31(X1, X2),
                               U33 mark X -> U33 X,
                             U33 active X -> U33 X,
                     U42(X1, X2, mark X3) -> U42(X1, X2, X3),
                   U42(X1, X2, active X3) -> U42(X1, X2, X3),
                     U42(X1, mark X2, X3) -> U42(X1, X2, X3),
                   U42(X1, active X2, X3) -> U42(X1, X2, X3),
                     U42(mark X1, X2, X3) -> U42(X1, X2, X3),
                   U42(active X1, X2, X3) -> U42(X1, X2, X3),
                     U41(X1, X2, mark X3) -> U41(X1, X2, X3),
                   U41(X1, X2, active X3) -> U41(X1, X2, X3),
                     U41(X1, mark X2, X3) -> U41(X1, X2, X3),
                   U41(X1, active X2, X3) -> U41(X1, X2, X3),
                     U41(mark X1, X2, X3) -> U41(X1, X2, X3),
                   U41(active X1, X2, X3) -> U41(X1, X2, X3),
                     U43(X1, X2, mark X3) -> U43(X1, X2, X3),
                   U43(X1, X2, active X3) -> U43(X1, X2, X3),
                     U43(X1, mark X2, X3) -> U43(X1, X2, X3),
                   U43(X1, active X2, X3) -> U43(X1, X2, X3),
                     U43(mark X1, X2, X3) -> U43(X1, X2, X3),
                   U43(active X1, X2, X3) -> U43(X1, X2, X3),
                     U44(X1, X2, mark X3) -> U44(X1, X2, X3),
                   U44(X1, X2, active X3) -> U44(X1, X2, X3),
                     U44(X1, mark X2, X3) -> U44(X1, X2, X3),
                   U44(X1, active X2, X3) -> U44(X1, X2, X3),
                     U44(mark X1, X2, X3) -> U44(X1, X2, X3),
                   U44(active X1, X2, X3) -> U44(X1, X2, X3),
                         U45(X1, mark X2) -> U45(X1, X2),
                       U45(X1, active X2) -> U45(X1, X2),
                         U45(mark X1, X2) -> U45(X1, X2),
                       U45(active X1, X2) -> U45(X1, X2),
                               U46 mark X -> U46 X,
                             U46 active X -> U46 X,
                               U52 mark X -> U52 X,
                             U52 active X -> U52 X,
                         U51(X1, mark X2) -> U51(X1, X2),
                       U51(X1, active X2) -> U51(X1, X2),
                         U51(mark X1, X2) -> U51(X1, X2),
                       U51(active X1, X2) -> U51(X1, X2),
                               U62 mark X -> U62 X,
                             U62 active X -> U62 X,
                         U61(X1, mark X2) -> U61(X1, X2),
                       U61(X1, active X2) -> U61(X1, X2),
                         U61(mark X1, X2) -> U61(X1, X2),
                       U61(active X1, X2) -> U61(X1, X2),
                               U71 mark X -> U71 X,
                             U71 active X -> U71 X,
                               U81 mark X -> U81 X,
                             U81 active X -> U81 X,
                     U92(X1, X2, mark X3) -> U92(X1, X2, X3),
                   U92(X1, X2, active X3) -> U92(X1, X2, X3),
                     U92(X1, mark X2, X3) -> U92(X1, X2, X3),
                   U92(X1, active X2, X3) -> U92(X1, X2, X3),
                     U92(mark X1, X2, X3) -> U92(X1, X2, X3),
                   U92(active X1, X2, X3) -> U92(X1, X2, X3),
                     U91(X1, X2, mark X3) -> U91(X1, X2, X3),
                   U91(X1, X2, active X3) -> U91(X1, X2, X3),
                     U91(X1, mark X2, X3) -> U91(X1, X2, X3),
                   U91(X1, active X2, X3) -> U91(X1, X2, X3),
                     U91(mark X1, X2, X3) -> U91(X1, X2, X3),
                   U91(active X1, X2, X3) -> U91(X1, X2, X3),
                     U93(X1, X2, mark X3) -> U93(X1, X2, X3),
                   U93(X1, X2, active X3) -> U93(X1, X2, X3),
                     U93(X1, mark X2, X3) -> U93(X1, X2, X3),
                   U93(X1, active X2, X3) -> U93(X1, X2, X3),
                     U93(mark X1, X2, X3) -> U93(X1, X2, X3),
                   U93(active X1, X2, X3) -> U93(X1, X2, X3),
                     U94(X1, X2, mark X3) -> U94(X1, X2, X3),
                   U94(X1, X2, active X3) -> U94(X1, X2, X3),
                     U94(X1, mark X2, X3) -> U94(X1, X2, X3),
                   U94(X1, active X2, X3) -> U94(X1, X2, X3),
                     U94(mark X1, X2, X3) -> U94(X1, X2, X3),
                   U94(active X1, X2, X3) -> U94(X1, X2, X3),
                         U95(X1, mark X2) -> U95(X1, X2),
                       U95(X1, active X2) -> U95(X1, X2),
                         U95(mark X1, X2) -> U95(X1, X2),
                       U95(active X1, X2) -> U95(X1, X2),
                               U96 mark X -> U96 X,
                             U96 active X -> U96 X
      }
      Open
     
     
     SCC (4):
      Strict:
       {  U114#(X1, mark X2) -> U114#(X1, X2),
        U114#(X1, active X2) -> U114#(X1, X2),
          U114#(mark X1, X2) -> U114#(X1, X2),
        U114#(active X1, X2) -> U114#(X1, X2)}
      Weak:
      {
                        mark cons(X1, X2) -> active cons(mark X1, X2),
                                 mark 0() -> active 0(),
                             mark zeros() -> active zeros(),
                    mark U102(X1, X2, X3) -> active U102(mark X1, X2, X3),
                         mark isNatKind X -> active isNatKind X,
                    mark U101(X1, X2, X3) -> active U101(mark X1, X2, X3),
                                mark tt() -> active tt(),
                    mark U103(X1, X2, X3) -> active U103(mark X1, X2, X3),
                    mark isNatIListKind X -> active isNatIListKind X,
                    mark U104(X1, X2, X3) -> active U104(mark X1, X2, X3),
                        mark U105(X1, X2) -> active U105(mark X1, X2),
                             mark isNat X -> active isNat X,
                              mark U106 X -> active U106 mark X,
                        mark isNatIList X -> active isNatIList X,
                         mark U12(X1, X2) -> active U12(mark X1, X2),
                         mark U11(X1, X2) -> active U11(mark X1, X2),
                    mark U112(X1, X2, X3) -> active U112(mark X1, X2, X3),
                    mark U111(X1, X2, X3) -> active U111(mark X1, X2, X3),
                    mark U113(X1, X2, X3) -> active U113(mark X1, X2, X3),
                        mark U114(X1, X2) -> active U114(mark X1, X2),
                                 mark s X -> active s mark X,
                            mark length X -> active length mark X,
                               mark U13 X -> active U13 mark X,
                         mark isNatList X -> active isNatList X,
                              mark U122 X -> active U122 mark X,
                        mark U121(X1, X2) -> active U121(mark X1, X2),
                               mark nil() -> active nil(),
                mark U132(X1, X2, X3, X4) -> active U132(mark X1, X2, X3, X4),
                mark U131(X1, X2, X3, X4) -> active U131(mark X1, X2, X3, X4),
                mark U133(X1, X2, X3, X4) -> active U133(mark X1, X2, X3, X4),
                mark U134(X1, X2, X3, X4) -> active U134(mark X1, X2, X3, X4),
                mark U135(X1, X2, X3, X4) -> active U135(mark X1, X2, X3, X4),
                mark U136(X1, X2, X3, X4) -> active U136(mark X1, X2, X3, X4),
                        mark take(X1, X2) -> active take(mark X1, mark X2),
                         mark U22(X1, X2) -> active U22(mark X1, X2),
                         mark U21(X1, X2) -> active U21(mark X1, X2),
                               mark U23 X -> active U23 mark X,
                         mark U32(X1, X2) -> active U32(mark X1, X2),
                         mark U31(X1, X2) -> active U31(mark X1, X2),
                               mark U33 X -> active U33 mark X,
                     mark U42(X1, X2, X3) -> active U42(mark X1, X2, X3),
                     mark U41(X1, X2, X3) -> active U41(mark X1, X2, X3),
                     mark U43(X1, X2, X3) -> active U43(mark X1, X2, X3),
                     mark U44(X1, X2, X3) -> active U44(mark X1, X2, X3),
                         mark U45(X1, X2) -> active U45(mark X1, X2),
                               mark U46 X -> active U46 mark X,
                               mark U52 X -> active U52 mark X,
                         mark U51(X1, X2) -> active U51(mark X1, X2),
                               mark U62 X -> active U62 mark X,
                         mark U61(X1, X2) -> active U61(mark X1, X2),
                               mark U71 X -> active U71 mark X,
                               mark U81 X -> active U81 mark X,
                     mark U92(X1, X2, X3) -> active U92(mark X1, X2, X3),
                     mark U91(X1, X2, X3) -> active U91(mark X1, X2, X3),
                     mark U93(X1, X2, X3) -> active U93(mark X1, X2, X3),
                     mark U94(X1, X2, X3) -> active U94(mark X1, X2, X3),
                         mark U95(X1, X2) -> active U95(mark X1, X2),
                               mark U96 X -> active U96 mark X,
                        cons(X1, mark X2) -> cons(X1, X2),
                      cons(X1, active X2) -> cons(X1, X2),
                        cons(mark X1, X2) -> cons(X1, X2),
                      cons(active X1, X2) -> cons(X1, X2),
                           active zeros() -> mark cons(0(), zeros()),
                active U102(tt(), V1, V2) -> mark U103(isNatIListKind V2, V1, V2),
                     active isNatKind 0() -> mark tt(),
                    active isNatKind s V1 -> mark U81 isNatKind V1,
               active isNatKind length V1 -> mark U71 isNatIListKind V1,
                active U101(tt(), V1, V2) -> mark U102(isNatKind V1, V1, V2),
                active U103(tt(), V1, V2) -> mark U104(isNatIListKind V2, V1, V2),
       active isNatIListKind cons(V1, V2) -> mark U51(isNatKind V1, V2),
            active isNatIListKind zeros() -> mark tt(),
              active isNatIListKind nil() -> mark tt(),
       active isNatIListKind take(V1, V2) -> mark U61(isNatKind V1, V2),
                active U104(tt(), V1, V2) -> mark U105(isNat V1, V2),
                    active U105(tt(), V2) -> mark U106 isNatIList V2,
                         active isNat 0() -> mark tt(),
                        active isNat s V1 -> mark U21(isNatKind V1, V1),
                   active isNat length V1 -> mark U11(isNatIListKind V1, V1),
                         active U106 tt() -> mark tt(),
                      active isNatIList V -> mark U31(isNatIListKind V, V),
           active isNatIList cons(V1, V2) -> mark U41(isNatKind V1, V1, V2),
                active isNatIList zeros() -> mark tt(),
                     active U12(tt(), V1) -> mark U13 isNatList V1,
                     active U11(tt(), V1) -> mark U12(isNatIListKind V1, V1),
                  active U112(tt(), L, N) -> mark U113(isNat N, L, N),
                  active U111(tt(), L, N) -> mark U112(isNatIListKind L, L, N),
                  active U113(tt(), L, N) -> mark U114(isNatKind N, L),
                     active U114(tt(), L) -> mark s length L,
                 active length cons(N, L) -> mark U111(isNatList L, L, N),
                      active length nil() -> mark 0(),
                          active U13 tt() -> mark tt(),
            active isNatList cons(V1, V2) -> mark U91(isNatKind V1, V1, V2),
                   active isNatList nil() -> mark tt(),
            active isNatList take(V1, V2) -> mark U101(isNatKind V1, V1, V2),
                         active U122 tt() -> mark nil(),
                    active U121(tt(), IL) -> mark U122 isNatIListKind IL,
              active U132(tt(), IL, M, N) -> mark U133(isNat M, IL, M, N),
              active U131(tt(), IL, M, N) -> mark U132(isNatIListKind IL, IL, M, N),
              active U133(tt(), IL, M, N) -> mark U134(isNatKind M, IL, M, N),
              active U134(tt(), IL, M, N) -> mark U135(isNat N, IL, M, N),
              active U135(tt(), IL, M, N) -> mark U136(isNatKind N, IL, M, N),
              active U136(tt(), IL, M, N) -> mark cons(N, take(M, IL)),
                     active take(0(), IL) -> mark U121(isNatIList IL, IL),
            active take(s M, cons(N, IL)) -> mark U131(isNatIList IL, IL, M, N),
                     active U22(tt(), V1) -> mark U23 isNat V1,
                     active U21(tt(), V1) -> mark U22(isNatKind V1, V1),
                          active U23 tt() -> mark tt(),
                      active U32(tt(), V) -> mark U33 isNatList V,
                      active U31(tt(), V) -> mark U32(isNatIListKind V, V),
                          active U33 tt() -> mark tt(),
                 active U42(tt(), V1, V2) -> mark U43(isNatIListKind V2, V1, V2),
                 active U41(tt(), V1, V2) -> mark U42(isNatKind V1, V1, V2),
                 active U43(tt(), V1, V2) -> mark U44(isNatIListKind V2, V1, V2),
                 active U44(tt(), V1, V2) -> mark U45(isNat V1, V2),
                     active U45(tt(), V2) -> mark U46 isNatIList V2,
                          active U46 tt() -> mark tt(),
                          active U52 tt() -> mark tt(),
                     active U51(tt(), V2) -> mark U52 isNatIListKind V2,
                          active U62 tt() -> mark tt(),
                     active U61(tt(), V2) -> mark U62 isNatIListKind V2,
                          active U71 tt() -> mark tt(),
                          active U81 tt() -> mark tt(),
                 active U92(tt(), V1, V2) -> mark U93(isNatIListKind V2, V1, V2),
                 active U91(tt(), V1, V2) -> mark U92(isNatKind V1, V1, V2),
                 active U93(tt(), V1, V2) -> mark U94(isNatIListKind V2, V1, V2),
                 active U94(tt(), V1, V2) -> mark U95(isNat V1, V2),
                     active U95(tt(), V2) -> mark U96 isNatList V2,
                          active U96 tt() -> mark tt(),
                    U102(X1, X2, mark X3) -> U102(X1, X2, X3),
                  U102(X1, X2, active X3) -> U102(X1, X2, X3),
                    U102(X1, mark X2, X3) -> U102(X1, X2, X3),
                  U102(X1, active X2, X3) -> U102(X1, X2, X3),
                    U102(mark X1, X2, X3) -> U102(X1, X2, X3),
                  U102(active X1, X2, X3) -> U102(X1, X2, X3),
                         isNatKind mark X -> isNatKind X,
                       isNatKind active X -> isNatKind X,
                    U101(X1, X2, mark X3) -> U101(X1, X2, X3),
                  U101(X1, X2, active X3) -> U101(X1, X2, X3),
                    U101(X1, mark X2, X3) -> U101(X1, X2, X3),
                  U101(X1, active X2, X3) -> U101(X1, X2, X3),
                    U101(mark X1, X2, X3) -> U101(X1, X2, X3),
                  U101(active X1, X2, X3) -> U101(X1, X2, X3),
                    U103(X1, X2, mark X3) -> U103(X1, X2, X3),
                  U103(X1, X2, active X3) -> U103(X1, X2, X3),
                    U103(X1, mark X2, X3) -> U103(X1, X2, X3),
                  U103(X1, active X2, X3) -> U103(X1, X2, X3),
                    U103(mark X1, X2, X3) -> U103(X1, X2, X3),
                  U103(active X1, X2, X3) -> U103(X1, X2, X3),
                    isNatIListKind mark X -> isNatIListKind X,
                  isNatIListKind active X -> isNatIListKind X,
                    U104(X1, X2, mark X3) -> U104(X1, X2, X3),
                  U104(X1, X2, active X3) -> U104(X1, X2, X3),
                    U104(X1, mark X2, X3) -> U104(X1, X2, X3),
                  U104(X1, active X2, X3) -> U104(X1, X2, X3),
                    U104(mark X1, X2, X3) -> U104(X1, X2, X3),
                  U104(active X1, X2, X3) -> U104(X1, X2, X3),
                        U105(X1, mark X2) -> U105(X1, X2),
                      U105(X1, active X2) -> U105(X1, X2),
                        U105(mark X1, X2) -> U105(X1, X2),
                      U105(active X1, X2) -> U105(X1, X2),
                             isNat mark X -> isNat X,
                           isNat active X -> isNat X,
                              U106 mark X -> U106 X,
                            U106 active X -> U106 X,
                        isNatIList mark X -> isNatIList X,
                      isNatIList active X -> isNatIList X,
                         U12(X1, mark X2) -> U12(X1, X2),
                       U12(X1, active X2) -> U12(X1, X2),
                         U12(mark X1, X2) -> U12(X1, X2),
                       U12(active X1, X2) -> U12(X1, X2),
                         U11(X1, mark X2) -> U11(X1, X2),
                       U11(X1, active X2) -> U11(X1, X2),
                         U11(mark X1, X2) -> U11(X1, X2),
                       U11(active X1, X2) -> U11(X1, X2),
                    U112(X1, X2, mark X3) -> U112(X1, X2, X3),
                  U112(X1, X2, active X3) -> U112(X1, X2, X3),
                    U112(X1, mark X2, X3) -> U112(X1, X2, X3),
                  U112(X1, active X2, X3) -> U112(X1, X2, X3),
                    U112(mark X1, X2, X3) -> U112(X1, X2, X3),
                  U112(active X1, X2, X3) -> U112(X1, X2, X3),
                    U111(X1, X2, mark X3) -> U111(X1, X2, X3),
                  U111(X1, X2, active X3) -> U111(X1, X2, X3),
                    U111(X1, mark X2, X3) -> U111(X1, X2, X3),
                  U111(X1, active X2, X3) -> U111(X1, X2, X3),
                    U111(mark X1, X2, X3) -> U111(X1, X2, X3),
                  U111(active X1, X2, X3) -> U111(X1, X2, X3),
                    U113(X1, X2, mark X3) -> U113(X1, X2, X3),
                  U113(X1, X2, active X3) -> U113(X1, X2, X3),
                    U113(X1, mark X2, X3) -> U113(X1, X2, X3),
                  U113(X1, active X2, X3) -> U113(X1, X2, X3),
                    U113(mark X1, X2, X3) -> U113(X1, X2, X3),
                  U113(active X1, X2, X3) -> U113(X1, X2, X3),
                        U114(X1, mark X2) -> U114(X1, X2),
                      U114(X1, active X2) -> U114(X1, X2),
                        U114(mark X1, X2) -> U114(X1, X2),
                      U114(active X1, X2) -> U114(X1, X2),
                                 s mark X -> s X,
                               s active X -> s X,
                            length mark X -> length X,
                          length active X -> length X,
                               U13 mark X -> U13 X,
                             U13 active X -> U13 X,
                         isNatList mark X -> isNatList X,
                       isNatList active X -> isNatList X,
                              U122 mark X -> U122 X,
                            U122 active X -> U122 X,
                        U121(X1, mark X2) -> U121(X1, X2),
                      U121(X1, active X2) -> U121(X1, X2),
                        U121(mark X1, X2) -> U121(X1, X2),
                      U121(active X1, X2) -> U121(X1, X2),
                U132(X1, X2, X3, mark X4) -> U132(X1, X2, X3, X4),
              U132(X1, X2, X3, active X4) -> U132(X1, X2, X3, X4),
                U132(X1, X2, mark X3, X4) -> U132(X1, X2, X3, X4),
              U132(X1, X2, active X3, X4) -> U132(X1, X2, X3, X4),
                U132(X1, mark X2, X3, X4) -> U132(X1, X2, X3, X4),
              U132(X1, active X2, X3, X4) -> U132(X1, X2, X3, X4),
                U132(mark X1, X2, X3, X4) -> U132(X1, X2, X3, X4),
              U132(active X1, X2, X3, X4) -> U132(X1, X2, X3, X4),
                U131(X1, X2, X3, mark X4) -> U131(X1, X2, X3, X4),
              U131(X1, X2, X3, active X4) -> U131(X1, X2, X3, X4),
                U131(X1, X2, mark X3, X4) -> U131(X1, X2, X3, X4),
              U131(X1, X2, active X3, X4) -> U131(X1, X2, X3, X4),
                U131(X1, mark X2, X3, X4) -> U131(X1, X2, X3, X4),
              U131(X1, active X2, X3, X4) -> U131(X1, X2, X3, X4),
                U131(mark X1, X2, X3, X4) -> U131(X1, X2, X3, X4),
              U131(active X1, X2, X3, X4) -> U131(X1, X2, X3, X4),
                U133(X1, X2, X3, mark X4) -> U133(X1, X2, X3, X4),
              U133(X1, X2, X3, active X4) -> U133(X1, X2, X3, X4),
                U133(X1, X2, mark X3, X4) -> U133(X1, X2, X3, X4),
              U133(X1, X2, active X3, X4) -> U133(X1, X2, X3, X4),
                U133(X1, mark X2, X3, X4) -> U133(X1, X2, X3, X4),
              U133(X1, active X2, X3, X4) -> U133(X1, X2, X3, X4),
                U133(mark X1, X2, X3, X4) -> U133(X1, X2, X3, X4),
              U133(active X1, X2, X3, X4) -> U133(X1, X2, X3, X4),
                U134(X1, X2, X3, mark X4) -> U134(X1, X2, X3, X4),
              U134(X1, X2, X3, active X4) -> U134(X1, X2, X3, X4),
                U134(X1, X2, mark X3, X4) -> U134(X1, X2, X3, X4),
              U134(X1, X2, active X3, X4) -> U134(X1, X2, X3, X4),
                U134(X1, mark X2, X3, X4) -> U134(X1, X2, X3, X4),
              U134(X1, active X2, X3, X4) -> U134(X1, X2, X3, X4),
                U134(mark X1, X2, X3, X4) -> U134(X1, X2, X3, X4),
              U134(active X1, X2, X3, X4) -> U134(X1, X2, X3, X4),
                U135(X1, X2, X3, mark X4) -> U135(X1, X2, X3, X4),
              U135(X1, X2, X3, active X4) -> U135(X1, X2, X3, X4),
                U135(X1, X2, mark X3, X4) -> U135(X1, X2, X3, X4),
              U135(X1, X2, active X3, X4) -> U135(X1, X2, X3, X4),
                U135(X1, mark X2, X3, X4) -> U135(X1, X2, X3, X4),
              U135(X1, active X2, X3, X4) -> U135(X1, X2, X3, X4),
                U135(mark X1, X2, X3, X4) -> U135(X1, X2, X3, X4),
              U135(active X1, X2, X3, X4) -> U135(X1, X2, X3, X4),
                U136(X1, X2, X3, mark X4) -> U136(X1, X2, X3, X4),
              U136(X1, X2, X3, active X4) -> U136(X1, X2, X3, X4),
                U136(X1, X2, mark X3, X4) -> U136(X1, X2, X3, X4),
              U136(X1, X2, active X3, X4) -> U136(X1, X2, X3, X4),
                U136(X1, mark X2, X3, X4) -> U136(X1, X2, X3, X4),
              U136(X1, active X2, X3, X4) -> U136(X1, X2, X3, X4),
                U136(mark X1, X2, X3, X4) -> U136(X1, X2, X3, X4),
              U136(active X1, X2, X3, X4) -> U136(X1, X2, X3, X4),
                        take(X1, mark X2) -> take(X1, X2),
                      take(X1, active X2) -> take(X1, X2),
                        take(mark X1, X2) -> take(X1, X2),
                      take(active X1, X2) -> take(X1, X2),
                         U22(X1, mark X2) -> U22(X1, X2),
                       U22(X1, active X2) -> U22(X1, X2),
                         U22(mark X1, X2) -> U22(X1, X2),
                       U22(active X1, X2) -> U22(X1, X2),
                         U21(X1, mark X2) -> U21(X1, X2),
                       U21(X1, active X2) -> U21(X1, X2),
                         U21(mark X1, X2) -> U21(X1, X2),
                       U21(active X1, X2) -> U21(X1, X2),
                               U23 mark X -> U23 X,
                             U23 active X -> U23 X,
                         U32(X1, mark X2) -> U32(X1, X2),
                       U32(X1, active X2) -> U32(X1, X2),
                         U32(mark X1, X2) -> U32(X1, X2),
                       U32(active X1, X2) -> U32(X1, X2),
                         U31(X1, mark X2) -> U31(X1, X2),
                       U31(X1, active X2) -> U31(X1, X2),
                         U31(mark X1, X2) -> U31(X1, X2),
                       U31(active X1, X2) -> U31(X1, X2),
                               U33 mark X -> U33 X,
                             U33 active X -> U33 X,
                     U42(X1, X2, mark X3) -> U42(X1, X2, X3),
                   U42(X1, X2, active X3) -> U42(X1, X2, X3),
                     U42(X1, mark X2, X3) -> U42(X1, X2, X3),
                   U42(X1, active X2, X3) -> U42(X1, X2, X3),
                     U42(mark X1, X2, X3) -> U42(X1, X2, X3),
                   U42(active X1, X2, X3) -> U42(X1, X2, X3),
                     U41(X1, X2, mark X3) -> U41(X1, X2, X3),
                   U41(X1, X2, active X3) -> U41(X1, X2, X3),
                     U41(X1, mark X2, X3) -> U41(X1, X2, X3),
                   U41(X1, active X2, X3) -> U41(X1, X2, X3),
                     U41(mark X1, X2, X3) -> U41(X1, X2, X3),
                   U41(active X1, X2, X3) -> U41(X1, X2, X3),
                     U43(X1, X2, mark X3) -> U43(X1, X2, X3),
                   U43(X1, X2, active X3) -> U43(X1, X2, X3),
                     U43(X1, mark X2, X3) -> U43(X1, X2, X3),
                   U43(X1, active X2, X3) -> U43(X1, X2, X3),
                     U43(mark X1, X2, X3) -> U43(X1, X2, X3),
                   U43(active X1, X2, X3) -> U43(X1, X2, X3),
                     U44(X1, X2, mark X3) -> U44(X1, X2, X3),
                   U44(X1, X2, active X3) -> U44(X1, X2, X3),
                     U44(X1, mark X2, X3) -> U44(X1, X2, X3),
                   U44(X1, active X2, X3) -> U44(X1, X2, X3),
                     U44(mark X1, X2, X3) -> U44(X1, X2, X3),
                   U44(active X1, X2, X3) -> U44(X1, X2, X3),
                         U45(X1, mark X2) -> U45(X1, X2),
                       U45(X1, active X2) -> U45(X1, X2),
                         U45(mark X1, X2) -> U45(X1, X2),
                       U45(active X1, X2) -> U45(X1, X2),
                               U46 mark X -> U46 X,
                             U46 active X -> U46 X,
                               U52 mark X -> U52 X,
                             U52 active X -> U52 X,
                         U51(X1, mark X2) -> U51(X1, X2),
                       U51(X1, active X2) -> U51(X1, X2),
                         U51(mark X1, X2) -> U51(X1, X2),
                       U51(active X1, X2) -> U51(X1, X2),
                               U62 mark X -> U62 X,
                             U62 active X -> U62 X,
                         U61(X1, mark X2) -> U61(X1, X2),
                       U61(X1, active X2) -> U61(X1, X2),
                         U61(mark X1, X2) -> U61(X1, X2),
                       U61(active X1, X2) -> U61(X1, X2),
                               U71 mark X -> U71 X,
                             U71 active X -> U71 X,
                               U81 mark X -> U81 X,
                             U81 active X -> U81 X,
                     U92(X1, X2, mark X3) -> U92(X1, X2, X3),
                   U92(X1, X2, active X3) -> U92(X1, X2, X3),
                     U92(X1, mark X2, X3) -> U92(X1, X2, X3),
                   U92(X1, active X2, X3) -> U92(X1, X2, X3),
                     U92(mark X1, X2, X3) -> U92(X1, X2, X3),
                   U92(active X1, X2, X3) -> U92(X1, X2, X3),
                     U91(X1, X2, mark X3) -> U91(X1, X2, X3),
                   U91(X1, X2, active X3) -> U91(X1, X2, X3),
                     U91(X1, mark X2, X3) -> U91(X1, X2, X3),
                   U91(X1, active X2, X3) -> U91(X1, X2, X3),
                     U91(mark X1, X2, X3) -> U91(X1, X2, X3),
                   U91(active X1, X2, X3) -> U91(X1, X2, X3),
                     U93(X1, X2, mark X3) -> U93(X1, X2, X3),
                   U93(X1, X2, active X3) -> U93(X1, X2, X3),
                     U93(X1, mark X2, X3) -> U93(X1, X2, X3),
                   U93(X1, active X2, X3) -> U93(X1, X2, X3),
                     U93(mark X1, X2, X3) -> U93(X1, X2, X3),
                   U93(active X1, X2, X3) -> U93(X1, X2, X3),
                     U94(X1, X2, mark X3) -> U94(X1, X2, X3),
                   U94(X1, X2, active X3) -> U94(X1, X2, X3),
                     U94(X1, mark X2, X3) -> U94(X1, X2, X3),
                   U94(X1, active X2, X3) -> U94(X1, X2, X3),
                     U94(mark X1, X2, X3) -> U94(X1, X2, X3),
                   U94(active X1, X2, X3) -> U94(X1, X2, X3),
                         U95(X1, mark X2) -> U95(X1, X2),
                       U95(X1, active X2) -> U95(X1, X2),
                         U95(mark X1, X2) -> U95(X1, X2),
                       U95(active X1, X2) -> U95(X1, X2),
                               U96 mark X -> U96 X,
                             U96 active X -> U96 X
      }
      Open
     
     SCC (6):
      Strict:
       {  U113#(X1, X2, mark X3) -> U113#(X1, X2, X3),
        U113#(X1, X2, active X3) -> U113#(X1, X2, X3),
          U113#(X1, mark X2, X3) -> U113#(X1, X2, X3),
        U113#(X1, active X2, X3) -> U113#(X1, X2, X3),
          U113#(mark X1, X2, X3) -> U113#(X1, X2, X3),
        U113#(active X1, X2, X3) -> U113#(X1, X2, X3)}
      Weak:
      {
                        mark cons(X1, X2) -> active cons(mark X1, X2),
                                 mark 0() -> active 0(),
                             mark zeros() -> active zeros(),
                    mark U102(X1, X2, X3) -> active U102(mark X1, X2, X3),
                         mark isNatKind X -> active isNatKind X,
                    mark U101(X1, X2, X3) -> active U101(mark X1, X2, X3),
                                mark tt() -> active tt(),
                    mark U103(X1, X2, X3) -> active U103(mark X1, X2, X3),
                    mark isNatIListKind X -> active isNatIListKind X,
                    mark U104(X1, X2, X3) -> active U104(mark X1, X2, X3),
                        mark U105(X1, X2) -> active U105(mark X1, X2),
                             mark isNat X -> active isNat X,
                              mark U106 X -> active U106 mark X,
                        mark isNatIList X -> active isNatIList X,
                         mark U12(X1, X2) -> active U12(mark X1, X2),
                         mark U11(X1, X2) -> active U11(mark X1, X2),
                    mark U112(X1, X2, X3) -> active U112(mark X1, X2, X3),
                    mark U111(X1, X2, X3) -> active U111(mark X1, X2, X3),
                    mark U113(X1, X2, X3) -> active U113(mark X1, X2, X3),
                        mark U114(X1, X2) -> active U114(mark X1, X2),
                                 mark s X -> active s mark X,
                            mark length X -> active length mark X,
                               mark U13 X -> active U13 mark X,
                         mark isNatList X -> active isNatList X,
                              mark U122 X -> active U122 mark X,
                        mark U121(X1, X2) -> active U121(mark X1, X2),
                               mark nil() -> active nil(),
                mark U132(X1, X2, X3, X4) -> active U132(mark X1, X2, X3, X4),
                mark U131(X1, X2, X3, X4) -> active U131(mark X1, X2, X3, X4),
                mark U133(X1, X2, X3, X4) -> active U133(mark X1, X2, X3, X4),
                mark U134(X1, X2, X3, X4) -> active U134(mark X1, X2, X3, X4),
                mark U135(X1, X2, X3, X4) -> active U135(mark X1, X2, X3, X4),
                mark U136(X1, X2, X3, X4) -> active U136(mark X1, X2, X3, X4),
                        mark take(X1, X2) -> active take(mark X1, mark X2),
                         mark U22(X1, X2) -> active U22(mark X1, X2),
                         mark U21(X1, X2) -> active U21(mark X1, X2),
                               mark U23 X -> active U23 mark X,
                         mark U32(X1, X2) -> active U32(mark X1, X2),
                         mark U31(X1, X2) -> active U31(mark X1, X2),
                               mark U33 X -> active U33 mark X,
                     mark U42(X1, X2, X3) -> active U42(mark X1, X2, X3),
                     mark U41(X1, X2, X3) -> active U41(mark X1, X2, X3),
                     mark U43(X1, X2, X3) -> active U43(mark X1, X2, X3),
                     mark U44(X1, X2, X3) -> active U44(mark X1, X2, X3),
                         mark U45(X1, X2) -> active U45(mark X1, X2),
                               mark U46 X -> active U46 mark X,
                               mark U52 X -> active U52 mark X,
                         mark U51(X1, X2) -> active U51(mark X1, X2),
                               mark U62 X -> active U62 mark X,
                         mark U61(X1, X2) -> active U61(mark X1, X2),
                               mark U71 X -> active U71 mark X,
                               mark U81 X -> active U81 mark X,
                     mark U92(X1, X2, X3) -> active U92(mark X1, X2, X3),
                     mark U91(X1, X2, X3) -> active U91(mark X1, X2, X3),
                     mark U93(X1, X2, X3) -> active U93(mark X1, X2, X3),
                     mark U94(X1, X2, X3) -> active U94(mark X1, X2, X3),
                         mark U95(X1, X2) -> active U95(mark X1, X2),
                               mark U96 X -> active U96 mark X,
                        cons(X1, mark X2) -> cons(X1, X2),
                      cons(X1, active X2) -> cons(X1, X2),
                        cons(mark X1, X2) -> cons(X1, X2),
                      cons(active X1, X2) -> cons(X1, X2),
                           active zeros() -> mark cons(0(), zeros()),
                active U102(tt(), V1, V2) -> mark U103(isNatIListKind V2, V1, V2),
                     active isNatKind 0() -> mark tt(),
                    active isNatKind s V1 -> mark U81 isNatKind V1,
               active isNatKind length V1 -> mark U71 isNatIListKind V1,
                active U101(tt(), V1, V2) -> mark U102(isNatKind V1, V1, V2),
                active U103(tt(), V1, V2) -> mark U104(isNatIListKind V2, V1, V2),
       active isNatIListKind cons(V1, V2) -> mark U51(isNatKind V1, V2),
            active isNatIListKind zeros() -> mark tt(),
              active isNatIListKind nil() -> mark tt(),
       active isNatIListKind take(V1, V2) -> mark U61(isNatKind V1, V2),
                active U104(tt(), V1, V2) -> mark U105(isNat V1, V2),
                    active U105(tt(), V2) -> mark U106 isNatIList V2,
                         active isNat 0() -> mark tt(),
                        active isNat s V1 -> mark U21(isNatKind V1, V1),
                   active isNat length V1 -> mark U11(isNatIListKind V1, V1),
                         active U106 tt() -> mark tt(),
                      active isNatIList V -> mark U31(isNatIListKind V, V),
           active isNatIList cons(V1, V2) -> mark U41(isNatKind V1, V1, V2),
                active isNatIList zeros() -> mark tt(),
                     active U12(tt(), V1) -> mark U13 isNatList V1,
                     active U11(tt(), V1) -> mark U12(isNatIListKind V1, V1),
                  active U112(tt(), L, N) -> mark U113(isNat N, L, N),
                  active U111(tt(), L, N) -> mark U112(isNatIListKind L, L, N),
                  active U113(tt(), L, N) -> mark U114(isNatKind N, L),
                     active U114(tt(), L) -> mark s length L,
                 active length cons(N, L) -> mark U111(isNatList L, L, N),
                      active length nil() -> mark 0(),
                          active U13 tt() -> mark tt(),
            active isNatList cons(V1, V2) -> mark U91(isNatKind V1, V1, V2),
                   active isNatList nil() -> mark tt(),
            active isNatList take(V1, V2) -> mark U101(isNatKind V1, V1, V2),
                         active U122 tt() -> mark nil(),
                    active U121(tt(), IL) -> mark U122 isNatIListKind IL,
              active U132(tt(), IL, M, N) -> mark U133(isNat M, IL, M, N),
              active U131(tt(), IL, M, N) -> mark U132(isNatIListKind IL, IL, M, N),
              active U133(tt(), IL, M, N) -> mark U134(isNatKind M, IL, M, N),
              active U134(tt(), IL, M, N) -> mark U135(isNat N, IL, M, N),
              active U135(tt(), IL, M, N) -> mark U136(isNatKind N, IL, M, N),
              active U136(tt(), IL, M, N) -> mark cons(N, take(M, IL)),
                     active take(0(), IL) -> mark U121(isNatIList IL, IL),
            active take(s M, cons(N, IL)) -> mark U131(isNatIList IL, IL, M, N),
                     active U22(tt(), V1) -> mark U23 isNat V1,
                     active U21(tt(), V1) -> mark U22(isNatKind V1, V1),
                          active U23 tt() -> mark tt(),
                      active U32(tt(), V) -> mark U33 isNatList V,
                      active U31(tt(), V) -> mark U32(isNatIListKind V, V),
                          active U33 tt() -> mark tt(),
                 active U42(tt(), V1, V2) -> mark U43(isNatIListKind V2, V1, V2),
                 active U41(tt(), V1, V2) -> mark U42(isNatKind V1, V1, V2),
                 active U43(tt(), V1, V2) -> mark U44(isNatIListKind V2, V1, V2),
                 active U44(tt(), V1, V2) -> mark U45(isNat V1, V2),
                     active U45(tt(), V2) -> mark U46 isNatIList V2,
                          active U46 tt() -> mark tt(),
                          active U52 tt() -> mark tt(),
                     active U51(tt(), V2) -> mark U52 isNatIListKind V2,
                          active U62 tt() -> mark tt(),
                     active U61(tt(), V2) -> mark U62 isNatIListKind V2,
                          active U71 tt() -> mark tt(),
                          active U81 tt() -> mark tt(),
                 active U92(tt(), V1, V2) -> mark U93(isNatIListKind V2, V1, V2),
                 active U91(tt(), V1, V2) -> mark U92(isNatKind V1, V1, V2),
                 active U93(tt(), V1, V2) -> mark U94(isNatIListKind V2, V1, V2),
                 active U94(tt(), V1, V2) -> mark U95(isNat V1, V2),
                     active U95(tt(), V2) -> mark U96 isNatList V2,
                          active U96 tt() -> mark tt(),
                    U102(X1, X2, mark X3) -> U102(X1, X2, X3),
                  U102(X1, X2, active X3) -> U102(X1, X2, X3),
                    U102(X1, mark X2, X3) -> U102(X1, X2, X3),
                  U102(X1, active X2, X3) -> U102(X1, X2, X3),
                    U102(mark X1, X2, X3) -> U102(X1, X2, X3),
                  U102(active X1, X2, X3) -> U102(X1, X2, X3),
                         isNatKind mark X -> isNatKind X,
                       isNatKind active X -> isNatKind X,
                    U101(X1, X2, mark X3) -> U101(X1, X2, X3),
                  U101(X1, X2, active X3) -> U101(X1, X2, X3),
                    U101(X1, mark X2, X3) -> U101(X1, X2, X3),
                  U101(X1, active X2, X3) -> U101(X1, X2, X3),
                    U101(mark X1, X2, X3) -> U101(X1, X2, X3),
                  U101(active X1, X2, X3) -> U101(X1, X2, X3),
                    U103(X1, X2, mark X3) -> U103(X1, X2, X3),
                  U103(X1, X2, active X3) -> U103(X1, X2, X3),
                    U103(X1, mark X2, X3) -> U103(X1, X2, X3),
                  U103(X1, active X2, X3) -> U103(X1, X2, X3),
                    U103(mark X1, X2, X3) -> U103(X1, X2, X3),
                  U103(active X1, X2, X3) -> U103(X1, X2, X3),
                    isNatIListKind mark X -> isNatIListKind X,
                  isNatIListKind active X -> isNatIListKind X,
                    U104(X1, X2, mark X3) -> U104(X1, X2, X3),
                  U104(X1, X2, active X3) -> U104(X1, X2, X3),
                    U104(X1, mark X2, X3) -> U104(X1, X2, X3),
                  U104(X1, active X2, X3) -> U104(X1, X2, X3),
                    U104(mark X1, X2, X3) -> U104(X1, X2, X3),
                  U104(active X1, X2, X3) -> U104(X1, X2, X3),
                        U105(X1, mark X2) -> U105(X1, X2),
                      U105(X1, active X2) -> U105(X1, X2),
                        U105(mark X1, X2) -> U105(X1, X2),
                      U105(active X1, X2) -> U105(X1, X2),
                             isNat mark X -> isNat X,
                           isNat active X -> isNat X,
                              U106 mark X -> U106 X,
                            U106 active X -> U106 X,
                        isNatIList mark X -> isNatIList X,
                      isNatIList active X -> isNatIList X,
                         U12(X1, mark X2) -> U12(X1, X2),
                       U12(X1, active X2) -> U12(X1, X2),
                         U12(mark X1, X2) -> U12(X1, X2),
                       U12(active X1, X2) -> U12(X1, X2),
                         U11(X1, mark X2) -> U11(X1, X2),
                       U11(X1, active X2) -> U11(X1, X2),
                         U11(mark X1, X2) -> U11(X1, X2),
                       U11(active X1, X2) -> U11(X1, X2),
                    U112(X1, X2, mark X3) -> U112(X1, X2, X3),
                  U112(X1, X2, active X3) -> U112(X1, X2, X3),
                    U112(X1, mark X2, X3) -> U112(X1, X2, X3),
                  U112(X1, active X2, X3) -> U112(X1, X2, X3),
                    U112(mark X1, X2, X3) -> U112(X1, X2, X3),
                  U112(active X1, X2, X3) -> U112(X1, X2, X3),
                    U111(X1, X2, mark X3) -> U111(X1, X2, X3),
                  U111(X1, X2, active X3) -> U111(X1, X2, X3),
                    U111(X1, mark X2, X3) -> U111(X1, X2, X3),
                  U111(X1, active X2, X3) -> U111(X1, X2, X3),
                    U111(mark X1, X2, X3) -> U111(X1, X2, X3),
                  U111(active X1, X2, X3) -> U111(X1, X2, X3),
                    U113(X1, X2, mark X3) -> U113(X1, X2, X3),
                  U113(X1, X2, active X3) -> U113(X1, X2, X3),
                    U113(X1, mark X2, X3) -> U113(X1, X2, X3),
                  U113(X1, active X2, X3) -> U113(X1, X2, X3),
                    U113(mark X1, X2, X3) -> U113(X1, X2, X3),
                  U113(active X1, X2, X3) -> U113(X1, X2, X3),
                        U114(X1, mark X2) -> U114(X1, X2),
                      U114(X1, active X2) -> U114(X1, X2),
                        U114(mark X1, X2) -> U114(X1, X2),
                      U114(active X1, X2) -> U114(X1, X2),
                                 s mark X -> s X,
                               s active X -> s X,
                            length mark X -> length X,
                          length active X -> length X,
                               U13 mark X -> U13 X,
                             U13 active X -> U13 X,
                         isNatList mark X -> isNatList X,
                       isNatList active X -> isNatList X,
                              U122 mark X -> U122 X,
                            U122 active X -> U122 X,
                        U121(X1, mark X2) -> U121(X1, X2),
                      U121(X1, active X2) -> U121(X1, X2),
                        U121(mark X1, X2) -> U121(X1, X2),
                      U121(active X1, X2) -> U121(X1, X2),
                U132(X1, X2, X3, mark X4) -> U132(X1, X2, X3, X4),
              U132(X1, X2, X3, active X4) -> U132(X1, X2, X3, X4),
                U132(X1, X2, mark X3, X4) -> U132(X1, X2, X3, X4),
              U132(X1, X2, active X3, X4) -> U132(X1, X2, X3, X4),
                U132(X1, mark X2, X3, X4) -> U132(X1, X2, X3, X4),
              U132(X1, active X2, X3, X4) -> U132(X1, X2, X3, X4),
                U132(mark X1, X2, X3, X4) -> U132(X1, X2, X3, X4),
              U132(active X1, X2, X3, X4) -> U132(X1, X2, X3, X4),
                U131(X1, X2, X3, mark X4) -> U131(X1, X2, X3, X4),
              U131(X1, X2, X3, active X4) -> U131(X1, X2, X3, X4),
                U131(X1, X2, mark X3, X4) -> U131(X1, X2, X3, X4),
              U131(X1, X2, active X3, X4) -> U131(X1, X2, X3, X4),
                U131(X1, mark X2, X3, X4) -> U131(X1, X2, X3, X4),
              U131(X1, active X2, X3, X4) -> U131(X1, X2, X3, X4),
                U131(mark X1, X2, X3, X4) -> U131(X1, X2, X3, X4),
              U131(active X1, X2, X3, X4) -> U131(X1, X2, X3, X4),
                U133(X1, X2, X3, mark X4) -> U133(X1, X2, X3, X4),
              U133(X1, X2, X3, active X4) -> U133(X1, X2, X3, X4),
                U133(X1, X2, mark X3, X4) -> U133(X1, X2, X3, X4),
              U133(X1, X2, active X3, X4) -> U133(X1, X2, X3, X4),
                U133(X1, mark X2, X3, X4) -> U133(X1, X2, X3, X4),
              U133(X1, active X2, X3, X4) -> U133(X1, X2, X3, X4),
                U133(mark X1, X2, X3, X4) -> U133(X1, X2, X3, X4),
              U133(active X1, X2, X3, X4) -> U133(X1, X2, X3, X4),
                U134(X1, X2, X3, mark X4) -> U134(X1, X2, X3, X4),
              U134(X1, X2, X3, active X4) -> U134(X1, X2, X3, X4),
                U134(X1, X2, mark X3, X4) -> U134(X1, X2, X3, X4),
              U134(X1, X2, active X3, X4) -> U134(X1, X2, X3, X4),
                U134(X1, mark X2, X3, X4) -> U134(X1, X2, X3, X4),
              U134(X1, active X2, X3, X4) -> U134(X1, X2, X3, X4),
                U134(mark X1, X2, X3, X4) -> U134(X1, X2, X3, X4),
              U134(active X1, X2, X3, X4) -> U134(X1, X2, X3, X4),
                U135(X1, X2, X3, mark X4) -> U135(X1, X2, X3, X4),
              U135(X1, X2, X3, active X4) -> U135(X1, X2, X3, X4),
                U135(X1, X2, mark X3, X4) -> U135(X1, X2, X3, X4),
              U135(X1, X2, active X3, X4) -> U135(X1, X2, X3, X4),
                U135(X1, mark X2, X3, X4) -> U135(X1, X2, X3, X4),
              U135(X1, active X2, X3, X4) -> U135(X1, X2, X3, X4),
                U135(mark X1, X2, X3, X4) -> U135(X1, X2, X3, X4),
              U135(active X1, X2, X3, X4) -> U135(X1, X2, X3, X4),
                U136(X1, X2, X3, mark X4) -> U136(X1, X2, X3, X4),
              U136(X1, X2, X3, active X4) -> U136(X1, X2, X3, X4),
                U136(X1, X2, mark X3, X4) -> U136(X1, X2, X3, X4),
              U136(X1, X2, active X3, X4) -> U136(X1, X2, X3, X4),
                U136(X1, mark X2, X3, X4) -> U136(X1, X2, X3, X4),
              U136(X1, active X2, X3, X4) -> U136(X1, X2, X3, X4),
                U136(mark X1, X2, X3, X4) -> U136(X1, X2, X3, X4),
              U136(active X1, X2, X3, X4) -> U136(X1, X2, X3, X4),
                        take(X1, mark X2) -> take(X1, X2),
                      take(X1, active X2) -> take(X1, X2),
                        take(mark X1, X2) -> take(X1, X2),
                      take(active X1, X2) -> take(X1, X2),
                         U22(X1, mark X2) -> U22(X1, X2),
                       U22(X1, active X2) -> U22(X1, X2),
                         U22(mark X1, X2) -> U22(X1, X2),
                       U22(active X1, X2) -> U22(X1, X2),
                         U21(X1, mark X2) -> U21(X1, X2),
                       U21(X1, active X2) -> U21(X1, X2),
                         U21(mark X1, X2) -> U21(X1, X2),
                       U21(active X1, X2) -> U21(X1, X2),
                               U23 mark X -> U23 X,
                             U23 active X -> U23 X,
                         U32(X1, mark X2) -> U32(X1, X2),
                       U32(X1, active X2) -> U32(X1, X2),
                         U32(mark X1, X2) -> U32(X1, X2),
                       U32(active X1, X2) -> U32(X1, X2),
                         U31(X1, mark X2) -> U31(X1, X2),
                       U31(X1, active X2) -> U31(X1, X2),
                         U31(mark X1, X2) -> U31(X1, X2),
                       U31(active X1, X2) -> U31(X1, X2),
                               U33 mark X -> U33 X,
                             U33 active X -> U33 X,
                     U42(X1, X2, mark X3) -> U42(X1, X2, X3),
                   U42(X1, X2, active X3) -> U42(X1, X2, X3),
                     U42(X1, mark X2, X3) -> U42(X1, X2, X3),
                   U42(X1, active X2, X3) -> U42(X1, X2, X3),
                     U42(mark X1, X2, X3) -> U42(X1, X2, X3),
                   U42(active X1, X2, X3) -> U42(X1, X2, X3),
                     U41(X1, X2, mark X3) -> U41(X1, X2, X3),
                   U41(X1, X2, active X3) -> U41(X1, X2, X3),
                     U41(X1, mark X2, X3) -> U41(X1, X2, X3),
                   U41(X1, active X2, X3) -> U41(X1, X2, X3),
                     U41(mark X1, X2, X3) -> U41(X1, X2, X3),
                   U41(active X1, X2, X3) -> U41(X1, X2, X3),
                     U43(X1, X2, mark X3) -> U43(X1, X2, X3),
                   U43(X1, X2, active X3) -> U43(X1, X2, X3),
                     U43(X1, mark X2, X3) -> U43(X1, X2, X3),
                   U43(X1, active X2, X3) -> U43(X1, X2, X3),
                     U43(mark X1, X2, X3) -> U43(X1, X2, X3),
                   U43(active X1, X2, X3) -> U43(X1, X2, X3),
                     U44(X1, X2, mark X3) -> U44(X1, X2, X3),
                   U44(X1, X2, active X3) -> U44(X1, X2, X3),
                     U44(X1, mark X2, X3) -> U44(X1, X2, X3),
                   U44(X1, active X2, X3) -> U44(X1, X2, X3),
                     U44(mark X1, X2, X3) -> U44(X1, X2, X3),
                   U44(active X1, X2, X3) -> U44(X1, X2, X3),
                         U45(X1, mark X2) -> U45(X1, X2),
                       U45(X1, active X2) -> U45(X1, X2),
                         U45(mark X1, X2) -> U45(X1, X2),
                       U45(active X1, X2) -> U45(X1, X2),
                               U46 mark X -> U46 X,
                             U46 active X -> U46 X,
                               U52 mark X -> U52 X,
                             U52 active X -> U52 X,
                         U51(X1, mark X2) -> U51(X1, X2),
                       U51(X1, active X2) -> U51(X1, X2),
                         U51(mark X1, X2) -> U51(X1, X2),
                       U51(active X1, X2) -> U51(X1, X2),
                               U62 mark X -> U62 X,
                             U62 active X -> U62 X,
                         U61(X1, mark X2) -> U61(X1, X2),
                       U61(X1, active X2) -> U61(X1, X2),
                         U61(mark X1, X2) -> U61(X1, X2),
                       U61(active X1, X2) -> U61(X1, X2),
                               U71 mark X -> U71 X,
                             U71 active X -> U71 X,
                               U81 mark X -> U81 X,
                             U81 active X -> U81 X,
                     U92(X1, X2, mark X3) -> U92(X1, X2, X3),
                   U92(X1, X2, active X3) -> U92(X1, X2, X3),
                     U92(X1, mark X2, X3) -> U92(X1, X2, X3),
                   U92(X1, active X2, X3) -> U92(X1, X2, X3),
                     U92(mark X1, X2, X3) -> U92(X1, X2, X3),
                   U92(active X1, X2, X3) -> U92(X1, X2, X3),
                     U91(X1, X2, mark X3) -> U91(X1, X2, X3),
                   U91(X1, X2, active X3) -> U91(X1, X2, X3),
                     U91(X1, mark X2, X3) -> U91(X1, X2, X3),
                   U91(X1, active X2, X3) -> U91(X1, X2, X3),
                     U91(mark X1, X2, X3) -> U91(X1, X2, X3),
                   U91(active X1, X2, X3) -> U91(X1, X2, X3),
                     U93(X1, X2, mark X3) -> U93(X1, X2, X3),
                   U93(X1, X2, active X3) -> U93(X1, X2, X3),
                     U93(X1, mark X2, X3) -> U93(X1, X2, X3),
                   U93(X1, active X2, X3) -> U93(X1, X2, X3),
                     U93(mark X1, X2, X3) -> U93(X1, X2, X3),
                   U93(active X1, X2, X3) -> U93(X1, X2, X3),
                     U94(X1, X2, mark X3) -> U94(X1, X2, X3),
                   U94(X1, X2, active X3) -> U94(X1, X2, X3),
                     U94(X1, mark X2, X3) -> U94(X1, X2, X3),
                   U94(X1, active X2, X3) -> U94(X1, X2, X3),
                     U94(mark X1, X2, X3) -> U94(X1, X2, X3),
                   U94(active X1, X2, X3) -> U94(X1, X2, X3),
                         U95(X1, mark X2) -> U95(X1, X2),
                       U95(X1, active X2) -> U95(X1, X2),
                         U95(mark X1, X2) -> U95(X1, X2),
                       U95(active X1, X2) -> U95(X1, X2),
                               U96 mark X -> U96 X,
                             U96 active X -> U96 X
      }
      Open
     
     SCC (6):
      Strict:
       {  U111#(X1, X2, mark X3) -> U111#(X1, X2, X3),
        U111#(X1, X2, active X3) -> U111#(X1, X2, X3),
          U111#(X1, mark X2, X3) -> U111#(X1, X2, X3),
        U111#(X1, active X2, X3) -> U111#(X1, X2, X3),
          U111#(mark X1, X2, X3) -> U111#(X1, X2, X3),
        U111#(active X1, X2, X3) -> U111#(X1, X2, X3)}
      Weak:
      {
                        mark cons(X1, X2) -> active cons(mark X1, X2),
                                 mark 0() -> active 0(),
                             mark zeros() -> active zeros(),
                    mark U102(X1, X2, X3) -> active U102(mark X1, X2, X3),
                         mark isNatKind X -> active isNatKind X,
                    mark U101(X1, X2, X3) -> active U101(mark X1, X2, X3),
                                mark tt() -> active tt(),
                    mark U103(X1, X2, X3) -> active U103(mark X1, X2, X3),
                    mark isNatIListKind X -> active isNatIListKind X,
                    mark U104(X1, X2, X3) -> active U104(mark X1, X2, X3),
                        mark U105(X1, X2) -> active U105(mark X1, X2),
                             mark isNat X -> active isNat X,
                              mark U106 X -> active U106 mark X,
                        mark isNatIList X -> active isNatIList X,
                         mark U12(X1, X2) -> active U12(mark X1, X2),
                         mark U11(X1, X2) -> active U11(mark X1, X2),
                    mark U112(X1, X2, X3) -> active U112(mark X1, X2, X3),
                    mark U111(X1, X2, X3) -> active U111(mark X1, X2, X3),
                    mark U113(X1, X2, X3) -> active U113(mark X1, X2, X3),
                        mark U114(X1, X2) -> active U114(mark X1, X2),
                                 mark s X -> active s mark X,
                            mark length X -> active length mark X,
                               mark U13 X -> active U13 mark X,
                         mark isNatList X -> active isNatList X,
                              mark U122 X -> active U122 mark X,
                        mark U121(X1, X2) -> active U121(mark X1, X2),
                               mark nil() -> active nil(),
                mark U132(X1, X2, X3, X4) -> active U132(mark X1, X2, X3, X4),
                mark U131(X1, X2, X3, X4) -> active U131(mark X1, X2, X3, X4),
                mark U133(X1, X2, X3, X4) -> active U133(mark X1, X2, X3, X4),
                mark U134(X1, X2, X3, X4) -> active U134(mark X1, X2, X3, X4),
                mark U135(X1, X2, X3, X4) -> active U135(mark X1, X2, X3, X4),
                mark U136(X1, X2, X3, X4) -> active U136(mark X1, X2, X3, X4),
                        mark take(X1, X2) -> active take(mark X1, mark X2),
                         mark U22(X1, X2) -> active U22(mark X1, X2),
                         mark U21(X1, X2) -> active U21(mark X1, X2),
                               mark U23 X -> active U23 mark X,
                         mark U32(X1, X2) -> active U32(mark X1, X2),
                         mark U31(X1, X2) -> active U31(mark X1, X2),
                               mark U33 X -> active U33 mark X,
                     mark U42(X1, X2, X3) -> active U42(mark X1, X2, X3),
                     mark U41(X1, X2, X3) -> active U41(mark X1, X2, X3),
                     mark U43(X1, X2, X3) -> active U43(mark X1, X2, X3),
                     mark U44(X1, X2, X3) -> active U44(mark X1, X2, X3),
                         mark U45(X1, X2) -> active U45(mark X1, X2),
                               mark U46 X -> active U46 mark X,
                               mark U52 X -> active U52 mark X,
                         mark U51(X1, X2) -> active U51(mark X1, X2),
                               mark U62 X -> active U62 mark X,
                         mark U61(X1, X2) -> active U61(mark X1, X2),
                               mark U71 X -> active U71 mark X,
                               mark U81 X -> active U81 mark X,
                     mark U92(X1, X2, X3) -> active U92(mark X1, X2, X3),
                     mark U91(X1, X2, X3) -> active U91(mark X1, X2, X3),
                     mark U93(X1, X2, X3) -> active U93(mark X1, X2, X3),
                     mark U94(X1, X2, X3) -> active U94(mark X1, X2, X3),
                         mark U95(X1, X2) -> active U95(mark X1, X2),
                               mark U96 X -> active U96 mark X,
                        cons(X1, mark X2) -> cons(X1, X2),
                      cons(X1, active X2) -> cons(X1, X2),
                        cons(mark X1, X2) -> cons(X1, X2),
                      cons(active X1, X2) -> cons(X1, X2),
                           active zeros() -> mark cons(0(), zeros()),
                active U102(tt(), V1, V2) -> mark U103(isNatIListKind V2, V1, V2),
                     active isNatKind 0() -> mark tt(),
                    active isNatKind s V1 -> mark U81 isNatKind V1,
               active isNatKind length V1 -> mark U71 isNatIListKind V1,
                active U101(tt(), V1, V2) -> mark U102(isNatKind V1, V1, V2),
                active U103(tt(), V1, V2) -> mark U104(isNatIListKind V2, V1, V2),
       active isNatIListKind cons(V1, V2) -> mark U51(isNatKind V1, V2),
            active isNatIListKind zeros() -> mark tt(),
              active isNatIListKind nil() -> mark tt(),
       active isNatIListKind take(V1, V2) -> mark U61(isNatKind V1, V2),
                active U104(tt(), V1, V2) -> mark U105(isNat V1, V2),
                    active U105(tt(), V2) -> mark U106 isNatIList V2,
                         active isNat 0() -> mark tt(),
                        active isNat s V1 -> mark U21(isNatKind V1, V1),
                   active isNat length V1 -> mark U11(isNatIListKind V1, V1),
                         active U106 tt() -> mark tt(),
                      active isNatIList V -> mark U31(isNatIListKind V, V),
           active isNatIList cons(V1, V2) -> mark U41(isNatKind V1, V1, V2),
                active isNatIList zeros() -> mark tt(),
                     active U12(tt(), V1) -> mark U13 isNatList V1,
                     active U11(tt(), V1) -> mark U12(isNatIListKind V1, V1),
                  active U112(tt(), L, N) -> mark U113(isNat N, L, N),
                  active U111(tt(), L, N) -> mark U112(isNatIListKind L, L, N),
                  active U113(tt(), L, N) -> mark U114(isNatKind N, L),
                     active U114(tt(), L) -> mark s length L,
                 active length cons(N, L) -> mark U111(isNatList L, L, N),
                      active length nil() -> mark 0(),
                          active U13 tt() -> mark tt(),
            active isNatList cons(V1, V2) -> mark U91(isNatKind V1, V1, V2),
                   active isNatList nil() -> mark tt(),
            active isNatList take(V1, V2) -> mark U101(isNatKind V1, V1, V2),
                         active U122 tt() -> mark nil(),
                    active U121(tt(), IL) -> mark U122 isNatIListKind IL,
              active U132(tt(), IL, M, N) -> mark U133(isNat M, IL, M, N),
              active U131(tt(), IL, M, N) -> mark U132(isNatIListKind IL, IL, M, N),
              active U133(tt(), IL, M, N) -> mark U134(isNatKind M, IL, M, N),
              active U134(tt(), IL, M, N) -> mark U135(isNat N, IL, M, N),
              active U135(tt(), IL, M, N) -> mark U136(isNatKind N, IL, M, N),
              active U136(tt(), IL, M, N) -> mark cons(N, take(M, IL)),
                     active take(0(), IL) -> mark U121(isNatIList IL, IL),
            active take(s M, cons(N, IL)) -> mark U131(isNatIList IL, IL, M, N),
                     active U22(tt(), V1) -> mark U23 isNat V1,
                     active U21(tt(), V1) -> mark U22(isNatKind V1, V1),
                          active U23 tt() -> mark tt(),
                      active U32(tt(), V) -> mark U33 isNatList V,
                      active U31(tt(), V) -> mark U32(isNatIListKind V, V),
                          active U33 tt() -> mark tt(),
                 active U42(tt(), V1, V2) -> mark U43(isNatIListKind V2, V1, V2),
                 active U41(tt(), V1, V2) -> mark U42(isNatKind V1, V1, V2),
                 active U43(tt(), V1, V2) -> mark U44(isNatIListKind V2, V1, V2),
                 active U44(tt(), V1, V2) -> mark U45(isNat V1, V2),
                     active U45(tt(), V2) -> mark U46 isNatIList V2,
                          active U46 tt() -> mark tt(),
                          active U52 tt() -> mark tt(),
                     active U51(tt(), V2) -> mark U52 isNatIListKind V2,
                          active U62 tt() -> mark tt(),
                     active U61(tt(), V2) -> mark U62 isNatIListKind V2,
                          active U71 tt() -> mark tt(),
                          active U81 tt() -> mark tt(),
                 active U92(tt(), V1, V2) -> mark U93(isNatIListKind V2, V1, V2),
                 active U91(tt(), V1, V2) -> mark U92(isNatKind V1, V1, V2),
                 active U93(tt(), V1, V2) -> mark U94(isNatIListKind V2, V1, V2),
                 active U94(tt(), V1, V2) -> mark U95(isNat V1, V2),
                     active U95(tt(), V2) -> mark U96 isNatList V2,
                          active U96 tt() -> mark tt(),
                    U102(X1, X2, mark X3) -> U102(X1, X2, X3),
                  U102(X1, X2, active X3) -> U102(X1, X2, X3),
                    U102(X1, mark X2, X3) -> U102(X1, X2, X3),
                  U102(X1, active X2, X3) -> U102(X1, X2, X3),
                    U102(mark X1, X2, X3) -> U102(X1, X2, X3),
                  U102(active X1, X2, X3) -> U102(X1, X2, X3),
                         isNatKind mark X -> isNatKind X,
                       isNatKind active X -> isNatKind X,
                    U101(X1, X2, mark X3) -> U101(X1, X2, X3),
                  U101(X1, X2, active X3) -> U101(X1, X2, X3),
                    U101(X1, mark X2, X3) -> U101(X1, X2, X3),
                  U101(X1, active X2, X3) -> U101(X1, X2, X3),
                    U101(mark X1, X2, X3) -> U101(X1, X2, X3),
                  U101(active X1, X2, X3) -> U101(X1, X2, X3),
                    U103(X1, X2, mark X3) -> U103(X1, X2, X3),
                  U103(X1, X2, active X3) -> U103(X1, X2, X3),
                    U103(X1, mark X2, X3) -> U103(X1, X2, X3),
                  U103(X1, active X2, X3) -> U103(X1, X2, X3),
                    U103(mark X1, X2, X3) -> U103(X1, X2, X3),
                  U103(active X1, X2, X3) -> U103(X1, X2, X3),
                    isNatIListKind mark X -> isNatIListKind X,
                  isNatIListKind active X -> isNatIListKind X,
                    U104(X1, X2, mark X3) -> U104(X1, X2, X3),
                  U104(X1, X2, active X3) -> U104(X1, X2, X3),
                    U104(X1, mark X2, X3) -> U104(X1, X2, X3),
                  U104(X1, active X2, X3) -> U104(X1, X2, X3),
                    U104(mark X1, X2, X3) -> U104(X1, X2, X3),
                  U104(active X1, X2, X3) -> U104(X1, X2, X3),
                        U105(X1, mark X2) -> U105(X1, X2),
                      U105(X1, active X2) -> U105(X1, X2),
                        U105(mark X1, X2) -> U105(X1, X2),
                      U105(active X1, X2) -> U105(X1, X2),
                             isNat mark X -> isNat X,
                           isNat active X -> isNat X,
                              U106 mark X -> U106 X,
                            U106 active X -> U106 X,
                        isNatIList mark X -> isNatIList X,
                      isNatIList active X -> isNatIList X,
                         U12(X1, mark X2) -> U12(X1, X2),
                       U12(X1, active X2) -> U12(X1, X2),
                         U12(mark X1, X2) -> U12(X1, X2),
                       U12(active X1, X2) -> U12(X1, X2),
                         U11(X1, mark X2) -> U11(X1, X2),
                       U11(X1, active X2) -> U11(X1, X2),
                         U11(mark X1, X2) -> U11(X1, X2),
                       U11(active X1, X2) -> U11(X1, X2),
                    U112(X1, X2, mark X3) -> U112(X1, X2, X3),
                  U112(X1, X2, active X3) -> U112(X1, X2, X3),
                    U112(X1, mark X2, X3) -> U112(X1, X2, X3),
                  U112(X1, active X2, X3) -> U112(X1, X2, X3),
                    U112(mark X1, X2, X3) -> U112(X1, X2, X3),
                  U112(active X1, X2, X3) -> U112(X1, X2, X3),
                    U111(X1, X2, mark X3) -> U111(X1, X2, X3),
                  U111(X1, X2, active X3) -> U111(X1, X2, X3),
                    U111(X1, mark X2, X3) -> U111(X1, X2, X3),
                  U111(X1, active X2, X3) -> U111(X1, X2, X3),
                    U111(mark X1, X2, X3) -> U111(X1, X2, X3),
                  U111(active X1, X2, X3) -> U111(X1, X2, X3),
                    U113(X1, X2, mark X3) -> U113(X1, X2, X3),
                  U113(X1, X2, active X3) -> U113(X1, X2, X3),
                    U113(X1, mark X2, X3) -> U113(X1, X2, X3),
                  U113(X1, active X2, X3) -> U113(X1, X2, X3),
                    U113(mark X1, X2, X3) -> U113(X1, X2, X3),
                  U113(active X1, X2, X3) -> U113(X1, X2, X3),
                        U114(X1, mark X2) -> U114(X1, X2),
                      U114(X1, active X2) -> U114(X1, X2),
                        U114(mark X1, X2) -> U114(X1, X2),
                      U114(active X1, X2) -> U114(X1, X2),
                                 s mark X -> s X,
                               s active X -> s X,
                            length mark X -> length X,
                          length active X -> length X,
                               U13 mark X -> U13 X,
                             U13 active X -> U13 X,
                         isNatList mark X -> isNatList X,
                       isNatList active X -> isNatList X,
                              U122 mark X -> U122 X,
                            U122 active X -> U122 X,
                        U121(X1, mark X2) -> U121(X1, X2),
                      U121(X1, active X2) -> U121(X1, X2),
                        U121(mark X1, X2) -> U121(X1, X2),
                      U121(active X1, X2) -> U121(X1, X2),
                U132(X1, X2, X3, mark X4) -> U132(X1, X2, X3, X4),
              U132(X1, X2, X3, active X4) -> U132(X1, X2, X3, X4),
                U132(X1, X2, mark X3, X4) -> U132(X1, X2, X3, X4),
              U132(X1, X2, active X3, X4) -> U132(X1, X2, X3, X4),
                U132(X1, mark X2, X3, X4) -> U132(X1, X2, X3, X4),
              U132(X1, active X2, X3, X4) -> U132(X1, X2, X3, X4),
                U132(mark X1, X2, X3, X4) -> U132(X1, X2, X3, X4),
              U132(active X1, X2, X3, X4) -> U132(X1, X2, X3, X4),
                U131(X1, X2, X3, mark X4) -> U131(X1, X2, X3, X4),
              U131(X1, X2, X3, active X4) -> U131(X1, X2, X3, X4),
                U131(X1, X2, mark X3, X4) -> U131(X1, X2, X3, X4),
              U131(X1, X2, active X3, X4) -> U131(X1, X2, X3, X4),
                U131(X1, mark X2, X3, X4) -> U131(X1, X2, X3, X4),
              U131(X1, active X2, X3, X4) -> U131(X1, X2, X3, X4),
                U131(mark X1, X2, X3, X4) -> U131(X1, X2, X3, X4),
              U131(active X1, X2, X3, X4) -> U131(X1, X2, X3, X4),
                U133(X1, X2, X3, mark X4) -> U133(X1, X2, X3, X4),
              U133(X1, X2, X3, active X4) -> U133(X1, X2, X3, X4),
                U133(X1, X2, mark X3, X4) -> U133(X1, X2, X3, X4),
              U133(X1, X2, active X3, X4) -> U133(X1, X2, X3, X4),
                U133(X1, mark X2, X3, X4) -> U133(X1, X2, X3, X4),
              U133(X1, active X2, X3, X4) -> U133(X1, X2, X3, X4),
                U133(mark X1, X2, X3, X4) -> U133(X1, X2, X3, X4),
              U133(active X1, X2, X3, X4) -> U133(X1, X2, X3, X4),
                U134(X1, X2, X3, mark X4) -> U134(X1, X2, X3, X4),
              U134(X1, X2, X3, active X4) -> U134(X1, X2, X3, X4),
                U134(X1, X2, mark X3, X4) -> U134(X1, X2, X3, X4),
              U134(X1, X2, active X3, X4) -> U134(X1, X2, X3, X4),
                U134(X1, mark X2, X3, X4) -> U134(X1, X2, X3, X4),
              U134(X1, active X2, X3, X4) -> U134(X1, X2, X3, X4),
                U134(mark X1, X2, X3, X4) -> U134(X1, X2, X3, X4),
              U134(active X1, X2, X3, X4) -> U134(X1, X2, X3, X4),
                U135(X1, X2, X3, mark X4) -> U135(X1, X2, X3, X4),
              U135(X1, X2, X3, active X4) -> U135(X1, X2, X3, X4),
                U135(X1, X2, mark X3, X4) -> U135(X1, X2, X3, X4),
              U135(X1, X2, active X3, X4) -> U135(X1, X2, X3, X4),
                U135(X1, mark X2, X3, X4) -> U135(X1, X2, X3, X4),
              U135(X1, active X2, X3, X4) -> U135(X1, X2, X3, X4),
                U135(mark X1, X2, X3, X4) -> U135(X1, X2, X3, X4),
              U135(active X1, X2, X3, X4) -> U135(X1, X2, X3, X4),
                U136(X1, X2, X3, mark X4) -> U136(X1, X2, X3, X4),
              U136(X1, X2, X3, active X4) -> U136(X1, X2, X3, X4),
                U136(X1, X2, mark X3, X4) -> U136(X1, X2, X3, X4),
              U136(X1, X2, active X3, X4) -> U136(X1, X2, X3, X4),
                U136(X1, mark X2, X3, X4) -> U136(X1, X2, X3, X4),
              U136(X1, active X2, X3, X4) -> U136(X1, X2, X3, X4),
                U136(mark X1, X2, X3, X4) -> U136(X1, X2, X3, X4),
              U136(active X1, X2, X3, X4) -> U136(X1, X2, X3, X4),
                        take(X1, mark X2) -> take(X1, X2),
                      take(X1, active X2) -> take(X1, X2),
                        take(mark X1, X2) -> take(X1, X2),
                      take(active X1, X2) -> take(X1, X2),
                         U22(X1, mark X2) -> U22(X1, X2),
                       U22(X1, active X2) -> U22(X1, X2),
                         U22(mark X1, X2) -> U22(X1, X2),
                       U22(active X1, X2) -> U22(X1, X2),
                         U21(X1, mark X2) -> U21(X1, X2),
                       U21(X1, active X2) -> U21(X1, X2),
                         U21(mark X1, X2) -> U21(X1, X2),
                       U21(active X1, X2) -> U21(X1, X2),
                               U23 mark X -> U23 X,
                             U23 active X -> U23 X,
                         U32(X1, mark X2) -> U32(X1, X2),
                       U32(X1, active X2) -> U32(X1, X2),
                         U32(mark X1, X2) -> U32(X1, X2),
                       U32(active X1, X2) -> U32(X1, X2),
                         U31(X1, mark X2) -> U31(X1, X2),
                       U31(X1, active X2) -> U31(X1, X2),
                         U31(mark X1, X2) -> U31(X1, X2),
                       U31(active X1, X2) -> U31(X1, X2),
                               U33 mark X -> U33 X,
                             U33 active X -> U33 X,
                     U42(X1, X2, mark X3) -> U42(X1, X2, X3),
                   U42(X1, X2, active X3) -> U42(X1, X2, X3),
                     U42(X1, mark X2, X3) -> U42(X1, X2, X3),
                   U42(X1, active X2, X3) -> U42(X1, X2, X3),
                     U42(mark X1, X2, X3) -> U42(X1, X2, X3),
                   U42(active X1, X2, X3) -> U42(X1, X2, X3),
                     U41(X1, X2, mark X3) -> U41(X1, X2, X3),
                   U41(X1, X2, active X3) -> U41(X1, X2, X3),
                     U41(X1, mark X2, X3) -> U41(X1, X2, X3),
                   U41(X1, active X2, X3) -> U41(X1, X2, X3),
                     U41(mark X1, X2, X3) -> U41(X1, X2, X3),
                   U41(active X1, X2, X3) -> U41(X1, X2, X3),
                     U43(X1, X2, mark X3) -> U43(X1, X2, X3),
                   U43(X1, X2, active X3) -> U43(X1, X2, X3),
                     U43(X1, mark X2, X3) -> U43(X1, X2, X3),
                   U43(X1, active X2, X3) -> U43(X1, X2, X3),
                     U43(mark X1, X2, X3) -> U43(X1, X2, X3),
                   U43(active X1, X2, X3) -> U43(X1, X2, X3),
                     U44(X1, X2, mark X3) -> U44(X1, X2, X3),
                   U44(X1, X2, active X3) -> U44(X1, X2, X3),
                     U44(X1, mark X2, X3) -> U44(X1, X2, X3),
                   U44(X1, active X2, X3) -> U44(X1, X2, X3),
                     U44(mark X1, X2, X3) -> U44(X1, X2, X3),
                   U44(active X1, X2, X3) -> U44(X1, X2, X3),
                         U45(X1, mark X2) -> U45(X1, X2),
                       U45(X1, active X2) -> U45(X1, X2),
                         U45(mark X1, X2) -> U45(X1, X2),
                       U45(active X1, X2) -> U45(X1, X2),
                               U46 mark X -> U46 X,
                             U46 active X -> U46 X,
                               U52 mark X -> U52 X,
                             U52 active X -> U52 X,
                         U51(X1, mark X2) -> U51(X1, X2),
                       U51(X1, active X2) -> U51(X1, X2),
                         U51(mark X1, X2) -> U51(X1, X2),
                       U51(active X1, X2) -> U51(X1, X2),
                               U62 mark X -> U62 X,
                             U62 active X -> U62 X,
                         U61(X1, mark X2) -> U61(X1, X2),
                       U61(X1, active X2) -> U61(X1, X2),
                         U61(mark X1, X2) -> U61(X1, X2),
                       U61(active X1, X2) -> U61(X1, X2),
                               U71 mark X -> U71 X,
                             U71 active X -> U71 X,
                               U81 mark X -> U81 X,
                             U81 active X -> U81 X,
                     U92(X1, X2, mark X3) -> U92(X1, X2, X3),
                   U92(X1, X2, active X3) -> U92(X1, X2, X3),
                     U92(X1, mark X2, X3) -> U92(X1, X2, X3),
                   U92(X1, active X2, X3) -> U92(X1, X2, X3),
                     U92(mark X1, X2, X3) -> U92(X1, X2, X3),
                   U92(active X1, X2, X3) -> U92(X1, X2, X3),
                     U91(X1, X2, mark X3) -> U91(X1, X2, X3),
                   U91(X1, X2, active X3) -> U91(X1, X2, X3),
                     U91(X1, mark X2, X3) -> U91(X1, X2, X3),
                   U91(X1, active X2, X3) -> U91(X1, X2, X3),
                     U91(mark X1, X2, X3) -> U91(X1, X2, X3),
                   U91(active X1, X2, X3) -> U91(X1, X2, X3),
                     U93(X1, X2, mark X3) -> U93(X1, X2, X3),
                   U93(X1, X2, active X3) -> U93(X1, X2, X3),
                     U93(X1, mark X2, X3) -> U93(X1, X2, X3),
                   U93(X1, active X2, X3) -> U93(X1, X2, X3),
                     U93(mark X1, X2, X3) -> U93(X1, X2, X3),
                   U93(active X1, X2, X3) -> U93(X1, X2, X3),
                     U94(X1, X2, mark X3) -> U94(X1, X2, X3),
                   U94(X1, X2, active X3) -> U94(X1, X2, X3),
                     U94(X1, mark X2, X3) -> U94(X1, X2, X3),
                   U94(X1, active X2, X3) -> U94(X1, X2, X3),
                     U94(mark X1, X2, X3) -> U94(X1, X2, X3),
                   U94(active X1, X2, X3) -> U94(X1, X2, X3),
                         U95(X1, mark X2) -> U95(X1, X2),
                       U95(X1, active X2) -> U95(X1, X2),
                         U95(mark X1, X2) -> U95(X1, X2),
                       U95(active X1, X2) -> U95(X1, X2),
                               U96 mark X -> U96 X,
                             U96 active X -> U96 X
      }
      Open
     
     
     
     SCC (6):
      Strict:
       {  U112#(X1, X2, mark X3) -> U112#(X1, X2, X3),
        U112#(X1, X2, active X3) -> U112#(X1, X2, X3),
          U112#(X1, mark X2, X3) -> U112#(X1, X2, X3),
        U112#(X1, active X2, X3) -> U112#(X1, X2, X3),
          U112#(mark X1, X2, X3) -> U112#(X1, X2, X3),
        U112#(active X1, X2, X3) -> U112#(X1, X2, X3)}
      Weak:
      {
                        mark cons(X1, X2) -> active cons(mark X1, X2),
                                 mark 0() -> active 0(),
                             mark zeros() -> active zeros(),
                    mark U102(X1, X2, X3) -> active U102(mark X1, X2, X3),
                         mark isNatKind X -> active isNatKind X,
                    mark U101(X1, X2, X3) -> active U101(mark X1, X2, X3),
                                mark tt() -> active tt(),
                    mark U103(X1, X2, X3) -> active U103(mark X1, X2, X3),
                    mark isNatIListKind X -> active isNatIListKind X,
                    mark U104(X1, X2, X3) -> active U104(mark X1, X2, X3),
                        mark U105(X1, X2) -> active U105(mark X1, X2),
                             mark isNat X -> active isNat X,
                              mark U106 X -> active U106 mark X,
                        mark isNatIList X -> active isNatIList X,
                         mark U12(X1, X2) -> active U12(mark X1, X2),
                         mark U11(X1, X2) -> active U11(mark X1, X2),
                    mark U112(X1, X2, X3) -> active U112(mark X1, X2, X3),
                    mark U111(X1, X2, X3) -> active U111(mark X1, X2, X3),
                    mark U113(X1, X2, X3) -> active U113(mark X1, X2, X3),
                        mark U114(X1, X2) -> active U114(mark X1, X2),
                                 mark s X -> active s mark X,
                            mark length X -> active length mark X,
                               mark U13 X -> active U13 mark X,
                         mark isNatList X -> active isNatList X,
                              mark U122 X -> active U122 mark X,
                        mark U121(X1, X2) -> active U121(mark X1, X2),
                               mark nil() -> active nil(),
                mark U132(X1, X2, X3, X4) -> active U132(mark X1, X2, X3, X4),
                mark U131(X1, X2, X3, X4) -> active U131(mark X1, X2, X3, X4),
                mark U133(X1, X2, X3, X4) -> active U133(mark X1, X2, X3, X4),
                mark U134(X1, X2, X3, X4) -> active U134(mark X1, X2, X3, X4),
                mark U135(X1, X2, X3, X4) -> active U135(mark X1, X2, X3, X4),
                mark U136(X1, X2, X3, X4) -> active U136(mark X1, X2, X3, X4),
                        mark take(X1, X2) -> active take(mark X1, mark X2),
                         mark U22(X1, X2) -> active U22(mark X1, X2),
                         mark U21(X1, X2) -> active U21(mark X1, X2),
                               mark U23 X -> active U23 mark X,
                         mark U32(X1, X2) -> active U32(mark X1, X2),
                         mark U31(X1, X2) -> active U31(mark X1, X2),
                               mark U33 X -> active U33 mark X,
                     mark U42(X1, X2, X3) -> active U42(mark X1, X2, X3),
                     mark U41(X1, X2, X3) -> active U41(mark X1, X2, X3),
                     mark U43(X1, X2, X3) -> active U43(mark X1, X2, X3),
                     mark U44(X1, X2, X3) -> active U44(mark X1, X2, X3),
                         mark U45(X1, X2) -> active U45(mark X1, X2),
                               mark U46 X -> active U46 mark X,
                               mark U52 X -> active U52 mark X,
                         mark U51(X1, X2) -> active U51(mark X1, X2),
                               mark U62 X -> active U62 mark X,
                         mark U61(X1, X2) -> active U61(mark X1, X2),
                               mark U71 X -> active U71 mark X,
                               mark U81 X -> active U81 mark X,
                     mark U92(X1, X2, X3) -> active U92(mark X1, X2, X3),
                     mark U91(X1, X2, X3) -> active U91(mark X1, X2, X3),
                     mark U93(X1, X2, X3) -> active U93(mark X1, X2, X3),
                     mark U94(X1, X2, X3) -> active U94(mark X1, X2, X3),
                         mark U95(X1, X2) -> active U95(mark X1, X2),
                               mark U96 X -> active U96 mark X,
                        cons(X1, mark X2) -> cons(X1, X2),
                      cons(X1, active X2) -> cons(X1, X2),
                        cons(mark X1, X2) -> cons(X1, X2),
                      cons(active X1, X2) -> cons(X1, X2),
                           active zeros() -> mark cons(0(), zeros()),
                active U102(tt(), V1, V2) -> mark U103(isNatIListKind V2, V1, V2),
                     active isNatKind 0() -> mark tt(),
                    active isNatKind s V1 -> mark U81 isNatKind V1,
               active isNatKind length V1 -> mark U71 isNatIListKind V1,
                active U101(tt(), V1, V2) -> mark U102(isNatKind V1, V1, V2),
                active U103(tt(), V1, V2) -> mark U104(isNatIListKind V2, V1, V2),
       active isNatIListKind cons(V1, V2) -> mark U51(isNatKind V1, V2),
            active isNatIListKind zeros() -> mark tt(),
              active isNatIListKind nil() -> mark tt(),
       active isNatIListKind take(V1, V2) -> mark U61(isNatKind V1, V2),
                active U104(tt(), V1, V2) -> mark U105(isNat V1, V2),
                    active U105(tt(), V2) -> mark U106 isNatIList V2,
                         active isNat 0() -> mark tt(),
                        active isNat s V1 -> mark U21(isNatKind V1, V1),
                   active isNat length V1 -> mark U11(isNatIListKind V1, V1),
                         active U106 tt() -> mark tt(),
                      active isNatIList V -> mark U31(isNatIListKind V, V),
           active isNatIList cons(V1, V2) -> mark U41(isNatKind V1, V1, V2),
                active isNatIList zeros() -> mark tt(),
                     active U12(tt(), V1) -> mark U13 isNatList V1,
                     active U11(tt(), V1) -> mark U12(isNatIListKind V1, V1),
                  active U112(tt(), L, N) -> mark U113(isNat N, L, N),
                  active U111(tt(), L, N) -> mark U112(isNatIListKind L, L, N),
                  active U113(tt(), L, N) -> mark U114(isNatKind N, L),
                     active U114(tt(), L) -> mark s length L,
                 active length cons(N, L) -> mark U111(isNatList L, L, N),
                      active length nil() -> mark 0(),
                          active U13 tt() -> mark tt(),
            active isNatList cons(V1, V2) -> mark U91(isNatKind V1, V1, V2),
                   active isNatList nil() -> mark tt(),
            active isNatList take(V1, V2) -> mark U101(isNatKind V1, V1, V2),
                         active U122 tt() -> mark nil(),
                    active U121(tt(), IL) -> mark U122 isNatIListKind IL,
              active U132(tt(), IL, M, N) -> mark U133(isNat M, IL, M, N),
              active U131(tt(), IL, M, N) -> mark U132(isNatIListKind IL, IL, M, N),
              active U133(tt(), IL, M, N) -> mark U134(isNatKind M, IL, M, N),
              active U134(tt(), IL, M, N) -> mark U135(isNat N, IL, M, N),
              active U135(tt(), IL, M, N) -> mark U136(isNatKind N, IL, M, N),
              active U136(tt(), IL, M, N) -> mark cons(N, take(M, IL)),
                     active take(0(), IL) -> mark U121(isNatIList IL, IL),
            active take(s M, cons(N, IL)) -> mark U131(isNatIList IL, IL, M, N),
                     active U22(tt(), V1) -> mark U23 isNat V1,
                     active U21(tt(), V1) -> mark U22(isNatKind V1, V1),
                          active U23 tt() -> mark tt(),
                      active U32(tt(), V) -> mark U33 isNatList V,
                      active U31(tt(), V) -> mark U32(isNatIListKind V, V),
                          active U33 tt() -> mark tt(),
                 active U42(tt(), V1, V2) -> mark U43(isNatIListKind V2, V1, V2),
                 active U41(tt(), V1, V2) -> mark U42(isNatKind V1, V1, V2),
                 active U43(tt(), V1, V2) -> mark U44(isNatIListKind V2, V1, V2),
                 active U44(tt(), V1, V2) -> mark U45(isNat V1, V2),
                     active U45(tt(), V2) -> mark U46 isNatIList V2,
                          active U46 tt() -> mark tt(),
                          active U52 tt() -> mark tt(),
                     active U51(tt(), V2) -> mark U52 isNatIListKind V2,
                          active U62 tt() -> mark tt(),
                     active U61(tt(), V2) -> mark U62 isNatIListKind V2,
                          active U71 tt() -> mark tt(),
                          active U81 tt() -> mark tt(),
                 active U92(tt(), V1, V2) -> mark U93(isNatIListKind V2, V1, V2),
                 active U91(tt(), V1, V2) -> mark U92(isNatKind V1, V1, V2),
                 active U93(tt(), V1, V2) -> mark U94(isNatIListKind V2, V1, V2),
                 active U94(tt(), V1, V2) -> mark U95(isNat V1, V2),
                     active U95(tt(), V2) -> mark U96 isNatList V2,
                          active U96 tt() -> mark tt(),
                    U102(X1, X2, mark X3) -> U102(X1, X2, X3),
                  U102(X1, X2, active X3) -> U102(X1, X2, X3),
                    U102(X1, mark X2, X3) -> U102(X1, X2, X3),
                  U102(X1, active X2, X3) -> U102(X1, X2, X3),
                    U102(mark X1, X2, X3) -> U102(X1, X2, X3),
                  U102(active X1, X2, X3) -> U102(X1, X2, X3),
                         isNatKind mark X -> isNatKind X,
                       isNatKind active X -> isNatKind X,
                    U101(X1, X2, mark X3) -> U101(X1, X2, X3),
                  U101(X1, X2, active X3) -> U101(X1, X2, X3),
                    U101(X1, mark X2, X3) -> U101(X1, X2, X3),
                  U101(X1, active X2, X3) -> U101(X1, X2, X3),
                    U101(mark X1, X2, X3) -> U101(X1, X2, X3),
                  U101(active X1, X2, X3) -> U101(X1, X2, X3),
                    U103(X1, X2, mark X3) -> U103(X1, X2, X3),
                  U103(X1, X2, active X3) -> U103(X1, X2, X3),
                    U103(X1, mark X2, X3) -> U103(X1, X2, X3),
                  U103(X1, active X2, X3) -> U103(X1, X2, X3),
                    U103(mark X1, X2, X3) -> U103(X1, X2, X3),
                  U103(active X1, X2, X3) -> U103(X1, X2, X3),
                    isNatIListKind mark X -> isNatIListKind X,
                  isNatIListKind active X -> isNatIListKind X,
                    U104(X1, X2, mark X3) -> U104(X1, X2, X3),
                  U104(X1, X2, active X3) -> U104(X1, X2, X3),
                    U104(X1, mark X2, X3) -> U104(X1, X2, X3),
                  U104(X1, active X2, X3) -> U104(X1, X2, X3),
                    U104(mark X1, X2, X3) -> U104(X1, X2, X3),
                  U104(active X1, X2, X3) -> U104(X1, X2, X3),
                        U105(X1, mark X2) -> U105(X1, X2),
                      U105(X1, active X2) -> U105(X1, X2),
                        U105(mark X1, X2) -> U105(X1, X2),
                      U105(active X1, X2) -> U105(X1, X2),
                             isNat mark X -> isNat X,
                           isNat active X -> isNat X,
                              U106 mark X -> U106 X,
                            U106 active X -> U106 X,
                        isNatIList mark X -> isNatIList X,
                      isNatIList active X -> isNatIList X,
                         U12(X1, mark X2) -> U12(X1, X2),
                       U12(X1, active X2) -> U12(X1, X2),
                         U12(mark X1, X2) -> U12(X1, X2),
                       U12(active X1, X2) -> U12(X1, X2),
                         U11(X1, mark X2) -> U11(X1, X2),
                       U11(X1, active X2) -> U11(X1, X2),
                         U11(mark X1, X2) -> U11(X1, X2),
                       U11(active X1, X2) -> U11(X1, X2),
                    U112(X1, X2, mark X3) -> U112(X1, X2, X3),
                  U112(X1, X2, active X3) -> U112(X1, X2, X3),
                    U112(X1, mark X2, X3) -> U112(X1, X2, X3),
                  U112(X1, active X2, X3) -> U112(X1, X2, X3),
                    U112(mark X1, X2, X3) -> U112(X1, X2, X3),
                  U112(active X1, X2, X3) -> U112(X1, X2, X3),
                    U111(X1, X2, mark X3) -> U111(X1, X2, X3),
                  U111(X1, X2, active X3) -> U111(X1, X2, X3),
                    U111(X1, mark X2, X3) -> U111(X1, X2, X3),
                  U111(X1, active X2, X3) -> U111(X1, X2, X3),
                    U111(mark X1, X2, X3) -> U111(X1, X2, X3),
                  U111(active X1, X2, X3) -> U111(X1, X2, X3),
                    U113(X1, X2, mark X3) -> U113(X1, X2, X3),
                  U113(X1, X2, active X3) -> U113(X1, X2, X3),
                    U113(X1, mark X2, X3) -> U113(X1, X2, X3),
                  U113(X1, active X2, X3) -> U113(X1, X2, X3),
                    U113(mark X1, X2, X3) -> U113(X1, X2, X3),
                  U113(active X1, X2, X3) -> U113(X1, X2, X3),
                        U114(X1, mark X2) -> U114(X1, X2),
                      U114(X1, active X2) -> U114(X1, X2),
                        U114(mark X1, X2) -> U114(X1, X2),
                      U114(active X1, X2) -> U114(X1, X2),
                                 s mark X -> s X,
                               s active X -> s X,
                            length mark X -> length X,
                          length active X -> length X,
                               U13 mark X -> U13 X,
                             U13 active X -> U13 X,
                         isNatList mark X -> isNatList X,
                       isNatList active X -> isNatList X,
                              U122 mark X -> U122 X,
                            U122 active X -> U122 X,
                        U121(X1, mark X2) -> U121(X1, X2),
                      U121(X1, active X2) -> U121(X1, X2),
                        U121(mark X1, X2) -> U121(X1, X2),
                      U121(active X1, X2) -> U121(X1, X2),
                U132(X1, X2, X3, mark X4) -> U132(X1, X2, X3, X4),
              U132(X1, X2, X3, active X4) -> U132(X1, X2, X3, X4),
                U132(X1, X2, mark X3, X4) -> U132(X1, X2, X3, X4),
              U132(X1, X2, active X3, X4) -> U132(X1, X2, X3, X4),
                U132(X1, mark X2, X3, X4) -> U132(X1, X2, X3, X4),
              U132(X1, active X2, X3, X4) -> U132(X1, X2, X3, X4),
                U132(mark X1, X2, X3, X4) -> U132(X1, X2, X3, X4),
              U132(active X1, X2, X3, X4) -> U132(X1, X2, X3, X4),
                U131(X1, X2, X3, mark X4) -> U131(X1, X2, X3, X4),
              U131(X1, X2, X3, active X4) -> U131(X1, X2, X3, X4),
                U131(X1, X2, mark X3, X4) -> U131(X1, X2, X3, X4),
              U131(X1, X2, active X3, X4) -> U131(X1, X2, X3, X4),
                U131(X1, mark X2, X3, X4) -> U131(X1, X2, X3, X4),
              U131(X1, active X2, X3, X4) -> U131(X1, X2, X3, X4),
                U131(mark X1, X2, X3, X4) -> U131(X1, X2, X3, X4),
              U131(active X1, X2, X3, X4) -> U131(X1, X2, X3, X4),
                U133(X1, X2, X3, mark X4) -> U133(X1, X2, X3, X4),
              U133(X1, X2, X3, active X4) -> U133(X1, X2, X3, X4),
                U133(X1, X2, mark X3, X4) -> U133(X1, X2, X3, X4),
              U133(X1, X2, active X3, X4) -> U133(X1, X2, X3, X4),
                U133(X1, mark X2, X3, X4) -> U133(X1, X2, X3, X4),
              U133(X1, active X2, X3, X4) -> U133(X1, X2, X3, X4),
                U133(mark X1, X2, X3, X4) -> U133(X1, X2, X3, X4),
              U133(active X1, X2, X3, X4) -> U133(X1, X2, X3, X4),
                U134(X1, X2, X3, mark X4) -> U134(X1, X2, X3, X4),
              U134(X1, X2, X3, active X4) -> U134(X1, X2, X3, X4),
                U134(X1, X2, mark X3, X4) -> U134(X1, X2, X3, X4),
              U134(X1, X2, active X3, X4) -> U134(X1, X2, X3, X4),
                U134(X1, mark X2, X3, X4) -> U134(X1, X2, X3, X4),
              U134(X1, active X2, X3, X4) -> U134(X1, X2, X3, X4),
                U134(mark X1, X2, X3, X4) -> U134(X1, X2, X3, X4),
              U134(active X1, X2, X3, X4) -> U134(X1, X2, X3, X4),
                U135(X1, X2, X3, mark X4) -> U135(X1, X2, X3, X4),
              U135(X1, X2, X3, active X4) -> U135(X1, X2, X3, X4),
                U135(X1, X2, mark X3, X4) -> U135(X1, X2, X3, X4),
              U135(X1, X2, active X3, X4) -> U135(X1, X2, X3, X4),
                U135(X1, mark X2, X3, X4) -> U135(X1, X2, X3, X4),
              U135(X1, active X2, X3, X4) -> U135(X1, X2, X3, X4),
                U135(mark X1, X2, X3, X4) -> U135(X1, X2, X3, X4),
              U135(active X1, X2, X3, X4) -> U135(X1, X2, X3, X4),
                U136(X1, X2, X3, mark X4) -> U136(X1, X2, X3, X4),
              U136(X1, X2, X3, active X4) -> U136(X1, X2, X3, X4),
                U136(X1, X2, mark X3, X4) -> U136(X1, X2, X3, X4),
              U136(X1, X2, active X3, X4) -> U136(X1, X2, X3, X4),
                U136(X1, mark X2, X3, X4) -> U136(X1, X2, X3, X4),
              U136(X1, active X2, X3, X4) -> U136(X1, X2, X3, X4),
                U136(mark X1, X2, X3, X4) -> U136(X1, X2, X3, X4),
              U136(active X1, X2, X3, X4) -> U136(X1, X2, X3, X4),
                        take(X1, mark X2) -> take(X1, X2),
                      take(X1, active X2) -> take(X1, X2),
                        take(mark X1, X2) -> take(X1, X2),
                      take(active X1, X2) -> take(X1, X2),
                         U22(X1, mark X2) -> U22(X1, X2),
                       U22(X1, active X2) -> U22(X1, X2),
                         U22(mark X1, X2) -> U22(X1, X2),
                       U22(active X1, X2) -> U22(X1, X2),
                         U21(X1, mark X2) -> U21(X1, X2),
                       U21(X1, active X2) -> U21(X1, X2),
                         U21(mark X1, X2) -> U21(X1, X2),
                       U21(active X1, X2) -> U21(X1, X2),
                               U23 mark X -> U23 X,
                             U23 active X -> U23 X,
                         U32(X1, mark X2) -> U32(X1, X2),
                       U32(X1, active X2) -> U32(X1, X2),
                         U32(mark X1, X2) -> U32(X1, X2),
                       U32(active X1, X2) -> U32(X1, X2),
                         U31(X1, mark X2) -> U31(X1, X2),
                       U31(X1, active X2) -> U31(X1, X2),
                         U31(mark X1, X2) -> U31(X1, X2),
                       U31(active X1, X2) -> U31(X1, X2),
                               U33 mark X -> U33 X,
                             U33 active X -> U33 X,
                     U42(X1, X2, mark X3) -> U42(X1, X2, X3),
                   U42(X1, X2, active X3) -> U42(X1, X2, X3),
                     U42(X1, mark X2, X3) -> U42(X1, X2, X3),
                   U42(X1, active X2, X3) -> U42(X1, X2, X3),
                     U42(mark X1, X2, X3) -> U42(X1, X2, X3),
                   U42(active X1, X2, X3) -> U42(X1, X2, X3),
                     U41(X1, X2, mark X3) -> U41(X1, X2, X3),
                   U41(X1, X2, active X3) -> U41(X1, X2, X3),
                     U41(X1, mark X2, X3) -> U41(X1, X2, X3),
                   U41(X1, active X2, X3) -> U41(X1, X2, X3),
                     U41(mark X1, X2, X3) -> U41(X1, X2, X3),
                   U41(active X1, X2, X3) -> U41(X1, X2, X3),
                     U43(X1, X2, mark X3) -> U43(X1, X2, X3),
                   U43(X1, X2, active X3) -> U43(X1, X2, X3),
                     U43(X1, mark X2, X3) -> U43(X1, X2, X3),
                   U43(X1, active X2, X3) -> U43(X1, X2, X3),
                     U43(mark X1, X2, X3) -> U43(X1, X2, X3),
                   U43(active X1, X2, X3) -> U43(X1, X2, X3),
                     U44(X1, X2, mark X3) -> U44(X1, X2, X3),
                   U44(X1, X2, active X3) -> U44(X1, X2, X3),
                     U44(X1, mark X2, X3) -> U44(X1, X2, X3),
                   U44(X1, active X2, X3) -> U44(X1, X2, X3),
                     U44(mark X1, X2, X3) -> U44(X1, X2, X3),
                   U44(active X1, X2, X3) -> U44(X1, X2, X3),
                         U45(X1, mark X2) -> U45(X1, X2),
                       U45(X1, active X2) -> U45(X1, X2),
                         U45(mark X1, X2) -> U45(X1, X2),
                       U45(active X1, X2) -> U45(X1, X2),
                               U46 mark X -> U46 X,
                             U46 active X -> U46 X,
                               U52 mark X -> U52 X,
                             U52 active X -> U52 X,
                         U51(X1, mark X2) -> U51(X1, X2),
                       U51(X1, active X2) -> U51(X1, X2),
                         U51(mark X1, X2) -> U51(X1, X2),
                       U51(active X1, X2) -> U51(X1, X2),
                               U62 mark X -> U62 X,
                             U62 active X -> U62 X,
                         U61(X1, mark X2) -> U61(X1, X2),
                       U61(X1, active X2) -> U61(X1, X2),
                         U61(mark X1, X2) -> U61(X1, X2),
                       U61(active X1, X2) -> U61(X1, X2),
                               U71 mark X -> U71 X,
                             U71 active X -> U71 X,
                               U81 mark X -> U81 X,
                             U81 active X -> U81 X,
                     U92(X1, X2, mark X3) -> U92(X1, X2, X3),
                   U92(X1, X2, active X3) -> U92(X1, X2, X3),
                     U92(X1, mark X2, X3) -> U92(X1, X2, X3),
                   U92(X1, active X2, X3) -> U92(X1, X2, X3),
                     U92(mark X1, X2, X3) -> U92(X1, X2, X3),
                   U92(active X1, X2, X3) -> U92(X1, X2, X3),
                     U91(X1, X2, mark X3) -> U91(X1, X2, X3),
                   U91(X1, X2, active X3) -> U91(X1, X2, X3),
                     U91(X1, mark X2, X3) -> U91(X1, X2, X3),
                   U91(X1, active X2, X3) -> U91(X1, X2, X3),
                     U91(mark X1, X2, X3) -> U91(X1, X2, X3),
                   U91(active X1, X2, X3) -> U91(X1, X2, X3),
                     U93(X1, X2, mark X3) -> U93(X1, X2, X3),
                   U93(X1, X2, active X3) -> U93(X1, X2, X3),
                     U93(X1, mark X2, X3) -> U93(X1, X2, X3),
                   U93(X1, active X2, X3) -> U93(X1, X2, X3),
                     U93(mark X1, X2, X3) -> U93(X1, X2, X3),
                   U93(active X1, X2, X3) -> U93(X1, X2, X3),
                     U94(X1, X2, mark X3) -> U94(X1, X2, X3),
                   U94(X1, X2, active X3) -> U94(X1, X2, X3),
                     U94(X1, mark X2, X3) -> U94(X1, X2, X3),
                   U94(X1, active X2, X3) -> U94(X1, X2, X3),
                     U94(mark X1, X2, X3) -> U94(X1, X2, X3),
                   U94(active X1, X2, X3) -> U94(X1, X2, X3),
                         U95(X1, mark X2) -> U95(X1, X2),
                       U95(X1, active X2) -> U95(X1, X2),
                         U95(mark X1, X2) -> U95(X1, X2),
                       U95(active X1, X2) -> U95(X1, X2),
                               U96 mark X -> U96 X,
                             U96 active X -> U96 X
      }
      Open
     
     SCC (4):
      Strict:
       {  U11#(X1, mark X2) -> U11#(X1, X2),
        U11#(X1, active X2) -> U11#(X1, X2),
          U11#(mark X1, X2) -> U11#(X1, X2),
        U11#(active X1, X2) -> U11#(X1, X2)}
      Weak:
      {
                        mark cons(X1, X2) -> active cons(mark X1, X2),
                                 mark 0() -> active 0(),
                             mark zeros() -> active zeros(),
                    mark U102(X1, X2, X3) -> active U102(mark X1, X2, X3),
                         mark isNatKind X -> active isNatKind X,
                    mark U101(X1, X2, X3) -> active U101(mark X1, X2, X3),
                                mark tt() -> active tt(),
                    mark U103(X1, X2, X3) -> active U103(mark X1, X2, X3),
                    mark isNatIListKind X -> active isNatIListKind X,
                    mark U104(X1, X2, X3) -> active U104(mark X1, X2, X3),
                        mark U105(X1, X2) -> active U105(mark X1, X2),
                             mark isNat X -> active isNat X,
                              mark U106 X -> active U106 mark X,
                        mark isNatIList X -> active isNatIList X,
                         mark U12(X1, X2) -> active U12(mark X1, X2),
                         mark U11(X1, X2) -> active U11(mark X1, X2),
                    mark U112(X1, X2, X3) -> active U112(mark X1, X2, X3),
                    mark U111(X1, X2, X3) -> active U111(mark X1, X2, X3),
                    mark U113(X1, X2, X3) -> active U113(mark X1, X2, X3),
                        mark U114(X1, X2) -> active U114(mark X1, X2),
                                 mark s X -> active s mark X,
                            mark length X -> active length mark X,
                               mark U13 X -> active U13 mark X,
                         mark isNatList X -> active isNatList X,
                              mark U122 X -> active U122 mark X,
                        mark U121(X1, X2) -> active U121(mark X1, X2),
                               mark nil() -> active nil(),
                mark U132(X1, X2, X3, X4) -> active U132(mark X1, X2, X3, X4),
                mark U131(X1, X2, X3, X4) -> active U131(mark X1, X2, X3, X4),
                mark U133(X1, X2, X3, X4) -> active U133(mark X1, X2, X3, X4),
                mark U134(X1, X2, X3, X4) -> active U134(mark X1, X2, X3, X4),
                mark U135(X1, X2, X3, X4) -> active U135(mark X1, X2, X3, X4),
                mark U136(X1, X2, X3, X4) -> active U136(mark X1, X2, X3, X4),
                        mark take(X1, X2) -> active take(mark X1, mark X2),
                         mark U22(X1, X2) -> active U22(mark X1, X2),
                         mark U21(X1, X2) -> active U21(mark X1, X2),
                               mark U23 X -> active U23 mark X,
                         mark U32(X1, X2) -> active U32(mark X1, X2),
                         mark U31(X1, X2) -> active U31(mark X1, X2),
                               mark U33 X -> active U33 mark X,
                     mark U42(X1, X2, X3) -> active U42(mark X1, X2, X3),
                     mark U41(X1, X2, X3) -> active U41(mark X1, X2, X3),
                     mark U43(X1, X2, X3) -> active U43(mark X1, X2, X3),
                     mark U44(X1, X2, X3) -> active U44(mark X1, X2, X3),
                         mark U45(X1, X2) -> active U45(mark X1, X2),
                               mark U46 X -> active U46 mark X,
                               mark U52 X -> active U52 mark X,
                         mark U51(X1, X2) -> active U51(mark X1, X2),
                               mark U62 X -> active U62 mark X,
                         mark U61(X1, X2) -> active U61(mark X1, X2),
                               mark U71 X -> active U71 mark X,
                               mark U81 X -> active U81 mark X,
                     mark U92(X1, X2, X3) -> active U92(mark X1, X2, X3),
                     mark U91(X1, X2, X3) -> active U91(mark X1, X2, X3),
                     mark U93(X1, X2, X3) -> active U93(mark X1, X2, X3),
                     mark U94(X1, X2, X3) -> active U94(mark X1, X2, X3),
                         mark U95(X1, X2) -> active U95(mark X1, X2),
                               mark U96 X -> active U96 mark X,
                        cons(X1, mark X2) -> cons(X1, X2),
                      cons(X1, active X2) -> cons(X1, X2),
                        cons(mark X1, X2) -> cons(X1, X2),
                      cons(active X1, X2) -> cons(X1, X2),
                           active zeros() -> mark cons(0(), zeros()),
                active U102(tt(), V1, V2) -> mark U103(isNatIListKind V2, V1, V2),
                     active isNatKind 0() -> mark tt(),
                    active isNatKind s V1 -> mark U81 isNatKind V1,
               active isNatKind length V1 -> mark U71 isNatIListKind V1,
                active U101(tt(), V1, V2) -> mark U102(isNatKind V1, V1, V2),
                active U103(tt(), V1, V2) -> mark U104(isNatIListKind V2, V1, V2),
       active isNatIListKind cons(V1, V2) -> mark U51(isNatKind V1, V2),
            active isNatIListKind zeros() -> mark tt(),
              active isNatIListKind nil() -> mark tt(),
       active isNatIListKind take(V1, V2) -> mark U61(isNatKind V1, V2),
                active U104(tt(), V1, V2) -> mark U105(isNat V1, V2),
                    active U105(tt(), V2) -> mark U106 isNatIList V2,
                         active isNat 0() -> mark tt(),
                        active isNat s V1 -> mark U21(isNatKind V1, V1),
                   active isNat length V1 -> mark U11(isNatIListKind V1, V1),
                         active U106 tt() -> mark tt(),
                      active isNatIList V -> mark U31(isNatIListKind V, V),
           active isNatIList cons(V1, V2) -> mark U41(isNatKind V1, V1, V2),
                active isNatIList zeros() -> mark tt(),
                     active U12(tt(), V1) -> mark U13 isNatList V1,
                     active U11(tt(), V1) -> mark U12(isNatIListKind V1, V1),
                  active U112(tt(), L, N) -> mark U113(isNat N, L, N),
                  active U111(tt(), L, N) -> mark U112(isNatIListKind L, L, N),
                  active U113(tt(), L, N) -> mark U114(isNatKind N, L),
                     active U114(tt(), L) -> mark s length L,
                 active length cons(N, L) -> mark U111(isNatList L, L, N),
                      active length nil() -> mark 0(),
                          active U13 tt() -> mark tt(),
            active isNatList cons(V1, V2) -> mark U91(isNatKind V1, V1, V2),
                   active isNatList nil() -> mark tt(),
            active isNatList take(V1, V2) -> mark U101(isNatKind V1, V1, V2),
                         active U122 tt() -> mark nil(),
                    active U121(tt(), IL) -> mark U122 isNatIListKind IL,
              active U132(tt(), IL, M, N) -> mark U133(isNat M, IL, M, N),
              active U131(tt(), IL, M, N) -> mark U132(isNatIListKind IL, IL, M, N),
              active U133(tt(), IL, M, N) -> mark U134(isNatKind M, IL, M, N),
              active U134(tt(), IL, M, N) -> mark U135(isNat N, IL, M, N),
              active U135(tt(), IL, M, N) -> mark U136(isNatKind N, IL, M, N),
              active U136(tt(), IL, M, N) -> mark cons(N, take(M, IL)),
                     active take(0(), IL) -> mark U121(isNatIList IL, IL),
            active take(s M, cons(N, IL)) -> mark U131(isNatIList IL, IL, M, N),
                     active U22(tt(), V1) -> mark U23 isNat V1,
                     active U21(tt(), V1) -> mark U22(isNatKind V1, V1),
                          active U23 tt() -> mark tt(),
                      active U32(tt(), V) -> mark U33 isNatList V,
                      active U31(tt(), V) -> mark U32(isNatIListKind V, V),
                          active U33 tt() -> mark tt(),
                 active U42(tt(), V1, V2) -> mark U43(isNatIListKind V2, V1, V2),
                 active U41(tt(), V1, V2) -> mark U42(isNatKind V1, V1, V2),
                 active U43(tt(), V1, V2) -> mark U44(isNatIListKind V2, V1, V2),
                 active U44(tt(), V1, V2) -> mark U45(isNat V1, V2),
                     active U45(tt(), V2) -> mark U46 isNatIList V2,
                          active U46 tt() -> mark tt(),
                          active U52 tt() -> mark tt(),
                     active U51(tt(), V2) -> mark U52 isNatIListKind V2,
                          active U62 tt() -> mark tt(),
                     active U61(tt(), V2) -> mark U62 isNatIListKind V2,
                          active U71 tt() -> mark tt(),
                          active U81 tt() -> mark tt(),
                 active U92(tt(), V1, V2) -> mark U93(isNatIListKind V2, V1, V2),
                 active U91(tt(), V1, V2) -> mark U92(isNatKind V1, V1, V2),
                 active U93(tt(), V1, V2) -> mark U94(isNatIListKind V2, V1, V2),
                 active U94(tt(), V1, V2) -> mark U95(isNat V1, V2),
                     active U95(tt(), V2) -> mark U96 isNatList V2,
                          active U96 tt() -> mark tt(),
                    U102(X1, X2, mark X3) -> U102(X1, X2, X3),
                  U102(X1, X2, active X3) -> U102(X1, X2, X3),
                    U102(X1, mark X2, X3) -> U102(X1, X2, X3),
                  U102(X1, active X2, X3) -> U102(X1, X2, X3),
                    U102(mark X1, X2, X3) -> U102(X1, X2, X3),
                  U102(active X1, X2, X3) -> U102(X1, X2, X3),
                         isNatKind mark X -> isNatKind X,
                       isNatKind active X -> isNatKind X,
                    U101(X1, X2, mark X3) -> U101(X1, X2, X3),
                  U101(X1, X2, active X3) -> U101(X1, X2, X3),
                    U101(X1, mark X2, X3) -> U101(X1, X2, X3),
                  U101(X1, active X2, X3) -> U101(X1, X2, X3),
                    U101(mark X1, X2, X3) -> U101(X1, X2, X3),
                  U101(active X1, X2, X3) -> U101(X1, X2, X3),
                    U103(X1, X2, mark X3) -> U103(X1, X2, X3),
                  U103(X1, X2, active X3) -> U103(X1, X2, X3),
                    U103(X1, mark X2, X3) -> U103(X1, X2, X3),
                  U103(X1, active X2, X3) -> U103(X1, X2, X3),
                    U103(mark X1, X2, X3) -> U103(X1, X2, X3),
                  U103(active X1, X2, X3) -> U103(X1, X2, X3),
                    isNatIListKind mark X -> isNatIListKind X,
                  isNatIListKind active X -> isNatIListKind X,
                    U104(X1, X2, mark X3) -> U104(X1, X2, X3),
                  U104(X1, X2, active X3) -> U104(X1, X2, X3),
                    U104(X1, mark X2, X3) -> U104(X1, X2, X3),
                  U104(X1, active X2, X3) -> U104(X1, X2, X3),
                    U104(mark X1, X2, X3) -> U104(X1, X2, X3),
                  U104(active X1, X2, X3) -> U104(X1, X2, X3),
                        U105(X1, mark X2) -> U105(X1, X2),
                      U105(X1, active X2) -> U105(X1, X2),
                        U105(mark X1, X2) -> U105(X1, X2),
                      U105(active X1, X2) -> U105(X1, X2),
                             isNat mark X -> isNat X,
                           isNat active X -> isNat X,
                              U106 mark X -> U106 X,
                            U106 active X -> U106 X,
                        isNatIList mark X -> isNatIList X,
                      isNatIList active X -> isNatIList X,
                         U12(X1, mark X2) -> U12(X1, X2),
                       U12(X1, active X2) -> U12(X1, X2),
                         U12(mark X1, X2) -> U12(X1, X2),
                       U12(active X1, X2) -> U12(X1, X2),
                         U11(X1, mark X2) -> U11(X1, X2),
                       U11(X1, active X2) -> U11(X1, X2),
                         U11(mark X1, X2) -> U11(X1, X2),
                       U11(active X1, X2) -> U11(X1, X2),
                    U112(X1, X2, mark X3) -> U112(X1, X2, X3),
                  U112(X1, X2, active X3) -> U112(X1, X2, X3),
                    U112(X1, mark X2, X3) -> U112(X1, X2, X3),
                  U112(X1, active X2, X3) -> U112(X1, X2, X3),
                    U112(mark X1, X2, X3) -> U112(X1, X2, X3),
                  U112(active X1, X2, X3) -> U112(X1, X2, X3),
                    U111(X1, X2, mark X3) -> U111(X1, X2, X3),
                  U111(X1, X2, active X3) -> U111(X1, X2, X3),
                    U111(X1, mark X2, X3) -> U111(X1, X2, X3),
                  U111(X1, active X2, X3) -> U111(X1, X2, X3),
                    U111(mark X1, X2, X3) -> U111(X1, X2, X3),
                  U111(active X1, X2, X3) -> U111(X1, X2, X3),
                    U113(X1, X2, mark X3) -> U113(X1, X2, X3),
                  U113(X1, X2, active X3) -> U113(X1, X2, X3),
                    U113(X1, mark X2, X3) -> U113(X1, X2, X3),
                  U113(X1, active X2, X3) -> U113(X1, X2, X3),
                    U113(mark X1, X2, X3) -> U113(X1, X2, X3),
                  U113(active X1, X2, X3) -> U113(X1, X2, X3),
                        U114(X1, mark X2) -> U114(X1, X2),
                      U114(X1, active X2) -> U114(X1, X2),
                        U114(mark X1, X2) -> U114(X1, X2),
                      U114(active X1, X2) -> U114(X1, X2),
                                 s mark X -> s X,
                               s active X -> s X,
                            length mark X -> length X,
                          length active X -> length X,
                               U13 mark X -> U13 X,
                             U13 active X -> U13 X,
                         isNatList mark X -> isNatList X,
                       isNatList active X -> isNatList X,
                              U122 mark X -> U122 X,
                            U122 active X -> U122 X,
                        U121(X1, mark X2) -> U121(X1, X2),
                      U121(X1, active X2) -> U121(X1, X2),
                        U121(mark X1, X2) -> U121(X1, X2),
                      U121(active X1, X2) -> U121(X1, X2),
                U132(X1, X2, X3, mark X4) -> U132(X1, X2, X3, X4),
              U132(X1, X2, X3, active X4) -> U132(X1, X2, X3, X4),
                U132(X1, X2, mark X3, X4) -> U132(X1, X2, X3, X4),
              U132(X1, X2, active X3, X4) -> U132(X1, X2, X3, X4),
                U132(X1, mark X2, X3, X4) -> U132(X1, X2, X3, X4),
              U132(X1, active X2, X3, X4) -> U132(X1, X2, X3, X4),
                U132(mark X1, X2, X3, X4) -> U132(X1, X2, X3, X4),
              U132(active X1, X2, X3, X4) -> U132(X1, X2, X3, X4),
                U131(X1, X2, X3, mark X4) -> U131(X1, X2, X3, X4),
              U131(X1, X2, X3, active X4) -> U131(X1, X2, X3, X4),
                U131(X1, X2, mark X3, X4) -> U131(X1, X2, X3, X4),
              U131(X1, X2, active X3, X4) -> U131(X1, X2, X3, X4),
                U131(X1, mark X2, X3, X4) -> U131(X1, X2, X3, X4),
              U131(X1, active X2, X3, X4) -> U131(X1, X2, X3, X4),
                U131(mark X1, X2, X3, X4) -> U131(X1, X2, X3, X4),
              U131(active X1, X2, X3, X4) -> U131(X1, X2, X3, X4),
                U133(X1, X2, X3, mark X4) -> U133(X1, X2, X3, X4),
              U133(X1, X2, X3, active X4) -> U133(X1, X2, X3, X4),
                U133(X1, X2, mark X3, X4) -> U133(X1, X2, X3, X4),
              U133(X1, X2, active X3, X4) -> U133(X1, X2, X3, X4),
                U133(X1, mark X2, X3, X4) -> U133(X1, X2, X3, X4),
              U133(X1, active X2, X3, X4) -> U133(X1, X2, X3, X4),
                U133(mark X1, X2, X3, X4) -> U133(X1, X2, X3, X4),
              U133(active X1, X2, X3, X4) -> U133(X1, X2, X3, X4),
                U134(X1, X2, X3, mark X4) -> U134(X1, X2, X3, X4),
              U134(X1, X2, X3, active X4) -> U134(X1, X2, X3, X4),
                U134(X1, X2, mark X3, X4) -> U134(X1, X2, X3, X4),
              U134(X1, X2, active X3, X4) -> U134(X1, X2, X3, X4),
                U134(X1, mark X2, X3, X4) -> U134(X1, X2, X3, X4),
              U134(X1, active X2, X3, X4) -> U134(X1, X2, X3, X4),
                U134(mark X1, X2, X3, X4) -> U134(X1, X2, X3, X4),
              U134(active X1, X2, X3, X4) -> U134(X1, X2, X3, X4),
                U135(X1, X2, X3, mark X4) -> U135(X1, X2, X3, X4),
              U135(X1, X2, X3, active X4) -> U135(X1, X2, X3, X4),
                U135(X1, X2, mark X3, X4) -> U135(X1, X2, X3, X4),
              U135(X1, X2, active X3, X4) -> U135(X1, X2, X3, X4),
                U135(X1, mark X2, X3, X4) -> U135(X1, X2, X3, X4),
              U135(X1, active X2, X3, X4) -> U135(X1, X2, X3, X4),
                U135(mark X1, X2, X3, X4) -> U135(X1, X2, X3, X4),
              U135(active X1, X2, X3, X4) -> U135(X1, X2, X3, X4),
                U136(X1, X2, X3, mark X4) -> U136(X1, X2, X3, X4),
              U136(X1, X2, X3, active X4) -> U136(X1, X2, X3, X4),
                U136(X1, X2, mark X3, X4) -> U136(X1, X2, X3, X4),
              U136(X1, X2, active X3, X4) -> U136(X1, X2, X3, X4),
                U136(X1, mark X2, X3, X4) -> U136(X1, X2, X3, X4),
              U136(X1, active X2, X3, X4) -> U136(X1, X2, X3, X4),
                U136(mark X1, X2, X3, X4) -> U136(X1, X2, X3, X4),
              U136(active X1, X2, X3, X4) -> U136(X1, X2, X3, X4),
                        take(X1, mark X2) -> take(X1, X2),
                      take(X1, active X2) -> take(X1, X2),
                        take(mark X1, X2) -> take(X1, X2),
                      take(active X1, X2) -> take(X1, X2),
                         U22(X1, mark X2) -> U22(X1, X2),
                       U22(X1, active X2) -> U22(X1, X2),
                         U22(mark X1, X2) -> U22(X1, X2),
                       U22(active X1, X2) -> U22(X1, X2),
                         U21(X1, mark X2) -> U21(X1, X2),
                       U21(X1, active X2) -> U21(X1, X2),
                         U21(mark X1, X2) -> U21(X1, X2),
                       U21(active X1, X2) -> U21(X1, X2),
                               U23 mark X -> U23 X,
                             U23 active X -> U23 X,
                         U32(X1, mark X2) -> U32(X1, X2),
                       U32(X1, active X2) -> U32(X1, X2),
                         U32(mark X1, X2) -> U32(X1, X2),
                       U32(active X1, X2) -> U32(X1, X2),
                         U31(X1, mark X2) -> U31(X1, X2),
                       U31(X1, active X2) -> U31(X1, X2),
                         U31(mark X1, X2) -> U31(X1, X2),
                       U31(active X1, X2) -> U31(X1, X2),
                               U33 mark X -> U33 X,
                             U33 active X -> U33 X,
                     U42(X1, X2, mark X3) -> U42(X1, X2, X3),
                   U42(X1, X2, active X3) -> U42(X1, X2, X3),
                     U42(X1, mark X2, X3) -> U42(X1, X2, X3),
                   U42(X1, active X2, X3) -> U42(X1, X2, X3),
                     U42(mark X1, X2, X3) -> U42(X1, X2, X3),
                   U42(active X1, X2, X3) -> U42(X1, X2, X3),
                     U41(X1, X2, mark X3) -> U41(X1, X2, X3),
                   U41(X1, X2, active X3) -> U41(X1, X2, X3),
                     U41(X1, mark X2, X3) -> U41(X1, X2, X3),
                   U41(X1, active X2, X3) -> U41(X1, X2, X3),
                     U41(mark X1, X2, X3) -> U41(X1, X2, X3),
                   U41(active X1, X2, X3) -> U41(X1, X2, X3),
                     U43(X1, X2, mark X3) -> U43(X1, X2, X3),
                   U43(X1, X2, active X3) -> U43(X1, X2, X3),
                     U43(X1, mark X2, X3) -> U43(X1, X2, X3),
                   U43(X1, active X2, X3) -> U43(X1, X2, X3),
                     U43(mark X1, X2, X3) -> U43(X1, X2, X3),
                   U43(active X1, X2, X3) -> U43(X1, X2, X3),
                     U44(X1, X2, mark X3) -> U44(X1, X2, X3),
                   U44(X1, X2, active X3) -> U44(X1, X2, X3),
                     U44(X1, mark X2, X3) -> U44(X1, X2, X3),
                   U44(X1, active X2, X3) -> U44(X1, X2, X3),
                     U44(mark X1, X2, X3) -> U44(X1, X2, X3),
                   U44(active X1, X2, X3) -> U44(X1, X2, X3),
                         U45(X1, mark X2) -> U45(X1, X2),
                       U45(X1, active X2) -> U45(X1, X2),
                         U45(mark X1, X2) -> U45(X1, X2),
                       U45(active X1, X2) -> U45(X1, X2),
                               U46 mark X -> U46 X,
                             U46 active X -> U46 X,
                               U52 mark X -> U52 X,
                             U52 active X -> U52 X,
                         U51(X1, mark X2) -> U51(X1, X2),
                       U51(X1, active X2) -> U51(X1, X2),
                         U51(mark X1, X2) -> U51(X1, X2),
                       U51(active X1, X2) -> U51(X1, X2),
                               U62 mark X -> U62 X,
                             U62 active X -> U62 X,
                         U61(X1, mark X2) -> U61(X1, X2),
                       U61(X1, active X2) -> U61(X1, X2),
                         U61(mark X1, X2) -> U61(X1, X2),
                       U61(active X1, X2) -> U61(X1, X2),
                               U71 mark X -> U71 X,
                             U71 active X -> U71 X,
                               U81 mark X -> U81 X,
                             U81 active X -> U81 X,
                     U92(X1, X2, mark X3) -> U92(X1, X2, X3),
                   U92(X1, X2, active X3) -> U92(X1, X2, X3),
                     U92(X1, mark X2, X3) -> U92(X1, X2, X3),
                   U92(X1, active X2, X3) -> U92(X1, X2, X3),
                     U92(mark X1, X2, X3) -> U92(X1, X2, X3),
                   U92(active X1, X2, X3) -> U92(X1, X2, X3),
                     U91(X1, X2, mark X3) -> U91(X1, X2, X3),
                   U91(X1, X2, active X3) -> U91(X1, X2, X3),
                     U91(X1, mark X2, X3) -> U91(X1, X2, X3),
                   U91(X1, active X2, X3) -> U91(X1, X2, X3),
                     U91(mark X1, X2, X3) -> U91(X1, X2, X3),
                   U91(active X1, X2, X3) -> U91(X1, X2, X3),
                     U93(X1, X2, mark X3) -> U93(X1, X2, X3),
                   U93(X1, X2, active X3) -> U93(X1, X2, X3),
                     U93(X1, mark X2, X3) -> U93(X1, X2, X3),
                   U93(X1, active X2, X3) -> U93(X1, X2, X3),
                     U93(mark X1, X2, X3) -> U93(X1, X2, X3),
                   U93(active X1, X2, X3) -> U93(X1, X2, X3),
                     U94(X1, X2, mark X3) -> U94(X1, X2, X3),
                   U94(X1, X2, active X3) -> U94(X1, X2, X3),
                     U94(X1, mark X2, X3) -> U94(X1, X2, X3),
                   U94(X1, active X2, X3) -> U94(X1, X2, X3),
                     U94(mark X1, X2, X3) -> U94(X1, X2, X3),
                   U94(active X1, X2, X3) -> U94(X1, X2, X3),
                         U95(X1, mark X2) -> U95(X1, X2),
                       U95(X1, active X2) -> U95(X1, X2),
                         U95(mark X1, X2) -> U95(X1, X2),
                       U95(active X1, X2) -> U95(X1, X2),
                               U96 mark X -> U96 X,
                             U96 active X -> U96 X
      }
      Open
     
     
     SCC (2):
      Strict:
       {  isNatIListKind# mark X -> isNatIListKind# X,
        isNatIListKind# active X -> isNatIListKind# X}
      Weak:
      {
                        mark cons(X1, X2) -> active cons(mark X1, X2),
                                 mark 0() -> active 0(),
                             mark zeros() -> active zeros(),
                    mark U102(X1, X2, X3) -> active U102(mark X1, X2, X3),
                         mark isNatKind X -> active isNatKind X,
                    mark U101(X1, X2, X3) -> active U101(mark X1, X2, X3),
                                mark tt() -> active tt(),
                    mark U103(X1, X2, X3) -> active U103(mark X1, X2, X3),
                    mark isNatIListKind X -> active isNatIListKind X,
                    mark U104(X1, X2, X3) -> active U104(mark X1, X2, X3),
                        mark U105(X1, X2) -> active U105(mark X1, X2),
                             mark isNat X -> active isNat X,
                              mark U106 X -> active U106 mark X,
                        mark isNatIList X -> active isNatIList X,
                         mark U12(X1, X2) -> active U12(mark X1, X2),
                         mark U11(X1, X2) -> active U11(mark X1, X2),
                    mark U112(X1, X2, X3) -> active U112(mark X1, X2, X3),
                    mark U111(X1, X2, X3) -> active U111(mark X1, X2, X3),
                    mark U113(X1, X2, X3) -> active U113(mark X1, X2, X3),
                        mark U114(X1, X2) -> active U114(mark X1, X2),
                                 mark s X -> active s mark X,
                            mark length X -> active length mark X,
                               mark U13 X -> active U13 mark X,
                         mark isNatList X -> active isNatList X,
                              mark U122 X -> active U122 mark X,
                        mark U121(X1, X2) -> active U121(mark X1, X2),
                               mark nil() -> active nil(),
                mark U132(X1, X2, X3, X4) -> active U132(mark X1, X2, X3, X4),
                mark U131(X1, X2, X3, X4) -> active U131(mark X1, X2, X3, X4),
                mark U133(X1, X2, X3, X4) -> active U133(mark X1, X2, X3, X4),
                mark U134(X1, X2, X3, X4) -> active U134(mark X1, X2, X3, X4),
                mark U135(X1, X2, X3, X4) -> active U135(mark X1, X2, X3, X4),
                mark U136(X1, X2, X3, X4) -> active U136(mark X1, X2, X3, X4),
                        mark take(X1, X2) -> active take(mark X1, mark X2),
                         mark U22(X1, X2) -> active U22(mark X1, X2),
                         mark U21(X1, X2) -> active U21(mark X1, X2),
                               mark U23 X -> active U23 mark X,
                         mark U32(X1, X2) -> active U32(mark X1, X2),
                         mark U31(X1, X2) -> active U31(mark X1, X2),
                               mark U33 X -> active U33 mark X,
                     mark U42(X1, X2, X3) -> active U42(mark X1, X2, X3),
                     mark U41(X1, X2, X3) -> active U41(mark X1, X2, X3),
                     mark U43(X1, X2, X3) -> active U43(mark X1, X2, X3),
                     mark U44(X1, X2, X3) -> active U44(mark X1, X2, X3),
                         mark U45(X1, X2) -> active U45(mark X1, X2),
                               mark U46 X -> active U46 mark X,
                               mark U52 X -> active U52 mark X,
                         mark U51(X1, X2) -> active U51(mark X1, X2),
                               mark U62 X -> active U62 mark X,
                         mark U61(X1, X2) -> active U61(mark X1, X2),
                               mark U71 X -> active U71 mark X,
                               mark U81 X -> active U81 mark X,
                     mark U92(X1, X2, X3) -> active U92(mark X1, X2, X3),
                     mark U91(X1, X2, X3) -> active U91(mark X1, X2, X3),
                     mark U93(X1, X2, X3) -> active U93(mark X1, X2, X3),
                     mark U94(X1, X2, X3) -> active U94(mark X1, X2, X3),
                         mark U95(X1, X2) -> active U95(mark X1, X2),
                               mark U96 X -> active U96 mark X,
                        cons(X1, mark X2) -> cons(X1, X2),
                      cons(X1, active X2) -> cons(X1, X2),
                        cons(mark X1, X2) -> cons(X1, X2),
                      cons(active X1, X2) -> cons(X1, X2),
                           active zeros() -> mark cons(0(), zeros()),
                active U102(tt(), V1, V2) -> mark U103(isNatIListKind V2, V1, V2),
                     active isNatKind 0() -> mark tt(),
                    active isNatKind s V1 -> mark U81 isNatKind V1,
               active isNatKind length V1 -> mark U71 isNatIListKind V1,
                active U101(tt(), V1, V2) -> mark U102(isNatKind V1, V1, V2),
                active U103(tt(), V1, V2) -> mark U104(isNatIListKind V2, V1, V2),
       active isNatIListKind cons(V1, V2) -> mark U51(isNatKind V1, V2),
            active isNatIListKind zeros() -> mark tt(),
              active isNatIListKind nil() -> mark tt(),
       active isNatIListKind take(V1, V2) -> mark U61(isNatKind V1, V2),
                active U104(tt(), V1, V2) -> mark U105(isNat V1, V2),
                    active U105(tt(), V2) -> mark U106 isNatIList V2,
                         active isNat 0() -> mark tt(),
                        active isNat s V1 -> mark U21(isNatKind V1, V1),
                   active isNat length V1 -> mark U11(isNatIListKind V1, V1),
                         active U106 tt() -> mark tt(),
                      active isNatIList V -> mark U31(isNatIListKind V, V),
           active isNatIList cons(V1, V2) -> mark U41(isNatKind V1, V1, V2),
                active isNatIList zeros() -> mark tt(),
                     active U12(tt(), V1) -> mark U13 isNatList V1,
                     active U11(tt(), V1) -> mark U12(isNatIListKind V1, V1),
                  active U112(tt(), L, N) -> mark U113(isNat N, L, N),
                  active U111(tt(), L, N) -> mark U112(isNatIListKind L, L, N),
                  active U113(tt(), L, N) -> mark U114(isNatKind N, L),
                     active U114(tt(), L) -> mark s length L,
                 active length cons(N, L) -> mark U111(isNatList L, L, N),
                      active length nil() -> mark 0(),
                          active U13 tt() -> mark tt(),
            active isNatList cons(V1, V2) -> mark U91(isNatKind V1, V1, V2),
                   active isNatList nil() -> mark tt(),
            active isNatList take(V1, V2) -> mark U101(isNatKind V1, V1, V2),
                         active U122 tt() -> mark nil(),
                    active U121(tt(), IL) -> mark U122 isNatIListKind IL,
              active U132(tt(), IL, M, N) -> mark U133(isNat M, IL, M, N),
              active U131(tt(), IL, M, N) -> mark U132(isNatIListKind IL, IL, M, N),
              active U133(tt(), IL, M, N) -> mark U134(isNatKind M, IL, M, N),
              active U134(tt(), IL, M, N) -> mark U135(isNat N, IL, M, N),
              active U135(tt(), IL, M, N) -> mark U136(isNatKind N, IL, M, N),
              active U136(tt(), IL, M, N) -> mark cons(N, take(M, IL)),
                     active take(0(), IL) -> mark U121(isNatIList IL, IL),
            active take(s M, cons(N, IL)) -> mark U131(isNatIList IL, IL, M, N),
                     active U22(tt(), V1) -> mark U23 isNat V1,
                     active U21(tt(), V1) -> mark U22(isNatKind V1, V1),
                          active U23 tt() -> mark tt(),
                      active U32(tt(), V) -> mark U33 isNatList V,
                      active U31(tt(), V) -> mark U32(isNatIListKind V, V),
                          active U33 tt() -> mark tt(),
                 active U42(tt(), V1, V2) -> mark U43(isNatIListKind V2, V1, V2),
                 active U41(tt(), V1, V2) -> mark U42(isNatKind V1, V1, V2),
                 active U43(tt(), V1, V2) -> mark U44(isNatIListKind V2, V1, V2),
                 active U44(tt(), V1, V2) -> mark U45(isNat V1, V2),
                     active U45(tt(), V2) -> mark U46 isNatIList V2,
                          active U46 tt() -> mark tt(),
                          active U52 tt() -> mark tt(),
                     active U51(tt(), V2) -> mark U52 isNatIListKind V2,
                          active U62 tt() -> mark tt(),
                     active U61(tt(), V2) -> mark U62 isNatIListKind V2,
                          active U71 tt() -> mark tt(),
                          active U81 tt() -> mark tt(),
                 active U92(tt(), V1, V2) -> mark U93(isNatIListKind V2, V1, V2),
                 active U91(tt(), V1, V2) -> mark U92(isNatKind V1, V1, V2),
                 active U93(tt(), V1, V2) -> mark U94(isNatIListKind V2, V1, V2),
                 active U94(tt(), V1, V2) -> mark U95(isNat V1, V2),
                     active U95(tt(), V2) -> mark U96 isNatList V2,
                          active U96 tt() -> mark tt(),
                    U102(X1, X2, mark X3) -> U102(X1, X2, X3),
                  U102(X1, X2, active X3) -> U102(X1, X2, X3),
                    U102(X1, mark X2, X3) -> U102(X1, X2, X3),
                  U102(X1, active X2, X3) -> U102(X1, X2, X3),
                    U102(mark X1, X2, X3) -> U102(X1, X2, X3),
                  U102(active X1, X2, X3) -> U102(X1, X2, X3),
                         isNatKind mark X -> isNatKind X,
                       isNatKind active X -> isNatKind X,
                    U101(X1, X2, mark X3) -> U101(X1, X2, X3),
                  U101(X1, X2, active X3) -> U101(X1, X2, X3),
                    U101(X1, mark X2, X3) -> U101(X1, X2, X3),
                  U101(X1, active X2, X3) -> U101(X1, X2, X3),
                    U101(mark X1, X2, X3) -> U101(X1, X2, X3),
                  U101(active X1, X2, X3) -> U101(X1, X2, X3),
                    U103(X1, X2, mark X3) -> U103(X1, X2, X3),
                  U103(X1, X2, active X3) -> U103(X1, X2, X3),
                    U103(X1, mark X2, X3) -> U103(X1, X2, X3),
                  U103(X1, active X2, X3) -> U103(X1, X2, X3),
                    U103(mark X1, X2, X3) -> U103(X1, X2, X3),
                  U103(active X1, X2, X3) -> U103(X1, X2, X3),
                    isNatIListKind mark X -> isNatIListKind X,
                  isNatIListKind active X -> isNatIListKind X,
                    U104(X1, X2, mark X3) -> U104(X1, X2, X3),
                  U104(X1, X2, active X3) -> U104(X1, X2, X3),
                    U104(X1, mark X2, X3) -> U104(X1, X2, X3),
                  U104(X1, active X2, X3) -> U104(X1, X2, X3),
                    U104(mark X1, X2, X3) -> U104(X1, X2, X3),
                  U104(active X1, X2, X3) -> U104(X1, X2, X3),
                        U105(X1, mark X2) -> U105(X1, X2),
                      U105(X1, active X2) -> U105(X1, X2),
                        U105(mark X1, X2) -> U105(X1, X2),
                      U105(active X1, X2) -> U105(X1, X2),
                             isNat mark X -> isNat X,
                           isNat active X -> isNat X,
                              U106 mark X -> U106 X,
                            U106 active X -> U106 X,
                        isNatIList mark X -> isNatIList X,
                      isNatIList active X -> isNatIList X,
                         U12(X1, mark X2) -> U12(X1, X2),
                       U12(X1, active X2) -> U12(X1, X2),
                         U12(mark X1, X2) -> U12(X1, X2),
                       U12(active X1, X2) -> U12(X1, X2),
                         U11(X1, mark X2) -> U11(X1, X2),
                       U11(X1, active X2) -> U11(X1, X2),
                         U11(mark X1, X2) -> U11(X1, X2),
                       U11(active X1, X2) -> U11(X1, X2),
                    U112(X1, X2, mark X3) -> U112(X1, X2, X3),
                  U112(X1, X2, active X3) -> U112(X1, X2, X3),
                    U112(X1, mark X2, X3) -> U112(X1, X2, X3),
                  U112(X1, active X2, X3) -> U112(X1, X2, X3),
                    U112(mark X1, X2, X3) -> U112(X1, X2, X3),
                  U112(active X1, X2, X3) -> U112(X1, X2, X3),
                    U111(X1, X2, mark X3) -> U111(X1, X2, X3),
                  U111(X1, X2, active X3) -> U111(X1, X2, X3),
                    U111(X1, mark X2, X3) -> U111(X1, X2, X3),
                  U111(X1, active X2, X3) -> U111(X1, X2, X3),
                    U111(mark X1, X2, X3) -> U111(X1, X2, X3),
                  U111(active X1, X2, X3) -> U111(X1, X2, X3),
                    U113(X1, X2, mark X3) -> U113(X1, X2, X3),
                  U113(X1, X2, active X3) -> U113(X1, X2, X3),
                    U113(X1, mark X2, X3) -> U113(X1, X2, X3),
                  U113(X1, active X2, X3) -> U113(X1, X2, X3),
                    U113(mark X1, X2, X3) -> U113(X1, X2, X3),
                  U113(active X1, X2, X3) -> U113(X1, X2, X3),
                        U114(X1, mark X2) -> U114(X1, X2),
                      U114(X1, active X2) -> U114(X1, X2),
                        U114(mark X1, X2) -> U114(X1, X2),
                      U114(active X1, X2) -> U114(X1, X2),
                                 s mark X -> s X,
                               s active X -> s X,
                            length mark X -> length X,
                          length active X -> length X,
                               U13 mark X -> U13 X,
                             U13 active X -> U13 X,
                         isNatList mark X -> isNatList X,
                       isNatList active X -> isNatList X,
                              U122 mark X -> U122 X,
                            U122 active X -> U122 X,
                        U121(X1, mark X2) -> U121(X1, X2),
                      U121(X1, active X2) -> U121(X1, X2),
                        U121(mark X1, X2) -> U121(X1, X2),
                      U121(active X1, X2) -> U121(X1, X2),
                U132(X1, X2, X3, mark X4) -> U132(X1, X2, X3, X4),
              U132(X1, X2, X3, active X4) -> U132(X1, X2, X3, X4),
                U132(X1, X2, mark X3, X4) -> U132(X1, X2, X3, X4),
              U132(X1, X2, active X3, X4) -> U132(X1, X2, X3, X4),
                U132(X1, mark X2, X3, X4) -> U132(X1, X2, X3, X4),
              U132(X1, active X2, X3, X4) -> U132(X1, X2, X3, X4),
                U132(mark X1, X2, X3, X4) -> U132(X1, X2, X3, X4),
              U132(active X1, X2, X3, X4) -> U132(X1, X2, X3, X4),
                U131(X1, X2, X3, mark X4) -> U131(X1, X2, X3, X4),
              U131(X1, X2, X3, active X4) -> U131(X1, X2, X3, X4),
                U131(X1, X2, mark X3, X4) -> U131(X1, X2, X3, X4),
              U131(X1, X2, active X3, X4) -> U131(X1, X2, X3, X4),
                U131(X1, mark X2, X3, X4) -> U131(X1, X2, X3, X4),
              U131(X1, active X2, X3, X4) -> U131(X1, X2, X3, X4),
                U131(mark X1, X2, X3, X4) -> U131(X1, X2, X3, X4),
              U131(active X1, X2, X3, X4) -> U131(X1, X2, X3, X4),
                U133(X1, X2, X3, mark X4) -> U133(X1, X2, X3, X4),
              U133(X1, X2, X3, active X4) -> U133(X1, X2, X3, X4),
                U133(X1, X2, mark X3, X4) -> U133(X1, X2, X3, X4),
              U133(X1, X2, active X3, X4) -> U133(X1, X2, X3, X4),
                U133(X1, mark X2, X3, X4) -> U133(X1, X2, X3, X4),
              U133(X1, active X2, X3, X4) -> U133(X1, X2, X3, X4),
                U133(mark X1, X2, X3, X4) -> U133(X1, X2, X3, X4),
              U133(active X1, X2, X3, X4) -> U133(X1, X2, X3, X4),
                U134(X1, X2, X3, mark X4) -> U134(X1, X2, X3, X4),
              U134(X1, X2, X3, active X4) -> U134(X1, X2, X3, X4),
                U134(X1, X2, mark X3, X4) -> U134(X1, X2, X3, X4),
              U134(X1, X2, active X3, X4) -> U134(X1, X2, X3, X4),
                U134(X1, mark X2, X3, X4) -> U134(X1, X2, X3, X4),
              U134(X1, active X2, X3, X4) -> U134(X1, X2, X3, X4),
                U134(mark X1, X2, X3, X4) -> U134(X1, X2, X3, X4),
              U134(active X1, X2, X3, X4) -> U134(X1, X2, X3, X4),
                U135(X1, X2, X3, mark X4) -> U135(X1, X2, X3, X4),
              U135(X1, X2, X3, active X4) -> U135(X1, X2, X3, X4),
                U135(X1, X2, mark X3, X4) -> U135(X1, X2, X3, X4),
              U135(X1, X2, active X3, X4) -> U135(X1, X2, X3, X4),
                U135(X1, mark X2, X3, X4) -> U135(X1, X2, X3, X4),
              U135(X1, active X2, X3, X4) -> U135(X1, X2, X3, X4),
                U135(mark X1, X2, X3, X4) -> U135(X1, X2, X3, X4),
              U135(active X1, X2, X3, X4) -> U135(X1, X2, X3, X4),
                U136(X1, X2, X3, mark X4) -> U136(X1, X2, X3, X4),
              U136(X1, X2, X3, active X4) -> U136(X1, X2, X3, X4),
                U136(X1, X2, mark X3, X4) -> U136(X1, X2, X3, X4),
              U136(X1, X2, active X3, X4) -> U136(X1, X2, X3, X4),
                U136(X1, mark X2, X3, X4) -> U136(X1, X2, X3, X4),
              U136(X1, active X2, X3, X4) -> U136(X1, X2, X3, X4),
                U136(mark X1, X2, X3, X4) -> U136(X1, X2, X3, X4),
              U136(active X1, X2, X3, X4) -> U136(X1, X2, X3, X4),
                        take(X1, mark X2) -> take(X1, X2),
                      take(X1, active X2) -> take(X1, X2),
                        take(mark X1, X2) -> take(X1, X2),
                      take(active X1, X2) -> take(X1, X2),
                         U22(X1, mark X2) -> U22(X1, X2),
                       U22(X1, active X2) -> U22(X1, X2),
                         U22(mark X1, X2) -> U22(X1, X2),
                       U22(active X1, X2) -> U22(X1, X2),
                         U21(X1, mark X2) -> U21(X1, X2),
                       U21(X1, active X2) -> U21(X1, X2),
                         U21(mark X1, X2) -> U21(X1, X2),
                       U21(active X1, X2) -> U21(X1, X2),
                               U23 mark X -> U23 X,
                             U23 active X -> U23 X,
                         U32(X1, mark X2) -> U32(X1, X2),
                       U32(X1, active X2) -> U32(X1, X2),
                         U32(mark X1, X2) -> U32(X1, X2),
                       U32(active X1, X2) -> U32(X1, X2),
                         U31(X1, mark X2) -> U31(X1, X2),
                       U31(X1, active X2) -> U31(X1, X2),
                         U31(mark X1, X2) -> U31(X1, X2),
                       U31(active X1, X2) -> U31(X1, X2),
                               U33 mark X -> U33 X,
                             U33 active X -> U33 X,
                     U42(X1, X2, mark X3) -> U42(X1, X2, X3),
                   U42(X1, X2, active X3) -> U42(X1, X2, X3),
                     U42(X1, mark X2, X3) -> U42(X1, X2, X3),
                   U42(X1, active X2, X3) -> U42(X1, X2, X3),
                     U42(mark X1, X2, X3) -> U42(X1, X2, X3),
                   U42(active X1, X2, X3) -> U42(X1, X2, X3),
                     U41(X1, X2, mark X3) -> U41(X1, X2, X3),
                   U41(X1, X2, active X3) -> U41(X1, X2, X3),
                     U41(X1, mark X2, X3) -> U41(X1, X2, X3),
                   U41(X1, active X2, X3) -> U41(X1, X2, X3),
                     U41(mark X1, X2, X3) -> U41(X1, X2, X3),
                   U41(active X1, X2, X3) -> U41(X1, X2, X3),
                     U43(X1, X2, mark X3) -> U43(X1, X2, X3),
                   U43(X1, X2, active X3) -> U43(X1, X2, X3),
                     U43(X1, mark X2, X3) -> U43(X1, X2, X3),
                   U43(X1, active X2, X3) -> U43(X1, X2, X3),
                     U43(mark X1, X2, X3) -> U43(X1, X2, X3),
                   U43(active X1, X2, X3) -> U43(X1, X2, X3),
                     U44(X1, X2, mark X3) -> U44(X1, X2, X3),
                   U44(X1, X2, active X3) -> U44(X1, X2, X3),
                     U44(X1, mark X2, X3) -> U44(X1, X2, X3),
                   U44(X1, active X2, X3) -> U44(X1, X2, X3),
                     U44(mark X1, X2, X3) -> U44(X1, X2, X3),
                   U44(active X1, X2, X3) -> U44(X1, X2, X3),
                         U45(X1, mark X2) -> U45(X1, X2),
                       U45(X1, active X2) -> U45(X1, X2),
                         U45(mark X1, X2) -> U45(X1, X2),
                       U45(active X1, X2) -> U45(X1, X2),
                               U46 mark X -> U46 X,
                             U46 active X -> U46 X,
                               U52 mark X -> U52 X,
                             U52 active X -> U52 X,
                         U51(X1, mark X2) -> U51(X1, X2),
                       U51(X1, active X2) -> U51(X1, X2),
                         U51(mark X1, X2) -> U51(X1, X2),
                       U51(active X1, X2) -> U51(X1, X2),
                               U62 mark X -> U62 X,
                             U62 active X -> U62 X,
                         U61(X1, mark X2) -> U61(X1, X2),
                       U61(X1, active X2) -> U61(X1, X2),
                         U61(mark X1, X2) -> U61(X1, X2),
                       U61(active X1, X2) -> U61(X1, X2),
                               U71 mark X -> U71 X,
                             U71 active X -> U71 X,
                               U81 mark X -> U81 X,
                             U81 active X -> U81 X,
                     U92(X1, X2, mark X3) -> U92(X1, X2, X3),
                   U92(X1, X2, active X3) -> U92(X1, X2, X3),
                     U92(X1, mark X2, X3) -> U92(X1, X2, X3),
                   U92(X1, active X2, X3) -> U92(X1, X2, X3),
                     U92(mark X1, X2, X3) -> U92(X1, X2, X3),
                   U92(active X1, X2, X3) -> U92(X1, X2, X3),
                     U91(X1, X2, mark X3) -> U91(X1, X2, X3),
                   U91(X1, X2, active X3) -> U91(X1, X2, X3),
                     U91(X1, mark X2, X3) -> U91(X1, X2, X3),
                   U91(X1, active X2, X3) -> U91(X1, X2, X3),
                     U91(mark X1, X2, X3) -> U91(X1, X2, X3),
                   U91(active X1, X2, X3) -> U91(X1, X2, X3),
                     U93(X1, X2, mark X3) -> U93(X1, X2, X3),
                   U93(X1, X2, active X3) -> U93(X1, X2, X3),
                     U93(X1, mark X2, X3) -> U93(X1, X2, X3),
                   U93(X1, active X2, X3) -> U93(X1, X2, X3),
                     U93(mark X1, X2, X3) -> U93(X1, X2, X3),
                   U93(active X1, X2, X3) -> U93(X1, X2, X3),
                     U94(X1, X2, mark X3) -> U94(X1, X2, X3),
                   U94(X1, X2, active X3) -> U94(X1, X2, X3),
                     U94(X1, mark X2, X3) -> U94(X1, X2, X3),
                   U94(X1, active X2, X3) -> U94(X1, X2, X3),
                     U94(mark X1, X2, X3) -> U94(X1, X2, X3),
                   U94(active X1, X2, X3) -> U94(X1, X2, X3),
                         U95(X1, mark X2) -> U95(X1, X2),
                       U95(X1, active X2) -> U95(X1, X2),
                         U95(mark X1, X2) -> U95(X1, X2),
                       U95(active X1, X2) -> U95(X1, X2),
                               U96 mark X -> U96 X,
                             U96 active X -> U96 X
      }
      Open
     
     SCC (4):
      Strict:
       {  U12#(X1, mark X2) -> U12#(X1, X2),
        U12#(X1, active X2) -> U12#(X1, X2),
          U12#(mark X1, X2) -> U12#(X1, X2),
        U12#(active X1, X2) -> U12#(X1, X2)}
      Weak:
      {
                        mark cons(X1, X2) -> active cons(mark X1, X2),
                                 mark 0() -> active 0(),
                             mark zeros() -> active zeros(),
                    mark U102(X1, X2, X3) -> active U102(mark X1, X2, X3),
                         mark isNatKind X -> active isNatKind X,
                    mark U101(X1, X2, X3) -> active U101(mark X1, X2, X3),
                                mark tt() -> active tt(),
                    mark U103(X1, X2, X3) -> active U103(mark X1, X2, X3),
                    mark isNatIListKind X -> active isNatIListKind X,
                    mark U104(X1, X2, X3) -> active U104(mark X1, X2, X3),
                        mark U105(X1, X2) -> active U105(mark X1, X2),
                             mark isNat X -> active isNat X,
                              mark U106 X -> active U106 mark X,
                        mark isNatIList X -> active isNatIList X,
                         mark U12(X1, X2) -> active U12(mark X1, X2),
                         mark U11(X1, X2) -> active U11(mark X1, X2),
                    mark U112(X1, X2, X3) -> active U112(mark X1, X2, X3),
                    mark U111(X1, X2, X3) -> active U111(mark X1, X2, X3),
                    mark U113(X1, X2, X3) -> active U113(mark X1, X2, X3),
                        mark U114(X1, X2) -> active U114(mark X1, X2),
                                 mark s X -> active s mark X,
                            mark length X -> active length mark X,
                               mark U13 X -> active U13 mark X,
                         mark isNatList X -> active isNatList X,
                              mark U122 X -> active U122 mark X,
                        mark U121(X1, X2) -> active U121(mark X1, X2),
                               mark nil() -> active nil(),
                mark U132(X1, X2, X3, X4) -> active U132(mark X1, X2, X3, X4),
                mark U131(X1, X2, X3, X4) -> active U131(mark X1, X2, X3, X4),
                mark U133(X1, X2, X3, X4) -> active U133(mark X1, X2, X3, X4),
                mark U134(X1, X2, X3, X4) -> active U134(mark X1, X2, X3, X4),
                mark U135(X1, X2, X3, X4) -> active U135(mark X1, X2, X3, X4),
                mark U136(X1, X2, X3, X4) -> active U136(mark X1, X2, X3, X4),
                        mark take(X1, X2) -> active take(mark X1, mark X2),
                         mark U22(X1, X2) -> active U22(mark X1, X2),
                         mark U21(X1, X2) -> active U21(mark X1, X2),
                               mark U23 X -> active U23 mark X,
                         mark U32(X1, X2) -> active U32(mark X1, X2),
                         mark U31(X1, X2) -> active U31(mark X1, X2),
                               mark U33 X -> active U33 mark X,
                     mark U42(X1, X2, X3) -> active U42(mark X1, X2, X3),
                     mark U41(X1, X2, X3) -> active U41(mark X1, X2, X3),
                     mark U43(X1, X2, X3) -> active U43(mark X1, X2, X3),
                     mark U44(X1, X2, X3) -> active U44(mark X1, X2, X3),
                         mark U45(X1, X2) -> active U45(mark X1, X2),
                               mark U46 X -> active U46 mark X,
                               mark U52 X -> active U52 mark X,
                         mark U51(X1, X2) -> active U51(mark X1, X2),
                               mark U62 X -> active U62 mark X,
                         mark U61(X1, X2) -> active U61(mark X1, X2),
                               mark U71 X -> active U71 mark X,
                               mark U81 X -> active U81 mark X,
                     mark U92(X1, X2, X3) -> active U92(mark X1, X2, X3),
                     mark U91(X1, X2, X3) -> active U91(mark X1, X2, X3),
                     mark U93(X1, X2, X3) -> active U93(mark X1, X2, X3),
                     mark U94(X1, X2, X3) -> active U94(mark X1, X2, X3),
                         mark U95(X1, X2) -> active U95(mark X1, X2),
                               mark U96 X -> active U96 mark X,
                        cons(X1, mark X2) -> cons(X1, X2),
                      cons(X1, active X2) -> cons(X1, X2),
                        cons(mark X1, X2) -> cons(X1, X2),
                      cons(active X1, X2) -> cons(X1, X2),
                           active zeros() -> mark cons(0(), zeros()),
                active U102(tt(), V1, V2) -> mark U103(isNatIListKind V2, V1, V2),
                     active isNatKind 0() -> mark tt(),
                    active isNatKind s V1 -> mark U81 isNatKind V1,
               active isNatKind length V1 -> mark U71 isNatIListKind V1,
                active U101(tt(), V1, V2) -> mark U102(isNatKind V1, V1, V2),
                active U103(tt(), V1, V2) -> mark U104(isNatIListKind V2, V1, V2),
       active isNatIListKind cons(V1, V2) -> mark U51(isNatKind V1, V2),
            active isNatIListKind zeros() -> mark tt(),
              active isNatIListKind nil() -> mark tt(),
       active isNatIListKind take(V1, V2) -> mark U61(isNatKind V1, V2),
                active U104(tt(), V1, V2) -> mark U105(isNat V1, V2),
                    active U105(tt(), V2) -> mark U106 isNatIList V2,
                         active isNat 0() -> mark tt(),
                        active isNat s V1 -> mark U21(isNatKind V1, V1),
                   active isNat length V1 -> mark U11(isNatIListKind V1, V1),
                         active U106 tt() -> mark tt(),
                      active isNatIList V -> mark U31(isNatIListKind V, V),
           active isNatIList cons(V1, V2) -> mark U41(isNatKind V1, V1, V2),
                active isNatIList zeros() -> mark tt(),
                     active U12(tt(), V1) -> mark U13 isNatList V1,
                     active U11(tt(), V1) -> mark U12(isNatIListKind V1, V1),
                  active U112(tt(), L, N) -> mark U113(isNat N, L, N),
                  active U111(tt(), L, N) -> mark U112(isNatIListKind L, L, N),
                  active U113(tt(), L, N) -> mark U114(isNatKind N, L),
                     active U114(tt(), L) -> mark s length L,
                 active length cons(N, L) -> mark U111(isNatList L, L, N),
                      active length nil() -> mark 0(),
                          active U13 tt() -> mark tt(),
            active isNatList cons(V1, V2) -> mark U91(isNatKind V1, V1, V2),
                   active isNatList nil() -> mark tt(),
            active isNatList take(V1, V2) -> mark U101(isNatKind V1, V1, V2),
                         active U122 tt() -> mark nil(),
                    active U121(tt(), IL) -> mark U122 isNatIListKind IL,
              active U132(tt(), IL, M, N) -> mark U133(isNat M, IL, M, N),
              active U131(tt(), IL, M, N) -> mark U132(isNatIListKind IL, IL, M, N),
              active U133(tt(), IL, M, N) -> mark U134(isNatKind M, IL, M, N),
              active U134(tt(), IL, M, N) -> mark U135(isNat N, IL, M, N),
              active U135(tt(), IL, M, N) -> mark U136(isNatKind N, IL, M, N),
              active U136(tt(), IL, M, N) -> mark cons(N, take(M, IL)),
                     active take(0(), IL) -> mark U121(isNatIList IL, IL),
            active take(s M, cons(N, IL)) -> mark U131(isNatIList IL, IL, M, N),
                     active U22(tt(), V1) -> mark U23 isNat V1,
                     active U21(tt(), V1) -> mark U22(isNatKind V1, V1),
                          active U23 tt() -> mark tt(),
                      active U32(tt(), V) -> mark U33 isNatList V,
                      active U31(tt(), V) -> mark U32(isNatIListKind V, V),
                          active U33 tt() -> mark tt(),
                 active U42(tt(), V1, V2) -> mark U43(isNatIListKind V2, V1, V2),
                 active U41(tt(), V1, V2) -> mark U42(isNatKind V1, V1, V2),
                 active U43(tt(), V1, V2) -> mark U44(isNatIListKind V2, V1, V2),
                 active U44(tt(), V1, V2) -> mark U45(isNat V1, V2),
                     active U45(tt(), V2) -> mark U46 isNatIList V2,
                          active U46 tt() -> mark tt(),
                          active U52 tt() -> mark tt(),
                     active U51(tt(), V2) -> mark U52 isNatIListKind V2,
                          active U62 tt() -> mark tt(),
                     active U61(tt(), V2) -> mark U62 isNatIListKind V2,
                          active U71 tt() -> mark tt(),
                          active U81 tt() -> mark tt(),
                 active U92(tt(), V1, V2) -> mark U93(isNatIListKind V2, V1, V2),
                 active U91(tt(), V1, V2) -> mark U92(isNatKind V1, V1, V2),
                 active U93(tt(), V1, V2) -> mark U94(isNatIListKind V2, V1, V2),
                 active U94(tt(), V1, V2) -> mark U95(isNat V1, V2),
                     active U95(tt(), V2) -> mark U96 isNatList V2,
                          active U96 tt() -> mark tt(),
                    U102(X1, X2, mark X3) -> U102(X1, X2, X3),
                  U102(X1, X2, active X3) -> U102(X1, X2, X3),
                    U102(X1, mark X2, X3) -> U102(X1, X2, X3),
                  U102(X1, active X2, X3) -> U102(X1, X2, X3),
                    U102(mark X1, X2, X3) -> U102(X1, X2, X3),
                  U102(active X1, X2, X3) -> U102(X1, X2, X3),
                         isNatKind mark X -> isNatKind X,
                       isNatKind active X -> isNatKind X,
                    U101(X1, X2, mark X3) -> U101(X1, X2, X3),
                  U101(X1, X2, active X3) -> U101(X1, X2, X3),
                    U101(X1, mark X2, X3) -> U101(X1, X2, X3),
                  U101(X1, active X2, X3) -> U101(X1, X2, X3),
                    U101(mark X1, X2, X3) -> U101(X1, X2, X3),
                  U101(active X1, X2, X3) -> U101(X1, X2, X3),
                    U103(X1, X2, mark X3) -> U103(X1, X2, X3),
                  U103(X1, X2, active X3) -> U103(X1, X2, X3),
                    U103(X1, mark X2, X3) -> U103(X1, X2, X3),
                  U103(X1, active X2, X3) -> U103(X1, X2, X3),
                    U103(mark X1, X2, X3) -> U103(X1, X2, X3),
                  U103(active X1, X2, X3) -> U103(X1, X2, X3),
                    isNatIListKind mark X -> isNatIListKind X,
                  isNatIListKind active X -> isNatIListKind X,
                    U104(X1, X2, mark X3) -> U104(X1, X2, X3),
                  U104(X1, X2, active X3) -> U104(X1, X2, X3),
                    U104(X1, mark X2, X3) -> U104(X1, X2, X3),
                  U104(X1, active X2, X3) -> U104(X1, X2, X3),
                    U104(mark X1, X2, X3) -> U104(X1, X2, X3),
                  U104(active X1, X2, X3) -> U104(X1, X2, X3),
                        U105(X1, mark X2) -> U105(X1, X2),
                      U105(X1, active X2) -> U105(X1, X2),
                        U105(mark X1, X2) -> U105(X1, X2),
                      U105(active X1, X2) -> U105(X1, X2),
                             isNat mark X -> isNat X,
                           isNat active X -> isNat X,
                              U106 mark X -> U106 X,
                            U106 active X -> U106 X,
                        isNatIList mark X -> isNatIList X,
                      isNatIList active X -> isNatIList X,
                         U12(X1, mark X2) -> U12(X1, X2),
                       U12(X1, active X2) -> U12(X1, X2),
                         U12(mark X1, X2) -> U12(X1, X2),
                       U12(active X1, X2) -> U12(X1, X2),
                         U11(X1, mark X2) -> U11(X1, X2),
                       U11(X1, active X2) -> U11(X1, X2),
                         U11(mark X1, X2) -> U11(X1, X2),
                       U11(active X1, X2) -> U11(X1, X2),
                    U112(X1, X2, mark X3) -> U112(X1, X2, X3),
                  U112(X1, X2, active X3) -> U112(X1, X2, X3),
                    U112(X1, mark X2, X3) -> U112(X1, X2, X3),
                  U112(X1, active X2, X3) -> U112(X1, X2, X3),
                    U112(mark X1, X2, X3) -> U112(X1, X2, X3),
                  U112(active X1, X2, X3) -> U112(X1, X2, X3),
                    U111(X1, X2, mark X3) -> U111(X1, X2, X3),
                  U111(X1, X2, active X3) -> U111(X1, X2, X3),
                    U111(X1, mark X2, X3) -> U111(X1, X2, X3),
                  U111(X1, active X2, X3) -> U111(X1, X2, X3),
                    U111(mark X1, X2, X3) -> U111(X1, X2, X3),
                  U111(active X1, X2, X3) -> U111(X1, X2, X3),
                    U113(X1, X2, mark X3) -> U113(X1, X2, X3),
                  U113(X1, X2, active X3) -> U113(X1, X2, X3),
                    U113(X1, mark X2, X3) -> U113(X1, X2, X3),
                  U113(X1, active X2, X3) -> U113(X1, X2, X3),
                    U113(mark X1, X2, X3) -> U113(X1, X2, X3),
                  U113(active X1, X2, X3) -> U113(X1, X2, X3),
                        U114(X1, mark X2) -> U114(X1, X2),
                      U114(X1, active X2) -> U114(X1, X2),
                        U114(mark X1, X2) -> U114(X1, X2),
                      U114(active X1, X2) -> U114(X1, X2),
                                 s mark X -> s X,
                               s active X -> s X,
                            length mark X -> length X,
                          length active X -> length X,
                               U13 mark X -> U13 X,
                             U13 active X -> U13 X,
                         isNatList mark X -> isNatList X,
                       isNatList active X -> isNatList X,
                              U122 mark X -> U122 X,
                            U122 active X -> U122 X,
                        U121(X1, mark X2) -> U121(X1, X2),
                      U121(X1, active X2) -> U121(X1, X2),
                        U121(mark X1, X2) -> U121(X1, X2),
                      U121(active X1, X2) -> U121(X1, X2),
                U132(X1, X2, X3, mark X4) -> U132(X1, X2, X3, X4),
              U132(X1, X2, X3, active X4) -> U132(X1, X2, X3, X4),
                U132(X1, X2, mark X3, X4) -> U132(X1, X2, X3, X4),
              U132(X1, X2, active X3, X4) -> U132(X1, X2, X3, X4),
                U132(X1, mark X2, X3, X4) -> U132(X1, X2, X3, X4),
              U132(X1, active X2, X3, X4) -> U132(X1, X2, X3, X4),
                U132(mark X1, X2, X3, X4) -> U132(X1, X2, X3, X4),
              U132(active X1, X2, X3, X4) -> U132(X1, X2, X3, X4),
                U131(X1, X2, X3, mark X4) -> U131(X1, X2, X3, X4),
              U131(X1, X2, X3, active X4) -> U131(X1, X2, X3, X4),
                U131(X1, X2, mark X3, X4) -> U131(X1, X2, X3, X4),
              U131(X1, X2, active X3, X4) -> U131(X1, X2, X3, X4),
                U131(X1, mark X2, X3, X4) -> U131(X1, X2, X3, X4),
              U131(X1, active X2, X3, X4) -> U131(X1, X2, X3, X4),
                U131(mark X1, X2, X3, X4) -> U131(X1, X2, X3, X4),
              U131(active X1, X2, X3, X4) -> U131(X1, X2, X3, X4),
                U133(X1, X2, X3, mark X4) -> U133(X1, X2, X3, X4),
              U133(X1, X2, X3, active X4) -> U133(X1, X2, X3, X4),
                U133(X1, X2, mark X3, X4) -> U133(X1, X2, X3, X4),
              U133(X1, X2, active X3, X4) -> U133(X1, X2, X3, X4),
                U133(X1, mark X2, X3, X4) -> U133(X1, X2, X3, X4),
              U133(X1, active X2, X3, X4) -> U133(X1, X2, X3, X4),
                U133(mark X1, X2, X3, X4) -> U133(X1, X2, X3, X4),
              U133(active X1, X2, X3, X4) -> U133(X1, X2, X3, X4),
                U134(X1, X2, X3, mark X4) -> U134(X1, X2, X3, X4),
              U134(X1, X2, X3, active X4) -> U134(X1, X2, X3, X4),
                U134(X1, X2, mark X3, X4) -> U134(X1, X2, X3, X4),
              U134(X1, X2, active X3, X4) -> U134(X1, X2, X3, X4),
                U134(X1, mark X2, X3, X4) -> U134(X1, X2, X3, X4),
              U134(X1, active X2, X3, X4) -> U134(X1, X2, X3, X4),
                U134(mark X1, X2, X3, X4) -> U134(X1, X2, X3, X4),
              U134(active X1, X2, X3, X4) -> U134(X1, X2, X3, X4),
                U135(X1, X2, X3, mark X4) -> U135(X1, X2, X3, X4),
              U135(X1, X2, X3, active X4) -> U135(X1, X2, X3, X4),
                U135(X1, X2, mark X3, X4) -> U135(X1, X2, X3, X4),
              U135(X1, X2, active X3, X4) -> U135(X1, X2, X3, X4),
                U135(X1, mark X2, X3, X4) -> U135(X1, X2, X3, X4),
              U135(X1, active X2, X3, X4) -> U135(X1, X2, X3, X4),
                U135(mark X1, X2, X3, X4) -> U135(X1, X2, X3, X4),
              U135(active X1, X2, X3, X4) -> U135(X1, X2, X3, X4),
                U136(X1, X2, X3, mark X4) -> U136(X1, X2, X3, X4),
              U136(X1, X2, X3, active X4) -> U136(X1, X2, X3, X4),
                U136(X1, X2, mark X3, X4) -> U136(X1, X2, X3, X4),
              U136(X1, X2, active X3, X4) -> U136(X1, X2, X3, X4),
                U136(X1, mark X2, X3, X4) -> U136(X1, X2, X3, X4),
              U136(X1, active X2, X3, X4) -> U136(X1, X2, X3, X4),
                U136(mark X1, X2, X3, X4) -> U136(X1, X2, X3, X4),
              U136(active X1, X2, X3, X4) -> U136(X1, X2, X3, X4),
                        take(X1, mark X2) -> take(X1, X2),
                      take(X1, active X2) -> take(X1, X2),
                        take(mark X1, X2) -> take(X1, X2),
                      take(active X1, X2) -> take(X1, X2),
                         U22(X1, mark X2) -> U22(X1, X2),
                       U22(X1, active X2) -> U22(X1, X2),
                         U22(mark X1, X2) -> U22(X1, X2),
                       U22(active X1, X2) -> U22(X1, X2),
                         U21(X1, mark X2) -> U21(X1, X2),
                       U21(X1, active X2) -> U21(X1, X2),
                         U21(mark X1, X2) -> U21(X1, X2),
                       U21(active X1, X2) -> U21(X1, X2),
                               U23 mark X -> U23 X,
                             U23 active X -> U23 X,
                         U32(X1, mark X2) -> U32(X1, X2),
                       U32(X1, active X2) -> U32(X1, X2),
                         U32(mark X1, X2) -> U32(X1, X2),
                       U32(active X1, X2) -> U32(X1, X2),
                         U31(X1, mark X2) -> U31(X1, X2),
                       U31(X1, active X2) -> U31(X1, X2),
                         U31(mark X1, X2) -> U31(X1, X2),
                       U31(active X1, X2) -> U31(X1, X2),
                               U33 mark X -> U33 X,
                             U33 active X -> U33 X,
                     U42(X1, X2, mark X3) -> U42(X1, X2, X3),
                   U42(X1, X2, active X3) -> U42(X1, X2, X3),
                     U42(X1, mark X2, X3) -> U42(X1, X2, X3),
                   U42(X1, active X2, X3) -> U42(X1, X2, X3),
                     U42(mark X1, X2, X3) -> U42(X1, X2, X3),
                   U42(active X1, X2, X3) -> U42(X1, X2, X3),
                     U41(X1, X2, mark X3) -> U41(X1, X2, X3),
                   U41(X1, X2, active X3) -> U41(X1, X2, X3),
                     U41(X1, mark X2, X3) -> U41(X1, X2, X3),
                   U41(X1, active X2, X3) -> U41(X1, X2, X3),
                     U41(mark X1, X2, X3) -> U41(X1, X2, X3),
                   U41(active X1, X2, X3) -> U41(X1, X2, X3),
                     U43(X1, X2, mark X3) -> U43(X1, X2, X3),
                   U43(X1, X2, active X3) -> U43(X1, X2, X3),
                     U43(X1, mark X2, X3) -> U43(X1, X2, X3),
                   U43(X1, active X2, X3) -> U43(X1, X2, X3),
                     U43(mark X1, X2, X3) -> U43(X1, X2, X3),
                   U43(active X1, X2, X3) -> U43(X1, X2, X3),
                     U44(X1, X2, mark X3) -> U44(X1, X2, X3),
                   U44(X1, X2, active X3) -> U44(X1, X2, X3),
                     U44(X1, mark X2, X3) -> U44(X1, X2, X3),
                   U44(X1, active X2, X3) -> U44(X1, X2, X3),
                     U44(mark X1, X2, X3) -> U44(X1, X2, X3),
                   U44(active X1, X2, X3) -> U44(X1, X2, X3),
                         U45(X1, mark X2) -> U45(X1, X2),
                       U45(X1, active X2) -> U45(X1, X2),
                         U45(mark X1, X2) -> U45(X1, X2),
                       U45(active X1, X2) -> U45(X1, X2),
                               U46 mark X -> U46 X,
                             U46 active X -> U46 X,
                               U52 mark X -> U52 X,
                             U52 active X -> U52 X,
                         U51(X1, mark X2) -> U51(X1, X2),
                       U51(X1, active X2) -> U51(X1, X2),
                         U51(mark X1, X2) -> U51(X1, X2),
                       U51(active X1, X2) -> U51(X1, X2),
                               U62 mark X -> U62 X,
                             U62 active X -> U62 X,
                         U61(X1, mark X2) -> U61(X1, X2),
                       U61(X1, active X2) -> U61(X1, X2),
                         U61(mark X1, X2) -> U61(X1, X2),
                       U61(active X1, X2) -> U61(X1, X2),
                               U71 mark X -> U71 X,
                             U71 active X -> U71 X,
                               U81 mark X -> U81 X,
                             U81 active X -> U81 X,
                     U92(X1, X2, mark X3) -> U92(X1, X2, X3),
                   U92(X1, X2, active X3) -> U92(X1, X2, X3),
                     U92(X1, mark X2, X3) -> U92(X1, X2, X3),
                   U92(X1, active X2, X3) -> U92(X1, X2, X3),
                     U92(mark X1, X2, X3) -> U92(X1, X2, X3),
                   U92(active X1, X2, X3) -> U92(X1, X2, X3),
                     U91(X1, X2, mark X3) -> U91(X1, X2, X3),
                   U91(X1, X2, active X3) -> U91(X1, X2, X3),
                     U91(X1, mark X2, X3) -> U91(X1, X2, X3),
                   U91(X1, active X2, X3) -> U91(X1, X2, X3),
                     U91(mark X1, X2, X3) -> U91(X1, X2, X3),
                   U91(active X1, X2, X3) -> U91(X1, X2, X3),
                     U93(X1, X2, mark X3) -> U93(X1, X2, X3),
                   U93(X1, X2, active X3) -> U93(X1, X2, X3),
                     U93(X1, mark X2, X3) -> U93(X1, X2, X3),
                   U93(X1, active X2, X3) -> U93(X1, X2, X3),
                     U93(mark X1, X2, X3) -> U93(X1, X2, X3),
                   U93(active X1, X2, X3) -> U93(X1, X2, X3),
                     U94(X1, X2, mark X3) -> U94(X1, X2, X3),
                   U94(X1, X2, active X3) -> U94(X1, X2, X3),
                     U94(X1, mark X2, X3) -> U94(X1, X2, X3),
                   U94(X1, active X2, X3) -> U94(X1, X2, X3),
                     U94(mark X1, X2, X3) -> U94(X1, X2, X3),
                   U94(active X1, X2, X3) -> U94(X1, X2, X3),
                         U95(X1, mark X2) -> U95(X1, X2),
                       U95(X1, active X2) -> U95(X1, X2),
                         U95(mark X1, X2) -> U95(X1, X2),
                       U95(active X1, X2) -> U95(X1, X2),
                               U96 mark X -> U96 X,
                             U96 active X -> U96 X
      }
      Open
     
     SCC (2):
      Strict:
       {  U106# mark X -> U106# X,
        U106# active X -> U106# X}
      Weak:
      {
                        mark cons(X1, X2) -> active cons(mark X1, X2),
                                 mark 0() -> active 0(),
                             mark zeros() -> active zeros(),
                    mark U102(X1, X2, X3) -> active U102(mark X1, X2, X3),
                         mark isNatKind X -> active isNatKind X,
                    mark U101(X1, X2, X3) -> active U101(mark X1, X2, X3),
                                mark tt() -> active tt(),
                    mark U103(X1, X2, X3) -> active U103(mark X1, X2, X3),
                    mark isNatIListKind X -> active isNatIListKind X,
                    mark U104(X1, X2, X3) -> active U104(mark X1, X2, X3),
                        mark U105(X1, X2) -> active U105(mark X1, X2),
                             mark isNat X -> active isNat X,
                              mark U106 X -> active U106 mark X,
                        mark isNatIList X -> active isNatIList X,
                         mark U12(X1, X2) -> active U12(mark X1, X2),
                         mark U11(X1, X2) -> active U11(mark X1, X2),
                    mark U112(X1, X2, X3) -> active U112(mark X1, X2, X3),
                    mark U111(X1, X2, X3) -> active U111(mark X1, X2, X3),
                    mark U113(X1, X2, X3) -> active U113(mark X1, X2, X3),
                        mark U114(X1, X2) -> active U114(mark X1, X2),
                                 mark s X -> active s mark X,
                            mark length X -> active length mark X,
                               mark U13 X -> active U13 mark X,
                         mark isNatList X -> active isNatList X,
                              mark U122 X -> active U122 mark X,
                        mark U121(X1, X2) -> active U121(mark X1, X2),
                               mark nil() -> active nil(),
                mark U132(X1, X2, X3, X4) -> active U132(mark X1, X2, X3, X4),
                mark U131(X1, X2, X3, X4) -> active U131(mark X1, X2, X3, X4),
                mark U133(X1, X2, X3, X4) -> active U133(mark X1, X2, X3, X4),
                mark U134(X1, X2, X3, X4) -> active U134(mark X1, X2, X3, X4),
                mark U135(X1, X2, X3, X4) -> active U135(mark X1, X2, X3, X4),
                mark U136(X1, X2, X3, X4) -> active U136(mark X1, X2, X3, X4),
                        mark take(X1, X2) -> active take(mark X1, mark X2),
                         mark U22(X1, X2) -> active U22(mark X1, X2),
                         mark U21(X1, X2) -> active U21(mark X1, X2),
                               mark U23 X -> active U23 mark X,
                         mark U32(X1, X2) -> active U32(mark X1, X2),
                         mark U31(X1, X2) -> active U31(mark X1, X2),
                               mark U33 X -> active U33 mark X,
                     mark U42(X1, X2, X3) -> active U42(mark X1, X2, X3),
                     mark U41(X1, X2, X3) -> active U41(mark X1, X2, X3),
                     mark U43(X1, X2, X3) -> active U43(mark X1, X2, X3),
                     mark U44(X1, X2, X3) -> active U44(mark X1, X2, X3),
                         mark U45(X1, X2) -> active U45(mark X1, X2),
                               mark U46 X -> active U46 mark X,
                               mark U52 X -> active U52 mark X,
                         mark U51(X1, X2) -> active U51(mark X1, X2),
                               mark U62 X -> active U62 mark X,
                         mark U61(X1, X2) -> active U61(mark X1, X2),
                               mark U71 X -> active U71 mark X,
                               mark U81 X -> active U81 mark X,
                     mark U92(X1, X2, X3) -> active U92(mark X1, X2, X3),
                     mark U91(X1, X2, X3) -> active U91(mark X1, X2, X3),
                     mark U93(X1, X2, X3) -> active U93(mark X1, X2, X3),
                     mark U94(X1, X2, X3) -> active U94(mark X1, X2, X3),
                         mark U95(X1, X2) -> active U95(mark X1, X2),
                               mark U96 X -> active U96 mark X,
                        cons(X1, mark X2) -> cons(X1, X2),
                      cons(X1, active X2) -> cons(X1, X2),
                        cons(mark X1, X2) -> cons(X1, X2),
                      cons(active X1, X2) -> cons(X1, X2),
                           active zeros() -> mark cons(0(), zeros()),
                active U102(tt(), V1, V2) -> mark U103(isNatIListKind V2, V1, V2),
                     active isNatKind 0() -> mark tt(),
                    active isNatKind s V1 -> mark U81 isNatKind V1,
               active isNatKind length V1 -> mark U71 isNatIListKind V1,
                active U101(tt(), V1, V2) -> mark U102(isNatKind V1, V1, V2),
                active U103(tt(), V1, V2) -> mark U104(isNatIListKind V2, V1, V2),
       active isNatIListKind cons(V1, V2) -> mark U51(isNatKind V1, V2),
            active isNatIListKind zeros() -> mark tt(),
              active isNatIListKind nil() -> mark tt(),
       active isNatIListKind take(V1, V2) -> mark U61(isNatKind V1, V2),
                active U104(tt(), V1, V2) -> mark U105(isNat V1, V2),
                    active U105(tt(), V2) -> mark U106 isNatIList V2,
                         active isNat 0() -> mark tt(),
                        active isNat s V1 -> mark U21(isNatKind V1, V1),
                   active isNat length V1 -> mark U11(isNatIListKind V1, V1),
                         active U106 tt() -> mark tt(),
                      active isNatIList V -> mark U31(isNatIListKind V, V),
           active isNatIList cons(V1, V2) -> mark U41(isNatKind V1, V1, V2),
                active isNatIList zeros() -> mark tt(),
                     active U12(tt(), V1) -> mark U13 isNatList V1,
                     active U11(tt(), V1) -> mark U12(isNatIListKind V1, V1),
                  active U112(tt(), L, N) -> mark U113(isNat N, L, N),
                  active U111(tt(), L, N) -> mark U112(isNatIListKind L, L, N),
                  active U113(tt(), L, N) -> mark U114(isNatKind N, L),
                     active U114(tt(), L) -> mark s length L,
                 active length cons(N, L) -> mark U111(isNatList L, L, N),
                      active length nil() -> mark 0(),
                          active U13 tt() -> mark tt(),
            active isNatList cons(V1, V2) -> mark U91(isNatKind V1, V1, V2),
                   active isNatList nil() -> mark tt(),
            active isNatList take(V1, V2) -> mark U101(isNatKind V1, V1, V2),
                         active U122 tt() -> mark nil(),
                    active U121(tt(), IL) -> mark U122 isNatIListKind IL,
              active U132(tt(), IL, M, N) -> mark U133(isNat M, IL, M, N),
              active U131(tt(), IL, M, N) -> mark U132(isNatIListKind IL, IL, M, N),
              active U133(tt(), IL, M, N) -> mark U134(isNatKind M, IL, M, N),
              active U134(tt(), IL, M, N) -> mark U135(isNat N, IL, M, N),
              active U135(tt(), IL, M, N) -> mark U136(isNatKind N, IL, M, N),
              active U136(tt(), IL, M, N) -> mark cons(N, take(M, IL)),
                     active take(0(), IL) -> mark U121(isNatIList IL, IL),
            active take(s M, cons(N, IL)) -> mark U131(isNatIList IL, IL, M, N),
                     active U22(tt(), V1) -> mark U23 isNat V1,
                     active U21(tt(), V1) -> mark U22(isNatKind V1, V1),
                          active U23 tt() -> mark tt(),
                      active U32(tt(), V) -> mark U33 isNatList V,
                      active U31(tt(), V) -> mark U32(isNatIListKind V, V),
                          active U33 tt() -> mark tt(),
                 active U42(tt(), V1, V2) -> mark U43(isNatIListKind V2, V1, V2),
                 active U41(tt(), V1, V2) -> mark U42(isNatKind V1, V1, V2),
                 active U43(tt(), V1, V2) -> mark U44(isNatIListKind V2, V1, V2),
                 active U44(tt(), V1, V2) -> mark U45(isNat V1, V2),
                     active U45(tt(), V2) -> mark U46 isNatIList V2,
                          active U46 tt() -> mark tt(),
                          active U52 tt() -> mark tt(),
                     active U51(tt(), V2) -> mark U52 isNatIListKind V2,
                          active U62 tt() -> mark tt(),
                     active U61(tt(), V2) -> mark U62 isNatIListKind V2,
                          active U71 tt() -> mark tt(),
                          active U81 tt() -> mark tt(),
                 active U92(tt(), V1, V2) -> mark U93(isNatIListKind V2, V1, V2),
                 active U91(tt(), V1, V2) -> mark U92(isNatKind V1, V1, V2),
                 active U93(tt(), V1, V2) -> mark U94(isNatIListKind V2, V1, V2),
                 active U94(tt(), V1, V2) -> mark U95(isNat V1, V2),
                     active U95(tt(), V2) -> mark U96 isNatList V2,
                          active U96 tt() -> mark tt(),
                    U102(X1, X2, mark X3) -> U102(X1, X2, X3),
                  U102(X1, X2, active X3) -> U102(X1, X2, X3),
                    U102(X1, mark X2, X3) -> U102(X1, X2, X3),
                  U102(X1, active X2, X3) -> U102(X1, X2, X3),
                    U102(mark X1, X2, X3) -> U102(X1, X2, X3),
                  U102(active X1, X2, X3) -> U102(X1, X2, X3),
                         isNatKind mark X -> isNatKind X,
                       isNatKind active X -> isNatKind X,
                    U101(X1, X2, mark X3) -> U101(X1, X2, X3),
                  U101(X1, X2, active X3) -> U101(X1, X2, X3),
                    U101(X1, mark X2, X3) -> U101(X1, X2, X3),
                  U101(X1, active X2, X3) -> U101(X1, X2, X3),
                    U101(mark X1, X2, X3) -> U101(X1, X2, X3),
                  U101(active X1, X2, X3) -> U101(X1, X2, X3),
                    U103(X1, X2, mark X3) -> U103(X1, X2, X3),
                  U103(X1, X2, active X3) -> U103(X1, X2, X3),
                    U103(X1, mark X2, X3) -> U103(X1, X2, X3),
                  U103(X1, active X2, X3) -> U103(X1, X2, X3),
                    U103(mark X1, X2, X3) -> U103(X1, X2, X3),
                  U103(active X1, X2, X3) -> U103(X1, X2, X3),
                    isNatIListKind mark X -> isNatIListKind X,
                  isNatIListKind active X -> isNatIListKind X,
                    U104(X1, X2, mark X3) -> U104(X1, X2, X3),
                  U104(X1, X2, active X3) -> U104(X1, X2, X3),
                    U104(X1, mark X2, X3) -> U104(X1, X2, X3),
                  U104(X1, active X2, X3) -> U104(X1, X2, X3),
                    U104(mark X1, X2, X3) -> U104(X1, X2, X3),
                  U104(active X1, X2, X3) -> U104(X1, X2, X3),
                        U105(X1, mark X2) -> U105(X1, X2),
                      U105(X1, active X2) -> U105(X1, X2),
                        U105(mark X1, X2) -> U105(X1, X2),
                      U105(active X1, X2) -> U105(X1, X2),
                             isNat mark X -> isNat X,
                           isNat active X -> isNat X,
                              U106 mark X -> U106 X,
                            U106 active X -> U106 X,
                        isNatIList mark X -> isNatIList X,
                      isNatIList active X -> isNatIList X,
                         U12(X1, mark X2) -> U12(X1, X2),
                       U12(X1, active X2) -> U12(X1, X2),
                         U12(mark X1, X2) -> U12(X1, X2),
                       U12(active X1, X2) -> U12(X1, X2),
                         U11(X1, mark X2) -> U11(X1, X2),
                       U11(X1, active X2) -> U11(X1, X2),
                         U11(mark X1, X2) -> U11(X1, X2),
                       U11(active X1, X2) -> U11(X1, X2),
                    U112(X1, X2, mark X3) -> U112(X1, X2, X3),
                  U112(X1, X2, active X3) -> U112(X1, X2, X3),
                    U112(X1, mark X2, X3) -> U112(X1, X2, X3),
                  U112(X1, active X2, X3) -> U112(X1, X2, X3),
                    U112(mark X1, X2, X3) -> U112(X1, X2, X3),
                  U112(active X1, X2, X3) -> U112(X1, X2, X3),
                    U111(X1, X2, mark X3) -> U111(X1, X2, X3),
                  U111(X1, X2, active X3) -> U111(X1, X2, X3),
                    U111(X1, mark X2, X3) -> U111(X1, X2, X3),
                  U111(X1, active X2, X3) -> U111(X1, X2, X3),
                    U111(mark X1, X2, X3) -> U111(X1, X2, X3),
                  U111(active X1, X2, X3) -> U111(X1, X2, X3),
                    U113(X1, X2, mark X3) -> U113(X1, X2, X3),
                  U113(X1, X2, active X3) -> U113(X1, X2, X3),
                    U113(X1, mark X2, X3) -> U113(X1, X2, X3),
                  U113(X1, active X2, X3) -> U113(X1, X2, X3),
                    U113(mark X1, X2, X3) -> U113(X1, X2, X3),
                  U113(active X1, X2, X3) -> U113(X1, X2, X3),
                        U114(X1, mark X2) -> U114(X1, X2),
                      U114(X1, active X2) -> U114(X1, X2),
                        U114(mark X1, X2) -> U114(X1, X2),
                      U114(active X1, X2) -> U114(X1, X2),
                                 s mark X -> s X,
                               s active X -> s X,
                            length mark X -> length X,
                          length active X -> length X,
                               U13 mark X -> U13 X,
                             U13 active X -> U13 X,
                         isNatList mark X -> isNatList X,
                       isNatList active X -> isNatList X,
                              U122 mark X -> U122 X,
                            U122 active X -> U122 X,
                        U121(X1, mark X2) -> U121(X1, X2),
                      U121(X1, active X2) -> U121(X1, X2),
                        U121(mark X1, X2) -> U121(X1, X2),
                      U121(active X1, X2) -> U121(X1, X2),
                U132(X1, X2, X3, mark X4) -> U132(X1, X2, X3, X4),
              U132(X1, X2, X3, active X4) -> U132(X1, X2, X3, X4),
                U132(X1, X2, mark X3, X4) -> U132(X1, X2, X3, X4),
              U132(X1, X2, active X3, X4) -> U132(X1, X2, X3, X4),
                U132(X1, mark X2, X3, X4) -> U132(X1, X2, X3, X4),
              U132(X1, active X2, X3, X4) -> U132(X1, X2, X3, X4),
                U132(mark X1, X2, X3, X4) -> U132(X1, X2, X3, X4),
              U132(active X1, X2, X3, X4) -> U132(X1, X2, X3, X4),
                U131(X1, X2, X3, mark X4) -> U131(X1, X2, X3, X4),
              U131(X1, X2, X3, active X4) -> U131(X1, X2, X3, X4),
                U131(X1, X2, mark X3, X4) -> U131(X1, X2, X3, X4),
              U131(X1, X2, active X3, X4) -> U131(X1, X2, X3, X4),
                U131(X1, mark X2, X3, X4) -> U131(X1, X2, X3, X4),
              U131(X1, active X2, X3, X4) -> U131(X1, X2, X3, X4),
                U131(mark X1, X2, X3, X4) -> U131(X1, X2, X3, X4),
              U131(active X1, X2, X3, X4) -> U131(X1, X2, X3, X4),
                U133(X1, X2, X3, mark X4) -> U133(X1, X2, X3, X4),
              U133(X1, X2, X3, active X4) -> U133(X1, X2, X3, X4),
                U133(X1, X2, mark X3, X4) -> U133(X1, X2, X3, X4),
              U133(X1, X2, active X3, X4) -> U133(X1, X2, X3, X4),
                U133(X1, mark X2, X3, X4) -> U133(X1, X2, X3, X4),
              U133(X1, active X2, X3, X4) -> U133(X1, X2, X3, X4),
                U133(mark X1, X2, X3, X4) -> U133(X1, X2, X3, X4),
              U133(active X1, X2, X3, X4) -> U133(X1, X2, X3, X4),
                U134(X1, X2, X3, mark X4) -> U134(X1, X2, X3, X4),
              U134(X1, X2, X3, active X4) -> U134(X1, X2, X3, X4),
                U134(X1, X2, mark X3, X4) -> U134(X1, X2, X3, X4),
              U134(X1, X2, active X3, X4) -> U134(X1, X2, X3, X4),
                U134(X1, mark X2, X3, X4) -> U134(X1, X2, X3, X4),
              U134(X1, active X2, X3, X4) -> U134(X1, X2, X3, X4),
                U134(mark X1, X2, X3, X4) -> U134(X1, X2, X3, X4),
              U134(active X1, X2, X3, X4) -> U134(X1, X2, X3, X4),
                U135(X1, X2, X3, mark X4) -> U135(X1, X2, X3, X4),
              U135(X1, X2, X3, active X4) -> U135(X1, X2, X3, X4),
                U135(X1, X2, mark X3, X4) -> U135(X1, X2, X3, X4),
              U135(X1, X2, active X3, X4) -> U135(X1, X2, X3, X4),
                U135(X1, mark X2, X3, X4) -> U135(X1, X2, X3, X4),
              U135(X1, active X2, X3, X4) -> U135(X1, X2, X3, X4),
                U135(mark X1, X2, X3, X4) -> U135(X1, X2, X3, X4),
              U135(active X1, X2, X3, X4) -> U135(X1, X2, X3, X4),
                U136(X1, X2, X3, mark X4) -> U136(X1, X2, X3, X4),
              U136(X1, X2, X3, active X4) -> U136(X1, X2, X3, X4),
                U136(X1, X2, mark X3, X4) -> U136(X1, X2, X3, X4),
              U136(X1, X2, active X3, X4) -> U136(X1, X2, X3, X4),
                U136(X1, mark X2, X3, X4) -> U136(X1, X2, X3, X4),
              U136(X1, active X2, X3, X4) -> U136(X1, X2, X3, X4),
                U136(mark X1, X2, X3, X4) -> U136(X1, X2, X3, X4),
              U136(active X1, X2, X3, X4) -> U136(X1, X2, X3, X4),
                        take(X1, mark X2) -> take(X1, X2),
                      take(X1, active X2) -> take(X1, X2),
                        take(mark X1, X2) -> take(X1, X2),
                      take(active X1, X2) -> take(X1, X2),
                         U22(X1, mark X2) -> U22(X1, X2),
                       U22(X1, active X2) -> U22(X1, X2),
                         U22(mark X1, X2) -> U22(X1, X2),
                       U22(active X1, X2) -> U22(X1, X2),
                         U21(X1, mark X2) -> U21(X1, X2),
                       U21(X1, active X2) -> U21(X1, X2),
                         U21(mark X1, X2) -> U21(X1, X2),
                       U21(active X1, X2) -> U21(X1, X2),
                               U23 mark X -> U23 X,
                             U23 active X -> U23 X,
                         U32(X1, mark X2) -> U32(X1, X2),
                       U32(X1, active X2) -> U32(X1, X2),
                         U32(mark X1, X2) -> U32(X1, X2),
                       U32(active X1, X2) -> U32(X1, X2),
                         U31(X1, mark X2) -> U31(X1, X2),
                       U31(X1, active X2) -> U31(X1, X2),
                         U31(mark X1, X2) -> U31(X1, X2),
                       U31(active X1, X2) -> U31(X1, X2),
                               U33 mark X -> U33 X,
                             U33 active X -> U33 X,
                     U42(X1, X2, mark X3) -> U42(X1, X2, X3),
                   U42(X1, X2, active X3) -> U42(X1, X2, X3),
                     U42(X1, mark X2, X3) -> U42(X1, X2, X3),
                   U42(X1, active X2, X3) -> U42(X1, X2, X3),
                     U42(mark X1, X2, X3) -> U42(X1, X2, X3),
                   U42(active X1, X2, X3) -> U42(X1, X2, X3),
                     U41(X1, X2, mark X3) -> U41(X1, X2, X3),
                   U41(X1, X2, active X3) -> U41(X1, X2, X3),
                     U41(X1, mark X2, X3) -> U41(X1, X2, X3),
                   U41(X1, active X2, X3) -> U41(X1, X2, X3),
                     U41(mark X1, X2, X3) -> U41(X1, X2, X3),
                   U41(active X1, X2, X3) -> U41(X1, X2, X3),
                     U43(X1, X2, mark X3) -> U43(X1, X2, X3),
                   U43(X1, X2, active X3) -> U43(X1, X2, X3),
                     U43(X1, mark X2, X3) -> U43(X1, X2, X3),
                   U43(X1, active X2, X3) -> U43(X1, X2, X3),
                     U43(mark X1, X2, X3) -> U43(X1, X2, X3),
                   U43(active X1, X2, X3) -> U43(X1, X2, X3),
                     U44(X1, X2, mark X3) -> U44(X1, X2, X3),
                   U44(X1, X2, active X3) -> U44(X1, X2, X3),
                     U44(X1, mark X2, X3) -> U44(X1, X2, X3),
                   U44(X1, active X2, X3) -> U44(X1, X2, X3),
                     U44(mark X1, X2, X3) -> U44(X1, X2, X3),
                   U44(active X1, X2, X3) -> U44(X1, X2, X3),
                         U45(X1, mark X2) -> U45(X1, X2),
                       U45(X1, active X2) -> U45(X1, X2),
                         U45(mark X1, X2) -> U45(X1, X2),
                       U45(active X1, X2) -> U45(X1, X2),
                               U46 mark X -> U46 X,
                             U46 active X -> U46 X,
                               U52 mark X -> U52 X,
                             U52 active X -> U52 X,
                         U51(X1, mark X2) -> U51(X1, X2),
                       U51(X1, active X2) -> U51(X1, X2),
                         U51(mark X1, X2) -> U51(X1, X2),
                       U51(active X1, X2) -> U51(X1, X2),
                               U62 mark X -> U62 X,
                             U62 active X -> U62 X,
                         U61(X1, mark X2) -> U61(X1, X2),
                       U61(X1, active X2) -> U61(X1, X2),
                         U61(mark X1, X2) -> U61(X1, X2),
                       U61(active X1, X2) -> U61(X1, X2),
                               U71 mark X -> U71 X,
                             U71 active X -> U71 X,
                               U81 mark X -> U81 X,
                             U81 active X -> U81 X,
                     U92(X1, X2, mark X3) -> U92(X1, X2, X3),
                   U92(X1, X2, active X3) -> U92(X1, X2, X3),
                     U92(X1, mark X2, X3) -> U92(X1, X2, X3),
                   U92(X1, active X2, X3) -> U92(X1, X2, X3),
                     U92(mark X1, X2, X3) -> U92(X1, X2, X3),
                   U92(active X1, X2, X3) -> U92(X1, X2, X3),
                     U91(X1, X2, mark X3) -> U91(X1, X2, X3),
                   U91(X1, X2, active X3) -> U91(X1, X2, X3),
                     U91(X1, mark X2, X3) -> U91(X1, X2, X3),
                   U91(X1, active X2, X3) -> U91(X1, X2, X3),
                     U91(mark X1, X2, X3) -> U91(X1, X2, X3),
                   U91(active X1, X2, X3) -> U91(X1, X2, X3),
                     U93(X1, X2, mark X3) -> U93(X1, X2, X3),
                   U93(X1, X2, active X3) -> U93(X1, X2, X3),
                     U93(X1, mark X2, X3) -> U93(X1, X2, X3),
                   U93(X1, active X2, X3) -> U93(X1, X2, X3),
                     U93(mark X1, X2, X3) -> U93(X1, X2, X3),
                   U93(active X1, X2, X3) -> U93(X1, X2, X3),
                     U94(X1, X2, mark X3) -> U94(X1, X2, X3),
                   U94(X1, X2, active X3) -> U94(X1, X2, X3),
                     U94(X1, mark X2, X3) -> U94(X1, X2, X3),
                   U94(X1, active X2, X3) -> U94(X1, X2, X3),
                     U94(mark X1, X2, X3) -> U94(X1, X2, X3),
                   U94(active X1, X2, X3) -> U94(X1, X2, X3),
                         U95(X1, mark X2) -> U95(X1, X2),
                       U95(X1, active X2) -> U95(X1, X2),
                         U95(mark X1, X2) -> U95(X1, X2),
                       U95(active X1, X2) -> U95(X1, X2),
                               U96 mark X -> U96 X,
                             U96 active X -> U96 X
      }
      Open
     
     
     
     
     SCC (4):
      Strict:
       {  U105#(X1, mark X2) -> U105#(X1, X2),
        U105#(X1, active X2) -> U105#(X1, X2),
          U105#(mark X1, X2) -> U105#(X1, X2),
        U105#(active X1, X2) -> U105#(X1, X2)}
      Weak:
      {
                        mark cons(X1, X2) -> active cons(mark X1, X2),
                                 mark 0() -> active 0(),
                             mark zeros() -> active zeros(),
                    mark U102(X1, X2, X3) -> active U102(mark X1, X2, X3),
                         mark isNatKind X -> active isNatKind X,
                    mark U101(X1, X2, X3) -> active U101(mark X1, X2, X3),
                                mark tt() -> active tt(),
                    mark U103(X1, X2, X3) -> active U103(mark X1, X2, X3),
                    mark isNatIListKind X -> active isNatIListKind X,
                    mark U104(X1, X2, X3) -> active U104(mark X1, X2, X3),
                        mark U105(X1, X2) -> active U105(mark X1, X2),
                             mark isNat X -> active isNat X,
                              mark U106 X -> active U106 mark X,
                        mark isNatIList X -> active isNatIList X,
                         mark U12(X1, X2) -> active U12(mark X1, X2),
                         mark U11(X1, X2) -> active U11(mark X1, X2),
                    mark U112(X1, X2, X3) -> active U112(mark X1, X2, X3),
                    mark U111(X1, X2, X3) -> active U111(mark X1, X2, X3),
                    mark U113(X1, X2, X3) -> active U113(mark X1, X2, X3),
                        mark U114(X1, X2) -> active U114(mark X1, X2),
                                 mark s X -> active s mark X,
                            mark length X -> active length mark X,
                               mark U13 X -> active U13 mark X,
                         mark isNatList X -> active isNatList X,
                              mark U122 X -> active U122 mark X,
                        mark U121(X1, X2) -> active U121(mark X1, X2),
                               mark nil() -> active nil(),
                mark U132(X1, X2, X3, X4) -> active U132(mark X1, X2, X3, X4),
                mark U131(X1, X2, X3, X4) -> active U131(mark X1, X2, X3, X4),
                mark U133(X1, X2, X3, X4) -> active U133(mark X1, X2, X3, X4),
                mark U134(X1, X2, X3, X4) -> active U134(mark X1, X2, X3, X4),
                mark U135(X1, X2, X3, X4) -> active U135(mark X1, X2, X3, X4),
                mark U136(X1, X2, X3, X4) -> active U136(mark X1, X2, X3, X4),
                        mark take(X1, X2) -> active take(mark X1, mark X2),
                         mark U22(X1, X2) -> active U22(mark X1, X2),
                         mark U21(X1, X2) -> active U21(mark X1, X2),
                               mark U23 X -> active U23 mark X,
                         mark U32(X1, X2) -> active U32(mark X1, X2),
                         mark U31(X1, X2) -> active U31(mark X1, X2),
                               mark U33 X -> active U33 mark X,
                     mark U42(X1, X2, X3) -> active U42(mark X1, X2, X3),
                     mark U41(X1, X2, X3) -> active U41(mark X1, X2, X3),
                     mark U43(X1, X2, X3) -> active U43(mark X1, X2, X3),
                     mark U44(X1, X2, X3) -> active U44(mark X1, X2, X3),
                         mark U45(X1, X2) -> active U45(mark X1, X2),
                               mark U46 X -> active U46 mark X,
                               mark U52 X -> active U52 mark X,
                         mark U51(X1, X2) -> active U51(mark X1, X2),
                               mark U62 X -> active U62 mark X,
                         mark U61(X1, X2) -> active U61(mark X1, X2),
                               mark U71 X -> active U71 mark X,
                               mark U81 X -> active U81 mark X,
                     mark U92(X1, X2, X3) -> active U92(mark X1, X2, X3),
                     mark U91(X1, X2, X3) -> active U91(mark X1, X2, X3),
                     mark U93(X1, X2, X3) -> active U93(mark X1, X2, X3),
                     mark U94(X1, X2, X3) -> active U94(mark X1, X2, X3),
                         mark U95(X1, X2) -> active U95(mark X1, X2),
                               mark U96 X -> active U96 mark X,
                        cons(X1, mark X2) -> cons(X1, X2),
                      cons(X1, active X2) -> cons(X1, X2),
                        cons(mark X1, X2) -> cons(X1, X2),
                      cons(active X1, X2) -> cons(X1, X2),
                           active zeros() -> mark cons(0(), zeros()),
                active U102(tt(), V1, V2) -> mark U103(isNatIListKind V2, V1, V2),
                     active isNatKind 0() -> mark tt(),
                    active isNatKind s V1 -> mark U81 isNatKind V1,
               active isNatKind length V1 -> mark U71 isNatIListKind V1,
                active U101(tt(), V1, V2) -> mark U102(isNatKind V1, V1, V2),
                active U103(tt(), V1, V2) -> mark U104(isNatIListKind V2, V1, V2),
       active isNatIListKind cons(V1, V2) -> mark U51(isNatKind V1, V2),
            active isNatIListKind zeros() -> mark tt(),
              active isNatIListKind nil() -> mark tt(),
       active isNatIListKind take(V1, V2) -> mark U61(isNatKind V1, V2),
                active U104(tt(), V1, V2) -> mark U105(isNat V1, V2),
                    active U105(tt(), V2) -> mark U106 isNatIList V2,
                         active isNat 0() -> mark tt(),
                        active isNat s V1 -> mark U21(isNatKind V1, V1),
                   active isNat length V1 -> mark U11(isNatIListKind V1, V1),
                         active U106 tt() -> mark tt(),
                      active isNatIList V -> mark U31(isNatIListKind V, V),
           active isNatIList cons(V1, V2) -> mark U41(isNatKind V1, V1, V2),
                active isNatIList zeros() -> mark tt(),
                     active U12(tt(), V1) -> mark U13 isNatList V1,
                     active U11(tt(), V1) -> mark U12(isNatIListKind V1, V1),
                  active U112(tt(), L, N) -> mark U113(isNat N, L, N),
                  active U111(tt(), L, N) -> mark U112(isNatIListKind L, L, N),
                  active U113(tt(), L, N) -> mark U114(isNatKind N, L),
                     active U114(tt(), L) -> mark s length L,
                 active length cons(N, L) -> mark U111(isNatList L, L, N),
                      active length nil() -> mark 0(),
                          active U13 tt() -> mark tt(),
            active isNatList cons(V1, V2) -> mark U91(isNatKind V1, V1, V2),
                   active isNatList nil() -> mark tt(),
            active isNatList take(V1, V2) -> mark U101(isNatKind V1, V1, V2),
                         active U122 tt() -> mark nil(),
                    active U121(tt(), IL) -> mark U122 isNatIListKind IL,
              active U132(tt(), IL, M, N) -> mark U133(isNat M, IL, M, N),
              active U131(tt(), IL, M, N) -> mark U132(isNatIListKind IL, IL, M, N),
              active U133(tt(), IL, M, N) -> mark U134(isNatKind M, IL, M, N),
              active U134(tt(), IL, M, N) -> mark U135(isNat N, IL, M, N),
              active U135(tt(), IL, M, N) -> mark U136(isNatKind N, IL, M, N),
              active U136(tt(), IL, M, N) -> mark cons(N, take(M, IL)),
                     active take(0(), IL) -> mark U121(isNatIList IL, IL),
            active take(s M, cons(N, IL)) -> mark U131(isNatIList IL, IL, M, N),
                     active U22(tt(), V1) -> mark U23 isNat V1,
                     active U21(tt(), V1) -> mark U22(isNatKind V1, V1),
                          active U23 tt() -> mark tt(),
                      active U32(tt(), V) -> mark U33 isNatList V,
                      active U31(tt(), V) -> mark U32(isNatIListKind V, V),
                          active U33 tt() -> mark tt(),
                 active U42(tt(), V1, V2) -> mark U43(isNatIListKind V2, V1, V2),
                 active U41(tt(), V1, V2) -> mark U42(isNatKind V1, V1, V2),
                 active U43(tt(), V1, V2) -> mark U44(isNatIListKind V2, V1, V2),
                 active U44(tt(), V1, V2) -> mark U45(isNat V1, V2),
                     active U45(tt(), V2) -> mark U46 isNatIList V2,
                          active U46 tt() -> mark tt(),
                          active U52 tt() -> mark tt(),
                     active U51(tt(), V2) -> mark U52 isNatIListKind V2,
                          active U62 tt() -> mark tt(),
                     active U61(tt(), V2) -> mark U62 isNatIListKind V2,
                          active U71 tt() -> mark tt(),
                          active U81 tt() -> mark tt(),
                 active U92(tt(), V1, V2) -> mark U93(isNatIListKind V2, V1, V2),
                 active U91(tt(), V1, V2) -> mark U92(isNatKind V1, V1, V2),
                 active U93(tt(), V1, V2) -> mark U94(isNatIListKind V2, V1, V2),
                 active U94(tt(), V1, V2) -> mark U95(isNat V1, V2),
                     active U95(tt(), V2) -> mark U96 isNatList V2,
                          active U96 tt() -> mark tt(),
                    U102(X1, X2, mark X3) -> U102(X1, X2, X3),
                  U102(X1, X2, active X3) -> U102(X1, X2, X3),
                    U102(X1, mark X2, X3) -> U102(X1, X2, X3),
                  U102(X1, active X2, X3) -> U102(X1, X2, X3),
                    U102(mark X1, X2, X3) -> U102(X1, X2, X3),
                  U102(active X1, X2, X3) -> U102(X1, X2, X3),
                         isNatKind mark X -> isNatKind X,
                       isNatKind active X -> isNatKind X,
                    U101(X1, X2, mark X3) -> U101(X1, X2, X3),
                  U101(X1, X2, active X3) -> U101(X1, X2, X3),
                    U101(X1, mark X2, X3) -> U101(X1, X2, X3),
                  U101(X1, active X2, X3) -> U101(X1, X2, X3),
                    U101(mark X1, X2, X3) -> U101(X1, X2, X3),
                  U101(active X1, X2, X3) -> U101(X1, X2, X3),
                    U103(X1, X2, mark X3) -> U103(X1, X2, X3),
                  U103(X1, X2, active X3) -> U103(X1, X2, X3),
                    U103(X1, mark X2, X3) -> U103(X1, X2, X3),
                  U103(X1, active X2, X3) -> U103(X1, X2, X3),
                    U103(mark X1, X2, X3) -> U103(X1, X2, X3),
                  U103(active X1, X2, X3) -> U103(X1, X2, X3),
                    isNatIListKind mark X -> isNatIListKind X,
                  isNatIListKind active X -> isNatIListKind X,
                    U104(X1, X2, mark X3) -> U104(X1, X2, X3),
                  U104(X1, X2, active X3) -> U104(X1, X2, X3),
                    U104(X1, mark X2, X3) -> U104(X1, X2, X3),
                  U104(X1, active X2, X3) -> U104(X1, X2, X3),
                    U104(mark X1, X2, X3) -> U104(X1, X2, X3),
                  U104(active X1, X2, X3) -> U104(X1, X2, X3),
                        U105(X1, mark X2) -> U105(X1, X2),
                      U105(X1, active X2) -> U105(X1, X2),
                        U105(mark X1, X2) -> U105(X1, X2),
                      U105(active X1, X2) -> U105(X1, X2),
                             isNat mark X -> isNat X,
                           isNat active X -> isNat X,
                              U106 mark X -> U106 X,
                            U106 active X -> U106 X,
                        isNatIList mark X -> isNatIList X,
                      isNatIList active X -> isNatIList X,
                         U12(X1, mark X2) -> U12(X1, X2),
                       U12(X1, active X2) -> U12(X1, X2),
                         U12(mark X1, X2) -> U12(X1, X2),
                       U12(active X1, X2) -> U12(X1, X2),
                         U11(X1, mark X2) -> U11(X1, X2),
                       U11(X1, active X2) -> U11(X1, X2),
                         U11(mark X1, X2) -> U11(X1, X2),
                       U11(active X1, X2) -> U11(X1, X2),
                    U112(X1, X2, mark X3) -> U112(X1, X2, X3),
                  U112(X1, X2, active X3) -> U112(X1, X2, X3),
                    U112(X1, mark X2, X3) -> U112(X1, X2, X3),
                  U112(X1, active X2, X3) -> U112(X1, X2, X3),
                    U112(mark X1, X2, X3) -> U112(X1, X2, X3),
                  U112(active X1, X2, X3) -> U112(X1, X2, X3),
                    U111(X1, X2, mark X3) -> U111(X1, X2, X3),
                  U111(X1, X2, active X3) -> U111(X1, X2, X3),
                    U111(X1, mark X2, X3) -> U111(X1, X2, X3),
                  U111(X1, active X2, X3) -> U111(X1, X2, X3),
                    U111(mark X1, X2, X3) -> U111(X1, X2, X3),
                  U111(active X1, X2, X3) -> U111(X1, X2, X3),
                    U113(X1, X2, mark X3) -> U113(X1, X2, X3),
                  U113(X1, X2, active X3) -> U113(X1, X2, X3),
                    U113(X1, mark X2, X3) -> U113(X1, X2, X3),
                  U113(X1, active X2, X3) -> U113(X1, X2, X3),
                    U113(mark X1, X2, X3) -> U113(X1, X2, X3),
                  U113(active X1, X2, X3) -> U113(X1, X2, X3),
                        U114(X1, mark X2) -> U114(X1, X2),
                      U114(X1, active X2) -> U114(X1, X2),
                        U114(mark X1, X2) -> U114(X1, X2),
                      U114(active X1, X2) -> U114(X1, X2),
                                 s mark X -> s X,
                               s active X -> s X,
                            length mark X -> length X,
                          length active X -> length X,
                               U13 mark X -> U13 X,
                             U13 active X -> U13 X,
                         isNatList mark X -> isNatList X,
                       isNatList active X -> isNatList X,
                              U122 mark X -> U122 X,
                            U122 active X -> U122 X,
                        U121(X1, mark X2) -> U121(X1, X2),
                      U121(X1, active X2) -> U121(X1, X2),
                        U121(mark X1, X2) -> U121(X1, X2),
                      U121(active X1, X2) -> U121(X1, X2),
                U132(X1, X2, X3, mark X4) -> U132(X1, X2, X3, X4),
              U132(X1, X2, X3, active X4) -> U132(X1, X2, X3, X4),
                U132(X1, X2, mark X3, X4) -> U132(X1, X2, X3, X4),
              U132(X1, X2, active X3, X4) -> U132(X1, X2, X3, X4),
                U132(X1, mark X2, X3, X4) -> U132(X1, X2, X3, X4),
              U132(X1, active X2, X3, X4) -> U132(X1, X2, X3, X4),
                U132(mark X1, X2, X3, X4) -> U132(X1, X2, X3, X4),
              U132(active X1, X2, X3, X4) -> U132(X1, X2, X3, X4),
                U131(X1, X2, X3, mark X4) -> U131(X1, X2, X3, X4),
              U131(X1, X2, X3, active X4) -> U131(X1, X2, X3, X4),
                U131(X1, X2, mark X3, X4) -> U131(X1, X2, X3, X4),
              U131(X1, X2, active X3, X4) -> U131(X1, X2, X3, X4),
                U131(X1, mark X2, X3, X4) -> U131(X1, X2, X3, X4),
              U131(X1, active X2, X3, X4) -> U131(X1, X2, X3, X4),
                U131(mark X1, X2, X3, X4) -> U131(X1, X2, X3, X4),
              U131(active X1, X2, X3, X4) -> U131(X1, X2, X3, X4),
                U133(X1, X2, X3, mark X4) -> U133(X1, X2, X3, X4),
              U133(X1, X2, X3, active X4) -> U133(X1, X2, X3, X4),
                U133(X1, X2, mark X3, X4) -> U133(X1, X2, X3, X4),
              U133(X1, X2, active X3, X4) -> U133(X1, X2, X3, X4),
                U133(X1, mark X2, X3, X4) -> U133(X1, X2, X3, X4),
              U133(X1, active X2, X3, X4) -> U133(X1, X2, X3, X4),
                U133(mark X1, X2, X3, X4) -> U133(X1, X2, X3, X4),
              U133(active X1, X2, X3, X4) -> U133(X1, X2, X3, X4),
                U134(X1, X2, X3, mark X4) -> U134(X1, X2, X3, X4),
              U134(X1, X2, X3, active X4) -> U134(X1, X2, X3, X4),
                U134(X1, X2, mark X3, X4) -> U134(X1, X2, X3, X4),
              U134(X1, X2, active X3, X4) -> U134(X1, X2, X3, X4),
                U134(X1, mark X2, X3, X4) -> U134(X1, X2, X3, X4),
              U134(X1, active X2, X3, X4) -> U134(X1, X2, X3, X4),
                U134(mark X1, X2, X3, X4) -> U134(X1, X2, X3, X4),
              U134(active X1, X2, X3, X4) -> U134(X1, X2, X3, X4),
                U135(X1, X2, X3, mark X4) -> U135(X1, X2, X3, X4),
              U135(X1, X2, X3, active X4) -> U135(X1, X2, X3, X4),
                U135(X1, X2, mark X3, X4) -> U135(X1, X2, X3, X4),
              U135(X1, X2, active X3, X4) -> U135(X1, X2, X3, X4),
                U135(X1, mark X2, X3, X4) -> U135(X1, X2, X3, X4),
              U135(X1, active X2, X3, X4) -> U135(X1, X2, X3, X4),
                U135(mark X1, X2, X3, X4) -> U135(X1, X2, X3, X4),
              U135(active X1, X2, X3, X4) -> U135(X1, X2, X3, X4),
                U136(X1, X2, X3, mark X4) -> U136(X1, X2, X3, X4),
              U136(X1, X2, X3, active X4) -> U136(X1, X2, X3, X4),
                U136(X1, X2, mark X3, X4) -> U136(X1, X2, X3, X4),
              U136(X1, X2, active X3, X4) -> U136(X1, X2, X3, X4),
                U136(X1, mark X2, X3, X4) -> U136(X1, X2, X3, X4),
              U136(X1, active X2, X3, X4) -> U136(X1, X2, X3, X4),
                U136(mark X1, X2, X3, X4) -> U136(X1, X2, X3, X4),
              U136(active X1, X2, X3, X4) -> U136(X1, X2, X3, X4),
                        take(X1, mark X2) -> take(X1, X2),
                      take(X1, active X2) -> take(X1, X2),
                        take(mark X1, X2) -> take(X1, X2),
                      take(active X1, X2) -> take(X1, X2),
                         U22(X1, mark X2) -> U22(X1, X2),
                       U22(X1, active X2) -> U22(X1, X2),
                         U22(mark X1, X2) -> U22(X1, X2),
                       U22(active X1, X2) -> U22(X1, X2),
                         U21(X1, mark X2) -> U21(X1, X2),
                       U21(X1, active X2) -> U21(X1, X2),
                         U21(mark X1, X2) -> U21(X1, X2),
                       U21(active X1, X2) -> U21(X1, X2),
                               U23 mark X -> U23 X,
                             U23 active X -> U23 X,
                         U32(X1, mark X2) -> U32(X1, X2),
                       U32(X1, active X2) -> U32(X1, X2),
                         U32(mark X1, X2) -> U32(X1, X2),
                       U32(active X1, X2) -> U32(X1, X2),
                         U31(X1, mark X2) -> U31(X1, X2),
                       U31(X1, active X2) -> U31(X1, X2),
                         U31(mark X1, X2) -> U31(X1, X2),
                       U31(active X1, X2) -> U31(X1, X2),
                               U33 mark X -> U33 X,
                             U33 active X -> U33 X,
                     U42(X1, X2, mark X3) -> U42(X1, X2, X3),
                   U42(X1, X2, active X3) -> U42(X1, X2, X3),
                     U42(X1, mark X2, X3) -> U42(X1, X2, X3),
                   U42(X1, active X2, X3) -> U42(X1, X2, X3),
                     U42(mark X1, X2, X3) -> U42(X1, X2, X3),
                   U42(active X1, X2, X3) -> U42(X1, X2, X3),
                     U41(X1, X2, mark X3) -> U41(X1, X2, X3),
                   U41(X1, X2, active X3) -> U41(X1, X2, X3),
                     U41(X1, mark X2, X3) -> U41(X1, X2, X3),
                   U41(X1, active X2, X3) -> U41(X1, X2, X3),
                     U41(mark X1, X2, X3) -> U41(X1, X2, X3),
                   U41(active X1, X2, X3) -> U41(X1, X2, X3),
                     U43(X1, X2, mark X3) -> U43(X1, X2, X3),
                   U43(X1, X2, active X3) -> U43(X1, X2, X3),
                     U43(X1, mark X2, X3) -> U43(X1, X2, X3),
                   U43(X1, active X2, X3) -> U43(X1, X2, X3),
                     U43(mark X1, X2, X3) -> U43(X1, X2, X3),
                   U43(active X1, X2, X3) -> U43(X1, X2, X3),
                     U44(X1, X2, mark X3) -> U44(X1, X2, X3),
                   U44(X1, X2, active X3) -> U44(X1, X2, X3),
                     U44(X1, mark X2, X3) -> U44(X1, X2, X3),
                   U44(X1, active X2, X3) -> U44(X1, X2, X3),
                     U44(mark X1, X2, X3) -> U44(X1, X2, X3),
                   U44(active X1, X2, X3) -> U44(X1, X2, X3),
                         U45(X1, mark X2) -> U45(X1, X2),
                       U45(X1, active X2) -> U45(X1, X2),
                         U45(mark X1, X2) -> U45(X1, X2),
                       U45(active X1, X2) -> U45(X1, X2),
                               U46 mark X -> U46 X,
                             U46 active X -> U46 X,
                               U52 mark X -> U52 X,
                             U52 active X -> U52 X,
                         U51(X1, mark X2) -> U51(X1, X2),
                       U51(X1, active X2) -> U51(X1, X2),
                         U51(mark X1, X2) -> U51(X1, X2),
                       U51(active X1, X2) -> U51(X1, X2),
                               U62 mark X -> U62 X,
                             U62 active X -> U62 X,
                         U61(X1, mark X2) -> U61(X1, X2),
                       U61(X1, active X2) -> U61(X1, X2),
                         U61(mark X1, X2) -> U61(X1, X2),
                       U61(active X1, X2) -> U61(X1, X2),
                               U71 mark X -> U71 X,
                             U71 active X -> U71 X,
                               U81 mark X -> U81 X,
                             U81 active X -> U81 X,
                     U92(X1, X2, mark X3) -> U92(X1, X2, X3),
                   U92(X1, X2, active X3) -> U92(X1, X2, X3),
                     U92(X1, mark X2, X3) -> U92(X1, X2, X3),
                   U92(X1, active X2, X3) -> U92(X1, X2, X3),
                     U92(mark X1, X2, X3) -> U92(X1, X2, X3),
                   U92(active X1, X2, X3) -> U92(X1, X2, X3),
                     U91(X1, X2, mark X3) -> U91(X1, X2, X3),
                   U91(X1, X2, active X3) -> U91(X1, X2, X3),
                     U91(X1, mark X2, X3) -> U91(X1, X2, X3),
                   U91(X1, active X2, X3) -> U91(X1, X2, X3),
                     U91(mark X1, X2, X3) -> U91(X1, X2, X3),
                   U91(active X1, X2, X3) -> U91(X1, X2, X3),
                     U93(X1, X2, mark X3) -> U93(X1, X2, X3),
                   U93(X1, X2, active X3) -> U93(X1, X2, X3),
                     U93(X1, mark X2, X3) -> U93(X1, X2, X3),
                   U93(X1, active X2, X3) -> U93(X1, X2, X3),
                     U93(mark X1, X2, X3) -> U93(X1, X2, X3),
                   U93(active X1, X2, X3) -> U93(X1, X2, X3),
                     U94(X1, X2, mark X3) -> U94(X1, X2, X3),
                   U94(X1, X2, active X3) -> U94(X1, X2, X3),
                     U94(X1, mark X2, X3) -> U94(X1, X2, X3),
                   U94(X1, active X2, X3) -> U94(X1, X2, X3),
                     U94(mark X1, X2, X3) -> U94(X1, X2, X3),
                   U94(active X1, X2, X3) -> U94(X1, X2, X3),
                         U95(X1, mark X2) -> U95(X1, X2),
                       U95(X1, active X2) -> U95(X1, X2),
                         U95(mark X1, X2) -> U95(X1, X2),
                       U95(active X1, X2) -> U95(X1, X2),
                               U96 mark X -> U96 X,
                             U96 active X -> U96 X
      }
      Open
     
     SCC (6):
      Strict:
       {  U104#(X1, X2, mark X3) -> U104#(X1, X2, X3),
        U104#(X1, X2, active X3) -> U104#(X1, X2, X3),
          U104#(X1, mark X2, X3) -> U104#(X1, X2, X3),
        U104#(X1, active X2, X3) -> U104#(X1, X2, X3),
          U104#(mark X1, X2, X3) -> U104#(X1, X2, X3),
        U104#(active X1, X2, X3) -> U104#(X1, X2, X3)}
      Weak:
      {
                        mark cons(X1, X2) -> active cons(mark X1, X2),
                                 mark 0() -> active 0(),
                             mark zeros() -> active zeros(),
                    mark U102(X1, X2, X3) -> active U102(mark X1, X2, X3),
                         mark isNatKind X -> active isNatKind X,
                    mark U101(X1, X2, X3) -> active U101(mark X1, X2, X3),
                                mark tt() -> active tt(),
                    mark U103(X1, X2, X3) -> active U103(mark X1, X2, X3),
                    mark isNatIListKind X -> active isNatIListKind X,
                    mark U104(X1, X2, X3) -> active U104(mark X1, X2, X3),
                        mark U105(X1, X2) -> active U105(mark X1, X2),
                             mark isNat X -> active isNat X,
                              mark U106 X -> active U106 mark X,
                        mark isNatIList X -> active isNatIList X,
                         mark U12(X1, X2) -> active U12(mark X1, X2),
                         mark U11(X1, X2) -> active U11(mark X1, X2),
                    mark U112(X1, X2, X3) -> active U112(mark X1, X2, X3),
                    mark U111(X1, X2, X3) -> active U111(mark X1, X2, X3),
                    mark U113(X1, X2, X3) -> active U113(mark X1, X2, X3),
                        mark U114(X1, X2) -> active U114(mark X1, X2),
                                 mark s X -> active s mark X,
                            mark length X -> active length mark X,
                               mark U13 X -> active U13 mark X,
                         mark isNatList X -> active isNatList X,
                              mark U122 X -> active U122 mark X,
                        mark U121(X1, X2) -> active U121(mark X1, X2),
                               mark nil() -> active nil(),
                mark U132(X1, X2, X3, X4) -> active U132(mark X1, X2, X3, X4),
                mark U131(X1, X2, X3, X4) -> active U131(mark X1, X2, X3, X4),
                mark U133(X1, X2, X3, X4) -> active U133(mark X1, X2, X3, X4),
                mark U134(X1, X2, X3, X4) -> active U134(mark X1, X2, X3, X4),
                mark U135(X1, X2, X3, X4) -> active U135(mark X1, X2, X3, X4),
                mark U136(X1, X2, X3, X4) -> active U136(mark X1, X2, X3, X4),
                        mark take(X1, X2) -> active take(mark X1, mark X2),
                         mark U22(X1, X2) -> active U22(mark X1, X2),
                         mark U21(X1, X2) -> active U21(mark X1, X2),
                               mark U23 X -> active U23 mark X,
                         mark U32(X1, X2) -> active U32(mark X1, X2),
                         mark U31(X1, X2) -> active U31(mark X1, X2),
                               mark U33 X -> active U33 mark X,
                     mark U42(X1, X2, X3) -> active U42(mark X1, X2, X3),
                     mark U41(X1, X2, X3) -> active U41(mark X1, X2, X3),
                     mark U43(X1, X2, X3) -> active U43(mark X1, X2, X3),
                     mark U44(X1, X2, X3) -> active U44(mark X1, X2, X3),
                         mark U45(X1, X2) -> active U45(mark X1, X2),
                               mark U46 X -> active U46 mark X,
                               mark U52 X -> active U52 mark X,
                         mark U51(X1, X2) -> active U51(mark X1, X2),
                               mark U62 X -> active U62 mark X,
                         mark U61(X1, X2) -> active U61(mark X1, X2),
                               mark U71 X -> active U71 mark X,
                               mark U81 X -> active U81 mark X,
                     mark U92(X1, X2, X3) -> active U92(mark X1, X2, X3),
                     mark U91(X1, X2, X3) -> active U91(mark X1, X2, X3),
                     mark U93(X1, X2, X3) -> active U93(mark X1, X2, X3),
                     mark U94(X1, X2, X3) -> active U94(mark X1, X2, X3),
                         mark U95(X1, X2) -> active U95(mark X1, X2),
                               mark U96 X -> active U96 mark X,
                        cons(X1, mark X2) -> cons(X1, X2),
                      cons(X1, active X2) -> cons(X1, X2),
                        cons(mark X1, X2) -> cons(X1, X2),
                      cons(active X1, X2) -> cons(X1, X2),
                           active zeros() -> mark cons(0(), zeros()),
                active U102(tt(), V1, V2) -> mark U103(isNatIListKind V2, V1, V2),
                     active isNatKind 0() -> mark tt(),
                    active isNatKind s V1 -> mark U81 isNatKind V1,
               active isNatKind length V1 -> mark U71 isNatIListKind V1,
                active U101(tt(), V1, V2) -> mark U102(isNatKind V1, V1, V2),
                active U103(tt(), V1, V2) -> mark U104(isNatIListKind V2, V1, V2),
       active isNatIListKind cons(V1, V2) -> mark U51(isNatKind V1, V2),
            active isNatIListKind zeros() -> mark tt(),
              active isNatIListKind nil() -> mark tt(),
       active isNatIListKind take(V1, V2) -> mark U61(isNatKind V1, V2),
                active U104(tt(), V1, V2) -> mark U105(isNat V1, V2),
                    active U105(tt(), V2) -> mark U106 isNatIList V2,
                         active isNat 0() -> mark tt(),
                        active isNat s V1 -> mark U21(isNatKind V1, V1),
                   active isNat length V1 -> mark U11(isNatIListKind V1, V1),
                         active U106 tt() -> mark tt(),
                      active isNatIList V -> mark U31(isNatIListKind V, V),
           active isNatIList cons(V1, V2) -> mark U41(isNatKind V1, V1, V2),
                active isNatIList zeros() -> mark tt(),
                     active U12(tt(), V1) -> mark U13 isNatList V1,
                     active U11(tt(), V1) -> mark U12(isNatIListKind V1, V1),
                  active U112(tt(), L, N) -> mark U113(isNat N, L, N),
                  active U111(tt(), L, N) -> mark U112(isNatIListKind L, L, N),
                  active U113(tt(), L, N) -> mark U114(isNatKind N, L),
                     active U114(tt(), L) -> mark s length L,
                 active length cons(N, L) -> mark U111(isNatList L, L, N),
                      active length nil() -> mark 0(),
                          active U13 tt() -> mark tt(),
            active isNatList cons(V1, V2) -> mark U91(isNatKind V1, V1, V2),
                   active isNatList nil() -> mark tt(),
            active isNatList take(V1, V2) -> mark U101(isNatKind V1, V1, V2),
                         active U122 tt() -> mark nil(),
                    active U121(tt(), IL) -> mark U122 isNatIListKind IL,
              active U132(tt(), IL, M, N) -> mark U133(isNat M, IL, M, N),
              active U131(tt(), IL, M, N) -> mark U132(isNatIListKind IL, IL, M, N),
              active U133(tt(), IL, M, N) -> mark U134(isNatKind M, IL, M, N),
              active U134(tt(), IL, M, N) -> mark U135(isNat N, IL, M, N),
              active U135(tt(), IL, M, N) -> mark U136(isNatKind N, IL, M, N),
              active U136(tt(), IL, M, N) -> mark cons(N, take(M, IL)),
                     active take(0(), IL) -> mark U121(isNatIList IL, IL),
            active take(s M, cons(N, IL)) -> mark U131(isNatIList IL, IL, M, N),
                     active U22(tt(), V1) -> mark U23 isNat V1,
                     active U21(tt(), V1) -> mark U22(isNatKind V1, V1),
                          active U23 tt() -> mark tt(),
                      active U32(tt(), V) -> mark U33 isNatList V,
                      active U31(tt(), V) -> mark U32(isNatIListKind V, V),
                          active U33 tt() -> mark tt(),
                 active U42(tt(), V1, V2) -> mark U43(isNatIListKind V2, V1, V2),
                 active U41(tt(), V1, V2) -> mark U42(isNatKind V1, V1, V2),
                 active U43(tt(), V1, V2) -> mark U44(isNatIListKind V2, V1, V2),
                 active U44(tt(), V1, V2) -> mark U45(isNat V1, V2),
                     active U45(tt(), V2) -> mark U46 isNatIList V2,
                          active U46 tt() -> mark tt(),
                          active U52 tt() -> mark tt(),
                     active U51(tt(), V2) -> mark U52 isNatIListKind V2,
                          active U62 tt() -> mark tt(),
                     active U61(tt(), V2) -> mark U62 isNatIListKind V2,
                          active U71 tt() -> mark tt(),
                          active U81 tt() -> mark tt(),
                 active U92(tt(), V1, V2) -> mark U93(isNatIListKind V2, V1, V2),
                 active U91(tt(), V1, V2) -> mark U92(isNatKind V1, V1, V2),
                 active U93(tt(), V1, V2) -> mark U94(isNatIListKind V2, V1, V2),
                 active U94(tt(), V1, V2) -> mark U95(isNat V1, V2),
                     active U95(tt(), V2) -> mark U96 isNatList V2,
                          active U96 tt() -> mark tt(),
                    U102(X1, X2, mark X3) -> U102(X1, X2, X3),
                  U102(X1, X2, active X3) -> U102(X1, X2, X3),
                    U102(X1, mark X2, X3) -> U102(X1, X2, X3),
                  U102(X1, active X2, X3) -> U102(X1, X2, X3),
                    U102(mark X1, X2, X3) -> U102(X1, X2, X3),
                  U102(active X1, X2, X3) -> U102(X1, X2, X3),
                         isNatKind mark X -> isNatKind X,
                       isNatKind active X -> isNatKind X,
                    U101(X1, X2, mark X3) -> U101(X1, X2, X3),
                  U101(X1, X2, active X3) -> U101(X1, X2, X3),
                    U101(X1, mark X2, X3) -> U101(X1, X2, X3),
                  U101(X1, active X2, X3) -> U101(X1, X2, X3),
                    U101(mark X1, X2, X3) -> U101(X1, X2, X3),
                  U101(active X1, X2, X3) -> U101(X1, X2, X3),
                    U103(X1, X2, mark X3) -> U103(X1, X2, X3),
                  U103(X1, X2, active X3) -> U103(X1, X2, X3),
                    U103(X1, mark X2, X3) -> U103(X1, X2, X3),
                  U103(X1, active X2, X3) -> U103(X1, X2, X3),
                    U103(mark X1, X2, X3) -> U103(X1, X2, X3),
                  U103(active X1, X2, X3) -> U103(X1, X2, X3),
                    isNatIListKind mark X -> isNatIListKind X,
                  isNatIListKind active X -> isNatIListKind X,
                    U104(X1, X2, mark X3) -> U104(X1, X2, X3),
                  U104(X1, X2, active X3) -> U104(X1, X2, X3),
                    U104(X1, mark X2, X3) -> U104(X1, X2, X3),
                  U104(X1, active X2, X3) -> U104(X1, X2, X3),
                    U104(mark X1, X2, X3) -> U104(X1, X2, X3),
                  U104(active X1, X2, X3) -> U104(X1, X2, X3),
                        U105(X1, mark X2) -> U105(X1, X2),
                      U105(X1, active X2) -> U105(X1, X2),
                        U105(mark X1, X2) -> U105(X1, X2),
                      U105(active X1, X2) -> U105(X1, X2),
                             isNat mark X -> isNat X,
                           isNat active X -> isNat X,
                              U106 mark X -> U106 X,
                            U106 active X -> U106 X,
                        isNatIList mark X -> isNatIList X,
                      isNatIList active X -> isNatIList X,
                         U12(X1, mark X2) -> U12(X1, X2),
                       U12(X1, active X2) -> U12(X1, X2),
                         U12(mark X1, X2) -> U12(X1, X2),
                       U12(active X1, X2) -> U12(X1, X2),
                         U11(X1, mark X2) -> U11(X1, X2),
                       U11(X1, active X2) -> U11(X1, X2),
                         U11(mark X1, X2) -> U11(X1, X2),
                       U11(active X1, X2) -> U11(X1, X2),
                    U112(X1, X2, mark X3) -> U112(X1, X2, X3),
                  U112(X1, X2, active X3) -> U112(X1, X2, X3),
                    U112(X1, mark X2, X3) -> U112(X1, X2, X3),
                  U112(X1, active X2, X3) -> U112(X1, X2, X3),
                    U112(mark X1, X2, X3) -> U112(X1, X2, X3),
                  U112(active X1, X2, X3) -> U112(X1, X2, X3),
                    U111(X1, X2, mark X3) -> U111(X1, X2, X3),
                  U111(X1, X2, active X3) -> U111(X1, X2, X3),
                    U111(X1, mark X2, X3) -> U111(X1, X2, X3),
                  U111(X1, active X2, X3) -> U111(X1, X2, X3),
                    U111(mark X1, X2, X3) -> U111(X1, X2, X3),
                  U111(active X1, X2, X3) -> U111(X1, X2, X3),
                    U113(X1, X2, mark X3) -> U113(X1, X2, X3),
                  U113(X1, X2, active X3) -> U113(X1, X2, X3),
                    U113(X1, mark X2, X3) -> U113(X1, X2, X3),
                  U113(X1, active X2, X3) -> U113(X1, X2, X3),
                    U113(mark X1, X2, X3) -> U113(X1, X2, X3),
                  U113(active X1, X2, X3) -> U113(X1, X2, X3),
                        U114(X1, mark X2) -> U114(X1, X2),
                      U114(X1, active X2) -> U114(X1, X2),
                        U114(mark X1, X2) -> U114(X1, X2),
                      U114(active X1, X2) -> U114(X1, X2),
                                 s mark X -> s X,
                               s active X -> s X,
                            length mark X -> length X,
                          length active X -> length X,
                               U13 mark X -> U13 X,
                             U13 active X -> U13 X,
                         isNatList mark X -> isNatList X,
                       isNatList active X -> isNatList X,
                              U122 mark X -> U122 X,
                            U122 active X -> U122 X,
                        U121(X1, mark X2) -> U121(X1, X2),
                      U121(X1, active X2) -> U121(X1, X2),
                        U121(mark X1, X2) -> U121(X1, X2),
                      U121(active X1, X2) -> U121(X1, X2),
                U132(X1, X2, X3, mark X4) -> U132(X1, X2, X3, X4),
              U132(X1, X2, X3, active X4) -> U132(X1, X2, X3, X4),
                U132(X1, X2, mark X3, X4) -> U132(X1, X2, X3, X4),
              U132(X1, X2, active X3, X4) -> U132(X1, X2, X3, X4),
                U132(X1, mark X2, X3, X4) -> U132(X1, X2, X3, X4),
              U132(X1, active X2, X3, X4) -> U132(X1, X2, X3, X4),
                U132(mark X1, X2, X3, X4) -> U132(X1, X2, X3, X4),
              U132(active X1, X2, X3, X4) -> U132(X1, X2, X3, X4),
                U131(X1, X2, X3, mark X4) -> U131(X1, X2, X3, X4),
              U131(X1, X2, X3, active X4) -> U131(X1, X2, X3, X4),
                U131(X1, X2, mark X3, X4) -> U131(X1, X2, X3, X4),
              U131(X1, X2, active X3, X4) -> U131(X1, X2, X3, X4),
                U131(X1, mark X2, X3, X4) -> U131(X1, X2, X3, X4),
              U131(X1, active X2, X3, X4) -> U131(X1, X2, X3, X4),
                U131(mark X1, X2, X3, X4) -> U131(X1, X2, X3, X4),
              U131(active X1, X2, X3, X4) -> U131(X1, X2, X3, X4),
                U133(X1, X2, X3, mark X4) -> U133(X1, X2, X3, X4),
              U133(X1, X2, X3, active X4) -> U133(X1, X2, X3, X4),
                U133(X1, X2, mark X3, X4) -> U133(X1, X2, X3, X4),
              U133(X1, X2, active X3, X4) -> U133(X1, X2, X3, X4),
                U133(X1, mark X2, X3, X4) -> U133(X1, X2, X3, X4),
              U133(X1, active X2, X3, X4) -> U133(X1, X2, X3, X4),
                U133(mark X1, X2, X3, X4) -> U133(X1, X2, X3, X4),
              U133(active X1, X2, X3, X4) -> U133(X1, X2, X3, X4),
                U134(X1, X2, X3, mark X4) -> U134(X1, X2, X3, X4),
              U134(X1, X2, X3, active X4) -> U134(X1, X2, X3, X4),
                U134(X1, X2, mark X3, X4) -> U134(X1, X2, X3, X4),
              U134(X1, X2, active X3, X4) -> U134(X1, X2, X3, X4),
                U134(X1, mark X2, X3, X4) -> U134(X1, X2, X3, X4),
              U134(X1, active X2, X3, X4) -> U134(X1, X2, X3, X4),
                U134(mark X1, X2, X3, X4) -> U134(X1, X2, X3, X4),
              U134(active X1, X2, X3, X4) -> U134(X1, X2, X3, X4),
                U135(X1, X2, X3, mark X4) -> U135(X1, X2, X3, X4),
              U135(X1, X2, X3, active X4) -> U135(X1, X2, X3, X4),
                U135(X1, X2, mark X3, X4) -> U135(X1, X2, X3, X4),
              U135(X1, X2, active X3, X4) -> U135(X1, X2, X3, X4),
                U135(X1, mark X2, X3, X4) -> U135(X1, X2, X3, X4),
              U135(X1, active X2, X3, X4) -> U135(X1, X2, X3, X4),
                U135(mark X1, X2, X3, X4) -> U135(X1, X2, X3, X4),
              U135(active X1, X2, X3, X4) -> U135(X1, X2, X3, X4),
                U136(X1, X2, X3, mark X4) -> U136(X1, X2, X3, X4),
              U136(X1, X2, X3, active X4) -> U136(X1, X2, X3, X4),
                U136(X1, X2, mark X3, X4) -> U136(X1, X2, X3, X4),
              U136(X1, X2, active X3, X4) -> U136(X1, X2, X3, X4),
                U136(X1, mark X2, X3, X4) -> U136(X1, X2, X3, X4),
              U136(X1, active X2, X3, X4) -> U136(X1, X2, X3, X4),
                U136(mark X1, X2, X3, X4) -> U136(X1, X2, X3, X4),
              U136(active X1, X2, X3, X4) -> U136(X1, X2, X3, X4),
                        take(X1, mark X2) -> take(X1, X2),
                      take(X1, active X2) -> take(X1, X2),
                        take(mark X1, X2) -> take(X1, X2),
                      take(active X1, X2) -> take(X1, X2),
                         U22(X1, mark X2) -> U22(X1, X2),
                       U22(X1, active X2) -> U22(X1, X2),
                         U22(mark X1, X2) -> U22(X1, X2),
                       U22(active X1, X2) -> U22(X1, X2),
                         U21(X1, mark X2) -> U21(X1, X2),
                       U21(X1, active X2) -> U21(X1, X2),
                         U21(mark X1, X2) -> U21(X1, X2),
                       U21(active X1, X2) -> U21(X1, X2),
                               U23 mark X -> U23 X,
                             U23 active X -> U23 X,
                         U32(X1, mark X2) -> U32(X1, X2),
                       U32(X1, active X2) -> U32(X1, X2),
                         U32(mark X1, X2) -> U32(X1, X2),
                       U32(active X1, X2) -> U32(X1, X2),
                         U31(X1, mark X2) -> U31(X1, X2),
                       U31(X1, active X2) -> U31(X1, X2),
                         U31(mark X1, X2) -> U31(X1, X2),
                       U31(active X1, X2) -> U31(X1, X2),
                               U33 mark X -> U33 X,
                             U33 active X -> U33 X,
                     U42(X1, X2, mark X3) -> U42(X1, X2, X3),
                   U42(X1, X2, active X3) -> U42(X1, X2, X3),
                     U42(X1, mark X2, X3) -> U42(X1, X2, X3),
                   U42(X1, active X2, X3) -> U42(X1, X2, X3),
                     U42(mark X1, X2, X3) -> U42(X1, X2, X3),
                   U42(active X1, X2, X3) -> U42(X1, X2, X3),
                     U41(X1, X2, mark X3) -> U41(X1, X2, X3),
                   U41(X1, X2, active X3) -> U41(X1, X2, X3),
                     U41(X1, mark X2, X3) -> U41(X1, X2, X3),
                   U41(X1, active X2, X3) -> U41(X1, X2, X3),
                     U41(mark X1, X2, X3) -> U41(X1, X2, X3),
                   U41(active X1, X2, X3) -> U41(X1, X2, X3),
                     U43(X1, X2, mark X3) -> U43(X1, X2, X3),
                   U43(X1, X2, active X3) -> U43(X1, X2, X3),
                     U43(X1, mark X2, X3) -> U43(X1, X2, X3),
                   U43(X1, active X2, X3) -> U43(X1, X2, X3),
                     U43(mark X1, X2, X3) -> U43(X1, X2, X3),
                   U43(active X1, X2, X3) -> U43(X1, X2, X3),
                     U44(X1, X2, mark X3) -> U44(X1, X2, X3),
                   U44(X1, X2, active X3) -> U44(X1, X2, X3),
                     U44(X1, mark X2, X3) -> U44(X1, X2, X3),
                   U44(X1, active X2, X3) -> U44(X1, X2, X3),
                     U44(mark X1, X2, X3) -> U44(X1, X2, X3),
                   U44(active X1, X2, X3) -> U44(X1, X2, X3),
                         U45(X1, mark X2) -> U45(X1, X2),
                       U45(X1, active X2) -> U45(X1, X2),
                         U45(mark X1, X2) -> U45(X1, X2),
                       U45(active X1, X2) -> U45(X1, X2),
                               U46 mark X -> U46 X,
                             U46 active X -> U46 X,
                               U52 mark X -> U52 X,
                             U52 active X -> U52 X,
                         U51(X1, mark X2) -> U51(X1, X2),
                       U51(X1, active X2) -> U51(X1, X2),
                         U51(mark X1, X2) -> U51(X1, X2),
                       U51(active X1, X2) -> U51(X1, X2),
                               U62 mark X -> U62 X,
                             U62 active X -> U62 X,
                         U61(X1, mark X2) -> U61(X1, X2),
                       U61(X1, active X2) -> U61(X1, X2),
                         U61(mark X1, X2) -> U61(X1, X2),
                       U61(active X1, X2) -> U61(X1, X2),
                               U71 mark X -> U71 X,
                             U71 active X -> U71 X,
                               U81 mark X -> U81 X,
                             U81 active X -> U81 X,
                     U92(X1, X2, mark X3) -> U92(X1, X2, X3),
                   U92(X1, X2, active X3) -> U92(X1, X2, X3),
                     U92(X1, mark X2, X3) -> U92(X1, X2, X3),
                   U92(X1, active X2, X3) -> U92(X1, X2, X3),
                     U92(mark X1, X2, X3) -> U92(X1, X2, X3),
                   U92(active X1, X2, X3) -> U92(X1, X2, X3),
                     U91(X1, X2, mark X3) -> U91(X1, X2, X3),
                   U91(X1, X2, active X3) -> U91(X1, X2, X3),
                     U91(X1, mark X2, X3) -> U91(X1, X2, X3),
                   U91(X1, active X2, X3) -> U91(X1, X2, X3),
                     U91(mark X1, X2, X3) -> U91(X1, X2, X3),
                   U91(active X1, X2, X3) -> U91(X1, X2, X3),
                     U93(X1, X2, mark X3) -> U93(X1, X2, X3),
                   U93(X1, X2, active X3) -> U93(X1, X2, X3),
                     U93(X1, mark X2, X3) -> U93(X1, X2, X3),
                   U93(X1, active X2, X3) -> U93(X1, X2, X3),
                     U93(mark X1, X2, X3) -> U93(X1, X2, X3),
                   U93(active X1, X2, X3) -> U93(X1, X2, X3),
                     U94(X1, X2, mark X3) -> U94(X1, X2, X3),
                   U94(X1, X2, active X3) -> U94(X1, X2, X3),
                     U94(X1, mark X2, X3) -> U94(X1, X2, X3),
                   U94(X1, active X2, X3) -> U94(X1, X2, X3),
                     U94(mark X1, X2, X3) -> U94(X1, X2, X3),
                   U94(active X1, X2, X3) -> U94(X1, X2, X3),
                         U95(X1, mark X2) -> U95(X1, X2),
                       U95(X1, active X2) -> U95(X1, X2),
                         U95(mark X1, X2) -> U95(X1, X2),
                       U95(active X1, X2) -> U95(X1, X2),
                               U96 mark X -> U96 X,
                             U96 active X -> U96 X
      }
      Open
     
     SCC (6):
      Strict:
       {  U103#(X1, X2, mark X3) -> U103#(X1, X2, X3),
        U103#(X1, X2, active X3) -> U103#(X1, X2, X3),
          U103#(X1, mark X2, X3) -> U103#(X1, X2, X3),
        U103#(X1, active X2, X3) -> U103#(X1, X2, X3),
          U103#(mark X1, X2, X3) -> U103#(X1, X2, X3),
        U103#(active X1, X2, X3) -> U103#(X1, X2, X3)}
      Weak:
      {
                        mark cons(X1, X2) -> active cons(mark X1, X2),
                                 mark 0() -> active 0(),
                             mark zeros() -> active zeros(),
                    mark U102(X1, X2, X3) -> active U102(mark X1, X2, X3),
                         mark isNatKind X -> active isNatKind X,
                    mark U101(X1, X2, X3) -> active U101(mark X1, X2, X3),
                                mark tt() -> active tt(),
                    mark U103(X1, X2, X3) -> active U103(mark X1, X2, X3),
                    mark isNatIListKind X -> active isNatIListKind X,
                    mark U104(X1, X2, X3) -> active U104(mark X1, X2, X3),
                        mark U105(X1, X2) -> active U105(mark X1, X2),
                             mark isNat X -> active isNat X,
                              mark U106 X -> active U106 mark X,
                        mark isNatIList X -> active isNatIList X,
                         mark U12(X1, X2) -> active U12(mark X1, X2),
                         mark U11(X1, X2) -> active U11(mark X1, X2),
                    mark U112(X1, X2, X3) -> active U112(mark X1, X2, X3),
                    mark U111(X1, X2, X3) -> active U111(mark X1, X2, X3),
                    mark U113(X1, X2, X3) -> active U113(mark X1, X2, X3),
                        mark U114(X1, X2) -> active U114(mark X1, X2),
                                 mark s X -> active s mark X,
                            mark length X -> active length mark X,
                               mark U13 X -> active U13 mark X,
                         mark isNatList X -> active isNatList X,
                              mark U122 X -> active U122 mark X,
                        mark U121(X1, X2) -> active U121(mark X1, X2),
                               mark nil() -> active nil(),
                mark U132(X1, X2, X3, X4) -> active U132(mark X1, X2, X3, X4),
                mark U131(X1, X2, X3, X4) -> active U131(mark X1, X2, X3, X4),
                mark U133(X1, X2, X3, X4) -> active U133(mark X1, X2, X3, X4),
                mark U134(X1, X2, X3, X4) -> active U134(mark X1, X2, X3, X4),
                mark U135(X1, X2, X3, X4) -> active U135(mark X1, X2, X3, X4),
                mark U136(X1, X2, X3, X4) -> active U136(mark X1, X2, X3, X4),
                        mark take(X1, X2) -> active take(mark X1, mark X2),
                         mark U22(X1, X2) -> active U22(mark X1, X2),
                         mark U21(X1, X2) -> active U21(mark X1, X2),
                               mark U23 X -> active U23 mark X,
                         mark U32(X1, X2) -> active U32(mark X1, X2),
                         mark U31(X1, X2) -> active U31(mark X1, X2),
                               mark U33 X -> active U33 mark X,
                     mark U42(X1, X2, X3) -> active U42(mark X1, X2, X3),
                     mark U41(X1, X2, X3) -> active U41(mark X1, X2, X3),
                     mark U43(X1, X2, X3) -> active U43(mark X1, X2, X3),
                     mark U44(X1, X2, X3) -> active U44(mark X1, X2, X3),
                         mark U45(X1, X2) -> active U45(mark X1, X2),
                               mark U46 X -> active U46 mark X,
                               mark U52 X -> active U52 mark X,
                         mark U51(X1, X2) -> active U51(mark X1, X2),
                               mark U62 X -> active U62 mark X,
                         mark U61(X1, X2) -> active U61(mark X1, X2),
                               mark U71 X -> active U71 mark X,
                               mark U81 X -> active U81 mark X,
                     mark U92(X1, X2, X3) -> active U92(mark X1, X2, X3),
                     mark U91(X1, X2, X3) -> active U91(mark X1, X2, X3),
                     mark U93(X1, X2, X3) -> active U93(mark X1, X2, X3),
                     mark U94(X1, X2, X3) -> active U94(mark X1, X2, X3),
                         mark U95(X1, X2) -> active U95(mark X1, X2),
                               mark U96 X -> active U96 mark X,
                        cons(X1, mark X2) -> cons(X1, X2),
                      cons(X1, active X2) -> cons(X1, X2),
                        cons(mark X1, X2) -> cons(X1, X2),
                      cons(active X1, X2) -> cons(X1, X2),
                           active zeros() -> mark cons(0(), zeros()),
                active U102(tt(), V1, V2) -> mark U103(isNatIListKind V2, V1, V2),
                     active isNatKind 0() -> mark tt(),
                    active isNatKind s V1 -> mark U81 isNatKind V1,
               active isNatKind length V1 -> mark U71 isNatIListKind V1,
                active U101(tt(), V1, V2) -> mark U102(isNatKind V1, V1, V2),
                active U103(tt(), V1, V2) -> mark U104(isNatIListKind V2, V1, V2),
       active isNatIListKind cons(V1, V2) -> mark U51(isNatKind V1, V2),
            active isNatIListKind zeros() -> mark tt(),
              active isNatIListKind nil() -> mark tt(),
       active isNatIListKind take(V1, V2) -> mark U61(isNatKind V1, V2),
                active U104(tt(), V1, V2) -> mark U105(isNat V1, V2),
                    active U105(tt(), V2) -> mark U106 isNatIList V2,
                         active isNat 0() -> mark tt(),
                        active isNat s V1 -> mark U21(isNatKind V1, V1),
                   active isNat length V1 -> mark U11(isNatIListKind V1, V1),
                         active U106 tt() -> mark tt(),
                      active isNatIList V -> mark U31(isNatIListKind V, V),
           active isNatIList cons(V1, V2) -> mark U41(isNatKind V1, V1, V2),
                active isNatIList zeros() -> mark tt(),
                     active U12(tt(), V1) -> mark U13 isNatList V1,
                     active U11(tt(), V1) -> mark U12(isNatIListKind V1, V1),
                  active U112(tt(), L, N) -> mark U113(isNat N, L, N),
                  active U111(tt(), L, N) -> mark U112(isNatIListKind L, L, N),
                  active U113(tt(), L, N) -> mark U114(isNatKind N, L),
                     active U114(tt(), L) -> mark s length L,
                 active length cons(N, L) -> mark U111(isNatList L, L, N),
                      active length nil() -> mark 0(),
                          active U13 tt() -> mark tt(),
            active isNatList cons(V1, V2) -> mark U91(isNatKind V1, V1, V2),
                   active isNatList nil() -> mark tt(),
            active isNatList take(V1, V2) -> mark U101(isNatKind V1, V1, V2),
                         active U122 tt() -> mark nil(),
                    active U121(tt(), IL) -> mark U122 isNatIListKind IL,
              active U132(tt(), IL, M, N) -> mark U133(isNat M, IL, M, N),
              active U131(tt(), IL, M, N) -> mark U132(isNatIListKind IL, IL, M, N),
              active U133(tt(), IL, M, N) -> mark U134(isNatKind M, IL, M, N),
              active U134(tt(), IL, M, N) -> mark U135(isNat N, IL, M, N),
              active U135(tt(), IL, M, N) -> mark U136(isNatKind N, IL, M, N),
              active U136(tt(), IL, M, N) -> mark cons(N, take(M, IL)),
                     active take(0(), IL) -> mark U121(isNatIList IL, IL),
            active take(s M, cons(N, IL)) -> mark U131(isNatIList IL, IL, M, N),
                     active U22(tt(), V1) -> mark U23 isNat V1,
                     active U21(tt(), V1) -> mark U22(isNatKind V1, V1),
                          active U23 tt() -> mark tt(),
                      active U32(tt(), V) -> mark U33 isNatList V,
                      active U31(tt(), V) -> mark U32(isNatIListKind V, V),
                          active U33 tt() -> mark tt(),
                 active U42(tt(), V1, V2) -> mark U43(isNatIListKind V2, V1, V2),
                 active U41(tt(), V1, V2) -> mark U42(isNatKind V1, V1, V2),
                 active U43(tt(), V1, V2) -> mark U44(isNatIListKind V2, V1, V2),
                 active U44(tt(), V1, V2) -> mark U45(isNat V1, V2),
                     active U45(tt(), V2) -> mark U46 isNatIList V2,
                          active U46 tt() -> mark tt(),
                          active U52 tt() -> mark tt(),
                     active U51(tt(), V2) -> mark U52 isNatIListKind V2,
                          active U62 tt() -> mark tt(),
                     active U61(tt(), V2) -> mark U62 isNatIListKind V2,
                          active U71 tt() -> mark tt(),
                          active U81 tt() -> mark tt(),
                 active U92(tt(), V1, V2) -> mark U93(isNatIListKind V2, V1, V2),
                 active U91(tt(), V1, V2) -> mark U92(isNatKind V1, V1, V2),
                 active U93(tt(), V1, V2) -> mark U94(isNatIListKind V2, V1, V2),
                 active U94(tt(), V1, V2) -> mark U95(isNat V1, V2),
                     active U95(tt(), V2) -> mark U96 isNatList V2,
                          active U96 tt() -> mark tt(),
                    U102(X1, X2, mark X3) -> U102(X1, X2, X3),
                  U102(X1, X2, active X3) -> U102(X1, X2, X3),
                    U102(X1, mark X2, X3) -> U102(X1, X2, X3),
                  U102(X1, active X2, X3) -> U102(X1, X2, X3),
                    U102(mark X1, X2, X3) -> U102(X1, X2, X3),
                  U102(active X1, X2, X3) -> U102(X1, X2, X3),
                         isNatKind mark X -> isNatKind X,
                       isNatKind active X -> isNatKind X,
                    U101(X1, X2, mark X3) -> U101(X1, X2, X3),
                  U101(X1, X2, active X3) -> U101(X1, X2, X3),
                    U101(X1, mark X2, X3) -> U101(X1, X2, X3),
                  U101(X1, active X2, X3) -> U101(X1, X2, X3),
                    U101(mark X1, X2, X3) -> U101(X1, X2, X3),
                  U101(active X1, X2, X3) -> U101(X1, X2, X3),
                    U103(X1, X2, mark X3) -> U103(X1, X2, X3),
                  U103(X1, X2, active X3) -> U103(X1, X2, X3),
                    U103(X1, mark X2, X3) -> U103(X1, X2, X3),
                  U103(X1, active X2, X3) -> U103(X1, X2, X3),
                    U103(mark X1, X2, X3) -> U103(X1, X2, X3),
                  U103(active X1, X2, X3) -> U103(X1, X2, X3),
                    isNatIListKind mark X -> isNatIListKind X,
                  isNatIListKind active X -> isNatIListKind X,
                    U104(X1, X2, mark X3) -> U104(X1, X2, X3),
                  U104(X1, X2, active X3) -> U104(X1, X2, X3),
                    U104(X1, mark X2, X3) -> U104(X1, X2, X3),
                  U104(X1, active X2, X3) -> U104(X1, X2, X3),
                    U104(mark X1, X2, X3) -> U104(X1, X2, X3),
                  U104(active X1, X2, X3) -> U104(X1, X2, X3),
                        U105(X1, mark X2) -> U105(X1, X2),
                      U105(X1, active X2) -> U105(X1, X2),
                        U105(mark X1, X2) -> U105(X1, X2),
                      U105(active X1, X2) -> U105(X1, X2),
                             isNat mark X -> isNat X,
                           isNat active X -> isNat X,
                              U106 mark X -> U106 X,
                            U106 active X -> U106 X,
                        isNatIList mark X -> isNatIList X,
                      isNatIList active X -> isNatIList X,
                         U12(X1, mark X2) -> U12(X1, X2),
                       U12(X1, active X2) -> U12(X1, X2),
                         U12(mark X1, X2) -> U12(X1, X2),
                       U12(active X1, X2) -> U12(X1, X2),
                         U11(X1, mark X2) -> U11(X1, X2),
                       U11(X1, active X2) -> U11(X1, X2),
                         U11(mark X1, X2) -> U11(X1, X2),
                       U11(active X1, X2) -> U11(X1, X2),
                    U112(X1, X2, mark X3) -> U112(X1, X2, X3),
                  U112(X1, X2, active X3) -> U112(X1, X2, X3),
                    U112(X1, mark X2, X3) -> U112(X1, X2, X3),
                  U112(X1, active X2, X3) -> U112(X1, X2, X3),
                    U112(mark X1, X2, X3) -> U112(X1, X2, X3),
                  U112(active X1, X2, X3) -> U112(X1, X2, X3),
                    U111(X1, X2, mark X3) -> U111(X1, X2, X3),
                  U111(X1, X2, active X3) -> U111(X1, X2, X3),
                    U111(X1, mark X2, X3) -> U111(X1, X2, X3),
                  U111(X1, active X2, X3) -> U111(X1, X2, X3),
                    U111(mark X1, X2, X3) -> U111(X1, X2, X3),
                  U111(active X1, X2, X3) -> U111(X1, X2, X3),
                    U113(X1, X2, mark X3) -> U113(X1, X2, X3),
                  U113(X1, X2, active X3) -> U113(X1, X2, X3),
                    U113(X1, mark X2, X3) -> U113(X1, X2, X3),
                  U113(X1, active X2, X3) -> U113(X1, X2, X3),
                    U113(mark X1, X2, X3) -> U113(X1, X2, X3),
                  U113(active X1, X2, X3) -> U113(X1, X2, X3),
                        U114(X1, mark X2) -> U114(X1, X2),
                      U114(X1, active X2) -> U114(X1, X2),
                        U114(mark X1, X2) -> U114(X1, X2),
                      U114(active X1, X2) -> U114(X1, X2),
                                 s mark X -> s X,
                               s active X -> s X,
                            length mark X -> length X,
                          length active X -> length X,
                               U13 mark X -> U13 X,
                             U13 active X -> U13 X,
                         isNatList mark X -> isNatList X,
                       isNatList active X -> isNatList X,
                              U122 mark X -> U122 X,
                            U122 active X -> U122 X,
                        U121(X1, mark X2) -> U121(X1, X2),
                      U121(X1, active X2) -> U121(X1, X2),
                        U121(mark X1, X2) -> U121(X1, X2),
                      U121(active X1, X2) -> U121(X1, X2),
                U132(X1, X2, X3, mark X4) -> U132(X1, X2, X3, X4),
              U132(X1, X2, X3, active X4) -> U132(X1, X2, X3, X4),
                U132(X1, X2, mark X3, X4) -> U132(X1, X2, X3, X4),
              U132(X1, X2, active X3, X4) -> U132(X1, X2, X3, X4),
                U132(X1, mark X2, X3, X4) -> U132(X1, X2, X3, X4),
              U132(X1, active X2, X3, X4) -> U132(X1, X2, X3, X4),
                U132(mark X1, X2, X3, X4) -> U132(X1, X2, X3, X4),
              U132(active X1, X2, X3, X4) -> U132(X1, X2, X3, X4),
                U131(X1, X2, X3, mark X4) -> U131(X1, X2, X3, X4),
              U131(X1, X2, X3, active X4) -> U131(X1, X2, X3, X4),
                U131(X1, X2, mark X3, X4) -> U131(X1, X2, X3, X4),
              U131(X1, X2, active X3, X4) -> U131(X1, X2, X3, X4),
                U131(X1, mark X2, X3, X4) -> U131(X1, X2, X3, X4),
              U131(X1, active X2, X3, X4) -> U131(X1, X2, X3, X4),
                U131(mark X1, X2, X3, X4) -> U131(X1, X2, X3, X4),
              U131(active X1, X2, X3, X4) -> U131(X1, X2, X3, X4),
                U133(X1, X2, X3, mark X4) -> U133(X1, X2, X3, X4),
              U133(X1, X2, X3, active X4) -> U133(X1, X2, X3, X4),
                U133(X1, X2, mark X3, X4) -> U133(X1, X2, X3, X4),
              U133(X1, X2, active X3, X4) -> U133(X1, X2, X3, X4),
                U133(X1, mark X2, X3, X4) -> U133(X1, X2, X3, X4),
              U133(X1, active X2, X3, X4) -> U133(X1, X2, X3, X4),
                U133(mark X1, X2, X3, X4) -> U133(X1, X2, X3, X4),
              U133(active X1, X2, X3, X4) -> U133(X1, X2, X3, X4),
                U134(X1, X2, X3, mark X4) -> U134(X1, X2, X3, X4),
              U134(X1, X2, X3, active X4) -> U134(X1, X2, X3, X4),
                U134(X1, X2, mark X3, X4) -> U134(X1, X2, X3, X4),
              U134(X1, X2, active X3, X4) -> U134(X1, X2, X3, X4),
                U134(X1, mark X2, X3, X4) -> U134(X1, X2, X3, X4),
              U134(X1, active X2, X3, X4) -> U134(X1, X2, X3, X4),
                U134(mark X1, X2, X3, X4) -> U134(X1, X2, X3, X4),
              U134(active X1, X2, X3, X4) -> U134(X1, X2, X3, X4),
                U135(X1, X2, X3, mark X4) -> U135(X1, X2, X3, X4),
              U135(X1, X2, X3, active X4) -> U135(X1, X2, X3, X4),
                U135(X1, X2, mark X3, X4) -> U135(X1, X2, X3, X4),
              U135(X1, X2, active X3, X4) -> U135(X1, X2, X3, X4),
                U135(X1, mark X2, X3, X4) -> U135(X1, X2, X3, X4),
              U135(X1, active X2, X3, X4) -> U135(X1, X2, X3, X4),
                U135(mark X1, X2, X3, X4) -> U135(X1, X2, X3, X4),
              U135(active X1, X2, X3, X4) -> U135(X1, X2, X3, X4),
                U136(X1, X2, X3, mark X4) -> U136(X1, X2, X3, X4),
              U136(X1, X2, X3, active X4) -> U136(X1, X2, X3, X4),
                U136(X1, X2, mark X3, X4) -> U136(X1, X2, X3, X4),
              U136(X1, X2, active X3, X4) -> U136(X1, X2, X3, X4),
                U136(X1, mark X2, X3, X4) -> U136(X1, X2, X3, X4),
              U136(X1, active X2, X3, X4) -> U136(X1, X2, X3, X4),
                U136(mark X1, X2, X3, X4) -> U136(X1, X2, X3, X4),
              U136(active X1, X2, X3, X4) -> U136(X1, X2, X3, X4),
                        take(X1, mark X2) -> take(X1, X2),
                      take(X1, active X2) -> take(X1, X2),
                        take(mark X1, X2) -> take(X1, X2),
                      take(active X1, X2) -> take(X1, X2),
                         U22(X1, mark X2) -> U22(X1, X2),
                       U22(X1, active X2) -> U22(X1, X2),
                         U22(mark X1, X2) -> U22(X1, X2),
                       U22(active X1, X2) -> U22(X1, X2),
                         U21(X1, mark X2) -> U21(X1, X2),
                       U21(X1, active X2) -> U21(X1, X2),
                         U21(mark X1, X2) -> U21(X1, X2),
                       U21(active X1, X2) -> U21(X1, X2),
                               U23 mark X -> U23 X,
                             U23 active X -> U23 X,
                         U32(X1, mark X2) -> U32(X1, X2),
                       U32(X1, active X2) -> U32(X1, X2),
                         U32(mark X1, X2) -> U32(X1, X2),
                       U32(active X1, X2) -> U32(X1, X2),
                         U31(X1, mark X2) -> U31(X1, X2),
                       U31(X1, active X2) -> U31(X1, X2),
                         U31(mark X1, X2) -> U31(X1, X2),
                       U31(active X1, X2) -> U31(X1, X2),
                               U33 mark X -> U33 X,
                             U33 active X -> U33 X,
                     U42(X1, X2, mark X3) -> U42(X1, X2, X3),
                   U42(X1, X2, active X3) -> U42(X1, X2, X3),
                     U42(X1, mark X2, X3) -> U42(X1, X2, X3),
                   U42(X1, active X2, X3) -> U42(X1, X2, X3),
                     U42(mark X1, X2, X3) -> U42(X1, X2, X3),
                   U42(active X1, X2, X3) -> U42(X1, X2, X3),
                     U41(X1, X2, mark X3) -> U41(X1, X2, X3),
                   U41(X1, X2, active X3) -> U41(X1, X2, X3),
                     U41(X1, mark X2, X3) -> U41(X1, X2, X3),
                   U41(X1, active X2, X3) -> U41(X1, X2, X3),
                     U41(mark X1, X2, X3) -> U41(X1, X2, X3),
                   U41(active X1, X2, X3) -> U41(X1, X2, X3),
                     U43(X1, X2, mark X3) -> U43(X1, X2, X3),
                   U43(X1, X2, active X3) -> U43(X1, X2, X3),
                     U43(X1, mark X2, X3) -> U43(X1, X2, X3),
                   U43(X1, active X2, X3) -> U43(X1, X2, X3),
                     U43(mark X1, X2, X3) -> U43(X1, X2, X3),
                   U43(active X1, X2, X3) -> U43(X1, X2, X3),
                     U44(X1, X2, mark X3) -> U44(X1, X2, X3),
                   U44(X1, X2, active X3) -> U44(X1, X2, X3),
                     U44(X1, mark X2, X3) -> U44(X1, X2, X3),
                   U44(X1, active X2, X3) -> U44(X1, X2, X3),
                     U44(mark X1, X2, X3) -> U44(X1, X2, X3),
                   U44(active X1, X2, X3) -> U44(X1, X2, X3),
                         U45(X1, mark X2) -> U45(X1, X2),
                       U45(X1, active X2) -> U45(X1, X2),
                         U45(mark X1, X2) -> U45(X1, X2),
                       U45(active X1, X2) -> U45(X1, X2),
                               U46 mark X -> U46 X,
                             U46 active X -> U46 X,
                               U52 mark X -> U52 X,
                             U52 active X -> U52 X,
                         U51(X1, mark X2) -> U51(X1, X2),
                       U51(X1, active X2) -> U51(X1, X2),
                         U51(mark X1, X2) -> U51(X1, X2),
                       U51(active X1, X2) -> U51(X1, X2),
                               U62 mark X -> U62 X,
                             U62 active X -> U62 X,
                         U61(X1, mark X2) -> U61(X1, X2),
                       U61(X1, active X2) -> U61(X1, X2),
                         U61(mark X1, X2) -> U61(X1, X2),
                       U61(active X1, X2) -> U61(X1, X2),
                               U71 mark X -> U71 X,
                             U71 active X -> U71 X,
                               U81 mark X -> U81 X,
                             U81 active X -> U81 X,
                     U92(X1, X2, mark X3) -> U92(X1, X2, X3),
                   U92(X1, X2, active X3) -> U92(X1, X2, X3),
                     U92(X1, mark X2, X3) -> U92(X1, X2, X3),
                   U92(X1, active X2, X3) -> U92(X1, X2, X3),
                     U92(mark X1, X2, X3) -> U92(X1, X2, X3),
                   U92(active X1, X2, X3) -> U92(X1, X2, X3),
                     U91(X1, X2, mark X3) -> U91(X1, X2, X3),
                   U91(X1, X2, active X3) -> U91(X1, X2, X3),
                     U91(X1, mark X2, X3) -> U91(X1, X2, X3),
                   U91(X1, active X2, X3) -> U91(X1, X2, X3),
                     U91(mark X1, X2, X3) -> U91(X1, X2, X3),
                   U91(active X1, X2, X3) -> U91(X1, X2, X3),
                     U93(X1, X2, mark X3) -> U93(X1, X2, X3),
                   U93(X1, X2, active X3) -> U93(X1, X2, X3),
                     U93(X1, mark X2, X3) -> U93(X1, X2, X3),
                   U93(X1, active X2, X3) -> U93(X1, X2, X3),
                     U93(mark X1, X2, X3) -> U93(X1, X2, X3),
                   U93(active X1, X2, X3) -> U93(X1, X2, X3),
                     U94(X1, X2, mark X3) -> U94(X1, X2, X3),
                   U94(X1, X2, active X3) -> U94(X1, X2, X3),
                     U94(X1, mark X2, X3) -> U94(X1, X2, X3),
                   U94(X1, active X2, X3) -> U94(X1, X2, X3),
                     U94(mark X1, X2, X3) -> U94(X1, X2, X3),
                   U94(active X1, X2, X3) -> U94(X1, X2, X3),
                         U95(X1, mark X2) -> U95(X1, X2),
                       U95(X1, active X2) -> U95(X1, X2),
                         U95(mark X1, X2) -> U95(X1, X2),
                       U95(active X1, X2) -> U95(X1, X2),
                               U96 mark X -> U96 X,
                             U96 active X -> U96 X
      }
      Open
     
     SCC (6):
      Strict:
       {  U101#(X1, X2, mark X3) -> U101#(X1, X2, X3),
        U101#(X1, X2, active X3) -> U101#(X1, X2, X3),
          U101#(X1, mark X2, X3) -> U101#(X1, X2, X3),
        U101#(X1, active X2, X3) -> U101#(X1, X2, X3),
          U101#(mark X1, X2, X3) -> U101#(X1, X2, X3),
        U101#(active X1, X2, X3) -> U101#(X1, X2, X3)}
      Weak:
      {
                        mark cons(X1, X2) -> active cons(mark X1, X2),
                                 mark 0() -> active 0(),
                             mark zeros() -> active zeros(),
                    mark U102(X1, X2, X3) -> active U102(mark X1, X2, X3),
                         mark isNatKind X -> active isNatKind X,
                    mark U101(X1, X2, X3) -> active U101(mark X1, X2, X3),
                                mark tt() -> active tt(),
                    mark U103(X1, X2, X3) -> active U103(mark X1, X2, X3),
                    mark isNatIListKind X -> active isNatIListKind X,
                    mark U104(X1, X2, X3) -> active U104(mark X1, X2, X3),
                        mark U105(X1, X2) -> active U105(mark X1, X2),
                             mark isNat X -> active isNat X,
                              mark U106 X -> active U106 mark X,
                        mark isNatIList X -> active isNatIList X,
                         mark U12(X1, X2) -> active U12(mark X1, X2),
                         mark U11(X1, X2) -> active U11(mark X1, X2),
                    mark U112(X1, X2, X3) -> active U112(mark X1, X2, X3),
                    mark U111(X1, X2, X3) -> active U111(mark X1, X2, X3),
                    mark U113(X1, X2, X3) -> active U113(mark X1, X2, X3),
                        mark U114(X1, X2) -> active U114(mark X1, X2),
                                 mark s X -> active s mark X,
                            mark length X -> active length mark X,
                               mark U13 X -> active U13 mark X,
                         mark isNatList X -> active isNatList X,
                              mark U122 X -> active U122 mark X,
                        mark U121(X1, X2) -> active U121(mark X1, X2),
                               mark nil() -> active nil(),
                mark U132(X1, X2, X3, X4) -> active U132(mark X1, X2, X3, X4),
                mark U131(X1, X2, X3, X4) -> active U131(mark X1, X2, X3, X4),
                mark U133(X1, X2, X3, X4) -> active U133(mark X1, X2, X3, X4),
                mark U134(X1, X2, X3, X4) -> active U134(mark X1, X2, X3, X4),
                mark U135(X1, X2, X3, X4) -> active U135(mark X1, X2, X3, X4),
                mark U136(X1, X2, X3, X4) -> active U136(mark X1, X2, X3, X4),
                        mark take(X1, X2) -> active take(mark X1, mark X2),
                         mark U22(X1, X2) -> active U22(mark X1, X2),
                         mark U21(X1, X2) -> active U21(mark X1, X2),
                               mark U23 X -> active U23 mark X,
                         mark U32(X1, X2) -> active U32(mark X1, X2),
                         mark U31(X1, X2) -> active U31(mark X1, X2),
                               mark U33 X -> active U33 mark X,
                     mark U42(X1, X2, X3) -> active U42(mark X1, X2, X3),
                     mark U41(X1, X2, X3) -> active U41(mark X1, X2, X3),
                     mark U43(X1, X2, X3) -> active U43(mark X1, X2, X3),
                     mark U44(X1, X2, X3) -> active U44(mark X1, X2, X3),
                         mark U45(X1, X2) -> active U45(mark X1, X2),
                               mark U46 X -> active U46 mark X,
                               mark U52 X -> active U52 mark X,
                         mark U51(X1, X2) -> active U51(mark X1, X2),
                               mark U62 X -> active U62 mark X,
                         mark U61(X1, X2) -> active U61(mark X1, X2),
                               mark U71 X -> active U71 mark X,
                               mark U81 X -> active U81 mark X,
                     mark U92(X1, X2, X3) -> active U92(mark X1, X2, X3),
                     mark U91(X1, X2, X3) -> active U91(mark X1, X2, X3),
                     mark U93(X1, X2, X3) -> active U93(mark X1, X2, X3),
                     mark U94(X1, X2, X3) -> active U94(mark X1, X2, X3),
                         mark U95(X1, X2) -> active U95(mark X1, X2),
                               mark U96 X -> active U96 mark X,
                        cons(X1, mark X2) -> cons(X1, X2),
                      cons(X1, active X2) -> cons(X1, X2),
                        cons(mark X1, X2) -> cons(X1, X2),
                      cons(active X1, X2) -> cons(X1, X2),
                           active zeros() -> mark cons(0(), zeros()),
                active U102(tt(), V1, V2) -> mark U103(isNatIListKind V2, V1, V2),
                     active isNatKind 0() -> mark tt(),
                    active isNatKind s V1 -> mark U81 isNatKind V1,
               active isNatKind length V1 -> mark U71 isNatIListKind V1,
                active U101(tt(), V1, V2) -> mark U102(isNatKind V1, V1, V2),
                active U103(tt(), V1, V2) -> mark U104(isNatIListKind V2, V1, V2),
       active isNatIListKind cons(V1, V2) -> mark U51(isNatKind V1, V2),
            active isNatIListKind zeros() -> mark tt(),
              active isNatIListKind nil() -> mark tt(),
       active isNatIListKind take(V1, V2) -> mark U61(isNatKind V1, V2),
                active U104(tt(), V1, V2) -> mark U105(isNat V1, V2),
                    active U105(tt(), V2) -> mark U106 isNatIList V2,
                         active isNat 0() -> mark tt(),
                        active isNat s V1 -> mark U21(isNatKind V1, V1),
                   active isNat length V1 -> mark U11(isNatIListKind V1, V1),
                         active U106 tt() -> mark tt(),
                      active isNatIList V -> mark U31(isNatIListKind V, V),
           active isNatIList cons(V1, V2) -> mark U41(isNatKind V1, V1, V2),
                active isNatIList zeros() -> mark tt(),
                     active U12(tt(), V1) -> mark U13 isNatList V1,
                     active U11(tt(), V1) -> mark U12(isNatIListKind V1, V1),
                  active U112(tt(), L, N) -> mark U113(isNat N, L, N),
                  active U111(tt(), L, N) -> mark U112(isNatIListKind L, L, N),
                  active U113(tt(), L, N) -> mark U114(isNatKind N, L),
                     active U114(tt(), L) -> mark s length L,
                 active length cons(N, L) -> mark U111(isNatList L, L, N),
                      active length nil() -> mark 0(),
                          active U13 tt() -> mark tt(),
            active isNatList cons(V1, V2) -> mark U91(isNatKind V1, V1, V2),
                   active isNatList nil() -> mark tt(),
            active isNatList take(V1, V2) -> mark U101(isNatKind V1, V1, V2),
                         active U122 tt() -> mark nil(),
                    active U121(tt(), IL) -> mark U122 isNatIListKind IL,
              active U132(tt(), IL, M, N) -> mark U133(isNat M, IL, M, N),
              active U131(tt(), IL, M, N) -> mark U132(isNatIListKind IL, IL, M, N),
              active U133(tt(), IL, M, N) -> mark U134(isNatKind M, IL, M, N),
              active U134(tt(), IL, M, N) -> mark U135(isNat N, IL, M, N),
              active U135(tt(), IL, M, N) -> mark U136(isNatKind N, IL, M, N),
              active U136(tt(), IL, M, N) -> mark cons(N, take(M, IL)),
                     active take(0(), IL) -> mark U121(isNatIList IL, IL),
            active take(s M, cons(N, IL)) -> mark U131(isNatIList IL, IL, M, N),
                     active U22(tt(), V1) -> mark U23 isNat V1,
                     active U21(tt(), V1) -> mark U22(isNatKind V1, V1),
                          active U23 tt() -> mark tt(),
                      active U32(tt(), V) -> mark U33 isNatList V,
                      active U31(tt(), V) -> mark U32(isNatIListKind V, V),
                          active U33 tt() -> mark tt(),
                 active U42(tt(), V1, V2) -> mark U43(isNatIListKind V2, V1, V2),
                 active U41(tt(), V1, V2) -> mark U42(isNatKind V1, V1, V2),
                 active U43(tt(), V1, V2) -> mark U44(isNatIListKind V2, V1, V2),
                 active U44(tt(), V1, V2) -> mark U45(isNat V1, V2),
                     active U45(tt(), V2) -> mark U46 isNatIList V2,
                          active U46 tt() -> mark tt(),
                          active U52 tt() -> mark tt(),
                     active U51(tt(), V2) -> mark U52 isNatIListKind V2,
                          active U62 tt() -> mark tt(),
                     active U61(tt(), V2) -> mark U62 isNatIListKind V2,
                          active U71 tt() -> mark tt(),
                          active U81 tt() -> mark tt(),
                 active U92(tt(), V1, V2) -> mark U93(isNatIListKind V2, V1, V2),
                 active U91(tt(), V1, V2) -> mark U92(isNatKind V1, V1, V2),
                 active U93(tt(), V1, V2) -> mark U94(isNatIListKind V2, V1, V2),
                 active U94(tt(), V1, V2) -> mark U95(isNat V1, V2),
                     active U95(tt(), V2) -> mark U96 isNatList V2,
                          active U96 tt() -> mark tt(),
                    U102(X1, X2, mark X3) -> U102(X1, X2, X3),
                  U102(X1, X2, active X3) -> U102(X1, X2, X3),
                    U102(X1, mark X2, X3) -> U102(X1, X2, X3),
                  U102(X1, active X2, X3) -> U102(X1, X2, X3),
                    U102(mark X1, X2, X3) -> U102(X1, X2, X3),
                  U102(active X1, X2, X3) -> U102(X1, X2, X3),
                         isNatKind mark X -> isNatKind X,
                       isNatKind active X -> isNatKind X,
                    U101(X1, X2, mark X3) -> U101(X1, X2, X3),
                  U101(X1, X2, active X3) -> U101(X1, X2, X3),
                    U101(X1, mark X2, X3) -> U101(X1, X2, X3),
                  U101(X1, active X2, X3) -> U101(X1, X2, X3),
                    U101(mark X1, X2, X3) -> U101(X1, X2, X3),
                  U101(active X1, X2, X3) -> U101(X1, X2, X3),
                    U103(X1, X2, mark X3) -> U103(X1, X2, X3),
                  U103(X1, X2, active X3) -> U103(X1, X2, X3),
                    U103(X1, mark X2, X3) -> U103(X1, X2, X3),
                  U103(X1, active X2, X3) -> U103(X1, X2, X3),
                    U103(mark X1, X2, X3) -> U103(X1, X2, X3),
                  U103(active X1, X2, X3) -> U103(X1, X2, X3),
                    isNatIListKind mark X -> isNatIListKind X,
                  isNatIListKind active X -> isNatIListKind X,
                    U104(X1, X2, mark X3) -> U104(X1, X2, X3),
                  U104(X1, X2, active X3) -> U104(X1, X2, X3),
                    U104(X1, mark X2, X3) -> U104(X1, X2, X3),
                  U104(X1, active X2, X3) -> U104(X1, X2, X3),
                    U104(mark X1, X2, X3) -> U104(X1, X2, X3),
                  U104(active X1, X2, X3) -> U104(X1, X2, X3),
                        U105(X1, mark X2) -> U105(X1, X2),
                      U105(X1, active X2) -> U105(X1, X2),
                        U105(mark X1, X2) -> U105(X1, X2),
                      U105(active X1, X2) -> U105(X1, X2),
                             isNat mark X -> isNat X,
                           isNat active X -> isNat X,
                              U106 mark X -> U106 X,
                            U106 active X -> U106 X,
                        isNatIList mark X -> isNatIList X,
                      isNatIList active X -> isNatIList X,
                         U12(X1, mark X2) -> U12(X1, X2),
                       U12(X1, active X2) -> U12(X1, X2),
                         U12(mark X1, X2) -> U12(X1, X2),
                       U12(active X1, X2) -> U12(X1, X2),
                         U11(X1, mark X2) -> U11(X1, X2),
                       U11(X1, active X2) -> U11(X1, X2),
                         U11(mark X1, X2) -> U11(X1, X2),
                       U11(active X1, X2) -> U11(X1, X2),
                    U112(X1, X2, mark X3) -> U112(X1, X2, X3),
                  U112(X1, X2, active X3) -> U112(X1, X2, X3),
                    U112(X1, mark X2, X3) -> U112(X1, X2, X3),
                  U112(X1, active X2, X3) -> U112(X1, X2, X3),
                    U112(mark X1, X2, X3) -> U112(X1, X2, X3),
                  U112(active X1, X2, X3) -> U112(X1, X2, X3),
                    U111(X1, X2, mark X3) -> U111(X1, X2, X3),
                  U111(X1, X2, active X3) -> U111(X1, X2, X3),
                    U111(X1, mark X2, X3) -> U111(X1, X2, X3),
                  U111(X1, active X2, X3) -> U111(X1, X2, X3),
                    U111(mark X1, X2, X3) -> U111(X1, X2, X3),
                  U111(active X1, X2, X3) -> U111(X1, X2, X3),
                    U113(X1, X2, mark X3) -> U113(X1, X2, X3),
                  U113(X1, X2, active X3) -> U113(X1, X2, X3),
                    U113(X1, mark X2, X3) -> U113(X1, X2, X3),
                  U113(X1, active X2, X3) -> U113(X1, X2, X3),
                    U113(mark X1, X2, X3) -> U113(X1, X2, X3),
                  U113(active X1, X2, X3) -> U113(X1, X2, X3),
                        U114(X1, mark X2) -> U114(X1, X2),
                      U114(X1, active X2) -> U114(X1, X2),
                        U114(mark X1, X2) -> U114(X1, X2),
                      U114(active X1, X2) -> U114(X1, X2),
                                 s mark X -> s X,
                               s active X -> s X,
                            length mark X -> length X,
                          length active X -> length X,
                               U13 mark X -> U13 X,
                             U13 active X -> U13 X,
                         isNatList mark X -> isNatList X,
                       isNatList active X -> isNatList X,
                              U122 mark X -> U122 X,
                            U122 active X -> U122 X,
                        U121(X1, mark X2) -> U121(X1, X2),
                      U121(X1, active X2) -> U121(X1, X2),
                        U121(mark X1, X2) -> U121(X1, X2),
                      U121(active X1, X2) -> U121(X1, X2),
                U132(X1, X2, X3, mark X4) -> U132(X1, X2, X3, X4),
              U132(X1, X2, X3, active X4) -> U132(X1, X2, X3, X4),
                U132(X1, X2, mark X3, X4) -> U132(X1, X2, X3, X4),
              U132(X1, X2, active X3, X4) -> U132(X1, X2, X3, X4),
                U132(X1, mark X2, X3, X4) -> U132(X1, X2, X3, X4),
              U132(X1, active X2, X3, X4) -> U132(X1, X2, X3, X4),
                U132(mark X1, X2, X3, X4) -> U132(X1, X2, X3, X4),
              U132(active X1, X2, X3, X4) -> U132(X1, X2, X3, X4),
                U131(X1, X2, X3, mark X4) -> U131(X1, X2, X3, X4),
              U131(X1, X2, X3, active X4) -> U131(X1, X2, X3, X4),
                U131(X1, X2, mark X3, X4) -> U131(X1, X2, X3, X4),
              U131(X1, X2, active X3, X4) -> U131(X1, X2, X3, X4),
                U131(X1, mark X2, X3, X4) -> U131(X1, X2, X3, X4),
              U131(X1, active X2, X3, X4) -> U131(X1, X2, X3, X4),
                U131(mark X1, X2, X3, X4) -> U131(X1, X2, X3, X4),
              U131(active X1, X2, X3, X4) -> U131(X1, X2, X3, X4),
                U133(X1, X2, X3, mark X4) -> U133(X1, X2, X3, X4),
              U133(X1, X2, X3, active X4) -> U133(X1, X2, X3, X4),
                U133(X1, X2, mark X3, X4) -> U133(X1, X2, X3, X4),
              U133(X1, X2, active X3, X4) -> U133(X1, X2, X3, X4),
                U133(X1, mark X2, X3, X4) -> U133(X1, X2, X3, X4),
              U133(X1, active X2, X3, X4) -> U133(X1, X2, X3, X4),
                U133(mark X1, X2, X3, X4) -> U133(X1, X2, X3, X4),
              U133(active X1, X2, X3, X4) -> U133(X1, X2, X3, X4),
                U134(X1, X2, X3, mark X4) -> U134(X1, X2, X3, X4),
              U134(X1, X2, X3, active X4) -> U134(X1, X2, X3, X4),
                U134(X1, X2, mark X3, X4) -> U134(X1, X2, X3, X4),
              U134(X1, X2, active X3, X4) -> U134(X1, X2, X3, X4),
                U134(X1, mark X2, X3, X4) -> U134(X1, X2, X3, X4),
              U134(X1, active X2, X3, X4) -> U134(X1, X2, X3, X4),
                U134(mark X1, X2, X3, X4) -> U134(X1, X2, X3, X4),
              U134(active X1, X2, X3, X4) -> U134(X1, X2, X3, X4),
                U135(X1, X2, X3, mark X4) -> U135(X1, X2, X3, X4),
              U135(X1, X2, X3, active X4) -> U135(X1, X2, X3, X4),
                U135(X1, X2, mark X3, X4) -> U135(X1, X2, X3, X4),
              U135(X1, X2, active X3, X4) -> U135(X1, X2, X3, X4),
                U135(X1, mark X2, X3, X4) -> U135(X1, X2, X3, X4),
              U135(X1, active X2, X3, X4) -> U135(X1, X2, X3, X4),
                U135(mark X1, X2, X3, X4) -> U135(X1, X2, X3, X4),
              U135(active X1, X2, X3, X4) -> U135(X1, X2, X3, X4),
                U136(X1, X2, X3, mark X4) -> U136(X1, X2, X3, X4),
              U136(X1, X2, X3, active X4) -> U136(X1, X2, X3, X4),
                U136(X1, X2, mark X3, X4) -> U136(X1, X2, X3, X4),
              U136(X1, X2, active X3, X4) -> U136(X1, X2, X3, X4),
                U136(X1, mark X2, X3, X4) -> U136(X1, X2, X3, X4),
              U136(X1, active X2, X3, X4) -> U136(X1, X2, X3, X4),
                U136(mark X1, X2, X3, X4) -> U136(X1, X2, X3, X4),
              U136(active X1, X2, X3, X4) -> U136(X1, X2, X3, X4),
                        take(X1, mark X2) -> take(X1, X2),
                      take(X1, active X2) -> take(X1, X2),
                        take(mark X1, X2) -> take(X1, X2),
                      take(active X1, X2) -> take(X1, X2),
                         U22(X1, mark X2) -> U22(X1, X2),
                       U22(X1, active X2) -> U22(X1, X2),
                         U22(mark X1, X2) -> U22(X1, X2),
                       U22(active X1, X2) -> U22(X1, X2),
                         U21(X1, mark X2) -> U21(X1, X2),
                       U21(X1, active X2) -> U21(X1, X2),
                         U21(mark X1, X2) -> U21(X1, X2),
                       U21(active X1, X2) -> U21(X1, X2),
                               U23 mark X -> U23 X,
                             U23 active X -> U23 X,
                         U32(X1, mark X2) -> U32(X1, X2),
                       U32(X1, active X2) -> U32(X1, X2),
                         U32(mark X1, X2) -> U32(X1, X2),
                       U32(active X1, X2) -> U32(X1, X2),
                         U31(X1, mark X2) -> U31(X1, X2),
                       U31(X1, active X2) -> U31(X1, X2),
                         U31(mark X1, X2) -> U31(X1, X2),
                       U31(active X1, X2) -> U31(X1, X2),
                               U33 mark X -> U33 X,
                             U33 active X -> U33 X,
                     U42(X1, X2, mark X3) -> U42(X1, X2, X3),
                   U42(X1, X2, active X3) -> U42(X1, X2, X3),
                     U42(X1, mark X2, X3) -> U42(X1, X2, X3),
                   U42(X1, active X2, X3) -> U42(X1, X2, X3),
                     U42(mark X1, X2, X3) -> U42(X1, X2, X3),
                   U42(active X1, X2, X3) -> U42(X1, X2, X3),
                     U41(X1, X2, mark X3) -> U41(X1, X2, X3),
                   U41(X1, X2, active X3) -> U41(X1, X2, X3),
                     U41(X1, mark X2, X3) -> U41(X1, X2, X3),
                   U41(X1, active X2, X3) -> U41(X1, X2, X3),
                     U41(mark X1, X2, X3) -> U41(X1, X2, X3),
                   U41(active X1, X2, X3) -> U41(X1, X2, X3),
                     U43(X1, X2, mark X3) -> U43(X1, X2, X3),
                   U43(X1, X2, active X3) -> U43(X1, X2, X3),
                     U43(X1, mark X2, X3) -> U43(X1, X2, X3),
                   U43(X1, active X2, X3) -> U43(X1, X2, X3),
                     U43(mark X1, X2, X3) -> U43(X1, X2, X3),
                   U43(active X1, X2, X3) -> U43(X1, X2, X3),
                     U44(X1, X2, mark X3) -> U44(X1, X2, X3),
                   U44(X1, X2, active X3) -> U44(X1, X2, X3),
                     U44(X1, mark X2, X3) -> U44(X1, X2, X3),
                   U44(X1, active X2, X3) -> U44(X1, X2, X3),
                     U44(mark X1, X2, X3) -> U44(X1, X2, X3),
                   U44(active X1, X2, X3) -> U44(X1, X2, X3),
                         U45(X1, mark X2) -> U45(X1, X2),
                       U45(X1, active X2) -> U45(X1, X2),
                         U45(mark X1, X2) -> U45(X1, X2),
                       U45(active X1, X2) -> U45(X1, X2),
                               U46 mark X -> U46 X,
                             U46 active X -> U46 X,
                               U52 mark X -> U52 X,
                             U52 active X -> U52 X,
                         U51(X1, mark X2) -> U51(X1, X2),
                       U51(X1, active X2) -> U51(X1, X2),
                         U51(mark X1, X2) -> U51(X1, X2),
                       U51(active X1, X2) -> U51(X1, X2),
                               U62 mark X -> U62 X,
                             U62 active X -> U62 X,
                         U61(X1, mark X2) -> U61(X1, X2),
                       U61(X1, active X2) -> U61(X1, X2),
                         U61(mark X1, X2) -> U61(X1, X2),
                       U61(active X1, X2) -> U61(X1, X2),
                               U71 mark X -> U71 X,
                             U71 active X -> U71 X,
                               U81 mark X -> U81 X,
                             U81 active X -> U81 X,
                     U92(X1, X2, mark X3) -> U92(X1, X2, X3),
                   U92(X1, X2, active X3) -> U92(X1, X2, X3),
                     U92(X1, mark X2, X3) -> U92(X1, X2, X3),
                   U92(X1, active X2, X3) -> U92(X1, X2, X3),
                     U92(mark X1, X2, X3) -> U92(X1, X2, X3),
                   U92(active X1, X2, X3) -> U92(X1, X2, X3),
                     U91(X1, X2, mark X3) -> U91(X1, X2, X3),
                   U91(X1, X2, active X3) -> U91(X1, X2, X3),
                     U91(X1, mark X2, X3) -> U91(X1, X2, X3),
                   U91(X1, active X2, X3) -> U91(X1, X2, X3),
                     U91(mark X1, X2, X3) -> U91(X1, X2, X3),
                   U91(active X1, X2, X3) -> U91(X1, X2, X3),
                     U93(X1, X2, mark X3) -> U93(X1, X2, X3),
                   U93(X1, X2, active X3) -> U93(X1, X2, X3),
                     U93(X1, mark X2, X3) -> U93(X1, X2, X3),
                   U93(X1, active X2, X3) -> U93(X1, X2, X3),
                     U93(mark X1, X2, X3) -> U93(X1, X2, X3),
                   U93(active X1, X2, X3) -> U93(X1, X2, X3),
                     U94(X1, X2, mark X3) -> U94(X1, X2, X3),
                   U94(X1, X2, active X3) -> U94(X1, X2, X3),
                     U94(X1, mark X2, X3) -> U94(X1, X2, X3),
                   U94(X1, active X2, X3) -> U94(X1, X2, X3),
                     U94(mark X1, X2, X3) -> U94(X1, X2, X3),
                   U94(active X1, X2, X3) -> U94(X1, X2, X3),
                         U95(X1, mark X2) -> U95(X1, X2),
                       U95(X1, active X2) -> U95(X1, X2),
                         U95(mark X1, X2) -> U95(X1, X2),
                       U95(active X1, X2) -> U95(X1, X2),
                               U96 mark X -> U96 X,
                             U96 active X -> U96 X
      }
      Open
     
     SCC (2):
      Strict:
       {  isNatKind# mark X -> isNatKind# X,
        isNatKind# active X -> isNatKind# X}
      Weak:
      {
                        mark cons(X1, X2) -> active cons(mark X1, X2),
                                 mark 0() -> active 0(),
                             mark zeros() -> active zeros(),
                    mark U102(X1, X2, X3) -> active U102(mark X1, X2, X3),
                         mark isNatKind X -> active isNatKind X,
                    mark U101(X1, X2, X3) -> active U101(mark X1, X2, X3),
                                mark tt() -> active tt(),
                    mark U103(X1, X2, X3) -> active U103(mark X1, X2, X3),
                    mark isNatIListKind X -> active isNatIListKind X,
                    mark U104(X1, X2, X3) -> active U104(mark X1, X2, X3),
                        mark U105(X1, X2) -> active U105(mark X1, X2),
                             mark isNat X -> active isNat X,
                              mark U106 X -> active U106 mark X,
                        mark isNatIList X -> active isNatIList X,
                         mark U12(X1, X2) -> active U12(mark X1, X2),
                         mark U11(X1, X2) -> active U11(mark X1, X2),
                    mark U112(X1, X2, X3) -> active U112(mark X1, X2, X3),
                    mark U111(X1, X2, X3) -> active U111(mark X1, X2, X3),
                    mark U113(X1, X2, X3) -> active U113(mark X1, X2, X3),
                        mark U114(X1, X2) -> active U114(mark X1, X2),
                                 mark s X -> active s mark X,
                            mark length X -> active length mark X,
                               mark U13 X -> active U13 mark X,
                         mark isNatList X -> active isNatList X,
                              mark U122 X -> active U122 mark X,
                        mark U121(X1, X2) -> active U121(mark X1, X2),
                               mark nil() -> active nil(),
                mark U132(X1, X2, X3, X4) -> active U132(mark X1, X2, X3, X4),
                mark U131(X1, X2, X3, X4) -> active U131(mark X1, X2, X3, X4),
                mark U133(X1, X2, X3, X4) -> active U133(mark X1, X2, X3, X4),
                mark U134(X1, X2, X3, X4) -> active U134(mark X1, X2, X3, X4),
                mark U135(X1, X2, X3, X4) -> active U135(mark X1, X2, X3, X4),
                mark U136(X1, X2, X3, X4) -> active U136(mark X1, X2, X3, X4),
                        mark take(X1, X2) -> active take(mark X1, mark X2),
                         mark U22(X1, X2) -> active U22(mark X1, X2),
                         mark U21(X1, X2) -> active U21(mark X1, X2),
                               mark U23 X -> active U23 mark X,
                         mark U32(X1, X2) -> active U32(mark X1, X2),
                         mark U31(X1, X2) -> active U31(mark X1, X2),
                               mark U33 X -> active U33 mark X,
                     mark U42(X1, X2, X3) -> active U42(mark X1, X2, X3),
                     mark U41(X1, X2, X3) -> active U41(mark X1, X2, X3),
                     mark U43(X1, X2, X3) -> active U43(mark X1, X2, X3),
                     mark U44(X1, X2, X3) -> active U44(mark X1, X2, X3),
                         mark U45(X1, X2) -> active U45(mark X1, X2),
                               mark U46 X -> active U46 mark X,
                               mark U52 X -> active U52 mark X,
                         mark U51(X1, X2) -> active U51(mark X1, X2),
                               mark U62 X -> active U62 mark X,
                         mark U61(X1, X2) -> active U61(mark X1, X2),
                               mark U71 X -> active U71 mark X,
                               mark U81 X -> active U81 mark X,
                     mark U92(X1, X2, X3) -> active U92(mark X1, X2, X3),
                     mark U91(X1, X2, X3) -> active U91(mark X1, X2, X3),
                     mark U93(X1, X2, X3) -> active U93(mark X1, X2, X3),
                     mark U94(X1, X2, X3) -> active U94(mark X1, X2, X3),
                         mark U95(X1, X2) -> active U95(mark X1, X2),
                               mark U96 X -> active U96 mark X,
                        cons(X1, mark X2) -> cons(X1, X2),
                      cons(X1, active X2) -> cons(X1, X2),
                        cons(mark X1, X2) -> cons(X1, X2),
                      cons(active X1, X2) -> cons(X1, X2),
                           active zeros() -> mark cons(0(), zeros()),
                active U102(tt(), V1, V2) -> mark U103(isNatIListKind V2, V1, V2),
                     active isNatKind 0() -> mark tt(),
                    active isNatKind s V1 -> mark U81 isNatKind V1,
               active isNatKind length V1 -> mark U71 isNatIListKind V1,
                active U101(tt(), V1, V2) -> mark U102(isNatKind V1, V1, V2),
                active U103(tt(), V1, V2) -> mark U104(isNatIListKind V2, V1, V2),
       active isNatIListKind cons(V1, V2) -> mark U51(isNatKind V1, V2),
            active isNatIListKind zeros() -> mark tt(),
              active isNatIListKind nil() -> mark tt(),
       active isNatIListKind take(V1, V2) -> mark U61(isNatKind V1, V2),
                active U104(tt(), V1, V2) -> mark U105(isNat V1, V2),
                    active U105(tt(), V2) -> mark U106 isNatIList V2,
                         active isNat 0() -> mark tt(),
                        active isNat s V1 -> mark U21(isNatKind V1, V1),
                   active isNat length V1 -> mark U11(isNatIListKind V1, V1),
                         active U106 tt() -> mark tt(),
                      active isNatIList V -> mark U31(isNatIListKind V, V),
           active isNatIList cons(V1, V2) -> mark U41(isNatKind V1, V1, V2),
                active isNatIList zeros() -> mark tt(),
                     active U12(tt(), V1) -> mark U13 isNatList V1,
                     active U11(tt(), V1) -> mark U12(isNatIListKind V1, V1),
                  active U112(tt(), L, N) -> mark U113(isNat N, L, N),
                  active U111(tt(), L, N) -> mark U112(isNatIListKind L, L, N),
                  active U113(tt(), L, N) -> mark U114(isNatKind N, L),
                     active U114(tt(), L) -> mark s length L,
                 active length cons(N, L) -> mark U111(isNatList L, L, N),
                      active length nil() -> mark 0(),
                          active U13 tt() -> mark tt(),
            active isNatList cons(V1, V2) -> mark U91(isNatKind V1, V1, V2),
                   active isNatList nil() -> mark tt(),
            active isNatList take(V1, V2) -> mark U101(isNatKind V1, V1, V2),
                         active U122 tt() -> mark nil(),
                    active U121(tt(), IL) -> mark U122 isNatIListKind IL,
              active U132(tt(), IL, M, N) -> mark U133(isNat M, IL, M, N),
              active U131(tt(), IL, M, N) -> mark U132(isNatIListKind IL, IL, M, N),
              active U133(tt(), IL, M, N) -> mark U134(isNatKind M, IL, M, N),
              active U134(tt(), IL, M, N) -> mark U135(isNat N, IL, M, N),
              active U135(tt(), IL, M, N) -> mark U136(isNatKind N, IL, M, N),
              active U136(tt(), IL, M, N) -> mark cons(N, take(M, IL)),
                     active take(0(), IL) -> mark U121(isNatIList IL, IL),
            active take(s M, cons(N, IL)) -> mark U131(isNatIList IL, IL, M, N),
                     active U22(tt(), V1) -> mark U23 isNat V1,
                     active U21(tt(), V1) -> mark U22(isNatKind V1, V1),
                          active U23 tt() -> mark tt(),
                      active U32(tt(), V) -> mark U33 isNatList V,
                      active U31(tt(), V) -> mark U32(isNatIListKind V, V),
                          active U33 tt() -> mark tt(),
                 active U42(tt(), V1, V2) -> mark U43(isNatIListKind V2, V1, V2),
                 active U41(tt(), V1, V2) -> mark U42(isNatKind V1, V1, V2),
                 active U43(tt(), V1, V2) -> mark U44(isNatIListKind V2, V1, V2),
                 active U44(tt(), V1, V2) -> mark U45(isNat V1, V2),
                     active U45(tt(), V2) -> mark U46 isNatIList V2,
                          active U46 tt() -> mark tt(),
                          active U52 tt() -> mark tt(),
                     active U51(tt(), V2) -> mark U52 isNatIListKind V2,
                          active U62 tt() -> mark tt(),
                     active U61(tt(), V2) -> mark U62 isNatIListKind V2,
                          active U71 tt() -> mark tt(),
                          active U81 tt() -> mark tt(),
                 active U92(tt(), V1, V2) -> mark U93(isNatIListKind V2, V1, V2),
                 active U91(tt(), V1, V2) -> mark U92(isNatKind V1, V1, V2),
                 active U93(tt(), V1, V2) -> mark U94(isNatIListKind V2, V1, V2),
                 active U94(tt(), V1, V2) -> mark U95(isNat V1, V2),
                     active U95(tt(), V2) -> mark U96 isNatList V2,
                          active U96 tt() -> mark tt(),
                    U102(X1, X2, mark X3) -> U102(X1, X2, X3),
                  U102(X1, X2, active X3) -> U102(X1, X2, X3),
                    U102(X1, mark X2, X3) -> U102(X1, X2, X3),
                  U102(X1, active X2, X3) -> U102(X1, X2, X3),
                    U102(mark X1, X2, X3) -> U102(X1, X2, X3),
                  U102(active X1, X2, X3) -> U102(X1, X2, X3),
                         isNatKind mark X -> isNatKind X,
                       isNatKind active X -> isNatKind X,
                    U101(X1, X2, mark X3) -> U101(X1, X2, X3),
                  U101(X1, X2, active X3) -> U101(X1, X2, X3),
                    U101(X1, mark X2, X3) -> U101(X1, X2, X3),
                  U101(X1, active X2, X3) -> U101(X1, X2, X3),
                    U101(mark X1, X2, X3) -> U101(X1, X2, X3),
                  U101(active X1, X2, X3) -> U101(X1, X2, X3),
                    U103(X1, X2, mark X3) -> U103(X1, X2, X3),
                  U103(X1, X2, active X3) -> U103(X1, X2, X3),
                    U103(X1, mark X2, X3) -> U103(X1, X2, X3),
                  U103(X1, active X2, X3) -> U103(X1, X2, X3),
                    U103(mark X1, X2, X3) -> U103(X1, X2, X3),
                  U103(active X1, X2, X3) -> U103(X1, X2, X3),
                    isNatIListKind mark X -> isNatIListKind X,
                  isNatIListKind active X -> isNatIListKind X,
                    U104(X1, X2, mark X3) -> U104(X1, X2, X3),
                  U104(X1, X2, active X3) -> U104(X1, X2, X3),
                    U104(X1, mark X2, X3) -> U104(X1, X2, X3),
                  U104(X1, active X2, X3) -> U104(X1, X2, X3),
                    U104(mark X1, X2, X3) -> U104(X1, X2, X3),
                  U104(active X1, X2, X3) -> U104(X1, X2, X3),
                        U105(X1, mark X2) -> U105(X1, X2),
                      U105(X1, active X2) -> U105(X1, X2),
                        U105(mark X1, X2) -> U105(X1, X2),
                      U105(active X1, X2) -> U105(X1, X2),
                             isNat mark X -> isNat X,
                           isNat active X -> isNat X,
                              U106 mark X -> U106 X,
                            U106 active X -> U106 X,
                        isNatIList mark X -> isNatIList X,
                      isNatIList active X -> isNatIList X,
                         U12(X1, mark X2) -> U12(X1, X2),
                       U12(X1, active X2) -> U12(X1, X2),
                         U12(mark X1, X2) -> U12(X1, X2),
                       U12(active X1, X2) -> U12(X1, X2),
                         U11(X1, mark X2) -> U11(X1, X2),
                       U11(X1, active X2) -> U11(X1, X2),
                         U11(mark X1, X2) -> U11(X1, X2),
                       U11(active X1, X2) -> U11(X1, X2),
                    U112(X1, X2, mark X3) -> U112(X1, X2, X3),
                  U112(X1, X2, active X3) -> U112(X1, X2, X3),
                    U112(X1, mark X2, X3) -> U112(X1, X2, X3),
                  U112(X1, active X2, X3) -> U112(X1, X2, X3),
                    U112(mark X1, X2, X3) -> U112(X1, X2, X3),
                  U112(active X1, X2, X3) -> U112(X1, X2, X3),
                    U111(X1, X2, mark X3) -> U111(X1, X2, X3),
                  U111(X1, X2, active X3) -> U111(X1, X2, X3),
                    U111(X1, mark X2, X3) -> U111(X1, X2, X3),
                  U111(X1, active X2, X3) -> U111(X1, X2, X3),
                    U111(mark X1, X2, X3) -> U111(X1, X2, X3),
                  U111(active X1, X2, X3) -> U111(X1, X2, X3),
                    U113(X1, X2, mark X3) -> U113(X1, X2, X3),
                  U113(X1, X2, active X3) -> U113(X1, X2, X3),
                    U113(X1, mark X2, X3) -> U113(X1, X2, X3),
                  U113(X1, active X2, X3) -> U113(X1, X2, X3),
                    U113(mark X1, X2, X3) -> U113(X1, X2, X3),
                  U113(active X1, X2, X3) -> U113(X1, X2, X3),
                        U114(X1, mark X2) -> U114(X1, X2),
                      U114(X1, active X2) -> U114(X1, X2),
                        U114(mark X1, X2) -> U114(X1, X2),
                      U114(active X1, X2) -> U114(X1, X2),
                                 s mark X -> s X,
                               s active X -> s X,
                            length mark X -> length X,
                          length active X -> length X,
                               U13 mark X -> U13 X,
                             U13 active X -> U13 X,
                         isNatList mark X -> isNatList X,
                       isNatList active X -> isNatList X,
                              U122 mark X -> U122 X,
                            U122 active X -> U122 X,
                        U121(X1, mark X2) -> U121(X1, X2),
                      U121(X1, active X2) -> U121(X1, X2),
                        U121(mark X1, X2) -> U121(X1, X2),
                      U121(active X1, X2) -> U121(X1, X2),
                U132(X1, X2, X3, mark X4) -> U132(X1, X2, X3, X4),
              U132(X1, X2, X3, active X4) -> U132(X1, X2, X3, X4),
                U132(X1, X2, mark X3, X4) -> U132(X1, X2, X3, X4),
              U132(X1, X2, active X3, X4) -> U132(X1, X2, X3, X4),
                U132(X1, mark X2, X3, X4) -> U132(X1, X2, X3, X4),
              U132(X1, active X2, X3, X4) -> U132(X1, X2, X3, X4),
                U132(mark X1, X2, X3, X4) -> U132(X1, X2, X3, X4),
              U132(active X1, X2, X3, X4) -> U132(X1, X2, X3, X4),
                U131(X1, X2, X3, mark X4) -> U131(X1, X2, X3, X4),
              U131(X1, X2, X3, active X4) -> U131(X1, X2, X3, X4),
                U131(X1, X2, mark X3, X4) -> U131(X1, X2, X3, X4),
              U131(X1, X2, active X3, X4) -> U131(X1, X2, X3, X4),
                U131(X1, mark X2, X3, X4) -> U131(X1, X2, X3, X4),
              U131(X1, active X2, X3, X4) -> U131(X1, X2, X3, X4),
                U131(mark X1, X2, X3, X4) -> U131(X1, X2, X3, X4),
              U131(active X1, X2, X3, X4) -> U131(X1, X2, X3, X4),
                U133(X1, X2, X3, mark X4) -> U133(X1, X2, X3, X4),
              U133(X1, X2, X3, active X4) -> U133(X1, X2, X3, X4),
                U133(X1, X2, mark X3, X4) -> U133(X1, X2, X3, X4),
              U133(X1, X2, active X3, X4) -> U133(X1, X2, X3, X4),
                U133(X1, mark X2, X3, X4) -> U133(X1, X2, X3, X4),
              U133(X1, active X2, X3, X4) -> U133(X1, X2, X3, X4),
                U133(mark X1, X2, X3, X4) -> U133(X1, X2, X3, X4),
              U133(active X1, X2, X3, X4) -> U133(X1, X2, X3, X4),
                U134(X1, X2, X3, mark X4) -> U134(X1, X2, X3, X4),
              U134(X1, X2, X3, active X4) -> U134(X1, X2, X3, X4),
                U134(X1, X2, mark X3, X4) -> U134(X1, X2, X3, X4),
              U134(X1, X2, active X3, X4) -> U134(X1, X2, X3, X4),
                U134(X1, mark X2, X3, X4) -> U134(X1, X2, X3, X4),
              U134(X1, active X2, X3, X4) -> U134(X1, X2, X3, X4),
                U134(mark X1, X2, X3, X4) -> U134(X1, X2, X3, X4),
              U134(active X1, X2, X3, X4) -> U134(X1, X2, X3, X4),
                U135(X1, X2, X3, mark X4) -> U135(X1, X2, X3, X4),
              U135(X1, X2, X3, active X4) -> U135(X1, X2, X3, X4),
                U135(X1, X2, mark X3, X4) -> U135(X1, X2, X3, X4),
              U135(X1, X2, active X3, X4) -> U135(X1, X2, X3, X4),
                U135(X1, mark X2, X3, X4) -> U135(X1, X2, X3, X4),
              U135(X1, active X2, X3, X4) -> U135(X1, X2, X3, X4),
                U135(mark X1, X2, X3, X4) -> U135(X1, X2, X3, X4),
              U135(active X1, X2, X3, X4) -> U135(X1, X2, X3, X4),
                U136(X1, X2, X3, mark X4) -> U136(X1, X2, X3, X4),
              U136(X1, X2, X3, active X4) -> U136(X1, X2, X3, X4),
                U136(X1, X2, mark X3, X4) -> U136(X1, X2, X3, X4),
              U136(X1, X2, active X3, X4) -> U136(X1, X2, X3, X4),
                U136(X1, mark X2, X3, X4) -> U136(X1, X2, X3, X4),
              U136(X1, active X2, X3, X4) -> U136(X1, X2, X3, X4),
                U136(mark X1, X2, X3, X4) -> U136(X1, X2, X3, X4),
              U136(active X1, X2, X3, X4) -> U136(X1, X2, X3, X4),
                        take(X1, mark X2) -> take(X1, X2),
                      take(X1, active X2) -> take(X1, X2),
                        take(mark X1, X2) -> take(X1, X2),
                      take(active X1, X2) -> take(X1, X2),
                         U22(X1, mark X2) -> U22(X1, X2),
                       U22(X1, active X2) -> U22(X1, X2),
                         U22(mark X1, X2) -> U22(X1, X2),
                       U22(active X1, X2) -> U22(X1, X2),
                         U21(X1, mark X2) -> U21(X1, X2),
                       U21(X1, active X2) -> U21(X1, X2),
                         U21(mark X1, X2) -> U21(X1, X2),
                       U21(active X1, X2) -> U21(X1, X2),
                               U23 mark X -> U23 X,
                             U23 active X -> U23 X,
                         U32(X1, mark X2) -> U32(X1, X2),
                       U32(X1, active X2) -> U32(X1, X2),
                         U32(mark X1, X2) -> U32(X1, X2),
                       U32(active X1, X2) -> U32(X1, X2),
                         U31(X1, mark X2) -> U31(X1, X2),
                       U31(X1, active X2) -> U31(X1, X2),
                         U31(mark X1, X2) -> U31(X1, X2),
                       U31(active X1, X2) -> U31(X1, X2),
                               U33 mark X -> U33 X,
                             U33 active X -> U33 X,
                     U42(X1, X2, mark X3) -> U42(X1, X2, X3),
                   U42(X1, X2, active X3) -> U42(X1, X2, X3),
                     U42(X1, mark X2, X3) -> U42(X1, X2, X3),
                   U42(X1, active X2, X3) -> U42(X1, X2, X3),
                     U42(mark X1, X2, X3) -> U42(X1, X2, X3),
                   U42(active X1, X2, X3) -> U42(X1, X2, X3),
                     U41(X1, X2, mark X3) -> U41(X1, X2, X3),
                   U41(X1, X2, active X3) -> U41(X1, X2, X3),
                     U41(X1, mark X2, X3) -> U41(X1, X2, X3),
                   U41(X1, active X2, X3) -> U41(X1, X2, X3),
                     U41(mark X1, X2, X3) -> U41(X1, X2, X3),
                   U41(active X1, X2, X3) -> U41(X1, X2, X3),
                     U43(X1, X2, mark X3) -> U43(X1, X2, X3),
                   U43(X1, X2, active X3) -> U43(X1, X2, X3),
                     U43(X1, mark X2, X3) -> U43(X1, X2, X3),
                   U43(X1, active X2, X3) -> U43(X1, X2, X3),
                     U43(mark X1, X2, X3) -> U43(X1, X2, X3),
                   U43(active X1, X2, X3) -> U43(X1, X2, X3),
                     U44(X1, X2, mark X3) -> U44(X1, X2, X3),
                   U44(X1, X2, active X3) -> U44(X1, X2, X3),
                     U44(X1, mark X2, X3) -> U44(X1, X2, X3),
                   U44(X1, active X2, X3) -> U44(X1, X2, X3),
                     U44(mark X1, X2, X3) -> U44(X1, X2, X3),
                   U44(active X1, X2, X3) -> U44(X1, X2, X3),
                         U45(X1, mark X2) -> U45(X1, X2),
                       U45(X1, active X2) -> U45(X1, X2),
                         U45(mark X1, X2) -> U45(X1, X2),
                       U45(active X1, X2) -> U45(X1, X2),
                               U46 mark X -> U46 X,
                             U46 active X -> U46 X,
                               U52 mark X -> U52 X,
                             U52 active X -> U52 X,
                         U51(X1, mark X2) -> U51(X1, X2),
                       U51(X1, active X2) -> U51(X1, X2),
                         U51(mark X1, X2) -> U51(X1, X2),
                       U51(active X1, X2) -> U51(X1, X2),
                               U62 mark X -> U62 X,
                             U62 active X -> U62 X,
                         U61(X1, mark X2) -> U61(X1, X2),
                       U61(X1, active X2) -> U61(X1, X2),
                         U61(mark X1, X2) -> U61(X1, X2),
                       U61(active X1, X2) -> U61(X1, X2),
                               U71 mark X -> U71 X,
                             U71 active X -> U71 X,
                               U81 mark X -> U81 X,
                             U81 active X -> U81 X,
                     U92(X1, X2, mark X3) -> U92(X1, X2, X3),
                   U92(X1, X2, active X3) -> U92(X1, X2, X3),
                     U92(X1, mark X2, X3) -> U92(X1, X2, X3),
                   U92(X1, active X2, X3) -> U92(X1, X2, X3),
                     U92(mark X1, X2, X3) -> U92(X1, X2, X3),
                   U92(active X1, X2, X3) -> U92(X1, X2, X3),
                     U91(X1, X2, mark X3) -> U91(X1, X2, X3),
                   U91(X1, X2, active X3) -> U91(X1, X2, X3),
                     U91(X1, mark X2, X3) -> U91(X1, X2, X3),
                   U91(X1, active X2, X3) -> U91(X1, X2, X3),
                     U91(mark X1, X2, X3) -> U91(X1, X2, X3),
                   U91(active X1, X2, X3) -> U91(X1, X2, X3),
                     U93(X1, X2, mark X3) -> U93(X1, X2, X3),
                   U93(X1, X2, active X3) -> U93(X1, X2, X3),
                     U93(X1, mark X2, X3) -> U93(X1, X2, X3),
                   U93(X1, active X2, X3) -> U93(X1, X2, X3),
                     U93(mark X1, X2, X3) -> U93(X1, X2, X3),
                   U93(active X1, X2, X3) -> U93(X1, X2, X3),
                     U94(X1, X2, mark X3) -> U94(X1, X2, X3),
                   U94(X1, X2, active X3) -> U94(X1, X2, X3),
                     U94(X1, mark X2, X3) -> U94(X1, X2, X3),
                   U94(X1, active X2, X3) -> U94(X1, X2, X3),
                     U94(mark X1, X2, X3) -> U94(X1, X2, X3),
                   U94(active X1, X2, X3) -> U94(X1, X2, X3),
                         U95(X1, mark X2) -> U95(X1, X2),
                       U95(X1, active X2) -> U95(X1, X2),
                         U95(mark X1, X2) -> U95(X1, X2),
                       U95(active X1, X2) -> U95(X1, X2),
                               U96 mark X -> U96 X,
                             U96 active X -> U96 X
      }
      Open
     
     
     
     
     SCC (6):
      Strict:
       {  U102#(X1, X2, mark X3) -> U102#(X1, X2, X3),
        U102#(X1, X2, active X3) -> U102#(X1, X2, X3),
          U102#(X1, mark X2, X3) -> U102#(X1, X2, X3),
        U102#(X1, active X2, X3) -> U102#(X1, X2, X3),
          U102#(mark X1, X2, X3) -> U102#(X1, X2, X3),
        U102#(active X1, X2, X3) -> U102#(X1, X2, X3)}
      Weak:
      {
                        mark cons(X1, X2) -> active cons(mark X1, X2),
                                 mark 0() -> active 0(),
                             mark zeros() -> active zeros(),
                    mark U102(X1, X2, X3) -> active U102(mark X1, X2, X3),
                         mark isNatKind X -> active isNatKind X,
                    mark U101(X1, X2, X3) -> active U101(mark X1, X2, X3),
                                mark tt() -> active tt(),
                    mark U103(X1, X2, X3) -> active U103(mark X1, X2, X3),
                    mark isNatIListKind X -> active isNatIListKind X,
                    mark U104(X1, X2, X3) -> active U104(mark X1, X2, X3),
                        mark U105(X1, X2) -> active U105(mark X1, X2),
                             mark isNat X -> active isNat X,
                              mark U106 X -> active U106 mark X,
                        mark isNatIList X -> active isNatIList X,
                         mark U12(X1, X2) -> active U12(mark X1, X2),
                         mark U11(X1, X2) -> active U11(mark X1, X2),
                    mark U112(X1, X2, X3) -> active U112(mark X1, X2, X3),
                    mark U111(X1, X2, X3) -> active U111(mark X1, X2, X3),
                    mark U113(X1, X2, X3) -> active U113(mark X1, X2, X3),
                        mark U114(X1, X2) -> active U114(mark X1, X2),
                                 mark s X -> active s mark X,
                            mark length X -> active length mark X,
                               mark U13 X -> active U13 mark X,
                         mark isNatList X -> active isNatList X,
                              mark U122 X -> active U122 mark X,
                        mark U121(X1, X2) -> active U121(mark X1, X2),
                               mark nil() -> active nil(),
                mark U132(X1, X2, X3, X4) -> active U132(mark X1, X2, X3, X4),
                mark U131(X1, X2, X3, X4) -> active U131(mark X1, X2, X3, X4),
                mark U133(X1, X2, X3, X4) -> active U133(mark X1, X2, X3, X4),
                mark U134(X1, X2, X3, X4) -> active U134(mark X1, X2, X3, X4),
                mark U135(X1, X2, X3, X4) -> active U135(mark X1, X2, X3, X4),
                mark U136(X1, X2, X3, X4) -> active U136(mark X1, X2, X3, X4),
                        mark take(X1, X2) -> active take(mark X1, mark X2),
                         mark U22(X1, X2) -> active U22(mark X1, X2),
                         mark U21(X1, X2) -> active U21(mark X1, X2),
                               mark U23 X -> active U23 mark X,
                         mark U32(X1, X2) -> active U32(mark X1, X2),
                         mark U31(X1, X2) -> active U31(mark X1, X2),
                               mark U33 X -> active U33 mark X,
                     mark U42(X1, X2, X3) -> active U42(mark X1, X2, X3),
                     mark U41(X1, X2, X3) -> active U41(mark X1, X2, X3),
                     mark U43(X1, X2, X3) -> active U43(mark X1, X2, X3),
                     mark U44(X1, X2, X3) -> active U44(mark X1, X2, X3),
                         mark U45(X1, X2) -> active U45(mark X1, X2),
                               mark U46 X -> active U46 mark X,
                               mark U52 X -> active U52 mark X,
                         mark U51(X1, X2) -> active U51(mark X1, X2),
                               mark U62 X -> active U62 mark X,
                         mark U61(X1, X2) -> active U61(mark X1, X2),
                               mark U71 X -> active U71 mark X,
                               mark U81 X -> active U81 mark X,
                     mark U92(X1, X2, X3) -> active U92(mark X1, X2, X3),
                     mark U91(X1, X2, X3) -> active U91(mark X1, X2, X3),
                     mark U93(X1, X2, X3) -> active U93(mark X1, X2, X3),
                     mark U94(X1, X2, X3) -> active U94(mark X1, X2, X3),
                         mark U95(X1, X2) -> active U95(mark X1, X2),
                               mark U96 X -> active U96 mark X,
                        cons(X1, mark X2) -> cons(X1, X2),
                      cons(X1, active X2) -> cons(X1, X2),
                        cons(mark X1, X2) -> cons(X1, X2),
                      cons(active X1, X2) -> cons(X1, X2),
                           active zeros() -> mark cons(0(), zeros()),
                active U102(tt(), V1, V2) -> mark U103(isNatIListKind V2, V1, V2),
                     active isNatKind 0() -> mark tt(),
                    active isNatKind s V1 -> mark U81 isNatKind V1,
               active isNatKind length V1 -> mark U71 isNatIListKind V1,
                active U101(tt(), V1, V2) -> mark U102(isNatKind V1, V1, V2),
                active U103(tt(), V1, V2) -> mark U104(isNatIListKind V2, V1, V2),
       active isNatIListKind cons(V1, V2) -> mark U51(isNatKind V1, V2),
            active isNatIListKind zeros() -> mark tt(),
              active isNatIListKind nil() -> mark tt(),
       active isNatIListKind take(V1, V2) -> mark U61(isNatKind V1, V2),
                active U104(tt(), V1, V2) -> mark U105(isNat V1, V2),
                    active U105(tt(), V2) -> mark U106 isNatIList V2,
                         active isNat 0() -> mark tt(),
                        active isNat s V1 -> mark U21(isNatKind V1, V1),
                   active isNat length V1 -> mark U11(isNatIListKind V1, V1),
                         active U106 tt() -> mark tt(),
                      active isNatIList V -> mark U31(isNatIListKind V, V),
           active isNatIList cons(V1, V2) -> mark U41(isNatKind V1, V1, V2),
                active isNatIList zeros() -> mark tt(),
                     active U12(tt(), V1) -> mark U13 isNatList V1,
                     active U11(tt(), V1) -> mark U12(isNatIListKind V1, V1),
                  active U112(tt(), L, N) -> mark U113(isNat N, L, N),
                  active U111(tt(), L, N) -> mark U112(isNatIListKind L, L, N),
                  active U113(tt(), L, N) -> mark U114(isNatKind N, L),
                     active U114(tt(), L) -> mark s length L,
                 active length cons(N, L) -> mark U111(isNatList L, L, N),
                      active length nil() -> mark 0(),
                          active U13 tt() -> mark tt(),
            active isNatList cons(V1, V2) -> mark U91(isNatKind V1, V1, V2),
                   active isNatList nil() -> mark tt(),
            active isNatList take(V1, V2) -> mark U101(isNatKind V1, V1, V2),
                         active U122 tt() -> mark nil(),
                    active U121(tt(), IL) -> mark U122 isNatIListKind IL,
              active U132(tt(), IL, M, N) -> mark U133(isNat M, IL, M, N),
              active U131(tt(), IL, M, N) -> mark U132(isNatIListKind IL, IL, M, N),
              active U133(tt(), IL, M, N) -> mark U134(isNatKind M, IL, M, N),
              active U134(tt(), IL, M, N) -> mark U135(isNat N, IL, M, N),
              active U135(tt(), IL, M, N) -> mark U136(isNatKind N, IL, M, N),
              active U136(tt(), IL, M, N) -> mark cons(N, take(M, IL)),
                     active take(0(), IL) -> mark U121(isNatIList IL, IL),
            active take(s M, cons(N, IL)) -> mark U131(isNatIList IL, IL, M, N),
                     active U22(tt(), V1) -> mark U23 isNat V1,
                     active U21(tt(), V1) -> mark U22(isNatKind V1, V1),
                          active U23 tt() -> mark tt(),
                      active U32(tt(), V) -> mark U33 isNatList V,
                      active U31(tt(), V) -> mark U32(isNatIListKind V, V),
                          active U33 tt() -> mark tt(),
                 active U42(tt(), V1, V2) -> mark U43(isNatIListKind V2, V1, V2),
                 active U41(tt(), V1, V2) -> mark U42(isNatKind V1, V1, V2),
                 active U43(tt(), V1, V2) -> mark U44(isNatIListKind V2, V1, V2),
                 active U44(tt(), V1, V2) -> mark U45(isNat V1, V2),
                     active U45(tt(), V2) -> mark U46 isNatIList V2,
                          active U46 tt() -> mark tt(),
                          active U52 tt() -> mark tt(),
                     active U51(tt(), V2) -> mark U52 isNatIListKind V2,
                          active U62 tt() -> mark tt(),
                     active U61(tt(), V2) -> mark U62 isNatIListKind V2,
                          active U71 tt() -> mark tt(),
                          active U81 tt() -> mark tt(),
                 active U92(tt(), V1, V2) -> mark U93(isNatIListKind V2, V1, V2),
                 active U91(tt(), V1, V2) -> mark U92(isNatKind V1, V1, V2),
                 active U93(tt(), V1, V2) -> mark U94(isNatIListKind V2, V1, V2),
                 active U94(tt(), V1, V2) -> mark U95(isNat V1, V2),
                     active U95(tt(), V2) -> mark U96 isNatList V2,
                          active U96 tt() -> mark tt(),
                    U102(X1, X2, mark X3) -> U102(X1, X2, X3),
                  U102(X1, X2, active X3) -> U102(X1, X2, X3),
                    U102(X1, mark X2, X3) -> U102(X1, X2, X3),
                  U102(X1, active X2, X3) -> U102(X1, X2, X3),
                    U102(mark X1, X2, X3) -> U102(X1, X2, X3),
                  U102(active X1, X2, X3) -> U102(X1, X2, X3),
                         isNatKind mark X -> isNatKind X,
                       isNatKind active X -> isNatKind X,
                    U101(X1, X2, mark X3) -> U101(X1, X2, X3),
                  U101(X1, X2, active X3) -> U101(X1, X2, X3),
                    U101(X1, mark X2, X3) -> U101(X1, X2, X3),
                  U101(X1, active X2, X3) -> U101(X1, X2, X3),
                    U101(mark X1, X2, X3) -> U101(X1, X2, X3),
                  U101(active X1, X2, X3) -> U101(X1, X2, X3),
                    U103(X1, X2, mark X3) -> U103(X1, X2, X3),
                  U103(X1, X2, active X3) -> U103(X1, X2, X3),
                    U103(X1, mark X2, X3) -> U103(X1, X2, X3),
                  U103(X1, active X2, X3) -> U103(X1, X2, X3),
                    U103(mark X1, X2, X3) -> U103(X1, X2, X3),
                  U103(active X1, X2, X3) -> U103(X1, X2, X3),
                    isNatIListKind mark X -> isNatIListKind X,
                  isNatIListKind active X -> isNatIListKind X,
                    U104(X1, X2, mark X3) -> U104(X1, X2, X3),
                  U104(X1, X2, active X3) -> U104(X1, X2, X3),
                    U104(X1, mark X2, X3) -> U104(X1, X2, X3),
                  U104(X1, active X2, X3) -> U104(X1, X2, X3),
                    U104(mark X1, X2, X3) -> U104(X1, X2, X3),
                  U104(active X1, X2, X3) -> U104(X1, X2, X3),
                        U105(X1, mark X2) -> U105(X1, X2),
                      U105(X1, active X2) -> U105(X1, X2),
                        U105(mark X1, X2) -> U105(X1, X2),
                      U105(active X1, X2) -> U105(X1, X2),
                             isNat mark X -> isNat X,
                           isNat active X -> isNat X,
                              U106 mark X -> U106 X,
                            U106 active X -> U106 X,
                        isNatIList mark X -> isNatIList X,
                      isNatIList active X -> isNatIList X,
                         U12(X1, mark X2) -> U12(X1, X2),
                       U12(X1, active X2) -> U12(X1, X2),
                         U12(mark X1, X2) -> U12(X1, X2),
                       U12(active X1, X2) -> U12(X1, X2),
                         U11(X1, mark X2) -> U11(X1, X2),
                       U11(X1, active X2) -> U11(X1, X2),
                         U11(mark X1, X2) -> U11(X1, X2),
                       U11(active X1, X2) -> U11(X1, X2),
                    U112(X1, X2, mark X3) -> U112(X1, X2, X3),
                  U112(X1, X2, active X3) -> U112(X1, X2, X3),
                    U112(X1, mark X2, X3) -> U112(X1, X2, X3),
                  U112(X1, active X2, X3) -> U112(X1, X2, X3),
                    U112(mark X1, X2, X3) -> U112(X1, X2, X3),
                  U112(active X1, X2, X3) -> U112(X1, X2, X3),
                    U111(X1, X2, mark X3) -> U111(X1, X2, X3),
                  U111(X1, X2, active X3) -> U111(X1, X2, X3),
                    U111(X1, mark X2, X3) -> U111(X1, X2, X3),
                  U111(X1, active X2, X3) -> U111(X1, X2, X3),
                    U111(mark X1, X2, X3) -> U111(X1, X2, X3),
                  U111(active X1, X2, X3) -> U111(X1, X2, X3),
                    U113(X1, X2, mark X3) -> U113(X1, X2, X3),
                  U113(X1, X2, active X3) -> U113(X1, X2, X3),
                    U113(X1, mark X2, X3) -> U113(X1, X2, X3),
                  U113(X1, active X2, X3) -> U113(X1, X2, X3),
                    U113(mark X1, X2, X3) -> U113(X1, X2, X3),
                  U113(active X1, X2, X3) -> U113(X1, X2, X3),
                        U114(X1, mark X2) -> U114(X1, X2),
                      U114(X1, active X2) -> U114(X1, X2),
                        U114(mark X1, X2) -> U114(X1, X2),
                      U114(active X1, X2) -> U114(X1, X2),
                                 s mark X -> s X,
                               s active X -> s X,
                            length mark X -> length X,
                          length active X -> length X,
                               U13 mark X -> U13 X,
                             U13 active X -> U13 X,
                         isNatList mark X -> isNatList X,
                       isNatList active X -> isNatList X,
                              U122 mark X -> U122 X,
                            U122 active X -> U122 X,
                        U121(X1, mark X2) -> U121(X1, X2),
                      U121(X1, active X2) -> U121(X1, X2),
                        U121(mark X1, X2) -> U121(X1, X2),
                      U121(active X1, X2) -> U121(X1, X2),
                U132(X1, X2, X3, mark X4) -> U132(X1, X2, X3, X4),
              U132(X1, X2, X3, active X4) -> U132(X1, X2, X3, X4),
                U132(X1, X2, mark X3, X4) -> U132(X1, X2, X3, X4),
              U132(X1, X2, active X3, X4) -> U132(X1, X2, X3, X4),
                U132(X1, mark X2, X3, X4) -> U132(X1, X2, X3, X4),
              U132(X1, active X2, X3, X4) -> U132(X1, X2, X3, X4),
                U132(mark X1, X2, X3, X4) -> U132(X1, X2, X3, X4),
              U132(active X1, X2, X3, X4) -> U132(X1, X2, X3, X4),
                U131(X1, X2, X3, mark X4) -> U131(X1, X2, X3, X4),
              U131(X1, X2, X3, active X4) -> U131(X1, X2, X3, X4),
                U131(X1, X2, mark X3, X4) -> U131(X1, X2, X3, X4),
              U131(X1, X2, active X3, X4) -> U131(X1, X2, X3, X4),
                U131(X1, mark X2, X3, X4) -> U131(X1, X2, X3, X4),
              U131(X1, active X2, X3, X4) -> U131(X1, X2, X3, X4),
                U131(mark X1, X2, X3, X4) -> U131(X1, X2, X3, X4),
              U131(active X1, X2, X3, X4) -> U131(X1, X2, X3, X4),
                U133(X1, X2, X3, mark X4) -> U133(X1, X2, X3, X4),
              U133(X1, X2, X3, active X4) -> U133(X1, X2, X3, X4),
                U133(X1, X2, mark X3, X4) -> U133(X1, X2, X3, X4),
              U133(X1, X2, active X3, X4) -> U133(X1, X2, X3, X4),
                U133(X1, mark X2, X3, X4) -> U133(X1, X2, X3, X4),
              U133(X1, active X2, X3, X4) -> U133(X1, X2, X3, X4),
                U133(mark X1, X2, X3, X4) -> U133(X1, X2, X3, X4),
              U133(active X1, X2, X3, X4) -> U133(X1, X2, X3, X4),
                U134(X1, X2, X3, mark X4) -> U134(X1, X2, X3, X4),
              U134(X1, X2, X3, active X4) -> U134(X1, X2, X3, X4),
                U134(X1, X2, mark X3, X4) -> U134(X1, X2, X3, X4),
              U134(X1, X2, active X3, X4) -> U134(X1, X2, X3, X4),
                U134(X1, mark X2, X3, X4) -> U134(X1, X2, X3, X4),
              U134(X1, active X2, X3, X4) -> U134(X1, X2, X3, X4),
                U134(mark X1, X2, X3, X4) -> U134(X1, X2, X3, X4),
              U134(active X1, X2, X3, X4) -> U134(X1, X2, X3, X4),
                U135(X1, X2, X3, mark X4) -> U135(X1, X2, X3, X4),
              U135(X1, X2, X3, active X4) -> U135(X1, X2, X3, X4),
                U135(X1, X2, mark X3, X4) -> U135(X1, X2, X3, X4),
              U135(X1, X2, active X3, X4) -> U135(X1, X2, X3, X4),
                U135(X1, mark X2, X3, X4) -> U135(X1, X2, X3, X4),
              U135(X1, active X2, X3, X4) -> U135(X1, X2, X3, X4),
                U135(mark X1, X2, X3, X4) -> U135(X1, X2, X3, X4),
              U135(active X1, X2, X3, X4) -> U135(X1, X2, X3, X4),
                U136(X1, X2, X3, mark X4) -> U136(X1, X2, X3, X4),
              U136(X1, X2, X3, active X4) -> U136(X1, X2, X3, X4),
                U136(X1, X2, mark X3, X4) -> U136(X1, X2, X3, X4),
              U136(X1, X2, active X3, X4) -> U136(X1, X2, X3, X4),
                U136(X1, mark X2, X3, X4) -> U136(X1, X2, X3, X4),
              U136(X1, active X2, X3, X4) -> U136(X1, X2, X3, X4),
                U136(mark X1, X2, X3, X4) -> U136(X1, X2, X3, X4),
              U136(active X1, X2, X3, X4) -> U136(X1, X2, X3, X4),
                        take(X1, mark X2) -> take(X1, X2),
                      take(X1, active X2) -> take(X1, X2),
                        take(mark X1, X2) -> take(X1, X2),
                      take(active X1, X2) -> take(X1, X2),
                         U22(X1, mark X2) -> U22(X1, X2),
                       U22(X1, active X2) -> U22(X1, X2),
                         U22(mark X1, X2) -> U22(X1, X2),
                       U22(active X1, X2) -> U22(X1, X2),
                         U21(X1, mark X2) -> U21(X1, X2),
                       U21(X1, active X2) -> U21(X1, X2),
                         U21(mark X1, X2) -> U21(X1, X2),
                       U21(active X1, X2) -> U21(X1, X2),
                               U23 mark X -> U23 X,
                             U23 active X -> U23 X,
                         U32(X1, mark X2) -> U32(X1, X2),
                       U32(X1, active X2) -> U32(X1, X2),
                         U32(mark X1, X2) -> U32(X1, X2),
                       U32(active X1, X2) -> U32(X1, X2),
                         U31(X1, mark X2) -> U31(X1, X2),
                       U31(X1, active X2) -> U31(X1, X2),
                         U31(mark X1, X2) -> U31(X1, X2),
                       U31(active X1, X2) -> U31(X1, X2),
                               U33 mark X -> U33 X,
                             U33 active X -> U33 X,
                     U42(X1, X2, mark X3) -> U42(X1, X2, X3),
                   U42(X1, X2, active X3) -> U42(X1, X2, X3),
                     U42(X1, mark X2, X3) -> U42(X1, X2, X3),
                   U42(X1, active X2, X3) -> U42(X1, X2, X3),
                     U42(mark X1, X2, X3) -> U42(X1, X2, X3),
                   U42(active X1, X2, X3) -> U42(X1, X2, X3),
                     U41(X1, X2, mark X3) -> U41(X1, X2, X3),
                   U41(X1, X2, active X3) -> U41(X1, X2, X3),
                     U41(X1, mark X2, X3) -> U41(X1, X2, X3),
                   U41(X1, active X2, X3) -> U41(X1, X2, X3),
                     U41(mark X1, X2, X3) -> U41(X1, X2, X3),
                   U41(active X1, X2, X3) -> U41(X1, X2, X3),
                     U43(X1, X2, mark X3) -> U43(X1, X2, X3),
                   U43(X1, X2, active X3) -> U43(X1, X2, X3),
                     U43(X1, mark X2, X3) -> U43(X1, X2, X3),
                   U43(X1, active X2, X3) -> U43(X1, X2, X3),
                     U43(mark X1, X2, X3) -> U43(X1, X2, X3),
                   U43(active X1, X2, X3) -> U43(X1, X2, X3),
                     U44(X1, X2, mark X3) -> U44(X1, X2, X3),
                   U44(X1, X2, active X3) -> U44(X1, X2, X3),
                     U44(X1, mark X2, X3) -> U44(X1, X2, X3),
                   U44(X1, active X2, X3) -> U44(X1, X2, X3),
                     U44(mark X1, X2, X3) -> U44(X1, X2, X3),
                   U44(active X1, X2, X3) -> U44(X1, X2, X3),
                         U45(X1, mark X2) -> U45(X1, X2),
                       U45(X1, active X2) -> U45(X1, X2),
                         U45(mark X1, X2) -> U45(X1, X2),
                       U45(active X1, X2) -> U45(X1, X2),
                               U46 mark X -> U46 X,
                             U46 active X -> U46 X,
                               U52 mark X -> U52 X,
                             U52 active X -> U52 X,
                         U51(X1, mark X2) -> U51(X1, X2),
                       U51(X1, active X2) -> U51(X1, X2),
                         U51(mark X1, X2) -> U51(X1, X2),
                       U51(active X1, X2) -> U51(X1, X2),
                               U62 mark X -> U62 X,
                             U62 active X -> U62 X,
                         U61(X1, mark X2) -> U61(X1, X2),
                       U61(X1, active X2) -> U61(X1, X2),
                         U61(mark X1, X2) -> U61(X1, X2),
                       U61(active X1, X2) -> U61(X1, X2),
                               U71 mark X -> U71 X,
                             U71 active X -> U71 X,
                               U81 mark X -> U81 X,
                             U81 active X -> U81 X,
                     U92(X1, X2, mark X3) -> U92(X1, X2, X3),
                   U92(X1, X2, active X3) -> U92(X1, X2, X3),
                     U92(X1, mark X2, X3) -> U92(X1, X2, X3),
                   U92(X1, active X2, X3) -> U92(X1, X2, X3),
                     U92(mark X1, X2, X3) -> U92(X1, X2, X3),
                   U92(active X1, X2, X3) -> U92(X1, X2, X3),
                     U91(X1, X2, mark X3) -> U91(X1, X2, X3),
                   U91(X1, X2, active X3) -> U91(X1, X2, X3),
                     U91(X1, mark X2, X3) -> U91(X1, X2, X3),
                   U91(X1, active X2, X3) -> U91(X1, X2, X3),
                     U91(mark X1, X2, X3) -> U91(X1, X2, X3),
                   U91(active X1, X2, X3) -> U91(X1, X2, X3),
                     U93(X1, X2, mark X3) -> U93(X1, X2, X3),
                   U93(X1, X2, active X3) -> U93(X1, X2, X3),
                     U93(X1, mark X2, X3) -> U93(X1, X2, X3),
                   U93(X1, active X2, X3) -> U93(X1, X2, X3),
                     U93(mark X1, X2, X3) -> U93(X1, X2, X3),
                   U93(active X1, X2, X3) -> U93(X1, X2, X3),
                     U94(X1, X2, mark X3) -> U94(X1, X2, X3),
                   U94(X1, X2, active X3) -> U94(X1, X2, X3),
                     U94(X1, mark X2, X3) -> U94(X1, X2, X3),
                   U94(X1, active X2, X3) -> U94(X1, X2, X3),
                     U94(mark X1, X2, X3) -> U94(X1, X2, X3),
                   U94(active X1, X2, X3) -> U94(X1, X2, X3),
                         U95(X1, mark X2) -> U95(X1, X2),
                       U95(X1, active X2) -> U95(X1, X2),
                         U95(mark X1, X2) -> U95(X1, X2),
                       U95(active X1, X2) -> U95(X1, X2),
                               U96 mark X -> U96 X,
                             U96 active X -> U96 X
      }
      Open
     
     
     
     SCC (4):
      Strict:
       {  cons#(X1, mark X2) -> cons#(X1, X2),
        cons#(X1, active X2) -> cons#(X1, X2),
          cons#(mark X1, X2) -> cons#(X1, X2),
        cons#(active X1, X2) -> cons#(X1, X2)}
      Weak:
      {
                        mark cons(X1, X2) -> active cons(mark X1, X2),
                                 mark 0() -> active 0(),
                             mark zeros() -> active zeros(),
                    mark U102(X1, X2, X3) -> active U102(mark X1, X2, X3),
                         mark isNatKind X -> active isNatKind X,
                    mark U101(X1, X2, X3) -> active U101(mark X1, X2, X3),
                                mark tt() -> active tt(),
                    mark U103(X1, X2, X3) -> active U103(mark X1, X2, X3),
                    mark isNatIListKind X -> active isNatIListKind X,
                    mark U104(X1, X2, X3) -> active U104(mark X1, X2, X3),
                        mark U105(X1, X2) -> active U105(mark X1, X2),
                             mark isNat X -> active isNat X,
                              mark U106 X -> active U106 mark X,
                        mark isNatIList X -> active isNatIList X,
                         mark U12(X1, X2) -> active U12(mark X1, X2),
                         mark U11(X1, X2) -> active U11(mark X1, X2),
                    mark U112(X1, X2, X3) -> active U112(mark X1, X2, X3),
                    mark U111(X1, X2, X3) -> active U111(mark X1, X2, X3),
                    mark U113(X1, X2, X3) -> active U113(mark X1, X2, X3),
                        mark U114(X1, X2) -> active U114(mark X1, X2),
                                 mark s X -> active s mark X,
                            mark length X -> active length mark X,
                               mark U13 X -> active U13 mark X,
                         mark isNatList X -> active isNatList X,
                              mark U122 X -> active U122 mark X,
                        mark U121(X1, X2) -> active U121(mark X1, X2),
                               mark nil() -> active nil(),
                mark U132(X1, X2, X3, X4) -> active U132(mark X1, X2, X3, X4),
                mark U131(X1, X2, X3, X4) -> active U131(mark X1, X2, X3, X4),
                mark U133(X1, X2, X3, X4) -> active U133(mark X1, X2, X3, X4),
                mark U134(X1, X2, X3, X4) -> active U134(mark X1, X2, X3, X4),
                mark U135(X1, X2, X3, X4) -> active U135(mark X1, X2, X3, X4),
                mark U136(X1, X2, X3, X4) -> active U136(mark X1, X2, X3, X4),
                        mark take(X1, X2) -> active take(mark X1, mark X2),
                         mark U22(X1, X2) -> active U22(mark X1, X2),
                         mark U21(X1, X2) -> active U21(mark X1, X2),
                               mark U23 X -> active U23 mark X,
                         mark U32(X1, X2) -> active U32(mark X1, X2),
                         mark U31(X1, X2) -> active U31(mark X1, X2),
                               mark U33 X -> active U33 mark X,
                     mark U42(X1, X2, X3) -> active U42(mark X1, X2, X3),
                     mark U41(X1, X2, X3) -> active U41(mark X1, X2, X3),
                     mark U43(X1, X2, X3) -> active U43(mark X1, X2, X3),
                     mark U44(X1, X2, X3) -> active U44(mark X1, X2, X3),
                         mark U45(X1, X2) -> active U45(mark X1, X2),
                               mark U46 X -> active U46 mark X,
                               mark U52 X -> active U52 mark X,
                         mark U51(X1, X2) -> active U51(mark X1, X2),
                               mark U62 X -> active U62 mark X,
                         mark U61(X1, X2) -> active U61(mark X1, X2),
                               mark U71 X -> active U71 mark X,
                               mark U81 X -> active U81 mark X,
                     mark U92(X1, X2, X3) -> active U92(mark X1, X2, X3),
                     mark U91(X1, X2, X3) -> active U91(mark X1, X2, X3),
                     mark U93(X1, X2, X3) -> active U93(mark X1, X2, X3),
                     mark U94(X1, X2, X3) -> active U94(mark X1, X2, X3),
                         mark U95(X1, X2) -> active U95(mark X1, X2),
                               mark U96 X -> active U96 mark X,
                        cons(X1, mark X2) -> cons(X1, X2),
                      cons(X1, active X2) -> cons(X1, X2),
                        cons(mark X1, X2) -> cons(X1, X2),
                      cons(active X1, X2) -> cons(X1, X2),
                           active zeros() -> mark cons(0(), zeros()),
                active U102(tt(), V1, V2) -> mark U103(isNatIListKind V2, V1, V2),
                     active isNatKind 0() -> mark tt(),
                    active isNatKind s V1 -> mark U81 isNatKind V1,
               active isNatKind length V1 -> mark U71 isNatIListKind V1,
                active U101(tt(), V1, V2) -> mark U102(isNatKind V1, V1, V2),
                active U103(tt(), V1, V2) -> mark U104(isNatIListKind V2, V1, V2),
       active isNatIListKind cons(V1, V2) -> mark U51(isNatKind V1, V2),
            active isNatIListKind zeros() -> mark tt(),
              active isNatIListKind nil() -> mark tt(),
       active isNatIListKind take(V1, V2) -> mark U61(isNatKind V1, V2),
                active U104(tt(), V1, V2) -> mark U105(isNat V1, V2),
                    active U105(tt(), V2) -> mark U106 isNatIList V2,
                         active isNat 0() -> mark tt(),
                        active isNat s V1 -> mark U21(isNatKind V1, V1),
                   active isNat length V1 -> mark U11(isNatIListKind V1, V1),
                         active U106 tt() -> mark tt(),
                      active isNatIList V -> mark U31(isNatIListKind V, V),
           active isNatIList cons(V1, V2) -> mark U41(isNatKind V1, V1, V2),
                active isNatIList zeros() -> mark tt(),
                     active U12(tt(), V1) -> mark U13 isNatList V1,
                     active U11(tt(), V1) -> mark U12(isNatIListKind V1, V1),
                  active U112(tt(), L, N) -> mark U113(isNat N, L, N),
                  active U111(tt(), L, N) -> mark U112(isNatIListKind L, L, N),
                  active U113(tt(), L, N) -> mark U114(isNatKind N, L),
                     active U114(tt(), L) -> mark s length L,
                 active length cons(N, L) -> mark U111(isNatList L, L, N),
                      active length nil() -> mark 0(),
                          active U13 tt() -> mark tt(),
            active isNatList cons(V1, V2) -> mark U91(isNatKind V1, V1, V2),
                   active isNatList nil() -> mark tt(),
            active isNatList take(V1, V2) -> mark U101(isNatKind V1, V1, V2),
                         active U122 tt() -> mark nil(),
                    active U121(tt(), IL) -> mark U122 isNatIListKind IL,
              active U132(tt(), IL, M, N) -> mark U133(isNat M, IL, M, N),
              active U131(tt(), IL, M, N) -> mark U132(isNatIListKind IL, IL, M, N),
              active U133(tt(), IL, M, N) -> mark U134(isNatKind M, IL, M, N),
              active U134(tt(), IL, M, N) -> mark U135(isNat N, IL, M, N),
              active U135(tt(), IL, M, N) -> mark U136(isNatKind N, IL, M, N),
              active U136(tt(), IL, M, N) -> mark cons(N, take(M, IL)),
                     active take(0(), IL) -> mark U121(isNatIList IL, IL),
            active take(s M, cons(N, IL)) -> mark U131(isNatIList IL, IL, M, N),
                     active U22(tt(), V1) -> mark U23 isNat V1,
                     active U21(tt(), V1) -> mark U22(isNatKind V1, V1),
                          active U23 tt() -> mark tt(),
                      active U32(tt(), V) -> mark U33 isNatList V,
                      active U31(tt(), V) -> mark U32(isNatIListKind V, V),
                          active U33 tt() -> mark tt(),
                 active U42(tt(), V1, V2) -> mark U43(isNatIListKind V2, V1, V2),
                 active U41(tt(), V1, V2) -> mark U42(isNatKind V1, V1, V2),
                 active U43(tt(), V1, V2) -> mark U44(isNatIListKind V2, V1, V2),
                 active U44(tt(), V1, V2) -> mark U45(isNat V1, V2),
                     active U45(tt(), V2) -> mark U46 isNatIList V2,
                          active U46 tt() -> mark tt(),
                          active U52 tt() -> mark tt(),
                     active U51(tt(), V2) -> mark U52 isNatIListKind V2,
                          active U62 tt() -> mark tt(),
                     active U61(tt(), V2) -> mark U62 isNatIListKind V2,
                          active U71 tt() -> mark tt(),
                          active U81 tt() -> mark tt(),
                 active U92(tt(), V1, V2) -> mark U93(isNatIListKind V2, V1, V2),
                 active U91(tt(), V1, V2) -> mark U92(isNatKind V1, V1, V2),
                 active U93(tt(), V1, V2) -> mark U94(isNatIListKind V2, V1, V2),
                 active U94(tt(), V1, V2) -> mark U95(isNat V1, V2),
                     active U95(tt(), V2) -> mark U96 isNatList V2,
                          active U96 tt() -> mark tt(),
                    U102(X1, X2, mark X3) -> U102(X1, X2, X3),
                  U102(X1, X2, active X3) -> U102(X1, X2, X3),
                    U102(X1, mark X2, X3) -> U102(X1, X2, X3),
                  U102(X1, active X2, X3) -> U102(X1, X2, X3),
                    U102(mark X1, X2, X3) -> U102(X1, X2, X3),
                  U102(active X1, X2, X3) -> U102(X1, X2, X3),
                         isNatKind mark X -> isNatKind X,
                       isNatKind active X -> isNatKind X,
                    U101(X1, X2, mark X3) -> U101(X1, X2, X3),
                  U101(X1, X2, active X3) -> U101(X1, X2, X3),
                    U101(X1, mark X2, X3) -> U101(X1, X2, X3),
                  U101(X1, active X2, X3) -> U101(X1, X2, X3),
                    U101(mark X1, X2, X3) -> U101(X1, X2, X3),
                  U101(active X1, X2, X3) -> U101(X1, X2, X3),
                    U103(X1, X2, mark X3) -> U103(X1, X2, X3),
                  U103(X1, X2, active X3) -> U103(X1, X2, X3),
                    U103(X1, mark X2, X3) -> U103(X1, X2, X3),
                  U103(X1, active X2, X3) -> U103(X1, X2, X3),
                    U103(mark X1, X2, X3) -> U103(X1, X2, X3),
                  U103(active X1, X2, X3) -> U103(X1, X2, X3),
                    isNatIListKind mark X -> isNatIListKind X,
                  isNatIListKind active X -> isNatIListKind X,
                    U104(X1, X2, mark X3) -> U104(X1, X2, X3),
                  U104(X1, X2, active X3) -> U104(X1, X2, X3),
                    U104(X1, mark X2, X3) -> U104(X1, X2, X3),
                  U104(X1, active X2, X3) -> U104(X1, X2, X3),
                    U104(mark X1, X2, X3) -> U104(X1, X2, X3),
                  U104(active X1, X2, X3) -> U104(X1, X2, X3),
                        U105(X1, mark X2) -> U105(X1, X2),
                      U105(X1, active X2) -> U105(X1, X2),
                        U105(mark X1, X2) -> U105(X1, X2),
                      U105(active X1, X2) -> U105(X1, X2),
                             isNat mark X -> isNat X,
                           isNat active X -> isNat X,
                              U106 mark X -> U106 X,
                            U106 active X -> U106 X,
                        isNatIList mark X -> isNatIList X,
                      isNatIList active X -> isNatIList X,
                         U12(X1, mark X2) -> U12(X1, X2),
                       U12(X1, active X2) -> U12(X1, X2),
                         U12(mark X1, X2) -> U12(X1, X2),
                       U12(active X1, X2) -> U12(X1, X2),
                         U11(X1, mark X2) -> U11(X1, X2),
                       U11(X1, active X2) -> U11(X1, X2),
                         U11(mark X1, X2) -> U11(X1, X2),
                       U11(active X1, X2) -> U11(X1, X2),
                    U112(X1, X2, mark X3) -> U112(X1, X2, X3),
                  U112(X1, X2, active X3) -> U112(X1, X2, X3),
                    U112(X1, mark X2, X3) -> U112(X1, X2, X3),
                  U112(X1, active X2, X3) -> U112(X1, X2, X3),
                    U112(mark X1, X2, X3) -> U112(X1, X2, X3),
                  U112(active X1, X2, X3) -> U112(X1, X2, X3),
                    U111(X1, X2, mark X3) -> U111(X1, X2, X3),
                  U111(X1, X2, active X3) -> U111(X1, X2, X3),
                    U111(X1, mark X2, X3) -> U111(X1, X2, X3),
                  U111(X1, active X2, X3) -> U111(X1, X2, X3),
                    U111(mark X1, X2, X3) -> U111(X1, X2, X3),
                  U111(active X1, X2, X3) -> U111(X1, X2, X3),
                    U113(X1, X2, mark X3) -> U113(X1, X2, X3),
                  U113(X1, X2, active X3) -> U113(X1, X2, X3),
                    U113(X1, mark X2, X3) -> U113(X1, X2, X3),
                  U113(X1, active X2, X3) -> U113(X1, X2, X3),
                    U113(mark X1, X2, X3) -> U113(X1, X2, X3),
                  U113(active X1, X2, X3) -> U113(X1, X2, X3),
                        U114(X1, mark X2) -> U114(X1, X2),
                      U114(X1, active X2) -> U114(X1, X2),
                        U114(mark X1, X2) -> U114(X1, X2),
                      U114(active X1, X2) -> U114(X1, X2),
                                 s mark X -> s X,
                               s active X -> s X,
                            length mark X -> length X,
                          length active X -> length X,
                               U13 mark X -> U13 X,
                             U13 active X -> U13 X,
                         isNatList mark X -> isNatList X,
                       isNatList active X -> isNatList X,
                              U122 mark X -> U122 X,
                            U122 active X -> U122 X,
                        U121(X1, mark X2) -> U121(X1, X2),
                      U121(X1, active X2) -> U121(X1, X2),
                        U121(mark X1, X2) -> U121(X1, X2),
                      U121(active X1, X2) -> U121(X1, X2),
                U132(X1, X2, X3, mark X4) -> U132(X1, X2, X3, X4),
              U132(X1, X2, X3, active X4) -> U132(X1, X2, X3, X4),
                U132(X1, X2, mark X3, X4) -> U132(X1, X2, X3, X4),
              U132(X1, X2, active X3, X4) -> U132(X1, X2, X3, X4),
                U132(X1, mark X2, X3, X4) -> U132(X1, X2, X3, X4),
              U132(X1, active X2, X3, X4) -> U132(X1, X2, X3, X4),
                U132(mark X1, X2, X3, X4) -> U132(X1, X2, X3, X4),
              U132(active X1, X2, X3, X4) -> U132(X1, X2, X3, X4),
                U131(X1, X2, X3, mark X4) -> U131(X1, X2, X3, X4),
              U131(X1, X2, X3, active X4) -> U131(X1, X2, X3, X4),
                U131(X1, X2, mark X3, X4) -> U131(X1, X2, X3, X4),
              U131(X1, X2, active X3, X4) -> U131(X1, X2, X3, X4),
                U131(X1, mark X2, X3, X4) -> U131(X1, X2, X3, X4),
              U131(X1, active X2, X3, X4) -> U131(X1, X2, X3, X4),
                U131(mark X1, X2, X3, X4) -> U131(X1, X2, X3, X4),
              U131(active X1, X2, X3, X4) -> U131(X1, X2, X3, X4),
                U133(X1, X2, X3, mark X4) -> U133(X1, X2, X3, X4),
              U133(X1, X2, X3, active X4) -> U133(X1, X2, X3, X4),
                U133(X1, X2, mark X3, X4) -> U133(X1, X2, X3, X4),
              U133(X1, X2, active X3, X4) -> U133(X1, X2, X3, X4),
                U133(X1, mark X2, X3, X4) -> U133(X1, X2, X3, X4),
              U133(X1, active X2, X3, X4) -> U133(X1, X2, X3, X4),
                U133(mark X1, X2, X3, X4) -> U133(X1, X2, X3, X4),
              U133(active X1, X2, X3, X4) -> U133(X1, X2, X3, X4),
                U134(X1, X2, X3, mark X4) -> U134(X1, X2, X3, X4),
              U134(X1, X2, X3, active X4) -> U134(X1, X2, X3, X4),
                U134(X1, X2, mark X3, X4) -> U134(X1, X2, X3, X4),
              U134(X1, X2, active X3, X4) -> U134(X1, X2, X3, X4),
                U134(X1, mark X2, X3, X4) -> U134(X1, X2, X3, X4),
              U134(X1, active X2, X3, X4) -> U134(X1, X2, X3, X4),
                U134(mark X1, X2, X3, X4) -> U134(X1, X2, X3, X4),
              U134(active X1, X2, X3, X4) -> U134(X1, X2, X3, X4),
                U135(X1, X2, X3, mark X4) -> U135(X1, X2, X3, X4),
              U135(X1, X2, X3, active X4) -> U135(X1, X2, X3, X4),
                U135(X1, X2, mark X3, X4) -> U135(X1, X2, X3, X4),
              U135(X1, X2, active X3, X4) -> U135(X1, X2, X3, X4),
                U135(X1, mark X2, X3, X4) -> U135(X1, X2, X3, X4),
              U135(X1, active X2, X3, X4) -> U135(X1, X2, X3, X4),
                U135(mark X1, X2, X3, X4) -> U135(X1, X2, X3, X4),
              U135(active X1, X2, X3, X4) -> U135(X1, X2, X3, X4),
                U136(X1, X2, X3, mark X4) -> U136(X1, X2, X3, X4),
              U136(X1, X2, X3, active X4) -> U136(X1, X2, X3, X4),
                U136(X1, X2, mark X3, X4) -> U136(X1, X2, X3, X4),
              U136(X1, X2, active X3, X4) -> U136(X1, X2, X3, X4),
                U136(X1, mark X2, X3, X4) -> U136(X1, X2, X3, X4),
              U136(X1, active X2, X3, X4) -> U136(X1, X2, X3, X4),
                U136(mark X1, X2, X3, X4) -> U136(X1, X2, X3, X4),
              U136(active X1, X2, X3, X4) -> U136(X1, X2, X3, X4),
                        take(X1, mark X2) -> take(X1, X2),
                      take(X1, active X2) -> take(X1, X2),
                        take(mark X1, X2) -> take(X1, X2),
                      take(active X1, X2) -> take(X1, X2),
                         U22(X1, mark X2) -> U22(X1, X2),
                       U22(X1, active X2) -> U22(X1, X2),
                         U22(mark X1, X2) -> U22(X1, X2),
                       U22(active X1, X2) -> U22(X1, X2),
                         U21(X1, mark X2) -> U21(X1, X2),
                       U21(X1, active X2) -> U21(X1, X2),
                         U21(mark X1, X2) -> U21(X1, X2),
                       U21(active X1, X2) -> U21(X1, X2),
                               U23 mark X -> U23 X,
                             U23 active X -> U23 X,
                         U32(X1, mark X2) -> U32(X1, X2),
                       U32(X1, active X2) -> U32(X1, X2),
                         U32(mark X1, X2) -> U32(X1, X2),
                       U32(active X1, X2) -> U32(X1, X2),
                         U31(X1, mark X2) -> U31(X1, X2),
                       U31(X1, active X2) -> U31(X1, X2),
                         U31(mark X1, X2) -> U31(X1, X2),
                       U31(active X1, X2) -> U31(X1, X2),
                               U33 mark X -> U33 X,
                             U33 active X -> U33 X,
                     U42(X1, X2, mark X3) -> U42(X1, X2, X3),
                   U42(X1, X2, active X3) -> U42(X1, X2, X3),
                     U42(X1, mark X2, X3) -> U42(X1, X2, X3),
                   U42(X1, active X2, X3) -> U42(X1, X2, X3),
                     U42(mark X1, X2, X3) -> U42(X1, X2, X3),
                   U42(active X1, X2, X3) -> U42(X1, X2, X3),
                     U41(X1, X2, mark X3) -> U41(X1, X2, X3),
                   U41(X1, X2, active X3) -> U41(X1, X2, X3),
                     U41(X1, mark X2, X3) -> U41(X1, X2, X3),
                   U41(X1, active X2, X3) -> U41(X1, X2, X3),
                     U41(mark X1, X2, X3) -> U41(X1, X2, X3),
                   U41(active X1, X2, X3) -> U41(X1, X2, X3),
                     U43(X1, X2, mark X3) -> U43(X1, X2, X3),
                   U43(X1, X2, active X3) -> U43(X1, X2, X3),
                     U43(X1, mark X2, X3) -> U43(X1, X2, X3),
                   U43(X1, active X2, X3) -> U43(X1, X2, X3),
                     U43(mark X1, X2, X3) -> U43(X1, X2, X3),
                   U43(active X1, X2, X3) -> U43(X1, X2, X3),
                     U44(X1, X2, mark X3) -> U44(X1, X2, X3),
                   U44(X1, X2, active X3) -> U44(X1, X2, X3),
                     U44(X1, mark X2, X3) -> U44(X1, X2, X3),
                   U44(X1, active X2, X3) -> U44(X1, X2, X3),
                     U44(mark X1, X2, X3) -> U44(X1, X2, X3),
                   U44(active X1, X2, X3) -> U44(X1, X2, X3),
                         U45(X1, mark X2) -> U45(X1, X2),
                       U45(X1, active X2) -> U45(X1, X2),
                         U45(mark X1, X2) -> U45(X1, X2),
                       U45(active X1, X2) -> U45(X1, X2),
                               U46 mark X -> U46 X,
                             U46 active X -> U46 X,
                               U52 mark X -> U52 X,
                             U52 active X -> U52 X,
                         U51(X1, mark X2) -> U51(X1, X2),
                       U51(X1, active X2) -> U51(X1, X2),
                         U51(mark X1, X2) -> U51(X1, X2),
                       U51(active X1, X2) -> U51(X1, X2),
                               U62 mark X -> U62 X,
                             U62 active X -> U62 X,
                         U61(X1, mark X2) -> U61(X1, X2),
                       U61(X1, active X2) -> U61(X1, X2),
                         U61(mark X1, X2) -> U61(X1, X2),
                       U61(active X1, X2) -> U61(X1, X2),
                               U71 mark X -> U71 X,
                             U71 active X -> U71 X,
                               U81 mark X -> U81 X,
                             U81 active X -> U81 X,
                     U92(X1, X2, mark X3) -> U92(X1, X2, X3),
                   U92(X1, X2, active X3) -> U92(X1, X2, X3),
                     U92(X1, mark X2, X3) -> U92(X1, X2, X3),
                   U92(X1, active X2, X3) -> U92(X1, X2, X3),
                     U92(mark X1, X2, X3) -> U92(X1, X2, X3),
                   U92(active X1, X2, X3) -> U92(X1, X2, X3),
                     U91(X1, X2, mark X3) -> U91(X1, X2, X3),
                   U91(X1, X2, active X3) -> U91(X1, X2, X3),
                     U91(X1, mark X2, X3) -> U91(X1, X2, X3),
                   U91(X1, active X2, X3) -> U91(X1, X2, X3),
                     U91(mark X1, X2, X3) -> U91(X1, X2, X3),
                   U91(active X1, X2, X3) -> U91(X1, X2, X3),
                     U93(X1, X2, mark X3) -> U93(X1, X2, X3),
                   U93(X1, X2, active X3) -> U93(X1, X2, X3),
                     U93(X1, mark X2, X3) -> U93(X1, X2, X3),
                   U93(X1, active X2, X3) -> U93(X1, X2, X3),
                     U93(mark X1, X2, X3) -> U93(X1, X2, X3),
                   U93(active X1, X2, X3) -> U93(X1, X2, X3),
                     U94(X1, X2, mark X3) -> U94(X1, X2, X3),
                   U94(X1, X2, active X3) -> U94(X1, X2, X3),
                     U94(X1, mark X2, X3) -> U94(X1, X2, X3),
                   U94(X1, active X2, X3) -> U94(X1, X2, X3),
                     U94(mark X1, X2, X3) -> U94(X1, X2, X3),
                   U94(active X1, X2, X3) -> U94(X1, X2, X3),
                         U95(X1, mark X2) -> U95(X1, X2),
                       U95(X1, active X2) -> U95(X1, X2),
                         U95(mark X1, X2) -> U95(X1, X2),
                       U95(active X1, X2) -> U95(X1, X2),
                               U96 mark X -> U96 X,
                             U96 active X -> U96 X
      }
      Open
     
     SCC (4):
      Strict:
       {  take#(X1, mark X2) -> take#(X1, X2),
        take#(X1, active X2) -> take#(X1, X2),
          take#(mark X1, X2) -> take#(X1, X2),
        take#(active X1, X2) -> take#(X1, X2)}
      Weak:
      {
                        mark cons(X1, X2) -> active cons(mark X1, X2),
                                 mark 0() -> active 0(),
                             mark zeros() -> active zeros(),
                    mark U102(X1, X2, X3) -> active U102(mark X1, X2, X3),
                         mark isNatKind X -> active isNatKind X,
                    mark U101(X1, X2, X3) -> active U101(mark X1, X2, X3),
                                mark tt() -> active tt(),
                    mark U103(X1, X2, X3) -> active U103(mark X1, X2, X3),
                    mark isNatIListKind X -> active isNatIListKind X,
                    mark U104(X1, X2, X3) -> active U104(mark X1, X2, X3),
                        mark U105(X1, X2) -> active U105(mark X1, X2),
                             mark isNat X -> active isNat X,
                              mark U106 X -> active U106 mark X,
                        mark isNatIList X -> active isNatIList X,
                         mark U12(X1, X2) -> active U12(mark X1, X2),
                         mark U11(X1, X2) -> active U11(mark X1, X2),
                    mark U112(X1, X2, X3) -> active U112(mark X1, X2, X3),
                    mark U111(X1, X2, X3) -> active U111(mark X1, X2, X3),
                    mark U113(X1, X2, X3) -> active U113(mark X1, X2, X3),
                        mark U114(X1, X2) -> active U114(mark X1, X2),
                                 mark s X -> active s mark X,
                            mark length X -> active length mark X,
                               mark U13 X -> active U13 mark X,
                         mark isNatList X -> active isNatList X,
                              mark U122 X -> active U122 mark X,
                        mark U121(X1, X2) -> active U121(mark X1, X2),
                               mark nil() -> active nil(),
                mark U132(X1, X2, X3, X4) -> active U132(mark X1, X2, X3, X4),
                mark U131(X1, X2, X3, X4) -> active U131(mark X1, X2, X3, X4),
                mark U133(X1, X2, X3, X4) -> active U133(mark X1, X2, X3, X4),
                mark U134(X1, X2, X3, X4) -> active U134(mark X1, X2, X3, X4),
                mark U135(X1, X2, X3, X4) -> active U135(mark X1, X2, X3, X4),
                mark U136(X1, X2, X3, X4) -> active U136(mark X1, X2, X3, X4),
                        mark take(X1, X2) -> active take(mark X1, mark X2),
                         mark U22(X1, X2) -> active U22(mark X1, X2),
                         mark U21(X1, X2) -> active U21(mark X1, X2),
                               mark U23 X -> active U23 mark X,
                         mark U32(X1, X2) -> active U32(mark X1, X2),
                         mark U31(X1, X2) -> active U31(mark X1, X2),
                               mark U33 X -> active U33 mark X,
                     mark U42(X1, X2, X3) -> active U42(mark X1, X2, X3),
                     mark U41(X1, X2, X3) -> active U41(mark X1, X2, X3),
                     mark U43(X1, X2, X3) -> active U43(mark X1, X2, X3),
                     mark U44(X1, X2, X3) -> active U44(mark X1, X2, X3),
                         mark U45(X1, X2) -> active U45(mark X1, X2),
                               mark U46 X -> active U46 mark X,
                               mark U52 X -> active U52 mark X,
                         mark U51(X1, X2) -> active U51(mark X1, X2),
                               mark U62 X -> active U62 mark X,
                         mark U61(X1, X2) -> active U61(mark X1, X2),
                               mark U71 X -> active U71 mark X,
                               mark U81 X -> active U81 mark X,
                     mark U92(X1, X2, X3) -> active U92(mark X1, X2, X3),
                     mark U91(X1, X2, X3) -> active U91(mark X1, X2, X3),
                     mark U93(X1, X2, X3) -> active U93(mark X1, X2, X3),
                     mark U94(X1, X2, X3) -> active U94(mark X1, X2, X3),
                         mark U95(X1, X2) -> active U95(mark X1, X2),
                               mark U96 X -> active U96 mark X,
                        cons(X1, mark X2) -> cons(X1, X2),
                      cons(X1, active X2) -> cons(X1, X2),
                        cons(mark X1, X2) -> cons(X1, X2),
                      cons(active X1, X2) -> cons(X1, X2),
                           active zeros() -> mark cons(0(), zeros()),
                active U102(tt(), V1, V2) -> mark U103(isNatIListKind V2, V1, V2),
                     active isNatKind 0() -> mark tt(),
                    active isNatKind s V1 -> mark U81 isNatKind V1,
               active isNatKind length V1 -> mark U71 isNatIListKind V1,
                active U101(tt(), V1, V2) -> mark U102(isNatKind V1, V1, V2),
                active U103(tt(), V1, V2) -> mark U104(isNatIListKind V2, V1, V2),
       active isNatIListKind cons(V1, V2) -> mark U51(isNatKind V1, V2),
            active isNatIListKind zeros() -> mark tt(),
              active isNatIListKind nil() -> mark tt(),
       active isNatIListKind take(V1, V2) -> mark U61(isNatKind V1, V2),
                active U104(tt(), V1, V2) -> mark U105(isNat V1, V2),
                    active U105(tt(), V2) -> mark U106 isNatIList V2,
                         active isNat 0() -> mark tt(),
                        active isNat s V1 -> mark U21(isNatKind V1, V1),
                   active isNat length V1 -> mark U11(isNatIListKind V1, V1),
                         active U106 tt() -> mark tt(),
                      active isNatIList V -> mark U31(isNatIListKind V, V),
           active isNatIList cons(V1, V2) -> mark U41(isNatKind V1, V1, V2),
                active isNatIList zeros() -> mark tt(),
                     active U12(tt(), V1) -> mark U13 isNatList V1,
                     active U11(tt(), V1) -> mark U12(isNatIListKind V1, V1),
                  active U112(tt(), L, N) -> mark U113(isNat N, L, N),
                  active U111(tt(), L, N) -> mark U112(isNatIListKind L, L, N),
                  active U113(tt(), L, N) -> mark U114(isNatKind N, L),
                     active U114(tt(), L) -> mark s length L,
                 active length cons(N, L) -> mark U111(isNatList L, L, N),
                      active length nil() -> mark 0(),
                          active U13 tt() -> mark tt(),
            active isNatList cons(V1, V2) -> mark U91(isNatKind V1, V1, V2),
                   active isNatList nil() -> mark tt(),
            active isNatList take(V1, V2) -> mark U101(isNatKind V1, V1, V2),
                         active U122 tt() -> mark nil(),
                    active U121(tt(), IL) -> mark U122 isNatIListKind IL,
              active U132(tt(), IL, M, N) -> mark U133(isNat M, IL, M, N),
              active U131(tt(), IL, M, N) -> mark U132(isNatIListKind IL, IL, M, N),
              active U133(tt(), IL, M, N) -> mark U134(isNatKind M, IL, M, N),
              active U134(tt(), IL, M, N) -> mark U135(isNat N, IL, M, N),
              active U135(tt(), IL, M, N) -> mark U136(isNatKind N, IL, M, N),
              active U136(tt(), IL, M, N) -> mark cons(N, take(M, IL)),
                     active take(0(), IL) -> mark U121(isNatIList IL, IL),
            active take(s M, cons(N, IL)) -> mark U131(isNatIList IL, IL, M, N),
                     active U22(tt(), V1) -> mark U23 isNat V1,
                     active U21(tt(), V1) -> mark U22(isNatKind V1, V1),
                          active U23 tt() -> mark tt(),
                      active U32(tt(), V) -> mark U33 isNatList V,
                      active U31(tt(), V) -> mark U32(isNatIListKind V, V),
                          active U33 tt() -> mark tt(),
                 active U42(tt(), V1, V2) -> mark U43(isNatIListKind V2, V1, V2),
                 active U41(tt(), V1, V2) -> mark U42(isNatKind V1, V1, V2),
                 active U43(tt(), V1, V2) -> mark U44(isNatIListKind V2, V1, V2),
                 active U44(tt(), V1, V2) -> mark U45(isNat V1, V2),
                     active U45(tt(), V2) -> mark U46 isNatIList V2,
                          active U46 tt() -> mark tt(),
                          active U52 tt() -> mark tt(),
                     active U51(tt(), V2) -> mark U52 isNatIListKind V2,
                          active U62 tt() -> mark tt(),
                     active U61(tt(), V2) -> mark U62 isNatIListKind V2,
                          active U71 tt() -> mark tt(),
                          active U81 tt() -> mark tt(),
                 active U92(tt(), V1, V2) -> mark U93(isNatIListKind V2, V1, V2),
                 active U91(tt(), V1, V2) -> mark U92(isNatKind V1, V1, V2),
                 active U93(tt(), V1, V2) -> mark U94(isNatIListKind V2, V1, V2),
                 active U94(tt(), V1, V2) -> mark U95(isNat V1, V2),
                     active U95(tt(), V2) -> mark U96 isNatList V2,
                          active U96 tt() -> mark tt(),
                    U102(X1, X2, mark X3) -> U102(X1, X2, X3),
                  U102(X1, X2, active X3) -> U102(X1, X2, X3),
                    U102(X1, mark X2, X3) -> U102(X1, X2, X3),
                  U102(X1, active X2, X3) -> U102(X1, X2, X3),
                    U102(mark X1, X2, X3) -> U102(X1, X2, X3),
                  U102(active X1, X2, X3) -> U102(X1, X2, X3),
                         isNatKind mark X -> isNatKind X,
                       isNatKind active X -> isNatKind X,
                    U101(X1, X2, mark X3) -> U101(X1, X2, X3),
                  U101(X1, X2, active X3) -> U101(X1, X2, X3),
                    U101(X1, mark X2, X3) -> U101(X1, X2, X3),
                  U101(X1, active X2, X3) -> U101(X1, X2, X3),
                    U101(mark X1, X2, X3) -> U101(X1, X2, X3),
                  U101(active X1, X2, X3) -> U101(X1, X2, X3),
                    U103(X1, X2, mark X3) -> U103(X1, X2, X3),
                  U103(X1, X2, active X3) -> U103(X1, X2, X3),
                    U103(X1, mark X2, X3) -> U103(X1, X2, X3),
                  U103(X1, active X2, X3) -> U103(X1, X2, X3),
                    U103(mark X1, X2, X3) -> U103(X1, X2, X3),
                  U103(active X1, X2, X3) -> U103(X1, X2, X3),
                    isNatIListKind mark X -> isNatIListKind X,
                  isNatIListKind active X -> isNatIListKind X,
                    U104(X1, X2, mark X3) -> U104(X1, X2, X3),
                  U104(X1, X2, active X3) -> U104(X1, X2, X3),
                    U104(X1, mark X2, X3) -> U104(X1, X2, X3),
                  U104(X1, active X2, X3) -> U104(X1, X2, X3),
                    U104(mark X1, X2, X3) -> U104(X1, X2, X3),
                  U104(active X1, X2, X3) -> U104(X1, X2, X3),
                        U105(X1, mark X2) -> U105(X1, X2),
                      U105(X1, active X2) -> U105(X1, X2),
                        U105(mark X1, X2) -> U105(X1, X2),
                      U105(active X1, X2) -> U105(X1, X2),
                             isNat mark X -> isNat X,
                           isNat active X -> isNat X,
                              U106 mark X -> U106 X,
                            U106 active X -> U106 X,
                        isNatIList mark X -> isNatIList X,
                      isNatIList active X -> isNatIList X,
                         U12(X1, mark X2) -> U12(X1, X2),
                       U12(X1, active X2) -> U12(X1, X2),
                         U12(mark X1, X2) -> U12(X1, X2),
                       U12(active X1, X2) -> U12(X1, X2),
                         U11(X1, mark X2) -> U11(X1, X2),
                       U11(X1, active X2) -> U11(X1, X2),
                         U11(mark X1, X2) -> U11(X1, X2),
                       U11(active X1, X2) -> U11(X1, X2),
                    U112(X1, X2, mark X3) -> U112(X1, X2, X3),
                  U112(X1, X2, active X3) -> U112(X1, X2, X3),
                    U112(X1, mark X2, X3) -> U112(X1, X2, X3),
                  U112(X1, active X2, X3) -> U112(X1, X2, X3),
                    U112(mark X1, X2, X3) -> U112(X1, X2, X3),
                  U112(active X1, X2, X3) -> U112(X1, X2, X3),
                    U111(X1, X2, mark X3) -> U111(X1, X2, X3),
                  U111(X1, X2, active X3) -> U111(X1, X2, X3),
                    U111(X1, mark X2, X3) -> U111(X1, X2, X3),
                  U111(X1, active X2, X3) -> U111(X1, X2, X3),
                    U111(mark X1, X2, X3) -> U111(X1, X2, X3),
                  U111(active X1, X2, X3) -> U111(X1, X2, X3),
                    U113(X1, X2, mark X3) -> U113(X1, X2, X3),
                  U113(X1, X2, active X3) -> U113(X1, X2, X3),
                    U113(X1, mark X2, X3) -> U113(X1, X2, X3),
                  U113(X1, active X2, X3) -> U113(X1, X2, X3),
                    U113(mark X1, X2, X3) -> U113(X1, X2, X3),
                  U113(active X1, X2, X3) -> U113(X1, X2, X3),
                        U114(X1, mark X2) -> U114(X1, X2),
                      U114(X1, active X2) -> U114(X1, X2),
                        U114(mark X1, X2) -> U114(X1, X2),
                      U114(active X1, X2) -> U114(X1, X2),
                                 s mark X -> s X,
                               s active X -> s X,
                            length mark X -> length X,
                          length active X -> length X,
                               U13 mark X -> U13 X,
                             U13 active X -> U13 X,
                         isNatList mark X -> isNatList X,
                       isNatList active X -> isNatList X,
                              U122 mark X -> U122 X,
                            U122 active X -> U122 X,
                        U121(X1, mark X2) -> U121(X1, X2),
                      U121(X1, active X2) -> U121(X1, X2),
                        U121(mark X1, X2) -> U121(X1, X2),
                      U121(active X1, X2) -> U121(X1, X2),
                U132(X1, X2, X3, mark X4) -> U132(X1, X2, X3, X4),
              U132(X1, X2, X3, active X4) -> U132(X1, X2, X3, X4),
                U132(X1, X2, mark X3, X4) -> U132(X1, X2, X3, X4),
              U132(X1, X2, active X3, X4) -> U132(X1, X2, X3, X4),
                U132(X1, mark X2, X3, X4) -> U132(X1, X2, X3, X4),
              U132(X1, active X2, X3, X4) -> U132(X1, X2, X3, X4),
                U132(mark X1, X2, X3, X4) -> U132(X1, X2, X3, X4),
              U132(active X1, X2, X3, X4) -> U132(X1, X2, X3, X4),
                U131(X1, X2, X3, mark X4) -> U131(X1, X2, X3, X4),
              U131(X1, X2, X3, active X4) -> U131(X1, X2, X3, X4),
                U131(X1, X2, mark X3, X4) -> U131(X1, X2, X3, X4),
              U131(X1, X2, active X3, X4) -> U131(X1, X2, X3, X4),
                U131(X1, mark X2, X3, X4) -> U131(X1, X2, X3, X4),
              U131(X1, active X2, X3, X4) -> U131(X1, X2, X3, X4),
                U131(mark X1, X2, X3, X4) -> U131(X1, X2, X3, X4),
              U131(active X1, X2, X3, X4) -> U131(X1, X2, X3, X4),
                U133(X1, X2, X3, mark X4) -> U133(X1, X2, X3, X4),
              U133(X1, X2, X3, active X4) -> U133(X1, X2, X3, X4),
                U133(X1, X2, mark X3, X4) -> U133(X1, X2, X3, X4),
              U133(X1, X2, active X3, X4) -> U133(X1, X2, X3, X4),
                U133(X1, mark X2, X3, X4) -> U133(X1, X2, X3, X4),
              U133(X1, active X2, X3, X4) -> U133(X1, X2, X3, X4),
                U133(mark X1, X2, X3, X4) -> U133(X1, X2, X3, X4),
              U133(active X1, X2, X3, X4) -> U133(X1, X2, X3, X4),
                U134(X1, X2, X3, mark X4) -> U134(X1, X2, X3, X4),
              U134(X1, X2, X3, active X4) -> U134(X1, X2, X3, X4),
                U134(X1, X2, mark X3, X4) -> U134(X1, X2, X3, X4),
              U134(X1, X2, active X3, X4) -> U134(X1, X2, X3, X4),
                U134(X1, mark X2, X3, X4) -> U134(X1, X2, X3, X4),
              U134(X1, active X2, X3, X4) -> U134(X1, X2, X3, X4),
                U134(mark X1, X2, X3, X4) -> U134(X1, X2, X3, X4),
              U134(active X1, X2, X3, X4) -> U134(X1, X2, X3, X4),
                U135(X1, X2, X3, mark X4) -> U135(X1, X2, X3, X4),
              U135(X1, X2, X3, active X4) -> U135(X1, X2, X3, X4),
                U135(X1, X2, mark X3, X4) -> U135(X1, X2, X3, X4),
              U135(X1, X2, active X3, X4) -> U135(X1, X2, X3, X4),
                U135(X1, mark X2, X3, X4) -> U135(X1, X2, X3, X4),
              U135(X1, active X2, X3, X4) -> U135(X1, X2, X3, X4),
                U135(mark X1, X2, X3, X4) -> U135(X1, X2, X3, X4),
              U135(active X1, X2, X3, X4) -> U135(X1, X2, X3, X4),
                U136(X1, X2, X3, mark X4) -> U136(X1, X2, X3, X4),
              U136(X1, X2, X3, active X4) -> U136(X1, X2, X3, X4),
                U136(X1, X2, mark X3, X4) -> U136(X1, X2, X3, X4),
              U136(X1, X2, active X3, X4) -> U136(X1, X2, X3, X4),
                U136(X1, mark X2, X3, X4) -> U136(X1, X2, X3, X4),
              U136(X1, active X2, X3, X4) -> U136(X1, X2, X3, X4),
                U136(mark X1, X2, X3, X4) -> U136(X1, X2, X3, X4),
              U136(active X1, X2, X3, X4) -> U136(X1, X2, X3, X4),
                        take(X1, mark X2) -> take(X1, X2),
                      take(X1, active X2) -> take(X1, X2),
                        take(mark X1, X2) -> take(X1, X2),
                      take(active X1, X2) -> take(X1, X2),
                         U22(X1, mark X2) -> U22(X1, X2),
                       U22(X1, active X2) -> U22(X1, X2),
                         U22(mark X1, X2) -> U22(X1, X2),
                       U22(active X1, X2) -> U22(X1, X2),
                         U21(X1, mark X2) -> U21(X1, X2),
                       U21(X1, active X2) -> U21(X1, X2),
                         U21(mark X1, X2) -> U21(X1, X2),
                       U21(active X1, X2) -> U21(X1, X2),
                               U23 mark X -> U23 X,
                             U23 active X -> U23 X,
                         U32(X1, mark X2) -> U32(X1, X2),
                       U32(X1, active X2) -> U32(X1, X2),
                         U32(mark X1, X2) -> U32(X1, X2),
                       U32(active X1, X2) -> U32(X1, X2),
                         U31(X1, mark X2) -> U31(X1, X2),
                       U31(X1, active X2) -> U31(X1, X2),
                         U31(mark X1, X2) -> U31(X1, X2),
                       U31(active X1, X2) -> U31(X1, X2),
                               U33 mark X -> U33 X,
                             U33 active X -> U33 X,
                     U42(X1, X2, mark X3) -> U42(X1, X2, X3),
                   U42(X1, X2, active X3) -> U42(X1, X2, X3),
                     U42(X1, mark X2, X3) -> U42(X1, X2, X3),
                   U42(X1, active X2, X3) -> U42(X1, X2, X3),
                     U42(mark X1, X2, X3) -> U42(X1, X2, X3),
                   U42(active X1, X2, X3) -> U42(X1, X2, X3),
                     U41(X1, X2, mark X3) -> U41(X1, X2, X3),
                   U41(X1, X2, active X3) -> U41(X1, X2, X3),
                     U41(X1, mark X2, X3) -> U41(X1, X2, X3),
                   U41(X1, active X2, X3) -> U41(X1, X2, X3),
                     U41(mark X1, X2, X3) -> U41(X1, X2, X3),
                   U41(active X1, X2, X3) -> U41(X1, X2, X3),
                     U43(X1, X2, mark X3) -> U43(X1, X2, X3),
                   U43(X1, X2, active X3) -> U43(X1, X2, X3),
                     U43(X1, mark X2, X3) -> U43(X1, X2, X3),
                   U43(X1, active X2, X3) -> U43(X1, X2, X3),
                     U43(mark X1, X2, X3) -> U43(X1, X2, X3),
                   U43(active X1, X2, X3) -> U43(X1, X2, X3),
                     U44(X1, X2, mark X3) -> U44(X1, X2, X3),
                   U44(X1, X2, active X3) -> U44(X1, X2, X3),
                     U44(X1, mark X2, X3) -> U44(X1, X2, X3),
                   U44(X1, active X2, X3) -> U44(X1, X2, X3),
                     U44(mark X1, X2, X3) -> U44(X1, X2, X3),
                   U44(active X1, X2, X3) -> U44(X1, X2, X3),
                         U45(X1, mark X2) -> U45(X1, X2),
                       U45(X1, active X2) -> U45(X1, X2),
                         U45(mark X1, X2) -> U45(X1, X2),
                       U45(active X1, X2) -> U45(X1, X2),
                               U46 mark X -> U46 X,
                             U46 active X -> U46 X,
                               U52 mark X -> U52 X,
                             U52 active X -> U52 X,
                         U51(X1, mark X2) -> U51(X1, X2),
                       U51(X1, active X2) -> U51(X1, X2),
                         U51(mark X1, X2) -> U51(X1, X2),
                       U51(active X1, X2) -> U51(X1, X2),
                               U62 mark X -> U62 X,
                             U62 active X -> U62 X,
                         U61(X1, mark X2) -> U61(X1, X2),
                       U61(X1, active X2) -> U61(X1, X2),
                         U61(mark X1, X2) -> U61(X1, X2),
                       U61(active X1, X2) -> U61(X1, X2),
                               U71 mark X -> U71 X,
                             U71 active X -> U71 X,
                               U81 mark X -> U81 X,
                             U81 active X -> U81 X,
                     U92(X1, X2, mark X3) -> U92(X1, X2, X3),
                   U92(X1, X2, active X3) -> U92(X1, X2, X3),
                     U92(X1, mark X2, X3) -> U92(X1, X2, X3),
                   U92(X1, active X2, X3) -> U92(X1, X2, X3),
                     U92(mark X1, X2, X3) -> U92(X1, X2, X3),
                   U92(active X1, X2, X3) -> U92(X1, X2, X3),
                     U91(X1, X2, mark X3) -> U91(X1, X2, X3),
                   U91(X1, X2, active X3) -> U91(X1, X2, X3),
                     U91(X1, mark X2, X3) -> U91(X1, X2, X3),
                   U91(X1, active X2, X3) -> U91(X1, X2, X3),
                     U91(mark X1, X2, X3) -> U91(X1, X2, X3),
                   U91(active X1, X2, X3) -> U91(X1, X2, X3),
                     U93(X1, X2, mark X3) -> U93(X1, X2, X3),
                   U93(X1, X2, active X3) -> U93(X1, X2, X3),
                     U93(X1, mark X2, X3) -> U93(X1, X2, X3),
                   U93(X1, active X2, X3) -> U93(X1, X2, X3),
                     U93(mark X1, X2, X3) -> U93(X1, X2, X3),
                   U93(active X1, X2, X3) -> U93(X1, X2, X3),
                     U94(X1, X2, mark X3) -> U94(X1, X2, X3),
                   U94(X1, X2, active X3) -> U94(X1, X2, X3),
                     U94(X1, mark X2, X3) -> U94(X1, X2, X3),
                   U94(X1, active X2, X3) -> U94(X1, X2, X3),
                     U94(mark X1, X2, X3) -> U94(X1, X2, X3),
                   U94(active X1, X2, X3) -> U94(X1, X2, X3),
                         U95(X1, mark X2) -> U95(X1, X2),
                       U95(X1, active X2) -> U95(X1, X2),
                         U95(mark X1, X2) -> U95(X1, X2),
                       U95(active X1, X2) -> U95(X1, X2),
                               U96 mark X -> U96 X,
                             U96 active X -> U96 X
      }
      Open