
Production Rules:
1: start ->  start expr
2: start ->  <empty>
3: expr ->  NR
4: expr ->  expr '+' expr
5: start_$ ->  start


Symbolic Terminal tokens:
       error
       EOF
   257: NR
    43: '+'


FIRST sets:
   start:    { NR <e> }
   expr:     { NR }
   start_$:  { NR <e> }


FOLLOW sets:
   start:    { NR <EOF> }
   expr:     { NR '+' <EOF> }
   start_$:  { <EOF> }


Grammar States: 

For each state information like the following is shown for its items:
   0: [P1 1] S -> C  . C   { <EOF> }  0
which should be read as follows:
   0:          The item's index
   [P1 1]:     The rule (production) number and current dot-position
   S -> C . C: The item (lhs -> Recognized-symbols . symbols-to-recognize)
   { <EOF> }   The item's lookahead (LA) set
   0           The next-element (shown below the items) describing the
               action associated with this item (-1 for reducible items)

The Next tables show entries like:
   0: On C to state 5 with (0 )
meaning:
   0:               The Next table's index
   On C to state 5: When C was recognized, continue at state 5
   with (0 )        The item(s) whose dot is shifted at the next state
Also, reduction item(s) may be listed


State 0:
0: [P5 0] start_$ ->  . start   { <EOF> }  0
1: [P1 0] start ->  . start expr   { NR <EOF> }  0
2: [P2 0] start ->  .   { NR <EOF> }  1, () -1
  0: On start to state 1 with (0 1 )
  Reduce item(s): 2 


State 1:
0: [P5 1] start_$ -> start  .   { <EOF> }  -1
1: [P1 1] start -> start  . expr   { NR <EOF> }  0
2: [P3 0] expr ->  . NR   { NR '+' <EOF> }  1
3: [P4 0] expr ->  . expr '+' expr   { NR '+' <EOF> }  0
  0: On expr to state 2 with (1 3 )
  1: On NR to state 3 with (2 )


State 2:
0: [P1 2] start -> start expr  .   { NR <EOF> }  -1
1: [P4 1] expr -> expr  . '+' expr   { NR '+' <EOF> }  0
  0: On '+' to state 4 with (1 )
  Reduce item(s): 0 


State 3:
0: [P3 1] expr -> NR  .   { NR '+' <EOF> }  -1
  Reduce item(s): 0 


State 4:
0: [P4 2] expr -> expr '+'  . expr   { NR '+' <EOF> }  0
1: [P3 0] expr ->  . NR   { NR '+' <EOF> }  1
2: [P4 0] expr ->  . expr '+' expr   { NR '+' <EOF> }  0
  0: On expr to state 5 with (0 2 )
  1: On NR to state 3 with (1 )


State 5:
0: [P4 3] expr -> expr '+' expr  .   { NR '+' <EOF> }  -1
1: [P4 1] expr -> expr  . '+' expr   { NR '+' <EOF> }  0
  0: 
  Reduce item(s): 0 



