rem: var ary = navigator.userAgent.match (/(rv:[^;)\s]+).*?Gecko\/(\d+)/); 
context: function initStatic(){    client.mainWindow = window;    try    {        var io = Components.classes['@mozilla.org/network/io-service;1'];        client.iosvc = io.getService(Components.interfaces.nsIIOService);    }    catch (ex)    {        dd("IO service failed to initalize: " + ex);    }    try    {        const nsISound = Components.interfaces.nsISound;        client.sound =            Components.classes["@mozilla.org/sound;1"].createInstance(nsISound);        client.soundList = new Object();    }    catch (ex)    {        dd("Sound failed to initalize: " + ex);    }    try    {        const nsIGlobalHistory = Components.interfaces.nsIGlobalHistory;        const GHIST_CONTRACTID = "@mozilla.org/browser/global-history;1";        client.globalHistory =            Components.classes[GHIST_CONTRACTID].getService(nsIGlobalHistory);    }    catch (ex)    {        dd("Global History failed to initalize: " + ex);    }    try    {        const nsISDateFormat = Components.interfaces.nsIScriptableDateFormat;        const DTFMT_CID = "@mozilla.org/intl/scriptabledateformat;1";        client.dtFormatter =            Components.classes[DTFMT_CID].createInstance(nsISDateFormat);        // Mmmm, fun. This ONLY affects the ChatZilla window, don't worry!        Date.prototype.toStringInt = Date.prototype.toString;        Date.prototype.toString = function() {            var dtf = client.dtFormatter;            return dtf.FormatDateTime("", dtf.dateFormatLong,                                      dtf.timeFormatSeconds,                                      this.getFullYear(), this.getMonth() + 1,                                      this.getDate(), this.getHours(),                                      this.getMinutes(), this.getSeconds()                                     );        }    }    catch (ex)    {        dd("Locale-correct date formatting failed to initalize: " + ex);    }    multilineInputMode(client.prefs["multiline"]);    if (client.prefs["showModeSymbols"])        setListMode("symbol");    else        setListMode("graphic");    setDebugMode(client.prefs["debugMode"]);    var ver = __cz_version + (__cz_suffix ? "-" + __cz_suffix : "");    var ary = navigator.userAgent.match (/(rv:[^;)\s]+).*?Gecko\/(\d+)/);    var ua = navigator.userAgent;    if (ary)    {        if (navigator.vendor)            ua = navigator.vendor + " " + navigator.vendorSub;        else            ua = client.entities.brandShortName + " " + ary[1];        ua = ua + "/" + ary[2];    }    client.userAgent = getMsg(MSG_VERSION_REPLY, [ver, ua]);    CIRCServer.prototype.HOST_RPLY = client.entities.brandShortName + ", " +                                      client.platform;    CIRCServer.prototype.VERSION_RPLY = client.userAgent;    CIRCServer.prototype.SOURCE_RPLY = MSG_SOURCE_REPLY;    client.statusBar = new Object();    client.statusBar["server-nick"] = document.getElementById ("server-nick");    client.statusElement = document.getElementById("status-text");    client.defaultStatus = MSG_DEFAULT_STATUS;    client.progressPanel = document.getElementById("status-progress-panel");    client.progressBar = document.getElementById("status-progress-bar");    client.logFile = null;    setInterval("onNotifyTimeout()", client.NOTIFY_TIMEOUT);    setInterval("onWhoTimeout()", client.AWAY_TIMEOUT);    client.defaultCompletion = client.COMMAND_CHAR + "help ";    client.deck = document.getElementById('output-deck');}
meta: 1567	/local1/tlutelli/issta_data/temp/all_js/javascript/2006_temp/2006/1567/260d0e9bea46754365eaead3bd2560da2a6eb8c6/static.js/clean/xul/content/static.js