rem: e.meat = l.substr (sep + 2, l.length); 
add: { var trail = l.substr (sep + 2, l.length); e.params = l.substr(0, sep).split(" "); e.params[e.params.length] = trail; } 
context: function serv_onRawData(e){    var ary;    var l = e.data;    if (l.length == 0)    {        dd ("empty line on onRawData?");        return false;    }        if (l[0] == ":")    {        ary = l.match (/:(\S+)\s(.*)/);        e.source = ary[1];        l = ary[2];        ary = e.source.match (/(\S+)!(\S+)@(.*)/);        if (ary)        {            e.user = new CIRCUser(this, ary[1], ary[2], ary[3]);        }        else        {            ary = e.source.match (/(\S+)@(.*)/);            if (ary)            {                e.user = new CIRCUser(this, "", ary[1], ary[2]);            }        }    }    e.server = this;    var sep = l.indexOf(" :");    if (sep != -1) /* <trailing> param, if there is one */        e.meat = l.substr (sep + 2, l.length);    else        e.meat = "";    if (sep != -1)        e.params = l.substr(0, sep).split(" ");    else        e.params = l.split(" ");    e.code = e.params[0].toUpperCase();    e.type = "parseddata";    e.destObject = this;    e.destMethod = "onParsedData";        return true;    }
meta: 9421	/local1/tlutelli/issta_data/temp/all_js/javascript/2006_temp/2006/9421/52a505341143c71d340506cfb4ecd92ffa92787d/irc.js/buggy/extensions/irc/js/lib/irc.js