return { 
var retval = { 
  _getSecurityInfo : function() {    const nsIX509Cert = Components.interfaces.nsIX509Cert;    const nsIX509CertDB = Components.interfaces.nsIX509CertDB;    const nsX509CertDB = "@mozilla.org/security/x509certdb;1";    const nsISSLStatusProvider = Components.interfaces.nsISSLStatusProvider;    const nsISSLStatus = Components.interfaces.nsISSLStatus;    // We don't have separate info for a frame, return null until further notice    // (see bug 138479)    if (gWindow != gWindow.top)      return null;    var hName = null;    try {      hName = gWindow.location.host;    }    catch (exception) { }    var ui = security._getSecurityUI();    if (!ui)      return null;    var isBroken =      (ui.state == Components.interfaces.nsIWebProgressListener.STATE_IS_BROKEN);    ui.QueryInterface(nsISSLStatusProvider);    var status = ui.SSLStatus;    if (status) {      status.QueryInterface(nsISSLStatus);      var cert = status.serverCert;      var issuerName =        this.mapIssuerOrganization(cert.issuerOrganization) || cert.issuerName;      return {        hostName : hName,        cAName : issuerName,        encryptionAlgorithm : status.cipherName,        encryptionStrength : status.secretKeyLength,        isBroken : isBroken,        cert : cert,        fullLocation : gWindow.location      };    } else {      return {        hostName : hName,        cAName : "",        encryptionAlgorithm : "",        encryptionStrength : 0,        isBroken : isBroken,        cert : null,        fullLocation : gWindow.location              };    }  },
5872	/local1/tlutelli/issta_data/temp/all_js/javascript/2007_temp/2007/5872/74e478d62936f2f18e945ed7c587a541e2727779/security.js/clean/browser/base/content/pageinfo/security.js