!mU      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrst u v w x y z { | } ~   !!!!!"""""#####$$$$$%%% % % & & &&&'''''((((()))))* *!*"*#*$+%+&+'+(+),*,+,,,-,.-/-0-1-2-3.4.5.6.7.8/9/:/;/</=0>0?0@0A0B1C1D1E1F1G2H2I2J2K2L3M3N3O3P3Q4R4S4T4U4V5W5X5Y5Z5[6\6]6^6_6`7a7b7c7d7e8f8g8h8i8j9k9l9m9n9o:p:q:r:s:t;u;v;w;x;y<z<{<|<}<~=====>>>>>>>>>>>>>>>>>>>CSafe=?@ASafe2encoding[This exception type is thrown whenever something went wrong during the decoding-process.encodingCThe sequence contained an illegal byte that couldn't be decoded. encoding:more bytes were needed to allow a successfull decoding. encoding.the decoded value was out of the unicode range encoding>The character sequence encodes a character, but is illegal. encoding[This exception type is thrown whenever something went wrong during the encoding-process. encodingFThrown if a specific character is not representable in an encoding.    Safe=>?@A} ! " ! "None=>?@A ;*+,-./0129876543:;2987654301./,-:;*+?NoneEX+#TencodinglWraps all possible encoding types into one data type. Used when a function needs to return an encoding.UencodingeThe base class for all encodings. At least decodeChar, encodeChar and encodeable must be implemented.Vencoding'Read a single character of a ByteSourceWencoding4Encode a single character and write it to a ByteSinkXencoding3Read characters from a ByteSource until it is emptyYencoding*Encode a String and write it to a ByteSinkZencodingTests whether a given character is representable in the Encoding. If this yields True, encodeChar must not fail. If it yields False, encodeChar _must_ throw an exception.TUZXWVYNone2+ [\]^_`abcd [\]^_`abcdNone2,<hihiNone,monpqrsmonpqrs None2-tutu None2-^yzyz None2-~~ None21 encoding2Decodes big and little endian, encodes big endian.encodingPBig endian decoding and encoding, fails if the string isn't actually big endian.encoding$Little endian decoding and encoding. None25encoding{Detects big or little endian through the use of the BOM (Byte Order Mask) character. Defaults to big endian if not present.encoding2Encodes and decodes using the big endian encoding.encoding5Encodes and decodes using the little endian encoding.None29encodingTVery forgiving decoding mechanism, accepts everything that it can make any sense of.encodingMore strict decoding, doesn't accept sequences that have a too long representation and checks bits that aren't used in the decoding@None=?F:ANoneF:sBNone:CNone; None2F;None2F;None2FNone2F>xNone2F>None2F?4None2F?None2F?None2F@NNone2F@None2FA None2FAh None2FA!None2FB$"None2FB#None2FB$None2FC>%None2FC&None2FC    'None2FDX(None2FD)None2FE*None2FEr  +None2FE$%$%,None2FF.)*)*-None2FF././.None2FF3434/None2FGH89890None2FG=>=>1None2FHBCBC2None2FHbGHGH3None2FHLMLM4None2FIQRQR5None2FI|VWVW6None2FI[\[\7None2FJ8`a`a8None2FJefef9None2FJjkjk:None2FKRopop;None2FKtutu<None2FLyzyz=None2FLl~~None>NencodingLike  but returns  instead of throwing an errorencodingETakes the name of an encoding and creates a dynamic encoding from it.:  !"*+,-./0123456789:;TUYVWXZUYVWXZT>None TxencodingLike the normal DE-, but decodes the input using an encoding.encodingLike the normal DF., but encodes the output using an encoding.encoding[Returns the encoding used on the current system. Currently only supported on Linux-alikes.GHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqqrrstuuvwxyz{|}~???????                          !!!!!" " "!"""##$#$#%#&#'$($($)$*$+%,%,%-%.%/&0&0&1&2&3'4'4'5'6'7(8(8(9(:(;)<)<)=)>)?*@*@*A*B*C+D+D+E+F+G,H,H,I,J,K-L-L-M-N-O.P.P.Q.R.S/T/T/U/V/W0X0X0Y0Z0[1\1\1]1^1_2`2`2a2b2c3d3d3e3f3g4h4h4i4j4k5l5l5m5n5o6p6p6q6r6s7t7t7u7v7w8x8x8y8z8{9|9|9}9~9:::::;;;;;<<<<<=====>E>>>>F>>>>>>>>>>>>>>????????@@@AAAABBBBCCCCCCCCCCCCencoding-0.8.3-inplaceControl.ThrowsData.Encoding.ExceptionData.Encoding.ByteSourceData.Encoding.ByteSink Data.EncodingData.Encoding.BootStringData.Encoding.ASCIIData.Encoding.ISO2022Data.Encoding.ISO88591Data.Encoding.KOI8RData.Encoding.KOI8UData.Encoding.UTF16Data.Encoding.UTF32Data.Encoding.UTF8Data.Encoding.ShiftJISData.Encoding.MacOSRomanData.Encoding.JISX0212Data.Encoding.JISX0208Data.Encoding.JISX0201Data.Encoding.ISO2022JPData.Encoding.ISO88599Data.Encoding.ISO88598Data.Encoding.ISO88597Data.Encoding.ISO88596Data.Encoding.ISO88595Data.Encoding.ISO88594Data.Encoding.ISO88593Data.Encoding.ISO88592Data.Encoding.ISO885916Data.Encoding.ISO885915Data.Encoding.ISO885914Data.Encoding.ISO885913Data.Encoding.ISO885911Data.Encoding.ISO885910Data.Encoding.GB18030Data.Encoding.CP932Data.Encoding.CP874Data.Encoding.CP869Data.Encoding.CP866Data.Encoding.CP865Data.Encoding.CP864Data.Encoding.CP863Data.Encoding.CP862Data.Encoding.CP861Data.Encoding.CP860Data.Encoding.CP857Data.Encoding.CP855Data.Encoding.CP852Data.Encoding.CP850Data.Encoding.CP775Data.Encoding.CP737Data.Encoding.CP437Data.Encoding.CP1258Data.Encoding.CP1257Data.Encoding.CP1256Data.Encoding.CP1255Data.Encoding.CP1254Data.Encoding.CP1253Data.Encoding.CP1252Data.Encoding.CP1251Data.Encoding.CP1250System.IO.EncodingData.Encoding.Base Data.StaticData.Array.StaticData.Map.Static Data.CharMap System.IO hGetContentshPutStrThrowsthrowException$fThrowseReaderT$fThrowseStateT $fThrowseIO$fThrowseEither$fThrowseIdentityDecodingExceptionIllegalCharacter UnexpectedEnd OutOfRangeIllegalRepresentationEncodingExceptionHasNoRepresentation$fExceptionEncodingException$fExceptionDecodingException$fEqEncodingException$fOrdEncodingException$fShowEncodingException$fReadEncodingException$fEqDecodingException$fOrdDecodingException$fShowDecodingException$fReadDecodingException ByteSource sourceEmpty fetchWord8 fetchAhead fetchWord16be fetchWord16le fetchWord32be fetchWord32le fetchWord64be fetchWord64lefetchAheadState$fThrowsDecodingExceptionGet$fByteSourceReaderT$fByteSourceStateT$fByteSourceStateT0$fByteSourceStateT1$fByteSourceStateT2$fByteSourceGetStrictSinkExplicit StrictSinkE StrictSinkStrictSPutMEByteSink pushWord8 pushWord16be pushWord16le pushWord32be pushWord32le pushWord64be pushWord64lecreateStrictWithLen createStrict$fThrowsEncodingExceptionPutM$fByteSinkReaderT$fByteSinkStateT$fByteSinkPutM$fByteSinkPutME$fThrowsEncodingExceptionPutME $fMonadPutME$fApplicativePutME$fFunctorPutME$fByteSinkStrictSink#$fThrowsEncodingExceptionStrictSink$fMonadStrictSink$fApplicativeStrictSink$fFunctorStrictSink$fByteSinkStrictSinkE$$fThrowsEncodingExceptionStrictSinkE$fMonadStrictSinkE$fApplicativeStrictSinkE$fFunctorStrictSinkE$fByteSinkStrictSinkExplicit+$fThrowsEncodingExceptionStrictSinkExplicit$fMonadStrictSinkExplicit$fApplicativeStrictSinkExplicit$fFunctorStrictSinkExplicit DynEncodingEncoding decodeChar encodeChardecodeencode encodeable BootStringbasetmintmaxskewdamp init_biasinit_npunycode$fEncodingBootString$fShowBootString$fEqBootStringASCII$fEncodingASCII $fShowASCII $fEqASCIIISO2022 readEscapeencodingForCharencodeCharISO2022decodeCharISO2022 encodeISO2022 decodeISO2022ISO88591$fEncodingISO88591$fShowISO88591 $fEqISO88591KOI8R$fEncodingKOI8R $fEqKOI8R $fShowKOI8RKOI8U$fEncodingKOI8U $fEqKOI8U $fShowKOI8UUTF16UTF16BEUTF16LE$fEncodingUTF16 $fEqUTF16 $fShowUTF16UTF32UTF32BEUTF32LE$fEncodingUTF32 $fEqUTF32 $fShowUTF32UTF8 UTF8Strict$fEncodingUTF8$fEqUTF8 $fShowUTF8ShiftJIS$fEncodingShiftJIS $fEqShiftJIS$fShowShiftJIS MacOSRoman$fEncodingMacOSRoman$fShowMacOSRoman$fEqMacOSRomanJISX0212$fEncodingJISX0212$fShowJISX0212 $fEqJISX0212JISX0208$fEncodingJISX0208$fShowJISX0208 $fEqJISX0208JISX0201$fEncodingJISX0201$fShowJISX0201 $fEqJISX0201 ISO2022JP$fISO2022ISO2022JP$fEncodingISO2022JP $fEqISO2022JP$fShowISO2022JPISO88599$fEncodingISO88599$fShowISO88599 $fEqISO88599ISO88598$fEncodingISO88598$fShowISO88598 $fEqISO88598ISO88597$fEncodingISO88597$fShowISO88597 $fEqISO88597ISO88596$fEncodingISO88596$fShowISO88596 $fEqISO88596ISO88595$fEncodingISO88595$fShowISO88595 $fEqISO88595ISO88594$fEncodingISO88594$fShowISO88594 $fEqISO88594ISO88593$fEncodingISO88593$fShowISO88593 $fEqISO88593ISO88592$fEncodingISO88592$fShowISO88592 $fEqISO88592 ISO885916$fEncodingISO885916$fShowISO885916 $fEqISO885916 ISO885915$fEncodingISO885915$fShowISO885915 $fEqISO885915 ISO885914$fEncodingISO885914$fShowISO885914 $fEqISO885914 ISO885913$fEncodingISO885913$fShowISO885913 $fEqISO885913 ISO885911$fEncodingISO885911$fShowISO885911 $fEqISO885911 ISO885910$fEncodingISO885910$fShowISO885910 $fEqISO885910GB18030$fEncodingGB18030 $fEqGB18030 $fShowGB18030CP932$fEncodingCP932 $fEqCP932 $fShowCP932CP874$fEncodingCP874 $fShowCP874 $fEqCP874CP869$fEncodingCP869 $fShowCP869 $fEqCP869CP866$fEncodingCP866 $fShowCP866 $fEqCP866CP865$fEncodingCP865 $fShowCP865 $fEqCP865CP864$fEncodingCP864 $fShowCP864 $fEqCP864CP863$fEncodingCP863 $fShowCP863 $fEqCP863CP862$fEncodingCP862 $fShowCP862 $fEqCP862CP861$fEncodingCP861 $fShowCP861 $fEqCP861CP860$fEncodingCP860 $fShowCP860 $fEqCP860CP857$fEncodingCP857 $fShowCP857 $fEqCP857CP855$fEncodingCP855 $fShowCP855 $fEqCP855CP852$fEncodingCP852 $fShowCP852 $fEqCP852CP850$fEncodingCP850 $fShowCP850 $fEqCP850CP775$fEncodingCP775 $fShowCP775 $fEqCP775CP737$fEncodingCP737 $fShowCP737 $fEqCP737CP437$fEncodingCP437 $fShowCP437 $fEqCP437CP1258$fEncodingCP1258 $fShowCP1258 $fEqCP1258CP1257$fEncodingCP1257 $fShowCP1257 $fEqCP1257CP1256$fEncodingCP1256 $fShowCP1256 $fEqCP1256CP1255$fEncodingCP1255 $fShowCP1255 $fEqCP1255CP1254$fEncodingCP1254 $fShowCP1254 $fEqCP1254CP1253$fEncodingCP1253 $fShowCP1253 $fEqCP1253CP1252$fEncodingCP1252 $fShowCP1252 $fEqCP1252CP1251$fEncodingCP1251 $fShowCP1251 $fEqCP1251CP1250$fEncodingCP1250 $fShowCP1250 $fEqCP1250recode encodeStringencodeStringExplicit decodeStringdecodeStringExplicitencodeLazyByteStringencodeLazyByteStringExplicitdecodeLazyByteStringdecodeLazyByteStringExplicitencodeStrictByteStringencodeStrictByteStringExplicitdecodeStrictByteStringdecodeStrictByteStringExplicitencodingFromStringExplicitencodingFromString getContentsputStrputStrLn hPutStrLnprinthPrintreadFile writeFile appendFilegetCharhGetChargetLinehGetLineputCharhPutCharinteractgetSystemEncodinguntilMuntilM_ encodeWithMapencodeWithMap2encodeableWithMapdecodeWithArraydecodeWithArray2 StaticElementgenextract StaticArraybounds! StaticMaplookupmemberCharMapLeafMap4LeafMap2LeafMap1 LeafRange4 LeafRange3 LeafRange2 LeafRange1DeadEndNode mapEncode mapMember GHC.MaybeNothing