lots of simplifications.