!ϲĂ      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ (c) 2011 MailRank, Inc. BSD-stylebos@serpentine.com experimentalGHCNoneD b formatting%Unsafe conversion for decimal digits. formatting The normal 4 function with right associativity instead of left.4 NoneD  (c) 2011 MailRank, Inc. BSD-stylebos@serpentine.com experimentalGHCNone1K formattingRender a value using its  instance.  formatting'Render an integral type in hexadecimal. (c) 2011 MailRank, Inc. BSD-stylebos@serpentine.com experimentalGHCNone;=0  formatting-The class of types that can be rendered to a .  (c) 2011 MailRank, Inc. BSD-stylebos@serpentine.com experimentalGHCNone<2 formatting4Pad the left hand side of a string until it reaches k7 characters wide, if necessary filling with character c.3 formatting5Pad the right hand side of a string until it reaches k7 characters wide, if necessary filling with character c.4 formatting_Render a floating point number using normal notation, with the given number of decimal places.5 formatting`Render a floating point number using the smallest number of digits that correctly represent it.6 formattingKRender an integer using hexadecimal notation. (No leading "0x" is added.)4 formatting0Number of digits of precision after the decimal.23456Safe&';=G7 formattingFA formatter. When you construct formatters the first type parameter, r8, will remain polymorphic. The second type parameter, aX, will change to reflect the types of the data that will be formatted. For example, in emyFormat :: Formatter r (Text -> Int -> r) myFormat = "Person's name is " % text % ", age is " % hex Pthe first type parameter remains polymorphic, and the second type parameter is Text -> Int -> r%, which indicates that it formats a  and an .When you run the 7, for example with @F, you provide the arguments and they will be formatted into a string. g> format ("Person's name is " % text % ", age is " % hex) "Dave" 54 "Person's name is Dave, age is 36" : formattingConcatenate two formatters.formatter1 % formatter2, is a formatter that accepts arguments for  formatter1 and  formatter2- and concatenates their results. For example Eformat1 :: Format r (Text -> r) format1 = "Person's name is " % text  %format2 :: Format r r format2 = ", "  9format3 :: Format r (Int -> r) format3 = "age is " % hex  RmyFormat :: Formatter r (Text -> Int -> r) myFormat = format1 % format2 % format3 !Notice how the argument types of format1 and format3 are gathered into the type of myFormat./(This is actually the composition operator for Format's F instance, but that is (at present) inconvenient to use with regular Prelude2. So this function is provided as a convenience.); formattingUFunction compose two formatters. Will feed the result of one formatter into another.< formatting.Don't format any data, just output a constant .= formatting'Monadic indexed bind for holey monoids.> formatting2Functorial map over a formatter's input. Example: %format (mapf (drop 1) string) "hello"? formattingFormat a value of type a using a function of type a -> . For example, later (f :: Int -> Builder) produces Format r (Int -> r).@ formatting$Run the formatter and return a lazy  value.A formatting&Run the formatter and return a strict  value.B formattingRun the formatter and return a  value.C formatting3Run the formatter and print out the text to stdout.D formatting4Run the formatter and put the output onto the given .E formatting2Run the formatter and return a list of characters.F formatting"The same as (%). At present using G has an import overhead, but one day it might be imported as standard.G formattingDUseful instance for writing format string. With this you can write Foo instead of  now "Foo!".I formattingVUseful instance for applying two formatters to the same input argument. For example:  format (year <> "/" % month) now will yield  "2015/01".J formatting&Not particularly useful, but could be.789:;<=>?@ABCDE789:;<=>?@ABCDE:9 ;8*(c) 2013 Chris Done, 2013 Shachaf Ben-KikiBSD3chrisdone@gmail.com experimentalGHCNoneQVu#K formattingOutput a lazy text.L formattingOutput a strict text.M formattingOutput a string.N formatting%Output a showable value (instance of ) by turning it into :@format ("Value number " % shown % " is " % shown % ".") 42 False"Value number 42 is False."O formattingOutput a character.P formattingBuild a builder.Q formattingLike  but for formatters.R formatting#Build anything that implements the  Buildable class.S formatting/Render an integral e.g. 123 -> "123", 0 -> "0".T formattingKRender some floating point with the usual notation, e.g. 123.32 => "123.32"U formatting_Render a floating point number using normal notation, with the given number of decimal places.V formatting`Render a floating point number using the smallest number of digits that correctly represent it.W formattingRender a scientific number.X formatting(Render a scientific number with options.Y formatting,Shows the Int value of Enum instances using .4format ("Got: " % char % " (" % asInt % ")") 'a' 'a' "Got: a (97)"Z formattingnPad the left hand side of a string until it reaches k characters wide, if necessary filling with character c.[ formattingoPad the right hand side of a string until it reaches k characters wide, if necessary filling with character c.\ formattingvPad the left & right hand side of a string until it reaches k characters wide, if necessary filling with character c.] formatting(Group integral numbers, e.g. groupInt 2  on 123456 -> "12.34.56".^ formatting0Fit in the given length, truncating on the left._ formatting1Fit in the given length, truncating on the right.` formatting2Add commas to an integral, e.g 12000 -> "12,000".a formatting6Add a suffix to an integral, e.g. 1st, 2nd, 3rd, 21st.b formatting&English plural suffix for an integral.c formattingRender an integral at base n.d formattingORender an integer using binary notation. (No leading 0b is added.) Defined as bin = c 2.e formattingNRender an integer using octal notation. (No leading 0o is added.) Defined as oct = c 8.f formattingjRender an integer using hexadecimal notation. (No leading 0x is added.) Has a specialized implementation.g formatting:Render an integer using binary notation with a leading 0b.h formatting9Render an integer using octal notation with a leading 0o.i formatting?Render an integer using hexadecimal notation with a leading 0x. formattingKInternal function that converts a number to a base base-2 through base-36. formattingA simpler variant of  > that only prepends a dash and doesn't know about parentheses formattingLike , but handles up to base-36j formattingERenders a given byte count using an appropiate decimal binary suffix:format (bytes shortest) 1024"1KB",format (bytes (fixed 2 % " ")) (1024*1024*5) "5.00 MB"j formattingformatter for the decimal part! KLMNOPQRSTUVWXYZ[\]^_`abcdefghij!KLMNOPQSTUWXV]`abYZ[\^_cdefghijR *(c) 2013 Chris Done, 2013 Shachaf Ben-KikiBSD3chrisdone@gmail.com experimentalGHCNoneQVx#. 79:;<>?@ABCDEKLMNOPQRSTUVWXYZ[\]^_`abcdefghij 7:;<?>9@ABCDENone}Qk formattingSimple hello, world!l formattingPrinting strings.m formattingPrinting texts.n formattingPrinting builders.o formattingPrinting integers.p formattingPrinting floating points.q formatting$Printing integrals in hex (base-16).r formattingPadding.klmnopqrklmnopqrNoneO~s formattingSame as  durationNS but works on  from the clock package.ssNone7 2345623645 *(c) 2013 Chris Done, 2013 Shachaf Ben-KikiBSD3chrisdone@gmail.com experimentalGHCNoneQV t formattingOutput a lazy text.u formatting/Render an integral e.g. 123 -> "123", 0 -> "0".v formattingCRender an integer using binary notation. (No leading 0b is added.)w formattingARender an integer using octal notation. (No leading 0o is added.)x formattingHRender an integer using hexadecimal notation. (No leading 0x is added.)y formattingOutput a strict text.z formattingOutput a string.{ formatting%Output a showable value (instance of ) by turning it into .| formattingOutput a character.} formatting_Render a floating point number using normal notation, with the given number of decimal places.~ formatting`Render a floating point number using the smallest number of digits that correctly represent it. formatting4Pad the left hand side of a string until it reaches k7 characters wide, if necessary filling with character ch. formatting5Pad the right hand side of a string until it reaches k7 characters wide, if necessary filling with character ch. tuvwxyz{|}~ tuvwxyz{|}~NoneQV0 formattingTimezone offset on the format -HHMM. formattingTimezone name. formattingAs  locale (e.g. %a %b %e %H:%M:%S %Z %Y). formattingSame as %H:%M. formattingSame as %H:%M:%S. formattingAs  locale (e.g. %H:%M:%S). formattingAs  locale (e.g.  %I:%M:%S %p). formattingDay half from ( locale), converted to lowercase, am, pm. formattingDay half from ( locale), AM, PM. formatting$Hour, 24-hour, leading 0 as needed, 00 - 23. formatting$Hour, 12-hour, leading 0 as needed, 01 - 12. formatting(Hour, 24-hour, leading space as needed,  0 - 23. formatting(Hour, 12-hour, leading space as needed,  1 - 12. formattingMinute, 00 - 59. formattingSecond, without decimal part, 00 - 60. formatting&Picosecond, including trailing zeros,  000000000000 -  999999999999. formattingDecimal point and up to 12 second decimals, without trailing zeros. For a whole number of seconds, this produces the empty string. formattingSame as %m/%d/%y. formattingSame as %Y-%m-%d. formattingAs  locale (e.g. %m/%d/%y). formattingYear. formattingLast two digits of year, 00 - 99. formatting2Century (being the first two digits of the year), 00 - 99. formattingMonth name, long form ( from  locale), January - December. formatting %H] month name, short form ( from  locale), Jan - Dec@. formatting$Month of year, leading 0 as needed, 01 - 12. formatting#Day of month, leading 0 as needed, 01 - 31. formattingDay of month, 1st, 2nd, 25th, etc. formatting'Day of month, leading space as needed,  1 - 31. formatting%Day of year for Ordinal Date format, 001 - 366. formattingYear for Week Date format e.g. 2013. formatting.Last two digits of year for Week Date format, 00 - 99. formatting9Century (first two digits of year) for Week Date format, 00 - 99. formattingWeek for Week Date format, 01 - 53. formattingDay for Week Date format, 1 - 7. formattingDay of week, short form ( from  locale), Sun - Sat. formattingDay of week, long form ( from  locale), Sunday - Saturday. formatting6Week number of year, where weeks start on Sunday (as sundayStartWeek), 00 - 53. formattingDay of week number, 0 (= Sunday) - 6 (= Saturday). formatting6Week number of year, where weeks start on Monday (as mondayStartWeek), 00 - 53. formattingiDisplay a time span as one time relative to another. Input is assumed to be seconds. Typical inputs are  and . formatting.Display the absolute value time span in years. formatting-Display the absolute value time span in days. formatting.Display the absolute value time span in hours. formatting0Display the absolute value time span in minutes. formatting0Display the absolute value time span in seconds. formatting0Formatter call. Probably don't want to use this. formatting*Helper for creating custom time formatters formattingDisplay 'in/ago'? formatting+Example: '3 seconds ago', 'in three days'.) formattingDecimal places. formattingDecimal places. formattingDecimal places. formattingDecimal places. formattingDecimal places.11            !"#$%&'()*+,-./0123456789:;<=>?@A B C D E FGGHIJKLMNOPQRSTUVWXYZ[\]^_`aDEbcdBCefghijklmnFopqrstuvwxyz{|}~lllllllll&formatting-6.3.5-1bkUSYC5MLPhRDmjREJyrFormatting.Internal.RawFormatting.BuildableFormatting.InternalFormatting.FormattersFormatting.ExamplesFormatting.ClockFormatting.ShortFormattersFormatting.TimeData.Text.Format.FunctionsData.Text.Format.IntData.Text.Format.TypesData.Text.FormatNumeric showSigned Data.Char intToDigit Formattingi2d<>decimal hexadecimalminusintegerShownshownHex Buildablebuild$fBuildableBool$fBuildablePtr$fBuildableWordPtr$fBuildableIntPtr$fBuildableZonedTime$fBuildableLocalTime$fBuildableTimeZone$fBuildableTimeOfDay$fBuildableMaybe$fBuildableShown$fBuildableDay$fBuildableUniversalTime$fBuildableUTCTime$fBuildableNominalDiffTime$fBuildableDiffTime$fBuildableDouble$fBuildableFloat$fBuildableRatio$fBuildableWord64$fBuildableWord$fBuildableWord32$fBuildableWord16$fBuildableWord8$fBuildableFixed$fBuildableInteger$fBuildableInt64$fBuildableInt$fBuildableInt32$fBuildableInt16$fBuildableInt8$fBuildableHex $fBuildable[]$fBuildableChar$fBuildableText$fBuildableText0$fBuildableVoid$fBuildableBuilderleftrightfixedshortesthexFormat runFormat%%.nowbindmapflaterformatsformatbprintfprinthprintformatToString$fCategoryTYPEFormat$fIsStringFormat$fSemigroupFormat$fMonoidFormat$fFunctorFormattextstextstringcharbuilderfconstintfloatsciscifmtasIntcentergroupIntfitLeftfitRightcommasordspluralbasebinoct prefixBin prefixOct prefixHexbyteshellostringstextsbuildersintegersfloatshexespadding timeSpecstdboxstsshcfsflrtztzNamedatetimehmhmshmsLhmsPLdayHalfdayHalfUhour24hour12hour24Shour12Sminutesecondpicodecimalsepoch dateSlashdateDash dateSlashLyearyycentury monthNamemonthNameShortmonth dayOfMonth dayOfMonthOrd dayOfMonthSdayweekYearweekYY weekCenturyweek dayOfWeek dayNameShortdayName weekFromZerodayOfWeekFromZero weekOfYearMondiffyearsdayshoursminutessecondsfmt customTimeFmtGHC.BasemappendGHC.ShowShow text-1.2.3.0Data.Text.Internal.BuilderBuilderData.Text.Internal.LazyTextghc-prim GHC.TypesIntControl.CategoryCategoryData.Text.InternalGHC.IO.Handle.TypesHandleconstGHC.EnumfromEnum.atBase showSigned' intToDigit'"clock-0.7.2-ErKmPTjVISxJnEb9XKUAOs System.ClockTimeSpec)old-locale-1.0.0.7-26K7wLFR2jK44UeOklvTCh System.Locale dateTimeFmttimeFmt time12FmtamPmdateFmt Data.TuplefstmonthssndwDays time-1.8.0.2(Data.Time.Clock.Internal.NominalDiffTimeNominalDiffTime!Data.Time.Clock.Internal.DiffTimeDiffTime