Creating generic client