bug fixes and performance improvements