Client Side implementation was refactored