simplifying userAgent by allowing only one responseListener