d~]L'      !"#$%&Safe 'Types of lexical errors(The token type used by  Config.Lexer and  Config.Parser)-A value annotated with its text file positionA position in a text file* The initial  for the start of a file+XProcess a list of position-annotated tokens inserting layout end tokens as appropriate.,Single step of the layout pass-/Extract the column number from a located thing../Return True when a token starts a layout scope.+tokens without layout markers tokens with layout markers ,current token continuation stack of layout scopes token stream with layout "'/01234(56789:;<=>?@ABC)DEF*+GHI'/01234(96:<=75>?@A;BC8)DEFSafe&HJ2Type of actions used by lexer upon matching a ruleKNThe lexer can be in any of four modes which determine which rules are active.L Start of comment and return modeMStart of string and return modeNStart of string and input textO<The generated code expects the lexer input type to be named OP7Get the next characteristic byte from the input source.Q>Advance the position according to the kind of character lexed.RIAction to perform upon end of file. Produce errors if EOF was unexpected.SoTerminate the line if needed and move the cursor to column 0 to ensure that it terminates any top-level block.T8Action to perform when lexer gets stuck. Emits an error.U Helper function for building an J using the lexemeV Helper function for building an J where the lexeme is unused.W%Used to enter one of the nested modesXEnter the string literal lexerYASuccessfully terminate the current mode and emit tokens as neededZ'Action for unterminated string constant[ Construct a 7 token from a token using a given base. This function expect the token to be legal for the given base. This is checked by Alex.\ Construct a ] token from a lexeme.^Process a section heading token_Alex is driven by looking up elements in a 128 element array. This function maps each ASCII character to its ASCII encoding and it maps non-ASCII code-points to a character class (0-6)J#match length #current input #lexer mode #updated lexer mode, emitted tokens [prefix length base sign-prefix-digits \%sign-integer-[. decimal][e exponent] KLMN`OPRTUVWXYZ[\^K`LMN TrustworthyD*aAttempt to produce a token stream from an input file. In the case of an error the line and column of the error are returned instead.b5Compute the Alex state corresponding to a particular KaSource text Tokens with position acdefghijklmnopqSafe13456: 2Sum type of the values supported by this language.The first field of the R constructor is the based used in the concrete syntax of the configuration value.The ] constructor stores the coefficient and power-of-10 exponent used in the concrete syntax. This allows representing numbers that would otherwise overflow a r.{ is parameterized over an annotation type indented to be used for file position or other application specific information. Examples:0xff is  16 255123 is  10 123123e10 is ] 123 10123.45 is ] 12345 (-2)lists of key-value pairs8integer literal base (2, 8, 10, or 16) and integer value#coef exponent: coef * 10 ^ exponent quoted strings unquoted strings lists Wrapper to distinguish   from sB by type in a configuration. Atoms can be constructed using the OverloadedStrings extension.A single section of a Example:my-key: my-value is  (  "my-key") (  "my-value")#Returns the annotation for a value.     Safe> Pretty-print a  as shown in the example. Sections will nest complex values underneath with indentation and simple values will be rendered on the same line as their section. Trustworthy;=DeEtConvert number token to number value. This needs a custom function like this because there are two value matched from the constructor.uConvert floating token to floating value. This needs a custom function like this because there are two value matched from the constructor.v]Attempt to parse a layout annotated token stream or the token that caused the parse to fail.vlayout annotated token stream token at failure or result vwxyz{|}~y9 z9 'Lenses and traversals for manipulating  values.(c) Eric Mertens, 2017ISCemertens@gmail.comSafeTa +Traversal for the subsections of the given  when that value is a . and the section name matches the given name.Traversal for the  contained inside the given . when its section name matches the given name.Traversal for the [] contained inside the given  when it is a .Traversal for the s contained inside the given .Traversal for the   contained inside the given .Traversal for the  contained inside the given  when it is a .Traversal for the [] contained inside the given  when it is a  .@Traversal for the immediate values in a list or a sections list.!This is intended to be used with Control.Lens.Plated.Traversal for the  elements inside the given  when it is a  .  =  .  'Lens for the annotation component of a  section name  section name  -Configuration file parser and abstract syntax(c) Eric Mertens, 2017ISCemertens@gmail.comSafe\uLError messages that can occur during parsing annotated with a file position.!hParse a configuration file and return the result on the right, or the position of an error on the left.<The resulting value is annotated with source file locations.2Note: Text file lines are terminated by new-lines." implements a pretty format!source text error message or parsed value     !!          !"#$%%&'()*+,-./0123456789:;,<=>?@ABC.DEFGFHIJKLMNOPQRSTUVWX YZ[\]^_`abacdedfghijklmnopqr Ystuvvwxyy\z{|Z}~Z*config-value-0.6.3.1-efWGN59LjBFTjzVFOhejxConfig Config.Lens Config.TokensConfig.LexerUtils Config.Lexer Config.Value Config.Pretty Config.ParserPositionposIndexposLine posColumnValueSectionsNumberFloatingTextAtomListMkAtomatomNameSection sectionAnn sectionName sectionValuevalueAnnprettykeysectionstextatomnumberlist valuePlatevaluesann ParseErrorparse$fExceptionParseError$fReadParseError$fShowParseError$fEqParseError$fOrdParseErrorErrorTokenLocatedstartPos layoutPasssteptoCol usesLayout UntermComment UntermString UntermListUntermSections BadEscapeNoMatchStringEOFBulletCommaOpenList CloseListOpenMapCloseMap LayoutSep LayoutEnd locPositionlocThingLayoutNoLayoutAction LexerMode InCommentInCommentStringInString AlexInput alexGetBytemove eofActionpark errorActiontokentoken_nestMode startStringendMode untermStringfloatingbase GHC.Floatsection byteForCharInNormal scanTokens stateToIntAlexAcc AlexAccNone AlexAccSkip AlexLastAccAlexNone AlexLastSkip AlexReturnAlexEOF AlexErrorAlexSkip AlexTokenAlexAddrAlexA#ghc-prim GHC.TypesDouble#text-1.2.2.2-EakMpasry3jA6OIwSZhq9MData.Text.Internal parseValue HappyAddrHappyA#HappyStk Happy_IntList HappyCons HappyAbsSyn integer-gmpGHC.Integer.TypeIntegerData.Traversabletraverse GHC.ExceptiondisplayException