adding user agent string support