refactored client storage