further improvement, bugfixing