new client factory usage