a bunch of improvements