refactor and retrograde. expressions and parser and print are working again.