cleanup and front-end work