more changes for performance (supposedly)