 Array.prototype.pop = function() { if(this.length==0)return this[0]; var removed=this[this.length-1]; this.length=this.length-1; return removed;};Array.prototype.push = function() { var i=0; while (new String(arguments[i])!="undefined") { this[this.length]=arguments[i]; i++; } return this.length;};Array.prototype.shift = function() { var removed=this[0]; if (this.length>0) { for(var i=0;i<this.length-1;i++)
 this[i]=this[i+1]; this.length=this.length-1; } return removed;};Array.prototype.splice = function(index, howMany) { howMany=Math.min(howMany,this.length-index); var temp=[]; var removed=[]; var ct; var ct2 = howMany; if (this.length>0) { for (var i=this.length-1;i>=0;i--) { if (i >= index && i <= index+howMany-1) { removed[ct2--]=this[i]; delete this[i]; } } this.sort(Array.compUndefined); this.length-=howMany; } i=2; ct=index; while (new String(arguments[i])!="undefined") { if(new String(this[ct])!="undefined")
 temp[temp.length]=this[ct]; this[ct++]=arguments[i++]; } for (var i=0;i<temp.length;i++) { this[this.length]=temp[i]; } return removed;};Array.prototype.unshift = function() { for (var i=this.length+arguments.length-1;i>=0;i--)
 if(i>arguments.length-1)
 this[i]=this[i-arguments.length]; else 
 this[i]=arguments[i]; return this.length;};