Context Free Grammar Generator