Îõ³h&=.ñô      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[ \ ] ^ _ ` a b c d e f g h i j k l m n o p q r s   Safe-Inferred¸tuvwxyz{|}~€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ¡¢£¤¥¦§¨©ª«¬­®¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖרÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõö÷øùúûüýþÿ€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œž‚Ÿ ¡¢£¤¥¦§¨©ª«¬­®¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖרÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõö÷øùúûüýþÿ€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ¡¢£¤¥¦§¨©ª Safe-InferredÀ« qrcode-core>Creates a Reed-Solomon ECC generator for the specified degree.¬ qrcode-coreïComputes and returns the Reed-Solomon error correction code words for the specified sequence of data codewords.­ qrcode-coreÉReturns the product of the two given field elements modulo GF(2^8/0x11D).®«¬ Safe-InferredÔ²¯ qrcode-core°List of bits. Stored as a pair of Int, how many bits to store and the data, in a DList. The DList gives a O(1) append. The number of bits in a pair is never more than 22.° qrcode-core+Store bits from Int in an ByteStreamBuilder± qrcode-core8Store bits from an list of Bytes in an ByteStreamBuilder² qrcode-core*Convert ByteStreamBuilder to list of Word8³ qrcode-core%Convert list of Word8 to list of Bool¯°±´µ²³ Safe-InferredØ qrcode-coreThe error level of an QRCode qrcode-coreAllows error recovery up to 7% qrcode-coreAllows error recovery up to 15% qrcode-coreAllows error recovery up to 25% qrcode-coreAllows error recovery up to 30% Safe-Inferred 9 qrcode-coreThe desired mask for the QRCode     Safe-Inferred \ qrcode-core0Minimal version (i.e. size) the qr code may have qrcode-core0Maximal version (i.e. size) the qr code may have qrcode-coreSelected error correction level qrcode-coreÃIncrease error correction level within the same version if possible qrcode-coreÄSpecify a mask to be used, only use it if you know what you're doing qrcode-coreöThe default options are all versions, boost error level and automatic mask, the error level has always to be specified Safe-Inferred%&ÌÙÚ u" qrcode-coreŸConvert the QR code image into a list-type containing all elements from top to bottom and left to right. The values for black/white have to be specified.# qrcode-coreìConvert the QR code image into a list-type of list-type. The values for black/white have to be specified." qrcode-coreValue for black modules qrcode-coreValue for white modules# qrcode-coreValue for black modules qrcode-coreValue for white modules !"# !"# Trustworthy689:;Ñu$ qrcode-core÷This Maybe wrapper treats Just as success and Nothing as failure. There is no unexpected success <-> failure change. Differences: ¥ instance Semigroup/Monoid Maybe where Nothing <> (Just x) = Just x mempty = Nothing stimes 0 (Just x) = Nothing instance Semigroup/Monoid Result where Nothing <> (Just x) = Nothing mempty = Just mempty stimes 0 (Just x) = Just (stimes 0 x) $%&'$%&' Safe-Inferred<@ qrcode-core‚Generate segment out of a ISO-8859-1 text, if the text contains chars which aren't in the charset the result will be a failure.A qrcode-coreÌUse an UTF-8 encoded text. The reader must do a detection and conversion.ÃPlease check the readers which should be used if they support this.B qrcode-coreàThis is the correct way to encode UTF-8, but it's reported that not all readers support this.ÃPlease check the readers which should be used if they support this.C qrcode-coreTry to encode as @, if that is not possible use A.D qrcode-coreTry to encode as @, if that is not possible use B.?@ABCD?@ABCD Safe-InferredÁÃlE qrcode-coreConversion into binary dataG qrcode-core7Conversion into an array of digits (each has to be 0-9)I qrcode-coreñConversion into a String and the information if the text is case insensitive (relevant for alphanumeric encoding)EFGHIJKIJKGHEF Safe-Inferred ¶·¸¹º»¼ Safe-InferredZ qrcode-coreAn segment of encoded dataZ½¾¿ÀÁ Safe-Inferred3ZZ Safe-Inferred[[ÂÃÄÅÆÇ  Safe-InferredO\ qrcode-core&The version of the intermediate result] qrcode-core)The ErrorLevel of the intermediate result^ qrcode-core;The size of the data in bits inside the intermediate result[\]^[\]^ Safe-Inferred#%&"È qrcode-core The data all encoder pass aroundÉ qrcode-coreÃCalculates the size of a QR code (in modules) based on the version.Ê qrcode-core Determine º and  based on the  and the data to encode.Ë qrcode-coreßAdd the End marker, pad to a full byte (with 0) and pad all further unused bytes (with 0xEC11).Ì qrcode-core4Append the appropriate error correction to the data.ÈÉÊËÌ Safe-Inferred%&UÍÎÏÐÑÒÓÔÕÖרÙÚÛÜÝÞßàáâãäå Safe-Inferred%&÷ æ qrcode-coreDraw all function patternsç qrcode-core9Draw both timing patterns (alternate black/white modules)è qrcode-core?Draws a 5*5 alignment pattern, with the center module at (x, y)é qrcode-coreÛDraws a 9*9 finder pattern including the border separator, with the center module at (x, y)ê qrcode-core+Draw the version information into the imageë qrcode-core€Mark all modules which will be used by the format bits as a function pattern (but don't actually write anything into it yet).ì qrcode-core*Draw the actual format bits into the imageí qrcode-core>Draw the code words (data and error correction) into the imageî qrcode-core ! "#$%&'?DCB@AEFGHIJKZ[\]^cdefghijkl ijfegchdkl  Safe-Inferred.|m qrcode-coreêEncode a string into an QR code using any mode that seems fit, will encode the input in parts, each as s, r, q and o based on the contents.8Please refer to the specific documentations for details.+Should result in the shortest encoded data.n qrcode-coreãEncode a whole string into an QR code using the mode with the shortest result. Will pick either s, r, q or o based on the contents.8Please refer to the specific documentations for details.o qrcode-coreýGenerate a QR code representing the specified text data encoded as ISO-8859-1 or UTF-8 (with or without ECI) in byte mode.Please refer to ? on what the difference is.ÞIn case you want to encode as ISO-8859-1 and already have a [Word8] or similar you can use p as it creates the same result.p qrcode-coreÇGenerate a QR code representing the specified binary data in byte mode.q qrcode-coreÑGenerate a QR code representing the specified text data encoded as QR code Kanji.’Since this encoding does neither contain ASCII nor the half width katakana characters it may be impossible to encode all text in this encoding.r qrcode-core×Generate a QR code representing the specified text string encoded in alphanumeric mode.äThe alphanumeric encoding contains this characters: "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ $%*+-./:".¥When the input is case insensitive the chars are converted to uppercase since this alphabet contains only uppercase characters. This can be archived by applying  to the input.s qrcode-coreßGenerate a QR code representing the specified string of decimal digits encoded in numeric mode.2 ! "#?DCB@AEFGHIJKmnopqrsmnopqrs! Safe-Inferred.Üüýþÿ€‚ƒ„"#$%&'()*+,-./01234566789:;<==>?@ABCDDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz { | } ~  € ‚ƒ„…†‡ˆ ‰ Š ‹ ‹ Œ  Ž   ‘’“”•–—’˜™’˜š’›œ’ž’Ÿ’“ ’“¡’“¢’£¤’£¥’¦§’¨©’¨ª’¨«’¬­’¬®’¬¯’¬°’¬±’¬²’¬³’¬´’¬µ’¬¶’¬·’¬¸•¹º•¹»•¹¼’½¾’½¿’½À’½Á’½Â’½Ã’½Ä’½Å’½Æ’½Ç’½È’½É’½Ê’½Ë’½Ì’½Í’½Î’½Ï’½Ð’£Ñ’£Ò’£Ó’£Ô’£Õ’£Ö’£×’£Ø’£Ù’£Ú’£Û’£Ü’“Ý’“Þ’“ß’“à’“á’“â’“ã’äå’äæ’äç’äè’äé’äê’äë’ä앹핹ð•¹ñ•¹ò•¹ó•¹ô’õö’õ÷’õø’£ù’£ú’½û’½ü’½ý’½þ’½ÿ’½€’½’½‚’½ƒ’½„’½…’½†’½‡’½ˆ’½‰’£Š’£‹’£Œ’£’£Ž’£’‘’’’“’”’•–’•—’“˜’“™’“š’“›’“œ’ž’Ÿ’ ’¡’¢’£’¤’¥’¦’§’¨’©’ª’«’¬­’¬®’¬¯’¬°’¬±’“²’“³’“´’“µ’“¶’“·•¸¹•¸º•¸»’“¼•¸½•¸¾•¸¿•¸ÀÁÂÃ’ÄÅ’ÄÆ’ÄÇ•¸È•¸É•¸Ê•¸Ë’£Ì•¸Í•¸Î’ÏÐ’ÏÑ’ÒÓ’ÒÔ’ÒÕ’Ö×’¦Ø’¬Ù’¬Ú’›Û’›Ü’›Ý’›Þ’›ß’›à’›á’›â’›ã’›ä’›å’›æ’çè’éê’çë’çì’í’î’ï’ð’ñ’ò’ó’ô’õ’ö’÷’øù’øú’øû’øü’øý’øþ’ÿ€’ÿ’Ò‚’õƒ’õ„’…†’‡ˆ’‡‰’Š‹’ŠŒ’Š’ŠŽ’Š’Š’Š‘’Š’’Š“’Š”’Š•’Š–’Š—’Š˜’Š™’Šš’Š›’Šœ’Š’Šž’ŠŸ’Š ’Š¡’£¢’££’£¤’£¥’£¦’£§’¨©’¨ª’«¬’­’®’¯’°’±’˜²’˜³’˜´’˜µ’˜¶’˜·’˜¸’˜¹’˜º’˜»’˜¼’˜½’˜¾’˜¿’˜À’˜Á’˜Â’˜Ã’˜Ä’˜Å’˜Æ’˜Ç’˜È’˜É’˜Ê’˜Ë’˜Ì’ÍÎ’ÍÏ’ÍÐ’ÑÒ’ÓÔ’ÓÕ’Ö’×’Ø’äÙ’“Ú’“Û’“Ü’“Ý’“Þ’“ß’“à’“á’“â’“ã’“ä’“å’“æ’“ç’“è’éê’éë’é앹핹ïðñòóôõöB÷ª¢øùúûüýþyÿ€õz‚ƒ„…†‡ˆ‰Š‹ŒŒŽ‘’’“”•–—˜˜™š›œžŸ ¡¢£¤¥¦§¨©ª«¬­®¯°±²³´µ¶·!¸!¹!º!»!¼!½!¾!¿À(qrcode-core-0.9.8-1A0Jr64cjKA3KDzOSr872PCodec.QRCode.Data.ErrorLevelCodec.QRCode.Data.MaskCodec.QRCode.Data.QRCodeOptionsCodec.QRCode.Data.QRImageCodec.QRCode.Data.ResultCodec.QRCode.Data.TextEncodingCodec.QRCode.Data.ToInputCodec.QRCode.Data.QRSegment Codec.QRCode.Data.QRIntermediate!Codec.QRCode.Intermediate.SpecialCodec.QRCode.Intermediate Codec.QRCodeCodec.QRCode.Base$Codec.QRCode.Code.ReedSolomonEncoder#Codec.QRCode.Data.ByteStreamBuilderCodec.QRCode.Data.Version$Codec.QRCode.Data.QRSegment.Internal)Codec.QRCode.Data.QRIntermediate.InternalCodec.QRCode.Code.DataCodec.QRCode.Data.MQRImageCodec.QRCode.Code.ImageCodec.QRCode.Code.MaskCodec.QRCode.Code.IntermediateCodec.QRCode.Mode.AlphanumericData.CaseInsensitivemkCodec.QRCode.Mode.ECICodec.QRCode.Mode.ByteCodec.QRCode.Mode.KanjiCodec.QRCode.Mode.NumericCodec.QRCode.Mode.MixedCodec.QRCode.Mode.AutomaticPaths_qrcode_core ErrorLevelLMQH$fBoundedErrorLevel$fEnumErrorLevel$fEqErrorLevelMaskMask0Mask1Mask2Mask3Mask4Mask5Mask6Mask7 $fBoundedMask $fEnumMask$fEqMask QRCodeOptions qroMinVersion qroMaxVersion qroErrorLevelqroBoostErrorLevelqroMaskdefaultQRCodeOptionsQRImage qrVersion qrErrorLevel qrImageSize qrImageDatatoListtoMatrixResult getResultresult$fMonoidResult$fSemigroupResult$fAlternativeResult$fApplicativeResult $fDataResult $fEqResult$fFoldableResult$fFunctorResult$fGenericResult$fGeneric1TYPEResult $fMonadResult$fMonadFixResult$fMonadPlusResult $fOrdResult $fReadResult $fShowResult$fTraversableResult $fEq1Result$fMonadFailResult$fMonadZipResult $fOrd1Result $fRead1Result $fShow1Result TextEncoding Iso8859_1Utf8WithoutECI Utf8WithECIIso8859_1OrUtf8WithoutECIIso8859_1OrUtf8WithECIToBinarytoBinary ToNumeric toNumericToTexttoStringisCI $fToTextCI $fToTextText $fToTextText0 $fToText[]$fToNumericText$fToNumericText0 $fToNumeric[]$fToNumeric[]0$fToBinaryVector$fToBinaryVector0$fToBinaryVector1$fToBinaryByteString$fToBinaryByteString0 $fToBinary[] QRSegmentQRIntermediateqrIntermediateVersionqrIntermediateErrorLevelqrIntermediateDataSizeemptyNumericSegmentemptyAlphanumericSegmentemptyByteSegmentemptyKanjiSegment alphanumericecibinarytextkanjinumericmixed automatic intermediateencodeencodeAutomatic encodeText encodeBinary encodeKanjiencodeAlphanumeric encodeNumericbaseGHC.Base++ghc-primGHC.PrimseqGHC.Listfilterzip System.IOprint Data.Tuplefstsnd otherwisemap$GHC.Real fromIntegral realToFrac Control.MonadguardGHC.ExtsIsListItem fromListNGHC.EnumBoundedmaxBoundminBoundEnumsuccpredenumFromThenTo enumFromTo enumFromThenenumFromfromEnumtoEnum GHC.ClassesEq==/= GHC.FloatFloatingtanhtansqrtsinhsinpilogBaselogexpcoshcosatanhatanasinhasinacosh**acos Fractionalrecip fromRational/IntegralremquotRemquotmoddivMod toIntegerdivMonad>>>>=returnFunctorfmap<$GHC.NumNumsignumabs*+negate fromInteger-Ord<<=>maxmincompare>=GHC.ReadRead readsPrecreadListReal toRational RealFloat significand scaleFloatisNegativeZeroisNaN isInfiniteisIEEEisDenormalized floatRange floatRadix floatDigitsexponent encodeFloatatan2 decodeFloatRealFractruncateroundproperFractionceilingfloorGHC.ShowShowshowListshow showsPrecControl.Monad.Fail MonadFailfail Applicative<**><*>pure Data.FoldableFoldablefoldMapsumproductnullminimummaximumfoldr1foldl1foldl'elemfoldrlengthfoldlData.Traversable TraversabletraversesequencemapM sequenceA Semigroup<>Monoidmconcatmemptymappend GHC.TypesBoolFalseTrueStringCharDoubleFloatInt ghc-bignumGHC.Num.IntegerInteger GHC.MaybeMaybeNothingJustOrderingGTLTEQRationalIOWordGHC.WordWord8Word16 Data.EitherEitherRightLeft Data.STRef modifySTRef'unless mapAccumLforM writeFilereadLnreadIOreadFileputStrLnputStrputCharinteractgetLine getContentsgetChar appendFileGHC.IO.ExceptionioErrorGHC.IOFilePathIOError userError sequence_ornotElemmapM_forM_foldlM concatMapconcatanyandall Data.OldListwordsunwordsunlines transposesortOnlines Text.Readreadsreadeither readParenlexText.ParserCombinators.ReadPReadS GHC.UnicodetoUpperisDigitGHC.BitsBitszeroBitsxor unsafeShiftR unsafeShiftLtestBitshiftRshiftLshiftsetBitrotateRrotateLrotatepopCountisSigned complementBit complementclearBit bitSizeMaybebitSizebit.&..|.oddlcmgcdeven^^^ GHC.STRef readSTRefnewSTRefGHC.STrunSTShowSshows showString showParenshowCharzipWith3zipWithzip3unzip3unzip takeWhiletaketailsplitAtspanscanr1scanrscanl1scanlreverse replicaterepeatlookuplastiterateinithead dropWhiledropcyclebreak!! Data.MaybemaybeisJust fromMaybe Data.Boolbool Data.Functorvoid<$>uncurryswapcurrysubtract Alternativesomemany<|>emptywhenuntilordidflipconstasTypeOf=<<.$!GHC.Err undefinederrorWithoutStackTraceerror&&not||rsGeneratorPolynomialrsEncodemultiplyRsGeneratorPolynomialByteStreamBuilder encodeBitsfromList toBitStream VersionRange Version1to9 Version10to26 Version27to40Version unVersionversionsInRangeLimitedBy unQRSegment constStream lengthSegmentqrIntermediateVersion_qrIntermediateErrorLevel_qrIntermediateDataSize_qrIntermediateData_qrIntermediateMask_ QRInternalqrSizecalcVersionAndErrorLevelappendEndAndPaddingappendErrorCorrection MQRImage3 mqrImage3Size mqrImage3DatamqrImage3FixedmqrImage3VersionmqrImage3ErrorLevel MQRImage2 mqrImage2Size mqrImage2DatamqrImage2FixedmqrImage2VersionmqrImage2ErrorLevel MQRImage1 mqrImage1Size mqrImage1DatamqrImage1FixedmqrImage1VersionmqrImage1ErrorLevelnew unsafeConvertclone unsafeFreezedrawFunctionPatternsdrawTimingPatternsdrawAlignmentPatterndrawFinderPattern drawVersionreserveFormatBitsdrawFormatBits drawCodeWordssetFunctionModuleiterateNerrorLevelMask applyMaskgetPenaltyScoretoIntermediatefromIntermediategenerateQRImage alphanumericBalphanumericMap encodeUtf8kanjiBkanjiMapnumericBversiongetDataFileName getBinDir getLibDir getDynLibDir getDataDir getLibexecDir getSysconfDir