
Function.__typeName='Function';Function.__class=true;Function.createCallback=function Function$createCallback(method,context){var e=Function._validateParams(arguments,[{name:"method",type:Function},{name:"context",mayBeNull:true}]);if(e)throw e;return function(){var l=arguments.length;if(l>0){var args=[];for(var i=0;i<l;i++){args[i]=arguments[i];}
args[l]=context;return method.apply(this,args);}
return method.call(this,context);}}
Function.createDelegate=function Function$createDelegate(instance,method){var e=Function._validateParams(arguments,[{name:"instance",mayBeNull:true},{name:"method",type:Function}]);if(e)throw e;return function(){return method.apply(instance,arguments);}}
Function.emptyFunction=Function.emptyMethod=function Function$emptyMethod(){if(arguments.length!==0)throw Error.parameterCount();}
Function._validateParams=function Function$_validateParams(params,expectedParams){var e;e=Function._validateParameterCount(params,expectedParams);if(e){e.popStackFrame();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){e.popStackFrame();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){var e=Error.parameterCount();e.popStackFrame();return e;}
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){e.popStackFrame();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){e.popStackFrame();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{e=Error.argumentUndefined(paramName);e.popStackFrame();return e;}}
if(param===null){if(mayBeNull){return null;}
else{e=Error.argumentNull(paramName);e.popStackFrame();return e;}}
if(expectedType&&expectedType.__enum){if(typeof(param)!=='number'){e=Error.argumentType(paramName,Object.getType(param),expectedType);e.popStackFrame();return e;}
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;}}}
e=Error.argumentOutOfRange(paramName,param,String.format(Sys.Res.enumInvalidValue,param,expectedType.getName()));e.popStackFrame();return e;}
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){e=Error.argument(paramName,Sys.Res.argumentDomElement);e.popStackFrame();return e;}}
if(expectedType&&!expectedType.isInstanceOfType(param)){e=Error.argumentType(paramName,Object.getType(param),expectedType);e.popStackFrame();return e;}
if(expectedType===Number&&expectedInteger){if((param%1)!==0){e=Error.argumentOutOfRange(paramName,param,Sys.Res.argumentInteger);e.popStackFrame();return e;}}
return null;}
Error.__typeName='Error';Error.__class=true;Error.create=function Error$create(message,errorInfo){var e=Function._validateParams(arguments,[{name:"message",type:String,mayBeNull:true,optional:true},{name:"errorInfo",mayBeNull:true,optional:true}]);if(e)throw e;var e=new Error(message);e.message=message;if(errorInfo){for(var v in errorInfo){e[v]=errorInfo[v];}}
e.popStackFrame();return e;}
Error.argument=function Error$argument(paramName,message){var e=Function._validateParams(arguments,[{name:"paramName",type:String,mayBeNull:true,optional:true},{name:"message",type:String,mayBeNull:true,optional:true}]);if(e)throw e;var displayMessage="Sys.ArgumentException: "+(message?message:Sys.Res.argument);if(paramName){displayMessage+="\n"+String.format(Sys.Res.paramName,paramName);}
var e=Error.create(displayMessage,{name:"Sys.ArgumentException",paramName:paramName});e.popStackFrame();return e;}
Error.argumentNull=function Error$argumentNull(paramName,message){var e=Function._validateParams(arguments,[{name:"paramName",type:String,mayBeNull:true,optional:true},{name:"message",type:String,mayBeNull:true,optional:true}]);if(e)throw e;var displayMessage="Sys.ArgumentNullException: "+(message?message:Sys.Res.argumentNull);if(paramName){displayMessage+="\n"+String.format(Sys.Res.paramName,paramName);}
var e=Error.create(displayMessage,{name:"Sys.ArgumentNullException",paramName:paramName});e.popStackFrame();return e;}
Error.argumentOutOfRange=function Error$argumentOutOfRange(paramName,actualValue,message){var e=Function._validateParams(arguments,[{name:"paramName",type:String,mayBeNull:true,optional:true},{name:"actualValue",mayBeNull:true,optional:true},{name:"message",type:String,mayBeNull:true,optional:true}]);if(e)throw e;var displayMessage="Sys.ArgumentOutOfRangeException: "+(message?message:Sys.Res.argumentOutOfRange);if(paramName){displayMessage+="\n"+String.format(Sys.Res.paramName,paramName);}
if(typeof(actualValue)!=="undefined"&&actualValue!==null){displayMessage+="\n"+String.format(Sys.Res.actualValue,actualValue);}
var e=Error.create(displayMessage,{name:"Sys.ArgumentOutOfRangeException",paramName:paramName,actualValue:actualValue});e.popStackFrame();return e;}
Error.argumentType=function Error$argumentType(paramName,actualType,expectedType,message){var e=Function._validateParams(arguments,[{name:"paramName",type:String,mayBeNull:true,optional:true},{name:"actualType",type:Type,mayBeNull:true,optional:true},{name:"expectedType",type:Type,mayBeNull:true,optional:true},{name:"message",type:String,mayBeNull:true,optional:true}]);if(e)throw e;var displayMessage="Sys.ArgumentTypeException: ";if(message){displayMessage+=message;}
else if(actualType&&expectedType){displayMessage+=String.format(Sys.Res.argumentTypeWithTypes,actualType.getName(),expectedType.getName());}
else{displayMessage+=Sys.Res.argumentType;}
if(paramName){displayMessage+="\n"+String.format(Sys.Res.paramName,paramName);}
var e=Error.create(displayMessage,{name:"Sys.ArgumentTypeException",paramName:paramName,actualType:actualType,expectedType:expectedType});e.popStackFrame();return e;}
Error.argumentUndefined=function Error$argumentUndefined(paramName,message){var e=Function._validateParams(arguments,[{name:"paramName",type:String,mayBeNull:true,optional:true},{name:"message",type:String,mayBeNull:true,optional:true}]);if(e)throw e;var displayMessage="Sys.ArgumentUndefinedException: "+(message?message:Sys.Res.argumentUndefined);if(paramName){displayMessage+="\n"+String.format(Sys.Res.paramName,paramName);}
var e=Error.create(displayMessage,{name:"Sys.ArgumentUndefinedException",paramName:paramName});e.popStackFrame();return e;}
Error.format=function Error$format(message){var e=Function._validateParams(arguments,[{name:"message",type:String,mayBeNull:true,optional:true}]);if(e)throw e;var displayMessage="Sys.FormatException: "+(message?message:Sys.Res.format);var e=Error.create(displayMessage,{name:'Sys.FormatException'});e.popStackFrame();return e;}
Error.invalidOperation=function Error$invalidOperation(message){var e=Function._validateParams(arguments,[{name:"message",type:String,mayBeNull:true,optional:true}]);if(e)throw e;var displayMessage="Sys.InvalidOperationException: "+(message?message:Sys.Res.invalidOperation);var e=Error.create(displayMessage,{name:'Sys.InvalidOperationException'});e.popStackFrame();return e;}
Error.notImplemented=function Error$notImplemented(message){var e=Function._validateParams(arguments,[{name:"message",type:String,mayBeNull:true,optional:true}]);if(e)throw e;var displayMessage="Sys.NotImplementedException: "+(message?message:Sys.Res.notImplemented);var e=Error.create(displayMessage,{name:'Sys.NotImplementedException'});e.popStackFrame();return e;}
Error.parameterCount=function Error$parameterCount(message){var e=Function._validateParams(arguments,[{name:"message",type:String,mayBeNull:true,optional:true}]);if(e)throw e;var displayMessage="Sys.ParameterCountException: "+(message?message:Sys.Res.parameterCount);var e=Error.create(displayMessage,{name:'Sys.ParameterCountException'});e.popStackFrame();return e;}
Error.prototype.popStackFrame=function Error$popStackFrame(){if(arguments.length!==0)throw Error.parameterCount();if(typeof(this.stack)==="undefined"||this.stack===null||typeof(this.fileName)==="undefined"||this.fileName===null||typeof(this.lineNumber)==="undefined"||this.lineNumber===null){return;}
var stackFrames=this.stack.split("\n");var currentFrame=stackFrames[0];var pattern=this.fileName+":"+this.lineNumber;while(typeof(currentFrame)!=="undefined"&&currentFrame!==null&&currentFrame.indexOf(pattern)===-1){stackFrames.shift();currentFrame=stackFrames[0];}
var nextFrame=stackFrames[1];if(typeof(nextFrame)==="undefined"||nextFrame===null){return;}
var nextFrameParts=nextFrame.match(/@(.*):(\d+)$/);if(typeof(nextFrameParts)==="undefined"||nextFrameParts===null){return;}
this.fileName=nextFrameParts[1];this.lineNumber=parseInt(nextFrameParts[2]);stackFrames.shift();this.stack=stackFrames.join("\n");}
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();}
String.__typeName='String';String.__class=true;String.prototype.endsWith=function String$endsWith(suffix){var e=Function._validateParams(arguments,[{name:"suffix",type:String}]);if(e)throw e;return(this.substr(this.length-suffix.length)===suffix);}
String.prototype.startsWith=function String$startsWith(prefix){var e=Function._validateParams(arguments,[{name:"prefix",type:String}]);if(e)throw e;return(this.substr(0,prefix.length)===prefix);}
String.prototype.trim=function String$trim(){if(arguments.length!==0)throw Error.parameterCount();return this.replace(/^\s+|\s+$/g,'');}
String.prototype.trimEnd=function String$trimEnd(){if(arguments.length!==0)throw Error.parameterCount();return this.replace(/\s+$/,'');}
String.prototype.trimStart=function String$trimStart(){if(arguments.length!==0)throw Error.parameterCount();return this.replace(/^\s+/,'');}
String.format=function String$format(format,args){var e=Function._validateParams(arguments,[{name:"format",type:String},{name:"args",mayBeNull:true,parameterArray:true}]);if(e)throw e;return String._toFormattedString(false,arguments);}
String.localeFormat=function String$localeFormat(format,args){var e=Function._validateParams(arguments,[{name:"format",type:String},{name:"args",mayBeNull:true,parameterArray:true}]);if(e)throw e;return String._toFormattedString(true,arguments);}
String._toFormattedString=function String$_toFormattedString(useLocale,args){var result='';var format=args[0];for(var i=0;;){var open=format.indexOf('{',i);var close=format.indexOf('}',i);if((open<0)&&(close<0)){result+=format.slice(i);break;}
if((close>0)&&((close<open)||(open<0))){if(format.charAt(close+1)!=='}'){throw Error.argument('format',Sys.Res.stringFormatBraceMismatch);}
result+=format.slice(i,close+1);i=close+2;continue;}
result+=format.slice(i,open);i=open+1;if(format.charAt(i)==='{'){result+='{';i++;continue;}
if(close<0)throw Error.argument('format',Sys.Res.stringFormatBraceMismatch);var brace=format.substring(i,close);var colonIndex=brace.indexOf(':');var argNumber=parseInt((colonIndex<0)?brace:brace.substring(0,colonIndex),10)+1;if(isNaN(argNumber))throw Error.argument('format',Sys.Res.stringFormatInvalid);var argFormat=(colonIndex<0)?'':brace.substring(colonIndex+1);var arg=args[argNumber];if(typeof(arg)==="undefined"||arg===null){arg='';}
if(arg.toFormattedString){result+=arg.toFormattedString(argFormat);}
else if(useLocale&&arg.localeFormat){result+=arg.localeFormat(argFormat);}
else if(arg.format){result+=arg.format(argFormat);}
else
result+=arg.toString();i=close+1;}
return result;}
Boolean.__typeName='Boolean';Boolean.__class=true;Boolean.parse=function Boolean$parse(value){var e=Function._validateParams(arguments,[{name:"value",type:String}]);if(e)throw e;var v=value.trim().toLowerCase();if(v==='false')return false;if(v==='true')return true;throw Error.argumentOutOfRange('value',value,Sys.Res.boolTrueOrFalse);}
Date.__typeName='Date';Date.__class=true;Date._appendPreOrPostMatch=function Date$_appendPreOrPostMatch(preMatch,strBuilder){var quoteCount=0;var escaped=false;for(var i=0,il=preMatch.length;i<il;i++){var c=preMatch.charAt(i);switch(c){case'\'':if(escaped)strBuilder.append("'");else quoteCount++;escaped=false;break;case'\\':if(escaped)strBuilder.append("\\");escaped=!escaped;break;default:strBuilder.append(c);escaped=false;break;}}
return quoteCount;}
Date._expandFormat=function Date$_expandFormat(dtf,format){if(!format){format="F";}
if(format.length===1){switch(format){case"d":return dtf.ShortDatePattern;case"D":return dtf.LongDatePattern;case"t":return dtf.ShortTimePattern;case"T":return dtf.LongTimePattern;case"F":return dtf.FullDateTimePattern;case"M":case"m":return dtf.MonthDayPattern;case"s":return dtf.SortableDateTimePattern;case"Y":case"y":return dtf.YearMonthPattern;default:throw Error.format(Sys.Res.formatInvalidString);}}
return format;}
Date._expandYear=function Date$_expandYear(dtf,year){if(year<100){var curr=new Date().getFullYear();year+=curr-(curr%100);if(year>dtf.Calendar.TwoDigitYearMax){return year-100;}}
return year;}
Date._getParseRegExp=function Date$_getParseRegExp(dtf,format){if(!dtf._parseRegExp){dtf._parseRegExp={};}
else if(dtf._parseRegExp[format]){return dtf._parseRegExp[format];}
var expFormat=Date._expandFormat(dtf,format);expFormat=expFormat.replace(/([\^\$\.\*\+\?\|\[\]\(\)\{\}])/g,"\\\\$1");var regexp=new Sys.StringBuilder("^");var groups=[];var index=0;var quoteCount=0;var tokenRegExp=Date._getTokenRegExp();var match;while((match=tokenRegExp.exec(expFormat))!==null){var preMatch=expFormat.slice(index,match.index);index=tokenRegExp.lastIndex;quoteCount+=Date._appendPreOrPostMatch(preMatch,regexp);if((quoteCount%2)===1){regexp.append(match[0]);continue;}
switch(match[0]){case'dddd':case'ddd':case'MMMM':case'MMM':regexp.append("(\\D+)");break;case'tt':case't':regexp.append("(\\D*)");break;case'yyyy':regexp.append("(\\d{4})");break;case'fff':regexp.append("(\\d{3})");break;case'ff':regexp.append("(\\d{2})");break;case'f':regexp.append("(\\d)");break;case'dd':case'd':case'MM':case'M':case'yy':case'y':case'HH':case'H':case'hh':case'h':case'mm':case'm':case'ss':case's':regexp.append("(\\d\\d?)");break;case'zzz':regexp.append("([+-]?\\d\\d?:\\d{2})");break;case'zz':case'z':regexp.append("([+-]?\\d\\d?)");break;}
Array.add(groups,match[0]);}
Date._appendPreOrPostMatch(expFormat.slice(index),regexp);regexp.append("$");var regexpStr=regexp.toString().replace(/\s+/g,"\\s+");var parseRegExp={'regExp':regexpStr,'groups':groups};dtf._parseRegExp[format]=parseRegExp;return parseRegExp;}
Date._getTokenRegExp=function Date$_getTokenRegExp(){return/dddd|ddd|dd|d|MMMM|MMM|MM|M|yyyy|yy|y|hh|h|HH|H|mm|m|ss|s|tt|t|fff|ff|f|zzz|zz|z/g;}
Date.parseLocale=function Date$parseLocale(value,formats){var e=Function._validateParams(arguments,[{name:"value",type:String},{name:"formats",mayBeNull:true,optional:true,parameterArray:true}]);if(e)throw e;return Date._parse(value,Sys.CultureInfo.CurrentCulture,arguments);}
Date.parseInvariant=function Date$parseInvariant(value,formats){var e=Function._validateParams(arguments,[{name:"value",type:String},{name:"formats",mayBeNull:true,optional:true,parameterArray:true}]);if(e)throw e;return Date._parse(value,Sys.CultureInfo.InvariantCulture,arguments);}
Date._parse=function Date$_parse(value,cultureInfo,args){var custom=false;for(var i=1,il=args.length;i<il;i++){var format=args[i];if(format){custom=true;var date=Date._parseExact(value,format,cultureInfo);if(date)return date;}}
if(!custom){var formats=cultureInfo._getDateTimeFormats();for(var i=0,il=formats.length;i<il;i++){var date=Date._parseExact(value,formats[i],cultureInfo);if(date)return date;}}
return null;}
Date._parseExact=function Date$_parseExact(value,format,cultureInfo){value=value.trim();var dtf=cultureInfo.dateTimeFormat;var parseInfo=Date._getParseRegExp(dtf,format);var match=new RegExp(parseInfo.regExp).exec(value);if(match===null)return null;var groups=parseInfo.groups;var year=null,month=null,date=null,weekDay=null;var hour=0,min=0,sec=0,msec=0,tzMinOffset=null;var pmHour=false;for(var j=0,jl=groups.length;j<jl;j++){var matchGroup=match[j+1];if(matchGroup){switch(groups[j]){case'dd':case'd':date=parseInt(matchGroup,10);if((date<1)||(date>31))return null;break;case'MMMM':month=cultureInfo._getMonthIndex(matchGroup);if((month<0)||(month>11))return null;break;case'MMM':month=cultureInfo._getAbbrMonthIndex(matchGroup);if((month<0)||(month>11))return null;break;case'M':case'MM':var month=parseInt(matchGroup,10)-1;if((month<0)||(month>11))return null;break;case'y':case'yy':year=Date._expandYear(dtf,parseInt(matchGroup,10));if((year<0)||(year>9999))return null;break;case'yyyy':year=parseInt(matchGroup,10);if((year<0)||(year>9999))return null;break;case'h':case'hh':hour=parseInt(matchGroup,10);if(hour===12)hour=0;if((hour<0)||(hour>11))return null;break;case'H':case'HH':hour=parseInt(matchGroup,10);if((hour<0)||(hour>23))return null;break;case'm':case'mm':min=parseInt(matchGroup,10);if((min<0)||(min>59))return null;break;case's':case'ss':sec=parseInt(matchGroup,10);if((sec<0)||(sec>59))return null;break;case'tt':case't':var upperToken=matchGroup.toUpperCase();pmHour=(upperToken===dtf.PMDesignator.toUpperCase());if(!pmHour&&(upperToken!==dtf.AMDesignator.toUpperCase()))return null;break;case'f':msec=parseInt(matchGroup,10)*100;if((msec<0)||(msec>999))return null;break;case'ff':msec=parseInt(matchGroup,10)*10;if((msec<0)||(msec>999))return null;break;case'fff':msec=parseInt(matchGroup,10);if((msec<0)||(msec>999))return null;break;case'dddd':weekDay=cultureInfo._getDayIndex(matchGroup);if((weekDay<0)||(weekDay>6))return null;break;case'ddd':weekDay=cultureInfo._getAbbrDayIndex(matchGroup);if((weekDay<0)||(weekDay>6))return null;break;case'zzz':var offsets=matchGroup.split(/:/);if(offsets.length!==2)return null;var hourOffset=parseInt(offsets[0],10);if((hourOffset<-12)||(hourOffset>13))return null;var minOffset=parseInt(offsets[1],10);if((minOffset<0)||(minOffset>59))return null;tzMinOffset=(hourOffset*60)+(matchGroup.startsWith('-')?-minOffset:minOffset);break;case'z':case'zz':var hourOffset=parseInt(matchGroup,10);if((hourOffset<-12)||(hourOffset>13))return null;tzMinOffset=hourOffset*60;break;}}}
var result=new Date();if(year===null){year=result.getFullYear();}
if(month===null){month=result.getMonth();}
if(date===null){date=result.getDate();}
result.setFullYear(year,month,date);if(result.getDate()!==date)return null;if((weekDay!==null)&&(result.getDay()!==weekDay)){return null;}
if(pmHour&&(hour<12)){hour+=12;}
result.setHours(hour,min,sec,msec);if(tzMinOffset!==null){var adjustedMin=result.getMinutes()-(tzMinOffset+result.getTimezoneOffset());result.setHours(result.getHours()+parseInt(adjustedMin/60,10),adjustedMin%60);}
return result;}
Date.prototype.format=function Date$format(format){var e=Function._validateParams(arguments,[{name:"format",type:String}]);if(e)throw e;return this._toFormattedString(format,Sys.CultureInfo.InvariantCulture);}
Date.prototype.localeFormat=function Date$localeFormat(format){var e=Function._validateParams(arguments,[{name:"format",type:String}]);if(e)throw e;return this._toFormattedString(format,Sys.CultureInfo.CurrentCulture);}
Date.prototype._toFormattedString=function Date$_toFormattedString(format,cultureInfo){if(!format||(format.length===0)||(format==='i')){if(cultureInfo&&(cultureInfo.name.length>0)){return this.toLocaleString();}
else{return this.toString();}}
var dtf=cultureInfo.dateTimeFormat;format=Date._expandFormat(dtf,format);var ret=new Sys.StringBuilder();var hour;function addLeadingZero(num){if(num<10){return'0'+num;}
return num.toString();}
function addLeadingZeros(num){if(num<10){return'00'+num;}
if(num<100){return'0'+num;}
return num.toString();}
var quoteCount=0;var tokenRegExp=Date._getTokenRegExp();for(;;){var index=tokenRegExp.lastIndex;var ar=tokenRegExp.exec(format);var preMatch=format.slice(index,ar?ar.index:format.length);quoteCount+=Date._appendPreOrPostMatch(preMatch,ret);if(!ar)break;if((quoteCount%2)===1){ret.append(ar[0]);continue;}
switch(ar[0]){case"dddd":ret.append(dtf.DayNames[this.getDay()]);break;case"ddd":ret.append(dtf.AbbreviatedDayNames[this.getDay()]);break;case"dd":ret.append(addLeadingZero(this.getDate()));break;case"d":ret.append(this.getDate());break;case"MMMM":ret.append(dtf.MonthNames[this.getMonth()]);break;case"MMM":ret.append(dtf.AbbreviatedMonthNames[this.getMonth()]);break;case"MM":ret.append(addLeadingZero(this.getMonth()+1));break;case"M":ret.append(this.getMonth()+1);break;case"yyyy":ret.append(this.getFullYear());break;case"yy":ret.append(addLeadingZero(this.getFullYear()%100));break;case"y":ret.append(this.getFullYear()%100);break;case"hh":hour=this.getHours()%12;if(hour===0)hour=12;ret.append(addLeadingZero(hour));break;case"h":hour=this.getHours()%12;if(hour===0)hour=12;ret.append(hour);break;case"HH":ret.append(addLeadingZero(this.getHours()));break;case"H":ret.append(this.getHours());break;case"mm":ret.append(addLeadingZero(this.getMinutes()));break;case"m":ret.append(this.getMinutes());break;case"ss":ret.append(addLeadingZero(this.getSeconds()));break;case"s":ret.append(this.getSeconds());break;case"tt":ret.append((this.getHours()<12)?dtf.AMDesignator:dtf.PMDesignator);break;case"t":ret.append(((this.getHours()<12)?dtf.AMDesignator:dtf.PMDesignator).charAt(0));break;case"f":ret.append(addLeadingZeros(this.getMilliseconds()).charAt(0));break;case"ff":ret.append(addLeadingZeros(this.getMilliseconds()).substr(0,2));break;case"fff":ret.append(addLeadingZeros(this.getMilliseconds()));break;case"z":hour=this.getTimezoneOffset()/60;ret.append(((hour<=0)?'+':'-')+Math.floor(Math.abs(hour)));break;case"zz":hour=this.getTimezoneOffset()/60;ret.append(((hour<=0)?'+':'-')+addLeadingZero(Math.floor(Math.abs(hour))));break;case"zzz":hour=this.getTimezoneOffset()/60;ret.append(((hour<=0)?'+':'-')+addLeadingZero(Math.floor(Math.abs(hour)))+
dtf.TimeSeparator+addLeadingZero(Math.abs(this.getTimezoneOffset()%60)));break;}}
return ret.toString();}
Number.__typeName='Number';Number.__class=true;Number.parseLocale=function Number$parseLocale(value){var e=Function._validateParams(arguments,[{name:"value",type:String}]);if(e)throw e;return Number._parse(value,Sys.CultureInfo.CurrentCulture);}
Number.parseInvariant=function Number$parseInvariant(value){var e=Function._validateParams(arguments,[{name:"value",type:String}]);if(e)throw e;return Number._parse(value,Sys.CultureInfo.InvariantCulture);}
Number._parse=function Number$_parse(value,cultureInfo){value=value.trim();if(value.match(/^[+-]?infinity$/i)){return parseFloat(value);}
if(value.match(/^0x[a-f0-9]+$/i)){return parseInt(value);}
var numFormat=cultureInfo.numberFormat;var signInfo=Number._parseNumberNegativePattern(value,numFormat,numFormat.NumberNegativePattern);var sign=signInfo[0];var num=signInfo[1];if((sign==='')&&(numFormat.NumberNegativePattern!==1)){signInfo=Number._parseNumberNegativePattern(value,numFormat,1);sign=signInfo[0];num=signInfo[1];}
if(sign==='')sign='+';var exponent;var intAndFraction;var exponentPos=num.indexOf('e');if(exponentPos<0)exponentPos=num.indexOf('E');if(exponentPos<0){intAndFraction=num;exponent=null;}
else{intAndFraction=num.substr(0,exponentPos);exponent=num.substr(exponentPos+1);}
var integer;var fraction;var decimalPos=intAndFraction.indexOf(numFormat.NumberDecimalSeparator);if(decimalPos<0){integer=intAndFraction;fraction=null;}
else{integer=intAndFraction.substr(0,decimalPos);fraction=intAndFraction.substr(decimalPos+numFormat.NumberDecimalSeparator.length);}
integer=integer.split(numFormat.NumberGroupSeparator).join('');var altNumGroupSeparator=numFormat.NumberGroupSeparator.replace(/\u00A0/g," ");if(numFormat.NumberGroupSeparator!==altNumGroupSeparator){integer=integer.split(altNumGroupSeparator).join('');}
var p=sign+integer;if(fraction!==null){p+='.'+fraction;}
if(exponent!==null){var expSignInfo=Number._parseNumberNegativePattern(exponent,numFormat,1);if(expSignInfo[0]===''){expSignInfo[0]='+';}
p+='e'+expSignInfo[0]+expSignInfo[1];}
if(p.match(/^[+-]?\d*\.?\d*(e[+-]?\d+)?$/)){return parseFloat(p);}
return Number.NaN;}
Number._parseNumberNegativePattern=function Number$_parseNumberNegativePattern(value,numFormat,numberNegativePattern){var neg=numFormat.NegativeSign;var pos=numFormat.PositiveSign;switch(numberNegativePattern){case 4:neg=' '+neg;pos=' '+pos;case 3:if(value.endsWith(neg)){return['-',value.substr(0,value.length-neg.length)];}
else if(value.endsWith(pos)){return['+',value.substr(0,value.length-pos.length)];}
break;case 2:neg+=' ';pos+=' ';case 1:if(value.startsWith(neg)){return['-',value.substr(neg.length)];}
else if(value.startsWith(pos)){return['+',value.substr(pos.length)];}
break;case 0:if(value.startsWith('(')&&value.endsWith(')')){return['-',value.substr(1,value.length-2)];}
break;}
return['',value];}
Number.prototype.format=function Number$format(format){var e=Function._validateParams(arguments,[{name:"format",type:String}]);if(e)throw e;return this._toFormattedString(format,Sys.CultureInfo.InvariantCulture);}
Number.prototype.localeFormat=function Number$localeFormat(format){var e=Function._validateParams(arguments,[{name:"format",type:String}]);if(e)throw e;return this._toFormattedString(format,Sys.CultureInfo.CurrentCulture);}
Number.prototype._toFormattedString=function Number$_toFormattedString(format,cultureInfo){if(!format||(format.length===0)||(format==='i')){if(cultureInfo&&(cultureInfo.name.length>0)){return this.toLocaleString();}
else{return this.toString();}}
var _percentPositivePattern=["n %","n%","%n"];var _percentNegativePattern=["-n %","-n%","-%n"];var _numberNegativePattern=["(n)","-n","- n","n-","n -"];var _currencyPositivePattern=["$n","n$","$ n","n $"];var _currencyNegativePattern=["($n)","-$n","$-n","$n-","(n$)","-n$","n-$","n$-","-n $","-$ n","n $-","$ n-","$ -n","n- $","($ n)","(n $)"];function zeroPad(str,count,left){for(var l=str.length;l<count;l++){str=(left?('0'+str):(str+'0'));}
return str;}
function expandNumber(number,precision,groupSizes,sep,decimalChar){var curSize=groupSizes[0];var curGroupIndex=1;var factor=Math.pow(10,precision);var rounded=(Math.round(number*factor)/factor);if(!isFinite(rounded)){rounded=number;}
number=rounded;var numberString=number.toString();var right="";var exponent;var split=numberString.split(/e/i);numberString=split[0];exponent=(split.length>1?parseInt(split[1]):0);split=numberString.split('.');numberString=split[0];right=split.length>1?split[1]:"";var l;if(exponent>0){right=zeroPad(right,exponent,false);numberString+=right.slice(0,exponent);right=right.substr(exponent);}
else if(exponent<0){exponent=-exponent;numberString=zeroPad(numberString,exponent+1,true);right=numberString.slice(-exponent,numberString.length)+right;numberString=numberString.slice(0,-exponent);}
if(precision>0){if(right.length>precision){right=right.slice(0,precision);}
else{right=zeroPad(right,precision,false);}
right=decimalChar+right;}
else{right="";}
var stringIndex=numberString.length-1;var ret="";while(stringIndex>=0){if(curSize===0||curSize>stringIndex){if(ret.length>0)
return numberString.slice(0,stringIndex+1)+sep+ret+right;else
return numberString.slice(0,stringIndex+1)+right;}
if(ret.length>0)
ret=numberString.slice(stringIndex-curSize+1,stringIndex+1)+sep+ret;else
ret=numberString.slice(stringIndex-curSize+1,stringIndex+1);stringIndex-=curSize;if(curGroupIndex<groupSizes.length){curSize=groupSizes[curGroupIndex];curGroupIndex++;}}
return numberString.slice(0,stringIndex+1)+sep+ret+right;}
var nf=cultureInfo.numberFormat;var number=Math.abs(this);if(!format)
format="D";var precision=-1;if(format.length>1)precision=parseInt(format.slice(1),10);var pattern;switch(format.charAt(0)){case"d":case"D":pattern='n';if(precision!==-1){number=zeroPad(""+number,precision,true);}
if(this<0)number=-number;break;case"c":case"C":if(this<0)pattern=_currencyNegativePattern[nf.CurrencyNegativePattern];else pattern=_currencyPositivePattern[nf.CurrencyPositivePattern];if(precision===-1)precision=nf.CurrencyDecimalDigits;number=expandNumber(Math.abs(this),precision,nf.CurrencyGroupSizes,nf.CurrencyGroupSeparator,nf.CurrencyDecimalSeparator);break;case"n":case"N":if(this<0)pattern=_numberNegativePattern[nf.NumberNegativePattern];else pattern='n';if(precision===-1)precision=nf.NumberDecimalDigits;number=expandNumber(Math.abs(this),precision,nf.NumberGroupSizes,nf.NumberGroupSeparator,nf.NumberDecimalSeparator);break;case"p":case"P":if(this<0)pattern=_percentNegativePattern[nf.PercentNegativePattern];else pattern=_percentPositivePattern[nf.PercentPositivePattern];if(precision===-1)precision=nf.PercentDecimalDigits;number=expandNumber(Math.abs(this)*100,precision,nf.PercentGroupSizes,nf.PercentGroupSeparator,nf.PercentDecimalSeparator);break;default:throw Error.format(Sys.Res.formatBadFormatSpecifier);}
var regex=/n|\$|-|%/g;var ret="";for(;;){var index=regex.lastIndex;var ar=regex.exec(pattern);ret+=pattern.slice(index,ar?ar.index:pattern.length);if(!ar)
break;switch(ar[0]){case"n":ret+=number;break;case"$":ret+=nf.CurrencySymbol;break;case"-":ret+=nf.NegativeSign;break;case"%":ret+=nf.PercentSymbol;break;}}
return ret;}
RegExp.__typeName='RegExp';RegExp.__class=true;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.__fullyQualifiedIdentifierRegExp=new RegExp("^[^.0-9 \\s|,;:&*=+\\-()\\[\\]{}^%#@!~\\n\\r\\t\\f\\\\]([^ \\s|,;:&*=+\\-()\\[\\]{}^%#@!~\\n\\r\\t\\f\\\\]*[^. \\s|,;:&*=+\\-()\\[\\]{}^%#@!~\\n\\r\\t\\f\\\\])?$","i");Type.__identifierRegExp=new RegExp("^[^.0-9 \\s|,;:&*=+\\-()\\[\\]{}^%#@!~\\n\\r\\t\\f\\\\][^. \\s|,;:&*=+\\-()\\[\\]{}^%#@!~\\n\\r\\t\\f\\\\]*$","i");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.getBaseMethod=function Type$getBaseMethod(instance,name){var e=Function._validateParams(arguments,[{name:"instance"},{name:"name",type:String}]);if(e)throw e;if(!this.isInstanceOfType(instance))throw Error.argumentType('instance',Object.getType(instance),this);var baseType=this.getBaseType();if(baseType){var baseMethod=baseType.prototype[name];return(baseMethod instanceof Function)?baseMethod:null;}
return null;}
Type.prototype.getBaseType=function Type$getBaseType(){if(arguments.length!==0)throw Error.parameterCount();return(typeof(this.__baseType)==="undefined")?null:this.__baseType;}
Type.prototype.getInterfaces=function Type$getInterfaces(){if(arguments.length!==0)throw Error.parameterCount();var result=[];var type=this;while(type){var interfaces=type.__interfaces;if(interfaces){for(var i=0,l=interfaces.length;i<l;i++){var interfaceType=interfaces[i];if(!Array.contains(result,interfaceType)){result[result.length]=interfaceType;}}}
type=type.__baseType;}
return result;}
Type.prototype.getName=function Type$getName(){if(arguments.length!==0)throw Error.parameterCount();return(typeof(this.__typeName)==="undefined")?"":this.__typeName;}
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.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.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.prototype.isImplementedBy=function Type$isImplementedBy(instance){var e=Function._validateParams(arguments,[{name:"instance",mayBeNull:true}]);if(e)throw e;if(typeof(instance)==="undefined"||instance===null)return false;var instanceType=Object.getType(instance);return!!(instanceType.implementsInterface&&instanceType.implementsInterface(this));}
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.registerClass=function Type$registerClass(typeName,baseType,interfaceTypes){var e=Function._validateParams(arguments,[{name:"typeName",type:String},{name:"baseType",type:Type,mayBeNull:true,optional:true},{name:"interfaceTypes",type:Type,parameterArray:true}]);if(e)throw e;if(!Type.__fullyQualifiedIdentifierRegExp.test(typeName))throw Error.argument('typeName',Sys.Res.notATypeName);var parsedName;try{parsedName=eval(typeName);}
catch(e){throw Error.argument('typeName',Sys.Res.argumentTypeName);}
if(parsedName!==this)throw Error.argument('typeName',Sys.Res.badTypeName);if(Sys.__registeredTypes[typeName])throw Error.invalidOperation(String.format(Sys.Res.typeRegisteredTwice,typeName));if((arguments.length>1)&&(typeof(baseType)==='undefined'))throw Error.argumentUndefined('baseType');if(baseType&&!baseType.__class)throw Error.argument('baseType',Sys.Res.baseNotAClass);this.prototype.constructor=this;this.__typeName=typeName;this.__class=true;if(baseType){this.__baseType=baseType;this.__basePrototypePending=true;}
Sys.__upperCaseTypes[typeName.toUpperCase()]=this;if(interfaceTypes){this.__interfaces=[];this.resolveInheritance();for(var i=2,l=arguments.length;i<l;i++){var interfaceType=arguments[i];if(!interfaceType.__interface)throw Error.argument('interfaceTypes['+(i-2)+']',Sys.Res.notAnInterface);for(var methodName in interfaceType.prototype){var method=interfaceType.prototype[methodName];if(!this.prototype[methodName]){this.prototype[methodName]=method;}}
this.__interfaces.push(interfaceType);}}
Sys.__registeredTypes[typeName]=true;return this;}
Type.prototype.registerInterface=function Type$registerInterface(typeName){var e=Function._validateParams(arguments,[{name:"typeName",type:String}]);if(e)throw e;if(!Type.__fullyQualifiedIdentifierRegExp.test(typeName))throw Error.argument('typeName',Sys.Res.notATypeName);var parsedName;try{parsedName=eval(typeName);}
catch(e){throw Error.argument('typeName',Sys.Res.argumentTypeName);}
if(parsedName!==this)throw Error.argument('typeName',Sys.Res.badTypeName);if(Sys.__registeredTypes[typeName])throw Error.invalidOperation(String.format(Sys.Res.typeRegisteredTwice,typeName));Sys.__upperCaseTypes[typeName.toUpperCase()]=this;this.prototype.constructor=this;this.__typeName=typeName;this.__interface=true;Sys.__registeredTypes[typeName]=true;return this;}
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.getRootNamespaces=function Type$getRootNamespaces(){if(arguments.length!==0)throw Error.parameterCount();return Array.clone(Sys.__rootNamespaces);}
Type.isClass=function Type$isClass(type){var e=Function._validateParams(arguments,[{name:"type",mayBeNull:true}]);if(e)throw e;if((typeof(type)==='undefined')||(type===null))return false;return!!type.__class;}
Type.isInterface=function Type$isInterface(type){var e=Function._validateParams(arguments,[{name:"type",mayBeNull:true}]);if(e)throw e;if((typeof(type)==='undefined')||(type===null))return false;return!!type.__interface;}
Type.isNamespace=function Type$isNamespace(object){var e=Function._validateParams(arguments,[{name:"object",mayBeNull:true}]);if(e)throw e;if((typeof(object)==='undefined')||(object===null))return false;return!!object.__namespace;}
Type.parse=function Type$parse(typeName,ns){var e=Function._validateParams(arguments,[{name:"typeName",type:String,mayBeNull:true},{name:"ns",mayBeNull:true,optional:true}]);if(e)throw e;var fn;if(ns){fn=Sys.__upperCaseTypes[ns.getName().toUpperCase()+'.'+typeName.toUpperCase()];return fn||null;}
if(!typeName)return null;if(!Type.__htClasses){Type.__htClasses={};}
fn=Type.__htClasses[typeName];if(!fn){fn=eval(typeName);if(typeof(fn)!=='function')throw Error.argument('typeName',Sys.Res.notATypeName);Type.__htClasses[typeName]=fn;}
return fn;}
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={};Sys.IDisposable=function Sys$IDisposable(){throw Error.notImplemented();}
function Sys$IDisposable$dispose(){throw Error.notImplemented();}
Sys.IDisposable.prototype={dispose:Sys$IDisposable$dispose}
Sys.IDisposable.registerInterface('Sys.IDisposable');Sys.StringBuilder=function Sys$StringBuilder(initialText){var e=Function._validateParams(arguments,[{name:"initialText",mayBeNull:true,optional:true}]);if(e)throw e;this._parts=(typeof(initialText)!=='undefined'&&initialText!==null&&initialText!=='')?[initialText.toString()]:[];this._value={};this._len=0;}
function Sys$StringBuilder$append(text){var e=Function._validateParams(arguments,[{name:"text",mayBeNull:true}]);if(e)throw e;this._parts[this._parts.length]=text;}
function Sys$StringBuilder$appendLine(text){var e=Function._validateParams(arguments,[{name:"text",mayBeNull:true,optional:true}]);if(e)throw e;this._parts[this._parts.length]=((typeof(text)==='undefined')||(text===null)||(text===''))?'\r\n':text+'\r\n';}
function Sys$StringBuilder$clear(){if(arguments.length!==0)throw Error.parameterCount();this._parts=[];this._value={};this._len=0;}
function Sys$StringBuilder$isEmpty(){if(arguments.length!==0)throw Error.parameterCount();if(this._parts.length===0)return true;return this.toString()==='';}
function Sys$StringBuilder$toString(separator){var e=Function._validateParams(arguments,[{name:"separator",type:String,mayBeNull:true,optional:true}]);if(e)throw e;separator=separator||'';var parts=this._parts;if(this._len!==parts.length){this._value={};this._len=parts.length;}
var val=this._value;if(typeof(val[separator])==='undefined'){if(separator!==''){for(var i=0;i<parts.length;){if((typeof(parts[i])==='undefined')||(parts[i]==='')||(parts[i]===null)){parts.splice(i,1);}
else{i++;}}}
val[separator]=this._parts.join(separator);}
return val[separator];}
Sys.StringBuilder.prototype={append:Sys$StringBuilder$append,appendLine:Sys$StringBuilder$appendLine,clear:Sys$StringBuilder$clear,isEmpty:Sys$StringBuilder$isEmpty,toString:Sys$StringBuilder$toString}
Sys.StringBuilder.registerClass('Sys.StringBuilder');if(!window.XMLHttpRequest){window.XMLHttpRequest=function window$XMLHttpRequest(){var progIDs=['Msxml2.XMLHTTP.3.0','Msxml2.XMLHTTP'];for(var i=0,l=progIDs.length;i<l;i++){try{return new ActiveXObject(progIDs[i]);}
catch(ex){}}
return null;}}
Sys.Browser={};Sys.Browser.InternetExplorer={};Sys.Browser.Firefox={};Sys.Browser.Safari={};Sys.Browser.Opera={};Sys.Browser.agent=null;Sys.Browser.hasDebuggerStatement=false;Sys.Browser.name=navigator.appName;Sys.Browser.version=parseFloat(navigator.appVersion);Sys.Browser.documentMode=0;if(navigator.userAgent.indexOf(' MSIE ')>-1){Sys.Browser.agent=Sys.Browser.InternetExplorer;Sys.Browser.version=parseFloat(navigator.userAgent.match(/MSIE (\d+\.\d+)/)[1]);if(Sys.Browser.version>=8){if(document.documentMode>=7){Sys.Browser.documentMode=document.documentMode;}}
Sys.Browser.hasDebuggerStatement=true;}
else if(navigator.userAgent.indexOf(' Firefox/')>-1){Sys.Browser.agent=Sys.Browser.Firefox;Sys.Browser.version=parseFloat(navigator.userAgent.match(/ Firefox\/(\d+\.\d+)/)[1]);Sys.Browser.name='Firefox';Sys.Browser.hasDebuggerStatement=true;}
else if(navigator.userAgent.indexOf(' AppleWebKit/')>-1){Sys.Browser.agent=Sys.Browser.Safari;Sys.Browser.version=parseFloat(navigator.userAgent.match(/ AppleWebKit\/(\d+(\.\d+)?)/)[1]);Sys.Browser.name='Safari';}
else if(navigator.userAgent.indexOf('Opera/')>-1){Sys.Browser.agent=Sys.Browser.Opera;}
Type.registerNamespace('Sys.UI');Sys._Debug=function Sys$_Debug(){if(arguments.length!==0)throw Error.parameterCount();}
function Sys$_Debug$_appendConsole(text){if((typeof(Debug)!=='undefined')&&Debug.writeln){Debug.writeln(text);}
if(window.console&&window.console.log){window.console.log(text);}
if(window.opera){window.opera.postError(text);}
if(window.debugService){window.debugService.trace(text);}}
function Sys$_Debug$_appendTrace(text){var traceElement=document.getElementById('TraceConsole');if(traceElement&&(traceElement.tagName.toUpperCase()==='TEXTAREA')){traceElement.value+=text+'\n';}}
function Sys$_Debug$assert(condition,message,displayCaller){var e=Function._validateParams(arguments,[{name:"condition",type:Boolean},{name:"message",type:String,mayBeNull:true,optional:true},{name:"displayCaller",type:Boolean,optional:true}]);if(e)throw e;if(!condition){message=(displayCaller&&this.assert.caller)?String.format(Sys.Res.assertFailedCaller,message,this.assert.caller):String.format(Sys.Res.assertFailed,message);if(confirm(String.format(Sys.Res.breakIntoDebugger,message))){this.fail(message);}}}
function Sys$_Debug$clearTrace(){if(arguments.length!==0)throw Error.parameterCount();var traceElement=document.getElementById('TraceConsole');if(traceElement&&(traceElement.tagName.toUpperCase()==='TEXTAREA')){traceElement.value='';}}
function Sys$_Debug$fail(message){var e=Function._validateParams(arguments,[{name:"message",type:String,mayBeNull:true}]);if(e)throw e;this._appendConsole(message);if(Sys.Browser.hasDebuggerStatement){eval('debugger');}}
function Sys$_Debug$trace(text){var e=Function._validateParams(arguments,[{name:"text"}]);if(e)throw e;this._appendConsole(text);this._appendTrace(text);}
function Sys$_Debug$traceDump(object,name){var e=Function._validateParams(arguments,[{name:"object",mayBeNull:true},{name:"name",type:String,mayBeNull:true,optional:true}]);if(e)throw e;var text=this._traceDump(object,name,true);}
function Sys$_Debug$_traceDump(object,name,recursive,indentationPadding,loopArray){name=name?name:'traceDump';indentationPadding=indentationPadding?indentationPadding:'';if(object===null){this.trace(indentationPadding+name+': null');return;}
switch(typeof(object)){case'undefined':this.trace(indentationPadding+name+': Undefined');break;case'number':case'string':case'boolean':this.trace(indentationPadding+name+': '+object);break;default:if(Date.isInstanceOfType(object)||RegExp.isInstanceOfType(object)){this.trace(indentationPadding+name+': '+object.toString());break;}
if(!loopArray){loopArray=[];}
else if(Array.contains(loopArray,object)){this.trace(indentationPadding+name+': ...');return;}
Array.add(loopArray,object);if((object==window)||(object===document)||(window.HTMLElement&&(object instanceof HTMLElement))||(typeof(object.nodeName)==='string')){var tag=object.tagName?object.tagName:'DomElement';if(object.id){tag+=' - '+object.id;}
this.trace(indentationPadding+name+' {'+tag+'}');}
else{var typeName=Object.getTypeName(object);this.trace(indentationPadding+name+(typeof(typeName)==='string'?' {'+typeName+'}':''));if((indentationPadding==='')||recursive){indentationPadding+="    ";var i,length,properties,p,v;if(Array.isInstanceOfType(object)){length=object.length;for(i=0;i<length;i++){this._traceDump(object[i],'['+i+']',recursive,indentationPadding,loopArray);}}
else{for(p in object){v=object[p];if(!Function.isInstanceOfType(v)){this._traceDump(v,p,recursive,indentationPadding,loopArray);}}}}}
Array.remove(loopArray,object);}}
Sys._Debug.prototype={_appendConsole:Sys$_Debug$_appendConsole,_appendTrace:Sys$_Debug$_appendTrace,assert:Sys$_Debug$assert,clearTrace:Sys$_Debug$clearTrace,fail:Sys$_Debug$fail,trace:Sys$_Debug$trace,traceDump:Sys$_Debug$traceDump,_traceDump:Sys$_Debug$_traceDump}
Sys._Debug.registerClass('Sys._Debug');Sys.Debug=new Sys._Debug();Sys.Debug.isDebug=true;function Sys$Enum$parse(value,ignoreCase){var e=Function._validateParams(arguments,[{name:"value",type:String},{name:"ignoreCase",type:Boolean,optional:true}]);if(e)throw e;var values,parsed,val;if(ignoreCase){values=this.__lowerCaseValues;if(!values){this.__lowerCaseValues=values={};var prototype=this.prototype;for(var name in prototype){values[name.toLowerCase()]=prototype[name];}}}
else{values=this.prototype;}
if(!this.__flags){val=(ignoreCase?value.toLowerCase():value);parsed=values[val.trim()];if(typeof(parsed)!=='number')throw Error.argument('value',String.format(Sys.Res.enumInvalidValue,value,this.__typeName));return parsed;}
else{var parts=(ignoreCase?value.toLowerCase():value).split(',');var v=0;for(var i=parts.length-1;i>=0;i--){var part=parts[i].trim();parsed=values[part];if(typeof(parsed)!=='number')throw Error.argument('value',String.format(Sys.Res.enumInvalidValue,value.split(',')[i].trim(),this.__typeName));v|=parsed;}
return v;}}
function Sys$Enum$toString(value){var e=Function._validateParams(arguments,[{name:"value",mayBeNull:true,optional:true}]);if(e)throw e;if((typeof(value)==='undefined')||(value===null))return this.__string;if((typeof(value)!='number')||((value%1)!==0))throw Error.argumentType('value',Object.getType(value),this);var values=this.prototype;var i;if(!this.__flags||(value===0)){for(i in values){if(values[i]===value){return i;}}}
else{var sorted=this.__sortedValues;if(!sorted){sorted=[];for(i in values){sorted[sorted.length]={key:i,value:values[i]};}
sorted.sort(function(a,b){return a.value-b.value;});this.__sortedValues=sorted;}
var parts=[];var v=value;for(i=sorted.length-1;i>=0;i--){var kvp=sorted[i];var vali=kvp.value;if(vali===0)continue;if((vali&value)===vali){parts[parts.length]=kvp.key;v-=vali;if(v===0)break;}}
if(parts.length&&v===0)return parts.reverse().join(', ');}
throw Error.argumentOutOfRange('value',value,String.format(Sys.Res.enumInvalidValue,value,this.__typeName));}
Type.prototype.registerEnum=function Type$registerEnum(name,flags){var e=Function._validateParams(arguments,[{name:"name",type:String},{name:"flags",type:Boolean,optional:true}]);if(e)throw e;if(!Type.__fullyQualifiedIdentifierRegExp.test(name))throw Error.argument('name',Sys.Res.notATypeName);var parsedName;try{parsedName=eval(name);}
catch(e){throw Error.argument('name',Sys.Res.argumentTypeName);}
if(parsedName!==this)throw Error.argument('name',Sys.Res.badTypeName);if(Sys.__registeredTypes[name])throw Error.invalidOperation(String.format(Sys.Res.typeRegisteredTwice,name));for(var i in this.prototype){var val=this.prototype[i];if(!Type.__identifierRegExp.test(i))throw Error.invalidOperation(String.format(Sys.Res.enumInvalidValueName,i));if(typeof(val)!=='number'||(val%1)!==0)throw Error.invalidOperation(Sys.Res.enumValueNotInteger);if(typeof(this[i])!=='undefined')throw Error.invalidOperation(String.format(Sys.Res.enumReservedName,i));}
Sys.__upperCaseTypes[name.toUpperCase()]=this;for(var i in this.prototype){this[i]=this.prototype[i];}
this.__typeName=name;this.parse=Sys$Enum$parse;this.__string=this.toString();this.toString=Sys$Enum$toString;this.__flags=flags;this.__enum=true;Sys.__registeredTypes[name]=true;}
Type.isEnum=function Type$isEnum(type){var e=Function._validateParams(arguments,[{name:"type",mayBeNull:true}]);if(e)throw e;if((typeof(type)==='undefined')||(type===null))return false;return!!type.__enum;}
Type.isFlags=function Type$isFlags(type){var e=Function._validateParams(arguments,[{name:"type",mayBeNull:true}]);if(e)throw e;if((typeof(type)==='undefined')||(type===null))return false;return!!type.__flags;}
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.EventHandlerList.registerClass('Sys.EventHandlerList');Sys.EventArgs=function Sys$EventArgs(){if(arguments.length!==0)throw Error.parameterCount();}
Sys.EventArgs.registerClass('Sys.EventArgs');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}
Sys.CancelEventArgs.registerClass('Sys.CancelEventArgs',Sys.EventArgs);Sys.INotifyPropertyChange=function Sys$INotifyPropertyChange(){if(arguments.length!==0)throw Error.parameterCount();throw Error.notImplemented();}
function Sys$INotifyPropertyChange$add_propertyChanged(handler){var e=Function._validateParams(arguments,[{name:"handler",type:Function}]);if(e)throw e;throw Error.notImplemented();}
function Sys$INotifyPropertyChange$remove_propertyChanged(handler){var e=Function._validateParams(arguments,[{name:"handler",type:Function}]);if(e)throw e;throw Error.notImplemented();}
Sys.INotifyPropertyChange.prototype={add_propertyChanged:Sys$INotifyPropertyChange$add_propertyChanged,remove_propertyChanged:Sys$INotifyPropertyChange$remove_propertyChanged}
Sys.INotifyPropertyChange.registerInterface('Sys.INotifyPropertyChange');Sys.PropertyChangedEventArgs=function Sys$PropertyChangedEventArgs(propertyName){var e=Function._validateParams(arguments,[{name:"propertyName",type:String}]);if(e)throw e;Sys.PropertyChangedEventArgs.initializeBase(this);this._propertyName=propertyName;}
function Sys$PropertyChangedEventArgs$get_propertyName(){if(arguments.length!==0)throw Error.parameterCount();return this._propertyName;}
Sys.PropertyChangedEventArgs.prototype={get_propertyName:Sys$PropertyChangedEventArgs$get_propertyName}
Sys.PropertyChangedEventArgs.registerClass('Sys.PropertyChangedEventArgs',Sys.EventArgs);Sys.INotifyDisposing=function Sys$INotifyDisposing(){if(arguments.length!==0)throw Error.parameterCount();throw Error.notImplemented();}
function Sys$INotifyDisposing$add_disposing(handler){var e=Function._validateParams(arguments,[{name:"handler",type:Function}]);if(e)throw e;throw Error.notImplemented();}
function Sys$INotifyDisposing$remove_disposing(handler){var e=Function._validateParams(arguments,[{name:"handler",type:Function}]);if(e)throw e;throw Error.notImplemented();}
Sys.INotifyDisposing.prototype={add_disposing:Sys$INotifyDisposing$add_disposing,remove_disposing:Sys$INotifyDisposing$remove_disposing}
Sys.INotifyDisposing.registerInterface("Sys.INotifyDisposing");Sys.Component=function Sys$Component(){if(arguments.length!==0)throw Error.parameterCount();if(Sys.Application)Sys.Application.registerDisposableObject(this);}
function Sys$Component$get_events(){if(arguments.length!==0)throw Error.parameterCount();if(!this._events){this._events=new Sys.EventHandlerList();}
return this._events;}
function Sys$Component$get_id(){if(arguments.length!==0)throw Error.parameterCount();return this._id;}
function Sys$Component$set_id(value){var e=Function._validateParams(arguments,[{name:"value",type:String}]);if(e)throw e;if(this._idSet)throw Error.invalidOperation(Sys.Res.componentCantSetIdTwice);this._idSet=true;var oldId=this.get_id();if(oldId&&Sys.Application.findComponent(oldId))throw Error.invalidOperation(Sys.Res.componentCantSetIdAfterAddedToApp);this._id=value;}
function Sys$Component$get_isInitialized(){if(arguments.length!==0)throw Error.parameterCount();return this._initialized;}
function Sys$Component$get_isUpdating(){if(arguments.length!==0)throw Error.parameterCount();return this._updating;}
function Sys$Component$add_disposing(handler){var e=Function._validateParams(arguments,[{name:"handler",type:Function}]);if(e)throw e;this.get_events().addHandler("disposing",handler);}
function Sys$Component$remove_disposing(handler){var e=Function._validateParams(arguments,[{name:"handler",type:Function}]);if(e)throw e;this.get_events().removeHandler("disposing",handler);}
function Sys$Component$add_propertyChanged(handler){var e=Function._validateParams(arguments,[{name:"handler",type:Function}]);if(e)throw e;this.get_events().addHandler("propertyChanged",handler);}
function Sys$Component$remove_propertyChanged(handler){var e=Function._validateParams(arguments,[{name:"handler",type:Function}]);if(e)throw e;this.get_events().removeHandler("propertyChanged",handler);}
function Sys$Component$beginUpdate(){this._updating=true;}
function Sys$Component$dispose(){if(this._events){var handler=this._events.getHandler("disposing");if(handler){handler(this,Sys.EventArgs.Empty);}}
delete this._events;Sys.Application.unregisterDisposableObject(this);Sys.Application.removeComponent(this);}
function Sys$Component$endUpdate(){this._updating=false;if(!this._initialized)this.initialize();this.updated();}
function Sys$Component$initialize(){this._initialized=true;}
function Sys$Component$raisePropertyChanged(propertyName){var e=Function._validateParams(arguments,[{name:"propertyName",type:String}]);if(e)throw e;if(!this._events)return;var handler=this._events.getHandler("propertyChanged");if(handler){handler(this,new Sys.PropertyChangedEventArgs(propertyName));}}
function Sys$Component$updated(){}
Sys.Component.prototype={_id:null,_idSet:false,_initialized:false,_updating:false,get_events:Sys$Component$get_events,get_id:Sys$Component$get_id,set_id:Sys$Component$set_id,get_isInitialized:Sys$Component$get_isInitialized,get_isUpdating:Sys$Component$get_isUpdating,add_disposing:Sys$Component$add_disposing,remove_disposing:Sys$Component$remove_disposing,add_propertyChanged:Sys$Component$add_propertyChanged,remove_propertyChanged:Sys$Component$remove_propertyChanged,beginUpdate:Sys$Component$beginUpdate,dispose:Sys$Component$dispose,endUpdate:Sys$Component$endUpdate,initialize:Sys$Component$initialize,raisePropertyChanged:Sys$Component$raisePropertyChanged,updated:Sys$Component$updated}
Sys.Component.registerClass('Sys.Component',null,Sys.IDisposable,Sys.INotifyPropertyChange,Sys.INotifyDisposing);function Sys$Component$_setProperties(target,properties){var e=Function._validateParams(arguments,[{name:"target"},{name:"properties"}]);if(e)throw e;var current;var targetType=Object.getType(target);var isObject=(targetType===Object)||(targetType===Sys.UI.DomElement);var isComponent=Sys.Component.isInstanceOfType(target)&&!target.get_isUpdating();if(isComponent)target.beginUpdate();for(var name in properties){var val=properties[name];var getter=isObject?null:target["get_"+name];if(isObject||typeof(getter)!=='function'){var targetVal=target[name];if(!isObject&&typeof(targetVal)==='undefined')throw Error.invalidOperation(String.format(Sys.Res.propertyUndefined,name));if(!val||(typeof(val)!=='object')||(isObject&&!targetVal)){target[name]=val;}
else{Sys$Component$_setProperties(targetVal,val);}}
else{var setter=target["set_"+name];if(typeof(setter)==='function'){setter.apply(target,[val]);}
else if(val instanceof Array){current=getter.apply(target);if(!(current instanceof Array))throw new Error.invalidOperation(String.format(Sys.Res.propertyNotAnArray,name));for(var i=0,j=current.length,l=val.length;i<l;i++,j++){current[j]=val[i];}}
else if((typeof(val)==='object')&&(Object.getType(val)===Object)){current=getter.apply(target);if((typeof(current)==='undefined')||(current===null))throw new Error.invalidOperation(String.format(Sys.Res.propertyNullOrUndefined,name));Sys$Component$_setProperties(current,val);}
else{throw new Error.invalidOperation(String.format(Sys.Res.propertyNotWritable,name));}}}
if(isComponent)target.endUpdate();}
function Sys$Component$_setReferences(component,references){for(var name in references){var setter=component["set_"+name];var reference=$find(references[name]);if(typeof(setter)!=='function')throw new Error.invalidOperation(String.format(Sys.Res.propertyNotWritable,name));if(!reference)throw Error.invalidOperation(String.format(Sys.Res.referenceNotFound,references[name]));setter.apply(component,[reference]);}}
var $create=Sys.Component.create=function Sys$Component$create(type,properties,events,references,element){var e=Function._validateParams(arguments,[{name:"type",type:Type},{name:"properties",mayBeNull:true,optional:true},{name:"events",mayBeNull:true,optional:true},{name:"references",mayBeNull:true,optional:true},{name:"element",mayBeNull:true,domElement:true,optional:true}]);if(e)throw e;if(!type.inheritsFrom(Sys.Component)){throw Error.argument('type',String.format(Sys.Res.createNotComponent,type.getName()));}
if(type.inheritsFrom(Sys.UI.Behavior)||type.inheritsFrom(Sys.UI.Control)){if(!element)throw Error.argument('element',Sys.Res.createNoDom);}
else if(element)throw Error.argument('element',Sys.Res.createComponentOnDom);var component=(element?new type(element):new type());var app=Sys.Application;var creatingComponents=app.get_isCreatingComponents();component.beginUpdate();if(properties){Sys$Component$_setProperties(component,properties);}
if(events){for(var name in events){if(!(component["add_"+name]instanceof Function))throw new Error.invalidOperation(String.format(Sys.Res.undefinedEvent,name));if(!(events[name]instanceof Function))throw new Error.invalidOperation(Sys.Res.eventHandlerNotFunction);component["add_"+name](events[name]);}}
if(component.get_id()){app.addComponent(component);}
if(creatingComponents){app._createdComponents[app._createdComponents.length]=component;if(references){app._addComponentToSecondPass(component,references);}
else{component.endUpdate();}}
else{if(references){Sys$Component$_setReferences(component,references);}
component.endUpdate();}
return component;}
Sys.UI.MouseButton=function Sys$UI$MouseButton(){if(arguments.length!==0)throw Error.parameterCount();throw Error.notImplemented();}
Sys.UI.MouseButton.prototype={leftButton:0,middleButton:1,rightButton:2}
Sys.UI.MouseButton.registerEnum("Sys.UI.MouseButton");Sys.UI.Key=function Sys$UI$Key(){if(arguments.length!==0)throw Error.parameterCount();throw Error.notImplemented();}
Sys.UI.Key.prototype={backspace:8,tab:9,enter:13,esc:27,space:32,pageUp:33,pageDown:34,end:35,home:36,left:37,up:38,right:39,down:40,del:127}
Sys.UI.Key.registerEnum("Sys.UI.Key");Sys.UI.Point=function Sys$UI$Point(x,y){var e=Function._validateParams(arguments,[{name:"x",type:Number,integer:true},{name:"y",type:Number,integer:true}]);if(e)throw e;this.x=x;this.y=y;}
Sys.UI.Point.registerClass('Sys.UI.Point');Sys.UI.Bounds=function Sys$UI$Bounds(x,y,width,height){var e=Function._validateParams(arguments,[{name:"x",type:Number,integer:true},{name:"y",type:Number,integer:true},{name:"height",type:Number,integer:true},{name:"width",type:Number,integer:true}]);if(e)throw e;this.x=x;this.y=y;this.height=height;this.width=width;}
Sys.UI.Bounds.registerClass('Sys.UI.Bounds');Sys.UI.DomEvent=function Sys$UI$DomEvent(eventObject){var e=Function._validateParams(arguments,[{name:"eventObject"}]);if(e)throw e;var e=eventObject;var etype=this.type=e.type.toLowerCase();this.rawEvent=e;this.altKey=e.altKey;if(typeof(e.button)!=='undefined'){this.button=(typeof(e.which)!=='undefined')?e.button:(e.button===4)?Sys.UI.MouseButton.middleButton:(e.button===2)?Sys.UI.MouseButton.rightButton:Sys.UI.MouseButton.leftButton;}
if(etype==='keypress'){this.charCode=e.charCode||e.keyCode;}
else if(e.keyCode&&(e.keyCode===46)){this.keyCode=127;}
else{this.keyCode=e.keyCode;}
this.clientX=e.clientX;this.clientY=e.clientY;this.ctrlKey=e.ctrlKey;this.target=e.target?e.target:e.srcElement;if(!etype.startsWith('key')){if((typeof(e.offsetX)!=='undefined')&&(typeof(e.offsetY)!=='undefined')){this.offsetX=e.offsetX;this.offsetY=e.offsetY;}
else if(this.target&&(this.target.nodeType!==3)&&(typeof(e.clientX)==='number')){var loc=Sys.UI.DomElement.getLocation(this.target);var w=Sys.UI.DomElement._getWindow(this.target);this.offsetX=(w.pageXOffset||0)+e.clientX-loc.x;this.offsetY=(w.pageYOffset||0)+e.clientY-loc.y;}}
this.screenX=e.screenX;this.screenY=e.screenY;this.shiftKey=e.shiftKey;}
function Sys$UI$DomEvent$preventDefault(){if(arguments.length!==0)throw Error.parameterCount();if(this.rawEvent.preventDefault){this.rawEvent.preventDefault();}
else if(window.event){this.rawEvent.returnValue=false;}}
function Sys$UI$DomEvent$stopPropagation(){if(arguments.length!==0)throw Error.parameterCount();if(this.rawEvent.stopPropagation){this.rawEvent.stopPropagation();}
else if(window.event){this.rawEvent.cancelBubble=true;}}
Sys.UI.DomEvent.prototype={preventDefault:Sys$UI$DomEvent$preventDefault,stopPropagation:Sys$UI$DomEvent$stopPropagation}
Sys.UI.DomEvent.registerClass('Sys.UI.DomEvent');var $addHandler=Sys.UI.DomEvent.addHandler=function Sys$UI$DomEvent$addHandler(element,eventName,handler){var e=Function._validateParams(arguments,[{name:"element"},{name:"eventName",type:String},{name:"handler",type:Function}]);if(e)throw e;Sys.UI.DomEvent._ensureDomNode(element);if(eventName==="error")throw Error.invalidOperation(Sys.Res.addHandlerCantBeUsedForError);if(!element._events){element._events={};}
var eventCache=element._events[eventName];if(!eventCache){element._events[eventName]=eventCache=[];}
var browserHandler;if(element.addEventListener){browserHandler=function(e){return handler.call(element,new Sys.UI.DomEvent(e));}
element.addEventListener(eventName,browserHandler,false);}
else if(element.attachEvent){browserHandler=function(){var e={};try{e=Sys.UI.DomElement._getWindow(element).event}catch(ex){}
return handler.call(element,new Sys.UI.DomEvent(e));}
element.attachEvent('on'+eventName,browserHandler);}
eventCache[eventCache.length]={handler:handler,browserHandler:browserHandler};}
var $addHandlers=Sys.UI.DomEvent.addHandlers=function Sys$UI$DomEvent$addHandlers(element,events,handlerOwner){var e=Function._validateParams(arguments,[{name:"element"},{name:"events",type:Object},{name:"handlerOwner",optional:true}]);if(e)throw e;Sys.UI.DomEvent._ensureDomNode(element);for(var name in events){var handler=events[name];if(typeof(handler)!=='function')throw Error.invalidOperation(Sys.Res.cantAddNonFunctionhandler);if(handlerOwner){handler=Function.createDelegate(handlerOwner,handler);}
$addHandler(element,name,handler);}}
var $clearHandlers=Sys.UI.DomEvent.clearHandlers=function Sys$UI$DomEvent$clearHandlers(element){var e=Function._validateParams(arguments,[{name:"element"}]);if(e)throw e;Sys.UI.DomEvent._ensureDomNode(element);if(element._events){var cache=element._events;for(var name in cache){var handlers=cache[name];for(var i=handlers.length-1;i>=0;i--){$removeHandler(element,name,handlers[i].handler);}}
element._events=null;}}
var $removeHandler=Sys.UI.DomEvent.removeHandler=function Sys$UI$DomEvent$removeHandler(element,eventName,handler){var e=Function._validateParams(arguments,[{name:"element"},{name:"eventName",type:String},{name:"handler",type:Function}]);if(e)throw e;Sys.UI.DomEvent._ensureDomNode(element);var browserHandler=null;if((typeof(element._events)!=='object')||(element._events==null))throw Error.invalidOperation(Sys.Res.eventHandlerInvalid);var cache=element._events[eventName];if(!(cache instanceof Array))throw Error.invalidOperation(Sys.Res.eventHandlerInvalid);for(var i=0,l=cache.length;i<l;i++){if(cache[i].handler===handler){browserHandler=cache[i].browserHandler;break;}}
if(typeof(browserHandler)!=='function')throw Error.invalidOperation(Sys.Res.eventHandlerInvalid);if(element.removeEventListener){element.removeEventListener(eventName,browserHandler,false);}
else if(element.detachEvent){element.detachEvent('on'+eventName,browserHandler);}
cache.splice(i,1);}
Sys.UI.DomEvent._ensureDomNode=function Sys$UI$DomEvent$_ensureDomNode(element){if(element.tagName&&(element.tagName.toUpperCase()==="SCRIPT"))return;var doc=element.ownerDocument||element.document||element;if((typeof(element.document)!=='object')&&(element!=doc)&&(typeof(element.nodeType)!=='number')){throw Error.argument("element",Sys.Res.argumentDomNode);}}
Sys.UI.DomElement=function Sys$UI$DomElement(){if(arguments.length!==0)throw Error.parameterCount();throw Error.notImplemented();}
Sys.UI.DomElement.registerClass('Sys.UI.DomElement');Sys.UI.DomElement.addCssClass=function Sys$UI$DomElement$addCssClass(element,className){var e=Function._validateParams(arguments,[{name:"element",domElement:true},{name:"className",type:String}]);if(e)throw e;if(!Sys.UI.DomElement.containsCssClass(element,className)){if(element.className===''){element.className=className;}
else{element.className+=' '+className;}}}
Sys.UI.DomElement.containsCssClass=function Sys$UI$DomElement$containsCssClass(element,className){var e=Function._validateParams(arguments,[{name:"element",domElement:true},{name:"className",type:String}]);if(e)throw e;return Array.contains(element.className.split(' '),className);}
Sys.UI.DomElement.getBounds=function Sys$UI$DomElement$getBounds(element){var e=Function._validateParams(arguments,[{name:"element",domElement:true}]);if(e)throw e;var offset=Sys.UI.DomElement.getLocation(element);return new Sys.UI.Bounds(offset.x,offset.y,element.offsetWidth||0,element.offsetHeight||0);}
var $get=Sys.UI.DomElement.getElementById=function Sys$UI$DomElement$getElementById(id,element){var e=Function._validateParams(arguments,[{name:"id",type:String},{name:"element",mayBeNull:true,domElement:true,optional:true}]);if(e)throw e;if(!element)return document.getElementById(id);if(element.getElementById)return element.getElementById(id);var nodeQueue=[];var childNodes=element.childNodes;for(var i=0;i<childNodes.length;i++){var node=childNodes[i];if(node.nodeType==1){nodeQueue[nodeQueue.length]=node;}}
while(nodeQueue.length){node=nodeQueue.shift();if(node.id==id){return node;}
childNodes=node.childNodes;for(i=0;i<childNodes.length;i++){node=childNodes[i];if(node.nodeType==1){nodeQueue[nodeQueue.length]=node;}}}
return null;}
switch(Sys.Browser.agent){case Sys.Browser.InternetExplorer:Sys.UI.DomElement.getLocation=function Sys$UI$DomElement$getLocation(element){var e=Function._validateParams(arguments,[{name:"element",domElement:true}]);if(e)throw e;if(element.self||element.nodeType===9)return new Sys.UI.Point(0,0);var clientRect=element.getBoundingClientRect();if(!clientRect){return new Sys.UI.Point(0,0);}
var documentElement=element.ownerDocument.documentElement;var offsetX=clientRect.left-2+documentElement.scrollLeft,offsetY=clientRect.top-2+documentElement.scrollTop;try{var f=element.ownerDocument.parentWindow.frameElement||null;if(f){var offset=(f.frameBorder==="0"||f.frameBorder==="no")?2:0;offsetX+=offset;offsetY+=offset;}}
catch(ex){}
return new Sys.UI.Point(offsetX,offsetY);}
break;case Sys.Browser.Safari:Sys.UI.DomElement.getLocation=function Sys$UI$DomElement$getLocation(element){var e=Function._validateParams(arguments,[{name:"element",domElement:true}]);if(e)throw e;if((element.window&&(element.window===element))||element.nodeType===9)return new Sys.UI.Point(0,0);var offsetX=0;var offsetY=0;var previous=null;var previousStyle=null;var currentStyle;for(var parent=element;parent;previous=parent,previousStyle=currentStyle,parent=parent.offsetParent){currentStyle=Sys.UI.DomElement._getCurrentStyle(parent);var tagName=parent.tagName?parent.tagName.toUpperCase():null;if((parent.offsetLeft||parent.offsetTop)&&((tagName!=="BODY")||(!previousStyle||previousStyle.position!=="absolute"))){offsetX+=parent.offsetLeft;offsetY+=parent.offsetTop;}}
currentStyle=Sys.UI.DomElement._getCurrentStyle(element);var elementPosition=currentStyle?currentStyle.position:null;if(!elementPosition||(elementPosition!=="absolute")){for(var parent=element.parentNode;parent;parent=parent.parentNode){tagName=parent.tagName?parent.tagName.toUpperCase():null;if((tagName!=="BODY")&&(tagName!=="HTML")&&(parent.scrollLeft||parent.scrollTop)){offsetX-=(parent.scrollLeft||0);offsetY-=(parent.scrollTop||0);}
currentStyle=Sys.UI.DomElement._getCurrentStyle(parent);var parentPosition=currentStyle?currentStyle.position:null;if(parentPosition&&(parentPosition==="absolute"))break;}}
return new Sys.UI.Point(offsetX,offsetY);}
break;case Sys.Browser.Opera:Sys.UI.DomElement.getLocation=function Sys$UI$DomElement$getLocation(element){var e=Function._validateParams(arguments,[{name:"element",domElement:true}]);if(e)throw e;if((element.window&&(element.window===element))||element.nodeType===9)return new Sys.UI.Point(0,0);var offsetX=0;var offsetY=0;var previous=null;for(var parent=element;parent;previous=parent,parent=parent.offsetParent){var tagName=parent.tagName;offsetX+=parent.offsetLeft||0;offsetY+=parent.offsetTop||0;}
var elementPosition=element.style.position;var elementPositioned=elementPosition&&(elementPosition!=="static");for(var parent=element.parentNode;parent;parent=parent.parentNode){tagName=parent.tagName?parent.tagName.toUpperCase():null;if((tagName!=="BODY")&&(tagName!=="HTML")&&(parent.scrollLeft||parent.scrollTop)&&((elementPositioned&&((parent.style.overflow==="scroll")||(parent.style.overflow==="auto"))))){offsetX-=(parent.scrollLeft||0);offsetY-=(parent.scrollTop||0);}
var parentPosition=(parent&&parent.style)?parent.style.position:null;elementPositioned=elementPositioned||(parentPosition&&(parentPosition!=="static"));}
return new Sys.UI.Point(offsetX,offsetY);}
break;default:Sys.UI.DomElement.getLocation=function Sys$UI$DomElement$getLocation(element){var e=Function._validateParams(arguments,[{name:"element",domElement:true}]);if(e)throw e;if((element.window&&(element.window===element))||element.nodeType===9)return new Sys.UI.Point(0,0);var offsetX=0;var offsetY=0;var previous=null;var previousStyle=null;var currentStyle=null;for(var parent=element;parent;previous=parent,previousStyle=currentStyle,parent=parent.offsetParent){var tagName=parent.tagName?parent.tagName.toUpperCase():null;currentStyle=Sys.UI.DomElement._getCurrentStyle(parent);if((parent.offsetLeft||parent.offsetTop)&&!((tagName==="BODY")&&(!previousStyle||previousStyle.position!=="absolute"))){offsetX+=parent.offsetLeft;offsetY+=parent.offsetTop;}
if(previous!==null&&currentStyle){if((tagName!=="TABLE")&&(tagName!=="TD")&&(tagName!=="HTML")){offsetX+=parseInt(currentStyle.borderLeftWidth)||0;offsetY+=parseInt(currentStyle.borderTopWidth)||0;}
if(tagName==="TABLE"&&(currentStyle.position==="relative"||currentStyle.position==="absolute")){offsetX+=parseInt(currentStyle.marginLeft)||0;offsetY+=parseInt(currentStyle.marginTop)||0;}}}
currentStyle=Sys.UI.DomElement._getCurrentStyle(element);var elementPosition=currentStyle?currentStyle.position:null;if(!elementPosition||(elementPosition!=="absolute")){for(var parent=element.parentNode;parent;parent=parent.parentNode){tagName=parent.tagName?parent.tagName.toUpperCase():null;if((tagName!=="BODY")&&(tagName!=="HTML")&&(parent.scrollLeft||parent.scrollTop)){offsetX-=(parent.scrollLeft||0);offsetY-=(parent.scrollTop||0);currentStyle=Sys.UI.DomElement._getCurrentStyle(parent);if(currentStyle){offsetX+=parseInt(currentStyle.borderLeftWidth)||0;offsetY+=parseInt(currentStyle.borderTopWidth)||0;}}}}
return new Sys.UI.Point(offsetX,offsetY);}
break;}
Sys.UI.DomElement.removeCssClass=function Sys$UI$DomElement$removeCssClass(element,className){var e=Function._validateParams(arguments,[{name:"element",domElement:true},{name:"className",type:String}]);if(e)throw e;var currentClassName=' '+element.className+' ';var index=currentClassName.indexOf(' '+className+' ');if(index>=0){element.className=(currentClassName.substr(0,index)+' '+
currentClassName.substring(index+className.length+1,currentClassName.length)).trim();}}
Sys.UI.DomElement.setLocation=function Sys$UI$DomElement$setLocation(element,x,y){var e=Function._validateParams(arguments,[{name:"element",domElement:true},{name:"x",type:Number,integer:true},{name:"y",type:Number,integer:true}]);if(e)throw e;var style=element.style;style.position='absolute';style.left=x+"px";style.top=y+"px";}
Sys.UI.DomElement.toggleCssClass=function Sys$UI$DomElement$toggleCssClass(element,className){var e=Function._validateParams(arguments,[{name:"element",domElement:true},{name:"className",type:String}]);if(e)throw e;if(Sys.UI.DomElement.containsCssClass(element,className)){Sys.UI.DomElement.removeCssClass(element,className);}
else{Sys.UI.DomElement.addCssClass(element,className);}}
Sys.UI.DomElement.getVisibilityMode=function Sys$UI$DomElement$getVisibilityMode(element){var e=Function._validateParams(arguments,[{name:"element",domElement:true}]);if(e)throw e;return(element._visibilityMode===Sys.UI.VisibilityMode.hide)?Sys.UI.VisibilityMode.hide:Sys.UI.VisibilityMode.collapse;}
Sys.UI.DomElement.setVisibilityMode=function Sys$UI$DomElement$setVisibilityMode(element,value){var e=Function._validateParams(arguments,[{name:"element",domElement:true},{name:"value",type:Sys.UI.VisibilityMode}]);if(e)throw e;Sys.UI.DomElement._ensureOldDisplayMode(element);if(element._visibilityMode!==value){element._visibilityMode=value;if(Sys.UI.DomElement.getVisible(element)===false){if(element._visibilityMode===Sys.UI.VisibilityMode.hide){element.style.display=element._oldDisplayMode;}
else{element.style.display='none';}}
element._visibilityMode=value;}}
Sys.UI.DomElement.getVisible=function Sys$UI$DomElement$getVisible(element){var e=Function._validateParams(arguments,[{name:"element",domElement:true}]);if(e)throw e;var style=element.currentStyle||Sys.UI.DomElement._getCurrentStyle(element);if(!style)return true;return(style.visibility!=='hidden')&&(style.display!=='none');}
Sys.UI.DomElement.setVisible=function Sys$UI$DomElement$setVisible(element,value){var e=Function._validateParams(arguments,[{name:"element",domElement:true},{name:"value",type:Boolean}]);if(e)throw e;if(value!==Sys.UI.DomElement.getVisible(element)){Sys.UI.DomElement._ensureOldDisplayMode(element);element.style.visibility=value?'visible':'hidden';if(value||(element._visibilityMode===Sys.UI.VisibilityMode.hide)){element.style.display=element._oldDisplayMode;}
else{element.style.display='none';}}}
Sys.UI.DomElement._ensureOldDisplayMode=function Sys$UI$DomElement$_ensureOldDisplayMode(element){if(!element._oldDisplayMode){var style=element.currentStyle||Sys.UI.DomElement._getCurrentStyle(element);element._oldDisplayMode=style?style.display:null;if(!element._oldDisplayMode||element._oldDisplayMode==='none'){switch(element.tagName.toUpperCase()){case'DIV':case'P':case'ADDRESS':case'BLOCKQUOTE':case'BODY':case'COL':case'COLGROUP':case'DD':case'DL':case'DT':case'FIELDSET':case'FORM':case'H1':case'H2':case'H3':case'H4':case'H5':case'H6':case'HR':case'IFRAME':case'LEGEND':case'OL':case'PRE':case'TABLE':case'TD':case'TH':case'TR':case'UL':element._oldDisplayMode='block';break;case'LI':element._oldDisplayMode='list-item';break;default:element._oldDisplayMode='inline';}}}}
Sys.UI.DomElement._getWindow=function Sys$UI$DomElement$_getWindow(element){var doc=element.ownerDocument||element.document||element;return doc.defaultView||doc.parentWindow;}
Sys.UI.DomElement._getCurrentStyle=function Sys$UI$DomElement$_getCurrentStyle(element){if(element.nodeType===3)return null;var w=Sys.UI.DomElement._getWindow(element);if(element.documentElement)element=element.documentElement;var computedStyle=(w&&(element!==w)&&w.getComputedStyle)?w.getComputedStyle(element,null):element.currentStyle||element.style;if(!computedStyle&&(Sys.Browser.agent===Sys.Browser.Safari)&&element.style){var oldDisplay=element.style.display;var oldPosition=element.style.position;element.style.position='absolute';element.style.display='block';var style=w.getComputedStyle(element,null);element.style.display=oldDisplay;element.style.position=oldPosition;computedStyle={};for(var n in style){computedStyle[n]=style[n];}
computedStyle.display='none';}
return computedStyle;}
Sys.IContainer=function Sys$IContainer(){throw Error.notImplemented();}
function Sys$IContainer$addComponent(component){var e=Function._validateParams(arguments,[{name:"component",type:Sys.Component}]);if(e)throw e;throw Error.notImplemented();}
function Sys$IContainer$removeComponent(component){var e=Function._validateParams(arguments,[{name:"component",type:Sys.Component}]);if(e)throw e;throw Error.notImplemented();}
function Sys$IContainer$findComponent(id){var e=Function._validateParams(arguments,[{name:"id",type:String}]);if(e)throw e;throw Error.notImplemented();}
function Sys$IContainer$getComponents(){if(arguments.length!==0)throw Error.parameterCount();throw Error.notImplemented();}
Sys.IContainer.prototype={addComponent:Sys$IContainer$addComponent,removeComponent:Sys$IContainer$removeComponent,findComponent:Sys$IContainer$findComponent,getComponents:Sys$IContainer$getComponents}
Sys.IContainer.registerInterface("Sys.IContainer");Sys._ScriptLoader=function Sys$_ScriptLoader(){this._scriptsToLoad=null;this._sessions=[];this._scriptLoadedDelegate=Function.createDelegate(this,this._scriptLoadedHandler);}
function Sys$_ScriptLoader$dispose(){this._stopSession();this._loading=false;if(this._events){delete this._events;}
this._sessions=null;this._currentSession=null;this._scriptLoadedDelegate=null;}
function Sys$_ScriptLoader$loadScripts(scriptTimeout,allScriptsLoadedCallback,scriptLoadFailedCallback,scriptLoadTimeoutCallback){var e=Function._validateParams(arguments,[{name:"scriptTimeout",type:Number,integer:true},{name:"allScriptsLoadedCallback",type:Function,mayBeNull:true},{name:"scriptLoadFailedCallback",type:Function,mayBeNull:true},{name:"scriptLoadTimeoutCallback",type:Function,mayBeNull:true}]);if(e)throw e;var session={allScriptsLoadedCallback:allScriptsLoadedCallback,scriptLoadFailedCallback:scriptLoadFailedCallback,scriptLoadTimeoutCallback:scriptLoadTimeoutCallback,scriptsToLoad:this._scriptsToLoad,scriptTimeout:scriptTimeout};this._scriptsToLoad=null;this._sessions[this._sessions.length]=session;if(!this._loading){this._nextSession();}}
function Sys$_ScriptLoader$notifyScriptLoaded(){if(arguments.length!==0)throw Error.parameterCount();if(!this._loading){return;}
this._currentTask._notified++;if(Sys.Browser.agent===Sys.Browser.Safari){if(this._currentTask._notified===1){window.setTimeout(Function.createDelegate(this,function(){this._scriptLoadedHandler(this._currentTask.get_scriptElement(),true);}),0);}}}
function Sys$_ScriptLoader$queueCustomScriptTag(scriptAttributes){var e=Function._validateParams(arguments,[{name:"scriptAttributes"}]);if(e)throw e;if(!this._scriptsToLoad){this._scriptsToLoad=[];}
Array.add(this._scriptsToLoad,scriptAttributes);}
function Sys$_ScriptLoader$queueScriptBlock(scriptContent){var e=Function._validateParams(arguments,[{name:"scriptContent",type:String}]);if(e)throw e;if(!this._scriptsToLoad){this._scriptsToLoad=[];}
Array.add(this._scriptsToLoad,{text:scriptContent});}
function Sys$_ScriptLoader$queueScriptReference(scriptUrl){var e=Function._validateParams(arguments,[{name:"scriptUrl",type:String}]);if(e)throw e;if(!this._scriptsToLoad){this._scriptsToLoad=[];}
Array.add(this._scriptsToLoad,{src:scriptUrl});}
function Sys$_ScriptLoader$_createScriptElement(queuedScript){var scriptElement=document.createElement('script');scriptElement.type='text/javascript';for(var attr in queuedScript){scriptElement[attr]=queuedScript[attr];}
return scriptElement;}
function Sys$_ScriptLoader$_loadScriptsInternal(){var session=this._currentSession;if(session.scriptsToLoad&&session.scriptsToLoad.length>0){var nextScript=Array.dequeue(session.scriptsToLoad);var scriptElement=this._createScriptElement(nextScript);if(scriptElement.text&&Sys.Browser.agent===Sys.Browser.Safari){scriptElement.innerHTML=scriptElement.text;delete scriptElement.text;}
if(typeof(nextScript.src)==="string"){this._currentTask=new Sys._ScriptLoaderTask(scriptElement,this._scriptLoadedDelegate);this._currentTask.execute();}
else{var headElements=document.getElementsByTagName('head');if(headElements.length===0){throw new Error.invalidOperation(Sys.Res.scriptLoadFailedNoHead);}
else{headElements[0].appendChild(scriptElement);}
Sys._ScriptLoader._clearScript(scriptElement);this._loadScriptsInternal();}}
else{this._stopSession();var callback=session.allScriptsLoadedCallback;if(callback){callback(this);}
this._nextSession();}}
function Sys$_ScriptLoader$_nextSession(){if(this._sessions.length===0){this._loading=false;this._currentSession=null;return;}
this._loading=true;var session=Array.dequeue(this._sessions);this._currentSession=session;this._loadScriptsInternal();}
function Sys$_ScriptLoader$_raiseError(multipleCallbacks){var callback=this._currentSession.scriptLoadFailedCallback;var scriptElement=this._currentTask.get_scriptElement();this._stopSession();if(callback){callback(this,scriptElement,multipleCallbacks);this._nextSession();}
else{this._loading=false;throw Sys._ScriptLoader._errorScriptLoadFailed(scriptElement.src,multipleCallbacks);}}
function Sys$_ScriptLoader$_scriptLoadedHandler(scriptElement,loaded){if(loaded&&this._currentTask._notified){if(this._currentTask._notified>1){this._raiseError(true);}
else{Array.add(Sys._ScriptLoader._getLoadedScripts(),scriptElement.src);this._currentTask.dispose();this._currentTask=null;this._loadScriptsInternal();}}
else{this._raiseError(false);}}
function Sys$_ScriptLoader$_scriptLoadTimeoutHandler(){var callback=this._currentSession.scriptLoadTimeoutCallback;this._stopSession();if(callback){callback(this);}
this._nextSession();}
function Sys$_ScriptLoader$_stopSession(){if(this._currentTask){this._currentTask.dispose();this._currentTask=null;}}
Sys._ScriptLoader.prototype={dispose:Sys$_ScriptLoader$dispose,loadScripts:Sys$_ScriptLoader$loadScripts,notifyScriptLoaded:Sys$_ScriptLoader$notifyScriptLoaded,queueCustomScriptTag:Sys$_ScriptLoader$queueCustomScriptTag,queueScriptBlock:Sys$_ScriptLoader$queueScriptBlock,queueScriptReference:Sys$_ScriptLoader$queueScriptReference,_createScriptElement:Sys$_ScriptLoader$_createScriptElement,_loadScriptsInternal:Sys$_ScriptLoader$_loadScriptsInternal,_nextSession:Sys$_ScriptLoader$_nextSession,_raiseError:Sys$_ScriptLoader$_raiseError,_scriptLoadedHandler:Sys$_ScriptLoader$_scriptLoadedHandler,_scriptLoadTimeoutHandler:Sys$_ScriptLoader$_scriptLoadTimeoutHandler,_stopSession:Sys$_ScriptLoader$_stopSession}
Sys._ScriptLoader.registerClass('Sys._ScriptLoader',null,Sys.IDisposable);Sys._ScriptLoader.getInstance=function Sys$_ScriptLoader$getInstance(){var sl=Sys._ScriptLoader._activeInstance;if(!sl){sl=Sys._ScriptLoader._activeInstance=new Sys._ScriptLoader();}
return sl;}
Sys._ScriptLoader.isScriptLoaded=function Sys$_ScriptLoader$isScriptLoaded(scriptSrc){var dummyScript=document.createElement('script');dummyScript.src=scriptSrc;return Array.contains(Sys._ScriptLoader._getLoadedScripts(),dummyScript.src);}
Sys._ScriptLoader.readLoadedScripts=function Sys$_ScriptLoader$readLoadedScripts(){if(!Sys._ScriptLoader._referencedScripts){var referencedScripts=Sys._ScriptLoader._referencedScripts=[];var existingScripts=document.getElementsByTagName('script');for(i=existingScripts.length-1;i>=0;i--){var scriptNode=existingScripts[i];var scriptSrc=scriptNode.src;if(scriptSrc.length){if(!Array.contains(referencedScripts,scriptSrc)){Array.add(referencedScripts,scriptSrc);}}}}}
Sys._ScriptLoader._clearScript=function Sys$_ScriptLoader$_clearScript(scriptElement){if(!Sys.Debug.isDebug){scriptElement.parentNode.removeChild(scriptElement);}}
Sys._ScriptLoader._errorScriptLoadFailed=function Sys$_ScriptLoader$_errorScriptLoadFailed(scriptUrl,multipleCallbacks){var errorMessage;if(multipleCallbacks){errorMessage=Sys.Res.scriptLoadMultipleCallbacks;}
else{errorMessage=Sys.Res.scriptLoadFailedDebug;}
var displayMessage="Sys.ScriptLoadFailedException: "+String.format(errorMessage,scriptUrl);var e=Error.create(displayMessage,{name:'Sys.ScriptLoadFailedException','scriptUrl':scriptUrl});e.popStackFrame();return e;}
Sys._ScriptLoader._getLoadedScripts=function Sys$_ScriptLoader$_getLoadedScripts(){if(!Sys._ScriptLoader._referencedScripts){Sys._ScriptLoader._referencedScripts=[];Sys._ScriptLoader.readLoadedScripts();}
return Sys._ScriptLoader._referencedScripts;}
Sys._ScriptLoaderTask=function Sys$_ScriptLoaderTask(scriptElement,completedCallback){var e=Function._validateParams(arguments,[{name:"scriptElement",domElement:true},{name:"completedCallback",type:Function}]);if(e)throw e;this._scriptElement=scriptElement;this._completedCallback=completedCallback;this._notified=0;}
function Sys$_ScriptLoaderTask$get_scriptElement(){if(arguments.length!==0)throw Error.parameterCount();return this._scriptElement;}
function Sys$_ScriptLoaderTask$dispose(){if(this._disposed){return;}
this._disposed=true;this._removeScriptElementHandlers();Sys._ScriptLoader._clearScript(this._scriptElement);this._scriptElement=null;}
function Sys$_ScriptLoaderTask$execute(){if(arguments.length!==0)throw Error.parameterCount();this._addScriptElementHandlers();var headElements=document.getElementsByTagName('head');if(headElements.length===0){throw new Error.invalidOperation(Sys.Res.scriptLoadFailedNoHead);}
else{headElements[0].appendChild(this._scriptElement);}}
function Sys$_ScriptLoaderTask$_addScriptElementHandlers(){this._scriptLoadDelegate=Function.createDelegate(this,this._scriptLoadHandler);if(Sys.Browser.agent!==Sys.Browser.InternetExplorer){this._scriptElement.readyState='loaded';$addHandler(this._scriptElement,'load',this._scriptLoadDelegate);}
else{$addHandler(this._scriptElement,'readystatechange',this._scriptLoadDelegate);}
if(this._scriptElement.addEventListener){this._scriptErrorDelegate=Function.createDelegate(this,this._scriptErrorHandler);this._scriptElement.addEventListener('error',this._scriptErrorDelegate,false);}}
function Sys$_ScriptLoaderTask$_removeScriptElementHandlers(){if(this._scriptLoadDelegate){var scriptElement=this.get_scriptElement();if(Sys.Browser.agent!==Sys.Browser.InternetExplorer){$removeHandler(scriptElement,'load',this._scriptLoadDelegate);}
else{$removeHandler(scriptElement,'readystatechange',this._scriptLoadDelegate);}
if(this._scriptErrorDelegate){this._scriptElement.removeEventListener('error',this._scriptErrorDelegate,false);this._scriptErrorDelegate=null;}
this._scriptLoadDelegate=null;}}
function Sys$_ScriptLoaderTask$_scriptErrorHandler(){if(this._disposed){return;}
this._completedCallback(this.get_scriptElement(),false);}
function Sys$_ScriptLoaderTask$_scriptLoadHandler(){if(this._disposed){return;}
var scriptElement=this.get_scriptElement();if((scriptElement.readyState!=='loaded')&&(scriptElement.readyState!=='complete')){return;}
var _this=this;window.setTimeout(function(){_this._completedCallback(scriptElement,true);},0);}
Sys._ScriptLoaderTask.prototype={get_scriptElement:Sys$_ScriptLoaderTask$get_scriptElement,dispose:Sys$_ScriptLoaderTask$dispose,execute:Sys$_ScriptLoaderTask$execute,_addScriptElementHandlers:Sys$_ScriptLoaderTask$_addScriptElementHandlers,_removeScriptElementHandlers:Sys$_ScriptLoaderTask$_removeScriptElementHandlers,_scriptErrorHandler:Sys$_ScriptLoaderTask$_scriptErrorHandler,_scriptLoadHandler:Sys$_ScriptLoaderTask$_scriptLoadHandler}
Sys._ScriptLoaderTask.registerClass("Sys._ScriptLoaderTask",null,Sys.IDisposable);Sys.ApplicationLoadEventArgs=function Sys$ApplicationLoadEventArgs(components,isPartialLoad){var e=Function._validateParams(arguments,[{name:"components",type:Array,elementType:Sys.Component},{name:"isPartialLoad",type:Boolean}]);if(e)throw e;Sys.ApplicationLoadEventArgs.initializeBase(this);this._components=components;this._isPartialLoad=isPartialLoad;}
function Sys$ApplicationLoadEventArgs$get_components(){if(arguments.length!==0)throw Error.parameterCount();return this._components;}
function Sys$ApplicationLoadEventArgs$get_isPartialLoad(){if(arguments.length!==0)throw Error.parameterCount();return this._isPartialLoad;}
Sys.ApplicationLoadEventArgs.prototype={get_components:Sys$ApplicationLoadEventArgs$get_components,get_isPartialLoad:Sys$ApplicationLoadEventArgs$get_isPartialLoad}
Sys.ApplicationLoadEventArgs.registerClass('Sys.ApplicationLoadEventArgs',Sys.EventArgs);Sys.HistoryEventArgs=function Sys$HistoryEventArgs(state){var e=Function._validateParams(arguments,[{name:"state",type:Object}]);if(e)throw e;Sys.HistoryEventArgs.initializeBase(this);this._state=state;}
function Sys$HistoryEventArgs$get_state(){if(arguments.length!==0)throw Error.parameterCount();return this._state;}
Sys.HistoryEventArgs.prototype={get_state:Sys$HistoryEventArgs$get_state}
Sys.HistoryEventArgs.registerClass('Sys.HistoryEventArgs',Sys.EventArgs);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;this._unloadHandlerDelegate=Function.createDelegate(this,this._unloadHandler);this._loadHandlerDelegate=Function.createDelegate(this,this._loadHandler);Sys.UI.DomEvent.addHandler(window,"unload",this._unloadHandlerDelegate);Sys.UI.DomEvent.addHandler(window,"load",this._loadHandlerDelegate);}
function Sys$_Application$get_isCreatingComponents(){if(arguments.length!==0)throw Error.parameterCount();return this._creatingComponents;}
function Sys$_Application$get_stateString(){if(arguments.length!==0)throw Error.parameterCount();var hash=window.location.hash;if(this._isSafari2()){var history=this._getHistory();if(history){hash=history[window.history.length-this._historyInitialLength];}}
if((hash.length>0)&&(hash.charAt(0)==='#')){hash=hash.substring(1);}
if(Sys.Browser.agent===Sys.Browser.Firefox){hash=this._serializeState(this._deserializeState(hash,true));}
return hash;}
function Sys$_Application$get_enableHistory(){if(arguments.length!==0)throw Error.parameterCount();return this._enableHistory;}
function Sys$_Application$set_enableHistory(value){var e=Function._validateParams(arguments,[{name:"value",type:Boolean}]);if(e)throw e;if(this._initialized&&!this._initializing){throw Error.invalidOperation(Sys.Res.historyCannotEnableHistory);}
else if(this._historyEnabledInScriptManager&&!value){throw Error.invalidOperation(Sys.Res.invalidHistorySettingCombination);}
this._enableHistory=value;}
function Sys$_Application$add_init(handler){var e=Function._validateParams(arguments,[{name:"handler",type:Function}]);if(e)throw e;if(this._initialized){handler(this,Sys.EventArgs.Empty);}
else{this.get_events().addHandler("init",handler);}}
function Sys$_Application$remove_init(handler){var e=Function._validateParams(arguments,[{name:"handler",type:Function}]);if(e)throw e;this.get_events().removeHandler("init",handler);}
function Sys$_Application$add_load(handler){var e=Function._validateParams(arguments,[{name:"handler",type:Function}]);if(e)throw e;this.get_events().addHandler("load",handler);}
function Sys$_Application$remove_load(handler){var e=Function._validateParams(arguments,[{name:"handler",type:Function}]);if(e)throw e;this.get_events().removeHandler("load",handler);}
function Sys$_Application$add_navigate(handler){var e=Function._validateParams(arguments,[{name:"handler",type:Function}]);if(e)throw e;this.get_events().addHandler("navigate",handler);}
function Sys$_Application$remove_navigate(handler){var e=Function._validateParams(arguments,[{name:"handler",type:Function}]);if(e)throw e;this.get_events().removeHandler("navigate",handler);}
function Sys$_Application$add_unload(handler){var e=Function._validateParams(arguments,[{name:"handler",type:Function}]);if(e)throw e;this.get_events().addHandler("unload",handler);}
function Sys$_Application$remove_unload(handler){var e=Function._validateParams(arguments,[{name:"handler",type:Function}]);if(e)throw e;this.get_events().removeHandler("unload",handler);}
function Sys$_Application$addComponent(component){var e=Function._validateParams(arguments,[{name:"component",type:Sys.Component}]);if(e)throw e;var id=component.get_id();if(!id)throw Error.invalidOperation(Sys.Res.cantAddWithoutId);if(typeof(this._components[id])!=='undefined')throw Error.invalidOperation(String.format(Sys.Res.appDuplicateComponent,id));this._components[id]=component;}
function Sys$_Application$addHistoryPoint(state,title){var e=Function._validateParams(arguments,[{name:"state",type:Object},{name:"title",type:String,mayBeNull:true,optional:true}]);if(e)throw e;if(!this._enableHistory)throw Error.invalidOperation(Sys.Res.historyCannotAddHistoryPointWithHistoryDisabled);for(var n in state){var v=state[n];var t=typeof(v);if((v!==null)&&((t==='object')||(t==='function')||(t==='undefined'))){throw Error.argument('state',Sys.Res.stateMustBeStringDictionary);}}
this._ensureHistory();var initialState=this._state;for(var key in state){var value=state[key];if(value===null){if(typeof(initialState[key])!=='undefined'){delete initialState[key];}}
else{initialState[key]=value;}}
var entry=this._serializeState(initialState);this._historyPointIsNew=true;this._setState(entry,title);this._raiseNavigate();}
function Sys$_Application$beginCreateComponents(){if(arguments.length!==0)throw Error.parameterCount();this._creatingComponents=true;}
function Sys$_Application$dispose(){if(arguments.length!==0)throw Error.parameterCount();if(!this._disposing){this._disposing=true;if(this._timerCookie){window.clearTimeout(this._timerCookie);delete this._timerCookie;}
if(this._endRequestHandler){Sys.WebForms.PageRequestManager.getInstance().remove_endRequest(this._endRequestHandler);delete this._endRequestHandler;}
if(this._beginRequestHandler){Sys.WebForms.PageRequestManager.getInstance().remove_beginRequest(this._beginRequestHandler);delete this._beginRequestHandler;}
if(window.pageUnload){window.pageUnload(this,Sys.EventArgs.Empty);}
var unloadHandler=this.get_events().getHandler("unload");if(unloadHandler){unloadHandler(this,Sys.EventArgs.Empty);}
var disposableObjects=Array.clone(this._disposableObjects);for(var i=0,l=disposableObjects.length;i<l;i++){disposableObjects[i].dispose();}
Array.clear(this._disposableObjects);Sys.UI.DomEvent.removeHandler(window,"unload",this._unloadHandlerDelegate);if(this._loadHandlerDelegate){Sys.UI.DomEvent.removeHandler(window,"load",this._loadHandlerDelegate);this._loadHandlerDelegate=null;}
var sl=Sys._ScriptLoader.getInstance();if(sl){sl.dispose();}
Sys._Application.callBaseMethod(this,'dispose');}}
function Sys$_Application$endCreateComponents(){if(arguments.length!==0)throw Error.parameterCount();var components=this._secondPassComponents;for(var i=0,l=components.length;i<l;i++){var component=components[i].component;Sys$Component$_setReferences(component,components[i].references);component.endUpdate();}
this._secondPassComponents=[];this._creatingComponents=false;}
function Sys$_Application$findComponent(id,parent){var e=Function._validateParams(arguments,[{name:"id",type:String},{name:"parent",mayBeNull:true,optional:true}]);if(e)throw e;return(parent?((Sys.IContainer.isInstanceOfType(parent))?parent.findComponent(id):parent[id]||null):Sys.Application._components[id]||null);}
function Sys$_Application$getComponents(){if(arguments.length!==0)throw Error.parameterCount();var res=[];var components=this._components;for(var name in components){res[res.length]=components[name];}
return res;}
function Sys$_Application$initialize(){if(arguments.length!==0)throw Error.parameterCount();if(!this._initialized&&!this._initializing){this._initializing=true;window.setTimeout(Function.createDelegate(this,this._doInitialize),0);}}
function Sys$_Application$notifyScriptLoaded(){if(arguments.length!==0)throw Error.parameterCount();var sl=Sys._ScriptLoader.getInstance();if(sl){sl.notifyScriptLoaded();}}
function Sys$_Application$registerDisposableObject(object){var e=Function._validateParams(arguments,[{name:"object",type:Sys.IDisposable}]);if(e)throw e;if(!this._disposing){this._disposableObjects[this._disposableObjects.length]=object;}}
function Sys$_Application$raiseLoad(){if(arguments.length!==0)throw Error.parameterCount();var h=this.get_events().getHandler("load");var args=new Sys.ApplicationLoadEventArgs(Array.clone(this._createdComponents),!this._initializing);if(h){h(this,args);}
if(window.pageLoad){window.pageLoad(this,args);}
this._createdComponents=[];}
function Sys$_Application$removeComponent(component){var e=Function._validateParams(arguments,[{name:"component",type:Sys.Component}]);if(e)throw e;var id=component.get_id();if(id)delete this._components[id];}
function Sys$_Application$setServerId(clientId,uniqueId){var e=Function._validateParams(arguments,[{name:"clientId",type:String},{name:"uniqueId",type:String}]);if(e)throw e;this._clientId=clientId;this._uniqueId=uniqueId;}
function Sys$_Application$setServerState(value){var e=Function._validateParams(arguments,[{name:"value",type:String}]);if(e)throw e;this._ensureHistory();this._state.__s=value;this._updateHiddenField(value);}
function Sys$_Application$unregisterDisposableObject(object){var e=Function._validateParams(arguments,[{name:"object",type:Sys.IDisposable}]);if(e)throw e;if(!this._disposing){Array.remove(this._disposableObjects,object);}}
function Sys$_Application$_addComponentToSecondPass(component,references){this._secondPassComponents[this._secondPassComponents.length]={component:component,references:references};}
function Sys$_Application$_deserializeState(entry,skipDecodeUri){var result={};entry=entry||'';var serverSeparator=entry.indexOf('&&');if((serverSeparator!==-1)&&(serverSeparator+2<entry.length)){result.__s=entry.substr(serverSeparator+2);entry=entry.substr(0,serverSeparator);}
var tokens=entry.split('&');for(var i=0,l=tokens.length;i<l;i++){var token=tokens[i];var equal=token.indexOf('=');if((equal!==-1)&&(equal+1<token.length)){var name=token.substr(0,equal);var value=token.substr(equal+1);result[name]=skipDecodeUri?value:decodeURIComponent(value);}}
return result;}
function Sys$_Application$_doInitialize(){Sys._Application.callBaseMethod(this,'initialize');var handler=this.get_events().getHandler("init");if(handler){this.beginCreateComponents();handler(this,Sys.EventArgs.Empty);this.endCreateComponents();}
if(Sys.WebForms){this._beginRequestHandler=Function.createDelegate(this,this._onPageRequestManagerBeginRequest);Sys.WebForms.PageRequestManager.getInstance().add_beginRequest(this._beginRequestHandler);this._endRequestHandler=Function.createDelegate(this,this._onPageRequestManagerEndRequest);Sys.WebForms.PageRequestManager.getInstance().add_endRequest(this._endRequestHandler);}
var loadedEntry=this.get_stateString();if(loadedEntry!==this._currentEntry){this._navigate(loadedEntry);}
this.raiseLoad();this._initializing=false;}
function Sys$_Application$_enableHistoryInScriptManager(){this._enableHistory=true;this._historyEnabledInScriptManager=true;}
function Sys$_Application$_ensureHistory(){if(!this._historyInitialized&&this._enableHistory){if((Sys.Browser.agent===Sys.Browser.InternetExplorer)&&(Sys.Browser.documentMode<8)){this._historyFrame=document.getElementById('__historyFrame');if(!this._historyFrame)throw Error.invalidOperation(Sys.Res.historyMissingFrame);this._ignoreIFrame=true;}
if(this._isSafari2()){var historyElement=document.getElementById('__history');if(!historyElement)throw Error.invalidOperation(Sys.Res.historyMissingHiddenInput);this._setHistory([window.location.hash]);this._historyInitialLength=window.history.length;}
this._timerHandler=Function.createDelegate(this,this._onIdle);this._timerCookie=window.setTimeout(this._timerHandler,100);try{this._initialState=this._deserializeState(this.get_stateString());}catch(e){}
this._historyInitialized=true;}}
function Sys$_Application$_getHistory(){var historyElement=document.getElementById('__history');if(!historyElement)return'';var v=historyElement.value;return v?Sys.Serialization.JavaScriptSerializer.deserialize(v,true):'';}
function Sys$_Application$_isSafari2(){return(Sys.Browser.agent===Sys.Browser.Safari)&&(Sys.Browser.version<=419.3);}
function Sys$_Application$_loadHandler(){if(this._loadHandlerDelegate){Sys.UI.DomEvent.removeHandler(window,"load",this._loadHandlerDelegate);this._loadHandlerDelegate=null;}
this.initialize();}
function Sys$_Application$_navigate(entry){this._ensureHistory();var state=this._deserializeState(entry);if(this._uniqueId){var oldServerEntry=this._state.__s||'';var newServerEntry=state.__s||'';if(newServerEntry!==oldServerEntry){this._updateHiddenField(newServerEntry);__doPostBack(this._uniqueId,newServerEntry);this._state=state;return;}}
this._setState(entry);this._state=state;this._raiseNavigate();}
function Sys$_Application$_onIdle(){delete this._timerCookie;var entry=this.get_stateString();if(entry!==this._currentEntry){if(!this._ignoreTimer){this._historyPointIsNew=false;this._navigate(entry);this._historyLength=window.history.length;}}
else{this._ignoreTimer=false;}
this._timerCookie=window.setTimeout(this._timerHandler,100);}
function Sys$_Application$_onIFrameLoad(entry){this._ensureHistory();if(!this._ignoreIFrame){this._historyPointIsNew=false;this._navigate(entry);}
this._ignoreIFrame=false;}
function Sys$_Application$_onPageRequestManagerBeginRequest(sender,args){this._ignoreTimer=true;}
function Sys$_Application$_onPageRequestManagerEndRequest(sender,args){var dataItem=args.get_dataItems()[this._clientId];var eventTarget=document.getElementById("__EVENTTARGET");if(eventTarget&&eventTarget.value===this._uniqueId){eventTarget.value='';}
if(typeof(dataItem)!=='undefined'){this.setServerState(dataItem);this._historyPointIsNew=true;}
else{this._ignoreTimer=false;}
var entry=this._serializeState(this._state);if(entry!==this._currentEntry){this._ignoreTimer=true;this._setState(entry);this._raiseNavigate();}}
function Sys$_Application$_raiseNavigate(){var h=this.get_events().getHandler("navigate");var stateClone={};for(var key in this._state){if(key!=='__s'){stateClone[key]=this._state[key];}}
var args=new Sys.HistoryEventArgs(stateClone);if(h){h(this,args);}}
function Sys$_Application$_serializeState(state){var serialized=[];for(var key in state){var value=state[key];if(key==='__s'){var serverState=value;}
else{if(key.indexOf('=')!==-1)throw Error.argument('state',Sys.Res.stateFieldNameInvalid);serialized[serialized.length]=key+'='+encodeURIComponent(value);}}
return serialized.join('&')+(serverState?'&&'+serverState:'');}
function Sys$_Application$_setHistory(historyArray){var historyElement=document.getElementById('__history');if(historyElement){historyElement.value=Sys.Serialization.JavaScriptSerializer.serialize(historyArray);}}
function Sys$_Application$_setState(entry,title){entry=entry||'';if(entry!==this._currentEntry){if(window.theForm){var action=window.theForm.action;var hashIndex=action.indexOf('#');window.theForm.action=((hashIndex!==-1)?action.substring(0,hashIndex):action)+'#'+entry;}
if(this._historyFrame&&this._historyPointIsNew){this._ignoreIFrame=true;this._historyPointIsNew=false;var frameDoc=this._historyFrame.contentWindow.document;frameDoc.open("javascript:'<html></html>'");frameDoc.write("<html><head><title>"+(title||document.title)+"</title><scri"+"pt type=\"text/javascript\">parent.Sys.Application._onIFrameLoad('"+
entry+"');</scri"+"pt></head><body></body></html>");frameDoc.close();}
this._ignoreTimer=false;var currentHash=this.get_stateString();this._currentEntry=entry;if(entry!==currentHash){var loc=document.location;if(loc.href.length-loc.hash.length+entry.length>1024){throw Error.invalidOperation(Sys.Res.urlMustBeLessThan1024chars);}
if(this._isSafari2()){var history=this._getHistory();history[window.history.length-this._historyInitialLength+1]=entry;this._setHistory(history);this._historyLength=window.history.length+1;var form=document.createElement('form');form.method='get';form.action='#'+entry;document.appendChild(form);form.submit();document.removeChild(form);}
else{window.location.hash=entry;}
if((typeof(title)!=='undefined')&&(title!==null)){document.title=title;}}}}
function Sys$_Application$_unloadHandler(event){this.dispose();}
function Sys$_Application$_updateHiddenField(value){if(this._clientId){var serverStateField=document.getElementById(this._clientId);if(serverStateField){serverStateField.value=value;}}}
Sys._Application.prototype={_creatingComponents:false,_disposing:false,get_isCreatingComponents:Sys$_Application$get_isCreatingComponents,get_stateString:Sys$_Application$get_stateString,get_enableHistory:Sys$_Application$get_enableHistory,set_enableHistory:Sys$_Application$set_enableHistory,add_init:Sys$_Application$add_init,remove_init:Sys$_Application$remove_init,add_load:Sys$_Application$add_load,remove_load:Sys$_Application$remove_load,add_navigate:Sys$_Application$add_navigate,remove_navigate:Sys$_Application$remove_navigate,add_unload:Sys$_Application$add_unload,remove_unload:Sys$_Application$remove_unload,addComponent:Sys$_Application$addComponent,addHistoryPoint:Sys$_Application$addHistoryPoint,beginCreateComponents:Sys$_Application$beginCreateComponents,dispose:Sys$_Application$dispose,endCreateComponents:Sys$_Application$endCreateComponents,findComponent:Sys$_Application$findComponent,getComponents:Sys$_Application$getComponents,initialize:Sys$_Application$initialize,notifyScriptLoaded:Sys$_Application$notifyScriptLoaded,registerDisposableObject:Sys$_Application$registerDisposableObject,raiseLoad:Sys$_Application$raiseLoad,removeComponent:Sys$_Application$removeComponent,setServerId:Sys$_Application$setServerId,setServerState:Sys$_Application$setServerState,unregisterDisposableObject:Sys$_Application$unregisterDisposableObject,_addComponentToSecondPass:Sys$_Application$_addComponentToSecondPass,_deserializeState:Sys$_Application$_deserializeState,_doInitialize:Sys$_Application$_doInitialize,_enableHistoryInScriptManager:Sys$_Application$_enableHistoryInScriptManager,_ensureHistory:Sys$_Application$_ensureHistory,_getHistory:Sys$_Application$_getHistory,_isSafari2:Sys$_Application$_isSafari2,_loadHandler:Sys$_Application$_loadHandler,_navigate:Sys$_Application$_navigate,_onIdle:Sys$_Application$_onIdle,_onIFrameLoad:Sys$_Application$_onIFrameLoad,_onPageRequestManagerBeginRequest:Sys$_Application$_onPageRequestManagerBeginRequest,_onPageRequestManagerEndRequest:Sys$_Application$_onPageRequestManagerEndRequest,_raiseNavigate:Sys$_Application$_raiseNavigate,_serializeState:Sys$_Application$_serializeState,_setHistory:Sys$_Application$_setHistory,_setState:Sys$_Application$_setState,_unloadHandler:Sys$_Application$_unloadHandler,_updateHiddenField:Sys$_Application$_updateHiddenField}
Sys._Application.registerClass('Sys._Application',Sys.Component,Sys.IContainer);Sys.Application=new Sys._Application();var $find=Sys.Application.findComponent;Type.registerNamespace('Sys.Net');Sys.Net.WebRequestExecutor=function Sys$Net$WebRequestExecutor(){if(arguments.length!==0)throw Error.parameterCount();this._webRequest=null;this._resultObject=null;}
function Sys$Net$WebRequestExecutor$get_webRequest(){if(arguments.length!==0)throw Error.parameterCount();return this._webRequest;}
function Sys$Net$WebRequestExecutor$_set_webRequest(value){if(this.get_started()){throw Error.invalidOperation(String.format(Sys.Res.cannotCallOnceStarted,'set_webRequest'));}
this._webRequest=value;}
function Sys$Net$WebRequestExecutor$get_started(){if(arguments.length!==0)throw Error.parameterCount();throw Error.notImplemented();}
function Sys$Net$WebRequestExecutor$get_responseAvailable(){if(arguments.length!==0)throw Error.parameterCount();throw Error.notImplemented();}
function Sys$Net$WebRequestExecutor$get_timedOut(){if(arguments.length!==0)throw Error.parameterCount();throw Error.notImplemented();}
function Sys$Net$WebRequestExecutor$get_aborted(){if(arguments.length!==0)throw Error.parameterCount();throw Error.notImplemented();}
function Sys$Net$WebRequestExecutor$get_responseData(){if(arguments.length!==0)throw Error.parameterCount();throw Error.notImplemented();}
function Sys$Net$WebRequestExecutor$get_statusCode(){if(arguments.length!==0)throw Error.parameterCount();throw Error.notImplemented();}
function Sys$Net$WebRequestExecutor$get_statusText(){if(arguments.length!==0)throw Error.parameterCount();throw Error.notImplemented();}
function Sys$Net$WebRequestExecutor$get_xml(){if(arguments.length!==0)throw Error.parameterCount();throw Error.notImplemented();}
function Sys$Net$WebRequestExecutor$get_object(){if(arguments.length!==0)throw Error.parameterCount();if(!this._resultObject){this._resultObject=Sys.Serialization.JavaScriptSerializer.deserialize(this.get_responseData());}
return this._resultObject;}
function Sys$Net$WebRequestExecutor$executeRequest(){if(arguments.length!==0)throw Error.parameterCount();throw Error.notImplemented();}
function Sys$Net$WebRequestExecutor$abort(){if(arguments.length!==0)throw Error.parameterCount();throw Error.notImplemented();}
function Sys$Net$WebRequestExecutor$getResponseHeader(header){var e=Function._validateParams(arguments,[{name:"header",type:String}]);if(e)throw e;throw Error.notImplemented();}
function Sys$Net$WebRequestExecutor$getAllResponseHeaders(){if(arguments.length!==0)throw Error.parameterCount();throw Error.notImplemented();}
Sys.Net.WebRequestExecutor.prototype={get_webRequest:Sys$Net$WebRequestExecutor$get_webRequest,_set_webRequest:Sys$Net$WebRequestExecutor$_set_webRequest,get_started:Sys$Net$WebRequestExecutor$get_started,get_responseAvailable:Sys$Net$WebRequestExecutor$get_responseAvailable,get_timedOut:Sys$Net$WebRequestExecutor$get_timedOut,get_aborted:Sys$Net$WebRequestExecutor$get_aborted,get_responseData:Sys$Net$WebRequestExecutor$get_responseData,get_statusCode:Sys$Net$WebRequestExecutor$get_statusCode,get_statusText:Sys$Net$WebRequestExecutor$get_statusText,get_xml:Sys$Net$WebRequestExecutor$get_xml,get_object:Sys$Net$WebRequestExecutor$get_object,executeRequest:Sys$Net$WebRequestExecutor$executeRequest,abort:Sys$Net$WebRequestExecutor$abort,getResponseHeader:Sys$Net$WebRequestExecutor$getResponseHeader,getAllResponseHeaders:Sys$Net$WebRequestExecutor$getAllResponseHeaders}
Sys.Net.WebRequestExecutor.registerClass('Sys.Net.WebRequestExecutor');Sys.Net.XMLDOM=function Sys$Net$XMLDOM(markup){var e=Function._validateParams(arguments,[{name:"markup",type:String}]);if(e)throw e;if(!window.DOMParser){var progIDs=['Msxml2.DOMDocument.3.0','Msxml2.DOMDocument'];for(var i=0,l=progIDs.length;i<l;i++){try{var xmlDOM=new ActiveXObject(progIDs[i]);xmlDOM.async=false;xmlDOM.loadXML(markup);xmlDOM.setProperty('SelectionLanguage','XPath');return xmlDOM;}
catch(ex){}}}
else{try{var domParser=new window.DOMParser();return domParser.parseFromString(markup,'text/xml');}
catch(ex){}}
return null;}
Sys.Net.XMLHttpExecutor=function Sys$Net$XMLHttpExecutor(){if(arguments.length!==0)throw Error.parameterCount();Sys.Net.XMLHttpExecutor.initializeBase(this);var _this=this;this._xmlHttpRequest=null;this._webRequest=null;this._responseAvailable=false;this._timedOut=false;this._timer=null;this._aborted=false;this._started=false;this._onReadyStateChange=(function(){if(_this._xmlHttpRequest.readyState===4){try{if(typeof(_this._xmlHttpRequest.status)==="undefined"){return;}}
catch(ex){return;}
_this._clearTimer();_this._responseAvailable=true;try{_this._webRequest.completed(Sys.EventArgs.Empty);}
finally{if(_this._xmlHttpRequest!=null){_this._xmlHttpRequest.onreadystatechange=Function.emptyMethod;_this._xmlHttpRequest=null;}}}});this._clearTimer=(function(){if(_this._timer!=null){window.clearTimeout(_this._timer);_this._timer=null;}});this._onTimeout=(function(){if(!_this._responseAvailable){_this._clearTimer();_this._timedOut=true;_this._xmlHttpRequest.onreadystatechange=Function.emptyMethod;_this._xmlHttpRequest.abort();_this._webRequest.completed(Sys.EventArgs.Empty);_this._xmlHttpRequest=null;}});}
function Sys$Net$XMLHttpExecutor$get_timedOut(){if(arguments.length!==0)throw Error.parameterCount();return this._timedOut;}
function Sys$Net$XMLHttpExecutor$get_started(){if(arguments.length!==0)throw Error.parameterCount();return this._started;}
function Sys$Net$XMLHttpExecutor$get_responseAvailable(){if(arguments.length!==0)throw Error.parameterCount();return this._responseAvailable;}
function Sys$Net$XMLHttpExecutor$get_aborted(){if(arguments.length!==0)throw Error.parameterCount();return this._aborted;}
function Sys$Net$XMLHttpExecutor$executeRequest(){if(arguments.length!==0)throw Error.parameterCount();this._webRequest=this.get_webRequest();if(this._started){throw Error.invalidOperation(String.format(Sys.Res.cannotCallOnceStarted,'executeRequest'));}
if(this._webRequest===null){throw Error.invalidOperation(Sys.Res.nullWebRequest);}
var body=this._webRequest.get_body();var headers=this._webRequest.get_headers();this._xmlHttpRequest=new XMLHttpRequest();this._xmlHttpRequest.onreadystatechange=this._onReadyStateChange;var verb=this._webRequest.get_httpVerb();this._xmlHttpRequest.open(verb,this._webRequest.getResolvedUrl(),true);if(headers){for(var header in headers){var val=headers[header];if(typeof(val)!=="function")
this._xmlHttpRequest.setRequestHeader(header,val);}}
if(verb.toLowerCase()==="post"){if((headers===null)||!headers['Content-Type']){this._xmlHttpRequest.setRequestHeader('Content-Type','application/x-www-form-urlencoded; charset=utf-8');}
if(!body){body="";}}
var timeout=this._webRequest.get_timeout();if(timeout>0){this._timer=window.setTimeout(Function.createDelegate(this,this._onTimeout),timeout);}
this._xmlHttpRequest.send(body);this._started=true;}
function Sys$Net$XMLHttpExecutor$getResponseHeader(header){var e=Function._validateParams(arguments,[{name:"header",type:String}]);if(e)throw e;if(!this._responseAvailable){throw Error.invalidOperation(String.format(Sys.Res.cannotCallBeforeResponse,'getResponseHeader'));}
if(!this._xmlHttpRequest){throw Error.invalidOperation(String.format(Sys.Res.cannotCallOutsideHandler,'getResponseHeader'));}
var result;try{result=this._xmlHttpRequest.getResponseHeader(header);}catch(e){}
if(!result)result="";return result;}
function Sys$Net$XMLHttpExecutor$getAllResponseHeaders(){if(arguments.length!==0)throw Error.parameterCount();if(!this._responseAvailable){throw Error.invalidOperation(String.format(Sys.Res.cannotCallBeforeResponse,'getAllResponseHeaders'));}
if(!this._xmlHttpRequest){throw Error.invalidOperation(String.format(Sys.Res.cannotCallOutsideHandler,'getAllResponseHeaders'));}
return this._xmlHttpRequest.getAllResponseHeaders();}
function Sys$Net$XMLHttpExecutor$get_responseData(){if(arguments.length!==0)throw Error.parameterCount();if(!this._responseAvailable){throw Error.invalidOperation(String.format(Sys.Res.cannotCallBeforeResponse,'get_responseData'));}
if(!this._xmlHttpRequest){throw Error.invalidOperation(String.format(Sys.Res.cannotCallOutsideHandler,'get_responseData'));}
return this._xmlHttpRequest.responseText;}
function Sys$Net$XMLHttpExecutor$get_statusCode(){if(arguments.length!==0)throw Error.parameterCount();if(!this._responseAvailable){throw Error.invalidOperation(String.format(Sys.Res.cannotCallBeforeResponse,'get_statusCode'));}
if(!this._xmlHttpRequest){throw Error.invalidOperation(String.format(Sys.Res.cannotCallOutsideHandler,'get_statusCode'));}
var result=0;try{result=this._xmlHttpRequest.status;}
catch(ex){}
return result;}
function Sys$Net$XMLHttpExecutor$get_statusText(){if(arguments.length!==0)throw Error.parameterCount();if(!this._responseAvailable){throw Error.invalidOperation(String.format(Sys.Res.cannotCallBeforeResponse,'get_statusText'));}
if(!this._xmlHttpRequest){throw Error.invalidOperation(String.format(Sys.Res.cannotCallOutsideHandler,'get_statusText'));}
return this._xmlHttpRequest.statusText;}
function Sys$Net$XMLHttpExecutor$get_xml(){if(arguments.length!==0)throw Error.parameterCount();if(!this._responseAvailable){throw Error.invalidOperation(String.format(Sys.Res.cannotCallBeforeResponse,'get_xml'));}
if(!this._xmlHttpRequest){throw Error.invalidOperation(String.format(Sys.Res.cannotCallOutsideHandler,'get_xml'));}
var xml=this._xmlHttpRequest.responseXML;if(!xml||!xml.documentElement){xml=Sys.Net.XMLDOM(this._xmlHttpRequest.responseText);if(!xml||!xml.documentElement)
return null;}
else if(navigator.userAgent.indexOf('MSIE')!==-1){xml.setProperty('SelectionLanguage','XPath');}
if(xml.documentElement.namespaceURI==="http://www.mozilla.org/newlayout/xml/parsererror.xml"&&xml.documentElement.tagName==="parsererror"){return null;}
if(xml.documentElement.firstChild&&xml.documentElement.firstChild.tagName==="parsererror"){return null;}
return xml;}
function Sys$Net$XMLHttpExecutor$abort(){if(arguments.length!==0)throw Error.parameterCount();if(!this._started){throw Error.invalidOperation(Sys.Res.cannotAbortBeforeStart);}
if(this._aborted||this._responseAvailable||this._timedOut)
return;this._aborted=true;this._clearTimer();if(this._xmlHttpRequest&&!this._responseAvailable){this._xmlHttpRequest.onreadystatechange=Function.emptyMethod;this._xmlHttpRequest.abort();this._xmlHttpRequest=null;this._webRequest.completed(Sys.EventArgs.Empty);}}
Sys.Net.XMLHttpExecutor.prototype={get_timedOut:Sys$Net$XMLHttpExecutor$get_timedOut,get_started:Sys$Net$XMLHttpExecutor$get_started,get_responseAvailable:Sys$Net$XMLHttpExecutor$get_responseAvailable,get_aborted:Sys$Net$XMLHttpExecutor$get_aborted,executeRequest:Sys$Net$XMLHttpExecutor$executeRequest,getResponseHeader:Sys$Net$XMLHttpExecutor$getResponseHeader,getAllResponseHeaders:Sys$Net$XMLHttpExecutor$getAllResponseHeaders,get_responseData:Sys$Net$XMLHttpExecutor$get_responseData,get_statusCode:Sys$Net$XMLHttpExecutor$get_statusCode,get_statusText:Sys$Net$XMLHttpExecutor$get_statusText,get_xml:Sys$Net$XMLHttpExecutor$get_xml,abort:Sys$Net$XMLHttpExecutor$abort}
Sys.Net.XMLHttpExecutor.registerClass('Sys.Net.XMLHttpExecutor',Sys.Net.WebRequestExecutor);Sys.Net._WebRequestManager=function Sys$Net$_WebRequestManager(){if(arguments.length!==0)throw Error.parameterCount();this._defaultTimeout=0;this._defaultExecutorType="Sys.Net.XMLHttpExecutor";}
function Sys$Net$_WebRequestManager$add_invokingRequest(handler){var e=Function._validateParams(arguments,[{name:"handler",type:Function}]);if(e)throw e;this._get_eventHandlerList().addHandler("invokingRequest",handler);}
function Sys$Net$_WebRequestManager$remove_invokingRequest(handler){var e=Function._validateParams(arguments,[{name:"handler",type:Function}]);if(e)throw e;this._get_eventHandlerList().removeHandler("invokingRequest",handler);}
function Sys$Net$_WebRequestManager$add_completedRequest(handler){var e=Function._validateParams(arguments,[{name:"handler",type:Function}]);if(e)throw e;this._get_eventHandlerList().addHandler("completedRequest",handler);}
function Sys$Net$_WebRequestManager$remove_completedRequest(handler){var e=Function._validateParams(arguments,[{name:"handler",type:Function}]);if(e)throw e;this._get_eventHandlerList().removeHandler("completedRequest",handler);}
function Sys$Net$_WebRequestManager$_get_eventHandlerList(){if(!this._events){this._events=new Sys.EventHandlerList();}
return this._events;}
function Sys$Net$_WebRequestManager$get_defaultTimeout(){if(arguments.length!==0)throw Error.parameterCount();return this._defaultTimeout;}
function Sys$Net$_WebRequestManager$set_defaultTimeout(value){var e=Function._validateParams(arguments,[{name:"value",type:Number}]);if(e)throw e;if(value<0){throw Error.argumentOutOfRange("value",value,Sys.Res.invalidTimeout);}
this._defaultTimeout=value;}
function Sys$Net$_WebRequestManager$get_defaultExecutorType(){if(arguments.length!==0)throw Error.parameterCount();return this._defaultExecutorType;}
function Sys$Net$_WebRequestManager$set_defaultExecutorType(value){var e=Function._validateParams(arguments,[{name:"value",type:String}]);if(e)throw e;this._defaultExecutorType=value;}
function Sys$Net$_WebRequestManager$executeRequest(webRequest){var e=Function._validateParams(arguments,[{name:"webRequest",type:Sys.Net.WebRequest}]);if(e)throw e;var executor=webRequest.get_executor();if(!executor){var failed=false;try{var executorType=eval(this._defaultExecutorType);executor=new executorType();}catch(e){failed=true;}
if(failed||!Sys.Net.WebRequestExecutor.isInstanceOfType(executor)||!executor){throw Error.argument("defaultExecutorType",String.format(Sys.Res.invalidExecutorType,this._defaultExecutorType));}
webRequest.set_executor(executor);}
if(executor.get_aborted()){return;}
var evArgs=new Sys.Net.NetworkRequestEventArgs(webRequest);var handler=this._get_eventHandlerList().getHandler("invokingRequest");if(handler){handler(this,evArgs);}
if(!evArgs.get_cancel()){executor.executeRequest();}}
Sys.Net._WebRequestManager.prototype={add_invokingRequest:Sys$Net$_WebRequestManager$add_invokingRequest,remove_invokingRequest:Sys$Net$_WebRequestManager$remove_invokingRequest,add_completedRequest:Sys$Net$_WebRequestManager$add_completedRequest,remove_completedRequest:Sys$Net$_WebRequestManager$remove_completedRequest,_get_eventHandlerList:Sys$Net$_WebRequestManager$_get_eventHandlerList,get_defaultTimeout:Sys$Net$_WebRequestManager$get_defaultTimeout,set_defaultTimeout:Sys$Net$_WebRequestManager$set_defaultTimeout,get_defaultExecutorType:Sys$Net$_WebRequestManager$get_defaultExecutorType,set_defaultExecutorType:Sys$Net$_WebRequestManager$set_defaultExecutorType,executeRequest:Sys$Net$_WebRequestManager$executeRequest}
Sys.Net._WebRequestManager.registerClass('Sys.Net._WebRequestManager');Sys.Net.WebRequestManager=new Sys.Net._WebRequestManager();Sys.Net.NetworkRequestEventArgs=function Sys$Net$NetworkRequestEventArgs(webRequest){var e=Function._validateParams(arguments,[{name:"webRequest",type:Sys.Net.WebRequest}]);if(e)throw e;Sys.Net.NetworkRequestEventArgs.initializeBase(this);this._webRequest=webRequest;}
function Sys$Net$NetworkRequestEventArgs$get_webRequest(){if(arguments.length!==0)throw Error.parameterCount();return this._webRequest;}
Sys.Net.NetworkRequestEventArgs.prototype={get_webRequest:Sys$Net$NetworkRequestEventArgs$get_webRequest}
Sys.Net.NetworkRequestEventArgs.registerClass('Sys.Net.NetworkRequestEventArgs',Sys.CancelEventArgs);Sys.Net.WebRequest=function Sys$Net$WebRequest(){if(arguments.length!==0)throw Error.parameterCount();this._url="";this._headers={};this._body=null;this._userContext=null;this._httpVerb=null;this._executor=null;this._invokeCalled=false;this._timeout=0;}
function Sys$Net$WebRequest$add_completed(handler){var e=Function._validateParams(arguments,[{name:"handler",type:Function}]);if(e)throw e;this._get_eventHandlerList().addHandler("completed",handler);}
function Sys$Net$WebRequest$remove_completed(handler){var e=Function._validateParams(arguments,[{name:"handler",type:Function}]);if(e)throw e;this._get_eventHandlerList().removeHandler("completed",handler);}
function Sys$Net$WebRequest$completed(eventArgs){var e=Function._validateParams(arguments,[{name:"eventArgs",type:Sys.EventArgs}]);if(e)throw e;var handler=Sys.Net.WebRequestManager._get_eventHandlerList().getHandler("completedRequest");if(handler){handler(this._executor,eventArgs);}
handler=this._get_eventHandlerList().getHandler("completed");if(handler){handler(this._executor,eventArgs);}}
function Sys$Net$WebRequest$_get_eventHandlerList(){if(!this._events){this._events=new Sys.EventHandlerList();}
return this._events;}
function Sys$Net$WebRequest$get_url(){if(arguments.length!==0)throw Error.parameterCount();return this._url;}
function Sys$Net$WebRequest$set_url(value){var e=Function._validateParams(arguments,[{name:"value",type:String}]);if(e)throw e;this._url=value;}
function Sys$Net$WebRequest$get_headers(){if(arguments.length!==0)throw Error.parameterCount();return this._headers;}
function Sys$Net$WebRequest$get_httpVerb(){if(arguments.length!==0)throw Error.parameterCount();if(this._httpVerb===null){if(this._body===null){return"GET";}
return"POST";}
return this._httpVerb;}
function Sys$Net$WebRequest$set_httpVerb(value){var e=Function._validateParams(arguments,[{name:"value",type:String}]);if(e)throw e;if(value.length===0){throw Error.argument('value',Sys.Res.invalidHttpVerb);}
this._httpVerb=value;}
function Sys$Net$WebRequest$get_body(){if(arguments.length!==0)throw Error.parameterCount();return this._body;}
function Sys$Net$WebRequest$set_body(value){var e=Function._validateParams(arguments,[{name:"value",mayBeNull:true}]);if(e)throw e;this._body=value;}
function Sys$Net$WebRequest$get_userContext(){if(arguments.length!==0)throw Error.parameterCount();return this._userContext;}
function Sys$Net$WebRequest$set_userContext(value){var e=Function._validateParams(arguments,[{name:"value",mayBeNull:true}]);if(e)throw e;this._userContext=value;}
function Sys$Net$WebRequest$get_executor(){if(arguments.length!==0)throw Error.parameterCount();return this._executor;}
function Sys$Net$WebRequest$set_executor(value){var e=Function._validateParams(arguments,[{name:"value",type:Sys.Net.WebRequestExecutor}]);if(e)throw e;if(this._executor!==null&&this._executor.get_started()){throw Error.invalidOperation(Sys.Res.setExecutorAfterActive);}
this._executor=value;this._executor._set_webRequest(this);}
function Sys$Net$WebRequest$get_timeout(){if(arguments.length!==0)throw Error.parameterCount();if(this._timeout===0){return Sys.Net.WebRequestManager.get_defaultTimeout();}
return this._timeout;}
function Sys$Net$WebRequest$set_timeout(value){var e=Function._validateParams(arguments,[{name:"value",type:Number}]);if(e)throw e;if(value<0){throw Error.argumentOutOfRange("value",value,Sys.Res.invalidTimeout);}
this._timeout=value;}
function Sys$Net$WebRequest$getResolvedUrl(){if(arguments.length!==0)throw Error.parameterCount();return Sys.Net.WebRequest._resolveUrl(this._url);}
function Sys$Net$WebRequest$invoke(){if(arguments.length!==0)throw Error.parameterCount();if(this._invokeCalled){throw Error.invalidOperation(Sys.Res.invokeCalledTwice);}
Sys.Net.WebRequestManager.executeRequest(this);this._invokeCalled=true;}
Sys.Net.WebRequest.prototype={add_completed:Sys$Net$WebRequest$add_completed,remove_completed:Sys$Net$WebRequest$remove_completed,completed:Sys$Net$WebRequest$completed,_get_eventHandlerList:Sys$Net$WebRequest$_get_eventHandlerList,get_url:Sys$Net$WebRequest$get_url,set_url:Sys$Net$WebRequest$set_url,get_headers:Sys$Net$WebRequest$get_headers,get_httpVerb:Sys$Net$WebRequest$get_httpVerb,set_httpVerb:Sys$Net$WebRequest$set_httpVerb,get_body:Sys$Net$WebRequest$get_body,set_body:Sys$Net$WebRequest$set_body,get_userContext:Sys$Net$WebRequest$get_userContext,set_userContext:Sys$Net$WebRequest$set_userContext,get_executor:Sys$Net$WebRequest$get_executor,set_executor:Sys$Net$WebRequest$set_executor,get_timeout:Sys$Net$WebRequest$get_timeout,set_timeout:Sys$Net$WebRequest$set_timeout,getResolvedUrl:Sys$Net$WebRequest$getResolvedUrl,invoke:Sys$Net$WebRequest$invoke}
Sys.Net.WebRequest._resolveUrl=function Sys$Net$WebRequest$_resolveUrl(url,baseUrl){if(url&&url.indexOf('://')!==-1){return url;}
if(!baseUrl||baseUrl.length===0){var baseElement=document.getElementsByTagName('base')[0];if(baseElement&&baseElement.href&&baseElement.href.length>0){baseUrl=baseElement.href;}
else{baseUrl=document.URL;}}
var qsStart=baseUrl.indexOf('?');if(qsStart!==-1){baseUrl=baseUrl.substr(0,qsStart);}
qsStart=baseUrl.indexOf('#');if(qsStart!==-1){baseUrl=baseUrl.substr(0,qsStart);}
baseUrl=baseUrl.substr(0,baseUrl.lastIndexOf('/')+1);if(!url||url.length===0){return baseUrl;}
if(url.charAt(0)==='/'){var slashslash=baseUrl.indexOf('://');if(slashslash===-1){throw Error.argument("baseUrl",Sys.Res.badBaseUrl1);}
var nextSlash=baseUrl.indexOf('/',slashslash+3);if(nextSlash===-1){throw Error.argument("baseUrl",Sys.Res.badBaseUrl2);}
return baseUrl.substr(0,nextSlash)+url;}
else{var lastSlash=baseUrl.lastIndexOf('/');if(lastSlash===-1){throw Error.argument("baseUrl",Sys.Res.badBaseUrl3);}
return baseUrl.substr(0,lastSlash+1)+url;}}
Sys.Net.WebRequest._createQueryString=function Sys$Net$WebRequest$_createQueryString(queryString,encodeMethod){if(!encodeMethod)
encodeMethod=encodeURIComponent;var sb=new Sys.StringBuilder();var i=0;for(var arg in queryString){var obj=queryString[arg];if(typeof(obj)==="function")continue;var val=Sys.Serialization.JavaScriptSerializer.serialize(obj);if(i!==0){sb.append('&');}
sb.append(arg);sb.append('=');sb.append(encodeMethod(val));i++;}
return sb.toString();}
Sys.Net.WebRequest._createUrl=function Sys$Net$WebRequest$_createUrl(url,queryString){if(!queryString){return url;}
var qs=Sys.Net.WebRequest._createQueryString(queryString);if(qs.length>0){var sep='?';if(url&&url.indexOf('?')!==-1)
sep='&';return url+sep+qs;}else{return url;}}
Sys.Net.WebRequest.registerClass('Sys.Net.WebRequest');Sys.Net.WebServiceProxy=function Sys$Net$WebServiceProxy(){}
function Sys$Net$WebServiceProxy$get_timeout(){if(arguments.length!==0)throw Error.parameterCount();return this._timeout;}
function Sys$Net$WebServiceProxy$set_timeout(value){var e=Function._validateParams(arguments,[{name:"value",type:Number}]);if(e)throw e;if(value<0){throw Error.argumentOutOfRange('value',value,Sys.Res.invalidTimeout);}
this._timeout=value;}
function Sys$Net$WebServiceProxy$get_defaultUserContext(){if(arguments.length!==0)throw Error.parameterCount();return this._userContext;}
function Sys$Net$WebServiceProxy$set_defaultUserContext(value){var e=Function._validateParams(arguments,[{name:"value",mayBeNull:true}]);if(e)throw e;this._userContext=value;}
function Sys$Net$WebServiceProxy$get_defaultSucceededCallback(){if(arguments.length!==0)throw Error.parameterCount();return this._succeeded;}
function Sys$Net$WebServiceProxy$set_defaultSucceededCallback(value){var e=Function._validateParams(arguments,[{name:"value",type:Function,mayBeNull:true}]);if(e)throw e;this._succeeded=value;}
function Sys$Net$WebServiceProxy$get_defaultFailedCallback(){if(arguments.length!==0)throw Error.parameterCount();return this._failed;}
function Sys$Net$WebServiceProxy$set_defaultFailedCallback(value){var e=Function._validateParams(arguments,[{name:"value",type:Function,mayBeNull:true}]);if(e)throw e;this._failed=value;}
function Sys$Net$WebServiceProxy$get_path(){if(arguments.length!==0)throw Error.parameterCount();return this._path;}
function Sys$Net$WebServiceProxy$set_path(value){var e=Function._validateParams(arguments,[{name:"value",type:String}]);if(e)throw e;this._path=value;}
function Sys$Net$WebServiceProxy$_invoke(servicePath,methodName,useGet,params,onSuccess,onFailure,userContext){var e=Function._validateParams(arguments,[{name:"servicePath",type:String},{name:"methodName",type:String},{name:"useGet",type:Boolean},{name:"params"},{name:"onSuccess",type:Function,mayBeNull:true,optional:true},{name:"onFailure",type:Function,mayBeNull:true,optional:true},{name:"userContext",mayBeNull:true,optional:true}]);if(e)throw e;if(onSuccess===null||typeof onSuccess==='undefined')onSuccess=this.get_defaultSucceededCallback();if(onFailure===null||typeof onFailure==='undefined')onFailure=this.get_defaultFailedCallback();if(userContext===null||typeof userContext==='undefined')userContext=this.get_defaultUserContext();return Sys.Net.WebServiceProxy.invoke(servicePath,methodName,useGet,params,onSuccess,onFailure,userContext,this.get_timeout());}
Sys.Net.WebServiceProxy.prototype={get_timeout:Sys$Net$WebServiceProxy$get_timeout,set_timeout:Sys$Net$WebServiceProxy$set_timeout,get_defaultUserContext:Sys$Net$WebServiceProxy$get_defaultUserContext,set_defaultUserContext:Sys$Net$WebServiceProxy$set_defaultUserContext,get_defaultSucceededCallback:Sys$Net$WebServiceProxy$get_defaultSucceededCallback,set_defaultSucceededCallback:Sys$Net$WebServiceProxy$set_defaultSucceededCallback,get_defaultFailedCallback:Sys$Net$WebServiceProxy$get_defaultFailedCallback,set_defaultFailedCallback:Sys$Net$WebServiceProxy$set_defaultFailedCallback,get_path:Sys$Net$WebServiceProxy$get_path,set_path:Sys$Net$WebServiceProxy$set_path,_invoke:Sys$Net$WebServiceProxy$_invoke}
Sys.Net.WebServiceProxy.registerClass('Sys.Net.WebServiceProxy');Sys.Net.WebServiceProxy.invoke=function Sys$Net$WebServiceProxy$invoke(servicePath,methodName,useGet,params,onSuccess,onFailure,userContext,timeout){var e=Function._validateParams(arguments,[{name:"servicePath",type:String},{name:"methodName",type:String},{name:"useGet",type:Boolean,optional:true},{name:"params",mayBeNull:true,optional:true},{name:"onSuccess",type:Function,mayBeNull:true,optional:true},{name:"onFailure",type:Function,mayBeNull:true,optional:true},{name:"userContext",mayBeNull:true,optional:true},{name:"timeout",type:Number,optional:true}]);if(e)throw e;var request=new Sys.Net.WebRequest();request.get_headers()['Content-Type']='application/json; charset=utf-8';if(!params)params={};var urlParams=params;if(!useGet||!urlParams)urlParams={};request.set_url(Sys.Net.WebRequest._createUrl(servicePath+"/"+encodeURIComponent(methodName),urlParams));var body=null;if(!useGet){body=Sys.Serialization.JavaScriptSerializer.serialize(params);if(body==="{}")body="";}
request.set_body(body);request.add_completed(onComplete);if(timeout&&timeout>0)request.set_timeout(timeout);request.invoke();function onComplete(response,eventArgs){if(response.get_responseAvailable()){var statusCode=response.get_statusCode();var result=null;try{var contentType=response.getResponseHeader("Content-Type");if(contentType.startsWith("application/json")){result=response.get_object();}
else if(contentType.startsWith("text/xml")){result=response.get_xml();}
else{result=response.get_responseData();}}catch(ex){}
var error=response.getResponseHeader("jsonerror");var errorObj=(error==="true");if(errorObj){if(result){result=new Sys.Net.WebServiceError(false,result.Message,result.StackTrace,result.ExceptionType);}}
else if(contentType.startsWith("application/json")){if(!result||typeof(result.d)==="undefined"){throw Sys.Net.WebServiceProxy._createFailedError(methodName,String.format(Sys.Res.webServiceInvalidJsonWrapper,methodName));}
result=result.d;}
if(((statusCode<200)||(statusCode>=300))||errorObj){if(onFailure){if(!result||!errorObj){result=new Sys.Net.WebServiceError(false,String.format(Sys.Res.webServiceFailedNoMsg,methodName),"","");}
result._statusCode=statusCode;onFailure(result,userContext,methodName);}
else{var error;if(result&&errorObj){error=result.get_exceptionType()+"-- "+result.get_message();}
else{error=response.get_responseData();}
throw Sys.Net.WebServiceProxy._createFailedError(methodName,String.format(Sys.Res.webServiceFailed,methodName,error));}}
else if(onSuccess){onSuccess(result,userContext,methodName);}}
else{var msg;if(response.get_timedOut()){msg=String.format(Sys.Res.webServiceTimedOut,methodName);}
else{msg=String.format(Sys.Res.webServiceFailedNoMsg,methodName)}
if(onFailure){onFailure(new Sys.Net.WebServiceError(response.get_timedOut(),msg,"",""),userContext,methodName);}
else{throw Sys.Net.WebServiceProxy._createFailedError(methodName,msg);}}}
return request;}
Sys.Net.WebServiceProxy._createFailedError=function Sys$Net$WebServiceProxy$_createFailedError(methodName,errorMessage){var displayMessage="Sys.Net.WebServiceFailedException: "+errorMessage;var e=Error.create(displayMessage,{'name':'Sys.Net.WebServiceFailedException','methodName':methodName});e.popStackFrame();return e;}
Sys.Net.WebServiceProxy._defaultFailedCallback=function Sys$Net$WebServiceProxy$_defaultFailedCallback(err,methodName){var error=err.get_exceptionType()+"-- "+err.get_message();throw Sys.Net.WebServiceProxy._createFailedError(methodName,String.format(Sys.Res.webServiceFailed,methodName,error));}
Sys.Net.WebServiceProxy._generateTypedConstructor=function Sys$Net$WebServiceProxy$_generateTypedConstructor(type){return function(properties){if(properties){for(var name in properties){this[name]=properties[name];}}
this.__type=type;}}
Sys.Net.WebServiceError=function Sys$Net$WebServiceError(timedOut,message,stackTrace,exceptionType){var e=Function._validateParams(arguments,[{name:"timedOut",type:Boolean},{name:"message",type:String,mayBeNull:true},{name:"stackTrace",type:String,mayBeNull:true},{name:"exceptionType",type:String,mayBeNull:true}]);if(e)throw e;this._timedOut=timedOut;this._message=message;this._stackTrace=stackTrace;this._exceptionType=exceptionType;this._statusCode=-1;}
function Sys$Net$WebServiceError$get_timedOut(){if(arguments.length!==0)throw Error.parameterCount();return this._timedOut;}
function Sys$Net$WebServiceError$get_statusCode(){if(arguments.length!==0)throw Error.parameterCount();return this._statusCode;}
function Sys$Net$WebServiceError$get_message(){if(arguments.length!==0)throw Error.parameterCount();return this._message;}
function Sys$Net$WebServiceError$get_stackTrace(){if(arguments.length!==0)throw Error.parameterCount();return this._stackTrace;}
function Sys$Net$WebServiceError$get_exceptionType(){if(arguments.length!==0)throw Error.parameterCount();return this._exceptionType;}
Sys.Net.WebServiceError.prototype={get_timedOut:Sys$Net$WebServiceError$get_timedOut,get_statusCode:Sys$Net$WebServiceError$get_statusCode,get_message:Sys$Net$WebServiceError$get_message,get_stackTrace:Sys$Net$WebServiceError$get_stackTrace,get_exceptionType:Sys$Net$WebServiceError$get_exceptionType}
Sys.Net.WebServiceError.registerClass('Sys.Net.WebServiceError');Type.registerNamespace('Sys.Services');Sys.Services._ProfileService=function Sys$Services$_ProfileService(){if(arguments.length!==0)throw Error.parameterCount();Sys.Services._ProfileService.initializeBase(this);this.properties={};}
Sys.Services._ProfileService.DefaultWebServicePath='';function Sys$Services$_ProfileService$get_defaultLoadCompletedCallback(){if(arguments.length!==0)throw Error.parameterCount();return this._defaultLoadCompletedCallback;}
function Sys$Services$_ProfileService$set_defaultLoadCompletedCallback(value){var e=Function._validateParams(arguments,[{name:"value",type:Function,mayBeNull:true}]);if(e)throw e;this._defaultLoadCompletedCallback=value;}
function Sys$Services$_ProfileService$get_defaultSaveCompletedCallback(){if(arguments.length!==0)throw Error.parameterCount();return this._defaultSaveCompletedCallback;}
function Sys$Services$_ProfileService$set_defaultSaveCompletedCallback(value){var e=Function._validateParams(arguments,[{name:"value",type:Function,mayBeNull:true}]);if(e)throw e;this._defaultSaveCompletedCallback=value;}
function Sys$Services$_ProfileService$get_path(){if(arguments.length!==0)throw Error.parameterCount();return this._path||'';}
function Sys$Services$_ProfileService$load(propertyNames,loadCompletedCallback,failedCallback,userContext){var e=Function._validateParams(arguments,[{name:"propertyNames",type:Array,mayBeNull:true,optional:true,elementType:String},{name:"loadCompletedCallback",type:Function,mayBeNull:true,optional:true},{name:"failedCallback",type:Function,mayBeNull:true,optional:true},{name:"userContext",mayBeNull:true,optional:true}]);if(e)throw e;var parameters;var methodName;if(!propertyNames){methodName="GetAllPropertiesForCurrentUser";parameters={authenticatedUserOnly:false};}
else{methodName="GetPropertiesForCurrentUser";parameters={properties:this._clonePropertyNames(propertyNames),authenticatedUserOnly:false};}
this._invoke(this._get_path(),methodName,false,parameters,Function.createDelegate(this,this._onLoadComplete),Function.createDelegate(this,this._onLoadFailed),[loadCompletedCallback,failedCallback,userContext]);}
function Sys$Services$_ProfileService$save(propertyNames,saveCompletedCallback,failedCallback,userContext){var e=Function._validateParams(arguments,[{name:"propertyNames",type:Array,mayBeNull:true,optional:true,elementType:String},{name:"saveCompletedCallback",type:Function,mayBeNull:true,optional:true},{name:"failedCallback",type:Function,mayBeNull:true,optional:true},{name:"userContext",mayBeNull:true,optional:true}]);if(e)throw e;var flattenedProperties=this._flattenProperties(propertyNames,this.properties);this._invoke(this._get_path(),"SetPropertiesForCurrentUser",false,{values:flattenedProperties.value,authenticatedUserOnly:false},Function.createDelegate(this,this._onSaveComplete),Function.createDelegate(this,this._onSaveFailed),[saveCompletedCallback,failedCallback,userContext,flattenedProperties.count]);}
function Sys$Services$_ProfileService$_clonePropertyNames(arr){var nodups=[];var seen={};for(var i=0;i<arr.length;i++){var prop=arr[i];if(!seen[prop]){Array.add(nodups,prop);seen[prop]=true;};}
return nodups;}
function Sys$Services$_ProfileService$_flattenProperties(propertyNames,properties,groupName){var flattenedProperties={};var val;var key;var count=0;if(propertyNames&&propertyNames.length===0){return{value:flattenedProperties,count:0};}
for(var property in properties){val=properties[property];key=groupName?groupName+"."+property:property;if(Sys.Services.ProfileGroup.isInstanceOfType(val)){var obj=this._flattenProperties(propertyNames,val,key);var groupProperties=obj.value;count+=obj.count;for(var subKey in groupProperties){var subVal=groupProperties[subKey];flattenedProperties[subKey]=subVal;}}
else{if(!propertyNames||Array.indexOf(propertyNames,key)!==-1){flattenedProperties[key]=val;count++;}}}
return{value:flattenedProperties,count:count};}
function Sys$Services$_ProfileService$_get_path(){var path=this.get_path();if(!path.length){path=Sys.Services._ProfileService.DefaultWebServicePath;}
if(!path||!path.length){throw Error.invalidOperation(Sys.Res.servicePathNotSet);}
return path;}
function Sys$Services$_ProfileService$_onLoadComplete(result,context,methodName){if(typeof(result)!=="object"){throw Error.invalidOperation(String.format(Sys.Res.webServiceInvalidReturnType,methodName,"Object"));}
var unflattened=this._unflattenProperties(result);for(var name in unflattened){this.properties[name]=unflattened[name];}
var callback=context[0]||this.get_defaultLoadCompletedCallback()||this.get_defaultSucceededCallback();if(callback){var userContext=context[2]||this.get_defaultUserContext();callback(result.length,userContext,"Sys.Services.ProfileService.load");}}
function Sys$Services$_ProfileService$_onLoadFailed(err,context,methodName){var callback=context[1]||this.get_defaultFailedCallback();if(callback){var userContext=context[2]||this.get_defaultUserContext();callback(err,userContext,"Sys.Services.ProfileService.load");}
else{Sys.Net.WebServiceProxy._defaultFailedCallback(err,methodName);}}
function Sys$Services$_ProfileService$_onSaveComplete(result,context,methodName){var count=context[3];if(result!==null){if(result instanceof Array){count-=result.length;}
else if(typeof(result)==='number'){count=result;}
else{throw Error.invalidOperation(String.format(Sys.Res.webServiceInvalidReturnType,methodName,"Array"));}}
var callback=context[0]||this.get_defaultSaveCompletedCallback()||this.get_defaultSucceededCallback();if(callback){var userContext=context[2]||this.get_defaultUserContext();callback(count,userContext,"Sys.Services.ProfileService.save");}}
function Sys$Services$_ProfileService$_onSaveFailed(err,context,methodName){var callback=context[1]||this.get_defaultFailedCallback();if(callback){var userContext=context[2]||this.get_defaultUserContext();callback(err,userContext,"Sys.Services.ProfileService.save");}
else{Sys.Net.WebServiceProxy._defaultFailedCallback(err,methodName);}}
function Sys$Services$_ProfileService$_unflattenProperties(properties){var unflattenedProperties={};var dotIndex;var val;var count=0;for(var key in properties){count++;val=properties[key];dotIndex=key.indexOf('.');if(dotIndex!==-1){var groupName=key.substr(0,dotIndex);key=key.substr(dotIndex+1);var group=unflattenedProperties[groupName];if(!group||!Sys.Services.ProfileGroup.isInstanceOfType(group)){group=new Sys.Services.ProfileGroup();unflattenedProperties[groupName]=group;}
group[key]=val;}
else{unflattenedProperties[key]=val;}}
properties.length=count;return unflattenedProperties;}
Sys.Services._ProfileService.prototype={_defaultLoadCompletedCallback:null,_defaultSaveCompletedCallback:null,_path:'',_timeout:0,get_defaultLoadCompletedCallback:Sys$Services$_ProfileService$get_defaultLoadCompletedCallback,set_defaultLoadCompletedCallback:Sys$Services$_ProfileService$set_defaultLoadCompletedCallback,get_defaultSaveCompletedCallback:Sys$Services$_ProfileService$get_defaultSaveCompletedCallback,set_defaultSaveCompletedCallback:Sys$Services$_ProfileService$set_defaultSaveCompletedCallback,get_path:Sys$Services$_ProfileService$get_path,load:Sys$Services$_ProfileService$load,save:Sys$Services$_ProfileService$save,_clonePropertyNames:Sys$Services$_ProfileService$_clonePropertyNames,_flattenProperties:Sys$Services$_ProfileService$_flattenProperties,_get_path:Sys$Services$_ProfileService$_get_path,_onLoadComplete:Sys$Services$_ProfileService$_onLoadComplete,_onLoadFailed:Sys$Services$_ProfileService$_onLoadFailed,_onSaveComplete:Sys$Services$_ProfileService$_onSaveComplete,_onSaveFailed:Sys$Services$_ProfileService$_onSaveFailed,_unflattenProperties:Sys$Services$_ProfileService$_unflattenProperties}
Sys.Services._ProfileService.registerClass('Sys.Services._ProfileService',Sys.Net.WebServiceProxy);Sys.Services.ProfileService=new Sys.Services._ProfileService();Sys.Services.ProfileGroup=function Sys$Services$ProfileGroup(properties){var e=Function._validateParams(arguments,[{name:"properties",mayBeNull:true,optional:true}]);if(e)throw e;if(properties){for(var property in properties){this[property]=properties[property];}}}
Sys.Services.ProfileGroup.registerClass('Sys.Services.ProfileGroup');Sys.Services._AuthenticationService=function Sys$Services$_AuthenticationService(){if(arguments.length!==0)throw Error.parameterCount();Sys.Services._AuthenticationService.initializeBase(this);}
Sys.Services._AuthenticationService.DefaultWebServicePath='';function Sys$Services$_AuthenticationService$get_defaultLoginCompletedCallback(){if(arguments.length!==0)throw Error.parameterCount();return this._defaultLoginCompletedCallback;}
function Sys$Services$_AuthenticationService$set_defaultLoginCompletedCallback(value){var e=Function._validateParams(arguments,[{name:"value",type:Function,mayBeNull:true}]);if(e)throw e;this._defaultLoginCompletedCallback=value;}
function Sys$Services$_AuthenticationService$get_defaultLogoutCompletedCallback(){if(arguments.length!==0)throw Error.parameterCount();return this._defaultLogoutCompletedCallback;}
function Sys$Services$_AuthenticationService$set_defaultLogoutCompletedCallback(value){var e=Function._validateParams(arguments,[{name:"value",type:Function,mayBeNull:true}]);if(e)throw e;this._defaultLogoutCompletedCallback=value;}
function Sys$Services$_AuthenticationService$get_isLoggedIn(){if(arguments.length!==0)throw Error.parameterCount();return this._authenticated;}
function Sys$Services$_AuthenticationService$get_path(){if(arguments.length!==0)throw Error.parameterCount();return this._path||'';}
function Sys$Services$_AuthenticationService$login(username,password,isPersistent,customInfo,redirectUrl,loginCompletedCallback,failedCallback,userContext){var e=Function._validateParams(arguments,[{name:"username",type:String},{name:"password",type:String,mayBeNull:true},{name:"isPersistent",type:Boolean,mayBeNull:true,optional:true},{name:"customInfo",type:String,mayBeNull:true,optional:true},{name:"redirectUrl",type:String,mayBeNull:true,optional:true},{name:"loginCompletedCallback",type:Function,mayBeNull:true,optional:true},{name:"failedCallback",type:Function,mayBeNull:true,optional:true},{name:"userContext",mayBeNull:true,optional:true}]);if(e)throw e;this._invoke(this._get_path(),"Login",false,{userName:username,password:password,createPersistentCookie:isPersistent},Function.createDelegate(this,this._onLoginComplete),Function.createDelegate(this,this._onLoginFailed),[username,password,isPersistent,customInfo,redirectUrl,loginCompletedCallback,failedCallback,userContext]);}
function Sys$Services$_AuthenticationService$logout(redirectUrl,logoutCompletedCallback,failedCallback,userContext){var e=Function._validateParams(arguments,[{name:"redirectUrl",type:String,mayBeNull:true,optional:true},{name:"logoutCompletedCallback",type:Function,mayBeNull:true,optional:true},{name:"failedCallback",type:Function,mayBeNull:true,optional:true},{name:"userContext",mayBeNull:true,optional:true}]);if(e)throw e;this._invoke(this._get_path(),"Logout",false,{},Function.createDelegate(this,this._onLogoutComplete),Function.createDelegate(this,this._onLogoutFailed),[redirectUrl,logoutCompletedCallback,failedCallback,userContext]);}
function Sys$Services$_AuthenticationService$_get_path(){var path=this.get_path();if(!path.length){path=Sys.Services._AuthenticationService.DefaultWebServicePath;}
if(!path||!path.length){throw Error.invalidOperation(Sys.Res.servicePathNotSet);}
return path;}
function Sys$Services$_AuthenticationService$_onLoginComplete(result,context,methodName){if(typeof(result)!=="boolean"){throw Error.invalidOperation(String.format(Sys.Res.webServiceInvalidReturnType,methodName,"Boolean"));}
var redirectUrl=context[4];var userContext=context[7]||this.get_defaultUserContext();var callback=context[5]||this.get_defaultLoginCompletedCallback()||this.get_defaultSucceededCallback();if(result){this._authenticated=true;if(callback){callback(true,userContext,"Sys.Services.AuthenticationService.login");}
if(typeof(redirectUrl)!=="undefined"&&redirectUrl!==null){window.location.href=redirectUrl;}}
else if(callback){callback(false,userContext,"Sys.Services.AuthenticationService.login");}}
function Sys$Services$_AuthenticationService$_onLoginFailed(err,context,methodName){var callback=context[6]||this.get_defaultFailedCallback();if(callback){var userContext=context[7]||this.get_defaultUserContext();callback(err,userContext,"Sys.Services.AuthenticationService.login");}
else{Sys.Net.WebServiceProxy._defaultFailedCallback(err,methodName);}}
function Sys$Services$_AuthenticationService$_onLogoutComplete(result,context,methodName){if(result!==null){throw Error.invalidOperation(String.format(Sys.Res.webServiceInvalidReturnType,methodName,"null"));}
var redirectUrl=context[0];var userContext=context[3]||this.get_defaultUserContext();var callback=context[1]||this.get_defaultLogoutCompletedCallback()||this.get_defaultSucceededCallback();this._authenticated=false;if(callback){callback(null,userContext,"Sys.Services.AuthenticationService.logout");}
if(!redirectUrl){window.location.reload();}
else{window.location.href=redirectUrl;}}
function Sys$Services$_AuthenticationService$_onLogoutFailed(err,context,methodName){var callback=context[2]||this.get_defaultFailedCallback();if(callback){callback(err,context[3],"Sys.Services.AuthenticationService.logout");}
else{Sys.Net.WebServiceProxy._defaultFailedCallback(err,methodName);}}
function Sys$Services$_AuthenticationService$_setAuthenticated(authenticated){this._authenticated=authenticated;}
Sys.Services._AuthenticationService.prototype={_defaultLoginCompletedCallback:null,_defaultLogoutCompletedCallback:null,_path:'',_timeout:0,_authenticated:false,get_defaultLoginCompletedCallback:Sys$Services$_AuthenticationService$get_defaultLoginCompletedCallback,set_defaultLoginCompletedCallback:Sys$Services$_AuthenticationService$set_defaultLoginCompletedCallback,get_defaultLogoutCompletedCallback:Sys$Services$_AuthenticationService$get_defaultLogoutCompletedCallback,set_defaultLogoutCompletedCallback:Sys$Services$_AuthenticationService$set_defaultLogoutCompletedCallback,get_isLoggedIn:Sys$Services$_AuthenticationService$get_isLoggedIn,get_path:Sys$Services$_AuthenticationService$get_path,login:Sys$Services$_AuthenticationService$login,logout:Sys$Services$_AuthenticationService$logout,_get_path:Sys$Services$_AuthenticationService$_get_path,_onLoginComplete:Sys$Services$_AuthenticationService$_onLoginComplete,_onLoginFailed:Sys$Services$_AuthenticationService$_onLoginFailed,_onLogoutComplete:Sys$Services$_AuthenticationService$_onLogoutComplete,_onLogoutFailed:Sys$Services$_AuthenticationService$_onLogoutFailed,_setAuthenticated:Sys$Services$_AuthenticationService$_setAuthenticated}
Sys.Services._AuthenticationService.registerClass('Sys.Services._AuthenticationService',Sys.Net.WebServiceProxy);Sys.Services.AuthenticationService=new Sys.Services._AuthenticationService();Sys.Services._RoleService=function Sys$Services$_RoleService(){if(arguments.length!==0)throw Error.parameterCount();Sys.Services._RoleService.initializeBase(this);this._roles=[];}
Sys.Services._RoleService.DefaultWebServicePath='';function Sys$Services$_RoleService$get_defaultLoadCompletedCallback(){if(arguments.length!==0)throw Error.parameterCount();return this._defaultLoadCompletedCallback;}
function Sys$Services$_RoleService$set_defaultLoadCompletedCallback(value){var e=Function._validateParams(arguments,[{name:"value",type:Function,mayBeNull:true}]);if(e)throw e;this._defaultLoadCompletedCallback=value;}
function Sys$Services$_RoleService$get_path(){if(arguments.length!==0)throw Error.parameterCount();return this._path||'';}
function Sys$Services$_RoleService$get_roles(){if(arguments.length!==0)throw Error.parameterCount();return Array.clone(this._roles);}
function Sys$Services$_RoleService$isUserInRole(role){var e=Function._validateParams(arguments,[{name:"role",type:String}]);if(e)throw e;var v=this._get_rolesIndex()[role.trim().toLowerCase()];return!!v;}
function Sys$Services$_RoleService$load(loadCompletedCallback,failedCallback,userContext){var e=Function._validateParams(arguments,[{name:"loadCompletedCallback",type:Function,mayBeNull:true,optional:true},{name:"failedCallback",type:Function,mayBeNull:true,optional:true},{name:"userContext",mayBeNull:true,optional:true}]);if(e)throw e;Sys.Net.WebServiceProxy.invoke(this._get_path(),"GetRolesForCurrentUser",false,{},Function.createDelegate(this,this._onLoadComplete),Function.createDelegate(this,this._onLoadFailed),[loadCompletedCallback,failedCallback,userContext],this.get_timeout());}
function Sys$Services$_RoleService$_get_path(){var path=this.get_path();if(!path||!path.length){path=Sys.Services._RoleService.DefaultWebServicePath;}
if(!path||!path.length){throw Error.invalidOperation(Sys.Res.servicePathNotSet);}
return path;}
function Sys$Services$_RoleService$_get_rolesIndex(){if(!this._rolesIndex){var index={};for(var i=0;i<this._roles.length;i++){index[this._roles[i].toLowerCase()]=true;}
this._rolesIndex=index;}
return this._rolesIndex;}
function Sys$Services$_RoleService$_onLoadComplete(result,context,methodName){if(result&&!(result instanceof Array)){throw Error.invalidOperation(String.format(Sys.Res.webServiceInvalidReturnType,methodName,"Array"));}
this._roles=result;this._rolesIndex=null;var callback=context[0]||this.get_defaultLoadCompletedCallback()||this.get_defaultSucceededCallback();if(callback){var userContext=context[2]||this.get_defaultUserContext();var clonedResult=Array.clone(result);callback(clonedResult,userContext,"Sys.Services.RoleService.load");}}
function Sys$Services$_RoleService$_onLoadFailed(err,context,methodName){var callback=context[1]||this.get_defaultFailedCallback();if(callback){var userContext=context[2]||this.get_defaultUserContext();callback(err,userContext,"Sys.Services.RoleService.load");}
else{Sys.Net.WebServiceProxy._defaultFailedCallback(err,methodName);}}
Sys.Services._RoleService.prototype={_defaultLoadCompletedCallback:null,_rolesIndex:null,_timeout:0,_path:'',get_defaultLoadCompletedCallback:Sys$Services$_RoleService$get_defaultLoadCompletedCallback,set_defaultLoadCompletedCallback:Sys$Services$_RoleService$set_defaultLoadCompletedCallback,get_path:Sys$Services$_RoleService$get_path,get_roles:Sys$Services$_RoleService$get_roles,isUserInRole:Sys$Services$_RoleService$isUserInRole,load:Sys$Services$_RoleService$load,_get_path:Sys$Services$_RoleService$_get_path,_get_rolesIndex:Sys$Services$_RoleService$_get_rolesIndex,_onLoadComplete:Sys$Services$_RoleService$_onLoadComplete,_onLoadFailed:Sys$Services$_RoleService$_onLoadFailed}
Sys.Services._RoleService.registerClass('Sys.Services._RoleService',Sys.Net.WebServiceProxy);Sys.Services.RoleService=new Sys.Services._RoleService();Type.registerNamespace('Sys.Serialization');Sys.Serialization.JavaScriptSerializer=function Sys$Serialization$JavaScriptSerializer(){if(arguments.length!==0)throw Error.parameterCount();}
Sys.Serialization.JavaScriptSerializer.registerClass('Sys.Serialization.JavaScriptSerializer');Sys.Serialization.JavaScriptSerializer._charsToEscapeRegExs=[];Sys.Serialization.JavaScriptSerializer._charsToEscape=[];Sys.Serialization.JavaScriptSerializer._dateRegEx=new RegExp('(^|[^\\\\])\\"\\\\/Date\\((-?[0-9]+)(?:[a-zA-Z]|(?:\\+|-)[0-9]{4})?\\)\\\\/\\"','g');Sys.Serialization.JavaScriptSerializer._escapeChars={};Sys.Serialization.JavaScriptSerializer._escapeRegEx=new RegExp('["\\\\\\x00-\\x1F]','i');Sys.Serialization.JavaScriptSerializer._escapeRegExGlobal=new RegExp('["\\\\\\x00-\\x1F]','g');Sys.Serialization.JavaScriptSerializer._jsonRegEx=new RegExp('[^,:{}\\[\\]0-9.\\-+Eaeflnr-u \\n\\r\\t]','g');Sys.Serialization.JavaScriptSerializer._jsonStringRegEx=new RegExp('"(\\\\.|[^"\\\\])*"','g');Sys.Serialization.JavaScriptSerializer._serverTypeFieldName='__type';Sys.Serialization.JavaScriptSerializer._init=function Sys$Serialization$JavaScriptSerializer$_init(){var replaceChars=['\\u0000','\\u0001','\\u0002','\\u0003','\\u0004','\\u0005','\\u0006','\\u0007','\\b','\\t','\\n','\\u000b','\\f','\\r','\\u000e','\\u000f','\\u0010','\\u0011','\\u0012','\\u0013','\\u0014','\\u0015','\\u0016','\\u0017','\\u0018','\\u0019','\\u001a','\\u001b','\\u001c','\\u001d','\\u001e','\\u001f'];Sys.Serialization.JavaScriptSerializer._charsToEscape[0]='\\';Sys.Serialization.JavaScriptSerializer._charsToEscapeRegExs['\\']=new RegExp('\\\\','g');Sys.Serialization.JavaScriptSerializer._escapeChars['\\']='\\\\';Sys.Serialization.JavaScriptSerializer._charsToEscape[1]='"';Sys.Serialization.JavaScriptSerializer._charsToEscapeRegExs['"']=new RegExp('"','g');Sys.Serialization.JavaScriptSerializer._escapeChars['"']='\\"';for(var i=0;i<32;i++){var c=String.fromCharCode(i);Sys.Serialization.JavaScriptSerializer._charsToEscape[i+2]=c;Sys.Serialization.JavaScriptSerializer._charsToEscapeRegExs[c]=new RegExp(c,'g');Sys.Serialization.JavaScriptSerializer._escapeChars[c]=replaceChars[i];}}
Sys.Serialization.JavaScriptSerializer._serializeBooleanWithBuilder=function Sys$Serialization$JavaScriptSerializer$_serializeBooleanWithBuilder(object,stringBuilder){stringBuilder.append(object.toString());}
Sys.Serialization.JavaScriptSerializer._serializeNumberWithBuilder=function Sys$Serialization$JavaScriptSerializer$_serializeNumberWithBuilder(object,stringBuilder){if(isFinite(object)){stringBuilder.append(String(object));}
else{throw Error.invalidOperation(Sys.Res.cannotSerializeNonFiniteNumbers);}}
Sys.Serialization.JavaScriptSerializer._serializeStringWithBuilder=function Sys$Serialization$JavaScriptSerializer$_serializeStringWithBuilder(string,stringBuilder){stringBuilder.append('"');if(Sys.Serialization.JavaScriptSerializer._escapeRegEx.test(string)){if(Sys.Serialization.JavaScriptSerializer._charsToEscape.length===0){Sys.Serialization.JavaScriptSerializer._init();}
if(string.length<128){string=string.replace(Sys.Serialization.JavaScriptSerializer._escapeRegExGlobal,function(x){return Sys.Serialization.JavaScriptSerializer._escapeChars[x];});}
else{for(var i=0;i<34;i++){var c=Sys.Serialization.JavaScriptSerializer._charsToEscape[i];if(string.indexOf(c)!==-1){if(Sys.Browser.agent===Sys.Browser.Opera||Sys.Browser.agent===Sys.Browser.FireFox){string=string.split(c).join(Sys.Serialization.JavaScriptSerializer._escapeChars[c]);}
else{string=string.replace(Sys.Serialization.JavaScriptSerializer._charsToEscapeRegExs[c],Sys.Serialization.JavaScriptSerializer._escapeChars[c]);}}}}}
stringBuilder.append(string);stringBuilder.append('"');}
Sys.Serialization.JavaScriptSerializer._serializeWithBuilder=function Sys$Serialization$JavaScriptSerializer$_serializeWithBuilder(object,stringBuilder,sort,prevObjects){var i;switch(typeof object){case'object':if(object){if(prevObjects){for(var j=0;j<prevObjects.length;j++){if(prevObjects[j]===object){throw Error.invalidOperation(Sys.Res.cannotSerializeObjectWithCycle);}}}
else{prevObjects=new Array();}
try{Array.add(prevObjects,object);if(Number.isInstanceOfType(object)){Sys.Serialization.JavaScriptSerializer._serializeNumberWithBuilder(object,stringBuilder);}
else if(Boolean.isInstanceOfType(object)){Sys.Serialization.JavaScriptSerializer._serializeBooleanWithBuilder(object,stringBuilder);}
else if(String.isInstanceOfType(object)){Sys.Serialization.JavaScriptSerializer._serializeStringWithBuilder(object,stringBuilder);}
else if(Array.isInstanceOfType(object)){stringBuilder.append('[');for(i=0;i<object.length;++i){if(i>0){stringBuilder.append(',');}
Sys.Serialization.JavaScriptSerializer._serializeWithBuilder(object[i],stringBuilder,false,prevObjects);}
stringBuilder.append(']');}
else{if(Date.isInstanceOfType(object)){stringBuilder.append('"\\/Date(');stringBuilder.append(object.getTime());stringBuilder.append(')\\/"');break;}
var properties=[];var propertyCount=0;for(var name in object){if(name.startsWith('$')){continue;}
if(name===Sys.Serialization.JavaScriptSerializer._serverTypeFieldName&&propertyCount!==0){properties[propertyCount++]=properties[0];properties[0]=name;}
else{properties[propertyCount++]=name;}}
if(sort)properties.sort();stringBuilder.append('{');var needComma=false;for(i=0;i<propertyCount;i++){var value=object[properties[i]];if(typeof value!=='undefined'&&typeof value!=='function'){if(needComma){stringBuilder.append(',');}
else{needComma=true;}
Sys.Serialization.JavaScriptSerializer._serializeWithBuilder(properties[i],stringBuilder,sort,prevObjects);stringBuilder.append(':');Sys.Serialization.JavaScriptSerializer._serializeWithBuilder(value,stringBuilder,sort,prevObjects);}}
stringBuilder.append('}');}}
finally{Array.removeAt(prevObjects,prevObjects.length-1);}}
else{stringBuilder.append('null');}
break;case'number':Sys.Serialization.JavaScriptSerializer._serializeNumberWithBuilder(object,stringBuilder);break;case'string':Sys.Serialization.JavaScriptSerializer._serializeStringWithBuilder(object,stringBuilder);break;case'boolean':Sys.Serialization.JavaScriptSerializer._serializeBooleanWithBuilder(object,stringBuilder);break;default:stringBuilder.append('null');break;}}
Sys.Serialization.JavaScriptSerializer.serialize=function Sys$Serialization$JavaScriptSerializer$serialize(object){var e=Function._validateParams(arguments,[{name:"object",mayBeNull:true}]);if(e)throw e;var stringBuilder=new Sys.StringBuilder();Sys.Serialization.JavaScriptSerializer._serializeWithBuilder(object,stringBuilder,false);return stringBuilder.toString();}
Sys.Serialization.JavaScriptSerializer.deserialize=function Sys$Serialization$JavaScriptSerializer$deserialize(data,secure){var e=Function._validateParams(arguments,[{name:"data",type:String},{name:"secure",type:Boolean,optional:true}]);if(e)throw e;if(data.length===0)throw Error.argument('data',Sys.Res.cannotDeserializeEmptyString);try{var exp=data.replace(Sys.Serialization.JavaScriptSerializer._dateRegEx,"$1new Date($2)");if(secure&&Sys.Serialization.JavaScriptSerializer._jsonRegEx.test(exp.replace(Sys.Serialization.JavaScriptSerializer._jsonStringRegEx,'')))throw null;return eval('('+exp+')');}
catch(e){throw Error.argument('data',Sys.Res.cannotDeserializeInvalidJson);}}
Sys.CultureInfo=function Sys$CultureInfo(name,numberFormat,dateTimeFormat){var e=Function._validateParams(arguments,[{name:"name",type:String},{name:"numberFormat",type:Object},{name:"dateTimeFormat",type:Object}]);if(e)throw e;this.name=name;this.numberFormat=numberFormat;this.dateTimeFormat=dateTimeFormat;}
function Sys$CultureInfo$_getDateTimeFormats(){if(!this._dateTimeFormats){var dtf=this.dateTimeFormat;this._dateTimeFormats=[dtf.MonthDayPattern,dtf.YearMonthPattern,dtf.ShortDatePattern,dtf.ShortTimePattern,dtf.LongDatePattern,dtf.LongTimePattern,dtf.FullDateTimePattern,dtf.RFC1123Pattern,dtf.SortableDateTimePattern,dtf.UniversalSortableDateTimePattern];}
return this._dateTimeFormats;}
function Sys$CultureInfo$_getMonthIndex(value){if(!this._upperMonths){this._upperMonths=this._toUpperArray(this.dateTimeFormat.MonthNames);}
return Array.indexOf(this._upperMonths,this._toUpper(value));}
function Sys$CultureInfo$_getAbbrMonthIndex(value){if(!this._upperAbbrMonths){this._upperAbbrMonths=this._toUpperArray(this.dateTimeFormat.AbbreviatedMonthNames);}
return Array.indexOf(this._upperAbbrMonths,this._toUpper(value));}
function Sys$CultureInfo$_getDayIndex(value){if(!this._upperDays){this._upperDays=this._toUpperArray(this.dateTimeFormat.DayNames);}
return Array.indexOf(this._upperDays,this._toUpper(value));}
function Sys$CultureInfo$_getAbbrDayIndex(value){if(!this._upperAbbrDays){this._upperAbbrDays=this._toUpperArray(this.dateTimeFormat.AbbreviatedDayNames);}
return Array.indexOf(this._upperAbbrDays,this._toUpper(value));}
function Sys$CultureInfo$_toUpperArray(arr){var result=[];for(var i=0,il=arr.length;i<il;i++){result[i]=this._toUpper(arr[i]);}
return result;}
function Sys$CultureInfo$_toUpper(value){return value.split("\u00A0").join(' ').toUpperCase();}
Sys.CultureInfo.prototype={_getDateTimeFormats:Sys$CultureInfo$_getDateTimeFormats,_getMonthIndex:Sys$CultureInfo$_getMonthIndex,_getAbbrMonthIndex:Sys$CultureInfo$_getAbbrMonthIndex,_getDayIndex:Sys$CultureInfo$_getDayIndex,_getAbbrDayIndex:Sys$CultureInfo$_getAbbrDayIndex,_toUpperArray:Sys$CultureInfo$_toUpperArray,_toUpper:Sys$CultureInfo$_toUpper}
Sys.CultureInfo._parse=function Sys$CultureInfo$_parse(value){var cultureInfo=Sys.Serialization.JavaScriptSerializer.deserialize(value);return new Sys.CultureInfo(cultureInfo.name,cultureInfo.numberFormat,cultureInfo.dateTimeFormat);}
Sys.CultureInfo.registerClass('Sys.CultureInfo');Sys.CultureInfo.InvariantCulture=Sys.CultureInfo._parse('{"name":"","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":".","IsReadOnly":true,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":",","CurrencySymbol":"\u00A4","NaNSymbol":"NaN","CurrencyNegativePattern":0,"NumberNegativePattern":1,"PercentPositivePattern":0,"PercentNegativePattern":0,"NegativeInfinitySymbol":"-Infinity","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":".","NumberGroupSeparator":",","CurrencyPositivePattern":0,"PositiveInfinitySymbol":"Infinity","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":".","PercentGroupSeparator":",","PercentSymbol":"%","PerMilleSymbol":"\u2030","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"AM","Calendar":{"MinSupportedDateTime":"@-62135568000000@","MaxSupportedDateTime":"@253402300799999@","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":true},"DateSeparator":"/","FirstDayOfWeek":0,"CalendarWeekRule":0,"FullDateTimePattern":"dddd, dd MMMM yyyy HH:mm:ss","LongDatePattern":"dddd, dd MMMM yyyy","LongTimePattern":"HH:mm:ss","MonthDayPattern":"MMMM dd","PMDesignator":"PM","RFC1123Pattern":"ddd, dd MMM yyyy HH\':\'mm\':\'ss \'GMT\'","ShortDatePattern":"MM/dd/yyyy","ShortTimePattern":"HH:mm","SortableDateTimePattern":"yyyy\'-\'MM\'-\'dd\'T\'HH\':\'mm\':\'ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\'-\'MM\'-\'dd HH\':\'mm\':\'ss\'Z\'","YearMonthPattern":"yyyy MMMM","AbbreviatedDayNames":["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],"ShortestDayNames":["Su","Mo","Tu","We","Th","Fr","Sa"],"DayNames":["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],"AbbreviatedMonthNames":["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec",""],"MonthNames":["January","February","March","April","May","June","July","August","September","October","November","December",""],"IsReadOnly":true,"NativeCalendarName":"Gregorian Calendar","AbbreviatedMonthGenitiveNames":["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec",""],"MonthGenitiveNames":["January","February","March","April","May","June","July","August","September","October","November","December",""]}}');if(typeof(__cultureInfo)==='undefined'){var __cultureInfo='{"name":"en-US","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":".","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":",","CurrencySymbol":"$","NaNSymbol":"NaN","CurrencyNegativePattern":0,"NumberNegativePattern":1,"PercentPositivePattern":0,"PercentNegativePattern":0,"NegativeInfinitySymbol":"-Infinity","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":".","NumberGroupSeparator":",","CurrencyPositivePattern":0,"PositiveInfinitySymbol":"Infinity","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":".","PercentGroupSeparator":",","PercentSymbol":"%","PerMilleSymbol":"\u2030","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"AM","Calendar":{"MinSupportedDateTime":"@-62135568000000@","MaxSupportedDateTime":"@253402300799999@","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":"/","FirstDayOfWeek":0,"CalendarWeekRule":0,"FullDateTimePattern":"dddd, MMMM dd, yyyy h:mm:ss tt","LongDatePattern":"dddd, MMMM dd, yyyy","LongTimePattern":"h:mm:ss tt","MonthDayPattern":"MMMM dd","PMDesignator":"PM","RFC1123Pattern":"ddd, dd MMM yyyy HH\':\'mm\':\'ss \'GMT\'","ShortDatePattern":"M/d/yyyy","ShortTimePattern":"h:mm tt","SortableDateTimePattern":"yyyy\'-\'MM\'-\'dd\'T\'HH\':\'mm\':\'ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\'-\'MM\'-\'dd HH\':\'mm\':\'ss\'Z\'","YearMonthPattern":"MMMM, yyyy","AbbreviatedDayNames":["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],"ShortestDayNames":["Su","Mo","Tu","We","Th","Fr","Sa"],"DayNames":["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],"AbbreviatedMonthNames":["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec",""],"MonthNames":["January","February","March","April","May","June","July","August","September","October","November","December",""],"IsReadOnly":false,"NativeCalendarName":"Gregorian Calendar","AbbreviatedMonthGenitiveNames":["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec",""],"MonthGenitiveNames":["January","February","March","April","May","June","July","August","September","October","November","December",""]}}';}
Sys.CultureInfo.CurrentCulture=Sys.CultureInfo._parse(__cultureInfo);delete __cultureInfo;Sys.UI.Behavior=function Sys$UI$Behavior(element){var e=Function._validateParams(arguments,[{name:"element",domElement:true}]);if(e)throw e;Sys.UI.Behavior.initializeBase(this);this._element=element;var behaviors=element._behaviors;if(!behaviors){element._behaviors=[this];}
else{behaviors[behaviors.length]=this;}}
function Sys$UI$Behavior$get_element(){if(arguments.length!==0)throw Error.parameterCount();return this._element;}
function Sys$UI$Behavior$get_id(){if(arguments.length!==0)throw Error.parameterCount();var baseId=Sys.UI.Behavior.callBaseMethod(this,'get_id');if(baseId)return baseId;if(!this._element||!this._element.id)return'';return this._element.id+'$'+this.get_name();}
function Sys$UI$Behavior$get_name(){if(arguments.length!==0)throw Error.parameterCount();if(this._name)return this._name;var name=Object.getTypeName(this);var i=name.lastIndexOf('.');if(i!=-1)name=name.substr(i+1);if(!this.get_isInitialized())this._name=name;return name;}
function Sys$UI$Behavior$set_name(value){var e=Function._validateParams(arguments,[{name:"value",type:String}]);if(e)throw e;if((value==='')||(value.charAt(0)===' ')||(value.charAt(value.length-1)===' '))
throw Error.argument('value',Sys.Res.invalidId);if(typeof(this._element[value])!=='undefined')
throw Error.invalidOperation(String.format(Sys.Res.behaviorDuplicateName,value));if(this.get_isInitialized())throw Error.invalidOperation(Sys.Res.cantSetNameAfterInit);this._name=value;}
function Sys$UI$Behavior$initialize(){Sys.UI.Behavior.callBaseMethod(this,'initialize');var name=this.get_name();if(name)this._element[name]=this;}
function Sys$UI$Behavior$dispose(){Sys.UI.Behavior.callBaseMethod(this,'dispose');if(this._element){var name=this.get_name();if(name){this._element[name]=null;}
Array.remove(this._element._behaviors,this);delete this._element;}}
Sys.UI.Behavior.prototype={_name:null,get_element:Sys$UI$Behavior$get_element,get_id:Sys$UI$Behavior$get_id,get_name:Sys$UI$Behavior$get_name,set_name:Sys$UI$Behavior$set_name,initialize:Sys$UI$Behavior$initialize,dispose:Sys$UI$Behavior$dispose}
Sys.UI.Behavior.registerClass('Sys.UI.Behavior',Sys.Component);Sys.UI.Behavior.getBehaviorByName=function Sys$UI$Behavior$getBehaviorByName(element,name){var e=Function._validateParams(arguments,[{name:"element",domElement:true},{name:"name",type:String}]);if(e)throw e;var b=element[name];return(b&&Sys.UI.Behavior.isInstanceOfType(b))?b:null;}
Sys.UI.Behavior.getBehaviors=function Sys$UI$Behavior$getBehaviors(element){var e=Function._validateParams(arguments,[{name:"element",domElement:true}]);if(e)throw e;if(!element._behaviors)return[];return Array.clone(element._behaviors);}
Sys.UI.Behavior.getBehaviorsByType=function Sys$UI$Behavior$getBehaviorsByType(element,type){var e=Function._validateParams(arguments,[{name:"element",domElement:true},{name:"type",type:Type}]);if(e)throw e;var behaviors=element._behaviors;var results=[];if(behaviors){for(var i=0,l=behaviors.length;i<l;i++){if(type.isInstanceOfType(behaviors[i])){results[results.length]=behaviors[i];}}}
return results;}
Sys.UI.VisibilityMode=function Sys$UI$VisibilityMode(){if(arguments.length!==0)throw Error.parameterCount();throw Error.notImplemented();}
Sys.UI.VisibilityMode.prototype={hide:0,collapse:1}
Sys.UI.VisibilityMode.registerEnum("Sys.UI.VisibilityMode");Sys.UI.Control=function Sys$UI$Control(element){var e=Function._validateParams(arguments,[{name:"element",domElement:true}]);if(e)throw e;if(typeof(element.control)!='undefined')throw Error.invalidOperation(Sys.Res.controlAlreadyDefined);Sys.UI.Control.initializeBase(this);this._element=element;element.control=this;}
function Sys$UI$Control$get_element(){if(arguments.length!==0)throw Error.parameterCount();return this._element;}
function Sys$UI$Control$get_id(){if(arguments.length!==0)throw Error.parameterCount();if(!this._element)return'';return this._element.id;}
function Sys$UI$Control$set_id(value){var e=Function._validateParams(arguments,[{name:"value",type:String}]);if(e)throw e;throw Error.invalidOperation(Sys.Res.cantSetId);}
function Sys$UI$Control$get_parent(){if(arguments.length!==0)throw Error.parameterCount();if(this._parent)return this._parent;if(!this._element)return null;var parentElement=this._element.parentNode;while(parentElement){if(parentElement.control){return parentElement.control;}
parentElement=parentElement.parentNode;}
return null;}
function Sys$UI$Control$set_parent(value){var e=Function._validateParams(arguments,[{name:"value",type:Sys.UI.Control}]);if(e)throw e;if(!this._element)throw Error.invalidOperation(Sys.Res.cantBeCalledAfterDispose);var parents=[this];var current=value;while(current){if(Array.contains(parents,current))throw Error.invalidOperation(Sys.Res.circularParentChain);parents[parents.length]=current;current=current.get_parent();}
this._parent=value;}
function Sys$UI$Control$get_visibilityMode(){if(arguments.length!==0)throw Error.parameterCount();if(!this._element)throw Error.invalidOperation(Sys.Res.cantBeCalledAfterDispose);return Sys.UI.DomElement.getVisibilityMode(this._element);}
function Sys$UI$Control$set_visibilityMode(value){var e=Function._validateParams(arguments,[{name:"value",type:Sys.UI.VisibilityMode}]);if(e)throw e;if(!this._element)throw Error.invalidOperation(Sys.Res.cantBeCalledAfterDispose);Sys.UI.DomElement.setVisibilityMode(this._element,value);}
function Sys$UI$Control$get_visible(){if(arguments.length!==0)throw Error.parameterCount();if(!this._element)throw Error.invalidOperation(Sys.Res.cantBeCalledAfterDispose);return Sys.UI.DomElement.getVisible(this._element);}
function Sys$UI$Control$set_visible(value){var e=Function._validateParams(arguments,[{name:"value",type:Boolean}]);if(e)throw e;if(!this._element)throw Error.invalidOperation(Sys.Res.cantBeCalledAfterDispose);Sys.UI.DomElement.setVisible(this._element,value)}
function Sys$UI$Control$addCssClass(className){var e=Function._validateParams(arguments,[{name:"className",type:String}]);if(e)throw e;if(!this._element)throw Error.invalidOperation(Sys.Res.cantBeCalledAfterDispose);Sys.UI.DomElement.addCssClass(this._element,className);}
function Sys$UI$Control$dispose(){Sys.UI.Control.callBaseMethod(this,'dispose');if(this._element){this._element.control=undefined;delete this._element;}
if(this._parent)delete this._parent;}
function Sys$UI$Control$onBubbleEvent(source,args){var e=Function._validateParams(arguments,[{name:"source"},{name:"args",type:Sys.EventArgs}]);if(e)throw e;return false;}
function Sys$UI$Control$raiseBubbleEvent(source,args){var e=Function._validateParams(arguments,[{name:"source"},{name:"args",type:Sys.EventArgs}]);if(e)throw e;var currentTarget=this.get_parent();while(currentTarget){if(currentTarget.onBubbleEvent(source,args)){return;}
currentTarget=currentTarget.get_parent();}}
function Sys$UI$Control$removeCssClass(className){var e=Function._validateParams(arguments,[{name:"className",type:String}]);if(e)throw e;if(!this._element)throw Error.invalidOperation(Sys.Res.cantBeCalledAfterDispose);Sys.UI.DomElement.removeCssClass(this._element,className);}
function Sys$UI$Control$toggleCssClass(className){var e=Function._validateParams(arguments,[{name:"className",type:String}]);if(e)throw e;if(!this._element)throw Error.invalidOperation(Sys.Res.cantBeCalledAfterDispose);Sys.UI.DomElement.toggleCssClass(this._element,className);}
Sys.UI.Control.prototype={_parent:null,_visibilityMode:Sys.UI.VisibilityMode.hide,get_element:Sys$UI$Control$get_element,get_id:Sys$UI$Control$get_id,set_id:Sys$UI$Control$set_id,get_parent:Sys$UI$Control$get_parent,set_parent:Sys$UI$Control$set_parent,get_visibilityMode:Sys$UI$Control$get_visibilityMode,set_visibilityMode:Sys$UI$Control$set_visibilityMode,get_visible:Sys$UI$Control$get_visible,set_visible:Sys$UI$Control$set_visible,addCssClass:Sys$UI$Control$addCssClass,dispose:Sys$UI$Control$dispose,onBubbleEvent:Sys$UI$Control$onBubbleEvent,raiseBubbleEvent:Sys$UI$Control$raiseBubbleEvent,removeCssClass:Sys$UI$Control$removeCssClass,toggleCssClass:Sys$UI$Control$toggleCssClass}
Sys.UI.Control.registerClass('Sys.UI.Control',Sys.Component);Type.registerNamespace('Sys');Sys.Res={"urlMustBeLessThan1024chars":"历史记录状态必须足够小，以免使 url 大于 1024 个字符。","argumentTypeName":"值不是现有类型的名称。","methodRegisteredTwice":"方法 {0} 已经被注册。","cantSetIdAfterInit":"初始化后无法在此对象上设置 ID 属性。","cantBeCalledAfterDispose":"无法在释放之后调用。","componentCantSetIdAfterAddedToApp":"在组件已添加到 Application 对象后，将无法设置组件的 ID 属性。","behaviorDuplicateName":"名称为“{0}”的行为已存在，或者它是目标元素上现有属性的名称。","notATypeName":"值不是有效的类型名称。","typeShouldBeTypeOrString":"值不是有效的类型或有效的类型名称。","historyInvalidHistorySettingCombination":"无法在 ScriptManager.EnableHistory 为 true 时将 enableHistory 设置为 false。","stateMustBeStringDictionary":"状态对象只能具有 null 和字符串字段。","boolTrueOrFalse":"值必须为“true”或“false”。","scriptLoadFailedNoHead":"ScriptLoader 要求页面包含 \u003chead\u003e 元素。","stringFormatInvalid":"格式字符串无效。","referenceNotFound":"找不到组件“{0}”。","enumReservedName":"“{0}”是不能用作枚举值名称的保留名称。","eventHandlerNotFound":"找不到处理程序。","circularParentChain":"控件父项链不能具有循环引用。","undefinedEvent":"“{0}”不是事件。","notAMethod":"{0} 不是方法。","propertyUndefined":"“{0}”不是属性或现有字段。","historyCannotEnableHistory":"无法在初始化之后设置 enableHistory。","eventHandlerInvalid":"未通过 Sys.UI.DomEvent.addHandler 方法添加处理程序。","scriptLoadFailedDebug":"脚本“{0}”未能加载。请检查:\r\n 不可访问的路径。\r\n 脚本错误。(IE)在高级设置下启用“显示每个脚本错误的通知”。\r\n 缺少对 Sys.Application.notifyScriptLoaded() 的调用。","propertyNotWritable":"“{0}”不是可写的属性。","enumInvalidValueName":"对于枚举值，“{0}”不是有效的名称。","controlAlreadyDefined":"控件已与元素关联。","addHandlerCantBeUsedForError":"不能使用此方法添加错误事件的处理程序。请改为设置 window.onerror 属性。","namespaceContainsObject":"对象 {0} 已存在，并且不是命名空间。","cantAddNonFunctionhandler":"无法添加不是函数的处理程序。","invalidNameSpace":"值不是有效的命名空间标识符。","notAnInterface":"值不是有效的接口。","eventHandlerNotFunction":"处理程序必须为函数。","propertyNotAnArray":"“{0}”不是数组属性。","typeRegisteredTwice":"类型 {0} 已经被注册。可以已定义了类型多次，或者定义类型的脚本文件可能已加载。原因可能是在不完全更新过程中更改了设置。","cantSetNameAfterInit":"初始化后无法在此对象上设置名称属性。","historyMissingFrame":"为了使历史记录功能在 IE 中起作用，页面必须具有一个 iFrame 元素，该元素的 id“__historyFrame”指向一个从“title”查询字符串参数获取其标题并调用父窗口上的 Sys.Application._onIFrameLoad() 的页面。在 ScriptManager 上将 EnableHistory 设置为 true，可以做到这一点。","appDuplicateComponent":"无法将具有相同 ID“{0}”的两个组件添加到应用程序。","historyCannotAddHistoryPointWithHistoryDisabled":"仅当 enableHistory 设置为 true 时才能添加历史时间点。","appComponentMustBeInitialized":"必须先初始化组件，然后才能将它们添加到 Application 对象。","baseNotAClass":"值不是类。","methodNotFound":"找不到名为“{0}”的方法。","arrayParseBadFormat":"值必须是数组的有效字符串表示形式。它必须以“[”开头并以“]”结尾。","stateFieldNameInvalid":"状态字段名称不能包含任何“=”字符。","cantSetId":"无法在此对象上设置 ID 属性。","historyMissingHiddenInput":"为了使历史记录功能在 Safari 2 中起作用，页面必须具有 id 为“__history”的隐藏输入元素。","stringFormatBraceMismatch":"格式字符串包含不匹配的左大括号或右大括号。","enumValueNotInteger":"枚举定义只能包含整数值。","propertyNullOrUndefined":"无法设置“{0}”的属性，因为它返回了 null 值。","argumentDomNode":"值必须为 DOM 元素或文本节点。","componentCantSetIdTwice":"无法多次设置组件的 ID 属性。","createComponentOnDom":"对于不是控件或行为的组件，值必须为 null。","createNotComponent":"{0} 不从 Sys.Component 派生。","createNoDom":"对于控件和行为，值不能为 null。","cantAddWithoutId":"无法添加没有 ID 的组件。","badTypeName":"值不是所注册类型的名称，或者名称是保留字。","argumentInteger":"值必须为整数。","scriptLoadMultipleCallbacks":"脚本“{0}”包含对 Sys.Application.notifyScriptLoaded() 的多个调用。只允许一个调用。","invokeCalledTwice":"无法调用 invoke 多次。","webServiceFailed":"服务器方法“{0}”失败，并发生以下错误: {1}","webServiceInvalidJsonWrapper":"服务器方法“{0}”返回的数据无效。JSON 包装缺少“d”属性。","argumentType":"无法将对象转换为所需类型。","argumentNull":"值不能为 null。","controlCantSetId":"无法在控件上设置 ID 属性。","formatBadFormatSpecifier":"格式说明符无效。","webServiceFailedNoMsg":"服务器方法“{0}”失败。","argumentDomElement":"值必须为 DOM 元素。","invalidExecutorType":"无法从 {0} 中创建有效的 Sys.Net.WebRequestExecutor。","cannotCallBeforeResponse":"responseAvailable 为 false 时无法调用 {0}。","actualValue":"实际值是 {0}。","enumInvalidValue":"“{0}”对于枚举 {1} 不是有效的值。","scriptLoadFailed":"无法加载脚本“{0}”。","parameterCount":"参数计数不匹配。","cannotDeserializeEmptyString":"无法反序列化空字符串。","formatInvalidString":"输入字符串的格式不正确。","invalidTimeout":"值必须大于或等于零。","cannotAbortBeforeStart":"执行器尚未启动时无法中止。","argument":"值不在预期的范围内。","cannotDeserializeInvalidJson":"无法反序列化。数据未对应于有效的 JSON。","invalidHttpVerb":"httpVerb 不能设置为空字符串或 null 字符串。","nullWebRequest":"无法调用带有 null webRequest 的 executeRequest。","eventHandlerInvalid":"未通过 Sys.UI.DomEvent.addHandler 方法添加处理程序。","cannotSerializeNonFiniteNumbers":"无法序列化无限数。","argumentUndefined":"值不能是未定义的。","webServiceInvalidReturnType":"服务器方法“{0}”返回了无效类型。期望的类型: {1}","servicePathNotSet":"尚未设置 Web 服务的路径。","argumentTypeWithTypes":"类型“{0}”的对象无法转换为类型“{1}”。","cannotCallOnceStarted":"启动后将无法调用 {0}。","badBaseUrl1":"基 URL 不包含 ://。","badBaseUrl2":"基 URL 不包含另一个 /。","badBaseUrl3":"在基 URL 中找不到最后一个 /。","setExecutorAfterActive":"无法在执行器已激活之后对其进行设置。","paramName":"参数名: {0}","cannotCallOutsideHandler":"无法在完成的事件处理程序外部调用 {0}。","cannotSerializeObjectWithCycle":"无法序列化子属性中具有循环引用的对象。","format":"已标识项中有一项的格式无效。","assertFailedCaller":"断言失败: {0}\r\n位置为 {1}","argumentOutOfRange":"指定的参数已超出有效值的范围。","webServiceTimedOut":"服务器方法“{0}”已超时。","notImplemented":"方法或操作未实现。","assertFailed":"断言失败: {0}","invalidOperation":"对象的当前状态使该操作无效。","breakIntoDebugger":"{0}\r\n\r\n是否中断至调试器?"};if(typeof(Sys)!=='undefined')Sys.Application.notifyScriptLoaded();Type.registerNamespace('Sys.WebForms');Sys.WebForms.BeginRequestEventArgs=function Sys$WebForms$BeginRequestEventArgs(request,postBackElement){var e=Function._validateParams(arguments,[{name:"request",type:Sys.Net.WebRequest},{name:"postBackElement",mayBeNull:true,domElement:true}]);if(e)throw e;Sys.WebForms.BeginRequestEventArgs.initializeBase(this);this._request=request;this._postBackElement=postBackElement;}
function Sys$WebForms$BeginRequestEventArgs$get_postBackElement(){if(arguments.length!==0)throw Error.parameterCount();return this._postBackElement;}
function Sys$WebForms$BeginRequestEventArgs$get_request(){if(arguments.length!==0)throw Error.parameterCount();return this._request;}
Sys.WebForms.BeginRequestEventArgs.prototype={get_postBackElement:Sys$WebForms$BeginRequestEventArgs$get_postBackElement,get_request:Sys$WebForms$BeginRequestEventArgs$get_request}
Sys.WebForms.BeginRequestEventArgs.registerClass('Sys.WebForms.BeginRequestEventArgs',Sys.EventArgs);Sys.WebForms.EndRequestEventArgs=function Sys$WebForms$EndRequestEventArgs(error,dataItems,response){var e=Function._validateParams(arguments,[{name:"error",type:Error,mayBeNull:true},{name:"dataItems",type:Object,mayBeNull:true},{name:"response",type:Sys.Net.WebRequestExecutor}]);if(e)throw e;Sys.WebForms.EndRequestEventArgs.initializeBase(this);this._errorHandled=false;this._error=error;this._dataItems=dataItems||new Object();this._response=response;}
function Sys$WebForms$EndRequestEventArgs$get_dataItems(){if(arguments.length!==0)throw Error.parameterCount();return this._dataItems;}
function Sys$WebForms$EndRequestEventArgs$get_error(){if(arguments.length!==0)throw Error.parameterCount();return this._error;}
function Sys$WebForms$EndRequestEventArgs$get_errorHandled(){if(arguments.length!==0)throw Error.parameterCount();return this._errorHandled;}
function Sys$WebForms$EndRequestEventArgs$set_errorHandled(value){var e=Function._validateParams(arguments,[{name:"value",type:Boolean}]);if(e)throw e;this._errorHandled=value;}
function Sys$WebForms$EndRequestEventArgs$get_response(){if(arguments.length!==0)throw Error.parameterCount();return this._response;}
Sys.WebForms.EndRequestEventArgs.prototype={get_dataItems:Sys$WebForms$EndRequestEventArgs$get_dataItems,get_error:Sys$WebForms$EndRequestEventArgs$get_error,get_errorHandled:Sys$WebForms$EndRequestEventArgs$get_errorHandled,set_errorHandled:Sys$WebForms$EndRequestEventArgs$set_errorHandled,get_response:Sys$WebForms$EndRequestEventArgs$get_response}
Sys.WebForms.EndRequestEventArgs.registerClass('Sys.WebForms.EndRequestEventArgs',Sys.EventArgs);Sys.WebForms.InitializeRequestEventArgs=function Sys$WebForms$InitializeRequestEventArgs(request,postBackElement){var e=Function._validateParams(arguments,[{name:"request",type:Sys.Net.WebRequest},{name:"postBackElement",mayBeNull:true,domElement:true}]);if(e)throw e;Sys.WebForms.InitializeRequestEventArgs.initializeBase(this);this._request=request;this._postBackElement=postBackElement;}
function Sys$WebForms$InitializeRequestEventArgs$get_postBackElement(){if(arguments.length!==0)throw Error.parameterCount();return this._postBackElement;}
function Sys$WebForms$InitializeRequestEventArgs$get_request(){if(arguments.length!==0)throw Error.parameterCount();return this._request;}
Sys.WebForms.InitializeRequestEventArgs.prototype={get_postBackElement:Sys$WebForms$InitializeRequestEventArgs$get_postBackElement,get_request:Sys$WebForms$InitializeRequestEventArgs$get_request}
Sys.WebForms.InitializeRequestEventArgs.registerClass('Sys.WebForms.InitializeRequestEventArgs',Sys.CancelEventArgs);Sys.WebForms.PageLoadedEventArgs=function Sys$WebForms$PageLoadedEventArgs(panelsUpdated,panelsCreated,dataItems){var e=Function._validateParams(arguments,[{name:"panelsUpdated",type:Array},{name:"panelsCreated",type:Array},{name:"dataItems",type:Object,mayBeNull:true}]);if(e)throw e;Sys.WebForms.PageLoadedEventArgs.initializeBase(this);this._panelsUpdated=panelsUpdated;this._panelsCreated=panelsCreated;this._dataItems=dataItems||new Object();}
function Sys$WebForms$PageLoadedEventArgs$get_dataItems(){if(arguments.length!==0)throw Error.parameterCount();return this._dataItems;}
function Sys$WebForms$PageLoadedEventArgs$get_panelsCreated(){if(arguments.length!==0)throw Error.parameterCount();return this._panelsCreated;}
function Sys$WebForms$PageLoadedEventArgs$get_panelsUpdated(){if(arguments.length!==0)throw Error.parameterCount();return this._panelsUpdated;}
Sys.WebForms.PageLoadedEventArgs.prototype={get_dataItems:Sys$WebForms$PageLoadedEventArgs$get_dataItems,get_panelsCreated:Sys$WebForms$PageLoadedEventArgs$get_panelsCreated,get_panelsUpdated:Sys$WebForms$PageLoadedEventArgs$get_panelsUpdated}
Sys.WebForms.PageLoadedEventArgs.registerClass('Sys.WebForms.PageLoadedEventArgs',Sys.EventArgs);Sys.WebForms.PageLoadingEventArgs=function Sys$WebForms$PageLoadingEventArgs(panelsUpdating,panelsDeleting,dataItems){var e=Function._validateParams(arguments,[{name:"panelsUpdating",type:Array},{name:"panelsDeleting",type:Array},{name:"dataItems",type:Object,mayBeNull:true}]);if(e)throw e;Sys.WebForms.PageLoadingEventArgs.initializeBase(this);this._panelsUpdating=panelsUpdating;this._panelsDeleting=panelsDeleting;this._dataItems=dataItems||new Object();}
function Sys$WebForms$PageLoadingEventArgs$get_dataItems(){if(arguments.length!==0)throw Error.parameterCount();return this._dataItems;}
function Sys$WebForms$PageLoadingEventArgs$get_panelsDeleting(){if(arguments.length!==0)throw Error.parameterCount();return this._panelsDeleting;}
function Sys$WebForms$PageLoadingEventArgs$get_panelsUpdating(){if(arguments.length!==0)throw Error.parameterCount();return this._panelsUpdating;}
Sys.WebForms.PageLoadingEventArgs.prototype={get_dataItems:Sys$WebForms$PageLoadingEventArgs$get_dataItems,get_panelsDeleting:Sys$WebForms$PageLoadingEventArgs$get_panelsDeleting,get_panelsUpdating:Sys$WebForms$PageLoadingEventArgs$get_panelsUpdating}
Sys.WebForms.PageLoadingEventArgs.registerClass('Sys.WebForms.PageLoadingEventArgs',Sys.EventArgs);Sys.WebForms.PageRequestManager=function Sys$WebForms$PageRequestManager(){this._form=null;this._activeDefaultButton=null;this._activeDefaultButtonClicked=false;this._updatePanelIDs=null;this._updatePanelClientIDs=null;this._updatePanelHasChildrenAsTriggers=null;this._asyncPostBackControlIDs=null;this._asyncPostBackControlClientIDs=null;this._postBackControlIDs=null;this._postBackControlClientIDs=null;this._scriptManagerID=null;this._pageLoadedHandler=null;this._additionalInput=null;this._onsubmit=null;this._onSubmitStatements=[];this._originalDoPostBack=null;this._originalDoPostBackWithOptions=null;this._originalFireDefaultButton=null;this._originalDoCallback=null;this._isCrossPost=false;this._postBackSettings=null;this._request=null;this._onFormSubmitHandler=null;this._onFormElementClickHandler=null;this._onWindowUnloadHandler=null;this._asyncPostBackTimeout=null;this._controlIDToFocus=null;this._scrollPosition=null;this._processingRequest=false;this._scriptDisposes={};this._transientFields=["__VIEWSTATEENCRYPTED","__VIEWSTATEFIELDCOUNT"];}
function Sys$WebForms$PageRequestManager$_get_eventHandlerList(){if(!this._events){this._events=new Sys.EventHandlerList();}
return this._events;}
function Sys$WebForms$PageRequestManager$get_isInAsyncPostBack(){if(arguments.length!==0)throw Error.parameterCount();return this._request!==null;}
function Sys$WebForms$PageRequestManager$add_beginRequest(handler){var e=Function._validateParams(arguments,[{name:"handler",type:Function}]);if(e)throw e;this._get_eventHandlerList().addHandler("beginRequest",handler);}
function Sys$WebForms$PageRequestManager$remove_beginRequest(handler){var e=Function._validateParams(arguments,[{name:"handler",type:Function}]);if(e)throw e;this._get_eventHandlerList().removeHandler("beginRequest",handler);}
function Sys$WebForms$PageRequestManager$add_endRequest(handler){var e=Function._validateParams(arguments,[{name:"handler",type:Function}]);if(e)throw e;this._get_eventHandlerList().addHandler("endRequest",handler);}
function Sys$WebForms$PageRequestManager$remove_endRequest(handler){var e=Function._validateParams(arguments,[{name:"handler",type:Function}]);if(e)throw e;this._get_eventHandlerList().removeHandler("endRequest",handler);}
function Sys$WebForms$PageRequestManager$add_initializeRequest(handler){var e=Function._validateParams(arguments,[{name:"handler",type:Function}]);if(e)throw e;this._get_eventHandlerList().addHandler("initializeRequest",handler);}
function Sys$WebForms$PageRequestManager$remove_initializeRequest(handler){var e=Function._validateParams(arguments,[{name:"handler",type:Function}]);if(e)throw e;this._get_eventHandlerList().removeHandler("initializeRequest",handler);}
function Sys$WebForms$PageRequestManager$add_pageLoaded(handler){var e=Function._validateParams(arguments,[{name:"handler",type:Function}]);if(e)throw e;this._get_eventHandlerList().addHandler("pageLoaded",handler);}
function Sys$WebForms$PageRequestManager$remove_pageLoaded(handler){var e=Function._validateParams(arguments,[{name:"handler",type:Function}]);if(e)throw e;this._get_eventHandlerList().removeHandler("pageLoaded",handler);}
function Sys$WebForms$PageRequestManager$add_pageLoading(handler){var e=Function._validateParams(arguments,[{name:"handler",type:Function}]);if(e)throw e;this._get_eventHandlerList().addHandler("pageLoading",handler);}
function Sys$WebForms$PageRequestManager$remove_pageLoading(handler){var e=Function._validateParams(arguments,[{name:"handler",type:Function}]);if(e)throw e;this._get_eventHandlerList().removeHandler("pageLoading",handler);}
function Sys$WebForms$PageRequestManager$abortPostBack(){if(!this._processingRequest&&this._request){this._request.get_executor().abort();this._request=null;}}
function Sys$WebForms$PageRequestManager$_cancelPendingCallbacks(){for(var i=0,l=window.__pendingCallbacks.length;i<l;i++){var callback=window.__pendingCallbacks[i];if(callback){if(!callback.async){window.__synchronousCallBackIndex=-1;}
window.__pendingCallbacks[i]=null;var callbackFrameID="__CALLBACKFRAME"+i;var xmlRequestFrame=document.getElementById(callbackFrameID);if(xmlRequestFrame){xmlRequestFrame.parentNode.removeChild(xmlRequestFrame);}}}}
function Sys$WebForms$PageRequestManager$_commitControls(updatePanelData,asyncPostBackTimeout){if(updatePanelData){this._updatePanelIDs=updatePanelData.updatePanelIDs;this._updatePanelClientIDs=updatePanelData.updatePanelClientIDs;this._updatePanelHasChildrenAsTriggers=updatePanelData.updatePanelHasChildrenAsTriggers;this._asyncPostBackControlIDs=updatePanelData.asyncPostBackControlIDs;this._asyncPostBackControlClientIDs=updatePanelData.asyncPostBackControlClientIDs;this._postBackControlIDs=updatePanelData.postBackControlIDs;this._postBackControlClientIDs=updatePanelData.postBackControlClientIDs;}
if(typeof(asyncPostBackTimeout)!=='undefined'&&asyncPostBackTimeout!==null){this._asyncPostBackTimeout=asyncPostBackTimeout*1000;}}
function Sys$WebForms$PageRequestManager$_createHiddenField(id,value){var container,field=document.getElementById(id);if(field){if(!field._isContained){field.parentNode.removeChild(field);}
else{container=field.parentNode;}}
if(!container){container=document.createElement('span');container.style.cssText="display:none !important";this._form.appendChild(container);}
container.innerHTML="<input type='hidden' />";field=container.childNodes[0];field._isContained=true;field.id=field.name=id;field.value=value;}
function Sys$WebForms$PageRequestManager$_createPageRequestManagerTimeoutError(){var displayMessage="Sys.WebForms.PageRequestManagerTimeoutException: "+Sys.WebForms.Res.PRM_TimeoutError;var e=Error.create(displayMessage,{name:'Sys.WebForms.PageRequestManagerTimeoutException'});e.popStackFrame();return e;}
function Sys$WebForms$PageRequestManager$_createPageRequestManagerServerError(httpStatusCode,message){var displayMessage="Sys.WebForms.PageRequestManagerServerErrorException: "+
(message||String.format(Sys.WebForms.Res.PRM_ServerError,httpStatusCode));var e=Error.create(displayMessage,{name:'Sys.WebForms.PageRequestManagerServerErrorException',httpStatusCode:httpStatusCode});e.popStackFrame();return e;}
function Sys$WebForms$PageRequestManager$_createPageRequestManagerParserError(parserErrorMessage){var displayMessage="Sys.WebForms.PageRequestManagerParserErrorException: "+String.format(Sys.WebForms.Res.PRM_ParserError,parserErrorMessage);var e=Error.create(displayMessage,{name:'Sys.WebForms.PageRequestManagerParserErrorException'});e.popStackFrame();return e;}
function Sys$WebForms$PageRequestManager$_createPostBackSettings(async,panelID,sourceElement){return{async:async,panelID:panelID,sourceElement:sourceElement};}
function Sys$WebForms$PageRequestManager$_convertToClientIDs(source,destinationIDs,destinationClientIDs){if(source){for(var i=0,l=source.length;i<l;i++){Array.add(destinationIDs,source[i]);Array.add(destinationClientIDs,this._uniqueIDToClientID(source[i]));}}}
function Sys$WebForms$PageRequestManager$_destroyTree(element){if(element.nodeType===1){var childNodes=element.childNodes;for(var i=childNodes.length-1;i>=0;i--){var node=childNodes[i];if(node.nodeType===1){if(node.dispose&&typeof(node.dispose)==="function"){node.dispose();}
else if(node.control&&typeof(node.control.dispose)==="function"){node.control.dispose();}
var behaviors=Sys.UI.Behavior.getBehaviors(node);for(var j=behaviors.length-1;j>=0;j--){behaviors[j].dispose();}
this._destroyTree(node);}}}}
function Sys$WebForms$PageRequestManager$dispose(){if(this._form){Sys.UI.DomEvent.removeHandler(this._form,'submit',this._onFormSubmitHandler);Sys.UI.DomEvent.removeHandler(this._form,'click',this._onFormElementClickHandler);Sys.UI.DomEvent.removeHandler(window,'unload',this._onWindowUnloadHandler);Sys.UI.DomEvent.removeHandler(window,'load',this._pageLoadedHandler);}
if(this._originalDoPostBack){window.__doPostBack=this._originalDoPostBack;this._originalDoPostBack=null;}
if(this._originalDoPostBackWithOptions){window.WebForm_DoPostBackWithOptions=this._originalDoPostBackWithOptions;this._originalDoPostBackWithOptions=null;}
if(this._originalFireDefaultButton){window.WebForm_FireDefaultButton=this._originalFireDefaultButton;this._originalFireDefaultButton=null;}
if(this._originalDoCallback){window.WebForm_DoCallback=this._originalDoCallback;this._originalDoCallback=null;}
this._form=null;this._updatePanelIDs=null;this._updatePanelClientIDs=null;this._asyncPostBackControlIDs=null;this._asyncPostBackControlClientIDs=null;this._postBackControlIDs=null;this._postBackControlClientIDs=null;this._asyncPostBackTimeout=null;this._scrollPosition=null;}
function Sys$WebForms$PageRequestManager$_doCallback(eventTarget,eventArgument,eventCallback,context,errorCallback,useAsync){if(!this.get_isInAsyncPostBack()){this._originalDoCallback(eventTarget,eventArgument,eventCallback,context,errorCallback,useAsync);}}
function Sys$WebForms$PageRequestManager$_doPostBack(eventTarget,eventArgument){this._additionalInput=null;var form=this._form;if((eventTarget===null)||(typeof(eventTarget)==="undefined")||(this._isCrossPost)){this._postBackSettings=this._createPostBackSettings(false,null,null);this._isCrossPost=false;}
else{var clientID=this._uniqueIDToClientID(eventTarget);var postBackElement=document.getElementById(clientID);if(!postBackElement){if(Array.contains(this._asyncPostBackControlIDs,eventTarget)){this._postBackSettings=this._createPostBackSettings(true,this._scriptManagerID+'|'+eventTarget,null);}
else{if(Array.contains(this._postBackControlIDs,eventTarget)){this._postBackSettings=this._createPostBackSettings(false,null,null);}
else{var nearestUniqueIDMatch=this._findNearestElement(eventTarget);if(nearestUniqueIDMatch){this._postBackSettings=this._getPostBackSettings(nearestUniqueIDMatch,eventTarget);}
else{this._postBackSettings=this._createPostBackSettings(false,null,null);}}}}
else{this._postBackSettings=this._getPostBackSettings(postBackElement,eventTarget);}}
if(!this._postBackSettings.async){form.onsubmit=this._onsubmit;this._originalDoPostBack(eventTarget,eventArgument);form.onsubmit=null;return;}
form.__EVENTTARGET.value=eventTarget;form.__EVENTARGUMENT.value=eventArgument;this._onFormSubmit();}
function Sys$WebForms$PageRequestManager$_doPostBackWithOptions(options){this._isCrossPost=options&&options.actionUrl;this._originalDoPostBackWithOptions(options);}
function Sys$WebForms$PageRequestManager$_elementContains(container,element){while(element){if(element===container){return true;}
element=element.parentNode;}
return false;}
function Sys$WebForms$PageRequestManager$_endPostBack(error,executor,data){if(this._request===executor.get_webRequest()){this._processingRequest=false;this._additionalInput=null;this._request=null;}
var handler=this._get_eventHandlerList().getHandler("endRequest");var errorHandled=false;if(handler){var eventArgs=new Sys.WebForms.EndRequestEventArgs(error,data?data.dataItems:{},executor);handler(this,eventArgs);errorHandled=eventArgs.get_errorHandled();}
if(error&&!errorHandled){throw error;}}
function Sys$WebForms$PageRequestManager$_findNearestElement(uniqueID){while(uniqueID.length>0){var clientID=this._uniqueIDToClientID(uniqueID);var element=document.getElementById(clientID);if(element){return element;}
var indexOfLastDollar=uniqueID.lastIndexOf('$');if(indexOfLastDollar===-1){return null;}
uniqueID=uniqueID.substring(0,indexOfLastDollar);}
return null;}
function Sys$WebForms$PageRequestManager$_findText(text,location){var startIndex=Math.max(0,location-20);var endIndex=Math.min(text.length,location+20);return text.substring(startIndex,endIndex);}
function Sys$WebForms$PageRequestManager$_fireDefaultButton(event,target){if(event.keyCode===13){var src=event.srcElement||event.target;if(!src||(src.tagName.toLowerCase()!=="textarea")){var defaultButton=document.getElementById(target);if(defaultButton&&(typeof(defaultButton.click)!=="undefined")){this._activeDefaultButton=defaultButton;this._activeDefaultButtonClicked=false;try{defaultButton.click();}
finally{this._activeDefaultButton=null;}
event.cancelBubble=true;if(typeof(event.stopPropagation)==="function"){event.stopPropagation();}
return false;}}}
return true;}
function Sys$WebForms$PageRequestManager$_getPageLoadedEventArgs(initialLoad,data){var updated=[];var created=[];var upData=data?data.updatePanelData:null;var newIDs,childIDs,refreshedIDs;if(!upData){newIDs=this._updatePanelIDs;childIDs=null;refreshedIDs=null;}
else{newIDs=upData.updatePanelIDs;childIDs=upData.childUpdatePanelIDs;refreshedIDs=upData.panelsToRefreshIDs;}
var i,l;if(refreshedIDs){for(i=0,l=refreshedIDs.length;i<l;i++){Array.add(updated,document.getElementById(this._uniqueIDToClientID(refreshedIDs[i])));}}
for(i=0,l=newIDs.length;i<l;i++){if(initialLoad||Array.indexOf(childIDs,newIDs[i])!==-1){Array.add(created,document.getElementById(this._uniqueIDToClientID(newIDs[i])));}}
return new Sys.WebForms.PageLoadedEventArgs(updated,created,data?data.dataItems:{});}
function Sys$WebForms$PageRequestManager$_getPageLoadingEventArgs(data){var updated=[];var deleted=[];var upData=data.updatePanelData;var oldIDs=upData.oldUpdatePanelIDs;var newIDs=upData.updatePanelIDs;var childIDs=upData.childUpdatePanelIDs;var refreshedIDs=upData.panelsToRefreshIDs;var i,l;for(i=0,l=refreshedIDs.length;i<l;i++){Array.add(updated,document.getElementById(this._uniqueIDToClientID(refreshedIDs[i])));}
for(i=0,l=oldIDs.length;i<l;i++){if(Array.indexOf(refreshedIDs,oldIDs[i])===-1&&(Array.indexOf(newIDs,oldIDs[i])===-1||Array.indexOf(childIDs,oldIDs[i])>-1)){Array.add(deleted,document.getElementById(this._uniqueIDToClientID(oldIDs[i])));}}
return new Sys.WebForms.PageLoadingEventArgs(updated,deleted,data.dataItems);}
function Sys$WebForms$PageRequestManager$_getPostBackSettings(element,elementUniqueID){var originalElement=element;var proposedSettings=null;while(element){if(element.id){if(!proposedSettings&&Array.contains(this._asyncPostBackControlClientIDs,element.id)){proposedSettings=this._createPostBackSettings(true,this._scriptManagerID+'|'+elementUniqueID,originalElement);}
else{if(!proposedSettings&&Array.contains(this._postBackControlClientIDs,element.id)){return this._createPostBackSettings(false,null,null);}
else{var indexOfPanel=Array.indexOf(this._updatePanelClientIDs,element.id);if(indexOfPanel!==-1){if(this._updatePanelHasChildrenAsTriggers[indexOfPanel]){return this._createPostBackSettings(true,this._updatePanelIDs[indexOfPanel]+'|'+elementUniqueID,originalElement);}
else{return this._createPostBackSettings(true,this._scriptManagerID+'|'+elementUniqueID,originalElement);}}}}
if(!proposedSettings&&this._matchesParentIDInList(element.id,this._asyncPostBackControlClientIDs)){proposedSettings=this._createPostBackSettings(true,this._scriptManagerID+'|'+elementUniqueID,originalElement);}
else{if(!proposedSettings&&this._matchesParentIDInList(element.id,this._postBackControlClientIDs)){return this._createPostBackSettings(false,null,null);}}}
element=element.parentNode;}
if(!proposedSettings){return this._createPostBackSettings(false,null,null);}
else{return proposedSettings;}}
function Sys$WebForms$PageRequestManager$_getScrollPosition(){var d=document.documentElement;if(d&&(this._validPosition(d.scrollLeft)||this._validPosition(d.scrollTop))){return{x:d.scrollLeft,y:d.scrollTop};}
else{d=document.body;if(d&&(this._validPosition(d.scrollLeft)||this._validPosition(d.scrollTop))){return{x:d.scrollLeft,y:d.scrollTop};}
else{if(this._validPosition(window.pageXOffset)||this._validPosition(window.pageYOffset)){return{x:window.pageXOffset,y:window.pageYOffset};}
else{return{x:0,y:0};}}}}
function Sys$WebForms$PageRequestManager$_initializeInternal(scriptManagerID,formElement){if(this._prmInitialized){throw Error.invalidOperation(Sys.WebForms.Res.PRM_CannotRegisterTwice);}
this._prmInitialized=true;this._scriptManagerID=scriptManagerID;this._form=formElement;this._onsubmit=this._form.onsubmit;this._form.onsubmit=null;this._onFormSubmitHandler=Function.createDelegate(this,this._onFormSubmit);this._onFormElementClickHandler=Function.createDelegate(this,this._onFormElementClick);this._onWindowUnloadHandler=Function.createDelegate(this,this._onWindowUnload);Sys.UI.DomEvent.addHandler(this._form,'submit',this._onFormSubmitHandler);Sys.UI.DomEvent.addHandler(this._form,'click',this._onFormElementClickHandler);Sys.UI.DomEvent.addHandler(window,'unload',this._onWindowUnloadHandler);this._originalDoPostBack=window.__doPostBack;if(this._originalDoPostBack){window.__doPostBack=Function.createDelegate(this,this._doPostBack);}
this._originalDoPostBackWithOptions=window.WebForm_DoPostBackWithOptions;if(this._originalDoPostBackWithOptions){window.WebForm_DoPostBackWithOptions=Function.createDelegate(this,this._doPostBackWithOptions);}
this._originalFireDefaultButton=window.WebForm_FireDefaultButton;if(this._originalFireDefaultButton){window.WebForm_FireDefaultButton=Function.createDelegate(this,this._fireDefaultButton);}
this._originalDoCallback=window.WebForm_DoCallback;if(this._originalDoCallback){window.WebForm_DoCallback=Function.createDelegate(this,this._doCallback);}
this._pageLoadedHandler=Function.createDelegate(this,this._pageLoadedInitialLoad);Sys.UI.DomEvent.addHandler(window,'load',this._pageLoadedHandler);}
function Sys$WebForms$PageRequestManager$_matchesParentIDInList(clientID,parentIDList){for(var i=0,l=parentIDList.length;i<l;i++){if(clientID.startsWith(parentIDList[i]+"_")){return true;}}
return false;}
function Sys$WebForms$PageRequestManager$_onFormElementActive(element,offsetX,offsetY){if(element.disabled){return;}
this._postBackSettings=this._getPostBackSettings(element,element.name);if(element.name){var tagName=element.tagName.toUpperCase();if(tagName==='INPUT'){var type=element.type;if(type==='submit'){this._additionalInput=encodeURIComponent(element.name)+'='+encodeURIComponent(element.value);}
else if(type==='image'){this._additionalInput=encodeURIComponent(element.name)+'.x='+offsetX+'&'+encodeURIComponent(element.name)+'.y='+offsetY;}}
else if((tagName==='BUTTON')&&(element.name.length!==0)&&(element.type==='submit')){this._additionalInput=encodeURIComponent(element.name)+'='+encodeURIComponent(element.value);}}}
function Sys$WebForms$PageRequestManager$_onFormElementClick(evt){this._activeDefaultButtonClicked=(evt.target===this._activeDefaultButton);this._onFormElementActive(evt.target,evt.offsetX,evt.offsetY);}
function Sys$WebForms$PageRequestManager$_onFormSubmit(evt){var continueSubmit=true;var isCrossPost=this._isCrossPost;this._isCrossPost=false;var i,l;if(this._onsubmit){continueSubmit=this._onsubmit();}
if(continueSubmit){for(i=0,l=this._onSubmitStatements.length;i<l;i++){if(!this._onSubmitStatements[i]()){continueSubmit=false;break;}}}
if(!continueSubmit){if(evt){evt.preventDefault();}
return;}
var form=this._form;if(isCrossPost){return;}
if(this._activeDefaultButton&&!this._activeDefaultButtonClicked){this._onFormElementActive(this._activeDefaultButton,0,0);}
if(!this._postBackSettings.async){return;}
var formBody=new Sys.StringBuilder();formBody.append(encodeURIComponent(this._scriptManagerID)+'='+encodeURIComponent(this._postBackSettings.panelID)+'&');var count=form.elements.length;for(i=0;i<count;i++){var element=form.elements[i];var name=element.name;if(typeof(name)==="undefined"||(name===null)||(name.length===0)||(name===this._scriptManagerID)){continue;}
var tagName=element.tagName.toUpperCase();if(tagName==='INPUT'){var type=element.type;if((type==='text')||(type==='password')||(type==='hidden')||(((type==='checkbox')||(type==='radio'))&&element.checked)){formBody.append(encodeURIComponent(name));formBody.append('=');formBody.append(encodeURIComponent(element.value));formBody.append('&');}}
else if(tagName==='SELECT'){var optionCount=element.options.length;for(var j=0;j<optionCount;j++){var option=element.options[j];if(option.selected){formBody.append(encodeURIComponent(name));formBody.append('=');formBody.append(encodeURIComponent(option.value));formBody.append('&');}}}
else if(tagName==='TEXTAREA'){formBody.append(encodeURIComponent(name));formBody.append('=');formBody.append(encodeURIComponent(element.value));formBody.append('&');}}
formBody.append("__ASYNCPOST=true&");if(this._additionalInput){formBody.append(this._additionalInput);this._additionalInput=null;}
var request=new Sys.Net.WebRequest();var action=form.action;if(Sys.Browser.agent===Sys.Browser.InternetExplorer){var fragmentIndex=action.indexOf('#');if(fragmentIndex!==-1){action=action.substr(0,fragmentIndex);}
var queryIndex=action.indexOf('?');if(queryIndex!==-1){var path=action.substr(0,queryIndex);if(path.indexOf("%")===-1){action=encodeURI(path)+action.substr(queryIndex);}}
else if(action.indexOf("%")===-1){action=encodeURI(action);}}
request.set_url(action);request.get_headers()['X-MicrosoftAjax']='Delta=true';request.get_headers()['Cache-Control']='no-cache';request.set_timeout(this._asyncPostBackTimeout);request.add_completed(Function.createDelegate(this,this._onFormSubmitCompleted));request.set_body(formBody.toString());var eventArgs,handler=this._get_eventHandlerList().getHandler("initializeRequest");if(handler){eventArgs=new Sys.WebForms.InitializeRequestEventArgs(request,this._postBackSettings.sourceElement);handler(this,eventArgs);continueSubmit=!eventArgs.get_cancel();}
if(!continueSubmit){if(evt){evt.preventDefault();}
return;}
this._scrollPosition=this._getScrollPosition();this.abortPostBack();handler=this._get_eventHandlerList().getHandler("beginRequest");if(handler){eventArgs=new Sys.WebForms.BeginRequestEventArgs(request,this._postBackSettings.sourceElement);handler(this,eventArgs);}
if(this._originalDoCallback){this._cancelPendingCallbacks();}
this._request=request;this._processingRequest=false;request.invoke();if(evt){evt.preventDefault();}}
function Sys$WebForms$PageRequestManager$_onFormSubmitCompleted(sender,eventArgs){this._processingRequest=true;if(sender.get_timedOut()){this._endPostBack(this._createPageRequestManagerTimeoutError(),sender,null);return;}
if(sender.get_aborted()){this._endPostBack(null,sender,null);return;}
if(!this._request||(sender.get_webRequest()!==this._request)){return;}
if(sender.get_statusCode()!==200){this._endPostBack(this._createPageRequestManagerServerError(sender.get_statusCode()),sender,null);return;}
var data=this._parseDelta(sender);if(!data)return;var i,l;if(data.asyncPostBackControlIDsNode&&data.postBackControlIDsNode&&data.updatePanelIDsNode&&data.panelsToRefreshNode&&data.childUpdatePanelIDsNode){var oldUpdatePanelIDs=this._updatePanelIDs;var childUpdatePanelIDsString=data.childUpdatePanelIDsNode.content;var childUpdatePanelIDs=childUpdatePanelIDsString.length?childUpdatePanelIDsString.split(','):[];var asyncPostBackControlIDsArray=this._splitNodeIntoArray(data.asyncPostBackControlIDsNode);var postBackControlIDsArray=this._splitNodeIntoArray(data.postBackControlIDsNode);var updatePanelIDsArray=this._splitNodeIntoArray(data.updatePanelIDsNode);var panelsToRefreshIDs=this._splitNodeIntoArray(data.panelsToRefreshNode);for(i=0,l=panelsToRefreshIDs.length;i<l;i++){var panelClientID=this._uniqueIDToClientID(panelsToRefreshIDs[i]);if(!document.getElementById(panelClientID)){this._endPostBack(Error.invalidOperation(String.format(Sys.WebForms.Res.PRM_MissingPanel,panelClientID)),sender,data);return;}}
var updatePanelData=this._processUpdatePanelArrays(updatePanelIDsArray,asyncPostBackControlIDsArray,postBackControlIDsArray);updatePanelData.oldUpdatePanelIDs=oldUpdatePanelIDs;updatePanelData.childUpdatePanelIDs=childUpdatePanelIDs;updatePanelData.panelsToRefreshIDs=panelsToRefreshIDs;data.updatePanelData=updatePanelData;}
data.dataItems={};var node;for(i=0,l=data.dataItemNodes.length;i<l;i++){node=data.dataItemNodes[i];data.dataItems[node.id]=node.content;}
for(i=0,l=data.dataItemJsonNodes.length;i<l;i++){node=data.dataItemJsonNodes[i];data.dataItems[node.id]=Sys.Serialization.JavaScriptSerializer.deserialize(node.content);}
var handler=this._get_eventHandlerList().getHandler("pageLoading");if(handler){handler(this,this._getPageLoadingEventArgs(data));}
Sys._ScriptLoader.readLoadedScripts();Sys.Application.beginCreateComponents();var scriptLoader=Sys._ScriptLoader.getInstance();this._queueScripts(scriptLoader,data.scriptBlockNodes,true,false);this._processingRequest=true;scriptLoader.loadScripts(0,Function.createDelegate(this,Function.createCallback(this._scriptIncludesLoadComplete,data)),Function.createDelegate(this,Function.createCallback(this._scriptIncludesLoadFailed,data)),null);}
function Sys$WebForms$PageRequestManager$_onWindowUnload(evt){this.dispose();}
function Sys$WebForms$PageRequestManager$_pageLoaded(initialLoad,data){var handler=this._get_eventHandlerList().getHandler("pageLoaded");if(handler){handler(this,this._getPageLoadedEventArgs(initialLoad,data));}
if(!initialLoad){Sys.Application.raiseLoad();}}
function Sys$WebForms$PageRequestManager$_pageLoadedInitialLoad(evt){this._pageLoaded(true,null);}
function Sys$WebForms$PageRequestManager$_parseDelta(executor){var reply=executor.get_responseData();var delimiterIndex,len,type,id,content;var replyIndex=0;var parserErrorDetails=null;var delta=[];while(replyIndex<reply.length){delimiterIndex=reply.indexOf('|',replyIndex);if(delimiterIndex===-1){parserErrorDetails=this._findText(reply,replyIndex);break;}
len=parseInt(reply.substring(replyIndex,delimiterIndex),10);if((len%1)!==0){parserErrorDetails=this._findText(reply,replyIndex);break;}
replyIndex=delimiterIndex+1;delimiterIndex=reply.indexOf('|',replyIndex);if(delimiterIndex===-1){parserErrorDetails=this._findText(reply,replyIndex);break;}
type=reply.substring(replyIndex,delimiterIndex);replyIndex=delimiterIndex+1;delimiterIndex=reply.indexOf('|',replyIndex);if(delimiterIndex===-1){parserErrorDetails=this._findText(reply,replyIndex);break;}
id=reply.substring(replyIndex,delimiterIndex);replyIndex=delimiterIndex+1;if((replyIndex+len)>=reply.length){parserErrorDetails=this._findText(reply,reply.length);break;}
content=reply.substr(replyIndex,len);replyIndex+=len;if(reply.charAt(replyIndex)!=='|'){parserErrorDetails=this._findText(reply,replyIndex);break;}
replyIndex++;Array.add(delta,{type:type,id:id,content:content});}
if(parserErrorDetails){this._endPostBack(this._createPageRequestManagerParserError(String.format(Sys.WebForms.Res.PRM_ParserErrorDetails,parserErrorDetails)),executor,null);return null;}
var updatePanelNodes=[];var hiddenFieldNodes=[];var arrayDeclarationNodes=[];var scriptBlockNodes=[];var scriptStartupNodes=[];var expandoNodes=[];var onSubmitNodes=[];var dataItemNodes=[];var dataItemJsonNodes=[];var scriptDisposeNodes=[];var asyncPostBackControlIDsNode,postBackControlIDsNode,updatePanelIDsNode,asyncPostBackTimeoutNode,childUpdatePanelIDsNode,panelsToRefreshNode,formActionNode;for(var i=0,l=delta.length;i<l;i++){var deltaNode=delta[i];switch(deltaNode.type){case"updatePanel":Array.add(updatePanelNodes,deltaNode);break;case"hiddenField":Array.add(hiddenFieldNodes,deltaNode);break;case"arrayDeclaration":Array.add(arrayDeclarationNodes,deltaNode);break;case"scriptBlock":Array.add(scriptBlockNodes,deltaNode);break;case"scriptStartupBlock":Array.add(scriptStartupNodes,deltaNode);break;case"expando":Array.add(expandoNodes,deltaNode);break;case"onSubmit":Array.add(onSubmitNodes,deltaNode);break;case"asyncPostBackControlIDs":asyncPostBackControlIDsNode=deltaNode;break;case"postBackControlIDs":postBackControlIDsNode=deltaNode;break;case"updatePanelIDs":updatePanelIDsNode=deltaNode;break;case"asyncPostBackTimeout":asyncPostBackTimeoutNode=deltaNode;break;case"childUpdatePanelIDs":childUpdatePanelIDsNode=deltaNode;break;case"panelsToRefreshIDs":panelsToRefreshNode=deltaNode;break;case"formAction":formActionNode=deltaNode;break;case"dataItem":Array.add(dataItemNodes,deltaNode);break;case"dataItemJson":Array.add(dataItemJsonNodes,deltaNode);break;case"scriptDispose":Array.add(scriptDisposeNodes,deltaNode);break;case"pageRedirect":if(Sys.Browser.agent===Sys.Browser.InternetExplorer){var anchor=document.createElement("a");anchor.style.display='none';anchor.attachEvent("onclick",cancelBubble);anchor.href=deltaNode.content;document.body.appendChild(anchor);anchor.click();anchor.detachEvent("onclick",cancelBubble);document.body.removeChild(anchor);function cancelBubble(e){e.cancelBubble=true;}}
else{window.location.href=deltaNode.content;}
return;case"error":this._endPostBack(this._createPageRequestManagerServerError(Number.parseInvariant(deltaNode.id),deltaNode.content),executor,null);return null;case"pageTitle":document.title=deltaNode.content;break;case"focus":this._controlIDToFocus=deltaNode.content;break;default:this._endPostBack(this._createPageRequestManagerParserError(String.format(Sys.WebForms.Res.PRM_UnknownToken,deltaNode.type)),executor,null);return null;}}
return{executor:executor,updatePanelNodes:updatePanelNodes,hiddenFieldNodes:hiddenFieldNodes,arrayDeclarationNodes:arrayDeclarationNodes,scriptBlockNodes:scriptBlockNodes,scriptStartupNodes:scriptStartupNodes,expandoNodes:expandoNodes,onSubmitNodes:onSubmitNodes,dataItemNodes:dataItemNodes,dataItemJsonNodes:dataItemJsonNodes,scriptDisposeNodes:scriptDisposeNodes,asyncPostBackControlIDsNode:asyncPostBackControlIDsNode,postBackControlIDsNode:postBackControlIDsNode,updatePanelIDsNode:updatePanelIDsNode,asyncPostBackTimeoutNode:asyncPostBackTimeoutNode,childUpdatePanelIDsNode:childUpdatePanelIDsNode,panelsToRefreshNode:panelsToRefreshNode,formActionNode:formActionNode};}
function Sys$WebForms$PageRequestManager$_processUpdatePanelArrays(updatePanelIDs,asyncPostBackControlIDs,postBackControlIDs){var newUpdatePanelIDs;var newUpdatePanelClientIDs;var newUpdatePanelHasChildrenAsTriggers;if(updatePanelIDs){var l=updatePanelIDs.length;newUpdatePanelIDs=new Array(l);newUpdatePanelClientIDs=new Array(l);newUpdatePanelHasChildrenAsTriggers=new Array(l);for(var i=0;i<l;i++){var realPanelID=updatePanelIDs[i].substr(1);var childrenAsTriggers=(updatePanelIDs[i].charAt(0)==='t');newUpdatePanelHasChildrenAsTriggers[i]=childrenAsTriggers;newUpdatePanelIDs[i]=realPanelID;newUpdatePanelClientIDs[i]=this._uniqueIDToClientID(realPanelID);}}
else{newUpdatePanelIDs=[];newUpdatePanelClientIDs=[];newUpdatePanelHasChildrenAsTriggers=[];}
var newAsyncPostBackControlIDs=[];var newAsyncPostBackControlClientIDs=[];this._convertToClientIDs(asyncPostBackControlIDs,newAsyncPostBackControlIDs,newAsyncPostBackControlClientIDs);var newPostBackControlIDs=[];var newPostBackControlClientIDs=[];this._convertToClientIDs(postBackControlIDs,newPostBackControlIDs,newPostBackControlClientIDs);return{updatePanelIDs:newUpdatePanelIDs,updatePanelClientIDs:newUpdatePanelClientIDs,updatePanelHasChildrenAsTriggers:newUpdatePanelHasChildrenAsTriggers,asyncPostBackControlIDs:newAsyncPostBackControlIDs,asyncPostBackControlClientIDs:newAsyncPostBackControlClientIDs,postBackControlIDs:newPostBackControlIDs,postBackControlClientIDs:newPostBackControlClientIDs};}
function Sys$WebForms$PageRequestManager$_queueScripts(scriptLoader,scriptBlockNodes,queueIncludes,queueBlocks){for(var i=0,l=scriptBlockNodes.length;i<l;i++){var scriptBlockType=scriptBlockNodes[i].id;switch(scriptBlockType){case"ScriptContentNoTags":if(!queueBlocks){continue;}
scriptLoader.queueScriptBlock(scriptBlockNodes[i].content);break;case"ScriptContentWithTags":var scriptTagAttributes;eval("scriptTagAttributes = "+scriptBlockNodes[i].content);if(scriptTagAttributes.src){if(!queueIncludes||Sys._ScriptLoader.isScriptLoaded(scriptTagAttributes.src)){continue;}}
else if(!queueBlocks){continue;}
scriptLoader.queueCustomScriptTag(scriptTagAttributes);break;case"ScriptPath":if(!queueIncludes||Sys._ScriptLoader.isScriptLoaded(scriptBlockNodes[i].content)){continue;}
scriptLoader.queueScriptReference(scriptBlockNodes[i].content);break;}}}
function Sys$WebForms$PageRequestManager$_registerDisposeScript(panelID,disposeScript){if(!this._scriptDisposes[panelID]){this._scriptDisposes[panelID]=[disposeScript];}
else{Array.add(this._scriptDisposes[panelID],disposeScript);}}
function Sys$WebForms$PageRequestManager$_scriptIncludesLoadComplete(scriptLoader,data){if(data.executor.get_webRequest()!==this._request){return;}
this._commitControls(data.updatePanelData,data.asyncPostBackTimeoutNode?data.asyncPostBackTimeoutNode.content:null);if(data.formActionNode){this._form.action=data.formActionNode.content;}
var i,l,node;for(i=0,l=data.updatePanelNodes.length;i<l;i++){node=data.updatePanelNodes[i];var updatePanelElement=document.getElementById(node.id);if(!updatePanelElement){this._endPostBack(Error.invalidOperation(String.format(Sys.WebForms.Res.PRM_MissingPanel,node.id)),data.executor,data);return;}
this._updatePanel(updatePanelElement,node.content);}
for(i=0,l=data.scriptDisposeNodes.length;i<l;i++){node=data.scriptDisposeNodes[i];this._registerDisposeScript(node.id,node.content);}
for(i=0,l=this._transientFields.length;i<l;i++){var field=document.getElementById(this._transientFields[i]);if(field){var toRemove=field._isContained?field.parentNode:field;toRemove.parentNode.removeChild(toRemove);}}
for(i=0,l=data.hiddenFieldNodes.length;i<l;i++){node=data.hiddenFieldNodes[i];this._createHiddenField(node.id,node.content);}
if(data.scriptsFailed){throw Sys._ScriptLoader._errorScriptLoadFailed(data.scriptsFailed.src,data.scriptsFailed.multipleCallbacks);}
this._queueScripts(scriptLoader,data.scriptBlockNodes,false,true);var arrayScript='';for(i=0,l=data.arrayDeclarationNodes.length;i<l;i++){node=data.arrayDeclarationNodes[i];arrayScript+="Sys.WebForms.PageRequestManager._addArrayElement('"+node.id+"', "+node.content+");\r\n";}
var expandoScript='';for(i=0,l=data.expandoNodes.length;i<l;i++){node=data.expandoNodes[i];expandoScript+=node.id+" = "+node.content+"\r\n";}
if(arrayScript.length){scriptLoader.queueScriptBlock(arrayScript);}
if(expandoScript.length){scriptLoader.queueScriptBlock(expandoScript);}
this._queueScripts(scriptLoader,data.scriptStartupNodes,true,true);var onSubmitStatementScript='';for(i=0,l=data.onSubmitNodes.length;i<l;i++){if(i===0){onSubmitStatementScript='Array.add(Sys.WebForms.PageRequestManager.getInstance()._onSubmitStatements, function() {\r\n';}
onSubmitStatementScript+=data.onSubmitNodes[i].content+"\r\n";}
if(onSubmitStatementScript.length){onSubmitStatementScript+="\r\nreturn true;\r\n});\r\n";scriptLoader.queueScriptBlock(onSubmitStatementScript);}
scriptLoader.loadScripts(0,Function.createDelegate(this,Function.createCallback(this._scriptsLoadComplete,data)),null,null);}
function Sys$WebForms$PageRequestManager$_scriptIncludesLoadFailed(scriptLoader,scriptElement,multipleCallbacks,data){data.scriptsFailed={src:scriptElement.src,multipleCallbacks:multipleCallbacks};this._scriptIncludesLoadComplete(scriptLoader,data);}
function Sys$WebForms$PageRequestManager$_scriptsLoadComplete(scriptLoader,data){var response=data.executor;if(window.__theFormPostData){window.__theFormPostData="";}
if(window.__theFormPostCollection){window.__theFormPostCollection=[];}
if(window.WebForm_InitCallback){window.WebForm_InitCallback();}
if(this._scrollPosition){if(window.scrollTo){window.scrollTo(this._scrollPosition.x,this._scrollPosition.y);}
this._scrollPosition=null;}
Sys.Application.endCreateComponents();this._pageLoaded(false,data);this._endPostBack(null,response,data);if(this._controlIDToFocus){var focusTarget;var oldContentEditableSetting;if(Sys.Browser.agent===Sys.Browser.InternetExplorer){var targetControl=$get(this._controlIDToFocus);focusTarget=targetControl;if(targetControl&&(!WebForm_CanFocus(targetControl))){focusTarget=WebForm_FindFirstFocusableChild(targetControl);}
if(focusTarget&&(typeof(focusTarget.contentEditable)!=="undefined")){oldContentEditableSetting=focusTarget.contentEditable;focusTarget.contentEditable=false;}
else{focusTarget=null;}}
WebForm_AutoFocus(this._controlIDToFocus);if(focusTarget){focusTarget.contentEditable=oldContentEditableSetting;}
this._controlIDToFocus=null;}}
function Sys$WebForms$PageRequestManager$_splitNodeIntoArray(node){var str=node.content;var arr=str.length?str.split(','):[];return arr;}
function Sys$WebForms$PageRequestManager$_uniqueIDToClientID(uniqueID){return uniqueID.replace(/\$/g,'_');}
function Sys$WebForms$PageRequestManager$_updateControls(updatePanelIDs,asyncPostBackControlIDs,postBackControlIDs,asyncPostBackTimeout){this._commitControls(this._processUpdatePanelArrays(updatePanelIDs,asyncPostBackControlIDs,postBackControlIDs),asyncPostBackTimeout);}
function Sys$WebForms$PageRequestManager$_updatePanel(updatePanelElement,rendering){for(var updatePanelID in this._scriptDisposes){if(this._elementContains(updatePanelElement,document.getElementById(updatePanelID))){var disposeScripts=this._scriptDisposes[updatePanelID];for(var i=0,l=disposeScripts.length;i<l;i++){eval(disposeScripts[i]);}
delete this._scriptDisposes[updatePanelID];}}
this._destroyTree(updatePanelElement);updatePanelElement.innerHTML=rendering;}
function Sys$WebForms$PageRequestManager$_validPosition(position){return(typeof(position)!=="undefined")&&(position!==null)&&(position!==0);}
Sys.WebForms.PageRequestManager.prototype={_get_eventHandlerList:Sys$WebForms$PageRequestManager$_get_eventHandlerList,get_isInAsyncPostBack:Sys$WebForms$PageRequestManager$get_isInAsyncPostBack,add_beginRequest:Sys$WebForms$PageRequestManager$add_beginRequest,remove_beginRequest:Sys$WebForms$PageRequestManager$remove_beginRequest,add_endRequest:Sys$WebForms$PageRequestManager$add_endRequest,remove_endRequest:Sys$WebForms$PageRequestManager$remove_endRequest,add_initializeRequest:Sys$WebForms$PageRequestManager$add_initializeRequest,remove_initializeRequest:Sys$WebForms$PageRequestManager$remove_initializeRequest,add_pageLoaded:Sys$WebForms$PageRequestManager$add_pageLoaded,remove_pageLoaded:Sys$WebForms$PageRequestManager$remove_pageLoaded,add_pageLoading:Sys$WebForms$PageRequestManager$add_pageLoading,remove_pageLoading:Sys$WebForms$PageRequestManager$remove_pageLoading,abortPostBack:Sys$WebForms$PageRequestManager$abortPostBack,_cancelPendingCallbacks:Sys$WebForms$PageRequestManager$_cancelPendingCallbacks,_commitControls:Sys$WebForms$PageRequestManager$_commitControls,_createHiddenField:Sys$WebForms$PageRequestManager$_createHiddenField,_createPageRequestManagerTimeoutError:Sys$WebForms$PageRequestManager$_createPageRequestManagerTimeoutError,_createPageRequestManagerServerError:Sys$WebForms$PageRequestManager$_createPageRequestManagerServerError,_createPageRequestManagerParserError:Sys$WebForms$PageRequestManager$_createPageRequestManagerParserError,_createPostBackSettings:Sys$WebForms$PageRequestManager$_createPostBackSettings,_convertToClientIDs:Sys$WebForms$PageRequestManager$_convertToClientIDs,_destroyTree:Sys$WebForms$PageRequestManager$_destroyTree,dispose:Sys$WebForms$PageRequestManager$dispose,_doCallback:Sys$WebForms$PageRequestManager$_doCallback,_doPostBack:Sys$WebForms$PageRequestManager$_doPostBack,_doPostBackWithOptions:Sys$WebForms$PageRequestManager$_doPostBackWithOptions,_elementContains:Sys$WebForms$PageRequestManager$_elementContains,_endPostBack:Sys$WebForms$PageRequestManager$_endPostBack,_findNearestElement:Sys$WebForms$PageRequestManager$_findNearestElement,_findText:Sys$WebForms$PageRequestManager$_findText,_fireDefaultButton:Sys$WebForms$PageRequestManager$_fireDefaultButton,_getPageLoadedEventArgs:Sys$WebForms$PageRequestManager$_getPageLoadedEventArgs,_getPageLoadingEventArgs:Sys$WebForms$PageRequestManager$_getPageLoadingEventArgs,_getPostBackSettings:Sys$WebForms$PageRequestManager$_getPostBackSettings,_getScrollPosition:Sys$WebForms$PageRequestManager$_getScrollPosition,_initializeInternal:Sys$WebForms$PageRequestManager$_initializeInternal,_matchesParentIDInList:Sys$WebForms$PageRequestManager$_matchesParentIDInList,_onFormElementActive:Sys$WebForms$PageRequestManager$_onFormElementActive,_onFormElementClick:Sys$WebForms$PageRequestManager$_onFormElementClick,_onFormSubmit:Sys$WebForms$PageRequestManager$_onFormSubmit,_onFormSubmitCompleted:Sys$WebForms$PageRequestManager$_onFormSubmitCompleted,_onWindowUnload:Sys$WebForms$PageRequestManager$_onWindowUnload,_pageLoaded:Sys$WebForms$PageRequestManager$_pageLoaded,_pageLoadedInitialLoad:Sys$WebForms$PageRequestManager$_pageLoadedInitialLoad,_parseDelta:Sys$WebForms$PageRequestManager$_parseDelta,_processUpdatePanelArrays:Sys$WebForms$PageRequestManager$_processUpdatePanelArrays,_queueScripts:Sys$WebForms$PageRequestManager$_queueScripts,_registerDisposeScript:Sys$WebForms$PageRequestManager$_registerDisposeScript,_scriptIncludesLoadComplete:Sys$WebForms$PageRequestManager$_scriptIncludesLoadComplete,_scriptIncludesLoadFailed:Sys$WebForms$PageRequestManager$_scriptIncludesLoadFailed,_scriptsLoadComplete:Sys$WebForms$PageRequestManager$_scriptsLoadComplete,_splitNodeIntoArray:Sys$WebForms$PageRequestManager$_splitNodeIntoArray,_uniqueIDToClientID:Sys$WebForms$PageRequestManager$_uniqueIDToClientID,_updateControls:Sys$WebForms$PageRequestManager$_updateControls,_updatePanel:Sys$WebForms$PageRequestManager$_updatePanel,_validPosition:Sys$WebForms$PageRequestManager$_validPosition}
Sys.WebForms.PageRequestManager.getInstance=function Sys$WebForms$PageRequestManager$getInstance(){if(arguments.length!==0)throw Error.parameterCount();var prm=Sys.WebForms.PageRequestManager._instance;if(!prm){prm=Sys.WebForms.PageRequestManager._instance=new Sys.WebForms.PageRequestManager();}
return prm;}
Sys.WebForms.PageRequestManager._addArrayElement=function Sys$WebForms$PageRequestManager$_addArrayElement(arrayName){if(!window[arrayName]){window[arrayName]=new Array();}
for(var i=1,l=arguments.length;i<l;i++){Array.add(window[arrayName],arguments[i]);}}
Sys.WebForms.PageRequestManager._initialize=function Sys$WebForms$PageRequestManager$_initialize(scriptManagerID,formElement){Sys.WebForms.PageRequestManager.getInstance()._initializeInternal(scriptManagerID,formElement);}
Sys.WebForms.PageRequestManager.registerClass('Sys.WebForms.PageRequestManager');Sys.UI._UpdateProgress=function Sys$UI$_UpdateProgress(element){Sys.UI._UpdateProgress.initializeBase(this,[element]);this._displayAfter=500;this._dynamicLayout=true;this._associatedUpdatePanelId=null;this._beginRequestHandlerDelegate=null;this._startDelegate=null;this._endRequestHandlerDelegate=null;this._pageRequestManager=null;this._timerCookie=null;}
function Sys$UI$_UpdateProgress$get_displayAfter(){if(arguments.length!==0)throw Error.parameterCount();return this._displayAfter;}
function Sys$UI$_UpdateProgress$set_displayAfter(value){var e=Function._validateParams(arguments,[{name:"value",type:Number}]);if(e)throw e;this._displayAfter=value;}
function Sys$UI$_UpdateProgress$get_dynamicLayout(){if(arguments.length!==0)throw Error.parameterCount();return this._dynamicLayout;}
function Sys$UI$_UpdateProgress$set_dynamicLayout(value){var e=Function._validateParams(arguments,[{name:"value",type:Boolean}]);if(e)throw e;this._dynamicLayout=value;}
function Sys$UI$_UpdateProgress$get_associatedUpdatePanelId(){if(arguments.length!==0)throw Error.parameterCount();return this._associatedUpdatePanelId;}
function Sys$UI$_UpdateProgress$set_associatedUpdatePanelId(value){var e=Function._validateParams(arguments,[{name:"value",type:String,mayBeNull:true}]);if(e)throw e;this._associatedUpdatePanelId=value;}
function Sys$UI$_UpdateProgress$_clearTimeout(){if(this._timerCookie){window.clearTimeout(this._timerCookie);this._timerCookie=null;}}
function Sys$UI$_UpdateProgress$_handleBeginRequest(sender,arg){var curElem=arg.get_postBackElement();var showProgress=!this._associatedUpdatePanelId;while(!showProgress&&curElem){if(curElem.id&&this._associatedUpdatePanelId===curElem.id){showProgress=true;}
curElem=curElem.parentNode;}
if(showProgress){this._timerCookie=window.setTimeout(this._startDelegate,this._displayAfter);}}
function Sys$UI$_UpdateProgress$_startRequest(){if(this._pageRequestManager.get_isInAsyncPostBack()){if(this._dynamicLayout)this.get_element().style.display='block';else this.get_element().style.visibility='visible';}
this._timerCookie=null;}
function Sys$UI$_UpdateProgress$_handleEndRequest(sender,arg){if(this._dynamicLayout)this.get_element().style.display='none';else this.get_element().style.visibility='hidden';this._clearTimeout();}
function Sys$UI$_UpdateProgress$dispose(){if(this._beginRequestHandlerDelegate!==null){this._pageRequestManager.remove_beginRequest(this._beginRequestHandlerDelegate);this._pageRequestManager.remove_endRequest(this._endRequestHandlerDelegate);this._beginRequestHandlerDelegate=null;this._endRequestHandlerDelegate=null;}
this._clearTimeout();Sys.UI._UpdateProgress.callBaseMethod(this,"dispose");}
function Sys$UI$_UpdateProgress$initialize(){Sys.UI._UpdateProgress.callBaseMethod(this,'initialize');this._beginRequestHandlerDelegate=Function.createDelegate(this,this._handleBeginRequest);this._endRequestHandlerDelegate=Function.createDelegate(this,this._handleEndRequest);this._startDelegate=Function.createDelegate(this,this._startRequest);if(Sys.WebForms&&Sys.WebForms.PageRequestManager){this._pageRequestManager=Sys.WebForms.PageRequestManager.getInstance();}
if(this._pageRequestManager!==null){this._pageRequestManager.add_beginRequest(this._beginRequestHandlerDelegate);this._pageRequestManager.add_endRequest(this._endRequestHandlerDelegate);}}
Sys.UI._UpdateProgress.prototype={get_displayAfter:Sys$UI$_UpdateProgress$get_displayAfter,set_displayAfter:Sys$UI$_UpdateProgress$set_displayAfter,get_dynamicLayout:Sys$UI$_UpdateProgress$get_dynamicLayout,set_dynamicLayout:Sys$UI$_UpdateProgress$set_dynamicLayout,get_associatedUpdatePanelId:Sys$UI$_UpdateProgress$get_associatedUpdatePanelId,set_associatedUpdatePanelId:Sys$UI$_UpdateProgress$set_associatedUpdatePanelId,_clearTimeout:Sys$UI$_UpdateProgress$_clearTimeout,_handleBeginRequest:Sys$UI$_UpdateProgress$_handleBeginRequest,_startRequest:Sys$UI$_UpdateProgress$_startRequest,_handleEndRequest:Sys$UI$_UpdateProgress$_handleEndRequest,dispose:Sys$UI$_UpdateProgress$dispose,initialize:Sys$UI$_UpdateProgress$initialize}
Sys.UI._UpdateProgress.registerClass('Sys.UI._UpdateProgress',Sys.UI.Control);Type.registerNamespace('Sys.WebForms');Sys.WebForms.Res={"PRM_MissingPanel":"找不到 ID 为“{0}”的 UpdatePanel。如果要动态更新该 UpdatePanel，则它必须位于另一个 UpdatePanel 内部。","PRM_ServerError":"在服务器上处理请求时出现未知错误。服务器返回的状态码为: {0}","PRM_ParserError":"无法分析从服务器收到的消息。","PRM_TimeoutError":"服务器请求超时。","PRM_CannotRegisterTwice":"不能初始化 PageRequestManager 多次。","PRM_UnknownToken":"未知标记:“{0}”。","PRM_MissingPanel":"找不到 ID 为“{0}”的 UpdatePanel。如果要动态更新该  UpdatePanel，则它必须位于另一个 UpdatePanel 内部。","PRM_ServerError":"在服务器上处理请求时出现未知错误。服务器返回的状态码为: {0}","PRM_ParserError":"无法分析从服务器收到的消息。之所以出现此错误，常见的原因是: 在通过调用 Response.Write() 修改响应时，将启用响应筛选器、HttpModule 或服务器跟踪。\r\n详细信息: {0}","PRM_TimeoutError":"服务器请求超时。","PRM_ParserErrorDetails":"分析附近的“{0}”时出错。","PRM_CannotRegisterTwice":"不能初始化 PageRequestManager 多次。"};if(typeof(Sys)!=='undefined')Sys.Application.notifyScriptLoaded();Type.registerNamespace('AjaxControlToolkit');AjaxControlToolkit.BoxSide=function(){}
AjaxControlToolkit.BoxSide.prototype={Top:0,Right:1,Bottom:2,Left:3}
AjaxControlToolkit.BoxSide.registerEnum("AjaxControlToolkit.BoxSide",false);AjaxControlToolkit._CommonToolkitScripts=function(){}
AjaxControlToolkit._CommonToolkitScripts.prototype={_borderStyleNames:["borderTopStyle","borderRightStyle","borderBottomStyle","borderLeftStyle"],_borderWidthNames:["borderTopWidth","borderRightWidth","borderBottomWidth","borderLeftWidth"],_paddingWidthNames:["paddingTop","paddingRight","paddingBottom","paddingLeft"],_marginWidthNames:["marginTop","marginRight","marginBottom","marginLeft"],getCurrentStyle:function(element,attribute,defaultValue){var currentValue=null;if(element){if(element.currentStyle){currentValue=element.currentStyle[attribute];}else if(document.defaultView&&document.defaultView.getComputedStyle){var style=document.defaultView.getComputedStyle(element,null);if(style){currentValue=style[attribute];}}
if(!currentValue&&element.style.getPropertyValue){currentValue=element.style.getPropertyValue(attribute);}
else if(!currentValue&&element.style.getAttribute){currentValue=element.style.getAttribute(attribute);}}
if((!currentValue||currentValue==""||typeof(currentValue)==='undefined')){if(typeof(defaultValue)!='undefined'){currentValue=defaultValue;}
else{currentValue=null;}}
return currentValue;},getInheritedBackgroundColor:function(element){if(!element)return'#FFFFFF';var background=this.getCurrentStyle(element,'backgroundColor');try{while(!background||background==''||background=='transparent'||background=='rgba(0, 0, 0, 0)'){element=element.parentNode;if(!element){background='#FFFFFF';}else{background=this.getCurrentStyle(element,'backgroundColor');}}}catch(ex){background='#FFFFFF';}
return background;},getLocation:function(element){if(element===document.documentElement){return new Sys.UI.Point(0,0);}
if(Sys.Browser.agent==Sys.Browser.InternetExplorer&&Sys.Browser.version<7){if(element.window===element||element.nodeType===9||!element.getClientRects||!element.getBoundingClientRect)return new Sys.UI.Point(0,0);var screenRects=element.getClientRects();if(!screenRects||!screenRects.length){return new Sys.UI.Point(0,0);}
var first=screenRects[0];var dLeft=0;var dTop=0;var inFrame=false;try{inFrame=element.ownerDocument.parentWindow.frameElement;}catch(ex){inFrame=true;}
if(inFrame){var clientRect=element.getBoundingClientRect();if(!clientRect){return new Sys.UI.Point(0,0);}
var minLeft=first.left;var minTop=first.top;for(var i=1;i<screenRects.length;i++){var r=screenRects[i];if(r.left<minLeft){minLeft=r.left;}
if(r.top<minTop){minTop=r.top;}}
dLeft=minLeft-clientRect.left;dTop=minTop-clientRect.top;}
var ownerDocument=element.document.documentElement;return new Sys.UI.Point(first.left-2-dLeft+ownerDocument.scrollLeft,first.top-2-dTop+ownerDocument.scrollTop);}
return Sys.UI.DomElement.getLocation(element);},setLocation:function(element,point){Sys.UI.DomElement.setLocation(element,point.x,point.y);},getContentSize:function(element){if(!element){throw Error.argumentNull('element');}
var size=this.getSize(element);var borderBox=this.getBorderBox(element);var paddingBox=this.getPaddingBox(element);return{width:size.width-borderBox.horizontal-paddingBox.horizontal,height:size.height-borderBox.vertical-paddingBox.vertical}},getSize:function(element){if(!element){throw Error.argumentNull('element');}
return{width:element.offsetWidth,height:element.offsetHeight};},setContentSize:function(element,size){if(!element){throw Error.argumentNull('element');}
if(!size){throw Error.argumentNull('size');}
if(this.getCurrentStyle(element,'MozBoxSizing')=='border-box'||this.getCurrentStyle(element,'BoxSizing')=='border-box'){var borderBox=this.getBorderBox(element);var paddingBox=this.getPaddingBox(element);size={width:size.width+borderBox.horizontal+paddingBox.horizontal,height:size.height+borderBox.vertical+paddingBox.vertical};}
element.style.width=size.width.toString()+'px';element.style.height=size.height.toString()+'px';},setSize:function(element,size){if(!element){throw Error.argumentNull('element');}
if(!size){throw Error.argumentNull('size');}
var borderBox=this.getBorderBox(element);var paddingBox=this.getPaddingBox(element);var contentSize={width:size.width-borderBox.horizontal-paddingBox.horizontal,height:size.height-borderBox.vertical-paddingBox.vertical};this.setContentSize(element,contentSize);},getBounds:function(element){var offset=$common.getLocation(element);return new Sys.UI.Bounds(offset.x,offset.y,element.offsetWidth||0,element.offsetHeight||0);},setBounds:function(element,bounds){if(!element){throw Error.argumentNull('element');}
if(!bounds){throw Error.argumentNull('bounds');}
this.setSize(element,bounds);$common.setLocation(element,bounds);},getClientBounds:function(){var clientWidth;var clientHeight;switch(Sys.Browser.agent){case Sys.Browser.InternetExplorer:clientWidth=document.documentElement.clientWidth;clientHeight=document.documentElement.clientHeight;break;case Sys.Browser.Safari:clientWidth=window.innerWidth;clientHeight=window.innerHeight;break;case Sys.Browser.Opera:clientWidth=Math.min(window.innerWidth,document.body.clientWidth);clientHeight=Math.min(window.innerHeight,document.body.clientHeight);break;default:clientWidth=Math.min(window.innerWidth,document.documentElement.clientWidth);clientHeight=Math.min(window.innerHeight,document.documentElement.clientHeight);break;}
return new Sys.UI.Bounds(0,0,clientWidth,clientHeight);},getMarginBox:function(element){if(!element){throw Error.argumentNull('element');}
var box={top:this.getMargin(element,AjaxControlToolkit.BoxSide.Top),right:this.getMargin(element,AjaxControlToolkit.BoxSide.Right),bottom:this.getMargin(element,AjaxControlToolkit.BoxSide.Bottom),left:this.getMargin(element,AjaxControlToolkit.BoxSide.Left)};box.horizontal=box.left+box.right;box.vertical=box.top+box.bottom;return box;},getBorderBox:function(element){if(!element){throw Error.argumentNull('element');}
var box={top:this.getBorderWidth(element,AjaxControlToolkit.BoxSide.Top),right:this.getBorderWidth(element,AjaxControlToolkit.BoxSide.Right),bottom:this.getBorderWidth(element,AjaxControlToolkit.BoxSide.Bottom),left:this.getBorderWidth(element,AjaxControlToolkit.BoxSide.Left)};box.horizontal=box.left+box.right;box.vertical=box.top+box.bottom;return box;},getPaddingBox:function(element){if(!element){throw Error.argumentNull('element');}
var box={top:this.getPadding(element,AjaxControlToolkit.BoxSide.Top),right:this.getPadding(element,AjaxControlToolkit.BoxSide.Right),bottom:this.getPadding(element,AjaxControlToolkit.BoxSide.Bottom),left:this.getPadding(element,AjaxControlToolkit.BoxSide.Left)};box.horizontal=box.left+box.right;box.vertical=box.top+box.bottom;return box;},isBorderVisible:function(element,boxSide){if(!element){throw Error.argumentNull('element');}
if(boxSide<AjaxControlToolkit.BoxSide.Top||boxSide>AjaxControlToolkit.BoxSide.Left){throw Error.argumentOutOfRange(String.format(Sys.Res.enumInvalidValue,boxSide,'AjaxControlToolkit.BoxSide'));}
var styleName=this._borderStyleNames[boxSide];var styleValue=this.getCurrentStyle(element,styleName);return styleValue!="none";},getMargin:function(element,boxSide){if(!element){throw Error.argumentNull('element');}
if(boxSide<AjaxControlToolkit.BoxSide.Top||boxSide>AjaxControlToolkit.BoxSide.Left){throw Error.argumentOutOfRange(String.format(Sys.Res.enumInvalidValue,boxSide,'AjaxControlToolkit.BoxSide'));}
var styleName=this._marginWidthNames[boxSide];var styleValue=this.getCurrentStyle(element,styleName);try{return this.parsePadding(styleValue);}catch(ex){return 0;}},getBorderWidth:function(element,boxSide){if(!element){throw Error.argumentNull('element');}
if(boxSide<AjaxControlToolkit.BoxSide.Top||boxSide>AjaxControlToolkit.BoxSide.Left){throw Error.argumentOutOfRange(String.format(Sys.Res.enumInvalidValue,boxSide,'AjaxControlToolkit.BoxSide'));}
if(!this.isBorderVisible(element,boxSide)){return 0;}
var styleName=this._borderWidthNames[boxSide];var styleValue=this.getCurrentStyle(element,styleName);return this.parseBorderWidth(styleValue);},getPadding:function(element,boxSide){if(!element){throw Error.argumentNull('element');}
if(boxSide<AjaxControlToolkit.BoxSide.Top||boxSide>AjaxControlToolkit.BoxSide.Left){throw Error.argumentOutOfRange(String.format(Sys.Res.enumInvalidValue,boxSide,'AjaxControlToolkit.BoxSide'));}
var styleName=this._paddingWidthNames[boxSide];var styleValue=this.getCurrentStyle(element,styleName);return this.parsePadding(styleValue);},parseBorderWidth:function(borderWidth){if(!this._borderThicknesses){var borderThicknesses={};var div0=document.createElement('div');div0.style.visibility='hidden';div0.style.position='absolute';div0.style.fontSize='1px';document.body.appendChild(div0)
var div1=document.createElement('div');div1.style.height='0px';div1.style.overflow='hidden';div0.appendChild(div1);var base=div0.offsetHeight;div1.style.borderTop='solid black';div1.style.borderTopWidth='thin';borderThicknesses['thin']=div0.offsetHeight-base;div1.style.borderTopWidth='medium';borderThicknesses['medium']=div0.offsetHeight-base;div1.style.borderTopWidth='thick';borderThicknesses['thick']=div0.offsetHeight-base;div0.removeChild(div1);document.body.removeChild(div0);this._borderThicknesses=borderThicknesses;}
if(borderWidth){switch(borderWidth){case'thin':case'medium':case'thick':return this._borderThicknesses[borderWidth];case'inherit':return 0;}
var unit=this.parseUnit(borderWidth);Sys.Debug.assert(unit.type=='px',String.format(AjaxControlToolkit.Resources.Common_InvalidBorderWidthUnit,unit.type));return unit.size;}
return 0;},parsePadding:function(padding){if(padding){if(padding=='inherit'){return 0;}
var unit=this.parseUnit(padding);Sys.Debug.assert(unit.type=='px',String.format(AjaxControlToolkit.Resources.Common_InvalidPaddingUnit,unit.type));return unit.size;}
return 0;},parseUnit:function(value){if(!value){throw Error.argumentNull('value');}
value=value.trim().toLowerCase();var l=value.length;var s=-1;for(var i=0;i<l;i++){var ch=value.substr(i,1);if((ch<'0'||ch>'9')&&ch!='-'&&ch!='.'&&ch!=','){break;}
s=i;}
if(s==-1){throw Error.create(AjaxControlToolkit.Resources.Common_UnitHasNoDigits);}
var type;var size;if(s<(l-1)){type=value.substring(s+1).trim();}else{type='px';}
size=parseFloat(value.substr(0,s+1));if(type=='px'){size=Math.floor(size);}
return{size:size,type:type};},getElementOpacity:function(element){if(!element){throw Error.argumentNull('element');}
var hasOpacity=false;var opacity;if(element.filters){var filters=element.filters;if(filters.length!==0){var alphaFilter=filters['DXImageTransform.Microsoft.Alpha'];if(alphaFilter){opacity=alphaFilter.opacity/100.0;hasOpacity=true;}}}
else{opacity=this.getCurrentStyle(element,'opacity',1);hasOpacity=true;}
if(hasOpacity===false){return 1.0;}
return parseFloat(opacity);},setElementOpacity:function(element,value){if(!element){throw Error.argumentNull('element');}
if(element.filters){var filters=element.filters;var createFilter=true;if(filters.length!==0){var alphaFilter=filters['DXImageTransform.Microsoft.Alpha'];if(alphaFilter){createFilter=false;alphaFilter.opacity=value*100;}}
if(createFilter){element.style.filter='progid:DXImageTransform.Microsoft.Alpha(opacity='+(value*100)+')';}}
else{element.style.opacity=value;}},getVisible:function(element){return(element&&("none"!=$common.getCurrentStyle(element,"display"))&&("hidden"!=$common.getCurrentStyle(element,"visibility")));},setVisible:function(element,value){if(element&&value!=$common.getVisible(element)){if(value){if(element.style.removeAttribute){element.style.removeAttribute("display");}else{element.style.removeProperty("display");}}else{element.style.display='none';}
element.style.visibility=value?'visible':'hidden';}},resolveFunction:function(value){if(value){if(value instanceof Function){return value;}else if(String.isInstanceOfType(value)&&value.length>0){var func;if((func=window[value])instanceof Function){return func;}else if((func=eval(value))instanceof Function){return func;}}}
return null;},addCssClasses:function(element,classNames){for(var i=0;i<classNames.length;i++){Sys.UI.DomElement.addCssClass(element,classNames[i]);}},removeCssClasses:function(element,classNames){for(var i=0;i<classNames.length;i++){Sys.UI.DomElement.removeCssClass(element,classNames[i]);}},setStyle:function(element,style){$common.applyProperties(element.style,style);},removeHandlers:function(element,events){for(var name in events){$removeHandler(element,name,events[name]);}},overlaps:function(r1,r2){return r1.x<(r2.x+r2.width)&&r2.x<(r1.x+r1.width)&&r1.y<(r2.y+r2.height)&&r2.y<(r1.y+r1.height);},containsPoint:function(rect,x,y){return x>=rect.x&&x<(rect.x+rect.width)&&y>=rect.y&&y<(rect.y+rect.height);},isKeyDigit:function(keyCode){return(0x30<=keyCode&&keyCode<=0x39);},isKeyNavigation:function(keyCode){return(Sys.UI.Key.left<=keyCode&&keyCode<=Sys.UI.Key.down);},padLeft:function(text,size,ch,truncate){return $common._pad(text,size||2,ch||' ','l',truncate||false);},padRight:function(text,size,ch,truncate){return $common._pad(text,size||2,ch||' ','r',truncate||false);},_pad:function(text,size,ch,side,truncate){text=text.toString();var length=text.length;var builder=new Sys.StringBuilder();if(side=='r'){builder.append(text);}
while(length<size){builder.append(ch);length++;}
if(side=='l'){builder.append(text);}
var result=builder.toString();if(truncate&&result.length>size){if(side=='l'){result=result.substr(result.length-size,size);}else{result=result.substr(0,size);}}
return result;},__DOMEvents:{focusin:{eventGroup:"UIEvents",init:function(e,p){e.initUIEvent("focusin",true,false,window,1);}},focusout:{eventGroup:"UIEvents",init:function(e,p){e.initUIEvent("focusout",true,false,window,1);}},activate:{eventGroup:"UIEvents",init:function(e,p){e.initUIEvent("activate",true,true,window,1);}},focus:{eventGroup:"UIEvents",init:function(e,p){e.initUIEvent("focus",false,false,window,1);}},blur:{eventGroup:"UIEvents",init:function(e,p){e.initUIEvent("blur",false,false,window,1);}},click:{eventGroup:"MouseEvents",init:function(e,p){e.initMouseEvent("click",true,true,window,1,p.screenX||0,p.screenY||0,p.clientX||0,p.clientY||0,p.ctrlKey||false,p.altKey||false,p.shiftKey||false,p.metaKey||false,p.button||0,p.relatedTarget||null);}},dblclick:{eventGroup:"MouseEvents",init:function(e,p){e.initMouseEvent("click",true,true,window,2,p.screenX||0,p.screenY||0,p.clientX||0,p.clientY||0,p.ctrlKey||false,p.altKey||false,p.shiftKey||false,p.metaKey||false,p.button||0,p.relatedTarget||null);}},mousedown:{eventGroup:"MouseEvents",init:function(e,p){e.initMouseEvent("mousedown",true,true,window,1,p.screenX||0,p.screenY||0,p.clientX||0,p.clientY||0,p.ctrlKey||false,p.altKey||false,p.shiftKey||false,p.metaKey||false,p.button||0,p.relatedTarget||null);}},mouseup:{eventGroup:"MouseEvents",init:function(e,p){e.initMouseEvent("mouseup",true,true,window,1,p.screenX||0,p.screenY||0,p.clientX||0,p.clientY||0,p.ctrlKey||false,p.altKey||false,p.shiftKey||false,p.metaKey||false,p.button||0,p.relatedTarget||null);}},mouseover:{eventGroup:"MouseEvents",init:function(e,p){e.initMouseEvent("mouseover",true,true,window,1,p.screenX||0,p.screenY||0,p.clientX||0,p.clientY||0,p.ctrlKey||false,p.altKey||false,p.shiftKey||false,p.metaKey||false,p.button||0,p.relatedTarget||null);}},mousemove:{eventGroup:"MouseEvents",init:function(e,p){e.initMouseEvent("mousemove",true,true,window,1,p.screenX||0,p.screenY||0,p.clientX||0,p.clientY||0,p.ctrlKey||false,p.altKey||false,p.shiftKey||false,p.metaKey||false,p.button||0,p.relatedTarget||null);}},mouseout:{eventGroup:"MouseEvents",init:function(e,p){e.initMouseEvent("mousemove",true,true,window,1,p.screenX||0,p.screenY||0,p.clientX||0,p.clientY||0,p.ctrlKey||false,p.altKey||false,p.shiftKey||false,p.metaKey||false,p.button||0,p.relatedTarget||null);}},load:{eventGroup:"HTMLEvents",init:function(e,p){e.initEvent("load",false,false);}},unload:{eventGroup:"HTMLEvents",init:function(e,p){e.initEvent("unload",false,false);}},select:{eventGroup:"HTMLEvents",init:function(e,p){e.initEvent("select",true,false);}},change:{eventGroup:"HTMLEvents",init:function(e,p){e.initEvent("change",true,false);}},submit:{eventGroup:"HTMLEvents",init:function(e,p){e.initEvent("submit",true,true);}},reset:{eventGroup:"HTMLEvents",init:function(e,p){e.initEvent("reset",true,false);}},resize:{eventGroup:"HTMLEvents",init:function(e,p){e.initEvent("resize",true,false);}},scroll:{eventGroup:"HTMLEvents",init:function(e,p){e.initEvent("scroll",true,false);}}},tryFireRawEvent:function(element,rawEvent){try{if(element.fireEvent){element.fireEvent("on"+rawEvent.type,rawEvent);return true;}else if(element.dispatchEvent){element.dispatchEvent(rawEvent);return true;}}catch(e){}
return false;},tryFireEvent:function(element,eventName,properties){try{if(document.createEventObject){var e=document.createEventObject();$common.applyProperties(e,properties||{});element.fireEvent("on"+eventName,e);return true;}else if(document.createEvent){var def=$common.__DOMEvents[eventName];if(def){var e=document.createEvent(def.eventGroup);def.init(e,properties||{});element.dispatchEvent(e);return true;}}}catch(e){}
return false;},wrapElement:function(innerElement,newOuterElement,newInnerParentElement){var parent=innerElement.parentNode;parent.replaceChild(newOuterElement,innerElement);(newInnerParentElement||newOuterElement).appendChild(innerElement);},unwrapElement:function(innerElement,oldOuterElement){var parent=oldOuterElement.parentNode;if(parent!=null){$common.removeElement(innerElement);parent.replaceChild(innerElement,oldOuterElement);}},removeElement:function(element){var parent=element.parentNode;if(parent!=null){parent.removeChild(element);}},applyProperties:function(target,properties){for(var p in properties){var pv=properties[p];if(pv!=null&&Object.getType(pv)===Object){var tv=target[p];$common.applyProperties(tv,pv);}else{target[p]=pv;}}},createElementFromTemplate:function(template,appendToParent,nameTable){if(typeof(template.nameTable)!='undefined'){var newNameTable=template.nameTable;if(String.isInstanceOfType(newNameTable)){newNameTable=nameTable[newNameTable];}
if(newNameTable!=null){nameTable=newNameTable;}}
var elementName=null;if(typeof(template.name)!=='undefined'){elementName=template.name;}
var elt=document.createElement(template.nodeName);if(typeof(template.name)!=='undefined'&&nameTable){nameTable[template.name]=elt;}
if(typeof(template.parent)!=='undefined'&&appendToParent==null){var newParent=template.parent;if(String.isInstanceOfType(newParent)){newParent=nameTable[newParent];}
if(newParent!=null){appendToParent=newParent;}}
if(typeof(template.properties)!=='undefined'&&template.properties!=null){$common.applyProperties(elt,template.properties);}
if(typeof(template.cssClasses)!=='undefined'&&template.cssClasses!=null){$common.addCssClasses(elt,template.cssClasses);}
if(typeof(template.events)!=='undefined'&&template.events!=null){$addHandlers(elt,template.events);}
if(typeof(template.visible)!=='undefined'&&template.visible!=null){this.setVisible(elt,template.visible);}
if(appendToParent){appendToParent.appendChild(elt);}
if(typeof(template.opacity)!=='undefined'&&template.opacity!=null){$common.setElementOpacity(elt,template.opacity);}
if(typeof(template.children)!=='undefined'&&template.children!=null){for(var i=0;i<template.children.length;i++){var subtemplate=template.children[i];$common.createElementFromTemplate(subtemplate,elt,nameTable);}}
var contentPresenter=elt;if(typeof(template.contentPresenter)!=='undefined'&&template.contentPresenter!=null){contentPresenter=nameTable[contentPresenter];}
if(typeof(template.content)!=='undefined'&&template.content!=null){var content=template.content;if(String.isInstanceOfType(content)){content=nameTable[content];}
if(content.parentNode){$common.wrapElement(content,elt,contentPresenter);}else{contentPresenter.appendChild(content);}}
return elt;},prepareHiddenElementForATDeviceUpdate:function(){var objHidden=document.getElementById('hiddenInputToUpdateATBuffer_CommonToolkitScripts');if(!objHidden){var objHidden=document.createElement('input');objHidden.setAttribute('type','hidden');objHidden.setAttribute('value','1');objHidden.setAttribute('id','hiddenInputToUpdateATBuffer_CommonToolkitScripts');objHidden.setAttribute('name','hiddenInputToUpdateATBuffer_CommonToolkitScripts');if(document.forms[0]){document.forms[0].appendChild(objHidden);}}},updateFormToRefreshATDeviceBuffer:function(){var objHidden=document.getElementById('hiddenInputToUpdateATBuffer_CommonToolkitScripts');if(objHidden){if(objHidden.getAttribute('value')=='1'){objHidden.setAttribute('value','0');}else{objHidden.setAttribute('value','1');}}}}
var CommonToolkitScripts=AjaxControlToolkit.CommonToolkitScripts=new AjaxControlToolkit._CommonToolkitScripts();var $common=CommonToolkitScripts;Sys.UI.DomElement.getVisible=$common.getVisible;Sys.UI.DomElement.setVisible=$common.setVisible;Sys.UI.Control.overlaps=$common.overlaps;AjaxControlToolkit._DomUtility=function(){}
AjaxControlToolkit._DomUtility.prototype={isDescendant:function(ancestor,descendant){for(var n=descendant.parentNode;n!=null;n=n.parentNode){if(n==ancestor)return true;}
return false;},isDescendantOrSelf:function(ancestor,descendant){if(ancestor===descendant)
return true;return AjaxControlToolkit.DomUtility.isDescendant(ancestor,descendant);},isAncestor:function(descendant,ancestor){return AjaxControlToolkit.DomUtility.isDescendant(ancestor,descendant);},isAncestorOrSelf:function(descendant,ancestor){if(descendant===ancestor)
return true;return AjaxControlToolkit.DomUtility.isDescendant(ancestor,descendant);},isSibling:function(self,sibling){var parent=self.parentNode;for(var i=0;i<parent.childNodes.length;i++){if(parent.childNodes[i]==sibling)return true;}
return false;}}
AjaxControlToolkit._DomUtility.registerClass("AjaxControlToolkit._DomUtility");AjaxControlToolkit.DomUtility=new AjaxControlToolkit._DomUtility();AjaxControlToolkit.TextBoxWrapper=function(element){AjaxControlToolkit.TextBoxWrapper.initializeBase(this,[element]);this._current=element.value;this._watermark=null;this._isWatermarked=false;}
AjaxControlToolkit.TextBoxWrapper.prototype={dispose:function(){this.get_element().AjaxControlToolkitTextBoxWrapper=null;AjaxControlToolkit.TextBoxWrapper.callBaseMethod(this,'dispose');},get_Current:function(){this._current=this.get_element().value;return this._current;},set_Current:function(value){this._current=value;this._updateElement();},get_Value:function(){if(this.get_IsWatermarked()){return"";}else{return this.get_Current();}},set_Value:function(text){this.set_Current(text);if(!text||(0==text.length)){if(null!=this._watermark){this.set_IsWatermarked(true);}}else{this.set_IsWatermarked(false);}},get_Watermark:function(){return this._watermark;},set_Watermark:function(value){this._watermark=value;this._updateElement();},get_IsWatermarked:function(){return this._isWatermarked;},set_IsWatermarked:function(isWatermarked){if(this._isWatermarked!=isWatermarked){this._isWatermarked=isWatermarked;this._updateElement();this._raiseWatermarkChanged();}},_updateElement:function(){var element=this.get_element();if(this._isWatermarked){if(element.value!=this._watermark){element.value=this._watermark;}}else{if(element.value!=this._current){element.value=this._current;}}},add_WatermarkChanged:function(handler){this.get_events().addHandler("WatermarkChanged",handler);},remove_WatermarkChanged:function(handler){this.get_events().removeHandler("WatermarkChanged",handler);},_raiseWatermarkChanged:function(){var onWatermarkChangedHandler=this.get_events().getHandler("WatermarkChanged");if(onWatermarkChangedHandler){onWatermarkChangedHandler(this,Sys.EventArgs.Empty);}}}
AjaxControlToolkit.TextBoxWrapper.get_Wrapper=function(element){if(null==element.AjaxControlToolkitTextBoxWrapper){element.AjaxControlToolkitTextBoxWrapper=new AjaxControlToolkit.TextBoxWrapper(element);}
return element.AjaxControlToolkitTextBoxWrapper;}
AjaxControlToolkit.TextBoxWrapper.registerClass('AjaxControlToolkit.TextBoxWrapper',Sys.UI.Behavior);AjaxControlToolkit.TextBoxWrapper.validatorGetValue=function(id){var control=$get(id);if(control&&control.AjaxControlToolkitTextBoxWrapper){return control.AjaxControlToolkitTextBoxWrapper.get_Value();}
return AjaxControlToolkit.TextBoxWrapper._originalValidatorGetValue(id);}
if(typeof(ValidatorGetValue)=='function'){AjaxControlToolkit.TextBoxWrapper._originalValidatorGetValue=ValidatorGetValue;ValidatorGetValue=AjaxControlToolkit.TextBoxWrapper.validatorGetValue;}
if(Sys.CultureInfo.prototype._getAbbrMonthIndex){try{Sys.CultureInfo.prototype._getAbbrMonthIndex('');}catch(ex){Sys.CultureInfo.prototype._getAbbrMonthIndex=function(value){if(!this._upperAbbrMonths){this._upperAbbrMonths=this._toUpperArray(this.dateTimeFormat.AbbreviatedMonthNames);}
return Array.indexOf(this._upperAbbrMonths,this._toUpper(value));}
Sys.CultureInfo.CurrentCulture._getAbbrMonthIndex=Sys.CultureInfo.prototype._getAbbrMonthIndex;Sys.CultureInfo.InvariantCulture._getAbbrMonthIndex=Sys.CultureInfo.prototype._getAbbrMonthIndex;}}
if(typeof(Sys)!=='undefined')Sys.Application.notifyScriptLoaded();Type.registerNamespace('AjaxControlToolkit');AjaxControlToolkit.BehaviorBase=function(element){AjaxControlToolkit.BehaviorBase.initializeBase(this,[element]);this._clientStateFieldID=null;this._pageRequestManager=null;this._partialUpdateBeginRequestHandler=null;this._partialUpdateEndRequestHandler=null;}
AjaxControlToolkit.BehaviorBase.prototype={initialize:function(){AjaxControlToolkit.BehaviorBase.callBaseMethod(this,'initialize');},dispose:function(){AjaxControlToolkit.BehaviorBase.callBaseMethod(this,'dispose');if(this._pageRequestManager){if(this._partialUpdateBeginRequestHandler){this._pageRequestManager.remove_beginRequest(this._partialUpdateBeginRequestHandler);this._partialUpdateBeginRequestHandler=null;}
if(this._partialUpdateEndRequestHandler){this._pageRequestManager.remove_endRequest(this._partialUpdateEndRequestHandler);this._partialUpdateEndRequestHandler=null;}
this._pageRequestManager=null;}},get_ClientStateFieldID:function(){return this._clientStateFieldID;},set_ClientStateFieldID:function(value){if(this._clientStateFieldID!=value){this._clientStateFieldID=value;this.raisePropertyChanged('ClientStateFieldID');}},get_ClientState:function(){if(this._clientStateFieldID){var input=document.getElementById(this._clientStateFieldID);if(input){return input.value;}}
return null;},set_ClientState:function(value){if(this._clientStateFieldID){var input=document.getElementById(this._clientStateFieldID);if(input){input.value=value;}}},registerPartialUpdateEvents:function(){if(Sys&&Sys.WebForms&&Sys.WebForms.PageRequestManager){this._pageRequestManager=Sys.WebForms.PageRequestManager.getInstance();if(this._pageRequestManager){this._partialUpdateBeginRequestHandler=Function.createDelegate(this,this._partialUpdateBeginRequest);this._pageRequestManager.add_beginRequest(this._partialUpdateBeginRequestHandler);this._partialUpdateEndRequestHandler=Function.createDelegate(this,this._partialUpdateEndRequest);this._pageRequestManager.add_endRequest(this._partialUpdateEndRequestHandler);}}},_partialUpdateBeginRequest:function(sender,beginRequestEventArgs){},_partialUpdateEndRequest:function(sender,endRequestEventArgs){}}
AjaxControlToolkit.BehaviorBase.registerClass('AjaxControlToolkit.BehaviorBase',Sys.UI.Behavior);AjaxControlToolkit.DynamicPopulateBehaviorBase=function(element){AjaxControlToolkit.DynamicPopulateBehaviorBase.initializeBase(this,[element]);this._DynamicControlID=null;this._DynamicContextKey=null;this._DynamicServicePath=null;this._DynamicServiceMethod=null;this._cacheDynamicResults=false;this._dynamicPopulateBehavior=null;this._populatingHandler=null;this._populatedHandler=null;}
AjaxControlToolkit.DynamicPopulateBehaviorBase.prototype={initialize:function(){AjaxControlToolkit.DynamicPopulateBehaviorBase.callBaseMethod(this,'initialize');this._populatingHandler=Function.createDelegate(this,this._onPopulating);this._populatedHandler=Function.createDelegate(this,this._onPopulated);},dispose:function(){if(this._populatedHandler){if(this._dynamicPopulateBehavior){this._dynamicPopulateBehavior.remove_populated(this._populatedHandler);}
this._populatedHandler=null;}
if(this._populatingHandler){if(this._dynamicPopulateBehavior){this._dynamicPopulateBehavior.remove_populating(this._populatingHandler);}
this._populatingHandler=null;}
if(this._dynamicPopulateBehavior){this._dynamicPopulateBehavior.dispose();this._dynamicPopulateBehavior=null;}
AjaxControlToolkit.DynamicPopulateBehaviorBase.callBaseMethod(this,'dispose');},populate:function(contextKeyOverride){if(this._dynamicPopulateBehavior&&(this._dynamicPopulateBehavior.get_element()!=$get(this._DynamicControlID))){this._dynamicPopulateBehavior.dispose();this._dynamicPopulateBehavior=null;}
if(!this._dynamicPopulateBehavior&&this._DynamicControlID&&this._DynamicServiceMethod){this._dynamicPopulateBehavior=$create(AjaxControlToolkit.DynamicPopulateBehavior,{"id":this.get_id()+"_DynamicPopulateBehavior","ContextKey":this._DynamicContextKey,"ServicePath":this._DynamicServicePath,"ServiceMethod":this._DynamicServiceMethod,"cacheDynamicResults":this._cacheDynamicResults},null,null,$get(this._DynamicControlID));this._dynamicPopulateBehavior.add_populating(this._populatingHandler);this._dynamicPopulateBehavior.add_populated(this._populatedHandler);}
if(this._dynamicPopulateBehavior){this._dynamicPopulateBehavior.populate(contextKeyOverride?contextKeyOverride:this._DynamicContextKey);}},_onPopulating:function(sender,eventArgs){this.raisePopulating(eventArgs);},_onPopulated:function(sender,eventArgs){this.raisePopulated(eventArgs);},get_dynamicControlID:function(){return this._DynamicControlID;},get_DynamicControlID:this.get_dynamicControlID,set_dynamicControlID:function(value){if(this._DynamicControlID!=value){this._DynamicControlID=value;this.raisePropertyChanged('dynamicControlID');this.raisePropertyChanged('DynamicControlID');}},set_DynamicControlID:this.set_dynamicControlID,get_dynamicContextKey:function(){return this._DynamicContextKey;},get_DynamicContextKey:this.get_dynamicContextKey,set_dynamicContextKey:function(value){if(this._DynamicContextKey!=value){this._DynamicContextKey=value;this.raisePropertyChanged('dynamicContextKey');this.raisePropertyChanged('DynamicContextKey');}},set_DynamicContextKey:this.set_dynamicContextKey,get_dynamicServicePath:function(){return this._DynamicServicePath;},get_DynamicServicePath:this.get_dynamicServicePath,set_dynamicServicePath:function(value){if(this._DynamicServicePath!=value){this._DynamicServicePath=value;this.raisePropertyChanged('dynamicServicePath');this.raisePropertyChanged('DynamicServicePath');}},set_DynamicServicePath:this.set_dynamicServicePath,get_dynamicServiceMethod:function(){return this._DynamicServiceMethod;},get_DynamicServiceMethod:this.get_dynamicServiceMethod,set_dynamicServiceMethod:function(value){if(this._DynamicServiceMethod!=value){this._DynamicServiceMethod=value;this.raisePropertyChanged('dynamicServiceMethod');this.raisePropertyChanged('DynamicServiceMethod');}},set_DynamicServiceMethod:this.set_dynamicServiceMethod,get_cacheDynamicResults:function(){return this._cacheDynamicResults;},set_cacheDynamicResults:function(value){if(this._cacheDynamicResults!=value){this._cacheDynamicResults=value;this.raisePropertyChanged('cacheDynamicResults');}},add_populated:function(handler){this.get_events().addHandler("populated",handler);},remove_populated:function(handler){this.get_events().removeHandler("populated",handler);},raisePopulated:function(arg){var handler=this.get_events().getHandler("populated");if(handler)handler(this,arg);},add_populating:function(handler){this.get_events().addHandler('populating',handler);},remove_populating:function(handler){this.get_events().removeHandler('populating',handler);},raisePopulating:function(eventArgs){var handler=this.get_events().getHandler('populating');if(handler){handler(this,eventArgs);}}}
AjaxControlToolkit.DynamicPopulateBehaviorBase.registerClass('AjaxControlToolkit.DynamicPopulateBehaviorBase',AjaxControlToolkit.BehaviorBase);AjaxControlToolkit.ControlBase=function(element){AjaxControlToolkit.ControlBase.initializeBase(this,[element]);this._clientStateField=null;this._callbackTarget=null;this._onsubmit$delegate=Function.createDelegate(this,this._onsubmit);this._oncomplete$delegate=Function.createDelegate(this,this._oncomplete);this._onerror$delegate=Function.createDelegate(this,this._onerror);}
AjaxControlToolkit.ControlBase.prototype={initialize:function(){AjaxControlToolkit.ControlBase.callBaseMethod(this,"initialize");if(this._clientStateField){this.loadClientState(this._clientStateField.value);}
if(typeof(Sys.WebForms)!=="undefined"&&typeof(Sys.WebForms.PageRequestManager)!=="undefined"){Array.add(Sys.WebForms.PageRequestManager.getInstance()._onSubmitStatements,this._onsubmit$delegate);}else{$addHandler(document.forms[0],"submit",this._onsubmit$delegate);}},dispose:function(){if(typeof(Sys.WebForms)!=="undefined"&&typeof(Sys.WebForms.PageRequestManager)!=="undefined"){Array.remove(Sys.WebForms.PageRequestManager.getInstance()._onSubmitStatements,this._onsubmit$delegate);}else{$removeHandler(document.forms[0],"submit",this._onsubmit$delegate);}
AjaxControlToolkit.ControlBase.callBaseMethod(this,"dispose");},findElement:function(id){return $get(this.get_id()+'_'+id.split(':').join('_'));},get_clientStateField:function(){return this._clientStateField;},set_clientStateField:function(value){if(this.get_isInitialized())throw Error.invalidOperation(AjaxControlToolkit.Resources.ExtenderBase_CannotSetClientStateField);if(this._clientStateField!=value){this._clientStateField=value;this.raisePropertyChanged('clientStateField');}},loadClientState:function(value){},saveClientState:function(){return null;},_invoke:function(name,args,cb){if(!this._callbackTarget){throw Error.invalidOperation(AjaxControlToolkit.Resources.ExtenderBase_ControlNotRegisteredForCallbacks);}
if(typeof(WebForm_DoCallback)==="undefined"){throw Error.invalidOperation(AjaxControlToolkit.Resources.ExtenderBase_PageNotRegisteredForCallbacks);}
var ar=[];for(var i=0;i<args.length;i++)
ar[i]=args[i];var clientState=this.saveClientState();if(clientState!=null&&!String.isInstanceOfType(clientState)){throw Error.invalidOperation(AjaxControlToolkit.Resources.ExtenderBase_InvalidClientStateType);}
var payload=Sys.Serialization.JavaScriptSerializer.serialize({name:name,args:ar,state:this.saveClientState()});WebForm_DoCallback(this._callbackTarget,payload,this._oncomplete$delegate,cb,this._onerror$delegate,true);},_oncomplete:function(result,context){result=Sys.Serialization.JavaScriptSerializer.deserialize(result);if(result.error){throw Error.create(result.error);}
this.loadClientState(result.state);context(result.result);},_onerror:function(message,context){throw Error.create(message);},_onsubmit:function(){if(this._clientStateField){this._clientStateField.value=this.saveClientState();}
return true;}}
AjaxControlToolkit.ControlBase.registerClass("AjaxControlToolkit.ControlBase",Sys.UI.Control);Type.registerNamespace('AjaxControlToolkit');AjaxControlToolkit.Resources={"PasswordStrength_InvalidWeightingRatios":"Strength Weighting ratios must have 4 elements","Animation_ChildrenNotAllowed":"AjaxControlToolkit.Animation.createAnimation cannot add child animations to type \"{0}\" that does not derive from AjaxControlToolkit.Animation.ParentAnimation","PasswordStrength_RemainingSymbols":"{0} symbol characters","ExtenderBase_CannotSetClientStateField":"clientStateField can only be set before initialization","RTE_PreviewHTML":"Preview HTML","RTE_JustifyCenter":"Justify Center","PasswordStrength_RemainingUpperCase":"{0} more upper case characters","Animation_TargetNotFound":"AjaxControlToolkit.Animation.Animation.set_animationTarget requires the ID of a Sys.UI.DomElement or Sys.UI.Control.  No element or control could be found corresponding to \"{0}\"","RTE_FontColor":"Font Color","RTE_LabelColor":"Label Color","Common_InvalidBorderWidthUnit":"A unit type of \"{0}\"\u0027 is invalid for parseBorderWidth","RTE_Heading":"Heading","Tabs_PropertySetBeforeInitialization":"{0} cannot be changed before initialization","RTE_OrderedList":"Ordered List","ReorderList_DropWatcherBehavior_NoChild":"Could not find child of list with id \"{0}\"","CascadingDropDown_MethodTimeout":"[Method timeout]","RTE_Columns":"Columns","RTE_InsertImage":"Insert Image","RTE_InsertTable":"Insert Table","RTE_Values":"Values","RTE_OK":"OK","ExtenderBase_PageNotRegisteredForCallbacks":"This Page has not been registered for callbacks","Animation_NoDynamicPropertyFound":"AjaxControlToolkit.Animation.createAnimation found no property corresponding to \"{0}\" or \"{1}\"","Animation_InvalidBaseType":"AjaxControlToolkit.Animation.registerAnimation can only register types that inherit from AjaxControlToolkit.Animation.Animation","RTE_UnorderedList":"Unordered List","ResizableControlBehavior_InvalidHandler":"{0} handler not a function, function name, or function text","Animation_InvalidColor":"Color must be a 7-character hex representation (e.g. #246ACF), not \"{0}\"","RTE_CellColor":"Cell Color","PasswordStrength_RemainingMixedCase":"Mixed case characters","RTE_Italic":"Italic","CascadingDropDown_NoParentElement":"Failed to find parent element \"{0}\"","ValidatorCallout_DefaultErrorMessage":"This control is invalid","RTE_Indent":"Indent","ReorderList_DropWatcherBehavior_CallbackError":"Reorder failed, see details below.\\r\\n\\r\\n{0}","PopupControl_NoDefaultProperty":"No default property supported for control \"{0}\" of type \"{1}\"","RTE_Normal":"Normal","PopupExtender_NoParentElement":"Couldn\u0027t find parent element \"{0}\"","RTE_ViewValues":"View Values","RTE_Legend":"Legend","RTE_Labels":"Labels","RTE_CellSpacing":"Cell Spacing","PasswordStrength_RemainingNumbers":"{0} more numbers","RTE_Border":"Border","RTE_Create":"Create","RTE_BackgroundColor":"Background Color","RTE_Cancel":"Cancel","RTE_JustifyFull":"Justify Full","RTE_JustifyLeft":"Justify Left","RTE_Cut":"Cut","ResizableControlBehavior_CannotChangeProperty":"Changes to {0} not supported","RTE_ViewSource":"View Source","Common_InvalidPaddingUnit":"A unit type of \"{0}\" is invalid for parsePadding","RTE_Paste":"Paste","ExtenderBase_ControlNotRegisteredForCallbacks":"This Control has not been registered for callbacks","Calendar_Today":"Today: {0}","MultiHandleSlider_CssHeightWidthRequired":"You must specify a CSS width and height for all handle styles as well as the rail.","Common_DateTime_InvalidFormat":"Invalid format","ListSearch_DefaultPrompt":"Type to search","CollapsiblePanel_NoControlID":"Failed to find element \"{0}\"","RTE_ViewEditor":"View Editor","RTE_BarColor":"Bar Color","PasswordStrength_DefaultStrengthDescriptions":"NonExistent;Very Weak;Weak;Poor;Almost OK;Barely Acceptable;Average;Good;Strong;Excellent;Unbreakable!","RTE_Inserttexthere":"Insert text here","Animation_UknownAnimationName":"AjaxControlToolkit.Animation.createAnimation could not find an Animation corresponding to the name \"{0}\"","ExtenderBase_InvalidClientStateType":"saveClientState must return a value of type String","Rating_CallbackError":"An unhandled exception has occurred:\\r\\n{0}","Tabs_OwnerExpected":"owner must be set before initialize","DynamicPopulate_WebServiceTimeout":"Web service call timed out","PasswordStrength_RemainingLowerCase":"{0} more lower case characters","Animation_MissingAnimationName":"AjaxControlToolkit.Animation.createAnimation requires an object with an AnimationName property","RTE_JustifyRight":"Justify Right","Tabs_ActiveTabArgumentOutOfRange":"Argument is not a member of the tabs collection","RTE_CellPadding":"Cell Padding","RTE_ClearFormatting":"Clear Formatting","AlwaysVisible_ElementRequired":"AjaxControlToolkit.AlwaysVisibleControlBehavior must have an element","Slider_NoSizeProvided":"Please set valid values for the height and width attributes in the slider\u0027s CSS classes","DynamicPopulate_WebServiceError":"Web Service call failed: {0}","PasswordStrength_StrengthPrompt":"Strength: ","PasswordStrength_RemainingCharacters":"{0} more characters","PasswordStrength_Satisfied":"Nothing more required","RTE_Hyperlink":"Hyperlink","Animation_NoPropertyFound":"AjaxControlToolkit.Animation.createAnimation found no property corresponding to \"{0}\"","PasswordStrength_InvalidStrengthDescriptionStyles":"Text Strength description style classes must match the number of text descriptions.","PasswordStrength_GetHelpRequirements":"Get help on password requirements","PasswordStrength_InvalidStrengthDescriptions":"Invalid number of text strength descriptions specified","RTE_Underline":"Underline","Tabs_PropertySetAfterInitialization":"{0} cannot be changed after initialization","RTE_Rows":"Rows","RTE_Redo":"Redo","RTE_Size":"Size","RTE_Undo":"Undo","RTE_Bold":"Bold","RTE_Copy":"Copy","RTE_Font":"Font","CascadingDropDown_MethodError":"[Method error {0}]","RTE_BorderColor":"Border Color","RTE_Paragraph":"Paragraph","RTE_InsertHorizontalRule":"Insert Horizontal Rule","Common_UnitHasNoDigits":"No digits","RTE_Outdent":"Outdent","Common_DateTime_InvalidTimeSpan":"\"{0}\" is not a valid TimeSpan format","Animation_CannotNestSequence":"AjaxControlToolkit.Animation.SequenceAnimation cannot be nested inside AjaxControlToolkit.Animation.ParallelAnimation","Shared_BrowserSecurityPreventsPaste":"Your browser security settings don\u0027t permit the automatic execution of paste operations. Please use the keyboard shortcut Ctrl+V instead."};if(typeof(Sys)!=='undefined')Sys.Application.notifyScriptLoaded();Type.registerNamespace('AjaxControlToolkit');AjaxControlToolkit.TextBoxWatermarkBehavior=function(element){AjaxControlToolkit.TextBoxWatermarkBehavior.initializeBase(this,[element]);this._watermarkText=null;this._watermarkCssClass=null;this._focusHandler=null;this._blurHandler=null;this._keyPressHandler=null;this._propertyChangedHandler=null;this._watermarkChangedHandler=null;this._oldClassName=null;this._clearedForSubmit=null;this._maxLength=null;if((typeof(WebForm_OnSubmit)=='function')&&!AjaxControlToolkit.TextBoxWatermarkBehavior._originalWebForm_OnSubmit){AjaxControlToolkit.TextBoxWatermarkBehavior._originalWebForm_OnSubmit=WebForm_OnSubmit;WebForm_OnSubmit=AjaxControlToolkit.TextBoxWatermarkBehavior.WebForm_OnSubmit;}}
AjaxControlToolkit.TextBoxWatermarkBehavior.prototype={initialize:function(){AjaxControlToolkit.TextBoxWatermarkBehavior.callBaseMethod(this,'initialize');var e=this.get_element();var hasInitialFocus=false;var clientState=AjaxControlToolkit.TextBoxWatermarkBehavior.callBaseMethod(this,'get_ClientState');if(clientState!=null&&clientState!=""){hasInitialFocus=(clientState=="Focused");AjaxControlToolkit.TextBoxWatermarkBehavior.callBaseMethod(this,'set_ClientState',null);}
this._oldClassName=e.className;this._focusHandler=Function.createDelegate(this,this._onFocus);this._blurHandler=Function.createDelegate(this,this._onBlur);this._keyPressHandler=Function.createDelegate(this,this._onKeyPress);$addHandler(e,'focus',this._focusHandler);$addHandler(e,'blur',this._blurHandler);$addHandler(e,'keypress',this._keyPressHandler);this.registerPropertyChanged();var currentValue=AjaxControlToolkit.TextBoxWrapper.get_Wrapper(this.get_element()).get_Current();var wrapper=AjaxControlToolkit.TextBoxWrapper.get_Wrapper(this.get_element());if((""==currentValue)||(this._watermarkText==currentValue)){wrapper.set_Watermark(this._watermarkText)
wrapper.set_IsWatermarked(true);}
if(hasInitialFocus){this._onFocus();}else{e.blur();this._onBlur();}
this._clearedForSubmit=false;this.registerPartialUpdateEvents();this._watermarkChangedHandler=Function.createDelegate(this,this._onWatermarkChanged);wrapper.add_WatermarkChanged(this._watermarkChangedHandler);},dispose:function(){var e=this.get_element();if(this._watermarkChangedHandler){AjaxControlToolkit.TextBoxWrapper.get_Wrapper(this.get_element()).remove_WatermarkChanged(this._watermarkChangedHandler);this._watermarkChangedHandler=null;}
if(e.control&&this._propertyChangedHandler){e.control.remove_propertyChanged(this._propertyChangedHandler);this._propertyChangedHandler=null;}
if(this._focusHandler){$removeHandler(e,'focus',this._focusHandler);this._focusHandler=null;}
if(this._blurHandler){$removeHandler(e,'blur',this._blurHandler);this._blurHandler=null;}
if(this._keyPressHandler){$removeHandler(e,'keypress',this._keyPressHandler);this._keyPressHandler=null;}
if(AjaxControlToolkit.TextBoxWrapper.get_Wrapper(this.get_element()).get_IsWatermarked()){this.clearText(false);}
AjaxControlToolkit.TextBoxWatermarkBehavior.callBaseMethod(this,'dispose');},_onWatermarkChanged:function(sender,eventArgs){if(AjaxControlToolkit.TextBoxWrapper.get_Wrapper(this.get_element()).get_IsWatermarked()){this._onBlur();}else{this._onFocus();}},clearText:function(focusing){var element=this.get_element();var wrapper=AjaxControlToolkit.TextBoxWrapper.get_Wrapper(element);wrapper.set_Value("");wrapper.set_IsWatermarked(false);if(focusing){element.setAttribute("autocomplete","off");element.select();}},_onFocus:function(evt){var e=this.get_element();if(AjaxControlToolkit.TextBoxWrapper.get_Wrapper(e).get_IsWatermarked()){this.clearText(evt?true:false);}
e.className=this._oldClassName;if(this._maxLength>0){this.get_element().maxLength=this._maxLength;this._maxLength=null;}},_onBlur:function(){var wrapper=AjaxControlToolkit.TextBoxWrapper.get_Wrapper(this.get_element());if((""==wrapper.get_Current())||wrapper.get_IsWatermarked()){if(this.get_element().maxLength>0&&this._watermarkText.length>this.get_element().maxLength){this._maxLength=this.get_element().maxLength;this.get_element().maxLength=this._watermarkText.length;}
this._applyWatermark();}},_applyWatermark:function(){var wrapper=AjaxControlToolkit.TextBoxWrapper.get_Wrapper(this.get_element());wrapper.set_Watermark(this._watermarkText);wrapper.set_IsWatermarked(true);if(this._watermarkCssClass){this.get_element().className=this._watermarkCssClass;}},_onKeyPress:function(){AjaxControlToolkit.TextBoxWrapper.get_Wrapper(this.get_element()).set_IsWatermarked(false);},registerPropertyChanged:function(){var e=this.get_element();if(e.control&&!this._propertyChangedHandler){this._propertyChangedHandler=Function.createDelegate(this,this._onPropertyChanged);e.control.add_propertyChanged(this._propertyChangedHandler);}},_onPropertyChanged:function(sender,propertyChangedEventArgs){if("text"==propertyChangedEventArgs.get_propertyName()){this.set_Value(AjaxControlToolkit.TextBoxWrapper.get_Wrapper(this.get_element()).get_Current());}},_onSubmit:function(){if(AjaxControlToolkit.TextBoxWrapper.get_Wrapper(this.get_element()).get_IsWatermarked()){this.clearText(false);this._clearedForSubmit=true;}},_partialUpdateEndRequest:function(sender,endRequestEventArgs){AjaxControlToolkit.TextBoxWatermarkBehavior.callBaseMethod(this,'_partialUpdateEndRequest',[sender,endRequestEventArgs]);if(this.get_element()&&this._clearedForSubmit){this.get_element().blur();this._onBlur();this._clearedForSubmit=false;}},get_WatermarkText:function(){return this._watermarkText;},set_WatermarkText:function(value){if(this._watermarkText!=value){this._watermarkText=value;if(AjaxControlToolkit.TextBoxWrapper.get_Wrapper(this.get_element()).get_IsWatermarked()){this._applyWatermark();}
this.raisePropertyChanged('WatermarkText');}},get_WatermarkCssClass:function(){return this._watermarkCssClass;},set_WatermarkCssClass:function(value){if(this._watermarkCssClass!=value){this._watermarkCssClass=value;if(AjaxControlToolkit.TextBoxWrapper.get_Wrapper(this.get_element()).get_IsWatermarked()){this._applyWatermark();}
this.raisePropertyChanged('WatermarkCssClass');}},get_Text:function(){return AjaxControlToolkit.TextBoxWrapper.get_Wrapper(this.get_element()).get_Value();},set_Text:function(value){if(""==value){AjaxControlToolkit.TextBoxWrapper.get_Wrapper(this.get_element()).set_Current("");this.get_element().blur();this._onBlur();}else{this._onFocus();AjaxControlToolkit.TextBoxWrapper.get_Wrapper(this.get_element()).set_Current(value);}}}
AjaxControlToolkit.TextBoxWatermarkBehavior.registerClass('AjaxControlToolkit.TextBoxWatermarkBehavior',AjaxControlToolkit.BehaviorBase);AjaxControlToolkit.TextBoxWatermarkBehavior.WebForm_OnSubmit=function(){var result=AjaxControlToolkit.TextBoxWatermarkBehavior._originalWebForm_OnSubmit();if(result){var components=Sys.Application.getComponents();for(var i=0;i<components.length;i++){var component=components[i];if(AjaxControlToolkit.TextBoxWatermarkBehavior.isInstanceOfType(component)){component._onSubmit();}}}
return result;}
if(typeof(Sys)!=='undefined')Sys.Application.notifyScriptLoaded();