%      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdef g h i j k l m n o p q r s t u v w x y z { | } ~                         !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~Safe0Return the proxy for the type of the given value2Run a State monad with an empty map as environment3Exec a State monad with an empty map as environmentSafe57 The Unit typeSafe57  !"#     !"#None23457D)A list that contains at least one elementGConvert a list to a D', returns an error if the list is emptyDEFGHDEFGDEFGDEFGHNone23457RA listRSTURSTRSTRSTUNone57_7A Map is represented as a list of key and value couples_`___`SafeFA binary tree with integer leaves, used to represent constructor treesbTConstructor Tree for: data Array a = A0 | A1 a (Array a) .. | A255 a .. a (Array a)c5Constructor Tree for: data Word8 = V0 | V1 .. | V255d5Constructor Tree for: data Word7 = V0 | V1 .. | V127Generate a right heavier binary tree whose leaves are marked with the position (starting with 0) of the corresponding constructor in the list of constructors bcdbcdbcdbcd None57mZigZag encoding, map signed integers to unsigned integers Positive integers are mapped to even unsigned values, negative integers to odd values: 0 -> 0, -1 -> 1, 1 -> 2, -2 -> 3, 2 -> 4 ...y:An 8 bits unsigned integer data Word8 = V0 | V1 .. | V255{2A 7 bits unsigned integer data Word7 = V0 .. V127An unsigned integer of arbitrary length encoded as a non empty list of Word7 words with least significant word first and, inside each word, most significant bit first.Example: 3450 :: Word'Binary representation: 0000110101111010/Split in 7bits groups: 0011010(26) 1111010(122)4Reverse order of groups: Word (Cons V122 (Elem V26))VSo Least Significant Byte first with Most Significant Bit first in every 7 bits group.$fghijklmnopqrstuvwxyz{|}~fghijklmnopqrstuvwxyz{|}~fgh{|yz}~wxuvstqropmnijklfghijklmnopqrstuvwxyz{|}~ None57A Unicode Char None57A Bit None57  None57                    None576 !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJK6 !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJK6 !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJK5 !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKNone57R$An IEEE-754 Big Endian 64 bits FloatRSTUVRSUTVRSTUVRSTUVNone57 \]^_`abcde \]^_`abcde \]^_`abcde\ ]^_`abcdeNone57l$An IEEE-754 Big Endian 32 bits FloatlmnoplmonplmnoplmnopNone57vA byte-aligned byte arrayw An Array. qArray a = A0 | A1 a (Array a) | A2 a a (Array a) ... | A255 a ... (Array a) vwxyzvwwvvwxyzNone57}Unspecified encoding Flat encodingUTF-16 Little Endian EncodingUTF-8 EncodingLA BLOB is binary value encoded according to a specified encoding (e.g. UTF8) }~ }~ }~}~None 234579;T##None ,SVReturn the specified number of bytes of the SHAKE-128 hash of the provided byte stringRReturn the specified number of bytes of the SHA-3 hash of the provided byte stringNone 234579;T9An exception thrown if the decoding of a type value failsAn optionally labeled value+A generic value (used for dynamic decoding)zA character that is included in one of the following Unicode classes: MathSymbol CurrencySymbol ModifierSymbol OtherSymbollA character that is included in one of the following Unicode classes: DecimalNumber LetterNumber OtherNumberA character that is included in one of the following Unicode classes: UppercaseLetter LowercaseLetter TitlecaseLetter ModifierLetter OtherLetterA character that is either a , a  or the special character '_'!An Identifier, the name of an ADT(A reference inside an ADT to another ADTVariable, standing for a type%Recursive reference to the ADT itselfReference to another ADT!An environments of absolute typesGAn absolute type model, an absolute type and its associated environment]An absolute data type definition, a definition that refers only to other absolute definitionsKA hash of a value, the first 48 bits (6 bytes) of the value's SHAKE128 hashAA hash of a value, the first 6 bytes of the value's SHA3-256 hashA reference to an absolute data type definition, in the form of a hash of the data type definition itself data AbsRef = AbsRef (SHA3_256_6 AbsADT) deriving (Eq, Ord, Show, NFData, Generic, Flat)SAn absolute type, a type identifier that depends only on the definition of the type0Return the absolute reference of the given value>Convert a string to corresponding Identifier or throw an errorG         !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]DEFGijklmn{}~=DEFG{}~mnklij0   None %&9:;STTQDerive an absolute type for a type, or throw an error if derivation is impossibleUWDerive an absolute type model for a type, or throw an error if derivation is impossibleV8Derive an absolute type model for a type, provided that:is an instance of Model9no data type referred directly or indirectly by the type:has higher kind variables+is mutually recursive with other data typesTUV^_TUVTUVTUV^_None257:LT W,A typed value, a value and its absolute typeY9A typed value, a Flat encoded value and its absolute type[LA BLOB is binary value encoded according to a specified encoding (e.g. UTF8)_$Extract the binary content of a BLOB`9Build a BLOB from an encoding and a ByteString-like valuea Build a TypedBLOB out of a valueb+Build a TypedBLOB out of a type and a valuec!Build a TypedValue out of a valuedKType-checked extraction of a value of a known type from a decoded TypedBLOBeLType-checked extraction of a value of a known type from a decoded TypedValuefReturn a WrongType errorWXYZ[\]^_`abcdefghWXYZ[\^]_`abcdef[\]^`_YZabdWXcef WXYZ[\]^_`abcdefghNone |LA map of fully applied types to the corresponding saturated constructor tree}VReturn the map of types to saturated constructor trees corresponding to the type model~sReturn all the ADTs referred, directly or indirectly, by the provided type, and defined in the provided environmentReturn all the ADTs referred, directly or indirectly, by the ADT identified by the provided reference, and defined in the provided environment9Return the list of references found in the ADT definition8Return the list of references found in the absolute type(Return an external reference, if presentWConvert references in an absolute definition to their textual form (useful for display)Convert a type to an equivalent concrete ADT whose variables have been substituted by the type parameters (e.g. Maybe Bool -> Maybe = Nothing | Just Bool)`6Substitute variables in a type with the provided types |}~ab` |}~ |}~ |}~ab`NoneTLA mapping between references to absolute types and the corresponding decoderNDecode a Flat encoded value with a known type model to the corresponding Value9Returns a decoder for the type defined by the given model1Returns decoders for all types in the given modelccNone79;LTIConvert the textual representation of a hash code to its equivalent value$Display a Word in hexadecimal format7Display a list of Docs, as a tuple with spaced elements*prettyTuple (map pPrint [11,22,33::Word8]) (11, 22, 33),Display a list of Docs, with spaced elements)prettyList (map pPrint [11,22,33::Word8]) [11, 22, 33]-defghijklmnopqrs-defghNone$579;7Pretty print a Value as the corresponding Haskell valuetuvwxyztuvwxyzNone2      !"#$%&'()*+{|}~ijklmn,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]opqrsDEFGijklmn{}~TUVWXYZ[\]_`abcdef|}~ !"#$%&&'()*+,,--..//00112233456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijk^lmnopqrstuvwxyz{| } ~                                                          !"#$%&'()*+,-./01234556789:;<=>>?@ABCDEE678FGHIJKLMNOPQRRSSTTUUVVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~w     VVWXY Z!"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefgv^hijklmKnopqrqstuvwxywxzwx{wx|wx}wx~wxwxwxwxwxwxwxwxwxwxwxwxwxwxwxwxwxwxwxwxwxwxwxwxwxwxwxwxwxwxwxwxwxwxwxwxwxwxwxwxwxwxwxwxwxwxwxwxwxwxwxwxwxwxwxwxwxwxwxwxwxwxwxwxwxwxwxwxwxwxwxwxwxwxwxwxwxwxwxwxwxwxwxwxwxwxwxwxwxwxwxwxwxww            ! " # $ % &' &( &) &* &+ &, -. -/ -0 -1 -2 -3 -4 -5 -5 -6 -7 -8 -8 -9 -: !; !< != !> ?@ ?A ?B CD CD CE CEFGFHFIFJFKFLMNMOMPQRSzm-0.2-BnKItBprQJYI0s3sHunoMhZM.TypesZM.Util ZM.Type.UnitZM.Type.TuplesZM.Type.NonEmptyList ZM.Type.List ZM.Type.MapZM.Type.Generate ZM.Type.Words ZM.Type.Char ZM.Type.BitZM.Type.Bits11ZM.Type.Bits23ZM.Type.Bits52ZM.Type.Float64 ZM.Type.Bits8ZM.Type.Float32 ZM.Type.Array ZM.Type.BLOBZM.ModelData.Digest.KeccakZM.AbsZM.BLOB ZM.Transform ZM.Dynamic ZM.PrettyZM.Pretty.ValueZMdeepseq-1.4.2.0Control.DeepSeqNFDataflat-0.3-2nTNbEF5Ki3F05Vx99gMLgData.Flat.ClassFlatproxyOfrunEnvexecEnvUnit$fEqUnit $fOrdUnit $fShowUnit $fGenericUnit $fModelUnitTuple9Tuple8Tuple7Tuple6Tuple5Tuple4Tuple3Tuple2 $fModelTuple9 $fModelTuple8 $fModelTuple7 $fModelTuple6 $fModelTuple5 $fModelTuple4 $fModelTuple3 $fModelTuple2 $fEqTuple2 $fOrdTuple2 $fShowTuple2$fGenericTuple2 $fEqTuple3 $fOrdTuple3 $fShowTuple3$fGenericTuple3 $fEqTuple4 $fOrdTuple4 $fShowTuple4$fGenericTuple4 $fEqTuple5 $fOrdTuple5 $fShowTuple5$fGenericTuple5 $fEqTuple6 $fOrdTuple6 $fShowTuple6$fGenericTuple6 $fEqTuple7 $fOrdTuple7 $fShowTuple7$fGenericTuple7 $fEqTuple8 $fOrdTuple8 $fShowTuple8$fGenericTuple8 $fEqTuple9 $fOrdTuple9 $fShowTuple9$fGenericTuple9 NonEmptyListElemCons nonEmptyList$fModelNonEmptyList$fEqNonEmptyList$fOrdNonEmptyList$fShowNonEmptyList$fNFDataNonEmptyList$fGenericNonEmptyList$fFunctorNonEmptyList$fFoldableNonEmptyList$fTraversableNonEmptyList$fFlatNonEmptyListListNil $fModelList$fEqList $fOrdList $fShowList $fNFDataList $fGenericList $fFunctorList$fFoldableList$fTraversableList $fFlatListMap $fModelMap $fGenericMaparrayCTword8CTword7CT $fShowConsSignPositiveNegativeMostSignificantFirstLeastSignificantFirstZigZagInt64Int32Int16Int8IntWord8Word7Word64Word32Word16Word$fModelMostSignificantFirst$fModelLeastSignificantFirst $fModelZigZag $fModelWord8 $fModelWord7 $fEqWord7 $fOrdWord7 $fShowWord7$fGenericWord7 $fEqWord8 $fOrdWord8 $fShowWord8$fGenericWord8 $fEqZigZag $fOrdZigZag $fShowZigZag$fGenericZigZag $fFlatZigZag$fEqInt8 $fOrdInt8 $fShowInt8 $fGenericInt8 $fModelInt8$fEqLeastSignificantFirst$fOrdLeastSignificantFirst$fShowLeastSignificantFirst$fGenericLeastSignificantFirst$fFlatLeastSignificantFirst$fEqMostSignificantFirst$fOrdMostSignificantFirst$fShowMostSignificantFirst$fGenericMostSignificantFirst$fFlatMostSignificantFirst$fEqWord $fOrdWord $fShowWord $fGenericWord $fModelWord$fEqInt$fOrdInt $fShowInt $fGenericInt $fModelInt $fEqWord64 $fOrdWord64 $fShowWord64$fGenericWord64 $fModelWord64 $fEqInt64 $fOrdInt64 $fShowInt64$fGenericInt64 $fModelInt64 $fEqWord32 $fOrdWord32 $fShowWord32$fGenericWord32 $fModelWord32 $fEqInt32 $fOrdInt32 $fShowInt32$fGenericInt32 $fModelInt32 $fEqWord16 $fOrdWord16 $fShowWord16$fGenericWord16 $fModelWord16 $fEqInt16 $fOrdInt16 $fShowInt16$fGenericInt16 $fModelInt16$fEqSign $fOrdSign $fShowSign $fGenericSign $fModelSign $fFlatSignChar$fEqChar $fOrdChar $fShowChar $fGenericChar $fModelCharBitV0V1$fEqBit$fOrdBit $fShowBit $fGenericBit $fFlatBit $fModelBitBits11bit0bit1bit2bit3bit4bit5bit6bit7bit8bit9bit10 $fEqBits11 $fOrdBits11 $fShowBits11$fGenericBits11 $fFlatBits11 $fModelBits11Bits23bit11bit12bit13bit14bit15bit16bit17bit18bit19bit20bit21bit22 $fEqBits23 $fOrdBits23 $fShowBits23$fGenericBits23 $fModelBits23 $fFlatBits23Bits52bit23bit24bit25bit26bit27bit28bit29bit30bit31bit32bit33bit34bit35bit36bit37bit38bit39bit40bit41bit42bit43bit44bit45bit46bit47bit48bit49bit50bit51 $fEqBits52 $fOrdBits52 $fShowBits52$fGenericBits52 $fFlatBits52 $fModelBits52IEEE_754_binary64signexponentfraction$fEqIEEE_754_binary64$fOrdIEEE_754_binary64$fShowIEEE_754_binary64$fGenericIEEE_754_binary64$fModelIEEE_754_binary64Bits8 $fEqBits8 $fOrdBits8 $fShowBits8$fGenericBits8 $fFlatBits8 $fModelBits8IEEE_754_binary32$fEqIEEE_754_binary32$fOrdIEEE_754_binary32$fShowIEEE_754_binary32$fGenericIEEE_754_binary32$fModelIEEE_754_binary32BytesArray$fModelPreAligned $fModelFiller $fModelArray$fGenericBytes $fModelBytes NoEncoding FlatEncodingUTF16LEEncoding UTF8EncodingBLOBencodingcontent $fModelBLOB $fGenericBLOB$fEqUTF8Encoding$fOrdUTF8Encoding$fShowUTF8Encoding$fNFDataUTF8Encoding$fGenericUTF8Encoding$fFlatUTF8Encoding$fModelUTF8Encoding$fEqUTF16LEEncoding$fOrdUTF16LEEncoding$fShowUTF16LEEncoding$fNFDataUTF16LEEncoding$fGenericUTF16LEEncoding$fFlatUTF16LEEncoding$fModelUTF16LEEncoding$fEqFlatEncoding$fOrdFlatEncoding$fShowFlatEncoding$fNFDataFlatEncoding$fGenericFlatEncoding$fFlatFlatEncoding$fModelFlatEncoding$fEqNoEncoding$fOrdNoEncoding$fShowNoEncoding$fNFDataNoEncoding$fGenericNoEncoding$fFlatNoEncoding$fModelNoEncoding$fModel(,,,,,,,,)$fModel(,,,,,,,)$fModel(,,,,,,)$fModel(,,,,,) $fModel(,,,,) $fModel(,,,) $fModel(,,) $fModel(,) $fAsTypeTyp$fModelUTF16Text $fAsTypeTyp0$fModelUTF8Text $fAsTypeTyp1 $fModelText$fModelShortByteString$fModelByteString$fModelByteString0 $fModelSeq $fModel[] $fModelDouble $fModelFloat$fModelInteger $fModel() shake_128sha3_256TypedDecodeExceptionUnknownMetaModel WrongType DecodeError expectedType actualType TypedDecodedLabelValuevalTypevalNamevalBits valFields UnicodeSymbol UnicodeLetterUnicodeLetterOrNumberOrLine IdentifierNameSymbolADTRefVarRecExtAbsEnv AbsTypeModelAbsADT SHAKE128_48 SHA3_256_6AbsRefAbsTypeabsReflabel$fModelPostAligned $fModelAbsRef$fModelSHAKE128_48$fModelSHA3_256_6$fModelUnicodeSymbol"$fModelUnicodeLetterOrNumberOrLine$fModelUnicodeLetter$fModelIdentifier$fModelTypeModel$fModelTypeRef $fModelType $fModelADTRef$fModelConTree $fModelADT $fFlatTypeRef $fFlatType$fFlat[] $fFlat[]0 $fFlatConTree $fFlatADT$fFlatTypeModel$fExceptionTypedDecodeException$fStringLikeIdentifier $fFlat[]1$fEqSHA3_256_6$fOrdSHA3_256_6$fShowSHA3_256_6$fNFDataSHA3_256_6$fGenericSHA3_256_6$fFlatSHA3_256_6$fEqSHAKE128_48$fOrdSHAKE128_48$fShowSHAKE128_48$fNFDataSHAKE128_48$fGenericSHAKE128_48$fFlatSHAKE128_48 $fEqADTRef $fOrdADTRef $fShowADTRef$fNFDataADTRef$fGenericADTRef$fFunctorADTRef$fFoldableADTRef$fTraversableADTRef $fFlatADTRef$fEqUnicodeLetterOrNumberOrLine $fOrdUnicodeLetterOrNumberOrLine!$fShowUnicodeLetterOrNumberOrLine#$fNFDataUnicodeLetterOrNumberOrLine$$fGenericUnicodeLetterOrNumberOrLine!$fFlatUnicodeLetterOrNumberOrLine$fEqUnicodeLetter$fOrdUnicodeLetter$fShowUnicodeLetter$fNFDataUnicodeLetter$fGenericUnicodeLetter$fFlatUnicodeLetter$fEqUnicodeNumber$fOrdUnicodeNumber$fShowUnicodeNumber$fNFDataUnicodeNumber$fGenericUnicodeNumber$fFlatUnicodeNumber$fEqUnicodeSymbol$fOrdUnicodeSymbol$fShowUnicodeSymbol$fNFDataUnicodeSymbol$fGenericUnicodeSymbol$fFlatUnicodeSymbol$fEqIdentifier$fOrdIdentifier$fShowIdentifier$fNFDataIdentifier$fGenericIdentifier$fFlatIdentifier $fEqAbsRef $fOrdAbsRef $fShowAbsRef$fNFDataAbsRef$fGenericAbsRef $fFlatAbsRef $fEqValue $fOrdValue $fShowValue $fNFDataValue$fGenericValue $fFlatValue $fEqLabel $fOrdLabel $fShowLabel $fNFDataLabel$fGenericLabel $fFlatLabel$fShowTypedDecodeException$fEqTypedDecodeException$fOrdTypedDecodeExceptionabsType absTypeModelabsTypeModelMaybe TypedValue TypedBLOBunblobblob typedBLOB typedBLOB_ typedValue untypedBLOB untypedValuetypeErr $fShowBLOB$fEqBLOB $fOrdBLOB $fNFDataBLOB $fFlatBLOB $fEqTypedBLOB$fOrdTypedBLOB$fShowTypedBLOB$fNFDataTypedBLOB$fGenericTypedBLOB$fFlatTypedBLOB$fModelTypedBLOB$fEqTypedValue$fOrdTypedValue$fShowTypedValue$fFunctorTypedValue$fNFDataTypedValue$fGenericTypedValue$fFlatTypedValue MapTypeTreetypeTreetypeDefinition adtDefinitioninnerReferences references getADTRef stringADT solvedADTMapTypeDecoderdecodeAbsTypeModel typeDecodertypeDecoderMap unPrettyRefhex prettyTuple prettyList$fPretty(,,,,,,,,) $fPrettyMap$fPrettyShortByteString$fPrettyByteString$fPrettyByteString0 $fPrettyInt64 $fPrettyInt32 $fPrettyInt16 $fPrettyInt8$fPrettyWord64$fPrettyWord32$fPrettyWord16 $fPrettyWord8 $fPrettyWord$fPrettyUTF16Text$fPrettyUTF8Text $fPrettyText $fPrettyBLOB $fPrettyBLOB0 $fPrettyBLOB1$fPrettyNoEncoding $fPrettyLabel$fPrettyNonEmptyList $fPrettySeq$fPrettySHAKE128_48$fPrettySHA3_256_6$fPrettyAbsRef$fPrettyADTRef $fPretty(,)$fPrettyIdentifier $fPretty(,)0 $fPretty(,)1 $fPrettyMap0$fPrettyTypeModel$fPrettyTypedValue$fPrettyTypedDecodeException $fPrettyValue $fGenericAny $fModelAnymkConsLPasACTasWCTmakeTree shake_128_ sha3_256_stat UnicodeNumber identifierasSymbolasLetterasLetterOrNumberisAlsoOKbase GHC.GenericsGenericRepfromtoGeneric1Rep1from1to1Datatype moduleName datatypeName packageName isNewtype ConstructorconName conFixity conIsRecordSelectorselNameselSourceUnpackednessselSourceStrictnessselDecidedStrictnessU1Par1unPar1Rec1unRec1K1unK1M1unM1:+:L1R1:*::.:Comp1unComp1RDCSRec0D1C1S1URecUAddrUCharUDoubleUFloatUIntUWorduWord#uInt#uFloat#uDouble#uChar#uAddr#precFixityPrefixInfixFixityIPrefixIInfixI AssociativityLeftAssociativeRightAssociativeNotAssociativeSourceUnpackedness SourceUnpackSourceNoUnpackNoSourceUnpackednessSourceStrictness SourceLazy SourceStrictNoSourceStrictnessDecidedStrictness DecidedLazy DecidedStrict DecidedUnpackMetaMetaDataMetaConsMetaSel Data.ProxyProxy model-0.3-A2rozqcGuQN4U385Cv7TajData.Model.TypessolvesolveAllqualNamegetHRefunVartypeAtypeN adtNamesMapconTreeTypeFoldMapconTreeTypeListconTreeNameMapconTreeTypeMapconstructorInfo fieldsNames fieldsTypes constructorstypeADTsHTypeEnv HTypeModelHADTHTypeHTypeRef TypeModeltypeNametypeEnvTypeEnvADTdeclNamedeclNumParametersdeclConsConTreeCon constrFields constrNameTypeTypeConTypeAppTypeNTypeRefTypVarTypRefQualNamepkgNamemdlNamelocNameabsADTadtRefsaturate absRecDepsmapSolve conDecoder prettyWords readHexCodereadCoderdHexpPrint0Data.Model.PrettydottedvspacedPspacedPvarP CompactPrettypretty-1.1.3.3Text.PrettyPrint.HughesPJClassPretty pPrintListpPrint pPrintPrec prettyShowAnybitsValtAnymatcharr_ prettyList_ prettyTuple_ Data.Flat.RunflatRaw unflatRawWith unflatRaw unflatWithunflatflatData.Flat.InstancesdecodeSequenceencodeSequence sizeSequence decodeMap encodeMapsizeMapData.Flat.FillerpostAlignedDecoder preAligned postAligned fillerLengthFiller FillerBit FillerEnd PostAligned postValue postFiller PreAligned preFillerpreValuegetSizeencodesizedecodeData.Flat.Decoder.TypesGetDecodedDecodeExceptionData.Flat.TypesUTF8Text UTF16TextData.Model.ClassuseCT typeModelAsTypeasTypeModelenvTypeData.Model.UtiltransitiveClosure mutualGroupsErrors Type.AnalyseAna