%% s: aeqb | beqc ; aeqb: ab cs ; ab: /* empty */ | 'a' ab 'b' ; cs : /* empty */ | cs 'c' ; beqc: as bc ; bc: /* empty */ | 'b' bc 'c' ; as: /* empty */ | as 'a' ; %%
%% s: aeqb | beqc ; aeqb: ab cs ; ab: /* empty */ | 'a' ab 'b' ; cs : /* empty */ | cs 'c' ; beqc: as bc ; bc: /* empty */ | 'b' bc 'c' ; as: /* empty */ | as 'a' ; %%