!$      Safe=?HV0None$2 !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNONone$>PSX PQRSTUVWXNone4a YZ[\]^_`abcdSafeefghijklSafe/mn Safevopqrs None"# tuvwxyz{|} NoneSXh~None7  th-printf4Takes a format string as input and produces a tuple (args, outputExpr).This function processes character escapes as they would appear in Haskell source code. It will emit warnings (or throw an error, as appropriate) when given an invalid format string.Use if you wish to leverage  th-printf@ in conjunction with, for example, an existing logging library.None1X  th-printf [ ,|Hello, %s! (%d people greeted)|] :: ... ->  .This formatter follows the guidelines listed  1http://www.cplusplus.com/reference/cstdio/printf/here, except for %n; (store number of printed characters) for obvious reasons.  %c ::  %s ::  %q ::    -- lazy text %Q ::  < -- strict text -- datatypes with Show instances %? :: + a => a -- signed integer types %d, %i :: . i => i -- unsigned integer types %u :: ( i,  i) => i %o :: ( i,  i) => i %x, %X :: ( i,  i) => i -- floats %a, %A ::  f => f %e, %E ::  f => f %f, %F ::  f => f %g, %G ::  f => f %p ::  a  th-printfBehaves identically to  , but produces lazy   .  th-printfLike  %, but prints the resulting string to stdout. '[p|Hello, %s! (%d people greeted)|] ::  m => ... -> m ()  th-printfLike  &, but takes as its first argument the  to print to. ([hp|Hello, %s! (%d people greeted)|] ::  m =>  -> ... -> m ()    !"#$%&'()*+,--.//01234556789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghhib9:jk2310lmnopqrstu v w x y z { { | } ~   $th-printf-0.7-KZSltg6UkqS585b2hsFOKtLanguage.Haskell.Printf.LibLanguage.Haskell.Printf Buildable Parser.TypesParserLanguage.Haskell.PrintfArgPaths_th_printfStrUtilsNumUtils Language.Haskell.Printf.Geometry Language.Haskell.Printf.PrintersData.Text.LazyText Data.Text Foreign.PtrPtr System.IOHandle OutputType OutputString OutputText toSplices$fShowOutputType$fEqOutputType$fOrdOutputType$fGenericOutputType$fEnumOutputType$fBoundedOutputTypestphprepeatNlTextsTextstrdigit singletonsizeconsfinalizeOutput SizedBuilderSizedStrSizedunSizedFlagSetprefixedspaced adjustmentsigned FormatStr FormatArgspec precisionflagswidth lengthSpec MaySpecifyNeedGiven Adjustment ZeroPadded LeftJustifiedFlagFlagZeroPadded FlagPrefixed FlagSpaced FlagSigned FlagLJustLengthSpecifierZJBigLDoubleLHDoubleHLTAtomStrArgadjustmentFlags emptyFlagSet toFlagSet adjustment_ prefixed_signed_spaced_flags_ lengthSpec_ precision_spec_width_WarningparseStrnormalizeAndWarnflagSetspecSetlengthSpecifiersoneOfSet printfStrfmtArg PrintfArg fieldSpecvalueprecversion getBinDir getLibDir getDynLibDir getDataDir getLibexecDir getSysconfDirgetDataFileName justifyLeft justifyRight showIntAtBaseformatRealFloatAlttoRoundedDigits fromDigitsformatHexFloatValuevalSign valPrefixvalArgsign' padDecimalprefix fromPrintfArg formatOnePrinter printfStringprintfStrictTextprintfLazyText printfShow printfChar printfPtr printfDecimal fmtUnsigned printfHexprintfUnsigned printfOctalprintfFloatingprintfScientific printfGenericprintfFloatHex clampUnsignedbaseGHC.BaseStringghc-prim GHC.TypesCharGHC.ShowShowGHC.RealIntegralGHC.EnumBounded GHC.Float RealFloatControl.Monad.IO.ClassMonadIO