. True ['Arith_Amp', 'Arith_AmpEqual', 'Arith_Bang', 'Arith_Caret', 'Arith_CaretEqual', 'Arith_Colon', 'Arith_Comma', 'Arith_DAmp', 'Arith_DEqual', 'Arith_DGreat', 'Arith_DGreatEqual', 'Arith_DLess', 'Arith_DLessEqual', 'Arith_DMinus', 'Arith_DPipe', 'Arith_DPlus', 'Arith_DStar', 'Arith_Equal', 'Arith_Great', 'Arith_GreatEqual', 'Arith_LBracket', 'Arith_LParen', 'Arith_Less', 'Arith_LessEqual', 'Arith_Minus', 'Arith_MinusEqual', 'Arith_NEqual', 'Arith_Percent', 'Arith_PercentEqual', 'Arith_Pipe', 'Arith_PipeEqual', 'Arith_Plus', 'Arith_PlusEqual', 'Arith_QMark', 'Arith_RBrace', 'Arith_RBracket', 'Arith_RParen', 'Arith_Semi', 'Arith_Slash', 'Arith_SlashEqual', 'Arith_Star', 'Arith_StarEqual', 'Arith_Tilde', 'Assign_Declare', 'Assign_Local', 'Assign_None', 'Assign_Readonly', 'Assign_Typeset', 'Backtick_Other', 'Backtick_Quoted', 'Backtick_Right', 'BoolBinary_DEqual', 'BoolBinary_Equal', 'BoolBinary_EqualTilde', 'BoolBinary_GlobDEqual', 'BoolBinary_GlobEqual', 'BoolBinary_GlobNEqual', 'BoolBinary_NEqual', 'BoolBinary_ef', 'BoolBinary_eq', 'BoolBinary_ge', 'BoolBinary_gt', 'BoolBinary_le', 'BoolBinary_lt', 'BoolBinary_ne', 'BoolBinary_nt', 'BoolBinary_ot', 'BoolUnary_G', 'BoolUnary_L', 'BoolUnary_N', 'BoolUnary_O', 'BoolUnary_R', 'BoolUnary_S', 'BoolUnary_a', 'BoolUnary_b', 'BoolUnary_c', 'BoolUnary_d', 'BoolUnary_e', 'BoolUnary_f', 'BoolUnary_g', 'BoolUnary_h', 'BoolUnary_n', 'BoolUnary_o', 'BoolUnary_p', 'BoolUnary_r', 'BoolUnary_s', 'BoolUnary_t', 'BoolUnary_u', 'BoolUnary_v', 'BoolUnary_w', 'BoolUnary_x', 'BoolUnary_z', 'Char_BadBackslash', 'Char_Hex', 'Char_Literals', 'Char_Octal3', 'Char_Octal4', 'Char_OneChar', 'Char_Stop', 'Char_Unicode4', 'Char_Unicode8', 'ControlFlow_Break', 'ControlFlow_Continue', 'ControlFlow_Exit', 'ControlFlow_Return', 'Eof_Backtick', 'Eof_RParen', 'Eof_Real', 'Eol_Tok', 'ExtGlob_At', 'ExtGlob_Bang', 'ExtGlob_Plus', 'ExtGlob_QMark', 'ExtGlob_Star', 'Fd_Name', 'Fd_Number', 'Glob_BadBackslash', 'Glob_Bang', 'Glob_Caret', 'Glob_CleanLiterals', 'Glob_Eof', 'Glob_EscapedChar', 'Glob_LBracket', 'Glob_OtherLiteral', 'Glob_QMark', 'Glob_RBracket', 'Glob_Star', 'History_Num', 'History_Op', 'History_Other', 'History_Search', 'Ignored_Comment', 'Ignored_LineCont', 'Ignored_Space', 'KW_Bang', 'KW_Case', 'KW_Const', 'KW_DLeftBracket', 'KW_Do', 'KW_Done', 'KW_Elif', 'KW_Else', 'KW_Esac', 'KW_Fi', 'KW_For', 'KW_Fork', 'KW_Func', 'KW_Function', 'KW_If', 'KW_In', 'KW_Match', 'KW_Proc', 'KW_Set', 'KW_SetGlobal', 'KW_Shell', 'KW_Then', 'KW_Time', 'KW_Until', 'KW_Var', 'KW_While', 'KW_With', 'Left_ArithSub', 'Left_ArithSub2', 'Left_Backtick', 'Left_BraceSub', 'Left_BracketSub', 'Left_CommandSub', 'Left_DollarDoubleQuote', 'Left_DollarSingleQuote', 'Left_DoubleQuote', 'Left_ParenSub', 'Left_ProcSubIn', 'Left_ProcSubOut', 'Left_SingleQuote', 'Left_VarSub', 'Lit_ArithVarLike', 'Lit_ArrayLhsClose', 'Lit_ArrayLhsOpen', 'Lit_At', 'Lit_Chars', 'Lit_Comma', 'Lit_CompDummy', 'Lit_DRightBracket', 'Lit_Digits', 'Lit_EscapedChar', 'Lit_LBrace', 'Lit_Other', 'Lit_Percent', 'Lit_Pound', 'Lit_RBrace', 'Lit_RegexMeta', 'Lit_Slash', 'Lit_TildeLike', 'Lit_VarLike', 'Node_AndOr', 'Node_Assign', 'Node_BinaryExpr', 'Node_Block', 'Node_Command', 'Node_ConstInt', 'Node_ForEach', 'Node_ForExpr', 'Node_Fork', 'Node_FuncCall', 'Node_FuncDef', 'Node_NoOp', 'Node_PostDMinus', 'Node_PostDPlus', 'Node_Subshell', 'Node_TernaryExpr', 'Node_UnaryExpr', 'Node_UnaryMinus', 'Node_UnaryPlus', 'Op_Amp', 'Op_Bang', 'Op_DAmp', 'Op_DLeftParen', 'Op_DPipe', 'Op_DRightParen', 'Op_DSemi', 'Op_LBrace', 'Op_LBracket', 'Op_LParen', 'Op_Newline', 'Op_Pipe', 'Op_PipeAmp', 'Op_RBrace', 'Op_RBracket', 'Op_RParen', 'Op_Semi', 'PS_BadBackslash', 'PS_LBrace', 'PS_Literals', 'PS_Octal3', 'PS_RBrace', 'PS_Subst', 'Redir_AndDGreat', 'Redir_AndGreat', 'Redir_Clobber', 'Redir_DGreat', 'Redir_DGreatPlus', 'Redir_DLess', 'Redir_DLessDash', 'Redir_Great', 'Redir_GreatAnd', 'Redir_GreatPlus', 'Redir_Less', 'Redir_LessAnd', 'Redir_LessGreat', 'Redir_TLess', 'Right_ArithSub', 'Right_ArrayLiteral', 'Right_Backtick', 'Right_CasePat'.., 'Right_CommandSub', 'Right_DollarDoubleQuote', 'Right_DollarSingleQuote', 'Right_DoubleQuote', 'Right_ExtGlob', 'Right_FuncDef', 'Right_SingleQuote', 'Right_Subshell', 'Right_VarSub', 'Undefined_Tok', 'Unknown_Tok', 'VOp0_A', 'VOp0_E', 'VOp0_P', 'VOp0_Q', 'VOp0_a', 'VOp1_Caret', 'VOp1_Comma', 'VOp1_DCaret', 'VOp1_DComma', 'VOp1_DPercent', 'VOp1_DPound', 'VOp1_Percent', 'VOp1_Pound', 'VOp2_Colon', 'VOp2_LBracket', 'VOp2_RBracket', 'VOp2_Slash', 'VSub_At', 'VSub_Bang', 'VSub_Dollar', 'VSub_DollarName', 'VSub_Hyphen', 'VSub_Name', 'VSub_Number', 'VSub_Pound', 'VSub_QMark', 'VSub_Star', 'VTest_ColonEquals', 'VTest_ColonHyphen', 'VTest_ColonPlus', 'VTest_ColonQMark', 'VTest_Equals', 'VTest_Hyphen', 'VTest_Plus', 'VTest_QMark', 'WS_Space', 'Word_Compound', '__class__', '__delattr__', '__dict__', '__doc__', '__format__', '__getattribute__', '__hash__', '__init__', '__module__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', '__weakref__'] {'-G': , '-L': , '-O': , '-N': , '-S': , '-R': , '-e': , '-d': , '-g': , '-f': , '-a': , '-c': , '-b': , '-o': , '-n': , '-h': , '-u': , '-t': , '-w': , '-v': , '-p': , '-s': , '-r': , '-x': , '-z': } STATS: 299 tokens in 31 groups: [1, 1, 1, 3, 3, 1, 19, 3, 4, 17, 14, 2, 14, 13, 5, 10, 8, 5, 8, 4, 43, 19, 1, 27, 5, 4, 9, 11, 6, 25, 13] 13 BIG groups: [9, 10, 11, 13, 13, 14, 14, 17, 19, 19, 25, 27, 43] (token id:Op_Newline val:'\n' span_id:None) -- Arith Assign Backtick BoolBinary BoolUnary Char ControlFlow Eof Eol ExtGlob Fd Glob History Ignored KW Left Lit Node Op PS Redir Right Undefined Unknown VOp0 VOp1 VOp2 VSub VTest WS Word Number of Kinds: 31 Number of IDs: 302 ['AddBoolKinds', 'AddKinds', 'Dict', 'IdSpec', 'List', 'Optional', 'SetupTestBuiltin', 'TYPE_CHECKING', 'Tuple', '_BINARY_INT', '_BINARY_PATH', '_Dash', '_UNARY_OTHER_CHARS', '_UNARY_PATH_CHARS', '_UNARY_STR_CHARS', '__builtins__', '__doc__', '__file__', '__name__', '__package__', 'bool_arg_type_e', 'bool_arg_type_t', 'log', 'print_function', 'util']