lots of changes. Time to start reworking.