improve the code quality