design fix
Refactoring of server-side