more tidy
almost done