module UserAgent::Browsers::InternetExplorer

def self.extend?(agent)

def self.extend?(agent)
  agent.application &&
    agent.application.comment &&
    agent.application.comment[0] == "compatible" &&
    agent.application.comment[1] =~ /MSIE/
end

def browser

def browser
  "Internet Explorer"
end

def chromeframe

or as a separate product with a version
as of 4.0 it can declare itself versioned in a comment
Before version 4.0, Chrome Frame declared itself (unversioned) in a comment;
def chromeframe
  cf = application.comment.include?("chromeframe") || detect_product("chromeframe")
  return cf if cf
  cf_comment = application.comment.detect { |c| c['chromeframe/'] }
  cf_comment ? UserAgent.new(*cf_comment.split('/', 2)) : nil
end

def compatibility

def compatibility
  application.comment[0]
end

def compatibility_view?

def compatibility_view?
  version == "7.0" && application.comment.detect { |c| c['Trident/'] }
end

def compatible?

def compatible?
  compatibility == "compatible"
end

def os

def os
  OperatingSystems.normalize_os(application.comment[2])
end

def platform

def platform
  "Windows"
end

def version

def version
  Version.new(application.comment[1].sub("MSIE ", ""))
end