Broke up client classes for readability