var JSON={copyright:'(c)2005 JSON.org',license:'http://www.crockford.com/JSON/license.html',stringify:function(v){var a=[];function e(s){a[a.length]=s}function g(x){var c,i,l,v;switch(typeof x){case'object':if(x){if(x instanceof Array){e('[');l=a.length;for(i=0;i<x.length;i+=1){v=x[i];if(typeof v!='undefined'&&typeof v!='function'){if(l<a.length){e(',')}g(v)}}e(']');return}else if(typeof x.toString!='undefined'){e('{');l=a.length;for(i in x){v=x[i];if(x.hasOwnProperty(i)&&typeof v!='undefined'&&typeof v!='function'){if(l<a.length){e(',')}g(i);e(':');g(v)}}return e('}')}}e('null');return;case'number':e(isFinite(x)?+x:'null');return;case'string':l=x.length;e('"');for(i=0;i<l;i+=1){c=x.charAt(i);if(c>=' '){if(c=='\\'||c=='"'){e('\\')}e(c)}else{switch(c){case'\b':e('\\b');break;case'\f':e('\\f');break;case'\n':e('\\n');break;case'\r':e('\\r');break;case'\t':e('\\t');break;default:c=c.charCodeAt();e('\\u00'+Math.floor(c/16).toString(16)+(c%16).toString(16))}}}e('"');return;case'boolean':e(String(x));return;default:e('null');return}}g(v);return a.join('')},parse:function(a){return(/^(\s+|[,:{}\[\]]|"(\\["\\\/bfnrtu]|[^\x00-\x1f"\\]+)*"|-?\d+(\.\d*)?([eE][+-]?\d+)?|true|false|null)+$/.test(a))&&eval('('+a+')')}}
var Agent_ShowWorking=1;var Agent_ShowWorkingDiv='AjaxWorking';var Agent_Showing=0;function AgentWorking(a){if(Agent_ShowWorking&&document.getElementById(Agent_ShowWorkingDiv)){if(a===true){Agent_Showing++;document.getElementById(Agent_ShowWorkingDiv).style.display='inline'}else{Agent_Showing--;if(Agent_Showing<=0&&document.getElementById(Agent_ShowWorkingDiv)){document.getElementById(Agent_ShowWorkingDiv).style.display='none'}}}}
function Agent(){this.call=function(){if(arguments.length<3){throw"Incorrect number of parameters. Please check your function call";return false}var c=arguments[0];var d=arguments[1];var f=arguments[2];var g="aa_afunc=call&aa_sfunc="+encodeURI(d)+"&aa_cfunc="+encodeURI(f);for(var i=3;i<arguments.length;i++){if(typeof(arguments[i])=='object'){g+="&aa_sfunc_args[]="+encodeURIComponent(JSON.stringify(arguments[i]))}else{g+="&aa_sfunc_args[]="+encodeURIComponent(arguments[i])}}var h=false;if(window.XMLHttpRequest){h=new XMLHttpRequest()}else if(window.ActiveXObject){try{h=new ActiveXObject("Msxml2.XMLHTTP")}catch(e){try{h=new ActiveXObject("Microsoft.XMLHTTP")}catch(e){}}}if(!h){throw'Agent unable to establish communication';return false}if((f===null)||(f==="")){AgentWorking(true);h.open('POST',c,false);h.setRequestHeader("Content-type","application/x-www-form-urlencoded");h.setRequestHeader("Content-length",g.length);h.send(g);if(h.status==200){var j=h.responseText;var k=JSON.parse(j);AgentWorking(false);if(k===false)return j;else return k}if(h.status!=0){throw'There was a problem with the xmlhttp request';}AgentWorking(false)}else{h.onreadystatechange=function(){if(h.readyState==4){if(h.status==200){var a=h.responseText;var b=JSON.parse(a);if(b===false)eval(f+"(a);");else eval(f+"(b);")}else{if(h.status!=0){throw'There was a problem with the xmlhttp request';}}AgentWorking(false)}};h.open('POST',c,true);h.setRequestHeader("Content-type","application/x-www-form-urlencoded");h.setRequestHeader("Content-length",g.length);h.setRequestHeader("Connection","close");h.send(g);AgentWorking(true);return h}return false}}
var agent=new Agent();