feedback from Andrew Sandoval and Daniel Krügler incorporated