Serious changes
Migrating logic to client side