As discussed in Section 5.5, a grammar is in Greibach Normal Form (GNF) if all productions are of the form A→aα, where a is a terminal symbol and α is a string of zero or more grammar (i.e., terminal or nonterminal) symbols. Let G be a grammar that does not generate λ. Design an algorithm to transform G into GNF.