S -> AbDAB | aB A -> ϵ | Bb B -> ϵ D -> f FIRST ----- S A ba | ab A B b | b B | D f | f FOLLOW ------ S # | # | # A b,FIRST(B),FOLLOW(S) | b S | #b B FOLLOW(S),b | b S | #b D FIRST(A),FIRST(B),FOLLOW(S) | b S | #b a b f # S (aB,2) (AbDAB,1) (AbDAB,1) A (ϵ,3) (ϵ,3) (Bb,4) B (ϵ,5) (ϵ,5) D (f,6) D (f,6) S -> aAaAA | BbBAB A -> eA | ϵ B -> fBA | ϵ a b e f # S (aAaAA,1) (BbBAB,2) (BbBAB,2) A (eA,3) (ϵ,4) (ϵ,4) (ϵ,4) (ϵ,4) (ϵ,4) B (fBA,5) (ϵ,6) (ϵ,6) (ϵ,6) (ϵ,6) FOLLOW ---------- S # A a,FIRST(A),FOLLOW(S),FIRST(B),FOLLOW(B) B b,FIRST(A),FIRST(B),FOLLOW(S) S # | # A aef SB | abef# B bef S | bef# FIRST ------ S ab B | abf A e | e B f | f