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":"The history state must be small enough to not make the url larger than 1024 characters.","argumentTypeName":"Value is not the name of an existing type.","methodRegisteredTwice":"Method{0} has already been registered.","cantSetIdAfterInit":"The id property can\u0027t be set on this object after initialization.","cantBeCalledAfterDispose":"Can\u0027t be called after dispose.","componentCantSetIdAfterAddedToApp":"The id property of a component can\u0027t be set after it\u0027s been added to the Application object.","behaviorDuplicateName":"A behavior with name \u0027{0}\u0027 already exists or it is the name of an existing property on the target element.","notATypeName":"Value is not a valid type name.","typeShouldBeTypeOrString":"Value is not a valid type or a valid type name.","historyInvalidHistorySettingCombination":"Cannot set enableHistory to false when ScriptManager.EnableHistory is true.","stateMustBeStringDictionary":"The state object can only have null and string fields.","boolTrueOrFalse":"Value must be \u0027true\u0027 or \u0027false\u0027.","scriptLoadFailedNoHead":"ScriptLoader requires pages to contain a \u003chead\u003e element.","stringFormatInvalid":"The format string is invalid.","referenceNotFound":"Component \u0027{0}\u0027 was not found.","enumReservedName":"\u0027{0}\u0027 is a reserved name that can\u0027t be used as an enum value name.","eventHandlerNotFound":"Handler not found.","circularParentChain":"The chain of control parents can\u0027t have circular references.","undefinedEvent":"\u0027{0}\u0027 is not an event.","notAMethod":"{0} is not a method.","propertyUndefined":"\u0027{0}\u0027 is not a property or an existing field.","historyCannotEnableHistory":"Cannot set enableHistory after initialization.","eventHandlerInvalid":"Handler was not added through the Sys.UI.DomEvent.addHandler method.","scriptLoadFailedDebug":"The script \u0027{0}\u0027 failed to load. Check for:\r\n Inaccessible path.\r\n Script errors. (IE) Enable \u0027Display a notification about every script error\u0027 under advanced settings.\r\n Missing call to Sys.Application.notifyScriptLoaded().","propertyNotWritable":"\u0027{0}\u0027 is not a writable property.","enumInvalidValueName":"\u0027{0}\u0027 is not a valid name for an enum value.","controlAlreadyDefined":"A control is already associated with the element.","addHandlerCantBeUsedForError":"Can\u0027t add a handler for the error event using this method. Please set the window.onerror property instead.","namespaceContainsObject":"Object{0} already exists and is not a namespace.","cantAddNonFunctionhandler":"Can\u0027t add a handler that is not a function.","invalidNameSpace":"Value is not a valid namespace identifier.","notAnInterface":"Value is not a valid interface.","eventHandlerNotFunction":"Handler must be a function.","propertyNotAnArray":"\u0027{0}\u0027 is not an Array property.","typeRegisteredTwice":"Type{0} has already been registered. The type may be defined multiple times or the script file that defines it may have already been loaded. A possible cause is a change of settings during a partial update.","cantSetNameAfterInit":"The name property can\u0027t be set on this object after initialization.","historyMissingFrame":"For the history feature to work in IE,the page must have an iFrame element with id \u0027__historyFrame\u0027 pointed to a page that gets its title from the \u0027title\u0027 query string parameter and calls Sys.Application._onIFrameLoad() on the parent window. This can be done by setting EnableHistory to true on ScriptManager.","appDuplicateComponent":"Two components with the same id \u0027{0}\u0027 can\u0027t be added to the application.","historyCannotAddHistoryPointWithHistoryDisabled":"A history point can only be added if enableHistory is set to true.","appComponentMustBeInitialized":"Components must be initialized before they are added to the Application object.","baseNotAClass":"Value is not a class.","methodNotFound":"No method found with name \u0027{0}\u0027.","arrayParseBadFormat":"Value must be a valid string representation for an array. It must start with a \u0027[\u0027 and end with a \u0027]\u0027.","stateFieldNameInvalid":"State field names must not contain any \u0027=\u0027 characters.","cantSetId":"The id property can\u0027t be set on this object.","historyMissingHiddenInput":"For the history feature to work in Safari 2,the page must have a hidden input element with id \u0027__history\u0027.","stringFormatBraceMismatch":"The format string contains an unmatched opening or closing brace.","enumValueNotInteger":"An enumeration definition can only contain integer values.","propertyNullOrUndefined":"Cannot set the properties of \u0027{0}\u0027 because it returned a null value.","argumentDomNode":"Value must be a DOM element or a text node.","componentCantSetIdTwice":"The id property of a component can\u0027t be set more than once.","createComponentOnDom":"Value must be null for Components that are not Controls or Behaviors.","createNotComponent":"{0} does not derive from Sys.Component.","createNoDom":"Value must not be null for Controls and Behaviors.","cantAddWithoutId":"Can\u0027t add a component that doesn\u0027t have an id.","badTypeName":"Value is not the name of the type being registered or the name is a reserved word.","argumentInteger":"Value must be an integer.","scriptLoadMultipleCallbacks":"The script \u0027{0}\u0027 contains multiple calls to Sys.Application.notifyScriptLoaded(). Only one is allowed.","invokeCalledTwice":"Cannot call invoke more than once.","webServiceFailed":"The server method \u0027{0}\u0027 failed with the following error:{1}","webServiceInvalidJsonWrapper":"The server method \u0027{0}\u0027 returned invalid data. The \u0027d\u0027 property is missing from the JSON wrapper.","argumentType":"Object cannot be converted to the required type.","argumentNull":"Value cannot be null.","controlCantSetId":"The id property can\u0027t be set on a control.","formatBadFormatSpecifier":"Format specifier was invalid.","webServiceFailedNoMsg":"The server method \u0027{0}\u0027 failed.","argumentDomElement":"Value must be a DOM element.","invalidExecutorType":"Could not create a valid Sys.Net.WebRequestExecutor from:{0}.","cannotCallBeforeResponse":"Cannot call{0} when responseAvailable is false.","actualValue":"Actual value was{0}.","enumInvalidValue":"\u0027{0}\u0027 is not a valid value for enum{1}.","scriptLoadFailed":"The script \u0027{0}\u0027 could not be loaded.","parameterCount":"Parameter count mismatch.","cannotDeserializeEmptyString":"Cannot deserialize empty string.","formatInvalidString":"Input string was not in a correct format.","invalidTimeout":"Value must be greater than or equal to zero.","cannotAbortBeforeStart":"Cannot abort when executor has not started.","argument":"Value does not fall within the expected range.","cannotDeserializeInvalidJson":"Cannot deserialize. The data does not correspond to valid JSON.","invalidHttpVerb":"httpVerb cannot be set to an empty or null string.","nullWebRequest":"Cannot call executeRequest with a null webRequest.","eventHandlerInvalid":"Handler was not added through the Sys.UI.DomEvent.addHandler method.","cannotSerializeNonFiniteNumbers":"Cannot serialize non finite numbers.","argumentUndefined":"Value cannot be undefined.","webServiceInvalidReturnType":"The server method \u0027{0}\u0027 returned an invalid type. Expected type:{1}","servicePathNotSet":"The path to the web service has not been set.","argumentTypeWithTypes":"Object of type \u0027{0}\u0027 cannot be converted to type \u0027{1}\u0027.","cannotCallOnceStarted":"Cannot call{0} once started.","badBaseUrl1":"Base URL does not contain ://.","badBaseUrl2":"Base URL does not contain another /.","badBaseUrl3":"Cannot find last / in base URL.","setExecutorAfterActive":"Cannot set executor after it has become active.","paramName":"Parameter name:{0}","cannotCallOutsideHandler":"Cannot call{0} outside of a completed event handler.","cannotSerializeObjectWithCycle":"Cannot serialize object with cyclic reference within child properties.","format":"One of the identified items was in an invalid format.","assertFailedCaller":"Assertion Failed:{0}\r\nat{1}","argumentOutOfRange":"Specified argument was out of the range of valid values.","webServiceTimedOut":"The server method \u0027{0}\u0027 timed out.","notImplemented":"The method or operation is not implemented.","assertFailed":"Assertion Failed:{0}","invalidOperation":"Operation is not valid due to the current state of the object.","breakIntoDebugger":"{0}\r\n\r\nBreak into debugger?"
};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){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){return Sys.UI.DomElement.getBounds(element);},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;if (document.compatMode == "CSS1Compat"){clientWidth = document.documentElement.clientWidth;clientHeight = document.documentElement.clientHeight;}
else{clientWidth = document.body.clientWidth;clientHeight = document.body.clientHeight;}
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');}
}
},appendElementToFormOrBody: function(element){if (document.forms && document.forms[0]){document.forms[0].appendChild(element);} else{document.body.appendChild(element);}
}
}
if (document.documentElement.getBoundingClientRect){Sys.UI.DomElement.getLocation = function(element){if (element.self || element.nodeType === 9 || // window?
(element === document.documentElement) || // documentElement?
(element.parentNode === element.ownerDocument.documentElement)){// body?
return new Sys.UI.Point(0,0);}
var clientRect = element.getBoundingClientRect();if (!clientRect){return new Sys.UI.Point(0,0);}
var ex,documentElement = element.ownerDocument.documentElement,offsetX = Math.round(clientRect.left) + documentElement.scrollLeft,offsetY = Math.round(clientRect.top) + documentElement.scrollTop;if (Sys.Browser.agent === Sys.Browser.InternetExplorer){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){}
if (Sys.Browser.version === 7 && !document.documentMode){var body = document.body,rect = body.getBoundingClientRect(),zoom = (rect.right-rect.left) / body.clientWidth;zoom = Math.round(zoom * 100);zoom = (zoom - zoom % 5) / 100;if (!isNaN(zoom) && (zoom !== 1)){offsetX = Math.round(offsetX / zoom);offsetY = Math.round(offsetY / zoom);}
}
if ((document.documentMode || 0) < 8){offsetX -= documentElement.clientLeft;offsetY -= documentElement.clientTop;}
}
return new Sys.UI.Point(offsetX,offsetY);}
}
else if (Sys.Browser.agent === Sys.Browser.Safari){Sys.UI.DomElement.getLocation = function(element){if ((element.window && (element.window === element)) || element.nodeType === 9) return new Sys.UI.Point(0,0);var offsetX = 0,offsetY = 0,parent,previous = null,previousStyle = null,currentStyle;for (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;}
if (previous && Sys.Browser.version >= 3){offsetX += parseInt(currentStyle.borderLeftWidth);offsetY += parseInt(currentStyle.borderTopWidth);}
}
currentStyle = Sys.UI.DomElement._getCurrentStyle(element);var elementPosition = currentStyle ? currentStyle.position : null;if (!elementPosition || (elementPosition !== "absolute")){for (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);}
}
else{Sys.UI.DomElement.getLocation = function(element){if ((element.window && (element.window === element)) || element.nodeType === 9) return new Sys.UI.Point(0,0);var offsetX = 0,offsetY = 0,parent,previous = null,previousStyle = null,currentStyle = null;for (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 (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);}
}
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){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();Sys.Timer = function(){Sys.Timer.initializeBase(this);this._interval = 1000;this._enabled = false;this._timer = null;}
Sys.Timer.prototype ={get_interval: function(){return this._interval;},set_interval: function(value){if (this._interval !== value){this._interval = value;this.raisePropertyChanged('interval');if (!this.get_isUpdating() && (this._timer !== null)){this._stopTimer();this._startTimer();}
}
},get_enabled: function(){return this._enabled;},set_enabled: function(value){if (value !== this.get_enabled()){this._enabled = value;this.raisePropertyChanged('enabled');if (!this.get_isUpdating()){if (value){this._startTimer();}
else{this._stopTimer();}
}
}
},add_tick: function(handler){this.get_events().addHandler("tick",handler);},remove_tick: function(handler){this.get_events().removeHandler("tick",handler);},dispose: function(){this.set_enabled(false);this._stopTimer();Sys.Timer.callBaseMethod(this,'dispose');},updated: function(){Sys.Timer.callBaseMethod(this,'updated');if (this._enabled){this._stopTimer();this._startTimer();}
},_timerCallback: function(){var handler = this.get_events().getHandler("tick");if (handler){handler(this,Sys.EventArgs.Empty);}
},_startTimer: function(){this._timer = window.setInterval(Function.createDelegate(this,this._timerCallback),this._interval);},_stopTimer: function(){window.clearInterval(this._timer);this._timer = null;}
}
Sys.Timer.descriptor ={properties: [{name: 'interval',type: Number},{name: 'enabled',type: Boolean} ],events: [{name: 'tick'} ]
}
Sys.Timer.registerClass('Sys.Timer',Sys.Component);if(typeof(Sys)!=='undefined')Sys.Application.notifyScriptLoaded();Type.registerNamespace('AjaxControlToolkit.Animation');var $AA = AjaxControlToolkit.Animation;$AA.registerAnimation = function(name,type){if (type && ((type === $AA.Animation) || (type.inheritsFrom && type.inheritsFrom($AA.Animation)))){if (!$AA.__animations){$AA.__animations ={};}
$AA.__animations[name.toLowerCase()] = type;type.play = function(){var animation = new type();type.apply(animation,arguments);animation.initialize();var handler = Function.createDelegate(animation,function(){animation.remove_ended(handler);handler = null;animation.dispose();});animation.add_ended(handler);animation.play();}
} else{throw Error.argumentType('type',type,$AA.Animation,AjaxControlToolkit.Resources.Animation_InvalidBaseType);}
}
$AA.buildAnimation = function(json,defaultTarget){if (!json || json === ''){return null;}
var obj;json = '(' + json + ')';if (! Sys.Debug.isDebug){try{obj = Sys.Serialization.JavaScriptSerializer.deserialize(json);} catch (ex){}
} else{obj = Sys.Serialization.JavaScriptSerializer.deserialize(json);}
return $AA.createAnimation(obj,defaultTarget);}
$AA.createAnimation = function(obj,defaultTarget){if (!obj || !obj.AnimationName){throw Error.argument('obj',AjaxControlToolkit.Resources.Animation_MissingAnimationName);}
var type = $AA.__animations[obj.AnimationName.toLowerCase()];if (!type){throw Error.argument('type',String.format(AjaxControlToolkit.Resources.Animation_UknownAnimationName,obj.AnimationName));}
var animation = new type();if (defaultTarget){animation.set_target(defaultTarget);}
if (obj.AnimationChildren && obj.AnimationChildren.length){if ($AA.ParentAnimation.isInstanceOfType(animation)){for (var i = 0;i < obj.AnimationChildren.length;i++){var child = $AA.createAnimation(obj.AnimationChildren[i]);if (child){animation.add(child);}
}
} else{throw Error.argument('obj',String.format(AjaxControlToolkit.Resources.Animation_ChildrenNotAllowed,type.getName()));}
}
var properties = type.__animationProperties;if (!properties){type.__animationProperties ={};type.resolveInheritance();for (var name in type.prototype){if (name.startsWith('set_')){type.__animationProperties[name.substr(4).toLowerCase()] = name;}
}
delete type.__animationProperties['id'];properties = type.__animationProperties;}
for (var property in obj){var prop = property.toLowerCase();if (prop == 'animationname' || prop == 'animationchildren'){continue;}
var value = obj[property];var setter = properties[prop];if (setter && String.isInstanceOfType(setter) && animation[setter]){if (! Sys.Debug.isDebug){try{animation[setter](value);} catch (ex){}
} else{animation[setter](value);}
} else{if (prop.endsWith('script')){setter = properties[prop.substr(0,property.length - 6)];if (setter && String.isInstanceOfType(setter) && animation[setter]){animation.DynamicProperties[setter] = value;} else if ( Sys.Debug.isDebug){throw Error.argument('obj',String.format(AjaxControlToolkit.Resources.Animation_NoDynamicPropertyFound,property,property.substr(0,property.length - 5)));}
} else if ( Sys.Debug.isDebug){throw Error.argument('obj',String.format(AjaxControlToolkit.Resources.Animation_NoPropertyFound,property));}
}
}
return animation;}
$AA.Animation = function(target,duration,fps){$AA.Animation.initializeBase(this);this._duration = 1;this._fps = 25;this._target = null;this._tickHandler = null;this._timer = null;this._percentComplete = 0;this._percentDelta = null;this._owner = null;this._parentAnimation = null;this.DynamicProperties ={};if (target){this.set_target(target);}
if (duration){this.set_duration(duration);}
if (fps){this.set_fps(fps);}
}
$AA.Animation.prototype ={dispose: function(){if (this._timer){this._timer.dispose();this._timer = null;}
this._tickHandler = null;this._target = null;$AA.Animation.callBaseMethod(this,'dispose');},play: function(){if (!this._owner){var resume = true;if (!this._timer){resume = false;if (!this._tickHandler){this._tickHandler = Function.createDelegate(this,this._onTimerTick);}
this._timer = new Sys.Timer();this._timer.add_tick(this._tickHandler);this.onStart();this._timer.set_interval(1000 / this._fps);this._percentDelta = 100 / (this._duration * this._fps);this._updatePercentComplete(0,true);}
this._timer.set_enabled(true);this.raisePropertyChanged('isPlaying');if (!resume){this.raisePropertyChanged('isActive');}
}
},pause: function(){if (!this._owner){if (this._timer){this._timer.set_enabled(false);this.raisePropertyChanged('isPlaying');}
}
},stop: function(finish){if (!this._owner){var t = this._timer;this._timer = null;if (t){t.dispose();if (this._percentComplete !== 100){this._percentComplete = 100;this.raisePropertyChanged('percentComplete');if (finish || finish === undefined){this.onStep(100);}
}
this.onEnd();this.raisePropertyChanged('isPlaying');this.raisePropertyChanged('isActive');}
}
},onStart: function(){this.raiseStarted();for (var property in this.DynamicProperties){try{this[property](eval(this.DynamicProperties[property]));} catch (ex){if (Sys.Debug.isDebug){throw ex;}
}
}
},onStep: function(percentage){this.setValue(this.getAnimatedValue(percentage));this.raiseStep();},onEnd: function(){this.raiseEnded();},getAnimatedValue: function(percentage){throw Error.notImplemented();},setValue: function(value){throw Error.notImplemented();},interpolate: function(start,end,percentage){return start + (end - start) * (percentage / 100);},_onTimerTick: function(){this._updatePercentComplete(this._percentComplete + this._percentDelta,true);},_updatePercentComplete: function(percentComplete,animate){if (percentComplete > 100){percentComplete = 100;}
this._percentComplete = percentComplete;this.raisePropertyChanged('percentComplete');if (animate){this.onStep(percentComplete);}
if (percentComplete === 100){this.stop(false);}
},setOwner: function(owner){this._owner = owner;},raiseStarted: function(){var handlers = this.get_events().getHandler('started');if (handlers){handlers(this,Sys.EventArgs.Empty);}
},add_started: function(handler){this.get_events().addHandler("started",handler);},remove_started: function(handler){this.get_events().removeHandler("started",handler);},raiseEnded: function(){var handlers = this.get_events().getHandler('ended');if (handlers){handlers(this,Sys.EventArgs.Empty);}
},add_ended: function(handler){this.get_events().addHandler("ended",handler);},remove_ended: function(handler){this.get_events().removeHandler("ended",handler);},raiseStep: function(){var handlers = this.get_events().getHandler('step');if (handlers){handlers(this,Sys.EventArgs.Empty);}
},add_step: function(handler){this.get_events().addHandler("step",handler);},remove_step: function(handler){this.get_events().removeHandler("step",handler);},get_target: function(){if (!this._target && this._parentAnimation){return this._parentAnimation.get_target();}
return this._target;},set_target: function(value){if (this._target != value){this._target = value;this.raisePropertyChanged('target');}
},set_animationTarget: function(id){var target = null;var element = $get(id);if (element){target = element;} else{var ctrl = $find(id);if (ctrl){element = ctrl.get_element();if (element){target = element;}
}
}
if (target){this.set_target(target);} else{throw Error.argument('id',String.format(AjaxControlToolkit.Resources.Animation_TargetNotFound,id));}
},get_duration: function(){return this._duration;},set_duration: function(value){value = this._getFloat(value);if (this._duration != value){this._duration = value;this.raisePropertyChanged('duration');}
},get_fps: function(){return this._fps;},set_fps: function(value){value = this._getInteger(value);if (this.fps != value){this._fps = value;this.raisePropertyChanged('fps');}
},get_isActive: function(){return (this._timer !== null);},get_isPlaying: function(){return (this._timer !== null) && this._timer.get_enabled();},get_percentComplete: function(){return this._percentComplete;},_getBoolean: function(value){if (String.isInstanceOfType(value)){return Boolean.parse(value);}
return value;},_getInteger: function(value){if (String.isInstanceOfType(value)){return parseInt(value);}
return value;},_getFloat: function(value){if (String.isInstanceOfType(value)){return parseFloat(value);}
return value;},_getEnum: function(value,type){if (String.isInstanceOfType(value) && type && type.parse){return type.parse(value);}
return value;}
}
$AA.Animation.registerClass('AjaxControlToolkit.Animation.Animation',Sys.Component);$AA.registerAnimation('animation',$AA.Animation);$AA.ParentAnimation = function(target,duration,fps,animations){$AA.ParentAnimation.initializeBase(this,[target,duration,fps]);this._animations = [];if (animations && animations.length){for (var i = 0;i < animations.length;i++){this.add(animations[i]);}
}
}
$AA.ParentAnimation.prototype ={initialize : function(){$AA.ParentAnimation.callBaseMethod(this,'initialize');if (this._animations){for (var i = 0;i < this._animations.length;i++){var animation = this._animations[i];if (animation && !animation.get_isInitialized){animation.initialize();}
}
}
},dispose : function(){this.clear();this._animations = null;$AA.ParentAnimation.callBaseMethod(this,'dispose');},get_animations : function(){return this._animations;},add : function(animation){if (this._animations){if (animation){animation._parentAnimation = this;}
Array.add(this._animations,animation);this.raisePropertyChanged('animations');}
},remove : function(animation){if (this._animations){if (animation){animation.dispose();}
Array.remove(this._animations,animation);this.raisePropertyChanged('animations');}
},removeAt : function(index){if (this._animations){var animation = this._animations[index];if (animation){animation.dispose();}
Array.removeAt(this._animations,index);this.raisePropertyChanged('animations');}
},clear : function(){if (this._animations){for (var i = this._animations.length - 1;i >= 0;i--){this._animations[i].dispose();this._animations[i] = null;}
Array.clear(this._animations);this._animations = [];this.raisePropertyChanged('animations');}
}
}
$AA.ParentAnimation.registerClass('AjaxControlToolkit.Animation.ParentAnimation',$AA.Animation);$AA.registerAnimation('parent',$AA.ParentAnimation);$AA.ParallelAnimation = function(target,duration,fps,animations){$AA.ParallelAnimation.initializeBase(this,[target,duration,fps,animations]);}
$AA.ParallelAnimation.prototype ={add : function(animation){$AA.ParallelAnimation.callBaseMethod(this,'add',[animation]);animation.setOwner(this);},onStart : function(){$AA.ParallelAnimation.callBaseMethod(this,'onStart');var animations = this.get_animations();for (var i = 0;i < animations.length;i++){animations[i].onStart();}
},onStep : function(percentage){var animations = this.get_animations();for (var i = 0;i < animations.length;i++){animations[i].onStep(percentage);}
},onEnd : function(){var animations = this.get_animations();for (var i = 0;i < animations.length;i++){animations[i].onEnd();}
$AA.ParallelAnimation.callBaseMethod(this,'onEnd');}
}
$AA.ParallelAnimation.registerClass('AjaxControlToolkit.Animation.ParallelAnimation',$AA.ParentAnimation);$AA.registerAnimation('parallel',$AA.ParallelAnimation);$AA.SequenceAnimation = function(target,duration,fps,animations,iterations){$AA.SequenceAnimation.initializeBase(this,[target,duration,fps,animations]);this._handler = null;this._paused = false;this._playing = false;this._index = 0;this._remainingIterations = 0;this._iterations = (iterations !== undefined) ? iterations : 1;}
$AA.SequenceAnimation.prototype ={dispose : function(){this._handler = null;$AA.SequenceAnimation.callBaseMethod(this,'dispose');},stop : function(){if (this._playing){var animations = this.get_animations();if (this._index < animations.length){animations[this._index].remove_ended(this._handler);for (var i = this._index;i < animations.length;i++){animations[i].stop();}
}
this._playing = false;this._paused = false;this.raisePropertyChanged('isPlaying');this.onEnd();}
},pause : function(){if (this.get_isPlaying()){var current = this.get_animations()[this._index];if (current != null){current.pause();}
this._paused = true;this.raisePropertyChanged('isPlaying');}
},play : function(){var animations = this.get_animations();if (!this._playing){this._playing = true;if (this._paused){this._paused = false;var current = animations[this._index];if (current != null){current.play();this.raisePropertyChanged('isPlaying');}
} else{this.onStart();this._index = 0;var first = animations[this._index];if (first){first.add_ended(this._handler);first.play();this.raisePropertyChanged('isPlaying');} else{this.stop();}
}
}
},onStart : function(){$AA.SequenceAnimation.callBaseMethod(this,'onStart');this._remainingIterations = this._iterations - 1;if (!this._handler){this._handler = Function.createDelegate(this,this._onEndAnimation);}
},_onEndAnimation : function(){var animations = this.get_animations();var current = animations[this._index++];if (current){current.remove_ended(this._handler);}
if (this._index < animations.length){var next = animations[this._index];next.add_ended(this._handler);next.play();} else if (this._remainingIterations >= 1 || this._iterations <= 0){this._remainingIterations--;this._index = 0;var first = animations[0];first.add_ended(this._handler);first.play();} else{this.stop();}
},onStep : function(percentage){throw Error.invalidOperation(AjaxControlToolkit.Resources.Animation_CannotNestSequence);},onEnd : function(){this._remainingIterations = 0;$AA.SequenceAnimation.callBaseMethod(this,'onEnd');},get_isActive : function(){return true;},get_isPlaying : function(){return this._playing && !this._paused;},get_iterations : function(){return this._iterations;},set_iterations : function(value){value = this._getInteger(value);if (this._iterations != value){this._iterations = value;this.raisePropertyChanged('iterations');}
},get_isInfinite : function(){return this._iterations <= 0;}
}
$AA.SequenceAnimation.registerClass('AjaxControlToolkit.Animation.SequenceAnimation',$AA.ParentAnimation);$AA.registerAnimation('sequence',$AA.SequenceAnimation);$AA.SelectionAnimation = function(target,duration,fps,animations){$AA.SelectionAnimation.initializeBase(this,[target,duration,fps,animations]);this._selectedIndex = -1;this._selected = null;}
$AA.SelectionAnimation.prototype ={getSelectedIndex : function(){throw Error.notImplemented();},onStart : function(){$AA.SelectionAnimation.callBaseMethod(this,'onStart');var animations = this.get_animations();this._selectedIndex = this.getSelectedIndex();if (this._selectedIndex >= 0 && this._selectedIndex < animations.length){this._selected = animations[this._selectedIndex];if (this._selected){this._selected.setOwner(this);this._selected.onStart();}
}
},onStep : function(percentage){if (this._selected){this._selected.onStep(percentage);}
},onEnd : function(){if (this._selected){this._selected.onEnd();this._selected.setOwner(null);}
this._selected = null;this._selectedIndex = null;$AA.SelectionAnimation.callBaseMethod(this,'onEnd');}
}
$AA.SelectionAnimation.registerClass('AjaxControlToolkit.Animation.SelectionAnimation',$AA.ParentAnimation);$AA.registerAnimation('selection',$AA.SelectionAnimation);$AA.ConditionAnimation = function(target,duration,fps,animations,conditionScript){$AA.ConditionAnimation.initializeBase(this,[target,duration,fps,animations]);this._conditionScript = conditionScript;}
$AA.ConditionAnimation.prototype ={getSelectedIndex : function(){var selected = -1;if (this._conditionScript && this._conditionScript.length > 0){try{selected = eval(this._conditionScript) ? 0 : 1;} catch(ex){}
}
return selected;},get_conditionScript : function(){return this._conditionScript;},set_conditionScript : function(value){if (this._conditionScript != value){this._conditionScript = value;this.raisePropertyChanged('conditionScript');}
}
}
$AA.ConditionAnimation.registerClass('AjaxControlToolkit.Animation.ConditionAnimation',$AA.SelectionAnimation);$AA.registerAnimation('condition',$AA.ConditionAnimation);$AA.CaseAnimation = function(target,duration,fps,animations,selectScript){$AA.CaseAnimation.initializeBase(this,[target,duration,fps,animations]);this._selectScript = selectScript;}
$AA.CaseAnimation.prototype ={getSelectedIndex : function(){var selected = -1;if (this._selectScript && this._selectScript.length > 0){try{var result = eval(this._selectScript)
if (result !== undefined)
selected = result;} catch (ex){}
}
return selected;},get_selectScript : function(){return this._selectScript;},set_selectScript : function(value){if (this._selectScript != value){this._selectScript = value;this.raisePropertyChanged('selectScript');}
}
}
$AA.CaseAnimation.registerClass('AjaxControlToolkit.Animation.CaseAnimation',$AA.SelectionAnimation);$AA.registerAnimation('case',$AA.CaseAnimation);$AA.FadeEffect = function(){throw Error.invalidOperation();}
$AA.FadeEffect.prototype ={FadeIn : 0,FadeOut : 1
}
$AA.FadeEffect.registerEnum("AjaxControlToolkit.Animation.FadeEffect",false);$AA.FadeAnimation = function(target,duration,fps,effect,minimumOpacity,maximumOpacity,forceLayoutInIE){$AA.FadeAnimation.initializeBase(this,[target,duration,fps]);this._effect = (effect !== undefined) ? effect : $AA.FadeEffect.FadeIn;this._max = (maximumOpacity !== undefined) ? maximumOpacity : 1;this._min = (minimumOpacity !== undefined) ? minimumOpacity : 0;this._start = this._min;this._end = this._max;this._layoutCreated = false;this._forceLayoutInIE = (forceLayoutInIE === undefined || forceLayoutInIE === null) ? true : forceLayoutInIE;this._currentTarget = null;this._resetOpacities();}
$AA.FadeAnimation.prototype ={_resetOpacities : function(){if (this._effect == $AA.FadeEffect.FadeIn){this._start = this._min;this._end = this._max;} else{this._start = this._max;this._end = this._min;}
},_createLayout : function(){var element = this._currentTarget;if (element){this._originalWidth = $common.getCurrentStyle(element,'width');var originalHeight = $common.getCurrentStyle(element,'height');this._originalBackColor = $common.getCurrentStyle(element,'backgroundColor');if ((!this._originalWidth || this._originalWidth == '' || this._originalWidth == 'auto') &&
(!originalHeight || originalHeight == '' || originalHeight == 'auto')){element.style.width = element.offsetWidth + 'px';}
if (!this._originalBackColor || this._originalBackColor == '' || this._originalBackColor == 'transparent' || this._originalBackColor == 'rgba(0,0,0,0)'){element.style.backgroundColor = $common.getInheritedBackgroundColor(element);}
this._layoutCreated = true;}
},onStart : function(){$AA.FadeAnimation.callBaseMethod(this,'onStart');this._currentTarget = this.get_target();this.setValue(this._start);if (this._forceLayoutInIE && !this._layoutCreated && Sys.Browser.agent == Sys.Browser.InternetExplorer){this._createLayout();}
},getAnimatedValue : function(percentage){return this.interpolate(this._start,this._end,percentage);},setValue : function(value){if (this._currentTarget){$common.setElementOpacity(this._currentTarget,value);}
},get_effect : function(){return this._effect;},set_effect : function(value){value = this._getEnum(value,$AA.FadeEffect);if (this._effect != value){this._effect = value;this._resetOpacities();this.raisePropertyChanged('effect');}
},get_minimumOpacity : function(){return this._min;},set_minimumOpacity : function(value){value = this._getFloat(value);if (this._min != value){this._min = value;this._resetOpacities();this.raisePropertyChanged('minimumOpacity');}
},get_maximumOpacity : function(){return this._max;},set_maximumOpacity : function(value){value = this._getFloat(value);if (this._max != value){this._max = value;this._resetOpacities();this.raisePropertyChanged('maximumOpacity');}
},get_forceLayoutInIE : function(){return this._forceLayoutInIE;},set_forceLayoutInIE : function(value){value = this._getBoolean(value);if (this._forceLayoutInIE != value){this._forceLayoutInIE = value;this.raisePropertyChanged('forceLayoutInIE');}
},set_startValue : function(value){value = this._getFloat(value);this._start = value;}
}
$AA.FadeAnimation.registerClass('AjaxControlToolkit.Animation.FadeAnimation',$AA.Animation);$AA.registerAnimation('fade',$AA.FadeAnimation);$AA.FadeInAnimation = function(target,duration,fps,minimumOpacity,maximumOpacity,forceLayoutInIE){$AA.FadeInAnimation.initializeBase(this,[target,duration,fps,$AA.FadeEffect.FadeIn,minimumOpacity,maximumOpacity,forceLayoutInIE]);}
$AA.FadeInAnimation.prototype ={onStart : function(){$AA.FadeInAnimation.callBaseMethod(this,'onStart');if (this._currentTarget){this.set_startValue($common.getElementOpacity(this._currentTarget));}
}
}
$AA.FadeInAnimation.registerClass('AjaxControlToolkit.Animation.FadeInAnimation',$AA.FadeAnimation);$AA.registerAnimation('fadeIn',$AA.FadeInAnimation);$AA.FadeOutAnimation = function(target,duration,fps,minimumOpacity,maximumOpacity,forceLayoutInIE){$AA.FadeOutAnimation.initializeBase(this,[target,duration,fps,$AA.FadeEffect.FadeOut,minimumOpacity,maximumOpacity,forceLayoutInIE]);}
$AA.FadeOutAnimation.prototype ={onStart : function(){$AA.FadeOutAnimation.callBaseMethod(this,'onStart');if (this._currentTarget){this.set_startValue($common.getElementOpacity(this._currentTarget));}
}
}
$AA.FadeOutAnimation.registerClass('AjaxControlToolkit.Animation.FadeOutAnimation',$AA.FadeAnimation);$AA.registerAnimation('fadeOut',$AA.FadeOutAnimation);$AA.PulseAnimation = function(target,duration,fps,iterations,minimumOpacity,maximumOpacity,forceLayoutInIE){$AA.PulseAnimation.initializeBase(this,[target,duration,fps,null,((iterations !== undefined) ? iterations : 3)]);this._out = new $AA.FadeOutAnimation(target,duration,fps,minimumOpacity,maximumOpacity,forceLayoutInIE);this.add(this._out);this._in = new $AA.FadeInAnimation(target,duration,fps,minimumOpacity,maximumOpacity,forceLayoutInIE);this.add(this._in);}
$AA.PulseAnimation.prototype ={get_minimumOpacity : function(){return this._out.get_minimumOpacity();},set_minimumOpacity : function(value){value = this._getFloat(value);this._out.set_minimumOpacity(value);this._in.set_minimumOpacity(value);this.raisePropertyChanged('minimumOpacity');},get_maximumOpacity : function(){return this._out.get_maximumOpacity();},set_maximumOpacity : function(value){value = this._getFloat(value);this._out.set_maximumOpacity(value);this._in.set_maximumOpacity(value);this.raisePropertyChanged('maximumOpacity');},get_forceLayoutInIE : function(){return this._out.get_forceLayoutInIE();},set_forceLayoutInIE : function(value){value = this._getBoolean(value);this._out.set_forceLayoutInIE(value);this._in.set_forceLayoutInIE(value);this.raisePropertyChanged('forceLayoutInIE');},set_duration : function(value){value = this._getFloat(value);$AA.PulseAnimation.callBaseMethod(this,'set_duration',[value]);this._in.set_duration(value);this._out.set_duration(value);},set_fps : function(value){value = this._getInteger(value);$AA.PulseAnimation.callBaseMethod(this,'set_fps',[value]);this._in.set_fps(value);this._out.set_fps(value);}
}
$AA.PulseAnimation.registerClass('AjaxControlToolkit.Animation.PulseAnimation',$AA.SequenceAnimation);$AA.registerAnimation('pulse',$AA.PulseAnimation);$AA.PropertyAnimation = function(target,duration,fps,property,propertyKey){$AA.PropertyAnimation.initializeBase(this,[target,duration,fps]);this._property = property;this._propertyKey = propertyKey;this._currentTarget = null;}
$AA.PropertyAnimation.prototype ={onStart : function(){$AA.PropertyAnimation.callBaseMethod(this,'onStart');this._currentTarget = this.get_target();},setValue : function(value){var element = this._currentTarget;if (element && this._property && this._property.length > 0){if (this._propertyKey && this._propertyKey.length > 0 && element[this._property]){element[this._property][this._propertyKey] = value;} else{element[this._property] = value;}
}
},getValue : function(){var element = this.get_target();if (element && this._property && this._property.length > 0){var property = element[this._property];if (property){if (this._propertyKey && this._propertyKey.length > 0){return property[this._propertyKey];}
return property;}
}
return null;},get_property : function(){return this._property;},set_property : function(value){if (this._property != value){this._property = value;this.raisePropertyChanged('property');}
},get_propertyKey : function(){return this._propertyKey;},set_propertyKey : function(value){if (this._propertyKey != value){this._propertyKey = value;this.raisePropertyChanged('propertyKey');}
}
}
$AA.PropertyAnimation.registerClass('AjaxControlToolkit.Animation.PropertyAnimation',$AA.Animation);$AA.registerAnimation('property',$AA.PropertyAnimation);$AA.DiscreteAnimation = function(target,duration,fps,property,propertyKey,values){$AA.DiscreteAnimation.initializeBase(this,[target,duration,fps,property,propertyKey]);this._values = (values && values.length) ? values : [];}
$AA.DiscreteAnimation.prototype ={getAnimatedValue : function(percentage){var index = Math.floor(this.interpolate(0,this._values.length - 1,percentage));return this._values[index];},get_values : function(){return this._values;},set_values : function(value){if (this._values != value){this._values = value;this.raisePropertyChanged('values');}
}
}
$AA.DiscreteAnimation.registerClass('AjaxControlToolkit.Animation.DiscreteAnimation',$AA.PropertyAnimation);$AA.registerAnimation('discrete',$AA.DiscreteAnimation);$AA.InterpolatedAnimation = function(target,duration,fps,property,propertyKey,startValue,endValue){$AA.InterpolatedAnimation.initializeBase(this,[target,duration,fps,((property !== undefined) ? property : 'style'),propertyKey]);this._startValue = startValue;this._endValue = endValue;}
$AA.InterpolatedAnimation.prototype ={get_startValue : function(){return this._startValue;},set_startValue : function(value){value = this._getFloat(value);if (this._startValue != value){this._startValue = value;this.raisePropertyChanged('startValue');}
},get_endValue : function(){return this._endValue;},set_endValue : function(value){value = this._getFloat(value);if (this._endValue != value){this._endValue = value;this.raisePropertyChanged('endValue');}
}
}
$AA.InterpolatedAnimation.registerClass('AjaxControlToolkit.Animation.InterpolatedAnimation',$AA.PropertyAnimation);$AA.registerAnimation('interpolated',$AA.InterpolatedAnimation);$AA.ColorAnimation = function(target,duration,fps,property,propertyKey,startValue,endValue){$AA.ColorAnimation.initializeBase(this,[target,duration,fps,property,propertyKey,startValue,endValue]);this._start = null;this._end = null;this._interpolateRed = false;this._interpolateGreen = false;this._interpolateBlue = false;}
$AA.ColorAnimation.prototype ={onStart : function(){$AA.ColorAnimation.callBaseMethod(this,'onStart');this._start = $AA.ColorAnimation.getRGB(this.get_startValue());this._end = $AA.ColorAnimation.getRGB(this.get_endValue());this._interpolateRed = (this._start.Red != this._end.Red);this._interpolateGreen = (this._start.Green != this._end.Green);this._interpolateBlue = (this._start.Blue != this._end.Blue);},getAnimatedValue : function(percentage){var r = this._start.Red;var g = this._start.Green;var b = this._start.Blue;if (this._interpolateRed)
r = Math.round(this.interpolate(r,this._end.Red,percentage));if (this._interpolateGreen)
g = Math.round(this.interpolate(g,this._end.Green,percentage));if (this._interpolateBlue)
b = Math.round(this.interpolate(b,this._end.Blue,percentage));return $AA.ColorAnimation.toColor(r,g,b);},set_startValue : function(value){if (this._startValue != value){this._startValue = value;this.raisePropertyChanged('startValue');}
},set_endValue : function(value){if (this._endValue != value){this._endValue = value;this.raisePropertyChanged('endValue');}
}
}
$AA.ColorAnimation.getRGB = function(color){if (!color || color.length != 7){throw String.format(AjaxControlToolkit.Resources.Animation_InvalidColor,color);}
return{'Red': parseInt(color.substr(1,2),16),'Green': parseInt(color.substr(3,2),16),'Blue': parseInt(color.substr(5,2),16) };}
$AA.ColorAnimation.toColor = function(red,green,blue){var r = red.toString(16);var g = green.toString(16);var b = blue.toString(16);if (r.length == 1) r = '0' + r;if (g.length == 1) g = '0' + g;if (b.length == 1) b = '0' + b;return '#' + r + g + b;}
$AA.ColorAnimation.registerClass('AjaxControlToolkit.Animation.ColorAnimation',$AA.InterpolatedAnimation);$AA.registerAnimation('color',$AA.ColorAnimation);$AA.LengthAnimation = function(target,duration,fps,property,propertyKey,startValue,endValue,unit){$AA.LengthAnimation.initializeBase(this,[target,duration,fps,property,propertyKey,startValue,endValue]);this._unit = (unit != null) ? unit : 'px';}
$AA.LengthAnimation.prototype ={getAnimatedValue : function(percentage){var value = this.interpolate(this.get_startValue(),this.get_endValue(),percentage);return Math.round(value) + this._unit;},get_unit : function(){return this._unit;},set_unit : function(value){if (this._unit != value){this._unit = value;this.raisePropertyChanged('unit');}
}
}
$AA.LengthAnimation.registerClass('AjaxControlToolkit.Animation.LengthAnimation',$AA.InterpolatedAnimation);$AA.registerAnimation('length',$AA.LengthAnimation);$AA.MoveAnimation = function(target,duration,fps,horizontal,vertical,relative,unit){$AA.MoveAnimation.initializeBase(this,[target,duration,fps,null]);this._horizontal = horizontal ? horizontal : 0;this._vertical = vertical ? vertical : 0;this._relative = (relative === undefined) ? true : relative;this._horizontalAnimation = new $AA.LengthAnimation(target,duration,fps,'style','left',null,null,unit);this._verticalAnimation = new $AA.LengthAnimation(target,duration,fps,'style','top',null,null,unit);this.add(this._verticalAnimation);this.add(this._horizontalAnimation);}
$AA.MoveAnimation.prototype ={onStart : function(){$AA.MoveAnimation.callBaseMethod(this,'onStart');var element = this.get_target();this._horizontalAnimation.set_startValue(element.offsetLeft);this._horizontalAnimation.set_endValue(this._relative ? element.offsetLeft + this._horizontal : this._horizontal);this._verticalAnimation.set_startValue(element.offsetTop);this._verticalAnimation.set_endValue(this._relative ? element.offsetTop + this._vertical : this._vertical);},get_horizontal : function(){return this._horizontal;},set_horizontal : function(value){value = this._getFloat(value);if (this._horizontal != value){this._horizontal = value;this.raisePropertyChanged('horizontal');}
},get_vertical : function(){return this._vertical;},set_vertical : function(value){value = this._getFloat(value);if (this._vertical != value){this._vertical = value;this.raisePropertyChanged('vertical');}
},get_relative : function(){return this._relative;},set_relative : function(value){value = this._getBoolean(value);if (this._relative != value){this._relative = value;this.raisePropertyChanged('relative');}
},get_unit : function(){this._horizontalAnimation.get_unit();},set_unit : function(value){var unit = this._horizontalAnimation.get_unit();if (unit != value){this._horizontalAnimation.set_unit(value);this._verticalAnimation.set_unit(value);this.raisePropertyChanged('unit');}
}
}
$AA.MoveAnimation.registerClass('AjaxControlToolkit.Animation.MoveAnimation',$AA.ParallelAnimation);$AA.registerAnimation('move',$AA.MoveAnimation);$AA.ResizeAnimation = function(target,duration,fps,width,height,unit){$AA.ResizeAnimation.initializeBase(this,[target,duration,fps,null]);this._width = width;this._height = height;this._horizontalAnimation = new $AA.LengthAnimation(target,duration,fps,'style','width',null,null,unit);this._verticalAnimation = new $AA.LengthAnimation(target,duration,fps,'style','height',null,null,unit);this.add(this._horizontalAnimation);this.add(this._verticalAnimation);}
$AA.ResizeAnimation.prototype ={onStart : function(){$AA.ResizeAnimation.callBaseMethod(this,'onStart');var element = this.get_target();this._horizontalAnimation.set_startValue(element.offsetWidth);this._verticalAnimation.set_startValue(element.offsetHeight);this._horizontalAnimation.set_endValue((this._width !== null && this._width !== undefined) ?
this._width : element.offsetWidth);this._verticalAnimation.set_endValue((this._height !== null && this._height !== undefined) ?
this._height : element.offsetHeight);},get_width : function(){return this._width;},set_width : function(value){value = this._getFloat(value);if (this._width != value){this._width = value;this.raisePropertyChanged('width');}
},get_height : function(){return this._height;},set_height : function(value){value = this._getFloat(value);if (this._height != value){this._height = value;this.raisePropertyChanged('height');}
},get_unit : function(){this._horizontalAnimation.get_unit();},set_unit : function(value){var unit = this._horizontalAnimation.get_unit();if (unit != value){this._horizontalAnimation.set_unit(value);this._verticalAnimation.set_unit(value);this.raisePropertyChanged('unit');}
}
}
$AA.ResizeAnimation.registerClass('AjaxControlToolkit.Animation.ResizeAnimation',$AA.ParallelAnimation);$AA.registerAnimation('resize',$AA.ResizeAnimation);$AA.ScaleAnimation = function(target,duration,fps,scaleFactor,unit,center,scaleFont,fontUnit){$AA.ScaleAnimation.initializeBase(this,[target,duration,fps]);this._scaleFactor = (scaleFactor !== undefined) ? scaleFactor : 1;this._unit = (unit !== undefined) ? unit : 'px';this._center = center;this._scaleFont = scaleFont;this._fontUnit = (fontUnit !== undefined) ? fontUnit : 'pt';this._element = null;this._initialHeight = null;this._initialWidth = null;this._initialTop = null;this._initialLeft = null;this._initialFontSize = null;}
$AA.ScaleAnimation.prototype ={getAnimatedValue : function(percentage){return this.interpolate(1.0,this._scaleFactor,percentage);},onStart : function(){$AA.ScaleAnimation.callBaseMethod(this,'onStart');this._element = this.get_target();if (this._element){this._initialHeight = this._element.offsetHeight;this._initialWidth = this._element.offsetWidth;if (this._center){this._initialTop = this._element.offsetTop;this._initialLeft = this._element.offsetLeft;}
if (this._scaleFont){this._initialFontSize = parseFloat(
$common.getCurrentStyle(this._element,'fontSize'));}
}
},setValue : function(scale){if (this._element){var width = Math.round(this._initialWidth * scale);var height = Math.round(this._initialHeight * scale);this._element.style.width = width + this._unit;this._element.style.height = height + this._unit;if (this._center){this._element.style.top = (this._initialTop +
Math.round((this._initialHeight - height) / 2)) + this._unit;this._element.style.left = (this._initialLeft +
Math.round((this._initialWidth - width) / 2)) + this._unit;}
if (this._scaleFont){var size = this._initialFontSize * scale;if (this._fontUnit == 'px' || this._fontUnit == 'pt'){size = Math.round(size);}
this._element.style.fontSize = size + this._fontUnit;}
}
},onEnd : function(){this._element = null;this._initialHeight = null;this._initialWidth = null;this._initialTop = null;this._initialLeft = null;this._initialFontSize = null;$AA.ScaleAnimation.callBaseMethod(this,'onEnd');},get_scaleFactor : function(){return this._scaleFactor;},set_scaleFactor : function(value){value = this._getFloat(value);if (this._scaleFactor != value){this._scaleFactor = value;this.raisePropertyChanged('scaleFactor');}
},get_unit : function(){return this._unit;},set_unit : function(value){if (this._unit != value){this._unit = value;this.raisePropertyChanged('unit');}
},get_center : function(){return this._center;},set_center : function(value){value = this._getBoolean(value);if (this._center != value){this._center = value;this.raisePropertyChanged('center');}
},get_scaleFont : function(){return this._scaleFont;},set_scaleFont : function(value){value = this._getBoolean(value);if (this._scaleFont != value){this._scaleFont = value;this.raisePropertyChanged('scaleFont');}
},get_fontUnit : function(){return this._fontUnit;},set_fontUnit : function(value){if (this._fontUnit != value){this._fontUnit = value;this.raisePropertyChanged('fontUnit');}
}
}
$AA.ScaleAnimation.registerClass('AjaxControlToolkit.Animation.ScaleAnimation',$AA.Animation);$AA.registerAnimation('scale',$AA.ScaleAnimation);$AA.Action = function(target,duration,fps){$AA.Action.initializeBase(this,[target,duration,fps]);if (duration === undefined){this.set_duration(0);}
}
$AA.Action.prototype ={onEnd : function(){this.doAction();$AA.Action.callBaseMethod(this,'onEnd');},doAction : function(){throw Error.notImplemented();},getAnimatedValue : function(){},setValue : function(){}
}
$AA.Action.registerClass('AjaxControlToolkit.Animation.Action',$AA.Animation);$AA.registerAnimation('action',$AA.Action);$AA.EnableAction = function(target,duration,fps,enabled){$AA.EnableAction.initializeBase(this,[target,duration,fps]);this._enabled = (enabled !== undefined) ? enabled : true;}
$AA.EnableAction.prototype ={doAction : function(){var element = this.get_target();if (element){element.disabled = !this._enabled;}
},get_enabled : function(){return this._enabled;},set_enabled : function(value){value = this._getBoolean(value);if (this._enabled != value){this._enabled = value;this.raisePropertyChanged('enabled');}
}
}
$AA.EnableAction.registerClass('AjaxControlToolkit.Animation.EnableAction',$AA.Action);$AA.registerAnimation('enableAction',$AA.EnableAction);$AA.HideAction = function(target,duration,fps,visible){$AA.HideAction.initializeBase(this,[target,duration,fps]);this._visible = visible;}
$AA.HideAction.prototype ={doAction : function(){var element = this.get_target();if (element){$common.setVisible(element,this._visible);}
},get_visible : function(){return this._visible;},set_visible : function(value){if (this._visible != value){this._visible = value;this.raisePropertyChanged('visible');}
}
}
$AA.HideAction.registerClass('AjaxControlToolkit.Animation.HideAction',$AA.Action);$AA.registerAnimation('hideAction',$AA.HideAction);$AA.StyleAction = function(target,duration,fps,attribute,value){$AA.StyleAction.initializeBase(this,[target,duration,fps]);this._attribute = attribute;this._value = value;}
$AA.StyleAction.prototype ={doAction : function(){var element = this.get_target();if (element){element.style[this._attribute] = this._value;}
},get_attribute : function(){return this._attribute;},set_attribute : function(value){if (this._attribute != value){this._attribute = value;this.raisePropertyChanged('attribute');}
},get_value : function(){return this._value;},set_value : function(value){if (this._value != value){this._value = value;this.raisePropertyChanged('value');}
}
}
$AA.StyleAction.registerClass('AjaxControlToolkit.Animation.StyleAction',$AA.Action);$AA.registerAnimation('styleAction',$AA.StyleAction);$AA.OpacityAction = function(target,duration,fps,opacity){$AA.OpacityAction.initializeBase(this,[target,duration,fps]);this._opacity = opacity;}
$AA.OpacityAction.prototype ={doAction : function(){var element = this.get_target();if (element){$common.setElementOpacity(element,this._opacity);}
},get_opacity : function(){return this._opacity;},set_opacity : function(value){value = this._getFloat(value);if (this._opacity != value){this._opacity = value;this.raisePropertyChanged('opacity');}
}
}
$AA.OpacityAction.registerClass('AjaxControlToolkit.Animation.OpacityAction',$AA.Action);$AA.registerAnimation('opacityAction',$AA.OpacityAction);$AA.ScriptAction = function(target,duration,fps,script){$AA.ScriptAction.initializeBase(this,[target,duration,fps]);this._script = script;}
$AA.ScriptAction.prototype ={doAction : function(){try{eval(this._script);} catch (ex){}
},get_script : function(){return this._script;},set_script : function(value){if (this._script != value){this._script = value;this.raisePropertyChanged('script');}
}
}
$AA.ScriptAction.registerClass('AjaxControlToolkit.Animation.ScriptAction',$AA.Action);$AA.registerAnimation('scriptAction',$AA.ScriptAction);if(typeof(Sys)!=='undefined')Sys.Application.notifyScriptLoaded();Type.registerNamespace("AjaxControlToolkit");AjaxControlToolkit.BehaviorBase=function(c){var b=null,a=this;AjaxControlToolkit.BehaviorBase.initializeBase(a,[c]);a._clientStateFieldID=b;a._pageRequestManager=b;a._partialUpdateBeginRequestHandler=b;a._partialUpdateEndRequestHandler=b};AjaxControlToolkit.BehaviorBase.prototype={initialize:function(){AjaxControlToolkit.BehaviorBase.callBaseMethod(this,"initialize")},dispose:function(){var a=this;AjaxControlToolkit.BehaviorBase.callBaseMethod(a,"dispose");if(a._pageRequestManager){if(a._partialUpdateBeginRequestHandler){a._pageRequestManager.remove_beginRequest(a._partialUpdateBeginRequestHandler);a._partialUpdateBeginRequestHandler=null}if(a._partialUpdateEndRequestHandler){a._pageRequestManager.remove_endRequest(a._partialUpdateEndRequestHandler);a._partialUpdateEndRequestHandler=null}a._pageRequestManager=null}},get_ClientStateFieldID:function(){return this._clientStateFieldID},set_ClientStateFieldID:function(a){if(this._clientStateFieldID!=a){this._clientStateFieldID=a;this.raisePropertyChanged("ClientStateFieldID")}},get_ClientState:function(){if(this._clientStateFieldID){var a=document.getElementById(this._clientStateFieldID);if(a)return a.value}return null},set_ClientState:function(b){if(this._clientStateFieldID){var a=document.getElementById(this._clientStateFieldID);if(a)a.value=b}},registerPartialUpdateEvents:function(){var a=this;if(Sys&&Sys.WebForms&&Sys.WebForms.PageRequestManager){a._pageRequestManager=Sys.WebForms.PageRequestManager.getInstance();if(a._pageRequestManager){a._partialUpdateBeginRequestHandler=Function.createDelegate(a,a._partialUpdateBeginRequest);a._pageRequestManager.add_beginRequest(a._partialUpdateBeginRequestHandler);a._partialUpdateEndRequestHandler=Function.createDelegate(a,a._partialUpdateEndRequest);a._pageRequestManager.add_endRequest(a._partialUpdateEndRequestHandler)}}},_partialUpdateBeginRequest:function(){},_partialUpdateEndRequest:function(){}};AjaxControlToolkit.BehaviorBase.registerClass("AjaxControlToolkit.BehaviorBase",Sys.UI.Behavior);AjaxControlToolkit.DynamicPopulateBehaviorBase=function(c){var b=null,a=this;AjaxControlToolkit.DynamicPopulateBehaviorBase.initializeBase(a,[c]);a._DynamicControlID=b;a._DynamicContextKey=b;a._DynamicServicePath=b;a._DynamicServiceMethod=b;a._cacheDynamicResults=false;a._dynamicPopulateBehavior=b;a._populatingHandler=b;a._populatedHandler=b};AjaxControlToolkit.DynamicPopulateBehaviorBase.prototype={initialize:function(){var a=this;AjaxControlToolkit.DynamicPopulateBehaviorBase.callBaseMethod(a,"initialize");a._populatingHandler=Function.createDelegate(a,a._onPopulating);a._populatedHandler=Function.createDelegate(a,a._onPopulated)},dispose:function(){var a=this;if(a._populatedHandler){a._dynamicPopulateBehavior&&a._dynamicPopulateBehavior.remove_populated(a._populatedHandler);a._populatedHandler=null}if(a._populatingHandler){a._dynamicPopulateBehavior&&a._dynamicPopulateBehavior.remove_populating(a._populatingHandler);a._populatingHandler=null}if(a._dynamicPopulateBehavior){a._dynamicPopulateBehavior.dispose();a._dynamicPopulateBehavior=null}AjaxControlToolkit.DynamicPopulateBehaviorBase.callBaseMethod(a,"dispose")},populate:function(b){var a=this;if(a._dynamicPopulateBehavior&&a._dynamicPopulateBehavior.get_element()!=$get(a._DynamicControlID)){a._dynamicPopulateBehavior.dispose();a._dynamicPopulateBehavior=null}if(!a._dynamicPopulateBehavior&&a._DynamicControlID&&a._DynamicServiceMethod){a._dynamicPopulateBehavior=$create(AjaxControlToolkit.DynamicPopulateBehavior,{id:a.get_id()+"_DynamicPopulateBehavior",ContextKey:a._DynamicContextKey,ServicePath:a._DynamicServicePath,ServiceMethod:a._DynamicServiceMethod,cacheDynamicResults:a._cacheDynamicResults},null,null,$get(a._DynamicControlID));a._dynamicPopulateBehavior.add_populating(a._populatingHandler);a._dynamicPopulateBehavior.add_populated(a._populatedHandler)}a._dynamicPopulateBehavior&&a._dynamicPopulateBehavior.populate(b?b:a._DynamicContextKey)},_onPopulating:function(b,a){this.raisePopulating(a)},_onPopulated:function(b,a){this.raisePopulated(a)},get_dynamicControlID:function(){return this._DynamicControlID},get_DynamicControlID:this.get_dynamicControlID,set_dynamicControlID:function(b){var a=this;if(a._DynamicControlID!=b){a._DynamicControlID=b;a.raisePropertyChanged("dynamicControlID");a.raisePropertyChanged("DynamicControlID")}},set_DynamicControlID:this.set_dynamicControlID,get_dynamicContextKey:function(){return this._DynamicContextKey},get_DynamicContextKey:this.get_dynamicContextKey,set_dynamicContextKey:function(b){var a=this;if(a._DynamicContextKey!=b){a._DynamicContextKey=b;a.raisePropertyChanged("dynamicContextKey");a.raisePropertyChanged("DynamicContextKey")}},set_DynamicContextKey:this.set_dynamicContextKey,get_dynamicServicePath:function(){return this._DynamicServicePath},get_DynamicServicePath:this.get_dynamicServicePath,set_dynamicServicePath:function(b){var a=this;if(a._DynamicServicePath!=b){a._DynamicServicePath=b;a.raisePropertyChanged("dynamicServicePath");a.raisePropertyChanged("DynamicServicePath")}},set_DynamicServicePath:this.set_dynamicServicePath,get_dynamicServiceMethod:function(){return this._DynamicServiceMethod},get_DynamicServiceMethod:this.get_dynamicServiceMethod,set_dynamicServiceMethod:function(b){var a=this;if(a._DynamicServiceMethod!=b){a._DynamicServiceMethod=b;a.raisePropertyChanged("dynamicServiceMethod");a.raisePropertyChanged("DynamicServiceMethod")}},set_DynamicServiceMethod:this.set_dynamicServiceMethod,get_cacheDynamicResults:function(){return this._cacheDynamicResults},set_cacheDynamicResults:function(a){if(this._cacheDynamicResults!=a){this._cacheDynamicResults=a;this.raisePropertyChanged("cacheDynamicResults")}},add_populated:function(a){this.get_events().addHandler("populated",a)},remove_populated:function(a){this.get_events().removeHandler("populated",a)},raisePopulated:function(b){var a=this.get_events().getHandler("populated");a&&a(this,b)},add_populating:function(a){this.get_events().addHandler("populating",a)},remove_populating:function(a){this.get_events().removeHandler("populating",a)},raisePopulating:function(b){var a=this.get_events().getHandler("populating");a&&a(this,b)}};AjaxControlToolkit.DynamicPopulateBehaviorBase.registerClass("AjaxControlToolkit.DynamicPopulateBehaviorBase",AjaxControlToolkit.BehaviorBase);AjaxControlToolkit.ControlBase=function(b){var a=this;AjaxControlToolkit.ControlBase.initializeBase(a,[b]);a._clientStateField=null;a._callbackTarget=null;a._onsubmit$delegate=Function.createDelegate(a,a._onsubmit);a._oncomplete$delegate=Function.createDelegate(a,a._oncomplete);a._onerror$delegate=Function.createDelegate(a,a._onerror)};AjaxControlToolkit.ControlBase.__doPostBack=function(c,b){if(!Sys.WebForms.PageRequestManager.getInstance().get_isInAsyncPostBack())for(var a=0;a<AjaxControlToolkit.ControlBase.onsubmitCollection.length;a++)AjaxControlToolkit.ControlBase.onsubmitCollection[a]();Function.createDelegate(window,AjaxControlToolkit.ControlBase.__doPostBackSaved)(c,b)};AjaxControlToolkit.ControlBase.prototype={initialize:function(){var b="undefined",a=this;AjaxControlToolkit.ControlBase.callBaseMethod(a,"initialize");a._clientStateField&&a.loadClientState(a._clientStateField.value);if(typeof Sys.WebForms!==b&&typeof Sys.WebForms.PageRequestManager!==b){Array.add(Sys.WebForms.PageRequestManager.getInstance()._onSubmitStatements,a._onsubmit$delegate);if(AjaxControlToolkit.ControlBase.__doPostBackSaved==null||typeof AjaxControlToolkit.ControlBase.__doPostBackSaved==b){AjaxControlToolkit.ControlBase.__doPostBackSaved=window.__doPostBack;window.__doPostBack=AjaxControlToolkit.ControlBase.__doPostBack;AjaxControlToolkit.ControlBase.onsubmitCollection=[]}Array.add(AjaxControlToolkit.ControlBase.onsubmitCollection,a._onsubmit$delegate)}else $addHandler(document.forms[0],"submit",a._onsubmit$delegate)},dispose:function(){var b="undefined",a=this;if(typeof Sys.WebForms!==b&&typeof Sys.WebForms.PageRequestManager!==b){Array.remove(AjaxControlToolkit.ControlBase.onsubmitCollection,a._onsubmit$delegate);Array.remove(Sys.WebForms.PageRequestManager.getInstance()._onSubmitStatements,a._onsubmit$delegate)}else $removeHandler(document.forms[0],"submit",a._onsubmit$delegate);AjaxControlToolkit.ControlBase.callBaseMethod(a,"dispose")},findElement:function(a){return $get(this.get_id()+"_"+a.split(":").join("_"))},get_clientStateField:function(){return this._clientStateField},set_clientStateField:function(b){var a=this;if(a.get_isInitialized())throw Error.invalidOperation(AjaxControlToolkit.Resources.ExtenderBase_CannotSetClientStateField);if(a._clientStateField!=b){a._clientStateField=b;a.raisePropertyChanged("clientStateField")}},loadClientState:function(){},saveClientState:function(){return null},_invoke:function(g,d,h){var a=this;if(!a._callbackTarget)throw Error.invalidOperation(AjaxControlToolkit.Resources.ExtenderBase_ControlNotRegisteredForCallbacks);if(typeof WebForm_DoCallback==="undefined")throw Error.invalidOperation(AjaxControlToolkit.Resources.ExtenderBase_PageNotRegisteredForCallbacks);for(var e=[],b=0;b<d.length;b++)e[b]=d[b];var c=a.saveClientState();if(c!=null&&!String.isInstanceOfType(c))throw Error.invalidOperation(AjaxControlToolkit.Resources.ExtenderBase_InvalidClientStateType);var f=Sys.Serialization.JavaScriptSerializer.serialize({name:g,args:e,state:a.saveClientState()});WebForm_DoCallback(a._callbackTarget,f,a._oncomplete$delegate,h,a._onerror$delegate,true)},_oncomplete:function(a,b){a=Sys.Serialization.JavaScriptSerializer.deserialize(a);if(a.error)throw Error.create(a.error);this.loadClientState(a.state);b(a.result)},_onerror:function(a){throw Error.create(a);},_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","HTMLEditor_toolbar_button_FontSize_defaultValue":"default","HTMLEditor_toolbar_button_DesignMode_title":"Design mode","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","HTMLEditor_toolbar_button_FixedForeColor_title":"Foreground color","HTMLEditor_toolbar_popup_LinkProperties_field_URL":"URL","ExtenderBase_CannotSetClientStateField":"clientStateField can only be set before initialization","HTMLEditor_toolbar_button_Bold_title":"Bold","RTE_PreviewHTML":"Preview HTML","HTMLEditor_toolbar_popup_LinkProperties_button_OK":"OK","HTMLEditor_toolbar_button_JustifyRight_title":"Justify Right","RTE_JustifyCenter":"Justify Center","PasswordStrength_RemainingUpperCase":"{0} more upper case characters","HTMLEditor_toolbar_popup_LinkProperties_button_Cancel":"Cancel","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}\"","AsyncFileUpload_UnhandledException":"Unhandled Exception","RTE_FontColor":"Font Color","RTE_LabelColor":"Label Color","Common_InvalidBorderWidthUnit":"A unit type of \"{0}\"\u0027 is invalid for parseBorderWidth","HTMLEditor_toolbar_button_JustifyFull_title":"Justify","RTE_Heading":"Heading","AsyncFileUpload_ConfirmToSeeErrorPage":"Do you want to see the response page?","Tabs_PropertySetBeforeInitialization":"{0} cannot be changed before initialization","HTMLEditor_toolbar_button_StrikeThrough_title":"Strike through","RTE_OrderedList":"Ordered List","HTMLEditor_toolbar_button_OnPastePlainText":"Plain text pasting is switched on. Just now:{0}","HTMLEditor_toolbar_button_RemoveLink_title":"Remove Link","HTMLEditor_toolbar_button_FontName_defaultValue":"default","HTMLEditor_toolbar_button_FontName_label":"Font","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","HTMLEditor_toolbar_button_InsertLink_title":"Insert/Edit URL link","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","AsyncFileUpload_UnknownServerError":"Unknown Server error","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","HTMLEditor_toolbar_button_HtmlMode_title":"HTML text","RTE_Italic":"Italic","CascadingDropDown_NoParentElement":"Failed to find parent element \"{0}\"","ValidatorCallout_DefaultErrorMessage":"This control is invalid","HTMLEditor_toolbar_button_DecreaseIndent_title":"Decrease Indent","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","HTMLEditor_toolbar_popup_LinkProperties_field_Target":"Target","HTMLEditor_toolbar_button_PreviewMode_title":"Preview","RTE_Border":"Border","RTE_Create":"Create","RTE_BackgroundColor":"Background Color","RTE_Cancel":"Cancel","HTMLEditor_toolbar_button_PasteText_title":"Paste Plain Text","RTE_JustifyFull":"Justify Full","RTE_JustifyLeft":"Justify Left","RTE_Cut":"Cut","AsyncFileUpload_UploadingProblem":"The requested file uploading problem.","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":"Hoje:{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","HTMLEditor_toolbar_button_Copy_title":"Copy","ListSearch_DefaultPrompt":"Type to search","CollapsiblePanel_NoControlID":"Failed to find element \"{0}\"","RTE_ViewEditor":"View Editor","HTMLEditor_toolbar_popup_LinkProperties_field_Target_Current":"Current window","RTE_BarColor":"Bar Color","AsyncFileUpload_InternalErrorMessage":"The AsyncFileUpload control has encountered an error with the uploader in this page. Please refresh the page and try again.","HTMLEditor_toolbar_button_Underline_title":"Underline","PasswordStrength_DefaultStrengthDescriptions":"NonExistent;Very Weak;Weak;Poor;Almost OK;Barely Acceptable;Average;Good;Strong;Excellent;Unbreakable!","HTMLEditor_toolbar_button_SuperScript_title":"Super script","HTMLEditor_toolbar_button_Ltr_title":"Left to right direction","HTMLEditor_toolbar_button_RemoveAlignment_title":"Remove Alignment","HTMLEditor_toolbar_button_OrderedList_title":"Ordered List","HTMLEditor_toolbar_popup_LinkProperties_field_Target_New":"New window","HTMLEditor_toolbar_popup_LinkProperties_field_Target_Top":"Top window","HTMLEditor_toolbar_button_JustifyCenter_title":"Justify Center","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","HTMLEditor_toolbar_button_JustifyLeft_title":"Justify Left","Rating_CallbackError":"An unhandled exception has occurred:\\r\\n{0}","HTMLEditor_toolbar_button_Undo_title":"Undo","HTMLEditor_toolbar_button_Redo_title":"Redo","Tabs_OwnerExpected":"owner must be set before initialize","DynamicPopulate_WebServiceTimeout":"Web service call timed out","PasswordStrength_RemainingLowerCase":"{0} more lower case characters","HTMLEditor_toolbar_button_BulletedList_title":"Bulleted List","HTMLEditor_toolbar_button_Paste_title":"Paste","Animation_MissingAnimationName":"AjaxControlToolkit.Animation.createAnimation requires an object with an AnimationName property","HTMLEditor_toolbar_button_PasteWord_title":"Paste from MS Word (with cleanup)","HTMLEditor_toolbar_button_Italic_title":"Italic","RTE_JustifyRight":"Justify Right","Tabs_ActiveTabArgumentOutOfRange":"Argument is not a member of the tabs collection","RTE_CellPadding":"Cell Padding","HTMLEditor_toolbar_button_ForeColorClear_title":"Clear foreground color","RTE_ClearFormatting":"Clear Formatting","AlwaysVisible_ElementRequired":"AjaxControlToolkit.AlwaysVisibleControlBehavior must have an element","HTMLEditor_toolbar_button_SubScript_title":"Sub script","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: ","HTMLEditor_toolbar_button_Rtl_title":"Right to left direction","PasswordStrength_RemainingCharacters":"{0} more characters","HTMLEditor_toolbar_button_BackColorClear_title":"Clear background color","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.","HTMLEditor_toolbar_button_Use_verb":"Use{0}","HTMLEditor_toolbar_popup_LinkProperties_field_Target_Parent":"Parent window","PasswordStrength_GetHelpRequirements":"Get help on password requirements","HTMLEditor_toolbar_button_FixedBackColor_title":"Background color","PasswordStrength_InvalidStrengthDescriptions":"Invalid number of text strength descriptions specified","RTE_Underline":"Underline","HTMLEditor_toolbar_button_IncreaseIndent_title":"Increase Indent","AsyncFileUpload_ServerResponseError":"Server Response Error","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","HTMLEditor_toolbar_button_FontSize_label":"Size","HTMLEditor_toolbar_button_Cut_title":"Cut","CascadingDropDown_MethodError":"[Method error{0}]","HTMLEditor_toolbar_button_InsertLink_message_EmptyURL":"URL can not be empty","RTE_BorderColor":"Border Color","HTMLEditor_toolbar_button_RemoveStyles_title":"Remove styles","RTE_Paragraph":"Paragraph","RTE_InsertHorizontalRule":"Insert Horizontal Rule","HTMLEditor_toolbar_button_Paragraph_title":"Make Paragraph","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","HTMLEditor_toolbar_button_InsertHR_title":"Insert horizontal rule","HTMLEditor_toolbar_button_OnPasteFromMSWord":"Pasting from MS Word is switched on. Just now:{0}","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.Animation');AjaxControlToolkit.Animation.AnimationBehavior = function(element){AjaxControlToolkit.Animation.AnimationBehavior.initializeBase(this,[element]);this._onLoad = null;this._onClick = null;this._onMouseOver = null;this._onMouseOut = null;this._onHoverOver = null;this._onHoverOut = null;this._onClickHandler = null;this._onMouseOverHandler = null;this._onMouseOutHandler = null;}
AjaxControlToolkit.Animation.AnimationBehavior.prototype ={initialize : function(){AjaxControlToolkit.Animation.AnimationBehavior.callBaseMethod(this,'initialize');var element = this.get_element();if (element){this._onClickHandler = Function.createDelegate(this,this.OnClick);$addHandler(element,'click',this._onClickHandler);this._onMouseOverHandler = Function.createDelegate(this,this.OnMouseOver);$addHandler(element,'mouseover',this._onMouseOverHandler);this._onMouseOutHandler = Function.createDelegate(this,this.OnMouseOut);$addHandler(element,'mouseout',this._onMouseOutHandler);}
},dispose : function(){var element = this.get_element();if (element){if (this._onClickHandler){$removeHandler(element,'click',this._onClickHandler);this._onClickHandler = null;}
if (this._onMouseOverHandler){$removeHandler(element,'mouseover',this._onMouseOverHandler);this._onMouseOverHandler = null;}
if (this._onMouseOutHandler){$removeHandler(element,'mouseout',this._onMouseOutHandler);this._onMouseOutHandler = null;}
}
this._onLoad = null;this._onClick = null;this._onMouseOver = null;this._onMouseOut = null;this._onHoverOver = null;this._onHoverOut = null;AjaxControlToolkit.Animation.AnimationBehavior.callBaseMethod(this,'dispose');},get_OnLoad : function(){return this._onLoad ? this._onLoad.get_json() : null;},set_OnLoad : function(value){if (!this._onLoad){this._onLoad = new AjaxControlToolkit.Animation.GenericAnimationBehavior(this.get_element());this._onLoad.initialize();}
this._onLoad.set_json(value);this.raisePropertyChanged('OnLoad');this._onLoad.play();},get_OnLoadBehavior : function(){return this._onLoad;},get_OnClick : function(){return this._onClick ? this._onClick.get_json() : null;},set_OnClick : function(value){if (!this._onClick){this._onClick = new AjaxControlToolkit.Animation.GenericAnimationBehavior(this.get_element());this._onClick.initialize();}
this._onClick.set_json(value);this.raisePropertyChanged('OnClick');},get_OnClickBehavior : function(){return this._onClick;},OnClick : function(){if (this._onClick){this._onClick.play();}
},get_OnMouseOver : function(){return this._onMouseOver ? this._onMouseOver.get_json() : null;},set_OnMouseOver : function(value){if (!this._onMouseOver){this._onMouseOver = new AjaxControlToolkit.Animation.GenericAnimationBehavior(this.get_element());this._onMouseOver.initialize();}
this._onMouseOver.set_json(value);this.raisePropertyChanged('OnMouseOver');},get_OnMouseOverBehavior : function(){return this._onMouseOver;},OnMouseOver : function(){if (this._onMouseOver){this._onMouseOver.play();}
if (this._onHoverOver){if (this._onHoverOut){this._onHoverOut.quit();}
this._onHoverOver.play();}
},get_OnMouseOut : function(){return this._onMouseOut ? this._onMouseOut.get_json() : null;},set_OnMouseOut : function(value){if (!this._onMouseOut){this._onMouseOut = new AjaxControlToolkit.Animation.GenericAnimationBehavior(this.get_element());this._onMouseOut.initialize();}
this._onMouseOut.set_json(value);this.raisePropertyChanged('OnMouseOut');},get_OnMouseOutBehavior : function(){return this._onMouseOut;},OnMouseOut : function(){if (this._onMouseOut){this._onMouseOut.play();}
if (this._onHoverOut){if (this._onHoverOver){this._onHoverOver.quit();}
this._onHoverOut.play();}
},get_OnHoverOver : function(){return this._onHoverOver ? this._onHoverOver.get_json() : null;},set_OnHoverOver : function(value){if (!this._onHoverOver){this._onHoverOver = new AjaxControlToolkit.Animation.GenericAnimationBehavior(this.get_element());this._onHoverOver.initialize();}
this._onHoverOver.set_json(value);this.raisePropertyChanged('OnHoverOver');},get_OnHoverOverBehavior : function(){return this._onHoverOver;},get_OnHoverOut : function(){return this._onHoverOut ? this._onHoverOut.get_json() : null;},set_OnHoverOut : function(value){if (!this._onHoverOut){this._onHoverOut = new AjaxControlToolkit.Animation.GenericAnimationBehavior(this.get_element());this._onHoverOut.initialize();}
this._onHoverOut.set_json(value);this.raisePropertyChanged('OnHoverOut');},get_OnHoverOutBehavior : function(){return this._onHoverOut;}
}
AjaxControlToolkit.Animation.AnimationBehavior.registerClass('AjaxControlToolkit.Animation.AnimationBehavior',AjaxControlToolkit.BehaviorBase);AjaxControlToolkit.Animation.GenericAnimationBehavior = function(element){AjaxControlToolkit.Animation.GenericAnimationBehavior.initializeBase(this,[element]);this._json = null;this._animation = null;}
AjaxControlToolkit.Animation.GenericAnimationBehavior.prototype ={dispose : function(){this.disposeAnimation();AjaxControlToolkit.Animation.GenericAnimationBehavior.callBaseMethod(this,'dispose');},disposeAnimation : function(){if (this._animation){this._animation.dispose();}
this._animation = null;},play : function(){if (this._animation && !this._animation.get_isPlaying()){this.stop();this._animation.play();}
},stop : function(){if (this._animation){if (this._animation.get_isPlaying()){this._animation.stop(true);}
}
},quit : function(){if (this._animation){if (this._animation.get_isPlaying()){this._animation.stop(false);}
}
},get_json : function(){return this._json;},set_json : function(value){if (this._json != value){this._json = value;this.raisePropertyChanged('json');this.disposeAnimation();var element = this.get_element();if (element){this._animation = AjaxControlToolkit.Animation.buildAnimation(this._json,element);if (this._animation){this._animation.initialize();}
this.raisePropertyChanged('animation');}
}
},get_animation : function(){return this._animation;}
}
AjaxControlToolkit.Animation.GenericAnimationBehavior.registerClass('AjaxControlToolkit.Animation.GenericAnimationBehavior',AjaxControlToolkit.BehaviorBase);if(typeof(Sys)!=='undefined')Sys.Application.notifyScriptLoaded();Type.registerNamespace('AjaxControlToolkit');AjaxControlToolkit.DynamicPopulateBehavior = function(element){AjaxControlToolkit.DynamicPopulateBehavior.initializeBase(this,[element]);this._servicePath = null;this._serviceMethod = null;this._contextKey = null;this._cacheDynamicResults = false;this._populateTriggerID = null;this._setUpdatingCssClass = null;this._clearDuringUpdate = true;this._customScript = null;this._clickHandler = null;this._callID = 0;this._currentCallID = -1;this._populated = false;}
AjaxControlToolkit.DynamicPopulateBehavior.prototype ={initialize : function(){AjaxControlToolkit.DynamicPopulateBehavior.callBaseMethod(this,'initialize');$common.prepareHiddenElementForATDeviceUpdate();if (this._populateTriggerID){var populateTrigger = $get(this._populateTriggerID);if (populateTrigger){this._clickHandler = Function.createDelegate(this,this._onPopulateTriggerClick);$addHandler(populateTrigger,"click",this._clickHandler);}
}
},dispose : function(){if (this._populateTriggerID && this._clickHandler){var populateTrigger = $get(this._populateTriggerID);if (populateTrigger){$removeHandler(populateTrigger,"click",this._clickHandler);}
this._populateTriggerID = null;this._clickHandler = null;}
AjaxControlToolkit.DynamicPopulateBehavior.callBaseMethod(this,'dispose');},populate : function(contextKey){if (this._populated && this._cacheDynamicResults){return;}
if (this._currentCallID == -1){var eventArgs = new Sys.CancelEventArgs();this.raisePopulating(eventArgs);if (eventArgs.get_cancel()){return;}
this._setUpdating(true);}
if (this._customScript){var scriptResult = eval(this._customScript);this._setTargetHtml(scriptResult);this._setUpdating(false);} else{this._currentCallID = ++this._callID;if (this._servicePath && this._serviceMethod){Sys.Net.WebServiceProxy.invoke(this._servicePath,this._serviceMethod,false,{contextKey:(contextKey ? contextKey : this._contextKey) },Function.createDelegate(this,this._onMethodComplete),Function.createDelegate(this,this._onMethodError),this._currentCallID);$common.updateFormToRefreshATDeviceBuffer();}
}
},_onMethodComplete : function (result,userContext,methodName){if (userContext != this._currentCallID) return;this._setTargetHtml(result);this._setUpdating(false);},_onMethodError : function(webServiceError,userContext,methodName){if (userContext != this._currentCallID) return;if (webServiceError.get_timedOut()){this._setTargetHtml(AjaxControlToolkit.Resources.DynamicPopulate_WebServiceTimeout);} else{this._setTargetHtml(String.format(AjaxControlToolkit.Resources.DynamicPopulate_WebServiceError,webServiceError.get_statusCode()));}
this._setUpdating(false);},_onPopulateTriggerClick : function(){this.populate(this._contextKey);},_setUpdating : function(updating){this.setStyle(updating);if (!updating){this._currentCallID = -1;this._populated = true;this.raisePopulated(this,Sys.EventArgs.Empty);}
},_setTargetHtml : function(value){var e = this.get_element()
if (e){if (e.tagName == "INPUT"){e.value = value;} else{e.innerHTML = value;}
}
},setStyle : function(updating){var e = this.get_element();if (this._setUpdatingCssClass){if (!updating){e.className = this._oldCss;this._oldCss = null;} else{this._oldCss = e.className;e.className = this._setUpdatingCssClass;}
}
if (updating && this._clearDuringUpdate){this._setTargetHtml("");}
},get_ClearContentsDuringUpdate : function(){return this._clearDuringUpdate;},set_ClearContentsDuringUpdate : function(value){if (this._clearDuringUpdate != value){this._clearDuringUpdate = value;this.raisePropertyChanged('ClearContentsDuringUpdate');}
},get_ContextKey : function(){return this._contextKey;},set_ContextKey : function(value){if (this._contextKey != value){this._contextKey = value;this.raisePropertyChanged('ContextKey');}
},get_PopulateTriggerID : function(){return this._populateTriggerID;},set_PopulateTriggerID : function(value){if (this._populateTriggerID != value){this._populateTriggerID = value;this.raisePropertyChanged('PopulateTriggerID');}
},get_ServicePath : function(){return this._servicePath;},set_ServicePath : function(value){if (this._servicePath != value){this._servicePath = value;this.raisePropertyChanged('ServicePath');}
},get_ServiceMethod : function(){return this._serviceMethod;},set_ServiceMethod : function(value){if (this._serviceMethod != value){this._serviceMethod = value;this.raisePropertyChanged('ServiceMethod');}
},get_cacheDynamicResults : function(){return this._cacheDynamicResults;},set_cacheDynamicResults : function(value){if (this._cacheDynamicResults != value){this._cacheDynamicResults = value;this.raisePropertyChanged('cacheDynamicResults');}
},get_UpdatingCssClass : function(){return this._setUpdatingCssClass;},set_UpdatingCssClass : function(value){if (this._setUpdatingCssClass != value){this._setUpdatingCssClass = value;this.raisePropertyChanged('UpdatingCssClass');}
},get_CustomScript : function(){return this._customScript;},set_CustomScript : function(value){if (this._customScript != value){this._customScript = value;this.raisePropertyChanged('CustomScript');}
},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);}
},add_populated : function(handler){this.get_events().addHandler('populated',handler);},remove_populated : function(handler){this.get_events().removeHandler('populated',handler);},raisePopulated : function(eventArgs){var handler = this.get_events().getHandler('populated');if (handler){handler(this,eventArgs);}
}
}
AjaxControlToolkit.DynamicPopulateBehavior.registerClass('AjaxControlToolkit.DynamicPopulateBehavior',AjaxControlToolkit.BehaviorBase);if(typeof(Sys)!=='undefined')Sys.Application.notifyScriptLoaded();Type.registerNamespace('AjaxControlToolkit');AjaxControlToolkit.PopupBehavior = function(element){AjaxControlToolkit.PopupBehavior.initializeBase(this,[element]);this._x = 0;this._y = 0;this._positioningMode = AjaxControlToolkit.PositioningMode.Absolute;this._parentElement = null;this._parentElementID = null;this._moveHandler = null;this._firstPopup = true;this._originalParent = null;this._visible = false;this._onParentRepositionHandler = null;this._elementsWithAttachedRepositionHandlers = null;this._onShow = null;this._onShowEndedHandler = null;this._onHide = null;this._onHideEndedHandler = null;}
AjaxControlToolkit.PopupBehavior.prototype ={initialize: function(){AjaxControlToolkit.PopupBehavior.callBaseMethod(this,'initialize');this._hidePopup();this._prepareElement();this._onShowEndedHandler = Function.createDelegate(this,this._onShowEnded);this._onHideEndedHandler = Function.createDelegate(this,this._onHideEnded);},dispose: function(){var element = this.get_element();if (element){if (this._visible){this.hide();}
if (this._originalParent){element.parentNode.removeChild(element);this._originalParent.appendChild(element);this._originalParent = null;}
element._hideWindowedElementsIFrame = null;}
this._parentElement = null;if (this._onShow && this._onShow.get_animation() && this._onShowEndedHandler){this._onShow.get_animation().remove_ended(this._onShowEndedHandler);}
this._onShowEndedHandler = null;this._onShow = null;if (this._onHide && this._onHide.get_animation() && this._onHideEndedHandler){this._onHide.get_animation().remove_ended(this._onHideEndedHandler);}
this._onHideEndedHandler = null;this._onHide = null;if (this._onParentRepositionHandler != null){$removeHandler(window,'resize',this._onParentRepositionHandler);}
if (this._elementsWithAttachedRepositionHandlers != null){for (var i = 0;i < this._elementsWithAttachedRepositionHandlers.length;i++){$removeHandler(this._elementsWithAttachedRepositionHandlers[i],'resize',this._onParentRepositionHandler);$removeHandler(this._elementsWithAttachedRepositionHandlers[i],'scroll',this._onParentRepositionHandler);}
this._elementsWithAttachedRepositionHandlers = null;}
this._onParentRepositionHandler = null;AjaxControlToolkit.PopupBehavior.callBaseMethod(this,'dispose');},_prepareElement: function(){var element = this.get_element();this._onParentRepositionHandler = Function.createDelegate(this,this._reposition);this._elementsWithAttachedRepositionHandlers = new Array();var parent = element.parentNode;while (parent){if (parent == document.body){break;}
$addHandler(parent,'scroll',this._onParentRepositionHandler);$addHandler(parent,'resize',this._onParentRepositionHandler);this._elementsWithAttachedRepositionHandlers.push(parent);parent = parent.parentNode;}
$addHandler(window,'resize',this._onParentRepositionHandler);element.style.position = 'absolute';$common.appendElementToFormOrBody(element);},_reposition: function(){if (!this._visible){return;}
this.setupPopup();},show: function(){if (this._visible){return;}
var eventArgs = new Sys.CancelEventArgs();this.raiseShowing(eventArgs);if (eventArgs.get_cancel()){return;}
this._visible = true;var element = this.get_element();$common.setVisible(element,true);this.setupPopup();if (this._onShow){$common.setVisible(element,false);this.onShow();} else{this.raiseShown(Sys.EventArgs.Empty);}
},hide: function(){if (!this._visible){return;}
var eventArgs = new Sys.CancelEventArgs();this.raiseHiding(eventArgs);if (eventArgs.get_cancel()){return;}
this._visible = false;if (this._onHide){this.onHide();} else{this._hidePopup();this._hideCleanup();}
},getBounds: function(){var element = this.get_element();var offsetParent = element.offsetParent || document.documentElement;var diff;var parentBounds;if (this._parentElement){parentBounds = $common.getBounds(this._parentElement);var offsetParentLocation = $common.getLocation(offsetParent);diff ={x: parentBounds.x - offsetParentLocation.x,y: parentBounds.y - offsetParentLocation.y };} else{parentBounds = $common.getBounds(offsetParent);diff ={x: 0,y: 0 };}
var width = element.offsetWidth - (element.clientLeft ? element.clientLeft * 2 : 0);var height = element.offsetHeight - (element.clientTop ? element.clientTop * 2 : 0);if (this._firstpopup){element.style.width = width + "px";this._firstpopup = false;}
var position,pos;switch (this._positioningMode){case AjaxControlToolkit.PositioningMode.Center:
pos ={x: Math.round(parentBounds.width / 2 - width / 2),y: Math.round(parentBounds.height / 2 - height / 2),altX: Math.round(parentBounds.width / 2 - width / 2),altY: Math.round(parentBounds.height / 2 - height / 2)
};break;case AjaxControlToolkit.PositioningMode.BottomLeft:
pos ={x: 0,y: parentBounds.height,altX: parentBounds.width - width,altY: 0 - height
}
break;case AjaxControlToolkit.PositioningMode.BottomRight:
pos ={x: parentBounds.width - width,y: parentBounds.height,altX: 0,altY: 0 - height
}
break;case AjaxControlToolkit.PositioningMode.TopLeft:
pos ={x: 0,y: -element.offsetHeight,altX: parentBounds.width - width,altY: parentBounds.height
}
break;case AjaxControlToolkit.PositioningMode.TopRight:
pos ={x: parentBounds.width - width,y: -element.offsetHeight,altX: 0,altY: parentBounds.height
}
break;case AjaxControlToolkit.PositioningMode.Right:
pos ={x: parentBounds.width,y: 0,altX: -element.offsetWidth,altY: parentBounds.height - height
}
break;case AjaxControlToolkit.PositioningMode.Left:
pos ={x: -element.offsetWidth,y: 0,altX: parentBounds.width,altY: parentBounds.height - height
}
break;default:
pos ={x: 0,y: 0,altX: 0,altY: 0 };}
pos.x += this._x + diff.x;pos.altX += this._x + diff.x;pos.y += this._y + diff.y;pos.altY += this._y + diff.y;position = this._verifyPosition(pos,width,height,parentBounds);return new Sys.UI.Bounds(position.x,position.y,width,height);},_verifyPosition: function(pos,elementWidth,elementHeight,parentBounds){var newX = 0,newY = 0;var windowBounds = this._getWindowBounds();if (!((pos.x + elementWidth > windowBounds.x + windowBounds.width) || (pos.x < windowBounds.x))){newX = pos.x;} else{newX = pos.altX;if (pos.altX < windowBounds.x){if (pos.x > pos.altX){newX = pos.x;}
} else if (windowBounds.width + windowBounds.x - pos.altX < elementWidth){var xDiff = pos.x > pos.altX ? Math.abs(windowBounds.x - pos.x) : (windowBounds.x - pos.x);if (xDiff < elementWidth - windowBounds.width - windowBounds.x + pos.altX){newX = pos.x;}
}
}
if (!((pos.y + elementHeight > windowBounds.y + windowBounds.height) || (pos.y < windowBounds.y))){newY = pos.y;} else{newY = pos.altY;if (pos.altY < windowBounds.y){if (windowBounds.y - pos.altY > elementHeight - windowBounds.height - windowBounds.y + pos.y){newY = pos.y;}
} else if (windowBounds.height + windowBounds.y - pos.altY < elementHeight){if (windowBounds.y - pos.y < elementHeight - windowBounds.height - windowBounds.y + pos.altY){newY = pos.y;}
}
}
return{x: newX,y: newY };},_getWindowBounds: function(){var bounds ={x: this._getWindowScrollLeft(),y: this._getWindowScrollTop(),width: this._getWindowWidth(),height: this._getWindowHeight()
};return bounds;},_getWindowHeight: function(){var windowHeight = 0;if (document.documentElement && document.documentElement.clientHeight){windowHeight = document.documentElement.clientHeight;}
else if (document.body && document.body.clientHeight){windowHeight = document.body.clientHeight;}
return windowHeight;},_getWindowWidth: function(){var windowWidth = 0;if (document.documentElement && document.documentElement.clientWidth){windowWidth = document.documentElement.clientWidth;}
else if (document.body && document.body.clientWidth){windowWidth = document.body.clientWidth;}
return windowWidth;},_getWindowScrollTop: function(){var scrollTop = 0;if (typeof (window.pageYOffset) == 'number'){scrollTop = window.pageYOffset;}
if (document.body && document.body.scrollTop){scrollTop = document.body.scrollTop;}
else if (document.documentElement && document.documentElement.scrollTop){scrollTop = document.documentElement.scrollTop;}
return scrollTop;},_getWindowScrollLeft: function(){var scrollLeft = 0;if (typeof (window.pageXOffset) == 'number'){scrollLeft = window.pageXOffset;}
else if (document.body && document.body.scrollLeft){scrollLeft = document.body.scrollLeft;}
else if (document.documentElement && document.documentElement.scrollLeft){scrollLeft = document.documentElement.scrollLeft;}
return scrollLeft;},adjustPopupPosition: function(bounds){var element = this.get_element();if (!bounds){bounds = this.getBounds();}
var newPosition = $common.getBounds(element);var updateNeeded = false;if (newPosition.x < 0){bounds.x -= newPosition.x;updateNeeded = true;}
if (newPosition.y < 0){bounds.y -= newPosition.y;updateNeeded = true;}
if (updateNeeded){$common.setLocation(element,bounds);}
},addBackgroundIFrame: function(){var element = this.get_element();if ((Sys.Browser.agent === Sys.Browser.InternetExplorer) && (Sys.Browser.version < 7)){var childFrame = element._hideWindowedElementsIFrame;if (!childFrame){childFrame = document.createElement("iframe");childFrame.src = "javascript:'<html></html>';";childFrame.style.position = "absolute";childFrame.style.display = "none";childFrame.scrolling = "no";childFrame.frameBorder = "0";childFrame.tabIndex = "-1";childFrame.style.filter = "progid:DXImageTransform.Microsoft.Alpha(style=0,opacity=0)";element.parentNode.insertBefore(childFrame,element);element._hideWindowedElementsIFrame = childFrame;this._moveHandler = Function.createDelegate(this,this._onMove);Sys.UI.DomEvent.addHandler(element,"move",this._moveHandler);}
$common.setBounds(childFrame,$common.getBounds(element));childFrame.style.left = element.style.left;childFrame.style.top = element.style.top;childFrame.style.display = element.style.display;if (element.currentStyle && element.currentStyle.zIndex){childFrame.style.zIndex = element.currentStyle.zIndex;} else if (element.style.zIndex){childFrame.style.zIndex = element.style.zIndex;}
}
},setupPopup: function(){var element = this.get_element();var bounds = this.getBounds();$common.setLocation(element,bounds);this.adjustPopupPosition(bounds);element.style.zIndex = 1000;this.addBackgroundIFrame();},_hidePopup: function(){var element = this.get_element();$common.setVisible(element,false);if (element.originalWidth){element.style.width = element.originalWidth + "px";element.originalWidth = null;}
},_hideCleanup: function(){var element = this.get_element();if (this._moveHandler){Sys.UI.DomEvent.removeHandler(element,"move",this._moveHandler);this._moveHandler = null;}
if (Sys.Browser.agent === Sys.Browser.InternetExplorer){var childFrame = element._hideWindowedElementsIFrame;if (childFrame){childFrame.style.display = "none";}
}
this.raiseHidden(Sys.EventArgs.Empty);},_onMove: function(){var element = this.get_element();if (element._hideWindowedElementsIFrame){element.parentNode.insertBefore(element._hideWindowedElementsIFrame,element);element._hideWindowedElementsIFrame.style.top = element.style.top;element._hideWindowedElementsIFrame.style.left = element.style.left;}
},get_onShow: function(){return this._onShow ? this._onShow.get_json() : null;},set_onShow: function(value){if (!this._onShow){this._onShow = new AjaxControlToolkit.Animation.GenericAnimationBehavior(this.get_element());this._onShow.initialize();}
this._onShow.set_json(value);var animation = this._onShow.get_animation();if (animation){animation.add_ended(this._onShowEndedHandler);}
this.raisePropertyChanged('onShow');},get_onShowBehavior: function(){return this._onShow;},onShow: function(){if (this._onShow){if (this._onHide){this._onHide.quit();}
this._onShow.play();}
},_onShowEnded: function(){this.adjustPopupPosition();this.addBackgroundIFrame();this.raiseShown(Sys.EventArgs.Empty);},get_onHide: function(){return this._onHide ? this._onHide.get_json() : null;},set_onHide: function(value){if (!this._onHide){this._onHide = new AjaxControlToolkit.Animation.GenericAnimationBehavior(this.get_element());this._onHide.initialize();}
this._onHide.set_json(value);var animation = this._onHide.get_animation();if (animation){animation.add_ended(this._onHideEndedHandler);}
this.raisePropertyChanged('onHide');},get_onHideBehavior: function(){return this._onHide;},onHide: function(){if (this._onHide){if (this._onShow){this._onShow.quit();}
this._onHide.play();}
},_onHideEnded: function(){this._hideCleanup();},get_parentElement: function(){if (!this._parentElement && this._parentElementID){this.set_parentElement($get(this._parentElementID));Sys.Debug.assert(this._parentElement != null,String.format(AjaxControlToolkit.Resources.PopupExtender_NoParentElement,this._parentElementID));}
return this._parentElement;},set_parentElement: function(element){this._parentElement = element;this.raisePropertyChanged('parentElement');},get_parentElementID: function(){if (this._parentElement){return this._parentElement.id
}
return this._parentElementID;},set_parentElementID: function(elementID){this._parentElementID = elementID;if (this.get_isInitialized()){this.set_parentElement($get(elementID));}
},get_positioningMode: function(){return this._positioningMode;},set_positioningMode: function(mode){this._positioningMode = mode;this.raisePropertyChanged('positioningMode');},get_x: function(){return this._x;},set_x: function(value){if (value != this._x){this._x = value;if (this._visible){this.setupPopup();}
this.raisePropertyChanged('x');}
},get_y: function(){return this._y;},set_y: function(value){if (value != this._y){this._y = value;if (this._visible){this.setupPopup();}
this.raisePropertyChanged('y');}
},get_visible: function(){return this._visible;},add_showing: function(handler){this.get_events().addHandler('showing',handler);},remove_showing: function(handler){this.get_events().removeHandler('showing',handler);},raiseShowing: function(eventArgs){var handler = this.get_events().getHandler('showing');if (handler){handler(this,eventArgs);}
},add_shown: function(handler){this.get_events().addHandler('shown',handler);},remove_shown: function(handler){this.get_events().removeHandler('shown',handler);},raiseShown: function(eventArgs){var handler = this.get_events().getHandler('shown');if (handler){handler(this,eventArgs);}
},add_hiding: function(handler){this.get_events().addHandler('hiding',handler);},remove_hiding: function(handler){this.get_events().removeHandler('hiding',handler);},raiseHiding: function(eventArgs){var handler = this.get_events().getHandler('hiding');if (handler){handler(this,eventArgs);}
},add_hidden: function(handler){this.get_events().addHandler('hidden',handler);},remove_hidden: function(handler){this.get_events().removeHandler('hidden',handler);},raiseHidden: function(eventArgs){var handler = this.get_events().getHandler('hidden');if (handler){handler(this,eventArgs);}
}
}
AjaxControlToolkit.PopupBehavior.registerClass('AjaxControlToolkit.PopupBehavior',AjaxControlToolkit.BehaviorBase);AjaxControlToolkit.PositioningMode = function(){throw Error.invalidOperation();}
AjaxControlToolkit.PositioningMode.prototype ={Absolute: 0,Center: 1,BottomLeft: 2,BottomRight: 3,TopLeft: 4,TopRight: 5,Right: 6,Left: 7
}
AjaxControlToolkit.PositioningMode.registerEnum('AjaxControlToolkit.PositioningMode');if(typeof(Sys)!=='undefined')Sys.Application.notifyScriptLoaded();Type.registerNamespace('AjaxControlToolkit');AjaxControlToolkit.HoverBehavior = function(element){AjaxControlToolkit.HoverBehavior.initializeBase(this,[element]);this._elementHandlers = null;this._hoverElementHandlers = null;this._hoverElement = null;this._hoverCount = 0;this._unhoverDelay = 0;this._hoverDelay = 0;this._hoverScript = null;this._unhoverScript = null;this._hoverFired = false;}
AjaxControlToolkit.HoverBehavior.prototype ={_setupHandlersArray: function(){var target = [];target[0] = Function.createDelegate(this,this._onHover);target[1] = Function.createDelegate(this,this._onUnhover);return target;},get_elementHandlers: function(){if (!this._elementHandlers){this._elementHandlers = this._setupHandlersArray();}
return this._elementHandlers;},get_hoverElementHandlers: function(){if (!this._hoverElementHandlers){this._hoverElementHandlers = this._setupHandlersArray();}
return this._hoverElementHandlers;},get_hoverElement: function(){return this._hoverElement;},set_hoverElement: function(element){if (element != this._hoverElement){if (this._hoverElement){this._setupHandlers(this._hoverElement,this.get_hoverElementHandlers(),false);}
this._hoverElement = element;if (this._hoverElement){this._setupHandlers(this._hoverElement,this.get_hoverElementHandlers(),true);}
}
},get_hoverDelay: function(){return this._hoverDelay;},set_hoverDelay: function(value){this._hoverDelay = value;this.raisePropertyChanged('hoverDelay');},get_hoverScript: function(){return this._hoverScript;},set_hoverScript : function(script){this._hoverScript = script;},get_unhoverDelay: function(){return this._unhoverDelay;},set_unhoverDelay: function(value){this._unhoverDelay = value;this.raisePropertyChanged('unhoverDelay');},get_unhoverScript: function(){return this._unhoverScript;},set_unhoverScript : function(script){this._unhoverScript = script;},dispose: function(){var element = this.get_element();if (this._elementHandlers){var handlers = this.get_elementHandlers();this._setupHandlers(element,handlers,false);this._elementHandlers = null;}
if(this._hoverElement){var handlers = this.get_hoverElementHandlers();this._setupHandlers(this._hoverElement,handlers,false);this._hoverElement = null;}
AjaxControlToolkit.HoverBehavior.callBaseMethod(this,'dispose');},initialize: function(){AjaxControlToolkit.HoverBehavior.callBaseMethod(this,'initialize');var handlers = this.get_elementHandlers();this._setupHandlers(this.get_element(),handlers,true);if (this._hoverElement){handlers = this.get_hoverElementHandlers();this._setupHandlers(this._hoverElement,handlers,true);}
},add_hover: function(handler){this.get_events().addHandler("hover",handler);},remove_hover: function(handler){this.get_events().removeHandler("hover",handler);},_fireHover : function(){if (!this._hoverCount || this._hoverFired){return;}
var handler = this.get_events().getHandler("hover");if (handler){handler(this,Sys.EventArgs.Empty);}
if (this._hoverScript){eval(this._hoverScript);}
this._hoverFired = true;},_onHover: function(){this._hoverCount++;if (!this._hoverDelay){this._fireHover();}
else{window.setTimeout(Function.createDelegate(this,this._fireHover),this._hoverDelay);}
},add_unhover: function(handler){this.get_events().addHandler("unhover",handler);},remove_unhover: function(handler){this.get_events().removeHandler("unhover",handler);},_fireUnhover : function(){if (this._hoverFired && !this._hoverCount){this._hoverFired = false;var handler = this.get_events().getHandler("unhover");if (handler){handler(this,Sys.EventArgs.Empty);}
if (this._unhoverScript){eval(this._unhoverScript);}
}
},_onUnhover: function(){this._hoverCount--;if (this._hoverCount <= 0){this._hoverCount = 0;if (!this._unhoverDelay){this._fireUnhover();}
else{window.setTimeout(Function.createDelegate(this,this._fireUnhover),this._unhoverDelay);}
}
},_setupHandlers: function(element,handlers,hookup){if (!this.get_isInitialized() || !element) return;if (hookup){$addHandler(element,"mouseover",handlers[0]);$addHandler(element,"focus",handlers[0]);$addHandler(element,"mouseout",handlers[1]);$addHandler(element,"blur",handlers[1]);}
else{$removeHandler(element,"mouseover",handlers[0]);$removeHandler(element,"focus",handlers[0]);$removeHandler(element,"mouseout",handlers[1]);$removeHandler(element,"blur",handlers[1]);}
}
}
AjaxControlToolkit.HoverBehavior.descriptor ={properties: [{name: 'hoverElement',isDomElement: true},{name: 'unhoverDelay',type: Number} ],events: [{name: 'hover'},{name: 'unhover'} ]
}
AjaxControlToolkit.HoverBehavior.registerClass('AjaxControlToolkit.HoverBehavior',AjaxControlToolkit.BehaviorBase);if(typeof(Sys)!=='undefined')Sys.Application.notifyScriptLoaded();Type.registerNamespace('AjaxControlToolkit');AjaxControlToolkit.HoverMenuBehavior = function(element){AjaxControlToolkit.HoverMenuBehavior.initializeBase(this,[element]);this._hoverBehavior = null;this._popupBehavior = null;this._mouseEnterHandler = null;this._mouseLeaveHandler = null;this._unhoverHandler = null;this._hoverHandler = null;this._inHover = null;this._oldClass = null;this._popupElement = null;this._onShowJson = null;this._onHideJson = null;this._popupElement = null;this._hoverCssClass = null;this._offsetX = 0;this._offsetY = 0;this._popDelay = 100;this._hoverDelay = 0;this._popupPosition = null;}
AjaxControlToolkit.HoverMenuBehavior.prototype ={initialize : function(){AjaxControlToolkit.HoverMenuBehavior.callBaseMethod(this,'initialize');this._hoverHandler = Function.createDelegate(this,this._onHover);this._unhoverHandler = Function.createDelegate(this,this._onUnhover);this._mouseEnterHandler = Function.createDelegate(this,this._onmouseover);this._mouseLeaveHandler = Function.createDelegate(this,this._onmouseout);var e = this.get_element();$addHandler(e,"mouseover",this._mouseEnterHandler);$addHandler(e,"mouseout",this._mouseLeaveHandler);if (this._popupElement){this._popupBehavior = $create(AjaxControlToolkit.PopupBehavior,{"id":this.get_id()+"_PopupBehavior" },null,null,this._popupElement);if (this._popupPosition){this._popupBehavior.set_positioningMode(AjaxControlToolkit.HoverMenuPopupPosition.Absolute);} else{this._popupBehavior.set_positioningMode(AjaxControlToolkit.HoverMenuPopupPosition.Center);}
if (this._onShowJson){this._popupBehavior.set_onShow(this._onShowJson);}
if (this._onHideJson){this._popupBehavior.set_onHide(this._onHideJson);}
this._hoverBehavior = $create(AjaxControlToolkit.HoverBehavior,{"id":this.get_id()+"_HoverBehavior","hoverDelay":this._hoverDelay,"unhoverDelay":this._popDelay,"hoverElement":this._popupElement },null,null,e);this._hoverBehavior.add_hover(this._hoverHandler);this._hoverBehavior.add_unhover(this._unhoverHandler);}
},dispose : function(){this._onShowJson = null;this._onHideJson = null;if (this._popupBehavior){this._popupBehavior.dispose();this._popupBehavior = null;}
if (this._popupElement){this._popupElement = null;}
if (this._mouseEnterHandler){$removeHandler(this.get_element(),"mouseover",this._mouseEnterHandler);}
if (this._mouseLeaveHandler){$removeHandler(this.get_element(),"mouseout",this._mouseLeaveHandler);}
if (this._hoverBehavior){if (this._hoverHandler){this._hoverBehavior.remove_hover(this._hoverHandler);this._hoverHandler = null;}
if (this._unhoverHandler){this._hoverBehavior.remove_hover(this._unhoverHandler);this._unhoverHandler = null;}
this._hoverBehavior.dispose();this._hoverBehavior = null;}
AjaxControlToolkit.HoverMenuBehavior.callBaseMethod(this,'dispose');},_getLeftOffset : function(){var defaultLeft = $common.getLocation(this.get_element()).x;var offsetLeft = $common.getLocation(this.get_popupElement().offsetParent).x;var delta = 0;switch(this._popupPosition){case AjaxControlToolkit.HoverMenuPopupPosition.Left:
delta = (-1 * this._popupElement.offsetWidth);break;case AjaxControlToolkit.HoverMenuPopupPosition.Right:
delta = this.get_element().offsetWidth;break;}
return delta + defaultLeft - offsetLeft + this._offsetX;},_getTopOffset : function(){var defaultTop = $common.getLocation(this.get_element()).y;var offsetTop = $common.getLocation(this.get_popupElement().offsetParent).y;var delta = 0;switch(this._popupPosition){case AjaxControlToolkit.HoverMenuPopupPosition.Top:
delta = (-1 * this._popupElement.offsetHeight);break;case AjaxControlToolkit.HoverMenuPopupPosition.Bottom:
delta = this.get_element().offsetHeight;break;}
return defaultTop - offsetTop + delta + this._offsetY;},_onHover : function(){if (this._inHover) return;var eventArgs = new Sys.CancelEventArgs();this.raiseShowing(eventArgs);if (eventArgs.get_cancel()){return;}
this._inHover = true;this.populate();this._popupBehavior.show();if ($common.getCurrentStyle(this._popupElement,'display') == 'none'){this._popupElement.style.display = 'block';}
this._popupBehavior.set_x(this._getLeftOffset());this._popupBehavior.set_y(this._getTopOffset());this.raiseShown(Sys.EventArgs.Empty);},_onUnhover : function(){var eventArgs = new Sys.CancelEventArgs();this.raiseHiding(eventArgs);if (eventArgs.get_cancel()){return;}
this._inHover = false;this._resetCssClass();this._popupBehavior.hide();this.raiseHidden(Sys.EventArgs.Empty);},_onmouseover : function(){var e = this.get_element();if (this._hoverCssClass && e.className != this._hoverCssClass){this._oldClass = e.className;e.className = this._hoverCssClass;}
},_onmouseout : function(){this._resetCssClass();},_resetCssClass : function(){var e = this.get_element();if (!this._inHover && this._hoverCssClass && e.className == this._hoverCssClass){e.className = this._oldClass;}
},get_onShow : function(){return this._popupBehavior ? this._popupBehavior.get_onShow() : this._onShowJson;},set_onShow : function(value){if (this._popupBehavior){this._popupBehavior.set_onShow(value)
} else{this._onShowJson = value;}
this.raisePropertyChanged('onShow');},get_onShowBehavior : function(){return this._popupBehavior ? this._popupBehavior.get_onShowBehavior() : null;},onShow : function(){if (this._popupBehavior){this._popupBehavior.onShow();}
},get_onHide : function(){return this._popupBehavior ? this._popupBehavior.get_onHide() : this._onHideJson;},set_onHide : function(value){if (this._popupBehavior){this._popupBehavior.set_onHide(value)
} else{this._onHideJson = value;}
this.raisePropertyChanged('onHide');},get_onHideBehavior : function(){return this._popupBehavior ? this._popupBehavior.get_onHideBehavior() : null;},onHide : function(){if (this._popupBehavior){this._popupBehavior.onHide();}
},get_popupElement : function(){return this._popupElement;},set_popupElement : function(value){if (this._popupElement != value){this._popupElement = value;if (this.get_isInitialized() && this._hoverBehavior){this._hoverBehavior.set_hoverElement(this._popupElement);}
this.raisePropertyChanged('popupElement');}
},get_HoverCssClass : function(){return this._hoverCssClass;},set_HoverCssClass : function(value){if (this._hoverCssClass != value){this._hoverCssClass = value;this.raisePropertyChanged('HoverCssClass');}
},get_OffsetX : function(){return this._offsetX;},set_OffsetX : function(value){if (this._offsetX != value){this._offsetX = value;this.raisePropertyChanged('OffsetX');}
},get_OffsetY : function(){return this._offsetY;},set_OffsetY : function(value){if (this._offsetY != value){this._offsetY = value;this.raisePropertyChanged('OffsetY');}
},get_PopupPosition : function(){return this._popupPosition;},set_PopupPosition : function(value){if (this._popupPosition != value){this._popupPosition = value;this.raisePropertyChanged('PopupPosition');}
},get_PopDelay : function(){return this._popDelay;},set_PopDelay : function(value){if (this._popDelay != value){this._popDelay = value;this.raisePropertyChanged('PopDelay');}
},get_HoverDelay: function(){return this._hoverDelay;},set_HoverDelay: function(value){if (this._hoverDelay != value){this._hoverDelay = value;this.raisePropertyChanged('HoverDelay');}
},add_showing : function(handler){this.get_events().addHandler('showing',handler);},remove_showing : function(handler){this.get_events().removeHandler('showing',handler);},raiseShowing : function(eventArgs){var handler = this.get_events().getHandler('showing');if (handler){handler(this,eventArgs);}
},add_shown : function(handler){this.get_events().addHandler('shown',handler);},remove_shown : function(handler){this.get_events().removeHandler('shown',handler);},raiseShown : function(eventArgs){var handler = this.get_events().getHandler('shown');if (handler){handler(this,eventArgs);}
},add_hiding : function(handler){this.get_events().addHandler('hiding',handler);},remove_hiding : function(handler){this.get_events().removeHandler('hiding',handler);},raiseHiding : function(eventArgs){var handler = this.get_events().getHandler('hiding');if (handler){handler(this,eventArgs);}
},add_hidden : function(handler){this.get_events().addHandler('hidden',handler);},remove_hidden : function(handler){this.get_events().removeHandler('hidden',handler);},raiseHidden : function(eventArgs){var handler = this.get_events().getHandler('hidden');if (handler){handler(this,eventArgs);}
}
}
AjaxControlToolkit.HoverMenuBehavior.registerClass('AjaxControlToolkit.HoverMenuBehavior',AjaxControlToolkit.DynamicPopulateBehaviorBase);AjaxControlToolkit.HoverMenuPopupPosition = function(){throw Error.invalidOperation();}
AjaxControlToolkit.HoverMenuPopupPosition.prototype ={Center: 0,Top: 1,Left: 2,Bottom: 3,Right: 4
}
AjaxControlToolkit.HoverMenuPopupPosition.registerEnum('AjaxControlToolkit.HoverMenuPopupPosition');if(typeof(Sys)!=='undefined')Sys.Application.notifyScriptLoaded();Type.registerNamespace('AjaxControlToolkit');AjaxControlToolkit.IDragSource = function(){}
AjaxControlToolkit.IDragSource.prototype ={get_dragDataType: function(){throw Error.notImplemented();},getDragData: function(){throw Error.notImplemented();},get_dragMode: function(){throw Error.notImplemented();},onDragStart: function(){throw Error.notImplemented();},onDrag: function(){throw Error.notImplemented();},onDragEnd: function(){throw Error.notImplemented();}
}
AjaxControlToolkit.IDragSource.registerInterface('AjaxControlToolkit.IDragSource');AjaxControlToolkit.IDropTarget = function(){}
AjaxControlToolkit.IDropTarget.prototype ={get_dropTargetElement: function(){throw Error.notImplemented();},canDrop: function(){throw Error.notImplemented();},drop: function(){throw Error.notImplemented();},onDragEnterTarget: function(){throw Error.notImplemented();},onDragLeaveTarget: function(){throw Error.notImplemented();},onDragInTarget: function(){throw Error.notImplemented();}
}
AjaxControlToolkit.IDropTarget.registerInterface('AjaxControlToolkit.IDropTarget');AjaxControlToolkit.DragMode = function(){throw Error.invalidOperation();}
AjaxControlToolkit.DragMode.prototype ={Copy: 0,Move: 1
}
AjaxControlToolkit.DragMode.registerEnum('AjaxControlToolkit.DragMode');AjaxControlToolkit.DragDropEventArgs = function(dragMode,dragDataType,dragData){this._dragMode = dragMode;this._dataType = dragDataType;this._data = dragData;}
AjaxControlToolkit.DragDropEventArgs.prototype ={get_dragMode: function(){return this._dragMode || null;},get_dragDataType: function(){return this._dataType || null;},get_dragData: function(){return this._data || null;}
}
AjaxControlToolkit.DragDropEventArgs.registerClass('AjaxControlToolkit.DragDropEventArgs');AjaxControlToolkit._DragDropManager = function(){this._instance = null;this._events =  null;}
AjaxControlToolkit._DragDropManager.prototype ={add_dragStart: function(handler){this.get_events().addHandler('dragStart',handler);},remove_dragStart: function(handler){this.get_events().removeHandler('dragStart',handler);},get_events: function(){if (!this._events){this._events = new Sys.EventHandlerList();}
return this._events;},add_dragStop: function(handler){this.get_events().addHandler('dragStop',handler);},remove_dragStop: function(handler){this.get_events().removeHandler('dragStop',handler);},_getInstance: function(){if (!this._instance){if (Sys.Browser.agent === Sys.Browser.InternetExplorer){this._instance = new AjaxControlToolkit.IEDragDropManager();}
else{this._instance = new AjaxControlToolkit.GenericDragDropManager();}
this._instance.initialize();this._instance.add_dragStart(Function.createDelegate(this,this._raiseDragStart));this._instance.add_dragStop(Function.createDelegate(this,this._raiseDragStop));}
return this._instance;},startDragDrop: function(dragSource,dragVisual,context,useBuiltInDragAndDropFunctions){this._getInstance().startDragDrop(dragSource,dragVisual,context,useBuiltInDragAndDropFunctions);},registerDropTarget: function(target){this._getInstance().registerDropTarget(target);},unregisterDropTarget: function(target){this._getInstance().unregisterDropTarget(target);},dispose: function(){delete this._events;Sys.Application.unregisterDisposableObject(this);Sys.Application.removeComponent(this);},_raiseDragStart: function(sender,eventArgs){var handler = this.get_events().getHandler('dragStart');if (handler){handler(this,eventArgs);}
},_raiseDragStop: function(sender,eventArgs){var handler = this.get_events().getHandler('dragStop');if (handler){handler(this,eventArgs);}
}
}
AjaxControlToolkit._DragDropManager.registerClass('AjaxControlToolkit._DragDropManager');AjaxControlToolkit.DragDropManager = new AjaxControlToolkit._DragDropManager();AjaxControlToolkit.IEDragDropManager = function(){AjaxControlToolkit.IEDragDropManager.initializeBase(this);this._dropTargets = null;this._radius = 10;this._useBuiltInDragAndDropFunctions = true;this._activeDragVisual = null;this._activeContext = null;this._activeDragSource = null;this._underlyingTarget = null;this._oldOffset = null;this._potentialTarget = null;this._isDragging = false;this._mouseUpHandler = null;this._documentMouseMoveHandler = null;this._documentDragOverHandler = null;this._dragStartHandler = null;this._mouseMoveHandler = null;this._dragEnterHandler = null;this._dragLeaveHandler = null;this._dragOverHandler = null;this._dropHandler = null;}
AjaxControlToolkit.IEDragDropManager.prototype ={add_dragStart: function(handler){this.get_events().addHandler("dragStart",handler);},remove_dragStart: function(handler){this.get_events().removeHandler("dragStart",handler);},add_dragStop: function(handler){this.get_events().addHandler("dragStop",handler);},remove_dragStop: function(handler){this.get_events().removeHandler("dragStop",handler);},initialize: function(){AjaxControlToolkit.IEDragDropManager.callBaseMethod(this,'initialize');this._mouseUpHandler = Function.createDelegate(this,this._onMouseUp);this._documentMouseMoveHandler = Function.createDelegate(this,this._onDocumentMouseMove);this._documentDragOverHandler = Function.createDelegate(this,this._onDocumentDragOver);this._dragStartHandler = Function.createDelegate(this,this._onDragStart);this._mouseMoveHandler = Function.createDelegate(this,this._onMouseMove);this._dragEnterHandler = Function.createDelegate(this,this._onDragEnter);this._dragLeaveHandler = Function.createDelegate(this,this._onDragLeave);this._dragOverHandler = Function.createDelegate(this,this._onDragOver);this._dropHandler = Function.createDelegate(this,this._onDrop);},dispose: function(){if (this._dropTargets){for (var i = 0;i < this._dropTargets;i++){this.unregisterDropTarget(this._dropTargets[i]);}
this._dropTargets = null;}
AjaxControlToolkit.IEDragDropManager.callBaseMethod(this,'dispose');},startDragDrop: function(dragSource,dragVisual,context,useBuiltInDragAndDropFunctions){var ev = window._event;if (this._isDragging){return;}
this._underlyingTarget = null;this._activeDragSource = dragSource;this._activeDragVisual = dragVisual;this._activeContext = context;this._useBuiltInDragAndDropFunctions = typeof (useBuiltInDragAndDropFunctions) != 'undefined' ? useBuiltInDragAndDropFunctions : true;var mousePosition ={x: ev.clientX,y: ev.clientY };dragVisual.originalPosition = dragVisual.style.position;dragVisual.style.position = "absolute";document._lastPosition = mousePosition;dragVisual.startingPoint = mousePosition;var scrollOffset = this.getScrollOffset(dragVisual,true);dragVisual.startingPoint = this.addPoints(dragVisual.startingPoint,scrollOffset);var left = parseInt(dragVisual.style.left);var top = parseInt(dragVisual.style.top);if (isNaN(left)) left = "0";if (isNaN(top)) top = "0";dragVisual.startingPoint = this.subtractPoints(dragVisual.startingPoint,{x: left,y: top });this._prepareForDomChanges();dragSource.onDragStart();var eventArgs = new AjaxControlToolkit.DragDropEventArgs(
dragSource.get_dragMode(),dragSource.get_dragDataType(),dragSource.getDragData(context));var handler = this.get_events().getHandler('dragStart');if (handler) handler(this,eventArgs);this._recoverFromDomChanges();this._wireEvents();this._drag(true);},_stopDragDrop: function(cancelled){var ev = window._event;if (this._activeDragSource != null){this._unwireEvents();if (!cancelled){cancelled = (this._underlyingTarget == null);}
if (!cancelled && this._underlyingTarget != null){this._underlyingTarget.drop(this._activeDragSource.get_dragMode(),this._activeDragSource.get_dragDataType(),this._activeDragSource.getDragData(this._activeContext));}
this._activeDragSource.onDragEnd(cancelled);var handler = this.get_events().getHandler('dragStop');if (handler) handler(this,Sys.EventArgs.Empty);this._activeDragVisual.style.position = this._activeDragVisual.originalPosition;this._activeDragSource = null;this._activeContext = null;this._activeDragVisual = null;this._isDragging = false;this._potentialTarget = null;ev.preventDefault();}
},_drag: function(isInitialDrag){var ev = window._event;var mousePosition ={x: ev.clientX,y: ev.clientY };document._lastPosition = mousePosition;var scrollOffset = this.getScrollOffset(this._activeDragVisual,true);var position = this.addPoints(this.subtractPoints(mousePosition,this._activeDragVisual.startingPoint),scrollOffset);if (!isInitialDrag && parseInt(this._activeDragVisual.style.left) == position.x && parseInt(this._activeDragVisual.style.top) == position.y){return;}
$common.setLocation(this._activeDragVisual,position);this._prepareForDomChanges();this._activeDragSource.onDrag();this._recoverFromDomChanges();this._potentialTarget = this._findPotentialTarget(this._activeDragSource,this._activeDragVisual);var movedToOtherTarget = (this._potentialTarget != this._underlyingTarget || this._potentialTarget == null);if (movedToOtherTarget && this._underlyingTarget != null){this._leaveTarget(this._activeDragSource,this._underlyingTarget);}
if (this._potentialTarget != null){if (movedToOtherTarget){this._underlyingTarget = this._potentialTarget;this._enterTarget(this._activeDragSource,this._underlyingTarget);}
else{this._moveInTarget(this._activeDragSource,this._underlyingTarget);}
}
else{this._underlyingTarget = null;}
},_wireEvents: function(){if (this._useBuiltInDragAndDropFunctions){$addHandler(document,"mouseup",this._mouseUpHandler);$addHandler(document,"mousemove",this._documentMouseMoveHandler);$addHandler(document.body,"dragover",this._documentDragOverHandler);$addHandler(this._activeDragVisual,"dragstart",this._dragStartHandler);$addHandler(this._activeDragVisual,"dragend",this._mouseUpHandler);$addHandler(this._activeDragVisual,"drag",this._mouseMoveHandler);} else{$addHandler(document,"mouseup",this._mouseUpHandler);$addHandler(document,"mousemove",this._mouseMoveHandler);}
},_unwireEvents: function(){if (this._useBuiltInDragAndDropFunctions){$removeHandler(this._activeDragVisual,"drag",this._mouseMoveHandler);$removeHandler(this._activeDragVisual,"dragend",this._mouseUpHandler);$removeHandler(this._activeDragVisual,"dragstart",this._dragStartHandler);$removeHandler(document.body,"dragover",this._documentDragOverHandler);$removeHandler(document,"mousemove",this._documentMouseMoveHandler);$removeHandler(document,"mouseup",this._mouseUpHandler);} else{$removeHandler(document,"mousemove",this._mouseMoveHandler);$removeHandler(document,"mouseup",this._mouseUpHandler);}
},registerDropTarget: function(dropTarget){if (this._dropTargets == null){this._dropTargets = [];}
Array.add(this._dropTargets,dropTarget);this._wireDropTargetEvents(dropTarget);},unregisterDropTarget: function(dropTarget){this._unwireDropTargetEvents(dropTarget);if (this._dropTargets){Array.remove(this._dropTargets,dropTarget);}
},_wireDropTargetEvents: function(dropTarget){var associatedElement = dropTarget.get_dropTargetElement();associatedElement._dropTarget = dropTarget;$addHandler(associatedElement,"dragenter",this._dragEnterHandler);$addHandler(associatedElement,"dragleave",this._dragLeaveHandler);$addHandler(associatedElement,"dragover",this._dragOverHandler);$addHandler(associatedElement,"drop",this._dropHandler);},_unwireDropTargetEvents: function(dropTarget){var associatedElement = dropTarget.get_dropTargetElement();if (associatedElement._dropTarget){associatedElement._dropTarget = null;$removeHandler(associatedElement,"dragenter",this._dragEnterHandler);$removeHandler(associatedElement,"dragleave",this._dragLeaveHandler);$removeHandler(associatedElement,"dragover",this._dragOverHandler);$removeHandler(associatedElement,"drop",this._dropHandler);}
},_onDragStart: function(ev){window._event = ev;document.selection.empty();var dt = ev.dataTransfer;if (!dt && ev.rawEvent) dt = ev.rawEvent.dataTransfer;var dataType = this._activeDragSource.get_dragDataType().toLowerCase();var data = this._activeDragSource.getDragData(this._activeContext);if (data){if (dataType != "text" && dataType != "url"){dataType = "text";if (data.innerHTML != null){data = data.innerHTML;}
}
dt.effectAllowed = "move";dt.setData(dataType,data.toString());}
},_onMouseUp: function(ev){window._event = ev;this._stopDragDrop(false);},_onDocumentMouseMove: function(ev){window._event = ev;this._dragDrop();},_onDocumentDragOver: function(ev){window._event = ev;if (this._potentialTarget) ev.preventDefault();},_onMouseMove: function(ev){window._event = ev;this._drag();},_onDragEnter: function(ev){window._event = ev;if (this._isDragging){ev.preventDefault();}
else{var dataObjects = AjaxControlToolkit.IEDragDropManager._getDataObjectsForDropTarget(this._getDropTarget(ev.target));for (var i = 0;i < dataObjects.length;i++){this._dropTarget.onDragEnterTarget(AjaxControlToolkit.DragMode.Copy,dataObjects[i].type,dataObjects[i].value);}
}
},_onDragLeave: function(ev){window._event = ev;if (this._isDragging){ev.preventDefault();}
else{var dataObjects = AjaxControlToolkit.IEDragDropManager._getDataObjectsForDropTarget(this._getDropTarget(ev.target));for (var i = 0;i < dataObjects.length;i++){this._dropTarget.onDragLeaveTarget(AjaxControlToolkit.DragMode.Copy,dataObjects[i].type,dataObjects[i].value);}
}
},_onDragOver: function(ev){window._event = ev;if (this._isDragging){ev.preventDefault();}
else{var dataObjects = AjaxControlToolkit.IEDragDropManager._getDataObjectsForDropTarget(this._getDropTarget(ev.target));for (var i = 0;i < dataObjects.length;i++){this._dropTarget.onDragInTarget(AjaxControlToolkit.DragMode.Copy,dataObjects[i].type,dataObjects[i].value);}
}
},_onDrop: function(ev){window._event = ev;if (!this._isDragging){var dataObjects = AjaxControlToolkit.IEDragDropManager._getDataObjectsForDropTarget(this._getDropTarget(ev.target));for (var i = 0;i < dataObjects.length;i++){this._dropTarget.drop(AjaxControlToolkit.DragMode.Copy,dataObjects[i].type,dataObjects[i].value);}
}
ev.preventDefault();},_getDropTarget: function(element){while (element){if (element._dropTarget != null){return element._dropTarget;}
element = element.parentNode;}
return null;},_dragDrop: function(){if (this._isDragging){return;}
this._isDragging = true;this._activeDragVisual.dragDrop();document.selection.empty();},_moveInTarget: function(dragSource,dropTarget){this._prepareForDomChanges();dropTarget.onDragInTarget(dragSource.get_dragMode(),dragSource.get_dragDataType(),dragSource.getDragData(this._activeContext));this._recoverFromDomChanges();},_enterTarget: function(dragSource,dropTarget){this._prepareForDomChanges();dropTarget.onDragEnterTarget(dragSource.get_dragMode(),dragSource.get_dragDataType(),dragSource.getDragData(this._activeContext));this._recoverFromDomChanges();},_leaveTarget: function(dragSource,dropTarget){this._prepareForDomChanges();dropTarget.onDragLeaveTarget(dragSource.get_dragMode(),dragSource.get_dragDataType(),dragSource.getDragData(this._activeContext));this._recoverFromDomChanges();},_findPotentialTarget: function(dragSource,dragVisual){var ev = window._event;if (this._dropTargets == null){return null;}
var type = dragSource.get_dragDataType();var mode = dragSource.get_dragMode();var data = dragSource.getDragData(this._activeContext);var scrollOffset = this.getScrollOffset(document.body,true);var x = ev.clientX + scrollOffset.x;var y = ev.clientY + scrollOffset.y;var cursorRect ={x: x - this._radius,y: y - this._radius,width: this._radius * 2,height: this._radius * 2 };var targetRect;for (var i = 0;i < this._dropTargets.length;i++){targetRect = $common.getBounds(this._dropTargets[i].get_dropTargetElement());if ($common.overlaps(cursorRect,targetRect) && this._dropTargets[i].canDrop(mode,type,data)){return this._dropTargets[i];}
}
return null;},_prepareForDomChanges: function(){this._oldOffset = $common.getLocation(this._activeDragVisual);},_recoverFromDomChanges: function(){var newOffset = $common.getLocation(this._activeDragVisual);if (this._oldOffset.x != newOffset.x || this._oldOffset.y != newOffset.y){this._activeDragVisual.startingPoint = this.subtractPoints(this._activeDragVisual.startingPoint,this.subtractPoints(this._oldOffset,newOffset));scrollOffset = this.getScrollOffset(this._activeDragVisual,true);var position = this.addPoints(this.subtractPoints(document._lastPosition,this._activeDragVisual.startingPoint),scrollOffset);$common.setLocation(this._activeDragVisual,position);}
},addPoints: function(p1,p2){return{x: p1.x + p2.x,y: p1.y + p2.y };},subtractPoints: function(p1,p2){return{x: p1.x - p2.x,y: p1.y - p2.y };},getScrollOffset: function(element,recursive){var left = element.scrollLeft;var top = element.scrollTop;if (recursive){var parent = element.parentNode;while (parent != null && parent.scrollLeft != null){left += parent.scrollLeft;top += parent.scrollTop;if (parent == document.body && (left != 0 && top != 0))
break;parent = parent.parentNode;}
}
return{x: left,y: top };},getBrowserRectangle: function(){var width = window.innerWidth;var height = window.innerHeight;if (width == null){width = document.documentElement.clientWidth;}
if (height == null){height = document.documentElement.clientHeight;}
return{x: 0,y: 0,width: width,height: height };},getNextSibling: function(item){for (item = item.nextSibling;item != null;item = item.nextSibling){if (item.innerHTML != null){return item;}
}
return null;},hasParent: function(element){return (element.parentNode != null && element.parentNode.tagName != null);}
}
AjaxControlToolkit.IEDragDropManager.registerClass('AjaxControlToolkit.IEDragDropManager',Sys.Component);AjaxControlToolkit.IEDragDropManager._getDataObjectsForDropTarget = function(dropTarget){if (dropTarget == null){return [];}
var ev = window._event;var dataObjects = [];var dataTypes = [ "URL","Text" ];var data;for (var i = 0;i < dataTypes.length;i++){var dt = ev.dataTransfer;if(!dt && ev.rawEvent) dt = ev.rawEvent.dataTransfer;data = dt.getData(dataTypes[i]);if (dropTarget.canDrop(AjaxControlToolkit.DragMode.Copy,dataTypes[i],data)){if (data){Array.add(dataObjects,{type : dataTypes[i],value : data });}
}
}
return dataObjects;}
AjaxControlToolkit.GenericDragDropManager = function(){AjaxControlToolkit.GenericDragDropManager.initializeBase(this);this._dropTargets = null;this._scrollEdgeConst = 40;this._scrollByConst = 10;this._scroller = null;this._scrollDeltaX = 0;this._scrollDeltaY = 0;this._activeDragVisual = null;this._activeContext = null;this._activeDragSource = null;this._oldOffset = null;this._potentialTarget = null;this._mouseUpHandler = null;this._mouseMoveHandler = null;this._keyPressHandler = null;this._scrollerTickHandler = null;}
AjaxControlToolkit.GenericDragDropManager.prototype ={initialize : function(){AjaxControlToolkit.GenericDragDropManager.callBaseMethod(this,"initialize");this._mouseUpHandler = Function.createDelegate(this,this._onMouseUp);this._mouseMoveHandler = Function.createDelegate(this,this._onMouseMove);this._keyPressHandler = Function.createDelegate(this,this._onKeyPress);this._scrollerTickHandler = Function.createDelegate(this,this._onScrollerTick);if (Sys.Browser.agent === Sys.Browser.Safari){AjaxControlToolkit.GenericDragDropManager.__loadSafariCompatLayer(this);}
this._scroller = new Sys.Timer();this._scroller.set_interval(10);this._scroller.add_tick(this._scrollerTickHandler);},startDragDrop : function(dragSource,dragVisual,context){this._activeDragSource = dragSource;this._activeDragVisual = dragVisual;this._activeContext = context;AjaxControlToolkit.GenericDragDropManager.callBaseMethod(this,"startDragDrop",[dragSource,dragVisual,context]);},_stopDragDrop : function(cancelled){this._scroller.set_enabled(false);AjaxControlToolkit.GenericDragDropManager.callBaseMethod(this,"_stopDragDrop",[cancelled]);},_drag : function(isInitialDrag){AjaxControlToolkit.GenericDragDropManager.callBaseMethod(this,"_drag",[isInitialDrag]);this._autoScroll();},_wireEvents : function(){$addHandler(document,"mouseup",this._mouseUpHandler);$addHandler(document,"mousemove",this._mouseMoveHandler);$addHandler(document,"keypress",this._keyPressHandler);},_unwireEvents : function(){$removeHandler(document,"keypress",this._keyPressHandler);$removeHandler(document,"mousemove",this._mouseMoveHandler);$removeHandler(document,"mouseup",this._mouseUpHandler);},_wireDropTargetEvents : function(dropTarget){},_unwireDropTargetEvents : function(dropTarget){},_onMouseUp : function(e){window._event = e;this._stopDragDrop(false);},_onMouseMove : function(e){window._event = e;this._drag();},_onKeyPress : function(e){window._event = e;var k = e.keyCode ? e.keyCode : e.rawEvent.keyCode;if (k == 27){this._stopDragDrop( true);}
},_autoScroll : function(){var ev = window._event;var browserRect = this.getBrowserRectangle();if (browserRect.width > 0){this._scrollDeltaX = this._scrollDeltaY = 0;if (ev.clientX < browserRect.x + this._scrollEdgeConst) this._scrollDeltaX = -this._scrollByConst;else if (ev.clientX > browserRect.width - this._scrollEdgeConst) this._scrollDeltaX = this._scrollByConst;if (ev.clientY < browserRect.y + this._scrollEdgeConst) this._scrollDeltaY = -this._scrollByConst;else if (ev.clientY > browserRect.height - this._scrollEdgeConst) this._scrollDeltaY = this._scrollByConst;if (this._scrollDeltaX != 0 || this._scrollDeltaY != 0){this._scroller.set_enabled(true);}
else{this._scroller.set_enabled(false);}
}
},_onScrollerTick : function(){var oldLeft = document.body.scrollLeft;var oldTop = document.body.scrollTop;window.scrollBy(this._scrollDeltaX,this._scrollDeltaY);var newLeft = document.body.scrollLeft;var newTop = document.body.scrollTop;var dragVisual = this._activeDragVisual;var position ={x: parseInt(dragVisual.style.left) + (newLeft - oldLeft),y: parseInt(dragVisual.style.top) + (newTop - oldTop) };$common.setLocation(dragVisual,position);}
}
AjaxControlToolkit.GenericDragDropManager.registerClass('AjaxControlToolkit.GenericDragDropManager',AjaxControlToolkit.IEDragDropManager);if (Sys.Browser.agent === Sys.Browser.Safari){AjaxControlToolkit.GenericDragDropManager.__loadSafariCompatLayer = function(ddm){ddm._getScrollOffset = ddm.getScrollOffset;ddm.getScrollOffset = function(element,recursive){return{x: 0,y: 0 };}
ddm._getBrowserRectangle = ddm.getBrowserRectangle;ddm.getBrowserRectangle = function(){var browserRect = ddm._getBrowserRectangle();var offset = ddm._getScrollOffset(document.body,true);return{x: browserRect.x + offset.x,y: browserRect.y + offset.y,width: browserRect.width + offset.x,height: browserRect.height + offset.y };}
}
}
if(typeof(Sys)!=='undefined')Sys.Application.notifyScriptLoaded();AjaxControlToolkit.FloatingBehavior = function(element){AjaxControlToolkit.FloatingBehavior.initializeBase(this,[element]);var _handle;var _location;var _dragStartLocation;var _profileProperty;var _profileComponent;var _mouseDownHandler = Function.createDelegate(this,mouseDownHandler);this.add_move = function(handler){this.get_events().addHandler('move',handler);}
this.remove_move = function(handler){this.get_events().removeHandler('move',handler);}
this.get_handle = function(){return _handle;}
this.set_handle = function(value){if (_handle != null){$removeHandler(_handle,"mousedown",_mouseDownHandler);}
_handle = value;$addHandler(_handle,"mousedown",_mouseDownHandler);}
this.get_profileProperty = function(){return _profileProperty;}
this.set_profileProperty = function(value){_profileProperty = value;}
this.get_profileComponent = function(){return _profileComponent;}
this.set_profileComponent = function(value){_profileComponent = value;}
this.get_location = function(){return _location;}
this.set_location = function(value){if (_location != value){_location = value;if (this.get_isInitialized()){$common.setLocation(this.get_element(),_location);}
this.raisePropertyChanged('location');}
}
this.initialize = function(){AjaxControlToolkit.FloatingBehavior.callBaseMethod(this,'initialize');AjaxControlToolkit.DragDropManager.registerDropTarget(this);var el = this.get_element();if (!_location){_location = $common.getLocation(el);}
el.style.position = "fixed";$common.setLocation(el,_location);$common.appendElementToFormOrBody(el);}
this.dispose = function(){AjaxControlToolkit.DragDropManager.unregisterDropTarget(this);if (_handle && _mouseDownHandler){$removeHandler(_handle,"mousedown",_mouseDownHandler);}
_mouseDownHandler = null;AjaxControlToolkit.FloatingBehavior.callBaseMethod(this,'dispose');}
this.checkCanDrag = function(element){var undraggableTagNames = ["input","button","select","textarea","label"];var tagName = element.tagName;if ((tagName.toLowerCase() == "a") && (element.href != null) && (element.href.length > 0)){return false;}
if (Array.indexOf(undraggableTagNames,tagName.toLowerCase()) > -1){return false;}
return true;}
function mouseDownHandler(ev){window._event = ev;var el = this.get_element();if (this.checkCanDrag(ev.target)){_dragStartLocation = $common.getLocation(el);ev.preventDefault();this.startDragDrop(el);}
}
this.get_dragDataType = function(){return "_floatingObject";}
this.getDragData = function(context){return null;}
this.get_dragMode = function(){return AjaxControlToolkit.DragMode.Move;}
this.onDragStart = function(){}
this.onDrag = function(){}
this.onDragEnd = function(canceled){if (!canceled){var handler = this.get_events().getHandler('move');if(handler){var cancelArgs = new Sys.CancelEventArgs();handler(this,cancelArgs);canceled = cancelArgs.get_cancel();}
}
var el = this.get_element();if (canceled){$common.setLocation(el,_dragStartLocation);} else{_location = $common.getLocation(el);this.raisePropertyChanged('location');}
}
this.startDragDrop = function(dragVisual){AjaxControlToolkit.DragDropManager.startDragDrop(this,dragVisual,null);}
this.get_dropTargetElement = function(){return document.body;}
this.canDrop = function(dragMode,dataType,data){return (dataType == "_floatingObject");}
this.drop = function(dragMode,dataType,data){}
this.onDragEnterTarget = function(dragMode,dataType,data){}
this.onDragLeaveTarget = function(dragMode,dataType,data){}
this.onDragInTarget = function(dragMode,dataType,data){}
}
AjaxControlToolkit.FloatingBehavior.registerClass('AjaxControlToolkit.FloatingBehavior',AjaxControlToolkit.BehaviorBase,AjaxControlToolkit.IDragSource,AjaxControlToolkit.IDropTarget,Sys.IDisposable);if(typeof(Sys)!=='undefined')Sys.Application.notifyScriptLoaded();Type.registerNamespace('AjaxControlToolkit');AjaxControlToolkit.BoxCorners = function(){throw Error.invalidOperation();}
AjaxControlToolkit.BoxCorners.prototype ={None        : 0x00,TopLeft     : 0x01,TopRight    : 0x02,BottomRight : 0x04,BottomLeft  : 0x08,Top         : 0x01 | 0x02,Right       : 0x02 | 0x04,Bottom      : 0x04 | 0x08,Left        : 0x08 | 0x01,All         : 0x01 | 0x02 | 0x04 | 0x08
}
AjaxControlToolkit.BoxCorners.registerEnum("AjaxControlToolkit.BoxCorners",true);AjaxControlToolkit.RoundedCornersBehavior = function(element){AjaxControlToolkit.RoundedCornersBehavior.initializeBase(this,[element]);this._corners = AjaxControlToolkit.BoxCorners.All;this._radius = 5;this._color = null;this._parentDiv = null;this._originalStyle = null;this._borderColor = null;this._isDirty = true;}
AjaxControlToolkit.RoundedCornersBehavior.prototype ={initialize: function(){AjaxControlToolkit.RoundedCornersBehavior.callBaseMethod(this,'initialize');this.update();},dispose: function(){this.disposeParentDiv();AjaxControlToolkit.RoundedCornersBehavior.callBaseMethod(this,'dispose');},update: function(){var e = this.get_element();if (!e || !this._isDirty || this.get_isUpdating()) return;this.disposeParentDiv();var color = this.getBackgroundColor();var originalWidth = e.offsetWidth;var newParent = e.cloneNode(false);this.moveChildren(e,newParent);this._originalStyle = e.style.cssText;e.style.backgroundColor = "transparent";e.style.verticalAlign = "top";e.style.padding = "0";e.style.overflow = "";e.style.className = "";if (e.style.height && e.style.height != "auto"){e.style.height = parseInt($common.getCurrentStyle(e,'height')) + (this._radius * 2) + "px";} else{if (!e.style.width && (0 < originalWidth)){e.style.width = originalWidth + "px";}
}
newParent.style.position = "";newParent.style.border = "";newParent.style.margin = "";newParent.style.width = "100%";newParent.id = "";newParent.removeAttribute("control");if (this._borderColor){newParent.style.borderTopStyle = "none";newParent.style.borderBottomStyle = "none";newParent.style.borderLeftStyle = "solid";newParent.style.borderRightStyle = "solid";newParent.style.borderLeftColor = this._borderColor;newParent.style.borderRightColor = this._borderColor;newParent.style.borderLeftWidth = "1px";newParent.style.borderRightWidth = "1px";if (this._radius == 0){newParent.style.borderTopStyle = "solid";newParent.style.borderBottomStyle = "solid";newParent.style.borderTopColor = this._borderColor;newParent.style.borderBottomColor = this._borderColor;newParent.style.borderTopWidth = "1px";newParent.style.borderBottomWidth = "1px";}
} else{newParent.style.borderTopStyle = "none";newParent.style.borderBottomStyle = "none";newParent.style.borderLeftStyle = "none";newParent.style.borderRightStyle = "none";}
var lastDiv = null;var radius = this._radius;var lines = this._radius;var lastDelta = 0;for (var i = lines;i > 0;i--){var angle = Math.acos(i / radius);var delta = radius - Math.round(Math.sin(angle) * radius);var newDiv = document.createElement("DIV");newDiv.__roundedDiv = true;newDiv.style.backgroundColor = color;newDiv.style.marginLeft = delta + "px";newDiv.style.marginRight = (delta - (this._borderColor ? 2 : 0)) + "px";newDiv.style.height = "1px";newDiv.style.fontSize = "1px";// workaround for IE wierdness with 1px divs.
newDiv.style.overflow = "hidden";if (this._borderColor){newDiv.style.borderLeftStyle = "solid";newDiv.style.borderRightStyle = "solid";newDiv.style.borderLeftColor = this._borderColor;newDiv.style.borderRightColor = this._borderColor;var offset = Math.max(0,lastDelta - delta - 1);newDiv.style.borderLeftWidth = (offset + 1) + "px";newDiv.style.borderRightWidth = (offset + 1) + "px";if (i == lines){newDiv.__roundedDivNoBorder = true;newDiv.style.backgroundColor = this._borderColor;}
}
e.insertBefore(newDiv,lastDiv);var topDiv = newDiv;newDiv = newDiv.cloneNode(true);newDiv.__roundedDiv = true;e.insertBefore(newDiv,lastDiv);var bottomDiv = newDiv;lastDiv = newDiv;lastDelta = delta;if (!this.isCornerSet(AjaxControlToolkit.BoxCorners.TopLeft)){topDiv.style.marginLeft = "0";if (this._borderColor){topDiv.style.borderLeftWidth = "1px";}
}
if (!this.isCornerSet(AjaxControlToolkit.BoxCorners.TopRight)){topDiv.style.marginRight = "0";if (this._borderColor){topDiv.style.borderRightWidth = "1px";topDiv.style.marginRight = "-2px";}
}
if (!this.isCornerSet(AjaxControlToolkit.BoxCorners.BottomLeft)){bottomDiv.style.marginLeft = "0";if (this._borderColor){bottomDiv.style.borderLeftWidth = "1px";}
}
if (!this.isCornerSet(AjaxControlToolkit.BoxCorners.BottomRight)){bottomDiv.style.marginRight = "0";if (this._borderColor){bottomDiv.style.borderRightWidth = "1px";bottomDiv.style.marginRight = "-2px";}
}
}
e.insertBefore(newParent,lastDiv);this._parentDiv = newParent;this._isDirty = false;},disposeParentDiv: function(){if (this._parentDiv){var e = this.get_element();var children = e.childNodes;for (var i = children.length - 1;i >= 0;i--){var child = children[i];if (child){if (child == this._parentDiv){this.moveChildren(child,e);}
try{e.removeChild(child);} catch (e){}
}
}
if (this._originalStyle){e.style.cssText = this._originalStyle;this._originalStyle = null;}
this._parentDiv = null;}
},getBackgroundColor: function(){if (this._color){return this._color;}
return $common.getCurrentStyle(this.get_element(),'backgroundColor');},moveChildren: function(src,dest){var moveCount = 0;while (src.hasChildNodes()){var child = src.childNodes[0];child = src.removeChild(child);dest.appendChild(child);moveCount++;}
return moveCount;},isCornerSet: function(corner){return (this._corners & corner) != AjaxControlToolkit.BoxCorners.None;},setCorner: function(corner,value){if (value){this.set_Corners(this._corners | corner);} else{this.set_Corners(this._corners & ~corner);}
},get_Color: function(){return this._color;},set_Color: function(value){if (value != this._color){this._color = value;this._isDirty = true;this.update();this.raisePropertyChanged('Color');}
},get_Radius: function(){return this._radius;},set_Radius: function(value){if (value != this._radius){this._radius = value;this._isDirty = true;this.update();this.raisePropertyChanged('Radius');}
},get_Corners: function(){return this._corners;},set_Corners: function(value){if (value != this._corners){this._corners = value;this._isDirty = true;this.update();this.raisePropertyChanged("Corners");}
},get_BorderColor: function(){return this._borderColor;},set_BorderColor: function(value){if (value != this._borderColor){this._borderColor = value;this._isDirty = true;this.update();this.raisePropertyChanged("BorderColor");}
}
}
AjaxControlToolkit.RoundedCornersBehavior.registerClass('AjaxControlToolkit.RoundedCornersBehavior',AjaxControlToolkit.BehaviorBase);if(typeof(Sys)!=='undefined')Sys.Application.notifyScriptLoaded();Type.registerNamespace('AjaxControlToolkit');AjaxControlToolkit.DropShadowBehavior = function(element){AjaxControlToolkit.DropShadowBehavior.initializeBase(this,[element]);this._opacity = 1.0;this._width = 5;this._shadowDiv = null;this._trackPosition = null;this._trackPositionDelay = 50;this._timer = null;this._tickHandler = null;this._roundedBehavior = null;this._shadowRoundedBehavior = null;this._rounded = false;this._radius = 5;this._lastX = null;this._lastY = null;this._lastW = null;this._lastH = null;}
AjaxControlToolkit.DropShadowBehavior.prototype ={initialize : function(){AjaxControlToolkit.DropShadowBehavior.callBaseMethod(this,'initialize');var e = this.get_element();if ($common.getCurrentStyle(e,'position',e.style.position) != "absolute"){e.style.position = "relative";}
if (this._rounded){this.setupRounded();}
if (this._trackPosition){this.startTimer();}
this.setShadow();},dispose : function(){this.stopTimer();this.disposeShadowDiv();AjaxControlToolkit.DropShadowBehavior.callBaseMethod(this,'dispose');},buildShadowDiv : function(){var e = this.get_element();if (!this.get_isInitialized() || !e || !this._width) return;var div = document.createElement("DIV");div.style.backgroundColor = "black";div.style.position= "absolute";if (e.id){div.id = e.id + "_DropShadow";}
this._shadowDiv = div;e.parentNode.appendChild(div);if (this._rounded ){this._shadowDiv.style.height = Math.max(0,e.offsetHeight - (2*this._radius)) + "px";if (!this._shadowRoundedBehavior){this._shadowRoundedBehavior = $create(AjaxControlToolkit.RoundedCornersBehavior,{"Radius": this._radius},null,null,this._shadowDiv);} else{this._shadowRoundedBehavior.set_Radius(this._radius);}
} else if (this._shadowRoundedBehavior){this._shadowRoundedBehavior.set_Radius(0);}
if (this._opacity != 1.0){this.setupOpacity();}
this.setShadow(false,true);this.updateZIndex();},disposeShadowDiv : function(){if (this._shadowDiv){if (this._shadowDiv.parentNode){this._shadowDiv.parentNode.removeChild(this._shadowDiv);}
this._shadowDiv = null;}
if (this._shadowRoundedBehavior){this._shadowRoundedBehavior.dispose();this._shadowRoundedBehavior = null;}
},onTimerTick : function(){this.setShadow();},startTimer : function(){if (!this._timer){if (!this._tickHandler){this._tickHandler = Function.createDelegate(this,this.onTimerTick);}
this._timer = new Sys.Timer();this._timer.set_interval(this._trackPositionDelay);this._timer.add_tick(this._tickHandler);this._timer.set_enabled(true);}
},stopTimer : function(){if (this._timer){this._timer.remove_tick(this._tickHandler);this._timer.set_enabled(false);this._timer.dispose();this._timer = null;}
},setShadow : function(force,norecurse){var e = this.get_element();if (!this.get_isInitialized() || !e || (!this._width && !force)) return;var existingShadow = this._shadowDiv;if (!existingShadow){this.buildShadowDiv();}
var location ={x: e.offsetLeft,y: e.offsetTop };if (force || this._lastX != location.x || this._lastY != location.y || !existingShadow){this._lastX = location.x;this._lastY = location.y;var w = this.get_Width();location.x += w;location.y += w;$common.setLocation(this._shadowDiv,location);}
var h = e.offsetHeight;var w = e.offsetWidth;if (force || h != this._lastH || w != this._lastW || !existingShadow){this._lastW = w;this._lastH = h;if (!this._rounded || !existingShadow || norecurse){this._shadowDiv.style.width = w + "px";this._shadowDiv.style.height = h + "px";} else{this.disposeShadowDiv();this.setShadow();}
}
if (this._shadowDiv){this._shadowDiv.style.visibility = $common.getCurrentStyle(e,'visibility');}
},setupOpacity : function(){if (this.get_isInitialized() && this._shadowDiv){$common.setElementOpacity(this._shadowDiv,this._opacity);}
},setupRounded : function(){if (!this._roundedBehavior && this._rounded){this._roundedBehavior = $create(AjaxControlToolkit.RoundedCornersBehavior,null,null,null,this.get_element());}
if (this._roundedBehavior){this._roundedBehavior.set_Radius(this._rounded ? this._radius : 0);}
},updateZIndex : function(){if (!this._shadowDiv) return;var e = this.get_element();var targetZIndex = e.style.zIndex;var shadowZIndex = this._shadowDiv.style.zIndex;if (shadowZIndex && targetZIndex && targetZIndex > shadowZIndex){return;} else{targetZIndex = Math.max(2,targetZIndex);shadowZIndex = targetZIndex - 1;}
e.style.zIndex = targetZIndex;this._shadowDiv.style.zIndex = shadowZIndex;},updateRoundedCorners : function(){if (this.get_isInitialized()){this.setupRounded();this.disposeShadowDiv();this.setShadow();}
},get_Opacity : function(){return this._opacity;},set_Opacity : function(value){if (this._opacity != value){this._opacity = value;this.setupOpacity();this.raisePropertyChanged('Opacity');}
},get_Rounded : function(){return this._rounded;},set_Rounded : function(value){if (value != this._rounded){this._rounded = value;this.updateRoundedCorners();this.raisePropertyChanged('Rounded');}
},get_Radius : function(){return this._radius;},set_Radius : function(value){if (value != this._radius){this._radius = value;this.updateRoundedCorners();this.raisePropertyChanged('Radius');}
},get_Width : function(){return this._width;},set_Width : function(value){if (value != this._width){this._width = value;if (this._shadowDiv){$common.setVisible(this._shadowDiv,value > 0);}
this.setShadow(true);this.raisePropertyChanged('Width');}
},get_TrackPositionDelay : function(){return this._trackPositionDelay;},set_TrackPositionDelay : function(value){if (value != this._trackPositionDelay){this._trackPositionDelay = value;if (this._trackPosition){this.stopTimer();this.startTimer();}
this.raisePropertyChanged('TrackPositionDelay');}
},get_TrackPosition : function(){return this._trackPosition;},set_TrackPosition : function(value){if (value != this._trackPosition){this._trackPosition = value;if (this.get_element()){if (value){this.startTimer();} else{this.stopTimer();}
}
this.raisePropertyChanged('TrackPosition');}
}
}
AjaxControlToolkit.DropShadowBehavior.registerClass('AjaxControlToolkit.DropShadowBehavior',AjaxControlToolkit.BehaviorBase);if(typeof(Sys)!=='undefined')Sys.Application.notifyScriptLoaded();Type.registerNamespace('AjaxControlToolkit');AjaxControlToolkit.ModalPopupRepositionMode = function(){throw Error.invalidOperation();}
AjaxControlToolkit.ModalPopupRepositionMode.prototype ={None : 0,RepositionOnWindowResize : 1,RepositionOnWindowScroll : 2,RepositionOnWindowResizeAndScroll : 3
}
AjaxControlToolkit.ModalPopupRepositionMode.registerEnum('AjaxControlToolkit.ModalPopupRepositionMode');AjaxControlToolkit.ModalPopupBehavior = function(element){AjaxControlToolkit.ModalPopupBehavior.initializeBase(this,[element]);this._PopupControlID = null;this._PopupDragHandleControlID = null;this._BackgroundCssClass = null;this._DropShadow = false;this._Drag = false;this._OkControlID = null;this._CancelControlID = null;this._OnOkScript = null;this._OnCancelScript = null;this._xCoordinate = -1;this._yCoordinate = -1;this._repositionMode = AjaxControlToolkit.ModalPopupRepositionMode.RepositionOnWindowResizeAndScroll;this._backgroundElement = null;this._foregroundElement = null;this._relativeOrAbsoluteParentElement = null;this._popupElement = null;this._dragHandleElement = null;this._showHandler = null;this._okHandler = null;this._cancelHandler = null;this._scrollHandler = null;this._resizeHandler = null;this._windowHandlersAttached = false;this._dropShadowBehavior = null;this._dragBehavior = null;this._isIE6 = false;this._saveTabIndexes = new Array();this._saveDesableSelect = new Array();this._tagWithTabIndex = new Array('A','AREA','BUTTON','INPUT','OBJECT','SELECT','TEXTAREA','IFRAME');}
AjaxControlToolkit.ModalPopupBehavior.prototype ={initialize: function(){AjaxControlToolkit.ModalPopupBehavior.callBaseMethod(this,'initialize');this._isIE6 = (Sys.Browser.agent == Sys.Browser.InternetExplorer && Sys.Browser.version < 7);if (this._PopupDragHandleControlID)
this._dragHandleElement = $get(this._PopupDragHandleControlID);this._popupElement = $get(this._PopupControlID);if (this._DropShadow){this._foregroundElement = document.createElement('div');this._foregroundElement.id = this.get_id() + '_foregroundElement';this._popupElement.parentNode.appendChild(this._foregroundElement);this._foregroundElement.appendChild(this._popupElement);}
else{this._foregroundElement = this._popupElement;}
this._backgroundElement = document.createElement('div');this._backgroundElement.id = this.get_id() + '_backgroundElement';this._backgroundElement.style.display = 'none';if (Sys.Browser.agent == Sys.Browser.InternetExplorer && document.compatMode != "CSS1Compat")
this._backgroundElement.style.position = 'absolute';else this._backgroundElement.style.position = 'fixed';this._backgroundElement.style.left = '0px';this._backgroundElement.style.top = '0px';this._backgroundElement.style.zIndex = 10000;if (this._BackgroundCssClass){this._backgroundElement.className = this._BackgroundCssClass;}
$common.appendElementToFormOrBody(this._foregroundElement);$common.appendElementToFormOrBody(this._backgroundElement);this._foregroundElement.style.display = 'none';this._foregroundElement.style.position = 'fixed';this._foregroundElement.style.zIndex = $common.getCurrentStyle(this._backgroundElement,'zIndex',this._backgroundElement.style.zIndex) + 1;this._showHandler = Function.createDelegate(this,this._onShow);$addHandler(this.get_element(),'click',this._showHandler);if (this._OkControlID){this._okHandler = Function.createDelegate(this,this._onOk);$addHandler($get(this._OkControlID),'click',this._okHandler);}
if (this._CancelControlID){this._cancelHandler = Function.createDelegate(this,this._onCancel);$addHandler($get(this._CancelControlID),'click',this._cancelHandler);}
this._scrollHandler = Function.createDelegate(this,this._onLayout);this._resizeHandler = Function.createDelegate(this,this._onLayout);this.registerPartialUpdateEvents();},dispose: function(){this._hideImplementation();if (this._foregroundElement && this._foregroundElement.parentNode){this._backgroundElement.parentNode.removeChild(this._backgroundElement);if (this._DropShadow){this._foregroundElement.parentNode.appendChild(this._popupElement);this._foregroundElement.parentNode.removeChild(this._foregroundElement);}
}
this._scrollHandler = null;this._resizeHandler = null;if (this._cancelHandler && $get(this._CancelControlID)){$removeHandler($get(this._CancelControlID),'click',this._cancelHandler);this._cancelHandler = null;}
if (this._okHandler && $get(this._OkControlID)){$removeHandler($get(this._OkControlID),'click',this._okHandler);this._okHandler = null;}
if (this._showHandler){$removeHandler(this.get_element(),'click',this._showHandler);this._showHandler = null;}
AjaxControlToolkit.ModalPopupBehavior.callBaseMethod(this,'dispose');},_attachPopup: function(){if (this._DropShadow && !this._dropShadowBehavior){this._dropShadowBehavior = $create(AjaxControlToolkit.DropShadowBehavior,{},null,null,this._popupElement);}
if (this._dragHandleElement && !this._dragBehavior){this._dragBehavior = $create(AjaxControlToolkit.FloatingBehavior,{"handle": this._dragHandleElement },null,null,this._foregroundElement);}
$addHandler(window,'resize',this._resizeHandler);$addHandler(window,'scroll',this._scrollHandler);this._windowHandlersAttached = true;},_detachPopup: function(){if (this._windowHandlersAttached){if (this._scrollHandler){$removeHandler(window,'scroll',this._scrollHandler);}
if (this._resizeHandler){$removeHandler(window,'resize',this._resizeHandler);}
this._windowHandlersAttached = false;}
if (this._dragBehavior){this._dragBehavior.dispose();this._dragBehavior = null;}
if (this._dropShadowBehavior){this._dropShadowBehavior.dispose();this._dropShadowBehavior = null;}
},_onShow: function(e){if (!this.get_element().disabled){this.show();e.preventDefault();return false;}
},_onOk: function(e){var element = $get(this._OkControlID);if (element && !element.disabled){if (this.hide() && this._OnOkScript){window.setTimeout(this._OnOkScript,0);}
e.preventDefault();return false;}
},_onCancel: function(e){var element = $get(this._CancelControlID);if (element && !element.disabled){if (this.hide() && this._OnCancelScript){window.setTimeout(this._OnCancelScript,0);}
e.preventDefault();return false;}
},_onLayout: function(e){var positioning = this.get_repositionMode();if (((positioning === AjaxControlToolkit.ModalPopupRepositionMode.RepositionOnWindowScroll) ||
(positioning === AjaxControlToolkit.ModalPopupRepositionMode.RepositionOnWindowResizeAndScroll)) && (e.type === 'scroll')){this._layout();} else if (((positioning === AjaxControlToolkit.ModalPopupRepositionMode.RepositionOnWindowResize) ||
(positioning === AjaxControlToolkit.ModalPopupRepositionMode.RepositionOnWindowResizeAndScroll)) && (e.type === 'resize')){this._layout();} else{this._layoutBackgroundElement();}
},show: function(){var eventArgs = new Sys.CancelEventArgs();this.raiseShowing(eventArgs);if (eventArgs.get_cancel()){return;}
this.populate();this._attachPopup();this._backgroundElement.style.display = '';this._foregroundElement.style.display = '';this._popupElement.style.display = '';if (this._isIE6){this._foregroundElement.style.position = 'absolute';this._backgroundElement.style.position = 'absolute';var tempRelativeOrAbsoluteParent = this._foregroundElement.parentNode;while (tempRelativeOrAbsoluteParent && (tempRelativeOrAbsoluteParent != document.documentElement)){if ((tempRelativeOrAbsoluteParent.style.position != 'relative') && (tempRelativeOrAbsoluteParent.style.position != 'absolute')){tempRelativeOrAbsoluteParent = tempRelativeOrAbsoluteParent.parentNode;} else{this._relativeOrAbsoluteParentElement = tempRelativeOrAbsoluteParent;break;}
}
}
this.disableTab();this._layout();this._layout();this.raiseShown(Sys.EventArgs.Empty);},disableTab: function(){var i = 0;var tagElements;var tagElementsInPopUp = new Array();Array.clear(this._saveTabIndexes);for (var j = 0;j < this._tagWithTabIndex.length;j++){tagElements = this._foregroundElement.getElementsByTagName(this._tagWithTabIndex[j]);for (var k = 0;k < tagElements.length;k++){tagElementsInPopUp[i] = tagElements[k];i++;}
}
i = 0;for (var j = 0;j < this._tagWithTabIndex.length;j++){tagElements = document.getElementsByTagName(this._tagWithTabIndex[j]);for (var k = 0;k < tagElements.length;k++){if (Array.indexOf(tagElementsInPopUp,tagElements[k]) == -1){this._saveTabIndexes[i] ={tag: tagElements[k],index: tagElements[k].tabIndex };tagElements[k].tabIndex = "-1";i++;}
}
}
i = 0;if ((Sys.Browser.agent === Sys.Browser.InternetExplorer) && (Sys.Browser.version < 7)){var tagSelectInPopUp = new Array();for (var j = 0;j < this._tagWithTabIndex.length;j++){tagElements = this._foregroundElement.getElementsByTagName('SELECT');for (var k = 0;k < tagElements.length;k++){tagSelectInPopUp[i] = tagElements[k];i++;}
}
i = 0;Array.clear(this._saveDesableSelect);tagElements = document.getElementsByTagName('SELECT');for (var k = 0;k < tagElements.length;k++){if (Array.indexOf(tagSelectInPopUp,tagElements[k]) == -1){this._saveDesableSelect[i] ={tag: tagElements[k],visib: $common.getCurrentStyle(tagElements[k],'visibility') };tagElements[k].style.visibility = 'hidden';i++;}
}
}
},restoreTab: function(){for (var i = 0;i < this._saveTabIndexes.length;i++){this._saveTabIndexes[i].tag.tabIndex = this._saveTabIndexes[i].index;}
Array.clear(this._saveTabIndexes);if ((Sys.Browser.agent === Sys.Browser.InternetExplorer) && (Sys.Browser.version < 7)){for (var k = 0;k < this._saveDesableSelect.length;k++){this._saveDesableSelect[k].tag.style.visibility = this._saveDesableSelect[k].visib;}
Array.clear(this._saveDesableSelect);}
},hide: function(){var eventArgs = new Sys.CancelEventArgs();this.raiseHiding(eventArgs);if (eventArgs.get_cancel()){return false;}
this._hideImplementation();this.raiseHidden(Sys.EventArgs.Empty);return true;},_hideImplementation: function(){this._backgroundElement.style.display = 'none';this._foregroundElement.style.display = 'none';this.restoreTab();this._detachPopup();},_layout: function(){var scrollLeft = (document.documentElement.scrollLeft ? document.documentElement.scrollLeft : document.body.scrollLeft);var scrollTop = (document.documentElement.scrollTop ? document.documentElement.scrollTop : document.body.scrollTop);var clientBounds = $common.getClientBounds();var clientWidth = clientBounds.width;var clientHeight = clientBounds.height;this._layoutBackgroundElement();var xCoord = 0;var yCoord = 0;if (this._xCoordinate < 0){var foregroundelementwidth = this._foregroundElement.offsetWidth ? this._foregroundElement.offsetWidth : this._foregroundElement.scrollWidth;xCoord = ((clientWidth - foregroundelementwidth) / 2);if (this._foregroundElement.style.position == 'absolute'){xCoord += scrollLeft;}
this._foregroundElement.style.left = xCoord + 'px';} else{if (this._isIE6){this._foregroundElement.style.left = (this._xCoordinate + scrollLeft) + 'px';xCoord = this._xCoordinate + scrollLeft;}
else{this._foregroundElement.style.left = this._xCoordinate + 'px';xCoord = this._xCoordinate;}
}
if (this._yCoordinate < 0){var foregroundelementheight = this._foregroundElement.offsetHeight ? this._foregroundElement.offsetHeight : this._foregroundElement.scrollHeight;yCoord = ((clientHeight - foregroundelementheight) / 2);if (this._foregroundElement.style.position == 'absolute'){yCoord += scrollTop;}
this._foregroundElement.style.top = yCoord + 'px';} else{if (this._isIE6){this._foregroundElement.style.top = (this._yCoordinate + scrollTop) + 'px';yCoord = this._yCoordinate + scrollTop;}
else{this._foregroundElement.style.top = this._yCoordinate + 'px';yCoord = this._yCoordinate;}
}
this._layoutForegroundElement(xCoord,yCoord);if (this._dropShadowBehavior){this._dropShadowBehavior.setShadow();window.setTimeout(Function.createDelegate(this,this._fixupDropShadowBehavior),0);}
this._layoutBackgroundElement();},_layoutForegroundElement: function(xCoord,yCoord){if (this._isIE6 && this._relativeOrAbsoluteParentElement){var foregroundLocation = $common.getLocation(this._foregroundElement);var relativeParentLocation = $common.getLocation(this._relativeOrAbsoluteParentElement);var getLocationXCoord = foregroundLocation.x;if (getLocationXCoord != xCoord){this._foregroundElement.style.left = (xCoord - relativeParentLocation.x) + 'px';}
var getLocationYCoord = foregroundLocation.y;if (getLocationYCoord != yCoord){this._foregroundElement.style.top = (yCoord - relativeParentLocation.y) + 'px';}
}
},_layoutBackgroundElement: function(){if (this._isIE6){var backgroundLocation = $common.getLocation(this._backgroundElement);var backgroundXCoord = backgroundLocation.x;if (backgroundXCoord != 0){this._backgroundElement.style.left = (-backgroundXCoord) + 'px';}
var backgroundYCoord = backgroundLocation.y;if (backgroundYCoord != 0){this._backgroundElement.style.top = (-backgroundYCoord) + 'px';}
}
var clientBounds = $common.getClientBounds();var clientWidth = clientBounds.width;var clientHeight = clientBounds.height;if (Sys.Browser.agent == Sys.Browser.InternetExplorer && document.compatMode != "CSS1Compat"){this._backgroundElement.style.width = document.body.scrollWidth + "px";this._backgroundElement.style.height = document.body.scrollHeight + "px";}
else{this._backgroundElement.style.width = Math.max(Math.max(document.documentElement.scrollWidth,document.body.scrollWidth),clientWidth) + 'px';this._backgroundElement.style.height = Math.max(Math.max(document.documentElement.scrollHeight,document.body.scrollHeight),clientHeight) + 'px';}
},_fixupDropShadowBehavior: function(){if (this._dropShadowBehavior){this._dropShadowBehavior.setShadow();}
},_partialUpdateEndRequest: function(sender,endRequestEventArgs){AjaxControlToolkit.ModalPopupBehavior.callBaseMethod(this,'_partialUpdateEndRequest',[sender,endRequestEventArgs]);if (this.get_element()){var action = endRequestEventArgs.get_dataItems()[this.get_element().id];if ("show" == action){this.show();} else if ("hide" == action){this.hide();}
}
this._layout();},_onPopulated: function(sender,eventArgs){AjaxControlToolkit.ModalPopupBehavior.callBaseMethod(this,'_onPopulated',[sender,eventArgs]);this._layout();},get_PopupControlID: function(){return this._PopupControlID;},set_PopupControlID: function(value){if (this._PopupControlID != value){this._PopupControlID = value;this.raisePropertyChanged('PopupControlID');}
},get_X: function(){return this._xCoordinate;},set_X: function(value){if (this._xCoordinate != value){this._xCoordinate = value;this.raisePropertyChanged('X');}
},get_Y: function(){return this._yCoordinate;},set_Y: function(value){if (this._yCoordinate != value){this._yCoordinate = value;this.raisePropertyChanged('Y');}
},get_PopupDragHandleControlID: function(){return this._PopupDragHandleControlID;},set_PopupDragHandleControlID: function(value){if (this._PopupDragHandleControlID != value){this._PopupDragHandleControlID = value;this.raisePropertyChanged('PopupDragHandleControlID');}
},get_BackgroundCssClass: function(){return this._BackgroundCssClass;},set_BackgroundCssClass: function(value){if (this._BackgroundCssClass != value){this._BackgroundCssClass = value;this.raisePropertyChanged('BackgroundCssClass');}
},get_DropShadow: function(){return this._DropShadow;},set_DropShadow: function(value){if (this._DropShadow != value){this._DropShadow = value;this.raisePropertyChanged('DropShadow');}
},get_Drag: function(){return this._Drag;},set_Drag: function(value){if (this._Drag != value){this._Drag = value;this.raisePropertyChanged('Drag');}
},get_OkControlID: function(){return this._OkControlID;},set_OkControlID: function(value){if (this._OkControlID != value){this._OkControlID = value;this.raisePropertyChanged('OkControlID');}
},get_CancelControlID: function(){return this._CancelControlID;},set_CancelControlID: function(value){if (this._CancelControlID != value){this._CancelControlID = value;this.raisePropertyChanged('CancelControlID');}
},get_OnOkScript: function(){return this._OnOkScript;},set_OnOkScript: function(value){if (this._OnOkScript != value){this._OnOkScript = value;this.raisePropertyChanged('OnOkScript');}
},get_OnCancelScript: function(){return this._OnCancelScript;},set_OnCancelScript: function(value){if (this._OnCancelScript != value){this._OnCancelScript = value;this.raisePropertyChanged('OnCancelScript');}
},get_repositionMode: function(){return this._repositionMode;},set_repositionMode: function(value){if (this._repositionMode !== value){this._repositionMode = value;this.raisePropertyChanged('RepositionMode');}
},add_showing: function(handler){this.get_events().addHandler('showing',handler);},remove_showing: function(handler){this.get_events().removeHandler('showing',handler);},raiseShowing: function(eventArgs){var handler = this.get_events().getHandler('showing');if (handler){handler(this,eventArgs);}
},add_shown: function(handler){this.get_events().addHandler('shown',handler);},remove_shown: function(handler){this.get_events().removeHandler('shown',handler);},raiseShown: function(eventArgs){var handler = this.get_events().getHandler('shown');if (handler){handler(this,eventArgs);}
},add_hiding: function(handler){this.get_events().addHandler('hiding',handler);},remove_hiding: function(handler){this.get_events().removeHandler('hiding',handler);},raiseHiding: function(eventArgs){var handler = this.get_events().getHandler('hiding');if (handler){handler(this,eventArgs);}
},add_hidden: function(handler){this.get_events().addHandler('hidden',handler);},remove_hidden: function(handler){this.get_events().removeHandler('hidden',handler);},raiseHidden: function(eventArgs){var handler = this.get_events().getHandler('hidden');if (handler){handler(this,eventArgs);}
}
}
AjaxControlToolkit.ModalPopupBehavior.registerClass('AjaxControlToolkit.ModalPopupBehavior',AjaxControlToolkit.DynamicPopulateBehaviorBase);AjaxControlToolkit.ModalPopupBehavior.invokeViaServer = function(behaviorID,show){var behavior = $find(behaviorID);if (behavior){if (show){behavior.show();} else{behavior.hide();}
}
}
if(typeof(Sys)!=='undefined')Sys.Application.notifyScriptLoaded();