function addEvent(E,F,D){if(E.attachEvent){E.attachEvent("on"+F,D)}else{if(E.addEventListener){E.addEventListener(F,D,true)}else{E["on"+F]=D}}}function removeEvent(E,F,D){if(E.detachEvent){E.detachEvent("on"+F,D)}else{if(E.removeEventListener){E.removeEventListener(F,D,true)}else{E["on"+F]=null}}}function stopEvent(B){B||window.event;if(B.stopPropagation){B.stopPropagation();B.preventDefault()}else{if(typeof B.cancelBubble!="undefined"){B.cancelBubble=true;B.returnValue=false}}return false}function getElement(B){if(window.event){return window.event.srcElement}else{return B.currentTarget}}function getTargetElement(B){if(window.event){return window.event.srcElement}else{return B.target}}function stopSelect(B){if(typeof B.onselectstart!="undefined"){addEvent(B,"selectstart",function(){return false})}}function getCaretEnd(H){if(typeof H.selectionEnd!="undefined"){return H.selectionEnd}else{if(document.selection&&document.selection.createRange){var G=document.selection.createRange();try{var F=G.duplicate();F.moveToElementText(H)}catch(I){var F=H.createTextRange()}F.setEndPoint("EndToEnd",G);var J=F.text.length;if(J>H.value.length){return -1}return J}}}function getCaretStart(H){if(typeof H.selectionStart!="undefined"){return H.selectionStart}else{if(document.selection&&document.selection.createRange){var G=document.selection.createRange();try{var F=G.duplicate();F.moveToElementText(H)}catch(I){var F=H.createTextRange()}F.setEndPoint("EndToStart",G);var J=F.text.length;if(J>H.value.length){return -1}return J}}}function setCaret(D,C){D.focus();if(D.setSelectionRange){D.setSelectionRange(C,C)}else{if(D.createTextRange){m=D.createTextRange();m.moveStart("character",C);m.collapse();m.select()}}}function setSelection(E,D,F){E.focus();if(E.setSelectionRange){E.setSelectionRange(D,F)}else{if(E.createTextRange){m=E.createTextRange();m.moveStart("character",D);m.moveEnd("character",F);m.select()}}}String.prototype.addslashes=function(){return this.replace(/(["\\\.\|\[\]\^\*\+\?\$\(\)])/g,"\\$1")};String.prototype.trim=function(){return this.replace(/^\s*(\S*(\s+\S+)*)\s*$/,"$1")};function curTop(B){toreturn=0;while(B){toreturn+=B.offsetTop;B=B.offsetParent}return toreturn}function curLeft(B){toreturn=0;while(B){toreturn+=B.offsetLeft;B=B.offsetParent}return toreturn}function isNumber(B){return typeof B=="number"&&isFinite(B)}function replaceHTML(C,D){while(el=C.childNodes[0]){C.removeChild(el)}C.appendChild(document.createTextNode(D))};
