| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677 | 
							- exports.removeElement = function(elem){
 
- 	if(elem.prev) elem.prev.next = elem.next;
 
- 	if(elem.next) elem.next.prev = elem.prev;
 
- 	if(elem.parent){
 
- 		var childs = elem.parent.children;
 
- 		childs.splice(childs.lastIndexOf(elem), 1);
 
- 	}
 
- };
 
- exports.replaceElement = function(elem, replacement){
 
- 	var prev = replacement.prev = elem.prev;
 
- 	if(prev){
 
- 		prev.next = replacement;
 
- 	}
 
- 	var next = replacement.next = elem.next;
 
- 	if(next){
 
- 		next.prev = replacement;
 
- 	}
 
- 	var parent = replacement.parent = elem.parent;
 
- 	if(parent){
 
- 		var childs = parent.children;
 
- 		childs[childs.lastIndexOf(elem)] = replacement;
 
- 	}
 
- };
 
- exports.appendChild = function(elem, child){
 
- 	child.parent = elem;
 
- 	if(elem.children.push(child) !== 1){
 
- 		var sibling = elem.children[elem.children.length - 2];
 
- 		sibling.next = child;
 
- 		child.prev = sibling;
 
- 		child.next = null;
 
- 	}
 
- };
 
- exports.append = function(elem, next){
 
- 	var parent = elem.parent,
 
- 		currNext = elem.next;
 
- 	next.next = currNext;
 
- 	next.prev = elem;
 
- 	elem.next = next;
 
- 	next.parent = parent;
 
- 	if(currNext){
 
- 		currNext.prev = next;
 
- 		if(parent){
 
- 			var childs = parent.children;
 
- 			childs.splice(childs.lastIndexOf(currNext), 0, next);
 
- 		}
 
- 	} else if(parent){
 
- 		parent.children.push(next);
 
- 	}
 
- };
 
- exports.prepend = function(elem, prev){
 
- 	var parent = elem.parent;
 
- 	if(parent){
 
- 		var childs = parent.children;
 
- 		childs.splice(childs.lastIndexOf(elem), 0, prev);
 
- 	}
 
- 	if(elem.prev){
 
- 		elem.prev.next = prev;
 
- 	}
 
- 	
 
- 	prev.parent = parent;
 
- 	prev.prev = elem.prev;
 
- 	prev.next = elem;
 
- 	elem.prev = prev;
 
- };
 
 
  |