úΨ~žŠu      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstNone246Ĩ8A class representing datatypes that can be formatted as s inside a monad. Format an item as a  inside an m monadFormat a list of items as a  inside an m monad8A class representing datatypes that can be formatted as s. Format an item as a Format a list of items as a uA result. This is split into v and w˜ in order to optimize for the common case of a single possible rendering. Otherwise, it would be perfectly fine to represent everything as a HashMap.wMultiple possible renderings.xĪA multi-level map. The first map is indexed by the column upper-bound (meaning the first column at which using any of the contents will cause an overrun). The second map is indexed by the ending column.vA single possible rendering.yThe rendered document.zBThe first column at which this render causes an overrun. Same as {.|+The current column at the end of rendering.}˙Offsets structure. this is used as a key in a hash table. It is also important to how the algorithm works. Renderings represent "chunks", which have an ending column and a maximum column. The algorithm glues these chunks together, then evaluates their "badness" using the ~L function to recalculate the ending column and the maximum starting offset.{Upper-bound: Highest starting column for this document without causing overrun. If this is negative, it means you've overrun by that much.Ending column.€The indentation mode. No indent.‚(Indent starting with the current column.ƒ%Indent starting with the zero column.„PColumn data type. Represents how rendered documents affect the current column.…GThe greater of a relative column offset and an absolute column offset.†/This many columns offset from a relative point.‡But not less than this value.ˆA relative column offset.‰An absolute column offset.ŠA rendering of a document.‹$The number of lines in the document.Œ*The largest amount by which we've overrun.'A builder that constructs the document.Ž'Indentation mode for the next document.FGraphics options for ANSI terminals. All options are wrapped in the  datatype, with $ meaning "leave this option as-is". Reset the terminal in this mode.ISet options on the terminal, or keep the current setting in the case of . Console intensity.  Underlining. Blinking speed. Foreground color and intensity. Background color and intensity.5Whether or not to swap the foreground and background.+Datatype representing a formatted document.‘3Set graphics mode options when rendering the child Doc.’Graphics mode to set.“%Document to render with graphic mode.”/Choose the "best" from among a list of options.•The list of options.–)Increase the nesting level of a document.—$Amount by which to increase nesting.˜CWhether to align to the current column, or the base nesting level.™?Whether the indentation is delayed, or takes place immediately.š+Document whose nesting should be increased.›@Concatenated documents. An empty list here represents an empty Doc.œ A newline.1Whether to insert a space when undone by a group.žfA raw Builder that constructs a string containing no newlines. This is used to represent basic text.Ÿ#Length of the text that gets built. #A Builder that constructs the text.Ą)A single character. Cannot be a newline.ĸ Generate a % representing a graphics mode switch. An empty .A N consisting of a linebreak, that is not turned into a space when erased by a k.A J consisting of a linebreak, that is turned into a space when erased by a k.A q consisting of a space character, that can be turned into a linebreak in order to break lines that are too long. An empty P that can be turned into a linebreak in order to break lines that are too long.A  containing a single character. Create a  containing a string. Create a  containing a bytestring. Create a  containing a lazy bytestringThe character (The character )The character [The character ]The character {The character }The character < The character >!The character '"The character "#The character `$The character ,%The character ;&The character :'The character .(The character @@)A space character.*The character =+<Increase the indentation level of a document by some amount.,<Increase the indentation level of a document by some amount.-0Set the indentation level to the current column.. Enclose a  in single quotes/ Enclose a  in double quotes0 Enclose a  in paretheses1 Enclose a  in brackets2 Enclose a  in braces3 Enclose a  in angles4$Set the graphics mode on a document.5Color a  dull white.6Color a  dull red.7Color a  dull yellow.8Color a  dull green.9Color a  dull blue.:Color a  dull cyan.;Color a  dull magenta.<Color a  dull black.=Color a  vivid white.>Color a  vivid red.?Color a  vivid yellow.@Color a  vivid green.AColor a  vivid blue.BColor a  vivid cyan.CColor a  vivid magenta.DColor a  vivid black.EColor a s background dull white.FColor a s background dull red.GColor a s background dull yellow.HColor a s background dull green.IColor a s background dull blue.JColor a s background dull cyan.KColor a s background dull magenta.LColor a s background dull black.MColor a s background vivid white.NColor a s background vivid red.OColor a s background vivid yellow.PColor a s background vivid green.QColor a s background vivid blue.RColor a s background vivid cyan.SColor a s background vivid magenta.TColor a s background vivid black.U Join two s with no space in between.V Join two s with a space in between them.W Join two  s with a  in between them.X Join two  s with a  in between them.Y Join two  s with a  in between them.Z Join two  s with a  in between them.[Joun  s with no space in between them.\Concatenate a list of <s. This is generally more efficient than repeatedly using [ or U.]fA choice of several options. Only one of these will be chosen and used to render the final document.^Concatenate a list of <s. This is generally more efficient than repeatedly using [ or U._Join a list of Xs with spaces in between each. This is generally more efficient than repeatedly using V.`Join a list of s with Ls in between each. This is generally more efficient than repeatedly using X.aJoin a list of s with Ls in between each. This is generally more efficient than repeatedly using W.bJoin a list of s using either _ or `.cJoin a list of s using either ^ or a.dJoin a list of s with Ls in between each. This is generally more efficient than repeatedly using Y.eJoin a list of s with Ls in between each. This is generally more efficient than repeatedly using Z.f Enclose a  within two other sgConcatenate a list of Ms into a single doc, with each element separated from the others by a given  representing punctuation.hEnclose a list of as, separated by punctuation, and align nesting of the contents to the end of the left enclosing i<Render a list, enclosed in brackets and separated by commas.jErase all linebreaks in a U and replace them with either spaces or nothing, depending on the kind of linebreak.kA  that ]+s between the unmodified argument, or the jed version of the argument.l Produce a Ŗ that renders the  to one line.mRender the entire l to one line. Good for output that will be read only by a machine, where newlines are not important at allnOutput the entire , as rendered by m to the given ¤.o Produce a Ŗ that renders the  quickly.pRender the entire „, preserving newlines, but without any indentation. Good for output that will be read only by machine, but where newlines matter.qOutput the entire , as rendered by p to the given ¤.~eGiven a starting column and an ending column, give a column representing the combination of the two.ĨGenerate n spacesĻPick the best rendering of two.§ÍAppend operation on complete states. A complete state is the contents of an Offset and a Render (ie. the contents of Single, or the contents of an entry in a Multi combined with the corresponding key).¨ãCombine two results into a Multi. This achieves the same result as HashMap.unionWith bestRender (meaning, union these maps, combining using bestRender to pick when both maps have a given index), but handles Singles as well.r Produce a Ŗ that renders the " using the optimal layout engine.s Render a ē as a lazy bytestring using an optimal layout rendering engine. The engine will render the document in the fewest number of lines possible without exceeding the maximum column width.tOutput the entire , as rendered by s to the given ¤.Ŋuwxvyz|}Š{€‚ƒ„…†‡ˆĒ‰ĢŠŦ‹ŒŽ ‘’“”•–—˜™š›­œžŸ ĄŽĸ !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopq~Ĩϝ°ą§¨˛rThe maximum number of columns.4Whether or not to render with ANSI terminal options.The document to render.sThe maximum number of columns.4Whether or not to render with ANSI terminal options.The document to render.tThe ¤ to which to write outputThe maximum number of columns.4Whether or not to render with ANSI terminal options.The document to render.ŗ´ĩšēģŧŊžŋĀu  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstu  !"#$%&'(*)+,-./0123i456789:;<=>?@ABCDEFGHIJKLMNOPQRST[\]UVWXYZ_^`abcdefghjkmlnpoqsrt†uvwyz|x}Š{€ƒ‚„‰ˆ…Ģdž‡ŠŦ‹ŒŽ Ąžœ›–”‘ŽŸ ­—˜™š•’“ĸ !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopq~Ĩϝ°ą§¨˛rstŗ´ĩšēģŧŊžŋĀÁ      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“‘’”•–—˜™š›œžŸ ĄĸŖ¤ĨϧĄ‘¨ŠĒĢŦ­Ž¯Œ°ą˛ŗ´ĩšēģŧŊžŋĀÁÂÃÄdynamic-pp-0.1.0 Text.FormatFormatMformatM formatListMFormatformat formatListGraphicsDefaultOptionsconsoleIntensity underlining blinkSpeed foreground backgroundswapForegroundBackgroundDocemptyline linebreaksoftline softbreakcharstring bytestringlazyBytestringlparenrparenlbrackrbracklbracerbracelangleranglesquotedquote backquotecommasemicolondot backslashspaceequalsnestindentalignsquoteddquotedparensbracketsbracesanglesgraphics dullWhitedullRed dullYellow dullGreendullBluedullCyan dullMagenta dullBlack vividWhitevividRed vividYellow vividGreen vividBlue vividCyan vividMagenta vividBlackdullWhiteBackgrounddullRedBackgrounddullYellowBackgrounddullGreenBackgrounddullBlueBackgrounddullCyanBackgrounddullMagentaBackgrounddullBlackBackgroundvividWhiteBackgroundvividRedBackgroundvividYellowBackgroundvividGreenBackgroundvividBlueBackgroundvividCyanBackgroundvividMagentaBackgroundvividBlackBackground<><+><$><$$>besideconcatchoosehcathsepvsepvcatsepcatfillSepfillCatenclose punctuate encloseSeplistflattengroup buildOneLine renderOneLine putOneLine buildFast renderFastputFast buildOptimal renderOptimal putOptimalResultSingleMulti multiOptions singleRender singleUpper offsetUpper singleColOffsetsadvance offsetColIndentNonePartialFullColumnMaximum maxRelativemaxFixedRelativeFixedRender renderLines renderOverrun renderBuilder renderIndentbase Data.MaybeMaybeNothing graphicsSGR graphicsDocChoose chooseOptionsNest nestLevel nestAlign nestDelaynestDocCatLine insertSpaceBuilder builderLengthbuilderContentCharswitchGraphicsbytestring-0.10.4.0 Data.ByteString.Builder.InternalGHC.IO.Handle.TypesHandle makespaces bestRender appendOne mergeResults relOffset fixedOffsetcatDocs charContent insertRender packResultbestRenderInOptscontentBuilder$fFormatDouble $fFormatFloat $fFormatWord$fFormatInteger $fFormatInt$fFormatByteString$fFormatByteString0 $fFormat[] $fFormatDoc $fFormat[]0$fHashableOffsets $fEqColumn $fOrdColumn$fHashableColumn