added classes for client