rem: if (arguments.length == 1) { 
add: else if (arguments.length == 1) { 
context: fleegix.date.XDateTime = function() {  var a = [];  var dt = null;     // Use Date obj proxy for instantiation  if (arguments.length == 1) {    if (typeof arguments[0] == 'string') {      dt = new Date(arguments[0]);    }    else {      // Create the UTC date for the timestamp      dt = new Date(0);      dt.setMilliseconds(arguments[0] + (dt.getTimezoneOffset()*60*1000));    }  }  else if (arguments.length == 2 && typeof arguments[1] == 'string') {    var tz = arguments[1];    if (typeof arguments[0] == 'number') {      // Use UTC date to calculate the offset      // FIXME: This causes DST leap to happen som hours off in      // one direction or the other      dt = new Date(0);      dt.setMilliseconds(arguments[0] + (dt.getTimezoneOffset()*60*1000));      dt = new Date(dt.getUTCFullYear(), dt.getUTCMonth(), dt.getUTCDate());      var o = fleegix.date.timezone.getOffset(dt, arguments[1]);      dt = new Date(0);      dt.setMilliseconds(arguments[0] + (dt.getTimezoneOffset()*60*1000) - (o *60*1000));    }    else{      dt = new Date(arguments[0]);    }  }  else {    var args = [];    for (var i = 0; i < arguments.length; i++) {      args.push(arguments[i]);    }    if (typeof args[args.length -1] == 'string') {      var tz = args.pop();    }    for (var i = 0; i < 8; i++) {      a[i] = args[i] || 0;    }    dt = new Date(a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]);  }    this.year = 0;  this.month = 0;  this.date = 0;  this.hours = 0;  this.minutes = 0;   this.seconds = 0;  this.milliseconds = 0;  this.timezone = '';  this.utc = false;  this.isXDateTime = true;    this.setFromDateObjProxy(dt);  this.setTimezone(tz);  return this;}
meta: 10428	/local1/tlutelli/issta_data/temp/all_js/javascript/2006_temp/2006/10428/7c923955ae281fecffef4305247fa96d868e5b7a/xdate.js/buggy/src/xdate.js