refactor code:
Refactor code