0 $accept : %entry% $end 1 code_list : 2 | code code_list 3 code : DEFINE 4 | UNDEF 5 | IFDEF code_list ELSE code_list ENDIF 6 | IFNDEF code_list ELSE code_list ENDIF 7 | IFDEF code_list ENDIF 8 | IFNDEF code_list ENDIF 9 | OTHER 10 %entry% : '\001' code_list state 0 $accept : . %entry% $end (0) '\001' shift 1 . error %entry% goto 2 state 1 %entry% : '\001' . code_list (10) code_list : . (1) IFDEF shift 3 IFNDEF shift 4 DEFINE shift 5 UNDEF shift 6 OTHER shift 7 $end reduce 1 code_list goto 8 code goto 9 state 2 $accept : %entry% . $end (0) $end accept state 3 code : IFDEF . code_list ELSE code_list ENDIF (5) code : IFDEF . code_list ENDIF (7) code_list : . (1) IFDEF shift 3 IFNDEF shift 4 DEFINE shift 5 UNDEF shift 6 OTHER shift 7 ELSE reduce 1 ENDIF reduce 1 code_list goto 10 code goto 9 state 4 code : IFNDEF . code_list ELSE code_list ENDIF (6) code : IFNDEF . code_list ENDIF (8) code_list : . (1) IFDEF shift 3 IFNDEF shift 4 DEFINE shift 5 UNDEF shift 6 OTHER shift 7 ELSE reduce 1 ENDIF reduce 1 code_list goto 11 code goto 9 state 5 code : DEFINE . (3) . reduce 3 state 6 code : UNDEF . (4) . reduce 4 state 7 code : OTHER . (9) . reduce 9 state 8 %entry% : '\001' code_list . (10) . reduce 10 state 9 code_list : code . code_list (2) code_list : . (1) IFDEF shift 3 IFNDEF shift 4 DEFINE shift 5 UNDEF shift 6 OTHER shift 7 $end reduce 1 ELSE reduce 1 ENDIF reduce 1 code_list goto 12 code goto 9 state 10 code : IFDEF code_list . ELSE code_list ENDIF (5) code : IFDEF code_list . ENDIF (7) ELSE shift 13 ENDIF shift 14 . error state 11 code : IFNDEF code_list . ELSE code_list ENDIF (6) code : IFNDEF code_list . ENDIF (8) ELSE shift 15 ENDIF shift 16 . error state 12 code_list : code code_list . (2) . reduce 2 state 13 code : IFDEF code_list ELSE . code_list ENDIF (5) code_list : . (1) IFDEF shift 3 IFNDEF shift 4 DEFINE shift 5 UNDEF shift 6 OTHER shift 7 ENDIF reduce 1 code_list goto 17 code goto 9 state 14 code : IFDEF code_list ENDIF . (7) . reduce 7 state 15 code : IFNDEF code_list ELSE . code_list ENDIF (6) code_list : . (1) IFDEF shift 3 IFNDEF shift 4 DEFINE shift 5 UNDEF shift 6 OTHER shift 7 ENDIF reduce 1 code_list goto 18 code goto 9 state 16 code : IFNDEF code_list ENDIF . (8) . reduce 8 state 17 code : IFDEF code_list ELSE code_list . ENDIF (5) ENDIF shift 19 . error state 18 code : IFNDEF code_list ELSE code_list . ENDIF (6) ENDIF shift 20 . error state 19 code : IFDEF code_list ELSE code_list ENDIF . (5) . reduce 5 state 20 code : IFNDEF code_list ELSE code_list ENDIF . (6) . reduce 6 11 terminals, 4 nonterminals 11 grammar rules, 21 states