making client only get created if it isn't previously set already