more about production rules