+ cleanup and todo