rem:  var cid = "@mozilla.org/calendar/calendar;1?type=" + aType; var cal = Components.classes[cid].createInstance(Components.interfaces.calICalendar); 
add: this.mCalendars.push(aCalendar); 
context:     addCalendar: function (aServer, aType) {        // check if the calendar already exists        for (cal in this.mCalendars) {            if (cal.uri == aServer) {                // throw exception if calendar already exists?                return;            }        }        // construct a new calendar        var cid = "@mozilla.org/calendar/calendar;1?type=" + aType;        var cal = Components.classes[cid].createInstance(Components.interfaces.calICalendar);        cal.uri = aServer;        this.mCalendars.push(cal);        this.observeCalendarAdded(cal);        // if we have no default calendar, we need one here        if (this.mDefaultCalendar == null) {            this.mDefaultCalendar = cal;            this.observeDefaultCalendarChanged(cal);        }        return cal;    },
meta: 10234	/local1/tlutelli/issta_data/temp/all_js/javascript/2006_temp/2006/10234/3238a7f33ecb564d0c962fe61b46872dbd5c5a51/calCompositeCalendar.js/buggy/calendar/providers/composite/calCompositeCalendar.js