code: public static VersionNumber parseOperatingSystemVersion(@Nonnull final OperatingSystemFamily family, @Nonnull final String userAgent) {
  		Check.notNull(family, "family");
  		Check.notNull(userAgent, "userAgent");
  
  		final VersionNumber v;
  		if (OperatingSystemFamily.ANDROID == family) {
  			v = identifyAndroidVersion(userAgent);
  		} else if (OperatingSystemFamily.BADA == family) {
  			v = identifyBadaVersion(userAgent);
  		} else if (OperatingSystemFamily.BSD == family) {
  			v = identifyBSDVersion(userAgent);
  		} else if (OperatingSystemFamily.IOS == family) {
  			v = identifyIOSVersion(userAgent);
  		} else if (OperatingSystemFamily.JVM == family) {
  			v = identifyJavaVersion(userAgent);
  		} else if (OperatingSystemFamily.OS_X == family) {
  			v = identifyOSXVersion(userAgent);
  		} else if (OperatingSystemFamily.SYMBIAN == family) {
  			v = identifySymbianVersion(userAgent);
  		} else if (OperatingSystemFamily.WEBOS == family) {
  			v = identifyWebOSVersion(userAgent);
  		} else if (OperatingSystemFamily.WINDOWS == family) {
  			v = identifyWindowsVersion(userAgent);
  		} else {
  			v = VersionNumber.UNKNOWN;
  		}
  		return v;
  	}
docs: Try to determine the version number of the operating system by parsing the user agent string.
  
  
  @param family
  family of the operating system
  @param userAgent
  user agent string
  @return extracted version number