class UserAgent::Version

def self.new(obj = nil)

def self.new(obj = nil)
  case obj
  when Version
    obj
  when String
    super
  when NilClass
    super("")
  else
    raise ArgumentError, "invalid value for Version: #{obj.inspect}"
  end
end