public override BaseGrammar ShallowClone() { var clone = new CNFGrammar(this.Productions, this.Start); return clone; } }