Y7      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~     ghc experimentalbjpop@csse.unimelb.edu.au-Convert escaped sequences of characters into real' characters in a normal Python string. -Convert escaped sequences of characters into real$ characters in a raw Python string. [ Note: despite their name, Python raw strings do allow a small set of character escapings, Q namely the single and double quote characters and the line continuation marker. ghc experimentalbjpop@csse.unimelb.edu.au*All types which can be transformed into a  . Transform values into strings. #Print just the prefix of something /Conditionally wrap parentheses around an item. &A list of things separated by commas. C        ghc experimentalbjpop@csse.unimelb.edu.au 9Source location spanning a contiguous section of a file. No span information. 5A span which is actually just one point in the file. 1A span which starts and ends on different lines. /A span which starts and ends on the same line. Types which have a span. 8A location for a syntactic entity from the source code. = The location is specified by its filename, and starting row  and column. 5Create a new span which encloses two spanned things. 2Construct the initial source location for a file. !FDecrement the column of a location, only if they are on the same row. "%Increment the column of a location. #4Increment the column of a location by one tab stop. $6Increment the line number (row) of a location by one. %+Make a point span from the start of a span &7Make a span from two locations. Assumption: either the A arguments are the same, or the left one preceeds the right one. ' Combines two  1 into one that spans at least all the characters  within both spans. Assumes the file! part is the same in both inputs ($Get the row of the start of a span. )"Get the row of the end of a span. *'Get the column of the start of a span. +%Get the column of the end of a span. !  !"#$%&'()*+&  &' %"!$#+)*(!    !"#$%&'()*+ghc experimentalbjpop@csse.unimelb.edu.aud,Classification of tokens 7Lexical tokens. 8 End of file 9Operator: not-equals ' '. Version 2 only. :Operator: not-equals '!='. ;Operator: tilde '~'. <Operator: floor-divide ''. =Operator: modulus '%'. >Operator: binary-shift-right '>>'. ?Operator: binary-shift-left '<<'. @Operator: binary-and '&'. AOperator: binary-xor '^'. BOperator: binary-or '|'. COperator: exponential '**'. DOperator: less-than-or-equals '<='. E!Operator: greater-than-or-equals '>='. FOperator: equals '=='. GOperator: less-than '<'. HOperator: greater-than '>'. IOperator: divide '/'. JOperator: multiply '*'. KOperator: minus: '-'. LOperator: plus '+'. M Delimiter: back quote character '`\'. N#Delimiter: floor-divide assignment '='. O)Delimiter: binary-right-shift assignment '>>='. P(Delimiter: binary-left-shift assignment '<<='. Q!Delimiter: binary-xor assignment '^='. R Delimiter: binary-or assignment '|='. S!Delimiter: binary-and assignment '&='. TDelimiter: power assignment '**='. UDelimiter: modulus assignment '%='. VDelimiter: divide assignment '/='. WDelimiter: multiply assignment '*=' XDelimiter: minus assignment '-='. YDelimiter: plus assignment '+='. ZDelimiter: assignment '='. [Delimiter: right facing arrow '->'. \!Delimiter: ellipses (three dots) '...'. ]Delimiter: colon ':'. ^Delimiter: semicolon ';'. _Delimiter: comma ','. `Delimiter: dot (full stop) '.'. aDelimiter: right curly bracket '}'. bDelimiter: left curly bracket '{'. c Delimiter: right square bracket ']'. dDelimiter: left square bracket '['. eDelimiter: right round bracket ')'. fDelimiter: left round bracket '('. gDelimiter: at sign '@'. h Keyword: 'exec'. (Python 2.x only) i Keyword: 'print'. (Python 2.x only) j Keyword: 'nonlocal' (Python 3.x only)  Version 2.x only: kKeyword: boolean disjunction 'or'.  Version 3.x only: lKeyword: boolean conjunction 'and'. m Keyword: 'not'. n Keyword: 'else'. o Keyword: 'del'. p Keyword: 'continue'. q Keyword: 'break'. r Keyword: 'pass'. s Keyword: 'import'. t Keyword: 'assert'. u Keyword: 'yield'. v Keyword: 'elif'. w Keyword: 'as'. x Keyword: 'with'. y Keyword: 'global'. z Keyword: 'from'. { Keyword: 'for'. | Keyword: 'None'. } Keyword: 'finally'. ~ Keyword: 'class'.  Keyword: 'lambda'.  Keyword: 'is'.  Keyword: 'in'.  Keyword: 'raise'.  Keyword: 'except'.  Keyword: 'try'.  Keyword: 'Return'.  Keyword: 'False'.  Keyword: 'True'.  Keyword: 'if'.  Keyword: 'while'.  Keyword: 'def'. Literal: imaginary number. Literal: floating point. Literal: long integer. Version 2 only. Literal: integer. Literal: byte string. Literal: string.  Identifier. Single line comment. &Line join (backslash at end of line).  Newline. Indentation: decrease. Indentation: increase. _Produce a string from a token containing detailed information. Mainly intended for debugging. 2Test if a token contains its literal source text. XProduce a string from a token which is suitable for printing as Python concrete syntax.   Invisible tokens yield an empty string. s,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~7~}|{zyxwvutsrqponmlkjihgfedcba`_^]\[ZYXWVUTSRQPONMLKJIHGFEDCBA@?>=<;:98,6543210/.-s, 6543210/.--./01234567~}|{zyxwvutsrqponmlkjihgfedcba`_^]\[ZYXWVUTSRQPONMLKJIHGFEDCBA@?>=<;:9889:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ ghc experimentalbjpop@csse.unimelb.edu.aughc experimentalbjpop@csse.unimelb.edu.au Augmented assignment operators. '//=' '>>=' '<<=' '^=' '|=' '&=' '*=' '%=' '/=' '*=' '-=' '+='  Operators. '.' '%' '~'- (bitwise inversion of its integer argument) '//' '/' '-' '+' '*' '>>' '<<' '&' '^' '|' 'not in' 'is not' 'is' 'in' ' '. Version 2 only. '!=' '<=' '>=' '==' '>' '<' '**' 'not' 'or' 'and' Slice compenent.  Expressions.  Version 2.6  8http://www.python.org/doc/2.6/reference/expressions.html.  Version 3.1  8http://www.python.org/doc/3.1/reference/expressions.html. <String conversion (backquoted expression). Version 2 only. Parenthesised expression. Starred expression. Version 3 only. Set comprehension. Version 3 only. Set. Dictionary comprehension. Version 3 only.  Dictionary. List. List comprehension.  Generator. Generator yield. Optional expression to yield. Tuple. Can be empty. )Anonymous function definition (lambda). Unary operator application. Binary operator application. Conditional expresison. -Expression to evaluate if condition is True. Boolean condition. .Expression to evaluate if condition is False. Slicing, for example 'w [x:y:z]'. Subscription, for example 'x [y]'. Function call. <Expression yielding a callable object (such as a function). Call arguments. 0Literal strings (to be concatentated together).  Literal byte string.   Ellipsis '...'.  Literal 'None' value. Literal boolean. Literal imaginary number. Literal floating point number. Long literal integer. Version 2 only. Literal integer.  Variable. !Comprehension iterator (either a 'for' or an 'if'). #Comprehension guard. )Comprehension 'for' component. 0^Comprehension. In version 3.x this can be used for lists, sets, dictionaries and generators. 6Exception clause. ;Exception handler. A@Arguments to function calls, class declarations and decorators. BKeyword argument. CKeyword name. DExcess keyword argument. EExcess positional argument. FOrdinary argument expression. GArgument expression. JTuple unpack parameter. Version 2 only. K%A (possibly nested) tuple parameter. MA variable name. QAFormal parameter of function definitions and lambda expressions.  Version 2.6:   Phttp://www.python.org/doc/2.6/reference/compound_stmts.html#function-definitions   >http://www.python.org/doc/2.6/reference/expressions.html#calls  Version 3.1:   Phttp://www.python.org/doc/3.1/reference/compound_stmts.html#function-definitions   >http://www.python.org/doc/3.1/reference/expressions.html#calls RTuple unpack. Version 2 only. SThe tuple to unpack. TFMarker for the end of positional parameters (not a parameter itself). USExcess keyword parameter (double asterisk before its name in the concrete syntax). VWExcess positional parameter (single asterisk before its name in the concrete syntax). WOrdinary named parameter. XParameter name. YOptional annotation. ZOptional default value. ] Decorator. _Decorator name. `Decorator arguments. cThe argument for a raise statement. dVersion 2 only. e.Optional expression to evaluate, and optional 'from' clause. Version 3 only. g Statements.  Simple statements:  Version 2.6  9http://www.python.org/doc/2.6/reference/simple_stmts.html  Version 3.1  9http://www.python.org/doc/3.1/reference/simple_stmts.html  Compound statements:  Version 2.6  ;http://www.python.org/doc/2.6/reference/compound_stmts.html  Version 3.1  ;http://www.python.org/doc/3.1/reference/compound_stmts.html hExec statement. Version 2 only. iExpression to exec. jAGlobal and local environments to evaluate the expression within. kPrint statement. Version 2 only. lOptional chevron (>>) mArguments to print nDoes it end in a comma? o Assertion. pExpressions being asserted. qNonlocal declaration. Version 3.x only. roVariables declared nonlocal in the current block (their binding comes from bound the nearest enclosing scope). sGlobal declaration. t0Variables declared global in the current block. uExpression statement. wDel statement (delete). xItems to delete. yContinue statement (may only occur syntactically nested in a for or while loop, but not nested in a function or class definition or finally clause within that loop). zBreak statement (may only occur syntactically nested in a for or while loop, but not nested in a function or class definition within that loop). {"Pass statement (null operation). |&With statement (context management). }2Context expression(s) (yields a context manager). ~Suite to be managed. 'Raise statement (exception throwing). %Try statement (exception handling).  Try clause. Exception handlers. ^Possibly empty else clause, executed if and when control flows off the end of the try clause. Possibly empty finally clause. RReturn statement (may only occur syntactically nested in a function definition). 6Optional expression to evaluate and return to caller. -Decorated definition of a function or class.  Decorators. .Function or class definition to be decorated. !Augmented assignment statement. Entity to assign to. !Assignment operator (for example '+='). Expression to evaluate. Assignment statement. Entity to assign to. Expression to evaluate. 'Conditional statement (if-elif-else). )Sequence of if-elif conditional clauses. *Possibly empty unconditional else clause. Class definition.  Class name. <Class argument list. In version 2.x this is only ArgExprs.  Class body. Function definition. Function name. Function parameter list. Optional result annotation. Function body.  For loop. Loop variables. Loop generator.  Loop body  Else clause.  While loop. Loop condition.  Loop body.  Else clause. From ... import statement. Module to import from. Items to import. Import statement. Items to import. 3A reference to the module to import from using the 'from ... import' construct. Items imported using the 'from ... import' construct. 1Import a specific list of items from the module. ,Import everything exported from the module. An entity imported using the 'from ... import' construct.  Version 2.6  Nhttp://www.python.org/doc/2.6/reference/simple_stmts.html#the-import-statement  Version 3.1  Nhttp://www.python.org/doc/3.1/reference/simple_stmts.html#the-import-statement "The name of the entity imported. -An optional name to refer to the entity (the 'as' name). An entity imported using the 'import' keyword.  Version 2.6  Nhttp://www.python.org/doc/2.6/reference/simple_stmts.html#the-import-statement  Version 3.1  Nhttp://www.python.org/doc/3.1/reference/simple_stmts.html#the-import-statement The name of module to import. -An optional name to refer to the entity (the 'as' name). 3A compound name constructed with the dot operator. QA block of statements. A suite is a group of statements controlled by a clause, # for example, the body of a loop.  Version 2.6  ;http://www.python.org/doc/2.6/reference/compound_stmts.html  Version 3.1  ;http://www.python.org/doc/3.1/reference/compound_stmts.html  A module (Python source file).  Version 2.6  @http://www.python.org/doc/2.6/reference/toplevel_components.html  Version 3.1  @http://www.python.org/doc/3.1/reference/toplevel_components.html 5A module is just a sequence of top-level statements.  Identifier. 6Convenient access to annotations in annotated types. ;Given an annotated type, project out its annotation value. 4      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~g|{zywusqokh}~xvtrplmnijfQWVUTRXYZ[XY[XY[[SZ[PJMKNOLOI]^_`a\     AFEDBGHGHGHCGH@;<=>?:67895cedb01234/)*+,-.(#$%&'" !!48 b           !! !"#$%&'$%&'()*+,-.*+,-./01234123456789789:;<=>?<=>?@A FEDBGHGHGHCGHBCDEFGHIJMKNOLOKLMNOPQWVUTRXYZ[XY[XY[[SZ[RSTUVWXYZ[\]^_`a^_`abceddefg\|{zywusqokh}~xvtrplmnijhijklmnopqrstuvwxyz{|}~ghc experimentalbjpop@csse.unimelb.edu.aughc experimentalbjpop@csse.unimelb.edu.auAA generic error containing a string message. No source location. AAn error from the lexer. Character found where it should not be. jAn error from the parser. Token found where it should not be. Note: tokens contain their own source span. ghc experimentalbjpop@csse.unimelb.edu.aughc experimentalbjpop@csse.unimelb.edu.au+ !"#$%&'()*+,-./0123456789:;<=>?@ABC'  !"#$%&' !"#$%&'()*+,-./0123456789:;<=>?@ABCghc experimentalbjpop@csse.unimelb.edu.au.DEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopq.D JFEKLGHILLEFGHIJKLM SQNTURUOPUNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqghc experimentalbjpop@csse.unimelb.edu.au"rstuvwxyz{|}~!rstuwvvwxyz{|}~ghc experimentalbjpop@csse.unimelb.edu.aughc experimentalbjpop@csse.unimelb.edu.auBParse a string into a list of Python Tokens, or return an error. KTry to lex the first token in an input string. Return either a parse error P or a pair containing the next token and the rest of the input after the token. ghc experimentalbjpop@csse.unimelb.edu.aughc experimentalbjpop@csse.unimelb.edu.auTParse a whole Python source file. Return comments in addition to the parsed module. Parse one compound statement, or a sequence of simple statements. Generally used for interactive input, such as from the command line of an interpreter. Return comments in addition to the parsed statements. 5Parse an expression. Generally used as input for the 'eval'B primitive. Return comments in addition to the parsed expression. ghc experimentalbjpop@csse.unimelb.edu.aughc experimentalbjpop@csse.unimelb.edu.au ghc experimentalbjpop@csse.unimelb.edu.auBParse a string into a list of Python Tokens, or return an error. KTry to lex the first token in an input string. Return either a parse error P or a pair containing the next token and the rest of the input after the token. ghc experimentalbjpop@csse.unimelb.edu.au ghc experimentalbjpop@csse.unimelb.edu.auTParse a whole Python source file. Return comments in addition to the parsed module. Parse one compound statement, or a sequence of simple statements. Generally used for interactive input, such as from the command line of an interpreter. Return comments in addition to the parsed statements. 5Parse an expression. Generally used as input for the 'eval'B primitive. Return comments in addition to the parsed expression. ghc experimentalbjpop@csse.unimelb.edu.aughc experimentalbjpop@csse.unimelb.edu.au       !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<==>?@ABBCDEFGHHIJKLMMNOPQQRSTUVWXYZ[\]^__`abcdefghijklmnopqqrstuvwxyz{|}~                                                               ! " #$%%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~language-python-0.2#Language.Python.Common.StringEscapeLanguage.Python.Common.Pretty"Language.Python.Common.SrcLocationLanguage.Python.Common.TokenLanguage.Python.Common.AST!Language.Python.Common.ParseErrorLanguage.Python.Version3.LexerLanguage.Python.Version3.ParserLanguage.Python.Version2.LexerLanguage.Python.Version2.Parserpretty-1.0.1.0Text.PrettyPrint.HughesPJ"Language.Python.Common.PrettyToken Language.Python.Common.PrettyAST'Language.Python.Common.PrettyParseError"Language.Python.Common.ParserMonad"Language.Python.Common.ParserUtils!Language.Python.Common.LexerUtils%Language.Python.Version3.Parser.Lexer&Language.Python.Version3.Parser.ParserLanguage.Python.Version3%Language.Python.Version2.Parser.Lexer&Language.Python.Version2.Parser.ParserLanguage.Python.Version2Language.Python.CommonunescapeStringunescapeRawString octalDigits hexDigitsPrettypretty prettyText prettyPrefixparensIfperhaps commaListSrcSpan SpanEmpty SpanPoint span_column SpanMultiLinespan_start_row span_end_row SpanCoLinear span_filenamespan_rowspan_start_columnspan_end_columnSpangetSpan SrcLocation NoLocationSloc sloc_filenamesloc_row sloc_columnspanninginitialSrcLocation decColumn incColumnincTabincLinespanStartPoint mkSrcSpancombineSrcSpansstartRowendRowstartColendCol TokenClass AssignmentOperatorStringKeywordLayoutBracket Punctuation IdentifierNumberCommentTokenEOFTokenNotEqualsV2TokenNotEqualsToken TildeToken FloorDivToken ModuloTokenShiftRightTokenShiftLeftTokenBinaryAndTokenXorToken BinaryOrToken ExponentTokenLessThanEqualsTokenGreaterThanEqualsToken EqualityToken LessThanTokenGreaterThanTokenDivToken MultToken MinusToken PlusTokenBackQuoteTokenFloorDivAssignTokenRightShiftAssignTokenLeftShiftAssignTokenBinXorAssignTokenBinOrAssignTokenBinAndAssignTokenPowAssignTokenModAssignTokenDivAssignTokenMultAssignTokenMinusAssignTokenPlusAssignToken AssignTokenRightArrowToken EllipsisToken ColonTokenSemiColonToken CommaTokenDotTokenRightBraceTokenLeftBraceTokenRightSquareBracketTokenLeftSquareBracketTokenRightRoundBracketTokenLeftRoundBracketTokenAtToken ExecToken PrintToken NonLocalTokenOrTokenAndTokenNotToken ElseToken DeleteToken ContinueToken BreakToken PassToken ImportToken AssertToken YieldToken ElifTokenAsToken WithToken GlobalToken FromTokenForToken NoneToken FinallyToken ClassToken LambdaTokenIsTokenInToken RaiseToken ExceptTokenTryToken ReturnToken FalseToken TrueTokenIfToken WhileTokenDefTokenImaginaryToken FloatToken token_doubleLongIntegerToken IntegerToken token_integerByteStringToken StringTokenIdentifierToken CommentToken token_literal LineJoinToken NewlineToken DedentToken IndentToken token_spandebugTokenString hasLiteral classifyToken tokenString AssignOpSpanAssignOpFloorDivAssignRightShiftAssignLeftShiftAssign BinXorAssign BinOrAssign BinAndAssign PowAssign ModAssign DivAssign MultAssign MinusAssign PlusAssignassignOp_annotOpSpanOpDotModuloInvert FloorDivideDivideMinusPlusMultiply ShiftRight ShiftLeft BinaryAndXorBinaryOrNotInIsNotIsIn NotEqualsV2 NotEqualsLessThanEqualsGreaterThanEqualsEquality GreaterThanLessThanExponentNotOrAndop_annot SliceSpanSlice SliceEllipsis SliceExpr slice_expr SliceProper slice_lower slice_upper slice_stride slice_annotExprSpanExprStringConversionbackquoted_expr expr_anotParen paren_exprStarred starred_exprSetCompset_comprehensionSet set_exprsDictCompdict_comprehension Dictionary dict_mappingsList list_exprsListComplist_comprehension Generatorgen_comprehensionYield yield_exprTuple tuple_exprsLambda lambda_args lambda_bodyUnaryOpop_argBinaryOpoperator left_op_arg right_op_argCondExprce_true_branch ce_conditionce_false_branch SlicedExprsliceeslices Subscript subscripteesubscript_exprsCallcall_fun call_argsStringsstrings_strings ByteStringsbyte_string_stringsEllipsisNoneBool bool_value Imaginaryimaginary_valueFloat float_valueLongIntInt int_value expr_literalVar var_ident expr_annot CompIterSpanCompIterIterIf comp_iter_ifIterFor comp_iter_forcomp_iter_annot CompIfSpanCompIfcomp_if comp_if_iter comp_if_annot CompForSpanCompForcomp_for_exprs comp_in_expr comp_for_itercomp_for_annotComprehensionSpan Comprehensioncomprehension_exprcomprehension_forcomprehension_annotExceptClauseSpan ExceptClause except_clauseexcept_clause_annot HandlerSpanHandlerhandler_clause handler_suite handler_annot ArgumentSpanArgument ArgKeyword arg_keywordArgVarArgsKeyword ArgVarArgsPosArgExprarg_expr arg_annotParamTupleSpan ParamTuple param_tupleParamTupleNameparam_tuple_nameparam_tuple_annot ParameterSpan Parameter UnPackTupleparam_unpack_tuple EndPositionalVarArgsKeyword VarArgsPosParam param_nameparam_py_annotation param_default param_annot DecoratorSpan Decoratordecorator_namedecorator_argsdecorator_annot RaiseExprSpan RaiseExprRaiseV2RaiseV3 StatementSpan StatementExec exec_exprexec_globals_localsPrint print_chevron print_exprsprint_trailing_commaAssert assert_exprsNonLocal nonLocal_varsGlobal global_varsStmtExpr stmt_exprDelete del_exprsContinueBreakPassWith with_context with_bodyRaise raise_exprTrytry_body try_exceptstry_else try_finallyReturn return_expr Decorateddecorated_decorators decorated_defAugmentedAssign aug_assign_to aug_assign_opaug_assign_exprAssign assign_to assign_expr Conditional cond_guards cond_elseClass class_name class_args class_bodyFunfun_namefun_argsfun_result_annotationfun_bodyFor for_targets for_generatorfor_bodyfor_elseWhile while_cond while_body while_else FromImport from_module from_itemsImport import_items stmt_annotImportRelativeSpanImportRelativeimport_relative_dotsimport_relative_moduleimport_relative_annot FromItemsSpan FromItemsfrom_items_itemsImportEverythingfrom_items_annot FromItemSpanFromItemfrom_item_name from_as_namefrom_item_annotImportItemSpan ImportItemimport_item_nameimport_as_nameimport_item_annotDottedNameSpan DottedName SuiteSpanSuite ModuleSpanModule IdentSpanIdent ident_string ident_annot Annotatedannot ParseErrorStrErrorUnexpectedCharUnexpectedTokenlex lexOneToken parseModule parseStmt parseExprDoc fullRenderrender renderStylefcatfsepcatsep<+><>$+$$$nest zeroWidthTextptexttextcharisEmptyempty punctuatehangvcathsephcatbracesbracketsparens doubleQuotesquotesrationaldoublefloatintegerintrbracelbracerbracklbrackrparenlparenequalsspacecommacolonsemistyleribbonsPerLine lineLengthmodeStylePageMode ZigZagModeLeftMode OneLineModeModeChrStrPStr TextDetailsP ParseStatelocationinput previousTokenstartCodeStack indentStack parenStacklastEOLcomments spanError initialState execParserexecParserKeepComments runParserreturnPthenP setLastEOL getLastEOL setLocation getLocationgetInputsetInput getLastToken setLastToken pushStartCode popStartCode getStartCode pushIndent popIndent getIndentgetIndentStackDepth pushParenpopParengetParengetParenStackDepth addComment getCommentsSubscriptSliceEllipsisSubscriptSlicesubscript_slice_span1subscript_slice_span2subscript_slice_span3 SubscriptExprsubscript_exprsubscript_spanTrailer TrailerDottrailer_dot_identdot_spanTrailerSubscript trailer_subs TrailerCalltrailer_call_args trailer_spanmakeConditionalExpr makeBinOp parseError isProperSlicesubscriptToSlicesubscriptToExpr addTrailermakeTupleOrExprmakeAssignmentOrExprmakeTry makeParam makeStarParammakeStarStarParammakeTupleParammakeComprehension makeListFormmakeSetmakeDictionary fromEither makeDecorator makeDecoratedmakeFun makeReturnmakeParenOrGenerator makePrint makeRelativecheckArgumentscheckParameters AlexInputAction StartCodeBOBOLBOFlineJoin endOfLine bolEndOfLine dedentation indentation symbolTokentokenendOfFileToken dedentToken newlineToken atEOLorEOFnotEOF readBinary readFloat readFloatRestmkString stringTokenrawStringTokenbyteStringTokenrawByteStringToken openParen closeParen matchParenalexInputPrevChar alexGetCharmoveChar lexicalError readOctNoOinitStartCodeStacklexTokenlexContparseFileInputparseSingleInput parseEval