PageSourceSearch

https://nyccopperjohns.com/script/4sFx-H1XVVhf8a36wCGZnEVLLLUcDaQk…ffd202a464_js_eb6z4vuorcnpo4hiaptacd_axd.js

js nyccopperjohns.com collected 2026-09-29 14:26:43 UTC 100,053 bytes, 2,067 lines download raw bytes

1var _____WB$wombat$assign$function_____=function(name){return (self._wb_wombat && self._wb_wombat.local_init && self._wb_wombat.local_init(name))||self[name];};if(!self.__WB_pmw){self.__WB_pmw=function(obj){this.__WB_source=obj;return this;}}{
2let window = _____WB$wombat$assign$function_____("window");
3let self = _____WB$wombat$assign$function_____("self");
4let document = _____WB$wombat$assign$function_____("document");
5let location = _____WB$wombat$assign$function_____("location");
6let top = _____WB$wombat$assign$function_____("top");
7let parent = _____WB$wombat$assign$function_____("parent");
8let frames = _____WB$wombat$assign$function_____("frames");
9let opens = _____WB$wombat$assign$function_____("opens");
10// Name:        MicrosoftAjaxWebForms.debug.js
11// Assembly:    System.Web.Extensions
12// Version:     4.0.0.0
13// FileVersion: 4.8.4494.0
14//-----------------------------------------------------------------------
15// Copyright (C) Microsoft Corporation. All rights reserved.
16//-----------------------------------------------------------------------
17// MicrosoftAjaxWebForms.js
18// Microsoft AJAX ASP.NET WebForms Framework.
19Type._registerScript("MicrosoftAjaxWebForms.js", [
20	"MicrosoftAjaxCore.js",
21	"MicrosoftAjaxSerialization.js",
22	"MicrosoftAjaxNetwork.js",
23	"MicrosoftAjaxComponentModel.js"]);
24Type.registerNamespace('Sys.WebForms');
25Sys.WebForms.BeginRequestEventArgs = function Sys$WebForms$BeginRequestEventArgs(request, postBackElement, updatePanelsToUpdate) {
26    /// <summary locid="M:J#Sys.WebForms.BeginRequestEventArgs.#ctor" />
27    /// <param name="request" type="Sys.Net.WebRequest"></param>
28    /// <param name="postBackElement" domElement="true" mayBeNull="true"></param>
29    /// <param name="updatePanelsToUpdate" type="Array" elementType="String" mayBeNull="true" optional="true"></param>
30    var e = Function._validateParams(arguments, [
31        {name: "request", type: Sys.Net.WebRequest},
32        {name: "postBackElement", mayBeNull: true, domElement: true},
33        {name: "updatePanelsToUpdate", type: Array, mayBeNull: true, optional: true, elementType: String}
34    ]);
35    if (e) throw e;
36    Sys.WebForms.BeginRequestEventArgs.initializeBase(this);
37    this._request = request;
38    this._postBackElement = postBackElement;
39    this._updatePanelsToUpdate = updatePanelsToUpdate;
40}
41    function Sys$WebForms$BeginRequestEventArgs$get_postBackElement() {
42        /// <value domElement="true" mayBeNull="true" locid="P:J#Sys.WebForms.BeginRequestEventArgs.postBackElement"></value>
43        if (arguments.length !== 0) throw Error.parameterCount();
44        return this._postBackElement;
45    }
46    function Sys$WebForms$BeginRequestEventArgs$get_request() {
47        /// <value type="Sys.Net.WebRequest" locid="P:J#Sys.WebForms.BeginRequestEventArgs.request"></value>
48        if (arguments.length !== 0) throw Error.parameterCount();
49        return this._request;
50    }
51    function Sys$WebForms$BeginRequestEventArgs$get_updatePanelsToUpdate() {
52        /// <value type="Array" elementType="String" locid="P:J#Sys.WebForms.BeginRequestEventArgs.updatePanelsToUpdate"></value>
53        if (arguments.length !== 0) throw Error.parameterCount();
54        return this._updatePanelsToUpdate ? Array.clone(this._updatePanelsToUpdate) : [];
55    }
56Sys.WebForms.BeginRequestEventArgs.prototype = {
57    get_postBackElement: Sys$WebForms$BeginRequestEventArgs$get_postBackElement,
58    get_request: Sys$WebForms$BeginRequestEventArgs$get_request,
59    get_updatePanelsToUpdate: Sys$WebForms$BeginRequestEventArgs$get_updatePanelsToUpdate
60}
61Sys.WebForms.BeginRequestEventArgs.registerClass('Sys.WebForms.BeginRequestEventArgs', Sys.EventArgs);
62 
63Sys.WebForms.EndRequestEventArgs = function Sys$WebForms$EndRequestEventArgs(error, dataItems, response) {
64    /// <summary locid="M:J#Sys.WebForms.EndRequestEventArgs.#ctor" />
65    /// <param name="error" type="Error" mayBeNull="true"></param>
66    /// <param name="dataItems" type="Object" mayBeNull="true"></param>
67    /// <param name="response" type="Sys.Net.WebRequestExecutor"></param>
68    var e = Function._validateParams(arguments, [
69        {name: "error", type: Error, mayBeNull: true},
70        {name: "dataItems", type: Object, mayBeNull: true},
71        {name: "response", type: Sys.Net.WebRequestExecutor}
72    ]);
73    if (e) throw e;
74    Sys.WebForms.EndRequestEventArgs.initializeBase(this);
75    this._errorHandled = false;
76    this._error = error;
77    this._dataItems = dataItems || new Object();
78    this._response = response;
79}
80    function Sys$WebForms$EndRequestEventArgs$get_dataItems() {
81        /// <value type="Object" locid="P:J#Sys.WebForms.EndRequestEventArgs.dataItems"></value>
82        if (arguments.length !== 0) throw Error.parameterCount();
83        return this._dataItems;
84    }
85    function Sys$WebForms$EndRequestEventArgs$get_error() {
86        /// <value type="Error" locid="P:J#Sys.WebForms.EndRequestEventArgs.error"></value>
87        if (arguments.length !== 0) throw Error.parameterCount();
88        return this._error;
89    }
90    function Sys$WebForms$EndRequestEventArgs$get_errorHandled() {
91        /// <value type="Boolean" locid="P:J#Sys.WebForms.EndRequestEventArgs.errorHandled"></value>
92        if (arguments.length !== 0) throw Error.parameterCount();
93        return this._errorHandled;
94    }
95    function Sys$WebForms$EndRequestEventArgs$set_errorHandled(value) {
96        var e = Function._validateParams(arguments, [{name: "value", type: Boolean}]);
97        if (e) throw e;
98        this._errorHandled = value;
99    }
100    function Sys$WebForms$EndRequestEventArgs$get_response() {
101        /// <value type="Sys.Net.WebRequestExecutor" locid="P:J#Sys.WebForms.EndRequestEventArgs.response"></value>
102        if (arguments.length !== 0) throw Error.parameterCount();
103        return this._response;
104    }
105Sys.WebForms.EndRequestEventArgs.prototype = {
106    get_dataItems: Sys$WebForms$EndRequestEventArgs$get_dataItems,
107    get_error: Sys$WebForms$EndRequestEventArgs$get_error,
108    get_errorHandled: Sys$WebForms$EndRequestEventArgs$get_errorHandled,
109    set_errorHandled: Sys$WebForms$EndRequestEventArgs$set_errorHandled,
110    get_response: Sys$WebForms$EndRequestEventArgs$get_response
111}
112Sys.WebForms.EndRequestEventArgs.registerClass('Sys.WebForms.EndRequestEventArgs', Sys.EventArgs);
113Sys.WebForms.InitializeRequestEventArgs = function Sys$WebForms$InitializeRequestEventArgs(request, postBackElement, updatePanelsToUpdate) {
114    /// <summary locid="M:J#Sys.WebForms.InitializeRequestEventArgs.#ctor" />
115    /// <param name="request" type="Sys.Net.WebRequest"></param>
116    /// <param name="postBackElement" domElement="true" mayBeNull="true"></param>
117    /// <param name="updatePanelsToUpdate" type="Array" elementType="String" mayBeNull="true" optional="true"></param>
118    var e = Function._validateParams(arguments, [
119        {name: "request", type: Sys.Net.WebRequest},
120        {name: "postBackElement", mayBeNull: true, domElement: true},
121        {name: "updatePanelsToUpdate", type: Array, mayBeNull: true, optional: true, elementType: String}
122    ]);
123    if (e) throw e;
124    Sys.WebForms.InitializeRequestEventArgs.initializeBase(this);
125    this._request = request;
126    this._postBackElement = postBackElement;
127    this._updatePanelsToUpdate = updatePanelsToUpdate;
128}
129    function Sys$WebForms$InitializeRequestEventArgs$get_postBackElement() {
130        /// <value domElement="true" mayBeNull="true" locid="P:J#Sys.WebForms.InitializeRequestEventArgs.postBackElement"></value>
131        if (arguments.length !== 0) throw Error.parameterCount();
132        return this._postBackElement;
133    }
134    function Sys$WebForms$InitializeRequestEventArgs$get_request() {
135        /// <value type="Sys.Net.WebRequest" locid="P:J#Sys.WebForms.InitializeRequestEventArgs.request"></value>
136        if (arguments.length !== 0) throw Error.parameterCount();
137        return this._request;
138    }
139    function Sys$WebForms$InitializeRequestEventArgs$get_updatePanelsToUpdate() {
140        /// <value type="Array" elementType="String" locid="P:J#Sys.WebForms.InitializeRequestEventArgs.updatePanelsToUpdate"></value>
141        if (arguments.length !== 0) throw Error.parameterCount();
142        return this._updatePanelsToUpdate ? Array.clone(this._updatePanelsToUpdate) : [];
143    }
144    function Sys$WebForms$InitializeRequestEventArgs$set_updatePanelsToUpdate(value) {
145        var e = Function._validateParams(arguments, [{name: "value", type: Array, elementType: String}]);
146        if (e) throw e;
147        this._updated = true;
148        this._updatePanelsToUpdate = value;
149    }
150Sys.WebForms.InitializeRequestEventArgs.prototype = {
151    get_postBackElement: Sys$WebForms$InitializeRequestEventArgs$get_postBackElement,
152    get_request: Sys$WebForms$InitializeRequestEventArgs$get_request,
153    get_updatePanelsToUpdate: Sys$WebForms$InitializeRequestEventArgs$get_updatePanelsToUpdate,
154    set_updatePanelsToUpdate: Sys$WebForms$InitializeRequestEventArgs$set_updatePanelsToUpdate
155}
156Sys.WebForms.InitializeRequestEventArgs.registerClass('Sys.WebForms.InitializeRequestEventArgs', Sys.CancelEventArgs);
157 
158Sys.WebForms.PageLoadedEventArgs = function Sys$WebForms$PageLoadedEventArgs(panelsUpdated, panelsCreated, dataItems) {
159    /// <summary locid="M:J#Sys.WebForms.PageLoadedEventArgs.#ctor" />
160    /// <param name="panelsUpdated" type="Array"></param>
161    /// <param name="panelsCreated" type="Array"></param>
162    /// <param name="dataItems" type="Object" mayBeNull="true"></param>
163    var e = Function._validateParams(arguments, [
164        {name: "panelsUpdated", type: Array},
165        {name: "panelsCreated", type: Array},
166        {name: "dataItems", type: Object, mayBeNull: true}
167    ]);
168    if (e) throw e;
169    Sys.WebForms.PageLoadedEventArgs.initializeBase(this);
170    this._panelsUpdated = panelsUpdated;
171    this._panelsCreated = panelsCreated;
172    this._dataItems = dataItems || new Object();
173}
174    function Sys$WebForms$PageLoadedEventArgs$get_dataItems() {
175        /// <value type="Object" locid="P:J#Sys.WebForms.PageLoadedEventArgs.dataItems"></value>
176        if (arguments.length !== 0) throw Error.parameterCount();
177        return this._dataItems;
178    }
179    function Sys$WebForms$PageLoadedEventArgs$get_panelsCreated() {
180        /// <value type="Array" locid="P:J#Sys.WebForms.PageLoadedEventArgs.panelsCreated"></value>
181        if (arguments.length !== 0) throw Error.parameterCount();
182        return this._panelsCreated;
183    }
184    function Sys$WebForms$PageLoadedEventArgs$get_panelsUpdated() {
185        /// <value type="Array" locid="P:J#Sys.WebForms.PageLoadedEventArgs.panelsUpdated"></value>
186        if (arguments.length !== 0) throw Error.parameterCount();
187        return this._panelsUpdated;
188    }
189Sys.WebForms.PageLoadedEventArgs.prototype = {
190    get_dataItems: Sys$WebForms$PageLoadedEventArgs$get_dataItems,
191    get_panelsCreated: Sys$WebForms$PageLoadedEventArgs$get_panelsCreated,
192    get_panelsUpdated: Sys$WebForms$PageLoadedEventArgs$get_panelsUpdated
193}
194Sys.WebForms.PageLoadedEventArgs.registerClass('Sys.WebForms.PageLoadedEventArgs', Sys.EventArgs);
195Sys.WebForms.PageLoadingEventArgs = function Sys$WebForms$PageLoadingEventArgs(panelsUpdating, panelsDeleting, dataItems) {
196    /// <summary locid="M:J#Sys.WebForms.PageLoadingEventArgs.#ctor" />
197    /// <param name="panelsUpdating" type="Array"></param>
198    /// <param name="panelsDeleting" type="Array"></param>
199    /// <param name="dataItems" type="Object" mayBeNull="true"></param>
200    var e = Function._validateParams(arguments, [
201        {name: "panelsUpdating", type: Array},
202        {name: "panelsDeleting", type: Array},
203        {name: "dataItems", type: Object, mayBeNull: true}
204    ]);
205    if (e) throw e;
206    Sys.WebForms.PageLoadingEventArgs.initializeBase(this);
207    this._panelsUpdating = panelsUpdating;
208    this._panelsDeleting = panelsDeleting;
209    this._dataItems = dataItems || new Object();
210}
211    function Sys$WebForms$PageLoadingEventArgs$get_dataItems() {
212        /// <value type="Object" locid="P:J#Sys.WebForms.PageLoadingEventArgs.dataItems"></value>
213        if (arguments.length !== 0) throw Error.parameterCount();
214        return this._dataItems;
215    }
216    function Sys$WebForms$PageLoadingEventArgs$get_panelsDeleting() {
217        /// <value type="Array" locid="P:J#Sys.WebForms.PageLoadingEventArgs.panelsDeleting"></value>
218        if (arguments.length !== 0) throw Error.parameterCount();
219        return this._panelsDeleting;
220    }
221    function Sys$WebForms$PageLoadingEventArgs$get_panelsUpdating() {
222        /// <value type="Array" locid="P:J#Sys.WebForms.PageLoadingEventArgs.panelsUpdating"></value>
223        if (arguments.length !== 0) throw Error.parameterCount();
224        return this._panelsUpdating;
225    }
226Sys.WebForms.PageLoadingEventArgs.prototype = {
227    get_dataItems: Sys$WebForms$PageLoadingEventArgs$get_dataItems,
228    get_panelsDeleting: Sys$WebForms$PageLoadingEventArgs$get_panelsDeleting,
229    get_panelsUpdating: Sys$WebForms$PageLoadingEventArgs$get_panelsUpdating
230}
231Sys.WebForms.PageLoadingEventArgs.registerClass('Sys.WebForms.PageLoadingEventArgs', Sys.EventArgs);
232 
233Sys._ScriptLoader = function Sys$_ScriptLoader() {
234    this._scriptsToLoad = null;
235    this._sessions = [];
236    this._scriptLoadedDelegate = Function.createDelegate(this, this._scriptLoadedHandler);
237}
238    function Sys$_ScriptLoader$dispose() {
239        this._stopSession();
240        this._loading = false;
241        if(this._events) {
242            delete this._events;
243        }
244        this._sessions = null;
245        this._currentSession = null;
246        this._scriptLoadedDelegate = null;        
247    }
248    function Sys$_ScriptLoader$loadScripts(scriptTimeout, allScriptsLoadedCallback, scriptLoadFailedCallback, scriptLoadTimeoutCallback) {
249        /// <summary locid="M:J#Sys._ScriptLoader.loadScripts" />
250        /// <param name="scriptTimeout" type="Number" integer="true"></param>
251        /// <param name="allScriptsLoadedCallback" type="Function" mayBeNull="true"></param>
252        /// <param name="scriptLoadFailedCallback" type="Function" mayBeNull="true"></param>
253        /// <param name="scriptLoadTimeoutCallback" type="Function" mayBeNull="true"></param>
254        var e = Function._validateParams(arguments, [
255            {name: "scriptTimeout", type: Number, integer: true},
256            {name: "allScriptsLoadedCallback", type: Function, mayBeNull: true},
257            {name: "scriptLoadFailedCallback", type: Function, mayBeNull: true},
258            {name: "scriptLoadTimeoutCallback", type: Function, mayBeNull: true}
259        ]);
260        if (e) throw e;
261        var session = {
262            allScriptsLoadedCallback: allScriptsLoadedCallback,
263            scriptLoadFailedCallback: scriptLoadFailedCallback,
264            scriptLoadTimeoutCallback: scriptLoadTimeoutCallback,
265            scriptsToLoad: this._scriptsToLoad,
266            scriptTimeout: scriptTimeout };
267        this._scriptsToLoad = null;
268        this._sessions[this._sessions.length] = session;
269        
270        if (!this._loading) {
271            this._nextSession();
272        }
273    }
274    function Sys$_ScriptLoader$queueCustomScriptTag(scriptAttributes) {
275        /// <summary locid="M:J#Sys._ScriptLoader.queueCustomScriptTag" />
276        /// <param name="scriptAttributes" mayBeNull="false"></param>
277        var e = Function._validateParams(arguments, [
278            {name: "scriptAttributes"}
279        ]);
280        if (e) throw e;
281        if(!this._scriptsToLoad) {
282            this._scriptsToLoad = [];
283        }
284        Array.add(this._scriptsToLoad, scriptAttributes);
285    }
286    function Sys$_ScriptLoader$queueScriptBlock(scriptContent) {
287        /// <summary locid="M:J#Sys._ScriptLoader.queueScriptBlock" />
288        /// <param name="scriptContent" type="String" mayBeNull="false"></param>
289        var e = Function._validateParams(arguments, [
290            {name: "scriptContent", type: String}
291        ]);
292        if (e) throw e;
293        if(!this._scriptsToLoad) {
294            this._scriptsToLoad = [];
295        }
296        Array.add(this._scriptsToLoad, {text: scriptContent});
297    }
298    function Sys$_ScriptLoader$queueScriptReference(scriptUrl, fallback) {
299        /// <summary locid="M:J#Sys._ScriptLoader.queueScriptReference" />
300        /// <param name="scriptUrl" type="String" mayBeNull="false"></param>
301        /// <param name="fallback" mayBeNull="true" optional="true"></param>
302        var e = Function._validateParams(arguments, [
303            {name: "scriptUrl", type: String},
304            {name: "fallback", mayBeNull: true, optional: true}
305        ]);
306        if (e) throw e;
307        if(!this._scriptsToLoad) {
308            this._scriptsToLoad = [];
309        }
310        Array.add(this._scriptsToLoad, {src: scriptUrl, fallback: fallback});
311    }
312    function Sys$_ScriptLoader$_createScriptElement(queuedScript) {
313        var scriptElement = document.createElement('script');
314        scriptElement.type = 'text/javascript';
315        for (var attr in queuedScript) {
316            scriptElement[attr] = queuedScript[attr];
317        }
318        
319        return scriptElement;
320    }
321    function Sys$_ScriptLoader$_loadScriptsInternal() {
322        var session = this._currentSession;
323        if (session.scriptsToLoad && session.scriptsToLoad.length > 0) {
324            var nextScript = Array.dequeue(session.scriptsToLoad);
325            var onLoad = this._scriptLoadedDelegate;
326            if (nextScript.fallback) {
327                var fallback = nextScript.fallback;
328                delete nextScript.fallback;
329                
330                var self = this;
331                onLoad = function(scriptElement, loaded) {
332                    loaded || (function() {
333                        var fallbackScriptElement = self._createScriptElement({src: fallback});
334                        self._currentTask = new Sys._ScriptLoaderTask(fallbackScriptElement, self._scriptLoadedDelegate);
335                        self._currentTask.execute();
336                    })();
337                };
338            }            
339            var scriptElement = this._createScriptElement(nextScript);
340            
341            if (scriptElement.text && Sys.Browser.agent === Sys.Browser.Safari) {
342                scriptElement.innerHTML = scriptElement.text;
343                delete scriptElement.text;
344            }            
345            if (typeof(nextScript.src) === "string") {
346                this._currentTask = new Sys._ScriptLoaderTask(scriptElement, onLoad);
347                this._currentTask.execute();
348            }
349            else {
350                var headElements = document.getElementsByTagName('head');
351                if (headElements.length === 0) {
352                     throw new Error.invalidOperation(Sys.Res.scriptLoadFailedNoHead);
353                }
354                else {
355                     headElements[0].appendChild(scriptElement);
356                }
357                
358                
359                Sys._ScriptLoaderTask._clearScript(scriptElement);
360                this._loadScriptsInternal();
361            }
362        }
363        else {
364            this._stopSession();
365            var callback = session.allScriptsLoadedCallback;
366            if(callback) {
367                callback(this);
368            }
369            this._nextSession();
370        }
371    }
372    function Sys$_ScriptLoader$_nextSession() {
373        if (this._sessions.length === 0) {
374            this._loading = false;
375            this._currentSession = null;
376            return;
377        }
378        this._loading = true;
379        
380        var session = Array.dequeue(this._sessions);
381        this._currentSession = session;
382        this._loadScriptsInternal();
383    }
384    function Sys$_ScriptLoader$_raiseError() {
385        var callback = this._currentSession.scriptLoadFailedCallback;
386        var scriptElement = this._currentTask.get_scriptElement();
387        this._stopSession();
388        
389        if(callback) {
390            callback(this, scriptElement);
391            this._nextSession();
392        }
393        else {
394            this._loading = false;
395            throw Sys._ScriptLoader._errorScriptLoadFailed(scriptElement.src);
396        }
397    }
398    function Sys$_ScriptLoader$_scriptLoadedHandler(scriptElement, loaded) {
399        if (loaded) {
400            Array.add(Sys._ScriptLoader._getLoadedScripts(), scriptElement.src);
401            this._currentTask.dispose();
402            this._currentTask = null;
403            this._loadScriptsInternal();
404        }
405        else {
406            this._raiseError();
407        }
408    }
409    function Sys$_ScriptLoader$_stopSession() {
410        if(this._currentTask) {
411            this._currentTask.dispose();
412            this._currentTask = null;
413        }
414    }
415Sys._ScriptLoader.prototype = {
416    dispose: Sys$_ScriptLoader$dispose,
417    loadScripts: Sys$_ScriptLoader$loadScripts,
418    queueCustomScriptTag: Sys$_ScriptLoader$queueCustomScriptTag,
419    queueScriptBlock: Sys$_ScriptLoader$queueScriptBlock,
420    queueScriptReference: Sys$_ScriptLoader$queueScriptReference,
421    _createScriptElement: Sys$_ScriptLoader$_createScriptElement,
422    _loadScriptsInternal: Sys$_ScriptLoader$_loadScriptsInternal,
423    _nextSession: Sys$_ScriptLoader$_nextSession,
424    _raiseError: Sys$_ScriptLoader$_raiseError,
425    _scriptLoadedHandler: Sys$_ScriptLoader$_scriptLoadedHandler,
426    _stopSession: Sys$_ScriptLoader$_stopSession    
427}
428Sys._ScriptLoader.registerClass('Sys._ScriptLoader', null, Sys.IDisposable);
429Sys._ScriptLoader.getInstance = function Sys$_ScriptLoader$getInstance() {
430    var sl = Sys._ScriptLoader._activeInstance;
431    if(!sl) {
432        sl = Sys._ScriptLoader._activeInstance = new Sys._ScriptLoader();
433    }
434    return sl;
435}
436Sys._ScriptLoader.isScriptLoaded = function Sys$_ScriptLoader$isScriptLoaded(scriptSrc) {
437    var dummyScript = document.createElement('script');
438    dummyScript.src = scriptSrc;
439    return Array.contains(Sys._ScriptLoader._getLoadedScripts(), dummyScript.src);
440}
441Sys._ScriptLoader.readLoadedScripts = function Sys$_ScriptLoader$readLoadedScripts() {
442    if(!Sys._ScriptLoader._referencedScripts) {
443        var referencedScripts = Sys._ScriptLoader._referencedScripts = [];
444        var existingScripts = document.getElementsByTagName('script');
445        for (var i = existingScripts.length - 1; i >= 0; i--) {
446            var scriptNode = existingScripts[i];
447            var scriptSrc = scriptNode.src;
448            if (scriptSrc.length) {
449                if (!Array.contains(referencedScripts, scriptSrc)) {
450                    Array.add(referencedScripts, scriptSrc);
451                }
452            }
453        }
454    }
455}
456Sys._ScriptLoader._errorScriptLoadFailed = function Sys$_ScriptLoader$_errorScriptLoadFailed(scriptUrl) {
457    var errorMessage;
458    errorMessage = Sys.Res.scriptLoadFailedDebug;
459    var displayMessage = "Sys.ScriptLoadFailedException: " + String.format(errorMessage, scriptUrl);
460    var e = Error.create(displayMessage, {name: 'Sys.ScriptLoadFailedException', 'scriptUrl': scriptUrl });
461    e.popStackFrame();
462    return e;
463}
464Sys._ScriptLoader._getLoadedScripts = function Sys$_ScriptLoader$_getL
464oadedScripts() {
465    if(!Sys._ScriptLoader._referencedScripts) {
466        Sys._ScriptLoader._referencedScripts = [];
467        Sys._ScriptLoader.readLoadedScripts();
468    }
469    return Sys._ScriptLoader._referencedScripts;
470}
471 
472Sys.WebForms.PageRequestManager = function Sys$WebForms$PageRequestManager() {
473    this._form = null;
474    this._activeDefaultButton = null;
475    this._activeDefaultButtonClicked = false;
476    this._updatePanelIDs = null;
477    this._updatePanelClientIDs = null;
478    this._updatePanelHasChildrenAsTriggers = null;
479    this._asyncPostBackControlIDs = null;
480    this._asyncPostBackControlClientIDs = null;
481    this._postBackControlIDs = null;
482    this._postBackControlClientIDs = null;
483    this._scriptManagerID = null;
484    this._pageLoadedHandler = null;
485    this._additionalInput = null;
486    this._onsubmit = null;
487    this._onSubmitStatements = [];
488    this._originalDoPostBack = null;
489    this._originalDoPostBackWithOptions = null;
490    this._originalFireDefaultButton = null;
491    this._originalDoCallback = null;
492    this._isCrossPost = false;
493    this._postBackSettings = null;
494    this._request = null;
495    this._onFormSubmitHandler = null;
496    this._onFormElementClickHandler = null;
497    this._onWindowUnloadHandler = null;
498    this._asyncPostBackTimeout = null;
499    this._controlIDToFocus = null;
500    this._scrollPosition = null;
501    this._processingRequest = false;
502    this._scriptDisposes = {};
503    
504    this._transientFields = ["__VIEWSTATEENCRYPTED", "__VIEWSTATEFIELDCOUNT"];
505    this._textTypes = /^(text|password|hidden|search|tel|url|email|number|range|c
505olor|datetime|date|month|week|time|datetime-local)$/i;
506}
507    function Sys$WebForms$PageRequestManager$_get_eventHandlerList() {
508        if (!this._events) {
509            this._events = new Sys.EventHandlerList();
510        }
511        return this._events;
512    }
513    function Sys$WebForms$PageRequestManager$get_isInAsyncPostBack() {
514        /// <value type="Boolean" locid="P:J#Sys.WebForms.PageRequestManager.isInAsyncPostBack"></value>
515        if (arguments.length !== 0) throw Error.parameterCount();
516        return this._request !== null;
517    }
518    function Sys$WebForms$PageRequestManager$add_beginRequest(handler) {
519        /// <summary locid="E:J#Sys.WebForms.PageRequestManager.beginRequest" />
520        var e = Function._validateParams(arguments, [{name: "handler", type: Function}]);
521        if (e) throw e;
522        this._get_eventHandlerList().addHandler("beginRequest", handler);
523    }
524    function Sys$WebForms$PageRequestManager$remove_beginRequest(handler) {
525        var e = Function._validateParams(arguments, [{name: "handler", type: Function}]);
526        if (e) throw e;
527        this._get_eventHandlerList().removeHandler("beginRequest", handler);
528    }
529    function Sys$WebForms$PageRequestManager$add_endRequest(handler) {
530        /// <summary locid="E:J#Sys.WebForms.PageRequestManager.endRequest" />
531        var e = Function._validateParams(arguments, [{name: "handler", type: Function}]);
532        if (e) throw e;
533        this._get_eventHandlerList().addHandler("endRequest", handler);
534    }
535    function Sys$WebForms$PageRequestManager$remove_endRequest(handler) {
536        var e = Function._validateParams(arguments, [{name: "handler", type: Function}]);
537        if (e) throw e;
538        this._get_eventHandlerList().removeHandler("endRequest", handler);
539    }
540    function Sys$WebForms$PageRequestManager$add_initializeRequest(handler) {
541        /// <summary locid="E:J#Sys.WebForms.PageRequestManager.initializeRequest" />
542        var e = Function._validateParams(arguments, [{name: "handler", type: Function}]);
543        if (e) throw e;
544        this._get_eventHandlerList().addHandler("initializeRequest", handler);
545    }
546    function Sys$WebForms$PageRequestManager$remove_initializeRequest(handler) {
547        var e = Function._validateParams(arguments, [{name: "handler", type: Function}]);
548        if (e) throw e;
549        this._get_eventHandlerList().removeHandler("initializeRequest", handler);
550    }
551    function Sys$WebForms$PageRequestManager$add_pageLoaded(handler) {
552        /// <summary locid="E:J#Sys.WebForms.PageRequestManager.pageLoaded" />
553        var e = Function._validateParams(arguments, [{name: "handler", type: Function}]);
554        if (e) throw e;
555        this._get_eventHandlerList().addHandler("pageLoaded", handler);
556    }
557    function Sys$WebForms$PageRequestManager$remove_pageLoaded(handler) {
558        var e = Function._validateParams(arguments, [{name: "handler", type: Function}]);
559        if (e) throw e;
560        this._get_eventHandlerList().removeHandler("pageLoaded", handler);
561    }
562    function Sys$WebForms$PageRequestManager$add_pageLoading(handler) {
563        /// <summary locid="E:J#Sys.WebForms.PageRequestManager.pageLoading" />
564        var e = Function._validateParams(arguments, [{name: "handler", type: Function}]);
565        if (e) throw e;
566        this._get_eventHandlerList().addHandler("pageLoading", handler);
567    }
568    function Sys$WebForms$PageRequestManager$remove_pageLoading(handler) {
569        var e = Function._validateParams(arguments, [{name: "handler", type: Function}]);
570        if (e) throw e;
571        this._get_eventHandlerList().removeHandler("pageLoading", handler);
572    }
573    function Sys$WebForms$PageRequestManager$abortPostBack() {
574        if (!this._processingRequest && this._request) {
575            this._request.get_executor().abort();
576            this._request = null;
577        }
578    }
579    function Sys$WebForms$PageRequestManager$beginAsyncPostBack(updatePanelsToUpdate, eventTarget, eventArgument, causesValidation, validationGroup) {
580        /// <summary locid="M:J#Sys.WebForms.PageRequestManager.beginAsyncPostBack" />
581        /// <param name="updatePanelsToUpdate" type="Array" elementType="String" mayBeNull="true" optional="true"></param>
582        /// <param name="eventTarget" type="String" mayBeNull="true" optional="true"></param>
583        /// <param name="eventArgument" type="String" mayBeNull="true" optional="true"></param>
584        /// <param name="causesValidation" type="Boolean" mayBeNull="true" optional="true"></param>
585        /// <param name="validationGroup" type="String" mayBeNull="true" optional="true"></param>
586        var e = Function._validateParams(arguments, [
587            {name: "updatePanelsToUpdate", type: Array, mayBeNull: true, optional: true, elementType: String},
588            {name: "eventTarget", type: String, mayBeNull: true, optional: true},
589            {name: "eventArgument", type: String, mayBeNull: true, optional: true},
590            {name: "causesValidation", type: Boolean, mayBeNull: true, optional: true},
591            {name: "validationGroup", type: String, mayBeNull: true, optional: true}
592        ]);
593        if (e) throw e;
594        if (causesValidation && (typeof(Page_ClientValidate) === 'function') && !Page_ClientValidate(validationGroup || null)) {
595            return;
596        }
597        this._postBackSettings = this._createPostBackSettings(true, updatePanelsToUpdate, eventTarget);
598        var form = this._form;
599        form.__EVENTTARGET.value = (eventTarget || "");
600        form.__EVENTARGUMENT.value = (eventArgument || "");
601        this._isCrossPost = false;
602        this._additionalInput = null;
603        this._onFormSubmit();
604    }
605    function Sys$WebForms$PageRequestManager$_cancelPendingCallbacks() {
606        for (var i = 0, l = window.__pendingCallbacks.length; i < l; i++) {
607            var callback = window.__pendingCallbacks[i];
608            if (callback) {
609                if (!callback.async) {
610                    window.__synchronousCallBackIndex = -1;
611                }
612                window.__pendingCallbacks[i] = null;
613                var callbackFrameID = "__CALLBACKFRAME" + i;
614                var xmlRequestFrame = document.getElementById(callbackFrameID);
615                if (xmlRequestFrame) {
616                    xmlRequestFrame.parentNode.removeChild(xmlRequestFrame);
617                }
618            }
619        }
620    }
621    function Sys$WebForms$PageRequestManager$_commitControls(updatePanelData, asyncPostBackTimeout) {
622        if (updatePanelData) {
623            this._updatePanelIDs = updatePanelData.updatePanelIDs;
624            this._updatePanelClientIDs = updatePanelData.updatePanelClientIDs;
625            this._updatePanelHasChildrenAsTriggers = updatePanelData.updatePanelHasChildrenAsTriggers;
626            this._asyncPostBackControlIDs = updatePanelData.asyncPostBackControlIDs;
627            this._asyncPostBackControlClientIDs = updatePanelData.asyncPostBackControlClientIDs;
628            this._postBackControlIDs = updatePanelData.postBackControlIDs;
629            this._postBackControlClientIDs = updatePanelData.postBackControlClientIDs;
630        }
631        if (typeof(asyncPostBackTimeout) !== 'undefined' && asyncPostBackTimeout !== null) {
632            this._asyncPostBackTimeout = asyncPostBackTimeout * 1000;
633        }
634    }
635    function Sys$WebForms$PageRequestManager$_createHiddenField(id, value) {
636        var container, field = document.getElementById(id);
637        if (field) {
638            if (!field._isContained) {
639                field.parentNode.removeChild(field);
640            }
641            else {
642                container = field.parentNode;
643            }
644        }
645        if (!container) {
646            container = document.createElement('span');
647            container.style.cssText = "display:none !important";
648            this._form.appendChild(container);
649        }
650        container.innerHTML = "<input type='hidden' />";
651        field = container.childNodes[0];
652        field._isContained = true;
653        field.id = field.name = id;
654        field.value = value;
655    }
656    function Sys$WebForms$PageRequestManager$_createPageRequestManagerTimeoutError() {
657        var displayMessage = "Sys.WebForms.PageRequestManagerTimeoutException: " + Sys.WebForms.Res.PRM_TimeoutError;
658        var e = Error.create(displayMessage, {name: 'Sys.WebForms.PageRequestManagerTimeoutException'});
659        e.popStackFrame();
660        return e;
661    }
662    function Sys$WebForms$PageRequestManager$_createPageRequestManagerServerError(httpStatusCode, message) {
663        var displayMessage = "Sys.WebForms.PageRequestManagerServerErrorException: " +
664            (message || String.format(Sys.WebForms.Res.PRM_ServerError, httpStatusCode));
665        var e = Error.create(displayMessage, {
666            name: 'Sys.WebForms.PageRequestManagerServerErrorException',
667            httpStatusCode: httpStatusCode
668        });
669        e.popStackFrame();
670        return e;
671    }
672    function Sys$WebForms$PageRequestManager$_createPageRequestManagerParserError(parserErrorMessage) {
673        var displayMessage = "Sys.WebForms.PageRequestManagerParserErrorException: " + String.format(Sys.WebForms.Res.PRM_ParserError, parserErrorMessage);
674        var e = Error.create(displayMessage, {name: 'Sys.WebForms.PageRequestManagerParserErrorException'});
675        e.popStackFrame();
676        return e;
677    }
678    function Sys$WebForms$PageRequestManager$_createPanelID(panelsToUp
678date, postBackSettings) {
679        var asyncTarget = postBackSettings.asyncTarget,
680            toUpdate = this._ensureUniqueIds(panelsToUpdate || postBackSettings.panelsToUpdate),
681            panelArg = (toUpdate instanceof Array)
682                ? toUpdate.join(',')
683                : (toUpdate || this._scriptManagerID);
684        if (asyncTarget) {
685            panelArg += "|" + asyncTarget;
686        }
687        return encodeURIComponent(this._scriptManagerID) + '=' + encodeURIComponent(panelArg) + '&';
688    }
689    function Sys$WebForms$PageRequestManager$_createPostBackSettings(async, panelsToUpdate, asyncTarget, sourceElement) {
690        return { async:async, asyncTarget: asyncTarget, panelsToUpdate: panelsToUpdate, sourceElement: sourceElement };
691    }
692    function Sys$WebForms$PageRequestManager$_convertToClientIDs(source, destinationIDs, destinationClientIDs, version4) {
693        if (source) {
694            for (var i = 0, l = source.length; i < l; i += (version4 ? 2 : 1)) {
695                var uniqueID = source[i],
696                    clientID = (version4 ? source[i+1] : "") || this._uniqueIDToClientID(uniqueID);
697                Array.add(destinationIDs, uniqueID);
698                Array.add(destinationClientIDs, clientID);
699            }
700        }
701    }
702    function Sys$WebForms$PageRequestManager$dispose() {
703        if (this._form) {
704            Sys.UI.DomEvent.removeHandler(this._form, 'submit', this._onFormSubmitHandler);
705            Sys.UI.DomEvent.removeHandler(this._form, 'click', this._onFormElementClickHandler);
706            Sys.UI.DomEvent.removeHandler(window, 'unload', this._onWindowUnloadHandler);
707            Sys.UI.DomEvent.removeHandler(window, 'load', this._pageLoadedHandler);
708        }
709        if (this._originalDoPostBack) {
710            window.__doPostBack = this._originalDoPostBack;
711            this._originalDoPostBack = null;
712        }
713        if (this._originalDoPostBackWithOptions) {
714            window.WebForm_DoPostBackWithOptions = this._originalDoPostBackWithOptions;
715            this._originalDoPostBackWithOptions = null;
716        }
717        if (this._originalFireDefaultButton) {
718            window.WebForm_FireDefaultButton = this._originalFireDefaultButton;
719            this._originalFireDefaultButton = null;
720        }
721        if (this._originalDoCallback) {
722            window.WebForm_DoCallback = this._originalDoCallback;
723            this._originalDoCallback = null;
724        }
725        this._form = null;
726        this._updatePanelIDs = null;
727        this._updatePanelClientIDs = null;
728        this._asyncPostBackControlIDs = null;
729        this._asyncPostBackControlClientIDs = null;
730        this._postBackControlIDs = null;
731        this._postBackControlClientIDs = null;
732        this._asyncPostBackTimeout = null;
733        this._scrollPosition = null;
734        this._activeElement = null;
735    }
736    function Sys$WebForms$PageRequestManager$_doCallback(eventTarget, eventArgument, eventCallback, context, errorCallback, useAsync) {
737        if (!this.get_isInAsyncPostBack()) {
738            this._originalDoCallback(eventTarget, eventArgument, eventCallback, context, errorCallback, useAsync);
739        }
740    }
741    function Sys$WebForms$PageRequestManager$_doPostBack(eventTarget, eventArgument) {
742        var event = window.event;
743        if (!event) {
744            var caller = arguments.callee ? arguments.callee.caller : null;
745            if (caller) {
746                var recursionLimit = 30;
747                while (caller.arguments.callee.caller && --recursionLimit) {
748                    caller = caller.arguments.callee.caller;
749                }
750                event = (recursionLimit && caller.arguments.length) ? caller.arguments[0] : null;
751            }
752        }
753        this._additionalInput = null;
754        var form = this._form;
755        if ((eventTarget === null) || (typeof(eventTarget) === "undefined") || (this._isCrossPost)) {
756            this._postBackSettings = this._createPostBackSettings(false);
757            this._isCrossPost = false;
758        }
759        else {
760            var mpUniqueID = this._masterPageUniqueID;
761            var clientID = this._uniqueIDToClientID(eventTarget);
762            var postBackElement = document.getElementById(clientID);
763            if (!postBackElement && mpUniqueID) {
764                if (eventTarget.indexOf(mpUniqueID + "$") === 0) {
765                    postBackElement = document.getElementById(clientID.substr(mpUniqueID.length + 1));
766                }
767            }
768            if (!postBackElement) {
769                if (Array.contains(this._asyncPostBackControlIDs, eventTarget)) {
770                    this._postBackSettings = this._createPostBackSettings(true, null, eventTarget);
771                }
772                else {
773                    if (Array.contains(this._postBackControlIDs, eventTarget)) {
774                        this._postBackSettings = this._createPostBackSettings(false);
775                    }
776                    else {
777                        var nearestUniqueIDMatch = this._findNearestElement(eventTarget);
778                        if (nearestUniqueIDMatch) {
779                            this._postBackSettings = this._getPostBackSettings(nearestUniqueIDMatch, eventTarget);
780                        }
781                        else {
782                            if (mpUniqueID) {
783                                mpUniqueID += "$";
784                                if (eventTarget.indexOf(mpUniqueID) === 0) {
785                                    nearestUniqueIDMatch = this._findNearestElement(eventTarget.substr(mpUniqueID.length));
786                                }
787                            }
788                            if (nearestUniqueIDMatch) {
789                                this._postBackSettings = this._getPostBackSettings(nearestUniqueIDMatch, eventTarget);
790                            }
791                            else {
792                                var activeElement;
793                                try {
794                                    activeElement = event ? (event.target || event.srcElement) : null;
795                                }
796                                catch(ex) {
797                                }
798                                activeElement = activeElement || this._activeElement;
799                                var causesPostback = /__doPostBack\(|WebForm_DoPostBackWithOptions\
799(/;
800                                function testCausesPostBack(attr) {
801                                    attr = attr ? attr.toString() : "";
802                                    return (causesPostback.test(attr) &&
803                                        (attr.indexOf("'" + eventTarget + "'") !== -1) || (attr.indexOf('"' + eventTarget + '"') !== -1));
804                                }
805                                if (activeElement && (
806                                        (activeElement.name === eventTarget) ||
807                                        testCausesPostBack(activeElement.href) ||
808                                        testCausesPostBack(activeElement.onclick) ||
809                                        testCausesPostBack(activeElement.onchange)
810                                        )) {
811                                    this._postBackSettings = this._getPostBackSettings(activeElement, eventTarget);
812                                }
813                                else {
814                                    this._postBackSettings = this._createPostBackSettings(false);
815                                }
816                            }
817                        }
818                    }
819                }
820            }
821            else {
822                this._postBackSettings = this._getPostBackSettings(postBackElement, eventTarget);
823            }
824        }
825        if (!this._postBackSettings.async) {
826            form.onsubmit = this._onsubmit;
827            this._originalDoPostBack(eventTarget, eventArgument);
828            form.onsubmit = null;
829            return;
830        }
831        form.__EVENTTARGET.value = eventTarget;
832        form.__EVENTARGUMENT.value = eventArgument;
833        this._onFormSubmit();
834    }
835    function Sys$WebForms$PageRequestManager$_doPostBackWithOptions(options) {
836        this._isCrossPost = options && options.actionUrl;
837        var validationResult = true;
838        if (options.validation) {
839            if (typeof(Page_ClientValidate) == 'function') {
840                validationResult = Page_ClientValidate(options.validationGroup);
841            }
842        }
843        if (validationResult) {
844            if ((typeof(options.actionUrl) != "undefined") && (options.actionUrl != null) && (options.actionUrl.length > 0)) {
845                theForm.action = options.actionUrl;
846            }
847            if (options.trackFocus) {
848                var lastFocus = theForm.elements["__LASTFOCUS"];
849                if ((typeof(lastFocus) != "undefined") && (lastFocus != null)) {
850                    if (typeof(document.activeElement) == "undefined") {
851                        lastFocus.value = options.eventTarget;
852                    }
853                    else {
854                        var active = document.activeElement;
855                        if ((typeof(active) != "undefined") && (active != null)) {
856                            if ((typeof(active.id) != "undefined") && (active.id != null) && (active.id.length > 0)) {
857                                lastFocus.value = active.id;
858                            }
859                            else if (typeof(active.name) != "undefined") {
860                                lastFocus.value = active.name;
861                            }
862                        }
863                    }
864                }
865            }
866        }
867        if (options.clientSubmit) {
868            this._doPostBack(options.eventTarget, options.eventArgument);
869        }
870    }
871    function Sys$WebForms$PageRequestManager$_elementContains(container, element) {
872        while (element) {
873            if (element === container) {
874                return true;
875            }
876            element = element.parentNode;
877        }
878        return false;
879    }
880    function Sys$WebForms$PageRequestManager$_endPostBack(error, executor, data) {
881        if (this._request === executor.get_webRequest()) {
882            this._processingRequest = false;
883            this._additionalInput = null;
884            this._request = null;
885        }
886        var handler = this._get_eventHandlerList().getHandler("endRequest");
887        var errorHandled = false;
888        if (handler) {
889            var eventArgs = new Sys.WebForms.EndRequestEventArgs(error, data ? data.dataItems : {}, executor);
890            handler(this, eventArgs);
891            errorHandled = eventArgs.get_errorHandled();
892        }
893        if (error && !errorHandled) {
894            throw error;
895        }
896    }
897    function Sys$WebForms$PageRequestManager$_ensureUniqueIds(ids) {
898        if (!ids) return ids;
899        ids = ids instanceof Array ? ids : [ids];
900        var uniqueIds = [];
901        for (var i = 0, l = ids.length; i < l; i++) {
902            var id = ids[i], index = Array.indexOf(this._updatePanelClientIDs, id);
903            uniqueIds.push(index > -1 ? this._updatePanelIDs[index] : id);
904        }
905        return uniqueIds;
906    }
907    function Sys$WebForms$PageRequestManager$_findNearestElement(uniqueID) {
908        while (uniqueID.length > 0) {
909            var clientID = this._uniqueIDToClientID(uniqueID);
910            var element = document.getElementById(clientID);
911            if (element) {
912                return element;
913            }
914            var indexOfLastDollar = uniqueID.lastIndexOf('$');
915            if (indexOfLastDollar === -1) {
916                return null;
917            }
918            uniqueID = uniqueID.substring(0, indexOfLastDollar);
919        }
920        return null;
921    }
922    function Sys$WebForms$PageRequestManager$_findText(text, location) {
923        var startIndex = Math.max(0, location - 20);
924        var endIndex = Math.min(text.length, location + 20);
925        return text.substring(startIndex, endIndex);
926    }
927    function Sys$WebForms$PageRequestManager$_fireDefaultButton(event, target) {
928        if (event.keyCode === 13) {
929            var src = event.srcElement || event.target;
930            if (!src || (src.tagName.toLowerCase() !== "textarea")) {
931                var defaultButton = document.getElementById(target);
932                if (defaultButton && (typeof(defaultButton.click) !== "undefined")) {
933                    
934                    
935                    this._activeDefaultButton = defaultButton;
936                    this._activeDefaultButtonClicked = false;
937                    try {
938                        defaultButton.click();
939                    }
940                    finally {
941                        this._activeDefaultButton = null;
942                    }
943                    
944                    
945                    event.cancelBubble = true;
946                    if (typeof(event.stopPropagation) === "function") {
947                        event.stopPropagation();
948                    }
949                    return false;
950                }
951            }
952        }
953        return true;
954    }
955    function Sys$WebForms$PageRequestManager$_getPageLoadedEventArgs(initialLoad, data) {
956        var updated = [];
957        var created = [];
958        var version4 = data ? data.version4 : false;
959        var upData = data ? data.updatePanelData : null;
960        var newIDs, newClientIDs, childIDs, refreshedIDs;
961        if (!upData) {
962            newIDs = this._updatePanelIDs;
963            newClientIDs = this._updatePanelClientIDs;
964            childIDs = null;
965            refreshedIDs = null;
966        }
967        else {
968            newIDs = upData.updatePanelIDs;
969            newClientIDs = upData.updatePanelClientIDs;
970            childIDs = upData.childUpdatePanelIDs;
971            refreshedIDs = upData.panelsToRefreshIDs;
972        }
973        var i, l, uniqueID, clientID;
974        if (refreshedIDs) {
975            for (i = 0, l = refreshedIDs.length; i < l; i += (version4 ? 2 : 1)) {
976                uniqueID = refreshedIDs[i];
977                clientID = (version4 ? refreshedIDs[i+1] : "") || this._uniqueIDToClientID(uniqueID);
978                Array.add(updated, document.getElementById(clientID));
979            }
980        }
981        for (i = 0, l = newIDs.length; i < l; i++) {
982            if (initialLoad || Array.indexOf(childIDs, newIDs[i]) !== -1) {
983                Array.add(created, document.getElementById(newClientIDs[i]));
984            }
985        }
986        return new Sys.WebForms.PageLoadedEventArgs(updated, created, data ? data.dataItems : {});
987    }
988    function Sys$WebForms$PageRequestManager$_getPageLoadingEventArgs(data) {
989        var updated = [],
990            deleted = [],
991            upData = data.updatePanelData,
992            oldIDs = upData.oldUpdatePanelIDs,
993            oldClientIDs = upData.oldUpdatePanelClientIDs,
994            newIDs = upData.updatePanelIDs,
995            childIDs = upData.childUpdatePanelIDs,
996            refreshedIDs = upData.panelsToRefreshIDs,
997            i, l, uniqueID, clientID,
998            version4 = data.version4;
999        for (i = 0, l = refreshedIDs.length; i < l; i += (version4 ? 2 : 1)) {
1000            uniqueID = refreshedIDs[i];
1001            clientID = (version4 ? refreshedIDs[i+1] : "") || this._uniqueIDToClientID(uniqueID);
1002            Array.add(updated, document.getElementById(clientID));
1003        }
1004        for (i = 0, l = oldIDs.length; i < l; i++) {
1005            uniqueID = oldIDs[i];
1006            if (Array.indexOf(refreshedIDs, uniqueID) === -1 &&
1007                (Array.indexOf(newIDs, uniqueID) === -1 || Array.indexOf(childIDs, uniqueID) > -1)) {
1008                Array.add(deleted, document.getElementById(oldClientIDs[i]));
1009            }
1010        }
1011        return new Sys.WebForms.PageLoadingEventArgs(updated, deleted, data.dataItems);
1012    }
1013    function Sys$WebForms$PageRequestManager$_getPostBackSettings(element, elementUniqueID) {
1014        var originalElement = element;
1015        var proposedSettings = null;
1016        while (element) {
1017            if (element.id) {
1018                if (!proposedSettings && Array.contains(this._asyncPostBackControlClientIDs, element.id)) {
1019                    proposedSettings = this._createPostBackSettings(true, null, elementUniqueID, originalElement);
1020                }
1021                else {
1022                    if (!proposedSettings && Array.contains(this._postBackControlClientIDs, element.id)) {
1023                        return this._createPostBackSettings(false);
1024                    }
1025                    else {
1026                        var indexOfPanel = Array.indexOf(this._updatePanelClientIDs, element.id);
1027                        if (indexOfPanel !== -1) {
1028                            if (this._updatePanelHasChildrenAsTriggers[indexOfPanel]) {
1029                                return this._createPostBackSettings(true, [this._updatePanelIDs[indexOfPanel]], elementUniqueID, originalElement);
1030                            }
1031                            else {
1032                                return this._createPostBackSettings(true, null, elementUniqueID, originalElement);
1033                            }
1034                        }
1035                    }
1036                }
1037                if (!proposedSettings && this._matchesParentIDInList(element.id, this._asyncPostBackControlClientIDs)) {
1038                    proposedSettings = this._createPostBackSettings(true, null, elementUniqueID, originalElement);
1039                }
1040                else {
1041                    if (!proposedSettings && this._matchesParentIDInList(element.id, this._postBackControlClientIDs)) {
1042                        return this._createPostBackSettings(false);
1043                    }
1044                }
1045            }
1046            element = element.parentNode;
1047        }
1048        if (!proposedSettings) {
1049            return this._createPostBackSettings(false);
1050        }
1051        else {
1052            return proposedSettings;
1053        }
1054    }
1055    function Sys$WebForms$PageRequestManager$_getScrollPosition() {
1056        var d = document.documentElement;
1057        if (d && (this._validPosition(d.scrollLeft) || this._validPosition(d.scrollTop))) {
1058            return {
1059                x: d.scrollLeft,
1060                y: d.scrollTop
1061            };
1062        }
1063        else {
1064            d = document.body;
1065            if (d && (this._validPosition(d.scrollLeft) || this._validPosition(d.scrollTop))) {
1066                return {
1067                    x: d.scrollLeft,
1068                    y: d.scrollTop
1069                };
1070            }
1071            else {
1072                if (this._validPosition(window.pageXOffset) || this._validPosition(window.pageYOffset)) {
1073                    return {
1074                        x: window.pageXOffset,
1075                        y: window.pageYOffset
1076                    };
1077                }
1078                else {
1079                    return {
1080                        x: 0,
1081                        y: 0
1082                    };
1083                }
1084            }
1085        }
1086    }
1087    function Sys$WebForms$PageRequestManager$_initializeInternal(scriptManagerID, formElement, updatePanelIDs, asyncPostBackControlIDs, postBackControlIDs, asyncPostBackTimeout, masterPageUniqueID) {
1088        if (this._prmInitialized) {
1089            throw Error.invalidOperation(Sys.WebForms.Res.PRM_CannotRegisterTwice);
1090        }
1091        this._prmInitialized = true;
1092        this._masterPageUniqueID = masterPageUniqueID;
1093        this._scriptManagerID = scriptManagerID;
1094        this._form = Sys.UI.DomElement.resolveElement(formElement);
1095        this._onsubmit = this._form.onsubmit;
1096        this._form.onsubmit = null;
1097        this._onFormSubmitHandler = Function.createDelegate(this, this._onFormSubmit);
1098        this._onFormElementClickHandler = Function.createDelegate(this, this._onFormElementClick);
1099        this._onWindowUnloadHandler = Function.createDelegate(this, this._onWindowUnload);
1100        Sys.UI.DomEvent.addHandler(this._form, 'submit', this._onFormSubmitHandler);
1101        Sys.UI.DomEvent.addHandler(this._form, 'click', this._onFormElementClickHandler);
1102        Sys.UI.DomEvent.addHandler(window, 'unload', this._onWindowUnloadHandler);
1103        this._originalDoPostBack = window.__doPostBack;
1104        if (this._originalDoPostBack) {
1105            window.__doPostBack = Function.createDelegate(this, this._doPostBack);
1106        }
1107        this._originalDoPostBackWithOptions = window.WebForm_DoPostBackWithOptions;
1108        if (this._originalDoPostBackWithOptions) {
1109            window.WebForm_DoPostBackWithOptions = Function.createDelegate(this, this._doPostBackWithOptions);
1110        }
1111        this._originalFireDefaultButton = window.WebForm_FireDefaultButton;
1112        if (this._originalFireDefaultButton) {
1113            window.WebForm_FireDefaultButton = Function.createDelegate(this, this._fireDefaultButton);
1114        }
1115        this._originalDoCallback = window.WebForm_DoCallback;
1116        if (this._originalDoCallback) {
1117            window.WebForm_DoCallback = Function.createDelegate(this, this._doCallback);
1118        }
1119        this._pageLoadedHandler = Function.createDelegate(this, this._pageLoadedInitialLoad);
1120        Sys.UI.DomEvent.addHandler(window, 'load', this._pageLoadedHandler);
1121        if (updatePanelIDs) {
1122            this._updateControls(updatePanelIDs, asyncPostBackControlIDs, postBackControlIDs, asyncPostBackTimeout, true);
1123        }
1124    }
1125    function Sys$WebForms$PageRequestManager$_matchesParentIDInList(clientID, parentIDList) {
1126        for (var i = 0, l = parentIDList.length; i < l; i++) {
1127            if (clientID.startsWith(parentIDList[i] + "_")) {
1128                return true;
1129            }
1130        }
1131        return false;
1132    }
1133    function Sys$WebForms$PageRequestManager$_onFormElementActive(element, offsetX, offsetY) {
1134        if (element.disabled) {
1135            return;
1136        }
1137        this._activeElement = element;
1138        this._postBackSettings = this._getPostBackSettings(element, element.name);
1139        if (element.name) {
1140            var tagName = element.tagName.toUpperCase();
1141            if (tagName === 'INPUT') {
1142                var type = element.type;
1143                if (type === 'submit') {
1144                    this._additionalInput = encodeURIComponent(element.name) + '=' + encodeURIComponent(element.value);
1145                }
1146                else if (type === 'image') {
1147                    this._additionalInput = encodeURIComponent(element.name) + '.x=' + offsetX + '&' + encodeURIComponent(element.name) + '.y=' + offsetY;
1148                }
1149            }
1150            else if ((tagName === 'BUTTON') && (element.name.length !== 0) && (element.type === 'submit')) {
1151                this._additionalInput = encodeURIComponent(element.name) + '=' + encodeURIComponent(element.value);
1152            }
1153        }
1154    }
1155    function Sys$WebForms$PageRequestManager$_onFormElementClick(evt) {
1156        this._activeDefaultButtonClicked = (evt.target === this._activeDefaultButton);
1157        this._onFormElementActive(evt.target, evt.offsetX, evt.offsetY);
1158    }
1159    function Sys$WebForms$PageRequestManager$_onFormSubmit(evt) {
1160        var i, l, continueSubmit = true,
1161            isCrossPost = this._isCrossPost;
1162        this._isCrossPost = false;
1163        if (this._onsubmit) {
1164            continueSubmit = this._onsubmit();
1165        }
1166        if (continueSubmit) {
1167            for (i = 0, l = this._onSubmitStatements.length; i < l; i++) {
1168                if (!this._onSubmitStatements[i]()) {
1169                    continueSubmit = false;
1170                    break;
1171                }
1172            }
1173        }
1174        if (!continueSubmit) {
1175            if (evt) {
1176                evt.preventDefault();
1177            }
1178            return;
1179        }
1180        var form = this._form;
1181        if (isCrossPost) {
1182            return;
1183        }
1184        if (this._activeDefaultButton && !this._activeDefaultButtonClicked) {
1185            this._onFormElementActive(this._activeDefaultButton, 0, 0);
1186        }
1187        if (!this._postBackSettings || !this._postBackSettings.async) {
1188            return;
1189        }
1190        var formBody = new Sys.StringBuilder(),
1191            formElements = form.elements,
1192            count = formElements.length,
1193            panelID = this._createPanelID(null, this._postBackSettings);
1194        formBody.append(panelID);
1195        for (i = 0; i < count; i++) {
1196            var element = formElements[i];
1197            var name = element.name;
1198            if (typeof(name) === "undefined" || (name === null) || (name.length === 0) || (name === this._scriptManagerID)) {
1199                continue;
1200            }
1201            var tagName = element.tagName.toUpperCase();
1202            if (tagName === 'INPUT') {
1203                var type = element.type;
1204                if (this._textTypes.test(type)
1205                    || ((type === 'checkbox' || type === 'radio') && element.checked)) {
1206                    formBody.append(encodeURIComponent(name));
1207                    formBody.append('=');
1208                    formBody.append(encodeURIComponent(element.value));
1209                    formBody.append('&');
1210                }
1211            }
1212            else if (tagName === 'SELECT') {
1213                var optionCount = element.options.length;
1214                for (var j = 0; j < optionCount; j++) {
1215                    var option = element.options[j];
1216                    if (option.selected) {
1217                        formBody.append(encodeURIComponent(name));
1218                        formBody.append('=');
1219                        formBody.append(encodeURIComponent(option.value));
1220                        formBody.append('&');
1221                    }
1222                }
1223            }
1224            else if (tagName === 'TEXTAREA') {
1225                formBody.append(encodeURIComponent(name));
1226                formBody.append('=');
1227                formBody.append(encodeURIComponent(element.value));
1228                formBody.append('&');
1229            }
1230        }
1231        formBody.append("__ASYNCPOST=true&");
1232        if (this._additionalInput) {
1233            formBody.append(this._additionalInput);
1234            this._additionalInput = null;
1235        }
1236        
1237        var request = new Sys.Net.WebRequest();
1238        var action = form.action;
1239        if (Sys.Browser.agent === Sys.Browser.InternetExplorer) {
1240            var fragmentIndex = action.indexOf('#');
1241            if (fragmentIndex !== -1) {
1242                action = action.substr(0, fragmentIndex);
1243            }
1244            var domain = "", query = "", queryIndex = action.indexOf('?');
1245            if (queryIndex !== -1) {
1246                query = action.substr(queryIndex);
1247                action = action.substr(0, queryIndex);
1248            }
1249            if (/^https?\:\/\/.*$/gi.test(action)) {
1250                var domainPartIndex = action.indexOf("//") + 2,
1251                    slashAfterDomain = action.indexOf("/", domainPartIndex);
1252                if (slashAfterDomain === -1) {
1253                    domain = action;
1254                    action = "";
1255                }
1256                else {
1257                    domain = action.substr(0, slashAfterDomain);
1258                    action = action.substr(slashAfterDomain);
1259                }
1260            }
1261            action = domain + encodeURI(decodeURI(action)) + query;
1262        }
1263        request.set_url(action);
1264        request.get_headers()['X-MicrosoftAjax'] = 'Delta=true';
1265        request.get_headers()['Cache-Control'] = 'no-cache';
1266        request.set_timeout(this._asyncPostBackTimeout);
1267        request.add_completed(Function.createDelegate(this, this._onFormSubmitCompleted));
1268        request.set_body(formBody.toString());
1269        var panelsToUpdate, eventArgs, handler = this._get_eventHandlerList().getHandler("initializeRequest");
1270        if (handler) {
1271            panelsToUpdate = this._postBackSettings.panelsToUpdate;
1272            eventArgs = new Sys.WebForms.InitializeRequestEventArgs(request, this._postBackSettings.sourceElement, panelsToUpdate);
1273            handler(this, eventArgs);
1274            continueSubmit = !eventArgs.get_cancel();
1275        }
1276        if (!continueSubmit) {
1277            if (evt) {
1278                evt.preventDefault();
1279            }
1280            return;
1281        }
1282        
1283        if (eventArgs && eventArgs._updated) {
1284            panelsToUpdate = eventArgs.get_updatePanelsToUpdate();
1285            request.set_body(request.get_body().replace(panelID, this._createPanelID(panelsToUpdate, this._postBackSettings)));
1286        }
1287        this._scrollPosition = this._getScrollPosition();
1288        this.abortPostBack();
1289        handler = this._get_eventHandlerList().getHandler("beginRequest");
1290        if (handler) {
1291            eventArgs = new Sys.WebForms.BeginRequestEventArgs(request, this._postBackSettings.sourceElement,
1292                panelsToUpdate || this._postBackSettings.panelsToUpdate);
1293            handler(this, eventArgs);
1294        }
1295        
1296        if (this._originalDoCallback) {
1297            this._cancelPendingCallbacks();
1298        }
1299        this._request = request;
1300        this._processingRequest = false;
1301        request.invoke();
1302        if (evt) {
1303            evt.preventDefault();
1304        }
1305    }
1306    function Sys$WebForms$PageRequestManager$_onFormSubmitCompleted(sender, eventArgs) {
1307        this._processingRequest = true;
1308        if (sender.get_timedOut()) {
1309            this._endPostBack(this._createPageRequestManagerTimeoutError(), sender, null);
1310            return;
1311        }
1312        if (sender.get_aborted()) {
1313            this._endPostBack(null, sender, null);
1314            return;
1315        }
1316        if (!this._request || (sender.get_webRequest() !== this._request)) {
1317            return;
1318        }
1319        if (sender.get_statusCode() !== 200) {
1320            this._endPostBack(this._createPageRequestManagerServerError(sender.get_statusCode()), sender, null);
1321            return;
1322        }
1323        var data = this._parseDelta(sender);
1324        if (!data) return;
1325        
1326        var i, l;
1327        if (data.asyncPostBackControlIDsNode && data.postBackControlIDsNode &&
1328            data.updatePanelIDsNode && data.panelsToRefreshNode && data.childUpdatePanelIDsNode) {
1329            
1330            var oldUpdatePanelIDs = this._updatePanelIDs,
1331                oldUpdatePanelClientIDs = this._updatePanelClientIDs;
1332            var childUpdatePanelIDsString = data.childUpdatePanelIDsNode.content;
1333            var childUpdatePanelIDs = childUpdatePanelIDsString.length ? childUpdatePanelIDsString.split(',') : [];
1334            var asyncPostBackControlIDsArray = this._splitNodeIntoArray(data.asyncPostBackControlIDsNode);
1335            var postBackControlIDsArray = this._splitNodeIntoArray(data.postBackControlIDsNode);
1336            var updatePanelIDsArray = this._splitNodeIntoArray(data.updatePanelIDsNode);
1337            var panelsToRefreshIDs = this._splitNodeIntoArray(data.panelsToRefreshNode);
1338            var v4 = data.version4;
1339            for (i = 0, l = panelsToRefreshIDs.length; i < l; i+= (v4 ? 2 : 1)) {
1340                var panelClientID = (v4 ? panelsToRefreshIDs[i+1] : "") || this._uniqueIDToClientID(panelsToRefreshIDs[i]);
1341                if (!document.getElementById(panelClientID)) {
1342                    this._endPostBack(Error.invalidOperation(String.format(Sys.WebForms.Res.PRM_MissingPanel, panelClientID)), sender, data);
1343                    return;
1344                }
1345            }
1346            
1347            var updatePanelData = this._processUpdatePanelArrays(
1348                updatePanelIDsArray,
1349                asyncPostBackControlIDsArray,
1350                postBackControlIDsArray, v4);
1351            updatePanelData.oldUpdatePanelIDs = oldUpdatePanelIDs;
1352            updatePanelData.oldUpdatePanelClientIDs = oldUpdatePanelClientIDs;
1353            updatePanelData.childUpdatePanelIDs = childUpdatePanelIDs;
1354            updatePanelData.panelsToRefreshIDs = panelsToRefreshIDs;
1355            data.updatePanelData = updatePanelData;
1356        }
1357        data.dataItems = {};
1358        var node;
1359        for (i = 0, l = data.dataItemNodes.length; i < l; i++) {
1360            node = data.dataItemNodes[i];
1361            data.dataItems[node.id] = node.content;
1362        }
1363        for (i = 0, l = data.dataItemJsonNodes.length; i < l; i++) {
1364            node = data.dataItemJsonNodes[i];
1365            data.dataItems[node.id] = Sys.Serialization.JavaScriptSerializer.deserialize(node.content);
1366        }
1367        var handler = this._get_eventHandlerList().getHandler("pageLoading");
1368        if (handler) {
1369            handler(this, this._getPageLoadingEventArgs(data));
1370        }
1371        
1372        Sys._ScriptLoader.readLoadedScripts();
1373        Sys.Application.beginCreateComponents();
1374        var scriptLoader = Sys._ScriptLoader.getInstance();
1375        this._queueScripts(scriptLoader, data.scriptBlockNodes, true, false);
1376        
1377        this._processingRequest = true;
1378        scriptLoader.loadScripts(0,
1379            Function.createDelegate(this, Function.createCallback(this._scriptIncludesLoadComplete, data)),
1380            Function.createDelegate(this, Function.createCallback(this._scriptIncludesLoadFailed, data)),
1381            null);        
1382    }
1383    function Sys$WebForms$PageRequestManager$_onWindowUnload(evt) {
1384        this.dispose();
1385    }
1386    function Sys$WebForms$PageRequestManager$_pageLoaded(initialLoad, data) {
1387        var handler = this._get_eventHandlerList().getHandler("pageLoaded");
1388        if (handler) {
1389            handler(this, this._getPageLoadedEventArgs(initialLoad, data));
1390        }
1391        if (!initialLoad) {
1392            Sys.Application.raiseLoad();
1393        }
1394    }
1395    function Sys$WebForms$PageRequestManager$_pageLoadedInitialLoad(evt) {
1396        this._pageLoaded(true, null);
1397    }
1398    function Sys$WebForms$PageRequestManager$_parseDelta(executor) {
1399        var reply = executor.get_responseData();
1400        var delimiterIndex, len, type, id, content;
1401        var replyIndex = 0;
1402        var parserErrorDetails = null;
1403        var delta = [];
1404        while (replyIndex < reply.length) {
1405            delimiterIndex = reply.indexOf('|', replyIndex);
1406            if (delimiterIndex === -1) {
1407                parserErrorDetails = this._findText(reply, replyIndex);
1408                break;
1409            }
1410            len = parseInt(reply.substring(replyIndex, delimiterIndex), 10);
1411            if ((len % 1) !== 0) {
1412                parserErrorDetails = this._findText(reply, replyIndex);
1413                break;
1414            }
1415            replyIndex = delimiterIndex + 1;
1416            delimiterIndex = reply.indexOf('|', replyIndex);
1417            if (delimiterIndex === -1) {
1418                parserErrorDetails = this._findText(reply, replyIndex);
1419                break;
1420            }
1421            type = reply.substring(replyIndex, delimiterIndex);
1422            replyIndex = delimiterIndex + 1;
1423            delimiterIndex = reply.indexOf('|', replyIndex);
1424            if (delimiterIndex === -1) {
1425                parserErrorDetails = this._findText(reply, replyIndex);
1426                break;
1427            }
1428            id = reply.substring(replyIndex, delimiterIndex);
1429            replyIndex = delimiterIndex + 1;
1430            if ((replyIndex + len) >= reply.length) {
1431                parserErrorDetails = this._findText(reply, reply.length);
1432                break;
1433            }
1434            content = reply.substr(replyIndex, len);
1435            replyIndex += len;
1436            if (reply.charAt(replyIndex) !== '|') {
1437                parserErrorDetails = this._findText(reply, replyIndex);
1438                break;
1439            }
1440            replyIndex++;
1441            Array.add(delta, {type: type, id: id, content: content});
1442        }
1443        if (parserErrorDetails) {
1444            this._endPostBack(this._createPageRequestManagerParserError(String.format(Sys.WebForms.Res.PRM_ParserErrorDetails, parserErrorDetails)), executor, null);
1445            return null;
1446        }
1447        var updatePanelNodes = [];
1448        var hiddenFieldNodes = [];
1449        var arrayDeclarationNodes = [];
1450        var scriptBlockNodes = [];
1451        var scriptStartupNodes = [];
1452        var expandoNodes = [];
1453        var onSubmitNodes = [];
1454        var dataItemNodes = [];
1455        var dataItemJsonNodes = [];
1456        var scriptDisposeNodes = [];
1457        var asyncPostBackControlIDsNode, postBackControlIDsNode,
1458            updatePanelIDsNode, asyncPostBackTimeoutNode,
1459            childUpdatePanelIDsNode, panelsToRefreshNode, formActionNode,
1460            versionNode;
1461        for (var i = 0, l = delta.length; i < l; i++) {
1462            var deltaNode = delta[i];
1463            switch (deltaNode.type) {
1464                case "#":
1465                    versionNode = deltaNode;
1466                    break;
1467                case "updatePanel":
1468                    Array.add(updatePanelNodes, deltaNode);
1469                    break;
1470                case "hiddenField":
1471                    Array.add(hiddenFieldNodes, deltaNode);
1472                    break;
1473                case "arrayDeclaration":
1474                    Array.add(arrayDeclarationNodes, deltaNode);
1475                    break;
1476                case "scriptBlock":
1477                    Array.add(scriptBlockNodes, deltaNode);
1478                    break;
1479                case "fallbackScript":
1480                    scriptBlockNodes[scriptBlockNodes.length - 1].fallback = deltaNode.id;
1481                case "scriptStartupBlock":
1482                    Array.add(scriptStartupNodes, deltaNode);
1483                    break;
1484                case "expando":
1485                    Array.add(expandoNodes, deltaNode);
1486                    break;
1487                case "onSubmit":
1488                    Array.add(onSubmitNodes, deltaNode);
1489                    break;
1490                case "asyncPostBackControlIDs":
1491                    asyncPostBackControlIDsNode = deltaNode;
1492                    break;
1493                case "postBackControlIDs":
1494                    postBackControlIDsNode = deltaNode;
1495                    break;
1496                case "updatePanelIDs":
1497                    updatePanelIDsNode = deltaNode;
1498                    break;
1499                case "asyncPostBackTimeout":
1500                    asyncPostBackTimeoutNode = deltaNode;
1501                    break;
1502                case "childUpdatePanelIDs":
1503                    childUpdatePanelIDsNode = deltaNode;
1504                    break;
1505                case "panelsToRefreshIDs":
1506                    panelsToRefreshNode = deltaNode;
1507                    break;
1508                case "formAction":
1509                    formActionNode = deltaNode;
1510                    break;
1511                case "dataItem":
1512                    Array.add(dataItemNodes, deltaNode);
1513                    break;
1514                case "dataItemJson":
1515                    Array.add(dataItemJsonNodes, deltaNode);
1516                    break;
1517                case "scriptDispose":
1518                    Array.add(scriptDisposeNodes, deltaNode);
1519                    break;
1520                case "pageRedirect":
1521                    if (versionNode && parseFloat(versionNode.content) >= 4) {
1522                        deltaNode.content = unescape(deltaNode.content);
1523                    }
1524                    if (Sys.Browser.agent === Sys.Browser.InternetExplorer) {
1525                        var anchor = document.createElement("a");
1526                        anchor.style.display = 'none';
1527                        anchor.attachEvent("onclick", cancelBubble);
1528                        anchor.href = deltaNode.content;
1529                        this._form.parentNode.insertBefore(anchor, this._form);
1530                        anchor.click();
1531                        anchor.detachEvent("onclick", cancelBubble);
1532                        this._form.parentNode.removeChild(anchor);
1533                        
1534                        function cancelBubble(e) {
1535                            e.cancelBubble = true;
1536                        }
1537                    }
1538                    else {
1539                        window.location.href = deltaNode.content;
1540                    }
1541                    return null;
1542                case "error":
1543                    this._endPostBack(this._createPageRequestManagerServerError(Number.parseInvariant(deltaNode.id), deltaNode.content), executor, null);
1544                    return null;
1545                case "pageTitle":
1546                    document.title = deltaNode.content;
1547                    break;
1548                case "focus":
1549                    this._controlIDToFocus = deltaNode.content;
1550                    break;
1551                default:
1552                    this._endPostBack(this._createPageRequestManagerParserError(String.format(Sys.WebForms.Res.PRM_UnknownToken, deltaNode.type)), executor, null);
1553                    return null;
1554            } 
1555        } 
1556        return {
1557            version4: versionNode ? (parseFloat(versionNode.content) >= 4) : false,
1558            executor: executor,
1559            updatePanelNodes: updatePanelNodes,
1560            hiddenFieldNodes: hiddenFieldNodes,
1561            arrayDeclarationNodes: arrayDeclarationNodes,
1562            scriptBlockNodes: scriptBlockNodes,
1563            scriptStartupNodes: scriptStartupNodes,
1564            expandoNodes: expandoNodes,
1565            onSubmitNodes: onSubmitNodes,
1566            dataItemNodes: dataItemNodes,
1567            dataItemJsonNodes: dataItemJsonNodes,
1568            scriptDisposeNodes: scriptDisposeNodes,
1569            asyncPostBackControlIDsNode: asyncPostBackControlIDsNode,
1570            postBackControlIDsNode: postBackControlIDsNode,
1571            updatePanelIDsNode: updatePanelIDsNode,
1572            asyncPostBackTimeoutNode: asyncPostBackTimeoutNode,
1573            childUpdatePanelIDsNode: childUpdatePanelIDsNode,
1574            panelsToRefreshNode: panelsToRefreshNode,
1575            formActionNode: formActionNode };
1576    }
1577    function Sys$WebForms$PageRequestManager$_processUpdatePanelArrays(updatePanelIDs, asyncPostBackControlIDs, postBackControlIDs, version4) {
1578        var newUpdatePanelIDs, newUpdatePanelClientIDs, newUpdatePanelHasChildrenAsTriggers;
1579        
1580        if (updatePanelIDs) {
1581            var l = updatePanelIDs.length,
1582                m = version4 ? 2 : 1;
1583            newUpdatePanelIDs = new Array(l/m);
1584            newUpdatePanelClientIDs = new Array(l/m);
1585            newUpdatePanelHasChildrenAsTriggers = new Array(l/m);
1586            
1587            for (var i = 0, j = 0; i < l; i += m, j++) {
1588                var ct,
1589                    uniqueID = updatePanelIDs[i],
1590                    clientID = version4 ? updatePanelIDs[i+1] : "";
1591                ct = (uniqueID.charAt(0) === 't');
1592                uniqueID = uniqueID.substr(1);
1593                if (!clientID) {
1594                    clientID = this._uniqueIDToClientID(uniqueID);
1595                }
1596                newUpdatePanelHasChildrenAsTriggers[j] = ct;
1597                newUpdatePanelIDs[j] = uniqueID;
1598                newUpdatePanelClientIDs[j] = clientID;
1599            }
1600        }
1601        else {
1602            newUpdatePanelIDs = [];
1603            newUpdatePanelClientIDs = [];
1604            newUpdatePanelHasChildrenAsTriggers = [];
1605        }
1606        var newAsyncPostBackControlIDs = [];
1607        var newAsyncPostBackControlClientIDs = [];
1608        this._convertToClientIDs(asyncPostBackControlIDs, newAsyncPostBackControlIDs, newAsyncPostBackControlClientIDs, version4);
1609        var newPostBackControlIDs = [];
1610        var newPostBackControlClientIDs = [];
1611        this._convertToClientIDs(postBackControlIDs, newPostBackControlIDs, newPostBackControlClientIDs, version4);
1612        
1613        return {
1614            updatePanelIDs: newUpdatePanelIDs,
1615            updatePanelClientIDs: newUpdatePanelClientIDs,
1616            updatePanelHasChildrenAsTriggers: newUpdatePanelHasChildrenAsTriggers,
1617            asyncPostBackControlIDs: newAsyncPostBackControlIDs,
1618            asyncPostBackControlClientIDs: newAsyncPostBackControlClientIDs,
1619            postBackControlIDs: newPostBackControlIDs,
1620            postBackControlClientIDs: newPostBackControlClientIDs
1621        };
1622    }
1623    function Sys$WebForms$PageRequestManager$_queueScripts(scriptLoader, scriptBlockNodes, queueIncludes, queueBlocks) {
1624        
1625        for (var i = 0, l = scriptBlockNodes.length; i < l; i++) {
1626            var scriptBlockType = scriptBlockNodes[i].id;
1627            switch (scriptBlockType) {
1628                case "ScriptContentNoTags":
1629                    if (!queueBlocks) {
1630                        continue;
1631                    }
1632                    scriptLoader.queueScriptBlock(scriptBlockNodes[i].content);
1633                    break;
1634                case "ScriptContentWithTags":
1635                    var scriptTagAttributes;
1636                    eval("scriptTagAttributes = " + scriptBlockNodes[i].content);
1637                    if (scriptTagAttributes.src) {
1638                        if (!queueIncludes || Sys._ScriptLoader.isScriptLoaded(scriptTagAttributes.src)) {
1639                            continue;
1640                        }
1641                    }
1642                    else if (!queueBlocks) {
1643                        continue;
1644                    }
1645                    scriptLoader.queueCustomScriptTag(scriptTagAttributes);
1646                    break;
1647                case "ScriptPath":
1648                    var script = scriptBlockNodes[i];
1649                    if (!queueIncludes || Sys._ScriptLoader.isScriptLoaded(script.content)) {
1650                        continue;
1651                    }
1652                    scriptLoader.queueScriptReference(script.content, script.fallback);
1653                    break;
1654            }
1655        }        
1656    }
1657    function Sys$WebForms$PageRequestManager$_registerDisposeScript(panelID, disposeScript) {
1658        if (!this._scriptDisposes[panelID]) {
1659            this._scriptDisposes[panelID] = [disposeScript];
1660        }
1661        else {
1662            Array.add(this._scriptDisposes[panelID], disposeScript);
1663        }
1664    }
1665    function Sys$WebForms$PageRequestManager$_scriptIncludesLoadComplete(scriptLoader, data) {
1666        
1667        
1668        if (data.executor.get_webRequest() !== this._request) {
1669            return;
1670        }
1671        
1672        this._commitControls(data.updatePanelData,
1673            data.asyncPostBackTimeoutNode ? data.asyncPostBackTimeoutNode.content : null);
1674        if (data.formActionNode) {
1675            this._form.action = data.formActionNode.content;
1676        }
1677        
1678        var i, l, node;
1679        for (i = 0, l = data.updatePanelNodes.length; i < l; i++) {
1680            node = data.updatePanelNodes[i];
1681            var updatePanelElement = document.getElementById(node.id);
1682            if (!updatePanelElement) {
1683                this._endPostBack(Error.invalidOperation(String.format(Sys.WebForms.Res.PRM_MissingPanel, node.id)), data.executor, data);
1684                return;
1685            }
1686            this._updatePanel(updatePanelElement, node.content);
1687        }
1688        for (i = 0, l = data.scriptDisposeNodes.length; i < l; i++) {
1689            node = data.scriptDisposeNodes[i];
1690            this._registerDisposeScript(node.id, node.content);
1691        }
1692        for (i = 0, l = this._transientFields.length; i < l; i++) {
1693            var field = document.getElementById(this._transientFields[i]);
1694            if (field) {
1695                var toRemove = field._isContained ? field.parentNode : field;
1696                toRemove.parentNode.removeChild(toRemove);
1697            }
1698        }
1699        for (i = 0, l = data.hiddenFieldNodes.length; i < l; i++) {
1700            node = data.hiddenFieldNodes[i];
1701            this._createHiddenField(node.id, node.content);
1702        }
1703        
1704        if (data.scriptsFailed) {
1705            throw Sys._ScriptLoader._errorScriptLoadFailed(data.scriptsFailed.src, data.scriptsFailed.multipleCallbacks);
1706        }
1707        
1708        this._queueScripts(scriptLoader, data.scriptBlockNodes, false, true);
1709        var arrayScript = '';
1710        for (i = 0, l = data.arrayDeclarationNodes.length; i < l; i++) {
1711            node = data.arrayDeclarationNodes[i];
1712            arrayScript += "Sys.WebForms.PageRequestManager._addArrayElement('" + node.id + "', " + node.content + ");\r\n";
1713        }
1714        var expandoScript = '';
1715        for (i = 0, l = data.expandoNodes.length; i < l; i++) {
1716            node = data.expandoNodes[i];
1717            expandoScript += node.id + " = " + node.content + "\r\n";
1718        }
1719        if (arrayScript.length) {
1720            scriptLoader.queueScriptBlock(arrayScript);
1721        }
1722        if (expandoScript.length) {
1723            scriptLoader.queueScriptBlock(expandoScript);
1724        }
1725        
1726        this._queueScripts(scriptLoader, data.scriptStartupNodes, true, true);
1727        var onSubmitStatementScript = '';
1728        for (i = 0, l = data.onSubmitNodes.length; i < l; i++) {
1729            if (i === 0) {
1730                onSubmitStatementScript = 'Array.add(Sys.WebForms.PageRequestManager.getInstance()._onSubmitStatements, function() {\r\n';
1731            }
1732            onSubmitStatementScript += data.onSubmitNodes[i].content + "\r\n";
1733        }
1734        if (onSubmitStatementScript.length) {
1735            onSubmitStatementScript += "\r\nreturn true;\r\n});\r\n";
1736            scriptLoader.queueScriptBlock(onSubmitStatementScript);
1737        }
1738        scriptLoader.loadScripts(0,
1739            Function.createDelegate(this, Function.createCallback(this._scriptsLoadComplete, data)), null, null);
1740    }
1741    function Sys$WebForms$PageRequestManager$_scriptIncludesLoadFailed(scriptLoader, scriptElement, multipleCallbacks, data) {
1742        data.scriptsFailed = { src: scriptElement.src, multipleCallbacks: multipleCallbacks };
1743        this._scriptIncludesLoadComplete(scriptLoader, data);
1744    }
1745    function Sys$WebForms$PageRequestManager$_scriptsLoadComplete(scriptLoader, data) {
1746        
1747        
1748        var response = data.executor;
1749        if (window.__theFormPostData) {
1750            window.__theFormPostData = "";
1751        }
1752        if (window.__theFormPostCollection) {
1753            window.__theFormPostCollection = [];
1754        }
1755        if (window.WebForm_InitCallback) {
1756            window.WebForm_InitCallback();
1757        }
1758        if (this._scrollPosition) {
1759            if (window.scrollTo) {
1760                window.scrollTo(this._scrollPosition.x, this._scrollPosition.y);
1761            }
1762            this._scrollPosition = null;
1763        }
1764        Sys.Application.endCreateComponents();
1765        this._pageLoaded(false, data);
1766        this._endPostBack(null, response, data);
1767        if (this._controlIDToFocus) {
1768            var focusTarget;
1769            var oldContentEditableSetting;
1770            if (Sys.Browser.agent === Sys.Browser.InternetExplorer) {
1771                var targetControl = $get(this._controlIDToFocus);
1772                focusTarget = targetControl;
1773                if (targetControl && (!WebForm_CanFocus(targetControl))) {
1774                    focusTarget = WebForm_FindFirstFocusableChild(targetControl);
1775                }
1776                if (focusTarget && (typeof(focusTarget.contentEditable) !== "undefined")) {
1777                    oldContentEditableSetting = focusTarget.contentEditable;
1778                    focusTarget.contentEditable = false;
1779                }
1780                else {
1781                    focusTarget = null;
1782                }
1783            }
1784            WebForm_AutoFocus(this._controlIDToFocus);
1785            if (focusTarget) {
1786                focusTarget.contentEditable = oldContentEditableSetting;
1787            }
1788            this._controlIDToFocus = null;
1789        }
1790    }
1791    function Sys$WebForms$PageRequestManager$_splitNodeIntoArray(node) {
1792        var str = node.content;
1793        var arr = str.length ? str.split(',') : [];
1794        return arr;
1795    }
1796    function Sys$WebForms$PageRequestManager$_uniqueIDToClientID(uniqueID) {
1797        return uniqueID.replace(/\$/g, '_');
1798    }
1799    function Sys$WebForms$PageRequestManager$_updateControls(updatePanelIDs, asyncPostBackControlIDs, postBackControlIDs, asyncPostBackTimeout, version4) {
1800        this._commitControls(
1801            this._processUpdatePanelArrays(updatePanelIDs, asyncPostBackControlIDs, postBackControlIDs, version4),
1802            asyncPostBackTimeout);
1803    }
1804    function Sys$WebForms$PageRequestManager$_updatePanel(updatePanelElement, rendering) {
1805        for (var updatePanelID in this._scriptDisposes) {
1806            if (this._elementContains(updatePanelElement, document.getElementById(updatePanelID))) {
1807                var disposeScripts = this._scriptDisposes[updatePanelID];
1808                for (var i = 0, l = disposeScripts.length; i < l; i++) {
1809                    eval(disposeScripts[i]);
1810                }
1811                delete this._scriptDisposes[updatePanelID];
1812            }
1813        }
1814        Sys.Application.disposeElement(updatePanelElement, true);
1815        updatePanelElement.innerHTML = rendering;
1816    }
1817    function Sys$WebForms$PageRequestManager$_validPosition(position) {
1818        return (typeof(position) !== "undefined") && (position !== null) && (position !== 0);
1819    }
1820Sys.WebForms.PageRequestManager.prototype = {
1821    _get_eventHandlerList: Sys$WebForms$PageRequestManager$_get_eventHandlerList,
1822    get_isInAsyncPostBack: Sys$WebForms$PageRequestManager$get_isInAsyncPostBack,
1823    add_beginRequest: Sys$WebForms$PageRequestManager$add_beginRequest,
1824    remove_beginRequest: Sys$WebForms$PageRequestManager$remove_beginRequest,
1825    add_endRequest: Sys$WebForms$PageRequestManager$add_endRequest,
1826    remove_endRequest: Sys$WebForms$PageRequestManager$remove_endRequest,
1827    add_initializeRequest: Sys$WebForms$PageRequestManager$add_initializeRequest,
1828    remove_initializeRequest: Sys$WebForms$PageRequestManager$remove_initializeRequest,
1829    add_pageLoaded: Sys$WebForms$PageRequestManager$add_pageLoaded,
1830    remove_pageLoaded: Sys$WebForms$PageRequestManager$remove_pageLoaded,
1831    add_pageLoading: Sys$WebForms$PageRequestManager$add_pageLoading,
1832    remove_pageLoading: Sys$WebForms$PageRequestManager$remove_pageLoading,
1833    abortPostBack: Sys$WebForms$PageRequestManager$abortPostBack,
1834    beginAsyncPostBack: Sys$WebForms$PageRequestManager$beginAsyncPostBack,
1835    _cancelPendingCallbacks: Sys$WebForms$PageRequestManager$_cancelPendingCallbacks,
1836    _commitControls: Sys$WebForms$PageRequestManager$_commitControls,
1837    _createHiddenField: Sys$WebForms$PageRequestManager$_createHiddenField,
1838    _createPageRequestManagerTimeoutError: Sys$WebForms$PageRequestManager$_createPageRequestManagerTimeoutError,
1839    _createPageRequestManagerServerError: Sys$WebForms$PageRequestManager$_createPageRequestManagerServerError,
1840    _createPageRequestManagerParserError: Sys$WebForms$PageRequestManager$_createPageRequestManagerParserError,
1841    _createPanelID: Sys$WebForms$PageRequestManager$_createPanelID,
1842    _createPostBackSettings: Sys$WebForms$PageRequestManager$_createPostBackSettings,
1843    _convertToClientIDs: Sys$WebForms$PageRequestManager$_convertToClientIDs,
1844    dispose: Sys$WebForms$PageRequestManager$dispose,
1845    _doCallback: Sys$WebForms$PageRequestManager$_doCallback,
1846    _doPostBack: Sys$WebForms$PageRequestManager$_doPostBack,
1847    _doPostBackWithOptions: Sys$WebForms$PageRequestManager$_doPostBackWithOptions,
1848    _elementContains: Sys$WebForms$PageRequestManager$_elementContains,
1849    _endPostBack: Sys$WebForms$PageRequestManager$_endPostBack,
1850    _ensureUniqueIds: Sys$WebForms$PageRequestManager$_ensureUniqueIds,
1851    _findNearestElement: Sys$WebForms$PageRequestManager$_findNearestElement,
1852    _findText: Sys$WebForms$PageRequestManager$_findText,
1853    _fireDefaultButton: Sys$WebForms$PageRequestManager$_fireDefaultButton,
1854    _getPageLoadedEventArgs: Sys$WebForms$PageRequestManager$_getPageLoadedEventArgs,
1855    _getPageLoadingEventArgs: Sys$WebForms$PageRequestManager$_getPageLoadingEventArgs,
1856    _getPostBackSettings: Sys$WebForms$PageRequestManager$_getPostBackSettings,
1857    _getScrollPosition: Sys$WebForms$PageRequestManager$_getScrollPosition,
1858    _initializeInternal: Sys$WebForms$PageRequestManager$_initializeInternal,
1859    _matchesParentIDInList: Sys$WebForms$PageRequestManager$_matchesParentIDInList,
1860    _onFormElementActive: Sys$WebForms$PageRequestManager$_onFormElementActive,
1861    _onFormElementClick: Sys$WebForms$PageRequestManager$_onFormElementClick,
1862    _onFormSubmit: Sys$WebForms$PageRequestManager$_onFormSubmit,
1863    _onFormSubmitCompleted: Sys$WebForms$PageRequestManager$_onFormSubmitCompleted,
1864    _onWindowUnload: Sys$WebForms$PageRequestManager$_onWindowUnload,
1865    _pageLoaded: Sys$WebForms$PageRequestManager$_pageLoaded,
1866    _pageLoadedInitialLoad: Sys$WebForms$PageRequestManager$_pageLoadedInitialLoad,
1867    _parseDelta: Sys$WebForms$PageRequestManager$_parseDelta,
1868    _processUpdatePanelArrays: Sys$WebForms$PageRequestManager$_processUpdatePanelArrays,
1869    _queueScripts: Sys$WebForms$PageRequestManager$_queueScripts,
1870    _registerDisposeScript: Sys$WebForms$PageRequestManager$_registerDisposeScript,
1871    _scriptIncludesLoadComplete: Sys$WebForms$PageRequestManager$_scriptIncludesLoadComplete,
1872    _scriptIncludesLoadFailed: Sys$WebForms$PageRequestManager$_scriptIncludesLoadFailed,
1873    _scriptsLoadComplete: Sys$WebForms$PageRequestManager$_scriptsLoadComplete,
1874    _splitNodeIntoArray: Sys$WebForms$PageRequestManager$_splitNodeIntoArray,
1875    _uniqueIDToClientID: Sys$WebForms$PageRequestManager$_uniqueIDToClientID,
1876    _updateControls: Sys$WebForms$PageRequestManager$_updateControls,
1877    _updatePanel: Sys$WebForms$PageRequestManager$_updatePanel,
1878    _validPosition: Sys$WebForms$PageRequestManager$_validPosition
1879}
1880Sys.WebForms.PageRequestManager.getInstance = function Sys$WebForms$PageRequestManager$getInstance() {
1881    /// <summary locid="M:J#Sys.WebForms.PageRequestManager.getInstance" />
1882    /// <returns type="Sys.WebForms.PageRequestManager"></returns>
1883    if (arguments.length !== 0) throw Error.parameterCount();
1884    var prm = Sys.WebForms.PageRequestManager._instance;
1885    if (!prm) {
1886        prm = Sys.WebForms.PageRequestManager._instance = new Sys.WebForms.PageRequestManager();
1887    }
1888    return prm;
1889}
1890Sys.WebForms.PageRequestManager._addArrayElement = function Sys$WebForms$PageRequestManager$_addArrayElement(arrayName) {
1891    if (!window[arrayName]) {
1892        window[arrayName] = new Array();
1893    }
1894    for (var i = 1, l = arguments.length; i < l; i++) {
1895        Array.add(window[arrayName], arguments[i]);
1896    }
1897}
1898Sys.WebForms.PageRequestManager._initialize = function Sys$WebForms$PageRequestManager$_initialize() {
1899    var prm = Sys.WebForms.PageRequestManager.getInstance();
1900    prm._initializeInternal.apply(prm, arguments);
1901}
1902Sys.WebForms.PageRequestManager.registerClass('Sys.WebForms.PageRequestManager');
1903 
1904Sys.UI._UpdateProgress = function Sys$UI$_UpdateProgress(element) {
1905    Sys.UI._UpdateProgress.initializeBase(this,[element]);
1906    this._displayAfter = 500;
1907    this._dynamicLayout = true;
1908    this._associatedUpdatePanelId = null;
1909    this._beginRequestHandlerDelegate = null;
1910    this._startDelegate = null;
1911    this._endRequestHandlerDelegate = null;
1912    this._pageRequestManager = null;
1913    this._timerCookie = null;
1914}
1915    function Sys$UI$_UpdateProgress$get_displayAfter() {
1916        /// <value type="Number" locid="P:J#Sys.UI._UpdateProgress.displayAfter"></value>
1917        if (arguments.length !== 0) throw Error.parameterCount();
1918        return this._displayAfter;
1919    }
1920    function Sys$UI$_UpdateProgress$set_displayAfter(value) {
1921        var e = Function._validateParams(arguments, [{name: "value", type: Number}]);
1922        if (e) throw e;
1923        this._displayAfter = value;
1924    }
1925    function Sys$UI$_UpdateProgress$get_dynamicLayout() {
1926        /// <value type="Boolean" locid="P:J#Sys.UI._UpdateProgress.dynamicLayout"></value>
1927        if (arguments.length !== 0) throw Error.parameterCount();
1928        return this._dynamicLayout;
1929    }
1930    function Sys$UI$_UpdateProgress$set_dynamicLayout(value) {
1931        var e = Function._validateParams(arguments, [{name: "value", type: Boolean}]);
1932        if (e) throw e;
1933        this._dynamicLayout = value;
1934    }
1935    function Sys$UI$_UpdateProgress$get_associatedUpdatePanelId() {
1936        /// <value type="String" mayBeNull="true" locid="P:J#Sys.UI._UpdateProgress.associatedUpdatePanelId"></value>
1937        if (arguments.length !== 0) throw Error.parameterCount();
1938        return this._associatedUpdatePanelId;
1939    }
1940    function Sys$UI$_UpdateProgress$set_associatedUpdatePanelId(value) {
1941        var e = Function._validateParams(arguments, [{name: "value", type: String, mayBeNull: true}]);
1942        if (e) throw e;
1943        this._associatedUpdatePanelId = value;
1944    }
1945    function Sys$UI$_UpdateProgress$get_role() {
1946        /// <value type="String" locid="P:J#Sys.UI._UpdateProgress.role"></value>
1947        if (arguments.length !== 0) throw Error.parameterCount();
1948        return "status";
1949    }
1950    function Sys$UI$_UpdateProgress$_clearTimeout() {
1951        if (this._timerCookie) {
1952            window.clearTimeout(this._timerCookie);
1953            this._timerCookie = null;
1954        }
1955    }
1956    function Sys$UI$_UpdateProgress$_getUniqueID(clientID) {
1957        var i = Array.indexOf(this._pageRequestManager._updatePanelClientIDs, clientID);
1958        return i === -1 ? null : this._pageRequestManager._updatePanelIDs[i];
1959    }
1960    function Sys$UI$_UpdateProgress$_handleBeginRequest(sender, arg) {
1961        var curElem = arg.get_postBackElement(),
1962            showProgress = true,
1963            upID = this._associatedUpdatePanelId;
1964        if (this._associatedUpdatePanelId) {
1965            var updating = arg.get_updatePanelsToUpdate();
1966            if (updating && updating.length) {
1967                showProgress = (Array.contains(updating, upID) || Array.contains(updating, this._getUniqueID(upID)))
1968            }
1969            else {
1970                showProgress = false;
1971            }
1972        }
1973        while (!showProgress && curElem) {
1974            if (curElem.id && this._associatedUpdatePanelId === curElem.id) {
1975                showProgress = true; 
1976            }
1977            curElem = curElem.parentNode; 
1978        } 
1979        if (showProgress) {
1980            this._timerCookie = window.setTimeout(this._startDelegate, this._displayAfter);
1981        }
1982    }
1983    function Sys$UI$_UpdateProgress$_startRequest() {
1984        if (this._pageRequestManager.get_isInAsyncPostBack()) {
1985            var element = this.get_element();
1986            if (this._dynamicLayout) {
1987                element.style.display = 'block';
1988            }
1989            else {
1990                element.style.visibility = 'visible';
1991            }
1992            if (this.get_role() === "status") {
1993                element.setAttribute("aria-hidden", "false");
1994            }
1995        }
1996        this._timerCookie = null;
1997    }
1998    function Sys$UI$_UpdateProgress$_handleEndRequest(sender, arg) {
1999        var element = this.get_element();
2000        if (this._dynamicLayout) {
2001            element.style.display = 'none';
2002        }
2003        else {
2004            element.style.visibility = 'hidden';
2005        }
2006        if (this.get_role() === "status") {
2007            element.setAttribute("aria-hidden", "true");
2008        }
2009        this._clearTimeout();
2010    }
2011    function Sys$UI$_UpdateProgress$dispose() {
2012        if (this._beginRequestHandlerDelegate !== null) {
2013            this._pageRequestManager.remove_beginRequest(this._beginRequestHandlerDelegate);
2014            this._pageRequestManager.remove_endRequest(this._endRequestHandlerDelegate);
2015            this._beginRequestHandlerDelegate = null;
2016            this._endRequestHandlerDelegate = null;
2017        }
2018        this._clearTimeout();
2019        Sys.UI._UpdateProgress.callBaseMethod(this,"dispose");
2020    }
2021    function Sys$UI$_UpdateProgress$initialize() {
2022        Sys.UI._UpdateProgress.callBaseMethod(this, 'initialize');
2023        if (this.get_role() === "status") {
2024            this.get_element().setAttribute("aria-hidden", "true");
2025        }
2026    	this._beginRequestHandlerDelegate = Function.createDelegate(this, this._handleBeginRequest);
2027    	this._endRequestHandlerDelegate = Function.createDelegate(this, this._handleEndRequest);
2028    	this._startDelegate = Function.createDelegate(this, this._startRequest);
2029    	if (Sys.WebForms && Sys.WebForms.PageRequestManager) {
2030           this._pageRequestManager = Sys.WebForms.PageRequestManager.getInstance();
2031    	}
2032    	if (this._pageRequestManager !== null ) {
2033    	    this._pageRequestManager.add_beginRequest(this._beginRequestHandlerDelegate);
2034    	    this._pageRequestManager.add_endRequest(this._endRequestHandlerDelegate);
2035    	}
2036    }
2037Sys.UI._UpdateProgress.prototype = {
2038    get_displayAfter: Sys$UI$_UpdateProgress$get_displayAfter,
2039    set_displayAfter: Sys$UI$_UpdateProgress$set_displayAfter,
2040    get_dynamicLayout: Sys$UI$_UpdateProgress$get_dynamicLayout,
2041    set_dynamicLayout: Sys$UI$_UpdateProgress$set_dynamicLayout,
2042    get_associatedUpdatePanelId: Sys$UI$_UpdateProgress$get_associatedUpdatePanelId,
2043    set_associatedUpdatePanelId: Sys$UI$_UpdateProgress$set_associatedUpdatePanelId,
2044    get_role: Sys$UI$_UpdateProgress$get_role,
2045    _clearTimeout: Sys$UI$_UpdateProgress$_clearTimeout,
2046    _getUniqueID: Sys$UI$_UpdateProgress$_getUniqueID,
2047    _handleBeginRequest: Sys$UI$_UpdateProgress$_handleBeginRequest,
2048    _startRequest: Sys$UI$_UpdateProgress$_startRequest,
2049    _handleEndRequest: Sys$UI$_UpdateProgress$_handleEndRequest,
2050    dispose: Sys$UI$_UpdateProgress$dispose,
2051    initialize: Sys$UI$_UpdateProgress$initialize
2052}
2053Sys.UI._UpdateProgress.registerClass('Sys.UI._UpdateProgress', Sys.UI.Control);
2054
2055
2056Type.registerNamespace('Sys.WebForms');
2057Sys.WebForms.Res={
2058"PRM_UnknownToken":"Unknown token: \u0027{0}\u0027.",
2059"PRM_MissingPanel":"Could not find UpdatePanel with ID \u0027{0}\u0027. If it is being updated dynamically then it must be inside another UpdatePanel.",
2060"PRM_ServerError":"An unknown error occurred while processing the request on the server. The status code returned from the server was: {0}",
2061"PRM_ParserError":"The message received from the server could not be parsed.",
2062"PRM_TimeoutError":"The server request timed out.",
2063"PRM_ParserErrorDetails":"Error parsing near \u0027{0}\u0027.",
2064"PRM_CannotRegisterTwice":"The PageRequestManager cannot be initialized more than once."
2065};
2066
2067}

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.