�
�S�gj! � �r � d Z ed� ZdZdZdddd�Zdg d�fgd g d
�fgdg d�fgd�Zd
d
d
d�Zdddd�Zi Z y)z3.10)q�AND�ANDEQUAL�ARROW�AUTO�BREAK�CASE�CHAR�
CHAR_CONST�COLON�COMMA�CONDOP�CONST�CONTINUE�DEFAULT�DIVEQUAL�DIVIDE�DO�DOUBLE�ELLIPSIS�ELSE�ENUM�EQ�EQUALS�EXTERN�FLOAT�FLOAT_CONST�FOR�GE�GOTO�GT�HEX_FLOAT_CONST�ID�IF�INLINE�INT�
INT_CONST_BIN�INT_CONST_CHAR�
INT_CONST_DEC�
INT_CONST_HEX�
INT_CONST_OCT�LAND�LBRACE�LBRACKET�LE�LNOT�LONG�LOR�LPAREN�LSHIFT�LSHIFTEQUAL�LT�MINUS�
MINUSEQUAL�
MINUSMINUS�MOD�MODEQUAL�NE�NOT�OFFSETOF�OR�OREQUAL�PERIOD�PLUS� PLUSEQUAL�PLUSPLUS�PPHASH�PPPRAGMA�PPPRAGMASTR�RBRACE�RBRACKET�REGISTER�RESTRICT�RETURN�RPAREN�RSHIFT�RSHIFTEQUAL�SEMI�SHORT�SIGNED�SIZEOF�STATIC�STRING_LITERAL�STRUCT�SWITCH�TIMES�
TIMESEQUAL�TYPEDEF�TYPEID�
U16CHAR_CONST�U16STRING_LITERAL�
U32CHAR_CONST�U32STRING_LITERAL�U8CHAR_CONST�U8STRING_LITERAL�UNION�UNSIGNED�VOID�VOLATILE�WCHAR_CONST�WHILE�WSTRING_LITERAL�XOR�XOREQUAL�_ALIGNAS�_ALIGNOF�_ATOMIC�_BOOL�_COMPLEX� _NORETURN�_PRAGMA�_STATIC_ASSERT�
_THREAD_LOCAL�__INT128�@ � � inclusive� exclusive)�INITIAL�ppline�pppragmaa� (?P<t_PPHASH>[ \t]*\#)|(?P<t_NEWLINE>\n+)|(?P<t_LBRACE>\{)|(?P<t_RBRACE>\})|(?P<t_FLOAT_CONST>((((([0-9]*\.[0-9]+)|([0-9]+\.))([eE][-+]?[0-9]+)?)|([0-9]+([eE][-+]?[0-9]+)))[FfLl]?))|(?P<t_HEX_FLOAT_CONST>(0[xX]([0-9a-fA-F]+|((([0-9a-fA-F]+)?\.[0-9a-fA-F]+)|([0-9a-fA-F]+\.)))([pP][+-]?[0-9]+)[FfLl]?))|(?P<t_INT_CONST_HEX>0[xX][0-9a-fA-F]+(([uU]ll)|([uU]LL)|(ll[uU]?)|(LL[uU]?)|([uU][lL])|([lL][uU]?)|[uU])?)|(?P<t_INT_CONST_BIN>0[bB][01]+(([uU]ll)|([uU]LL)|(ll[uU]?)|(LL[uU]?)|([uU][lL])|([lL][uU]?)|[uU])?)|(?P<t_BAD_CONST_OCT>0[0-7]*[89])|(?P<t_INT_CONST_OCT>0[0-7]*(([uU]ll)|([uU]LL)|(ll[uU]?)|(LL[uU]?)|([uU][lL])|([lL][uU]?)|[uU])?)|(?P<t_INT_CONST_DEC>(0(([uU]ll)|([uU]LL)|(ll[uU]?)|(LL[uU]?)|([uU][lL])|([lL][uU]?)|[uU])?)|([1-9][0-9]*(([uU]ll)|([uU]LL)|(ll[uU]?)|(LL[uU]?)|([uU][lL])|([lL][uU]?)|[uU])?))|(?P<t_INT_CONST_CHAR>'([^'\\\n]|(\\(([a-wyzA-Z._~!=&\^\-\\?'"]|x(?![0-9a-fA-F]))|(\d+)(?!\d)|(x[0-9a-fA-F]+)(?![0-9a-fA-F])))){2,4}')|(?P<t_CHAR_CONST>'([^'\\\n]|(\\(([a-wyzA-Z._~!=&\^\-\\?'"]|x(?![0-9a-fA-F]))|(\d+)(?!\d)|(x[0-9a-fA-F]+)(?![0-9a-fA-F]))))')|(?P<t_WCHAR_CONST>L'([^'\\\n]|(\\(([a-wyzA-Z._~!=&\^\-\\?'"]|x(?![0-9a-fA-F]))|(\d+)(?!\d)|(x[0-9a-fA-F]+)(?![0-9a-fA-F]))))')|(?P<t_U8CHAR_CONST>u8'([^'\\\n]|(\\(([a-wyzA-Z._~!=&\^\-\\?'"]|x(?![0-9a-fA-F]))|(\d+)(?!\d)|(x[0-9a-fA-F]+)(?![0-9a-fA-F]))))')|(?P<t_U16CHAR_CONST>u'([^'\\\n]|(\\(([a-wyzA-Z._~!=&\^\-\\?'"]|x(?![0-9a-fA-F]))|(\d+)(?!\d)|(x[0-9a-fA-F]+)(?![0-9a-fA-F]))))')|(?P<t_U32CHAR_CONST>U'([^'\\\n]|(\\(([a-wyzA-Z._~!=&\^\-\\?'"]|x(?![0-9a-fA-F]))|(\d+)(?!\d)|(x[0-9a-fA-F]+)(?![0-9a-fA-F]))))')|(?P<t_UNMATCHED_QUOTE>('([^'\\\n]|(\\(([a-wyzA-Z._~!=&\^\-\\?'"]|x(?![0-9a-fA-F]))|(\d+)(?!\d)|(x[0-9a-fA-F]+)(?![0-9a-fA-F]))))*\n)|('([^'\\\n]|(\\(([a-wyzA-Z._~!=&\^\-\\?'"]|x(?![0-9a-fA-F]))|(\d+)(?!\d)|(x[0-9a-fA-F]+)(?![0-9a-fA-F]))))*$))|(?P<t_BAD_CHAR_CONST>('([^'\\\n]|(\\(([a-wyzA-Z._~!=&\^\-\\?'"]|x(?![0-9a-fA-F]))|(\d+)(?!\d)|(x[0-9a-fA-F]+)(?![0-9a-fA-F]))))[^'
]+')|('')|('([\\][^a-zA-Z._~^!=&\^\-\\?'"x0-9])[^'\n]*'))|(?P<t_WSTRING_LITERAL>L"([^"\\\n]|(\\[0-9a-zA-Z._~!=&\^\-\\?'"]))*")|(?P<t_U8STRING_LITERAL>u8"([^"\\\n]|(\\[0-9a-zA-Z._~!=&\^\-\\?'"]))*")|(?P<t_U16STRING_LITERAL>u"([^"\\\n]|(\\[0-9a-zA-Z._~!=&\^\-\\?'"]))*")|(?P<t_U32STRING_LITERAL>U"([^"\\\n]|(\\[0-9a-zA-Z._~!=&\^\-\\?'"]))*")|(?P<t_BAD_STRING_LITERAL>"([^"\\\n]|(\\[0-9a-zA-Z._~!=&\^\-\\?'"]))*([\\][^a-zA-Z._~^!=&\^\-\\?'"x0-9])([^"\\\n]|(\\[0-9a-zA-Z._~!=&\^\-\\?'"]))*")|(?P<t_ID>[a-zA-Z_$][0-9a-zA-Z_$]*)|(?P<t_STRING_LITERAL>"([^"\\\n]|(\\[0-9a-zA-Z._~!=&\^\-\\?'"]))*")|(?P<t_ELLIPSIS>\.\.\.)|(?P<t_LOR>\|\|)|(?P<t_PLUSPLUS>\+\+)|(?P<t_LSHIFTEQUAL><<=)|(?P<t_OREQUAL>\|=)|(?P<t_PLUSEQUAL>\+=)|(?P<t_RSHIFTEQUAL>>>=)|(?P<t_TIMESEQUAL>\*=)|(?P<t_XOREQUAL>\^=)|(?P<t_ANDEQUAL>&=)|(?P<t_ARROW>->)|(?P<t_CONDOP>\?)|(?P<t_DIVEQUAL>/=)|(?P<t_EQ>==)|(?P<t_GE>>=)|(?P<t_LAND>&&)|(?P<t_LBRACKET>\[)|(?P<t_LE><=)|(?P<t_LPAREN>\()|(?P<t_LSHIFT><<)|(?P<t_MINUSEQUAL>-=)|(?P<t_MINUSMINUS>--)|(?P<t_MODEQUAL>%=)|(?P<t_NE>!=)|(?P<t_OR>\|)|(?P<t_PERIOD>\.)|(?P<t_PLUS>\+)|(?P<t_RBRACKET>\])|(?P<t_RPAREN>\))|(?P<t_RSHIFT>>>)|(?P<t_TIMES>\*)|(?P<t_XOR>\^)|(?P<t_AND>&)|(?P<t_COLON>:)|(?P<t_COMMA>,)|(?P<t_DIVIDE>/)|(?P<t_EQUALS>=)|(?P<t_GT>>)|(?P<t_LNOT>!)|(?P<t_LT><)|(?P<t_MINUS>-)|(?P<t_MOD>%)|(?P<t_NOT>~)|(?P<t_SEMI>;))�N)�t_PPHASHrC )� t_NEWLINE�NEWLINE)�t_LBRACEr+ )�t_RBRACErF )�
t_FLOAT_CONSTr NNNNNNNNN)�t_HEX_FLOAT_CONSTr NNNNNNN)�t_INT_CONST_HEXr( NNNNNNN)�t_INT_CONST_BINr% NNNNNNN)�t_BAD_CONST_OCT�
BAD_CONST_OCT)�t_INT_CONST_OCTr) NNNNNNN)�t_INT_CONST_DECr' |