Refactored client traits