úÎ!»žåt      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[ \ ] ^ _ ` a b c d e f g h i j k l m n o p q r s  None.ÿ6tuvwxyz{|}~€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ¡¢£¤¥¦§¨©ª«¬­®¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖרÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõö÷øùúûüýþÿ      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ¡¢£¤¥¦§¨©None»ª qrcode-core>Creates a Reed-Solomon ECC generator for the specified degree.« qrcode-coreoComputes and returns the Reed-Solomon error correction code words for the specified sequence of data codewords.¬ qrcode-coreIReturns the product of the two given field elements modulo GF(2^8/0x11D).­ª«NoneP¤® 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®¯°³´±²Nonea 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%Noneq qrcode-coreThe desired mask for the QRCode    None## 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-coreCIncrease error correction level within the same version if possible qrcode-coreDSpecify a mask to be used, only use it if you know what you're doing qrcode-corevThe default options are all versions, boost error level and automatic mask, the error level has always to be specifiedNone"#HV*Ã" 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-corelConvert 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 !"# !"# Trustworthy24567M2o$ qrcode-corewThis 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) $%&'$%&'SafeDraw the code words (data and error correction) into the imageí qrcode-core<Sets the color of a module and marks it as a function moduleî qrcode-coreExecute an action n timesï qrcode-coreThe mask value of an ErrorLevelåëìNone"#Xa[|ð qrcode-coreGApply the mask to the image, modules marked for functions are excluded.ñ qrcode-core(Calculate the penalty score for an imageðñNone`dò qrcode-coreÆConvert segments into an intermediate state. This is the first point where it can be guaranteed that there will be an result. The Version and ErrorLevel is already determined at this point.ó qrcode-core-Convert the intermediate state into an image.ô qrcode-coreDraw the imageòó Nonea`«_`ab_`abNone agc qrcode-coreWGenerate a segment representing the specified text string encoded in alphanumeric mode.dThe 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.cõöNoneaiŠd qrcode-core{Generate a segment representing an Extended Channel Interpretation (ECI) designator with the specified assignment value.dNoneape qrcode-coreGGenerate a segment representing the specified binary data in byte mode.f qrcode-core}Generate a segment 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 e as it creates the same result.ef÷Noneaulg qrcode-coreQGenerate a segment 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.SBut it is possible to encode some of it and combine it with others like ISO-8859-1.gøùNoneawih qrcode-core_Generate a segment representing the specified string of decimal digits encoded in numeric mode.húNonea{†i qrcode-coreZEncode a string using any mode that seems fit, will encode the input in parts, each as h, c, g and f based on the contents.8Please refer to the specific documentations for details.+Should result in the shortest encoded data.i None~Çj qrcode-coreSEncode a whole string using the mode with the shortest result. Will pick either h, c, g or f based on the contents.8Please refer to the specific documentations for details.j Noneƒ:k qrcode-coreÆConvert segments into an intermediate state. This is the first point where it can be guaranteed that there will be an result. The Version and ErrorLevel is already determined at this point.l qrcode-core-Convert the intermediate state into an image.>  !"#$%&'?@ABCDEFGHIJKZ[\]^cdefghijkl ijfegchdkl Nonežm qrcode-corejEncode 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-corecEncode 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-coreGGenerate a QR code representing the specified binary data in byte mode.q qrcode-coreQGenerate 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-coreWGenerate a QR code representing the specified text string encoded in alphanumeric mode.dThe 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  !"#?@ABCDEFGHIJKmnopqrsmnopqrs!SafežÀûüýþÿ"#$%&'()*+,-./01234566789:;<==>?@ABCDDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz { | } ~  € ‚ƒ„…†‡ˆ ‰ Š ‹ ‹ Œ Ž ‘’“”•–—’˜™’˜š’›œ’ž’Ÿ’“ ’“¡’“¢’£¤’£¥’¦§’¨©’¨ª’¨«’¬­’¬®’¬¯’¬°’¬±’¬²’¬³’¬´’¬µ’¬¶’¬·’¬¸•¹º•¹»•¹¼’½¾’½¿’½À’½Á’½Â’½Ã’½Ä’½Å’½Æ’½Ç’½È’½É’½Ê’½Ë’½Ì’½Í’½Î’½Ï’½Ð’£Ñ’£Ò’£Ó’£Ô’£Õ’£Ö’£×’£Ø’£Ù’£Ú’£Û’£Ü’“Ý’“Þ’“ß’“à’“á’“â’“ã’“ä’åæ’åç’åè’åé’åê’åë’åì’å핹ð•¹ñ•¹ò•¹ó•¹ô•¹õ’ö÷’öø’öù’£ú’£û’½ü’½ý’½þ’½ÿ’½’½’½’½’½’½’½’½’½’½ ’½ ’£ ’£ ’£ ’£’£’£’’’’’“’“’“’“’“’’’’’ ’!’"’#’$’%’&’'’(’)’*+’*,’*-’*.’*/’“0’“1’“2’“3’“4’“5•67•68•69•6:•6;•6<•6=>?@’AB’AC’AD•6E•6F•6G•6H’£I•6J•6K’LM’LN’OP’OQ’OR’ST’¦U’*V’*W’›X’›Y’›Z’›[’›\’›]’›^’›_’›`’›a’›b’›c’de’fg’dh’di’j’k’l’m’n’o’p’q’r’s’t’uv’uw’ux’uy’uz’u{’|}’|~’O’ö€’ö’‚ƒ’„…’„†’‡ˆ’‡‰’Š‹’Œ’ŒŽ’Œ’Œ’Œ‘’Œ’’Œ“’Œ”’Œ•’Œ–’Œ—’Œ˜’Œ™’Œš’Œ›’Œœ’Œ’Œž’ŒŸ’Œ ’Œ¡’Œ¢’Œ£’¤¥’¦§’¦¨’£©’£ª’£«’£¬’£­’£®’¯’°’±’²’³’˜´’˜µ’˜¶’˜·’˜¸’˜¹’˜º’˜»’˜¼’˜½’˜¾’˜¿’˜À’˜Á’˜Â’˜Ã’˜Ä’˜Å’˜Æ’˜Ç’˜È’˜É’˜Ê’˜Ë’˜Ì’˜Í’˜Î’ÏÐ’ÏÑ’ÏÒ’Ó’Ô’Õ’åÖ’“×’“Ø’“Ù’“Ú’“Û’“Ü’“Ý’“Þ’“ß’“à’“á’“â’“ã’“ä’“å’“æ’çè’çé’çꕹ땹앹íîïðñòóôBõ ö÷øùúûüyýþóÿz       !"#$%&'()*+,-./012345!6!7!8!9!:!;!<!=>(qrcode-core-0.9.3-3GKHcvAzTs3BhUEOGKc4p1Codec.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$fGeneric1Result $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.EnumBoundedminBoundmaxBoundEnumenumFrom enumFromThenenumFromThenTo enumFromTofromEnumtoEnumsuccpred GHC.ClassesEq==/= GHC.FloatFloatingpiexplogsqrt**logBasesincostanasinacosatansinhcoshtanhasinhacoshatanh Fractional fromRational/recipIntegral toIntegerquotremdivmodquotRemdivModMonad>>=>>returnfailFunctorfmap<$GHC.NumNum+*-negate fromIntegerabssignumOrd>=minmax><compare<=GHC.ReadRead readsPrecreadListReal toRational RealFloat floatRadix floatDigits floatRange decodeFloat encodeFloatexponent significand scaleFloatisNaN isInfiniteisDenormalizedisNegativeZeroisIEEEatan2RealFracproperFractiontruncateroundceilingfloorGHC.ShowShow showsPrecshowshowList Applicativepure<*>*><* Data.FoldableFoldablefoldrfoldMapnulllengthfoldlfoldl'foldl1sumproductfoldr1maximumminimumelemData.Traversable TraversabletraversemapM sequenceAsequence Semigroup<>Monoidmemptymappendmconcat GHC.TypesBoolFalseTrueCharDoubleFloatInt integer-gmpGHC.Integer.TypeInteger GHC.MaybeMaybeNothingJustOrderingLTEQGTRationalIOWordGHC.WordWord8Word16 Data.EitherEitherLeftRight Data.STRef modifySTRef'unless mapAccumLforMreadIOreadLn appendFile writeFilereadFileinteract getContentsgetLinegetCharputStrLnputStrputCharGHC.IO.ExceptionioErrorGHC.IOFilePath userErrorIOErrornotElemallanyorand concatMapconcat sequence_forM_mapM_foldlM Data.OldListunwordswordsunlineslinessortOn transpose Text.Readreadreadseitherlex readParenText.ParserCombinators.ReadPReadS GHC.UnicodetoUpperisDigit GHC.STRef readSTRefnewSTRefGHC.STrunST Data.BitsBits.&..|.xor complementshiftrotatezeroBitsbitsetBitclearBit complementBittestBit bitSizeMaybebitSizeisSignedshiftL unsafeShiftLshiftR unsafeShiftRrotateLrotateRpopCount Data.Boolbool Data.Functorvoid<$>lcmgcd^^^oddeven showParen showStringshowCharshowsShowSunzip3unzipzipWith3zipWithzip3!!lookupreversebreakspansplitAtdroptake dropWhile takeWhilecycle replicaterepeatiteratescanr1scanrscanl1scanlinitlasttailhead Data.Maybe fromMaybeisJustmaybeswapuncurrycurrysubtractasTypeOfuntil$!flip.constidordwhen=<< Alternativeempty<|>somemanyStringGHC.Err undefinederrorWithoutStackTraceerror&&||notrsGeneratorPolynomialrsEncodemultiplyRsGeneratorPolynomialByteStreamBuilder 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 encodeUtf8kanjiBkanjiMapnumericBversion getBinDir getLibDir getDynLibDir getDataDir getLibexecDir getSysconfDirgetDataFileName