!C_9H      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGSafe -.HUVXkhaskus-utils-typesType equality to NatHhaskus-utils-typesHelper for Modulohaskus-utils-typesModulohaskus-utils-typesLike: If cond t (TypeError msg)The difference is that the TypeError doesn't appear in the RHS of the type which leads to better error messages (see GHC #14771).XFor instance: type family F n where F n = If (n <=? 8) Int8 (TypeError (Text ERROR))?type family G n where G n = Assert (n <=? 8) Int8 (Text ERROR)uIf GHC cannot solve `F n ~ Word`, it shows: ERROR If GHC cannot solve `G n ~ Word`, it shows: can't match  with Ihaskus-utils-types If-then-elsehaskus-utils-typesGet a Nat valuehaskus-utils-typesGet a Nat valuehaskus-utils-typesGet a Symbol value     None ,-.>HUVX1-haskus-utils-types3Check that a list only contain a value of each typehaskus-utils-types(Constraint: all the xs are members of yshaskus-utils-typesConstraint: x member of xshaskus-utils-typesProduct of two listshaskus-utils-typesComplement xs ys haskus-utils-typesUnion two lists!haskus-utils-typesIndexed access into the listJhaskus-utils-typesHelper for MaybeIndexOf"haskus-utils-types<Get the first index (starting from 1) of a type or 0 if noneKhaskus-utils-typesGet the first index of a type#haskus-utils-typesGet all the indexes of a typeLhaskus-utils-typesGet the first index of a type$haskus-utils-typesGet the first index of a type%haskus-utils-types)Keep only a single value of the head type&haskus-utils-types%Keep only a single value of each type'haskus-utils-typesRemove a in l(haskus-utils-types Zip two lists)haskus-utils-types&Map to 1 if type equality, 0 otherwise*haskus-utils-typesGet list indexesMhaskus-utils-typesHelper for CheckMembers+haskus-utils-types(Check that a list is a subset of anotherNhaskus-utils-typesHelper for CheckMember,haskus-utils-types*Check that a type is member of a type list-haskus-utils-typesGenerate a list of Nat [n..m-1].haskus-utils-typesRemove types at several indexes/haskus-utils-types*Remove a type at index (0 == don't remove)0haskus-utils-typesRemove a type at index1haskus-utils-typesReverse a list2haskus-utils-types replace types at offsets ns in l3haskus-utils-typesreplace a type at offset n in l4haskus-utils-typesreplace a type by another in l5haskus-utils-typesreplace l[n] with l2 (folded)6haskus-utils-typesInsert a list at n7haskus-utils-types Replicate8haskus-utils-typesGet list length9haskus-utils-typesConcat two type lists:haskus-utils-typesHead of a list;haskus-utils-typesSnoc<haskus-utils-typesInit of a list=haskus-utils-typesTake elements in a list>haskus-utils-typesDrop elements in a list?haskus-utils-typesTail of a listOhaskus-utils-typesHelper for Max@haskus-utils-typesGet the max of a list of NatsAhaskus-utils-typesMap a type function' !"#$%&'()*+,-./0123456789:;<=>?@A';97(0/.'&%:?<=>65432,+ $#"!1-A@8*)None.HUV7Bhaskus-utils-typesaExtract types of the fields of a data type - only support data type with a single constructorChaskus-utils-typestExtract fields of a data type: - require selector symbols - only support data type with a single constructorGhaskus-utils-types Named fieldiPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~BCDEFGGFDECB           !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQR STUVWXYZ[Z\Z]Z^Z_Z`ZaZbZcZdZeZfZgZhZiZjZkZlZmZnZoZpZqZrZrZsZsZtZuZuZvZwZwZxZyZyZzZ{Z|Z}Z~Z~ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ-haskus-utils-types-1.3-6pjIZTt2BA1DcLCgWHBS0nHaskus.Utils.TypesHaskus.Utils.Types.ListHaskus.Utils.Types.GenericsAssert..base GHC.TypeNatsKnownNat GHC.TypeLits KnownSymbolghc-prim GHC.TypesNatSymbol+*^<=?- CmpSymbolCmpNat TypeErrorText:<>::$$:ShowType ErrorMessage<= Data.ProxyProxySameModuloIfnatValue natValue' symbolValueCheckNubMembersMemberProduct ComplementUnionIndex MaybeIndexOf IndexesOfIndexOfNubHeadNubRemoveZipMapTestIndexes CheckMembers CheckMemberGenerate RemoveAtN RemoveAt1RemoveAtReverse ReplaceNSReplaceNReplace ReplaceAtInsertAt ReplicateLengthConcatHeadSnocInitTakeDropTailMaxMapExtractFieldTypes ExtractFields LookupFieldLookupFieldType FieldTypeFieldModulo'Word MaybeIndexOf' IndexesOf'IndexOf' CheckMembers' CheckMember'Max' GHC.GenericsGenericRepfromtoGeneric1Rep1from1to1Datatype datatypeName moduleName packageName isNewtype ConstructorconName conFixity conIsRecordSelectorselNameselSourceUnpackednessselSourceStrictnessselDecidedStrictnessV1U1Par1unPar1Rec1unRec1K1unK1M1unM1:+:L1R1:*::.:Comp1unComp1RDCSRec0D1C1S1URecUAddrUCharUDoubleUFloatUIntUWorduWord#uInt#uFloat#uDouble#uChar#uAddr#precFixityPrefixInfixFixityIPrefixIInfixI AssociativityLeftAssociativeRightAssociativeNotAssociativeSourceUnpackedness SourceUnpackSourceNoUnpackNoSourceUnpackednessSourceStrictness SourceLazy SourceStrictNoSourceStrictnessDecidedStrictness DecidedLazy DecidedStrict DecidedUnpackMetaMetaDataMetaConsMetaSel