generator close to working. To do: phrase hash-table, then parser