function Vector(b){this.container=[];this.type="Vector";this.rootName=b}new Vector;Vector.prototype.addElement=addElement;Vector.prototype.addElements=addElements;Vector.prototype.removeElement=removeElement;Vector.prototype.removeElementAt=removeElementAt;Vector.prototype.removeAllElements=removeAllElements;Vector.prototype.insertElementAt=insertElementAt;Vector.prototype.moveElement=moveElement;Vector.prototype.elementAt=elementAt;Vector.prototype.isEmpty=isEmptyVector;Vector.prototype.size=size; Vector.prototype.elements=elements;Vector.prototype.contains=contains;Vector.prototype.setRootName=setRootName;Vector.prototype.getRootName=getRootName;function addElement(b,a){if(a==null)this.container[this.container.length]=b;else a.container[a.container.length]=b}function addElements(b,a){for(index in b)if(a==null)this.container[this.container.length]=b[index];else a.container[a.container.length]=b[index]} function insertElementAt(b,a,c){if(c==null)if(a<0||a>this.container.length-1)return false;else{for(var d=[],f=0,e=0;e<this.container.length;e++){if(e==a){d[e]=b;f=1}d[e+f]=this.container[e]}this.container=d;return true}else if(a<0||a>c.container.length-1)return false;else{d=[];for(e=f=0;e<c.container.length;e++){if(e==a){d[e]=b;f=1}d[e+f]=c.container[e]}c.container=d;return true}} function elementAt(b,a){if(a==null){if(b<0||b>this.container.length-1)return null;return this.container[b]}else{if(b<0||b>a.container.length-1)return null;return a.container[b]}} function removeElementAt(b,a){if(a==null)if(b<0||b>this.container.length-1)return false;else{for(var c=[],d=0;d<this.container.length;d++)if(d!=b)c[c.length]=this.container[d];this.container=c;return true}else if(b<0||b>a.container.length-1)return false;else{c=[];for(d=0;d<a.container.length;d++)if(d!=b)c[c.length]=a.container[d];a.container=c;return true}} function removeElement(b,a){if(a==null){for(var c=[],d=0;d<this.container.length;d++)if(this.container[d]!=b)c[c.length]=this.container[d];if(this.container.length==c.length)return false;this.container=c}else{c=[];for(d=0;d<a.container.length;d++)if(this.container[d]!=b)c[c.length]=a.container[d];if(a.container.length==c.length)return false;a.container=c}return true}function removeAllElements(){this.container=[]} function moveElement(b,a){if(b<0||b>this.container.length-1)return false;else if(a<0||a>this.container.length-1){alert("Vector error: Out of bounds error on destination");return false}else if(b==a)return true;var c=this.elementAt(b);if(c!=null){this.removeElementAt(b);return a==this.size()?this.addElement(c):this.insertElementAt(c,a)}else return false} function elements(b){var a=[];if(b==null)for(var c=0;c<this.container.length;c++)a[a.length]=this.container[c];else for(c=0;c<b.container.length;c++)a[a.length]=b.container[c];return a}function contains(b){for(var a=0;a<this.container.length;a++)if(this.container[a]==b)return true;return false}function setRootName(b){this.rootName=b}function getRootName(){return this.rootName}function size(b){return b==null?this.container.length:b.container.length} function isEmptyVector(){return this.container.length==0};
