Added user agent detector