function ContentFragmentPageCustomCallback(variableName,callbackFunction){this._variableName = variableName;this._callbackFunction = callbackFunction;}
ContentFragmentPageCustomCallback.prototype._customCallback = function(id,callbackControlId,callbackParameter,callbackContext,successFunction,errorFunction){this._callbackFunction('custom','id=' + encodeURIComponent(id) + '&renderFromCurrent=True&callback_control_id=' + encodeURIComponent(callbackControlId) + '&callback_argument=' + encodeURIComponent(callbackParameter),successFunction,errorFunction,callbackContext);}
if(typeof(Sys)!=='undefined')Sys.Application.notifyScriptLoaded();var Telligent_Common=new Object();Telligent_Common._state=new Array();Telligent_Common.ConvertHsvColorToRgbColor=function(hsv){var h=hsv[0];var s=hsv[1];var v=hsv[2];var r;var g;var b;if(s==0)
return new Array(v,v,v);var htemp;if(h==360)
htemp=0;else htemp=h;htemp=htemp/60;var i=Math.floor(htemp);var f=htemp-i;var p=v*(1-s);var q=v*(1-(s*f));var t=v*(1-(s*(1-f)));if(i==0){r=v;g=t;b=p;}
if(i==1){r=q;g=v;b=p;}
if(i==2){r=p;g=v;b=t;}
if(i==3){r=p;g=q;b=v;}
if(i==4){r=t;g=p;b=v;}
if(i==5){r=v;g=p;b=q;}
r=Math.round(r);g=Math.round(g);b=Math.round(b);return new Array(r,g,b);}
Telligent_Common.ConvertRgbColorToHsvColor=function(rgb){var r=rgb[0];var g=rgb[1];var b=rgb[2];var h;var s;var v=Math.max(Math.max(r,g),b);var min=Math.min(Math.min(r,g),b);var delta=v-min;if(v==0)
s=0
else s=delta/v;if(s==0)
h=0;else{if(r==v)
h=60*(g-b)/delta;else if(g==v)
h=120+60*(b-r)/delta;else if(b==v)
h=240+60*(r-g)/delta;}
if(h<0)
h+=360;return new Array(h,s,v);}
Telligent_Common.ConvertDecimalToHexadecimal=function(d,digits){var chars="0123456789abcdef";var h='';var mod;while(d>0){mod=d%16;h=chars.substr(mod,1)+h;d-=mod;d/=16;}
if(digits){while(h.length<digits){h="0"+h;}}
return h;}
Telligent_Common.ConvertHtmlColorToRgbColor=function(html){html=html.replace(/[^0-9a-f]/ig,'');if(html.length==3)
return new Array(parseInt(html.substr(0,1)+html.substr(0,1),16),parseInt(html.substr(1,1)+html.substr(1,1),16),parseInt(html.substr(2,1)+html.substr(2,1),16));else if(html.length==6)
return new Array(parseInt(html.substr(0,2),16),parseInt(html.substr(2,2),16),parseInt(html.substr(4,2),16));else return new Array(255,255,255);}
Telligent_Common.ConvertRgbColorToHtmlColor=function(rgbColor){return"#"+Telligent_Common.ConvertDecimalToHexadecimal(rgbColor[0],2)+Telligent_Common.ConvertDecimalToHexadecimal(rgbColor[1],2)+Telligent_Common.ConvertDecimalToHexadecimal(rgbColor[2],2);}
Telligent_Common.GetContrastingHtmlColorForRgbColor=function(rgb){var illuminance=(rgb[0]*2)+(rgb[1]*5)+(rgb[2]);if(illuminance>1024)
return"#000000";else return"#ffffff";}
Telligent_Common.GetElementInfo=function(element){var elementInfo=new Object();if(!element.getBoundingClientRect){var curleft=0;var curtop=0;var obj=element;var leftComplete=false;var topComplete=false;var isIE=Telligent_Common.IsIE();while(obj){if(!leftComplete)
curleft+=obj.offsetLeft;if(!topComplete)
curtop+=obj.offsetTop;if(isIE&&obj.offsetParent&&obj.offsetParent.style.position=='relative'){if(!obj.offsetParent.style.width){leftComplete=true;if((obj.offsetParent.style.top||obj.offsetParent.style.bottom)){curtop+=obj.offsetHeight;topComplete=true;}}}
obj=obj.offsetParent;}
elementInfo.Left=curleft;elementInfo.Top=curtop;elementInfo.Right=curleft+element.offsetWidth;elementInfo.Bottom=curleft+element.offsetHeight;elementInfo.Width=element.offsetWidth;elementInfo.Height=element.offsetHeight;}
else{var boundingRect=element.getBoundingClientRect();var scrollX=0,scrollY=0;if(typeof(window.pageXOffset)=='number'){scrollX=window.pageXOffset;scrollY=window.pageYOffset;}
else if(document.body&&(document.body.scrollLeft||document.body.scrollTop)){scrollX=document.body.scrollLeft;scrollY=document.body.scrollTop;}
else if(document.documentElement&&(document.documentElement.scrollLeft||document.documentElement.scrollTop)){scrollX=document.documentElement.scrollLeft;scrollY=document.documentElement.scrollTop;}
elementInfo.Left=boundingRect.left+scrollX;elementInfo.Top=boundingRect.top+scrollY;elementInfo.Right=boundingRect.right+scrollX;elementInfo.Bottom=boundingRect.bottom+scrollY;if(this.IsIE()&&elementInfo.Left>=2&&!this.IsIE8()){elementInfo.Left-=2;elementInfo.Top-=2;elementInfo.Right-=2;elementInfo.Bottom-=2;}
elementInfo.Width=boundingRect.right-boundingRect.left;elementInfo.Height=boundingRect.bottom-boundingRect.top;}
return elementInfo;}
Telligent_Common.GetWindowInfo=function(){var scrollX=0,scrollY=0,width=0,height=0;if(typeof(window.pageXOffset)=='number'){scrollX=window.pageXOffset;scrollY=window.pageYOffset;}
else if(document.body&&(document.body.scrollLeft||document.body.scrollTop)){scrollX=document.body.scrollLeft;scrollY=document.body.scrollTop;}
else if(document.documentElement&&(document.documentElement.scrollLeft||document.documentElement.scrollTop)){scrollX=document.documentElement.scrollLeft;scrollY=document.documentElement.scrollTop;}
if(typeof(window.innerWidth)=='number'){width=window.innerWidth;height=window.innerHeight;}
else if(document.documentElement&&(document.documentElement.clientWidth||document.documentElement.clientHeight)){width=document.documentElement.clientWidth;height=document.documentElement.clientHeight;}
else if(document.body&&(document.body.clientWidth||document.body.clientHeight)){width=document.body.clientWidth;height=document.body.clientHeight;}
if(document.documentElement&&(document.documentElement.scrollHeight||document.documentElement.offsetHeight)){if(document.documentElement.scrollHeight>document.documentElement.offsetHeight){contentWidth=document.documentElement.scrollWidth;contentHeight=document.documentElement.scrollHeight;}
else{contentWidth=document.documentElement.offsetWidth;contentHeight=document.documentElement.offsetHeight;}}
else if(document.body&&(document.body.scrollHeight||document.body.offsetHeight)){if(document.body.scrollHeight>document.body.offsetHeight){contentWidth=document.body.scrollWidth;contentHeight=document.body.scrollHeight;}
else{contentWidth=document.body.offsetWidth;contentHeight=document.body.offsetHeight;}}
else{contentWidth=width;contentHeight=height;}
if(this.IsSafari()){if(height>contentHeight)
contentHeight=height;}
else{if(height>contentHeight)
height=contentHeight;}
if(this.IsSafari()){if(width>contentWidth)
contentWidth=width;}
else{if(width>contentWidth)
width=contentWidth;}
var rect=new Object();rect.ScrollX=scrollX;rect.ScrollY=scrollY;rect.Width=width;rect.Height=height;rect.ContentWidth=contentWidth;rect.ContentHeight=contentHeight;return rect;}
Telligent_Common.GetCurrentStyleValue=function(element,styleRule,jsStyleRule,defaultValue){var value='';try{if(document.defaultView&&document.defaultView.getComputedStyle)
value=document.defaultView.getComputedStyle(element,"").getPropertyValue(styleRule);else if(element.currentStyle)
value=element.currentStyle[jsStyleRule];}catch(e){}
if((value=='inherit'||value=='transparent')&&element.parentNode!=null)
return Telligent_Common.GetCurrentStyleValue(element.parentNode,styleRule,jsStyleRule,defaultValue);else if(value!=''&&value!=undefined&&value!='rgba(0,0,0,0)')
return value;else return defaultValue;}
Telligent_Common.GetStyleOffset=function(element){var result=new Object();result.Height=Telligent_Common.IsNanDefault(parseInt(Telligent_Common.GetCurrentStyleValue(element,'border-top-width','borderTopWidth','0')),0)+
Telligent_Common.IsNanDefault(parseInt(Telligent_Common.GetCurrentStyleValue(element,'border-bottom-width','borderBottomWidth','0')),0)+
Telligent_Common.IsNanDefault(parseInt(Telligent_Common.GetCurrentStyleValue(element,'padding-top','paddingTop','0')),0)+
Telligent_Common.IsNanDefault(parseInt(Telligent_Common.GetCurrentStyleValue(element,'padding-bottom','paddingBottom','0')),0);result.Width=Telligent_Common.IsNanDefault(parseInt(Telligent_Common.GetCurrentStyleValue(element,'border-left-width','borderLeftWidth','0')),0)+
Telligent_Common.IsNanDefault(parseInt(Telligent_Common.GetCurrentStyleValue(element,'border-right-width','borderRightWidth','0')),0)+
Telligent_Common.IsNanDefault(parseInt(Telligent_Common.GetCurrentStyleValue(element,'padding-left','paddingLeft','0')),0)+
Telligent_Common.IsNanDefault(parseInt(Telligent_Common.GetCurrentStyleValue(element,'padding-right','paddingRight','0')),0);return result;}
Telligent_Common.IsNanDefault=function(value,defaultValue){if(isNaN(value))
return defaultValue;else return value;}
Telligent_Common.EscapeForRegExp=function(value){return value.replace(/([\\\(\^\$\*\+\?\{\}\.\)\|\-])/g,'\\$1');}
Telligent_Common.GetSelectedHtmlInElement=function(element,includeAllContentIfNoSelection,includeAllContentIfInvalidSelection,invalidSelectionMessage){var selectionIsValid=true;var content=null;if(window.getSelection){var selection=window.getSelection();if(selection&&selection.rangeCount>0&&selection.toString().length>0){selectionIsValid=false;var selectedRange=selection.getRangeAt(0);var availableRange=document.createRange();availableRange.selectNode(element);if(availableRange.compareBoundaryPoints(Range.START_TO_START,selectedRange)<=0&&availableRange.compareBoundaryPoints(Range.END_TO_END,selectedRange)>=0){var temp=document.createElement('div');temp.appendChild(selectedRange.cloneContents());content=temp.innerHTML;}
else if(invalidSelectionMessage)
alert(invalidSelectionMessage);}}
else if(document.selection){var range=document.selection.createRange();if(range&&range.text){selectionIsValid=false;var parent=range.parentElement();if(parent!=null&&Telligent_Common.ElementContainsElement(element,parent))
content=range.htmlText;else if(invalidSelectionMessage)
alert(invalidSelectionMessage);}}
if(content==null&&((selectionIsValid&&includeAllContentIfNoSelection)||includeAllContentIfInvalidSelection))
content=element.innerHTML;return content;}
Telligent_Common.ElementContainsElement=function(parent,child){if(!parent||!child)
return false;if(parent==child)
return true;if(parent&&parent.childNodes){for(var i=0;i<parent.childNodes.length;i++){if(parent.childNodes[i]==child||Telligent_Common.ElementContainsElement(parent.childNodes[i],child))
return true;}}
return false;}
Telligent_Common.GetCurrentCursorIndex=function(inputElement){var index=0;if(inputElement.selectionStart||inputElement.selectionStart=='0')
index=inputElement.selectionStart;else if(document.selection){var originalValue=inputElement.value;var range=document.selection.createRange();var escapeChar=String.fromCharCode(1);range.text=escapeChar;index=inputElement.value.indexOf(escapeChar);inputElement.value=originalValue;}
return index;}
Telligent_Common._delayedSetCurrentCursorSelection=function(stateId){var state=Telligent_Common.GetStateByStateId(stateId,'Telligent_Common_SetCurrentCursorSelection');if(state){Telligent_Common.SetCurrentCursorSelection(state.InputElement,state.StartIndex,state.EndIndex,false,state.PersistedValue);Telligent_Common.ClearStateByStateId(stateId,'Telligent_Common_SetCurrentCursorSelection');}}
Telligent_Common.IsSafari=function(){return navigator.userAgent.indexOf('Safari')!=-1;}
Telligent_Common.IsOpera=function(){return window.opera!=null;}
Telligent_Common.IsIE=function(){return(navigator&&navigator.userAgent&&navigator.userAgent.indexOf('MSIE')!=-1)}
Telligent_Common.IsIE8=function(){if(this.IsIE())
return parseInt(/MSIE ([0-9]*)\./.exec(navigator.userAgent)[1],9)>=8;return false;}
Telligent_Common.CreateSafeFunction=function(instance,func){return function(){return func.apply(instance,arguments);}}
Telligent_Common.DisposeContent=function(parentElement){if(parentElement&&parentElement.childNodes&&parentElement.childNodes.length>0){for(var i=0;i<parentElement.childNodes.length;i++){if(parentElement.childNodes[i].dispose){try{parentElement.childNodes[i].dispose();}
catch(e){}}
Telligent_Common.DisposeContent(parentElement.childNodes[i]);}}}
Telligent_Common.SetCurrentCursorSelection=function(inputElement,startIndex,endIndex,functionKeyWasHandled,persistedValue){if(Telligent_Common.IsSafari()||Telligent_Common.IsOpera()){if(functionKeyWasHandled){var state=Telligent_Common.GetStateByKey(inputElement,'Telligent_Common_SetCurrentCursorSelection');if(state&&state.CursorTimeout)
window.clearTimeout(state.CursorTimeout);state=new Object();state.InputElement=inputElement;state.StartIndex=startIndex;state.EndIndex=endIndex;state.PersistedValue=persistedValue;var stateId=Telligent_Common.SaveStateByKey(inputElement,'Telligent_Common_SetCurrentCursorSelection',state);state.CursorTimeout=window.setTimeout(new Function('Telligent_Common._delayedSetCurrentCursorSelection('+stateId+');'),9);Telligent_Common.SaveStateByKey(inputElement,'Telligent_Common_SetCurrentCursorSelection',state);return;}
else{inputElement.focus();if(persistedValue)
inputElement.value=persistedValue;}}
try{if(document.selection){var range=inputElement.createTextRange();range.move('character',startIndex);range.moveEnd('character',endIndex-startIndex);range.select();}
else if(inputElement.setSelectionRange){inputElement.setSelectionRange(startIndex,endIndex);inputElement.focus();}
else if(inputElement.selectionStart||inputElement.selectionStart=='0'){inputElement.selectionStart=startIndex;inputElement.selectionEnd=endIndex;}}catch(e){}}
Telligent_Common.GetStateByStateId=function(stateId,processId){if(Telligent_Common._state.length>stateId&&stateId>=0&&Telligent_Common._state[stateId]&&Telligent_Common._state[stateId]._stateProcessId==processId)
return Telligent_Common._state[stateId]._state;else return null;}
Telligent_Common.GetStateByKey=function(key,processId){for(var i=0;i<Telligent_Common._state.length;i++){if(Telligent_Common._state[i]&&Telligent_Common._state[i]._stateKey==key&&Telligent_Common._state[i]._stateProcessId==processId)
return Telligent_Common._state[i]._state;}
return null;}
Telligent_Common.SaveStateByStateId=function(stateId,processId,state){if(Telligent_Common._state.length>stateId&&stateId>=0&&Telligent_Common._state[stateId]&&Telligent_Common._state[stateId]._stateProcessId==processId)
Telligent_Common._state[stateId]._state=state;}
Telligent_Common.SaveStateByKey=function(key,processId,state){var emptyIndex=-1;for(var i=0;i<Telligent_Common._state.length;i++){if(!Telligent_Common._state[i])
emptyIndex=i;else if(Telligent_Common._state[i]._stateKey==key&&Telligent_Common._state[i]._stateProcessId==processId){Telligent_Common._state[i]._state=state;return i;}}
var stateBucket=new Object();stateBucket._stateKey=key;stateBucket._stateProcessId=processId;stateBucket._state=state;if(emptyIndex!=-1){Telligent_Common._state[emptyIndex]=stateBucket;return emptyIndex;}
else{Telligent_Common._state[Telligent_Common._state.length]=stateBucket;return Telligent_Common._state.length-1;}}
Telligent_Common.ClearStateByStateId=function(stateId,processId){if(Telligent_Common._state.length>stateId&&stateId>=0&&Telligent_Common._state[stateId]&&Telligent_Common._state[stateId]._stateProcessId==processId)
Telligent_Common._state[stateId]=null;}
Telligent_Common._hiddenSelects=new Array();Telligent_Common._elementsHidingSelects=new Array();Telligent_Common._addHiddenSelect=function(elementHidingSelect,selectElement){var hiddenSelect=null;var emptyIndex=-1;for(var i=0;i<Telligent_Common._hiddenSelects.length&&hiddenSelect==null;i++){if(Telligent_Common._hiddenSelects[i]){if(Telligent_Common._hiddenSelects[i].SelectElement==selectElement)
hiddenSelect=Telligent_Common._hiddenSelects[i];}
else emptyIndex=i;}
if(hiddenSelect==null){hiddenSelect=new Object();hiddenSelect.SelectElement=selectElement;hiddenSelect.ElementsHidingSelectsIndeces=new Array();hiddenSelect.OriginalVisibility=selectElement.style.visibility;hiddenSelect.SelectElement.style.visibility='hidden';if(emptyIndex==-1){Telligent_Common._hiddenSelects[Telligent_Common._hiddenSelects.length]=hiddenSelect;hiddenSelect.Index=Telligent_Common._hiddenSelects.length-1;}
else{Telligent_Common._hiddenSelects[emptyIndex]=hiddenSelect;hiddenSelect.Index=emptyIndex;}}
var ignore=false;for(var i=0;i<hiddenSelect.ElementsHidingSelectsIndeces.length&&!ignore;i++){if(hiddenSelect.ElementsHidingSelectsIndeces[i]==elementHidingSelect.Index)
ignore=true;}
if(!ignore){elementHidingSelect.HiddenSelectsIndeces[elementHidingSelect.HiddenSelectsIndeces.length]=hiddenSelect.Index;hiddenSelect.ElementsHidingSelectsIndeces[hiddenSelect.ElementsHidingSelectsIndeces.length]=elementHidingSelect.Index;}}
Telligent_Common._addElementHidingSelect=function(element){var elementHidingSelect=null;var emptyIndex=-1;for(var i=0;i<Telligent_Common._elementsHidingSelects.length&&elementHidingSelect==null;i++){if(Telligent_Common._elementsHidingSelects[i]){if(Telligent_Common._elementsHidingSelects[i].Element==element)
elementHidingSelect=Telligent_Common._elementsHidingSelects[i];}
else emptyIndex=i;}
if(elementHidingSelect==null){elementHidingSelect=new Object();elementHidingSelect.Element=element;elementHidingSelect.HiddenSelectsIndeces=new Array();if(emptyIndex==-1){Telligent_Common._elementsHidingSelects[Telligent_Common._elementsHidingSelects.length]=elementHidingSelect;elementHidingSelect.Index=Telligent_Common._elementsHidingSelects.length-1;}
else{Telligent_Common._elementsHidingSelects[emptyIndex]=elementHidingSelect;elementHidingSelect.Index=emptyIndex;}}
return elementHidingSelect;}
Telligent_Common.HideElementsInWindow=function(element,w,hideAll){var elementHidingSelect=null;var elementRect=this.GetElementInfo(element);var subWindows=w.document.getElementsByTagName('iframe');for(var i=0;i<subWindows.length;i++){if(!Telligent_Common.ElementContainsElement(element,subWindows[i])){try{Telligent_Common.HideElementsInWindow(element,subWindows[i].contentWindow,hideAll);}
catch(e){var objectInfo=this.GetElementInfo(subWindows[i]);if(hideAll||(objectInfo.Top<elementRect.Bottom&&elementRect.Top<objectInfo.Bottom&&objectInfo.Left<elementRect.Right&&elementRect.Left<objectInfo.Right)){if(elementHidingSelect==null)
elementHidingSelect=Telligent_Common._addElementHidingSelect(element);Telligent_Common._addHiddenSelect(elementHidingSelect,subWindows[i]);subWindows[i].style.visibility='hidden';}}}}
var tagsToHide=['object','embed','applet'];if(this.IsIE())
tagsToHide[tagsToHide.length]='select';for(var i=0;i<tagsToHide.length;i++){var objects=document.getElementsByTagName(tagsToHide[i]);for(var j=0;j<objects.length;j++){var objectInfo=this.GetElementInfo(objects[j]);if(hideAll||(objectInfo.Top<elementRect.Bottom&&elementRect.Top<objectInfo.Bottom&&objectInfo.Left<elementRect.Right&&elementRect.Left<objectInfo.Right)){if(elementHidingSelect==null)
elementHidingSelect=Telligent_Common._addElementHidingSelect(element);Telligent_Common._addHiddenSelect(elementHidingSelect,objects[j]);objects[j].style.visibility='hidden';}}}}
Telligent_Common.HideSelectBoxes=function(element,hideAll){Telligent_Common.HideElementsInWindow(element,window.window,hideAll);}
Telligent_Common.ShowSelectBoxes=function(element){var elementHidingSelect=null;for(var i=0;i<Telligent_Common._elementsHidingSelects.length&&elementHidingSelect==null;i++){if(Telligent_Common._elementsHidingSelects[i]){if(Telligent_Common._elementsHidingSelects[i].Element==element)
elementHidingSelect=Telligent_Common._elementsHidingSelects[i];}}
if(elementHidingSelect==null)
return;var hiddenSelect;for(var i=0;i<elementHidingSelect.HiddenSelectsIndeces.length;i++){hiddenSelect=Telligent_Common._hiddenSelects[elementHidingSelect.HiddenSelectsIndeces[i]];if(hiddenSelect){if(hiddenSelect.ElementsHidingSelectsIndeces.length==1){try{if(hiddenSelect.SelectElement.style.visibility=='hidden')
hiddenSelect.SelectElement.style.visibility=hiddenSelect.OriginalVisibility;}
catch(e){}
Telligent_Common._hiddenSelects[hiddenSelect.Index]=null;}
else{var elementsHidingSelects=new Array();for(var j=0;j<hiddenSelect.ElementsHidingSelectsIndeces.length;j++){if(hiddenSelect.ElementsHidingSelectsIndeces[j]!=elementHidingSelect.Index)
elementsHidingSelects[elementsHidingSelects.length]=hiddenSelect.ElementsHidingSelectsIndeces[i];}
hiddenSelect.ElementsHidingSelectsIndeces=elementsHidingSelects;}}}
Telligent_Common._elementsHidingSelects[elementHidingSelect.Index]=null;}
Telligent_Common._disposableControls=new Array();Telligent_Common.RegisterDisposableControl=function(controlName){if(controlName)
Telligent_Common._disposableControls[Telligent_Common._disposableControls.length]=controlName;}
Telligent_Common._windowOnUnload=function(){for(var i=0;i<Telligent_Common._disposableControls.length;i++){try{eval(Telligent_Common._disposableControls[i]).Dispose();}
catch(e){}}
Telligent_Common._disposableControls=new Array();if(this._originalWindowOnUnload)
this._originalWindowOnUnload();}
this._originalWindowOnUnload=null;if(window.onunload)
this._originalWindowOnUnload=window.onunload;window.onunload=new Function('Telligent_Common._windowOnUnload();');if(typeof(Sys)!=='undefined')Sys.Application.notifyScriptLoaded();Telligent_Modal=new Object();Telligent_Modal._variableName='Telligent_Modal';Telligent_Modal.LoadingHtmlUrl=null;Telligent_Modal.WindowCssClasses=new Array();Telligent_Modal.WindowTitleCssClasses=new Array();Telligent_Modal.WindowCloseCssClasses=new Array();Telligent_Modal.WindowContentCssClasses=new Array();Telligent_Modal.WindowMaskCssClasses=new Array();Telligent_Modal.WindowFooterCssClasses=new Array();Telligent_Modal.WindowResizeCssClasses=new Array();Telligent_Modal.ZIndex=100;Telligent_Modal._modals=new Array();Telligent_Modal.EnableAutoResizing=true;Telligent_Modal.OpenInParentModal=true;Telligent_Modal.Configure=function(loadingHtmlUrl,windowCssClasses,windowTitleCssClasses,windowCloseCssClasses,windowContentCssClasses,windowFooterCssClasses,windowResizeCssClasses,windowMaskCssClasses,zIndex,enableAnimation,enableAutoResizing,openInParentModal){this.LoadingHtmlUrl=loadingHtmlUrl;this.WindowCssClasses=windowCssClasses;this.WindowTitleCssClasses=windowTitleCssClasses;this.WindowCloseCssClasses=windowCloseCssClasses;this.WindowContentCssClasses=windowContentCssClasses;this.WindowMaskCssClasses=windowMaskCssClasses;this.WindowFooterCssClasses=windowFooterCssClasses;this.WindowResizeCssClasses=windowResizeCssClasses;this.ZIndex=zIndex;this.EnableAnimation=enableAnimation;this.EnableAutoResizing=enableAutoResizing;this.OpenInParentModal=openInParentModal;}
Telligent_Modal._getParentWindow=function(openerWindow){if(this.OpenInParentModal){try{if(window.parent&&window.parent!=window&&window.parent.Telligent_Modal)
return window.parent;}
catch(e){}}
return null;}
Telligent_Modal.GetWindowOpener=function(modalWindow,openerWindow){if(!openerWindow)
openerWindow=window;var w=this._getParentWindow(openerWindow);if(w)
return w.Telligent_Modal.GetWindowOpener(modalWindow,openerWindow);for(var i=0;i<this._modals.length;i++){try{if(this._modals[i].IsShown()&&this._modals[i]._modalIframe.contentWindow==modalWindow)
return this._modals[i]._openerWindow;}
catch(e){}}
return null;}
Telligent_Modal._getModalWindow=function(openerWindow){for(var i=0;i<this._modals.length;i++){if(this._modals[i].IsShown()&&this._modals[i]._openerWindow==openerWindow)
return this._modals[i];}
return null;}
Telligent_Modal.IsShown=function(openerWindow){if(!openerWindow)
openerWindow=window;var w=this._getParentWindow(openerWindow);if(w)
return w.Telligent_Modal.IsShown(openerWindow);var mw=this._getModalWindow(openerWindow);if(mw)
return mw.IsShown();else return false;}
Telligent_Modal.Resize=function(width,height,preventAutomaticResizing,openerWindow){if(!openerWindow)
openerWindow=window;var w=this._getParentWindow(openerWindow);if(w){w.Telligent_Modal.Resize(width,height,preventAutomaticResizing,openerWindow);return;}
var mw=this._getModalWindow(openerWindow);if(mw)
mw.Resize(width,height,preventAutomaticResizing);}
Telligent_Modal.MoveTo=function(x,y,openerWindow){if(!openerWindow)
openerWindow=window;var w=this._getParentWindow(openerWindow);if(w){w.Telligent_Modal.MoveTo(x,y,openerWindow);return;}
var mw=this._getModalWindow(openerWindow);if(mw)
mw.MoveTo(x,y);}
Telligent_Modal.Open=function(url,width,height,onCloseFunction,x,y,ignoreCloseAndAnimation,isManuallyResized,openerWindow){if(!openerWindow)
openerWindow=window;var w=this._getParentWindow(openerWindow);if(w){w.Telligent_Modal.Open(url,width,height,onCloseFunction,x,y,ignoreCloseAndAnimation,isManuallyResized,openerWindow);return;}
var mw=null;for(var i=this._modals.length-1;i>=0;i--){if(!this._modals[i].IsShown()){mw=this._modals[i];break;}}
if(!mw){this._modals[this._modals.length]=new Telligent_Modal_Window(this._variableName+'._modals['+this._modals.length+']');mw=this._modals[this._modals.length-1];}
mw.Open(url,width,height,onCloseFunction,x,y,ignoreCloseAndAnimation,isManuallyResized,openerWindow);}
Telligent_Modal.Close=function(returnValue,openerWindow){if(!openerWindow)
openerWindow=window;var w=this._getParentWindow(openerWindow);if(w){w.Telligent_Modal.Close(returnValue,openerWindow);return;}
var mw=this._getModalWindow(openerWindow);if(mw)
mw.Close(returnValue);}
Telligent_Modal.Refresh=function(openerWindow){if(!openerWindow)
openerWindow=window;var w=this._getParentWindow(openerWindow);if(w){w.Telligent_Modal.Refresh(openerWindow);return;}
for(var i=0;i<this._modals.length;i++){this._modals[i].Refresh();}}
function Telligent_Modal_Window(variableName){this._variableName=variableName;this._isShown=false;this._initialized=false;this._modal=null;this._modalTitle=null;this._modalClose=null;this._modalAnimationMask=null;this._modalMask=null;this._modalIframe=null;this._modalResize=null;this._modalFooter=null;this._modalContent=null;this._animationHandle=null;this._isOpening=false;this._checkForScrollResizeHandle=null;this._lastModalInfo=null;this._lastWindowInfo=null;this._isDragging=false;this._moveModalInfo=null;this._resizeModalInfo=null;this._isResizing=false;}
Telligent_Modal_Window.prototype._animate=function(targetValue,nextValue,step,acceleration){if(this._animationHandle)
window.clearTimeout(this._animationHandle);if(!this._isOpening)
return;var currValue=parseInt(this._modal.style.top,10);if((step<0&&currValue<targetValue)||(step>0&&currValue>targetValue)||Math.abs(step)<1){this._modal.style.top=targetValue+'px';this._modal.style.position='static';this._modalAnimationMask.style.overflow='visible';this._animationHandle=null;if(!this._isResizing&&!this._isDragging)
this._modalIframe.style.display='block';this._isOpening=false;this._lastWindowInfo=Telligent_Common.GetWindowInfo();this._checkForScrollResizeHandle=window.setTimeout(new Function('window.'+this._variableName+'._checkForScrollResize();'),249);}
else{this._modal.style.top=nextValue+'px';nextValue=nextValue+step;if(step>0&&nextValue>targetValue)
nextValue=targetValue;else if(step<0&&nextValue<targetValue)
nextValue=targetValue;step=step*acceleration;this._animationHandle=window.setTimeout(new Function(this._variableName+'._animate('+targetValue+','+nextValue+','+step+','+acceleration+');'),19);}}
Telligent_Modal_Window.prototype._startDrag=function(event){if(!this._initialized)
this._initialize();if(!event)
event=window.event;this._moveModalInfo=new Object();this._moveModalInfo.StartMouseX=event.pageX?event.pageX:event.screenX;this._moveModalInfo.StartMouseY=event.pageY?event.pageY:event.screenY;this._moveModalInfo.StartModalX=this._lastModalInfo.X;this._moveModalInfo.StartModalY=this._lastModalInfo.Y;this._moveModalInfo.Button=event.button;document.onmouseup=new Function('event','window.'+this._variableName+'._endDrag(event);return false;');document.onmousemove=new Function('event','window.'+this._variableName+'._drag(event);return false;');this._isDragging=true;this._modalIframe.style.display='none';}
Telligent_Modal_Window.prototype._endDrag=function(event){if(!this._initialized)
this._initialize();document.onmouseup=null;document.onmousemove=null;this._modalIframe.style.display='block';this._isDragging=false;this._moveModalInfo=null;}
Telligent_Modal_Window.prototype._drag=function(event){if(!this._initialized)
this._initialize();if(!event)
event=window.event;if(event.button!=this._moveModalInfo.Button){this._endDrag(event);return;}
var eventX=typeof(event.pageX)!='undefined'?event.pageX:event.screenX;var eventY=typeof(event.pageY)!='undefined'?event.pageY:event.screenY;var xChange=eventX-this._moveModalInfo.StartMouseX;var yChange=eventY-this._moveModalInfo.StartMouseY;this.MoveTo(this._moveModalInfo.StartModalX+xChange,this._moveModalInfo.StartModalY+yChange);}
Telligent_Modal_Window.prototype._startResize=function(event){if(!this._initialized)
this._initialize();if(!event)
event=window.event;this._resizeModalInfo=new Object();this._resizeModalInfo.StartMouseX=event.pageX?event.pageX:event.screenX;this._resizeModalInfo.StartMouseY=event.pageY?event.pageY:event.screenY;this._resizeModalInfo.StartModalWidth=this._lastModalInfo.Width;this._resizeModalInfo.StartModalHeight=this._lastModalInfo.Height;this._resizeModalInfo.Button=event.button;document.onmouseup=new Function('event','window.'+this._variableName+'._endResize(event);return false;');document.onmousemove=new Function('event','window.'+this._variableName+'._resize(event);return false;');this._modalIframe.style.display='none';this._isResizing=true;}
Telligent_Modal_Window.prototype._endResize=function(event){if(!this._initialized)
this._initialize();this._isResizing=false;this._resizeModalInfo=null;document.onmouseup=null;document.onmousemove=null;this._modalIframe.style.display='block';}
Telligent_Modal_Window.prototype._resize=function(event){if(!this._initialized)
this._initialize();if(!event)
event=window.event;if(event.button!=this._resizeModalInfo.Button){this._endResize(event);return;}
var eventX=typeof(event.pageX)!='undefined'?event.pageX:event.screenX;var eventY=typeof(event.pageY)!='undefined'?event.pageY:event.screenY;var xChange=eventX-this._resizeModalInfo.StartMouseX;var yChange=eventY-this._resizeModalInfo.StartMouseY;this.Resize(this._resizeModalInfo.StartModalWidth+xChange,this._resizeModalInfo.StartModalHeight+yChange,true);}
Telligent_Modal_Window.prototype._checkForScrollResize=function(){if(this._checkForScrollResizeHandle)
window.clearTimeout(this._checkForScrollResizeHandle);if(this._isShown&&!this._isOpening&&this._lastWindowInfo){try{if(document.all)
this._modalTitle.childNodes[1].innerText=this._modalIframe.contentWindow.document.title;else this._modalTitle.childNodes[1].textContent=this._modalIframe.contentWindow.document.title;}
catch(err){}
var windowInfo=Telligent_Common.GetWindowInfo();if(windowInfo.ScrollX!=this._lastWindowInfo.ScrollX||windowInfo.ScrollY!=this._lastWindowInfo.ScrollY||windowInfo.Width!=this._lastWindowInfo.Width||windowInfo.Height!=this._lastWindowInfo.Height){this.Resize(this._lastModalInfo.Width,this._lastModalInfo.Height,false);return;}
if(Telligent_Modal.EnableAutoResizing&&!this._isDragging&&!this._isResizing){try{var iFrameDocument=this._modalIframe.contentWindow.document;if(!iFrameDocument.readyState||iFrameDocument.readyState=='complete'){var currentHeight=this._lastModalInfo.Height;var currentWidth=this._lastModalInfo.Width;currentWidth=iFrameDocument.documentElement.scrollWidth;if(Telligent_Common.IsIE())
currentHeight=iFrameDocument.body.scrollHeight+32;else if(Telligent_Common.IsSafari())
currentHeight=iFrameDocument.body.offsetHeight+32;else{currentHeight=iFrameDocument.documentElement.offsetHeight;currentWidth=iFrameDocument.documentElement.scrollWidth;}
window.status=currentWidth;var modalContentOffset=Telligent_Common.GetStyleOffset(this._modalContent);var heightOffset=(this._modal.offsetHeight-this._modalContent.offsetHeight)-modalContentOffset.Height;var widthOffset=(this._modal.offsetWidth-this._modalContent.offsetWidth)-modalContentOffset.Width;if(currentHeight>windowInfo.Height-heightOffset)
currentHeight=windowInfo.Height-heightOffset;if(currentWidth>windowInfo.Width-widthOffset)
currentWidth=windowInfo.Width-widthOffset;var changeHeight=(currentHeight!=this._lastModalInfo.Height&&(currentHeight>this._lastModalInfo.Height||(this._lastModalInfo.Height-currentHeight>64&&currentHeight>32))&&(!this._lastModalInfo.IsManuallyResized||currentHeight>this._lastModalInfo.Height));var changeWidth=(currentWidth!=this._lastModalInfo.Width&&(currentWidth>this._lastModalInfo.Width||(this._lastModalInfo.Width-currentWidth>64&&currentWidth>32))&&(!this._lastModalInfo.IsManuallyResized||currentWidth>this._lastModalInfo.Width));if(changeHeight||changeWidth){this.Resize(changeWidth?currentWidth:this._lastModalInfo.Width,changeHeight?currentHeight:this._lastModalInfo.Height,false);return;}}}
catch(e){}}
this._checkForScrollResizeHandle=window.setTimeout(new Function('window.'+this._variableName+'._checkForScrollResize();'),249);}}
Telligent_Modal_Window.prototype._initialize=function(){this._modalMask=document.createElement('div');this._modalMask.style.width='auto';this._modalMask.style.height='auto';this._modalMask.style.position='absolute';this._modalMask.style.display='none';this._modalMask.dispose=new Function('Telligent_Modal.Dispose();');var mm=this._modalMask;if(Telligent_Modal.WindowMaskCssClasses.length>0){mm.className=Telligent_Modal.WindowMaskCssClasses[0];for(var i=1;i<Telligent_Modal.WindowMaskCssClasses.length;i++){mm.appendChild(document.createElement('div'));mm=mm.childNodes[0];mm.className=Telligent_Modal.WindowMaskCssClasses[i];mm.style.width='auto';mm.style.height='auto';}}
document.body.appendChild(this._modalMask);this._modalAnimationMask=document.createElement('div');this._modalAnimationMask.style.position='absolute';this._modalAnimationMask.style.display='none';this._modalAnimationMask.style.overflow='hidden';this._modal=document.createElement('div');this._modal.style.width='auto';this._modal.style.height='auto';this._modal.style.position='absolute';this._modal.style.display='none';var m=this._modal;if(Telligent_Modal.WindowCssClasses.length>0){m.className=Telligent_Modal.WindowCssClasses[0];for(var i=1;i<Telligent_Modal.WindowCssClasses.length;i++){m.appendChild(document.createElement('div'));m=m.childNodes[0];m.className=Telligent_Modal.WindowCssClasses[i];m.style.width='auto';m.style.height='auto';}}
this._modalTitle=document.createElement('div');m.appendChild(this._modalTitle);if(Telligent_Modal.WindowTitleCssClasses.length>0){this._modalTitle.className=Telligent_Modal.WindowTitleCssClasses[0];for(var i=1;i<Telligent_Modal.WindowTitleCssClasses.length;i++){this._modalTitle.appendChild(document.createElement('div'));this._modalTitle=this._modalTitle.childNodes[0];this._modalTitle.className=Telligent_Modal.WindowTitleCssClasses[i];}}
this._modalTitle.onmousedown=new Function('event','window.'+this._variableName+'._startDrag(event);return false;');this._modalClose=document.createElement('div');this._modalTitle.appendChild(this._modalClose);var mc=this._modalClose;if(Telligent_Modal.WindowCloseCssClasses.length>0){mc.className=Telligent_Modal.WindowCloseCssClasses[0];for(var i=1;i<Telligent_Modal.WindowCloseCssClasses.length;i++){mc.appendChild(document.createElement('div'));mc=mc.childNodes[0];mc.className=Telligent_Modal.WindowCloseCssClasses[i];}}
this._modalClose.onclick=new Function('window.'+this._variableName+'.Close();return false;');this._modalTitle.appendChild(document.createElement('span'));var e=document.createElement('div');e.style.clear='both';this._modalTitle.appendChild(e);this._modalContent=document.createElement('div');m.appendChild(this._modalContent);if(Telligent_Modal.WindowContentCssClasses.length>0){this._modalContent.className=Telligent_Modal.WindowContentCssClasses[0];for(var i=1;i<Telligent_Modal.WindowContentCssClasses.length;i++){this._modalContent.appendChild(document.createElement('div'));this._modalContent=this._modalContent.childNodes[0];this._modalContent.className=Telligent_Modal.WindowContentCssClasses[i];}}
this._modalIframe=document.createElement('iframe');this._modalIframe.src=Telligent_Modal.LoadingHtmlUrl;this._modalIframe.width='100%';this._modalIframe.border='0';this._modalIframe.frameBorder='0';this._modalIframe.style.borderLeftWidth='0px';this._modalIframe.style.borderRightWidth='0px';this._modalIframe.style.borderTopWidth='0px';this._modalIframe.style.borderBottomWidth='0px';this._modalContent.appendChild(this._modalIframe);this._modalFooter=document.createElement('div');m.appendChild(this._modalFooter);var mf=this._modalFooter;if(Telligent_Modal.WindowFooterCssClasses.length>0){mf.className=Telligent_Modal.WindowFooterCssClasses[0];for(var i=1;i<Telligent_Modal.WindowFooterCssClasses.length;i++){mf.appendChild(document.createElement('div'));mf=mf.childNodes[0];mf.className=Telligent_Modal.WindowFooterCssClasses[i];}}
this._modalResize=document.createElement('div');mf.appendChild(this._modalResize);var e=document.createElement('div');e.style.clear='both';mf.appendChild(e);var mr=this._modalResize;if(Telligent_Modal.WindowResizeCssClasses.length>0){mr.className=Telligent_Modal.WindowResizeCssClasses[0];for(var i=1;i<Telligent_Modal.WindowResizeCssClasses.length;i++){mr.appendChild(document.createElement('div'));mr=mr.childNodes[0];mr.className=Telligent_Modal.WindowResizeCssClasses[i];}}
this._modalResize.onmousedown=new Function('event','window.'+this._variableName+'._startResize(event);return false;');this._modalAnimationMask.appendChild(this._modal);document.body.appendChild(this._modalAnimationMask);this._initialized=true;}
Telligent_Modal_Window.prototype.IsShown=function(){return this._isShown;}
Telligent_Modal_Window.prototype.Resize=function(width,height,preventAutomaticResizing){if(this._isShown&&!this._isOpening&&this._lastModalInfo)
this.Open(null,width,height,this._lastModalInfo.OnCloseFunction,this._lastModalInfo.X,this._lastModalInfo.Y,true,preventAutomaticResizing?true:this._lastModalInfo.IsManuallyResized);}
Telligent_Modal_Window.prototype.MoveTo=function(x,y){if(this._isShown&&!this._isOpening&&this._lastModalInfo)
this.Open(null,this._lastModalInfo.Width,this._lastModalInfo.Height,this._lastModalInfo.OnCloseFunction,x,y,true,this._lastModalInfo.IsManuallyResized);}
Telligent_Modal_Window.prototype.Open=function(url,width,height,onCloseFunction,x,y,ignoreCloseAndAnimation,isManuallyResized,openerWindow){if(openerWindow)
this._openerWindow=openerWindow;if(!ignoreCloseAndAnimation&&this._isShown)
this.Close();else Telligent_Common.ShowSelectBoxes(this._modalAnimationMask)
if(!this._initialized)
this._initialize();try{if(document.all)
this._modalTitle.childNodes[1].innerText=this._modalIframe.contentWindow.document.title;else this._modalTitle.childNodes[1].textContent=this._modalIframe.contentWindow.document.title;}
catch(err){}
if(!ignoreCloseAndAnimation)
this._modalIframe.src=url;try{this._modalIframe.contentWindow.opener=window;}
catch(err){}
this._modalAnimationMask.style.display='none';this._modalMask.style.display='none';this._lastWindowInfo=Telligent_Common.GetWindowInfo();this._modalAnimationMask.style.display='block';this._modalAnimationMask.style.position='absolute';this._modalAnimationMask.style.zIndex=Telligent_Modal.ZIndex;this._modalAnimationMask.style.display='block';this._modalAnimationMask.style.visibility='hidden';this._modalAnimationMask.style.overflow='hidden';this._modal.style.position='absolute';this._modal.style.display='block';this._modal.style.visibility='hidden';this._modal.style.left='0px';this._modal.style.top='0px';this._modalMask.style.position='absolute';this._modalMask.style.display='block';this._modalMask.style.zIndex=Telligent_Modal.ZIndex;this._modalMask.style.visibility='visible';var modalContentOffset=Telligent_Common.GetStyleOffset(this._modalContent);var widthOffset=(this._modal.offsetWidth-this._modalContent.offsetWidth)-modalContentOffset.Width;var heightOffset=(this._modal.offsetHeight-this._modalContent.offsetHeight)-modalContentOffset.Height;if(width+widthOffset>this._lastWindowInfo.Width)
width=this._lastWindowInfo.Width-widthOffset;this._modalAnimationMask.style.width=width+'px';this._modalContent.style.width=width+'px';if(height+heightOffset>this._lastWindowInfo.Height)
height=this._lastWindowInfo.Height-heightOffset;if(width<this._modalResize.offsetWidth*2)
width=this._modalResize.offsetWidth*2;if(width<this._modalClose.offsetWidth*2)
width=this._modalClose.offsetWidth*2;if(height<this._modalTitle.offsetHeight+this._modalFooter.offsetHeight)
height=this._modalTitle.offsetHeight+this._modalFooter.offsetHeight-heightOffset;this._modalIframe.style.height=height+'px';this._modalIframe.style.width=width+'px';this._modalContent.style.height=height+'px';this._modalContent.style.width=width+'px';this._modalAnimationMask.style.width=this._modal.offsetWidth+'px';this._modalAnimationMask.style.height=this._modal.offsetHeight+'px';this._modalMask.style.left='0px';this._modalMask.style.top='0px';this._modalMask.style.width=this._lastWindowInfo.ContentWidth+'px';this._modalMask.style.height=this._lastWindowInfo.ContentHeight+'px';this._lastWindowInfo=Telligent_Common.GetWindowInfo();var panelWidth=this._modal.offsetWidth;var panelHeight=this._modal.offsetHeight;var animatePropertyName,animateTargetValue,animateNextValue;if(typeof(x)=='undefined'||isNaN(parseInt(x,10)))
x=((this._lastWindowInfo.Width-panelWidth)/2)+this._lastWindowInfo.ScrollX;if(x+panelWidth>this._lastWindowInfo.Width+this._lastWindowInfo.ScrollX)
x=this._lastWindowInfo.Width+this._lastWindowInfo.ScrollX-panelWidth;if(x<this._lastWindowInfo.ScrollX)
x=this._lastWindowInfo.ScrollX;if(typeof(y)=='undefined'||isNaN(parseInt(y,10)))
y=((this._lastWindowInfo.Height-panelHeight)/2)+this._lastWindowInfo.ScrollY;if(y+panelHeight>this._lastWindowInfo.Height+this._lastWindowInfo.ScrollY)
y=this._lastWindowInfo.Height+this._lastWindowInfo.ScrollY-panelHeight;if(y<this._lastWindowInfo.ScrollY)
y=this._lastWindowInfo.ScrollY;this._modalAnimationMask.style.left=x+'px';this._modalAnimationMask.style.top=y+'px';animateTargetValue=0;animateNextValue=-panelHeight;this._modal.style.visibility='visible';this._modalAnimationMask.style.visibility='visible';this._modalAnimationMask.style.overflow='hidden';Telligent_Common.HideSelectBoxes(this._modalAnimationMask,true);this._modalIframe.style.visibility='visible';this._isOpening=true;if(!this.EnableAnimation||ignoreCloseAndAnimation)
this._animationHandle=window.setTimeout(new Function(this._variableName+'._animate(0,0,0,0);'),9);else{this._modalIframe.style.display='none';this._animate(0,-panelHeight,panelHeight/3,.67);}
this._lastModalInfo={Url:this._modalIframe.src,OnCloseFunction:onCloseFunction,X:x,Y:y,Width:parseInt(width,10),Height:parseInt(height,10),IsManuallyResized:isManuallyResized};this._isShown=true;}
Telligent_Modal_Window.prototype.Close=function(returnValue){if(this._isShown){if(!this._initialized)
this._initialize();this._modal.style.position='absolute';this._modal.style.display='none';this._modalAnimationMask.style.position='absolute';this._modalAnimationMask.style.display='none';this._modalMask.style.position='absolute';this._modalMask.style.display='none';this._modalIframe.src=Telligent_Modal.LoadingHtmlUrl;var onCloseFunction=this._lastModalInfo.OnCloseFunction;this._isShown=false;this._lastModalInfo=null;this._windowInfo=null;Telligent_Common.ShowSelectBoxes(this._modalAnimationMask)
if(onCloseFunction)
onCloseFunction(returnValue);this.Dispose();}}
Telligent_Modal_Window.prototype.Refresh=function(){if(this._animationHandle)
window.clearTimeout(this._animationHandle);this.Dispose();if(this._isShown&&this._lastModalInfo)
this.Resize(this._lastModalInfo.Width,this._lastModalInfo.Height,false);}
Telligent_Modal_Window.prototype.Dispose=function(){if(this._initialized){if(this._animationHandle)
window.clearTimeout(this._animationHandle);this._isShown=false;this._isOpening=false;if(document&&document.body){document.body.removeChild(this._modalAnimationMask);document.body.removeChild(this._modalMask);this._modalClose.onclick=null;this._modalTitle.onmousedown=null;this._modalResize.onmousedown=null;this._modal=null;this._modalTitle=null;this._modalClose=null;this._modalAnimationMask=null;this._modalMask=null;this._modalIframe=null;this._modalResize=null;this._modalFooter=null;this._modalContent=null;}
this._initialized=false;}};if(typeof(Sys)!=='undefined')Sys.Application.notifyScriptLoaded();function Telligent_PopupPanel(varName,cssClass,position,zIndex,onPanelShowFunction,onPanelHideFunction,hideOnDocumentClick,initialContentId,onMouseOverFunction,onMouseOutFunction){this._variableName=varName;this.CssClass=cssClass;this.Position=position;this.OnPanelShowFunction=onPanelShowFunction;this.OnPanelHideFunction=onPanelHideFunction;this.OnMouseOverFunction=onMouseOverFunction;this.OnMouseOutFunction=onMouseOutFunction;this.ZIndex=zIndex;this._isShown=false;this._initialized=false;this._lastPosition=null;this._initialContentContainer=document.getElementById(initialContentId);this._panel=null;this._panelMask=null;this._animationHandle=null;this._originalDocumentOnClick=null;this._isOpening=false;this._checkForScrollResizeHandle=null;this._lastWindowInfo=null;this._hideOnDocumentClick=hideOnDocumentClick;this._panelMask=document.createElement('div');this._panelMask.style.position='absolute';this._panelMask.style.display='none';this._panel=document.createElement('div');this._panel.style.position='absolute';this._panel.style.display='none';this._panel.style.left='0px';this._panel.style.top='0px';this._panel.className=this.CssClass;this._panelMask.appendChild(this._panel);Telligent_Common.RegisterDisposableControl(this._variableName);}
Telligent_PopupPanel.prototype._onMouseOver=function(e){if(this.OnMouseOverFunction)
this.OnMouseOverFunction();}
Telligent_PopupPanel.prototype._onMouseOut=function(e){if(this.OnMouseOutFunction)
this.OnMouseOutFunction();}
Telligent_PopupPanel.prototype.IsShown=function(){return this._isShown;}
Telligent_PopupPanel.prototype._registerDocumentOnClick=function(){this._originalDocumentOnClick=document.onclick;document.onclick=new Function(this._variableName+'._documentOnClick();');}
Telligent_PopupPanel.prototype.ShowAtElement=function(element,ignoreHideAndAnimation){var elementInfo=Telligent_Common.GetElementInfo(element);this.Show(elementInfo.Left,elementInfo.Top,elementInfo.Width,elementInfo.Height,ignoreHideAndAnimation);}
Telligent_PopupPanel.prototype.Show=function(x,y,positionWidth,positionHeight,ignoreHideAndAnimation){if(!this._initialized)
this._initialize();if(!this._isShown&&this._hideOnDocumentClick)
window.setTimeout(new Function(this._variableName+'._registerDocumentOnClick();'),49);if(!ignoreHideAndAnimation&&this._isShown)
this.Hide();else if(this._hiddenSelects)
Telligent_Common.ShowSelectBoxes(this._panelMask);var originalX=x;var originalY=y;this._panelMask.style.position='absolute';this._panelMask.style.zIndex=this.ZIndex;this._panelMask.style.display='block';this._panelMask.style.visibility='hidden';this._panelMask.style.overflow='visible';this._panel.style.position='absolute';this._panel.style.display='block';this._panel.style.visibility='hidden';this._panel.className=this.CssClass;this._panel.style.left='0px';this._panel.style.top='0px';this._panelMask.style.width=this._panel.offsetWidth+'px';this._panelMask.style.height=this._panel.offsetHeight+'px';this._lastWindowInfo=Telligent_Common.GetWindowInfo();var panelWidth=this._panel.offsetWidth;var panelHeight=this._panel.offsetHeight;var animatePropertyName,animateTargetValue,animateNextValue;var iLeft=this.Position.indexOf('left');var iRight=this.Position.indexOf('right');var iUp=this.Position.indexOf('up');var iDown=this.Position.indexOf('down');if(iLeft==0||iRight==0){if(!(iLeft>-1&&iRight==-1)&&((iRight>-1&&iLeft==-1)||(this._lastWindowInfo.Width+this._lastWindowInfo.ScrollX)-(x+positionWidth)>x-this._lastWindowInfo.ScrollX||(x-this._lastWindowInfo.ScrollX)<panelWidth)){this._panelMask.style.left=(x+positionWidth)+"px";animatePropertyName='style.left';animateTargetValue=0;animateNextValue=-panelWidth;}
else{this._panelMask.style.left=(x-panelWidth)+"px";animatePropertyName='style.left';animateTargetValue=0;animateNextValue=panelWidth;}
if(!(iUp>-1&&iDown==-1)&&((iDown>-1&&iUp==-1)||(this._lastWindowInfo.Height+this._lastWindowInfo.ScrollY)-y>(y+positionHeight)-this._lastWindowInfo.ScrollY||(y+positionHeight)-this._lastWindowInfo.ScrollY<panelHeight)){this._panelMask.style.top=y+"px";}
else{this._panelMask.style.top=(y+positionHeight-panelHeight)+"px";}}
else{if(!(iLeft>-1&&iRight==-1)&&((iRight>-1&&iLeft==-1)||(this._lastWindowInfo.Width+this._lastWindowInfo.ScrollX)-x>(x+positionWidth)-this._lastWindowInfo.ScrollX||(x+positionWidth)-this._lastWindowInfo.ScrollX<panelWidth)){this._panelMask.style.left=x+"px";}
else{this._panelMask.style.left=(x+positionWidth-panelWidth)+"px";}
if(!(iUp>-1&&iDown==-1)&&((iDown>-1&&iUp==-1)||(this._lastWindowInfo.Height+this._lastWindowInfo.ScrollY)-(y+positionHeight)>(y-this._lastWindowInfo.ScrollY)||(y-this._lastWindowInfo.ScrollY)<panelHeight)){this._panelMask.style.top=(y+positionHeight)+"px";animatePropertyName='style.top';animateTargetValue=0;animateNextValue=-panelHeight;}
else{this._panelMask.style.top=(y-panelHeight)+"px";animatePropertyName='style.top';animateTargetValue=0;animateNextValue=panelHeight;}}
this._panel.style.visibility='visible';this._panelMask.style.visibility='visible';this._panelMask.style.overflow='hidden';Telligent_Common.HideSelectBoxes(this._panelMask);this._isOpening=true;if(ignoreHideAndAnimation)
this._animationHandle=window.setTimeout(new Function(this._variableName+'._animate(\''+animatePropertyName+'\','+animateTargetValue+','+animateTargetValue+',0,0);'),9);else this._animate(animatePropertyName,animateTargetValue,animateNextValue,animateNextValue>animateTargetValue?-((animateNextValue-animateTargetValue)/3):((animateTargetValue-animateNextValue)/3),.67);if(!this._isShown){this._isShown=true;this._lastPosition={X:originalX,Y:originalY,Width:positionWidth,Height:positionHeight};if(this.OnPanelShowFunction)
this.OnPanelShowFunction();}}
Telligent_PopupPanel.prototype._checkForScrollResize=function(){if(this._checkForScrollResizeHandle)
window.clearTimeout(this._checkForScrollResizeHandle);if(this._isShown&&!this._isOpening&&this._lastWindowInfo){var windowInfo=Telligent_Common.GetWindowInfo();if(windowInfo.Width!=this._lastWindowInfo.Width||windowInfo.Height!=this._lastWindowInfo.Height)
this.Hide();else this._checkForScrollResizeHandle=window.setTimeout(new Function('window.'+this._variableName+'._checkForScrollResize();'),999);}}
Telligent_PopupPanel.prototype.Hide=function(){if(this._isShown){if(!this._initialized)
this._initialize();this._panel.style.position='absolute';this._panel.style.display='none';this._panelMask.style.position='absolute';this._panelMask.style.display='none';this._isShown=false;this._lastPosition=null;Telligent_Common.ShowSelectBoxes(this._panelMask);if(this._hideOnDocumentClick){document.onclick=this._originalDocumentOnClick;this._originalDocumentOnClick=null;}
if(this.OnPanelHideFunction)
this.OnPanelHideFunction();}}
Telligent_PopupPanel.prototype.ClearPanelContent=function(){while(this._panel.childNodes.length>0)
this._panel.removeChild(this._panel.childNodes[0]);}
Telligent_PopupPanel.prototype.SetPanelContent=function(html){this.ClearPanelContent();this._panel.innerHTML=html;this.Refresh();}
Telligent_PopupPanel.prototype.AddNodeToPanel=function(node){this._panel.appendChild(node);this.Refresh();}
Telligent_PopupPanel.prototype.RemoveNodeFromPanel=function(node){this._panel.removeChild(node);this.Refresh();}
Telligent_PopupPanel.prototype.GetPanelNodes=function(){return this._panel.childNodes;}
Telligent_PopupPanel.prototype.Refresh=function(){if(this._animationHandle)
window.clearTimeout(this._animationHandle);if(this._isShown&&this._lastPosition)
this.Show(this._lastPosition.X,this._lastPosition.Y,this._lastPosition.Width,this._lastPosition.Height,true);}
Telligent_PopupPanel.prototype._initialize=function(){if(document.forms.length==1)
document.forms[0].appendChild(this._panelMask);else document.body.appendChild(this._panelMask);this._panel.onmouseover=new Function(this._variableName+'._onMouseOver();');this._panel.onmouseout=new Function(this._variableName+'._onMouseOut();');if(!this._panel.innerHTML&&this._initialContentContainer){while(this._initialContentContainer.childNodes.length>0)
this.AddNodeToPanel(this._initialContentContainer.childNodes[0]);}
this._initialized=true;}
Telligent_PopupPanel.prototype.Dispose=function(){if(this._initialized){this._panel.onmouseover=null;this._panel.onmouseout=null;if(document&&document.body)
document.body.removeChild(this._panelMask);this._panelMask=null;this._initialized=false;}}
Telligent_PopupPanel.prototype._animate=function(propertyName,targetValue,nextValue,step,acceleration){if(this._animationHandle)
window.clearTimeout(this._animationHandle);var currValue=parseInt(eval('this._panel.'+propertyName),10);if((step<0&&currValue<targetValue)||(step>0&&currValue>targetValue)||Math.abs(step)<1){eval('this._panel.'+propertyName+' = targetValue + \'px\'');this._panel.style.position='static';this._panelMask.style.overflow='visible';this._animationHandle=null;this._isOpening=false;this._lastWindowInfo=Telligent_Common.GetWindowInfo();this._checkForScrollResizeHandle=window.setTimeout(new Function('window.'+this._variableName+'._checkForScrollResize();'),999);}
else{eval('this._panel.'+propertyName+' = nextValue + \'px\'');nextValue=nextValue+step;if(step>0&&nextValue>targetValue)
nextValue=targetValue;else if(step<0&&nextValue<targetValue)
nextValue=targetValue;step=step*acceleration;this._animationHandle=window.setTimeout(new Function(this._variableName+'._animate(\''+propertyName+'\','+targetValue+','+nextValue+','+step+','+acceleration+');'),19);}}
Telligent_PopupPanel.prototype._documentOnClick=function(){if(this._isShown&&!this._isOpening)
this.Hide();if(this._originalDocumentOnClick)
this._originalDocumentOnClick();};if(typeof(Sys)!=='undefined')Sys.Application.notifyScriptLoaded();function Telligent_CallbackManager(variableName,postbackName,formID){this._variableName=variableName;this._postbackName=postbackName;this._form=document.getElementById(formID);}
Telligent_CallbackManager.prototype._responseCallback=function(xmlHttpRequest,clientCallback,context,clientErrorCallback){if(xmlHttpRequest.readyState!=4)
return;var result=xmlHttpRequest.responseText;if(result.length>0&&result.substr(0,1)=="s"){var result=eval('('+result.substr(1)+')');if(clientCallback){try{clientCallback(result.response,context);}
catch(e){alert(e.message);}}
var scriptLoader=new Telligent_ScriptLoader();if(result.includeScriptUrls&&result.includeScriptUrls.length>0){for(var i=0;i<result.includeScriptUrls.length;i++){scriptLoader.AddScriptToLoad(new Telligent_ScriptToLoad(true,result.includeScriptUrls[i]));}}
if(result.startupScripts&&result.startupScripts.length>0){for(var i=0;i<result.startupScripts.length;i++){scriptLoader.AddScriptToLoad(new Telligent_ScriptToLoad(false,result.startupScripts[i]));}}
scriptLoader.LoadAll();try{__theFormPostData='';__theFormPostCollection=new Array();WebForm_InitCallback();}
catch(e){}}
else if(result.substr(0,1)=="e"){if(clientErrorCallback)
clientErrorCallback(result.substr(1),context);else alert(result.substr(1));}
else{if(clientErrorCallback)
clientErrorCallback(null,context);}}
Telligent_CallbackManager.prototype._doCallback=function(argument,clientCallback,context,clientErrorCallback){var x=this._getXmlHttpRequest();if(x==null)
return;var url;if(this._form!=null&&this._form.action)
url=this._form.action;else{url=window.location.href;url=url.replace(/\#.*$/,'');}
x.open("POST",url,true);x.setRequestHeader("Content-Type","application/x-www-form-urlencoded;charset=utf-8");var currentObject=eval(this._variableName);x.onreadystatechange=function(){currentObject._responseCallback(x,clientCallback,context,clientErrorCallback);};var postData=this._postbackName+'=';if(argument!=null)
postData+=encodeURIComponent(argument);if(this._form!=null){for(var i=0;i<this._form.length;i++){var element=this._form.elements[i];if(element.name){var elementValue=null;if(element.nodeName=='INPUT'){var elementType=element.type.toLowerCase();if(elementType=='text'||elementType=='password'||elementType=='hidden')
elementValue=element.value;else if((elementType=='checkbox'||elementType=='radio')&&element.checked)
elementValue=element.value;}
else if(element.nodeName=='SELECT'||element.nodeName=='TEXTAREA')
elementValue=element.value;if(elementValue&&element.name!=this._postbackName)
postData+='&'+element.name+'='+encodeURIComponent(elementValue);}}}
x.send(postData);delete x;}
Telligent_CallbackManager.prototype._getXmlHttpRequest=function(){var x=null;if(typeof XMLHttpRequest!="undefined"){x=new XMLHttpRequest();}
else{try{x=new ActiveXObject("Msxml2.XMLHTTP");}
catch(e){try{x=new ActiveXObject("Microsoft.XMLHTTP");}
catch(e){}}}
return x;}
function Telligent_ScriptLoader(){this._scriptsToLoad=new Array();this._currentScript=0;this.AddScriptToLoad=function(scriptToLoad){this._scriptsToLoad[this._scriptsToLoad.length]=scriptToLoad;}
this.LoadAll=function(){if(this._scriptsToLoad.length>0&&this._currentScript<this._scriptsToLoad.length)
this._scriptsToLoad[this._currentScript].Load(Telligent_Common.CreateSafeFunction(this,this._loadSuccessful),Telligent_Common.CreateSafeFunction(this,this._loadFailed));}
this._loadSuccessful=function(){this._currentScript++;this.LoadAll();}
this._loadFailed=function(e){if(e)
alert(e.message);else if(window.error)
alert(window.error.message);else alert('An unknown error occured while loading scripts associated to the latest callback');}}
function Telligent_ScriptToLoad(isInclude,content){this._isInclude=isInclude;this._content=content;this._element=null;this._completeCallback=null;this._errorCallback=null;this._errorTimeout=null;this.Load=function(completeCallback,errorCallback){if(this._isInclude){if(this._isScriptIncludeRegistered(this._content)){if(completeCallback)
completeCallback();return;}
this._element=document.createElement('script');this._element.src=this._content;this._completeCallback=completeCallback;this._errorCallback=errorCallback;if(Telligent_Common.IsSafari()){try{document.getElementsByTagName("HEAD")[0].appendChild(this._element);}
catch(e){if(errorCallback)
errorCallback(e);return;}
setTimeout(Telligent_Common.CreateSafeFunction(this,this._completeCallback),999);}
else{if(Telligent_Common.IsIE()){this._element.onreadystatechange=Telligent_Common.CreateSafeFunction(this,this._readyStateChanged);}
else{this._element.readyState='loaded';this._element.onload=Telligent_Common.CreateSafeFunction(this,this._readyStateChanged);}
document.getElementsByTagName("HEAD")[0].appendChild(this._element);this._errorTimeout=setTimeout(Telligent_Common.CreateSafeFunction(this,this._errorOccured),29999);}}
else{var element=document.createElement('script');element.type='text/javascript';element.text=this._content;try{document.getElementsByTagName("HEAD")[0].appendChild(element);if(!Telligent_Common.IsSafari())
document.getElementsByTagName("HEAD")[0].removeChild(element);}
catch(e){if(errorCallback)
errorCallback(e);return;}
if(completeCallback)
completeCallback();}}
this._isScriptIncludeRegistered=function(scriptUrl){var scripts=document.getElementsByTagName("SCRIPT");for(var i=0;i<scripts.length;i++){if(scripts[i].src==scriptUrl||scripts[i].src.indexOf(scriptUrl)+scriptUrl.length==scripts[i].src.length)
return true;}
return false;}
this._readyStateChanged=function(){if(this._element&&(this._element.readyState=='loaded'||this._element.readyState=='complete')){clearTimeout(this._errorTimeout);this._element.onreadystatechange=null;this._element.onload=null;this._element.onerror=null;if(this._completeCallback)
this._completeCallback();}}
this._errorOccured=function(){if(this._element){this._element.onreadystatechange=null;this._element.onload=null;this._element.onerror=null;}
if(this._errorCallback)
this._errorCallback({'message':'A script was not able to be loaded within the allowed time.  The callback has failed'});}};if(typeof(Sys)!=='undefined')Sys.Application.notifyScriptLoaded();function DelayedContent (varName,containerId,loadContentScript,isLoaded,loadImmediately,onReloadFunction){this._variableName = varName;this._container = document.getElementById(containerId);this._loadContentFunction = new Function('argument','callback',loadContentScript);this._xmlHttpRequest = null;this._isLoaded = isLoaded;this._onReloadFunction = onReloadFunction;this.IsLoaded = function(){return this._isLoaded;}
this.Load = function(argument){if (!this.IsLoaded())
this.Reload(argument);}
this.Reload = function(argument){this._container.style.cursor = 'progress';this._loadContentFunction(argument,new Function('result',this._variableName + '._setContent(result);'));}
this._setContent = function(result){if (result != null){Telligent_Common.DisposeContent(this._container);this._container.innerHTML = result;this._isLoaded = true;if (this._onReloadFunction)
this._onReloadFunction(this);window.setTimeout(function(){__theFormPostData = '';__theFormPostCollection = new Array();WebForm_InitCallback();},99);}
this._container.style.cursor = 'default';}
if (loadImmediately){window.setTimeout(new Function(this._variableName + '.Load();'),249);}
}
if(typeof(Sys)!=='undefined')Sys.Application.notifyScriptLoaded();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?"
};Type.registerNamespace('Sys.WebForms');Sys.WebForms.BeginRequestEventArgs = function Sys$WebForms$BeginRequestEventArgs(request,postBackElement){var e = Function._validateParams(arguments,[{name: "request",type: Sys.Net.WebRequest},{name: "postBackElement",mayBeNull: true,domElement: true}
]);if (e) throw e;Sys.WebForms.BeginRequestEventArgs.initializeBase(this);this._request = request;this._postBackElement = postBackElement;}
function Sys$WebForms$BeginRequestEventArgs$get_postBackElement(){if (arguments.length !== 0) throw Error.parameterCount();return this._postBackElement;}
function Sys$WebForms$BeginRequestEventArgs$get_request(){if (arguments.length !== 0) throw Error.parameterCount();return this._request;}
Sys.WebForms.BeginRequestEventArgs.prototype ={get_postBackElement: Sys$WebForms$BeginRequestEventArgs$get_postBackElement,get_request: Sys$WebForms$BeginRequestEventArgs$get_request
}
Sys.WebForms.BeginRequestEventArgs.registerClass('Sys.WebForms.BeginRequestEventArgs',Sys.EventArgs);Sys.WebForms.EndRequestEventArgs = function Sys$WebForms$EndRequestEventArgs(error,dataItems,response){var e = Function._validateParams(arguments,[{name: "error",type: Error,mayBeNull: true},{name: "dataItems",type: Object,mayBeNull: true},{name: "response",type: Sys.Net.WebRequestExecutor}
]);if (e) throw e;Sys.WebForms.EndRequestEventArgs.initializeBase(this);this._errorHandled = false;this._error = error;this._dataItems = dataItems || new Object();this._response = response;}
function Sys$WebForms$EndRequestEventArgs$get_dataItems(){if (arguments.length !== 0) throw Error.parameterCount();return this._dataItems;}
function Sys$WebForms$EndRequestEventArgs$get_error(){if (arguments.length !== 0) throw Error.parameterCount();return this._error;}
function Sys$WebForms$EndRequestEventArgs$get_errorHandled(){if (arguments.length !== 0) throw Error.parameterCount();return this._errorHandled;}
function Sys$WebForms$EndRequestEventArgs$set_errorHandled(value){var e = Function._validateParams(arguments,[{name: "value",type: Boolean}]);if (e) throw e;this._errorHandled = value;}
function Sys$WebForms$EndRequestEventArgs$get_response(){if (arguments.length !== 0) throw Error.parameterCount();return this._response;}
Sys.WebForms.EndRequestEventArgs.prototype ={get_dataItems: Sys$WebForms$EndRequestEventArgs$get_dataItems,get_error: Sys$WebForms$EndRequestEventArgs$get_error,get_errorHandled: Sys$WebForms$EndRequestEventArgs$get_errorHandled,set_errorHandled: Sys$WebForms$EndRequestEventArgs$set_errorHandled,get_response: Sys$WebForms$EndRequestEventArgs$get_response
}
Sys.WebForms.EndRequestEventArgs.registerClass('Sys.WebForms.EndRequestEventArgs',Sys.EventArgs);Sys.WebForms.InitializeRequestEventArgs = function Sys$WebForms$InitializeRequestEventArgs(request,postBackElement){var e = Function._validateParams(arguments,[{name: "request",type: Sys.Net.WebRequest},{name: "postBackElement",mayBeNull: true,domElement: true}
]);if (e) throw e;Sys.WebForms.InitializeRequestEventArgs.initializeBase(this);this._request = request;this._postBackElement = postBackElement;}
function Sys$WebForms$InitializeRequestEventArgs$get_postBackElement(){if (arguments.length !== 0) throw Error.parameterCount();return this._postBackElement;}
function Sys$WebForms$InitializeRequestEventArgs$get_request(){if (arguments.length !== 0) throw Error.parameterCount();return this._request;}
Sys.WebForms.InitializeRequestEventArgs.prototype ={get_postBackElement: Sys$WebForms$InitializeRequestEventArgs$get_postBackElement,get_request: Sys$WebForms$InitializeRequestEventArgs$get_request
}
Sys.WebForms.InitializeRequestEventArgs.registerClass('Sys.WebForms.InitializeRequestEventArgs',Sys.CancelEventArgs);Sys.WebForms.PageLoadedEventArgs = function Sys$WebForms$PageLoadedEventArgs(panelsUpdated,panelsCreated,dataItems){var e = Function._validateParams(arguments,[{name: "panelsUpdated",type: Array},{name: "panelsCreated",type: Array},{name: "dataItems",type: Object,mayBeNull: true}
]);if (e) throw e;Sys.WebForms.PageLoadedEventArgs.initializeBase(this);this._panelsUpdated = panelsUpdated;this._panelsCreated = panelsCreated;this._dataItems = dataItems || new Object();}
function Sys$WebForms$PageLoadedEventArgs$get_dataItems(){if (arguments.length !== 0) throw Error.parameterCount();return this._dataItems;}
function Sys$WebForms$PageLoadedEventArgs$get_panelsCreated(){if (arguments.length !== 0) throw Error.parameterCount();return this._panelsCreated;}
function Sys$WebForms$PageLoadedEventArgs$get_panelsUpdated(){if (arguments.length !== 0) throw Error.parameterCount();return this._panelsUpdated;}
Sys.WebForms.PageLoadedEventArgs.prototype ={get_dataItems: Sys$WebForms$PageLoadedEventArgs$get_dataItems,get_panelsCreated: Sys$WebForms$PageLoadedEventArgs$get_panelsCreated,get_panelsUpdated: Sys$WebForms$PageLoadedEventArgs$get_panelsUpdated
}
Sys.WebForms.PageLoadedEventArgs.registerClass('Sys.WebForms.PageLoadedEventArgs',Sys.EventArgs);Sys.WebForms.PageLoadingEventArgs = function Sys$WebForms$PageLoadingEventArgs(panelsUpdating,panelsDeleting,dataItems){var e = Function._validateParams(arguments,[{name: "panelsUpdating",type: Array},{name: "panelsDeleting",type: Array},{name: "dataItems",type: Object,mayBeNull: true}
]);if (e) throw e;Sys.WebForms.PageLoadingEventArgs.initializeBase(this);this._panelsUpdating = panelsUpdating;this._panelsDeleting = panelsDeleting;this._dataItems = dataItems || new Object();}
function Sys$WebForms$PageLoadingEventArgs$get_dataItems(){if (arguments.length !== 0) throw Error.parameterCount();return this._dataItems;}
function Sys$WebForms$PageLoadingEventArgs$get_panelsDeleting(){if (arguments.length !== 0) throw Error.parameterCount();return this._panelsDeleting;}
function Sys$WebForms$PageLoadingEventArgs$get_panelsUpdating(){if (arguments.length !== 0) throw Error.parameterCount();return this._panelsUpdating;}
Sys.WebForms.PageLoadingEventArgs.prototype ={get_dataItems: Sys$WebForms$PageLoadingEventArgs$get_dataItems,get_panelsDeleting: Sys$WebForms$PageLoadingEventArgs$get_panelsDeleting,get_panelsUpdating: Sys$WebForms$PageLoadingEventArgs$get_panelsUpdating
}
Sys.WebForms.PageLoadingEventArgs.registerClass('Sys.WebForms.PageLoadingEventArgs',Sys.EventArgs);Sys.WebForms.PageRequestManager = function Sys$WebForms$PageRequestManager(){this._form = null;this._activeDefaultButton = null;this._activeDefaultButtonClicked = false;this._updatePanelIDs = null;this._updatePanelClientIDs = null;this._updatePanelHasChildrenAsTriggers = null;this._asyncPostBackControlIDs = null;this._asyncPostBackControlClientIDs = null;this._postBackControlIDs = null;this._postBackControlClientIDs = null;this._scriptManagerID = null;this._pageLoadedHandler = null;this._additionalInput = null;this._onsubmit = null;this._onSubmitStatements = [];this._originalDoPostBack = null;this._originalDoPostBackWithOptions = null;this._originalFireDefaultButton = null;this._originalDoCallback = null;this._isCrossPost = false;this._postBackSettings = null;this._request = null;this._onFormSubmitHandler = null;this._onFormElementClickHandler = null;this._onWindowUnloadHandler = null;this._asyncPostBackTimeout = null;this._controlIDToFocus = null;this._scrollPosition = null;this._processingRequest = false;this._scriptDisposes ={};this._transientFields = ["__VIEWSTATEENCRYPTED","__VIEWSTATEFIELDCOUNT"];}
function Sys$WebForms$PageRequestManager$_get_eventHandlerList(){if (!this._events){this._events = new Sys.EventHandlerList();}
return this._events;}
function Sys$WebForms$PageRequestManager$get_isInAsyncPostBack(){if (arguments.length !== 0) throw Error.parameterCount();return this._request !== null;}
function Sys$WebForms$PageRequestManager$add_beginRequest(handler){var e = Function._validateParams(arguments,[{name: "handler",type: Function}]);if (e) throw e;this._get_eventHandlerList().addHandler("beginRequest",handler);}
function Sys$WebForms$PageRequestManager$remove_beginRequest(handler){var e = Function._validateParams(arguments,[{name: "handler",type: Function}]);if (e) throw e;this._get_eventHandlerList().removeHandler("beginRequest",handler);}
function Sys$WebForms$PageRequestManager$add_endRequest(handler){var e = Function._validateParams(arguments,[{name: "handler",type: Function}]);if (e) throw e;this._get_eventHandlerList().addHandler("endRequest",handler);}
function Sys$WebForms$PageRequestManager$remove_endRequest(handler){var e = Function._validateParams(arguments,[{name: "handler",type: Function}]);if (e) throw e;this._get_eventHandlerList().removeHandler("endRequest",handler);}
function Sys$WebForms$PageRequestManager$add_initializeRequest(handler){var e = Function._validateParams(arguments,[{name: "handler",type: Function}]);if (e) throw e;this._get_eventHandlerList().addHandler("initializeRequest",handler);}
function Sys$WebForms$PageRequestManager$remove_initializeRequest(handler){var e = Function._validateParams(arguments,[{name: "handler",type: Function}]);if (e) throw e;this._get_eventHandlerList().removeHandler("initializeRequest",handler);}
function Sys$WebForms$PageRequestManager$add_pageLoaded(handler){var e = Function._validateParams(arguments,[{name: "handler",type: Function}]);if (e) throw e;this._get_eventHandlerList().addHandler("pageLoaded",handler);}
function Sys$WebForms$PageRequestManager$remove_pageLoaded(handler){var e = Function._validateParams(arguments,[{name: "handler",type: Function}]);if (e) throw e;this._get_eventHandlerList().removeHandler("pageLoaded",handler);}
function Sys$WebForms$PageRequestManager$add_pageLoading(handler){var e = Function._validateParams(arguments,[{name: "handler",type: Function}]);if (e) throw e;this._get_eventHandlerList().addHandler("pageLoading",handler);}
function Sys$WebForms$PageRequestManager$remove_pageLoading(handler){var e = Function._validateParams(arguments,[{name: "handler",type: Function}]);if (e) throw e;this._get_eventHandlerList().removeHandler("pageLoading",handler);}
function Sys$WebForms$PageRequestManager$abortPostBack(){if (!this._processingRequest && this._request){this._request.get_executor().abort();this._request = null;}
}
function Sys$WebForms$PageRequestManager$_cancelPendingCallbacks(){for (var i = 0,l = window.__pendingCallbacks.length;i < l;i++){var callback = window.__pendingCallbacks[i];if (callback){if (!callback.async){window.__synchronousCallBackIndex = -1;}
window.__pendingCallbacks[i] = null;var callbackFrameID = "__CALLBACKFRAME" + i;var xmlRequestFrame = document.getElementById(callbackFrameID);if (xmlRequestFrame){xmlRequestFrame.parentNode.removeChild(xmlRequestFrame);}
}
}
}
function Sys$WebForms$PageRequestManager$_commitControls(updatePanelData,asyncPostBackTimeout){if (updatePanelData){this._updatePanelIDs = updatePanelData.updatePanelIDs;this._updatePanelClientIDs = updatePanelData.updatePanelClientIDs;this._updatePanelHasChildrenAsTriggers = updatePanelData.updatePanelHasChildrenAsTriggers;this._asyncPostBackControlIDs = updatePanelData.asyncPostBackControlIDs;this._asyncPostBackControlClientIDs = updatePanelData.asyncPostBackControlClientIDs;this._postBackControlIDs = updatePanelData.postBackControlIDs;this._postBackControlClientIDs = updatePanelData.postBackControlClientIDs;}
if (typeof(asyncPostBackTimeout) !== 'undefined' && asyncPostBackTimeout !== null){this._asyncPostBackTimeout = asyncPostBackTimeout * 1000;}
}
function Sys$WebForms$PageRequestManager$_createHiddenField(id,value){var container,field = document.getElementById(id);if (field){if (!field._isContained){field.parentNode.removeChild(field);}
else{container = field.parentNode;}
}
if (!container){container = document.createElement('span');container.style.cssText = "display:none !important";this._form.appendChild(container);}
container.innerHTML = "<input type='hidden' />";field = container.childNodes[0];field._isContained = true;field.id = field.name = id;field.value = value;}
function Sys$WebForms$PageRequestManager$_createPageRequestManagerTimeoutError(){var displayMessage = "Sys.WebForms.PageRequestManagerTimeoutException: " + Sys.WebForms.Res.PRM_TimeoutError;var e = Error.create(displayMessage,{name: 'Sys.WebForms.PageRequestManagerTimeoutException'});e.popStackFrame();return e;}
function Sys$WebForms$PageRequestManager$_createPageRequestManagerServerError(httpStatusCode,message){var displayMessage = "Sys.WebForms.PageRequestManagerServerErrorException: " +
(message || String.format(Sys.WebForms.Res.PRM_ServerError,httpStatusCode));var e = Error.create(displayMessage,{name: 'Sys.WebForms.PageRequestManagerServerErrorException',httpStatusCode: httpStatusCode
});e.popStackFrame();return e;}
function Sys$WebForms$PageRequestManager$_createPageRequestManagerParserError(parserErrorMessage){var displayMessage = "Sys.WebForms.PageRequestManagerParserErrorException: " + String.format(Sys.WebForms.Res.PRM_ParserError,parserErrorMessage);var e = Error.create(displayMessage,{name: 'Sys.WebForms.PageRequestManagerParserErrorException'});e.popStackFrame();return e;}
function Sys$WebForms$PageRequestManager$_createPostBackSettings(async,panelID,sourceElement){return{async:async,panelID:panelID,sourceElement:sourceElement };}
function Sys$WebForms$PageRequestManager$_convertToClientIDs(source,destinationIDs,destinationClientIDs){if (source){for (var i = 0,l = source.length;i < l;i++){Array.add(destinationIDs,source[i]);Array.add(destinationClientIDs,this._uniqueIDToClientID(source[i]));}
}
}
function Sys$WebForms$PageRequestManager$_destroyTree(element){if (element.nodeType === 1){var childNodes = element.childNodes;for (var i = childNodes.length - 1;i >= 0;i--){var node = childNodes[i];if (node.nodeType === 1){if (node.dispose && typeof(node.dispose) === "function"){node.dispose();}
else if (node.control && typeof(node.control.dispose) === "function"){node.control.dispose();}
var behaviors = Sys.UI.Behavior.getBehaviors(node);for (var j = behaviors.length - 1;j >= 0;j--){behaviors[j].dispose();}
this._destroyTree(node);}
}
}
}
function Sys$WebForms$PageRequestManager$dispose(){if (this._form){Sys.UI.DomEvent.removeHandler(this._form,'submit',this._onFormSubmitHandler);Sys.UI.DomEvent.removeHandler(this._form,'click',this._onFormElementClickHandler);Sys.UI.DomEvent.removeHandler(window,'unload',this._onWindowUnloadHandler);Sys.UI.DomEvent.removeHandler(window,'load',this._pageLoadedHandler);}
if (this._originalDoPostBack){window.__doPostBack = this._originalDoPostBack;this._originalDoPostBack = null;}
if (this._originalDoPostBackWithOptions){window.WebForm_DoPostBackWithOptions = this._originalDoPostBackWithOptions;this._originalDoPostBackWithOptions = null;}
if (this._originalFireDefaultButton){window.WebForm_FireDefaultButton = this._originalFireDefaultButton;this._originalFireDefaultButton = null;}
if (this._originalDoCallback){window.WebForm_DoCallback = this._originalDoCallback;this._originalDoCallback = null;}
this._form = null;this._updatePanelIDs = null;this._updatePanelClientIDs = null;this._asyncPostBackControlIDs = null;this._asyncPostBackControlClientIDs = null;this._postBackControlIDs = null;this._postBackControlClientIDs = null;this._asyncPostBackTimeout = null;this._scrollPosition = null;}
function Sys$WebForms$PageRequestManager$_doCallback(eventTarget,eventArgument,eventCallback,context,errorCallback,useAsync){if (!this.get_isInAsyncPostBack()){this._originalDoCallback(eventTarget,eventArgument,eventCallback,context,errorCallback,useAsync);}
}
function Sys$WebForms$PageRequestManager$_doPostBack(eventTarget,eventArgument){this._additionalInput = null;var form = this._form;if ((eventTarget === null) || (typeof(eventTarget) === "undefined") || (this._isCrossPost)){this._postBackSettings = this._createPostBackSettings(false,null,null);this._isCrossPost = false;}
else{var clientID = this._uniqueIDToClientID(eventTarget);var postBackElement = document.getElementById(clientID);if (!postBackElement){if (Array.contains(this._asyncPostBackControlIDs,eventTarget)){this._postBackSettings = this._createPostBackSettings(true,this._scriptManagerID + '|' + eventTarget,null);}
else{if (Array.contains(this._postBackControlIDs,eventTarget)){this._postBackSettings = this._createPostBackSettings(false,null,null);}
else{var nearestUniqueIDMatch = this._findNearestElement(eventTarget);if (nearestUniqueIDMatch){this._postBackSettings = this._getPostBackSettings(nearestUniqueIDMatch,eventTarget);}
else{this._postBackSettings = this._createPostBackSettings(false,null,null);}
}
}
}
else{this._postBackSettings = this._getPostBackSettings(postBackElement,eventTarget);}
}
if (!this._postBackSettings.async){form.onsubmit = this._onsubmit;this._originalDoPostBack(eventTarget,eventArgument);form.onsubmit = null;return;}
form.__EVENTTARGET.value = eventTarget;form.__EVENTARGUMENT.value = eventArgument;this._onFormSubmit();}
function Sys$WebForms$PageRequestManager$_doPostBackWithOptions(options){this._isCrossPost = options && options.actionUrl;this._originalDoPostBackWithOptions(options);}
function Sys$WebForms$PageRequestManager$_elementContains(container,element){while (element){if (element === container){return true;}
element = element.parentNode;}
return false;}
function Sys$WebForms$PageRequestManager$_endPostBack(error,executor,data){if (this._request === executor.get_webRequest()){this._processingRequest = false;this._additionalInput = null;this._request = null;}
var handler = this._get_eventHandlerList().getHandler("endRequest");var errorHandled = false;if (handler){var eventArgs = new Sys.WebForms.EndRequestEventArgs(error,data ? data.dataItems :{},executor);handler(this,eventArgs);errorHandled = eventArgs.get_errorHandled();}
if (error && !errorHandled){throw error;}
}
function Sys$WebForms$PageRequestManager$_findNearestElement(uniqueID){while (uniqueID.length > 0){var clientID = this._uniqueIDToClientID(uniqueID);var element = document.getElementById(clientID);if (element){return element;}
var indexOfLastDollar = uniqueID.lastIndexOf('$');if (indexOfLastDollar === -1){return null;}
uniqueID = uniqueID.substring(0,indexOfLastDollar);}
return null;}
function Sys$WebForms$PageRequestManager$_findText(text,location){var startIndex = Math.max(0,location - 20);var endIndex = Math.min(text.length,location + 20);return text.substring(startIndex,endIndex);}
function Sys$WebForms$PageRequestManager$_fireDefaultButton(event,target){if (event.keyCode === 13){var src = event.srcElement || event.target;if (!src || (src.tagName.toLowerCase() !== "textarea")){var defaultButton = document.getElementById(target);if (defaultButton && (typeof(defaultButton.click) !== "undefined")){this._activeDefaultButton = defaultButton;this._activeDefaultButtonClicked = false;try{defaultButton.click();}
finally{this._activeDefaultButton = null;}
event.cancelBubble = true;if (typeof(event.stopPropagation) === "function"){event.stopPropagation();}
return false;}
}
}
return true;}
function Sys$WebForms$PageRequestManager$_getPageLoadedEventArgs(initialLoad,data){var updated = [];var created = [];var upData = data ? data.updatePanelData : null;var newIDs,childIDs,refreshedIDs;if (!upData){newIDs = this._updatePanelIDs;childIDs = null;refreshedIDs = null;}
else{newIDs = upData.updatePanelIDs;childIDs = upData.childUpdatePanelIDs;refreshedIDs = upData.panelsToRefreshIDs;}
var i,l;if (refreshedIDs){for (i = 0,l = refreshedIDs.length;i < l;i++){Array.add(updated,document.getElementById(this._uniqueIDToClientID(refreshedIDs[i])));}
}
for (i = 0,l = newIDs.length;i < l;i++){if (initialLoad || Array.indexOf(childIDs,newIDs[i]) !== -1){Array.add(created,document.getElementById(this._uniqueIDToClientID(newIDs[i])));}
}
return new Sys.WebForms.PageLoadedEventArgs(updated,created,data ? data.dataItems :{});}
function Sys$WebForms$PageRequestManager$_getPageLoadingEventArgs(data){var updated = [];var deleted = [];var upData = data.updatePanelData;var oldIDs = upData.oldUpdatePanelIDs;var newIDs = upData.updatePanelIDs;var childIDs = upData.childUpdatePanelIDs;var refreshedIDs = upData.panelsToRefreshIDs;var i,l;for (i = 0,l = refreshedIDs.length;i < l;i++){Array.add(updated,document.getElementById(this._uniqueIDToClientID(refreshedIDs[i])));}
for (i = 0,l = oldIDs.length;i < l;i++){if (Array.indexOf(refreshedIDs,oldIDs[i]) === -1 &&
(Array.indexOf(newIDs,oldIDs[i]) === -1 || Array.indexOf(childIDs,oldIDs[i]) > -1)){Array.add(deleted,document.getElementById(this._uniqueIDToClientID(oldIDs[i])));}
}
return new Sys.WebForms.PageLoadingEventArgs(updated,deleted,data.dataItems);}
function Sys$WebForms$PageRequestManager$_getPostBackSettings(element,elementUniqueID){var originalElement = element;var proposedSettings = null;while (element){if (element.id){if (!proposedSettings && Array.contains(this._asyncPostBackControlClientIDs,element.id)){proposedSettings = this._createPostBackSettings(true,this._scriptManagerID + '|' + elementUniqueID,originalElement);}
else{if (!proposedSettings && Array.contains(this._postBackControlClientIDs,element.id)){return this._createPostBackSettings(false,null,null);}
else{var indexOfPanel = Array.indexOf(this._updatePanelClientIDs,element.id);if (indexOfPanel !== -1){if (this._updatePanelHasChildrenAsTriggers[indexOfPanel]){return this._createPostBackSettings(true,this._updatePanelIDs[indexOfPanel] + '|' + elementUniqueID,originalElement);}
else{return this._createPostBackSettings(true,this._scriptManagerID + '|' + elementUniqueID,originalElement);}
}
}
}
if (!proposedSettings && this._matchesParentIDInList(element.id,this._asyncPostBackControlClientIDs)){proposedSettings = this._createPostBackSettings(true,this._scriptManagerID + '|' + elementUniqueID,originalElement);}
else{if (!proposedSettings && this._matchesParentIDInList(element.id,this._postBackControlClientIDs)){return this._createPostBackSettings(false,null,null);}
}
}
element = element.parentNode;}
if (!proposedSettings){return this._createPostBackSettings(false,null,null);}
else{return proposedSettings;}
}
function Sys$WebForms$PageRequestManager$_getScrollPosition(){var d = document.documentElement;if (d && (this._validPosition(d.scrollLeft) || this._validPosition(d.scrollTop))){return{x: d.scrollLeft,y: d.scrollTop
};}
else{d = document.body;if (d && (this._validPosition(d.scrollLeft) || this._validPosition(d.scrollTop))){return{x: d.scrollLeft,y: d.scrollTop
};}
else{if (this._validPosition(window.pageXOffset) || this._validPosition(window.pageYOffset)){return{x: window.pageXOffset,y: window.pageYOffset
};}
else{return{x: 0,y: 0
};}
}
}
}
function Sys$WebForms$PageRequestManager$_initializeInternal(scriptManagerID,formElement){if (this._prmInitialized){throw Error.invalidOperation(Sys.WebForms.Res.PRM_CannotRegisterTwice);}
this._prmInitialized = true;this._scriptManagerID = scriptManagerID;this._form = formElement;this._onsubmit = this._form.onsubmit;this._form.onsubmit = null;this._onFormSubmitHandler = Function.createDelegate(this,this._onFormSubmit);this._onFormElementClickHandler = Function.createDelegate(this,this._onFormElementClick);this._onWindowUnloadHandler = Function.createDelegate(this,this._onWindowUnload);Sys.UI.DomEvent.addHandler(this._form,'submit',this._onFormSubmitHandler);Sys.UI.DomEvent.addHandler(this._form,'click',this._onFormElementClickHandler);Sys.UI.DomEvent.addHandler(window,'unload',this._onWindowUnloadHandler);this._originalDoPostBack = window.__doPostBack;if (this._originalDoPostBack){window.__doPostBack = Function.createDelegate(this,this._doPostBack);}
this._originalDoPostBackWithOptions = window.WebForm_DoPostBackWithOptions;if (this._originalDoPostBackWithOptions){window.WebForm_DoPostBackWithOptions = Function.createDelegate(this,this._doPostBackWithOptions);}
this._originalFireDefaultButton = window.WebForm_FireDefaultButton;if (this._originalFireDefaultButton){window.WebForm_FireDefaultButton = Function.createDelegate(this,this._fireDefaultButton);}
this._originalDoCallback = window.WebForm_DoCallback;if (this._originalDoCallback){window.WebForm_DoCallback = Function.createDelegate(this,this._doCallback);}
this._pageLoadedHandler = Function.createDelegate(this,this._pageLoadedInitialLoad);Sys.UI.DomEvent.addHandler(window,'load',this._pageLoadedHandler);}
function Sys$WebForms$PageRequestManager$_matchesParentIDInList(clientID,parentIDList){for (var i = 0,l = parentIDList.length;i < l;i++){if (clientID.startsWith(parentIDList[i] + "_")){return true;}
}
return false;}
function Sys$WebForms$PageRequestManager$_onFormElementActive(element,offsetX,offsetY){if (element.disabled){return;}
this._postBackSettings = this._getPostBackSettings(element,element.name);if (element.name){var tagName = element.tagName.toUpperCase();if (tagName === 'INPUT'){var type = element.type;if (type === 'submit'){this._additionalInput = encodeURIComponent(element.name) + '=' + encodeURIComponent(element.value);}
else if (type === 'image'){this._additionalInput = encodeURIComponent(element.name) + '.x=' + offsetX + '&' + encodeURIComponent(element.name) + '.y=' + offsetY;}
}
else if ((tagName === 'BUTTON') && (element.name.length !== 0) && (element.type === 'submit')){this._additionalInput = encodeURIComponent(element.name) + '=' + encodeURIComponent(element.value);}
}
}
function Sys$WebForms$PageRequestManager$_onFormElementClick(evt){this._activeDefaultButtonClicked = (evt.target === this._activeDefaultButton);this._onFormElementActive(evt.target,evt.offsetX,evt.offsetY);}
function Sys$WebForms$PageRequestManager$_onFormSubmit(evt){var continueSubmit = true;var isCrossPost = this._isCrossPost;this._isCrossPost = false;var i,l;if (this._onsubmit){continueSubmit = this._onsubmit();}
if (continueSubmit){for (i = 0,l = this._onSubmitStatements.length;i < l;i++){if (!this._onSubmitStatements[i]()){continueSubmit = false;break;}
}
}
if (!continueSubmit){if (evt){evt.preventDefault();}
return;}
var form = this._form;if (isCrossPost){return;}
if (this._activeDefaultButton && !this._activeDefaultButtonClicked){this._onFormElementActive(this._activeDefaultButton,0,0);}
if (!this._postBackSettings.async){return;}
var formBody = new Sys.StringBuilder();formBody.append(encodeURIComponent(this._scriptManagerID) + '=' + encodeURIComponent(this._postBackSettings.panelID) + '&');var count = form.elements.length;for (i = 0;i < count;i++){var element = form.elements[i];var name = element.name;if (typeof(name) === "undefined" || (name === null) || (name.length === 0) || (name === this._scriptManagerID)){continue;}
var tagName = element.tagName.toUpperCase();if (tagName === 'INPUT'){var type = element.type;if ((type === 'text') ||
(type === 'password') ||
(type === 'hidden') ||
(((type === 'checkbox') || (type === 'radio')) && element.checked)){formBody.append(encodeURIComponent(name));formBody.append('=');formBody.append(encodeURIComponent(element.value));formBody.append('&');}
}
else if (tagName === 'SELECT'){var optionCount = element.options.length;for (var j = 0;j < optionCount;j++){var option = element.options[j];if (option.selected){formBody.append(encodeURIComponent(name));formBody.append('=');formBody.append(encodeURIComponent(option.value));formBody.append('&');}
}
}
else if (tagName === 'TEXTAREA'){formBody.append(encodeURIComponent(name));formBody.append('=');formBody.append(encodeURIComponent(element.value));formBody.append('&');}
}
formBody.append("__ASYNCPOST=true&");if (this._additionalInput){formBody.append(this._additionalInput);this._additionalInput = null;}
var request = new Sys.Net.WebRequest();var action = form.action;if (Sys.Browser.agent === Sys.Browser.InternetExplorer){var fragmentIndex = action.indexOf('#');if (fragmentIndex !== -1){action = action.substr(0,fragmentIndex);}
var queryIndex = action.indexOf('?');if (queryIndex !== -1){var path = action.substr(0,queryIndex);if (path.indexOf("%") === -1){action = encodeURI(path) + action.substr(queryIndex);}
}
else if (action.indexOf("%") === -1){action = encodeURI(action);}
}
request.set_url(action);request.get_headers()['X-MicrosoftAjax'] = 'Delta=true';request.get_headers()['Cache-Control'] = 'no-cache';request.set_timeout(this._asyncPostBackTimeout);request.add_completed(Function.createDelegate(this,this._onFormSubmitCompleted));request.set_body(formBody.toString());var eventArgs,handler = this._get_eventHandlerList().getHandler("initializeRequest");if (handler){eventArgs = new Sys.WebForms.InitializeRequestEventArgs(request,this._postBackSettings.sourceElement);handler(this,eventArgs);continueSubmit = !eventArgs.get_cancel();}
if (!continueSubmit){if (evt){evt.preventDefault();}
return;}
this._scrollPosition = this._getScrollPosition();this.abortPostBack();handler = this._get_eventHandlerList().getHandler("beginRequest");if (handler){eventArgs = new Sys.WebForms.BeginRequestEventArgs(request,this._postBackSettings.sourceElement);handler(this,eventArgs);}
if (this._originalDoCallback){this._cancelPendingCallbacks();}
this._request = request;this._processingRequest = false;request.invoke();if (evt){evt.preventDefault();}
}
function Sys$WebForms$PageRequestManager$_onFormSubmitCompleted(sender,eventArgs){this._processingRequest = true;if (sender.get_timedOut()){this._endPostBack(this._createPageRequestManagerTimeoutError(),sender,null);return;}
if (sender.get_aborted()){this._endPostBack(null,sender,null);return;}
if (!this._request || (sender.get_webRequest() !== this._request)){return;}
if (sender.get_statusCode() !== 200){this._endPostBack(this._createPageRequestManagerServerError(sender.get_statusCode()),sender,null);return;}
var data = this._parseDelta(sender);if (!data) return;var i,l;if (data.asyncPostBackControlIDsNode && data.postBackControlIDsNode &&
data.updatePanelIDsNode && data.panelsToRefreshNode && data.childUpdatePanelIDsNode){var oldUpdatePanelIDs = this._updatePanelIDs;var childUpdatePanelIDsString = data.childUpdatePanelIDsNode.content;var childUpdatePanelIDs = childUpdatePanelIDsString.length ? childUpdatePanelIDsString.split(',') : [];var asyncPostBackControlIDsArray = this._splitNodeIntoArray(data.asyncPostBackControlIDsNode);var postBackControlIDsArray = this._splitNodeIntoArray(data.postBackControlIDsNode);var updatePanelIDsArray = this._splitNodeIntoArray(data.updatePanelIDsNode);var panelsToRefreshIDs = this._splitNodeIntoArray(data.panelsToRefreshNode);for (i = 0,l = panelsToRefreshIDs.length;i < l;i++){var panelClientID = this._uniqueIDToClientID(panelsToRefreshIDs[i]);if (!document.getElementById(panelClientID)){this._endPostBack(Error.invalidOperation(String.format(Sys.WebForms.Res.PRM_MissingPanel,panelClientID)),sender,data);return;}
}
var updatePanelData = this._processUpdatePanelArrays(
updatePanelIDsArray,asyncPostBackControlIDsArray,postBackControlIDsArray);updatePanelData.oldUpdatePanelIDs = oldUpdatePanelIDs;updatePanelData.childUpdatePanelIDs = childUpdatePanelIDs;updatePanelData.panelsToRefreshIDs = panelsToRefreshIDs;data.updatePanelData = updatePanelData;}
data.dataItems ={};var node;for (i = 0,l = data.dataItemNodes.length;i < l;i++){node = data.dataItemNodes[i];data.dataItems[node.id] = node.content;}
for (i = 0,l = data.dataItemJsonNodes.length;i < l;i++){node = data.dataItemJsonNodes[i];data.dataItems[node.id] = Sys.Serialization.JavaScriptSerializer.deserialize(node.content);}
var handler = this._get_eventHandlerList().getHandler("pageLoading");if (handler){handler(this,this._getPageLoadingEventArgs(data));}
Sys._ScriptLoader.readLoadedScripts();Sys.Application.beginCreateComponents();var scriptLoader = Sys._ScriptLoader.getInstance();this._queueScripts(scriptLoader,data.scriptBlockNodes,true,false);this._processingRequest = true;scriptLoader.loadScripts(0,Function.createDelegate(this,Function.createCallback(this._scriptIncludesLoadComplete,data)),Function.createDelegate(this,Function.createCallback(this._scriptIncludesLoadFailed,data)),null);}
function Sys$WebForms$PageRequestManager$_onWindowUnload(evt){this.dispose();}
function Sys$WebForms$PageRequestManager$_pageLoaded(initialLoad,data){var handler = this._get_eventHandlerList().getHandler("pageLoaded");if (handler){handler(this,this._getPageLoadedEventArgs(initialLoad,data));}
if (!initialLoad){Sys.Application.raiseLoad();}
}
function Sys$WebForms$PageRequestManager$_pageLoadedInitialLoad(evt){this._pageLoaded(true,null);}
function Sys$WebForms$PageRequestManager$_parseDelta(executor){var reply = executor.get_responseData();var delimiterIndex,len,type,id,content;var replyIndex = 0;var parserErrorDetails = null;var delta = [];while (replyIndex < reply.length){delimiterIndex = reply.indexOf('|',replyIndex);if (delimiterIndex === -1){parserErrorDetails = this._findText(reply,replyIndex);break;}
len = parseInt(reply.substring(replyIndex,delimiterIndex),10);if ((len % 1) !== 0){parserErrorDetails = this._findText(reply,replyIndex);break;}
replyIndex = delimiterIndex + 1;delimiterIndex = reply.indexOf('|',replyIndex);if (delimiterIndex === -1){parserErrorDetails = this._findText(reply,replyIndex);break;}
type = reply.substring(replyIndex,delimiterIndex);replyIndex = delimiterIndex + 1;delimiterIndex = reply.indexOf('|',replyIndex);if (delimiterIndex === -1){parserErrorDetails = this._findText(reply,replyIndex);break;}
id = reply.substring(replyIndex,delimiterIndex);replyIndex = delimiterIndex + 1;if ((replyIndex + len) >= reply.length){parserErrorDetails = this._findText(reply,reply.length);break;}
content = reply.substr(replyIndex,len);replyIndex += len;if (reply.charAt(replyIndex) !== '|'){parserErrorDetails = this._findText(reply,replyIndex);break;}
replyIndex++;Array.add(delta,{type: type,id: id,content: content});}
if (parserErrorDetails){this._endPostBack(this._createPageRequestManagerParserError(String.format(Sys.WebForms.Res.PRM_ParserErrorDetails,parserErrorDetails)),executor,null);return null;}
var updatePanelNodes = [];var hiddenFieldNodes = [];var arrayDeclarationNodes = [];var scriptBlockNodes = [];var scriptStartupNodes = [];var expandoNodes = [];var onSubmitNodes = [];var dataItemNodes = [];var dataItemJsonNodes = [];var scriptDisposeNodes = [];var asyncPostBackControlIDsNode,postBackControlIDsNode,updatePanelIDsNode,asyncPostBackTimeoutNode,childUpdatePanelIDsNode,panelsToRefreshNode,formActionNode;for (var i = 0,l = delta.length;i < l;i++){var deltaNode = delta[i];switch (deltaNode.type){case "updatePanel":
Array.add(updatePanelNodes,deltaNode);break;case "hiddenField":
Array.add(hiddenFieldNodes,deltaNode);break;case "arrayDeclaration":
Array.add(arrayDeclarationNodes,deltaNode);break;case "scriptBlock":
Array.add(scriptBlockNodes,deltaNode);break;case "scriptStartupBlock":
Array.add(scriptStartupNodes,deltaNode);break;case "expando":
Array.add(expandoNodes,deltaNode);break;case "onSubmit":
Array.add(onSubmitNodes,deltaNode);break;case "asyncPostBackControlIDs":
asyncPostBackControlIDsNode = deltaNode;break;case "postBackControlIDs":
postBackControlIDsNode = deltaNode;break;case "updatePanelIDs":
updatePanelIDsNode = deltaNode;break;case "asyncPostBackTimeout":
asyncPostBackTimeoutNode = deltaNode;break;case "childUpdatePanelIDs":
childUpdatePanelIDsNode = deltaNode;break;case "panelsToRefreshIDs":
panelsToRefreshNode = deltaNode;break;case "formAction":
formActionNode = deltaNode;break;case "dataItem":
Array.add(dataItemNodes,deltaNode);break;case "dataItemJson":
Array.add(dataItemJsonNodes,deltaNode);break;case "scriptDispose":
Array.add(scriptDisposeNodes,deltaNode);break;case "pageRedirect":
if (Sys.Browser.agent === Sys.Browser.InternetExplorer){var anchor = document.createElement("a");anchor.style.display = 'none';anchor.attachEvent("onclick",cancelBubble);anchor.href = deltaNode.content;document.body.appendChild(anchor);anchor.click();anchor.detachEvent("onclick",cancelBubble);document.body.removeChild(anchor);function cancelBubble(e){e.cancelBubble = true;}
}
else{window.location.href = deltaNode.content;}
return;case "error":
this._endPostBack(this._createPageRequestManagerServerError(Number.parseInvariant(deltaNode.id),deltaNode.content),executor,null);return null;case "pageTitle":
document.title = deltaNode.content;break;case "focus":
this._controlIDToFocus = deltaNode.content;break;default:
this._endPostBack(this._createPageRequestManagerParserError(String.format(Sys.WebForms.Res.PRM_UnknownToken,deltaNode.type)),executor,null);return null;}
}
return{executor: executor,updatePanelNodes: updatePanelNodes,hiddenFieldNodes: hiddenFieldNodes,arrayDeclarationNodes: arrayDeclarationNodes,scriptBlockNodes: scriptBlockNodes,scriptStartupNodes: scriptStartupNodes,expandoNodes: expandoNodes,onSubmitNodes: onSubmitNodes,dataItemNodes: dataItemNodes,dataItemJsonNodes: dataItemJsonNodes,scriptDisposeNodes: scriptDisposeNodes,asyncPostBackControlIDsNode: asyncPostBackControlIDsNode,postBackControlIDsNode: postBackControlIDsNode,updatePanelIDsNode: updatePanelIDsNode,asyncPostBackTimeoutNode: asyncPostBackTimeoutNode,childUpdatePanelIDsNode: childUpdatePanelIDsNode,panelsToRefreshNode: panelsToRefreshNode,formActionNode: formActionNode };}
function Sys$WebForms$PageRequestManager$_processUpdatePanelArrays(updatePanelIDs,asyncPostBackControlIDs,postBackControlIDs){var newUpdatePanelIDs;var newUpdatePanelClientIDs;var newUpdatePanelHasChildrenAsTriggers;if (updatePanelIDs){var l = updatePanelIDs.length;newUpdatePanelIDs = new Array(l);newUpdatePanelClientIDs = new Array(l);newUpdatePanelHasChildrenAsTriggers = new Array(l);for (var i = 0;i < l;i++){var realPanelID = updatePanelIDs[i].substr(1);var childrenAsTriggers = (updatePanelIDs[i].charAt(0) === 't');newUpdatePanelHasChildrenAsTriggers[i] = childrenAsTriggers;newUpdatePanelIDs[i] = realPanelID;newUpdatePanelClientIDs[i] = this._uniqueIDToClientID(realPanelID);}
}
else{newUpdatePanelIDs = [];newUpdatePanelClientIDs = [];newUpdatePanelHasChildrenAsTriggers = [];}
var newAsyncPostBackControlIDs = [];var newAsyncPostBackControlClientIDs = [];this._convertToClientIDs(asyncPostBackControlIDs,newAsyncPostBackControlIDs,newAsyncPostBackControlClientIDs);var newPostBackControlIDs = [];var newPostBackControlClientIDs = [];this._convertToClientIDs(postBackControlIDs,newPostBackControlIDs,newPostBackControlClientIDs);return{updatePanelIDs: newUpdatePanelIDs,updatePanelClientIDs: newUpdatePanelClientIDs,updatePanelHasChildrenAsTriggers: newUpdatePanelHasChildrenAsTriggers,asyncPostBackControlIDs: newAsyncPostBackControlIDs,asyncPostBackControlClientIDs: newAsyncPostBackControlClientIDs,postBackControlIDs: newPostBackControlIDs,postBackControlClientIDs: newPostBackControlClientIDs
};}
function Sys$WebForms$PageRequestManager$_queueScripts(scriptLoader,scriptBlockNodes,queueIncludes,queueBlocks){for (var i = 0,l = scriptBlockNodes.length;i < l;i++){var scriptBlockType = scriptBlockNodes[i].id;switch (scriptBlockType){case "ScriptContentNoTags":
if (!queueBlocks){continue;}
scriptLoader.queueScriptBlock(scriptBlockNodes[i].content);break;case "ScriptContentWithTags":
var scriptTagAttributes;eval("scriptTagAttributes = " + scriptBlockNodes[i].content);if (scriptTagAttributes.src){if (!queueIncludes || Sys._ScriptLoader.isScriptLoaded(scriptTagAttributes.src)){continue;}
}
else if (!queueBlocks){continue;}
scriptLoader.queueCustomScriptTag(scriptTagAttributes);break;case "ScriptPath":
if (!queueIncludes || Sys._ScriptLoader.isScriptLoaded(scriptBlockNodes[i].content)){continue;}
scriptLoader.queueScriptReference(scriptBlockNodes[i].content);break;}
}
}
function Sys$WebForms$PageRequestManager$_registerDisposeScript(panelID,disposeScript){if (!this._scriptDisposes[panelID]){this._scriptDisposes[panelID] = [disposeScript];}
else{Array.add(this._scriptDisposes[panelID],disposeScript);}
}
function Sys$WebForms$PageRequestManager$_scriptIncludesLoadComplete(scriptLoader,data){if (data.executor.get_webRequest() !== this._request){return;}
this._commitControls(data.updatePanelData,data.asyncPostBackTimeoutNode ? data.asyncPostBackTimeoutNode.content : null);if (data.formActionNode){this._form.action = data.formActionNode.content;}
var i,l,node;for (i = 0,l = data.updatePanelNodes.length;i < l;i++){node = data.updatePanelNodes[i];var updatePanelElement = document.getElementById(node.id);if (!updatePanelElement){this._endPostBack(Error.invalidOperation(String.format(Sys.WebForms.Res.PRM_MissingPanel,node.id)),data.executor,data);return;}
this._updatePanel(updatePanelElement,node.content);}
for (i = 0,l = data.scriptDisposeNodes.length;i < l;i++){node = data.scriptDisposeNodes[i];this._registerDisposeScript(node.id,node.content);}
for (i = 0,l = this._transientFields.length;i < l;i++){var field = document.getElementById(this._transientFields[i]);if (field){var toRemove = field._isContained ? field.parentNode : field;toRemove.parentNode.removeChild(toRemove);}
}
for (i = 0,l = data.hiddenFieldNodes.length;i < l;i++){node = data.hiddenFieldNodes[i];this._createHiddenField(node.id,node.content);}
if (data.scriptsFailed){throw Sys._ScriptLoader._errorScriptLoadFailed(data.scriptsFailed.src,data.scriptsFailed.multipleCallbacks);}
this._queueScripts(scriptLoader,data.scriptBlockNodes,false,true);var arrayScript = '';for (i = 0,l = data.arrayDeclarationNodes.length;i < l;i++){node = data.arrayDeclarationNodes[i];arrayScript += "Sys.WebForms.PageRequestManager._addArrayElement('" + node.id + "'," + node.content + ");\r\n";}
var expandoScript = '';for (i = 0,l = data.expandoNodes.length;i < l;i++){node = data.expandoNodes[i];expandoScript += node.id + " = " + node.content + "\r\n";}
if (arrayScript.length){scriptLoader.queueScriptBlock(arrayScript);}
if (expandoScript.length){scriptLoader.queueScriptBlock(expandoScript);}
this._queueScripts(scriptLoader,data.scriptStartupNodes,true,true);var onSubmitStatementScript = '';for (i = 0,l = data.onSubmitNodes.length;i < l;i++){if (i === 0){onSubmitStatementScript = 'Array.add(Sys.WebForms.PageRequestManager.getInstance()._onSubmitStatements,function(){\r\n';}
onSubmitStatementScript += data.onSubmitNodes[i].content + "\r\n";}
if (onSubmitStatementScript.length){onSubmitStatementScript += "\r\nreturn true;\r\n});\r\n";scriptLoader.queueScriptBlock(onSubmitStatementScript);}
scriptLoader.loadScripts(0,Function.createDelegate(this,Function.createCallback(this._scriptsLoadComplete,data)),null,null);}
function Sys$WebForms$PageRequestManager$_scriptIncludesLoadFailed(scriptLoader,scriptElement,multipleCallbacks,data){data.scriptsFailed ={src: scriptElement.src,multipleCallbacks: multipleCallbacks };this._scriptIncludesLoadComplete(scriptLoader,data);}
function Sys$WebForms$PageRequestManager$_scriptsLoadComplete(scriptLoader,data){var response = data.executor;if (window.__theFormPostData){window.__theFormPostData = "";}
if (window.__theFormPostCollection){window.__theFormPostCollection = [];}
if (window.WebForm_InitCallback){window.WebForm_InitCallback();}
if (this._scrollPosition){if (window.scrollTo){window.scrollTo(this._scrollPosition.x,this._scrollPosition.y);}
this._scrollPosition = null;}
Sys.Application.endCreateComponents();this._pageLoaded(false,data);this._endPostBack(null,response,data);if (this._controlIDToFocus){var focusTarget;var oldContentEditableSetting;if (Sys.Browser.agent === Sys.Browser.InternetExplorer){var targetControl = $get(this._controlIDToFocus);focusTarget = targetControl;if (targetControl && (!WebForm_CanFocus(targetControl))){focusTarget = WebForm_FindFirstFocusableChild(targetControl);}
if (focusTarget && (typeof(focusTarget.contentEditable) !== "undefined")){oldContentEditableSetting = focusTarget.contentEditable;focusTarget.contentEditable = false;}
else{focusTarget = null;}
}
WebForm_AutoFocus(this._controlIDToFocus);if (focusTarget){focusTarget.contentEditable = oldContentEditableSetting;}
this._controlIDToFocus = null;}
}
function Sys$WebForms$PageRequestManager$_splitNodeIntoArray(node){var str = node.content;var arr = str.length ? str.split(',') : [];return arr;}
function Sys$WebForms$PageRequestManager$_uniqueIDToClientID(uniqueID){return uniqueID.replace(/\$/g,'_');}
function Sys$WebForms$PageRequestManager$_updateControls(updatePanelIDs,asyncPostBackControlIDs,postBackControlIDs,asyncPostBackTimeout){this._commitControls(
this._processUpdatePanelArrays(updatePanelIDs,asyncPostBackControlIDs,postBackControlIDs),asyncPostBackTimeout);}
function Sys$WebForms$PageRequestManager$_updatePanel(updatePanelElement,rendering){for (var updatePanelID in this._scriptDisposes){if (this._elementContains(updatePanelElement,document.getElementById(updatePanelID))){var disposeScripts = this._scriptDisposes[updatePanelID];for (var i = 0,l = disposeScripts.length;i < l;i++){eval(disposeScripts[i]);}
delete this._scriptDisposes[updatePanelID];}
}
this._destroyTree(updatePanelElement);updatePanelElement.innerHTML = rendering;}
function Sys$WebForms$PageRequestManager$_validPosition(position){return (typeof(position) !== "undefined") && (position !== null) && (position !== 0);}
Sys.WebForms.PageRequestManager.prototype ={_get_eventHandlerList: Sys$WebForms$PageRequestManager$_get_eventHandlerList,get_isInAsyncPostBack: Sys$WebForms$PageRequestManager$get_isInAsyncPostBack,add_beginRequest: Sys$WebForms$PageRequestManager$add_beginRequest,remove_beginRequest: Sys$WebForms$PageRequestManager$remove_beginRequest,add_endRequest: Sys$WebForms$PageRequestManager$add_endRequest,remove_endRequest: Sys$WebForms$PageRequestManager$remove_endRequest,add_initializeRequest: Sys$WebForms$PageRequestManager$add_initializeRequest,remove_initializeRequest: Sys$WebForms$PageRequestManager$remove_initializeRequest,add_pageLoaded: Sys$WebForms$PageRequestManager$add_pageLoaded,remove_pageLoaded: Sys$WebForms$PageRequestManager$remove_pageLoaded,add_pageLoading: Sys$WebForms$PageRequestManager$add_pageLoading,remove_pageLoading: Sys$WebForms$PageRequestManager$remove_pageLoading,abortPostBack: Sys$WebForms$PageRequestManager$abortPostBack,_cancelPendingCallbacks: Sys$WebForms$PageRequestManager$_cancelPendingCallbacks,_commitControls: Sys$WebForms$PageRequestManager$_commitControls,_createHiddenField: Sys$WebForms$PageRequestManager$_createHiddenField,_createPageRequestManagerTimeoutError: Sys$WebForms$PageRequestManager$_createPageRequestManagerTimeoutError,_createPageRequestManagerServerError: Sys$WebForms$PageRequestManager$_createPageRequestManagerServerError,_createPageRequestManagerParserError: Sys$WebForms$PageRequestManager$_createPageRequestManagerParserError,_createPostBackSettings: Sys$WebForms$PageRequestManager$_createPostBackSettings,_convertToClientIDs: Sys$WebForms$PageRequestManager$_convertToClientIDs,_destroyTree: Sys$WebForms$PageRequestManager$_destroyTree,dispose: Sys$WebForms$PageRequestManager$dispose,_doCallback: Sys$WebForms$PageRequestManager$_doCallback,_doPostBack: Sys$WebForms$PageRequestManager$_doPostBack,_doPostBackWithOptions: Sys$WebForms$PageRequestManager$_doPostBackWithOptions,_elementContains: Sys$WebForms$PageRequestManager$_elementContains,_endPostBack: Sys$WebForms$PageRequestManager$_endPostBack,_findNearestElement: Sys$WebForms$PageRequestManager$_findNearestElement,_findText: Sys$WebForms$PageRequestManager$_findText,_fireDefaultButton: Sys$WebForms$PageRequestManager$_fireDefaultButton,_getPageLoadedEventArgs: Sys$WebForms$PageRequestManager$_getPageLoadedEventArgs,_getPageLoadingEventArgs: Sys$WebForms$PageRequestManager$_getPageLoadingEventArgs,_getPostBackSettings: Sys$WebForms$PageRequestManager$_getPostBackSettings,_getScrollPosition: Sys$WebForms$PageRequestManager$_getScrollPosition,_initializeInternal: Sys$WebForms$PageRequestManager$_initializeInternal,_matchesParentIDInList: Sys$WebForms$PageRequestManager$_matchesParentIDInList,_onFormElementActive: Sys$WebForms$PageRequestManager$_onFormElementActive,_onFormElementClick: Sys$WebForms$PageRequestManager$_onFormElementClick,_onFormSubmit: Sys$WebForms$PageRequestManager$_onFormSubmit,_onFormSubmitCompleted: Sys$WebForms$PageRequestManager$_onFormSubmitCompleted,_onWindowUnload: Sys$WebForms$PageRequestManager$_onWindowUnload,_pageLoaded: Sys$WebForms$PageRequestManager$_pageLoaded,_pageLoadedInitialLoad: Sys$WebForms$PageRequestManager$_pageLoadedInitialLoad,_parseDelta: Sys$WebForms$PageRequestManager$_parseDelta,_processUpdatePanelArrays: Sys$WebForms$PageRequestManager$_processUpdatePanelArrays,_queueScripts: Sys$WebForms$PageRequestManager$_queueScripts,_registerDisposeScript: Sys$WebForms$PageRequestManager$_registerDisposeScript,_scriptIncludesLoadComplete: Sys$WebForms$PageRequestManager$_scriptIncludesLoadComplete,_scriptIncludesLoadFailed: Sys$WebForms$PageRequestManager$_scriptIncludesLoadFailed,_scriptsLoadComplete: Sys$WebForms$PageRequestManager$_scriptsLoadComplete,_splitNodeIntoArray: Sys$WebForms$PageRequestManager$_splitNodeIntoArray,_uniqueIDToClientID: Sys$WebForms$PageRequestManager$_uniqueIDToClientID,_updateControls: Sys$WebForms$PageRequestManager$_updateControls,_updatePanel: Sys$WebForms$PageRequestManager$_updatePanel,_validPosition: Sys$WebForms$PageRequestManager$_validPosition
}
Sys.WebForms.PageRequestManager.getInstance = function Sys$WebForms$PageRequestManager$getInstance(){if (arguments.length !== 0) throw Error.parameterCount();var prm = Sys.WebForms.PageRequestManager._instance;if (!prm){prm = Sys.WebForms.PageRequestManager._instance = new Sys.WebForms.PageRequestManager();}
return prm;}
Sys.WebForms.PageRequestManager._addArrayElement = function Sys$WebForms$PageRequestManager$_addArrayElement(arrayName){if (!window[arrayName]){window[arrayName] = new Array();}
for (var i = 1,l = arguments.length;i < l;i++){Array.add(window[arrayName],arguments[i]);}
}
Sys.WebForms.PageRequestManager._initialize = function Sys$WebForms$PageRequestManager$_initialize(scriptManagerID,formElement){Sys.WebForms.PageRequestManager.getInstance()._initializeInternal(scriptManagerID,formElement);}
Sys.WebForms.PageRequestManager.registerClass('Sys.WebForms.PageRequestManager');Sys.UI._UpdateProgress = function Sys$UI$_UpdateProgress(element){Sys.UI._UpdateProgress.initializeBase(this,[element]);this._displayAfter = 500;this._dynamicLayout = true;this._associatedUpdatePanelId = null;this._beginRequestHandlerDelegate = null;this._startDelegate = null;this._endRequestHandlerDelegate = null;this._pageRequestManager = null;this._timerCookie = null;}
function Sys$UI$_UpdateProgress$get_displayAfter(){if (arguments.length !== 0) throw Error.parameterCount();return this._displayAfter;}
function Sys$UI$_UpdateProgress$set_displayAfter(value){var e = Function._validateParams(arguments,[{name: "value",type: Number}]);if (e) throw e;this._displayAfter = value;}
function Sys$UI$_UpdateProgress$get_dynamicLayout(){if (arguments.length !== 0) throw Error.parameterCount();return this._dynamicLayout;}
function Sys$UI$_UpdateProgress$set_dynamicLayout(value){var e = Function._validateParams(arguments,[{name: "value",type: Boolean}]);if (e) throw e;this._dynamicLayout = value;}
function Sys$UI$_UpdateProgress$get_associatedUpdatePanelId(){if (arguments.length !== 0) throw Error.parameterCount();return this._associatedUpdatePanelId;}
function Sys$UI$_UpdateProgress$set_associatedUpdatePanelId(value){var e = Function._validateParams(arguments,[{name: "value",type: String,mayBeNull: true}]);if (e) throw e;this._associatedUpdatePanelId = value;}
function Sys$UI$_UpdateProgress$_clearTimeout(){if (this._timerCookie){window.clearTimeout(this._timerCookie);this._timerCookie = null;}
}
function Sys$UI$_UpdateProgress$_handleBeginRequest(sender,arg){var curElem = arg.get_postBackElement();var showProgress = !this._associatedUpdatePanelId;while (!showProgress && curElem){if (curElem.id && this._associatedUpdatePanelId === curElem.id){showProgress = true;}
curElem = curElem.parentNode;}
if (showProgress){this._timerCookie = window.setTimeout(this._startDelegate,this._displayAfter);}
}
function Sys$UI$_UpdateProgress$_startRequest(){if (this._pageRequestManager.get_isInAsyncPostBack()){if (this._dynamicLayout) this.get_element().style.display = 'block';else this.get_element().style.visibility = 'visible';}
this._timerCookie = null;}
function Sys$UI$_UpdateProgress$_handleEndRequest(sender,arg){if (this._dynamicLayout) this.get_element().style.display = 'none';else this.get_element().style.visibility = 'hidden';this._clearTimeout();}
function Sys$UI$_UpdateProgress$dispose(){if (this._beginRequestHandlerDelegate !== null){this._pageRequestManager.remove_beginRequest(this._beginRequestHandlerDelegate);this._pageRequestManager.remove_endRequest(this._endRequestHandlerDelegate);this._beginRequestHandlerDelegate = null;this._endRequestHandlerDelegate = null;}
this._clearTimeout();Sys.UI._UpdateProgress.callBaseMethod(this,"dispose");}
function Sys$UI$_UpdateProgress$initialize(){Sys.UI._UpdateProgress.callBaseMethod(this,'initialize');this._beginRequestHandlerDelegate = Function.createDelegate(this,this._handleBeginRequest);this._endRequestHandlerDelegate = Function.createDelegate(this,this._handleEndRequest);this._startDelegate = Function.createDelegate(this,this._startRequest);if (Sys.WebForms && Sys.WebForms.PageRequestManager){this._pageRequestManager = Sys.WebForms.PageRequestManager.getInstance();}
if (this._pageRequestManager !== null ){this._pageRequestManager.add_beginRequest(this._beginRequestHandlerDelegate);this._pageRequestManager.add_endRequest(this._endRequestHandlerDelegate);}
}
Sys.UI._UpdateProgress.prototype ={get_displayAfter: Sys$UI$_UpdateProgress$get_displayAfter,set_displayAfter: Sys$UI$_UpdateProgress$set_displayAfter,get_dynamicLayout: Sys$UI$_UpdateProgress$get_dynamicLayout,set_dynamicLayout: Sys$UI$_UpdateProgress$set_dynamicLayout,get_associatedUpdatePanelId: Sys$UI$_UpdateProgress$get_associatedUpdatePanelId,set_associatedUpdatePanelId: Sys$UI$_UpdateProgress$set_associatedUpdatePanelId,_clearTimeout: Sys$UI$_UpdateProgress$_clearTimeout,_handleBeginRequest: Sys$UI$_UpdateProgress$_handleBeginRequest,_startRequest: Sys$UI$_UpdateProgress$_startRequest,_handleEndRequest: Sys$UI$_UpdateProgress$_handleEndRequest,dispose: Sys$UI$_UpdateProgress$dispose,initialize: Sys$UI$_UpdateProgress$initialize
}
Sys.UI._UpdateProgress.registerClass('Sys.UI._UpdateProgress',Sys.UI.Control);Type.registerNamespace('Sys.WebForms');Sys.WebForms.Res={"PRM_MissingPanel":"Could not find UpdatePanel with ID \u0027{0}\u0027. If it is being updated dynamically then it must be inside another UpdatePanel.","PRM_ServerError":"An unknown error occurred while processing the request on the server. The status code returned from the server was:{0}","PRM_ParserError":"The message received from the server could not be parsed.","PRM_TimeoutError":"The server request timed out.","PRM_CannotRegisterTwice":"The PageRequestManager cannot be initialized more than once.","PRM_UnknownToken":"Unknown token: \u0027{0}\u0027.","PRM_MissingPanel":"Could not find UpdatePanel with ID \u0027{0}\u0027. If it is being updated dynamically then it must be inside another UpdatePanel.","PRM_ServerError":"An unknown error occurred while processing the request on the server. The status code returned from the server was:{0}","PRM_ParserError":"The message received from the server could not be parsed. Common causes for this error are when the response is modified by calls to Response.Write(),response filters,HttpModules,or server trace is enabled.\r\nDetails:{0}","PRM_TimeoutError":"The server request timed out.","PRM_ParserErrorDetails":"Error parsing near \u0027{0}\u0027.","PRM_CannotRegisterTwice":"The PageRequestManager cannot be initialized more than once."
};if(typeof(Sys)!=='undefined')Sys.Application.notifyScriptLoaded();