self.expand=function(a,b,c){var th=0;var sh=parseInt(a.parentNode.clientHeight);var am=[];for(var i=0;i<a.parentNode.childNodes.length;i++){th+=parseInt(a.parentNode.childNodes[i].clientHeight)?parseInt(a.parentNode.childNodes[i].clientHeight):0;}
if(sh!=th){resize({el:a.parentNode,toheight:th})
if(c){a.className=c;}}else{resize({el:a.parentNode,toheight:a.clientHeight})
if(b){a.className=b;}}}
self.resize=function(a){self._resize=(typeof self._resize!='undefined')?self._resize:{};if(!a.el){return false;}else if(!a.el.id){a.el.id=(new Date()).valueOf();}
if(_resize[a.el.id])clearTimeout(a.el.id);a.step=typeof a.step!='undefined'?parseInt(a.step):5;var x1=parseInt(a.el.clientWidth);var y1=parseInt(a.el.clientHeight);var sy1=sx1=dx1=dy1=0;if(a.towidth){if(x1>a.towidth){sx1=-1}else{sx1=1};dx1=Math.abs(a.towidth-x1);}
if(a.toheight){if(y1>a.toheight){sy1=-1}else{sy1=1};dy1=Math.abs(a.toheight-y1);}
if(sx1&&a.step){a.el.style.width=(x1+Math.ceil(dx1/a.step)*sx1)+'px'};if(sy1&&a.step){a.el.style.height=(y1+Math.ceil(dy1/a.step)*sy1)+'px'};if(a.step>0){_resize[a.el.id]=setTimeout(function(){resize({el:a.el,towidth:a.towidth,toheight:a.toheight,step:a.step-1,cb:a.cb})},20)}else if(typeof a.cb=='function'){a.cb(a.el);}}
