function JsHttpRequest(){var t=this;t.onreadystatechange=null;t.readyState=0;t.responseText=null;t.responseXML=null;t.status=200;t.statusText="OK";t.responseJS=null;t.caching=false;t.loader=null;t.session_name="PHPSESSID";t._ldObj=null;t._reqHeaders=[];t._openArgs=null;t._errors={inv_form_el:"inv_form_el: name=%, tag=%",must_be_single_el:"must_be_single_el.",js_invalid:"js_invalid\n%",url_too_long:"url_too_long: % bytes)",unk_loader:"unk_loader: %",no_loaders:"no_loaders",no_loader_matched:"no_loader_matched:\n%"};t.abort=function(){with(this){if(_ldObj&&_ldObj.abort){_ldObj.abort();}
_cleanup();if(readyState==0){return;}
if(readyState==1&&!_ldObj){readyState=0;return;}
_changeReadyState(4,true);}};t.open=function(_2,_3,_4,_5,_6){with(this){if(_3.match(/^((\w+)\.)?(GET|POST)\s+(.*)/i)){this.loader=RegExp.$2?RegExp.$2:null;_2=RegExp.$3;_3=RegExp.$4;}
try{if(document.location.search.match(new RegExp("[&?]"+session_name+"=([^&?]*)"))||document.cookie.match(new RegExp("(?:;|^)\\s*"+session_name+"=([^;]*)"))){_3+=(_3.indexOf("?")>=0?"&":"?")+session_name+"="+this.escape(RegExp.$1);}}
catch(e){}
_openArgs={method:(_2||"").toUpperCase(),url:_3,asyncFlag:_4,username:_5!=null?_5:"",password:_6!=null?_6:""};_ldObj=null;_changeReadyState(1,true);return true;}};t.send=function(_7){if(!this.readyState){return;}
this._changeReadyState(1,true);this._ldObj=null;var _8=[];var _9=[];if(!this._hash2query(_7,null,_8,_9)){return;}
var _a=null;if(this.caching&&!_9.length){_a=this._openArgs.username+":"+this._openArgs.password+"@"+this._openArgs.url+"|"+_8+"#"+this._openArgs.method;var _b=JsHttpRequest.CACHE[_a];if(_b){this._dataReady(_b[0],_b[1]);return false;}}
var _c=(this.loader||"").toLowerCase();if(_c&&!JsHttpRequest.LOADERS[_c]){return this._error("unk_loader",_c);}
var _d=[];var _e=JsHttpRequest.LOADERS;for(var _f in _e){var aa=_e[_f].loader;if(!aa){continue;}
if(_c&&_f!=_c){continue;}
var ba=new aa(this);JsHttpRequest.extend(ba,this._openArgs);JsHttpRequest.extend(ba,{queryText:_8.join("&"),queryElem:_9,id:(new Date().getTime())+""+JsHttpRequest.COUNT++,hash:_a,span:null});var ca=ba.load();if(!ca){this._ldObj=ba;JsHttpRequest.PENDING[ba.id]=this;return true;}
if(!_c){_d[_d.length]="- "+_f.toUpperCase()+": "+this._l(ca);}else{return this._error(ca);}}
return _f?this._error("no_loader_matched",_d.join("\n")):this._error("no_loaders");};t.getAllResponseHeaders=function(){with(this){return _ldObj&&_ldObj.getAllResponseHeaders?_ldObj.getAllResponseHeaders():[];}};t.getResponseHeader=function(da){with(this){return _ldObj&&_ldObj.getResponseHeader?_ldObj.getResponseHeader(da):null;}};t.setRequestHeader=function(ea,fa){with(this){_reqHeaders[_reqHeaders.length]=[ea,fa];}};t._dataReady=function(ga,js){with(this){if(caching&&_ldObj){JsHttpRequest.CACHE[_ldObj.hash]=[ga,js];}
responseText=responseXML=ga;responseJS=js;if(js!==null){status=200;statusText="OK";}else{status=500;statusText="Internal Server Error";}
_changeReadyState(2);_changeReadyState(3);_changeReadyState(4);_cleanup();}};t._l=function(ha){var i=0,p=0,msg=this._errors[ha[0]];while((p=msg.indexOf("%",p))>=0){var a=ha[++i]+"";msg=msg.substring(0,p)+a+msg.substring(p+1,msg.length);p+=1+a.length;}
return msg;};t._error=function(ia){ia=this._l(typeof(ia)=="string"?arguments:ia);ia="JsHttpRequest: "+ia;if(!window.Error){throw ia;}else{if((new Error(1,"test")).description=="test"){throw new Error(1,ia);}else{throw new Error(ia);}}};t._hash2query=function(ja,ka,la,ma){if(ka==null){ka="";}
if((""+typeof(ja)).toLowerCase()=="object"){var na=false;if(ja&&ja.parentNode&&ja.parentNode.appendChild&&ja.tagName&&ja.tagName.toUpperCase()=="FORM"){ja={form:ja};}
for(var k in ja){var v=ja[k];if(v instanceof Function){continue;}
var oa=ka?ka+"["+this.escape(k)+"]":this.escape(k);var pa=v&&v.parentNode&&v.parentNode.appendChild&&v.tagName;if(pa){var tn=v.tagName.toUpperCase();if(tn=="FORM"){na=true;}else{if(tn=="INPUT"||tn=="TEXTAREA"||tn=="SELECT"){}else{return this._error("inv_form_el",(v.name||""),v.tagName);}}
ma[ma.length]={name:oa,e:v};}else{if(v instanceof Object){this._hash2query(v,oa,la,ma);}else{if(v===null){continue;}
if(v===true){v=1;}
if(v===false){v="";}
la[la.length]=oa+"="+this.escape(""+v);}}
if(na&&ma.length>1){return this._error("must_be_single_el");}}}else{la[la.length]=ja;}
return true;};t._cleanup=function(){var qa=this._ldObj;if(!qa){return;}
JsHttpRequest.PENDING[qa.id]=false;var ra=qa.span;if(!ra){return;}
qa.span=null;var sa=function(){ra.parentNode.removeChild(ra);};JsHttpRequest.setTimeout(sa,50);};t._changeReadyState=function(s,ta){with(this){if(ta){status=statusText=responseJS=null;responseText="";}
readyState=s;if(onreadystatechange){onreadystatechange();}}};t.escape=function(s){return escape(s).replace(new RegExp("\\+","g"),"%2B");};}
JsHttpRequest.COUNT=0;JsHttpRequest.MAX_URL_LEN=2000;JsHttpRequest.CACHE={};JsHttpRequest.PENDING={};JsHttpRequest.LOADERS={};JsHttpRequest._dummy=function(){};JsHttpRequest.TIMEOUTS={s:window.setTimeout,c:window.clearTimeout};JsHttpRequest.setTimeout=function(ua,dt){window.JsHttpRequest_tmp=JsHttpRequest.TIMEOUTS.s;if(typeof(ua)=="string"){id=window.JsHttpRequest_tmp(ua,dt);}else{var id=null;var va=function(){ua();delete JsHttpRequest.TIMEOUTS[id];};id=window.JsHttpRequest_tmp(va,dt);JsHttpRequest.TIMEOUTS[id]=va;}
window.JsHttpRequest_tmp=null;return id;};JsHttpRequest.clearTimeout=function(id){window.JsHttpRequest_tmp=JsHttpRequest.TIMEOUTS.c;delete JsHttpRequest.TIMEOUTS[id];var r=window.JsHttpRequest_tmp(id);window.JsHttpRequest_tmp=null;return r;};JsHttpRequest.query=function(wa,xa,ya,za){var Aa=new this();Aa.caching=!za;Aa.onreadystatechange=function(){if(Aa.readyState==4){ya(Aa.responseJS,Aa.responseText);}};Aa.open(null,wa,true);Aa.send(xa);};JsHttpRequest.dataReady=function(d){var th=this.PENDING[d.id];delete this.PENDING[d.id];if(th){th._dataReady(d.text,d.js);}else{if(th!==false){throw "dataReady(): unknown pending id: "+d.id;}}};JsHttpRequest.extend=function(Ba,Ca){for(var k in Ca){Ba[k]=Ca[k];}};JsHttpRequest.LOADERS.xml={loader:function(Da){JsHttpRequest.extend(Da._errors,{xml_no:"xml_no",xml_no_diffdom:"xml_no_diffdom: %",xml_no_headers:"xml_no_headers",xml_no_form_upl:"xml_no_form_upl"});this.load=function(){if(this.queryElem.length){return["xml_no_form_upl"];}
if(this.url.match(new RegExp("^([a-z]+://[^\\/]+)(.*)","i"))){if(RegExp.$1.toLowerCase()!=document.location.protocol+"//"+document.location.hostname.toLowerCase()){return["xml_no_diffdom",RegExp.$1];}}
var xr=null;if(window.XMLHttpRequest){try{xr=new XMLHttpRequest();}
catch(e){}}else{if(window.ActiveXObject){try{xr=new ActiveXObject("Microsoft.XMLHTTP");}
catch(e){}
if(!xr){try{xr=new ActiveXObject("Msxml2.XMLHTTP");}
catch(e){}}}}
if(!xr){return["xml_no"];}
var Ea=window.ActiveXObject||xr.setRequestHeader;if(!this.method){this.method=Ea&&this.queryText.length?"POST":"GET";}
if(this.method=="GET"){if(this.queryText){this.url+=(this.url.indexOf("?")>=0?"&":"?")+this.queryText;}
this.queryText="";if(this.url.length>JsHttpRequest.MAX_URL_LEN){return["url_too_long",JsHttpRequest.MAX_URL_LEN];}}else{if(this.method=="POST"&&!Ea){return["xml_no_headers"];}}
this.url+=(this.url.indexOf("?")>=0?"&":"?")+"JsHttpRequest="+(Da.caching?"0":this.id)+"-xml";var id=this.id;xr.onreadystatechange=function(){if(xr.readyState!=4){return;}
xr.onreadystatechange=JsHttpRequest._dummy;Da.status=null;try{Da.status=xr.status;Da.responseText=xr.responseText;}
catch(e){}
if(!Da.status){return;}
try{eval("JsHttpRequest._tmp = function(id) { var d = "+Da.responseText+"; d.id = id; JsHttpRequest.dataReady(d); }");}
catch(e){return Da._error("js_invalid",Da.responseText);}
JsHttpRequest._tmp(id);JsHttpRequest._tmp=null;};xr.open(this.method,this.url,true,this.username,this.password);if(Ea){for(var i=0;i<Da._reqHeaders.length;i++){xr.setRequestHeader(Da._reqHeaders[i][0],Da._reqHeaders[i][1]);}
xr.setRequestHeader("Content-Type","application/octet-stream");}
xr.send(this.queryText);this.span=null;this.xr=xr;return null;};this.getAllResponseHeaders=function(){return this.xr.getAllResponseHeaders();};this.getResponseHeader=function(Fa){return this.xr.getResponseHeader(Fa);};this.abort=function(){this.xr.abort();this.xr=null;};}};JsHttpRequest.LOADERS.script={loader:function(Ga){JsHttpRequest.extend(Ga._errors,{script_only_get:"script_only_get",script_no_form:"script_no_form"});this.load=function(){if(this.queryText){this.url+=(this.url.indexOf("?")>=0?"&":"?")+this.queryText;}
this.url+=(this.url.indexOf("?")>=0?"&":"?")+"JsHttpRequest="+this.id+"-"+"script";this.queryText="";if(!this.method){this.method="GET";}
if(this.method!=="GET"){return["script_only_get"];}
if(this.queryElem.length){return["script_no_form"];}
if(this.url.length>JsHttpRequest.MAX_URL_LEN){return["url_too_long",JsHttpRequest.MAX_URL_LEN];}
var th=this,d=document,s=null,b=d.body;if(!window.opera){this.span=s=d.createElement("SCRIPT");var Ha=function(){s.language="JavaScript";if(s.setAttribute){s.setAttribute("src",th.url);}else{s.src=th.url;}
b.insertBefore(s,b.lastChild);};}else{this.span=s=d.createElement("SPAN");s.style.display="none";b.insertBefore(s,b.lastChild);s.innerHTML="Workaround for IE.<s"+"cript></"+"script>";var Ha=function(){s=s.getElementsByTagName("SCRIPT")[0];s.language="JavaScript";if(s.setAttribute){s.setAttribute("src",th.url);}else{s.src=th.url;}};}
JsHttpRequest.setTimeout(Ha,10);return null;};}};JsHttpRequest.LOADERS.form={loader:function(Ia){JsHttpRequest.extend(Ia._errors,{form_el_not_belong:"form_el_not_belong \"%\"",form_el_belong_diff:"form_el_belong_diff \"%\"",form_el_inv_enctype:"form_el_inv_enctype \"%\", \"%\""});this.load=function(){var th=this;if(!th.method){th.method="POST";}
th.url+=(th.url.indexOf("?")>=0?"&":"?")+"JsHttpRequest="+th.id+"-"+"form";if(th.method=="GET"){if(th.queryText){th.url+=(th.url.indexOf("?")>=0?"&":"?")+th.queryText;}
if(th.url.length>JsHttpRequest.MAX_URL_LEN){return["url_too_long",JsHttpRequest.MAX_URL_LEN];}
var p=th.url.split("?",2);th.url=p[0];th.queryText=p[1]||"";}
var Ja=null;var Ka=false;if(th.queryElem.length){if(th.queryElem[0].e.tagName.toUpperCase()=="FORM"){Ja=th.queryElem[0].e;Ka=true;th.queryElem=[];}else{Ja=th.queryElem[0].e.form;for(var i=0;i<th.queryElem.length;i++){var e=th.queryElem[i].e;if(!e.form){return["form_el_not_belong",e.name];}
if(e.form!=Ja){return["form_el_belong_diff",e.name];}}}
if(th.method=="POST"){var La="multipart/form-data";var Ma=(Ja.attributes.encType&&Ja.attributes.encType.nodeValue)||(Ja.attributes.enctype&&Ja.attributes.enctype.value)||Ja.enctype;if(Ma!=La){return["form_el_inv_enctype",La,Ma];}}}
var d=Ja&&(Ja.ownerDocument||Ja.document)||document;var Na="jshr_i_"+th.id;var s=th.span=d.createElement("DIV");s.style.position="absolute";s.style.display="none";s.style.visibility="hidden";s.innerHTML=(Ja?"":"<form"+(th.method=="POST"?" enctype=\"multipart/form-data\" method=\"post\"":"")+"></form>")+"<iframe name=\""+Na+"\" id=\""+Na+"\" style=\"width:0px; height:0px; overflow:hidden; border:none\"></iframe>";if(!Ja){Ja=th.span.firstChild;}
d.body.insertBefore(s,d.body.lastChild);var Oa=function(e,Pa){var sv=[];var Qa=e;if(e.mergeAttributes){var Qa=d.createElement("form");Qa.mergeAttributes(e,false);}
for(var i=0;i<Pa.length;i++){var k=Pa[i][0],v=Pa[i][1];sv[sv.length]=[k,Qa.getAttribute(k)];Qa.setAttribute(k,v);}
if(e.mergeAttributes){e.mergeAttributes(Qa,false);}
return sv;};var Ra=function(){top.JsHttpRequestGlobal=JsHttpRequest;var Sa=[];if(!Ka){for(var i=0,n=Ja.elements.length;i<n;i++){Sa[i]=Ja.elements[i].name;Ja.elements[i].name="";}}
var qt=th.queryText.split("&");for(var i=qt.length-1;i>=0;i--){var Ta=qt[i].split("=",2);var e=d.createElement("INPUT");e.type="hidden";e.name=unescape(Ta[0]);e.value=Ta[1]!=null?unescape(Ta[1]):"";Ja.appendChild(e);}
for(var i=0;i<th.queryElem.length;i++){th.queryElem[i].e.name=th.queryElem[i].name;}
var sv=Oa(Ja,[["action",th.url],["method",th.method],["onsubmit",null],["target",Na]]);Ja.submit();Oa(Ja,sv);for(var i=0;i<qt.length;i++){Ja.lastChild.parentNode.removeChild(Ja.lastChild);}
if(!Ka){for(var i=0,n=Ja.elements.length;i<n;i++){Ja.elements[i].name=Sa[i];}}};JsHttpRequest.setTimeout(Ra,100);return null;};}};