LETTER ::= 'Z' LETTER ::= 'Y' LETTER ::= 'X' LETTER ::= 'W' LETTER ::= 'V' LETTER ::= 'U' LETTER ::= 'T' LETTER ::= 'S' LETTER ::= 'R' LETTER ::= 'Q' LETTER ::= 'P' LETTER ::= 'O' LETTER ::= 'N' LETTER ::= 'M' LETTER ::= 'L' LETTER ::= 'K' LETTER ::= 'J' LETTER ::= 'I' LETTER ::= 'H' LETTER ::= 'G' LETTER ::= 'F' LETTER ::= 'E' LETTER ::= 'D' LETTER ::= 'C' LETTER ::= 'B' LETTER ::= 'A' LETTERLIST ::= LETTERLIST LETTER LETTERLIST ::= LETTER IDENT ::= LETTER LETTERLIST DIGIT ::= '9' DIGIT ::= '8' DIGIT ::= '7' DIGIT ::= '6' DIGIT ::= '5' DIGIT ::= '4' DIGIT ::= '3' DIGIT ::= '2' DIGIT ::= '1' DIGIT ::= '0' DIGITLIST ::= DIGITLIST DIGIT DIGITLIST ::= DIGIT CONST ::= DIGITLIST VALUE ::= '(' EXPRESSION ')' VALUE ::= CONST VALUE ::= IDENT TERM ::= VALUE TERM ::= VALUE '+' '+' TERM ::= '+' '+' VALUE TERM ::= VALUE '-' '-' TERM ::= '-' '-' VALUE TERM ::= '!' VALUE TERM ::= '-' VALUE TERM ::= '&' VALUE TERM ::= '*' VALUE TERM ::= '~' VALUE DIVOP ::= TERM DIVOP ::= TERM '%' TERM DIVOP ::= TERM '/' TERM DIVOP ::= TERM '*' TERM ADDOP ::= DIVOP ADDOP ::= DIVOP '-' DIVOP ADDOP ::= DIVOP '+' DIVOP SHIFTOP ::= ADDOP SHIFTOP ::= ADDOP '<' '<' ADDOP SHIFTOP ::= ADDOP '>' '>' ADDOP COMPOP ::= SHIFTOP COMPOP ::= SHIFTOP '>' '=' SHIFTOP COMPOP ::= SHIFTOP '<' '=' SHIFTOP COMPOP ::= SHIFTOP '>' SHIFTOP COMPOP ::= SHIFTOP '<' SHIFTOP EQUALOP ::= COMPOP EQUALOP ::= COMPOP '!' '=' COMPOP EQUALOP ::= COMPOP '=' '=' COMPOP BITANDOP ::= EQUALOP BITANDOP ::= EQUALOP '&' EQUALOP BITXOROP ::= BITANDOP BITXOROP ::= BITANDOP '^' BITANDOP BITOROP ::= BITXOROP BITOROP ::= BITXOROP '|' BITXOROP LOGANDOP ::= BITOROP LOGANDOP ::= BITOROP '&' '&' BITOROP LOGOROP ::= LOGANDOP LOGOROP ::= LOGANDOP '|' '|' LOGANDOP CONDOP ::= LOGOROP CONDOP ::= LOGOROP '?' LOGOROP ':' LOGOROP ASSIGNOP ::= CONDOP ASSIGNOP ::= CONDOP '|' '=' CONDOP ASSIGNOP ::= CONDOP '^' '=' CONDOP ASSIGNOP ::= CONDOP '&' '=' CONDOP ASSIGNOP ::= CONDOP '<' '<' '=' CONDOP ASSIGNOP ::= CONDOP '>' '>' '=' CONDOP ASSIGNOP ::= CONDOP '%' '=' CONDOP ASSIGNOP ::= CONDOP '/' '=' CONDOP ASSIGNOP ::= CONDOP '*' '=' CONDOP ASSIGNOP ::= CONDOP '-' '=' CONDOP ASSIGNOP ::= CONDOP '=' CONDOP COMMAOP ::= ASSIGNOP COMMAOP ::= ASSIGNOP ',' ASSIGNOP EXPRESSION ::= COMMAOP