
function LTrim(value)
{var re=/\s*((\S+\s*)*)/;return value.replace(re,"$1");}
function RTrim(value)
{var re=/((\s*\S+)*)\s*/;return value.replace(re,"$1");}
function trim(value)
{return LTrim(RTrim(value));}
var http=createRequestObject();function createRequestObject()
{var req;if(window.XMLHttpRequest)
{req=new XMLHttpRequest();}
else if(window.ActiveXObject)
{req=new ActiveXObject('MSXML2.XMLHTTP.3.0');}
else
alert('An AJAX capable browser is required to operate this site');return req;}
function sendAjaxRequest(sProcessor,fnAction,sFormData)
{if(http.readyState!=0&&http.readyState!=4)
{setTimeout('sendAjaxRequest("'+sProcessor+'",'+fnAction.name+',"'+sFormData+'");',100);return;}
setElementClass('loadingticker','showticker');http.open("POST",sProcessor,true);http.onreadystatechange=fnAction;http.setRequestHeader('Content-Type','application/x-www-form-urlencoded');sFormData.replace('+','~');http.send(sFormData);}
function ajaxResponseReady()
{if(http.readyState!=4||http.status!=200)
return false;setElementClass('loadingticker','');return true;}
function encodeForm(formName)
{form=document.getElementById(formName);formData=sPrefix="";if(form!=null)
{for(iElement=0;iElement<form.elements.length;iElement++)
{if((form.elements[iElement].type=="radio")&&!form.elements[iElement].checked)
continue;if(form.elements[iElement].value==form.elements[iElement].getAttribute("default"))
continue;if(form.elements[iElement].name=="")
continue;if(formData.length>0)
formData+="&";if(form.elements[iElement].type=="checkbox")
formData+=sPrefix+form.elements[iElement].name+"="+(form.elements[iElement].checked?"1":"0");else
formData+=sPrefix+form.elements[iElement].name+"="+encodeURIComponent(form.elements[iElement].value);}}
return formData;}
function toggleElement(sId,sCmd)
{if(sCmd==null)
sCmd='block';el=document.getElementById(sId);if(el!=null)
el.style.display=el.style.display=='none'?sCmd:'none';}
function showElement(sId,sStyle)
{if(!sId||!sId.length)
return;if(!sStyle||!sStyle.length)
sStyle='block';el=document.getElementById(sId);if(el!=null)
el.style.display=sStyle;}
function hideElement(sId)
{if(!sId||!sId.length)
return;el=document.getElementById(sId);if(el!=null)
el.style.display='none';}
function toggleName(sId,sName1,sName2)
{nState=0;el=document.getElementById(sId);if(el!=null)
{nState=el.value==sName1;el.value=el.value==sName1?sName2:sName1;}
return nState;}
function changeElement(sId,sText)
{eEl=document.getElementById(sId);if(eEl!=null)
{eEl.innerHTML=sText;}}
function removeElement(sId)
{eEl=document.getElementById(sId);if(eEl!=null)
eEl.innerHTML="";}
function getElementValue(sId)
{sValue="";eEl=document.getElementById(sId);if(eEl!=null)
{if(eEl.nodeName=='SELECT')
sValue=eEl.options[eEl.selectedIndex].innerHTML;else
{sValue=eEl.value;if(eEl.type=="checkbox")
sValue=eEl.checked?"true":"false";}}
return sValue;}
function setElementValue(sId,sText)
{eEl=document.getElementById(sId);if(eEl!=null)
eEl.value=sText;}
function getElementHTML(sId)
{sValue="";eEl=document.getElementById(sId);if(eEl!=null)
sValue=eEl.innerHTML;return sValue;}
function getElementClass(sId)
{eEl=document.getElementById(sId);if(eEl!=null)
return eEl.className;return"undefined";}
function setElementClass(sId,sClass)
{eEl=document.getElementById(sId);if(eEl!=null)
eEl.className=sClass;}
function updateBtns(sFormName,sBtnName)
{sField="";form=document.getElementById(sFormName);if(form!=null)
{bEnable=true;for(iE=0;iE<form.elements.length;iE++)
{if(form.elements[iE].onchange==null)
continue;bEnable&=form.elements[iE].value.length>0;if(!bEnable)
{sField=form.elements[iE].id;break;}}
ctrl=document.getElementById(sBtnName);if(ctrl!=null)
ctrl.disabled=bEnable?"":"disabled";ctrl=document.getElementById("formHint");if(ctrl!=null)
{if(!bEnable)
{sField=sField.replace(/_/," ");ctrl.innerHTML="<hr>"+sField+" is required.";}
else
ctrl.innerHTML="";}
else
alert(sField+" is required");}}
function updateDateField(sFieldName)
{eDayCtrl=document.getElementById(sFieldName+"Day");eMonthCtrl=document.getElementById(sFieldName+"Month");eYearCtrl=document.getElementById(sFieldName+"Year");eDateCtrl=document.getElementById(sFieldName);if(eDateCtrl==null||eDayCtrl==null||eMonthCtrl==null||eYearCtrl==null)
return;nDay=eDayCtrl.value;nMonth=eMonthCtrl.value;nYear=eYearCtrl.value;eDateCtrl.value=nYear+"-"+nMonth+"-"+nDay;}
var iUf=0;function uf()
{var aLines=["&#66;&#117;&#105;&#108;&#116;&#032;&#098;&#121;&#032;&#116;&#104;&#111;&#115;&#101;&#032;&#119;&#104;&#111;&#032;&#100;&#119;&#101;&#108;&#116;&#032;&#105;&#110;&#032;&#84;&#104;&#101;&#032;&#067;&#097;&#118;&#101;","&#116;&#104;&#101;&#121;&#032;&#108;&#097;&#098;&#111;&#117;&#114;&#101;&#100;&#032;&#108;&#111;&#110;&#103;&#032;&#097;&#110;&#100;&#032;&#104;&#097;&#114;&#100;","&#116;&#111;&#032;&#098;&#114;&#105;&#110;&#103;&#032;&#116;&#104;&#105;&#115;&#032;&#115;&#121;&#115;&#116;&#101;&#109;&#032;&#116;&#111;&#032;&#121;&#111;&#117;","&#097;&#110;&#100;&#032;&#110;&#111;&#119;&#032;&#104;&#101;&#114;&#101;&#032;&#119;&#101;&#032;&#115;&#116;&#097;&#110;&#100;","&#119;&#105;&#116;&#104;&#032;&#116;&#104;&#101;&#032;&#102;&#114;&#117;&#105;&#116;&#115;&#032;&#111;&#102;&#032;&#116;&#104;&#101;&#105;&#114;&#032;&#108;&#097;&#098;&#111;&#117;&#114;&#115;","&#098;&#117;&#116;&#032;&#119;&#097;&#115;&#032;&#105;&#116;&#032;&#119;&#111;&#114;&#116;&#104;&#032;&#105;&#116;?","&#097;&#108;&#111;&#117;&#100;&#032;&#116;&#104;&#101;&#032;&#118;&#111;&#105;&#099;&#101;&#115;&#032;&#099;&#114;&#105;&#101;&#100;&#032;\"&#121;&#101;&#115;,&#032;&#105;&#116;&#032;&#119;&#097;&#115;&#032;&#119;&#111;&#114;&#116;&#104;&#032;&#105;&#116;!\"","&#097;&#110;&#100;&#032;&#115;&#111;&#032;&#116;&#104;&#101;&#121;&#032;&#114;&#101;&#115;&#116;&#101;&#100;&#032;&#097;&#110;&#100;&#032;&#114;&#101;&#116;&#114;&#101;&#097;&#116;&#101;&#100;&#032;&#098;&#097;&#099;&#107;&#032;&#105;&#110;&#116;&#111;&#032;&#84;&#104;&#101;&#032;&#067;&#097;&#118;&#101;","&#116;&#111;&#032;&#119;&#111;&#114;&#107;&#032;&#111;&#110;&#032;&#116;&#104;&#101;&#032;&#110;&#101;&#120;&#116;&#032;&#116;&#104;&#105;&#110;&#103;&#032;&#116;&#111;&#032;&#099;&#111;&#109;&#101;&#032;&#116;&#104;&#101;&#105;&#114;&#032;&#119;&#097;&#121;","&#119;&#105;&#108;&#108;&#032;&#105;&#116;&#032;&#101;&#118;&#101;&#114;&#032;&#101;&#110;&#100;?","&#119;&#101;&#032;&#100;&#111;&#110;'&#116;&#032;&#107;&#110;&#111;&#119;&#046;&#046;&#046;","&#097;&#108;&#108;&#032;&#119;&#101;&#032;&#107;&#110;&#111;&#119;&#032;&#105;&#115;&#046;&#046;&#046;","&#116;&#104;&#101;&#121;&#032;&#099;&#97;&#109;&#101;&#032;&#102;&#114;&#111;&#109;&#032;&#84;&#104;&#101;&#032;&#067;&#097;&#118;&#101;","&#098;&#117;&#116;&#032;&#116;&#104;&#101;&#121;&#032;&#106;&#111;&#117;&#114;&#110;&#101;&#121;&#101;&#100;&#032;&#102;&#111;&#114;&#116;&#104;","&#097;&#110;&#100;&#032;&#115;&#101;&#116;&#116;&#108;&#101;&#100;&#032;&#105;&#110;&#032;&#097;&#032;&#115;&#097;&#118;&#097;&#103;&#101;&#032;&#108;&#097;&#110;&#100;","&#116;&#104;&#101;&#121;&#032;&#100;&#114;&#111;&#118;&#101;&#032;&#111;&#117;&#116;&#032;&#116;&#104;&#101;&#032;&#112;&#114;&#105;&#109;&#105;&#116;&#105;&#118;&#101;&#032;&#110;&#097;&#116;&#105;&#118;&#101;&#115;","&#097;&#110;&#100;&#032;&#119;&#101;&#114;&#101;&#032;&#106;&#111;&#105;&#110;&#101;&#100;&#032;&#098;&#121;&#032;&#111;&#116;&#104;&#101;&#114;&#032;&#108;&#105;&#107;&#101;&#045;&#109;&#105;&#110;&#100;&#101;&#100;&#032;&#098;&#101;&#105;&#110;&#103;&#115;","&#116;&#111;&#103;&#101;&#116;&#104;&#101;&#114;&#032;&#116;&#104;&#101;&#121;&#032;&#109;&#097;&#100;&#101;&#032;&#116;&#104;&#105;&#115;&#032;&#110;&#101;&#119;&#032;&#112;&#108;&#097;&#099;&#101;&#032;&#116;&#104;&#101;&#105;&#114;&#032;&#104;&#111;&#109;&#101;","&#097;&#032;&#110;&#101;&#119;&#032;&#110;&#097;&#109;&#101;&#032;&#105;&#116;&#032;&#103;&#097;&#105;&#110;&#101;&#100;...","&#84;&#104;&#101;&#032;&#74;&#117;&#110;&#103;&#108;&#101;"];if(iUf<aLines.length)
changeElement('footertext',getElementHTML('footertext')+'<br />'+aLines[iUf]);iUf++;}
function getElementsByClassName(className,tag,elm)
{var testClass=new RegExp("(^|\\\\s)"+className+"(\\\\s|$)");var tag=tag||"*";var elm=elm||document;var elements=(tag=="*"&&elm.all)?elm.all:elm.getElementsByTagName(tag);var returnElements=[];var current;var length=elements.length;for(var i=0;i<length;i++)
{current=elements[i];if(testClass.test(current.className))
returnElements.push(current);}
return returnElements;}
function externalizeLinks()
{docAnchors=document.getElementsByTagName("a");for(iAnchor=0;iAnchor<docAnchors.length;iAnchor++)
{eAnchor=docAnchors[iAnchor];if(eAnchor.getAttribute('href')&&eAnchor.getAttribute('rel')=='external')
eAnchor.target="_blank";}}
function addOnClicks(aEl,aFn)
{for(var i=0;i<aEl.length;i++)
{var eEl=document.getElementById(aEl[i]);if(eEl!=null)
eEl.onclick=aFn[i];}}
function addOnChange(aEl,aFn)
{for(var i=0;i<aEl.length;i++)
{var eEl=document.getElementById(aEl[i]);if(eEl!=null)
eEl.onchange=aFn[i];}}
function disableElement(sId,bSwitch)
{var eEl=document.getElementById(sId);if(eEl==null)
return;bSwitch=(bSwitch===true);switch(eEl.nodeName)
{case"SELECT":case"INPUT":eEl.disabled=bSwitch;break;}}
function isChecked(sId)
{eEl=document.getElementById(sId);if(eEl==null)
return false;return eEl.checked;}
function makeCollapsable(sEl,bStart)
{var aTbody=document.getElementsByTagName(sEl);for(i=0;i<aTbody.length;i++)
{var eEl=aTbody[i];if(eEl.className=="collapsable")
doCollapse(eEl.id,bStart);}}
function doCollapse(sId,bHide)
{if(document.getElementById(sId)==null)
return;var sToggleHide="<a href='#' onclick=\"doCollapse('"+sId+"', true); return false;\">[-]</a>";var sToggleShow="<a href='#' onclick=\"doCollapse('"+sId+"', false); return false;\">[+]</a>";if(bHide)
setElementClass(sId,'collapsehide');else
setElementClass(sId,'');changeElement("collapse"+sId,(bHide?sToggleShow:sToggleHide));}
function elementExists(sId)
{eEl=document.getElementById(sId);return(eEl!=null&&eEl!=undefined);}
function toggleAllCheckboxes(bState)
{var aEl=document.getElementsByTagName('input');for(var i=0;i<aEl.length;i++)
{if(aEl[i].getAttribute('type')=="checkbox")
aEl[i].checked=bState;}}
function number_format(number,decimals,dec_point,thousands_sep){var n=number,c=isNaN(decimals=Math.abs(decimals))?2:decimals;var d=dec_point==undefined?".":dec_point;var t=thousands_sep==undefined?",":thousands_sep,s=n<0?"-":"";var i=parseInt(n=Math.abs(+n||0).toFixed(c))+"",j=(j=i.length)>3?j%3:0;return s+(j?i.substr(0,j)+t:"")+i.substr(j).replace(/(\d{3})(?=\d)/g,"$1"+t)+(c?d+Math.abs(n-i).toFixed(c).slice(2):"");}
if(!this.JSON){JSON={};}
(function(){function f(n){return n<10?'0'+n:n;}
if(typeof Date.prototype.toJSON!=='function'){Date.prototype.toJSON=function(key){return this.getUTCFullYear()+'-'+
f(this.getUTCMonth()+1)+'-'+
f(this.getUTCDate())+'T'+
f(this.getUTCHours())+':'+
f(this.getUTCMinutes())+':'+
f(this.getUTCSeconds())+'Z';};String.prototype.toJSON=Number.prototype.toJSON=Boolean.prototype.toJSON=function(key){return this.valueOf();};}
var cx=/[\u0000\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,escapeable=/[\\\"\x00-\x1f\x7f-\x9f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,gap,indent,meta={'\b':'\\b','\t':'\\t','\n':'\\n','\f':'\\f','\r':'\\r','"':'\\"','\\':'\\\\'},rep;function quote(string){escapeable.lastIndex=0;return escapeable.test(string)?'"'+string.replace(escapeable,function(a){var c=meta[a];if(typeof c==='string'){return c;}
return'\\u'+('0000'+a.charCodeAt(0).toString(16)).slice(-4);})+'"':'"'+string+'"';}
function str(key,holder){var i,k,v,length,mind=gap,partial,value=holder[key];if(value&&typeof value==='object'&&typeof value.toJSON==='function'){value=value.toJSON(key);}
if(typeof rep==='function'){value=rep.call(holder,key,value);}
switch(typeof value){case'string':return quote(value);case'number':return isFinite(value)?String(value):'null';case'boolean':case'null':return String(value);case'object':if(!value){return'null';}
gap+=indent;partial=[];if(typeof value.length==='number'&&!value.propertyIsEnumerable('length')){length=value.length;for(i=0;i<length;i+=1){partial[i]=str(i,value)||'null';}
v=partial.length===0?'[]':gap?'[\n'+gap+
partial.join(',\n'+gap)+'\n'+
mind+']':'['+partial.join(',')+']';gap=mind;return v;}
if(rep&&typeof rep==='object'){length=rep.length;for(i=0;i<length;i+=1){k=rep[i];if(typeof k==='string'){v=str(k,value);if(v){partial.push(quote(k)+(gap?': ':':')+v);}}}}else{for(k in value){if(Object.hasOwnProperty.call(value,k)){v=str(k,value);if(v){partial.push(quote(k)+(gap?': ':':')+v);}}}}
v=partial.length===0?'{}':gap?'{\n'+gap+partial.join(',\n'+gap)+'\n'+
mind+'}':'{'+partial.join(',')+'}';gap=mind;return v;}}
if(typeof JSON.stringify!=='function'){JSON.stringify=function(value,replacer,space){var i;gap='';indent='';if(typeof space==='number'){for(i=0;i<space;i+=1){indent+=' ';}}else if(typeof space==='string'){indent=space;}
rep=replacer;if(replacer&&typeof replacer!=='function'&&(typeof replacer!=='object'||typeof replacer.length!=='number')){throw new Error('JSON.stringify');}
return str('',{'':value});};}
if(typeof JSON.parse!=='function'){JSON.parse=function(text,reviver){var j;function walk(holder,key){var k,v,value=holder[key];if(value&&typeof value==='object'){for(k in value){if(Object.hasOwnProperty.call(value,k)){v=walk(value,k);if(v!==undefined){value[k]=v;}else{delete value[k];}}}}
return reviver.call(holder,key,value);}
cx.lastIndex=0;if(cx.test(text)){text=text.replace(cx,function(a){return'\\u'+
('0000'+a.charCodeAt(0).toString(16)).slice(-4);});}
if(/^[\],:{}\s]*$/.test(text.replace(/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,'@').replace(/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,']').replace(/(?:^|:|,)(?:\s*\[)+/g,''))){j=eval('('+text+')');return typeof reviver==='function'?walk({'':j},''):j;}
throw new SyntaxError('JSON.parse');};}})();