/* This file was compressed using sharpNet performance and health module. http://www.tiagodherbe.eu */ 
var Prototype={Version:'1.5.0',BrowserFeatures:{XPath:!!document.evaluate},ScriptFragment:'(?:<script.*?>)((\n|\r|.)*?)(?:<\/script>)',emptyFunction:function(){},K:function(x){return x}}
Function.prototype.bind=function(){var __method=this,args=$A(arguments),object=args.shift();return function(){return __method.apply(object,args.concat($A(arguments)));}};Function.prototype.bindAsEventListener=function(object){var __method=this,args=$A(arguments),object=args.shift();return function(event){return __method.apply(object,[(event||window.event)].concat(args).concat($A(arguments)));}};var Class={create:function(){return function(){this.initialize.apply(this,arguments);}}}
var Abstract=new Object();Object.extend=function(destination,source){for(var property in source){destination[property]=source[property];}
return destination;};Object.extend(Object,{inspect:function(object){try{if(object===undefined)return'undefined';if(object===null)return'null';return object.inspect?object.inspect():object.toString();}catch(e){if(e instanceof RangeError)return'...';throw e;}},keys:function(object){var keys=[];for(var property in object)
keys.push(property);return keys;},values:function(object){var values=[];for(var property in object)
values.push(object[property]);return values;},clone:function(object){return Object.extend({},object);}});Object.extend(Number.prototype,{toColorPart:function(){var digits=this.toString(16);if(this<16)return'0'+digits;return digits;},succ:function(){return this+1;},times:function(iterator){$R(0,this,true).each(iterator);return this;}});var Try={these:function(){var returnValue;for(var i=0,length=arguments.length;i<length;i++){var lambda=arguments[i];try{returnValue=lambda();break;}catch(e){}}
return returnValue;}};var PeriodicalExecuter=Class.create();PeriodicalExecuter.prototype={initialize:function(callback,frequency){this.callback=callback;this.frequency=frequency;this.currentlyExecuting=false;this.registerCallback();},registerCallback:function(){this.timer=setInterval(this.onTimerEvent.bind(this),this.frequency*1000);},stop:function(){if(!this.timer)return;clearInterval(this.timer);this.timer=null;},onTimerEvent:function(){if(!this.currentlyExecuting){try{this.currentlyExecuting=true;this.callback(this);}finally{this.currentlyExecuting=false;}}}};Boolean.__typeName="Boolean";Boolean.__class=true;String.__typeName="String";String.__class=true;String.interpret=function(value){return value==null?'':String(value);};Object.extend(String.prototype,{gsub:function(pattern,replacement){var result='',source=this,match;replacement=arguments.callee.prepareReplacement(replacement);while(source.length>0){if(match=source.match(pattern)){result+=source.slice(0,match.index);result+=String.interpret(replacement(match));source=source.slice(match.index+match[0].length);}else{result+=source,source='';}}
return result;},sub:function(pattern,replacement,count){replacement=this.gsub.prepareReplacement(replacement);count=count===undefined?1:count;return this.gsub(pattern,function(match){if(--count<0)return match[0];return replacement(match);});},scan:function(pattern,iterator){this.gsub(pattern,iterator);return this;},truncate:function(length,truncation){length=length||30;truncation=truncation===undefined?'...':truncation;return this.length>length?this.slice(0,length-truncation.length)+truncation:this;},strip:function(){return this.replace(/^\s+/,'').replace(/\s+$/,'');},replaceGridHtml:function(){if(this==null)return'';return this.replace(/#%cLt#%/g,'<');},stripTags:function(){return this.replace(/<\/?[^>]+>/gi,'');},stripScripts:function(){return this.replace(new RegExp(Prototype.ScriptFragment,'img'),'');},extractScripts:function(){var matchAll=new RegExp(Prototype.ScriptFragment,'img');var matchOne=new RegExp(Prototype.ScriptFragment,'im');return(this.match(matchAll)||[]).map(function(scriptTag){return(scriptTag.match(matchOne)||['',''])[1];});},evalScripts:function(){return this.extractScripts().map(function(script){return eval(script)});},escapeHTML:function(){var div=document.createElement('div');var text=document.createTextNode(this);div.appendChild(text);return div.innerHTML;},unescapeHTML:function(){var div=document.createElement('div');div.innerHTML=this.stripTags();return div.childNodes[0]?(div.childNodes.length>1?$A(div.childNodes).inject('',function(memo,node){return memo+node.nodeValue}):div.childNodes[0].nodeValue):'';},toQueryParams:function(separator){var match=this.strip().match(/([^?#]*)(#.*)?$/);if(!match)return{};return match[1].split(separator||'&').inject({},function(hash,pair){if((pair=pair.split('='))[0]){var name=decodeURIComponent(pair[0]);var value=pair[1]?decodeURIComponent(pair[1]):undefined;if(hash[name]!==undefined){if(hash[name].constructor!=Array)
hash[name]=[hash[name]];if(value)hash[name].push(value);}
else hash[name]=value;}
return hash;});},toArray:function(){return this.split('');},succ:function(){return this.slice(0,this.length-1)+
String.fromCharCode(this.charCodeAt(this.length-1)+1);},camelize:function(){var parts=this.split('-'),len=parts.length;if(len==1)return parts[0];var camelized=this.charAt(0)=='-'?parts[0].charAt(0).toUpperCase()+parts[0].substring(1):parts[0];for(var i=1;i<len;i++)
camelized+=parts[i].charAt(0).toUpperCase()+parts[i].substring(1);return camelized;},capitalize:function(){return this.charAt(0).toUpperCase()+this.substring(1).toLowerCase();},underscore:function(){return this.gsub(/::/,'/').gsub(/([A-Z]+)([A-Z][a-z])/,'#{1}_#{2}').gsub(/([a-z\d])([A-Z])/,'#{1}_#{2}').gsub(/-/,'_').toLowerCase();},dasherize:function(){return this.gsub(/_/,'-');},inspect:function(useDoubleQuotes){var escapedString=this.replace(/\\/g,'\\\\');if(useDoubleQuotes)
return'"'+escapedString.replace(/"/g,'\\"')+'"';else
return"'"+escapedString.replace(/'/g,'\\\'')+"'";},endsWith:function(suffix){return(this.substr(this.length-suffix.length)==suffix);},startsWith:function(prefix){return(this.substr(0,prefix.length)==prefix);},lTrim:function(){return this.replace(/^\s*/,"");},trimLeft:function(){return this.lTrim();},rTrim:function(){return this.replace(/\s*$/,"");},trimRight:function(){return this.rTrim();},trim:function(){return this.trimRight().trimLeft();}});String.prototype.gsub.prepareReplacement=function(replacement){if(typeof replacement=='function')return replacement;var template=new Template(replacement);return function(match){return template.evaluate(match)};};String.prototype.parseQuery=String.prototype.toQueryParams;var Template=Class.create();Template.Pattern=/(^|.|\r|\n)(#\{(.*?)\})/;Template.prototype={initialize:function(template,pattern){this.template=template.toString();this.pattern=pattern||Template.Pattern;},evaluate:function(object){return this.template.gsub(this.pattern,function(match){var before=match[1];if(before=='\\')return match[2];return before+String.interpret(object[match[3]]);});}};var $break=new Object();var $continue=new Object();var Enumerable={each:function(iterator){var index=0;try{this._each(function(value){try{iterator(value,index++);}catch(e){if(e!=$continue)throw e;}});}catch(e){}
return this;},eachSlice:function(number,iterator){var index=-number,slices=[],array=this.toArray();while((index+=number)<array.length)
slices.push(array.slice(index,index+number));return slices.map(iterator);},all:function(iterator){var result=true;this.each(function(value,index){result=result&&!!(iterator||Prototype.K)(value,index);if(!result)throw $break;});return result;},any:function(iterator){var result=false;this.each(function(value,index){if(result=!!(iterator||Prototype.K)(value,index))
throw $break;});return result;},collect:function(iterator){var results=[];this.each(function(value,index){results.push((iterator||Prototype.K)(value,index));});return results;},detect:function(iterator){var result;this.each(function(value,index){if(iterator(value,index)){result=value;throw $break;}});return result;},findAll:function(iterator){var results=[];this.each(function(value,index){if(iterator(value,index))
results.push(value);});return results;},grep:function(pattern,iterator){var results=[];this.each(function(value,index){var stringValue=value.toString();if(stringValue.match(pattern))
results.push((iterator||Prototype.K)(value,index));})
return results;},include:function(object){var found=false;this.each(function(value){if(value==object){found=true;throw $break;}});return found;},inGroupsOf:function(number,fillWith){fillWith=fillWith===undefined?null:fillWith;return this.eachSlice(number,function(slice){while(slice.length<number)slice.push(fillWith);return slice;});},inject:function(memo,iterator){this.each(function(value,index){memo=iterator(memo,value,index);});return memo;},invoke:function(method){var args=$A(arguments).slice(1);return this.map(function(value){return value[method].apply(value,args);});},max:function(iterator){var result;this.each(function(value,index){value=(iterator||Prototype.K)(value,index);if(result==undefined||value>=result)
result=value;});return result;},min:function(iterator){var result;this.each(function(value,index){value=(iterator||Prototype.K)(value,index);if(result==undefined||value<result)
result=value;});return result;},partition:function(iterator){var trues=[],falses=[];this.each(function(value,index){((iterator||Prototype.K)(value,index)?trues:falses).push(value);});return[trues,falses];},pluck:function(property){var results=[];this.each(function(value,index){results.push(value[property]);});return results;},reject:function(iterator){var results=[];this.each(function(value,index){if(!iterator(value,index))
results.push(value);});return results;},sortBy:function(iterator){return this.map(function(value,index){return{value:value,criteria:iterator(value,index)};}).sort(function(left,right){var a=left.criteria,b=right.criteria;return a<b?-1:a>b?1:0;}).pluck('value');},toArray:function(){return this.map();},zip:function(){var iterator=Prototype.K,args=$A(arguments);if(typeof args.last()=='function')
iterator=args.pop();var collections=[this].concat(args).map($A);return this.map(function(value,index){return iterator(collections.pluck(index));});},size:function(){return this.toArray().length;},inspect:function(){return'#<Enumerable:'+this.toArray().inspect()+'>';}};Object.extend(Enumerable,{map:Enumerable.collect,find:Enumerable.detect,select:Enumerable.findAll,member:Enumerable.include,entries:Enumerable.toArray});var $A=Array.from=function(iterable){if(!iterable)return[];if(iterable.toArray){return iterable.toArray();}else{var results=[];for(var i=0,length=iterable.length;i<length;i++)
results.push(iterable[i]);return results;}};Object.extend(Array.prototype,Enumerable);if(!Array.prototype._reverse)
Array.prototype._reverse=Array.prototype.reverse;Object.extend(Array.prototype,{_each:function(iterator){for(var i=0,length=this.length;i<length;i++)
iterator(this[i]);},clear:function(){this.length=0;return this;},first:function(){return this[0];},last:function(){return this[this.length-1];},compact:function(){return this.select(function(value){return value!=null;});},flatten:function(){return this.inject([],function(array,value){return array.concat(value&&value.constructor==Array?value.flatten():[value]);});},without:function(){var values=$A(arguments);return this.select(function(value){return!values.include(value);});},indexOf:function(object){for(var i=0,length=this.length;i<length;i++)
if(this[i]==object)return i;return-1;},reverse:function(inline){return(inline!==false?this:this.toArray())._reverse();},reduce:function(){return this.length>1?this:this[0];},uniq:function(){return this.inject([],function(array,value){return array.include(value)?array:array.concat([value]);});},clone:function(){return[].concat(this);},size:function(){return this.length;},inspect:function(){return'['+this.map(Object.inspect).join(', ')+']';}});Array.prototype.toArray=Array.prototype.clone;function $w(string){string=string.strip();return string?string.split(/\s+/):[];};if(window.opera){Array.prototype.concat=function(){var array=[];for(var i=0,length=this.length;i<length;i++)array.push(this[i]);for(var i=0,length=arguments.length;i<length;i++){if(arguments[i].constructor==Array){for(var j=0,arrayLength=arguments[i].length;j<arrayLength;j++)
array.push(arguments[i][j]);}else{array.push(arguments[i]);}}
return array;}};var Hash=function(obj){Object.extend(this,obj||{});};Object.extend(Hash,{toQueryString:function(obj){var parts=[];this.prototype._each.call(obj,function(pair){if(!pair.key)return;if(pair.value&&pair.value.constructor==Array){var values=pair.value.compact();if(values.length<2)pair.value=values.reduce();else{key=encodeURIComponent(pair.key);values.each(function(value){value=value!=undefined?encodeURIComponent(value):'';parts.push(key+'='+encodeURIComponent(value));});return;}}
if(pair.value==undefined)pair[1]='';parts.push(pair.map(encodeURIComponent).join('='));});return parts.join('&');}});Object.extend(Hash.prototype,Enumerable);Object.extend(Hash.prototype,{_each:function(iterator){for(var key in this){var value=this[key];if(value&&value==Hash.prototype[key])continue;var pair=[key,value];pair.key=key;pair.value=value;iterator(pair);}},keys:function(){return this.pluck('key');},values:function(){return this.pluck('value');},merge:function(hash){return $H(hash).inject(this,function(mergedHash,pair){mergedHash[pair.key]=pair.value;return mergedHash;});},remove:function(){var result;for(var i=0,length=arguments.length;i<length;i++){var value=this[arguments[i]];if(value!==undefined){if(result===undefined)result=value;else{if(result.constructor!=Array)result=[result];result.push(value)}}
delete this[arguments[i]];}
return result;},toQueryString:function(){return Hash.toQueryString(this);},inspect:function(){return'#<Hash:{'+this.map(function(pair){return pair.map(Object.inspect).join(': ');}).join(', ')+'}>';}});function $H(object){if(object&&object.constructor==Hash)return object;return new Hash(object);};ObjectRange=Class.create();Object.extend(ObjectRange.prototype,Enumerable);Object.extend(ObjectRange.prototype,{initialize:function(start,end,exclusive){this.start=start;this.end=end;this.exclusive=exclusive;},_each:function(iterator){var value=this.start;while(this.include(value)){iterator(value);value=value.succ();}},include:function(value){if(value<this.start)
return false;if(this.exclusive)
return value<this.end;return value<=this.end;}});var $R=function(start,end,exclusive){return new ObjectRange(start,end,exclusive);};var Ajax={getTransport:function(){return Try.these(function(){return new XMLHttpRequest()},function(){return new ActiveXObject('Msxml2.XMLHTTP')},function(){return new ActiveXObject('Microsoft.XMLHTTP')})||false;},activeRequestCount:0};Ajax.Responders={responders:[],_each:function(iterator){this.responders._each(iterator);},register:function(responder){if(!this.include(responder))
this.responders.push(responder);},unregister:function(responder){this.responders=this.responders.without(responder);},dispatch:function(callback,request,transport,json){this.each(function(responder){if(typeof responder[callback]=='function'){try{responder[callback].apply(responder,[request,transport,json]);}catch(e){}}});}};Object.extend(Ajax.Responders,Enumerable);Ajax.Responders.register({onCreate:function(){Ajax.activeRequestCount++;},onComplete:function(){Ajax.activeRequestCount--;}});Ajax.Base=function(){};Ajax.Base.prototype={setOptions:function(options){this.options={method:'post',asynchronous:true,contentType:'application/x-www-form-urlencoded',encoding:'UTF-8',parameters:''}
Object.extend(this.options,options||{});this.options.method=this.options.method.toLowerCase();if(typeof this.options.parameters=='string')
this.options.parameters=this.options.parameters.toQueryParams();}};Ajax.Request=Class.create();Ajax.Request.Events=['Uninitialized','Loading','Loaded','Interactive','Complete'];Ajax.Request.prototype=Object.extend(new Ajax.Base(),{_complete:false,initialize:function(url,options){this.transport=Ajax.getTransport();this.setOptions(options);this.request(url);},request:function(url){this.url=url;this.method=this.options.method;var params=this.options.parameters;if(!['get','post'].include(this.method)){params['_method']=this.method;this.method='post';}
params=Hash.toQueryString(params);if(params&&/Konqueror|Safari|KHTML/.test(navigator.userAgent))params+='&_='
if(this.method=='get'&&params)
this.url+=(this.url.indexOf('?')>-1?'&':'?')+params;try{Ajax.Responders.dispatch('onCreate',this,this.transport);this.transport.open(this.method.toUpperCase(),this.url,this.options.asynchronous);if(this.options.asynchronous)
setTimeout(function(){this.respondToReadyState(1)}.bind(this),10);this.transport.onreadystatechange=this.onStateChange.bind(this);this.setRequestHeaders();var body=this.method=='post'?(this.options.postBody||params):null;this.transport.send(body);if(!this.options.asynchronous&&this.transport.overrideMimeType)
this.onStateChange();}
catch(e){this.dispatchException(e);}},onStateChange:function(){var readyState=this.transport.readyState;if(readyState>1&&!((readyState==4)&&this._complete))
this.respondToReadyState(this.transport.readyState);},setRequestHeaders:function(){var headers={'X-Requested-With':'XMLHttpRequest','X-Prototype-Version':Prototype.Version,'Accept':'text/javascript, text/html, application/xml, text/xml, */*'};if(this.method=='post'){headers['Content-type']=this.options.contentType+
(this.options.encoding?'; charset='+this.options.encoding:'');if(this.transport.overrideMimeType&&(navigator.userAgent.match(/Gecko\/(\d{4})/)||[0,2005])[1]<2005)headers['Connection']='close';}
if(typeof this.options.requestHeaders=='object'){var extras=this.options.requestHeaders;if(typeof extras.push=='function')
for(var i=0,length=extras.length;i<length;i+=2)
headers[extras[i]]=extras[i+1];else
$H(extras).each(function(pair){headers[pair.key]=pair.value});}
for(var name in headers)
this.transport.setRequestHeader(name,headers[name]);},success:function(){return!this.transport.status||(this.transport.status>=200&&this.transport.status<300);},respondToReadyState:function(readyState){var state=Ajax.Request.Events[readyState];var transport=this.transport,json=this.evalJSON();if(state=='Complete'){try{this._complete=true;(this.options['on'+this.transport.status]||this.options['on'+(this.success()?'Success':'Failure')]||Prototype.emptyFunction)(transport,json);}catch(e){this.dispatchException(e);}
if((this.getHeader('Content-type')||'text/javascript').strip().match(/^(text|application)\/(x-)?(java|ecma)script(;.*)?$/i))
this.evalResponse();}
try{(this.options['on'+state]||Prototype.emptyFunction)(transport,json);Ajax.Responders.dispatch('on'+state,this,transport,json);}catch(e){this.dispatchException(e);}
if(state=='Complete'){this.transport.onreadystatechange=Prototype.emptyFunction;}},getHeader:function(name){try{return this.transport.getResponseHeader(name);}catch(e){return null}},evalJSON:function(){try{var json=this.getHeader('X-JSON');return json?eval('('+json+')'):null;}catch(e){return null}},evalResponse:function(){try{return eval(this.transport.responseText);}catch(e){this.dispatchException(e);}},dispatchException:function(exception){(this.options.onException||Prototype.emptyFunction)(this,exception);Ajax.Responders.dispatch('onException',this,exception);}});Ajax.Updater=Class.create();Object.extend(Object.extend(Ajax.Updater.prototype,Ajax.Request.prototype),{initialize:function(container,url,options){this.container={success:(container.success||container),failure:(container.failure||(container.success?null:container))}
this.transport=Ajax.getTransport();this.setOptions(options);var onComplete=this.options.onComplete||Prototype.emptyFunction;this.options.onComplete=(function(transport,param){this.updateContent();onComplete(transport,param);}).bind(this);this.request(url);},updateContent:function(){var receiver=this.container[this.success()?'success':'failure'];var response=this.transport.responseText;if(!this.options.evalScripts)response=response.stripScripts();if(receiver=$(receiver)){if(this.options.insertion)
new this.options.insertion(receiver,response);else
receiver.update(response);}
if(this.success()){if(this.onComplete)
setTimeout(this.onComplete.bind(this),10);}}});Ajax.PeriodicalUpdater=Class.create();Ajax.PeriodicalUpdater.prototype=Object.extend(new Ajax.Base(),{initialize:function(container,url,options){this.setOptions(options);this.onComplete=this.options.onComplete;this.frequency=(this.options.frequency||2);this.decay=(this.options.decay||1);this.updater={};this.container=container;this.url=url;this.start();},start:function(){this.options.onComplete=this.updateComplete.bind(this);this.onTimerEvent();},stop:function(){this.updater.options.onComplete=undefined;clearTimeout(this.timer);(this.onComplete||Prototype.emptyFunction).apply(this,arguments);},updateComplete:function(request){if(this.options.decay){this.decay=(request.responseText==this.lastText?this.decay*this.options.decay:1);this.lastText=request.responseText;}
this.timer=setTimeout(this.onTimerEvent.bind(this),this.decay*this.frequency*1000);},onTimerEvent:function(){this.updater=new Ajax.Updater(this.container,this.url,this.options);}});function $(element){if(arguments.length>1){for(var i=0,elements=[],length=arguments.length;i<length;i++)
elements.push($(arguments[i]));return elements;}
if(typeof element=='string'){element=document.getElementById(element);}
return Element.extend(element);};function $$(){return Selector.findChildElements(document,$A(arguments));};if(Prototype.BrowserFeatures.XPath){document._getElementsByXPath=function(expression,parentElement){var results=[];var query=document.evaluate(expression,$(parentElement)||document,null,XPathResult.ORDERED_NODE_SNAPSHOT_TYPE,null);for(var i=0,length=query.snapshotLength;i<length;i++)
results.push(query.snapshotItem(i));return results;};};document.getElementsByClassName=function(className,parentElement){if(Prototype.BrowserFeatures.XPath){var q=".//*[contains(concat(' ', @class, ' '), ' "+className+" ')]";return document._getElementsByXPath(q,parentElement);}else{var children=($(parentElement)||document.body).getElementsByTagName('*');var elements=[],child;for(var i=0,length=children.length;i<length;i++){child=children[i];if(Element.hasClassName(child,className))
elements.push(Element.extend(child));}
return elements;}};if(!window.Element)
var Element=new Object();Element.extend=function(element){if(!element||_nativeExtensions||element.nodeType==3)return element;if(!element._extended&&element.tagName&&element!=window){var methods=Object.clone(Element.Methods),cache=Element.extend.cache;if(element.tagName=='FORM')
Object.extend(methods,Form.Methods);if(['INPUT','TEXTAREA','SELECT'].include(element.tagName))
Object.extend(methods,Form.Element.Methods);Object.extend(methods,Element.Methods.Simulated);for(var property in methods){var value=methods[property];if(typeof value=='function'&&!(property in element))
element[property]=cache.findOrStore(value);}}
element._extended=true;return element;};Element.extend.cache={findOrStore:function(value){return this[value]=this[value]||function(){return value.apply(null,[this].concat($A(arguments)));}}};Element.Methods={visible:function(element){return $(element).style.display!='none';},toggle:function(element){element=$(element);Element[Element.visible(element)?'hide':'show'](element);return element;},hide:function(element){$(element).style.display='none';return element;},show:function(element){$(element).style.display='';return element;},remove:function(element){element=$(element);if(element.parentNode)element.parentNode.removeChild(element);return element;},update:function(element,html){html=typeof html=='undefined'?'':html.toString();$(element).innerHTML=html.stripScripts();setTimeout(function(){html.evalScripts()},10);return element;},replace:function(element,html){element=$(element);html=typeof html=='undefined'?'':html.toString();if(element.outerHTML){element.outerHTML=html.stripScripts();}else{var range=element.ownerDocument.createRange();range.selectNodeContents(element);element.parentNode.replaceChild(range.createContextualFragment(html.stripScripts()),element);}
setTimeout(function(){html.evalScripts()},10);return element;},inspect:function(element){element=$(element);var result='<'+element.tagName.toLowerCase();$H({'id':'id','className':'class'}).each(function(pair){var property=pair.first(),attribute=pair.last();var value=(element[property]||'').toString();if(value)result+=' '+attribute+'='+value.inspect(true);});return result+'>';},recursivelyCollect:function(element,property){element=$(element);var elements=[];while(element=element[property])
if(element.nodeType==1)
elements.push(Element.extend(element));return elements;},ancestors:function(element){return $(element).recursivelyCollect('parentNode');},descendants:function(element){return $A($(element).getElementsByTagName('*'));},immediateDescendants:function(element){if(!(element=$(element).firstChild))return[];while(element&&element.nodeType!=1)element=element.nextSibling;if(element)return[element].concat($(element).nextSiblings());return[];},previousSiblings:function(element){return $(element).recursivelyCollect('previousSibling');},nextSiblings:function(element){return $(element).recursivelyCollect('nextSibling');},siblings:function(element){element=$(element);return element.previousSiblings().reverse().concat(element.nextSiblings());},match:function(element,selector){if(typeof selector=='string')
selector=new Selector(selector);return selector.match($(element));},up:function(element,expression,index){return Selector.findElement($(element).ancestors(),expression,index);},down:function(element,expression,index){return Selector.findElement($(element).descendants(),expression,index);},previous:function(element,expression,index){return Selector.findElement($(element).previousSiblings(),expression,index);},next:function(element,expression,index){return Selector.findElement($(element).nextSiblings(),expression,index);},getElementsBySelector:function(){var args=$A(arguments),element=$(args.shift());return Selector.findChildElements(element,args);},getElementsByClassName:function(element,className){return document.getElementsByClassName(className,element);},readAttribute:function(element,name){element=$(element);if(document.all&&!window.opera){var t=Element._attributeTranslations;if(t.values[name])return t.values[name](element,name);if(t.names[name])name=t.names[name];var attribute=element.attributes[name];if(attribute)return attribute.nodeValue;}
return element.getAttribute(name);},getHeight:function(element){return $(element).getDimensions().height;},getWidth:function(element){return $(element).getDimensions().width;},classNames:function(element){return new Element.ClassNames(element);},hasClassName:function(element,className){if(!(element=$(element)))return;var elementClassName=element.className;if(elementClassName.length==0)return false;if(elementClassName==className||elementClassName.match(new RegExp("(^|\\s)"+className+"(\\s|$)")))
return true;return false;},addClassName:function(element,className){if(!(element=$(element)))return;Element.classNames(element).add(className);return element;},removeClassName:function(element,className){if(!(element=$(element)))return;Element.classNames(element).remove(className);return element;},toggleClassName:function(element,className){if(!(element=$(element)))return;Element.classNames(element)[element.hasClassName(className)?'remove':'add'](className);return element;},observe:function(){Event.observe.apply(Event,arguments);return $A(arguments).first();},stopObserving:function(){Event.stopObserving.apply(Event,arguments);return $A(arguments).first();},cleanWhitespace:function(element){element=$(element);var node=element.firstChild;while(node){var nextNode=node.nextSibling;if(node.nodeType==3&&!/\S/.test(node.nodeValue))
element.removeChild(node);node=nextNode;}
return element;},empty:function(element){return $(element).innerHTML.match(/^\s*$/);},descendantOf:function(element,ancestor){element=$(element),ancestor=$(ancestor);while(element=element.parentNode)
if(element==ancestor)return true;return false;},scrollTo:function(element){element=$(element);var pos=Position.cumulativeOffset(element);window.scrollTo(pos[0],pos[1]);return element;},getStyle:function(element,style){element=$(element);if(['float','cssFloat'].include(style))
style=(typeof element.style.styleFloat!='undefined'?'styleFloat':'cssFloat');style=style.camelize();var value=element.style[style];if(!value){if(document.defaultView&&document.defaultView.getComputedStyle){var css=document.defaultView.getComputedStyle(element,null);value=css?css[style]:null;}else if(element.currentStyle){value=element.currentStyle[style];}}
if((value=='auto')&&['width','height'].include(style)&&(element.getStyle('display')!='none'))
value=element['offset'+style.capitalize()]+'px';if(window.opera&&['left','top','right','bottom'].include(style))
if(Element.getStyle(element,'position')=='static')value='auto';if(style=='opacity'){if(value)return parseFloat(value);if(value=(element.getStyle('filter')||'').match(/alpha\(opacity=(.*)\)/))
if(value[1])return parseFloat(value[1])/100;return 1.0;}
return value=='auto'?null:value;},setStyle:function(element,style){element=$(element);for(var name in style){var value=style[name];if(name=='opacity'){if(value==1){value=(/Gecko/.test(navigator.userAgent)&&!/Konqueror|Safari|KHTML/.test(navigator.userAgent))?0.999999:1.0;if(/MSIE/.test(navigator.userAgent)&&!window.opera)
element.style.filter=element.getStyle('filter').replace(/alpha\([^\)]*\)/gi,'');}else if(value===''){if(/MSIE/.test(navigator.userAgent)&&!window.opera)
element.style.filter=element.getStyle('filter').replace(/alpha\([^\)]*\)/gi,'');}else{if(value<0.00001)value=0;if(/MSIE/.test(navigator.userAgent)&&!window.opera)
element.style.filter=element.getStyle('filter').replace(/alpha\([^\)]*\)/gi,'')+'alpha(opacity='+value*100+')';}}else if(['float','cssFloat'].include(name))name=(typeof element.style.styleFloat!='undefined')?'styleFloat':'cssFloat';var sName=name.camelize();if(value=='NaNpx')continue;element.style[sName]=value;}
return element;},getDimensions:function(element){element=$(element);var display=$(element).getStyle('display');if(display!='none'&&display!=null)
return{width:element.offsetWidth,height:element.offsetHeight};var els=element.style;var originalVisibility=els.visibility;var originalPosition=els.position;var originalDisplay=els.display;els.visibility='hidden';els.position='absolute';els.display='block';var originalWidth=element.clientWidth;var originalHeight=element.clientHeight;els.display=originalDisplay;els.position=originalPosition;els.visibility=originalVisibility;return{width:originalWidth,height:originalHeight};},makePositioned:function(element){element=$(element);var pos=Element.getStyle(element,'position');if(pos=='static'||!pos){element._madePositioned=true;element.style.position='relative';if(window.opera){element.style.top=0;element.style.left=0;}}
return element;},undoPositioned:function(element){element=$(element);if(element._madePositioned){element._madePositioned=undefined;element.style.position=element.style.top=element.style.left=element.style.bottom=element.style.right='';}
return element;},makeClipping:function(element){element=$(element);if(element._overflow)return element;element._overflow=element.style.overflow||'auto';if((Element.getStyle(element,'overflow')||'visible')!='hidden')
element.style.overflow='hidden';return element;},undoClipping:function(element){element=$(element);if(!element._overflow)return element;element.style.overflow=element._overflow=='auto'?'':element._overflow;element._overflow=null;return element;}};Object.extend(Element.Methods,{childOf:Element.Methods.descendantOf});Element._attributeTranslations={};Element._attributeTranslations.names={colspan:"colSpan",rowspan:"rowSpan",valign:"vAlign",datetime:"dateTime",accesskey:"accessKey",tabindex:"tabIndex",enctype:"encType",maxlength:"maxLength",readonly:"readOnly",longdesc:"longDesc"};Element._attributeTranslations.values={_getAttr:function(element,attribute){return element.getAttribute(attribute,2);},_flag:function(element,attribute){return $(element).hasAttribute(attribute)?attribute:null;},style:function(element){return element.style.cssText.toLowerCase();},title:function(element){var node=element.getAttributeNode('title');return node.specified?node.nodeValue:null;}};Object.extend(Element._attributeTranslations.values,{href:Element._attributeTranslations.values._getAttr,src:Element._attributeTranslations.values._getAttr,disabled:Element._attributeTranslations.values._flag,checked:Element._attributeTranslations.values._flag,readonly:Element._attributeTranslations.values._flag,multiple:Element._attributeTranslations.values._flag});Element.Methods.Simulated={hasAttribute:function(element,attribute){var t=Element._attributeTranslations;attribute=t.names[attribute]||attribute;return $(element).getAttributeNode(attribute).specified;}};if(document.all&&!window.opera){Element.Methods.update=function(element,html){element=$(element);html=typeof html=='undefined'?'':html.toString();var tagName=element.tagName.toUpperCase();if(['THEAD','TBODY','TR','TD'].include(tagName)){var div=document.createElement('div');switch(tagName){case'THEAD':case'TBODY':div.innerHTML='<table><tbody>'+html.stripScripts()+'</tbody></table>';depth=2;break;case'TR':div.innerHTML='<table><tbody><tr>'+html.stripScripts()+'</tr></tbody></table>';depth=3;break;case'TD':div.innerHTML='<table><tbody><tr><td>'+html.stripScripts()+'</td></tr></tbody></table>';depth=4;}
$A(element.childNodes).each(function(node){element.removeChild(node)});depth.times(function(){div=div.firstChild});$A(div.childNodes).each(function(node){element.appendChild(node)});}else{element.innerHTML=html.stripScripts();}
setTimeout(function(){html.evalScripts()},10);return element;}};Object.extend(Element,Element.Methods);var _nativeExtensions=false;if(/Konqueror|Safari|KHTML/.test(navigator.userAgent)){['','Form','Input','TextArea','Select'].each(function(tag){var className='HTML'+tag+'Element';if(window[className])return;var klass=window[className]={};klass.prototype=document.createElement(tag?tag.toLowerCase():'div').__proto__;});};Element.addMethods=function(methods){Object.extend(Element.Methods,methods||{});function copy(methods,destination,onlyIfAbsent){onlyIfAbsent=onlyIfAbsent||false;var cache=Element.extend.cache;for(var property in methods){var value=methods[property];if(!onlyIfAbsent||!(property in destination))
destination[property]=cache.findOrStore(value);}}
if(typeof HTMLElement!='undefined'){copy(Element.Methods,HTMLElement.prototype);copy(Element.Methods.Simulated,HTMLElement.prototype,true);copy(Form.Methods,HTMLFormElement.prototype);[HTMLInputElement,HTMLTextAreaElement,HTMLSelectElement].each(function(klass){copy(Form.Element.Methods,klass.prototype);});_nativeExtensions=true;}};var Toggle=new Object();Toggle.display=Element.toggle;Abstract.Insertion=function(adjacency){this.adjacency=adjacency;}
Abstract.Insertion.prototype={initialize:function(element,content){this.element=$(element);this.content=content.stripScripts();if(this.adjacency&&this.element.insertAdjacentHTML){try{this.element.insertAdjacentHTML(this.adjacency,this.content);}catch(e){var tagName=this.element.tagName.toUpperCase();if(['TBODY','TR'].include(tagName)){this.insertContent(this.contentFromAnonymousTable());}else{throw e;}}}else{this.range=this.element.ownerDocument.createRange();if(this.initializeRange)this.initializeRange();this.insertContent([this.range.createContextualFragment(this.content)]);}
setTimeout(function(){content.evalScripts()},10);},contentFromAnonymousTable:function(){var div=document.createElement('div');div.innerHTML='<table><tbody>'+this.content+'</tbody></table>';return $A(div.childNodes[0].childNodes[0].childNodes);}};var Insertion=new Object();Insertion.Before=Class.create();Insertion.Before.prototype=Object.extend(new Abstract.Insertion('beforeBegin'),{initializeRange:function(){this.range.setStartBefore(this.element);},insertContent:function(fragments){fragments.each((function(fragment){this.element.parentNode.insertBefore(fragment,this.element);}).bind(this));}});Insertion.Top=Class.create();Insertion.Top.prototype=Object.extend(new Abstract.Insertion('afterBegin'),{initializeRange:function(){this.range.selectNodeContents(this.element);this.range.collapse(true);},insertContent:function(fragments){fragments.reverse(false).each((function(fragment){this.element.insertBefore(fragment,this.element.firstChild);}).bind(this));}});Insertion.Bottom=Class.create();Insertion.Bottom.prototype=Object.extend(new Abstract.Insertion('beforeEnd'),{initializeRange:function(){this.range.selectNodeContents(this.element);this.range.collapse(this.element);},insertContent:function(fragments){fragments.each((function(fragment){this.element.appendChild(fragment);}).bind(this));}});Insertion.After=Class.create();Insertion.After.prototype=Object.extend(new Abstract.Insertion('afterEnd'),{initializeRange:function(){this.range.setStartAfter(this.element);},insertContent:function(fragments){fragments.each((function(fragment){this.element.parentNode.insertBefore(fragment,this.element.nextSibling);}).bind(this));}});Element.ClassNames=Class.create();Element.ClassNames.prototype={initialize:function(element){this.element=$(element);},_each:function(iterator){this.element.className.split(/\s+/).select(function(name){return name.length>0;})._each(iterator);},set:function(className){this.element.className=className;},add:function(classNameToAdd){if(this.include(classNameToAdd))return;this.set($A(this).concat(classNameToAdd).join(' '));},remove:function(classNameToRemove){if(!this.include(classNameToRemove))return;this.set($A(this).without(classNameToRemove).join(' '));},toString:function(){return $A(this).join(' ');}};Object.extend(Element.ClassNames.prototype,Enumerable);var Selector=Class.create();Selector.prototype={initialize:function(expression){this.params={classNames:[]};this.expression=expression.toString().strip();this.parseExpression();this.compileMatcher();},parseExpression:function(){function abort(message){throw'Parse error in selector: '+message;}
if(this.expression=='')abort('empty expression');var params=this.params,expr=this.expression,match,modifier,clause,rest;while(match=expr.match(/^(.*)\[([a-z0-9_:-]+?)(?:([~\|!]?=)(?:"([^"]*)"|([^\]\s]*)))?\]$/i)){params.attributes=params.attributes||[];params.attributes.push({name:match[2],operator:match[3],value:match[4]||match[5]||''});expr=match[1];}
if(expr=='*')return this.params.wildcard=true;while(match=expr.match(/^([^a-z0-9_-])?([a-z0-9_-]+)(.*)/i)){modifier=match[1],clause=match[2],rest=match[3];switch(modifier){case'#':params.id=clause;break;case'.':params.classNames.push(clause);break;case'':case undefined:params.tagName=clause.toUpperCase();break;default:abort(expr.inspect());}
expr=rest;}
if(expr.length>0)abort(expr.inspect());},buildMatchExpression:function(){var params=this.params,conditions=[],clause;if(params.wildcard)
conditions.push('true');if(clause=params.id)
conditions.push('element.readAttribute("id") == '+clause.inspect());if(clause=params.tagName)
conditions.push('element.tagName.toUpperCase() == '+clause.inspect());if((clause=params.classNames).length>0)
for(var i=0,length=clause.length;i<length;i++)
conditions.push('element.hasClassName('+clause[i].inspect()+')');if(clause=params.attributes){clause.each(function(attribute){var value='element.readAttribute('+attribute.name.inspect()+')';var splitValueBy=function(delimiter){return value+' && '+value+'.split('+delimiter.inspect()+')';}
switch(attribute.operator){case'=':conditions.push(value+' == '+attribute.value.inspect());break;case'~=':conditions.push(splitValueBy(' ')+'.include('+attribute.value.inspect()+')');break;case'|=':conditions.push(splitValueBy('-')+'.first().toUpperCase() == '+attribute.value.toUpperCase().inspect());break;case'!=':conditions.push(value+' != '+attribute.value.inspect());break;case'':case undefined:conditions.push('element.hasAttribute('+attribute.name.inspect()+')');break;default:throw'Unknown operator '+attribute.operator+' in selector';}});}
return conditions.join(' && ');},compileMatcher:function(){this.match=new Function('element','if (!element.tagName) return false; element = $(element); return '+this.buildMatchExpression());},findElements:function(scope){var element;if(element=$(this.params.id))
if(this.match(element))
if(!scope||Element.childOf(element,scope))
return[element];scope=(scope||document).getElementsByTagName(this.params.tagName||'*');var results=[];for(var i=0,length=scope.length;i<length;i++)
if(this.match(element=scope[i]))
results.push(Element.extend(element));return results;},toString:function(){return this.expression;}};Object.extend(Selector,{matchElements:function(elements,expression){var selector=new Selector(expression);return elements.select(selector.match.bind(selector)).map(Element.extend);},findElement:function(elements,expression,index){if(typeof expression=='number')index=expression,expression=false;return Selector.matchElements(elements,expression||'*')[index||0];},findChildElements:function(element,expressions){return expressions.map(function(expression){return expression.match(/[^\s"]+(?:"[^"]*"[^\s"]+)*/g).inject([null],function(results,expr){var selector=new Selector(expr);return results.inject([],function(elements,result){return elements.concat(selector.findElements(result||element));});});}).flatten();}});var Form={reset:function(form){$(form).reset();return form;},serializeElements:function(elements,getHash){var data=elements.inject({},function(result,element){if(!element.disabled&&element.name){var key=element.name,value=$(element).getValue();if(value!=undefined){if(result[key]){if(result[key].constructor!=Array)result[key]=[result[key]];result[key].push(value);}
else result[key]=value;}}
return result;});return getHash?data:Hash.toQueryString(data);}};Form.Methods={serialize:function(form,getHash){return Form.serializeElements(Form.getElements(form),getHash);},getElements:function(form){return $A($(form).getElementsByTagName('*')).inject([],function(elements,child){if(Form.Element.Serializers[child.tagName.toLowerCase()])
elements.push(Element.extend(child));return elements;});},getInputs:function(form,typeName,name){form=$(form);var inputs=form.getElementsByTagName('input');if(!typeName&&!name)return $A(inputs).map(Element.extend);for(var i=0,matchingInputs=[],length=inputs.length;i<length;i++){var input=inputs[i];if((typeName&&input.type!=typeName)||(name&&input.name!=name))
continue;matchingInputs.push(Element.extend(input));}
return matchingInputs;},disable:function(form){form=$(form);form.getElements().each(function(element){element.blur();element.disabled='true';});return form;},enable:function(form){form=$(form);form.getElements().each(function(element){element.disabled='';});return form;},findFirstElement:function(form){return $(form).getElements().find(function(element){return element.type!='hidden'&&!element.disabled&&['input','select','textarea'].include(element.tagName.toLowerCase());});},focusFirstElement:function(form){form=$(form);form.findFirstElement().activate();return form;}};Object.extend(Form,Form.Methods);Form.Element={focus:function(element){$(element).focus();return element;},select:function(element){$(element).select();return element;}};Form.Element.Methods={serialize:function(element){element=$(element);if(!element.disabled&&element.name){var value=element.getValue();if(value!=undefined){var pair={};pair[element.name]=value;return Hash.toQueryString(pair);}}
return'';},getValue:function(element){element=$(element);var method=element.tagName.toLowerCase();return Form.Element.Serializers[method](element);},clear:function(element){$(element).value='';return element;},present:function(element){return $(element).value!='';},activate:function(element){element=$(element);element.focus();if(element.select&&(element.tagName.toLowerCase()!='input'||!['button','reset','submit'].include(element.type)))
element.select();return element;},disable:function(element){element=$(element);element.disabled=true;return element;},enable:function(element){element=$(element);element.blur();element.disabled=false;return element;}};Object.extend(Form.Element,Form.Element.Methods);var Field=Form.Element;var $F=Form.Element.getValue;Form.Element.Serializers={input:function(element){switch(element.type.toLowerCase()){case'checkbox':case'radio':return Form.Element.Serializers.inputSelector(element);default:return Form.Element.Serializers.textarea(element);}},inputSelector:function(element){return element.checked?element.value:null;},textarea:function(element){return element.value;},select:function(element){return this[element.type=='select-one'?'selectOne':'selectMany'](element);},selectOne:function(element){var index=element.selectedIndex;return index>=0?this.optionValue(element.options[index]):null;},selectMany:function(element){var values,length=element.length;if(!length)return null;for(var i=0,values=[];i<length;i++){var opt=element.options[i];if(opt.selected)values.push(this.optionValue(opt));}
return values;},optionValue:function(opt){return Element.extend(opt).hasAttribute('value')?opt.value:opt.text;}};Abstract.TimedObserver=function(){}
Abstract.TimedObserver.prototype={initialize:function(element,frequency,callback){this.frequency=frequency;this.element=$(element);this.callback=callback;this.lastValue=this.getValue();this.registerCallback();},registerCallback:function(){setInterval(this.onTimerEvent.bind(this),this.frequency*1000);},onTimerEvent:function(){var value=this.getValue();var changed=('string'==typeof this.lastValue&&'string'==typeof value?this.lastValue!=value:String(this.lastValue)!=String(value));if(changed){this.callback(this.element,value);this.lastValue=value;}}};Form.Element.Observer=Class.create();Form.Element.Observer.prototype=Object.extend(new Abstract.TimedObserver(),{getValue:function(){return Form.Element.getValue(this.element);}});Form.Observer=Class.create();Form.Observer.prototype=Object.extend(new Abstract.TimedObserver(),{getValue:function(){return Form.serialize(this.element);}});Abstract.EventObserver=function(){}
Abstract.EventObserver.prototype={initialize:function(element,callback){this.element=$(element);this.callback=callback;this.lastValue=this.getValue();if(this.element.tagName.toLowerCase()=='form')
this.registerFormCallbacks();else
this.registerCallback(this.element);},onElementEvent:function(){var value=this.getValue();if(this.lastValue!=value){this.callback(this.element,value);this.lastValue=value;}},registerFormCallbacks:function(){Form.getElements(this.element).each(this.registerCallback.bind(this));},registerCallback:function(element){if(element.type){switch(element.type.toLowerCase()){case'checkbox':case'radio':Event.observe(element,'click',this.onElementEvent.bind(this));break;default:Event.observe(element,'change',this.onElementEvent.bind(this));break;}}}};Form.Element.EventObserver=Class.create();Form.Element.EventObserver.prototype=Object.extend(new Abstract.EventObserver(),{getValue:function(){return Form.Element.getValue(this.element);}});Form.EventObserver=Class.create();Form.EventObserver.prototype=Object.extend(new Abstract.EventObserver(),{getValue:function(){return Form.serialize(this.element);}});if(!window.Event){var Event=new Object();};Object.extend(Event,{KEY_BACKSPACE:8,KEY_TAB:9,KEY_RETURN:13,KEY_ESC:27,KEY_LEFT:37,KEY_UP:38,KEY_RIGHT:39,KEY_DOWN:40,KEY_DELETE:46,KEY_HOME:36,KEY_END:35,KEY_PAGEUP:33,KEY_PAGEDOWN:34,element:function(event){if(event==null)return null;return event.target||event.srcElement;},isLeftClick:function(event){return(((event.which)&&(event.which==1))||((event.button)&&(event.button==1)));},pointerX:function(event){return event.pageX||(event.clientX+
(document.documentElement.scrollLeft||document.body.scrollLeft));},pointerY:function(event){return event.pageY||(event.clientY+
(document.documentElement.scrollTop||document.body.scrollTop));},stop:function(event){if(event.preventDefault){event.preventDefault();event.stopPropagation();}else{event.returnValue=false;event.cancelBubble=true;}},findElement:function(event,tagName){var element=Event.element(event);while(element.parentNode&&(!element.tagName||(element.tagName.toUpperCase()!=tagName.toUpperCase())))
element=element.parentNode;return element;},observers:false,_observeAndCache:function(element,name,observer,useCapture){if(!this.observers)this.observers=[];if(element.addEventListener){this.observers.push([element,name,observer,useCapture]);element.addEventListener(name,observer,useCapture);}else if(element.attachEvent){this.observers.push([element,name,observer,useCapture]);element.attachEvent('on'+name,observer);}},unloadCache:function(){if(!Event.observers)return;for(var i=0,length=Event.observers.length;i<length;i++){Event.stopObserving.apply(this,Event.observers[i]);Event.observers[i][0]=null;}
Event.observers=false;},observe:function(element,name,observer,useCapture){element=$(element);useCapture=useCapture||false;if(name=='keypress'&&(navigator.appVersion.match(/Konqueror|Safari|KHTML/)||element.attachEvent))
name='keydown';Event._observeAndCache(element,name,observer,useCapture);},stopObserving:function(element,name,observer,useCapture){element=$(element);useCapture=useCapture||false;if(name=='keypress'&&(navigator.appVersion.match(/Konqueror|Safari|KHTML/)||element.detachEvent))
name='keydown';if(element.removeEventListener){element.removeEventListener(name,observer,useCapture);}else if(element.detachEvent){try{element.detachEvent('on'+name,observer);}catch(e){}}}});if(navigator.appVersion.match(/\bMSIE\b/))Event.observe(window,'unload',Event.unloadCache,false);var Position={includeScrollOffsets:false,prepare:function(){this.deltaX=window.pageXOffset||document.documentElement.scrollLeft||document.body.scrollLeft||0;this.deltaY=window.pageYOffset||document.documentElement.scrollTop||document.body.scrollTop||0;},realOffset:function(element){var valueT=0,valueL=0;do{valueT+=element.scrollTop||0;valueL+=element.scrollLeft||0;element=element.parentNode;}while(element);return[valueL,valueT];},cumulativeOffset:function(element){var valueT=0,valueL=0;do{valueT+=element.offsetTop||0;valueL+=element.offsetLeft||0;element=element.offsetParent;}while(element);return[valueL,valueT];},positionedOffset:function(element){var valueT=0,valueL=0;do{valueT+=element.offsetTop||0;valueL+=element.offsetLeft||0;element=element.offsetParent;if(element){if(element.tagName=='BODY')break;var p=Element.getStyle(element,'position');if(p=='relative'||p=='absolute')break;}}while(element);return[valueL,valueT];},offsetParent:function(element){if(element.offsetParent)return element.offsetParent;if(element==document.body)return element;while((element=element.parentNode)&&element!=document.body)
if(Element.getStyle(element,'position')!='static')
return element;return document.body;},within:function(element,x,y){if(this.includeScrollOffsets)
return this.withinIncludingScrolloffsets(element,x,y);this.xcomp=x;this.ycomp=y;this.offset=this.cumulativeOffset(element);return(y>=this.offset[1]&&y<this.offset[1]+element.offsetHeight&&x>=this.offset[0]&&x<this.offset[0]+element.offsetWidth);},withinIncludingScrolloffsets:function(element,x,y){var offsetcache=this.realOffset(element);this.xcomp=x+offsetcache[0]-this.deltaX;this.ycomp=y+offsetcache[1]-this.deltaY;this.offset=this.cumulativeOffset(element);return(this.ycomp>=this.offset[1]&&this.ycomp<this.offset[1]+element.offsetHeight&&this.xcomp>=this.offset[0]&&this.xcomp<this.offset[0]+element.offsetWidth);},overlap:function(mode,element){if(!mode)return 0;if(mode=='vertical')
return((this.offset[1]+element.offsetHeight)-this.ycomp)/element.offsetHeight;if(mode=='horizontal')
return((this.offset[0]+element.offsetWidth)-this.xcomp)/element.offsetWidth;},page:function(forElement){var valueT=0,valueL=0;var element=forElement;do{valueT+=element.offsetTop||0;valueL+=element.offsetLeft||0;if(element.offsetParent==document.body)
if(Element.getStyle(element,'position')=='absolute')break;}while(element=element.offsetParent);element=forElement;do{if(!window.opera||element.tagName=='BODY'){valueT-=element.scrollTop||0;valueL-=element.scrollLeft||0;}}while(element=element.parentNode);return[valueL,valueT];},clone:function(source,target){var options=Object.extend({setLeft:true,setTop:true,setWidth:true,setHeight:true,offsetTop:0,offsetLeft:0},arguments[2]||{})
source=$(source);var p=Position.page(source);target=$(target);var delta=[0,0];var parent=null;if(Element.getStyle(target,'position')=='absolute'){parent=Position.offsetParent(target);delta=Position.page(parent);}
if(parent==document.body){delta[0]-=document.body.offsetLeft;delta[1]-=document.body.offsetTop;}
if(options.setLeft)target.style.left=(p[0]-delta[0]+options.offsetLeft)+'px';if(options.setTop)target.style.top=(p[1]-delta[1]+options.offsetTop)+'px';if(options.setWidth)target.style.width=source.offsetWidth+'px';if(options.setHeight)target.style.height=source.offsetHeight+'px';},absolutize:function(element){element=$(element);if(element.style.position=='absolute')return;Position.prepare();var offsets=Position.positionedOffset(element);var top=offsets[1];var left=offsets[0];var width=element.clientWidth;var height=element.clientHeight;element._originalLeft=left-parseFloat(element.style.left||0);element._originalTop=top-parseFloat(element.style.top||0);element._originalWidth=element.style.width;element._originalHeight=element.style.height;element.style.position='absolute';element.style.top=top+'px';element.style.left=left+'px';element.style.width=width+'px';element.style.height=height+'px';},relativize:function(element){element=$(element);if(element.style.position=='relative')return;Position.prepare();element.style.position='relative';var top=parseFloat(element.style.top||0)-(element._originalTop||0);var left=parseFloat(element.style.left||0)-(element._originalLeft||0);element.style.top=top+'px';element.style.left=left+'px';element.style.height=element._originalHeight;element.style.width=element._originalWidth;}};if(/Konqueror|Safari|KHTML/.test(navigator.userAgent)){Position.cumulativeOffset=function(element){var valueT=0,valueL=0;do{valueT+=element.offsetTop||0;valueL+=element.offsetLeft||0;if(element.offsetParent==document.body)
if(Element.getStyle(element,'position')=='absolute')break;element=element.offsetParent;}while(element);return[valueL,valueT];}};Element.addMethods();(function(JQ){JQ.fn.addOption=function(){var add=function(el,v,t,sO){var option=document.createElement("option");option.value=v,option.text=t;var o=el.options;var oL=o.length;if(!el.cache){el.cache={};for(var i=0;i<oL;i++){el.cache[o[i].value]=i;}}
if(typeof el.cache[v]=="undefined")el.cache[v]=oL;el.options[el.cache[v]]=option;if(sO){option.selected=true;}};var a=arguments;if(a.length==0)return this;var sO=true;var m=false;var items,v,t;if(typeof(a[0])=="object"){m=true;items=a[0];}
if(a.length>=2){if(typeof(a[1])=="boolean")sO=a[1];else if(typeof(a[2])=="boolean")sO=a[2];if(!m){v=a[0];t=a[1];}}
this.each(function(){if(this.nodeName.toLowerCase()!="select")return;if(m){for(var item in items){add(this,item,items[item],sO);}}
else{add(this,v,t,sO);}});return this;};JQ.fn.ajaxAddOption=function(url,params,select,fn,args){if(typeof(url)!="string")return this;if(typeof(params)!="object")params={};if(typeof(select)!="boolean")select=true;this.each(function(){var el=this;JQ.getJSON(url,params,function(r){JQ(el).addOption(r,select);if(typeof fn=="function"){if(typeof args=="object"){fn.apply(el,args);}
else{fn.call(el);}}});});return this;};JQ.fn.removeOption=function(){var a=arguments;if(a.length==0)return this;var ta=typeof(a[0]);var v,index;if(ta=="string"||ta=="object"||ta=="function"){v=a[0];if(v.constructor==Array){var l=v.length;for(var i=0;i<l;i++){this.removeOption(v[i],a[1]);}
return this;}}
else if(ta=="number")index=a[0];else return this;this.each(function(){if(this.nodeName.toLowerCase()!="select")return;if(this.cache)this.cache=null;var remove=false;var o=this.options;if(!!v){var oL=o.length;for(var i=oL-1;i>=0;i--){if(v.constructor==RegExp){if(o[i].value.match(v)){remove=true;}}
else if(o[i].value==v){remove=true;}
if(remove&&a[1]===true)remove=o[i].selected;if(remove){o[i]=null;}
remove=false;}}
else{if(a[1]===true){remove=o[index].selected;}
else{remove=true;}
if(remove){this.remove(index);}}});return this;};JQ.fn.sortOptions=function(ascending){var sel=JQ(this).selectedValues();var a=typeof(ascending)=="undefined"?true:!!ascending;this.each(function(){if(this.nodeName.toLowerCase()!="select")return;var o=this.options;var oL=o.length;var sA=[];for(var i=0;i<oL;i++){sA[i]={v:o[i].value,t:o[i].text}}
sA.sort(function(o1,o2){o1t=o1.t.toLowerCase(),o2t=o2.t.toLowerCase();if(o1t==o2t)return 0;if(a){return o1t<o2t?-1:1;}
else{return o1t>o2t?-1:1;}});for(var i=0;i<oL;i++){o[i].text=sA[i].t;o[i].value=sA[i].v;}}).selectOptions(sel,true);return this;};JQ.fn.selectOptions=function(value,clear){var v=value;var vT=typeof(value);if(vT=="object"&&v.constructor==Array){var $this=this;JQ.each(v,function(){$this.selectOptions(this,clear);});};var c=clear||false;if(vT!="string"&&vT!="function"&&vT!="object")return this;this.each(function(){if(this.nodeName.toLowerCase()!="select")return this;var o=this.options;var oL=o.length;for(var i=0;i<oL;i++){if(v.constructor==RegExp){if(o[i].value.match(v)){o[i].selected=true;}
else if(c){o[i].selected=false;}}
else{if(o[i].value==v){o[i].selected=true;}
else if(c){o[i].selected=false;}}}});return this;};JQ.fn.copyOptions=function(to,which){var w=which||"selected";if(JQ(to).size()==0)return this;this.each(function(){if(this.nodeName.toLowerCase()!="select")return this;var o=this.options;var oL=o.length;for(var i=0;i<oL;i++){if(w=="all"||(w=="selected"&&o[i].selected)){JQ(to).addOption(o[i].value,o[i].text);}}});return this;};JQ.fn.containsOption=function(value,fn){var found=false;var v=value;var vT=typeof(v);var fT=typeof(fn);if(vT!="string"&&vT!="function"&&vT!="object")return fT=="function"?this:found;this.each(function(){if(this.nodeName.toLowerCase()!="select")return this;if(found&&fT!="function")return false;var o=this.options;var oL=o.length;for(var i=0;i<oL;i++){if(v.constructor==RegExp){if(o[i].value.match(v)){found=true;if(fT=="function")fn.call(o[i],i);}}
else{if(o[i].value==v){found=true;if(fT=="function")fn.call(o[i],i);}}}});return fT=="function"?this:found;};JQ.fn.selectedValues=function(){var v=[];this.selectedOptions().each(function(){v[v.length]=this.value;});return v;};JQ.fn.selectedTexts=function(){var t=[];this.selectedOptions().each(function(){t[t.length]=this.text;});return t;};JQ.fn.selectedOptions=function(){return this.find("option:selected");};})(jQuery);jQuery.cookie=function(key,value,options){if(arguments.length>1&&(value===null||typeof value!=="object")){options=jQuery.extend({},options);if(value===null){options.expires=-1;}
if(typeof options.expires==='number'){var days=options.expires,t=options.expires=new Date();t.setDate(t.getDate()+days);}
return(document.cookie=[encodeURIComponent(key),'=',options.raw?String(value):encodeURIComponent(String(value)),options.expires?'; expires='+options.expires.toUTCString():'',options.path?'; path='+options.path:'',options.domain?'; domain='+options.domain:'',options.secure?'; secure':''].join(''));}
options=value||{};var result,decode=options.raw?function(s){return s;}:decodeURIComponent;return(result=new RegExp('(?:^|; )'+encodeURIComponent(key)+'=([^;]*)').exec(document.cookie))?decode(result[1]):null;};window.XMLDOM=function(markup){if(!window.XMLDOMParser){var progIDs=['Msxml2.DOMDocument.3.0','Msxml2.DOMDocument'];for(var i=0;i<progIDs.length;i++){try{var xmlDOM=new ActiveXObject(progIDs[i]);xmlDOM.async=false;xmlDOM.loadXML(markup);xmlDOM.setProperty('SelectionLanguage','XPath');return xmlDOM;}
catch(ex){}}
return null;}
else{var domParser=new window.XMLDOMParser();return domParser.parseFromString(markup,'text/xml');}};var sn;var SN_HIGHLIGHT_COLOR='#9999FF';var COL_DELIMITER=String.fromCharCode(18);var ROW_DELIMITER=String.fromCharCode(17);var QUOTE_REPLACEMENT=String.fromCharCode(19);var SN_LEFT_ARROW_KEY=37;var SN_UP_KEY=38;var SN_RIGHT_ARROW_KEY=39;var SN_DOWN_KEY=40;var SN_ENTER_KEY=13;var SN_ESCAPE_KEY=27;var SN_TAB_KEY=9;if(typeof($sharpNet_Namespaces)=='undefined')var $sharpNet_Namespaces=new Array();function __sn(){this.apiversion=.2;this.pns='';this.ns='sn';this.diagnostics=null;this.vars=null;this.dependencies=new Array();this.isLoaded=false;this.delay=new Array();};__sn.prototype={getVars:function(){if(this.vars==null){this.vars=new Array();var oCtl=sn.dom.getById('__snVariable');if(oCtl!=null){if(oCtl.value.indexOf('__scdoff')!=-1){COL_DELIMITER='~|~';ROW_DELIMITER='~`~';QUOTE_REPLACEMENT='~!~';}
var aryItems=oCtl.value.split(ROW_DELIMITER);for(var i=0;i<aryItems.length;i++){var aryItem=aryItems[i].split(COL_DELIMITER);if(aryItem.length==2)this.vars[aryItem[0]]=aryItem[1];}}}
return this.vars;},getVar:function(key){if(this.getVars()[key]!=null){var re=eval('/'+QUOTE_REPLACEMENT+'/g');return this.getVars()[key].replace(re,'"');}},setVar:function(key,value){try{if(this.vars==null)this.getVars();this.vars[key]=value;var oCtl=sn.dom.getById('__snVariable');if(oCtl==null){oCtl=sn.dom.createElement('INPUT');oCtl.type='hidden';oCtl.id='__snVariable';sn.dom.appendChild(sn.dom.getByTagName("body")[0],oCtl);}
var sVals='';var re=eval('/"/g');for(var s in this.vars){sVals+=ROW_DELIMITER+s+COL_DELIMITER+this.vars[s].toString().replace(re,QUOTE_REPLACEMENT);}
oCtl.value=sVals;}catch(e){}
return true;},callPostBack:function(sAction){var sPostBack=sn.getVar('__sn_postBack');var sData='';if(sPostBack.length>0){sData+=sAction;for(var i=1;i<arguments.length;i++){var aryParam=arguments[i].split('=');sData+=COL_DELIMITER+aryParam[0]+COL_DELIMITER+aryParam[1];}
eval(sPostBack.replace('[DATA]',sData));return true;}
return false;},createDelegate:function(instance,method){return function(){return method.apply(instance,arguments);}},doDelay:function(type,iTime,pFunc,oContext){if(this.delay[type]==null){this.delay[type]=new sn.delayObject(pFunc,oContext,type);this.delay[type].num=window.setTimeout(sn.createDelegate(this.delay[type],this.delay[type].complete),iTime);}},cancelDelay:function(type){if(this.delay[type]!=null){window.clearTimeout(this.delay[type].num);this.delay[type]=null;}},decodeHTML:function(string){return string.toString().replace(/&amp;/g,'&').replace(/&lt;/g,'<').replace(/&gt;/g,'>').replace(/&quot;/g,'"');},encode:function(value){if(encodeURIComponent)return encodeURIComponent(value);else escape(value);},encodeHTML:function(string){return string.toString().replace(/&/g,'&amp;').replace(/</g,'&lt;').replace(/>/g,'&gt;').replace(/\"/g,'&quot;');},escapeForEval:function(string){return string.replace(/\\/g,'\\\\').replace(/\'/g,"\\'").replace(/\r/g,'').replace(/\n/g,'\\n').replace(/\./,'\\.');},extend:function(dest,src){for(var s in src)dest[s]=src[s];return dest;},dependenciesLoaded:function(){return true;},loadNamespace:function(){if(this.isLoaded==false){if(this.dependenciesLoaded()){sn=this;this.isLoaded=true;this.loadDependencies(this.pns,this.ns);}}},loadDependencies:function(sPNS,sNS){for(var i=0;i<$sharpNet_Namespaces.length;i++){for(var iDep=0;iDep<$sharpNet_Namespaces[i].dependencies.length;iDep++){if($sharpNet_Namespaces[i].dependencies[iDep]==sPNS+(sPNS.length>0?'.':'')+sNS)
$sharpNet_Namespaces[i].loadNamespace();}}}};__sn.prototype.delayObject=function(pFunc,oContext,type){this.num=null;this.pfunc=pFunc;this.context=oContext;this.type=type;};__sn.prototype.delayObject.prototype={complete:function(){try{sn.delay[this.type]=null;}catch(e){}
this.pfunc(this.context);}};__sn.prototype.ScriptRequest=function(sSrc,sText,fCallBack){this.ctl=null;this.src=null;this.text=null;if(sSrc!=null&&sSrc.length>0)this.src=sSrc;if(sText!=null&&sText.length>0)this.text=sText;this.callBack=fCallBack;this.status='init';};__sn.prototype.ScriptRequest.prototype={load:function(){this.status='loading';this.ctl=document.createElement('SCRIPT');this.ctl.type='text/javascript';if(this.src!=null)this.ctl.src=this.src;else this.ctl.text=this.text;var oHeads=sn.dom.getByTagName('HEAD');if(oHeads)oHeads[0].appendChild(this.ctl);else alert('Cannot load dynamic script, no HEAD tag present.');if(this.src==null)this.complete();},complete:function(){this.status='complete';if(typeof(this.callBack)!='undefined')this.callBack(this);}};function sn_dom(){this.pns='sn';this.ns='dom';this.dependencies='sn'.split(',');this.isLoaded=false;this.browser=new this.browserObject();this.__leakEvts=new Array();this.scripts=[];this.scriptElements=[];};sn_dom.prototype={appendChild:function(srcElement,childElement){if(srcElement.appendChild)return srcElement.appendChild(childElement);else return null;},attachEvent:function(element,type,fHandler){if(sn.dom.browser.isType(sn.dom.browser.InternetExplorer)==false){var sName=type.substring(2);element.addEventListener(sName,function(evt){sn.dom.event=new sn.dom.eventObject(evt,evt.target);return fHandler();},false);}else{element.attachEvent(type,function(){sn.dom.event=new sn.dom.eventObject(window.event,window.event.srcElement);return fHandler();});}
return true;},createElement:function(tagName){if(document.createElement)return document.createElement(tagName.toLowerCase());else return null;},cursorPos:function(oCtl){if(oCtl.value.length==0)return 0;var iPos=-1;if(oCtl.selectionStart)
iPos=oCtl.selectionStart;else if(oCtl.createTextRange){var oSel=window.document.selection.createRange();var oRange=oCtl.createTextRange();if(oRange==null||oSel==null||((oSel.text!="")&&oRange.inRange(oSel)==false))
return-1;if(oSel.text==""){if(oRange.boundingLeft==oSel.boundingLeft)
iPos=0;else{var sTagName=oCtl.tagName.toLowerCase();if(sTagName=="input"){var sText=oRange.text;var i=1;while(i<sText.length){oRange.findText(sText.substring(i));if(oRange.boundingLeft==oSel.boundingLeft)
break;i++;}}
else if(sTagName=="textarea"){var i=oCtl.value.length+1;var oCaret=document.selection.createRange().duplicate();while(oCaret.parentElement()==oCtl&&oCaret.move("character",1)==1)
--i;if(i==oCtl.value.length+1)i=-1;}
iPos=i;}}
else
iPos=oRange.text.indexOf(oSel.text);}
return iPos;},cancelCollapseElement:function(oCtl){sn.cancelDelay(oCtl.id+'col');oCtl.style.display='none';},collapseElement:function(oCtl,iNum,pCallBack){if(iNum==null)iNum=10;oCtl.style.overflow='hidden';var oContext=new Object();oContext.num=iNum;oContext.ctl=oCtl;oContext.pfunc=pCallBack;oCtl.origHeight=oCtl.offsetHeight;sn.dom.__collapseElement(oContext);},__collapseElement:function(oContext){var iNum=oContext.num;var oCtl=oContext.ctl;var iStep=oCtl.origHeight/iNum;if(oCtl.offsetHeight-(iStep*2)>0){oCtl.style.height=oCtl.offsetHeight-iStep;sn.doDelay(oCtl.id+'col',10,sn.dom.__collapseElement,oContext);}else{oCtl.style.display='none';if(oContext.pfunc!=null)oContext.pfunc();}},cancelExpandElement:function(oCtl){sn.cancelDelay(oCtl.id+'exp');oCtl.style.overflow='';oCtl.style.height='';},expandElement:function(oCtl,iNum,pCallBack){if(iNum==null)iNum=10;if(oCtl.style.display=='none'&&oCtl.origHeight==null){oCtl.style.display='';oCtl.style.overflow='';oCtl.origHeight=oCtl.offsetHeight;oCtl.style.overflow='hidden';oCtl.style.height=1;}
oCtl.style.display='';var oContext=new Object();oContext.num=iNum;oContext.ctl=oCtl;oContext.pfunc=pCallBack;sn.dom.__expandElement(oContext);},__expandElement:function(oContext){var iNum=oContext.num;var oCtl=oContext.ctl;var iStep=oCtl.origHeight/iNum;if(oCtl.offsetHeight+iStep<oCtl.origHeight){oCtl.style.height=oCtl.offsetHeight+iStep;sn.doDelay(oCtl.id+'exp',10,sn.dom.__expandElement,oContext);}else{oCtl.style.overflow='';oCtl.style.height='';if(oContext.pfunc!=null)
oContext.pfunc();}},deleteCookie:function(sName,sPath,sDomain){if(this.getCookie(sName)){this.setCookie(sName,'',-1,sPath,sDomain);return true;}
return false;},getAttribute:function(oNode,attributeName,defaultValue){if(oNode.getAttribute==null)return defaultValue;var sVal=oNode.getAttribute(attributeName);if(sVal==null||sVal=='')return defaultValue;else return sVal;},getById:function(id,element){if(element==null)element=document;if(element.getElementById)return element.getElementById(id);else if(element.all)return element.all(id);else return null;},getByTagName:function(sTag,oCtl){if(oCtl==null)oCtl=document;if(oCtl.getElementsByTagName)return oCtl.getElementsByTagName(sTag);else if(oCtl.all.tags)return oCtl.all.tags(sTag);else return null;},getParentByTagName:function(oCtl,sTag){var oP=oCtl.parentNode;sTag=sTag.toLowerCase();while(oP!=null){if(oP.tagName&&oP.tagName.toLowerCase()==sTag)return oP;oP=oP.parentNode;}
return null;},getCookie:function(sName){var sCookie=" "+document.cookie;var sSearch=" "+sName+"=";var sStr=null;var iOffset=0;var iEnd=0;if(sCookie.length>0){iOffset=sCookie.indexOf(sSearch);if(iOffset!=-1){iOffset+=sSearch.length;iEnd=sCookie.indexOf(";",iOffset)
if(iEnd==-1)
iEnd=sCookie.length;sStr=unescape(sCookie.substring(iOffset,iEnd));}}
return(sStr);},getNonTextNode:function(oNode){if(this.isNonTextNode(oNode))return oNode;while(oNode!=null&&this.isNonTextNode(oNode)){oNode=this.getSibling(oNode,1);}
return oNode;},__leakEvt:function(sName,oCtl,oPtr){this.name=sName;this.ctl=oCtl;this.ptr=oPtr;},addSafeHandler:function(oDOM,sEvent,oObj,sMethod){oDOM[sEvent]=this.getObjMethRef(oObj,sMethod);if(sn.dom.browser.isType(sn.dom.browser.InternetExplorer)){if(this.__leakEvts.length==0)
sn.dom.attachEvent(window,'onunload',sn.dom.destroyHandlers);this.__leakEvts[this.__leakEvts.length]=new sn.dom.__leakEvt(sEvent,oDOM,oDOM[sEvent]);}},destroyHandlers:function(){var iCount=sn.dom.__leakEvts.length-1;for(var i=iCount;i>=0;i--){var oEvt=sn.dom.__leakEvts[i];oEvt.ctl.detachEvent(oEvt.name,oEvt.ptr);oEvt.ctl[oEvt.name]=null;sn.dom.__leakEvts.length=sn.dom.__leakEvts.length-1;}},getObjMethRef:function(obj,methodName){try{return(function(e){e=e||window.event;return obj[methodName](e,this);});}catch(e){alert('Method "'+methodName.toString()+'" for object:'+obj.toString()+', err:'+e.message);return null;}},getScript:function(sSrc){if(this.scriptElements[sSrc])
return this.scriptElements[sSrc];var oScripts=(document.scripts!=null?document.scripts:sn.dom.getByTagName('SCRIPT'));var oScripts=sn.dom.getByTagName('SCRIPT');for(var s=0;s<oScripts.length;s++){if(oScripts[s].src!=null&&oScripts[s].src.indexOf(sSrc)>-1){this.scriptElements[sSrc]=oScripts[s];return oScripts[s];}}},getScriptPath:function(){var oThisScript=sn.dom.getScript('sn.js');if(oThisScript)return oThisScript.src.replace('sn.js','');return'';},getSibling:function(element,iOffset){if(element!=null&&element.parentNode!=null){for(var i=0;i<element.parentNode.childNodes.length;i++){if(element.parentNode.childNodes[i].id==element.id){if(element.parentNode.childNodes[i+iOffset]!=null)
return element.parentNode.childNodes[i+iOffset];}}}
return null;},isNonTextNode:function(oNode){return(oNode.nodeType!=3&&oNode.nodeType!=8);},scriptFile:function(sSrc){var ary=sSrc.split('/');return ary[ary.length-1];},loadScript:function(sSrc,sText,callBack){var sFile;if(sSrc!=null&&sSrc.length>0){sFile=this.scriptFile(sSrc);if(this.scripts[sFile]!=null){return;}}
var oSR=new sn.ScriptRequest(sSrc,sText,callBack);if(sFile)this.scripts[sFile]=oSR;oSR.load();},scriptStatus:function(sSrc){var sFile=this.scriptFile(sSrc);if(this.scripts[sFile])
return this.scripts[sFile].status;var oScript=this.getScript(sSrc);if(oScript!=null)
return'complete';else
return'';},setScriptLoaded:function(sSrc){var sFile=this.scriptFile(sSrc);if(this.scripts[sFile]&&sn.dom.scripts[sFile].status!='complete')
sn.dom.scripts[sFile].complete();},navigate:function(url,target){if(target!=null&&target.length>0){if(target=='_blank')window.open(url);else document.frames[target].location.href=url;}else{window.location.href=url;}
return false;},removeChild:function(childElement){if(childElement.parentNode.removeChild)return childElement.parentNode.removeChild(childElement);else return null;},setCookie:function(sName,sVal,iDays,sPath,sDomain,bSecure){var sExpires;if(iDays){sExpires=new Date();sExpires.setTime(sExpires.getTime()+(iDays*24*60*60*1000));}
if(typeof(sPath)=='undefined')sPath=window.location;document.cookie=sName+"="+escape(sVal)+((sExpires)?"; expires="+sExpires.toGMTString():"")+((sPath)?"; path="+sPath:"")+((sDomain)?"; domain="+sDomain:"")+((bSecure)?"; secure":"");if(document.cookie.length>0)return true;},getCurrentStyle:function(oNode,prop){if(document.defaultView){if(oNode.nodeType!=oNode.ELEMENT_NODE)return null;return document.defaultView.getComputedStyle(oNode,'').getPropertyValue(prop.split('-').join(''));}
if(oNode.currentStyle)return oNode.currentStyle[prop.split('-').join('')];if(oNode.style)return oNode.style.getAttribute(prop.split('-').join(''));return null;},dependenciesLoaded:function(){return(typeof(sn)!='undefined');},loadNamespace:function(){if(this.isLoaded==false){if(this.dependenciesLoaded()){sn.dom=this;this.isLoaded=true;sn.loadDependencies(this.pns,this.ns);}}},getFormPostString:function(element){var sRet='';if(element!=null){if(oCtl.tagName&&element.tagName.toLowerCase()=='form'){for(var i=0;i<element.elements.length;i++)
sRet+=this.getElementPostString(element.elements[i]);}else{sRet=this.getElementPostString(element);for(var i=0;i<element.childNodes.length;i++)
sRet+=this.getFormPostString(element.childNodes[i]);}}
return sRet;},getElementPostString:function(element){var sTagName;if(element.tagName)sTagName=element.tagName.toLowerCase();if(sTagName=='input'){var sType=element.type.toLowerCase();if(sType=='text'||sType=='password'||sType=='hidden'||((sType=='checkbox'||sType=='radio')&&element.checked))
return element.name+'='+sn.encode(element.value)+'&';}else if(sTagName=='select'){for(var i=0;i<element.options.length;i++){if(element.options[i].selected)
return element.name+'='+sn.encode(element.options[i].value)+'&';}}else if(sTagName=='textarea')
return element.name+'='+sn.encode(element.value)+'&';return'';}};sn_dom.prototype.eventObject=function(e,srcElement){this.object=e;this.srcElement=srcElement;};sn_dom.prototype.browserObject=function(){this.InternetExplorer='ie';this.Netscape='ns';this.Mozilla='mo';this.Opera='op';this.Safari='safari';this.Konqueror='kq';this.MacIE='macie';var sType;var agt=navigator.userAgent.toLowerCase();if(agt.indexOf('konqueror')!=-1)sType=this.Konqueror;else if(agt.indexOf('opera')!=-1)sType=this.Opera;else if(agt.indexOf('netscape')!=-1)sType=this.Netscape;else if(agt.indexOf('msie')!=-1){if(agt.indexOf('mac')!=-1)sType=this.MacIE;else sType=this.InternetExplorer;}else if(agt.indexOf('safari')!=-1){sType='safari';}
if(sType==null)sType=this.Mozilla;this.type=sType;this.version=parseFloat(navigator.appVersion);var sAgent=navigator.userAgent.toLowerCase();if(this.type==this.InternetExplorer){var temp=navigator.appVersion.split("MSIE");this.version=parseFloat(temp[1]);}
if(this.type==this.Netscape){var temp=sAgent.split("netscape");this.version=parseFloat(temp[1].split("/")[1]);}};sn_dom.prototype.browserObject.prototype={toString:function(){return this.type+' '+this.version;},isType:function(){for(var i=0;i<arguments.length;i++){if(sn.dom.browser.type==arguments[i])return true;}
return false;}};function sn_controls(){this.pns='sn';this.ns='controls';this.dependencies='sn,sn.dom'.split(',');this.isLoaded=false;this.controls=new Array();this.toolbars=new Array();this.orient=new Object();this.orient.horizontal=0;this.orient.vertical=1;this.action=new Object();this.action.postback=0;this.action.expand=1;this.action.none=2;this.action.nav=3;};sn_controls.prototype.dependenciesLoaded=function(){return(typeof(sn)!='undefined'&&typeof(sn.dom)!='undefined');};sn_controls.prototype.loadNamespace=function(){if(this.isLoaded==false){if(this.dependenciesLoaded()){if(typeof(sn_control)!='undefined'){sn_controls.prototype=new sn_control;sn_controls.prototype.constructor=sn_control;}
sn.controls=new sn_controls();sn.controls.isLoaded=true;sn.loadDependencies(this.pns,this.ns);}}};$sharpNet_Namespaces[$sharpNet_Namespaces.length]=new sn_controls();$sharpNet_Namespaces[$sharpNet_Namespaces.length]=new sn_dom();$sharpNet_Namespaces[$sharpNet_Namespaces.length]=new __sn();for(var i=$sharpNet_Namespaces.length-1;i>=0;i--){$sharpNet_Namespaces[i].loadNamespace();};window.sharpNet_GetWaitWindowHtml=function(content){if(content==null)content="";return'<table style="width:100%;height:100%;" border="0" cellspacing="0" cellpadding="0"><tr><td style="width:22px; height:22px;"><img src="/Images/WindowThemes/WaitWindow/w_01.png"></td><td style="background-image: url(/Images/WindowThemes/WaitWindow/w_02.png); background-repeat:repeat-x;"></td><td style="width:22px; height:22px;"><img src="/Images/WindowThemes/WaitWindow/w_03.png"></td></tr><tr><td style="background-image: url(/Images/WindowThemes/WaitWindow/w_04.png);background-repeat:repeat-y;"></td><td style="background-color:#FFFFFF;" align="center"><img alt="" src="/images/ajaxactivity.gif" /><br/>'+content+'</td><td style="background-image: url(/Images/WindowThemes/WaitWindow/w_06.png); background-repeat:repeat-y;"></td></tr><tr><td style="width:22px; height:22px;"><img src="/Images/WindowThemes/WaitWindow/w_07.png"></td><td style="background-image: url(/Images/WindowThemes/WaitWindow/w_08.png); background-repeat:repeat-x;">&nbsp;</td><td style="width:22px; height:22px;"><img src="/Images/WindowThemes/WaitWindow/w_09.png"></td></tr></table>';};Function.__typeName='Function';Function.__class=true;Function._validateParams=function Function$_validateParams(params,expectedParams){var e;e=Function._validateParameterCount(params,expectedParams);if(e){return e;}
for(var i=0;i<params.length;i++){var expectedParam=expectedParams[Math.min(i,expectedParams.length-1)];var paramName=expectedParam.name;if(expectedParam.parameterArray){paramName+="["+(i-expectedParams.length+1)+"]";}
e=Function._validateParameter(params[i],expectedParam,paramName);if(e){return e;}}
return null;};Function._validateParameterCount=function Function$_validateParameterCount(params,expectedParams){var maxParams=expectedParams.length;var minParams=0;for(var i=0;i<expectedParams.length;i++){if(expectedParams[i].parameterArray){maxParams=Number.MAX_VALUE;}
else if(!expectedParams[i].optional){minParams++;}}
if(params.length<minParams||params.length>maxParams){return"Error.parameterCount";}
return null;};Function._validateParameter=function Function$_validateParameter(param,expectedParam,paramName){var e;var expectedType=expectedParam.type;var expectedInteger=!!expectedParam.integer;var expectedDomElement=!!expectedParam.domElement;var mayBeNull=!!expectedParam.mayBeNull;e=Function._validateParameterType(param,expectedType,expectedInteger,expectedDomElement,mayBeNull,paramName);if(e){return e;}
var expectedElementType=expectedParam.elementType;var elementMayBeNull=!!expectedParam.elementMayBeNull;if(expectedType===Array&&typeof(param)!=="undefined"&&param!==null&&(expectedElementType||!elementMayBeNull)){var expectedElementInteger=!!expectedParam.elementInteger;var expectedElementDomElement=!!expectedParam.elementDomElement;for(var i=0;i<param.length;i++){var elem=param[i];e=Function._validateParameterType(elem,expectedElementType,expectedElementInteger,expectedElementDomElement,elementMayBeNull,paramName+"["+i+"]");if(e){return e;}}}
return null;};Function._validateParameterType=function Function$_validateParameterType(param,expectedType,expectedInteger,expectedDomElement,mayBeNull,paramName){var e;if(typeof(param)==="undefined"){if(mayBeNull){return null;}
else{return"argumentUndefined("+paramName+")";}}
if(param===null){if(mayBeNull){return null;}
else{return"Error.argumentNull("+paramName+")";}}
if(expectedType&&expectedType.__enum){if(typeof(param)!=='number'){return"Error.argumentType("+paramName+");";}
if((param%1)===0){var values=expectedType.prototype;if(!expectedType.__flags||(param===0)){for(var i in values){if(values[i]===param)return null;}}
else{var v=param;for(var i in values){var vali=values[i];if(vali===0)continue;if((vali&param)===vali){v-=vali;}
if(v===0)return null;}}}
return"Error.argumentOutOfRange("+paramName+")";}
if(expectedDomElement){var val;if(typeof(param.nodeType)!=='number'){var doc=param.ownerDocument||param.document||param;if(doc!=param){var w=doc.defaultView||doc.parentWindow;val=(w!=param)&&!(w.document&&param.document&&(w.document===param.document));}
else{val=(typeof(doc.body)==='undefined');}}
else{val=(param.nodeType===3);}
if(val){return"Error.argument("+paramName+", Sys.Res.argumentDomElement)";}}
if(expectedType&&!expectedType.isInstanceOfType(param)){return"Error.argumentType("+paramName+", Object.getType(param), expectedType);";}
if(expectedType===Number&&expectedInteger){if((param%1)!==0){return"Error.argumentOutOfRange("+paramName+", param, Sys.Res.argumentInteger)";}}
return null;};Object.__typeName='Object';Object.__class=true;Object.getType=function Object$getType(instance){var e=Function._validateParams(arguments,[{name:"instance"}]);if(e)throw e;var ctor=instance.constructor;if(!ctor||(typeof(ctor)!=="function")||!ctor.__typeName||(ctor.__typeName==='Object')){return Object;}
return ctor;};Object.getTypeName=function Object$getTypeName(instance){var e=Function._validateParams(arguments,[{name:"instance"}]);if(e)throw e;return Object.getType(instance).getName();};Array.__typeName='Array';Array.__class=true;Array.add=Array.enqueue=function Array$enqueue(array,item){var e=Function._validateParams(arguments,[{name:"array",type:Array,elementMayBeNull:true},{name:"item",mayBeNull:true}]);if(e)throw e;array[array.length]=item;};Array.addRange=function Array$addRange(array,items){var e=Function._validateParams(arguments,[{name:"array",type:Array,elementMayBeNull:true},{name:"items",type:Array,elementMayBeNull:true}]);if(e)throw e;array.push.apply(array,items);};Array.clear=function Array$clear(array){var e=Function._validateParams(arguments,[{name:"array",type:Array,elementMayBeNull:true}]);if(e)throw e;array.length=0;};Array.clone=function Array$clone(array){var e=Function._validateParams(arguments,[{name:"array",type:Array,elementMayBeNull:true}]);if(e)throw e;if(array.length===1){return[array[0]];}
else{return Array.apply(null,array);}};Array.contains=function Array$contains(array,item){var e=Function._validateParams(arguments,[{name:"array",type:Array,elementMayBeNull:true},{name:"item",mayBeNull:true}]);if(e)throw e;return(Array.indexOf(array,item)>=0);};Array.dequeue=function Array$dequeue(array){var e=Function._validateParams(arguments,[{name:"array",type:Array,elementMayBeNull:true}]);if(e)throw e;return array.shift();};Array.forEach=function Array$forEach(array,method,instance){var e=Function._validateParams(arguments,[{name:"array",type:Array,elementMayBeNull:true},{name:"method",type:Function},{name:"instance",mayBeNull:true,optional:true}]);if(e)throw e;for(var i=0,l=array.length;i<l;i++){var elt=array[i];if(typeof(elt)!=='undefined')method.call(instance,elt,i,array);}};Array.indexOf=function Array$indexOf(array,item,start){var e=Function._validateParams(arguments,[{name:"array",type:Array,elementMayBeNull:true},{name:"item",mayBeNull:true,optional:true},{name:"start",mayBeNull:true,optional:true}]);if(e)throw e;if(typeof(item)==="undefined")return-1;var length=array.length;if(length!==0){start=start-0;if(isNaN(start)){start=0;}
else{if(isFinite(start)){start=start-(start%1);}
if(start<0){start=Math.max(0,length+start);}}
for(var i=start;i<length;i++){if((typeof(array[i])!=="undefined")&&(array[i]===item)){return i;}}}
return-1;};Array.insert=function Array$insert(array,index,item){var e=Function._validateParams(arguments,[{name:"array",type:Array,elementMayBeNull:true},{name:"index",mayBeNull:true},{name:"item",mayBeNull:true}]);if(e)throw e;array.splice(index,0,item);};Array.parse=function Array$parse(value){var e=Function._validateParams(arguments,[{name:"value",type:String,mayBeNull:true}]);if(e)throw e;if(!value)return[];var v=eval(value);if(!Array.isInstanceOfType(v))throw"Error.argument('value', Sys.Res.arrayParseBadFormat)";return v;};Array.remove=function Array$remove(array,item){var e=Function._validateParams(arguments,[{name:"array",type:Array,elementMayBeNull:true},{name:"item",mayBeNull:true}]);if(e)throw e;var index=Array.indexOf(array,item);if(index>=0){array.splice(index,1);}
return(index>=0);}
Array.removeAt=function Array$removeAt(array,index){var e=Function._validateParams(arguments,[{name:"array",type:Array,elementMayBeNull:true},{name:"index",mayBeNull:true}]);if(e)throw e;array.splice(index,1);};if(!window)this.window=this;window.Type=Function;Type.prototype.callBaseMethod=function Type$callBaseMethod(instance,name,baseArguments){var e=Function._validateParams(arguments,[{name:"instance"},{name:"name",type:String},{name:"baseArguments",type:Array,mayBeNull:true,optional:true,elementMayBeNull:true}]);if(e)throw e;var baseMethod=this.getBaseMethod(instance,name);if(!baseMethod)throw"Error.invalidOperation(String.format(Sys.Res.methodNotFound, name))";if(!baseArguments){return baseMethod.apply(instance);}
else{return baseMethod.apply(instance,baseArguments);}};Type.prototype.inheritsFrom=function Type$inheritsFrom(parentType){var e=Function._validateParams(arguments,[{name:"parentType",type:Type}]);if(e)throw e;this.resolveInheritance();var baseType=this.__baseType;while(baseType){if(baseType===parentType){return true;}
baseType=baseType.__baseType;}
return false;};Type.prototype.isInstanceOfType=function Type$isInstanceOfType(instance){var e=Function._validateParams(arguments,[{name:"instance",mayBeNull:true}]);if(e)throw e;if(typeof(instance)==="undefined"||instance===null)return false;if(instance instanceof this)return true;var instanceType=Object.getType(instance);return!!(instanceType===this)||(instanceType.inheritsFrom&&instanceType.inheritsFrom(this))||(instanceType.implementsInterface&&instanceType.implementsInterface(this));};Type.prototype.implementsInterface=function Type$implementsInterface(interfaceType){var e=Function._validateParams(arguments,[{name:"interfaceType",type:Type}]);if(e)throw e;this.resolveInheritance();var interfaceName=interfaceType.getName();var cache=this.__interfaceCache;if(cache){var cacheEntry=cache[interfaceName];if(typeof(cacheEntry)!=='undefined')return cacheEntry;}
else{cache=this.__interfaceCache={};}
var baseType=this;while(baseType){var interfaces=baseType.__interfaces;if(interfaces){if(Array.indexOf(interfaces,interfaceType)!==-1){return cache[interfaceName]=true;}}
baseType=baseType.__baseType;}
return cache[interfaceName]=false;};Type.prototype.resolveInheritance=function Type$resolveInheritance(){if(arguments.length!==0)throw"Error.parameterCount()";if(this.__basePrototypePending){var baseType=this.__baseType;baseType.resolveInheritance();for(var memberName in baseType.prototype){var memberValue=baseType.prototype[memberName];if(!this.prototype[memberName]){this.prototype[memberName]=memberValue;}}
delete this.__basePrototypePending;}};Type.prototype.getName=function Type$getName(){if(arguments.length!==0)throw"Error.parameterCount()";return(typeof(this.__typeName)==="undefined")?"":this.__typeName;};Type.prototype.initializeBase=function Type$initializeBase(instance,baseArguments){var e=Function._validateParams(arguments,[{name:"instance"},{name:"baseArguments",type:Array,mayBeNull:true,optional:true,elementMayBeNull:true}]);if(e)throw e;if(!this.isInstanceOfType(instance))throw"Error.argumentType('instance', Object.getType(instance), this)";this.resolveInheritance();if(this.__baseType){if(!baseArguments){this.__baseType.apply(instance);}
else{this.__baseType.apply(instance,baseArguments);}}
return instance;};Type.registerNamespace=function Type$registerNamespace(namespacePath){var e=Function._validateParams(arguments,[{name:"namespacePath",type:String}]);if(e)throw e;if(!Type.__fullyQualifiedIdentifierRegExp.test(namespacePath))throw"Error.argument('namespacePath', Sys.Res.invalidNameSpace)";var rootObject=window;var namespaceParts=namespacePath.split('.');for(var i=0;i<namespaceParts.length;i++){var currentPart=namespaceParts[i];var ns=rootObject[currentPart];if(ns&&!ns.__namespace){throw"Error.invalidOperation(String.format(Sys.Res.namespaceContainsObject, namespaceParts.splice(0, i + 1).join('.')))";}
if(!ns){ns=rootObject[currentPart]={__namespace:true,__typeName:namespaceParts.slice(0,i+1).join('.')};if(i===0){Sys.__rootNamespaces[Sys.__rootNamespaces.length]=ns;}
var parsedName;try{parsedName=eval(ns.__typeName);}
catch(e){parsedName=null;}
if(parsedName!==ns){delete rootObject[currentPart];throw"Error.argument('namespacePath', Sys.Res.invalidNameSpace)";}
ns.getName=function ns$getName(){return this.__typeName;}}
rootObject=ns;}};window.Sys={__namespace:true,__typeName:"Sys",getName:function(){return"Sys";},__upperCaseTypes:{}};Sys.__rootNamespaces=[Sys];Sys.__registeredTypes={};if(!Sys.EventHandlerList){Sys.EventHandlerList=function Sys$EventHandlerList(){if(arguments.length!==0)throw"Error.parameterCount()";this._list={};}
function Sys$EventHandlerList$addHandler(id,handler){var e=Function._validateParams(arguments,[{name:"id",type:String},{name:"handler",type:Function}]);if(e)throw e;Array.add(this._getEvent(id,true),handler);}
function Sys$EventHandlerList$removeHandler(id,handler){var e=Function._validateParams(arguments,[{name:"id",type:String},{name:"handler",type:Function}]);if(e)throw e;var evt=this._getEvent(id);if(!evt)return;Array.remove(evt,handler);}
function Sys$EventHandlerList$getHandler(id){var e=Function._validateParams(arguments,[{name:"id",type:String}]);if(e)throw e;var evt=this._getEvent(id);if(!evt||(evt.length===0))return null;evt=Array.clone(evt);return function(source,args){for(var i=0,l=evt.length;i<l;i++){evt[i](source,args);}};}
function Sys$EventHandlerList$_getEvent(id,create){if(!this._list[id]){if(!create)return null;this._list[id]=[];}
return this._list[id];}
Sys.EventHandlerList.prototype={addHandler:Sys$EventHandlerList$addHandler,removeHandler:Sys$EventHandlerList$removeHandler,getHandler:Sys$EventHandlerList$getHandler,_getEvent:Sys$EventHandlerList$_getEvent}
Sys.EventArgs=function Sys$EventArgs(){if(arguments.length!==0)throw"Error.parameterCount()";}
Sys.EventArgs.Empty=new Sys.EventArgs();Sys.CancelEventArgs=function Sys$CancelEventArgs(){if(arguments.length!==0)throw"Error.parameterCount()";Sys.CancelEventArgs.initializeBase(this);this._cancel=false;}
function Sys$CancelEventArgs$get_cancel(){if(arguments.length!==0)throw"Error.parameterCount()";return this._cancel;}
function Sys$CancelEventArgs$set_cancel(value){var e=Function._validateParams(arguments,[{name:"value",type:Boolean}]);if(e)throw e;this._cancel=value;}
Sys.CancelEventArgs.prototype={get_cancel:Sys$CancelEventArgs$get_cancel,set_cancel:Sys$CancelEventArgs$set_cancel}};if(!Sys.TypeDescriptor){Sys.TypeDescriptor=function(){var _properties={};var _events={};var _methods={};var _attributes={};this._getAttributes=function(){return _attributes;}
this._getEvents=function(){return _events;}
this._getMethods=function(){return _methods;}
this._getProperties=function(){return _properties;}};Sys.TypeDescriptor.prototype.addAttribute=function(attributeName,attributeValue){this._getAttributes()[attributeName]=attributeValue;};Sys.TypeDescriptor.prototype.addEvent=function(eventName,supportsActions){this._getEvents()[eventName]={name:eventName,actions:supportsActions};};Sys.TypeDescriptor.prototype.addMethod=function(methodName,associatedParameters){this._getMethods()[methodName]={name:methodName,parameters:associatedParameters};};Sys.TypeDescriptor.prototype.addProperty=function(propertyName,propertyType,readOnly){if(!readOnly){readOnly=false;}
var associatedAttributes;if(arguments.length>3){associatedAttributes={};for(var i=3;i<arguments.length;i+=2){var attribute=arguments[i];var value=arguments[i+1];associatedAttributes[attribute]=value;}}
this._getProperties()[propertyName]={name:propertyName,type:propertyType,isReadOnly:readOnly,attributes:associatedAttributes};};Sys.TypeDescriptor.addType=function(tagPrefix,tagName,type){if(!Sys.TypeDescriptor._registeredTags){Sys.TypeDescriptor._registeredTags={};}
var tagTable=Sys.TypeDescriptor._registeredTags[tagPrefix];if(!tagTable){tagTable={};Sys.TypeDescriptor._registeredTags[tagPrefix]=tagTable;}
tagTable[tagName]=type;};Sys.TypeDescriptor.createParameter=function(parameterName,parameterType){return{name:parameterName,type:parameterType};};Sys.TypeDescriptor.getType=function(tagPrefix,tagName){var type=null;if(Sys.TypeDescriptor._registeredTags){var tagNameTable=Sys.TypeDescriptor._registeredTags[tagPrefix];if(tagNameTable){type=tagNameTable[tagName];}}
return type;};Sys.TypeDescriptor.getTypeDescriptor=function(instance){if(instance==null){throw"Error.createError('instance is null in TypeDescriptor.getTypeDescriptor')";}
var type=Object.getType(instance);var td=type._descriptor;if(!td&&!type._descriptorChecked){if(Sys.ITypeDescriptorProvider.isImplementedBy(instance)){td=instance.getDescriptor();type._descriptor=td;}
type._descriptorChecked=true;}
return td;}
Sys.TypeDescriptor.unload=function(){if(Sys.TypeDescriptor._registeredTags){Sys.TypeDescriptor._registeredTags=null;}};Sys.TypeDescriptor.getAttribute=function(instance,attributeName){if(instance==null){throw"Error.createError('instance is null in TypeDescriptor.getAttribute')";}
var td=Sys.TypeDescriptor.getTypeDescriptor(instance);return td._getAttributes()[attributeName];};Sys.TypeDescriptor.getProperty=function(instance,propertyName,key){if(instance==null){throw"Error.createError('instance is null in TypeDescriptor.getProperty')";}
if(Sys.ICustomTypeDescriptor.isImplementedBy(instance)){return instance.getProperty(propertyName,key);}
if((propertyName==null)||(propertyName.length==0)){throw"Error.createError('propertyName is null')";}
var td=Sys.TypeDescriptor.getTypeDescriptor(instance);if(!td){var field=instance[propertyName];if(field&&key){field=field[key];}
return field;}
var propertyInfo=td._getProperties()[propertyName];var getter=instance['get_'+propertyInfo.name];var object=getter.call(instance);if((propertyInfo.type==Object)&&propertyInfo.isReadOnly&&key){object=object[key];}
return object;};Sys.TypeDescriptor.setProperty=function(instance,propertyName,value,key){if(instance==null){throw"Error.createError('instance is null in TypeDescriptor.setProperty')";}
if(Sys.ICustomTypeDescriptor.isImplementedBy(instance)){instance.setProperty(propertyName,value,key);return;}
if((propertyName==null)||(propertyName.length==0)){throw"Error.createError('"+propertyName+" is null')";}
var td=Sys.TypeDescriptor.getTypeDescriptor(instance);if(!td){var object=instance;if(key&&key.length){object=instance[propertyName];propertyName=key;}
object[propertyName]=value;return;}
var propertyInfo=td._getProperties()[propertyName];if(!propertyInfo.isReadOnly){if((propertyInfo.type!=String)&&(typeof(value)=='string')&&propertyInfo.type.parse){value=propertyInfo.type.parse(value);}
var setter=instance['set_'+propertyInfo.name];setter.call(instance,value);}
else if((propertyInfo.type==Object)&&key){var getter=instance['get_'+propertyInfo.name];var object=getter.call(instance);object[key]=value;}};};Sys._Application=function Sys$_Application(){if(arguments.length!==0)throw"Error.parameterCount()";Sys._Application.initializeBase(this);this._disposableObjects=[];this._components={};this._createdComponents=[];this._secondPassComponents=[];this._appLoadHandler=null;this._beginRequestHandler=null;this._clientId=null;this._currentEntry='';this._endRequestHandler=null;this._history=null;this._enableHistory=false;this._historyEnabledInScriptManager=false;this._historyFrame=null;this._historyInitialized=false;this._historyInitialLength=0;this._historyLength=0;this._historyPointIsNew=false;this._ignoreTimer=false;this._initialState=null;this._state={};this._timerCookie=0;this._timerHandler=null;this._uniqueId=null;};Sys.Application=Sys._Application;Sys.Application.notifyScriptLoaded=function(){};