code design fix
code design fix
Refactoring