singletop where appropriate
retain all the things
some bug fixes