! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ A B C D E F G H I J K L M NOPQRSTUVWXYZ[\]^_`abcdefghijklmno pq rstuvwx yz{|}~            !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~                             !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~2 Safe'>This class (which users should never see) is to be instantiated in order to use an otherwise-unused data constructor, such as the "kind-inference" data constructor for defunctionalization symbols.None '(*+35>L@      !"#$%&'()*+;      !"#$%&     "#$%&'() !*+None *357<CINU,Generate a new UniqueC-./01234,56789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnA-./01234,56789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklA-./01234,56789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmn(C) 2015 Richard EisenbergBSD-style (see LICENSE)$Richard Eisenberg (eir@cis.upenn.edu experimental non-portableNoneooo (C) 2013 Richard EisenbergBSD-style (see LICENSE)%Richard Eisenberg (eir@cis.upenn.edu) experimental non-portableNone!"'(4<>IKLNAn infix synonym for Type level function application& Similar to '*, but for two-parameter type constructors.':Wrapper for converting the normal type-level arrow into a (. For example, given: data Nat = Zero | Succ Nat type family Map (a :: TyFun a b -> *) (a :: [a]) :: [b] Map f '[] = '[] Map f (x ': xs) = Apply f x ': Map f xs We can write: #Map (TyCon1 Succ) [Zero, Succ Zero](Representation of the kind of a type-level function. The difference between term-level arrows and this type-level arrow is that at the term level applications can be unsaturated, whereas at the type level all applications have to be fully saturated.)A ) wraps up a 2 instance for explicit handling.+An existentially-quantified singleton. This type is useful when you want a singleton type, but there is no way of knowing, at compile-time, what the type index will be. To make use of this type, you will generally have to use a pattern-match: ofoo :: Bool -> ... foo b = case toSing b of SomeSing sb -> {- fancy dependently-typed code with sb -};An example like the one above may be easier to write using H.-Convenient abbreviation for /: 6type Demote (a :: k) = DemoteRep ('KProxy :: KProxy k).The . class is essentially a kind class. It classifies all kinds for which singletons are defined. The class supports converting between a singleton type and the base (unrefined) type which it is built from./BGet a base type from a proxy for the promoted kind. For example, "DemoteRep ('KProxy :: KProxy Bool) will be the type Bool.0-Convert a singleton to its unrefined version.1HConvert an unrefined type to an existentially-quantified singleton type.2A 2 constraint is essentially an implicitly-passed singleton. If you need to satisfy this constraint with an explicit singleton, please see G.3;Produce the singleton explicitly. You will likely need the ScopedTypeVariables0 extension to use this method the way you want.4'The singleton kind-indexed data family.5=Convenient synonym to refer to the kind of a type variable: ,type KindOf (a :: k) = ('KProxy :: KProxy k)6Get an implicit singleton (a 2 instance) from an explicit one.7Use this function when passing a function on singletons as a higher-order function. You will often need an explicit type annotation to get this to work. For example: gfalses = sMap (singFun1 (Proxy :: Proxy NotSym0) sNot) (STrue `SCons` STrue `SCons` SNil)There are a family of  singFun...? functions, keyed by the number of parameters of the function.?This is the inverse of 7, and likewise for the other  unSingFun... functions.GRConvenience function for creating a context with an implicit singleton available.H Convert a normal datatype (like pD) to a singleton for that datatype, passing it into a continuation.IyA convenience function useful when we need to name a singleton value multiple times. Without this function, each use of 3d could potentially refer to a different singleton, and one has to use type signatures (often with ScopedTypeVariables#) to ensure that they are the same.JA convenience function that names a singleton satisfying a certain property. If the singleton does not satisfy the property, then the function returns qX. The property is expressed in terms of the underlying representation of the singleton.K7Allows creation of a singleton when a proxy is at hand.L&Allows creation of a singleton when a proxy# is at hand.MGHC 7.8 sometimes warns about incomplete pattern matches when no such patterns are possible, due to GADT constraints. See the bug report at  ,https://ghc.haskell.org/trac/ghc/ticket/3927I. In such cases, it's useful to have a catch-all pattern that then has M as its right-hand side.F !"#$%&'(rs)*+,-./012345tu6789:;<=>?@ABCDEFGHThe original datatypeFunction expecting a singletonIJKLMvwxyz{|}~< !"#$%&'()*+,-./012345tu6789:;<=>?@ABCDEFGHIJKLM:423./015-)*+,6GHKLIJ('&%$#"! 789:;<=>?@ABCDEFM= !"#$%&'(rs)*+,-./0123456789:;<=>?@ABCDEFGHIJKLMvwtuxyz{|}~ (C) 2013 Richard EisenbergBSD-style (see LICENSE)%Richard Eisenberg (eir@cis.upenn.edu) experimental non-portableNone !"'(4>IKLNNMembers of the N "kind" class support decidable equality. Instances of this class are generated alongside singleton definitions for datatypes that derive an  instance.O>Compute a proof or disproof of equality, given two singletons.PA P about a type a0 is either a proof of existence or a proof that a cannot exist.Q Witness for aRProof that no a existsS,Because we can never create a value of type  ", a function that type-checks at  a -> Void shows that objects of type a% can never exist. Thus, we say that a is SNOPQRS NOPQRS NO SPQRNOPQRSNoneaaa(C) 2015 Richard EisenbergBSD-style (see LICENSE)$Richard Eisenberg (eir@cis.upenn.edu experimental non-portableNone#Make a *non-singleton* Ord instanceNone*4>CL None@C             (C) 2015 Richard EisenbergBSD-style (see LICENSE)$Richard Eisenberg (eir@cis.upenn.edu experimental non-portableNone(C) 2015 Richard EisenbergBSD-style (see LICENSE)%Richard Eisenberg (eir@cis.upenn.edu) experimental non-portableNoneNoneNoneNone    (C) 2015 Richard EisenbergBSD-style (see LICENSE)$Richard Eisenberg (eir@cis.upenn.edu experimental non-portableNone Split up a [DDec] into its pieces, extracting ! instances from deriving clauses  !"#$%&'  !"#$%& !"#$%&'!NoneFUV ToGenerate promoted definitions from a type that is already defined. This is generally only useful with classes.UKPromote every declaration given to the type level, retaining the originals.VPromote each declaration, discarding the originals. Note that a promoted datatype uses the same definition as an original datatype, so this will not work with datatypes. Classes, instances, and functions are all fine.W=Generate defunctionalization symbols for existing type familyXHProduce instances for '(:==)' (type-level equality) from the given typesYProduce instances for POrd from the given typesZProduce an instance for POrd from the given type[Produce instances for PBounded from the given types\Produce an instance for PBounded from the given type]Produce instances for PEnum from the given types^Produce an instance for PEnum from the given type_IProduce an instance for '(:==)' (type-level equality) from the given typeTUVWXYZ[\]^_()*+,-./0;instantiations for class tyvars (Nothing for default decls)123456789TUVWXYZ[\]^_()*+,-./0123456789TUVWXYZ[\]^_()*+,-./0123456789"None:;<:;<:;<#None=>?@AB=>?@AB=>?@AB$None@FUCDCDCD%None@F`tGenerate singleton definitions from a type that is already defined. For example, the singletons package itself uses 2$(genSingletons [''Bool, ''Maybe, ''Either, ''[]]))to generate singletons for Prelude types.akMake promoted and singleton versions of all declarations given, retaining the original declarations. See  =http://www.cis.upenn.edu/~eir/packages/singletons/README.html for further explanation.bMake promoted and singleton versions of all declarations given, discarding the original declarations. Note that a singleton based on a datatype needs the original datatype, so this will fail if it sees any datatype declarations. Classes, instances, and functions are all fine.cCreate instances of SEq1 and type-level '(:==)' for each type in the listdCreate instance of SEq* and type-level '(:==)' for the given typeeCreate instances of SEq) (only -- no instance for '(:==)', which SEq0 generally relies on) for each type in the listfCreate instances of SEq) (only -- no instance for '(:==)', which SEq) generally relies on) for the given typegCreate instances of SDecide for each type in the list.hCreate instance of SDecide for the given type.iCreate instances of SOrd for the given typesjCreate instance of SOrd for the given typekCreate instances of SBounded for the given typeslCreate instance of SBounded for the given typemCreate instances of SEnum for the given typesnCreate instance of SEnum for the given type'EFGH`abcdefghIijklmnJKLMNOPQRSTUVWXYZthe promoted scrutineethe result kind, if known[\'EFGH`abcdefghIijklmnJKLMNOPQRSTUVWXYZ[\$EFGH`abcdefghIijklmnJKLMNOPQRSTUVWXYZ[\&None!"'(345>IKLNopqrstuvwxy]z^{_|`}a~bcdefghijklmnopqrstuvwxyz{|}~opqrstuvwxy]z^{_|`}a~bcdefghijklmnopqrstuvwxyz{|}~Nopqrstuvwxy]z^{_|`}a~bcdefghijklmnopqrstuvwxyz{|~}-(C) 2013-2014 Richard Eisenberg, Jan StolarekBSD-style (see LICENSE)%Richard Eisenberg (eir@cis.upenn.edu) experimental non-portableNone!"'(+>KLNConditional over singletons# 4uvw4uvw (C) 2013 Richard EisenbergBSD-style (see LICENSE)%Richard Eisenberg (eir@cis.upenn.edu) experimental non-portableNone!"'(14>IKLNThe promoted analogue of V. If you supply no definition for '(:==)', then it defaults to a use of '(==)', from Data.Type.Equality.The singleton analogue of . Unlike the definition for e, it is required that instances define a body for '(%:==)'. You may also supply a body for '(%:/=)'.Boolean equality on singletons!Boolean disequality on singletons (C) 2013 Richard EisenbergBSD-style (see LICENSE)%Richard Eisenberg (eir@cis.upenn.edu) experimental non-portableNone(>LIProduce a representation and singleton for the collection of types given. A datatype Rep is created, with one constructor per type in the declared universe. When this type is promoted by the singletons library, the constructors become full types in *&, not just promoted data constructors. For example, )$(singletonStar [''Nat, ''Bool, ''Maybe])generates the following: ;data Rep = Nat | Bool | Maybe Rep deriving (Eq, Show, Read)$and its singleton. However, because Rep is promoted to *0, the singleton is perhaps slightly unexpected: {data instance Sing (a :: *) where SNat :: Sing Nat SBool :: Sing Bool SMaybe :: SingRep a => Sing a -> Sing (Maybe a)The unexpected part is that Nat, Bool, and Maybe above are the real Nat, Bool, and Maybe&, not just promoted data constructors."Please note that this function is very$ experimental. Use at your own risk.A list of Template Haskell Name s for types-4uvw'(C) 2014 Jan StolarekBSD-style (see LICENSE)%Jan Stolarek (jan.stolarek@p.lodz.pl) experimental non-portableNoneL ((C) 2014 Jan StolarekBSD-style (see LICENSE)%Jan Stolarek (jan.stolarek@p.lodz.pl) experimental non-portableNonevwvw)(C) 2013 Richard EisenbergBSD-style (see LICENSE)%Richard Eisenberg (eir@cis.upenn.edu) experimental non-portableNone!"(35<>IKLN 44 (C) 2013 Richard EisenbergBSD-style (see LICENSE)%Richard Eisenberg (eir@cis.upenn.edu) experimental non-portableNone!"'()14>KLN      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~24rst~/4tsr      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~*(C) 2014 Jan StolarekBSD-style (see LICENSE)%Jan Stolarek (jan.stolarek@p.lodz.pl) experimental non-portableNone rst tsr(C) 2014 Jan StolarekBSD-style (see LICENSE)%Jan Stolarek (jan.stolarek@p.lodz.pl) experimental non-portableNone!"'(>KLNh      !"#$%&'()*+,-./0123456789:<      !"#$%&'()*+,-./0123456789:< 8 7 6 532 9:140"#$%&'()*+, !-./L      !"#$%&'()*+,-./0123456789:    02 69:+(C) 2014 Richard EisenbergBSD-style (see LICENSE)%Richard Eisenberg (eir@cis.upenn.edu) experimental non-portableNone!"&'(345>IKLN;The promotion of 3. This version is more poly-kinded for easier use.<Kind-restricted synonym for 4 for Symbols=Kind-restricted synonym for 4 for Nats>Given a singleton for Nat, call something requiring a KnownNat instance.?Given a singleton for Symbol, call something requiring a  KnownSymbol instance.CThe singleton for #;<=>?@ABCDEF 4tu~;<=>?@ABCDEF;<=>?@ABCDEF@(C) 2014 Richard EisenbergBSD-style (see LICENSE)%Richard Eisenberg (eir@cis.upenn.edu) experimental non-portableNone!"'(14>KLNAGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijkl&GHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijkl&OPQRSTUVGHIJKLMNhlefgbcd_`a]^[\YZWXijk$GHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklHIJPQR(C) 2014 Richard EisenbergBSD-style (see LICENSE)%Richard Eisenberg (eir@cis.upenn.edu) experimental non-portableNone 4;<=>?@ABCDEF4=<>?;ABC  @DEF(C) 2013 Richard EisenbergBSD-style (see LICENSE)%Richard Eisenberg (eir@cis.upenn.edu) experimental non-portableNoneLm The function m generates a case expression where each right-hand side is identical. This may be useful if the type-checker requires knowledge of which constructor is used to satisfy equality or type-class constraints, but where each constructor is treated the same.n The function n generates a case expression where each right-hand side is identical. This may be useful if the type-checker requires knowledge of which constructor is used to satisfy equality or type-class constraints, but where each constructor is treated the same. For n , unlike mJ, the scrutinee is a singleton. But make sure to pass in the name of the original datatype, preferring ''Maybe over ''SMaybe.m-The head of the type of the scrutinee. (Like ''Maybe or ''Bool.)*The scrutinee, in a Template Haskell quote%The body, in a Template Haskell quoten>The head of the type the scrutinee's type is based on. (Like ''Maybe or ''Bool.)*The scrutinee, in a Template Haskell quote%The body, in a Template Haskell quote  !"#$%&'()*+,-./012345tu6789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnprstvwyz{|}~};Amnyab`UVWTX_cdefghYZij[\kl]^mnmn4NO SPQR +,;Avwtsrpyz{|}~mn-(C) 2013-2014 Richard Eisenberg, Jan StolarekBSD-style (see LICENSE)%Richard Eisenberg (eir@cis.upenn.edu) experimental non-portableNone !"'(>ILN5opqrstuvwxyz{|}~!4opqrstuvwxyz{|}~4otuvwxypqrsz{|}~'opqrstuvwxyz{|}~,(C) 2014 Jan StolarekBSD-style (see LICENSE)jan.stolarek@p.lodz.pl experimental non-portableNoneopqrsuvwxyz{|}~ouvwxypqrsz{|}~ (C) 2013 Richard EisenbergBSD-style (see LICENSE)%Richard Eisenberg (eir@cis.upenn.edu) experimental non-portableNone!"'(>ILN      H4opxyz{|}~}A4oxpyz{|}~     -(C) 2014 Jan StolarekBSD-style (see LICENSE)%Jan Stolarek (jan.stolarek@p.lodz.pl) experimental non-portableNone4pyz{|}~4pyz{|}~(C) 2014 Jan StolarekBSD-style (see LICENSE)%Jan Stolarek (jan.stolarek@p.lodz.pl) experimental non-portableNone !"'(>KLN5      !"#$%&'()*+,-./5     "#$%&'()*+, !-./-(C) 2013-2014 Richard Eisenberg, Jan StolarekBSD-style (see LICENSE)%Richard Eisenberg (eir@cis.upenn.edu) experimental non-portableNone!"'(>ILNJ !"#$%&'()*+,-./0123456789:;<=>?04.47 !"#$%&'()*+,-./0123456789:;<=>?.(C) 2014 Jan StolarekBSD-style (see LICENSE)%Jan Stolarek (jan.stolarek@p.lodz.pl) experimental non-portableNone##((C) 2014 Jan Stolarek, Richard EisenbergBSD-style (see LICENSE)%Jan Stolarek (jan.stolarek@p.lodz.pl) experimental non-portableNone!"'()14>KLNd@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~%%@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~/((C) 2014 Jan Stolarek, Richard EisenbergBSD-style (see LICENSE)%Jan Stolarek (jan.stolarek@p.lodz.pl) experimental non-portableNone !"'(>L-(C) 2013-2014 Richard Eisenberg, Jan StolarekBSD-style (see LICENSE)%Richard Eisenberg (eir@cis.upenn.edu) experimental non-portableNone!"'(4>IKLN       !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~                                  ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ A B  C D  E F G H I J K L M N O P Q ! R" S#$ T% U&' V( W)* X+ Y, Z [ \ ] ^ _ `- a./ b01 c23 d4 e56 f7 g89 h: i; j k l m n o p< q= r s t u v w x y z { | } ~                            ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v w x y z { | } ~                            ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v w x y z { | } ~                            ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v w x y z { | } ~  > ?@ABCD EFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~   4   678      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~4 6FB 7 8  ~ } | {zDDEC xywvutGAs@HAG?I9O:N=K>J;MrpoqmlBF7Q8PCEH@kij h!g"f#e$d%c&b'a(`)_*^n,\+]-[5S3U1WI?0X/Y.Z6R<L2V4TJ>MNOPQRSTXY12]^bcd_`aKLefghlmnoz{|ijk}~-./0rspq345!"#$%&  UVWZ[\'()    *+,6789:;wxytuv<=       !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~                                  ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ A B   C  D   E F G H I J K L M N O P Q ! R" S#$ T% U&' V( W)* X+ Y, Z [ \ ] ^ _ `- a./ b01 c23 d4 e56 f7 g89 h: i; j k l m n o p< q= r s t u v w x y z { | } ~                                                                                     ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v w x y z { | } ~                                                                                  ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v w x y z { | } ~                                                                                 ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v w x y z { | } ~              > ?@ABCD EFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~  +] (C) 2013 Richard EisenbergBSD-style (see LICENSE)%Richard Eisenberg (eir@cis.upenn.edu) experimental non-portableNoneL  !"#$%&'()*+,-./012345tu6789:;<=>?@ABCDEFGHIJKLMopqrstuvwxyz{|}~}~      !"#$%&')*+-./0123456789:;ACGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklopqrst     !"#$%&BMNOPQRSTXY]^z{|}~Fbcdefglmvwxyz{|}~.4uqox;AC 532 9:140 7 6 8  | {z ~ }xywvmlBF!g"f#e$d%c&bot wvpqrspyz{|}~"#$%&')*+ !-./]^MNOPQRSTXYz{|}~(C) 2014 Jan StolarekBSD-style (see LICENSE)%Jan Stolarek (jan.stolarek@p.lodz.pl) experimental non-portableNone!"'(>IKLNV                                                                        !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<= F       DE G@A?9:=>;B78CH !"#$%&'()*,+-513I0/.<624JMNOPQRSTXY]^bcd_`aefghlmnoz{|ijk}~Z[\wxytuv12-./0345KL!"#$%&  UVWrspq'()    *+,6789:;<=\                                                              0(C) 2014 Richard EisenbergBSD-style (see LICENSE)%Richard Eisenberg (eir@cis.upenn.edu) experimental non-portableNoneOPQRSTUVWXYZ[\]^_`abcdefghijkOPQRSTUVhefgbcd_`a]^[\YZWXijk1(C) 2014 Jan StolarekBSD-style (see LICENSE)%Jan Stolarek (jan.stolarek@p.lodz.pl) experimental non-portableNoneL prstvwyz{|}~      !"#$%&')*+-./;ADEOPQRSTUVWXYZ[\]^_`abcdefghijkopqrs     !"#$%&89:=>?@ABDEFGHMNOPQRSTXY]^tuvwxyz{|}~     !"#$%&'()-./0123456784o;A    8FH    DE  G@A?9:=>B!"#$%& wvpqrspyz{|}~DE"#$%&')*+ !-./]^MNOPQRSTXYz{|}~wxytuv12-./0345!"#$%&  '()   6782(C) 2013 Richard EisenbergBSD-style (see LICENSE)%Richard Eisenberg (eir@cis.upenn.edu) experimental non-portableNoneLP (TUVWXYZ[\]^_prstvwyz{|}~;APUVWTX_YZ[\]^( ;Avwtsrpyz{|}~ 34534678934:34;<=>?@3AB34C34D3EF3EF3EG3EG3HI3HJ3KL M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b b c c d e f g h i j k l m n o p q r s t u v w x y z { | } ~  !!!!!!!!!!!!%%%%%%%%%%%%%%%&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&              !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopq+r+s+t+u+v+w+x+y+z+{+|+}~                             !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%%&'()*+,-./0/.11223456789:;<=>?@@ABCDEEFGHIJKKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~73              7      !"#$%&'()**++,-./012%3456789:;<=>?@ABCDEFGH I7J K L M N O P Q R S T!U!V!W!X!Y!Z![!\!]!^!_!`!a!b!c!d!e!f"g"h"i#j#k#l#m#n#o$p$q%r%s%t%u%v%m%w%x%y%z%{%|%}%~%%%%%%%%%%&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&                  )))))))))))      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~3++t+++++++++++++++++++++      !"#$%&'( ) * + , - . / 0 123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~                                  ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v w x y z { | } ~                                                                                                                                                                   ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v w x y z { | } ~                                                                                                                                                                   ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v w x y z { | } ~                                                                                                                                                                   ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v w x y z { | } ~                                                                                                                                       singl_4eFvLxkCybOIPLefNpTHPLData.Singletons.TypeLitsData.Singletons.THData.Singletons.Prelude.BoolData.Singletons.Prelude.OrdData.Singletons.Prelude.EitherData.Singletons.Prelude.MaybeData.Singletons.Prelude.ListData.Singletons.DecideData.Singletons&Data.Singletons.SuppressUnusedWarningsData.Singletons.Prelude.TupleData.Singletons.PreludeData.Singletons.Prelude.EqData.Singletons.CustomStarData.Singletons.Prelude.BaseData.Singletons.Prelude.NumData.Promotion.Prelude.BaseData.Singletons.Prelude.EnumData.Promotion.Prelude.ListData.Singletons.SyntaxData.Singletons.UtilData.Singletons.Deriving.InferData.Singletons.NamesData.Singletons.Deriving.OrdData.Singletons.Promote.MonadData.Singletons.Single.Monad Data.Singletons.Deriving.BoundedData.Singletons.Deriving.EnumData.Singletons.Promote.EqData.Singletons.Promote.TypeData.Singletons.Promote.DefunData.Singletons.PartitionData.Singletons.PromoteData.Singletons.Single.TypeData.Singletons.Single.EqData.Singletons.Single.DataData.Singletons.Single!Data.Singletons.Prelude.InstancesData.Promotion.Prelude.EqData.Promotion.Prelude.BoolData.Singletons.TypeRepStarData.Promotion.Prelude.Ord!Data.Singletons.TypeLits.InternalData.Promotion.Prelude.EitherData.Promotion.Prelude.TupleData.Promotion.Prelude.MaybeData.Promotion.Prelude.EnumData.Promotion.Prelude.NumData.Promotion.PreludeData.Promotion.THbase GHC.TypeLitsKnownNat KnownSymbolghc-primGHC.PrimAnyNatSymbolbool_thenCmpeither_maybe_any_ Data.VoidVoid symbolValnatVal Data.ProxyProxyKProxyData.Type.EqualityRefl:~:Data.Type.BoolIfSuppressUnusedWarningssuppressUnusedWarnings SingFunction8 SingFunction7 SingFunction6 SingFunction5 SingFunction4 SingFunction3 SingFunction2 SingFunction1@@ApplyTyCon8TyCon7TyCon6TyCon5TyCon4TyCon3TyCon2TyCon1TyFun SingInstanceSomeSingDemoteSingKind DemoteRepfromSingtoSingSingIsingSingKindOf singInstancesingFun1singFun2singFun3singFun4singFun5singFun6singFun7singFun8 unSingFun1 unSingFun2 unSingFun3 unSingFun4 unSingFun5 unSingFun6 unSingFun7 unSingFun8 withSingI withSomeSingwithSingsingThat singByProxy singByProxy#bugInGHCSDecide%~DecisionProved DisprovedRefuted genPromotionspromote promoteOnlygenDefunSymbolspromoteEqInstancespromoteOrdInstancespromoteOrdInstancepromoteBoundedInstancespromoteBoundedInstancepromoteEnumInstancespromoteEnumInstancepromoteEqInstance genSingletons singletonssingletonsOnlysingEqInstancessingEqInstancesingEqInstancesOnlysingEqInstanceOnlysingDecideInstancessingDecideInstancesingOrdInstancessingOrdInstancesingBoundedInstancessingBoundedInstancesingEnumInstancessingEnumInstanceSTuple0 Tuple0Sym0 SOrderingGTSym0EQSym0LTSym0SBoolTrueSym0 FalseSym0STuple7 Tuple7Sym0 Tuple7Sym1 Tuple7Sym2 Tuple7Sym3 Tuple7Sym4 Tuple7Sym5 Tuple7Sym6 Tuple7Sym7STuple6 Tuple6Sym0 Tuple6Sym1 Tuple6Sym2 Tuple6Sym3 Tuple6Sym4 Tuple6Sym5 Tuple6Sym6STuple5 Tuple5Sym0 Tuple5Sym1 Tuple5Sym2 Tuple5Sym3 Tuple5Sym4 Tuple5Sym5STuple4 Tuple4Sym0 Tuple4Sym1 Tuple4Sym2 Tuple4Sym3 Tuple4Sym4STuple3 Tuple3Sym0 Tuple3Sym1 Tuple3Sym2 Tuple3Sym3STuple2 Tuple2Sym0 Tuple2Sym1 Tuple2Sym2SEither RightSym0 RightSym1LeftSym0LeftSym1SList:$:$$:$$$NilSym0SMaybeJustSym0JustSym1 NothingSym0Foldl FoldlSym0 FoldlSym1 FoldlSym2 FoldlSym3sFoldlBool_ Bool_Sym0 Bool_Sym1 Bool_Sym2 Bool_Sym3sBool_:&&:||Not Otherwise:&&$:&&$$:&&$$$:||$:||$$:||$$$NotSym0NotSym1 OtherwiseSym0 sOtherwisesNot%:||%:&&sIfPEq:==:/=SEq%:==%:/=:/=$:/=$$:/=$$$:==$:==$$:==$$$ singletonStarSOrdsCompare%:<%:<=%:>%:>=sMaxsMinPOrdCompare:<:<=:>:>=MaxMinMinSym0MinSym1MinSym2MaxSym0MaxSym1MaxSym2:>=$:>=$$:>=$$$:>$:>$$:>$$$:<=$:<=$$:<=$$$:<$:<$$:<$$$ CompareSym0 CompareSym1 CompareSym2ThenCmp ThenCmpSym0 ThenCmpSym1 ThenCmpSym2sThenCmp$!$$$$!$$$!$$!$$$$$$$$$$FoldrMap:++IdAsTypeOfConst:.FlipSeq FoldrSym0 FoldrSym1 FoldrSym2 FoldrSym3MapSym0MapSym1MapSym2:++$:++$$:++$$$IdSym0IdSym1 AsTypeOfSym0 AsTypeOfSym1 AsTypeOfSym2 ConstSym0 ConstSym1 ConstSym2:.$:.$$:.$$$:.$$$$FlipSym0FlipSym1FlipSym2FlipSym3SeqSym0SeqSym1SeqSym2sSeqsFlip%:.sConst sAsTypeOfsId%:++sMapsFoldr%$%$!ErrorSSymbolSNat withKnownNatwithKnownSymbol:^ ErrorSym0 ErrorSym1sError:^$:^$$:^$$$SNum%:+%:-%:*sNegatesAbssSignum sFromIntegerPNum:+:-:*NegateAbsSignum FromIntegerFromIntegerSym0FromIntegerSym1 SignumSym0 SignumSym1AbsSym0AbsSym1 NegateSym0 NegateSym1:*$:*$$:*$$$:-$:-$$:-$$$:+$:+$$:+$$$Subtract SubtractSym0 SubtractSym1 SubtractSym2 sSubtractcasessCasesEither_ Either_Sym0 Either_Sym1 Either_Sym2 Either_Sym3sEither_LeftsRightsPartitionEithersIsLeftIsRight LeftsSym0 LeftsSym1 RightsSym0 RightsSym1 IsLeftSym0 IsLeftSym1 IsRightSym0 IsRightSym1sIsRightsIsLeftsPartitionEitherssRightssLeftsUncurryFstSndCurrySwap UncurrySym0 UncurrySym1 UncurrySym2FstSym0FstSym1SndSym0SndSym1 CurrySym0 CurrySym1 CurrySym2 CurrySym3SwapSym0SwapSym1sSwapsCurrysSndsFstsUncurryUntil UntilSym0 UntilSym1 UntilSym2 UntilSym3Maybe_ Maybe_Sym0 Maybe_Sym1 Maybe_Sym2 Maybe_Sym3sMaybe_IsJust IsNothingFromJust FromMaybe MaybeToList ListToMaybe CatMaybesMapMaybe IsJustSym0 IsJustSym1 IsNothingSym0 IsNothingSym1 FromJustSym0 FromJustSym1 FromMaybeSym0 FromMaybeSym1 FromMaybeSym2MaybeToListSym0MaybeToListSym1ListToMaybeSym0ListToMaybeSym1 CatMaybesSym0 CatMaybesSym1 MapMaybeSym0 MapMaybeSym1 MapMaybeSym2 sMapMaybe sCatMaybes sListToMaybe sMaybeToList sFromMaybe sFromJust sIsNothingsIsJustSBounded sMinBound sMaxBoundPBoundedMinBoundMaxBound MaxBoundSym0 MinBoundSym0SEnumsSuccsPredsToEnum sFromEnum sEnumFromTosEnumFromThenToPEnumSuccPredToEnumFromEnum EnumFromToEnumFromThenToEnumFromThenToSym0EnumFromThenToSym1EnumFromThenToSym2EnumFromThenToSym3EnumFromToSym0EnumFromToSym1EnumFromToSym2 FromEnumSym0 FromEnumSym1 ToEnumSym0 ToEnumSym1PredSym0PredSym1SuccSym0SuccSym1Any_Any_Sym0Any_Sym1Any_Sym2sAny_ TransposeHeadLastTailInit DropWhileEndNull IsSuffixOfReverse Intercalate Intersperse Subsequences PermutationsFoldl1'Foldl'MinimumMaximum MinimumBy MaximumByFoldl1Foldr1Concat ConcatMapAndOrAllScanl1ScanlScanrScanr1 MapAccumL MapAccumRUnfoldrInits IsInfixOfTails IsPrefixOfNubElemNotElem ElemIndex FindIndex ElemIndices FindIndicesZipZip3ZipWithZipWith3UnzipUnzip3Unzip4Unzip5Unzip6Unzip7:\\DeleteUnionUnionByDeleteFirstsByDeleteBySortSortByInsertInsertBy Intersect IntersectByFindFilter TakeWhile DropWhileGroupGroupBySpanBreakSplitAtTakeDropLookup PartitionSumProductLength Replicate:!!NubBy GenericLength TransposeSym0 TransposeSym1HeadSym0HeadSym1LastSym0LastSym1TailSym0TailSym1InitSym0InitSym1DropWhileEndSym0DropWhileEndSym1DropWhileEndSym2NullSym0NullSym1IsSuffixOfSym0IsSuffixOfSym1IsSuffixOfSym2 ReverseSym0 ReverseSym1IntercalateSym0IntercalateSym1IntercalateSym2IntersperseSym0IntersperseSym1IntersperseSym2SubsequencesSym0SubsequencesSym1PermutationsSym0PermutationsSym1 Foldl1'Sym0 Foldl1'Sym1 Foldl1'Sym2 Foldl'Sym0 Foldl'Sym1 Foldl'Sym2 Foldl'Sym3 MinimumSym0 MinimumSym1 MaximumSym0 MaximumSym1 MinimumBySym0 MinimumBySym1 MinimumBySym2 MaximumBySym0 MaximumBySym1 MaximumBySym2 Foldl1Sym0 Foldl1Sym1 Foldl1Sym2 Foldr1Sym0 Foldr1Sym1 Foldr1Sym2 ConcatSym0 ConcatSym1 ConcatMapSym0 ConcatMapSym1 ConcatMapSym2AndSym0AndSym1OrSym0OrSym1AllSym0AllSym1AllSym2 Scanl1Sym0 Scanl1Sym1 Scanl1Sym2 ScanlSym0 ScanlSym1 ScanlSym2 ScanlSym3 ScanrSym0 ScanrSym1 ScanrSym2 ScanrSym3 Scanr1Sym0 Scanr1Sym1 Scanr1Sym2 MapAccumLSym0 MapAccumLSym1 MapAccumLSym2 MapAccumLSym3 MapAccumRSym0 MapAccumRSym1 MapAccumRSym2 MapAccumRSym3 UnfoldrSym0 UnfoldrSym1 UnfoldrSym2 InitsSym0 InitsSym1 IsInfixOfSym0 IsInfixOfSym1 IsInfixOfSym2 TailsSym0 TailsSym1IsPrefixOfSym0IsPrefixOfSym1IsPrefixOfSym2NubSym0NubSym1ElemSym0ElemSym1ElemSym2 NotElemSym0 NotElemSym1 NotElemSym2 ElemIndexSym0 ElemIndexSym1 ElemIndexSym2 FindIndexSym0 FindIndexSym1 FindIndexSym2ElemIndicesSym0ElemIndicesSym1ElemIndicesSym2FindIndicesSym0FindIndicesSym1FindIndicesSym2ZipSym0ZipSym1ZipSym2Zip3Sym0Zip3Sym1Zip3Sym2Zip3Sym3 ZipWithSym0 ZipWithSym1 ZipWithSym2 ZipWithSym3 ZipWith3Sym0 ZipWith3Sym1 ZipWith3Sym2 ZipWith3Sym3 ZipWith3Sym4 UnzipSym0 UnzipSym1 Unzip3Sym0 Unzip3Sym1 Unzip4Sym0 Unzip4Sym1 Unzip5Sym0 Unzip5Sym1 Unzip6Sym0 Unzip6Sym1 Unzip7Sym0 Unzip7Sym1:\\$:\\$$:\\$$$ DeleteSym0 DeleteSym1 DeleteSym2 UnionSym0 UnionSym1 UnionSym2 UnionBySym0 UnionBySym1 UnionBySym2 UnionBySym3DeleteFirstsBySym0DeleteFirstsBySym1DeleteFirstsBySym2DeleteFirstsBySym3 DeleteBySym0 DeleteBySym1 DeleteBySym2 DeleteBySym3SortSym0SortSym1 SortBySym0 SortBySym1 SortBySym2 InsertSym0 InsertSym1 InsertSym2 InsertBySym0 InsertBySym1 InsertBySym2 InsertBySym3 IntersectSym0 IntersectSym1 IntersectSym2IntersectBySym0IntersectBySym1IntersectBySym2IntersectBySym3FindSym0FindSym1FindSym2 FilterSym0 FilterSym1 FilterSym2 TakeWhileSym0 TakeWhileSym1 TakeWhileSym2 DropWhileSym0 DropWhileSym1 DropWhileSym2 GroupSym0 GroupSym1 GroupBySym0 GroupBySym1 GroupBySym2SpanSym0SpanSym1SpanSym2 BreakSym0 BreakSym1 BreakSym2 SplitAtSym0 SplitAtSym1 SplitAtSym2TakeSym0TakeSym1TakeSym2DropSym0DropSym1DropSym2 LookupSym0 LookupSym1 LookupSym2 PartitionSym0 PartitionSym1 PartitionSym2SumSym0SumSym1 ProductSym0 ProductSym1 LengthSym0 LengthSym1 ReplicateSym0 ReplicateSym1 ReplicateSym2:!!$:!!$$:!!$$$ NubBySym0 NubBySym1 NubBySym2GenericLengthSym0GenericLengthSym1sGenericLengthsNubBy%:!! sReplicatesLengthsProductsSum sPartitionsLookupsDropsTakesSplitAtsBreaksSpansGroupBysGroup sDropWhile sTakeWhilesFiltersFind sIntersectBy sIntersect sInsertBysInsertsSortBysSort sDeleteBysDeleteFirstsBysUnionBysUnionsDelete%:\\sUnzip7sUnzip6sUnzip5sUnzip4sUnzip3sUnzip sZipWith3sZipWithsZip3sZip sFindIndices sElemIndices sFindIndex sElemIndexsNotElemsElemsNub sIsPrefixOfsTails sIsInfixOfsInitssUnfoldr sMapAccumR sMapAccumLsScanr1sScanrsScanlsScanl1sAllsOrsAnd sConcatMapsConcatsFoldr1sFoldl1 sMaximumBy sMinimumBysMaximumsMinimumsFoldl'sFoldl1' sPermutations sSubsequences sIntersperse sIntercalatesReverse sIsSuffixOfsNull sDropWhileEndsInitsTailsLastsHead sTranspose StripPrefixZip4Zip5Zip6Zip7ZipWith4ZipWith5ZipWith6ZipWith7 GenericTake GenericDropGenericSplitAt GenericIndexGenericReplicateStripPrefixSym0StripPrefixSym1StripPrefixSym2Zip4Sym0Zip4Sym1Zip4Sym2Zip4Sym3Zip4Sym4Zip5Sym0Zip5Sym1Zip5Sym2Zip5Sym3Zip5Sym4Zip5Sym5Zip6Sym0Zip6Sym1Zip6Sym2Zip6Sym3Zip6Sym4Zip6Sym5Zip6Sym6Zip7Sym0Zip7Sym1Zip7Sym2Zip7Sym3Zip7Sym4Zip7Sym5Zip7Sym6Zip7Sym7 ZipWith4Sym0 ZipWith4Sym1 ZipWith4Sym2 ZipWith4Sym3 ZipWith4Sym4 ZipWith4Sym5 ZipWith5Sym0 ZipWith5Sym1 ZipWith5Sym2 ZipWith5Sym3 ZipWith5Sym4 ZipWith5Sym5 ZipWith5Sym6 ZipWith6Sym0 ZipWith6Sym1 ZipWith6Sym2 ZipWith6Sym3 ZipWith6Sym4 ZipWith6Sym5 ZipWith6Sym6 ZipWith6Sym7 ZipWith7Sym0 ZipWith7Sym1 ZipWith7Sym2 ZipWith7Sym3 ZipWith7Sym4 ZipWith7Sym5 ZipWith7Sym6 ZipWith7Sym7 ZipWith7Sym8GenericTakeSym0GenericTakeSym1GenericTakeSym2GenericDropSym0GenericDropSym1GenericDropSym2GenericSplitAtSym0GenericSplitAtSym1GenericSplitAtSym2GenericIndexSym0GenericIndexSym1GenericIndexSym2GenericReplicateSym0GenericReplicateSym1GenericReplicateSym2 ULetDecEnv ALetDecEnv LetDecEnv lde_defns lde_types lde_infix lde_proms ULetDecRHS ALetDecRHS LetDecRHSIfAnn Unannotated AnnotatedAnnotationFlagADClauseADMatchADExpADVarEADConEADLitEADAppEADLamEADCaseEADLetEADSigE AInstDecl AClassDecl UInstDecl UClassDeclInstDeclid_cxtid_name id_arg_tysid_meths ClassDeclcd_cxtcd_namecd_tvbscd_fdscd_ldeDataDecl VarPromotions UFunctionUValue AFunctionAValue valueBinding typeBinding infixDeclemptyLetDecEnvbuildLetDecEnv$fMonoidLetDecEnvTFCo:R:LetDecRHSUnannotatedTFCo:R:LetDecRHSAnnotatedTFCo:R:IfAnnkUnannotatedyesnoTFCo:R:IfAnnkAnnotatedyesno qNewUniqueQWithAuxQWArunQWA basicTypesboundedBasicTypesenumBasicTypesqReportWarning qReportError checkForRepcheckForRepInDeclstysOfConFieldsextractNameArgsextractNameTypes extractNameisUpcaseupcase toUpcaseStrnoPrefixlocase prefixUCName prefixLCName suffixNameuniquePrefixesextractTvbKindextractTvbName tvbToTypeinferMaybeKindTVresultSigToMaybeKindunravelravel countArgs noExactTyVars substKind substType substPredsubstKindInPredsubstKindInTvbaddStar addStar_maybefoldTypefoldExpisFunTy orIfEmpty emptyMatches multiCase wrapDesugarcomp1comp2evalWithoutAux evalForAux evalForPair addBinding addElement concatMapMlistifyfstOf3liftFstliftSndsnocView partitionWithpartitionWithMpartitionLetDecs mapAndUnzip3M isHsLetter$fDsMonadQWithAux$fQuasiQWithAuxinferConstraints GHC.TypesBoolGHC.BaseNothingDIDon'tInstantiateSLambda applySing$fSingKind(->)KProxyTFCo:R:Sing(->)fTFCo:R:Apply(->)kTyCon8xTFCo:R:Apply(->)kTyCon7xTFCo:R:Apply(->)kTyCon6xTFCo:R:Apply(->)kTyCon5xTFCo:R:Apply(->)kTyCon4xTFCo:R:Apply(->)kTyCon3xTFCo:R:Apply(->)kTyCon2xTFCo:R:Applyk1kTyCon1x GHC.ClassesEq$fTestEqualitykSing anyTypeNameboolNameandName compareName minBoundName maxBoundNametyEqNamerepNamenilNameconsNamelistName tyFunName applyName symbolNamenatName undefinedName typeRepName stringNameeqNameordName boundedName orderingNamesingFamilyName singIName singMethName toSingName fromSingName demoteRepNamesingKindClassName sEqClassName sEqMethNamesIfName sconsNamesnilNamekProxyDataNamekProxyTypeNamesomeSingTypeNamesomeSingDataName proxyTypeName proxyDataName sListNamesDecideClassNamesDecideMethName provedName disprovedNamereflName equalityName applySingNamesuppressClassNamesuppressMethodName thenCmpName kindOfNametyFromIntegerName tyNegateNamesFromIntegerName sNegateName errorName foldlName cmpEQName cmpLTName cmpGTNamesingletonsToEnumNamesingletonsFromEnumNameenumNamesingletonsEnumName equalsNamesingPkg mk_name_tc mk_name_d mk_name_vmkTupleTypeNamemkTupleDataNamepromoteValNameLhspromoteValNameLhsPrefix promoteValRhs promoteTySympromoteClassName classTvsNamemkTyName falseTySym trueTySymboolKiandTySymsingDataConName singTyConName singClassName singValName kindParamproxyFor singFamilysingKindConstraintdemoteapplymkListE foldApplymkEqPred mkKProxies mkOrdInstancemk_equal_clausemk_nonequal_clauseLetBindPrMPrEnvpr_lambda_bound pr_let_boundpr_local_decls LetExpansions emptyPrEnv allLocalsemitDecs emitDecsM lambdaBindletBind lookupVarEpromoteM promoteM_ promoteMDecs $fDsMonadPrMSgMSgEnv sg_let_bindssg_local_decls emptySgEnvliftSgMbindLets bindTyVarsEq bindTyVars lookupConElookup_var_con wrapSingFun wrapUnSingFunsingM singDecsM $fDsMonadSgM $fQuasiSgMmkBoundedInstancemkEnumInstancemkEqTypeInstance promoteTypepromoteUnraveled defunInfobuildDefunSymsbuildDefunSymsDataDdefunctionalize buildTyFunbuildTyFun_maybe tyFunArityisTyFun ravelTyFun partitionDecsOrdPartitionedDecsPDecs pd_let_decs pd_class_decspd_instance_decs pd_data_decs partitionDecpartitionClassDecpartitionInstanceDec$fMonoidPartitionedDecspromoteInstance promoteInfo promoteDecspromoteDataDecspromoteLetDecspromoteDataDecpromoteClassDecpromoteInstanceDec promoteMethodpromoteLetDecEnvpromoteInfixDeclpromoteLetDecRHS promoteClause promoteMatch promotePat promoteExp promoteLitExp promoteLitPatsingTypesingPred singPredRecEqualityClassDesc sEqClassDescsDecideClassDescmkEqualityInstancemkEqMethClausemkDecideMethClause singDataDsingCtorPatternContext LetBinding CaseStatement ParametersingEqualityInstancesingInfosingTopLevelDecs buildDataLets buildMethLets singClassD singInstD singLetDecEnv singInfixDecl singTySig singLetDecRHS singClausecheckIfBrainWillExplodesingPatsingExp isException singMatchsingLit maybeSigTTuple7Sym0KindInferenceTuple7Sym1KindInferenceTuple7Sym2KindInferenceTuple7Sym3KindInferenceTuple7Sym4KindInferenceTuple7Sym5KindInferenceTuple7Sym6KindInferenceTuple6Sym0KindInferenceTuple6Sym1KindInferenceTuple6Sym2KindInferenceTuple6Sym3KindInferenceTuple6Sym4KindInferenceTuple6Sym5KindInferenceTuple5Sym0KindInferenceTuple5Sym1KindInferenceTuple5Sym2KindInferenceTuple5Sym3KindInferenceTuple5Sym4KindInferenceTuple4Sym0KindInferenceTuple4Sym1KindInferenceTuple4Sym2KindInferenceTuple4Sym3KindInferenceTuple3Sym0KindInferenceTuple3Sym1KindInferenceTuple3Sym2KindInferenceTuple2Sym0KindInferenceTuple2Sym1KindInferenceRightSym0KindInferenceLeftSym0KindInference:$###:$$###JustSym0KindInferenceSLTSEQSGTSFalseSTrueSLeftSRightSNilSConsSNothingSJustTFCo:R:DemoteRep()KProxy$fSDecide()KProxyFoldlSym0KindInferenceFoldlSym1KindInferenceFoldlSym2KindInferenceLet1627605802LgoLet1627605802LgoSym0!Let1627605802LgoSym0KindInferenceLet1627605802LgoSym1!Let1627605802LgoSym1KindInferenceLet1627605802LgoSym2!Let1627605802LgoSym2KindInferenceLet1627605802LgoSym3!Let1627605802LgoSym3KindInferenceLet1627605802LgoSym4!Let1627605802LgoSym4KindInferenceLet1627605802LgoSym5TFCo:R:Apply(->)(->)FoldlSym0l0Bool_Sym0KindInferenceBool_Sym1KindInferenceBool_Sym2KindInferenceTFCo:R:Apply(->)kBool_Sym0l0:&&$###:&&$$###:||$###:||$$###NotSym0KindInferenceTFCo:R:Apply(->)Bool:&&$l0Equals_1627640579Equals_1627640592Equals_1627640611Equals_1627640630Equals_1627640650Equals_1627640676Equals_1627640708Equals_1627640746Equals_1627640790Equals_1627640832Equals_1627640839Equals_1627640846:/=$###:/=$$###:==$###:==$$###TFCo:R:Apply(->)k:/=$l0TFCo:R::==()a0b0STypeRepdirty_mk_STypeRep$fTestCoercion*Sing$fSDecide*KProxy $fSEq*KProxy $fPEq*KProxy$fSingKind*KProxy $fSingI*a TFCo:R:Sing*aCase_1627660788Case_1627660798Compare_1627660804Case_1627660832TFHelper_1627660837Case_1627660865TFHelper_1627660870Case_1627660898TFHelper_1627660903Case_1627660931TFHelper_1627660936Case_1627660964Max_1627660969Case_1627660997Min_1627661002Compare_1627669538Compare_1627669590Compare_1627669646Compare_1627669690Compare_1627669733Compare_1627669784Compare_1627669843Compare_1627669910Compare_1627669985Compare_1627670020Compare_1627670044Compare_1627670073Min_1627661002Sym0Min_1627661002Sym0KindInferenceMin_1627661002Sym1Min_1627661002Sym1KindInferenceMin_1627661002Sym2!Let1627660989Scrutinee_1627659915%Let1627660989Scrutinee_1627659915Sym02Let1627660989Scrutinee_1627659915Sym0KindInference%Let1627660989Scrutinee_1627659915Sym12Let1627660989Scrutinee_1627659915Sym1KindInference%Let1627660989Scrutinee_1627659915Sym2Max_1627660969Sym0Max_1627660969Sym0KindInferenceMax_1627660969Sym1Max_1627660969Sym1KindInferenceMax_1627660969Sym2!Let1627660956Scrutinee_1627659913%Let1627660956Scrutinee_1627659913Sym02Let1627660956Scrutinee_1627659913Sym0KindInference%Let1627660956Scrutinee_1627659913Sym12Let1627660956Scrutinee_1627659913Sym1KindInference%Let1627660956Scrutinee_1627659913Sym2TFHelper_1627660936Sym0$TFHelper_1627660936Sym0KindInferenceTFHelper_1627660936Sym1$TFHelper_1627660936Sym1KindInferenceTFHelper_1627660936Sym2!Let1627660923Scrutinee_1627659911%Let1627660923Scrutinee_1627659911Sym02Let1627660923Scrutinee_1627659911Sym0KindInference%Let1627660923Scrutinee_1627659911Sym12Let1627660923Scrutinee_1627659911Sym1KindInference%Let1627660923Scrutinee_1627659911Sym2TFHelper_1627660903Sym0$TFHelper_1627660903Sym0KindInferenceTFHelper_1627660903Sym1$TFHelper_1627660903Sym1KindInferenceTFHelper_1627660903Sym2!Let1627660890Scrutinee_1627659909%Let1627660890Scrutinee_1627659909Sym02Let1627660890Scrutinee_1627659909Sym0KindInference%Let1627660890Scrutinee_1627659909Sym12Let1627660890Scrutinee_1627659909Sym1KindInference%Let1627660890Scrutinee_1627659909Sym2TFHelper_1627660870Sym0$TFHelper_1627660870Sym0KindInferenceTFHelper_1627660870Sym1$TFHelper_1627660870Sym1KindInferenceTFHelper_1627660870Sym2!Let1627660857Scrutinee_1627659907%Let1627660857Scrutinee_1627659907Sym02Let1627660857Scrutinee_1627659907Sym0KindInference%Let1627660857Scrutinee_1627659907Sym12Let1627660857Scrutinee_1627659907Sym1KindInference%Let1627660857Scrutinee_1627659907Sym2TFHelper_1627660837Sym0$TFHelper_1627660837Sym0KindInferenceTFHelper_1627660837Sym1$TFHelper_1627660837Sym1KindInferenceTFHelper_1627660837Sym2!Let1627660824Scrutinee_1627659905%Let1627660824Scrutinee_1627659905Sym02Let1627660824Scrutinee_1627659905Sym0KindInference%Let1627660824Scrutinee_1627659905Sym12Let1627660824Scrutinee_1627659905Sym1KindInference%Let1627660824Scrutinee_1627659905Sym2Compare_1627660804Sym0#Compare_1627660804Sym0KindInferenceCompare_1627660804Sym1#Compare_1627660804Sym1KindInferenceCompare_1627660804Sym2!Let1627660790Scrutinee_1627659903%Let1627660790Scrutinee_1627659903Sym02Let1627660790Scrutinee_1627659903Sym0KindInference%Let1627660790Scrutinee_1627659903Sym12Let1627660790Scrutinee_1627659903Sym1KindInference%Let1627660790Scrutinee_1627659903Sym2!Let1627660780Scrutinee_1627659901%Let1627660780Scrutinee_1627659901Sym02Let1627660780Scrutinee_1627659901Sym0KindInference%Let1627660780Scrutinee_1627659901Sym12Let1627660780Scrutinee_1627659901Sym1KindInference%Let1627660780Scrutinee_1627659901Sym2MinSym0KindInferenceMinSym1KindInferenceMaxSym0KindInferenceMaxSym1KindInference:>=$###:>=$$###:>$###:>$$###:<=$###:<=$$###:<$###:<$$###CompareSym0KindInferenceCompareSym1KindInference%TFCo:R:Apply(->)kMin_1627661002Sym0l0ThenCmpSym0KindInferenceThenCmpSym1KindInference%TFCo:R:Apply(->)OrderingThenCmpSym0l0Compare_1627670073Sym0#Compare_1627670073Sym0KindInferenceCompare_1627670073Sym1#Compare_1627670073Sym1KindInferenceCompare_1627670073Sym2Compare_1627670044Sym0#Compare_1627670044Sym0KindInferenceCompare_1627670044Sym1#Compare_1627670044Sym1KindInferenceCompare_1627670044Sym2Compare_1627670020Sym0#Compare_1627670020Sym0KindInferenceCompare_1627670020Sym1#Compare_1627670020Sym1KindInferenceCompare_1627670020Sym2Compare_1627669985Sym0#Compare_1627669985Sym0KindInferenceCompare_1627669985Sym1#Compare_1627669985Sym1KindInferenceCompare_1627669985Sym2Compare_1627669910Sym0#Compare_1627669910Sym0KindInferenceCompare_1627669910Sym1#Compare_1627669910Sym1KindInferenceCompare_1627669910Sym2Compare_1627669843Sym0#Compare_1627669843Sym0KindInferenceCompare_1627669843Sym1#Compare_1627669843Sym1KindInferenceCompare_1627669843Sym2Compare_1627669784Sym0#Compare_1627669784Sym0KindInferenceCompare_1627669784Sym1#Compare_1627669784Sym1KindInferenceCompare_1627669784Sym2Compare_1627669733Sym0#Compare_1627669733Sym0KindInferenceCompare_1627669733Sym1#Compare_1627669733Sym1KindInferenceCompare_1627669733Sym2Compare_1627669690Sym0#Compare_1627669690Sym0KindInferenceCompare_1627669690Sym1#Compare_1627669690Sym1KindInferenceCompare_1627669690Sym2Compare_1627669646Sym0#Compare_1627669646Sym0KindInferenceCompare_1627669646Sym1#Compare_1627669646Sym1KindInferenceCompare_1627669646Sym2Compare_1627669590Sym0#Compare_1627669590Sym0KindInferenceCompare_1627669590Sym1#Compare_1627669590Sym1KindInferenceCompare_1627669590Sym2Compare_1627669538Sym0#Compare_1627669538Sym0KindInferenceCompare_1627669538Sym1#Compare_1627669538Sym1KindInferenceCompare_1627669538Sym2TFCo:R:Compare()a0a1Lambda_1627752671FoldrSym0KindInferenceFoldrSym1KindInferenceFoldrSym2KindInferenceMapSym0KindInferenceMapSym1KindInference:++$###:++$$###IdSym0KindInferenceAsTypeOfSym0KindInferenceAsTypeOfSym1KindInferenceConstSym0KindInferenceConstSym1KindInference:.$###:.$$###:.$$$###FlipSym0KindInferenceFlipSym1KindInferenceFlipSym2KindInferenceSeqSym0KindInferenceSeqSym1KindInferenceLet1627752774GoLet1627752774GoSym0 Let1627752774GoSym0KindInferenceLet1627752774GoSym1 Let1627752774GoSym1KindInferenceLet1627752774GoSym2 Let1627752774GoSym2KindInferenceLet1627752774GoSym3 Let1627752774GoSym3KindInferenceLet1627752774GoSym4Lambda_1627752671Sym0"Lambda_1627752671Sym0KindInferenceLambda_1627752671Sym1"Lambda_1627752671Sym1KindInferenceLambda_1627752671Sym2"Lambda_1627752671Sym2KindInferenceLambda_1627752671Sym3"Lambda_1627752671Sym3KindInferenceLambda_1627752671Sym4TFCo:R:Applyk1k$!$$argTFCo:R:Apply(->)(->)$!$argTFCo:R:$!kk1fxTFCo:R:Applyk1k$$$argTFCo:R:Apply(->)(->)$$arg TFCo:R:$kk1fxTFCo:R:Apply(->)(->)FoldrSym0l0GHC.ErrerrorSSym$fSOrdSymbolKProxy$fSOrdNatKProxy$fPOrdSymbolKProxy$fPOrdNatKProxy$fSEqSymbolKProxy$fSEqNatKProxy$fPEqSymbolKProxy$fPEqNatKProxy$fSDecideSymbolKProxy$fSDecideNatKProxy$fSingKindSymbolKProxy$fSingISymbolnTFCo:R:SingSymboln$fSingKindNatKProxy $fSingINatnTFCo:R:SingNatnErrorSym0KindInferenceTFCo:R:Applykk1ErrorSym0l0:^$###:^$$###TFCo:R:Apply(->)Nat:^$l0TFHelper_1627771586Negate_1627771601 SignumNatNegate_1627771601Sym0"Negate_1627771601Sym0KindInferenceNegate_1627771601Sym1TFHelper_1627771586Sym0$TFHelper_1627771586Sym0KindInferenceTFHelper_1627771586Sym1$TFHelper_1627771586Sym1KindInferenceTFHelper_1627771586Sym2FromIntegerSym0KindInferenceSignumSym0KindInferenceAbsSym0KindInferenceNegateSym0KindInference:*$###:*$$###:-$###:-$$###:+$###:+$$###$fSNumNatKProxy$fPNumNatKProxy%TFCo:R:ApplykkNegate_1627771601Sym0l0SubtractSym0KindInferenceSubtractSym1KindInferenceTFCo:R:Apply(->)kSubtractSym0l0no_term_level_nats$fNumNat buildCasesEither_Sym0KindInferenceEither_Sym1KindInferenceEither_Sym2KindInference!TFCo:R:Apply(->)(->)Either_Sym0l0LeftsSym0KindInferenceRightsSym0KindInferencePartitionEithersSym0!PartitionEithersSym0KindInferencePartitionEithersSym1IsLeftSym0KindInferenceIsRightSym0KindInferenceLet1627783665LeftLet1627783665RightLet1627783665LeftSym0"Let1627783665LeftSym0KindInferenceLet1627783665LeftSym1"Let1627783665LeftSym1KindInferenceLet1627783665LeftSym2"Let1627783665LeftSym2KindInferenceLet1627783665LeftSym3Let1627783665RightSym0#Let1627783665RightSym0KindInferenceLet1627783665RightSym1#Let1627783665RightSym1KindInferenceLet1627783665RightSym2#Let1627783665RightSym2KindInferenceLet1627783665RightSym3TFCo:R:Apply[][]LeftsSym0l0UncurrySym0KindInferenceUncurrySym1KindInferenceFstSym0KindInferenceSndSym0KindInferenceCurrySym0KindInferenceCurrySym1KindInferenceCurrySym2KindInferenceSwapSym0KindInference!TFCo:R:Apply(->)(->)UncurrySym0l0Case_1627798479Case_1627798482UntilSym0KindInferenceUntilSym1KindInferenceUntilSym2KindInferenceLet1627798458GoLet1627798458GoSym0 Let1627798458GoSym0KindInferenceLet1627798458GoSym1 Let1627798458GoSym1KindInferenceLet1627798458GoSym2 Let1627798458GoSym2KindInferenceLet1627798458GoSym3 Let1627798458GoSym3KindInferenceLet1627798458GoSym4TFCo:R:Apply(->)(->)UntilSym0l0Case_1627802169Case_1627802204Maybe_Sym0KindInferenceMaybe_Sym1KindInferenceMaybe_Sym2KindInferenceTFCo:R:Apply(->)kMaybe_Sym0l0IsJustSym0KindInferenceIsNothingSym0KindInferenceFromJustSym0KindInferenceFromMaybeSym0KindInferenceFromMaybeSym1KindInferenceMaybeToListSym0KindInferenceListToMaybeSym0KindInferenceCatMaybesSym0KindInferenceMapMaybeSym0KindInferenceMapMaybeSym1KindInference!Let1627802156Scrutinee_1627802126%Let1627802156Scrutinee_1627802126Sym02Let1627802156Scrutinee_1627802126Sym0KindInference%Let1627802156Scrutinee_1627802126Sym12Let1627802156Scrutinee_1627802126Sym1KindInference%Let1627802156Scrutinee_1627802126Sym22Let1627802156Scrutinee_1627802126Sym2KindInference%Let1627802156Scrutinee_1627802126Sym3Let1627802143RsLet1627802143RsSym0 Let1627802143RsSym0KindInferenceLet1627802143RsSym1 Let1627802143RsSym1KindInferenceLet1627802143RsSym2 Let1627802143RsSym2KindInferenceLet1627802143RsSym3!TFCo:R:ApplyBoolMaybeIsJustSym0l0MinBound_1627812397MaxBound_1627812399MinBound_1627812409MaxBound_1627812411MinBound_1627812415MaxBound_1627812417MinBound_1627812421MaxBound_1627812423MinBound_1627812427MaxBound_1627812429MinBound_1627812433MaxBound_1627812435MinBound_1627812439MaxBound_1627812441MinBound_1627812445MaxBound_1627812447MinBound_1627812451MaxBound_1627812453Case_1627817309Case_1627817314Case_1627817350Case_1627817464Case_1627817467Case_1627817491Case_1627817496Case_1627817532Case_1627817646Case_1627817649Case_1627817673Case_1627817678Case_1627817693Case_1627817751Case_1627817754Succ_1627817807Pred_1627817820EnumFromTo_1627817838EnumFromThenTo_1627817868Succ_1627817888Pred_1627817899ToEnum_1627817910FromEnum_1627817921EnumFromTo_1627817943EnumFromThenTo_1627817979Case_1627841930Case_1627841932ToEnum_1627841937FromEnum_1627841947Case_1627841966Case_1627841968Case_1627841970ToEnum_1627841976FromEnum_1627841986Case_1627842008ToEnum_1627842012FromEnum_1627842022MaxBound_1627812453Sym0MinBound_1627812451Sym0MaxBound_1627812447Sym0MinBound_1627812445Sym0MaxBound_1627812441Sym0MinBound_1627812439Sym0MaxBound_1627812435Sym0MinBound_1627812433Sym0MaxBound_1627812429Sym0MinBound_1627812427Sym0MaxBound_1627812423Sym0MinBound_1627812421Sym0MaxBound_1627812417Sym0MinBound_1627812415Sym0MaxBound_1627812411Sym0MinBound_1627812409Sym0MaxBound_1627812399Sym0MinBound_1627812397Sym0TFCo:R:MinBound()EnumFromThenTo_1627817979Sym0*EnumFromThenTo_1627817979Sym0KindInferenceEnumFromThenTo_1627817979Sym1*EnumFromThenTo_1627817979Sym1KindInferenceEnumFromThenTo_1627817979Sym2*EnumFromThenTo_1627817979Sym2KindInferenceEnumFromThenTo_1627817979Sym3EnumFromTo_1627817943Sym0&EnumFromTo_1627817943Sym0KindInferenceEnumFromTo_1627817943Sym1&EnumFromTo_1627817943Sym1KindInferenceEnumFromTo_1627817943Sym2FromEnum_1627817921Sym0$FromEnum_1627817921Sym0KindInferenceFromEnum_1627817921Sym1ToEnum_1627817910Sym0"ToEnum_1627817910Sym0KindInferenceToEnum_1627817910Sym1Pred_1627817899Sym0 Pred_1627817899Sym0KindInferencePred_1627817899Sym1Succ_1627817888Sym0 Succ_1627817888Sym0KindInferenceSucc_1627817888Sym1EnumFromThenTo_1627817868Sym0*EnumFromThenTo_1627817868Sym0KindInferenceEnumFromThenTo_1627817868Sym1*EnumFromThenTo_1627817868Sym1KindInferenceEnumFromThenTo_1627817868Sym2*EnumFromThenTo_1627817868Sym2KindInferenceEnumFromThenTo_1627817868Sym3EnumFromTo_1627817838Sym0&EnumFromTo_1627817838Sym0KindInferenceEnumFromTo_1627817838Sym1&EnumFromTo_1627817838Sym1KindInferenceEnumFromTo_1627817838Sym2Pred_1627817820Sym0 Pred_1627817820Sym0KindInferencePred_1627817820Sym1Succ_1627817807Sym0 Succ_1627817807Sym0KindInferenceSucc_1627817807Sym1EnumFromThenToSym0KindInferenceEnumFromThenToSym1KindInferenceEnumFromThenToSym2KindInferenceEnumFromToSym0KindInferenceEnumFromToSym1KindInferenceFromEnumSym0KindInferenceToEnumSym0KindInferencePredSym0KindInferenceSuccSym0KindInferenceEftNatEfdtNat EfdtNatUp EfdtNatDn EftNatSym0EftNatSym0KindInference EftNatSym1EftNatSym1KindInference EftNatSym2 EfdtNatSym0EfdtNatSym0KindInference EfdtNatSym1EfdtNatSym1KindInference EfdtNatSym2EfdtNatSym2KindInference EfdtNatSym3 EfdtNatUpSym0EfdtNatUpSym0KindInference EfdtNatUpSym1EfdtNatUpSym1KindInference EfdtNatUpSym2EfdtNatUpSym2KindInference EfdtNatUpSym3 EfdtNatDnSym0EfdtNatDnSym0KindInference EfdtNatDnSym1EfdtNatDnSym1KindInference EfdtNatDnSym2EfdtNatDnSym2KindInference EfdtNatDnSym3Let1627817697GoLet1627817697GoSym0 Let1627817697GoSym0KindInferenceLet1627817697GoSym1 Let1627817697GoSym1KindInferenceLet1627817697GoSym2 Let1627817697GoSym2KindInferenceLet1627817697GoSym3 Let1627817697GoSym3KindInferenceLet1627817697GoSym4 Let1627817697GoSym4KindInferenceLet1627817697GoSym5!Let1627817725Scrutinee_1627817263%Let1627817725Scrutinee_1627817263Sym02Let1627817725Scrutinee_1627817263Sym0KindInference%Let1627817725Scrutinee_1627817263Sym12Let1627817725Scrutinee_1627817263Sym1KindInference%Let1627817725Scrutinee_1627817263Sym22Let1627817725Scrutinee_1627817263Sym2KindInference%Let1627817725Scrutinee_1627817263Sym32Let1627817725Scrutinee_1627817263Sym3KindInference%Let1627817725Scrutinee_1627817263Sym42Let1627817725Scrutinee_1627817263Sym4KindInference%Let1627817725Scrutinee_1627817263Sym5Let1627817535Go_upLet1627817535Y'Let1627817535DeltaLet1627817535Go_upSym0#Let1627817535Go_upSym0KindInferenceLet1627817535Go_upSym1#Let1627817535Go_upSym1KindInferenceLet1627817535Go_upSym2#Let1627817535Go_upSym2KindInferenceLet1627817535Go_upSym3#Let1627817535Go_upSym3KindInferenceLet1627817535Go_upSym4#Let1627817535Go_upSym4KindInferenceLet1627817535Go_upSym5#Let1627817535Go_upSym5KindInferenceLet1627817535Go_upSym6#Let1627817535Go_upSym6KindInferenceLet1627817535Go_upSym7Let1627817535Y'Sym0 Let1627817535Y'Sym0KindInferenceLet1627817535Y'Sym1 Let1627817535Y'Sym1KindInferenceLet1627817535Y'Sym2 Let1627817535Y'Sym2KindInferenceLet1627817535Y'Sym3 Let1627817535Y'Sym3KindInferenceLet1627817535Y'Sym4 Let1627817535Y'Sym4KindInferenceLet1627817535Y'Sym5 Let1627817535Y'Sym5KindInferenceLet1627817535Y'Sym6Let1627817535DeltaSym0#Let1627817535DeltaSym0KindInferenceLet1627817535DeltaSym1#Let1627817535DeltaSym1KindInferenceLet1627817535DeltaSym2#Let1627817535DeltaSym2KindInferenceLet1627817535DeltaSym3#Let1627817535DeltaSym3KindInferenceLet1627817535DeltaSym4#Let1627817535DeltaSym4KindInferenceLet1627817535DeltaSym5#Let1627817535DeltaSym5KindInferenceLet1627817535DeltaSym6!Let1627817498Scrutinee_1627817277%Let1627817498Scrutinee_1627817277Sym02Let1627817498Scrutinee_1627817277Sym0KindInference%Let1627817498Scrutinee_1627817277Sym12Let1627817498Scrutinee_1627817277Sym1KindInference%Let1627817498Scrutinee_1627817277Sym22Let1627817498Scrutinee_1627817277Sym2KindInference%Let1627817498Scrutinee_1627817277Sym32Let1627817498Scrutinee_1627817277Sym3KindInference%Let1627817498Scrutinee_1627817277Sym42Let1627817498Scrutinee_1627817277Sym4KindInference%Let1627817498Scrutinee_1627817277Sym52Let1627817498Scrutinee_1627817277Sym5KindInference%Let1627817498Scrutinee_1627817277Sym6Let1627817353Go_dnLet1627817353Y'Let1627817353DeltaLet1627817353Go_dnSym0#Let1627817353Go_dnSym0KindInferenceLet1627817353Go_dnSym1#Let1627817353Go_dnSym1KindInferenceLet1627817353Go_dnSym2#Let1627817353Go_dnSym2KindInferenceLet1627817353Go_dnSym3#Let1627817353Go_dnSym3KindInferenceLet1627817353Go_dnSym4#Let1627817353Go_dnSym4KindInferenceLet1627817353Go_dnSym5#Let1627817353Go_dnSym5KindInferenceLet1627817353Go_dnSym6#Let1627817353Go_dnSym6KindInferenceLet1627817353Go_dnSym7Let1627817353Y'Sym0 Let1627817353Y'Sym0KindInferenceLet1627817353Y'Sym1 Let1627817353Y'Sym1KindInferenceLet1627817353Y'Sym2 Let1627817353Y'Sym2KindInferenceLet1627817353Y'Sym3 Let1627817353Y'Sym3KindInferenceLet1627817353Y'Sym4 Let1627817353Y'Sym4KindInferenceLet1627817353Y'Sym5 Let1627817353Y'Sym5KindInferenceLet1627817353Y'Sym6Let1627817353DeltaSym0#Let1627817353DeltaSym0KindInferenceLet1627817353DeltaSym1#Let1627817353DeltaSym1KindInferenceLet1627817353DeltaSym2#Let1627817353DeltaSym2KindInferenceLet1627817353DeltaSym3#Let1627817353DeltaSym3KindInferenceLet1627817353DeltaSym4#Let1627817353DeltaSym4KindInferenceLet1627817353DeltaSym5#Let1627817353DeltaSym5KindInferenceLet1627817353DeltaSym6!Let1627817316Scrutinee_1627817287%Let1627817316Scrutinee_1627817287Sym02Let1627817316Scrutinee_1627817287Sym0KindInference%Let1627817316Scrutinee_1627817287Sym12Let1627817316Scrutinee_1627817287Sym1KindInference%Let1627817316Scrutinee_1627817287Sym22Let1627817316Scrutinee_1627817287Sym2KindInference%Let1627817316Scrutinee_1627817287Sym32Let1627817316Scrutinee_1627817287Sym3KindInference%Let1627817316Scrutinee_1627817287Sym42Let1627817316Scrutinee_1627817287Sym4KindInference%Let1627817316Scrutinee_1627817287Sym52Let1627817316Scrutinee_1627817287Sym5KindInference%Let1627817316Scrutinee_1627817287Sym6 sEfdtNatDn sEfdtNatUpsEfdtNatsEftNatTFCo:R:SuccNata0FromEnum_1627842022Sym0$FromEnum_1627842022Sym0KindInferenceFromEnum_1627842022Sym1ToEnum_1627842012Sym0"ToEnum_1627842012Sym0KindInferenceToEnum_1627842012Sym1FromEnum_1627841986Sym0$FromEnum_1627841986Sym0KindInferenceFromEnum_1627841986Sym1ToEnum_1627841976Sym0"ToEnum_1627841976Sym0KindInferenceToEnum_1627841976Sym1FromEnum_1627841947Sym0$FromEnum_1627841947Sym0KindInferenceFromEnum_1627841947Sym1ToEnum_1627841937Sym0"ToEnum_1627841937Sym0KindInferenceToEnum_1627841937Sym1TFCo:R:ToEnum()a0Case_1627905889Case_1627905920Case_1627905942Case_1627906039Case_1627906086Case_1627906117Case_1627906148Case_1627906207Case_1627906216Case_1627906235Case_1627906312Case_1627906321Case_1627906340Case_1627906394Case_1627906413Case_1627906490Case_1627906521Case_1627906550Lambda_1627906658Case_1627906771Case_1627906849Lambda_1627906942Case_1627906946Lambda_1627906982Case_1627906986Lambda_1627907020Case_1627907024Lambda_1627907056Case_1627907060Lambda_1627907090Case_1627907094Lambda_1627907122Case_1627907126Lambda_1627907432Case_1627907435Case_1627907569Case_1627907602Case_1627907625Case_1627907649Case_1627907690Case_1627907715Case_1627907740Case_1627907765Case_1627907862Case_1627907887Case_1627907912Case_1627907937Case_1627908056Case_1627908103Case_1627908126Case_1627908331Case_1627908418Case_1627908635Case_1627908694Case_1627908847Lambda_1627909053Case_1627909076Any_Sym0KindInferenceAny_Sym1KindInferenceTFCo:R:Apply(->)(->)Any_Sym0l0NonEmptySubsequences PrependToAllSelectElem_byTransposeSym0KindInferenceHeadSym0KindInferenceLastSym0KindInferenceTailSym0KindInferenceInitSym0KindInferenceDropWhileEndSym0KindInferenceDropWhileEndSym1KindInferenceNullSym0KindInferenceIsSuffixOfSym0KindInferenceIsSuffixOfSym1KindInferenceReverseSym0KindInferenceIntercalateSym0KindInferenceIntercalateSym1KindInferenceIntersperseSym0KindInferenceIntersperseSym1KindInferenceSubsequencesSym0KindInferenceNonEmptySubsequencesSym0%NonEmptySubsequencesSym0KindInferenceNonEmptySubsequencesSym1PrependToAllSym0PrependToAllSym0KindInferencePrependToAllSym1PrependToAllSym1KindInferencePrependToAllSym2PermutationsSym0KindInferenceFoldl1'Sym0KindInferenceFoldl1'Sym1KindInferenceFoldl'Sym0KindInferenceFoldl'Sym1KindInferenceFoldl'Sym2KindInferenceMinimumSym0KindInferenceMaximumSym0KindInferenceMinimumBySym0KindInferenceMinimumBySym1KindInferenceMaximumBySym0KindInferenceMaximumBySym1KindInferenceFoldl1Sym0KindInferenceFoldl1Sym1KindInferenceFoldr1Sym0KindInferenceFoldr1Sym1KindInferenceConcatSym0KindInferenceConcatMapSym0KindInferenceConcatMapSym1KindInferenceAndSym0KindInferenceOrSym0KindInferenceAllSym0KindInferenceAllSym1KindInferenceScanl1Sym0KindInferenceScanl1Sym1KindInferenceScanlSym0KindInferenceScanlSym1KindInferenceScanlSym2KindInferenceScanrSym0KindInferenceScanrSym1KindInferenceScanrSym2KindInferenceScanr1Sym0KindInferenceScanr1Sym1KindInferenceMapAccumLSym0KindInferenceMapAccumLSym1KindInferenceMapAccumLSym2KindInferenceMapAccumRSym0KindInferenceMapAccumRSym1KindInferenceMapAccumRSym2KindInferenceUnfoldrSym0KindInferenceUnfoldrSym1KindInferenceInitsSym0KindInferenceIsInfixOfSym0KindInferenceIsInfixOfSym1KindInferenceTailsSym0KindInferenceIsPrefixOfSym0KindInferenceIsPrefixOfSym1KindInferenceNubSym0KindInferenceElemSym0KindInferenceElemSym1KindInferenceNotElemSym0KindInferenceNotElemSym1KindInferenceElemIndexSym0KindInferenceElemIndexSym1KindInferenceFindIndexSym0KindInferenceFindIndexSym1KindInferenceElemIndicesSym0KindInferenceElemIndicesSym1KindInferenceFindIndicesSym0KindInferenceFindIndicesSym1KindInferenceZipSym0KindInferenceZipSym1KindInferenceZip3Sym0KindInferenceZip3Sym1KindInferenceZip3Sym2KindInferenceZipWithSym0KindInferenceZipWithSym1KindInferenceZipWithSym2KindInferenceZipWith3Sym0KindInferenceZipWith3Sym1KindInferenceZipWith3Sym2KindInferenceZipWith3Sym3KindInferenceUnzipSym0KindInferenceUnzip3Sym0KindInferenceUnzip4Sym0KindInferenceUnzip5Sym0KindInferenceUnzip6Sym0KindInferenceUnzip7Sym0KindInference:\\$###:\\$$###DeleteSym0KindInferenceDeleteSym1KindInferenceUnionSym0KindInferenceUnionSym1KindInferenceUnionBySym0KindInferenceUnionBySym1KindInferenceUnionBySym2KindInferenceDeleteFirstsBySym0KindInferenceDeleteFirstsBySym1KindInferenceDeleteFirstsBySym2KindInferenceDeleteBySym0KindInferenceDeleteBySym1KindInferenceDeleteBySym2KindInferenceSortSym0KindInferenceSortBySym0KindInferenceSortBySym1KindInferenceInsertSym0KindInferenceInsertSym1KindInferenceInsertBySym0KindInferenceInsertBySym1KindInferenceInsertBySym2KindInferenceIntersectSym0KindInferenceIntersectSym1KindInferenceIntersectBySym0KindInferenceIntersectBySym1KindInferenceIntersectBySym2KindInferenceFindSym0KindInferenceFindSym1KindInferenceFilterSym0KindInferenceFilterSym1KindInferenceTakeWhileSym0KindInferenceTakeWhileSym1KindInferenceDropWhileSym0KindInferenceDropWhileSym1KindInferenceGroupSym0KindInferenceGroupBySym0KindInferenceGroupBySym1KindInferenceSpanSym0KindInferenceSpanSym1KindInferenceBreakSym0KindInferenceBreakSym1KindInferenceSplitAtSym0KindInferenceSplitAtSym1KindInferenceTakeSym0KindInferenceTakeSym1KindInferenceDropSym0KindInferenceDropSym1KindInferenceLookupSym0KindInferenceLookupSym1KindInferencePartitionSym0KindInferencePartitionSym1KindInference SelectSym0SelectSym0KindInference SelectSym1SelectSym1KindInference SelectSym2SelectSym2KindInference SelectSym3SumSym0KindInferenceProductSym0KindInferenceLengthSym0KindInferenceReplicateSym0KindInferenceReplicateSym1KindInference:!!$###:!!$$###NubBySym0KindInferenceNubBySym1KindInference Elem_bySym0Elem_bySym0KindInference Elem_bySym1Elem_bySym1KindInference Elem_bySym2Elem_bySym2KindInference Elem_bySym3GenericLengthSym0KindInferenceLet1627909105Init'Let1627909105Init'Sym0#Let1627909105Init'Sym0KindInferenceLet1627909105Init'Sym1#Let1627909105Init'Sym1KindInferenceLet1627909105Init'Sym2#Let1627909105Init'Sym2KindInferenceLet1627909105Init'Sym3#Let1627909105Init'Sym3KindInferenceLet1627909105Init'Sym4Lambda_1627909053Sym0"Lambda_1627909053Sym0KindInferenceLambda_1627909053Sym1"Lambda_1627909053Sym1KindInferenceLambda_1627909053Sym2"Lambda_1627909053Sym2KindInferenceLambda_1627909053Sym3"Lambda_1627909053Sym3KindInferenceLambda_1627909053Sym4!Let1627909057Scrutinee_1627905756%Let1627909057Scrutinee_1627905756Sym02Let1627909057Scrutinee_1627905756Sym0KindInference%Let1627909057Scrutinee_1627905756Sym12Let1627909057Scrutinee_1627905756Sym1KindInference%Let1627909057Scrutinee_1627905756Sym22Let1627909057Scrutinee_1627905756Sym2KindInference%Let1627909057Scrutinee_1627905756Sym32Let1627909057Scrutinee_1627905756Sym3KindInference%Let1627909057Scrutinee_1627905756Sym4Let1627909000RevLet1627909000RevSym0!Let1627909000RevSym0KindInferenceLet1627909000RevSym1!Let1627909000RevSym1KindInferenceLet1627909000RevSym2!Let1627909000RevSym2KindInferenceLet1627909000RevSym3Let1627908941FLet1627908941FSym0Let1627908941FSym0KindInferenceLet1627908941FSym1Let1627908941FSym1KindInferenceLet1627908941FSym2Let1627908941FSym2KindInferenceLet1627908941FSym3Let1627908941FSym3KindInferenceLet1627908941FSym4Let1627908553PermsLet1627908553PermsSym0#Let1627908553PermsSym0KindInferenceLet1627908553PermsSym1#Let1627908553PermsSym1KindInferenceLet1627908553PermsSym2#Let1627908553PermsSym2KindInferenceLet1627908553PermsSym3Let1627908574InterleaveLet1627908574Interleave'Let1627908574InterleaveSym0(Let1627908574InterleaveSym0KindInferenceLet1627908574InterleaveSym1(Let1627908574InterleaveSym1KindInferenceLet1627908574InterleaveSym2(Let1627908574InterleaveSym2KindInferenceLet1627908574InterleaveSym3(Let1627908574InterleaveSym3KindInferenceLet1627908574InterleaveSym4(Let1627908574InterleaveSym4KindInferenceLet1627908574InterleaveSym5(Let1627908574InterleaveSym5KindInferenceLet1627908574InterleaveSym6Let1627908574Interleave'Sym0)Let1627908574Interleave'Sym0KindInferenceLet1627908574Interleave'Sym1)Let1627908574Interleave'Sym1KindInferenceLet1627908574Interleave'Sym2)Let1627908574Interleave'Sym2KindInferenceLet1627908574Interleave'Sym3)Let1627908574Interleave'Sym3KindInferenceLet1627908574Interleave'Sym4)Let1627908574Interleave'Sym4KindInferenceLet1627908574Interleave'Sym5)Let1627908574Interleave'Sym5KindInferenceLet1627908574Interleave'Sym6)Let1627908574Interleave'Sym6KindInferenceLet1627908574Interleave'Sym7Let1627908842X_1627908843Let1627908842ZsLet1627908842X_1627908843Sym0*Let1627908842X_1627908843Sym0KindInferenceLet1627908842X_1627908843Sym1*Let1627908842X_1627908843Sym1KindInferenceLet1627908842X_1627908843Sym2*Let1627908842X_1627908843Sym2KindInferenceLet1627908842X_1627908843Sym3*Let1627908842X_1627908843Sym3KindInferenceLet1627908842X_1627908843Sym4*Let1627908842X_1627908843Sym4KindInferenceLet1627908842X_1627908843Sym5*Let1627908842X_1627908843Sym5KindInferenceLet1627908842X_1627908843Sym6Let1627908842ZsSym0 Let1627908842ZsSym0KindInferenceLet1627908842ZsSym1 Let1627908842ZsSym1KindInferenceLet1627908842ZsSym2 Let1627908842ZsSym2KindInferenceLet1627908842ZsSym3 Let1627908842ZsSym3KindInferenceLet1627908842ZsSym4 Let1627908842ZsSym4KindInferenceLet1627908842ZsSym5 Let1627908842ZsSym5KindInferenceLet1627908842ZsSym6Let1627908628X_1627908629Let1627908628ZsLet1627908628UsLet1627908628X_1627908629Sym0*Let1627908628X_1627908629Sym0KindInferenceLet1627908628X_1627908629Sym1*Let1627908628X_1627908629Sym1KindInferenceLet1627908628X_1627908629Sym2*Let1627908628X_1627908629Sym2KindInferenceLet1627908628X_1627908629Sym3*Let1627908628X_1627908629Sym3KindInferenceLet1627908628X_1627908629Sym4*Let1627908628X_1627908629Sym4KindInferenceLet1627908628X_1627908629Sym5*Let1627908628X_1627908629Sym5KindInferenceLet1627908628X_1627908629Sym6*Let1627908628X_1627908629Sym6KindInferenceLet1627908628X_1627908629Sym7*Let1627908628X_1627908629Sym7KindInferenceLet1627908628X_1627908629Sym8Let1627908628ZsSym0 Let1627908628ZsSym0KindInferenceLet1627908628ZsSym1 Let1627908628ZsSym1KindInferenceLet1627908628ZsSym2 Let1627908628ZsSym2KindInferenceLet1627908628ZsSym3 Let1627908628ZsSym3KindInferenceLet1627908628ZsSym4 Let1627908628ZsSym4KindInferenceLet1627908628ZsSym5 Let1627908628ZsSym5KindInferenceLet1627908628ZsSym6 Let1627908628ZsSym6KindInferenceLet1627908628ZsSym7 Let1627908628ZsSym7KindInferenceLet1627908628ZsSym8Let1627908628UsSym0 Let1627908628UsSym0KindInferenceLet1627908628UsSym1 Let1627908628UsSym1KindInferenceLet1627908628UsSym2 Let1627908628UsSym2KindInferenceLet1627908628UsSym3 Let1627908628UsSym3KindInferenceLet1627908628UsSym4 Let1627908628UsSym4KindInferenceLet1627908628UsSym5 Let1627908628UsSym5KindInferenceLet1627908628UsSym6 Let1627908628UsSym6KindInferenceLet1627908628UsSym7 Let1627908628UsSym7KindInferenceLet1627908628UsSym8Let1627908467LgoLet1627908467LgoSym0!Let1627908467LgoSym0KindInferenceLet1627908467LgoSym1!Let1627908467LgoSym1KindInferenceLet1627908467LgoSym2!Let1627908467LgoSym2KindInferenceLet1627908467LgoSym3!Let1627908467LgoSym3KindInferenceLet1627908467LgoSym4!Let1627908467LgoSym4KindInferenceLet1627908467LgoSym5Let1627908499Z'Let1627908499Z'Sym0 Let1627908499Z'Sym0KindInferenceLet1627908499Z'Sym1 Let1627908499Z'Sym1KindInferenceLet1627908499Z'Sym2 Let1627908499Z'Sym2KindInferenceLet1627908499Z'Sym3 Let1627908499Z'Sym3KindInferenceLet1627908499Z'Sym4 Let1627908499Z'Sym4KindInferenceLet1627908499Z'Sym5 Let1627908499Z'Sym5KindInferenceLet1627908499Z'Sym6Let1627908441XsLet1627908441XsSym0 Let1627908441XsSym0KindInferenceLet1627908441XsSym1 Let1627908441XsSym1KindInferenceLet1627908441XsSym2Let1627908427XsLet1627908427XsSym0 Let1627908427XsSym0KindInferenceLet1627908427XsSym1 Let1627908427XsSym1KindInferenceLet1627908427XsSym2Let1627908362MinByLet1627908362MinBySym0#Let1627908362MinBySym0KindInferenceLet1627908362MinBySym1#Let1627908362MinBySym1KindInferenceLet1627908362MinBySym2#Let1627908362MinBySym2KindInferenceLet1627908362MinBySym3#Let1627908362MinBySym3KindInferenceLet1627908362MinBySym4#Let1627908362MinBySym4KindInferenceLet1627908362MinBySym5!Let1627908392Scrutinee_1627905734%Let1627908392Scrutinee_1627905734Sym02Let1627908392Scrutinee_1627905734Sym0KindInference%Let1627908392Scrutinee_1627905734Sym12Let1627908392Scrutinee_1627905734Sym1KindInference%Let1627908392Scrutinee_1627905734Sym22Let1627908392Scrutinee_1627905734Sym2KindInference%Let1627908392Scrutinee_1627905734Sym32Let1627908392Scrutinee_1627905734Sym3KindInference%Let1627908392Scrutinee_1627905734Sym42Let1627908392Scrutinee_1627905734Sym4KindInference%Let1627908392Scrutinee_1627905734Sym5Let1627908349XsLet1627908349XsSym0 Let1627908349XsSym0KindInferenceLet1627908349XsSym1 Let1627908349XsSym1KindInferenceLet1627908349XsSym2 Let1627908349XsSym2KindInferenceLet1627908349XsSym3Let1627908275MaxByLet1627908275MaxBySym0#Let1627908275MaxBySym0KindInferenceLet1627908275MaxBySym1#Let1627908275MaxBySym1KindInferenceLet1627908275MaxBySym2#Let1627908275MaxBySym2KindInferenceLet1627908275MaxBySym3#Let1627908275MaxBySym3KindInferenceLet1627908275MaxBySym4#Let1627908275MaxBySym4KindInferenceLet1627908275MaxBySym5!Let1627908305Scrutinee_1627905728%Let1627908305Scrutinee_1627905728Sym02Let1627908305Scrutinee_1627905728Sym0KindInference%Let1627908305Scrutinee_1627905728Sym12Let1627908305Scrutinee_1627905728Sym1KindInference%Let1627908305Scrutinee_1627905728Sym22Let1627908305Scrutinee_1627905728Sym2KindInference%Let1627908305Scrutinee_1627905728Sym32Let1627908305Scrutinee_1627905728Sym3KindInference%Let1627908305Scrutinee_1627905728Sym42Let1627908305Scrutinee_1627905728Sym4KindInference%Let1627908305Scrutinee_1627905728Sym5Let1627908262XsLet1627908262XsSym0 Let1627908262XsSym0KindInferenceLet1627908262XsSym1 Let1627908262XsSym1KindInferenceLet1627908262XsSym2 Let1627908262XsSym2KindInferenceLet1627908262XsSym3Let1627908210XsLet1627908210XsSym0 Let1627908210XsSym0KindInferenceLet1627908210XsSym1 Let1627908210XsSym1KindInferenceLet1627908210XsSym2 Let1627908210XsSym2KindInferenceLet1627908210XsSym3 Let1627908210XsSym3KindInferenceLet1627908210XsSym4!Let1627908084Scrutinee_1627905690%Let1627908084Scrutinee_1627905690Sym02Let1627908084Scrutinee_1627905690Sym0KindInference%Let1627908084Scrutinee_1627905690Sym12Let1627908084Scrutinee_1627905690Sym1KindInference%Let1627908084Scrutinee_1627905690Sym22Let1627908084Scrutinee_1627905690Sym2KindInference%Let1627908084Scrutinee_1627905690Sym32Let1627908084Scrutinee_1627905690Sym3KindInference%Let1627908084Scrutinee_1627905690Sym4!Let1627908037Scrutinee_1627905692%Let1627908037Scrutinee_1627905692Sym02Let1627908037Scrutinee_1627905692Sym0KindInference%Let1627908037Scrutinee_1627905692Sym12Let1627908037Scrutinee_1627905692Sym1KindInference%Let1627908037Scrutinee_1627905692Sym22Let1627908037Scrutinee_1627905692Sym2KindInference%Let1627908037Scrutinee_1627905692Sym32Let1627908037Scrutinee_1627905692Sym3KindInference%Let1627908037Scrutinee_1627905692Sym4Let1627908018XsLet1627908018XsSym0 Let1627908018XsSym0KindInferenceLet1627908018XsSym1 Let1627908018XsSym1KindInferenceLet1627908018XsSym2 Let1627908018XsSym2KindInferenceLet1627908018XsSym3 Let1627908018XsSym3KindInferenceLet1627908018XsSym4Let1627907849X_1627907856Let1627907849X_1627907850Let1627907849YsLet1627907849S''Let1627907849YLet1627907849S'Let1627907849X_1627907856Sym0*Let1627907849X_1627907856Sym0KindInferenceLet1627907849X_1627907856Sym1*Let1627907849X_1627907856Sym1KindInferenceLet1627907849X_1627907856Sym2*Let1627907849X_1627907856Sym2KindInferenceLet1627907849X_1627907856Sym3*Let1627907849X_1627907856Sym3KindInferenceLet1627907849X_1627907856Sym4Let1627907849X_1627907850Sym0*Let1627907849X_1627907850Sym0KindInferenceLet1627907849X_1627907850Sym1*Let1627907849X_1627907850Sym1KindInferenceLet1627907849X_1627907850Sym2*Let1627907849X_1627907850Sym2KindInferenceLet1627907849X_1627907850Sym3*Let1627907849X_1627907850Sym3KindInferenceLet1627907849X_1627907850Sym4Let1627907849YsSym0 Let1627907849YsSym0KindInferenceLet1627907849YsSym1 Let1627907849YsSym1KindInferenceLet1627907849YsSym2 Let1627907849YsSym2KindInferenceLet1627907849YsSym3 Let1627907849YsSym3KindInferenceLet1627907849YsSym4Let1627907849S''Sym0!Let1627907849S''Sym0KindInferenceLet1627907849S''Sym1!Let1627907849S''Sym1KindInferenceLet1627907849S''Sym2!Let1627907849S''Sym2KindInferenceLet1627907849S''Sym3!Let1627907849S''Sym3KindInferenceLet1627907849S''Sym4Let1627907849YSym0Let1627907849YSym0KindInferenceLet1627907849YSym1Let1627907849YSym1KindInferenceLet1627907849YSym2Let1627907849YSym2KindInferenceLet1627907849YSym3Let1627907849YSym3KindInferenceLet1627907849YSym4Let1627907849S'Sym0 Let1627907849S'Sym0KindInferenceLet1627907849S'Sym1 Let1627907849S'Sym1KindInferenceLet1627907849S'Sym2 Let1627907849S'Sym2KindInferenceLet1627907849S'Sym3 Let1627907849S'Sym3KindInferenceLet1627907849S'Sym4Let1627907677X_1627907684Let1627907677X_1627907678Let1627907677YLet1627907677S''Let1627907677YsLet1627907677S'Let1627907677X_1627907684Sym0*Let1627907677X_1627907684Sym0KindInferenceLet1627907677X_1627907684Sym1*Let1627907677X_1627907684Sym1KindInferenceLet1627907677X_1627907684Sym2*Let1627907677X_1627907684Sym2KindInferenceLet1627907677X_1627907684Sym3*Let1627907677X_1627907684Sym3KindInferenceLet1627907677X_1627907684Sym4Let1627907677X_1627907678Sym0*Let1627907677X_1627907678Sym0KindInferenceLet1627907677X_1627907678Sym1*Let1627907677X_1627907678Sym1KindInferenceLet1627907677X_1627907678Sym2*Let1627907677X_1627907678Sym2KindInferenceLet1627907677X_1627907678Sym3*Let1627907677X_1627907678Sym3KindInferenceLet1627907677X_1627907678Sym4Let1627907677YSym0Let1627907677YSym0KindInferenceLet1627907677YSym1Let1627907677YSym1KindInferenceLet1627907677YSym2Let1627907677YSym2KindInferenceLet1627907677YSym3Let1627907677YSym3KindInferenceLet1627907677YSym4Let1627907677S''Sym0!Let1627907677S''Sym0KindInferenceLet1627907677S''Sym1!Let1627907677S''Sym1KindInferenceLet1627907677S''Sym2!Let1627907677S''Sym2KindInferenceLet1627907677S''Sym3!Let1627907677S''Sym3KindInferenceLet1627907677S''Sym4Let1627907677YsSym0 Let1627907677YsSym0KindInferenceLet1627907677YsSym1 Let1627907677YsSym1KindInferenceLet1627907677YsSym2 Let1627907677YsSym2KindInferenceLet1627907677YsSym3 Let1627907677YsSym3KindInferenceLet1627907677YsSym4Let1627907677S'Sym0 Let1627907677S'Sym0KindInferenceLet1627907677S'Sym1 Let1627907677S'Sym1KindInferenceLet1627907677S'Sym2 Let1627907677S'Sym2KindInferenceLet1627907677S'Sym3 Let1627907677S'Sym3KindInferenceLet1627907677S'Sym4!Let1627907641Scrutinee_1627905698%Let1627907641Scrutinee_1627905698Sym02Let1627907641Scrutinee_1627905698Sym0KindInference%Let1627907641Scrutinee_1627905698Sym12Let1627907641Scrutinee_1627905698Sym1KindInference%Let1627907641Scrutinee_1627905698Sym2Let1627907529Nub'Let1627907529Nub'Sym0"Let1627907529Nub'Sym0KindInferenceLet1627907529Nub'Sym1"Let1627907529Nub'Sym1KindInferenceLet1627907529Nub'Sym2"Let1627907529Nub'Sym2KindInferenceLet1627907529Nub'Sym3!Let1627907550Scrutinee_1627905782%Let1627907550Scrutinee_1627905782Sym02Let1627907550Scrutinee_1627905782Sym0KindInference%Let1627907550Scrutinee_1627905782Sym12Let1627907550Scrutinee_1627905782Sym1KindInference%Let1627907550Scrutinee_1627905782Sym22Let1627907550Scrutinee_1627905782Sym2KindInference%Let1627907550Scrutinee_1627905782Sym32Let1627907550Scrutinee_1627905782Sym3KindInference%Let1627907550Scrutinee_1627905782Sym4Lambda_1627907432Sym0"Lambda_1627907432Sym0KindInferenceLambda_1627907432Sym1"Lambda_1627907432Sym1KindInferenceLambda_1627907432Sym2"Lambda_1627907432Sym2KindInferenceLambda_1627907432Sym3Let1627907403BuildListLet1627907403BuildListSym0'Let1627907403BuildListSym0KindInferenceLet1627907403BuildListSym1'Let1627907403BuildListSym1KindInferenceLet1627907403BuildListSym2'Let1627907403BuildListSym2KindInferenceLet1627907403BuildListSym3'Let1627907403BuildListSym3KindInferenceLet1627907403BuildListSym4Lambda_1627907122Sym0"Lambda_1627907122Sym0KindInferenceLambda_1627907122Sym1"Lambda_1627907122Sym1KindInferenceLambda_1627907122Sym2"Lambda_1627907122Sym2KindInferenceLambda_1627907122Sym3Lambda_1627907090Sym0"Lambda_1627907090Sym0KindInferenceLambda_1627907090Sym1"Lambda_1627907090Sym1KindInferenceLambda_1627907090Sym2"Lambda_1627907090Sym2KindInferenceLambda_1627907090Sym3Lambda_1627907056Sym0"Lambda_1627907056Sym0KindInferenceLambda_1627907056Sym1"Lambda_1627907056Sym1KindInferenceLambda_1627907056Sym2"Lambda_1627907056Sym2KindInferenceLambda_1627907056Sym3Lambda_1627907020Sym0"Lambda_1627907020Sym0KindInferenceLambda_1627907020Sym1"Lambda_1627907020Sym1KindInferenceLambda_1627907020Sym2"Lambda_1627907020Sym2KindInferenceLambda_1627907020Sym3Lambda_1627906982Sym0"Lambda_1627906982Sym0KindInferenceLambda_1627906982Sym1"Lambda_1627906982Sym1KindInferenceLambda_1627906982Sym2"Lambda_1627906982Sym2KindInferenceLambda_1627906982Sym3Lambda_1627906942Sym0"Lambda_1627906942Sym0KindInferenceLambda_1627906942Sym1"Lambda_1627906942Sym1KindInferenceLambda_1627906942Sym2"Lambda_1627906942Sym2KindInferenceLambda_1627906942Sym3!Let1627906830Scrutinee_1627905724%Let1627906830Scrutinee_1627905724Sym02Let1627906830Scrutinee_1627905724Sym0KindInference%Let1627906830Scrutinee_1627905724Sym12Let1627906830Scrutinee_1627905724Sym1KindInference%Let1627906830Scrutinee_1627905724Sym22Let1627906830Scrutinee_1627905724Sym2KindInference%Let1627906830Scrutinee_1627905724Sym32Let1627906830Scrutinee_1627905724Sym3KindInference%Let1627906830Scrutinee_1627905724Sym4!Let1627906752Scrutinee_1627905726%Let1627906752Scrutinee_1627905726Sym02Let1627906752Scrutinee_1627905726Sym0KindInference%Let1627906752Scrutinee_1627905726Sym12Let1627906752Scrutinee_1627905726Sym1KindInference%Let1627906752Scrutinee_1627905726Sym22Let1627906752Scrutinee_1627905726Sym2KindInference%Let1627906752Scrutinee_1627905726Sym32Let1627906752Scrutinee_1627905726Sym3KindInference%Let1627906752Scrutinee_1627905726Sym4Let1627906733YsLet1627906733YsSym0 Let1627906733YsSym0KindInferenceLet1627906733YsSym1 Let1627906733YsSym1KindInferenceLet1627906733YsSym2 Let1627906733YsSym2KindInferenceLet1627906733YsSym3 Let1627906733YsSym3KindInferenceLet1627906733YsSym4Lambda_1627906658Sym0"Lambda_1627906658Sym0KindInferenceLambda_1627906658Sym1"Lambda_1627906658Sym1KindInferenceLambda_1627906658Sym2"Lambda_1627906658Sym2KindInferenceLambda_1627906658Sym3"Lambda_1627906658Sym3KindInferenceLambda_1627906658Sym4"Lambda_1627906658Sym4KindInferenceLambda_1627906658Sym5"Lambda_1627906658Sym5KindInferenceLambda_1627906658Sym6Let1627906607YsLet1627906607XsLet1627906607YsSym0 Let1627906607YsSym0KindInferenceLet1627906607YsSym1 Let1627906607YsSym1KindInferenceLet1627906607YsSym2 Let1627906607YsSym2KindInferenceLet1627906607YsSym3 Let1627906607YsSym3KindInferenceLet1627906607YsSym4 Let1627906607YsSym4KindInferenceLet1627906607YsSym5Let1627906607XsSym0 Let1627906607XsSym0KindInferenceLet1627906607XsSym1 Let1627906607XsSym1KindInferenceLet1627906607XsSym2 Let1627906607XsSym2KindInferenceLet1627906607XsSym3 Let1627906607XsSym3KindInferenceLet1627906607XsSym4 Let1627906607XsSym4KindInferenceLet1627906607XsSym5!Let1627906537Scrutinee_1627905740%Let1627906537Scrutinee_1627905740Sym02Let1627906537Scrutinee_1627905740Sym0KindInference%Let1627906537Scrutinee_1627905740Sym12Let1627906537Scrutinee_1627905740Sym1KindInference%Let1627906537Scrutinee_1627905740Sym22Let1627906537Scrutinee_1627905740Sym2KindInference%Let1627906537Scrutinee_1627905740Sym3!Let1627906508Scrutinee_1627905752%Let1627906508Scrutinee_1627905752Sym02Let1627906508Scrutinee_1627905752Sym0KindInference%Let1627906508Scrutinee_1627905752Sym12Let1627906508Scrutinee_1627905752Sym1KindInference%Let1627906508Scrutinee_1627905752Sym22Let1627906508Scrutinee_1627905752Sym2KindInference%Let1627906508Scrutinee_1627905752Sym3!Let1627906477Scrutinee_1627905754%Let1627906477Scrutinee_1627905754Sym02Let1627906477Scrutinee_1627905754Sym0KindInference%Let1627906477Scrutinee_1627905754Sym12Let1627906477Scrutinee_1627905754Sym1KindInference%Let1627906477Scrutinee_1627905754Sym22Let1627906477Scrutinee_1627905754Sym2KindInference%Let1627906477Scrutinee_1627905754Sym3Let1627906464XsLet1627906464XsSym0 Let1627906464XsSym0KindInferenceLet1627906464XsSym1 Let1627906464XsSym1KindInferenceLet1627906464XsSym2 Let1627906464XsSym2KindInferenceLet1627906464XsSym3Let1627906387X_1627906388Let1627906387ZsLet1627906387YsLet1627906387X_1627906388Sym0*Let1627906387X_1627906388Sym0KindInferenceLet1627906387X_1627906388Sym1*Let1627906387X_1627906388Sym1KindInferenceLet1627906387X_1627906388Sym2*Let1627906387X_1627906388Sym2KindInferenceLet1627906387X_1627906388Sym3Let1627906387ZsSym0 Let1627906387ZsSym0KindInferenceLet1627906387ZsSym1 Let1627906387ZsSym1KindInferenceLet1627906387ZsSym2 Let1627906387ZsSym2KindInferenceLet1627906387ZsSym3Let1627906387YsSym0 Let1627906387YsSym0KindInferenceLet1627906387YsSym1 Let1627906387YsSym1KindInferenceLet1627906387YsSym2 Let1627906387YsSym2KindInferenceLet1627906387YsSym3Let1627906314X_1627906315Let1627906314ZsLet1627906314YsLet1627906314X_1627906315Sym0*Let1627906314X_1627906315Sym0KindInferenceLet1627906314X_1627906315Sym1*Let1627906314X_1627906315Sym1KindInferenceLet1627906314X_1627906315Sym2*Let1627906314X_1627906315Sym2KindInferenceLet1627906314X_1627906315Sym3Let1627906314ZsSym0 Let1627906314ZsSym0KindInferenceLet1627906314ZsSym1 Let1627906314ZsSym1KindInferenceLet1627906314ZsSym2 Let1627906314ZsSym2KindInferenceLet1627906314ZsSym3Let1627906314YsSym0 Let1627906314YsSym0KindInferenceLet1627906314YsSym1 Let1627906314YsSym1KindInferenceLet1627906314YsSym2 Let1627906314YsSym2KindInferenceLet1627906314YsSym3!Let1627906299Scrutinee_1627905758%Let1627906299Scrutinee_1627905758Sym02Let1627906299Scrutinee_1627905758Sym0KindInference%Let1627906299Scrutinee_1627905758Sym12Let1627906299Scrutinee_1627905758Sym1KindInference%Let1627906299Scrutinee_1627905758Sym22Let1627906299Scrutinee_1627905758Sym2KindInference%Let1627906299Scrutinee_1627905758Sym3Let1627906286XsLet1627906286XsSym0 Let1627906286XsSym0KindInferenceLet1627906286XsSym1 Let1627906286XsSym1KindInferenceLet1627906286XsSym2 Let1627906286XsSym2KindInferenceLet1627906286XsSym3Let1627906279XsLet1627906279XsSym0 Let1627906279XsSym0KindInferenceLet1627906279XsSym1Let1627906209X_1627906210Let1627906209ZsLet1627906209YsLet1627906209X_1627906210Sym0*Let1627906209X_1627906210Sym0KindInferenceLet1627906209X_1627906210Sym1*Let1627906209X_1627906210Sym1KindInferenceLet1627906209X_1627906210Sym2*Let1627906209X_1627906210Sym2KindInferenceLet1627906209X_1627906210Sym3Let1627906209ZsSym0 Let1627906209ZsSym0KindInferenceLet1627906209ZsSym1 Let1627906209ZsSym1KindInferenceLet1627906209ZsSym2 Let1627906209ZsSym2KindInferenceLet1627906209ZsSym3Let1627906209YsSym0 Let1627906209YsSym0KindInferenceLet1627906209YsSym1 Let1627906209YsSym1KindInferenceLet1627906209YsSym2 Let1627906209YsSym2KindInferenceLet1627906209YsSym3!Let1627906194Scrutinee_1627905760%Let1627906194Scrutinee_1627905760Sym02Let1627906194Scrutinee_1627905760Sym0KindInference%Let1627906194Scrutinee_1627905760Sym12Let1627906194Scrutinee_1627905760Sym1KindInference%Let1627906194Scrutinee_1627905760Sym22Let1627906194Scrutinee_1627905760Sym2KindInference%Let1627906194Scrutinee_1627905760Sym3Let1627906181XsLet1627906181XsSym0 Let1627906181XsSym0KindInferenceLet1627906181XsSym1 Let1627906181XsSym1KindInferenceLet1627906181XsSym2 Let1627906181XsSym2KindInferenceLet1627906181XsSym3Let1627906174XsLet1627906174XsSym0 Let1627906174XsSym0KindInferenceLet1627906174XsSym1!Let1627906135Scrutinee_1627905762%Let1627906135Scrutinee_1627905762Sym02Let1627906135Scrutinee_1627905762Sym0KindInference%Let1627906135Scrutinee_1627905762Sym12Let1627906135Scrutinee_1627905762Sym1KindInference%Let1627906135Scrutinee_1627905762Sym22Let1627906135Scrutinee_1627905762Sym2KindInference%Let1627906135Scrutinee_1627905762Sym3!Let1627906104Scrutinee_1627905764%Let1627906104Scrutinee_1627905764Sym02Let1627906104Scrutinee_1627905764Sym0KindInference%Let1627906104Scrutinee_1627905764Sym12Let1627906104Scrutinee_1627905764Sym1KindInference%Let1627906104Scrutinee_1627905764Sym22Let1627906104Scrutinee_1627905764Sym2KindInference%Let1627906104Scrutinee_1627905764Sym3!Let1627906067Scrutinee_1627905774%Let1627906067Scrutinee_1627905774Sym02Let1627906067Scrutinee_1627905774Sym0KindInference%Let1627906067Scrutinee_1627905774Sym12Let1627906067Scrutinee_1627905774Sym1KindInference%Let1627906067Scrutinee_1627905774Sym22Let1627906067Scrutinee_1627905774Sym2KindInference%Let1627906067Scrutinee_1627905774Sym32Let1627906067Scrutinee_1627905774Sym3KindInference%Let1627906067Scrutinee_1627905774Sym4!Let1627906020Scrutinee_1627905776%Let1627906020Scrutinee_1627905776Sym02Let1627906020Scrutinee_1627905776Sym0KindInference%Let1627906020Scrutinee_1627905776Sym12Let1627906020Scrutinee_1627905776Sym1KindInference%Let1627906020Scrutinee_1627905776Sym22Let1627906020Scrutinee_1627905776Sym2KindInference%Let1627906020Scrutinee_1627905776Sym32Let1627906020Scrutinee_1627905776Sym3KindInference%Let1627906020Scrutinee_1627905776Sym4Let1627905982Sum'Let1627905982Sum'Sym0"Let1627905982Sum'Sym0KindInferenceLet1627905982Sum'Sym1"Let1627905982Sum'Sym1KindInferenceLet1627905982Sum'Sym2"Let1627905982Sum'Sym2KindInferenceLet1627905982Sum'Sym3Let1627905958ProdLet1627905958ProdSym0"Let1627905958ProdSym0KindInferenceLet1627905958ProdSym1"Let1627905958ProdSym1KindInferenceLet1627905958ProdSym2"Let1627905958ProdSym2KindInferenceLet1627905958ProdSym3!Let1627905934Scrutinee_1627905778%Let1627905934Scrutinee_1627905778Sym02Let1627905934Scrutinee_1627905778Sym0KindInference%Let1627905934Scrutinee_1627905778Sym12Let1627905934Scrutinee_1627905778Sym1KindInference%Let1627905934Scrutinee_1627905778Sym2!Let1627905907Scrutinee_1627905780%Let1627905907Scrutinee_1627905780Sym02Let1627905907Scrutinee_1627905780Sym0KindInference%Let1627905907Scrutinee_1627905780Sym12Let1627905907Scrutinee_1627905780Sym1KindInference%Let1627905907Scrutinee_1627905780Sym22Let1627905907Scrutinee_1627905780Sym2KindInference%Let1627905907Scrutinee_1627905780Sym3Let1627905836NubBy'Let1627905836NubBy'Sym0$Let1627905836NubBy'Sym0KindInferenceLet1627905836NubBy'Sym1$Let1627905836NubBy'Sym1KindInferenceLet1627905836NubBy'Sym2$Let1627905836NubBy'Sym2KindInferenceLet1627905836NubBy'Sym3$Let1627905836NubBy'Sym3KindInferenceLet1627905836NubBy'Sym4!Let1627905863Scrutinee_1627905784%Let1627905863Scrutinee_1627905784Sym02Let1627905863Scrutinee_1627905784Sym0KindInference%Let1627905863Scrutinee_1627905784Sym12Let1627905863Scrutinee_1627905784Sym1KindInference%Let1627905863Scrutinee_1627905784Sym22Let1627905863Scrutinee_1627905784Sym2KindInference%Let1627905863Scrutinee_1627905784Sym32Let1627905863Scrutinee_1627905784Sym3KindInference%Let1627905863Scrutinee_1627905784Sym42Let1627905863Scrutinee_1627905784Sym4KindInference%Let1627905863Scrutinee_1627905784Sym5sElem_bysSelect sPrependToAllsNonEmptySubsequencesTFCo:R:Apply[][]TransposeSym0l0Case_1628195743Case_1628195749Case_1628195751StripPrefixSym0KindInferenceStripPrefixSym1KindInferenceZip4Sym0KindInferenceZip4Sym1KindInferenceZip4Sym2KindInferenceZip4Sym3KindInferenceZip5Sym0KindInferenceZip5Sym1KindInferenceZip5Sym2KindInferenceZip5Sym3KindInferenceZip5Sym4KindInferenceZip6Sym0KindInferenceZip6Sym1KindInferenceZip6Sym2KindInferenceZip6Sym3KindInferenceZip6Sym4KindInferenceZip6Sym5KindInferenceZip7Sym0KindInferenceZip7Sym1KindInferenceZip7Sym2KindInferenceZip7Sym3KindInferenceZip7Sym4KindInferenceZip7Sym5KindInferenceZip7Sym6KindInferenceZipWith4Sym0KindInferenceZipWith4Sym1KindInferenceZipWith4Sym2KindInferenceZipWith4Sym3KindInferenceZipWith4Sym4KindInferenceZipWith5Sym0KindInferenceZipWith5Sym1KindInferenceZipWith5Sym2KindInferenceZipWith5Sym3KindInferenceZipWith5Sym4KindInferenceZipWith5Sym5KindInferenceZipWith6Sym0KindInferenceZipWith6Sym1KindInferenceZipWith6Sym2KindInferenceZipWith6Sym3KindInferenceZipWith6Sym4KindInferenceZipWith6Sym5KindInferenceZipWith6Sym6KindInferenceZipWith7Sym0KindInferenceZipWith7Sym1KindInferenceZipWith7Sym2KindInferenceZipWith7Sym3KindInferenceZipWith7Sym4KindInferenceZipWith7Sym5KindInferenceZipWith7Sym6KindInferenceZipWith7Sym7KindInferenceGenericTakeSym0KindInferenceGenericTakeSym1KindInferenceGenericDropSym0KindInferenceGenericDropSym1KindInferenceGenericSplitAtSym0KindInferenceGenericSplitAtSym1KindInferenceGenericIndexSym0KindInferenceGenericIndexSym1KindInference!GenericReplicateSym0KindInference!GenericReplicateSym1KindInference#TFCo:R:Apply(->)[]StripPrefixSym0l0