﻿// (c) 2010 CodePlex Foundation
(function(g,b){var o="object",t="set_",l="#",n="$",k="string",j=".",h=" ",s="onreadystatechange",m="load",y="_readyQueue",x="_domReadyQueue",r="error",d=false,q="on",a=null,c=true,e="undefined",f="function",i="number",A=function(a){a=a||{};p(arguments,function(b){b&&v(b,function(c,b){a[b]=c})},1);return a},v=function(a,c){for(var b in a)c(a[b],b)},p=function(a,g,h){var d;if(a){a=a instanceof Array||typeof a.length===i&&(typeof a.callee===f||a.item&&typeof a.nodeType===e&&!a.addEventListener&&!a.attachEvent)?a:[a];for(var b=h||0,j=a.length;b<j;b++)if(g(a[b],b)){d=c;break}}return!d},u=function(b,e,d){var c=b[e],a=typeof c===f;a&&c.call(b,d);return a};if(!b||!b.loader){function M(a){a=a||{};p(arguments,function(b){b&&v(b,function(c,b){if(typeof a[b]===e)a[b]=c})},1);return a}var z=!!document.attachEvent;function C(b,a){var c=b[a];delete b[a];return c}function K(d,b,c){p(C(d,b),function(b){b.apply(a,c||[])})}function I(a,c,b){return a?(a[c]=a[c]||b):b}function G(c,b,a){I(c,b,[]).push(a)}function B(b,a){return(a||document).getElementsByTagName(b)}function J(a){return document.createElement(a)}function D(b,e,g,i,h,f){function c(){if(!z||!h||/loaded|complete/.test(b.readyState)){if(z)b.detachEvent(g||q+e,c);else{b.removeEventListener(e,c,d);f&&b.removeEventListener(r,c,d)}i.apply(b);b=a}}if(z)b.attachEvent(g||q+e,c);else{b.addEventListener(e,c,d);f&&b.addEventListener(r,c,d)}}function E(){b._domReady&&b._2Pass(C(b,x))}function F(){var a=b._ready;if(!a&&b._domReady&&!(b.loader&&b.loader._loading))b._ready=a=c;a&&b._2Pass(C(b,y))}g.Sys=b=M(b,{version:[3,0,31106,0],__namespace:c,debug:d,scripts:{},activateDom:c,composites:{},components:{},plugins:{},create:{},converters:{},_domLoaded:function(){if(b._domChecked)return;b._domChecked=c;function d(){if(!b._domReady){b._domReady=c;var d=b._autoRequire;d&&b.require(d,function(){b._autoRequire=a;K(b,"_autoQueue")},autoToken);E();F()}}D(g,m,a,d);var e;if(z)if(g==g.top&&document.documentElement.doScroll){var h,i,f=J("div");e=function(){try{f.doScroll("left")}catch(b){h=g.setTimeout(e,0);return}f=a;d()};e()}else D(document,a,s,d,c);else document.addEventListener&&D(document,"DOMContentLoaded",a,d)},_getById:function(b,d,h,f,a,g){if(a)if(f&&a.id===d)b.push(a);else!g&&p(B("*",a),function(a){if(a.id===d){b.push(a);return c}});else{var e=document.getElementById(d);e&&b.push(e)}return b.length},_getByClass:function(l,d,g,m,a,n){function i(b){var e,a=b.className;if(a&&(a===d||a.indexOf(h+d)>=0||a.indexOf(d+h)>=0)){l.push(b);e=c}return e}var b,f,e;if(m&&i(a)&&g)return c;if(!n){a=a||document;var k=a.querySelectorAll||a.getElementsByClassName;if(k){if(a.querySelectorAll)d=j+d;e=k.call(a,d);for(b=0,f=e.length;b<f;b++){l.push(e[b]);if(g)return c}}else{e=B("*",a);for(b=0,f=e.length;b<f;b++)if(i(e[b])&&g)return c}}},query:function(a,c){return new b.ElementSet(a,c)},"get":function(b,a){return a&&typeof a.get===f?a.get(b):this._find(b,a,c)},_find:function(m,d,f,h){var e=[],j;if(typeof m===k)j=[m];else j=m;var i=d instanceof Array,o=/^([\$#\.])((\w|[$:\.\-])+)$/,q=/^((\w+)|\*)$/;if(typeof d===k||d instanceof Array)d=b._find(d);if(d instanceof b.ElementSet)d=d.get();p(j,function(a){if(typeof a!==k)if(h)contains(d,a)&&e.push(a);else e.push(a);else{var j=o.exec(a);if(j&&j.length===4){a=j[2];var s=j[1];if(s===n)b._getComponent(e,a,d);else{var r=s===l?b._getById:b._getByClass;if(d)p(d,function(b){if(b.nodeType===1)return r(e,a,f,i,b,h)});else r(e,a,f)}}else if(q.test(a))if(d instanceof Array)p(d,function(b){if(b.nodeType===1){if(i&&(a==="*"||b.tagName.toLowerCase()===a)){e.push(b);if(f)return c}if(!h)if(!p(B(a,b),function(a){e.push(a);if(f)return c}))return c}});else{var m=B(a,d);if(f){m[0]&&e.push(m[0]);return c}p(m,function(a){e.push(a)})}else if(g.jQuery){!h&&e.push.apply(e,jQuery(a,d).get());i&&e.push.apply(e,jQuery(d).filter(a).get())}}});return e.length?f?e[0]||a:e:a},onDomReady:function(a){G(this,x,a);E()},onReady:function(a){G(this,y,a);F()},_set:function(a,b){v(b,function(c,b){u(a,"add_"+b,c)||u(a,t+b,c)||(a[b]=c)})}});b._getComponent=b._getComponent||function(){};b._2Pass=b._2Pass||function(a){p(a,function(a){a()})};var w;if(!b.ElementSet){w=b.ElementSet=function(c,a){this._elements=typeof a===o&&typeof a.query===f?a.query(c).get():b._find(c,a)||[]};w.prototype={__class:c,components:function(d,c){var a=new b.ElementSet(this.get());return new b.ComponentSet(a,d,c)},component:function(b,a){return this.components(b,a).get(0)},each:function(c){for(var b=this._elements,a=0,e=b.length;a<e;a++)if(c.call(b[a],a)===d)break;return this},"get":function(c){var b=this._elements;return typeof c===e?Array.apply(a,b):b[c]||a},find:function(a){return new b.ElementSet(a,this)},filter:function(a){return new b.ElementSet(b._find(a,this._elements,d,c))}}}if(!b.ComponentSet){w=b.ComponentSet=function(a,d,c){this._elementSet=a||(a=new b.ElementSet);this._components=this._execute(a,d,c)};w.prototype={__class:c,setProperties:function(a){return this.each(function(){b._set(this,a)})},"get":function(c){var b=this._components;return typeof c===e?Array.apply(a,b):b[c||0]||a},each:function(a){p(this._components,function(b,e){if(a.call(b,e)===d)return c});return this},elements:function(){return this._elementSet},_execute:function(f,b,c){var a=[];function d(c){var a;return c instanceof b||(a=c.constructor)&&(a===b||a.inheritsFrom&&a.inheritsFrom(b)||a.implementsInterface&&a.implementsInterface(b))}if(b instanceof Array)a.push.apply(a,b);else f.each(function(){var c=this.control;c&&(!b||d(c))&&a.push(c);p(this._behaviors,function(c){(!b||d(c))&&a.push(c)})});if(typeof c!==e)if(a[c])a=[a[c]];else a=[];return a}}}w=a}var L=function(a,d){if(d)return function(){return b.plugins[a.name].plugin.apply(this,arguments)};else{var c=function(){var c=arguments.callee,a=c._component;return b._createComp.call(this,a,a.defaults,arguments)};c._component=a;return c}};b._getCreate=L;function H(){var sb="callback",Q="completed",hb="completedRequest",gb="invokingRequest",vb="Sys.Net.XMLHttpExecutor",M="Content-Type",kb="text/xml",rb="SelectionLanguage",fb="navigate",eb="dispose",db="init",L="unload",P="none",cb="HTML",I="absolute",O="BODY",bb="InternetExplorer",ab="disposing",H="+",qb="MonthNames",pb="MonthGenitiveNames",Z="Abbreviated",E="-",D="/",Y="yyyy",X="MMMM",W="dddd",B=100,J="collectionChanged",V="get_",C="propertyChanged",G=",",U="null",S="Firefox",T="initialize",jb="beginUpdate",y=-1,ob="Undefined",x="",F="\n",nb="Exception",w,z;b._foreach=p;b._forIn=v;b._merge=A;b._callIf=u;w=Function;w.__typeName="Function";w.__class=c;w.createCallback=function(b,a){return function(){var e=arguments.length;if(e>0){for(var d=[],c=0;c<e;c++)d[c]=arguments[c];d[e]=a;return b.apply(this,d)}return b.call(this,a)}};w.createDelegate=function(a,b){return function(){return b.apply(a,arguments)}};w.emptyFunction=w.emptyMethod=function(){};w.validateParameters=function(c,b,a){return Function._validateParams(c,b,a)};w._validateParams=function(i,g,e){var b,f=g.length;e=e!==d;b=Function._validateParameterCount(i,g,e);if(b){b.popStackFrame();return b}for(var c=0,k=i.length;c<k;c++){var h=g[Math.min(c,f-1)],j=h.name;if(h.parameterArray)j+="["+(c-f+1)+"]";else if(!e&&c>=f)break;b=Function._validateParameter(i[c],h,j);if(b){b.popStackFrame();return b}}return a};w._validateParameterCount=function(m,g,l){var b,f,e=g.length,h=m.length;if(h<e){var i=e;for(b=0;b<e;b++){var j=g[b];if(j.optional||j.parameterArray)i--}if(h<i)f=c}else if(l&&h>e){f=c;for(b=0;b<e;b++)if(g[b].parameterArray){f=d;break}}if(f){var k=Error.parameterCount();k.popStackFrame();return k}return a};w._validateParameter=function(d,b,j){var c,i=b.type,n=!!b.integer,m=!!b.domElement,o=!!b.mayBeNull;c=Function._validateParameterType(d,i,n,m,o,j);if(c){c.popStackFrame();return c}var g=b.elementType,h=!!b.elementMayBeNull;if(i===Array&&typeof d!==e&&d!==a&&(g||!h))for(var l=!!b.elementInteger,k=!!b.elementDomElement,f=0;f<d.length;f++){var p=d[f];c=Function._validateParameterType(p,g,l,k,h,j+"["+f+"]");if(c){c.popStackFrame();return c}}return a};w._validateParameterType=function(c,f,n,m,o,g){var d,k;if(typeof c===e||c===a){if(o)return a;d=c===a?Error.argumentNull(g):Error.argumentUndefined(g);d.popStackFrame();return d}if(f&&f.__enum){if(typeof c!==i){d=Error.argumentType(g,Object.getType(c),f);d.popStackFrame();return d}if(c%1===0){var h=f.prototype;if(!f.__flags||c===0){for(k in h)if(h[k]===c)return a}else{var l=c;for(k in h){var j=h[k];if(j===0)continue;if((j&c)===j)l-=j;if(l===0)return a}}}d=Error.argumentOutOfRange(g,c,String.format(b.Res.enumInvalidValue,c,f.getName()));d.popStackFrame();return d}if(m&&(!b._isDomElement(c)||c.nodeType===3)){d=Error.argument(g,b.Res.argumentDomElement);d.popStackFrame();return d}if(f&&!b._isInstanceOfType(f,c)){d=Error.argumentType(g,Object.getType(c),f);d.popStackFrame();return d}if(f===Number&&n)if(c%1!==0){d=Error.argumentOutOfRange(g,c,b.Res.argumentInteger);d.popStackFrame();return d}return a};w=Error;w.__typeName="Error";w.__class=c;b._errorArgument=function(e,a,g){var f="Sys.Argument"+e+nb,d=f+": "+(g||b.Res["argument"+e]);if(a)d+=F+String.format(b.Res.paramName,a);var c=Error.create(d,{name:f,paramName:a});c.popStackFrame();c.popStackFrame();return c};b._error=function(g,f,d){var c="Sys."+g+nb,e=c+": "+(f||b.Res[d]),a=Error.create(e,{name:c});a.popStackFrame();a.popStackFrame();return a};w.create=function(c,b){var a=new Error(c);a.message=c;if(b)for(var d in b)a[d]=b[d];a.popStackFrame();return a};w.argument=function(a,c){return b._errorArgument(x,a,c)};w.argumentNull=function(a,c){return b._errorArgument("Null",a,c)};w.argumentOutOfRange=function(f,c,h){var d="Sys.ArgumentOutOfRangeException: "+(h||b.Res.argumentOutOfRange);if(f)d+=F+String.format(b.Res.paramName,f);if(typeof c!==e&&c!==a)d+=F+String.format(b.Res.actualValue,c);var g=Error.create(d,{name:"Sys.ArgumentOutOfRangeException",paramName:f,actualValue:c});g.popStackFrame();return g};w.argumentType=function(e,d,c,f){var a="Sys.ArgumentTypeException: ";if(f)a+=f;else if(d&&c)a+=String.format(b.Res.argumentTypeWithTypes,d.getName(),c.getName());else a+=b.Res.argumentType;if(e)a+=F+String.format(b.Res.paramName,e);var g=Error.create(a,{name:"Sys.ArgumentTypeException",paramName:e,actualType:d,expectedType:c});g.popStackFrame();return g};w.argumentUndefined=function(a,c){return b._errorArgument(ob,a,c)};w.format=function(a){return b._error("Format",a,"format")};w.invalidOperation=function(a){return b._error("InvalidOperation",a,"invalidOperation")};w.notImplemented=function(a){return b._error("NotImplemented",a,"notImplemented")};w.parameterCount=function(a){return b._error("ParameterCount",a,"parameterCount")};w.prototype.popStackFrame=function(){var b=this;if(typeof b.stack===e||b.stack===a||typeof b.fileName===e||b.fileName===a||typeof b.lineNumber===e||b.lineNumber===a)return;var c=b.stack.split(F),f=c[0],h=b.fileName+":"+b.lineNumber;while(typeof f!==e&&f!==a&&f.indexOf(h)<0){c.shift();f=c[0]}var g=c[1];if(typeof g===e||g===a)return;var d=g.match(/@(.*):(\d+)$/);if(typeof d===e||d===a)return;b.fileName=d[1];b.lineNumber=parseInt(d[2]);c.shift();b.stack=c.join(F)};w=Object;w.__typeName="Object";w.__class=c;w.getType=function(b){var a=b.constructor;return!a||typeof a!==f||!a.__typeName||a.__typeName==="Object"?Object:a};w.getTypeName=function(a){return Object.getType(a).getName()};w=String;w.__typeName="String";w.__class=c;z=w.prototype;z.endsWith=function(a){return this.substr(this.length-a.length)===a};z.startsWith=function(a){return this.substr(0,a.length)===a};z.trim=function(){return this.replace(/^\s+|\s+$/g,x)};z.trimEnd=function(){return this.replace(/\s+$/,x)};z.trimStart=function(){return this.replace(/^\s+/,x)};w.format=function(){return String._toFormattedString(d,arguments)};w._toFormattedString=function(o,m){for(var f=x,h=m[0],b=0;c;){var i=h.indexOf("{",b),g=h.indexOf("}",b);if(i<0&&g<0){f+=h.slice(b);break}if(g>0&&(g<i||i<0)){f+=h.slice(b,g+1);b=g+2;continue}f+=h.slice(b,i);b=i+1;if(h.charAt(b)==="{"){f+="{";b++;continue}if(g<0)break;var k=h.substring(b,g),j=k.indexOf(":"),n=parseInt(j<0?k:k.substring(0,j),10)+1,l=j<0?x:k.substring(j+1),d=m[n];if(typeof d===e||d===a)d=x;if(d.toFormattedString)f+=d.toFormattedString(l);else if(o&&d.localeFormat)f+=d.localeFormat(l);else if(d.format)f+=d.format(l);else f+=d.toString();b=g+1}return f};w=Boolean;w.__typeName="Boolean";w.__class=c;w.parse=function(e){var b=e.trim().toLowerCase(),a;if(b==="false")a=d;else if(b==="true")a=c;return a};w=Date;w.__typeName="Date";w.__class=c;w=Number;w.__typeName="Number";w.__class=c;w=RegExp;w.__typeName="RegExp";w.__class=c;if(!g)this.window=this;g.Type=w=Function;z=w.prototype;z.callBaseMethod=function(a,e,c){var d=b._getBaseMethod(this,a,e);return c?d.apply(a,c):d.apply(a)};z.getBaseMethod=function(a,c){return b._getBaseMethod(this,a,c)};z.getBaseType=function(){return typeof this.__baseType===e?a:this.__baseType};z.getInterfaces=function(){var c=[],a=this;while(a){var b=a.__interfaces;if(b)for(var d=0,f=b.length;d<f;d++){var e=b[d];!Array.contains(c,e)&&c.push(e)}a=a.__baseType}return c};z.getName=function(){return typeof this.__typeName===e?x:this.__typeName};z.implementsInterface=function(h){var f=this;f.resolveInheritance();var g=h.getName(),a=f.__interfaceCache;if(a){var i=a[g];if(typeof i!==e)return i}else a=f.__interfaceCache={};var b=f;while(b){var j=b.__interfaces;if(j&&Array.indexOf(j,h)!==y)return a[g]=c;b=b.__baseType}return a[g]=d};z.inheritsFrom=function(a){this.resolveInheritance();return b._inheritsFrom(this,a)};b._inheritsFrom=function(e,b){var d;if(b){var a=e.__baseType;while(a){if(a===b){d=c;break}a=a.__baseType}}return!!d};z.initializeBase=function(b,c){this.resolveInheritance();var a=this.__baseType;if(a)c?a.apply(b,c):a.apply(b);return b};z.isImplementedBy=function(b){if(typeof b===e||b===a)return d;var c=Object.getType(b);return!!(c.implementsInterface&&c.implementsInterface(this))};z.isInstanceOfType=function(a){return b._isInstanceOfType(this,a)};z.registerClass=function(f,e,g){var a=this,j=a.prototype;j.constructor=a;a.__typeName=f;a.__class=c;if(e){a.__baseType=e;a.__basePrototypePending=c}b.__upperCaseTypes[f.toUpperCase()]=a;if(g)for(var i=a.__interfaces=[],d=2,k=arguments.length;d<k;d++){var h=arguments[d];i.push(h)}return a};b.registerComponent=function(d,c){var f=d.getName(),e=b.UI&&(b._inheritsFrom(d,b.UI.Control)||b._inheritsFrom(d,b.UI.Behavior)),a=c&&c.name;if(!a){a=f;var g=a.lastIndexOf(j);if(g>=0){a=a.substr(g+1);if(a&&a.charAt(0)==="_")return}a=a.substr(0,1).toLowerCase()+a.substr(1)}if(!c)c={};c.name=a;c.type=d;c.typeName=f;c._isBehavior=e;c=b.components[a]=A(b.components[a],c);var i=b._getCreate(c),h=e?b.ElementSet.prototype:b.create;h[a]=i};b.registerPlugin=function(a){var e=a.name,f=a.functionName||e;b.plugins[e]=A(b.plugins[e],a);var g=a.plugin,d;if(a.global)d=b;else if(a.dom)d=b.ElementSet.prototype;else if(a.components)d=b.ComponentSet.prototype;if(d)d[f]=b._getCreate(a,c)};b._createComp=function(d,l,f){var i=d.type,h=d.parameters||[],j=d._isBehavior,m=j?f[0]:a,c=f[h.length]||{};c=A({},l,c);p(h,function(a,g){var d=typeof a===k?a:a.name,b=f[g];if(typeof b!==e&&typeof c[d]===e)c[d]=b});if(this instanceof b.ElementSet){var g=[];this.each(function(){g.push(b._create(i,c,this))});return new b.ComponentSet(this,g)}else return b._create(i,c)};b._create=function(f,g,c){var d=typeof c;if(d===k)c=b.get(c);var a;b._2Pass(function(){a=d===e?new f:new f(c);u(a,jb);b._set(a,g);var h=b.Component;if(!h||!h._register(a))u(a,"endUpdate")||u(a,T)});return a};z.registerInterface=function(d){var a=this;b.__upperCaseTypes[d.toUpperCase()]=a;a.prototype.constructor=a;a.__typeName=d;a.__interface=c;return a};z.resolveInheritance=function(){var a=this;if(a.__basePrototypePending){var e=a.__baseType;e.resolveInheritance();var c=e.prototype,d=a.prototype;for(var b in c)d[b]=d[b]||c[b];delete a.__basePrototypePending}};w.getRootNamespaces=function(){return Array.clone(b.__rootNamespaces)};w.isClass=function(a){return!!(a&&a.__class)};w.isInterface=function(a){return!!(a&&a.__interface)};w.isNamespace=function(a){return!!(a&&a.__namespace)};w.parse=function(d,f){var c;if(f){c=b.__upperCaseTypes[f.getName().toUpperCase()+j+d.toUpperCase()];return c||a}if(!d)return a;var e=Type.__htClasses;if(!e)Type.__htClasses=e={};c=e[d];if(!c){c=g.eval(d);e[d]=c}return c};w.registerNamespace=function(a){Type._registerNamespace(a)};w._registerNamespace=function(h){for(var f=g,e=h.split(j),d=0,k=e.length;d<k;d++){var i=e[d],a=f[i];if(!a)a=f[i]={};if(!a.__namespace){!d&&h!=="Sys"&&b.__rootNamespaces.push(a);a.__namespace=c;a.__typeName=e.slice(0,d+1).join(j);a.getName=function(){return this.__typeName}}f=a}};w._checkDependency=function(f,a){var g=Type._registerScript._scripts,c=g?!!g[f]:d;if(typeof a!==e&&!c)throw Error.invalidOperation(String.format(b.Res.requiredScriptReferenceNotIncluded,a,f));return c};w._registerScript=function(a,e){var d=Type._registerScript._scripts;if(!d)Type._registerScript._scripts=d={};if(d[a])throw Error.invalidOperation(String.format(b.Res.scriptAlreadyLoaded,a));d[a]=c;if(e)for(var f=0,h=e.length;f<h;f++){var g=e[f];if(!Type._checkDependency(g))throw Error.invalidOperation(String.format(b.Res.scriptDependencyNotFound,a,g));}};w._registerNamespace("Sys");b.__upperCaseTypes={};b.__rootNamespaces=[b];b._isInstanceOfType=function(g,f){if(typeof f===e||f===a)return d;if(f instanceof g)return c;var b=Object.getType(f);return!!(b===g)||b.inheritsFrom&&b.inheritsFrom(g)||b.implementsInterface&&b.implementsInterface(g)};b._getBaseMethod=function(e,f,d){var c=e.getBaseType();if(c){var b=c.prototype[d];return b instanceof Function?b:a}return a};b._isDomElement=function(a){var e=d;if(typeof a.nodeType!==i){var c=a.ownerDocument||a.document||a;if(c!=a){var f=c.defaultView||c.parentWindow;e=f!=a}else e=!c.body||!b._isDomElement(c.body)}return!e};var ib=b._isBrowser=function(a){return b.Browser.agent===b.Browser[a]};p(b._ns,w._registerNamespace);delete b._ns;w=Array;w.__typeName="Array";w.__class=c;var tb=b._indexOf=function(d,f,a){if(typeof f===e)return y;var c=d.length;if(c!==0){a=a-0;if(isNaN(a))a=0;else{if(isFinite(a))a=a-a%1;if(a<0)a=Math.max(0,c+a)}for(var b=a;b<c;b++)if(d[b]===f)return b}return y};w.add=w.enqueue=function(a,b){a[a.length]=b};w.addRange=function(a,b){a.push.apply(a,b)};w.clear=function(a){a.length=0};w.clone=function(b){return b.length===1?[b[0]]:Array.apply(a,b)};w.contains=function(a,b){return tb(a,b)>=0};w.dequeue=function(a){return a.shift()};w.forEach=function(b,f,d){for(var a=0,g=b.length;a<g;a++){var c=b[a];typeof c!==e&&f.call(d,c,a,b)}};w.indexOf=tb;w.insert=function(a,b,c){a.splice(b,0,c)};w.parse=function(a){return a?g.eval("("+a+")"):[]};w.remove=function(b,c){var a=tb(b,c);a>=0&&b.splice(a,1);return a>=0};w.removeAt=function(a,b){a.splice(b,1)};Type._registerScript._scripts={"MicrosoftAjaxCore.js":c,"MicrosoftAjaxGlobalization.js":c,"MicrosoftAjaxSerialization.js":c,"MicrosoftAjaxComponentModel.js":c,"MicrosoftAjaxHistory.js":c,"MicrosoftAjaxNetwork.js":c,"MicrosoftAjaxWebServices.js":c};w=b.IDisposable=function(){};w.registerInterface("Sys.IDisposable");w=b.StringBuilder=function(b){this._parts=typeof b!==e&&b!==a&&b!==x?[b.toString()]:[];this._value={};this._len=0};w.prototype={append:function(a){this._parts.push(a);return this},appendLine:function(b){this._parts.push(typeof b===e||b===a||b===x?"\r\n":b+"\r\n");return this},clear:function(){this._parts=[];this._value={};this._len=0},isEmpty:function(){return!this._parts.length||!this.toString()},toString:function(b){var d=this;b=b||x;var c=d._parts;if(d._len!==c.length){d._value={};d._len=c.length}var i=d._value,h=i[b];if(typeof h===e){if(b!==x)for(var f=0;f<c.length;){var g=c[f];if(typeof g===e||g===x||g===a)c.splice(f,1);else f++}i[b]=h=c.join(b)}return h}};w.registerClass("Sys.StringBuilder");var lb=navigator.userAgent,K=b.Browser={InternetExplorer:{},Firefox:{},Safari:{},Opera:{},agent:a,hasDebuggerStatement:d,name:navigator.appName,version:parseFloat(navigator.appVersion),documentMode:0};if(lb.indexOf(" MSIE ")>y){K.agent=K.InternetExplorer;K.version=parseFloat(lb.match(/MSIE (\d+\.\d+)/)[1]);if(K.version>7&&document.documentMode>6)K.documentMode=document.documentMode;K.hasDebuggerStatement=c}else if(lb.indexOf(" Firefox/")>y){K.agent=K.Firefox;K.version=parseFloat(lb.match(/ Firefox\/(\d+\.\d+)/)[1]);K.name=S;K.hasDebuggerStatement=c}else if(lb.indexOf(" AppleWebKit/")>y){K.agent=K.Safari;K.version=parseFloat(lb.match(/ AppleWebKit\/(\d+(\.\d+)?)/)[1]);K.name="Safari"}else if(lb.indexOf("Opera/")>y)K.agent=K.Opera;w=b.EventArgs=function(){};w.registerClass("Sys.EventArgs");b.EventArgs.Empty=new b.EventArgs;w=b.CancelEventArgs=function(){b.CancelEventArgs.initializeBase(this);this._cancel=d};w.prototype={get_cancel:function(){return this._cancel},set_cancel:function(a){this._cancel=a}};w.registerClass("Sys.CancelEventArgs",b.EventArgs);Type.registerNamespace("Sys.UI");w=b._Debug=function(){};w.prototype={_appendConsole:function(a){typeof Debug!==e&&Debug.writeln;g.console&&g.console.log&&g.console.log(a);g.opera&&g.opera.postError(a);g.debugService&&g.debugService.trace(a)},_getTrace:function(){var c=b.get("#TraceConsole");return c&&c.tagName.toUpperCase()==="TEXTAREA"?c:a},_appendTrace:function(b){var a=this._getTrace();if(a)a.value+=b+F},"assert":function(d,a,c){if(!d){a=c&&this.assert.caller?String.format(b.Res.assertFailedCaller,a,this.assert.caller):String.format(b.Res.assertFailed,a);confirm(String.format(b.Res.breakIntoDebugger,a))&&this.fail(a)}},clearTrace:function(){var a=this._getTrace();if(a)a.value=x},fail:function(a){this._appendConsole(a);b.Browser.hasDebuggerStatement&&g.eval("debugger")},trace:function(a){this._appendConsole(a);this._appendTrace(a)},traceDump:function(a,b){this._traceDump(a,b,c)},_traceDump:function(b,l,n,c,h){var d=this;l=l||"traceDump";c=c||x;var j=c+l+": ";if(b===a){d.trace(j+U);return}switch(typeof b){case e:d.trace(j+ob);break;case i:case k:case"boolean":d.trace(j+b);break;default:if(Date.isInstanceOfType(b)||RegExp.isInstanceOfType(b)){d.trace(j+b.toString());break}if(!h)h=[];else if(Array.contains(h,b)){d.trace(j+"...");return}h.push(b);if(b==g||b===document||g.HTMLElement&&b instanceof HTMLElement||typeof b.nodeName===k){var s=b.tagName||"DomElement";if(b.id)s+=" - "+b.id;d.trace(c+l+" {"+s+"}")}else{var q=Object.getTypeName(b);d.trace(c+l+(typeof q===k?" {"+q+"}":x));if(c===x||n){c+="    ";var m,r,t,o,p;if(b instanceof Array){r=b.length;for(m=0;m<r;m++)d._traceDump(b[m],"["+m+"]",n,c,h)}else for(o in b){p=b[o];typeof p!==f&&d._traceDump(p,o,n,c,h)}}}Array.remove(h,b)}}};w.registerClass("Sys._Debug");w=b.Debug=new b._Debug;w.isDebug=d;function Hb(e,g){var d=this,c,a,m;if(g){c=d.__lowerCaseValues;if(!c){d.__lowerCaseValues=c={};var j=d.prototype;for(var l in j)c[l.toLowerCase()]=j[l]}}else c=d.prototype;function h(c){if(typeof a!==i)throw Error.argument("value",String.format(b.Res.enumInvalidValue,c,this.__typeName));}if(!d.__flags){m=g?e.toLowerCase():e;a=c[m.trim()];typeof a!==i&&h.call(d,e);return a}else{for(var k=(g?e.toLowerCase():e).split(G),n=0,f=k.length-1;f>=0;f--){var o=k[f].trim();a=c[o];typeof a!==i&&h.call(d,e.split(G)[f].trim());n|=a}return n}}function Gb(d){var f=this;if(typeof d===e||d===a)return f.__string;var g=f.prototype,b;if(!f.__flags||d===0){for(b in g)if(g[b]===d)return b}else{var c=f.__sortedValues;if(!c){c=[];for(b in g)c.push({key:b,value:g[b]});c.sort(function(a,b){return a.value-b.value});f.__sortedValues=c}var i=[],j=d;for(b=c.length-1;b>=0;b--){var k=c[b],h=k.value;if(h===0)continue;if((h&d)===h){i.push(k.key);j-=h;if(j===0)break}}if(i.length&&j===0)return i.reverse().join(", ")}return x}w=Type;w.prototype.registerEnum=function(d,f){var a=this;b.__upperCaseTypes[d.toUpperCase()]=a;for(var e in a.prototype)a[e]=a.prototype[e];a.__typeName=d;a.parse=Hb;a.__string=a.toString();a.toString=Gb;a.__flags=f;a.__enum=c};w.isEnum=function(a){return!!(a&&a.__enum)};w.isFlags=function(a){return!!(a&&a.__flags)};w=b.CollectionChange=function(g,b,e,c,f){var d=this;d.action=g;if(b)if(!(b instanceof Array))b=[b];d.newItems=b||a;if(typeof e!==i)e=y;d.newStartingIndex=e;if(c)if(!(c instanceof Array))c=[c];d.oldItems=c||a;if(typeof f!==i)f=y;d.oldStartingIndex=f};w.registerClass("Sys.CollectionChange");w=b.NotifyCollectionChangedAction=function(){};w.prototype={add:0,remove:1,reset:2};w.registerEnum("Sys.NotifyCollectionChangedAction");w=b.NotifyCollectionChangedEventArgs=function(a){this._changes=a;b.NotifyCollectionChangedEventArgs.initializeBase(this)};w.prototype={get_changes:function(){return this._changes||[]}};w.registerClass("Sys.NotifyCollectionChangedEventArgs",b.EventArgs);w=b.Observer=function(){};w.registerClass("Sys.Observer");w.makeObservable=function(a){var d=a instanceof Array,c=b.Observer;if(a.setValue===c._observeMethods.setValue)return a;c._addMethods(a,c._observeMethods);d&&c._addMethods(a,c._arrayMethods);return a};w._addMethods=function(c,a){for(var b in a)c[b]=a[b]};w._addEventHandler=function(e,a,d){b.Observer._getContext(e,c).events._addHandler(a,d)};w.addEventHandler=function(d,a,c){b.Observer._addEventHandler(d,a,c)};w._removeEventHandler=function(e,a,d){b.Observer._getContext(e,c).events._removeHandler(a,d)};w.removeEventHandler=function(d,a,c){b.Observer._removeEventHandler(d,a,c)};w.clearEventHandlers=function(d,a){b.Observer._getContext(d,c).events._removeHandlers(a)};w.raiseEvent=function(c,f,e){var d=b.Observer._getContext(c);if(!d)return;var a=d.events.getHandler(f);a&&a(c,e||b.EventArgs.Empty)};w.addPropertyChanged=function(c,a){b.Observer._addEventHandler(c,C,a)};w.removePropertyChanged=function(c,a){b.Observer._removeEventHandler(c,C,a)};w.beginUpdate=function(a){b.Observer._getContext(a,c).updating=c};w.endUpdate=function(e){var c=b.Observer._getContext(e);if(!c||!c.updating)return;c.updating=d;var g=c.dirty;c.dirty=d;if(g){if(e instanceof Array){var f=c.changes;c.changes=a;b.Observer.raiseCollectionChanged(e,f)}b.Observer.raisePropertyChanged(e,x)}};w.isUpdating=function(c){var a=b.Observer._getContext(c);return a?a.updating:d};w._setValue=function(d,o,l){for(var g,v,p=d,i=o.split(j),n=0,r=i.length-1;n<r;n++){var q=i[n];g=d[V+q];if(typeof g===f)d=g.call(d);else d=d[q];var s=typeof d;if(d===a||s===e)throw Error.invalidOperation(String.format(b.Res.nullReferenceInPath,o));}var k,h=i[r];g=d[V+h];if(typeof g===f)k=g.call(d);else k=d[h];u(d,t+h,l)||(d[h]=l);if(k!==l){var m=b.Observer._getContext(p);if(m&&m.updating){m.dirty=c;return}b.Observer.raisePropertyChanged(p,i[0])}};w.setValue=function(c,a,d){b.Observer._setValue(c,a,d)};w.raisePropertyChanged=function(c,a){b.Observer.raiseEvent(c,C,new b.PropertyChangedEventArgs(a))};w.addCollectionChanged=function(c,a){b.Observer._addEventHandler(c,J,a)};w.removeCollectionChanged=function(c,a){b.Observer._removeEventHandler(c,J,a)};w._collectionChange=function(e,d){var a=this._getContext(e);if(a&&a.updating){a.dirty=c;var b=a.changes;if(!b)a.changes=b=[d];else b.push(d)}else{this.raiseCollectionChanged(e,[d]);this.raisePropertyChanged(e,"length")}};w.add=function(a,c){var d=new b.CollectionChange(b.NotifyCollectionChangedAction.add,[c],a.length);Array.add(a,c);b.Observer._collectionChange(a,d)};w.addRange=function(a,c){var d=new b.CollectionChange(b.NotifyCollectionChangedAction.add,c,a.length);Array.addRange(a,c);b.Observer._collectionChange(a,d)};w.clear=function(c){var d=Array.clone(c);Array.clear(c);b.Observer._collectionChange(c,new b.CollectionChange(b.NotifyCollectionChangedAction.reset,a,y,d,0))};w.insert=function(a,c,d){Array.insert(a,c,d);b.Observer._collectionChange(a,new b.CollectionChange(b.NotifyCollectionChangedAction.add,[d],c))};w.remove=function(e,f){var g=Array.indexOf(e,f);if(g!==y){Array.remove(e,f);b.Observer._collectionChange(e,new b.CollectionChange(b.NotifyCollectionChangedAction.remove,a,y,[f],g));return c}return d};w.removeAt=function(d,c){if(c>y&&c<d.length){var e=d[c];Array.removeAt(d,c);b.Observer._collectionChange(d,new b.CollectionChange(b.NotifyCollectionChangedAction.remove,a,y,[e],c))}};w.raiseCollectionChanged=function(c,a){b.Observer.raiseEvent(c,J,new b.NotifyCollectionChangedEventArgs(a))};w._observeMethods={add_propertyChanged:function(a){b.Observer._addEventHandler(this,C,a)},remove_propertyChanged:function(a){b.Observer._removeEventHandler(this,C,a)},addEventHandler:function(a,c){b.Observer._addEventHandler(this,a,c)},removeEventHandler:function(a,c){b.Observer._removeEventHandler(this,a,c)},clearEventHandlers:function(a){b.Observer._getContext(this,c).events._removeHandlers(a)},get_isUpdating:function(){return b.Observer.isUpdating(this)},beginUpdate:function(){b.Observer.beginUpdate(this)},endUpdate:function(){b.Observer.endUpdate(this)},setValue:function(c,a){b.Observer._setValue(this,c,a)},raiseEvent:function(d,c){b.Observer.raiseEvent(this,d,c||a)},raisePropertyChanged:function(a){b.Observer.raiseEvent(this,C,new b.PropertyChangedEventArgs(a))}};w._arrayMethods={add_collectionChanged:function(a){b.Observer._addEventHandler(this,J,a)},remove_collectionChanged:function(a){b.Observer._removeEventHandler(this,J,a)},add:function(a){b.Observer.add(this,a)},addRange:function(a){b.Observer.addRange(this,a)},clear:function(){b.Observer.clear(this)},insert:function(a,c){b.Observer.insert(this,a,c)},remove:function(a){return b.Observer.remove(this,a)},removeAt:function(a){b.Observer.removeAt(this,a)},raiseCollectionChanged:function(a){b.Observer.raiseEvent(this,J,new b.NotifyCollectionChangedEventArgs(a))}};w._getContext=function(c,d){var b=c._observerContext;return b?b():d?(c._observerContext=this._createContext())():a};w._createContext=function(){var a={events:new b.EventHandlerList};return function(){return a}};function N(a,c,b){return a<c||a>b}function Ib(c,a){var d=new Date,e=wb(d);if(a<B){var b=yb(d,c,e);a+=b-b%B;if(a>c.Calendar.TwoDigitYearMax)a-=B}return a}function wb(f,d){if(!d)return 0;for(var c,e=f.getTime(),b=0,g=d.length;b<g;b+=4){c=d[b+2];if(c===a||e>=c)return b}return 0}function yb(d,b,e,c){var a=d.getFullYear();if(!c&&b.eras)a-=b.eras[e+3];return a}b._appendPreOrPostMatch=function(f,b){for(var e=0,a=d,c=0,h=f.length;c<h;c++){var g=f.charAt(c);switch(g){case"'":if(a)b.push("'");else e++;a=d;break;case"\\":a&&b.push("\\");a=!a;break;default:b.push(g);a=d}}return e};w=Date;w._expandFormat=function(a,c){c=c||"F";var d=c.length;if(d===1)switch(c){case"d":return a.ShortDatePattern;case"D":return a.LongDatePattern;case"t":return a.ShortTimePattern;case"T":return a.LongTimePattern;case"f":return a.LongDatePattern+h+a.ShortTimePattern;case"F":return a.FullDateTimePattern;case"M":case"m":return a.MonthDayPattern;case"s":return a.SortableDateTimePattern;case"Y":case"y":return a.YearMonthPattern;default:throw Error.format(b.Res.formatInvalidString);}else if(d===2&&c.charAt(0)==="%")c=c.charAt(1);return c};w._getParseRegExp=function(g,i){var h=g._parseRegExp;if(!h)g._parseRegExp=h={};else{var o=h[i];if(o)return o}var e=Date._expandFormat(g,i);e=e.replace(/([\^\$\.\*\+\?\|\[\]\(\)\{\}])/g,"\\\\$1");var d=["^"],p=[],j=0,m=0,l=Date._getTokenRegExp(),f;while((f=l.exec(e))!==a){var s=e.slice(j,f.index);j=l.lastIndex;m+=b._appendPreOrPostMatch(s,d);if(m%2){d.push(f[0]);continue}var q=f[0],t=q.length,c;switch(q){case W:case"ddd":case X:case"MMM":case"gg":case"g":c="(\\D+)";break;case"tt":case"t":c="(\\D*)";break;case Y:case"fff":case"ff":case"f":c="(\\d{"+t+"})";break;case"dd":case"d":case"MM":case"M":case"yy":case"y":case"HH":case"H":case"hh":case"h":case"mm":case"m":case"ss":case"s":c="(\\d\\d?)";break;case"zzz":c="([+-]?\\d\\d?:\\d{2})";break;case"zz":case"z":c="([+-]?\\d\\d?)";break;case D:c="(\\"+g.DateSeparator+")"}c&&d.push(c);p.push(f[0])}b._appendPreOrPostMatch(e.slice(j),d);d.push(n);var r=d.join(x).replace(/\s+/g,"\\s+"),k={regExp:r,groups:p};h[i]=k;return k};w._getTokenRegExp=function(){return/\/|dddd|ddd|dd|d|MMMM|MMM|MM|M|yyyy|yy|y|hh|h|HH|H|mm|m|ss|s|tt|t|fff|ff|f|zzz|zz|z|gg|g/g};w.parseLocale=function(a){return Date._parse(a,b.CultureInfo.CurrentCulture,arguments)};w.parseInvariant=function(a){return Date._parse(a,b.CultureInfo.InvariantCulture,arguments)};w._parse=function(k,g,l){var b,f,e,i,h,j=d;for(b=1,f=l.length;b<f;b++){i=l[b];if(i){j=c;e=Date._parseExact(k,i,g);if(e)return e}}if(!j){h=g._getDateTimeFormats();for(b=0,f=h.length;b<f;b++){e=Date._parseExact(k,h[b],g);if(e)return e}}return a};w._parseExact=function(w,J,s){w=w.trim();var e=s.dateTimeFormat,F=this._getParseRegExp(e,J),I=(new RegExp(F.regExp)).exec(w);if(I===a)return a;for(var H=F.groups,y=a,j=a,h=a,i=a,p=a,f=0,k,z=0,A=0,x=0,l=a,v=d,r=0,K=H.length;r<K;r++){var g=I[r+1];if(g){var G=H[r],m=G.length,c=parseInt(g,10);switch(G){case"dd":case"d":i=c;if(N(i,1,31))return a;break;case"MMM":case X:h=s._getMonthIndex(g,m===3);if(N(h,0,11))return a;break;case"M":case"MM":h=c-1;if(N(h,0,11))return a;break;case"y":case"yy":case Y:j=m<4?Ib(e,c):c;if(N(j,0,9999))return a;break;case"h":case"hh":f=c;if(f===12)f=0;if(N(f,0,11))return a;break;case"H":case"HH":f=c;if(N(f,0,23))return a;break;case"m":case"mm":z=c;if(N(z,0,59))return a;break;case"s":case"ss":A=c;if(N(A,0,59))return a;break;case"tt":case"t":var D=g.toUpperCase();v=D===e.PMDesignator.toUpperCase();if(!v&&D!==e.AMDesignator.toUpperCase())return a;break;case"f":case"ff":case"fff":x=c*Math.pow(10,3-m);if(N(x,0,999))return a;break;case"ddd":case W:p=s._getDayIndex(g,m===3);if(N(p,0,6))return a;break;case"zzz":var u=g.split(/:/);if(u.length!==2)return a;k=parseInt(u[0],10);if(N(k,-12,13))return a;var t=parseInt(u[1],10);if(N(t,0,59))return a;l=k*60+(g.startsWith(E)?-t:t);break;case"z":case"zz":k=c;if(N(k,-12,13))return a;l=k*60;break;case"g":case"gg":var o=g;if(!o||!e.eras)return a;o=o.toLowerCase().trim();for(var q=0,L=e.eras.length;q<L;q+=4)if(o===e.eras[q+1].toLowerCase()){y=q;break}if(y===a)return a}}}var b=new Date,C,n=e.Calendar.convert;C=n?n.fromGregorian(b)[0]:b.getFullYear();if(j===a)j=C;else if(e.eras)j+=e.eras[(y||0)+3];if(h===a)h=0;if(i===a)i=1;if(n){b=n.toGregorian(j,h,i);if(b===a)return a}else{b.setFullYear(j,h,i);if(b.getDate()!==i)return a;if(p!==a&&b.getDay()!==p)return a}if(v&&f<12)f+=12;b.setHours(f,z,A,x);if(l!==a){var B=b.getMinutes()-(l+b.getTimezoneOffset());b.setHours(b.getHours()+parseInt(B/60,10),B%60)}return b};z=w.prototype;z.format=function(a){return this._toFormattedString(a,b.CultureInfo.InvariantCulture)};z.localeFormat=function(a){return this._toFormattedString(a,b.CultureInfo.CurrentCulture)};z._toFormattedString=function(h,n){var d=this,e=n.dateTimeFormat,o=e.Calendar.convert;if(!h||!h.length||h==="i"){var a;if(n&&n.name.length)if(o)a=d._toFormattedString(e.FullDateTimePattern,n);else{var z=new Date(d.getTime()),K=wb(d,e.eras);z.setFullYear(yb(d,e,K));a=z.toLocaleString()}else a=d.toString();return a}var A=e.eras,w=h==="s";h=Date._expandFormat(e,h);a=[];var i,J=["0","00","000"];function g(c,a){var b=c+x;return a>1&&b.length<a?(J[a-2]+b).substr(-a):b}var l,t,C=/([^d]|^)(d|dd)([^d]|$)/g;function G(){if(l||t)return l;l=C.test(h);t=c;return l}var v=0,s=Date._getTokenRegExp(),k;if(!w&&o)k=o.fromGregorian(d);for(;c;){var I=s.lastIndex,m=s.exec(h),F=h.slice(I,m?m.index:h.length);v+=b._appendPreOrPostMatch(F,a);if(!m)break;if(v%2){a.push(m[0]);continue}function p(a,b){if(k)return k[b];switch(b){case 0:return a.getFullYear();case 1:return a.getMonth();case 2:return a.getDate()}}var y=m[0],f=y.length;switch(y){case"ddd":case W:q=f===3?e.AbbreviatedDayNames:e.DayNames;a.push(q[d.getDay()]);break;case"d":case"dd":l=c;a.push(g(p(d,2),f));break;case"MMM":case X:var u=f===3?Z:x,r=e[u+pb],q=e[u+qb],j=p(d,1);a.push(r&&G()?r[j]:q[j]);break;case"M":case"MM":a.push(g(p(d,1)+1,f));break;case"y":case"yy":case Y:j=k?k[0]:yb(d,e,wb(d,A),w);if(f<4)j=j%B;a.push(g(j,f));break;case"h":case"hh":i=d.getHours()%12;if(i===0)i=12;a.push(g(i,f));break;case"H":case"HH":a.push(g(d.getHours(),f));break;case"m":case"mm":a.push(g(d.getMinutes(),f));break;case"s":case"ss":a.push(g(d.getSeconds(),f));break;case"t":case"tt":j=d.getHours()<12?e.AMDesignator:e.PMDesignator;a.push(f===1?j.charAt(0):j);break;case"f":case"ff":case"fff":a.push(g(d.getMilliseconds(),3).substr(0,f));break;case"z":case"zz":i=d.getTimezoneOffset()/60;a.push((i<=0?H:E)+g(Math.floor(Math.abs(i)),f));break;case"zzz":i=d.getTimezoneOffset()/60;a.push((i<=0?H:E)+g(Math.floor(Math.abs(i)),2)+":"+g(Math.abs(d.getTimezoneOffset()%60),2));break;case"g":case"gg":e.eras&&a.push(e.eras[wb(d,A)+1]);break;case D:a.push(e.DateSeparator)}}return a.join(x)};String.localeFormat=function(){return String._toFormattedString(c,arguments)};var Fb={P:["Percent",["-n %","-n%","-%n"],["n %","n%","%n"],B],N:["Number",["(n)","-n","- n","n-","n -"],a,1],C:["Currency",["($n)","-$n","$-n","$n-","(n$)","-n$","n-$","n$-","-n $","-$ n","n $-","$ n-","$ -n","n- $","($ n)","(n $)"],["$n","n$","$ n","n $"],1]};b._toFormattedString=function(f,q){var i=this;if(!f||!f.length||f==="i")return q&&q.name.length?i.toLocaleString():i.toString();function o(a,c,d){for(var b=a.length;b<c;b++)a=d?"0"+a:a+"0";return a}function s(l,i,n,q,s){var k=n[0],m=1,r=Math.pow(10,i),p=Math.round(l*r)/r;if(!isFinite(p))p=l;l=p;var b=l+x,a=x,e,g=b.split(/e/i);b=g[0];e=g.length>1?parseInt(g[1]):0;g=b.split(j);b=g[0];a=g.length>1?g[1]:x;var t;if(e>0){a=o(a,e,d);b+=a.slice(0,e);a=a.substr(e)}else if(e<0){e=-e;b=o(b,e+1,c);a=b.slice(-e,b.length)+a;b=b.slice(0,-e)}if(i>0)a=s+(a.length>i?a.slice(0,i):o(a,i,d));else a=x;var f=b.length-1,h=x;while(f>=0){if(k===0||k>f)return b.slice(0,f+1)+(h.length?q+h+a:a);h=b.slice(f-k+1,f+1)+(h.length?q+h:x);f-=k;if(m<n.length){k=n[m];m++}}return b.slice(0,f+1)+q+h+a}var a=q.numberFormat,g=Math.abs(i);f=f||"D";var h=y;if(f.length>1)h=parseInt(f.slice(1),10);var m,e=f.charAt(0).toUpperCase();switch(e){case"D":m="n";if(h!==y)g=o(x+g,h,c);if(i<0)g=-g;break;case"C":case"N":case"P":e=Fb[e];var k=e[0];m=i<0?e[1][a[k+"NegativePattern"]]:e[2]?e[2][a[k+"PositivePattern"]]:"n";if(h===y)h=a[k+"DecimalDigits"];g=s(Math.abs(i)*e[3],h,a[k+"GroupSizes"],a[k+"GroupSeparator"],a[k+"DecimalSeparator"]);break;default:throw Error.format(b.Res.formatBadFormatSpecifier);}for(var r=/n|\$|-|%/g,l=x;c;){var t=r.lastIndex,p=r.exec(m);l+=m.slice(t,p?p.index:m.length);if(!p)break;switch(p[0]){case"n":l+=g;break;case n:l+=a.CurrencySymbol;break;case E:if(/[1-9]/.test(g))l+=a.NegativeSign;break;case"%":l+=a.PercentSymbol}}return l};w=Number;w.parseLocale=function(a){return Number._parse(a,b.CultureInfo.CurrentCulture)};w.parseInvariant=function(a){return Number._parse(a,b.CultureInfo.InvariantCulture)};w._parse=function(b,t){b=b.trim();if(b.match(/^[+-]?infinity$/i))return parseFloat(b);if(b.match(/^0x[a-f0-9]+$/i))return parseInt(b);var c=t.numberFormat,i=Number._parseNumberNegativePattern(b,c,c.NumberNegativePattern),k=i[0],f=i[1];if(k===x&&c.NumberNegativePattern!==1){i=Number._parseNumberNegativePattern(b,c,1);k=i[0];f=i[1]}if(k===x)k=H;var m,e,g=f.indexOf("e");if(g<0)g=f.indexOf("E");if(g<0){e=f;m=a}else{e=f.substr(0,g);m=f.substr(g+1)}var d,n,s=c.NumberDecimalSeparator,q=e.indexOf(s);if(q<0){d=e;n=a}else{d=e.substr(0,q);n=e.substr(q+s.length)}var p=c.NumberGroupSeparator;d=d.split(p).join(x);var r=p.replace(/\u00A0/g,h);if(p!==r)d=d.split(r).join(x);var o=k+d;if(n!==a)o+=j+n;if(m!==a){var l=Number._parseNumberNegativePattern(m,c,1);if(l[0]===x)l[0]=H;o+="e"+l[0]+l[1]}return o.match(/^[+-]?\d*\.?\d*(e[+-]?\d+)?$/)?parseFloat(o):Number.NaN};w._parseNumberNegativePattern=function(a,d,e){var b=d.NegativeSign,c=d.PositiveSign;switch(e){case 4:b=h+b;c=h+c;case 3:if(a.endsWith(b))return[E,a.substr(0,a.length-b.length)];else if(a.endsWith(c))return[H,a.substr(0,a.length-c.length)];break;case 2:b+=h;c+=h;case 1:if(a.startsWith(b))return[E,a.substr(b.length)];else if(a.startsWith(c))return[H,a.substr(c.length)];break;case 0:if(a.startsWith("(")&&a.endsWith(")"))return[E,a.substr(1,a.length-2)]}return[x,a]};z=w.prototype;z.format=function(a){return b._toFormattedString.call(this,a,b.CultureInfo.InvariantCulture)};z.localeFormat=function(a){return b._toFormattedString.call(this,a,b.CultureInfo.CurrentCulture)};function Ab(a){return a.split(" ").join(h).toUpperCase()}function xb(b){var a=[];p(b,function(b,c){a[c]=Ab(b)});return a}function Cb(c){var b={};v(c,function(c,d){b[d]=c instanceof Array?c.length===1?[c]:Array.apply(a,c):typeof c===o?Cb(c):c});return b}w=b.CultureInfo=function(c,b,a){this.name=c;this.numberFormat=b;this.dateTimeFormat=a};w.prototype={_getDateTimeFormats:function(){var b=this._dateTimeFormats;if(!b){var a=this.dateTimeFormat;this._dateTimeFormats=b=[a.MonthDayPattern,a.YearMonthPattern,a.ShortDatePattern,a.ShortTimePattern,a.LongDatePattern,a.LongTimePattern,a.FullDateTimePattern,a.RFC1123Pattern,a.SortableDateTimePattern,a.UniversalSortableDateTimePattern]}return b},_getMonthIndex:function(b,g){var a=this,c=g?"_upperAbbrMonths":"_upperMonths",e=c+"Genitive",h=a[c];if(!h){var f=g?Z:x;a[c]=xb(a.dateTimeFormat[f+qb]);a[e]=xb(a.dateTimeFormat[f+pb])}b=Ab(b);var d=tb(a[c],b);if(d<0)d=tb(a[e],b);return d},_getDayIndex:function(e,c){var a=this,b=c?"_upperAbbrDays":"_upperDays",d=a[b];if(!d)a[b]=xb(a.dateTimeFormat[(c?Z:x)+"DayNames"]);return tb(a[b],Ab(e))}};w.registerClass("Sys.CultureInfo");w._parse=function(a){var c=a.dateTimeFormat;if(c&&!c.eras)c.eras=a.eras;return new b.CultureInfo(a.name,a.numberFormat,c)};w._setup=function(){var c=this,b=g.__cultureInfo,f=["January","February","March","April","May","June","July","August","September","October","November","December",x],e=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec",x],h={name:x,numberFormat:{CurrencyDecimalDigits:2,CurrencyDecimalSeparator:j,CurrencyGroupSizes:[3],NumberGroupSizes:[3],PercentGroupSizes:[3],CurrencyGroupSeparator:G,CurrencySymbol:"¤",NaNSymbol:"NaN",CurrencyNegativePattern:0,NumberNegativePattern:1,PercentPositivePattern:0,PercentNegativePattern:0,NegativeInfinitySymbol:"-Infinity",NegativeSign:E,NumberDecimalDigits:2,NumberDecimalSeparator:j,NumberGroupSeparator:G,CurrencyPositivePattern:0,PositiveInfinitySymbol:"Infinity",PositiveSign:H,PercentDecimalDigits:2,PercentDecimalSeparator:j,PercentGroupSeparator:G,PercentSymbol:"%",PerMilleSymbol:"‰",NativeDigits:["0","1","2","3","4","5","6","7","8","9"],DigitSubstitution:1},dateTimeFormat:{AMDesignator:"AM",Calendar:{MinSupportedDateTime:"@-62135568000000@",MaxSupportedDateTime:"@253402300799999@",AlgorithmType:1,CalendarType:1,Eras:[1],TwoDigitYearMax:2029},DateSeparator:D,FirstDayOfWeek:0,CalendarWeekRule:0,FullDateTimePattern:"dddd, dd MMMM yyyy HH:mm:ss",LongDatePattern:"dddd, dd MMMM yyyy",LongTimePattern:"HH:mm:ss",MonthDayPattern:"MMMM dd",PMDesignator:"PM",RFC1123Pattern:"ddd, dd MMM yyyy HH':'mm':'ss 'GMT'",ShortDatePattern:"MM/dd/yyyy",ShortTimePattern:"HH:mm",SortableDateTimePattern:"yyyy'-'MM'-'dd'T'HH':'mm':'ss",TimeSeparator:":",UniversalSortableDateTimePattern:"yyyy'-'MM'-'dd HH':'mm':'ss'Z'",YearMonthPattern:"yyyy MMMM",AbbreviatedDayNames:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],ShortestDayNames:["Su","Mo","Tu","We","Th","Fr","Sa"],DayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],AbbreviatedMonthNames:e,MonthNames:f,NativeCalendarName:"Gregorian Calendar",AbbreviatedMonthGenitiveNames:Array.clone(e),MonthGenitiveNames:Array.clone(f)},eras:[1,"A.D.",a,0]};c.InvariantCulture=c._parse(h);switch(typeof b){case k:b=g.eval("("+b+")");case o:c.CurrentCulture=c._parse(b);delete __cultureInfo;break;default:b=Cb(h);b.name="en-US";b.numberFormat.CurrencySymbol=n;var d=b.dateTimeFormat;d.FullDatePattern="dddd, MMMM dd, yyyy h:mm:ss tt";d.LongDatePattern="dddd, MMMM dd, yyyy";d.LongTimePattern="h:mm:ss tt";d.ShortDatePattern="M/d/yyyy";d.ShortTimePattern="h:mm tt";d.YearMonthPattern="MMMM, yyyy";c.CurrentCulture=c._parse(b)}};w._setup();Type.registerNamespace("Sys.Serialization");w=b.Serialization.JavaScriptSerializer=function(){};w.registerClass("Sys.Serialization.JavaScriptSerializer");w._esc={charsRegExs:{'"':/\"/g,"\\":/\\/g},chars:["\\",'"'],dateRegEx:/(^|[^\\])\"\\\/Date\((-?[0-9]+)(?:[a-zA-Z]|(?:\+|-)[0-9]{4})?\)\\\/\"/g,escapeChars:{"\\":"\\\\",'"':'\\"',"\b":"\\b","\t":"\\t","\n":"\\n","\f":"\\f","\r":"\\r"},escapeRegExG:/[\"\\\x00-\x1F]/g,escapeRegEx:/[\"\\\x00-\x1F]/i,jsonRegEx:/[^,:{}\[\]0-9.\-+Eaeflnr-u \n\r\t]/g,jsonStringRegEx:/\"(\\.|[^\"\\])*\"/g};w._init=function(){for(var d=this._esc,g=d.chars,f=d.charsRegExs,e=d.escapeChars,b=0;b<32;b++){var a=String.fromCharCode(b);g[b+2]=a;f[a]=new RegExp(a,"g");e[a]=e[a]||"\\u"+("000"+b.toString(16)).slice(-4)}this._load=c};w._serializeNumberWithBuilder=function(a,c){if(!isFinite(a))throw Error.invalidOperation(b.Res.cannotSerializeNonFiniteNumbers);c.append(String(a))};w._serializeStringWithBuilder=function(a,e){e.append('"');var b=this._esc;if(b.escapeRegEx.test(a)){!this._load&&this._init();if(a.length<128)a=a.replace(b.escapeRegExG,function(a){return b.escapeChars[a]});else for(var d=0;d<34;d++){var c=b.chars[d];if(a.indexOf(c)!==y){var f=b.escapeChars[c];a=ib("Opera")||ib(S)?a.split(c).join(f):a.replace(b.charsRegExs[c],f)}}}e.append(a).append('"')};w._serializeWithBuilder=function(b,a,q,p){var h=this,g;switch(typeof b){case o:if(b)if(Number.isInstanceOfType(b))h._serializeNumberWithBuilder(b,a);else if(Boolean.isInstanceOfType(b))a.append(b);else if(String.isInstanceOfType(b))h._serializeStringWithBuilder(b,a);else if(b instanceof Array){a.append("[");for(g=0;g<b.length;++g){g&&a.append(G);h._serializeWithBuilder(b[g],a,d,p)}a.append("]")}else{if(Date.isInstanceOfType(b)){a.append('"\\/Date(').append(b.getTime()).append(')\\/"');break}var j=[],l=0;for(var m in b)if(m.charAt(0)!==n)if(m==="__type"&&l){j[l++]=j[0];j[0]=m}else j[l++]=m;q&&j.sort();a.append("{");var r;for(g=0;g<l;g++){var t=j[g],s=b[t],u=typeof s;if(u!==e&&u!==f){r&&a.append(G);h._serializeWithBuilder(t,a,q,p);a.append(":");h._serializeWithBuilder(s,a,q,p);r=c}}a.append("}")}else a.append(U);break;case i:h._serializeNumberWithBuilder(b,a);break;case k:h._serializeStringWithBuilder(b,a);break;case"boolean":a.append(b);break;default:a.append(U)}};w.serialize=function(c){var a=new b.StringBuilder;b.Serialization.JavaScriptSerializer._serializeWithBuilder(c,a,d);return a.toString()};w.deserialize=function(d,f){if(!d.length)throw Error.argument("data",b.Res.cannotDeserializeEmptyString);var h,c=b.Serialization.JavaScriptSerializer._esc;try{var e=d.replace(c.dateRegEx,"$1new Date($2)");if(f&&c.jsonRegEx.test(e.replace(c.jsonStringRegEx,x)))throw a;return g.eval("("+e+")")}catch(h){throw Error.argument("data",b.Res.cannotDeserializeInvalidJson);}};Type.registerNamespace("Sys.UI");w=b.EventHandlerList=function(){this._list={}};w.prototype={_addHandler:function(b,a){Array.add(this._getEvent(b,c),a)},addHandler:function(b,a){this._addHandler(b,a)},_removeHandler:function(c,b){var a=this._getEvent(c);if(!a)return;Array.remove(a,b)},_removeHandlers:function(b){if(!b)this._list={};else{var a=this._getEvent(b);if(!a)return;a.length=0}},removeHandler:function(b,a){this._removeHandler(b,a)},getHandler:function(c){var b=this._getEvent(c);if(!b||!b.length)return a;b=Array.clone(b);return function(c,d){for(var a=0,e=b.length;a<e;a++)b[a](c,d)}},_getEvent:function(c,d){var b=this._list[c];if(!b){if(!d)return a;this._list[c]=b=[]}return b}};w.registerClass("Sys.EventHandlerList");w=b.CommandEventArgs=function(f,c,d,e){var a=this;b.CommandEventArgs.initializeBase(a);a._commandName=f;a._commandArgument=c;a._commandSource=d;a._commandEvent=e};w.prototype={get_commandName:function(){return this._commandName||a},get_commandArgument:function(){return this._commandArgument},get_commandSource:function(){return this._commandSource||a},get_commandEvent:function(){return this._commandEvent||a}};w.registerClass("Sys.CommandEventArgs",b.CancelEventArgs);w=b.INotifyPropertyChange=function(){};w.registerInterface("Sys.INotifyPropertyChange");w=b.PropertyChangedEventArgs=function(a){b.PropertyChangedEventArgs.initializeBase(this);this._propertyName=a};w.prototype={get_propertyName:function(){return this._propertyName}};w.registerClass("Sys.PropertyChangedEventArgs",b.EventArgs);w=b.INotifyDisposing=function(){};w.registerInterface("Sys.INotifyDisposing");w=b.Component=function(){b.Application&&b.Application.registerDisposableObject(this)};w.prototype={get_events:function(){return b.Observer._getContext(this,c).events},get_id:function(){return this._id||a},set_id:function(a){this._id=a},get_isInitialized:function(){return!!this._initialized},get_isUpdating:function(){return!!this._updating},add_disposing:function(a){this._addHandler(ab,a)},remove_disposing:function(a){this._removeHandler(ab,a)},add_propertyChanged:function(a){this._addHandler(C,a)},remove_propertyChanged:function(a){this._removeHandler(C,a)},_addHandler:function(a,c){b.Observer.addEventHandler(this,a,c)},_removeHandler:function(a,c){b.Observer.removeEventHandler(this,a,c)},beginUpdate:function(){this._updating=c},dispose:function(){var a=this;b.Observer.raiseEvent(a,ab);b.Observer.clearEventHandlers(a);b.Application.unregisterDisposableObject(a);b.Application.removeComponent(a)},endUpdate:function(){var a=this;a._updating=d;!a._initialized&&a.initialize();a.updated()},initialize:function(){this._initialized=c},raisePropertyChanged:function(a){b.Observer.raisePropertyChanged(this,a)},updated:function(){}};w.registerClass("Sys.Component",a,b.IDisposable,b.INotifyPropertyChange,b.INotifyDisposing);w._setProperties=function(c,l){var e,m=Object.getType(c),h=m===Object||m===b.UI.DomElement,k=b.Component.isInstanceOfType(c)&&!c.get_isUpdating();k&&c.beginUpdate();for(var g in l){var d=l[g],i=h?a:c[V+g];if(h||typeof i!==f){var n=c[g];if(!d||typeof d!==o||h&&!n)c[g]=d;else this._setProperties(n,d)}else{var p=c[t+g];if(typeof p===f)p.apply(c,[d]);else if(d instanceof Array){e=i.apply(c);for(var j=0,q=e.length,r=d.length;j<r;j++,q++)e[q]=d[j]}else if(typeof d===o&&Object.getType(d)===Object){e=i.apply(c);this._setProperties(e,d)}}}k&&c.endUpdate()};w._setReferences=function(e,d){var a,c={};v(d,function(d,e){c[e]=a=$find(d);if(!a)throw Error.invalidOperation(String.format(b.Res.referenceNotFound,d));});b._set(e,c)};$create=w.create=function(g,d,c,h,e){var a=e?new g(e):new g;u(a,jb);d&&b.Component._setProperties(a,d);if(c)for(var f in c)a["add_"+f](c[f]);b.Component._register(a,h);return a};w._register=function(a,d,f){var g;if(b.Component.isInstanceOfType(a)){g=c;var e=b.Application;a.get_id()&&e.addComponent(a);if(e.get_isCreatingComponents()){e._createdComponents.push(a);if(d)e._addComponentToSecondPass(a,d);else!f&&a.endUpdate()}else{d&&b.Component._setReferences(a,d);!f&&a.endUpdate()}}return g};b._getComponent=function(d,c){var a=b.Application.findComponent(c);a&&d.push(a)};b._2Pass=function(d){var a=b.Application,c=!a.get_isCreatingComponents();c&&a.beginCreateComponents();p(d,function(a){a()});c&&a.endCreateComponents()};w=b.UI.MouseButton=function(){};w.prototype={leftButton:0,middleButton:1,rightButton:2};w.registerEnum("Sys.UI.MouseButton");w=b.UI.Key=function(){};w.prototype={backspace:8,tab:9,enter:13,esc:27,space:32,pageUp:33,pageDown:34,end:35,home:36,left:37,up:38,right:39,down:40,del:127};w.registerEnum("Sys.UI.Key");w=b.UI.Point=function(a,b){this.x=a;this.y=b};w.registerClass("Sys.UI.Point");w=b.UI.Bounds=function(d,e,c,b){var a=this;a.x=d;a.y=e;a.height=b;a.width=c};w.registerClass("Sys.UI.Bounds");w=b.UI.DomEvent=function(h){var c=this,a=h,d=c.type=a.type.toLowerCase();c.rawEvent=a;c.altKey=a.altKey;if(typeof a.button!==e)c.button=typeof a.which!==e?a.button:a.button===4?b.UI.MouseButton.middleButton:a.button===2?b.UI.MouseButton.rightButton:b.UI.MouseButton.leftButton;if(d==="keypress")c.charCode=a.charCode||a.keyCode;else if(a.keyCode&&a.keyCode===46)c.keyCode=127;else c.keyCode=a.keyCode;c.clientX=a.clientX;c.clientY=a.clientY;c.ctrlKey=a.ctrlKey;c.target=a.target||a.srcElement;if(!d.startsWith("key"))if(typeof a.offsetX!==e&&typeof a.offsetY!==e){c.offsetX=a.offsetX;c.offsetY=a.offsetY}else if(c.target&&c.target.nodeType!==3&&typeof a.clientX===i){var f=b.UI.DomElement.getLocation(c.target),g=b.UI.DomElement._getWindow(c.target);c.offsetX=(g.pageXOffset||0)+a.clientX-f.x;c.offsetY=(g.pageYOffset||0)+a.clientY-f.y}c.screenX=a.screenX;c.screenY=a.screenY;c.shiftKey=a.shiftKey};w.prototype={preventDefault:function(){var a=this.rawEvent;if(a.preventDefault)a.preventDefault();else if(g.event)a.returnValue=d},stopPropagation:function(){var a=this.rawEvent;if(a.stopPropagation)a.stopPropagation();else if(g.event)a.cancelBubble=c}};w.registerClass("Sys.UI.DomEvent");$addHandler=w.addHandler=function(f,a,c,e){b.query(f).each(function(){var f=this,i=f.nodeType;if(i===3||i===2||i===8)return;if(!f._events)f._events={};var h=f._events[a];if(!h)f._events[a]=h=[];var j=f,g;if(f.addEventListener){g=function(a){return c.call(j,new b.UI.DomEvent(a))};f.addEventListener(a,g,d)}else if(f.attachEvent){g=function(){var d,a={};try{a=b.UI.DomElement._getWindow(j).event}catch(d){}return c.call(j,new b.UI.DomEvent(a))};f.attachEvent(q+a,g)}h.push({handler:c,browserHandler:g,autoRemove:e});e&&b.UI.DomElement._onDispose(f,b.UI.DomEvent._disposeHandlers)})};b.registerPlugin({name:"addHandler",dom:c,plugin:function(c,d,a){b.UI.DomEvent.addHandler(this.get(),c,d,a);return this}});$addHandlers=w.addHandlers=function(f,c,a,e){b.query(f).each(function(){var b=this.nodeType;if(b===3||b===2||b===8)return;for(var g in c){var f=c[g];if(a)f=Function.createDelegate(a,f);$addHandler(this,g,f,e||d)}})};b.registerPlugin({name:"addHandlers",dom:c,plugin:function(d,a,c){b.UI.DomEvent.addHandlers(this.get(),d,a,c);return this}});$clearHandlers=w.clearHandlers=function(a){b.query(a).each(function(){var a=this.nodeType;if(a===3||a===2||a===8)return;b.UI.DomEvent._clearHandlers(this,d)})};b.registerPlugin({name:"clearHandlers",dom:c,plugin:function(){b.UI.DomEvent.clearHandlers(this.get());return this}});w._clearHandlers=function(c,a){b.query(c).each(function(){var b=this.nodeType;if(b===3||b===2||b===8)return;var c=this._events;if(c)for(var g in c)for(var e=c[g],d=e.length-1;d>=0;d--){var f=e[d];(!a||f.autoRemove)&&$removeHandler(this,g,f.handler)}})};w._disposeHandlers=function(){b.UI.DomEvent._clearHandlers(this,c)};$removeHandler=w.removeHandler=function(c,a,d){b.UI.DomEvent._removeHandler(c,a,d)};w._removeHandler=function(e,c,f){b.query(e).each(function(){var b=this,i=b.nodeType;if(i===3||i===2||i===8)return;for(var h=a,g=b._events[c],e=0,j=g.length;e<j;e++)if(g[e].handler===f){h=g[e].browserHandler;break}if(b.removeEventListener)b.removeEventListener(c,h,d);else b.detachEvent&&b.detachEvent(q+c,h);g.splice(e,1)})};b.registerPlugin({name:"removeHandler",dom:c,plugin:function(a,c){b.UI.DomEvent.removeHandler(this.get(),a,c);return this}});w=b.UI.DomElement=function(){};w.registerClass("Sys.UI.DomElement");w.addCssClass=function(a,c){if(!b.UI.DomElement.containsCssClass(a,c))if(a.className===x)a.className=c;else a.className+=h+c};w.containsCssClass=function(b,a){return Array.contains(b.className.split(h),a)};w.getBounds=function(a){var c=b.UI.DomElement.getLocation(a);return new b.UI.Bounds(c.x,c.y,a.offsetWidth||0,a.offsetHeight||0)};$get=w.getElementById=function(d,c){return b.get(l+d,c||a)};if(document.documentElement.getBoundingClientRect)w.getLocation=function(d){if(d.self||d.nodeType===9||d===document.documentElement||d.parentNode===d.ownerDocument.documentElement)return new b.UI.Point(0,0);var j=d.getBoundingClientRect();if(!j)return new b.UI.Point(0,0);var n,e=d.ownerDocument,i=e.documentElement,f=Math.round(j.left)+(i.scrollLeft||(e.body?e.body.scrollLeft:0)),g=Math.round(j.top)+(i.scrollTop||(e.body?e.body.scrollTop:0));if(ib(bb)){try{var h=d.ownerDocument.parentWindow.frameElement||a;if(h){h=h.frameBorder;var k=h==="0"||h==="no"?2:0;f+=k;g+=k}}catch(n){}if(b.Browser.version===7&&!document.documentMode){var l=document.body,m=l.getBoundingClientRect(),c=(m.right-m.left)/l.clientWidth;c=Math.round(c*B);c=(c-c%5)/B;if(!isNaN(c)&&c!==1){f=Math.round(f/c);g=Math.round(g/c)}}if((document.documentMode||0)<8){f-=i.clientLeft;g-=i.clientTop}}return new b.UI.Point(f,g)};else if(ib("Safari"))w.getLocation=function(e){if(e.window&&e.window===e||e.nodeType===9)return new b.UI.Point(0,0);for(var f=0,g=0,k=a,i=a,d,c=e;c;k=c,i=d,c=c.offsetParent){d=b.UI.DomElement._getCurrentStyle(c);var h=c.tagName?c.tagName.toUpperCase():a;if((c.offsetLeft||c.offsetTop)&&(h!==O||(!i||i.position!==I))){f+=c.offsetLeft;g+=c.offsetTop}if(k&&b.Browser.version>=3){f+=parseInt(d.borderLeftWidth);g+=parseInt(d.borderTopWidth)}}d=b.UI.DomElement._getCurrentStyle(e);var l=d?d.position:a;if(l!==I)for(c=e.parentNode;c;c=c.parentNode){h=c.tagName?c.tagName.toUpperCase():a;if(h!==O&&h!==cb&&(c.scrollLeft||c.scrollTop)){f-=c.scrollLeft||0;g-=c.scrollTop||0}d=b.UI.DomElement._getCurrentStyle(c);var j=d?d.position:a;if(j&&j===I)break}return new b.UI.Point(f,g)};else w.getLocation=function(f){if(f.window&&f.window===f||f.nodeType===9)return new b.UI.Point(0,0);for(var g=0,h=0,j=a,i=a,d=a,c=f;c;j=c,i=d,c=c.offsetParent){var e=c.tagName?c.tagName.toUpperCase():a;d=b.UI.DomElement._getCurrentStyle(c);if((c.offsetLeft||c.offsetTop)&&!(e===O&&(!i||i.position!==I))){g+=c.offsetLeft;h+=c.offsetTop}if(j!==a&&d){if(e!=="TABLE"&&e!=="TD"&&e!==cb){g+=parseInt(d.borderLeftWidth)||0;h+=parseInt(d.borderTopWidth)||0}if(e==="TABLE"&&(d.position==="relative"||d.position===I)){g+=parseInt(d.marginLeft)||0;h+=parseInt(d.marginTop)||0}}}d=b.UI.DomElement._getCurrentStyle(f);var k=d?d.position:a;if(k!==I)for(c=f.parentNode;c;c=c.parentNode){e=c.tagName?c.tagName.toUpperCase():a;if(e!==O&&e!==cb&&(c.scrollLeft||c.scrollTop)){g-=c.scrollLeft||0;h-=c.scrollTop||0;d=b.UI.DomElement._getCurrentStyle(c);if(d){g+=parseInt(d.borderLeftWidth)||0;h+=parseInt(d.borderTopWidth)||0}}}return new b.UI.Point(g,h)};w.isDomElement=function(a){return b._isDomElement(a)};w.removeCssClass=function(d,c){var a=h+d.className+h,b=a.indexOf(h+c+h);if(b>=0)d.className=(a.substr(0,b)+h+a.substring(b+c.length+1,a.length)).trim()};w.resolveElement=function(d,e){var c=d;if(!c)return a;if(typeof c===k)c=b.get(l+c,e);return c};w.raiseBubbleEvent=function(c,d){var b=c;while(b){var a=b.control;if(a&&a.onBubbleEvent&&a.raiseBubbleEvent){!a.onBubbleEvent(c,d)&&a._raiseBubbleEvent(c,d);return}b=b.parentNode}};w._ensureGet=function(a,c){return b.get(a,c)};w.setLocation=function(b,c,d){var a=b.style;a.position=I;a.left=c+"px";a.top=d+"px"};w.toggleCssClass=function(c,a){if(b.UI.DomElement.containsCssClass(c,a))b.UI.DomElement.removeCssClass(c,a);else b.UI.DomElement.addCssClass(c,a)};w.getVisibilityMode=function(a){return a._visibilityMode===b.UI.VisibilityMode.hide?b.UI.VisibilityMode.hide:b.UI.VisibilityMode.collapse};w.setVisibilityMode=function(a,c){b.UI.DomElement._ensureOldDisplayMode(a);if(a._visibilityMode!==c){a._visibilityMode=c;if(b.UI.DomElement.getVisible(a)===d)a.style.display=c===b.UI.VisibilityMode.hide?a._oldDisplayMode:P}};w.getVisible=function(d){var a=d.currentStyle||b.UI.DomElement._getCurrentStyle(d);return a?a.visibility!=="hidden"&&a.display!==P:c};w.setVisible=function(a,c){if(c!==b.UI.DomElement.getVisible(a)){b.UI.DomElement._ensureOldDisplayMode(a);var d=a.style;d.visibility=c?"visible":"hidden";d.display=c||a._visibilityMode===b.UI.VisibilityMode.hide?a._oldDisplayMode:P}};w.setCommand=function(d,f,a,e){b.UI.DomEvent.addHandler(d,"click",function(d){var c=e||this;b.UI.DomElement.raiseBubbleEvent(c,new b.CommandEventArgs(f,a,this,d))},c)};b.registerPlugin({name:"setCommand",dom:c,plugin:function(e,a,d){return this.addHandler("click",function(f){var c=d||this;b.UI.DomElement.raiseBubbleEvent(c,new b.CommandEventArgs(e,a,this,f))},c)}});w._ensureOldDisplayMode=function(b){if(!b._oldDisplayMode){var e=b.currentStyle||this._getCurrentStyle(b);b._oldDisplayMode=e?e.display:a;if(!b._oldDisplayMode||b._oldDisplayMode===P){var d=b.tagName,c="inline";if(/^(DIV|P|ADDRESS|BLOCKQUOTE|BODY|COL|COLGROUP|DD|DL|DT|FIELDSET|FORM|H1|H2|H3|H4|H5|H6|HR|IFRAME|LEGEND|OL|PRE|TABLE|TD|TH|TR|UL)$/i.test(d))c="block";else if(d.toUpperCase()==="LI")c="list-item";b._oldDisplayMode=c}}};w._getWindow=function(a){var b=a.ownerDocument||a.document||a;return b.defaultView||b.parentWindow};w._getCurrentStyle=function(b){if(b.nodeType===3)return a;var c=this._getWindow(b);if(b.documentElement)b=b.documentElement;var d=c&&b!==c&&c.getComputedStyle?c.getComputedStyle(b,a):b.currentStyle||b.style;return d};w._onDispose=function(a,e){var c,d=a.dispose;if(d!==b.UI.DomElement._dispose){a.dispose=b.UI.DomElement._dispose;a.__msajaxdispose=c=[];typeof d===f&&c.push(d)}else c=a.__msajaxdispose;c.push(e)};w._dispose=function(){var b=this,c=b.__msajaxdispose;if(c)for(var d=0,e=c.length;d<e;d++)c[d].apply(b);b.control&&typeof b.control.dispose===f&&b.control.dispose();b.__msajaxdispose=a;b.dispose=a};w=b.IContainer=function(){};w.registerInterface("Sys.IContainer");w=b.ApplicationLoadEventArgs=function(c,a){b.ApplicationLoadEventArgs.initializeBase(this);this._components=c;this._isPartialLoad=a};w.prototype={get_components:function(){return this._components},get_isPartialLoad:function(){return this._isPartialLoad}};w.registerClass("Sys.ApplicationLoadEventArgs",b.EventArgs);w=b._Application=function(){var a=this;b._Application.initializeBase(a);a._disposableObjects=[];a._components={};a._createdComponents=[];a._secondPassComponents=[];a._unloadHandlerDelegate=Function.createDelegate(a,a._unloadHandler);b.UI.DomEvent.addHandler(g,L,a._unloadHandlerDelegate)};w.prototype={_deleteCount:0,get_isCreatingComponents:function(){return!!this._creatingComponents},get_isDisposing:function(){return!!this._disposing},add_init:function(a){if(this._initialized)a(this,b.EventArgs.Empty);else this._addHandler(db,a)},remove_init:function(a){this._removeHandler(db,a)},add_load:function(a){this._addHandler(m,a)},remove_load:function(a){this._removeHandler(m,a)},add_unload:function(a){this._addHandler(L,a)},remove_unload:function(a){this._removeHandler(L,a)},addComponent:function(a){this._components[a.get_id()]=a},beginCreateComponents:function(){this._creatingComponents=c},dispose:function(){var a=this;if(!a._disposing){a._disposing=c;if(a._timerCookie){g.clearTimeout(a._timerCookie);delete a._timerCookie}var f=a._endRequestHandler,d=a._beginRequestHandler;if(f||d){var k=b.WebForms.PageRequestManager.getInstance();f&&k.remove_endRequest(f);d&&k.remove_beginRequest(d);delete a._endRequestHandler;delete a._beginRequestHandler}g.pageUnload&&g.pageUnload(a,b.EventArgs.Empty);b.Observer.raiseEvent(a,L);for(var i=Array.clone(a._disposableObjects),h=0,m=i.length;h<m;h++){var j=i[h];typeof j!==e&&j.dispose()}a._disposableObjects.length=0;b.UI.DomEvent.removeHandler(g,L,a._unloadHandlerDelegate);if(b._ScriptLoader){var l=b._ScriptLoader.getInstance();l&&l.dispose()}b._Application.callBaseMethod(a,eb)}},disposeElement:function(c,m){var i=this;if(c.nodeType===1){for(var h,d,b,k=c.getElementsByTagName("*"),j=k.length,l=new Array(j),e=0;e<j;e++)l[e]=k[e];for(e=j-1;e>=0;e--){var g=l[e];h=g.dispose;if(h&&typeof h===f)g.dispose();else{d=g.control;d&&typeof d.dispose===f&&d.dispose()}b=g._behaviors;b&&i._disposeComponents(b);b=g._components;if(b){i._disposeComponents(b);g._components=a}}if(!m){h=c.dispose;if(h&&typeof h===f)c.dispose();else{d=c.control;d&&typeof d.dispose===f&&d.dispose()}b=c._behaviors;b&&i._disposeComponents(b);b=c._components;if(b){i._disposeComponents(b);c._components=a}}}},endCreateComponents:function(){for(var c=this._secondPassComponents,a=0,g=c.length;a<g;a++){var f=c[a],e=f.component;b.Component._setReferences(e,f.references);e.endUpdate()}this._secondPassComponents=[];this._creatingComponents=d},findComponent:function(d,c){return c?b.IContainer.isInstanceOfType(c)?c.findComponent(d):c[d]||a:b.Application._components[d]||a},getComponents:function(){var c=[],a=this._components;for(var b in a)a.hasOwnProperty(b)&&c.push(a[b]);return c},initialize:function(){g.setTimeout(Function.createDelegate(this,this._doInitialize),0)},_doInitialize:function(){var a=this;if(!a.get_isInitialized()&&!a._disposing){b._Application.callBaseMethod(a,T);a._raiseInit();if(a.get_stateString){if(b.WebForms&&b.WebForms.PageRequestManager){var d=b.WebForms.PageRequestManager.getInstance();a._beginRequestHandler=Function.createDelegate(a,a._onPageRequestManagerBeginRequest);d.add_beginRequest(a._beginRequestHandler);a._endRequestHandler=Function.createDelegate(a,a._onPageRequestManagerEndRequest);d.add_endRequest(a._endRequestHandler)}var c=a.get_stateString();if(c!==a._currentEntry)a._navigate(c);else a._ensureHistory()}a.raiseLoad()}},notifyScriptLoaded:function(){},registerDisposableObject:function(b){if(!this._disposing){var a=this._disposableObjects,c=a.length;a[c]=b;b.__msdisposeindex=c}},raiseLoad:function(){var a=this,d=new b.ApplicationLoadEventArgs(Array.clone(a._createdComponents),!!a._loaded);a._loaded=c;b.Observer.raiseEvent(a,m,d);g.pageLoad&&g.pageLoad(a,d);a._createdComponents=[]},removeComponent:function(b){var a=b.get_id();if(a)delete this._components[a]},unregisterDisposableObject:function(a){var b=this;if(!b._disposing){var g=a.__msdisposeindex;if(typeof g===i){var c=b._disposableObjects;delete c[g];delete a.__msdisposeindex;if(++b._deleteCount>1e3){for(var d=[],f=0,h=c.length;f<h;f++){a=c[f];if(typeof a!==e){a.__msdisposeindex=d.length;d.push(a)}}b._disposableObjects=d;b._deleteCount=0}}}},_addComponentToSecondPass:function(b,a){this._secondPassComponents.push({component:b,references:a})},_disposeComponents:function(a){if(a)for(var b=a.length-1;b>=0;b--){var c=a[b];typeof c.dispose===f&&c.dispose()}},_raiseInit:function(){this.beginCreateComponents();b.Observer.raiseEvent(this,db);this.endCreateComponents()},_unloadHandler:function(){this.dispose()}};w.registerClass("Sys._Application",b.Component,b.IContainer);b.Application=new b._Application;g.$find=b.Application.findComponent;b.onReady(function(){b.Application._doInitialize()});w=b.UI.Behavior=function(a){b.UI.Behavior.initializeBase(this);this._element=a;var c=a._behaviors=a._behaviors||[];c.push(this)};w.prototype={get_element:function(){return this._element},get_id:function(){var c=b.UI.Behavior.callBaseMethod(this,"get_id");if(c)return c;var a=this._element;return!a||!a.id?x:a.id+n+this.get_name()},get_name:function(){var a=this;if(a._name)return a._name;var b=Object.getTypeName(a),c=b.lastIndexOf(j);if(c>=0)b=b.substr(c+1);if(!a._initialized)a._name=b;return b},set_name:function(a){this._name=a},initialize:function(){var a=this;b.UI.Behavior.callBaseMethod(a,T);var c=a.get_name();if(c)a._element[c]=a},dispose:function(){var c=this;b.UI.Behavior.callBaseMethod(c,eb);var d=c._element;if(d){var f=c.get_name();if(f)d[f]=a;var e=d._behaviors;Array.remove(e,c);if(!e.length)d._behaviors=a;delete c._element}}};w.registerClass("Sys.UI.Behavior",b.Component);w.getBehaviorByName=function(d,e){var c=d[e];return c&&b.UI.Behavior.isInstanceOfType(c)?c:a};w.getBehaviors=function(b){var a=b._behaviors;return a?Array.clone(a):[]};b.UI.Behavior.getBehaviorsByType=function(e,f){var a=e._behaviors,d=[];if(a)for(var b=0,g=a.length;b<g;b++){var c=a[b];f.isInstanceOfType(c)&&d.push(c)}return d};w=b.UI.VisibilityMode=function(){};w.prototype={hide:0,collapse:1};w.registerEnum("Sys.UI.VisibilityMode");w=b.UI.Control=function(c){var a=this;b.UI.Control.initializeBase(a);a._element=c;c.control=a;var d=a.get_role();d&&c.setAttribute("role",d)};w.prototype={_parent:a,_visibilityMode:b.UI.VisibilityMode.hide,get_element:function(){return this._element},get_id:function(){return this._id||(this._element?this._element.id:x)},get_parent:function(){var c=this;if(c._parent)return c._parent;if(!c._element)return a;var b=c._element.parentNode;while(b){if(b.control)return b.control;b=b.parentNode}return a},set_parent:function(a){this._parent=a},get_role:function(){return a},get_visibilityMode:function(){return b.UI.DomElement.getVisibilityMode(this._element)},set_visibilityMode:function(a){b.UI.DomElement.setVisibilityMode(this._element,a)},get_visible:function(){return b.UI.DomElement.getVisible(this._element)},set_visible:function(a){b.UI.DomElement.setVisible(this._element,a)},addCssClass:function(a){b.UI.DomElement.addCssClass(this._element,a)},dispose:function(){var c=this;b.UI.Control.callBaseMethod(c,eb);if(c._element){c._element.control=a;delete c._element}if(c._parent)delete c._parent},onBubbleEvent:function(){return d},raiseBubbleEvent:function(a,b){this._raiseBubbleEvent(a,b)},_raiseBubbleEvent:function(b,c){var a=this.get_parent();while(a){if(a.onBubbleEvent(b,c))return;a=a.get_parent()}},removeCssClass:function(a){b.UI.DomElement.removeCssClass(this._element,a)},toggleCssClass:function(a){b.UI.DomElement.toggleCssClass(this._element,a)}};w.registerClass("Sys.UI.Control",b.Component);w=b.HistoryEventArgs=function(a){b.HistoryEventArgs.initializeBase(this);this._state=a};w.prototype={get_state:function(){return this._state}};w.registerClass("Sys.HistoryEventArgs",b.EventArgs);w=b.Application;w._currentEntry=x;w._initialState=a;w._state={};z=b._Application.prototype;z.get_stateString=function(){var b=a;if(ib(S)){var d=g.location.href,c=d.indexOf(l);if(c!==y)b=d.substring(c+1);else b=x;return b}else b=g.location.hash;if(b.length&&b.charAt(0)===l)b=b.substring(1);return b};z.get_enableHistory=function(){return!!this._enableHistory};z.set_enableHistory=function(a){this._enableHistory=a};z.add_navigate=function(a){this._addHandler(fb,a)};z.remove_navigate=function(a){this._removeHandler(fb,a)};z.addHistoryPoint=function(g,j){var b=this;b._ensureHistory();var d=b._state;for(var f in g){var h=g[f];if(h===a){if(typeof d[f]!==e)delete d[f]}else d[f]=h}var i=b._serializeState(d);b._historyPointIsNew=c;b._setState(i,j);b._raiseNavigate()};z.setServerId=function(a,b){this._clientId=a;this._uniqueId=b};z.setServerState=function(a){this._ensureHistory();this._state.__s=a;this._updateHiddenField(a)};z._deserializeState=function(a){var e={};a=a||x;var b=a.indexOf("&&");if(b!==y&&b+2<a.length){e.__s=a.substr(b+2);a=a.substr(0,b)}for(var g=a.split("&"),f=0,j=g.length;f<j;f++){var d=g[f],c=d.indexOf("=");if(c!==y&&c+1<d.length){var i=d.substr(0,c),h=d.substr(c+1);e[i]=decodeURIComponent(h)}}return e};z._enableHistoryInScriptManager=function(){this._enableHistory=c};z._ensureHistory=function(){var a=this;if(!a._historyInitialized&&a._enableHistory){if(ib(bb)&&b.Browser.documentMode<8){a._historyFrame=b.get("#__historyFrame");a._ignoreIFrame=c}a._timerHandler=Function.createDelegate(a,a._onIdle);a._timerCookie=g.setTimeout(a._timerHandler,B);var d;try{a._initialState=a._deserializeState(a.get_stateString())}catch(d){}a._historyInitialized=c}};z._navigate=function(d){var a=this;a._ensureHistory();var c=a._deserializeState(d);if(a._uniqueId){var e=a._state.__s||x,b=c.__s||x;if(b!==e){a._updateHiddenField(b);__doPostBack(a._uniqueId,b);a._state=c;return}}a._setState(d);a._state=c;a._raiseNavigate()};z._onIdle=function(){var a=this;delete a._timerCookie;var b=a.get_stateString();if(b!==a._currentEntry){if(!a._ignoreTimer){a._historyPointIsNew=d;a._navigate(b)}}else a._ignoreTimer=d;a._timerCookie=g.setTimeout(a._timerHandler,B)};z._onIFrameLoad=function(b){var a=this;a._ensureHistory();if(!a._ignoreIFrame){a._historyPointIsNew=d;a._navigate(b)}a._ignoreIFrame=d};z._onPageRequestManagerBeginRequest=function(){this._ignoreTimer=c;this._originalTitle=document.title};z._onPageRequestManagerEndRequest=function(n,m){var f=this,j=m.get_dataItems()[f._clientId],i=f._originalTitle;f._originalTitle=a;var h=b.get("#__EVENTTARGET");if(h&&h.value===f._uniqueId)h.value=x;if(typeof j!==e){f.setServerState(j);f._historyPointIsNew=c}else f._ignoreTimer=d;var g=f._serializeState(f._state);if(g!==f._currentEntry){f._ignoreTimer=c;if(typeof i===k){if(!ib(bb)||b.Browser.version>7){var l=document.title;document.title=i;f._setState(g);document.title=l}else f._setState(g);f._raiseNavigate()}else{f._setState(g);f._raiseNavigate()}}};z._raiseNavigate=function(){var a=this,e=a._historyPointIsNew,d={};for(var c in a._state)if(c!=="__s")d[c]=a._state[c];var f=new b.HistoryEventArgs(d);b.Observer.raiseEvent(a,fb,f);if(!e){var h;try{if(ib(S)&&g.location.hash&&(!g.frameElement||g.top.location.hash))b.Browser.version<3.5?g.history.go(0):(location.hash=a.get_stateString())}catch(h){}}};z._serializeState=function(d){var c=[];for(var a in d){var e=d[a];if(a==="__s")var b=e;else c.push(a+"="+encodeURIComponent(e))}return c.join("&")+(b?"&&"+b:x)};z._setState=function(h,i){var f=this;if(f._enableHistory){h=h||x;if(h!==f._currentEntry){if(g.theForm){var k=g.theForm.action,m=k.indexOf(l);g.theForm.action=(m!==y?k.substring(0,m):k)+l+h}if(f._historyFrame&&f._historyPointIsNew){f._ignoreIFrame=c;var j=f._historyFrame.contentWindow.document;j.open("javascript:'<html></html>'");j.write("<html><head><title>"+(i||document.title)+'</title><script type="text/javascript">parent.Sys.Application._onIFrameLoad('+b.Serialization.JavaScriptSerializer.serialize(h)+");<\/script></head><body></body></html>");j.close()}f._ignoreTimer=d;f._currentEntry=h;if(f._historyFrame||f._historyPointIsNew){var n=f.get_stateString();if(h!==n){g.location.hash=h;f._currentEntry=f.get_stateString();if(typeof i!==e&&i!==a)document.title=i}}f._historyPointIsNew=d}}};z._updateHiddenField=function(b){if(this._clientId){var a=document.getElementById(this._clientId);if(a)a.value=b}};if(!g.XMLHttpRequest)g.XMLHttpRequest=function(){for(var e,c=["Msxml2.XMLHTTP.3.0","Msxml2.XMLHTTP"],b=0,d=c.length;b<d;b++)try{return new ActiveXObject(c[b])}catch(e){}return a};Type.registerNamespace("Sys.Net");w=b.Net.WebRequestExecutor=function(){this._webRequest=a;this._resultObject=a};var R=function(){};w.prototype={get_started:R,get_responseAvailable:R,get_timedOut:R,get_aborted:R,get_responseData:R,get_statusCode:R,get_statusText:R,get_xml:R,executeRequest:R,abort:R,getAllResponseHeaders:R,getResponseHeader:R,get_webRequest:function(){return this._webRequest},_set_webRequest:function(a){this._webRequest=a},get_object:function(){var a=this._resultObject;if(!a)this._resultObject=a=b.Serialization.JavaScriptSerializer.deserialize(this.get_responseData());return a}};w.registerClass("Sys.Net.WebRequestExecutor");b.Net.XMLDOM=function(f){if(!g.DOMParser)for(var j,e=["Msxml2.DOMDocument.3.0","Msxml2.DOMDocument"],c=0,i=e.length;c<i;c++)try{var b=new ActiveXObject(e[c]);b.async=d;b.loadXML(f);b.setProperty(rb,"XPath");return b}catch(j){}else try{var h=new g.DOMParser;return h.parseFromString(f,kb)}catch(j){}return a};w=b.Net.XMLHttpExecutor=function(){var f=this;b.Net.XMLHttpExecutor.initializeBase(f);var d=f;f._onReadyStateChange=function(){if(d._xmlHttpRequest.readyState===4){try{if(typeof d._xmlHttpRequest.status===e)return}catch(f){return}d._clearTimer();d._responseAvailable=c;try{d._webRequest.completed(b.EventArgs.Empty)}finally{if(d._xmlHttpRequest){d._xmlHttpRequest.onreadystatechange=Function.emptyMethod;d._xmlHttpRequest=a}}}};f._clearTimer=function(){if(d._timer){g.clearTimeout(d._timer);d._timer=a}};f._onTimeout=function(){if(!d._responseAvailable){d._clearTimer();d._timedOut=c;var e=d._xmlHttpRequest;e.onreadystatechange=Function.emptyMethod;e.abort();d._webRequest.completed(b.EventArgs.Empty);d._xmlHttpRequest=a}}};w.prototype={get_timedOut:function(){return!!this._timedOut},get_started:function(){return!!this._started},get_responseAvailable:function(){return!!this._responseAvailable},get_aborted:function(){return!!this._aborted},executeRequest:function(){var b=this,e=b.get_webRequest();b._webRequest=e;var i=e.get_body(),h=e.get_headers(),d=new XMLHttpRequest;b._xmlHttpRequest=d;d.onreadystatechange=b._onReadyStateChange;var l=e.get_httpVerb();d.open(l,e.getResolvedUrl(),c);d.setRequestHeader("X-Requested-With","XMLHttpRequest");if(h)for(var k in h){var m=h[k];typeof m!==f&&d.setRequestHeader(k,m)}if(l.toLowerCase()==="post"){(h===a||!h[M])&&d.setRequestHeader(M,"application/x-www-form-urlencoded; charset=utf-8");if(!i)i=x}var j=e.get_timeout();if(j>0)b._timer=g.setTimeout(Function.createDelegate(b,b._onTimeout),j);d.send(i);b._started=c},getResponseHeader:function(b){var c,a;try{a=this._xmlHttpRequest.getResponseHeader(b)}catch(c){}if(!a)a=x;return a},getAllResponseHeaders:function(){return this._xmlHttpRequest.getAllResponseHeaders()},get_responseData:function(){return this._xmlHttpRequest.responseText},get_statusCode:function(){var b,a=0;try{a=this._xmlHttpRequest.status}catch(b){}return a},get_statusText:function(){return this._xmlHttpRequest.statusText},get_xml:function(){var d="parsererror",e=this._xmlHttpRequest,c=e.responseXML;if(!c||!c.documentElement){c=b.Net.XMLDOM(e.responseText);if(!c||!c.documentElement)return a}else navigator.userAgent.indexOf("MSIE")!==y&&c.setProperty(rb,"XPath");return c.documentElement.namespaceURI==="http://www.mozilla.org/newlayout/xml/parsererror.xml"&&c.documentElement.tagName===d?a:c.documentElement.firstChild&&c.documentElement.firstChild.tagName===d?a:c},abort:function(){var d=this;if(d._aborted||d._responseAvailable||d._timedOut)return;d._aborted=c;d._clearTimer();var e=d._xmlHttpRequest;if(e&&!d._responseAvailable){e.onreadystatechange=Function.emptyMethod;e.abort();d._xmlHttpRequest=a;d._webRequest.completed(b.EventArgs.Empty)}}};w.registerClass(vb,b.Net.WebRequestExecutor);w=b.Net._WebRequestManager=function(){this._defaultExecutorType=vb};w.prototype={add_invokingRequest:function(a){b.Observer.addEventHandler(this,gb,a)},remove_invokingRequest:function(a){b.Observer.removeEventHandler(this,gb,a)},add_completedRequest:function(a){b.Observer.addEventHandler(this,hb,a)},remove_completedRequest:function(a){b.Observer.removeEventHandler(this,hb,a)},get_defaultTimeout:function(){return this._defaultTimeout||0},set_defaultTimeout:function(a){this._defaultTimeout=a},get_defaultExecutorType:function(){return this._defaultExecutorType},set_defaultExecutorType:function(a){this._defaultExecutorType=a},executeRequest:function(d){var a=d.get_executor();if(!a){var i,h;try{var f=g.eval(this._defaultExecutorType);a=new f}catch(i){h=c}d.set_executor(a)}if(!a.get_aborted()){var e=new b.Net.NetworkRequestEventArgs(d);b.Observer.raiseEvent(this,gb,e);!e.get_cancel()&&a.executeRequest()}}};w.registerClass("Sys.Net._WebRequestManager");b.Net.WebRequestManager=new b.Net._WebRequestManager;w=b.Net.NetworkRequestEventArgs=function(a){b.Net.NetworkRequestEventArgs.initializeBase(this);this._webRequest=a};w.prototype={get_webRequest:function(){return this._webRequest}};w.registerClass("Sys.Net.NetworkRequestEventArgs",b.CancelEventArgs);w=b.Net.WebRequest=function(){var b=this;b._url=x;b._headers={};b._body=a;b._userContext=a;b._httpVerb=a};w.prototype={add_completed:function(a){b.Observer.addEventHandler(this,Q,a)},remove_completed:function(a){b.Observer.removeEventHandler(this,Q,a)},completed:function(e){var a=this;function d(g,f,d){var a=b.Observer._getContext(g,c).events.getHandler(d);a&&a(f,e)}d(b.Net.WebRequestManager,a._executor,hb);d(a,a._executor,Q);b.Observer.clearEventHandlers(a,Q)},get_url:function(){return this._url},set_url:function(a){this._url=a},get_headers:function(){return this._headers},get_httpVerb:function(){return this._httpVerb===a?this._body===a?"GET":"POST":this._httpVerb},set_httpVerb:function(a){this._httpVerb=a},get_body:function(){return this._body},set_body:function(a){this._body=a},get_userContext:function(){return this._userContext},set_userContext:function(a){this._userContext=a},get_executor:function(){return this._executor||a},set_executor:function(a){this._executor=a;a._set_webRequest(this)},get_timeout:function(){return this._timeout||b.Net.WebRequestManager.get_defaultTimeout()},set_timeout:function(a){this._timeout=a},getResolvedUrl:function(){return b.Net.WebRequest._resolveUrl(this._url)},invoke:function(){b.Net.WebRequestManager.executeRequest(this)}};w._resolveUrl=function(c,a){if(c&&c.indexOf("://")>0)return c;if(!a||!a.length){var e=b.get("base");if(e&&e.href&&e.href.length)a=e.href;else a=document.URL}var d=a.indexOf("?");if(d>0)a=a.substr(0,d);d=a.indexOf(l);if(d>0)a=a.substr(0,d);a=a.substr(0,a.lastIndexOf(D)+1);if(!c||!c.length)return a;if(c.charAt(0)===D){var f=a.indexOf("://"),h=a.indexOf(D,f+3);return a.substr(0,h)+c}else{var g=a.lastIndexOf(D);return a.substr(0,g+1)+c}};w._createQueryString=function(d,c,h){c=c||encodeURIComponent;var j=0,g,i,e,a=new b.StringBuilder;if(d)for(e in d){g=d[e];if(typeof g===f)continue;i=b.Serialization.JavaScriptSerializer.serialize(g);j++&&a.append("&");a.append(e);a.append("=");a.append(c(i))}if(h){j&&a.append("&");a.append(h)}return a.toString()};w._createUrl=function(c,d,e){if(!d&&!e)return c;var f=b.Net.WebRequest._createQueryString(d,a,e);return f.length?c+(c&&c.indexOf("?")>=0?"&":"?")+f:c};w.registerClass("Sys.Net.WebRequest");Type.registerNamespace("Sys.Net");w=b.Net.WebServiceProxy=function(){var a=Object.getType(this);if(a._staticInstance&&typeof a._staticInstance.get_enableJsonp===f)this._jsonp=a._staticInstance.get_enableJsonp()};w.prototype={get_timeout:function(){return this._timeout||0},set_timeout:function(a){this._timeout=a},get_defaultUserContext:function(){return typeof this._userContext===e?a:this._userContext},set_defaultUserContext:function(a){this._userContext=a},get_defaultSucceededCallback:function(){return this._succeeded||a},set_defaultSucceededCallback:function(a){this._succeeded=a},get_defaultFailedCallback:function(){return this._failed||a},set_defaultFailedCallback:function(a){this._failed=a},get_enableJsonp:function(){return!!this._jsonp},set_enableJsonp:function(a){this._jsonp=a},get_path:function(){return this._path||a},set_path:function(a){this._path=a},get_jsonpCallbackParameter:function(){return this._callbackParameter||sb},set_jsonpCallbackParameter:function(a){this._callbackParameter=a},_invoke:function(h,i,k,j,g,f,d){var c=this;g=g||c.get_defaultSucceededCallback();f=f||c.get_defaultFailedCallback();if(d===a||typeof d===e)d=c.get_defaultUserContext();return b.Net.WebServiceProxy.invoke(h,i,k,j,g,f,d,c.get_timeout(),c.get_enableJsonp(),c.get_jsonpCallbackParameter())}};w.registerClass("Sys.Net.WebServiceProxy");w.invoke=function(v,f,r,q,p,h,l,m,C,u){var o=C!==d?b.Net.WebServiceProxy._xdomain.exec(v):a,i,s=o&&o.length===3&&(o[1]!==location.protocol||o[2]!==location.host);r=s||r;if(s){u=u||sb;i="_jsonp"+b._jsonp++}if(!q)q={};var w=q;if(!r||!w)w={};var n,k=a,t=a,A=b.Net.WebRequest._createUrl(f?v+D+encodeURIComponent(f):v,w,s?u+"=Sys."+i:a);if(s){function B(){if(k===a)return;k=a;n=new b.Net.WebServiceError(c,String.format(b.Res.webServiceTimedOut,f));delete b[i];h&&h(n,l,f)}function z(c,j){if(k!==a){g.clearTimeout(k);k=a}delete b[i];i=a;if(typeof j!==e&&j!==200){if(h){n=new b.Net.WebServiceError(d,c.Message||String.format(b.Res.webServiceFailedNoMsg,f),c.StackTrace||a,c.ExceptionType||a,c);n._statusCode=j;h(n,l,f)}}else p&&p(c,l,f)}b[i]=z;m=m||b.Net.WebRequestManager.get_defaultTimeout();if(m>0)k=g.setTimeout(B,m);b._loadJsonp(A,function(){i&&z({Message:String.format(b.Res.webServiceFailedNoMsg,f)},y)});return a}var j=new b.Net.WebRequest;j.set_url(A);j.get_headers()[M]="application/json; charset=utf-8";if(!r){t=b.Serialization.JavaScriptSerializer.serialize(q);if(t==="{}")t=x}j.set_body(t);j.add_completed(E);m>0&&j.set_timeout(m);j.invoke();function E(g){if(g.get_responseAvailable()){var s,i=g.get_statusCode(),c=a,k;try{var m=g.getResponseHeader(M);k=m.startsWith("application/json");c=k?g.get_object():m.startsWith(kb)?g.get_xml():g.get_responseData()}catch(s){}var o=g.getResponseHeader("jsonerror"),j=o==="true";if(j){if(c)c=new b.Net.WebServiceError(d,c.Message,c.StackTrace,c.ExceptionType,c)}else if(k)c=!c||typeof c.d===e?c:c.d;if(i<200||i>=300||j){if(h){if(!c||!j)c=new b.Net.WebServiceError(d,String.format(b.Res.webServiceFailedNoMsg,f));c._statusCode=i;h(c,l,f)}}else p&&p(c,l,f)}else{var n=g.get_timedOut(),q=String.format(n?b.Res.webServiceTimedOut:b.Res.webServiceFailedNoMsg,f);h&&h(new b.Net.WebServiceError(n,q,x,x),l,f)}}return j};w._generateTypedConstructor=function(a){return function(b){if(b)for(var c in b)this[c]=b[c];this.__type=a}};b._jsonp=0;w._xdomain=/^\s*([a-zA-Z0-9\+\-\.]+\:)\/\/([^?#\/]+)/;b._loadJsonp=function(h,g){var c=document.createElement("script");c.type="text/javascript";c.src=h;var f=c.attachEvent;function e(){if(!f||/loaded|complete/.test(c.readyState)){if(f)c.detachEvent(s,e);else{c.removeEventListener(m,e,d);c.removeEventListener(r,e,d)}g.apply(c);c=a}}if(f)c.attachEvent(s,e);else{c.addEventListener(m,e,d);c.addEventListener(r,e,d)}b.get("head").appendChild(c)};w=b.Net.WebServiceError=function(e,f,d,b,c){var a=this;a._timedOut=e;a._message=f;a._stackTrace=d;a._exceptionType=b;a._errorObject=c;a._statusCode=y};w.prototype={get_timedOut:function(){return this._timedOut},get_statusCode:function(){return this._statusCode},get_message:function(){return this._message},get_stackTrace:function(){return this._stackTrace||x},get_exceptionType:function(){return this._exceptionType||x},get_errorObject:function(){return this._errorObject||a}};w.registerClass("Sys.Net.WebServiceError");Type.registerNamespace("Sys.Services");var mb=b.Services,ub="Service",Eb="Role",Db="Authentication",Bb="Profile";function zb(a){this._path=a}mb[Db+ub]={set_path:zb,_setAuthenticated:function(a){this._auth=a}};mb["_"+Db+ub]={};mb[Bb+ub]={set_path:zb};mb["_"+Bb+ub]={};mb.ProfileGroup=function(a){this._propertygroup=a};mb[Eb+ub]={set_path:zb};mb["_"+Eb+ub]={};b._domLoaded()}if(b.loader)b.loader.registerScript("MicrosoftAjax",a,H);else H()})(window,window.Sys);var $get,$create,$addHandler,$addHandlers,$clearHandlers;
Type.registerNamespace('Sys');Sys.Res={"argumentInteger":"Value must be an integer.","argumentType":"Object cannot be converted to the required type.","argumentNull":"Value cannot be null.","scriptAlreadyLoaded":"The script \u0027{0}\u0027 has been referenced multiple times. If referencing Microsoft AJAX scripts explicitly, set the MicrosoftAjaxMode property of the ScriptManager to Explicit.","scriptDependencyNotFound":"The script \u0027{0}\u0027 failed to load because it is dependent on script \u0027{1}\u0027.","formatBadFormatSpecifier":"Format specifier was invalid.","requiredScriptReferenceNotIncluded":"\u0027{0}\u0027 requires that you have included a script reference to \u0027{1}\u0027.","webServiceFailedNoMsg":"The server method \u0027{0}\u0027 failed.","argumentDomElement":"Value must be a DOM element.","actualValue":"Actual value was {0}.","enumInvalidValue":"\u0027{0}\u0027 is not a valid value for enum {1}.","scriptLoadFailed":"The script \u0027{0}\u0027 could not be loaded.","parameterCount":"Parameter count mismatch.","cannotDeserializeEmptyString":"Cannot deserialize empty string.","formatInvalidString":"Input string was not in a correct format.","argument":"Value does not fall within the expected range.","cannotDeserializeInvalidJson":"Cannot deserialize. The data does not correspond to valid JSON.","cannotSerializeNonFiniteNumbers":"Cannot serialize non finite numbers.","argumentUndefined":"Value cannot be undefined.","webServiceInvalidReturnType":"The server method \u0027{0}\u0027 returned an invalid type. Expected type: {1}","servicePathNotSet":"The path to the web service has not been set.","argumentTypeWithTypes":"Object of type \u0027{0}\u0027 cannot be converted to type \u0027{1}\u0027.","paramName":"Parameter name: {0}","nullReferenceInPath":"Null reference while evaluating data path: \u0027{0}\u0027.","format":"One of the identified items was in an invalid format.","assertFailedCaller":"Assertion Failed: {0}\r\nat {1}","argumentOutOfRange":"Specified argument was out of the range of valid values.","webServiceTimedOut":"The server method \u0027{0}\u0027 timed out.","notImplemented":"The method or operation is not implemented.","assertFailed":"Assertion Failed: {0}","invalidOperation":"Operation is not valid due to the current state of the object.","breakIntoDebugger":"{0}\r\n\r\nBreak into debugger?"};
// (c) 2010 CodePlex Foundation
(function(){function a(){var s="aria-hidden",k="status",j="submit",h="=",g="undefined",d=-1,f="",u="function",r="pageLoading",q="pageLoaded",p="initializeRequest",o="endRequest",n="beginRequest",m="script",l="error",t="readystatechange",i="load",a=null,c=true,b=false;Type._registerScript("MicrosoftAjaxWebForms.js",["MicrosoftAjaxCore.js","MicrosoftAjaxSerialization.js","MicrosoftAjaxNetwork.js","MicrosoftAjaxComponentModel.js"]);var e,v;Type.registerNamespace("Sys.WebForms");e=Sys.WebForms.BeginRequestEventArgs=function(d,c,b){var a=this;Sys.WebForms.BeginRequestEventArgs.initializeBase(a);a._request=d;a._postBackElement=c;a._updatePanelsToUpdate=b};e.prototype={get_postBackElement:function(){return this._postBackElement},get_request:function(){return this._request},get_updatePanelsToUpdate:function(){return this._updatePanelsToUpdate?Array.clone(this._updatePanelsToUpdate):[]}};e.registerClass("Sys.WebForms.BeginRequestEventArgs",Sys.EventArgs);e=Sys.WebForms.EndRequestEventArgs=function(e,c,d){var a=this;Sys.WebForms.EndRequestEventArgs.initializeBase(a);a._errorHandled=b;a._error=e;a._dataItems=c||{};a._response=d};e.prototype={get_dataItems:function(){return this._dataItems},get_error:function(){return this._error},get_errorHandled:function(){return this._errorHandled},set_errorHandled:function(a){this._errorHandled=a},get_response:function(){return this._response}};e.registerClass("Sys.WebForms.EndRequestEventArgs",Sys.EventArgs);e=Sys.WebForms.InitializeRequestEventArgs=function(d,c,b){var a=this;Sys.WebForms.InitializeRequestEventArgs.initializeBase(a);a._request=d;a._postBackElement=c;a._updatePanelsToUpdate=b};e.prototype={get_postBackElement:function(){return this._postBackElement},get_request:function(){return this._request},get_updatePanelsToUpdate:function(){return this._updatePanelsToUpdate?Array.clone(this._updatePanelsToUpdate):[]},set_updatePanelsToUpdate:function(a){this._updated=c;this._updatePanelsToUpdate=a}};e.registerClass("Sys.WebForms.InitializeRequestEventArgs",Sys.CancelEventArgs);e=Sys.WebForms.PageLoadedEventArgs=function(c,b,d){var a=this;Sys.WebForms.PageLoadedEventArgs.initializeBase(a);a._panelsUpdated=c;a._panelsCreated=b;a._dataItems=d||{}};e.prototype={get_dataItems:function(){return this._dataItems},get_panelsCreated:function(){return this._panelsCreated},get_panelsUpdated:function(){return this._panelsUpdated}};e.registerClass("Sys.WebForms.PageLoadedEventArgs",Sys.EventArgs);e=Sys.WebForms.PageLoadingEventArgs=function(c,b,d){var a=this;Sys.WebForms.PageLoadingEventArgs.initializeBase(a);a._panelsUpdating=c;a._panelsDeleting=b;a._dataItems=d||{}};e.prototype={get_dataItems:function(){return this._dataItems},get_panelsDeleting:function(){return this._panelsDeleting},get_panelsUpdating:function(){return this._panelsUpdating}};e.registerClass("Sys.WebForms.PageLoadingEventArgs",Sys.EventArgs);e=Sys._ScriptLoaderTask=function(b,a){this._scriptElement=b;this._completedCallback=a};e.prototype={get_scriptElement:function(){return this._scriptElement},dispose:function(){var b=this;if(b._disposed)return;b._disposed=c;b._removeScriptElementHandlers();Sys._ScriptLoaderTask._clearScript(b._scriptElement);b._scriptElement=a},execute:function(){this._addScriptElementHandlers();document.getElementsByTagName("head")[0].appendChild(this._scriptElement)},_addScriptElementHandlers:function(){var a=this;a._scriptLoadDelegate=Function.createDelegate(a,a._scriptLoadHandler);if(document.addEventListener){a._scriptElement.readyState="loaded";$addHandler(a._scriptElement,i,a._scriptLoadDelegate)}else $addHandler(a._scriptElement,t,a._scriptLoadDelegate);if(a._scriptElement.addEventListener){a._scriptErrorDelegate=Function.createDelegate(a,a._scriptErrorHandler);a._scriptElement.addEventListener(l,a._scriptErrorDelegate,b)}},_removeScriptElementHandlers:function(){var c=this;if(c._scriptLoadDelegate){var d=c.get_scriptElement();if(document.addEventListener)$removeHandler(d,i,c._scriptLoadDelegate);else $removeHandler(d,t,c._scriptLoadDelegate);if(c._scriptErrorDelegate){c._scriptElement.removeEventListener(l,c._scriptErrorDelegate,b);c._scriptErrorDelegate=a}c._scriptLoadDelegate=a}},_scriptErrorHandler:function(){if(this._disposed)return;this._completedCallback(this.get_scriptElement(),b)},_scriptLoadHandler:function(){if(this._disposed)return;var a=this.get_scriptElement();if(a.readyState!=="loaded"&&a.readyState!=="complete")return;this._completedCallback(a,c)}};e.registerClass("Sys._ScriptLoaderTask",a,Sys.IDisposable);e._clearScript=function(a){!Sys.Debug.isDebug&&a.parentNode.removeChild(a)};e=Sys._ScriptLoader=function(){var b=this;b._scriptsToLoad=a;b._sessions=[];b._scriptLoadedDelegate=Function.createDelegate(b,b._scriptLoadedHandler)};e.prototype={dispose:function(){var c=this;c._stopSession();c._loading=b;if(c._events)delete c._events;c._sessions=a;c._currentSession=a;c._scriptLoadedDelegate=a},loadScripts:function(f,d,e,c){var b=this,g={allScriptsLoadedCallback:d,scriptLoadFailedCallback:e,scriptLoadTimeoutCallback:c,scriptsToLoad:b._scriptsToLoad,scriptTimeout:f};b._scriptsToLoad=a;b._sessions.push(g);!b._loading&&b._nextSession()},queueCustomScriptTag:function(a){if(!this._scriptsToLoad)this._scriptsToLoad=[];Array.add(this._scriptsToLoad,a)},queueScriptBlock:function(a){if(!this._scriptsToLoad)this._scriptsToLoad=[];Array.add(this._scriptsToLoad,{text:a})},queueScriptReference:function(a){if(!this._scriptsToLoad)this._scriptsToLoad=[];Array.add(this._scriptsToLoad,{src:a})},_createScriptElement:function(b){var a=document.createElement(m);a.type="text/javascript";for(var c in b)a[c]=b[c];return a},_loadScriptsInternal:function(){var a=this,c=a._currentSession;if(c.scriptsToLoad&&c.scriptsToLoad.length>0){var d=Array.dequeue(c.scriptsToLoad),b=a._createScriptElement(d);if(b.text&&Sys.Browser.agent===Sys.Browser.Safari){b.innerHTML=b.text;delete b.text}if(typeof d.src==="string"){a._currentTask=new Sys._ScriptLoaderTask(b,a._scriptLoadedDelegate);a._currentTask.execute()}else{document.getElementsByTagName("head")[0].appendChild(b);Sys._ScriptLoaderTask._clearScript(b);a._loadScriptsInternal()}}else{a._stopSession();var e=c.allScriptsLoadedCallback;e&&e(a);a._nextSession()}},_nextSession:function(){var d=this;if(d._sessions.length===0){d._loading=b;d._currentSession=a;return}d._loading=c;var e=Array.dequeue(d._sessions);d._currentSession=e;if(e.scriptTimeout>0)d._timeoutCookie=window.setTimeout(Function.createDelegate(d,d._scriptLoadTimeoutHandler),e.scriptTimeout*1e3);d._loadScriptsInternal()},_raiseError:function(){var a=this,d=a._currentSession.scriptLoadFailedCallback,c=a._currentTask.get_scriptElement();a._stopSession();if(d){d(a,c);a._nextSession()}else{a._loading=b;throw Sys._ScriptLoader._errorScriptLoadFailed(c.src);}},_scriptLoadedHandler:function(c,d){var b=this;if(d){Array.add(Sys._ScriptLoader._getLoadedScripts(),c.src);b._currentTask.dispose();b._currentTask=a;b._loadScriptsInternal()}else b._raiseError()},_scriptLoadTimeoutHandler:function(){var a=this,b=a._currentSession.scriptLoadTimeoutCallback;a._stopSession();b&&b(a);a._nextSession()},_stopSession:function(){var b=this;if(b._timeoutCookie){window.clearTimeout(b._timeoutCookie);b._timeoutCookie=a}if(b._currentTask){b._currentTask.dispose();b._currentTask=a}}};e.registerClass("Sys._ScriptLoader",a,Sys.IDisposable);e.getInstance=function(){var a=Sys._ScriptLoader._activeInstance;if(!a)a=Sys._ScriptLoader._activeInstance=new Sys._ScriptLoader;return a};e.isScriptLoaded=function(b){var a=document.createElement(m);a.src=b;return Array.contains(Sys._ScriptLoader._getLoadedScripts(),a.src)};e.readLoadedScripts=function(){if(!Sys._ScriptLoader._referencedScripts)for(var c=Sys._ScriptLoader._referencedScripts=[],d=document.getElementsByTagName(m),b=d.length-1;b>=0;b--){var e=d[b],a=e.src;if(a.length)!Array.contains(c,a)&&Array.add(c,a)}};e._errorScriptLoadFailed=function(b){var a;a=Sys.Res.scriptLoadFailed;var d="Sys.ScriptLoadFailedException: "+String.format(a,b),c=Error.create(d,{name:"Sys.ScriptLoadFailedException",scriptUrl:b});c.popStackFrame();return c};e._getLoadedScripts=function(){if(!Sys._ScriptLoader._referencedScripts){Sys._ScriptLoader._referencedScripts=[];Sys._ScriptLoader.readLoadedScripts()}return Sys._ScriptLoader._referencedScripts};e=Sys.WebForms.PageRequestManager=function(){var c=this;c._form=a;c._activeDefaultButton=a;c._activeDefaultButtonClicked=b;c._updatePanelIDs=a;c._updatePanelClientIDs=a;c._updatePanelHasChildrenAsTriggers=a;c._asyncPostBackControlIDs=a;c._asyncPostBackControlClientIDs=a;c._postBackControlIDs=a;c._postBackControlClientIDs=a;c._scriptManagerID=a;c._pageLoadedHandler=a;c._additionalInput=a;c._onsubmit=a;c._onSubmitStatements=[];c._originalDoPostBack=a;c._originalDoPostBackWithOptions=a;c._originalFireDefaultButton=a;c._originalDoCallback=a;c._isCrossPost=b;c._postBackSettings=a;c._request=a;c._onFormSubmitHandler=a;c._onFormElementClickHandler=a;c._onWindowUnloadHandler=a;c._asyncPostBackTimeout=a;c._controlIDToFocus=a;c._scrollPosition=a;c._processingRequest=b;c._scriptDisposes={};c._transientFields=["__VIEWSTATEENCRYPTED","__VIEWSTATEFIELDCOUNT"]};e.prototype={get_isInAsyncPostBack:function(){return this._request!==a},add_beginRequest:function(a){Sys.Observer.addEventHandler(this,n,a)},remove_beginRequest:function(a){Sys.Observer.removeEventHandler(this,n,a)},add_endRequest:function(a){Sys.Observer.addEventHandler(this,o,a)},remove_endRequest:function(a){Sys.Observer.removeEventHandler(this,o,a)},add_initializeRequest:function(a){Sys.Observer.addEventHandler(this,p,a)},remove_initializeRequest:function(a){Sys.Observer.removeEventHandler(this,p,a)},add_pageLoaded:function(a){Sys.Observer.addEventHandler(this,q,a)},remove_pageLoaded:function(a){Sys.Observer.removeEventHandler(this,q,a)},add_pageLoading:function(a){Sys.Observer.addEventHandler(this,r,a)},remove_pageLoading:function(a){Sys.Observer.removeEventHandler(this,r,a)},abortPostBack:function(){var b=this;if(!b._processingRequest&&b._request){b._request.get_executor().abort();b._request=a}},beginAsyncPostBack:function(h,e,k,i,j){var d=this;if(i&&typeof Page_ClientValidate===u&&!Page_ClientValidate(j||a))return;d._postBackSettings=d._createPostBackSettings(c,h,e);var g=d._form;g.__EVENTTARGET.value=e||f;g.__EVENTARGUMENT.value=k||f;d._isCrossPost=b;d._additionalInput=a;d._onFormSubmit()},_cancelPendingCallbacks:function(){for(var b=0,g=window.__pendingCallbacks.length;b<g;b++){var e=window.__pendingCallbacks[b];if(e){if(!e.async)window.__synchronousCallBackIndex=d;window.__pendingCallbacks[b]=a;var f="__CALLBACKFRAME"+b,c=document.getElementById(f);c&&c.parentNode.removeChild(c)}}},_commitControls:function(b,d){var c=this;if(b){c._updatePanelIDs=b.updatePanelIDs;c._updatePanelClientIDs=b.updatePanelClientIDs;c._updatePanelHasChildrenAsTriggers=b.updatePanelHasChildrenAsTriggers;c._asyncPostBackControlIDs=b.asyncPostBackControlIDs;c._asyncPostBackControlClientIDs=b.asyncPostBackControlClientIDs;c._postBackControlIDs=b.postBackControlIDs;c._postBackControlClientIDs=b.postBackControlClientIDs}if(typeof d!==g&&d!==a)c._asyncPostBackTimeout=d*1e3},_createHiddenField:function(d,e){var b,a=document.getElementById(d);if(a)if(!a._isContained)a.parentNode.removeChild(a);else b=a.parentNode;if(!b){b=document.createElement("span");b.style.cssText="display:none !important";this._form.appendChild(b)}b.innerHTML="<input type='hidden' />";a=b.childNodes[0];a._isContained=c;a.id=a.name=d;a.value=e},_createPageRequestManagerTimeoutError:function(){var b="Sys.WebForms.PageRequestManagerTimeoutException: "+Sys.WebForms.Res.PRM_TimeoutError,a=Error.create(b,{name:"Sys.WebForms.PageRequestManagerTimeoutException"});a.popStackFrame();return a},_createPageRequestManagerServerError:function(a,d){var c="Sys.WebForms.PageRequestManagerServerErrorException: "+(d||String.format(Sys.WebForms.Res.PRM_ServerError,a)),b=Error.create(c,{name:"Sys.WebForms.PageRequestManagerServerErrorException",httpStatusCode:a});b.popStackFrame();return b},_createPageRequestManagerParserError:function(b){var c="Sys.WebForms.PageRequestManagerParserErrorException: "+String.format(Sys.WebForms.Res.PRM_ParserError,b),a=Error.create(c,{name:"Sys.WebForms.PageRequestManagerParserErrorException"});a.popStackFrame();return a},_createPanelID:function(e,b){var c=b.asyncTarget,a=this._ensureUniqueIds(e||b.panelsToUpdate),d=a instanceof Array?a.join(","):a||this._scriptManagerID;if(c)d+="|"+c;return encodeURIComponent(this._scriptManagerID)+h+encodeURIComponent(d)+"&"},_createPostBackSettings:function(d,a,c,b){return{async:d,asyncTarget:c,panelsToUpdate:a,sourceElement:b}},_convertToClientIDs:function(a,g,e,d){if(a)for(var b=0,i=a.length;b<i;b+=d?2:1){var c=a[b],h=(d?a[b+1]:f)||this._uniqueIDToClientID(c);Array.add(g,c);Array.add(e,h)}},dispose:function(){var b=this;Sys.Observer.clearEventHandlers(b);if(b._form){Sys.UI.DomEvent.removeHandler(b._form,j,b._onFormSubmitHandler);Sys.UI.DomEvent.removeHandler(b._form,"click",b._onFormElementClickHandler);Sys.UI.DomEvent.removeHandler(window,"unload",b._onWindowUnloadHandler);Sys.UI.DomEvent.removeHandler(window,i,b._pageLoadedHandler)}if(b._originalDoPostBack){window.__doPostBack=b._originalDoPostBack;b._originalDoPostBack=a}if(b._originalDoPostBackWithOptions){window.WebForm_DoPostBackWithOptions=b._originalDoPostBackWithOptions;b._originalDoPostBackWithOptions=a}if(b._originalFireDefaultButton){window.WebForm_FireDefaultButton=b._originalFireDefaultButton;b._originalFireDefaultButton=a}if(b._originalDoCallback){window.WebForm_DoCallback=b._originalDoCallback;b._originalDoCallback=a}b._form=a;b._updatePanelIDs=a;b._updatePanelClientIDs=a;b._asyncPostBackControlIDs=a;b._asyncPostBackControlClientIDs=a;b._postBackControlIDs=a;b._postBackControlClientIDs=a;b._asyncPostBackTimeout=a;b._scrollPosition=a},_doCallback:function(d,b,c,f,a,e){!this.get_isInAsyncPostBack()&&this._originalDoCallback(d,b,c,f,a,e)},_doPostBack:function(e,l){var d=this;d._additionalInput=a;var j=d._form;if(e===a||typeof e===g||d._isCrossPost){d._postBackSettings=d._createPostBackSettings(b);d._isCrossPost=b}else{var f=d._masterPageUniqueID,k=d._uniqueIDToClientID(e),i=document.getElementById(k);if(!i&&f)if(k.indexOf(f+"$")===0)i=document.getElementById(k.substr(f.length+1));if(!i)if(Array.contains(d._asyncPostBackControlIDs,e))d._postBackSettings=d._createPostBackSettings(c,a,e);else if(Array.contains(d._postBackControlIDs,e))d._postBackSettings=d._createPostBackSettings(b);else{var h=d._findNearestElement(e);if(h)d._postBackSettings=d._getPostBackSettings(h,e);else{if(f){f+="$";if(e.indexOf(f)===0)h=d._findNearestElement(e.substr(f.length))}if(h)d._postBackSettings=d._getPostBackSettings(h,e);else d._postBackSettings=d._createPostBackSettings(b)}}else d._postBackSettings=d._getPostBackSettings(i,e)}if(!d._postBackSettings.async){j.onsubmit=d._onsubmit;d._originalDoPostBack(e,l);j.onsubmit=a;return}j.__EVENTTARGET.value=e;j.__EVENTARGUMENT.value=l;d._onFormSubmit()},_doPostBackWithOptions:function(a){this._isCrossPost=a&&a.actionUrl;this._originalDoPostBackWithOptions(a)},_elementContains:function(d,a){while(a){if(a===d)return c;a=a.parentNode}return b},_endPostBack:function(d,f,g){var c=this;if(c._request===f.get_webRequest()){c._processingRequest=b;c._additionalInput=a;c._request=a}var e=new Sys.WebForms.EndRequestEventArgs(d,g?g.dataItems:{},f);Sys.Observer.raiseEvent(c,o,e);if(d&&!e.get_errorHandled())throw d;},_ensureUniqueIds:function(a){if(!a)return a;a=a instanceof Array?a:[a];for(var c=[],b=0,g=a.length;b<g;b++){var f=a[b],e=Array.indexOf(this._updatePanelClientIDs,f);c.push(e>d?this._updatePanelIDs[e]:f)}return c},_findNearestElement:function(b){while(b.length>0){var f=this._uniqueIDToClientID(b),e=document.getElementById(f);if(e)return e;var c=b.lastIndexOf("$");if(c===d)return a;b=b.substring(0,c)}return a},_findText:function(b,a){var c=Math.max(0,a-20),d=Math.min(b.length,a+20);return b.substring(c,d)},_fireDefaultButton:function(d,h){if(d.keyCode===13){var f=d.srcElement||d.target;if(!f||f.tagName.toLowerCase()!=="textarea"){var e=document.getElementById(h);if(e&&typeof e.click!==g){this._activeDefaultButton=e;this._activeDefaultButtonClicked=b;try{e.click()}finally{this._activeDefaultButton=a}d.cancelBubble=c;typeof d.stopPropagation===u&&d.stopPropagation();return b}}}return c},_getPageLoadedEventArgs:function(r,g){var q=[],p=[],o=g?g.version4:b,h=g?g.updatePanelData:a,i,k,l,e;if(!h){i=this._updatePanelIDs;k=this._updatePanelClientIDs;l=a;e=a}else{i=h.updatePanelIDs;k=h.updatePanelClientIDs;l=h.childUpdatePanelIDs;e=h.panelsToRefreshIDs}var c,j,n,m;if(e)for(c=0,j=e.length;c<j;c+=o?2:1){n=e[c];m=(o?e[c+1]:f)||this._uniqueIDToClientID(n);Array.add(q,document.getElementById(m))}for(c=0,j=i.length;c<j;c++)(r||Array.indexOf(l,i[c])!==d)&&Array.add(p,document.getElementById(k[c]));return new Sys.WebForms.PageLoadedEventArgs(q,p,g?g.dataItems:{})},_getPageLoadingEventArgs:function(h){var l=[],k=[],c=h.updatePanelData,m=c.oldUpdatePanelIDs,n=c.oldUpdatePanelClientIDs,p=c.updatePanelIDs,o=c.childUpdatePanelIDs,e=c.panelsToRefreshIDs,a,g,b,i,j=h.version4;for(a=0,g=e.length;a<g;a+=j?2:1){b=e[a];i=(j?e[a+1]:f)||this._uniqueIDToClientID(b);Array.add(l,document.getElementById(i))}for(a=0,g=m.length;a<g;a++){b=m[a];Array.indexOf(e,b)===d&&(Array.indexOf(p,b)===d||Array.indexOf(o,b)>d)&&Array.add(k,document.getElementById(n[a]))}return new Sys.WebForms.PageLoadingEventArgs(l,k,h.dataItems)},_getPostBackSettings:function(f,h){var e=this,i=f,g=a;while(f){if(f.id){if(!g&&Array.contains(e._asyncPostBackControlClientIDs,f.id))g=e._createPostBackSettings(c,a,h,i);else if(!g&&Array.contains(e._postBackControlClientIDs,f.id))return e._createPostBackSettings(b);else{var j=Array.indexOf(e._updatePanelClientIDs,f.id);if(j!==d)return e._updatePanelHasChildrenAsTriggers[j]?e._createPostBackSettings(c,[e._updatePanelIDs[j]],h,i):e._createPostBackSettings(c,a,h,i)}if(!g&&e._matchesParentIDInList(f.id,e._asyncPostBackControlClientIDs))g=e._createPostBackSettings(c,a,h,i);else if(!g&&e._matchesParentIDInList(f.id,e._postBackControlClientIDs))return e._createPostBackSettings(b)}f=f.parentNode}return!g?e._createPostBackSettings(b):g},_getScrollPosition:function(){var b=this,a=document.documentElement;if(a&&(b._validPosition(a.scrollLeft)||b._validPosition(a.scrollTop)))return{x:a.scrollLeft,y:a.scrollTop};else{a=document.body;return a&&(b._validPosition(a.scrollLeft)||b._validPosition(a.scrollTop))?{x:a.scrollLeft,y:a.scrollTop}:b._validPosition(window.pageXOffset)||b._validPosition(window.pageYOffset)?{x:window.pageXOffset,y:window.pageYOffset}:{x:0,y:0}}},_initializeInternal:function(k,l,d,e,h,f,g){var b=this;if(b._prmInitialized)throw Error.invalidOperation(Sys.WebForms.Res.PRM_CannotRegisterTwice);b._prmInitialized=c;b._masterPageUniqueID=g;b._scriptManagerID=k;b._form=Sys.UI.DomElement.resolveElement(l);b._onsubmit=b._form.onsubmit;b._form.onsubmit=a;b._onFormSubmitHandler=Function.createDelegate(b,b._onFormSubmit);b._onFormElementClickHandler=Function.createDelegate(b,b._onFormElementClick);b._onWindowUnloadHandler=Function.createDelegate(b,b._onWindowUnload);Sys.UI.DomEvent.addHandler(b._form,j,b._onFormSubmitHandler);Sys.UI.DomEvent.addHandler(b._form,"click",b._onFormElementClickHandler);Sys.UI.DomEvent.addHandler(window,"unload",b._onWindowUnloadHandler);b._originalDoPostBack=window.__doPostBack;if(b._originalDoPostBack)window.__doPostBack=Function.createDelegate(b,b._doPostBack);b._originalDoPostBackWithOptions=window.WebForm_DoPostBackWithOptions;if(b._originalDoPostBackWithOptions)window.WebForm_DoPostBackWithOptions=Function.createDelegate(b,b._doPostBackWithOptions);b._originalFireDefaultButton=window.WebForm_FireDefaultButton;if(b._originalFireDefaultButton)window.WebForm_FireDefaultButton=Function.createDelegate(b,b._fireDefaultButton);b._originalDoCallback=window.WebForm_DoCallback;if(b._originalDoCallback)window.WebForm_DoCallback=Function.createDelegate(b,b._doCallback);b._pageLoadedHandler=Function.createDelegate(b,b._pageLoadedInitialLoad);Sys.UI.DomEvent.addHandler(window,i,b._pageLoadedHandler);d&&b._updateControls(d,e,h,f,c)},_matchesParentIDInList:function(e,d){for(var a=0,f=d.length;a<f;a++)if(e.startsWith(d[a]+"_"))return c;return b},_onFormElementActive:function(a,e,f){var b=this;if(a.disabled)return;b._postBackSettings=b._getPostBackSettings(a,a.name);if(a.name){var c=a.tagName.toUpperCase();if(c==="INPUT"){var d=a.type;if(d===j)b._additionalInput=encodeURIComponent(a.name)+h+encodeURIComponent(a.value);else if(d==="image")b._additionalInput=encodeURIComponent(a.name)+".x="+e+"&"+encodeURIComponent(a.name)+".y="+f}else if(c==="BUTTON"&&a.name.length!==0&&a.type===j)b._additionalInput=encodeURIComponent(a.name)+h+encodeURIComponent(a.value)}},_onFormElementClick:function(a){this._activeDefaultButtonClicked=a.target===this._activeDefaultButton;this._onFormElementActive(a.target,a.offsetX,a.offsetY)},_onFormSubmit:function(r){var e=this,m,C,q=c,D=e._isCrossPost;e._isCrossPost=b;if(e._onsubmit)q=e._onsubmit();if(q)for(m=0,C=e._onSubmitStatements.length;m<C;m++)if(!e._onSubmitStatements[m]()){q=b;break}if(!q){r&&r.preventDefault();return}var w=e._form;if(D)return;e._activeDefaultButton&&!e._activeDefaultButtonClicked&&e._onFormElementActive(e._activeDefaultButton,0,0);if(!e._postBackSettings||!e._postBackSettings.async)return;var f=new Sys.StringBuilder,F=w.elements.length,z=e._createPanelID(a,e._postBackSettings);f.append(z);for(m=0;m<F;m++){var l=w.elements[m],o=l.name;if(typeof o===g||o===a||o.length===0||o===e._scriptManagerID)continue;var v=l.tagName.toUpperCase();if(v==="INPUT"){var t=l.type;if(t==="text"||t==="password"||t==="hidden"||(t==="checkbox"||t==="radio")&&l.checked){f.append(encodeURIComponent(o));f.append(h);f.append(encodeURIComponent(l.value));f.append("&")}}else if(v==="SELECT")for(var E=l.options.length,x=0;x<E;x++){var A=l.options[x];if(A.selected){f.append(encodeURIComponent(o));f.append(h);f.append(encodeURIComponent(A.value));f.append("&")}}else if(v==="TEXTAREA"){f.append(encodeURIComponent(o));f.append(h);f.append(encodeURIComponent(l.value));f.append("&")}}f.append("__ASYNCPOST=true&");if(e._additionalInput){f.append(e._additionalInput);e._additionalInput=a}var i=new Sys.Net.WebRequest,j=w.action;if(Sys.Browser.agent===Sys.Browser.InternetExplorer){var y=j.indexOf("#");if(y!==d)j=j.substr(0,y);var u=j.indexOf("?");if(u!==d){var B=j.substr(0,u);if(B.indexOf("%")===d)j=encodeURI(B)+j.substr(u)}else if(j.indexOf("%")===d)j=encodeURI(j)}i.set_url(j);i.get_headers()["X-MicrosoftAjax"]="Delta=true";i.get_headers()["Cache-Control"]="no-cache";i.set_timeout(e._asyncPostBackTimeout);i.add_completed(Function.createDelegate(e,e._onFormSubmitCompleted));i.set_body(f.toString());var s,k;s=e._postBackSettings.panelsToUpdate;k=new Sys.WebForms.InitializeRequestEventArgs(i,e._postBackSettings.sourceElement,s);Sys.Observer.raiseEvent(e,p,k);q=!k.get_cancel();if(!q){r&&r.preventDefault();return}if(k&&k._updated){s=k.get_updatePanelsToUpdate();i.set_body(i.get_body().replace(z,e._createPanelID(s,e._postBackSettings)))}e._scrollPosition=e._getScrollPosition();e.abortPostBack();k=new Sys.WebForms.BeginRequestEventArgs(i,e._postBackSettings.sourceElement,s||e._postBackSettings.panelsToUpdate);Sys.Observer.raiseEvent(e,n,k);e._originalDoCallback&&e._cancelPendingCallbacks();e._request=i;e._processingRequest=b;i.invoke();r&&r.preventDefault()},_onFormSubmitCompleted:function(h){var d=this;d._processingRequest=c;if(h.get_timedOut()){d._endPostBack(d._createPageRequestManagerTimeoutError(),h,a);return}if(h.get_aborted()){d._endPostBack(a,h,a);return}if(!d._request||h.get_webRequest()!==d._request)return;if(h.get_statusCode()!==200){d._endPostBack(d._createPageRequestManagerServerError(h.get_statusCode()),h,a);return}var e=d._parseDelta(h);if(!e)return;var g,j;if(e.asyncPostBackControlIDsNode&&e.postBackControlIDsNode&&e.updatePanelIDsNode&&e.panelsToRefreshNode&&e.childUpdatePanelIDsNode){var x=d._updatePanelIDs,t=d._updatePanelClientIDs,n=e.childUpdatePanelIDsNode.content,v=n.length?n.split(","):[],s=d._splitNodeIntoArray(e.asyncPostBackControlIDsNode),u=d._splitNodeIntoArray(e.postBackControlIDsNode),w=d._splitNodeIntoArray(e.updatePanelIDsNode),l=d._splitNodeIntoArray(e.panelsToRefreshNode),m=e.version4;for(g=0,j=l.length;g<j;g+=m?2:1){var o=(m?l[g+1]:f)||d._uniqueIDToClientID(l[g]);if(!document.getElementById(o)){d._endPostBack(Error.invalidOperation(String.format(Sys.WebForms.Res.PRM_MissingPanel,o)),h,e);return}}var k=d._processUpdatePanelArrays(w,s,u,m);k.oldUpdatePanelIDs=x;k.oldUpdatePanelClientIDs=t;k.childUpdatePanelIDs=v;k.panelsToRefreshIDs=l;e.updatePanelData=k}e.dataItems={};var i;for(g=0,j=e.dataItemNodes.length;g<j;g++){i=e.dataItemNodes[g];e.dataItems[i.id]=i.content}for(g=0,j=e.dataItemJsonNodes.length;g<j;g++){i=e.dataItemJsonNodes[g];e.dataItems[i.id]=Sys.Serialization.JavaScriptSerializer.deserialize(i.content)}var q=Sys.Observer._getContext(d,c).events.getHandler(r);q&&q(d,d._getPageLoadingEventArgs(e));Sys._ScriptLoader.readLoadedScripts();Sys.Application.beginCreateComponents();var p=Sys._ScriptLoader.getInstance();d._queueScripts(p,e.scriptBlockNodes,c,b);d._processingRequest=c;p.loadScripts(0,Function.createDelegate(d,Function.createCallback(d._scriptIncludesLoadComplete,e)),Function.createDelegate(d,Function.createCallback(d._scriptIncludesLoadFailed,e)),a)},_onWindowUnload:function(){this.dispose()},_pageLoaded:function(a,b){Sys.Observer.raiseEvent(this,q,this._getPageLoadedEventArgs(a,b));!a&&Sys.Application.raiseLoad()},_pageLoadedInitialLoad:function(){this._pageLoaded(c,a)},_parseDelta:function(n){var h=this,g=n.get_responseData(),i,o,K,L,J,f=0,j=a,p=[];while(f<g.length){i=g.indexOf("|",f);if(i===d){j=h._findText(g,f);break}o=parseInt(g.substring(f,i),10);if(o%1!==0){j=h._findText(g,f);break}f=i+1;i=g.indexOf("|",f);if(i===d){j=h._findText(g,f);break}K=g.substring(f,i);f=i+1;i=g.indexOf("|",f);if(i===d){j=h._findText(g,f);break}L=g.substring(f,i);f=i+1;if(f+o>=g.length){j=h._findText(g,g.length);break}J=g.substr(f,o);f+=o;if(g.charAt(f)!=="|"){j=h._findText(g,f);break}f++;Array.add(p,{type:K,id:L,content:J})}if(j){h._endPostBack(h._createPageRequestManagerParserError(String.format(Sys.WebForms.Res.PRM_ParserErrorDetails,j)),n,a);return a}for(var D=[],B=[],v=[],C=[],y=[],I=[],G=[],F=[],A=[],x=[],r,u,z,s,t,w,E,m,q=0,M=p.length;q<M;q++){var e=p[q];switch(e.type){case"#":m=e;break;case"updatePanel":Array.add(D,e);break;case"hiddenField":Array.add(B,e);break;case"arrayDeclaration":Array.add(v,e);break;case"scriptBlock":Array.add(C,e);break;case"scriptStartupBlock":Array.add(y,e);break;case"expando":Array.add(I,e);break;case"onSubmit":Array.add(G,e);break;case"asyncPostBackControlIDs":r=e;break;case"postBackControlIDs":u=e;break;case"updatePanelIDs":z=e;break;case"asyncPostBackTimeout":s=e;break;case"childUpdatePanelIDs":t=e;break;case"panelsToRefreshIDs":w=e;break;case"formAction":E=e;break;case"dataItem":Array.add(F,e);break;case"dataItemJson":Array.add(A,e);break;case"scriptDispose":Array.add(x,e);break;case"pageRedirect":if(m&&parseFloat(m.content)>=4)e.content=unescape(e.content);if(Sys.Browser.agent===Sys.Browser.InternetExplorer){var k=document.createElement("a");k.style.display="none";k.attachEvent("onclick",H);k.href=e.content;h._form.parentNode.insertBefore(k,h._form);k.click();k.detachEvent("onclick",H);h._form.parentNode.removeChild(k);function H(a){a.cancelBubble=c}}else window.location.href=e.content;return a;case l:h._endPostBack(h._createPageRequestManagerServerError(Number.parseInvariant(e.id),e.content),n,a);return a;case"pageTitle":document.title=e.content;break;case"focus":h._controlIDToFocus=e.content;break;default:h._endPostBack(h._createPageRequestManagerParserError(String.format(Sys.WebForms.Res.PRM_UnknownToken,e.type)),n,a);return a}}return{version4:m?parseFloat(m.content)>=4:b,executor:n,updatePanelNodes:D,hiddenFieldNodes:B,arrayDeclarationNodes:v,scriptBlockNodes:C,scriptStartupNodes:y,expandoNodes:I,onSubmitNodes:G,dataItemNodes:F,dataItemJsonNodes:A,scriptDisposeNodes:x,asyncPostBackControlIDsNode:r,postBackControlIDsNode:u,updatePanelIDsNode:z,asyncPostBackTimeoutNode:s,childUpdatePanelIDsNode:t,panelsToRefreshNode:w,formActionNode:E}},_processUpdatePanelArrays:function(e,r,s,g){var d,c,b;if(e){var j=e.length,k=g?2:1;d=new Array(j/k);c=new Array(j/k);b=new Array(j/k);for(var h=0,i=0;h<j;h+=k,i++){var q,a=e[h],l=g?e[h+1]:f;q=a.charAt(0)==="t";a=a.substr(1);if(!l)l=this._uniqueIDToClientID(a);b[i]=q;d[i]=a;c[i]=l}}else{d=[];c=[];b=[]}var o=[],m=[];this._convertToClientIDs(r,o,m,g);var p=[],n=[];this._convertToClientIDs(s,p,n,g);return{updatePanelIDs:d,updatePanelClientIDs:c,updatePanelHasChildrenAsTriggers:b,asyncPostBackControlIDs:o,asyncPostBackControlClientIDs:m,postBackControlIDs:p,postBackControlClientIDs:n}},_queueScripts:function(d,b,e,f){for(var a=0,h=b.length;a<h;a++){var g=b[a].id;switch(g){case"ScriptContentNoTags":if(!f)continue;d.queueScriptBlock(b[a].content);break;case"ScriptContentWithTags":var c=window.eval("("+b[a].content+")");if(c.src){if(!e||Sys._ScriptLoader.isScriptLoaded(c.src))continue}else if(!f)continue;d.queueCustomScriptTag(c);break;case"ScriptPath":if(!e||Sys._ScriptLoader.isScriptLoaded(b[a].content))continue;d.queueScriptReference(b[a].content)}}},_registerDisposeScript:function(a,b){if(!this._scriptDisposes[a])this._scriptDisposes[a]=[b];else Array.add(this._scriptDisposes[a],b)},_scriptIncludesLoadComplete:function(j,e){var i=this;if(e.executor.get_webRequest()!==i._request)return;i._commitControls(e.updatePanelData,e.asyncPostBackTimeoutNode?e.asyncPostBackTimeoutNode.content:a);if(e.formActionNode)i._form.action=e.formActionNode.content;var d,h,g;for(d=0,h=e.updatePanelNodes.length;d<h;d++){g=e.updatePanelNodes[d];var o=document.getElementById(g.id);if(!o){i._endPostBack(Error.invalidOperation(String.format(Sys.WebForms.Res.PRM_MissingPanel,g.id)),e.executor,e);return}i._updatePanel(o,g.content)}for(d=0,h=e.scriptDisposeNodes.length;d<h;d++){g=e.scriptDisposeNodes[d];i._registerDisposeScript(g.id,g.content)}for(d=0,h=i._transientFields.length;d<h;d++){var l=document.getElementById(i._transientFields[d]);if(l){var p=l._isContained?l.parentNode:l;p.parentNode.removeChild(p)}}for(d=0,h=e.hiddenFieldNodes.length;d<h;d++){g=e.hiddenFieldNodes[d];i._createHiddenField(g.id,g.content)}if(e.scriptsFailed)throw Sys._ScriptLoader._errorScriptLoadFailed(e.scriptsFailed.src,e.scriptsFailed.multipleCallbacks);i._queueScripts(j,e.scriptBlockNodes,b,c);var n=f;for(d=0,h=e.arrayDeclarationNodes.length;d<h;d++){g=e.arrayDeclarationNodes[d];n+="Sys.WebForms.PageRequestManager._addArrayElement('"+g.id+"', "+g.content+");\r\n"}var m=f;for(d=0,h=e.expandoNodes.length;d<h;d++){g=e.expandoNodes[d];m+=g.id+" = "+g.content+"\r\n"}n.length&&j.queueScriptBlock(n);m.length&&j.queueScriptBlock(m);i._queueScripts(j,e.scriptStartupNodes,c,c);var k=f;for(d=0,h=e.onSubmitNodes.length;d<h;d++){if(d===0)k="Array.add(Sys.WebForms.PageRequestManager.getInstance()._onSubmitStatements, function() {\r\n";k+=e.onSubmitNodes[d].content+"\r\n"}if(k.length){k+="\r\nreturn true;\r\n});\r\n";j.queueScriptBlock(k)}j.loadScripts(0,Function.createDelegate(i,Function.createCallback(i._scriptsLoadComplete,e)),a,a)},_scriptIncludesLoadFailed:function(d,c,b,a){a.scriptsFailed={src:c.src,multipleCallbacks:b};this._scriptIncludesLoadComplete(d,a)},_scriptsLoadComplete:function(k,h){var c=this,j=h.executor;if(window.__theFormPostData)window.__theFormPostData=f;if(window.__theFormPostCollection)window.__theFormPostCollection=[];window.WebForm_InitCallback&&window.WebForm_InitCallback();if(c._scrollPosition){window.scrollTo&&window.scrollTo(c._scrollPosition.x,c._scrollPosition.y);c._scrollPosition=a}Sys.Application.endCreateComponents();c._pageLoaded(b,h);c._endPostBack(a,j,h);if(c._controlIDToFocus){var d,i;if(Sys.Browser.agent===Sys.Browser.InternetExplorer){var e=$get(c._controlIDToFocus);d=e;if(e&&!WebForm_CanFocus(e))d=WebForm_FindFirstFocusableChild(e);if(d&&typeof d.contentEditable!==g){i=d.contentEditable;d.contentEditable=b}else d=a}WebForm_AutoFocus(c._controlIDToFocus);if(d)d.contentEditable=i;c._controlIDToFocus=a}},_splitNodeIntoArray:function(b){var a=b.content,c=a.length?a.split(","):[];return c},_uniqueIDToClientID:function(a){return a.replace(/\$/g,"_")},_updateControls:function(d,a,c,b,e){this._commitControls(this._processUpdatePanelArrays(d,a,c,e),b)},_updatePanel:function(b,g){var a=this;for(var d in a._scriptDisposes)if(a._elementContains(b,document.getElementById(d))){for(var f=a._scriptDisposes[d],e=0,h=f.length;e<h;e++)window.eval(f[e]);delete a._scriptDisposes[d]}Sys.Application.disposeElement(b,c);b.innerHTML=g},_validPosition:function(b){return typeof b!==g&&b!==a&&b!==0}};e.getInstance=function(){var a=Sys.WebForms.PageRequestManager._instance;if(!a)a=Sys.WebForms.PageRequestManager._instance=new Sys.WebForms.PageRequestManager;return a};e._addArrayElement=function(a){if(!window[a])window[a]=[];for(var b=1,c=arguments.length;b<c;b++)Array.add(window[a],arguments[b])};e._initialize=function(){var a=Sys.WebForms.PageRequestManager.getInstance();a._initializeInternal.apply(a,arguments)};e.registerClass("Sys.WebForms.PageRequestManager");e=Sys.UI._UpdateProgress=function(d){var b=this;Sys.UI._UpdateProgress.initializeBase(b,[d]);b._displayAfter=500;b._dynamicLayout=c;b._associatedUpdatePanelId=a;b._beginRequestHandlerDelegate=a;b._startDelegate=a;b._endRequestHandlerDelegate=a;b._pageRequestManager=a;b._timerCookie=a};e.prototype={get_displayAfter:function(){return this._displayAfter},set_displayAfter:function(a){this._displayAfter=a},get_dynamicLayout:function(){return this._dynamicLayout},set_dynamicLayout:function(a){this._dynamicLayout=a},get_associatedUpdatePanelId:function(){return this._associatedUpdatePanelId},set_associatedUpdatePanelId:function(a){this._associatedUpdatePanelId=a},get_role:function(){return k},_clearTimeout:function(){if(this._timerCookie){window.clearTimeout(this._timerCookie);this._timerCookie=a}},_getUniqueID:function(c){var b=Array.indexOf(this._pageRequestManager._updatePanelClientIDs,c);return b===d?a:this._pageRequestManager._updatePanelIDs[b]},_handleBeginRequest:function(i,h){var a=this,e=h.get_postBackElement(),d=c,g=a._associatedUpdatePanelId;if(a._associatedUpdatePanelId){var f=h.get_updatePanelsToUpdate();if(f&&f.length)d=Array.contains(f,g)||Array.contains(f,a._getUniqueID(g));else d=b}while(!d&&e){if(e.id&&a._associatedUpdatePanelId===e.id)d=c;e=e.parentNode}if(d)a._timerCookie=window.setTimeout(a._startDelegate,a._displayAfter)},_startRequest:function(){var b=this;if(b._pageRequestManager.get_isInAsyncPostBack()){var c=b.get_element();if(b._dynamicLayout)c.style.display="block";else c.style.visibility="visible";b.get_role()===k&&c.setAttribute(s,"false")}b._timerCookie=a},_handleEndRequest:function(){var a=this,b=a.get_element();if(a._dynamicLayout)b.style.display="none";else b.style.visibility="hidden";a.get_role()===k&&b.setAttribute(s,"true");a._clearTimeout()},dispose:function(){var b=this;if(b._beginRequestHandlerDelegate!==a){b._pageRequestManager.remove_beginRequest(b._beginRequestHandlerDelegate);b._pageRequestManager.remove_endRequest(b._endRequestHandlerDelegate);b._beginRequestHandlerDelegate=a;b._endRequestHandlerDelegate=a}b._clearTimeout();Sys.UI._UpdateProgress.callBaseMethod(b,"dispose")},initialize:function(){var b=this;Sys.UI._UpdateProgress.callBaseMethod(b,"initialize");b.get_role()===k&&b.get_element().setAttribute(s,"true");b._beginRequestHandlerDelegate=Function.createDelegate(b,b._handleBeginRequest);b._endRequestHandlerDelegate=Function.createDelegate(b,b._handleEndRequest);b._startDelegate=Function.createDelegate(b,b._startRequest);if(Sys.WebForms&&Sys.WebForms.PageRequestManager)b._pageRequestManager=Sys.WebForms.PageRequestManager.getInstance();if(b._pageRequestManager!==a){b._pageRequestManager.add_beginRequest(b._beginRequestHandlerDelegate);b._pageRequestManager.add_endRequest(b._endRequestHandlerDelegate)}}};e.registerClass("Sys.UI._UpdateProgress",Sys.UI.Control)}if(window.Sys&&Sys.loader)Sys.loader.registerScript("WebForms",["ComponentModel","Serialization","Network"],a);else a()})();
Type.registerNamespace('Sys.WebForms');Sys.WebForms.Res={"PRM_UnknownToken":"Unknown token: \u0027{0}\u0027.","PRM_MissingPanel":"Could not find UpdatePanel with ID \u0027{0}\u0027. If it is being updated dynamically then it must be inside another UpdatePanel.","PRM_ServerError":"An unknown error occurred while processing the request on the server. The status code returned from the server was: {0}","PRM_ParserError":"The message received from the server could not be parsed. Common causes for this error are when the response is modified by calls to Response.Write(), response filters, HttpModules, or server trace is enabled.\r\nDetails: {0}","PRM_TimeoutError":"The server request timed out.","PRM_ParserErrorDetails":"Error parsing near \u0027{0}\u0027.","PRM_CannotRegisterTwice":"The PageRequestManager cannot be initialized more than once."};
var ibLanguageClientID = "";
var bVatClientId = "";
/**********************************************************************/
/*   Used by CK. This used to prevent the user from changing the      */
/*   version by hiting the enter key when no control has the focus    */
/**********************************************************************/

function callStopEnterKeyFunction(){
    document.onkeydown = stopEnterKey;
}

function stopEnterKey(evt){

    // Here we get the target ie the name of the control 
    // that the onkeydown event was fired on
    var targ;
    
	if( !e )
	    var e = window.event;
	try{
	if( e.target )
	    targ = e.target;
	else
	    if( e.srcElement )
	        targ = e.srcElement;
	if( targ.nodeType == 3 )// defeat Safari bug
		targ = targ.parentNode;

    // if our target == bVatClientId, the enter key was pressed while the 'change version' ( bVAT )
    // button had the focus so we can process the client's request
    if( targ.id == bVatClientId ){
    
        evt = (evt) ? evt : event;

        var charCode = (evt.charCode) ? evt.charCode :
            ((evt.which) ? evt.which : evt.keyCode);
        if( charCode == 13 )
            return true;
    }
    else{
        // If no control has the focus we get one of these values as target id
        // in this case we return true if the charCode is anything else the the return key
        if( targ.id == "" || targ.id == "ctl00_body" ){
            
            evt = (evt) ? evt : event;

            var charCode = (evt.charCode) ? evt.charCode :
                ((evt.which) ? evt.which : evt.keyCode);

            if( charCode == 13 ) // charcode 13 is the return key
                return false;
            else
                return true;
         }
         // else we return true and the default button set for the current form will be used to fire the required event
         else
            return true;
        }
    }
    catch(error){
    }
}


function completeCardHolderName(tbFirstName,tbLastName,tbCardHolderName)
{
    var fn = document.getElementById( tbFirstName );
    var ln = document.getElementById( tbLastName );
    var ch = document.getElementById( tbCardHolderName );
    
    ch.value = fn.value + ' ' + ln.value;
}

    function SubmitLastMinuteProduct(frm){
        frm.action="../cart/cart_cart.asp";
    }
	function cartridgeUpdate(val)
    {   
        if(val != ''){            
            document.forms['search_form'].action  = val;
        }
        document.forms['search_form'].submit();
    }
        
    function cartridgeLink()
    {   
        document.forms['search_form'].action  = document.getElementById('cartridgeBrand').value;
        document.forms['search_form'].submit();
    }
        
    function LeftFormCheck(sURL)
    {
        document.forms.local_nav_form.action  = sURL;
        document.forms.local_nav_form.submit();
    }
        
    function LeftFormCheckForgottenPassword(sURL)
    {   var sUrl2;
        sUrl2 = ""
        if (document.getElementsByName("acct_login_txtEmail")[0]){
            sUrl2 = "?";
            if (sURL.indexOf("?") > 0){
                sUrl2 = "&";            
            }
            sUrl2 = sUrl2 + "passwordForgotten=true";           
        }
        sURL = sURL + sUrl2;
        LeftFormCheck(sURL);
    }
        
    function updateTextBox_onfocus(field,defaultValue)
    {
        if (field.value == defaultValue)
        {
            field.value="";
        }
    }

    function updateTextBox_onblur(field,defaultValue)
    {      
        if (field.value == '')
        {
            field.value=defaultValue;
        }
    }
    
    function enterPress(evt,element,action)
    { 
        flag=0;
        if (!evt) var evt = window.event; 

        if (evt.which){
            code = evt.which ;
            flag=1;
        }else{
            code = evt.keyCode;   
        }            				
				
		if (code == 13)
		{  		   
            if(action == 'focus') element.focus();
            if(action == 'click') element.click();
		    if(action == 'submit') element.submit();	  
		    
		    if (flag == 0){ 
		        evt.returnValue = false;  		       
            }
            else{      
                evt.preventDefault();    
            } 		      
		}		
	}
	


var spaceBorder = 13;
var heightPopup = 150;
var widthPopup = 313;
var topPopup = (screen.height-heightPopup)/2 - (heightPopup/2);
var leftPopup= (screen.width-widthPopup)/2;

var bgColor = "#FFFFFF";

var fontFamily = "Arial";
var fontSize = "12";
var fontColor = "#000000";

var Ombre = 1;

var clic = false;
function clicDown(tab) {
	abscisse = abs-leftPopup;
	ordonne = ord-topPopup;
	clic=true;
}
function clicUp() {
		clic=false;
}
function closePopup(popupID) {
	document.getElementById(popupID).style.visibility="hidden";
}

function hidePopup(elementId)
{
	document.getElementById(elementId.id).style.display = 'none';
}

function showPopup(popupID,delayHidePopup) {
    var scrOfX = 0, scrOfY = 0;
    var scrOfW = 0, scrOfH = 0;
    if( typeof( window.pageYOffset ) == 'number' ) {
        //Netscape compliant
        scrOfY = window.pageYOffset;
        scrOfX = window.pageXOffset;
    } else if( document.body && ( document.body.scrollLeft || document.body.scrollTop ) ) {
        //DOM compliant
        scrOfY = document.body.scrollTop;
        scrOfX = document.body.scrollLeft;
    } else if( document.documentElement && ( document.documentElement.scrollLeft || document.documentElement.scrollTop ) ) {
        //IE6 standards compliant mode
        scrOfY = document.documentElement.scrollTop;
        scrOfX = document.documentElement.scrollLeft;
    }
        
    var oDiv = document.getElementById(popupID);
    scrOfW = oDiv.clientWidth;
    scrOfH = oDiv.clientHeight;
    oDiv.style.left = scrOfX + (screen.width-scrOfW)/2;
    oDiv.style.top = scrOfY + (screen.height-scrOfH)/2 - (scrOfH/2);
	oDiv.style.visibility="visible";
	oDiv.style.zIndex=100;
	setTimeout("hidePopup("+popupID+")",delayHidePopup);
	return false;
}

function displayPopup(popupID,url,delayHidePopup)
{
	document.location.href = url;
	return showPopup(popupID,delayHidePopup);
}

function submitWithPopup(popupID,myForm,delayHidePopup)
{
	//document.forms[myForm].submit();
	showPopup(popupID,delayHidePopup);
	return true;
}

function popup(popupID,myText,width,height){
    heightPopup = height+13;
    widthPopup = width;
    topPopup = (screen.height-heightPopup)/2 - (heightPopup/2);
    leftPopup= (screen.width-widthPopup)/2;

	if (document.getElementById) {
		document.write('<style type="text/css">')
		document.write('table.popup {')
		document.write('	border: 1px solid #000000;}')
		document.write('td.corps {')
		document.write('	font-family: '+fontFamily+';')
		document.write('	font-size: '+fontSize+'px;')
		document.write('	color: '+fontColor+';}')
		document.write('</style>')
		document.write('<DIV id='+ popupID +' STYLE="position:absolute; top:'+topPopup+'px; left:'+leftPopup+'px;visibility:hidden;">')
	
		if (Ombre == 1 ) {
			document.write('<table width="'+widthPopup+'" height="'+heightPopup+'" border="0" cellspacing="0" cellpadding="0">')
			document.write('<tr> ')
			widthPopup -= 5
			heightPopup -= 5
			document.write('<td width="'+widthPopup+'"  height="'+heightPopup+'" colspan="2" rowspan="2" align="left" valign="top">')
		}
        
		document.write('<table width="'+widthPopup+'"  height="'+heightPopup+'" border="0" cellspacing="0" cellpadding="0" class="popup">')
		widthPopup -= spaceBorder
		heightPopup -= spaceBorder
		document.write('<tr valign="top">') 
		document.write('<td bgcolor="'+bgColor+'" width="'+widthPopup+'" height="'+heightPopup+'" class="corps">'+myText+'</td>')
		document.write('</tr>')
		document.write('</table>')
	
		if (Ombre == 1 ) {
			document.write('</td>')
			document.write('<td width="5" height="5"></td>') 
			document.write('</tr>')
			document.write('<tr>')
			document.write('<td width="5" height="'+heightPopup+'"></td>')
			document.write('</tr>')
			document.write('<tr> ')
			document.write('<td height="5" width="5"></td>')
			document.write('<td height="5" width="'+widthPopup+'" ></td>')
			document.write('<td height="5" width="5" ></td>')
			document.write('</tr>')
  			document.write('</table>')
		}
		document.write('</div>')
	}
}

function switchAddress(typeAddress, divBill, divShip){

    if (typeAddress == 'ship'){
        document.getElementById(divBill).style.display = "none";
        document.getElementById(divShip).style.display = "block";
    }else{
        document.getElementById(divBill).style.display = "block";
        document.getElementById(divShip).style.display = "none";
    }	   
}

function popupWarranty(url,parameter){	
    window.open(url,'garantie_window',parameter); return false;
}

function checkCouponCodeEntered(fieldID){
    if (document.getElementById(fieldID).value == '') {
        return false;
    }else{
        return true;
    }
}

function popupPrintOrder(url, parameter){
    window.open(url,'printOrder',parameter); return false;
}

function loadIFRAME() {
	if (document.getElementById) {  // DOM3 = IE5, NS6
	    document.getElementById('preloadIMG').style.visibility = 'hidden';
	}
}

function Reload () {
    var f = document.getElementById('framepsp');

}

function countChars( tbToValidate, nbChar )
{                      
    var s = "";
    s = tbToValidate.value;
    
    var len = s.length;

    if( len > nbChar )
    {
        s = s.substring( 0,nbChar );
        tbToValidate.value = s;
        return false;
    }         
}

function ReloadPage(){
    var hRefresh=document.getElementById("hRefresh");
    var allowed=CaptEvent(event);
    //Avoir Reload twice if user clicks on F5
    if (allowed) {
        if (hRefresh){   
            if(hRefresh.value=="no")
                hRefresh.value="yes";           
            else{
                hRefresh.value="no";
                location.reload();        
            }
        }
    }
}

function CaptEvent(event){
    switch (event.keyCode) {
    case 116: // Appui sur touche F5
        //alert('interdit');
        // Code de blocage ici, IE ne doit pas interp�ter le F5 !!
        return false; // C'est la que l'on d�termine si l'�v�nement
        break;
    }
}


function evalQuantityKeyUp (sMultiple,tbQuantity,lErrorQuantity ){
     
    var mLErrorQuantity = document.getElementById(lErrorQuantity); 
    var mTbQuantity = document.getElementById(tbQuantity);  
    if (mLErrorQuantity != null && mTbQuantity != null ){
        var sQty=mTbQuantity.value;
        var val=Math.round(sQty/sMultiple);      
        
        if ((val != (sQty/sMultiple)) || (val ==0) ){   
            mLErrorQuantity.style.display="inline";         
        }else{
            mLErrorQuantity.style.display="none";  
        } 
    }                       
}

function evalQuantityBlur (sMultiple,tbQuantity,lErrorQuantity ){ 
    var mLErrorQuantity = document.getElementById(lErrorQuantity);     
    var mTbQuantity = document.getElementById(tbQuantity);  
    if (mLErrorQuantity != null && mTbQuantity != null){
        var sQty=mTbQuantity.value;
           
        var val=Math.round(sQty/sMultiple);

        if ((val != (sQty/sMultiple)) || (val ==0) ){  
            mLErrorQuantity.style.display="inline";
            if (val == 0){
                val=1;
            }
            val=val*sMultiple;  
             
            if (val < sQty) {
                val = val + sMultiple
            }
            
           mTbQuantity.value = val
                   
             mLErrorQuantity.style.display="none";      
        }else{
            mLErrorQuantity.style.display="none";  
        } 
    }                        
}

function countPasswordCharacters(tbToValidate, constant, counterTb) {

    var countTb = document.getElementById(counterTb);
    var tbToVal = document.getElementById(tbToValidate);

    if (tbToValidate === null) { }
    else {
        var s = "";
        s = tbToVal.value;
        
        var len = s.length;

        if (len > constant) {
            s = s.substring(0, constant);
            tbToVal.value = s;

            return false;

        }

        var remainingChars = constant - len;

        if (document.all) {
            countTb.innerText = remainingChars.toString();
        }
        else {// Firefox
            countTb.textContent = remainingChars.toString();
        }

        countTb.value = constant - len;
    }
}
var kNoCanonicalCounterpart = 0;

var kCapitalLetter = 0;

var kSmallLetter = 1;

var kDigit = 2;

var kPunctuation = 3;

var kAlpha =  4;

var kCanonicalizeLettersOnly = true;

var kCananicalizeEverything = false;

var gDebugOutput = null;

var kDebugTraceLevelNone = 0;

var kDebugTraceLevelSuperDetail = 120;

var kDebugTraceLevelRealDetail = 100;

var kDebugTraceLevelAll = 80;

var kDebugTraceLevelMost = 60;

var kDebugTraceLevelFew = 40;

var kDebugTraceLevelRare = 20;

var gDebugTraceLevel = kDebugTraceLevelNone;



function DebugPrint(){

	var string = "";

	if (gDebugTraceLevel && gDebugOutput && DebugPrint.arguments && (DebugPrint.arguments.length > 1) && (DebugPrint.arguments[0] <= gDebugTraceLevel)){

		for(var index = 1; index < DebugPrint.arguments.length; index++){

			string += DebugPrint.arguments[index] + " ";

		}



	string += "<br>\n";

	gDebugOutput(string);

	}

}



function CSimilarityMap(){

	this.m_elements = "";

	this.m_canonicalCounterparts = "";

}



function SimilarityMap_Add(element, canonicalCounterpart){

	this.m_elements += element;

	this.m_canonicalCounterparts += canonicalCounterpart;

}



function SimilarityMap_Lookup(element){

	var canonicalCounterpart = kNoCanonicalCounterpart;

	var index = this.m_elements.indexOf(element);

	if (index >= 0){

		canonicalCounterpart = this.m_canonicalCounterparts.charAt(index);

	}

	else{

	}

	return canonicalCounterpart;

}



function SimilarityMap_GetCount(){

	return this.m_elements.length;

}



CSimilarityMap.prototype.Add = SimilarityMap_Add;

CSimilarityMap.prototype.Lookup = SimilarityMap_Lookup;

CSimilarityMap.prototype.GetCount = SimilarityMap_GetCount;



function CDictionaryEntry(length, wordList){

	this.m_length = length;

	this.m_wordList = wordList;

}



function DictionaryEntry_Lookup(strWord){

	var fFound = false;

	if (strWord.length == this.m_length){

		var nFirst = 0;

		var nLast = this.m_wordList.length - 1;

		while( nFirst <= nLast ){

			var nCurrent = Math.floor((nFirst + nLast)/2);

			if( strWord == this.m_wordList[nCurrent]){

				fFound = true;

				break;

			}

			else if ( strWord > this.m_wordList[nCurrent]){

				nLast = nCurrent - 1;

			}

			else{

				nFirst = nCurrent + 1;

			}

		}

	}



	return fFound;

}



CDictionaryEntry.prototype.Lookup = DictionaryEntry_Lookup;



function CDictionary(){

	this.m_entries = new Array()

	}



function Dictionary_Lookup(strWord){

	for (var index = 0; index < this.m_entries.length; index++){

		if (this.m_entries[index].Lookup(strWord)){

			return true;

		}

	}

}



function Dictionary_Add(length, wordList){

	var iL=this.m_entries.length;

	var cD=new CDictionaryEntry(length, wordList)

	this.m_entries[iL]=cD;

}



CDictionary.prototype.Lookup = Dictionary_Lookup;

CDictionary.prototype.Add = Dictionary_Add;

var gSimilarityMap = new CSimilarityMap();

var gDictionary = new CDictionary();



function CharacterSetChecks(type, fResult){

	this.type = type;

	this.fResult = fResult;

}



function isctype(character, type, nDebugLevel){

	var fResult = false;

	switch(type){

		case kCapitalLetter:

		if((character >= 'A') && (character <= 'Z')){

			fResult = true;

		}

		break;

		case kSmallLetter:

		if ((character >= 'a') && (character <= 'z')){

			fResult = true;

		}

		break;

		case kDigit:

		if ((character >= '0') && (character <= '9')){

			fResult = true;

		}

		break;

		case kPunctuation:

		if ("!@#$%^&*()_+-='\";:[{]}\|.>,</?`~".indexOf(character) >= 0){

			fResult = true;

		}

		break;

		case kAlpha:

		if (isctype(character, kCapitalLetter) || isctype(character, kSmallLetter)){

			fResult = true;

		}

		break;

		default:

		break;

	}

	return fResult;

}



function CanonicalizeWord(strWord, similarityMap, fLettersOnly){

	var canonicalCounterpart = kNoCanonicalCounterpart;

	var strCanonicalizedWord = "";

	var nStringLength = 0;

	if ((strWord != null) && (strWord.length > 0)){

		strCanonicalizedWord = strWord;

		strCanonicalizedWord = strCanonicalizedWord.toLowerCase();

		if (similarityMap.GetCount() > 0){

			nStringLength = strCanonicalizedWord.length;

			for(var index = 0; index < nStringLength; index++){

				if (fLettersOnly && !isctype(strCanonicalizedWord.charAt(index), kSmallLetter, kDebugTraceLevelSuperDetail)){

					continue;

				}

				canonicalCounterpart = similarityMap.Lookup(strCanonicalizedWord.charAt(index));

				if (canonicalCounterpart != kNoCanonicalCounterpart){

					strCanonicalizedWord = strCanonicalizedWord.substring(0, index) + canonicalCounterpart +

					strCanonicalizedWord.substring(index + 1, nStringLength);

				}

			}

		}

	}

	return strCanonicalizedWord;

}



function IsLongEnough(strWord, nAtLeastThisLong){

	if ((strWord == null) || isNaN(nAtLeastThisLong)){

		return false;

	}

	else if (strWord.length < nAtLeastThisLong){

		return false;

	}

	return true;

}



function SpansEnoughCharacterSets(strWord, nAtLeastThisMany){

	var nCharSets = 0;

	var characterSetChecks = new Array(

	new CharacterSetChecks(kCapitalLetter, false),

	new CharacterSetChecks(kSmallLetter, false),

	new CharacterSetChecks(kDigit, false),

	new CharacterSetChecks(kPunctuation, false)

	);

	if ((strWord == null) || isNaN(nAtLeastThisMany)){

		return false;

	}

	for(var index = 0; index < strWord.length; index++){

		for(var nCharSet = 0; nCharSet < characterSetChecks.length;nCharSet++){

			if (!characterSetChecks[nCharSet].fResult && isctype(strWord.charAt(index), characterSetChecks[nCharSet].type, kDebugTraceLevelAll)){

				characterSetChecks[nCharSet].fResult = true;

				break;

			}

		}

	}

	for(var nCharSet = 0; nCharSet < characterSetChecks.length;nCharSet++){

		if (characterSetChecks[nCharSet].fResult){

			nCharSets++;

		}	

	}

	if (nCharSets < nAtLeastThisMany){

		return false;

	}

	return true;

}



function FoundInDictionary(strWord, similarityMap, dictionary){

	var strCanonicalizedWord = "";

	if((strWord == null) || (similarityMap == null) || (dictionary == null)){

		return true;

	}

	strCanonicalizedWord = CanonicalizeWord(strWord, similarityMap, kCanonicalizeLettersOnly);

	if (dictionary.Lookup(strCanonicalizedWord)){

		return true;

	}

	return false;

}



function IsCloseVariationOfAWordInDictionary(strWord, threshold, similarityMap, dictionary){

	var strCanonicalizedWord = "";

	var nMinimumMeaningfulMatchLength = 0;

	if((strWord == null) || isNaN(threshold) || (similarityMap == null) || (dictionary == null)){

		return true;

	}

	strCanonicalizedWord = CanonicalizeWord(strWord, similarityMap, kCananicalizeEverything);

	nMinimumMeaningfulMatchLength = Math.floor((threshold) * strCanonicalizedWord.length);

	for (var nSubStringLength = strCanonicalizedWord.length; nSubStringLength >= nMinimumMeaningfulMatchLength; nSubStringLength--){

		for(var nSubStringStart = 0; (nSubStringStart + nMinimumMeaningfulMatchLength) < strCanonicalizedWord.length; nSubStringStart++){

			var strSubWord = strCanonicalizedWord.substr(nSubStringStart, nSubStringLength);

			if (dictionary.Lookup(strSubWord)){

				return true;

			}

		}

	}

	return false;

}



function Init(){

gSimilarityMap.Add('3', 'e');

gSimilarityMap.Add('x', 'k');

gSimilarityMap.Add('5', 's');

gSimilarityMap.Add('$', 's');

gSimilarityMap.Add('6', 'g');

gSimilarityMap.Add('7', 't');

gSimilarityMap.Add('8', 'b');

gSimilarityMap.Add('|', 'l');

gSimilarityMap.Add('9', 'g');

gSimilarityMap.Add('+', 't');

gSimilarityMap.Add('@', 'a');

gSimilarityMap.Add('0', 'o');

gSimilarityMap.Add('1', 'l');

gSimilarityMap.Add('2', 'z');

gSimilarityMap.Add('!', 'i');

gDictionary.Add(3, 

"oat|not|ken|keg|ham|hal|gas|cpu|cit|bop|bah".split("|"));

gDictionary.Add(4, 

"zeus|ymca|yang|yaco|work|word|wool|will|viva|vito|vita|visa|vent|vain|uucp|util|utah|unix|trek|town|torn|tina|time|tier|tied|tidy|tide|thud|test|tess|tech|tara|tape|tapa|taos|tami|tall|tale|spit|sole|sold|soil|soft|sofa|soap|slav|slat|slap|slam|shit|sean|saud|sash|sara|sand|sail|said|sago|sage|saga|safe|ruth|russ|rusk|rush|ruse|runt|rung|rune|rove|rose|root|rick|rich|rice|reap|ream|rata|rare|ramp|prod|pork|pete|penn|penh|pend|pass|pang|pane|pale|orca|open|olin|olga|oldy|olav|olaf|okra|okay|ohio|oath|numb|null|nude|note|nosy|nose|nita|next|news|ness|nasa|mike|mets|mess|math|mash|mary|mars|mark|mara|mail|maid|mack|lyre|lyra|lyon|lynx|lynn|lucy|love|lose|lori|lois|lock|lisp|lisa|leah|lass|lash|lara|lank|lane|lana|kink|keri|kemp|kelp|keep|keen|kate|karl|june|judy|judo|judd|jody|jill|jean|jane|isis|iowa|inna|holm|help|hast|half|hale|hack|gust|gush|guru|gosh|gory|golf|glee|gina|germ|gatt|gash|gary|game|fred|fowl|ford|flea|flax|flaw|finn|fink|film|fill|file|erin|emit|elmo|easy|done|disk|disc|diet|dial|dawn|dave|data|derek|damn|dame|crab|cozy|coke|city|cite|chem|chat|cats|burl|bred|bill|bilk|bile|bike|beth|beta|benz|beau|bath|bass|bart|bank|bake|bait|bail|aria|anne|anna|andy|alex|abcd".split("|"));

gDictionary.Add(5, 

"yacht|xerox|wilma|willy|wendy|wendi|water|warez|vitro|vital|vitae|vista|visor|vicky|venus|venom|value|ultra|u.s.a|tubas|tress|tramp|trait|tracy|traci|toxic|tiger|tidal|thumb|texas|test2|test1|terse|terry|tardy|tappa|tapis|tapir|taper|tanya|tansy|tammy|tamie|taint|sybil|suzie|susie|susan|super|steph|stacy|staci|spark|sonya|sonia|solar|soggy|sofia|smile|slave|slate|slash|slant|slang|simon|shiva|shell|shark|sharc|shack|scrim|screw|scott|scorn|score|scoot|scoop|scold|scoff|saxon|saucy|satan|sasha|sarah|sandy|sable|rural|rupee|runty|runny|runic|runge|rules|ruben|royal|route|rouse|roses|rolex|robyn|robot|robin|ridge|rhode|revel|renee|ranch|rally|radio|quark|quake|quail|power|polly|polis|polio|pluto|plane|pizza|photo|phone|peter|perry|penna|penis|paula|patty|parse|paris|parch|paper|panic|panel|olive|olden|okapi|oasis|oaken|nurse|notre|notch|nancy|nagel|mouse|moose|mogul|modem|merry|megan|mckee|mckay|mcgee|mccoy|marty|marni|mario|maria|marcy|marci|maint|maine|magog|magic|lyric|lyons|lynne|lynch|louis|lorry|loris|lorin|loren|linda|light|lewis|leroy|laura|later|lasso|laser|larry|ladle|kinky|keyes|kerry|kerri|kelly|keith|kazoo|kayla|kathy|karie|karen|julie|julia|joyce|jenny|jenni|japan|janie|janet|james|irene|inane|impel|idaho|horus|horse|honey|honda|holly|hello|heidi|hasty|haste|hamal|halve|haley|hague|hager|hagen|hades|guest|guess|gucci|group|grahm|gouge|gorse|gorky|glean|gleam|glaze|ghoul|ghost|gauss|gauge|gaudy|gator|gases|games|freer|fovea|float|fiona|finny|filly|field|erika|erica|enter|enemy|empty|emily|email|elmer|ellis|ellen|eight|eerie|edwin|edges|eatme|earth|eager|dulce|donor|donna|diane|diana|delay|defoe|david|danny|daisy|cuzco|cubit|cozen|coypu|coyly|cowry|condo|class|cindy|cigar|chess|cathy|carry|carol|carla|caret|caren|candy|candi|burma|burly|burke|brian|breed|borax|booze|booty|bloom|blood|bitch|bilge|bilbo|betty|beryl|becky|beach|bathe|batch|basic|bantu|banks|banjo|baird|baggy|azure|arrow|array|april|anita|angie|amber|amaze|alpha|alisa|alike|align|alice|alias|album|alamo|aires|admin|adept|adele|addle|addis|added|acura|abyss|abcde|1701d|123go|!@#$%".split("|"));

gDictionary.Add(6, 

"yankee|yamaha|yakima|y7u8i9|xyzxyz|wombat|wizard|wilson|willie|weenie|warren|visual|virgin|viking|venous|venice|venial|vasant|vagina|ursula|urchin|uranus|uphill|umpire|u.s.a.|tuttle|trisha|trails|tracie|toyota|tomato|toggle|tidbit|thorny|thomas|terror|tennis|taylor|target|tardis|tappet|taoist|tannin|tanner|tanker|tamara|system|surfer|summer|subway|stacie|stacey|spring|sondra|solemn|soleil|solder|solace|soiree|soften|soffit|sodium|sodden|snoopy|snatch|smooch|smiles|slavic|slater|single|singer|simple|sherri|sharon|sharks|sesame|sensor|secret|second|season|search|scroll|scribe|scotty|scooby|schulz|school|scheme|saturn|sandra|sandal|saliva|saigon|sahara|safety|safari|sadism|saddle|sacral|russel|runyon|runway|runoff|runner|ronald|romano|rodent|ripple|riddle|ridden|reveal|return|remote|recess|recent|realty|really|reagan|raster|rascal|random|radish|radial|racoon|racket|racial|rachel|rabbit|qwerty|qawsed|puppet|puneet|public|prince|presto|praise|poster|polite|polish|policy|police|plover|pierre|phrase|photon|philip|persia|peoria|penmen|penman|pencil|peanut|parrot|parent|pardon|papers|pander|pamela|pallet|palace|oxford|outlaw|osiris|orwell|oregon|oracle|olivia|oliver|olefin|office|notion|notify|notice|notate|notary|noreen|nobody|nicole|newton|nevada|mutant|mozart|morley|monica|moguls|minsky|mickey|merlin|memory|mellon|meagan|mcneil|mcleod|mclean|mckeon|mchugh|mcgraw|mcgill|mccann|mccall|mccabe|mayfly|maxine|master|massif|maseru|marvin|markus|malcom|mailer|maiden|magpie|magnum|magnet|maggot|lorenz|lisbon|limpid|leslie|leland|latest|latera|latent|lascar|larkin|langur|landis|landau|lambda|kristy|kristi|krista|knight|kitten|kinney|kerrie|kernel|kermit|kennan|kelvin|kelsey|kelley|keller|keenan|katina|karina|kansas|juggle|judith|jsbach|joshua|joseph|johnny|joanne|joanna|jixian|jimmie|jimbob|jester|jeanne|jasmin|janice|jaguar|jackie|island|invest|instar|ingrid|ingres|impute|holmes|holman|hockey|hidden|hawaii|hasten|harvey|harold|hamlin|hamlet|halite|halide|haggle|haggis|hadron|hadley|hacker|gustav|gusset|gurkha|gurgle|guntis|guitar|gamlyn|gospel|gorton|gorham|gorges|golfer|glassy|ginger|gibson|ghetto|german|george|gauche|gasify|gambol|gamble|gambit|friend|freest|fourth|format|flower|flaxen|flaunt|flakes|finley|finite|fillip|fillet|filler|filled|fermat|fender|fatten|fatima|fathom|father|evelyn|euclid|estate|enzyme|engine|employ|emboss|elanor|elaine|eileen|eighty|eighth|effect|efface|eeyore|eerily|edwina|easier|durkin|durkee|during|durham|duress|duncan|donner|donkey|donate|donald|domino|disney|dieter|device|denise|deluge|delete|debbie|deaden|ddurer|dapper|daniel|dancer|damask|dakota|daemon|cuvier|cuddly|cuddle|cuckoo|cretin|create|cozier|coyote|cowpox|cooper|cookie|connie|coneck|condom|coffee|citrus|citron|citric|circus|charon|change|censor|cement|celtic|cecily|cayuga|catnip|catkin|cation|castle|carson|carrot|carrie|carole|carmen|caress|cantor|burley|burlap|buried|burial|brenda|bremen|breezy|breeze|breech|brandy|brandi|border|borden|borate|bloody|bishop|bilbao|bikini|bigred|betsie|berman|berlin|bedbug|became|beavis|beaver|beauty|beater|batman|bathos|barony|barber|baobab|bantus|banter|bantam|banish|bangui|bangor|bangle|bandit|banana|bakery|bailey|bahama|bagley|badass|aztecs|azsxdc|athena|asylum|arthur|arrest|arrear|arrack|arlene|anvils|answer|angela|andrea|anchor|analog|amazon|amanda|alison|alight|alicia|albino|albert|albeit|albany|alaska|adrian|adelia|adduce|addict|addend|accrue|access|abcdef|abcabc|abc123|a1b2c3|a12345|@#$%^&|7y8u9i|1qw23e|1q2w3e|1p2o3i|1a2b3c|123abc|10sne1|0p9o8i|!@#$%^".split("|"));

gDictionary.Add(7, 

"yolanda|wyoming|winston|william|whitney|whiting|whatnot|vitriol|vitrify|vitiate|vitamin|visitor|village|vertigo|vermont|venturi|venture|ventral|venison|valerie|utility|upgrade|unknown|unicorn|unhappy|trivial|torrent|tinfoil|tiffany|tidings|thunder|thistle|theresa|test123|terrify|teleost|tarbell|taproot|tapping|tapioca|tantrum|tantric|tanning|takeoff|swearer|suzanne|susanne|support|success|student|squires|sossina|soldier|sojourn|soignee|sodding|smother|slavish|slavery|slander|shuttle|shivers|shirley|sheldon|shannon|service|seattle|scooter|scissor|science|scholar|scamper|satisfy|sarcasm|salerno|sailing|saguaro|saginaw|sagging|saffron|sabrina|russell|rupture|running|runneth|rosebud|receipt|rebecca|realtor|raleigh|rainbow|quarrel|quality|qualify|pumpkin|protect|program|profile|profess|profane|private|prelude|porsche|politic|playboy|phoenix|persona|persian|perseus|perseid|perplex|penguin|pendant|parapet|panoply|panning|panicle|panicky|pangaea|pandora|palette|pacific|olivier|olduvai|oldster|okinawa|oakwood|nyquist|nursery|numeric|number1|nullify|nucleus|nuclear|notused|nothing|newyork|network|neptune|montana|minimum|michele|michael|merriam|mercury|melissa|mcnulty|mcnally|mcmahon|mckenna|mcguire|mcgrath|mcgowan|mcelroy|mcclure|mcclain|mccarty|mcbride|mcadams|mbabane|mayoral|maurice|marimba|manhole|manager|mammoth|malcolm|malaria|mailbox|magnify|magneto|losable|lorinda|loretta|lorelei|lockout|lioness|limpkin|library|lazarus|lathrop|lateran|lateral|kristin|kristie|kristen|kinsman|kingdom|kennedy|kendall|kellogg|keelson|katrina|jupiter|judaism|judaica|jessica|janeiro|inspire|inspect|insofar|ingress|indiana|include|impetus|imperil|holmium|holmdel|herbert|heather|headmen|headman|harmony|handily|hamburg|halifax|halibut|halfway|haggard|hafnium|hadrian|gustave|gunther|gunshot|gryphon|gosling|goshawk|gorilla|gleason|glacier|ghostly|germane|georgia|geology|gaseous|gascony|gardner|gabriel|freeway|fourier|flowers|florida|fishers|finnish|finland|ferrari|felicia|feather|fatigue|fairway|express|expound|emulate|empress|empower|emitted|emerald|embrace|embower|ellwood|ellison|egghead|durward|durrell|drought|donning|donahue|digital|develop|desiree|default|deborah|damming|cynthia|cyanate|cutworm|cutting|cuddles|cubicle|crystal|coxcomb|cowslip|cowpony|cowpoke|console|conquer|connect|comrade|compton|collins|cluster|claudia|classic|citroen|citrate|citizen|citadel|cistern|christy|chester|charles|charity|celtics|celsius|catlike|cathode|carroll|carrion|careful|carbine|carbide|caraway|caravan|camille|burmese|burgess|bridget|breccia|bradley|bopping|blondie|bilayer|beverly|bernard|bermuda|berlitz|berlioz|beowulf|beloved|because|beatnik|beatles|beatify|bassoon|bartman|baroque|barbara|baptism|banshee|banquet|bannock|banning|bananas|bainite|bailiff|bahrein|bagpipe|baghdad|bagging|bacchus|asshole|arrange|arraign|arragon|arizona|ariadne|annette|animals|anatomy|anatole|amatory|amateur|amadeus|allison|alimony|aliases|algebra|albumin|alberto|alberta|albania|alameda|aladdin|alabama|airport|airpark|airfoil|airflow|airfare|airdrop|adenoma|adenine|address|addison|accrual|acclaim|academy|abcdefg|!@#$%^&".split("|"));

gDictionary.Add(8, 

"yosemite|y7u8i9o0|wormwood|woodwind|whistler|whatever|warcraft|vitreous|virginia|veronica|venomous|trombone|transfer|tortoise|tientsin|tideland|ticklish|thailand|testtest|tertiary|terrific|terminal|telegram|tarragon|tapeworm|tapestry|tanzania|tantalus|tantalum|sysadmin|symmetry|sunshine|strangle|startrek|springer|sparrows|somebody|solecism|soldiery|softwood|software|softball|socrates|slatting|slapping|slapdash|slamming|simpsons|serenity|security|schwartz|sanctity|sanctify|samantha|salesman|sailfish|sailboat|sagittal|sagacity|sabotage|rushmore|rosemary|rochelle|robotics|reverend|regional|raindrop|rachelle|qwertyui|qwerasdf|qawsedrf|q1w2e3r4|protozoa|prodding|princess|precious|politics|politico|plymouth|pershing|penitent|penelope|pendulum|patricia|password|passport|paranoia|panorama|panicked|pandemic|pandanus|pakistan|painless|operator|olivetti|oleander|oklahoma|notocord|notebook|notarize|nebraska|napoleon|missouri|michigan|michelle|mesmeric|mercedes|mcmullen|mcmillan|mcknight|mckinney|mckinley|mckesson|mckenzie|mcintyre|mcintosh|mcgregor|mcgovern|mcginnis|mcfadden|mcdowell|mcdonald|mcdaniel|mcconnel|mccauley|mccarthy|mccallum|mayapple|masonite|maryland|marjoram|marinate|marietta|maneuver|mandamus|maledict|maladapt|magnuson|magnolia|magnetic|lyrebird|lymphoma|lorraine|lionking|linoleum|limitate|limerick|laterite|landmass|landmark|landlord|landlady|landhold|landfill|kristine|kirkland|kingston|kimberly|khartoum|keystone|kentucky|keeshond|kathrine|kathleen|jubilant|joystick|jennifer|jacobsen|irishman|interpol|internet|insulate|instinct|instable|insomnia|insolent|insolate|inactive|imperial|iloveyou|illinois|hydrogen|hutchins|homework|hologram|holocene|hibernia|hiawatha|heinlein|hebrides|headlong|headline|headland|hastings|hamilton|halftone|halfback|hagstrom|gunsling|gunpoint|gumption|gorgeous|glaucous|glaucoma|glassine|ginnegan|ghoulish|gertrude|geometry|geometer|garfield|gamesman|gamecock|fungible|function|frighten|freetown|foxglove|fourteen|foursome|forsythe|football|flaxseed|flautist|flatworm|flatware|fidelity|exposure|eternity|enthrone|enthrall|enthalpy|entendre|entangle|engineer|emulsion|emulsify|emporium|employer|employee|employed|emmanuel|elliptic|elephant|einstein|eighteen|duration|donnelly|dominion|dlmhurst|delegate|delaware|december|deadwood|deadlock|deadline|deadhead|danielle|cyanamid|cucumber|cristina|criminal|creosote|creation|cowpunch|couscous|conquest|comrades|computer|comprise|compress|colorado|clusters|citation|charming|cerulean|cenozoic|cemetery|cellular|catskill|cationic|catholic|cathodic|catheter|cascades|carriage|caroline|carolina|carefree|cardinal|burgundy|burglary|bumbling|broadway|breeches|bordello|bordeaux|bilinear|bilabial|bernardo|berliner|berkeley|bedazzle|beaumont|beatrice|beatific|bathrobe|baronial|baritone|bankrupt|banister|bakelite|azsxdcfv|asdfqwer|arkansas|appraise|apposite|anything|angerine|ancestry|ancestor|anatomic|anathema|ambiance|alphabet|albright|albrecht|alberich|albacore|alastair|alacrity|airspace|airplane|airfield|airedale|aircraft|airbrush|airborne|aerobics|adrianna|adelaide|additive|addition|addendum|accouter|academic|academia|abcdefgh|abcd1234|a1b2c3d4|7y8u9i0o|7890yuio|1234qwer|0p9o8i7u|0987poiu|!@#$%^&*".split("|"));

gDictionary.Add(9, 

"zimmerman|worldwide|wisconsin|wholesale|vitriolic|ventricle|ventilate|valentine|tidewater|testament|territory|tennessee|telephone|telepathy|teleology|telemetry|telemeter|telegraph|tarantula|tarantara|tangerine|supported|superuser|stuttgart|stratford|stephanie|solemnity|softcover|slaughter|slapstick|signature|sheffield|sarcastic|sanctuary|sagebrush|sagacious|runnymede|rochester|receptive|reception|racketeer|professor|princeton|pondering|politburo|policemen|policeman|persimmon|persevere|persecute|percolate|peninsula|penetrate|pendulous|paralytic|panoramic|panicking|panhandle|oligopoly|oligocene|oligarchy|olfactory|oldenburg|nutrition|nurturant|notorious|notoriety|minnesota|microsoft|mcpherson|mcfarland|mcdougall|mcdonnell|mcdermott|mccracken|mccormick|mcconnell|mccluskey|mcclellan|marijuana|malicious|magnitude|magnetron|magnetite|macintosh|lynchburg|louisiana|lissajous|limousine|limnology|landscape|landowner|kinshasha|kingsbury|kibbutzim|kennecott|jamestown|ironstone|invisible|invention|intuitive|intervene|intersect|inspector|insomniac|insolvent|insoluble|impetuous|imperious|imperfect|holocaust|hollywood|hollyhock|headphone|headlight|headdress|headcount|headboard|happening|hamburger|halverson|gustafson|gunpowder|glasswort|glassware|ghostlike|geometric|gaucherie|freewheel|freethink|freestone|foresight|foolproof|extension|expositor|establish|entertain|employing|emittance|ellsworth|elizabeth|eightieth|eightfold|eiderdown|dusenbury|dusenberg|donaldson|dominique|discovery|desperate|delegable|delectate|decompose|decompile|damnation|cutthroat|crabapple|cornelius|conqueror|connubial|commrades|citizenry|christine|christina|chemistry|cellulose|celluloid|catherine|carryover|burlesque|bloodshot|bloodshed|bloodroot|bloodline|bloodbath|bilingual|bilateral|bijective|bijection|bernadine|berkshire|beethoven|beatitude|bakhtiari|asymptote|asymmetry|apprehend|appraisal|apportion|ancestral|anatomist|alexander|albatross|alabaster|alabamian|adenosine|abcabcabc".split("|"));

gDictionary.Add(10, 

"washington|volkswagen|topography|tessellate|temptation|telephonic|telepathic|telemetric|telegraphy|tantamount|superstage|slanderous|salamander|qwertyuiop|polynomial|politician|phrasemake|photometry|photolytic|photolysis|photogenic|phosphorus|phosphoric|persiflage|persephone|perquisite|peninsular|penicillin|penetrable|panjandrum|oligoclase|oligarchic|oldsmobile|nottingham|noticeable|noteworthy|mcnaughton|mclaughlin|mccullough|mcallister|malconduct|maidenhair|limitation|lascivious|landowning|landlubber|landlocked|lamination|khrushchev|juggernaut|irrational|invariable|insouciant|insolvable|incomplete|impervious|impersonal|headmaster|glaswegian|geopolitic|geophysics|fourteenth|foursquare|expressive|expression|expository|exposition|enterprise|eightyfold|eighteenth|effaceable|donnybrook|delectable|decolonize|cuttlefish|cuttlebone|compromise|compressor|comprehend|cellophane|carruthers|california|burlington|burgundian|borderline|borderland|bloodstone|bloodstain|bloodhound|bijouterie|biharmonic|bernardino|beaujolais|basketball|bankruptcy|bangladesh|atmosphere|asymptotic|asymmetric|appreciate|apposition|ambassador|amateurish|alimentary|additional|accomplish|1q2w3e4r5t".split("|"));

gDictionary.Add(11, 

"yellowstone|venturesome|territorial|telekinesis|sagittarius|safekeeping|politicking|policewoman|photometric|photography|phosphorous|perseverant|persecutory|persecution|penitential|pandemonium|mississippi|marketplace|magnificent|irremovable|interrogate|institution|inspiration|incompetent|impertinent|impersonate|impermeable|headquarter|hamiltonian|halfhearted|hagiography|geophysical|expressible|emptyhanded|eigenvector|deleterious|decollimate|decolletage|connecticut|comptroller|compressive|compression|catholicism|bloodstream|bakersfield|arrangeable|appreciable|anastomotic|albuquerque".split("|"));

gDictionary.Add(12, 

"williamsburg|testamentary|qwerasdfzxcv|q1w2e3r4t5y6|perseverance|pennsylvania|penitentiary|malformation|liquefaction|interstitial|inconclusive|incomputable|incompletion|incompatible|incomparable|imperishable|impenetrable|headquarters|geometrician|ellipsometry|decomposable|decommission|compressible|burglarproof|bloodletting|bilharziasis|asynchronous|asymptomatic|ambidextrous|1q2w3e4r5t6y".split("|"));

gDictionary.Add(13, 

"ventriloquist|ventriloquism|poliomyelitis|phosphorylate|oleomargarine|massachusetts|jitterbugging|interpolatory|inconceivable|imperturbable|impermissible|decomposition|comprehensive|comprehension".split("|"));

gDictionary.Add(14, 

"slaughterhouse|irreproducible|incompressible|comprehensible|bremsstrahlung".split("|"));

gDictionary.Add(15, 

"irreconciliable|instrumentation|incomprehension".split("|"));

gDictionary.Add(16, 

"incomprehensible".split("|"));}



function ClientSideStrongPassword(){

	return (IsLongEnough(ClientSideStrongPassword.arguments[0], "8") && SpansEnoughCharacterSets(ClientSideStrongPassword.arguments[0], "3") && (!(IsCloseVariationOfAWordInDictionary(ClientSideStrongPassword.arguments[0], "0.6", ClientSideStrongPassword.arguments[1], ClientSideStrongPassword.arguments[2]))));

}



function ClientSideBestPassword(){

	return (IsLongEnough(ClientSideBestPassword.arguments[0], "14") && SpansEnoughCharacterSets(ClientSideBestPassword.arguments[0], "3") && (!(IsCloseVariationOfAWordInDictionary(ClientSideBestPassword.arguments[0], "0.6", ClientSideBestPassword.arguments[1], ClientSideBestPassword.arguments[2]))));

}



function ClientSideMediumPassword(){

	return (IsLongEnough(ClientSideMediumPassword.arguments[0], "8") && SpansEnoughCharacterSets(ClientSideMediumPassword.arguments[0], "2") && (!(FoundInDictionary(ClientSideMediumPassword.arguments[0], ClientSideMediumPassword.arguments[1], ClientSideMediumPassword.arguments[2]))));

}



function ClientSideWeakPassword(){

	return (IsLongEnough(ClientSideWeakPassword.arguments[0], "1") || (!(IsLongEnough(ClientSideWeakPassword.arguments[0], "0"))));

}



function GEId(sID){

	return document.getElementById(sID);

}



function EvalPwdStrength(oF,sP){

	if(ClientSideBestPassword(sP,gSimilarityMap,gDictionary)){

		DispPwdStrength(4,'pwdChkCon4');

	}

	else if(ClientSideStrongPassword(sP,gSimilarityMap,gDictionary)){

		DispPwdStrength(3,'pwdChkCon3');

	}

	else if(ClientSideMediumPassword(sP,gSimilarityMap,gDictionary)){

		DispPwdStrength(2,'pwdChkCon2');

	}

	else if(ClientSideWeakPassword(sP,gSimilarityMap,gDictionary)){

		DispPwdStrength(1,'pwdChkCon1');

	}

	else{

		DispPwdStrength(0,'pwdChkCon0');

	}

}



function PadPasswd(oF,lPwd){

	if(typeof oF.PwdPad=="object"){

		var sPad="djg";

		var lPad=sPad.length-lPwd;

		oF.PwdPad.value=sPad.substr(0,(lPad<0)?0:lPad);

	}

}



function DispPwdStrength(iN,sHL){ 

	if(iN>4){ iN=4;

	}

	for(var i=0;i<5;i++){ 

		var sHCR="pwdChkCon0";
		if(i<=iN){ 

			sHCR=sHL;
		}
		
		if(i>0){ 
			GEId("idPwdCheckerTD"+i).className=sHCR;
		}

		GEId("idPwdCheckerTxtLevel"+i).style.display=((i==iN)?"inline":"none");
		GEId("idPwdCheckerTxtLevel"+i).className= ((i==iN)?"pwdChLevelPassword":"pwdChNoDisplay");

	}

}
/* event Listening */
function AddListener(Elt, EventName, functionName) {
    if (Elt.addEventListener) { Elt.addEventListener(EventName, functionName, false); }
    else if (window.attachEvent) { Elt.attachEvent("on" + EventName, functionName); }
} //function addListener

/* tools from http://www.hunlock.com/blogs/Ten_Javascript_Tools_Everyone_Should_Have

//######################################################################################
/* trim */
String.prototype.trim = function() {
   return this.replace(/^\s+|\s+$/g,"");
}
String.prototype.ltrim = function() {
   return this.replace(/^\s+/g,"");
}
String.prototype.rtrim = function() {
   return this.replace(/\s+$/g,"");
}
/* usage 
var test = "   Test   ";
var test1 = test.ltrim();   // returns "Test   "
var test2 = test.rtrim();   // returns "   Test"
var test3 = test.trim();    // returns "Test"
*/
//######################################################################################
/* NumericSort */
Array.prototype.sortNum = function() {
   return this.sort( function (a,b) { return a-b; } );
}
/* usage 
var tmp = [5,9,12,18,56,1,10,42,30,7,97,53,33,35,27];
    tmp=tmp.sortNum(); // returns 1,5,7,9,10,12,18,27,30,33,35,42,53,56,97 
*/
//######################################################################################
/*Formatting Numbers*/
function formatNumber(num,prefix){
   prefix = prefix || '';
   num += '';
   var splitStr = num.split('.');
   var splitLeft = splitStr[0];
   var splitRight = splitStr.length > 1 ? '.' + splitStr[1] : '';
   var regx = /(\d+)(\d{3})/;
   while (regx.test(splitLeft)) {
      splitLeft = splitLeft.replace(regx, '$1' + ',' + '$2');
   }
   return prefix + splitLeft + splitRight;
}

function unformatNumber(num) {
   return num.replace(/([^0-9\.\-])/g,'')*1;
}
/* usage
var test1 = formatNumber('5123456789.25'); // returns 5,123,456,789.25
var test2 = formatNumber(1234.15,'$');     // returns $1,234.15
var test3 = unformatNumber('$1,234.15');   // returns 1234.15
*/
//######################################################################################
/*Search an Array*/
Array.prototype.find = function(searchStr) {
  var returnArray = false;
  for (i=0; i<this.length; i++) {
    if (typeof(searchStr) == 'function') {
      if (searchStr.test(this[i])) {
        if (!returnArray) { returnArray = [] }
        returnArray.push(i);
      }
    } else {
      if (this[i]===searchStr) {
        if (!returnArray) { returnArray = [] }
        returnArray.push(i);
      }
    }
  }
  return returnArray;
}
/* usage
var tmp = [5,9,12,18,56,1,10,42,'blue',30, 7,97,53,33,30,35,27,30,'35','Ball', 'bubble'];
//         0/1/2 /3 /4/5 /6 /7     /8  /9/10/11/12/13/14/15/16/17/  18/    19/      20
var thirty=tmp.find(30);             // Returns 9, 14, 17
var thirtyfive=tmp.find('35');       // Returns 18
var thirtyfive=tmp.find(35);         // Returns 15
var haveBlue=tmp.find('blue');       // Returns 8
var notFound=tmp.find('not there!'); // Returns false
var regexp1=tmp.find(/^b/);          // returns 8,20    (first letter starts with b)
var regexp1=tmp.find(/^b/i);         // returns 8,19,20 (same as above but ignore case)
*/

//######################################################################################
/*HTML Entities*/
String.prototype.htmlEntities = function () {
   return this.replace(/&/g,'&amp;').replace(/</g,'&lt;').replace(/>/g,'&gt;');
};
String.prototype.stripTags = function () {
   return this.replace(/<([^>]+)>/g,'');
}
/* usage
var tmp = '<html><head></head>';
var safe= tmp.htmlEntities(); // Returns &lt;html&gt;&lt;head&gt;&lt;/head&gt;
var tmp = '<a href="htpp://somespammer.com">Some Link</a>';
var safe= tmp.stripTags(); // Returns Some Link;
*/

//######################################################################################
/*Is it an object, or is it an Array?*/
//Object.prototype.isArray = function() {
//   return this.constructor == Array;
//}
/* usage
alert( [].isArray() ); // true
alert( {}.isArray() ); // false
*/

//######################################################################################
/*Cookies!*/
function cookiesAllowed() {
   setCookie('checkCookie', 'test', 1);
   if (getCookie('checkCookie')) {
      deleteCookie('checkCookie');
      return true;
   }
   return false;
}

function setCookie(name,value,expires, options) {
   if (options===undefined) { options = {}; }
   if ( expires ) {
      var expires_date = new Date();
      expires_date.setDate(expires_date.getDate() + expires)
   }
   document.cookie = name+'='+escape( value ) +
      ( ( expires ) ? ';expires='+expires_date.toGMTString() : '' ) + 
      ( ( options.path ) ? ';path=' + options.path : '' ) +
      ( ( options.domain ) ? ';domain=' + options.domain : '' ) +
      ( ( options.secure ) ? ';secure' : '' );
}

function getCookie( name ) {
   var start = document.cookie.indexOf( name + "=" );
   var len = start + name.length + 1;
   if ( ( !start ) && ( name != document.cookie.substring( 0, name.length ) ) ) {
      return null;
   }
   if ( start == -1 ) return null;
   var end = document.cookie.indexOf( ';', len );
   if ( end == -1 ) end = document.cookie.length;
   return unescape( document.cookie.substring( len, end ) );
}

function deleteCookie( name, path, domain ) {
    if ( getCookie( name ) ){ 
        document.cookie = name + '=' +
        ( ( path ) ? ';path=' + path : '') +
        ( ( domain ) ? ';domain=' + domain : '' ) +
        ';expires=Thu, 01-Jan-1970 00:00:01 GMT';
    }
}      
/* usage
// Check if cookies are allowed in this browser.
if cookiesAllowed() { 
  alert('you can set cookies');
} else {
  alert("This browser doesn't allow cookies.");
}
// Create a cookie named myCookie with a value of 'Peanut Butter'
// The cookie will expire in 10 days.
setCookie('myCookie','Peanut Butter', 10);

// Retreive the value of 'myCookie'
var userCookie = getCookie('myCookie');

// Delete 'myCookie'
deleteCookie('myCookie');  
*/

//######################################################################################
/*Function Mapping*/
Array.prototype.map = function(f) {
  var returnArray=[];
  for (i=0; i<this.length; i++) {
    returnArray.push(f(this[i]));
  }
  return returnArray;
}
/* usage
function trim(str) {
  return str.replace(/^\s+|\s+$/g,'');
}

var tmp = ['now', 'is', '   the   ', 'time    ', '    for ',  ' all', ' good ', '   men   '];
var test = tmp.map(trim);  // returns now,is,the,time,for,all,good,me
*/

//######################################################################################
/*Controling Stylesheets*/
function getCSSRule(ruleName, deleteFlag) {
   ruleName=ruleName.toLowerCase(); 
   if (document.styleSheets) {      
      for (var i=0; i<document.styleSheets.length; i++) { 
         var styleSheet=document.styleSheets[i];
         var ii=0;                              
         var cssRule=false;                      
         do {                                   
            if (styleSheet.cssRules) {          
               cssRule = styleSheet.cssRules[ii];
            } else {                             
               cssRule = styleSheet.rules[ii];    
            }                                    
            if (cssRule)  {                      
               if (cssRule.selectorText.toLowerCase()==ruleName) { 
                  if (deleteFlag=='delete') {    
                     if (styleSheet.cssRules) {  
                        styleSheet.deleteRule(ii);
                     } else {                     
                        styleSheet.removeRule(ii);
                     }                            
                     return true;                 
                  } else {                        
                     return cssRule;              
                  }                               
               }                                  
            }                                     
            ii++;                                 
         } while (cssRule)                        
      }                                           
   }                                              
   return false;                                  
}                                                  

function killCSSRule(ruleName) {     
  return getCSSRule(ruleName,'delete');  
}                                         

function addCSSRule(ruleName) {       
  if (document.styleSheets) {        
    if (!getCSSRule(ruleName)) {    
      if (document.styleSheets[0].addRule) {       
        document.styleSheets[0].addRule(ruleName, null,0);
      } else {                   
        document.styleSheets[0].insertRule(ruleName+' { }', 0);
      }        
    }           
  }              
  return getCSSRule(ruleName);   
} 
/* usage
// returns the object for the CSS class "fancyStyle"      
fancyStyleObject=getCSSRule('fancyStyle');
// applies underline to the fancyStyle class. 
fancyStyleObject.style.textDecoration='underline'

// Deletes the class "fancyStyle" unstyling any objects that used it. 
killCSSRule('fancyStyle');

// Creates a new stylesheet rule (P for paragraphs in this instance)
newStyle=addCSSRule('p');
// Gives all paragraphs blue text.
newStyle.style.color='blue';

// creates a new CSS class called fancyStyle.
newStyle=addCSSRule('.fancyStyle');
// Gives all objects with a class of fancyStyle a green background.  
newStyle.backgroundColor='green';
*/

//######################################################################################
/*getElementsByClassName*/
//Object.prototype.getElementsByClass = function (searchClass, tag) {      
//   var returnArray = [];
//   tag = tag || '*';
//   var els = this.getElementsByTagName(tag);
//   var pattern = new RegExp('(^|\\s)'+searchClass+'(\\s|$)');
//   for (var i = 0; i < els.length; i++) {
//      if ( pattern.test(els[i].className) ) {
//         returnArray.push(els[i]);
//      }
//   }
//   return returnArray;
//}
/* usage
// returns all objects with a class name of "fancyStyle"
els=document.getElementsByClass('fancyStyle');
// returns all the objects with a class name of "fancyStyle" for paragraphs
els=document.getElementsByClass('fancyStyle','p');
*/
//Object.prototype.getElementsByClassName = function(cl) {
document.getElementsByClassName = function(cl) {  
    var retnode = [];
    var myclass = new RegExp('\\b'+cl+'\\b');
    var elem = this.getElementsByTagName('*');
    for (var i = 0; i < elem.length; i++) {
        var classes = elem[i].className;
        if (myclass.test(classes)) retnode.push(elem[i]);
    }
    return retnode;
}

function CenterElt(elt) {
    var myWidth = 0, myHeight = 0;
    if( typeof( window.innerWidth ) == 'number' ) {
        //Non-IE
        myWidth = window.innerWidth;
        myHeight = window.innerHeight;
        } else if( document.documentElement && ( document.documentElement.clientWidth || document.documentElement.clientHeight ) ) {
        //IE 6+ in 'standards compliant mode'
        myWidth = document.documentElement.clientWidth;
        myHeight = document.documentElement.clientHeight;
        } else if( document.body && ( document.body.clientWidth || document.body.clientHeight ) ) {
        //IE 4 compatible
        myWidth = document.body.clientWidth;
        myHeight = document.body.clientHeight;
    }
    var elementWidth= elt.offsetWidth;
	var elementHeight= elt.offsetHeight;
    
	var posX= Math.max(0, myWidth  - (myWidth/2) - (elementWidth/2));
	var posY= Math.max(0, myHeight - (myHeight/2) - (elementHeight/2));
	elt.style.left=posX+"px";
    elt.style.top=posY+"px";
}
function Carousel(IsSliding, GlvClientId, GlvId, PagerOptions, SlidingOptions){
    this.isSliding = IsSliding;
    
    this.glvClientId = GlvClientId;
    this.glvId = GlvId;
    
    this.currentSlideNumber = PagerOptions.startPage;
    
    //this.totalItems = PagerOptions.totalItem;
    
    if(this.isSliding){
        //var pagingOptions = {"startPage" : 1, "nbPages":2, "nb" : [1, 6], "pagerInfo": ["Showing  ", "  of  ", "  items"]};
        this.totalItems = 0;
        this.nbPages = PagerOptions.nbPages;
        for(var i = 0 ; i < PagerOptions.nb.length; i++) {this.totalItems += PagerOptions.nb[i];}
        this.nbItemOnPages = PagerOptions.nb;
    }
    else{
        //var pagingOptions = {"startPage" : 1, "nbPages" : 4, "totalItem" : 16, "maxItemPerPage" : 4, "pagerInfo": ["Showing  ", "  of  ", "  items"]};
        this.totalItems = PagerOptions.totalItem;
        this.pagerSize = PagerOptions.maxItemPerPage; 
        if(null !== document.getElementById(this.glvClientId + '_hfTotalElts')){
            this.totalItems = parseInt(document.getElementById(this.glvClientId + '_hfTotalElts').value);
            this.nbPages = Math.floor(this.totalItems / this.pagerSize) + ((this.totalItems % this.pagerSize) == 0 ? 0 : 1);
        }
               
        this.lastPagerSize = this.totalItems - ((this.nbPages-1) * this.pagerSize);
    }
        
    /* Elements of carousel */
    this.leftArrow = null;
    this.rightArrow = null;
    this.pageNavigation = [];
    this.slides = [];
    this.pagingInfo = null;
    
    this.showPagerInfo = false;
    if('' != PagerOptions.pagerInfo[0]){
        this.pagingInfoPart1 = PagerOptions.pagerInfo[0];
        this.pagingInfoPart2 = PagerOptions.pagerInfo[1];
        this.pagingInfoPart3 = PagerOptions.pagerInfo[2];
        
        this.showPagerInfo = true;
    }
    
    if(this.isSliding ){this.currentNavButtonBaseId = 'PageNavigationSubhead' + this.glvId ;}
    else {this.currentNavButtonBaseId = this.glvClientId + '_PageNavigation' + this.glvId ;}
    
    if( this.isSliding){
        //var SlidingOptions = {"WrapperId" : "Carousel_glv0", "WrapperWidth" : 720, "AnimationDuration" : 200, "FramePerSeconds" : 50};
        
        this.wrapper = document.getElementById(SlidingOptions.WrapperId );
        this.wrapperWidth = SlidingOptions.WrapperWidth;
        this.animationDuration = SlidingOptions.AnimationDuration;
        this.framePerSeconds = SlidingOptions.FramePerSeconds;
        this.framePerMilliseconds = this.framePerSeconds / 1000;
        this.delayBetweenFrames = (1/this.framePerMilliseconds);
        this.nbFrame = this.animationDuration / this.delayBetweenFrames ;
        this.loopSlideScale = this.wrapperWidth / this.nbFrame;
    }
    
    this.manageArrow = function(){
        if(this.currentSlideNumber == this.nbPages ) { this.rightArrow.style.visibility='hidden'; }
        else {this.rightArrow.style.visibility='visible'; }
        
        if(this.currentSlideNumber == 1)  { this.leftArrow.style.visibility='hidden';}
        else { this.leftArrow.style.visibility='visible'; }  
    };
    
    this.getPagingInfo = function(){
        var beginnavigation, endnavigation;
        if(this.isSliding){
            beginnavigation = 0;
            for(var i = 0; i < this.currentSlideNumber - 1; i++) {beginnavigation += this.nbItemOnPages[i];}
            beginnavigation += 1;
            endnavigation = beginnavigation + this.nbItemOnPages[this.currentSlideNumber - 1] - 1;
        }
        else{
            //alert('currentSlide ' +  this.currentSlideNumber);
            beginnavigation = (( this.currentSlideNumber - 1) * this.pagerSize ) + 1;  
            endnavigation = this.currentSlideNumber  * this.pagerSize ; 
            if(endnavigation > this.totalItems) {
                endnavigation = this.totalItems;    
            }
        }
        return this.pagingInfoPart1 + beginnavigation + '-' + endnavigation + this.pagingInfoPart2 + this.totalItems + this.pagingInfoPart3; 
    };
    
    this.managePagingInfo = function(){
        if(this.showPagerInfo){
            var lbl = this.getPagingInfo();
            if(this.isSliding){
                this.pagingInfo[0].innerHTML = lbl;
                this.pagingInfo[1].innerHTML = lbl;
            }
            else{
                this.pagingInfo.innerHTML = lbl;
            }
        }
    };
    
    this.showSlideStatic = function(idToShow){
        for(var i = 1; i <=  this.nbPages; i++){
            if(this.pageNavigation[i - 1]) this.pageNavigation[i - 1].className = 'PageNavigation';
            if(this.slides[i - 1]) this.slides[i - 1].style.display='none';
        }
        if(this.pageNavigation[idToShow - 1]) this.pageNavigation[idToShow - 1].className = 'CurrentPage';
        if(this.pageNavigation[idToShow - 1]) this.slides[idToShow - 1].style.display='block';
        this.currentSlideNumber = idToShow;
        this.manageArrow();
        this.managePagingInfo();
    };
    
    this.showNextSlideStatic = function(){
        var nextId = parseInt(this.currentSlideNumber) + 1;
        this.showSlideStatic(nextId);
    };
    
    this.showPreviousSlideStatic = function(){
        this.showSlideStatic(this.currentSlideNumber - 1);
    };
    
    this.slideElement = function(slideToNext, elt, leftLoop){
        if(elt !== null){
            var carousel  = this;
            var newLeft = parseInt(elt.style.left.replace('px', ''), 10);
            if(slideToNext){newLeft = newLeft - this.loopSlideScale; }
            else {newLeft = newLeft + this.loopSlideScale;}
            var mySLeftValue = newLeft.toString() + 'px';
            elt.style.left = mySLeftValue; 
            if( leftLoop > 1) {
                var tmpLoop = leftLoop -1;
                var slideDel = function(){
                    carousel.slideElement(slideToNext, elt, tmpLoop);
                };
                window.setTimeout( slideDel, this.delayBetweenFrames);
            }
        }
    };//function slideElt()
    
    this.showSlideSliding = function(idToShow){
        
        if(this.currentSlideNumber != idToShow ){
            if(this.currentSlideNumber > idToShow){ //go to previous
                while( this.currentSlideNumber > idToShow ){
                    this.showPreviousSlideSliding();
                }
            }
            else{//go to next
                while( this.currentSlideNumber < idToShow ){
                    this.showNextSlideSliding();
                }
            }
        }
        
        for(var i = 0; i < this.nbPages; i++){
            this.pageNavigation[i].className = 'PageNavigation';
        }
        this.pageNavigation[idToShow - 1].className = 'CurrentPage';
        this.currentSlideNumber = idToShow;
        this.manageArrow();
        this.managePagingInfo();
    };
    
    this.showNextSlideSliding = function(){
        this.slideElement(true, this.wrapper, this.nbFrame);
        this.currentSlideNumber++;
        for(var i = 0; i < this.nbPages; i++){
            this.pageNavigation[i].className = 'PageNavigation';
        }
        this.pageNavigation[this.currentSlideNumber - 1].className = 'CurrentPage';
        this.manageArrow();
        this.managePagingInfo();
    };
    
    this.showPreviousSlideSliding = function(){
        this.slideElement(false, this.wrapper, this.nbFrame);
        this.currentSlideNumber--;
        for(var i = 0; i < this.nbPages; i++){
            this.pageNavigation[i].className = 'PageNavigation';
        }
        this.pageNavigation[this.currentSlideNumber - 1].className = 'CurrentPage';
        this.manageArrow();
        this.managePagingInfo();
    };
    
    this.addListener = function(Elt, EventName, functionName) {
     try{
        if (Elt.addEventListener) { Elt.addEventListener(EventName, functionName, false); }
        else if (window.attachEvent) {   Elt.attachEvent("on" + EventName, functionName); } 
     }
     catch(error){
        
     }

    }; //function addListener  
    
    this.addListenerToNav = function(Elt, carousel){        
       var navButtonId = Elt.id.replace(carousel.currentNavButtonBaseId, "");
       var showSlideDel = function(currentId){
            if(carousel.isSliding) {carousel.showSlideSliding(navButtonId);}
            else {carousel.showSlideStatic(navButtonId);}
            return false;
       };
       carousel.addListener(Elt, 'click', showSlideDel );    
    };
    
    this.init = function(){
        var me = this;
        var previousClickDel = function(){
            if(me.isSliding){me.showPreviousSlideSliding(); } 
            else{ me.showPreviousSlideStatic(); } 
            return false;
        };
    
        var nextClickDel = function(){
            if(me.isSliding){  me.showNextSlideSliding();} 
            else{ me.showNextSlideStatic(); } 
            return false;
        }; 
        this.leftArrow = document.getElementById(this.glvClientId + '_ileftArrowFeaturedItems' + this.glvId );
        this.addListener(this.leftArrow, 'click', previousClickDel);
        this.rightArrow = document.getElementById(this.glvClientId + '_irightArrowFeaturedItems' + this.glvId );
        this.addListener(this.rightArrow, 'click', nextClickDel);                
        
        for(var i = 1; i <=  this.nbPages; i++){
            var curId = this.currentNavButtonBaseId + i.toString();
            var currentNavButton = document.getElementById(curId); 
             
            if(currentNavButton){
                this.pageNavigation.push(currentNavButton);
                this.addListenerToNav(currentNavButton, me);
                this.slides.push(document.getElementById(this.glvClientId + '_slide' + this.glvId  + i.toString()));
            }
        }
        this.manageArrow();
       
        if(this.isSliding){
            this.pagingInfo = [];
            this.pagingInfo.push(document.getElementById('lPagingInfoHeader' + this.glvId));
            this.pagingInfo.push(document.getElementById('lPagingInfoFooter' + this.glvId));
        }
        else{
            this.pagingInfo = document.getElementById(this.glvClientId + "_lPagingInfo");
        }
        
        this.managePagingInfo();
    };
    
    this.init();
}
function hotDealsTab(FirstTabToShow){
    this.firstTabToShow = FirstTabToShow;
    this.tabs = document.getElementsByClassName('carouselTab');
    this.pages = document.getElementsByClassName('carouselPage');
    
    this.hideAll = function(){
        for(var i = 0; i < this.tabs.length; i++){
            this.tabs[i].className = this.tabs[i].className.replace('galleryOn', 'galleryOff');
            this.pages[i].className = this.pages[i].className.replace('show', 'hide');
        }
    };
     
    this.showPage = function(indexToShow){
        this.tabs[indexToShow].className = this.tabs[indexToShow].className.replace('galleryOff', 'galleryOn');
        this.pages[indexToShow].className = this.pages[indexToShow].className.replace('hide', 'show');
    };
    
    this.addListenerOnTab = function(elt, index){
        var me = this;
        var displayDelegate = function() {me.hideAll(); me.showPage(index);};
        AddListener(elt, 'click', displayDelegate);
    };
    
    this.init = function(){
        //this.hideAll();
        //this.showPage(this.firstTabToShow);
        for(var i = 0; i < this.tabs.length; i++){
            this.addListenerOnTab(this.tabs[i], i);
        }
    };       
}

function GetControlByTabName(tagName,controlName) {
  var tabControls = document.getElementsByTagName(tagName);
  for (var i = 1; i<=tabControls.length; i++) 
  {
       if (tabControls(i).Name.tostring().indexOf(controlName) > -1)
       {
            return  tabControls(i);
       }  
  }   
   return null;
}
function OnLookup() {
    var stb = document.getElementById("ctl00_cm_zr_txtPostalCode"); 
    PageMethods.GetMessageZone(stb.value ,onSucces,OnFailed);
}
function onSucces(result) { 
   var stberror = document.getElementById("ctl00_cm_zr_lblErrorsShowZone"); 
  if (result.toString ().indexOf('ok:') > -1)
  {
      document.getElementById("ctl00_HiddenPostalCodeZone").value =result.toString().replace('ok:','')
    __doPostBack('cLeftPanel', '');
 }
  else
  {
      var resultError = result;
      if (result ='ZNF')
      {
        resultError = document.getElementById("ctl00_cm_zr_hdfZoneNotfound").value;
      }
      if (result ='ZNI')
      {  
         resultError = document.getElementById("ctl00_cm_zr_hdfZoneNotInclude").value;
      }  
 
     stberror.innerHTML =  resultError;
    /* stberror.textContent =  resultError;*/
  }
   
}
function OnFailed(result) {
     var stberror = document.getElementById("ctl00_cm_zr_lblErrorsShowZone"); 
  stberror.innerText =  result;
  stberror.textContent =  result;
} 
 
var e=false,i=null,j=true;function k(a){throw a;}var aa=encodeURIComponent,ba=window,ca=Object,m=Error,da=undefined,o=String,ea=document,fa=decodeURIComponent,p=Array;function ga(a,b){return a.toString=b}function t(a,b){return a.length=b}function ha(a,b){return a.className=b}function ia(a,b){return a.width=b}function ja(a,b){return a.currentTarget=b}function ka(a,b){return a.target=b}function la(a,b){return a.keyCode=b}function ma(a,b){return a.handleEvent=b}function na(a,b){return a.type=b}
function oa(a,b){return a.visibility=b}
var pa="appendChild",u="push",qa="toString",w="length",x="prototype",ra="test",sa="exec",ta="clearTimeout",ua="width",va="text",wa="round",xa="abort",ya="slice",za="setTimeout",y="replace",Aa="nodeType",z="split",Ba="offsetWidth",Ca="createTextNode",Da="stopPropagation",A="value",B="preventDefault",C="indexOf",Ea="message",Fa="hasOwnProperty",D="dispatchEvent",E="style",Ga="capture",F="body",H="target",Ha="screenX",Ia="screenY",I="call",Ja="getBoxObjectFor",Ka="charCode",La="createElement",J="keyCode",
Ma="forEach",Na="setAttribute",Oa="substring",Pa="handleEvent",K="type",Qa="contains",Ra="apply",Sa="navigator",Ta="name",L="parentNode",Ua="height",Va="offsetHeight",M="join",Wa="documentElement",N,Xa=Xa||{},O=this,Za=function(a,b,c){var d=a[z]("."),f=c||O,g;!(d[0]in f)&&f.execScript&&f.execScript("var "+d[0]);for(;d[w]&&(g=d.shift());)if(!d[w]&&Ya(b))f[g]=b;else f=f[g]?f[g]:(f[g]={})},$a=function(a,b){var c=a[z]("."),d=b||O,f;for(;f=c.shift();)if(d[f])d=d[f];else return i;return d},ab=function(){},
bb=function(a){var b=typeof a;if(b=="object")if(a){if(a instanceof p||!(a instanceof ca)&&ca[x][qa][I](a)=="[object Array]")return"array";if(typeof a[I]!="undefined")return"function"}else return"null";else if(b=="function"&&typeof a[I]=="undefined")return"object";return b},Ya=function(a){return typeof a!="undefined"};
var P=function(a){return bb(a)=="array"},cb=function(a){var b=bb(a);return b=="array"||b=="object"&&typeof a[w]=="number"},Q=function(a){return typeof a=="string"},db=function(a){return bb(a)=="function"},eb=function(a){var b=bb(a);return b=="object"||b=="array"||b=="function"},gb=function(a){if(a[Fa]&&a[Fa]("closure_hashCode_"))return a.closure_hashCode_;a.closure_hashCode_||(a.closure_hashCode_=++fb);return a.closure_hashCode_},fb=0,hb=function(a){var b=bb(a);if(b=="object"||b=="array"){if(a.t)return a.t[I](a);
var c=b=="array"?[]:{};for(var d in a)c[d]=hb(a[d]);return c}return a},ib=function(a,b){var c=a.Jc;if(arguments[w]>2){var d=p[x][ya][I](arguments,2);c&&d.unshift[Ra](d,c);c=d}b=a.Lc||b;a=a.Kc||a;var f,g=b||O;f=c?function(){var h=p[x][ya][I](arguments);h.unshift[Ra](h,c);return a[Ra](g,h)}:function(){return a[Ra](g,arguments)};f.Jc=c;f.Lc=b;f.Kc=a;return f},jb=Date.now||function(){return(new Date).getTime()},kb=function(a,b,c){Za(a,b,c)},R=function(a,b){function c(){}c.prototype=b[x];a.r=b[x];a.prototype=
new c};var lb=function(a,b,c){if(a[C])return a[C](b,c);if(p[C])return p[C](a,b,c);var d=c==i?0:c<0?Math.max(0,a[w]+c):c;for(;d<a[w];d++)if(d in a&&a[d]===b)return d;return-1},mb=function(a,b,c){if(a[Ma])a[Ma](b,c);else if(p[Ma])p[Ma](a,b,c);else{var d=a[w],f=Q(a)?a[z](""):a,g=0;for(;g<d;g++)g in f&&b[I](c,f[g],g,a)}},nb=function(a,b){if(a[Qa])return a[Qa](b);return lb(a,b)>-1},ob=function(a,b){var c=lb(a,b),d;if(d=c!=-1)p[x].splice[I](a,c,1)[w]==1;return d};
var pb=function(a){if(P(a))return a.concat();else{var b=[],c=0,d=a[w];for(;c<d;c++)b[c]=a[c];return b}},qb=function(a){if(P(a))return a.concat();return pb(a)},rb=function(a){var b=1;for(;b<arguments[w];b++){var c=arguments[b];if(cb(c)){c=qb(c);a[u][Ra](a,c)}else a[u](c)}},tb=function(a){return p[x].splice[Ra](a,sb(arguments,1))},sb=function(a,b,c){return arguments[w]<=2?p[x][ya][I](a,b):p[x][ya][I](a,b,c)};var ub=function(a,b,c){for(var d in a)b[I](c,a[d],d,a)},vb=function(a){var b=[],c=0;for(var d in a)b[c++]=a[d];return b},wb=function(a){var b=[],c=0;for(var d in a)b[c++]=d;return b},xb=function(a,b){var c;if(c=b in a)delete a[b];return c},yb=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"],zb=function(a){var b,c,d=1;for(;d<arguments[w];d++){c=arguments[d];for(b in c)a[b]=c[b];var f=0;for(;f<yb[w];f++){b=yb[f];if(ca[x][Fa][I](c,b))a[b]=
c[b]}}};var S=function(){};S[x].Ob=e;S[x].G=function(){if(!this.Ob){this.Ob=j;this.e()}};S[x].e=function(){};var Ab=function(a,b){S[I](this);this.ic=b;this.X=[];this.Pc(a)};R(Ab,S);N=Ab[x];N.bb=i;N.cb=i;N.Ca=function(a){this.bb=a};N.wc=function(a){this.cb=a};N.I=function(){if(this.X[w])return this.X.pop();return this.Jb()};N.da=function(a){this.X[w]<this.ic?this.X[u](a):this.Nb(a)};N.Pc=function(a){if(a>this.ic)k(m("[goog.structs.SimplePool] Initial cannot be greater than max"));var b=0;for(;b<a;b++)this.X[u](this.Jb())};N.Jb=function(){return this.bb?this.bb():{}};
N.Nb=function(a){if(this.cb)this.cb(a);else if(db(a.G))a.G();else for(var b in a)delete a[b]};N.e=function(){Ab.r.e[I](this);var a=this.X;for(;a[w];)this.Nb(a.pop());delete this.X};var Bb=function(a){return a[y](/(\r\n|\r|\n)/g,"\n")},Cb=function(a){return a[y](/^[\s\xa0]+|[\s\xa0]+$/g,"")};var Db=/^[a-zA-Z0-9\-_.!~*'()]*$/,Eb=function(a){a=o(a);if(!Db[ra](a))return aa(a);return a};
var Lb=function(a,b){if(b)return a[y](Fb,"&amp;")[y](Gb,"&lt;")[y](Hb,"&gt;")[y](Ib,"&quot;");else{if(!Kb[ra](a))return a;if(a[C]("&")!=-1)a=a[y](Fb,"&amp;");if(a[C]("<")!=-1)a=a[y](Gb,"&lt;");if(a[C](">")!=-1)a=a[y](Hb,"&gt;");if(a[C]('"')!=-1)a=a[y](Ib,"&quot;");return a}},Fb=/&/g,Gb=/</g,Hb=/>/g,Ib=/\"/g,Kb=/[&<>\"]/;
var Nb=function(a,b){var c=0,d=Cb(o(a))[z]("."),f=Cb(o(b))[z]("."),g=Math.max(d[w],f[w]),h=0;for(;c==0&&h<g;h++){var l=d[h]||"",q=f[h]||"",n=new RegExp("(\\d*)(\\D*)","g"),r=new RegExp("(\\d*)(\\D*)","g");do{var s=n[sa](l)||["","",""],v=r[sa](q)||["","",""];if(s[0][w]==0&&v[0][w]==0)break;var G=s[1][w]==0?0:parseInt(s[1],10),Jb=v[1][w]==0?0:parseInt(v[1],10);c=Mb(G,Jb)||Mb(s[2][w]==0,v[2][w]==0)||Mb(s[2],v[2])}while(c==0)}return c},Mb=function(a,b){if(a<b)return-1;else if(a>b)return 1;return 0};jb();var Ob,Pb,Qb,Rb,Sb,Tb,Ub,Vb,Wb,Xb=function(){return O[Sa]?O[Sa].userAgent:i};(function(){Tb=Sb=Rb=Qb=Pb=Ob=e;var a;if(a=Xb()){var b=O[Sa];Ob=a[C]("Opera")==0;Pb=!Ob&&a[C]("MSIE")!=-1;Rb=(Qb=!Ob&&a[C]("WebKit")!=-1)&&a[C]("Mobile")!=-1;Tb=(Sb=!Ob&&!Qb&&b.product=="Gecko")&&b.vendor=="Camino"}})();var Yb=Ob,T=Pb,U=Sb,V=Qb,Zb=(function(){var a=O[Sa];return a&&a.platform||""})();(function(){Ub=Zb[C]("Mac")!=-1;Vb=Zb[C]("Win")!=-1;Wb=Zb[C]("Linux")!=-1})();
var $b=Ub,ac=(function(){var a="",b;if(Yb&&O.opera){var c=O.opera.version;a=typeof c=="function"?c():c}else{if(U)b=/rv\:([^\);]+)(\)|;)/;else if(T)b=/MSIE\s+([^\);]+)(\)|;)/;else if(V)b=/WebKit\/(\S+)/;if(b){var d=b[sa](Xb());a=d?d[1]:""}}return a})();var bc={},cc=function(a){return bc[a]||(bc[a]=Nb(ac,a)>=0)};var dc=function(a,b){na(this,a);ka(this,b);ja(this,this[H])};R(dc,S);N=dc[x];N.e=function(){delete this[K];delete this[H];delete this.currentTarget};N.Q=e;N.ma=j;N.stopPropagation=function(){this.Q=j};N.preventDefault=function(){this.ma=e};var ec=function(a,b){a&&this.Ma(a,b)};R(ec,dc);N=ec[x];na(N,i);ka(N,i);N.relatedTarget=i;N.offsetX=0;N.offsetY=0;N.clientX=0;N.clientY=0;N.screenX=0;N.screenY=0;N.button=0;la(N,0);N.charCode=0;N.ctrlKey=e;N.altKey=e;N.shiftKey=e;N.metaKey=e;N.u=i;
N.Ma=function(a,b){na(this,a[K]);ka(this,a[H]||a.srcElement);ja(this,b);this.relatedTarget=a.relatedTarget?a.relatedTarget:this[K]=="mouseover"?a.fromElement:this[K]=="mouseout"?a.toElement:i;this.offsetX=typeof a.layerX=="number"?a.layerX:a.offsetX;this.offsetY=typeof a.layerY=="number"?a.layerY:a.offsetY;this.clientX=typeof a.clientX=="number"?a.clientX:a.pageX;this.clientY=typeof a.clientY=="number"?a.clientY:a.pageY;this.screenX=a[Ha]||0;this.screenY=a[Ia]||0;this.button=a.button;la(this,a[J]||
0);this.charCode=a[Ka]||(this[K]=="keypress"?a[J]:0);this.ctrlKey=a.ctrlKey;this.altKey=a.altKey;this.shiftKey=a.shiftKey;this.metaKey=a.metaKey;this.u=a;delete this.ma;delete this.Q};N.stopPropagation=function(){this.Q=j;if(this.u[Da])this.u[Da]();else this.u.cancelBubble=j};N.preventDefault=function(){this.ma=e;if(this.u[B])this.u[B]();else{this.u.returnValue=e;try{la(this.u,-1)}catch(a){}}};N.e=function(){ec.r.e[I](this);this.u=i};var fc=function(){},gc=0;N=fc[x];N.jb=i;N.ba=i;N.sc=i;N.src=i;na(N,i);N.capture=i;N.ua=i;N.z=0;N.la=e;N.Hb=e;N.Ma=function(a,b,c,d,f,g){if(db(a))this.jb=j;else if(a&&a[Pa]&&db(a[Pa]))this.jb=e;else k(m("Invalid listener argument"));this.ba=a;this.sc=b;this.src=c;na(this,d);this.capture=!!f;this.ua=g;this.Hb=e;this.z=++gc;this.la=e};ma(N,function(a){if(this.jb)return this.ba[I](this.ua||this.src,a);return this.ba[Pa][I](this.ba,a)});var hc={},W={},ic={},jc=new Ab(0,600);jc.Ca(function(){return{d:0,s:0}});jc.wc(function(a){a.d=0});var kc=new Ab(0,600);kc.Ca(function(){return[]});kc.wc(function(a){t(a,0);delete a.ya;delete a.qb});var lc=new Ab(0,600);lc.Ca(function(){var a=function(b){return mc[I](a.src,a.z,b)};return a});var nc=function(){return new fc},oc=new Ab(0,600);oc.Ca(nc);
var pc=function(){return new ec},qc=(function(){var a=i;if(T){a=new Ab(0,600);a.Ca(pc)}return a})(),rc={},X=function(a,b,c,d,f){if(b)if(P(b)){var g=0;for(;g<b[w];g++)X(a,b[g],c,d,f);return i}else{var h=!!d,l=W;b in l||(l[b]=jc.I());l=l[b];if(!(h in l)){l[h]=jc.I();l.d++}l=l[h];var q=gb(a),n,r;l.s++;if(l[q]){n=l[q];var g=0;for(;g<n[w];g++){r=n[g];if(r.ba==c&&r.ua==f){if(r.la)break;return n[g].z}}}else{n=l[q]=kc.I();l.d++}var s=lc.I();s.src=a;r=oc.I();r.Ma(c,s,a,b,h,f);var v=r.z;s.z=v;n[u](r);hc[v]=
r;ic[q]||(ic[q]=kc.I());ic[q][u](r);if(a.addEventListener){if(a==O||!a.Kb)a.addEventListener(b,s,h)}else a.attachEvent(sc(b),s);return v}else k(m("Invalid event type"))},tc=function(a,b,c,d,f){if(P(b)){var g=0;for(;g<b[w];g++)tc(a,b[g],c,d,f);return i}var h=!!d,l=uc(a,b,h);if(!l)return e;var g=0;for(;g<l[w];g++)if(l[g].ba==c&&l[g][Ga]==h&&l[g].ua==f)return Y(l[g].z);return e},Y=function(a){if(!hc[a])return e;var b=hc[a];if(b.la)return e;var c=b.src,d=b[K],f=b.sc,g=b[Ga];if(c.removeEventListener){if(c==
O||!c.Kb)c.removeEventListener(d,f,g)}else c.detachEvent&&c.detachEvent(sc(d),f);var h=gb(c),l=W[d][g][h];if(ic[h]){var q=ic[h];ob(q,b);q[w]==0&&delete ic[h]}b.la=j;l.qb=j;vc(d,g,h,l);delete hc[a];return j},vc=function(a,b,c,d){if(!d.ya)if(d.qb){var f=0,g=0;for(;f<d[w];f++)if(d[f].la)oc.da(d[f]);else{if(f!=g)d[g]=d[f];g++}t(d,g);d.qb=e;if(g==0){kc.da(d);delete W[a][b][c];W[a][b].d--;if(W[a][b].d==0){jc.da(W[a][b]);delete W[a][b];W[a].d--}if(W[a].d==0){jc.da(W[a]);delete W[a]}}}},wc=function(a,b,c){var d=
0,f=a==i,g=b==i,h=c==i;c=!!c;if(f)ub(ic,function(s){var v=s[w]-1;for(;v>=0;v--){var G=s[v];if((g||b==G[K])&&(h||c==G[Ga])){Y(G.z);d++}}});else{var l=gb(a);if(ic[l]){var q=ic[l],n=q[w]-1;for(;n>=0;n--){var r=q[n];if((g||b==r[K])&&(h||c==r[Ga])){Y(r.z);d++}}}}return d},uc=function(a,b,c){var d=W;if(b in d){d=d[b];if(c in d){d=d[c];var f=gb(a);if(d[f])return d[f]}}return i},xc=function(a,b,c,d,f){var g=!!d,h=uc(a,b,g);if(h){var l=0;for(;l<h[w];l++)if(h[l].ba==c&&h[l][Ga]==g&&h[l].ua==f)return h[l]}return i},
sc=function(a){if(a in rc)return rc[a];return rc[a]="on"+a},zc=function(a,b,c,d,f){var g=1,h=gb(b);if(a[h]){a.s--;var l=a[h];if(l.ya)l.ya++;else l.ya=1;try{var q=l[w],n=0;for(;n<q;n++){var r=l[n];if(r&&!r.la)g&=yc(r,f)!==e}}finally{l.ya--;vc(c,d,h,l)}}return Boolean(g)},yc=function(a,b){var c=a[Pa](b);a.Hb&&Y(a.z);return c},Ac=function(a,b){if(Q(b))b=new dc(b,a);else if(b instanceof dc)ka(b,b[H]||a);else{var c=b;b=new dc(b[K],a);zb(b,c)}var d=1,f,g=b[K],h=W;if(!(g in h))return j;h=h[g];var l=j in
h,q=e in h,n;if(l){f=[];var r=a;for(;r;r=r.rb)f[u](r);n=h[j];n.s=n.d;var s=f[w]-1;for(;!b.Q&&s>=0&&n.s;s--){ja(b,f[s]);d&=zc(n,f[s],b[K],j,b)&&b.ma!=e}}if(q){n=h[e];n.s=n.d;if(l){var s=0;for(;!b.Q&&s<f[w]&&n.s;s++){ja(b,f[s]);d&=zc(n,f[s],b[K],e,b)&&b.ma!=e}}else{var v=a;for(;!b.Q&&v&&n.s;v=v.rb){ja(b,v);d&=zc(n,v,b[K],e,b)&&b.ma!=e}}}return Boolean(d)},mc=function(a,b){if(!hc[a])return j;var c=hc[a],d=c[K],f=W;if(!(d in f))return j;f=f[d];var g,h;if(T){var l=b||$a("window.event"),q=j in f,n=e in
f;if(q){if(l[J]<0||l.returnValue!=da)return j;Bc(l)}var r=qc.I();r.Ma(l,this);g=j;try{if(q){var s=kc.I(),v=r.currentTarget;for(;v;v=v[L])s[u](v);h=f[j];h.s=h.d;var G=s[w]-1;for(;!r.Q&&G>=0&&h.s;G--){ja(r,s[G]);g&=zc(h,s[G],d,j,r)}if(n){h=f[e];h.s=h.d;var G=0;for(;!r.Q&&G<s[w]&&h.s;G++){ja(r,s[G]);g&=zc(h,s[G],d,e,r)}}}else g=yc(c,r)}finally{if(s){t(s,0);kc.da(s)}r.G();qc.da(r)}return g}var Jb=new ec(b,this);try{g=yc(c,Jb)}finally{Jb.G()}return g},Bc=function(a){var b=e;if(a[J]==0)try{la(a,-1);return}catch(c){b=
j}if(b||a.returnValue==da)a.returnValue=j};var Z=function(){};R(Z,S);N=Z[x];N.Kb=j;N.rb=i;N.addEventListener=function(a,b,c,d){X(this,a,b,c,d)};N.removeEventListener=function(a,b,c,d){tc(this,a,b,c,d)};N.dispatchEvent=function(a){return Ac(this,a)};N.e=function(){Z.r.e[I](this);wc(this);this.rb=i};var Cc=function(a,b,c){Z[I](this);this.pb=a;this.vc=c;this.R=b;X(b,["hilite","select","canceldismiss","dismiss"],this);this.C=i;this.j=[];this.q=-1;this.v=0;this.W=this.k=i};R(Cc,Z);N=Cc[x];N.od=10;N.Ic=j;N.Ec=e;ma(N,function(a){if(a[H]==this.R)switch(a[K]){case "hilite":this.N(a.Sa);break;case "select":this.Ba();break;case "canceldismiss":this.ab();break;case "dismiss":this.Lb();break}});N.Vd=function(a,b){if(!(this.C==a)){this.C=a;this.pb.Kd(this.C,this.od,ib(this.nd,this),b);this.ab()}};
N.Ud=function(a){this.k=a};N.Zb=function(){if(this.q>=this.v&&this.q<this.v+this.j[w]-1){this.N(this.q+1);return j}else if(this.q==-1){this.N(this.v);return j}return e};N.$b=function(){if(this.q>this.v){this.N(this.q-1);return j}else this.Ec&&this.q==this.v&&this.N(-1);return e};N.N=function(a){this.q=a;this.R.N(a);return this.gb(a)!=-1};
N.Ba=function(){var a=this.gb(this.q);if(a!=-1){var b=this.j[a];this.vc.Md(b);this.V();this[D]({type:"update",Sa:b});return j}else{this.V();this[D]({type:"update",Sa:i});return e}};N.V=function(){this.q=-1;this.C=i;this.v+=this.j[w];this.j=[];ba[ta](this.W);this.W=i;this.R.V()};N.Lb=function(){if(!this.W)this.W=ba[za](ib(this.V,this),100)};N.ab=function(){ba[za](ib(function(){if(this.W){ba[ta](this.W);this.W=i}},this),10)};N.e=function(){Cc.r.e[I](this);this.R.G();this.vc.G();this.pb=i};
N.nd=function(a,b,c){if(!(this.C!=a)){var d=c?this.gb(this.q):i;this.v+=this.j[w];this.j=b;var f=[],g=0;for(;g<b[w];++g)f[u]({id:this.Qb(g),data:b[g]});this.R.Id(f,this.C,this.k);if(this.Ic&&f[w]!=0)this.N(d!=i?this.Qb(d):this.v);else this.q=-1}};N.gb=function(a){var b=a-this.v;if(b<0||b>=this.j[w])return-1;return b};N.Qb=function(a){return this.v+a};var Dc,Ec,Fc=function(a,b){if(U||Ec){a[Na]("role",b);a.le=b}},Gc=function(a,b,c){if(U||Ec)a[Na]("aria-"+b,c)},Hc=function(a,b){Gc(a,"activedescendant",b?b.id:"")};var Kc=function(a,b){if(Ic(a))a.selectionStart=b;else if(T){var c=Jc(a),d=c[0];if(d.inRange(c[1])){if(a[K]=="textarea"){var f=a[A][Oa](0,b);b=Bb(f)[w]}d.collapse(j);d.move("character",b);d.select()}}};
var Lc=function(a,b,c){var d=b.duplicate(),f=a[va],g=f,h=d[va],l=h,q=e;for(;!q;)if(a.compareEndPoints("StartToEnd",a)==0)q=j;else{a.moveEnd("character",-1);if(a[va]==f)g+="\r\n";else q=j}if(c)return[g[w],-1];var n=e;for(;!n;)if(d.compareEndPoints("StartToEnd",d)==0)n=j;else{d.moveEnd("character",-1);if(d[va]==h)l+="\r\n";else n=j}return[g[w],g[w]+l[w]]},Mc=function(a,b){var c=0,d=0;if(Ic(a)){c=a.selectionStart;d=b?-1:a.selectionEnd}else if(T){var f=Jc(a),g=f[0],h=f[1];if(g.inRange(h)){g.setEndPoint("EndToStart",
h);if(a[K]=="textarea")return Lc(g,h,b);c=g[va][w];d=b?-1:g[va][w]+h[va][w]}}return[c,d]},Nc=function(a,b){if(Ic(a))a.selectionEnd=b;else if(T){var c=Jc(a),d=c[1];if(c[0].inRange(d)){var f=Mc(a,j)[0];if(a[K]=="textarea"){var g=a[A][Oa](0,b);b=Bb(g)[w];var h=a[A][Oa](0,f);f=Bb(h)[w]}d.collapse(j);d.moveEnd("character",b-f);d.select()}}},Jc=function(a){var b=a.ownerDocument||a.document,c=b.selection.createRange(),d;if(a[K]=="textarea"){d=b[F].createTextRange();d.moveToElementText(a)}else d=a.createTextRange();
return[d,c]},Ic=function(a){try{return typeof a.selectionStart=="number"}catch(b){return e}};var Oc=function(a){this.Xb=a};R(Oc,S);var Pc=new Ab(0,100);N=Oc[x];N.J=function(a,b,c,d,f){if(P(b)){var g=0;for(;g<b[w];g++)this.J(a,b[g],c,d,f)}else this.Ad(X(a,b,c||this,d||e,f||this.Xb||this));return this};N.Ad=function(a){if(this.b)this.b[a]=j;else if(this.O){this.b=Pc.I();this.b[this.O]=j;this.O=i;this.b[a]=j}else this.O=a};
N.pa=function(a,b,c,d,f){if(this.O||this.b)if(P(b)){var g=0;for(;g<b[w];g++)this.pa(a,b[g],c,d,f)}else{var h=xc(a,b,c||this,d||e,f||this.Xb||this);if(h){var l=h.z;Y(l);if(this.b)xb(this.b,l);else if(this.O==l)this.O=i}}return this};N.uc=function(){if(this.b){for(var a in this.b){Y(a);delete this.b[a]}Pc.da(this.b);this.b=i}else this.O&&Y(this.O)};N.e=function(){Oc.r.e[I](this);this.uc()};ma(N,function(){k(m("EventHandler.handleEvent not implemented"))});var Qc=function(a,b,c){if(!T&&!(V&&cc("525")))return j;if(T&&!c&&(b==17||b==18))return e;if(a>=48&&a<=57)return j;if(a>=96&&a<=106)return j;if(a>=65&&a<=90)return j;if(a==27&&V)return e;switch(a){case 13:case 27:case 32:case 63:case 107:case 109:case 110:case 111:case 186:case 189:case 187:case 188:case 190:case 191:case 192:case 222:case 219:case 220:case 221:return j;default:return e}},Rc=function(a){if(a>=48&&a<=57)return j;if(a>=96&&a<=106)return j;if(a>=65&&a<=90)return j;switch(a){case 32:case 63:case 107:case 109:case 110:case 111:case 186:case 189:case 187:case 188:case 190:case 191:case 192:case 222:case 219:case 220:case 221:return j;
default:return e}};var Sc=function(a){Z[I](this);a&&this.Gb(a)};R(Sc,Z);N=Sc[x];N.c=i;N.Qa=i;N.mb=i;N.Ra=i;N.xa=-1;N.ia=-1;N.ec=0;N.fd=j;
var Tc={"3":13,"12":144,"63232":38,"63233":40,"63234":37,"63235":39,"63236":112,"63237":113,"63238":114,"63239":115,"63240":116,"63241":117,"63242":118,"63243":119,"63244":120,"63245":121,"63246":122,"63247":123,"63248":44,"63272":46,"63273":36,"63275":35,"63276":33,"63277":34,"63289":144,"63302":45},Uc={Up:38,Down:40,Left:37,Right:39,Enter:13,F1:112,F2:113,F3:114,F4:115,F5:116,F6:117,F7:118,F8:119,F9:120,F10:121,F11:122,F12:123,"U+007F":46,Home:36,End:35,PageUp:33,PageDown:34,Insert:45},Vc={61:187,
59:186},Wc=T||V&&cc("525");N=Sc[x];N.$c=function(a){if(Wc&&!Qc(a[J],this.xa,a.shiftKey))this[Pa](a);else this.ia=U&&a[J]in Vc?Vc[a[J]]:a[J]};N.bd=function(){this.ia=this.xa=-1};
ma(N,function(a){var b=a.u,c,d;if(T&&a[K]=="keypress"){c=this.ia;d=c!=13&&c!=27?b[J]:0}else if(V&&a[K]=="keypress"){c=this.ia;d=b[Ka]>=0&&b[Ka]<63232&&Rc(c)?b[Ka]:0}else if(Yb){c=this.ia;d=Rc(c)?b[J]:0}else{c=b[J]||this.ia;d=b[Ka]||0;if($b&&d==63&&!c)c=191}var f=c,g=b.keyIdentifier;if(c)if(c>=63232&&c in Tc)f=Tc[c];else{if(c==25&&a.shiftKey)f=9}else if(g&&g in Uc)f=Uc[g];var h=f==this.xa;this.xa=f;if(V&&this.fd){if(h&&b.timeStamp-this.ec<50)return;this.ec=b.timeStamp}var l=new Xc(f,d,h,b);try{this[D](l)}finally{l.G()}});
N.Gb=function(a){this.Ra&&this.detach();this.c=a;this.Qa=X(this.c,"keypress",this);this.mb=X(this.c,"keydown",this.$c,e,this);this.Ra=X(this.c,"keyup",this.bd,e,this)};N.detach=function(){if(this.Qa){Y(this.Qa);Y(this.mb);Y(this.Ra);this.Ra=this.mb=this.Qa=i}this.c=i;this.xa=-1};N.e=function(){Sc.r.e[I](this);this.detach()};var Xc=function(a,b,c,d){ec[I](this,d);na(this,"key");la(this,a);this.charCode=b;this.repeat=c};R(Xc,ec);var Zc=function(a,b){Z[I](this);this.Na=a||1;this.Da=b||Yc;this.$a=ib(this.Yd,this);this.ob=jb()};R(Zc,Z);Zc[x].enabled=e;var Yc=O.window;N=Zc[x];N.n=i;N.Yd=function(){if(this.enabled){var a=jb()-this.ob;if(a>0&&a<this.Na*0.8)this.n=this.Da[za](this.$a,this.Na-a);else{this.Rc();if(this.enabled){this.n=this.Da[za](this.$a,this.Na);this.ob=jb()}}}};N.Rc=function(){this[D]("tick")};N.start=function(){this.enabled=j;if(!this.n){this.n=this.Da[za](this.$a,this.Na);this.ob=jb()}};
N.stop=function(){this.enabled=e;if(this.n){this.Da[ta](this.n);this.n=i}};N.e=function(){Zc.r.e[I](this);this.stop();delete this.Da};var $c=function(a,b,c,d){S[I](this);this.Td(Ya(a)&&!(a===i)?a:",;");this.hc=b||"";this.yd=this.ca=c!=i?c:j;this.n=new Zc(d||150);this.m=new Oc(this);this.Fa=new Oc(this);this.Pa=new Sc;this.cc=-1};R($c,S);N=$c[x];N.ge=j;N.Uc=j;N.Ac=e;N.Od=j;N.g=i;N.nb="";N.D=e;N.tb=e;N.be=j;N.Fc=function(a){this.f=a};N.Gc=function(a){Gc(a,"haspopup",j);this.m.J(a,"focus",this.jc);this.m.J(a,"blur",this.ud);this.g||this.Fa.J(a,"keydown",this.vd)};N.Hc=function(){var a=0;for(;a<arguments[w];a++)this.Gc(arguments[a])};
N.Md=function(a,b){var c=this.f.k;if(Ya(b)?b:this.ca){var d=Mc(c,j)[0],f=this.Sb(c[A],d),g=this.Cb(c[A]),h=a[qa]();this.Nd[ra](h)||(h=h[y](/[\s\xa0]+$/,"")+this.Qc);if(this.ge){if(f!=0&&!/^[\s\xa0]*$/[ra](g[f-1]))h=" "+h;if(f<g[w]&&!/^[\s\xa0]*$/[ra](g[f+1]))h=h+" "}if(h!=g[f]){g[f]=h;c.value=g[M]("");var l=0,q=0;for(;q<=f;q++)l+=g[q][w];c.focus();Kc(c,l);Nc(c,l)}}else c.value=a[qa]();this.tb=j};N.e=function(){$c.r.e[I](this);this.m.G();delete this.m;this.Fa.G();this.Fa=i};
N.Td=function(a){this.na=a;this.Qc=this.na[Oa](0,1);var b=this.ca?"[\\s"+this.na+"]+":"[\\s]+";this.zc=new RegExp("^"+b+"|"+b+"$","g");this.Nd=new RegExp("\\s*["+this.na+"]$")};
N.ad=function(a){switch(a[J]){case 40:if(this.f.R.T){this.rd();a[B]();return j}else if(!this.ca){this.qa(j);a[B]();return j}break;case 38:if(this.f.R.T){this.sd();a[B]();return j}break;case 9:this.qa();if(this.f.Ba()&&this.yd){a[B]();return j}break;case 13:this.qa();if(this.f.Ba()){a[B]();return j}break;case 27:if(this.f.R.T){this.f.V();return j}break;case 229:if(!this.D){this.Xd();return j}break;default:if(!this.be){this.n.stop();this.n.start()}}if(this.Od&&this.ca&&a[Ka]&&this.na[C](o.fromCharCode(a[Ka]))!=
-1){this.qa();if(this.f.Ba()){a[B]();return j}}return e};N.Dc=function(){this.Pa.Gb(this.g);this.m.J(this.Pa,"key",this.nc);T&&this.m.J(this.g,"keypress",this.kc)};N.Dd=function(){this.m.pa(this.Pa,"key",this.nc);this.Pa.detach();T&&this.m.pa(this.g,"keypress",this.kc);this.D&&this.Db()};N.jc=function(a){this.Fa.uc();this.f&&this.f.ab();if(a[H]!=this.g){this.g=a[H]||i;this.n.start();this.m.J(this.n,"tick",this.qc);this.nb=this.g[A];this.Dc()}};
N.ud=function(){if(this.g){this.Dd();this.g=i;this.n.stop();this.m.pa(this.n,"tick",this.qc);this.f&&this.f.Lb()}};N.qc=function(){this.D||this.qa()};N.vd=function(a){this.jc(a)};N.nc=function(a){this.cc=a[J];this.f&&!this.D&&this.ad(a)};N.lc=function(){this.D&&this.cc!=229&&this.Db()};N.mc=function(a){if(this.D&&(a[J]==13||a[J]==77&&a.ctrlKey))this.Db()};N.Xd=function(){if(!this.D){this.m.J(this.g,"keyup",this.mc);this.m.J(this.g,"keypress",this.lc);this.D=j}};
N.Db=function(){if(!!this.D){this.D=e;this.m.pa(this.g,"keypress",this.lc);this.m.pa(this.g,"keyup",this.mc)}};N.kc=function(a){if(this.ca&&this.na[C](o.fromCharCode(a[Ka]))!=-1){this.qa();this.f.Ba()&&a[B]()}};N.qa=function(a){if(a||this.g&&this.g[A]!=this.nb){if(!this.tb){var b=this.xd();if(this.f){this.f.Ud(this.g);this.f.Vd(b,this.g[A])}}this.nb=this.g[A]}this.tb=e};N.sd=function(){return this.Ac?this.f.Zb():this.f.$b()};N.rd=function(){return this.Ac?this.f.$b():this.f.Zb()};
N.xd=function(){var a=Mc(this.g,j)[0],b=this.g[A];return this.$d(this.Cb(b)[this.Sb(b,a)])};N.$d=function(a){return this.zc?o(a)[y](this.zc,""):a};N.Sb=function(a,b){var c=this.Cb(a);if(b==a[w])return c[w]-1;var d=0,f=0,g=0;for(;f<c[w]&&g<b;f++){g+=c[f][w];d=f}return d};
N.Cb=function(a){if(!this.ca)return[a];var b=o(a)[z](""),c=[],d=[],f=0,g=e;for(;f<b[w];f++)if(this.hc&&this.hc[C](b[f])!=-1){if(this.Uc&&!g){c[u](d[M](""));t(d,0)}d[u](b[f]);g=!g}else if(!g&&this.na[C](b[f])!=-1){d[u](b[f]);c[u](d[M](""));t(d,0)}else d[u](b[f]);c[u](d[M](""));return c};/\uffff/[ra]("\uffff");if("StopIteration"in O)var ad=O.StopIteration;else ad=m("StopIteration");var bd=function(){};bd[x].next=function(){k(ad)};bd[x].Za=function(){return this};
var cd=function(a){if(a instanceof bd)return a;if(typeof a.Za=="function")return a.Za(e);if(cb(a)){var b=0,c=new bd;c.next=function(){for(;j;){if(b>=a[w])k(ad);if(b in a)return a[b++];else b++}};return c}k(m("Not implemented"))},dd=function(a,b,c){if(cb(a))try{mb(a,b,c)}catch(d){if(d!==ad)k(d)}else{a=cd(a);try{for(;j;)b[I](c,a.next(),da,a)}catch(f){if(f!==ad)k(f)}}};var ed=function(a){if(typeof a.$=="function")return a.$();if(Q(a))return a[z]("");if(cb(a)){var b=[],c=a[w],d=0;for(;d<c;d++)b[u](a[d]);return b}return vb(a)},fd=function(a){if(typeof a.ha=="function")return a.ha();if(typeof a.$=="function")return da;if(cb(a)||Q(a)){var b=[],c=a[w],d=0;for(;d<c;d++)b[u](d);return b}return wb(a)},gd=function(a,b,c){if(typeof a[Ma]=="function")a[Ma](b,c);else if(cb(a)||Q(a))mb(a,b,c);else{var d=fd(a),f=ed(a),g=f[w],h=0;for(;h<g;h++)b[I](c,f[h],d&&d[h],a)}};var hd=function(a){this.A={};this.b=[];var b=arguments[w];if(b>1){if(b%2)k(m("Uneven number of arguments"));var c=0;for(;c<b;c+=2)this.K(arguments[c],arguments[c+1])}else a&&this.Bc(a)};N=hd[x];N.d=0;N.Wa=0;N.$=function(){this.Ia();var a=[],b=0;for(;b<this.b[w];b++)a[u](this.A[this.b[b]]);return a};N.ha=function(){this.Ia();return this.b.concat()};N.L=function(a){return id(this.A,a)};N.remove=function(a){if(id(this.A,a)){delete this.A[a];this.d--;this.Wa++;this.b[w]>2*this.d&&this.Ia();return j}return e};
N.Ia=function(){if(this.d!=this.b[w]){var a=0,b=0;for(;a<this.b[w];){var c=this.b[a];if(id(this.A,c))this.b[b++]=c;a++}t(this.b,b)}if(this.d!=this.b[w]){var d={},a=0,b=0;for(;a<this.b[w];){var c=this.b[a];if(!id(d,c)){this.b[b++]=c;d[c]=1}a++}t(this.b,b)}};N.Y=function(a,b){if(id(this.A,a))return this.A[a];return b};N.K=function(a,b){if(!id(this.A,a)){this.d++;this.b[u](a);this.Wa++}this.A[a]=b};
N.Bc=function(a){var b,c;if(a instanceof hd){b=a.ha();c=a.$()}else{b=wb(a);c=vb(a)}var d=0;for(;d<b[w];d++)this.K(b[d],c[d])};N.t=function(){return new hd(this)};N.Za=function(a){this.Ia();var b=0,c=this.b,d=this.A,f=this.Wa,g=this,h=new bd;h.next=function(){for(;j;){if(f!=g.Wa)k(m("The map has changed since the iterator was created"));if(b>=c[w])k(ad);var l=c[b++];return a?l:d[l]}};return h};var id=function(a,b){return ca[x][Fa][I](a,b)};var ld=function(a,b){try{var c=jd(a);return"Message: "+Lb(c[Ea])+'\nUrl: <a href="view-source:'+c.eb+'" target="_new">'+c.eb+"</a>\nLine: "+c.lineNumber+"\n\nBrowser stack:\n"+Lb(c.stack+"-> ")+"[end]\n\nJS stack traversal:\n"+Lb(kd(b)+"-> ")}catch(d){return"Exception trying to expose exception! You win, we lose. "+d}},jd=function(a){var b=$a("window.location.href");return typeof a=="string"?{message:a,name:"Unknown error",lineNumber:"Not available",fileName:b,stack:"Not available"}:!a.lineNumber||
!a.eb||!a.stack?{message:a[Ea],name:a[Ta],lineNumber:a.lineNumber||a.ie||"Not available",fileName:a.eb||a.filename||a.sourceURL||b,stack:a.stack||"Not available"}:a},kd=function(a){return md(a||arguments.callee.caller,[])},md=function(a,b){var c=[];if(nb(b,a))c[u]("[...circular reference...]");else if(a&&b[w]<50){c[u](nd(a)+"(");var d=a.arguments,f=0;for(;f<d[w];f++){f>0&&c[u](", ");var g,h=d[f];switch(typeof h){case "object":g=h?"object":"null";break;case "string":g=h;break;case "number":g=o(h);
break;case "boolean":g=h?"true":"false";break;case "function":g=(g=nd(h))?g:"[fn]";break;case "undefined":default:g=typeof h;break}if(g[w]>40)g=g.substr(0,40)+"...";c[u](g)}b[u](a);c[u](")\n");try{c[u](md(a.caller,b))}catch(l){c[u]("[exception trying to get caller]\n")}}else a?c[u]("[...long stack...]"):c[u]("[end]");return c[M]("")},nd=function(a){var b=o(a);if(!od[b]){var c=/function ([^\(]+)/[sa](b);od[b]=c?c[1]:"[Anonymous]"}return od[b]},od={};var qd=function(a,b,c,d,f){this.me=typeof f=="number"?f:pd++;this.ne=d||jb();this.ja=a;this.ke=b;this.je=c};qd[x].Tc=i;qd[x].Sc=i;var pd=0;qd[x].Pd=function(a){this.Tc=a};qd[x].Qd=function(a){this.Sc=a};qd[x].xc=function(a){this.ja=a};var rd=function(a){this.td=a;this.P=i;this.Nc={};this.Yb=[]};rd[x].ja=i;var $=function(a,b){this.name=a;this.value=b};ga($[x],function(){return this[Ta]});new $("OFF",Infinity);new $("SHOUT",1200);new $("SEVERE",1000);var sd=new $("WARNING",900);new $("INFO",800);var td=new $("CONFIG",700),ud=new $("FINE",500);new $("FINER",400);var vd=new $("FINEST",300);new $("ALL",0);N=rd[x];N.xc=function(a){this.ja=a};N.kb=function(a){if(this.ja)return a[A]>=this.ja[A];if(this.P)return this.P.kb(a);return e};
N.log=function(a,b,c){this.kb(a)&&this.kd(this.Xc(a,b,c))};N.Xc=function(a,b,c){var d=new qd(a,o(b),this.td);if(c){d.Pd(c);d.Qd(ld(c,arguments.callee.caller))}return d};N.fe=function(a,b){this.log(sd,a,b)};N.p=function(a,b){this.log(ud,a,b)};N.fb=function(a,b){this.log(vd,a,b)};N.kd=function(a){if(this.kb(a.ja)){var b=this;for(;b;){b.Mc(a);b=b.P}}};N.Mc=function(a){var b=0;for(;b<this.Yb[w];b++)this.Yb[b](a)};N.Sd=function(a){this.P=a};N.Cc=function(a,b){this.Nc[a]=b};
var wd={},xd=i,yd=function(){if(!xd){xd=new rd("");wd[""]=xd;xd.xc(td)}},Ad=function(a){yd();return a in wd?wd[a]:zd(a)},zd=function(a){var b=new rd(a),c=a[z]("."),d=c[c[w]-1];t(c,c[w]-1);var f=c[M]("."),g=Ad(f);g.Cc(d,b);b.Sd(g);return wd[a]=b};var Bd=function(){if(!!U){this.U={};this.Ya={};this.Ta=[]}};N=Bd[x];N.i=Ad("goog.net.xhrMonitor");N.tc=function(a){if(!!U){var b=Q(a)?a:eb(a)?gb(a):"";this.i.fb("Pushing context: "+a+" ("+b+")");this.Ta[u](b)}};N.rc=function(){if(!!U){var a=this.Ta.pop();this.i.fb("Popping context: "+a);this.ae(a)}};N.md=function(a){if(!!U){var b=gb(a);this.i.p("Opening XHR : "+b);var c=0;for(;c<this.Ta[w];c++){var d=this.Ta[c];this.Ga(this.U,d,b);this.Ga(this.Ya,b,d)}}};
N.ld=function(a){if(!!U){var b=gb(a);this.i.p("Closing XHR : "+b);delete this.Ya[b];for(var c in this.U){ob(this.U[c],b);this.U[c][w]==0&&delete this.U[c]}}};N.ae=function(a){var b=this.Ya[a],c=this.U[a];if(b&&c){this.i.fb("Updating dependent contexts");mb(b,function(d){mb(c,function(f){this.Ga(this.U,d,f);this.Ga(this.Ya,f,d)},this)},this)}};N.Ga=function(a,b,c){a[b]||(a[b]=[]);nb(a[b],c)||a[b][u](c)};var Cd=new Bd;var Ed=function(){return Dd()};var Dd=i,Fd=i,Gd=i;(function(a,b){Dd=a;Fd=b;Gd=i})(function(){var a=Hd();return a?new ActiveXObject(a):new XMLHttpRequest},function(){var a={};if(Hd()){a[0]=j;a[1]=j}return a});var Id=i,Hd=function(){if(!Id&&typeof XMLHttpRequest=="undefined"&&typeof ActiveXObject!="undefined"){var a=["MSXML2.XMLHTTP.6.0","MSXML2.XMLHTTP.3.0","MSXML2.XMLHTTP","Microsoft.XMLHTTP"],b=0;for(;b<a[w];b++){var c=a[b];try{new ActiveXObject(c);return Id=c}catch(d){}}k(m("Could not create ActiveXObject. ActiveX might be disabled, or MSXML might not be installed"))}return Id};var Jd=function(){Z[I](this);this.headers=new hd};R(Jd,Z);N=Jd[x];N.i=Ad("goog.net.XhrIo");N.F=e;N.a=i;N.Xa=i;N.fc="";N.dc="";N.va=0;N.wa="";N.db=e;N.La=e;N.ib=e;N.aa=e;N.Ua=0;N.ea=i;
N.send=function(a,b,c,d){if(this.F)k(m("[goog.net.XhrIo] Object is active with another request"));var f=b||"GET";this.fc=a;this.wa="";this.va=0;this.dc=f;this.db=e;this.F=j;this.a=new Ed;this.Xa=Gd||(Gd=Fd());Cd.md(this.a);this.a.onreadystatechange=ib(this.pc,this);try{this.i.p(this.H("Opening Xhr"));this.ib=j;this.a.open(f,a,j);this.ib=e}catch(g){this.i.p(this.H("Error opening Xhr: "+g[Ea]));this.Pb(5,g);return}var h=c||"",l=this.headers.t();d&&gd(d,function(n,r){l.K(r,n)});f=="POST"&&!l.L("Content-Type")&&
l.K("Content-Type","application/x-www-form-urlencoded;charset=utf-8");gd(l,function(n,r){this.a.setRequestHeader(r,n)},this);try{if(this.ea){Yc[ta](this.ea);this.ea=i}if(this.Ua>0){this.i.p(this.H("Will abort after "+this.Ua+"ms if incomplete"));this.ea=Yc[za](ib(this.Zd,this),this.Ua)}this.i.p(this.H("Sending request"));this.La=j;this.a.send(h);this.La=e}catch(q){this.i.p(this.H("Send error: "+q[Ea]));this.Pb(5,q)}};
N.dispatchEvent=function(a){if(this.a){Cd.tc(this.a);try{Jd.r[D][I](this,a)}finally{Cd.rc()}}else Jd.r[D][I](this,a)};N.Zd=function(){if(!(typeof Xa=="undefined"))if(this.a){this.wa="Timed out after "+this.Ua+"ms, aborting";this.va=8;this.i.p(this.H(this.wa));this[D]("timeout");this[xa](8)}};N.Pb=function(a,b){this.F=e;if(this.a){this.aa=j;this.a[xa]();this.aa=e}this.wa=b;this.va=a;this.Mb();this.Ha()};N.Mb=function(){if(!this.db){this.db=j;this[D]("complete");this[D]("error")}};
N.abort=function(a){if(this.a){this.i.p(this.H("Aborting"));this.F=e;this.aa=j;this.a[xa]();this.aa=e;this.va=a||7;this[D]("complete");this[D]("abort");this.Ha()}};N.e=function(){if(this.a){if(this.F){this.F=e;this.aa=j;this.a[xa]();this.aa=e}this.Ha(j)}Jd.r.e[I](this)};N.pc=function(){!this.ib&&!this.La&&!this.aa?this.wd():this.oc()};N.wd=function(){this.oc()};
N.oc=function(){if(!!this.F)if(!(typeof Xa=="undefined"))if(this.Xa[1]&&this.ta()==4&&this.Ja()==2)this.i.p(this.H("Local request error detected and ignored"));else if(this.La&&this.ta()==4)Yc[za](ib(this.pc,this),0);else{this[D]("readystatechange");if(this.gd()){this.i.p(this.H("Request complete"));this.F=e;if(this.jd()){this[D]("complete");this[D]("success")}else{this.va=6;this.wa=this.Zc()+" ["+this.Ja()+"]";this.Mb()}this.Ha()}}};
N.Ha=function(a){if(this.a){this.a.onreadystatechange=this.Xa[0]?ab:i;var b=this.a;this.Xa=this.a=i;if(this.ea){Yc[ta](this.ea);this.ea=i}if(!a){Cd.tc(b);this[D]("ready");Cd.rc()}Cd.ld(b)}};N.gd=function(){return this.ta()==4};N.jd=function(){switch(this.Ja()){case 0:case 200:case 204:case 304:return j;default:return e}};N.ta=function(){return this.a?this.a.readyState:0};N.Ja=function(){try{return this.ta()>2?this.a.status:-1}catch(a){this.i.fe("Can not get status: "+a[Ea]);return-1}};
N.Zc=function(){try{return this.ta()>2?this.a.statusText:""}catch(a){this.i.p("Can not get status: "+a[Ea]);return""}};N.Yc=function(){return this.a?this.a.responseText:""};N.H=function(a){return a+" ["+this.dc+" "+this.fc+" "+this.Ja()+"]"};var Kd=/^(?:([^:\/?#]+):)?(?:\/\/(?:([^\/?#]*)@)?([^\/?#:@]*)(?::([0-9]+))?)?([^?#]+)?(?:\?([^#]*))?(?:#(.*))?$/,Ld=function(a){return a.match(Kd)};var Md=function(a,b){var c;if(a instanceof Md){this.oa(b==i?a.w:b);this.Ab(a.S);this.Bb(a.Ea);this.ub(a.ra);this.yb(a.ka);this.xb(a.za);this.zb(a.B.t());this.vb(a.sa)}else if(a&&(c=Ld(o(a)))){this.oa(!!b);this.Ab(c[1],j);this.Bb(c[2],j);this.ub(c[3],j);this.yb(c[4]);this.xb(c[5],j);this.zb(c[6]);this.vb(c[7],j)}else{this.oa(!!b);this.B=new Nd(i,this,this.w)}};N=Md[x];N.S="";N.Ea="";N.ra="";N.ka=i;N.za="";N.sa="";N.hd=e;N.w=e;
ga(N,function(){if(this.l)return this.l;var a=[];this.S&&a[u](Od(this.S,Pd),":");if(this.ra){a[u]("//");this.Ea&&a[u](Od(this.Ea,Pd),"@");a[u](Qd(this.ra));this.ka!=i&&a[u](":",o(this.ka))}this.za&&a[u](Od(this.za,Rd));var b=o(this.B);b&&a[u]("?",b);this.sa&&a[u]("#",Od(this.sa,Sd));return this.l=a[M]("")});N.t=function(){return Td(this.S,this.Ea,this.ra,this.ka,this.za,this.B.t(),this.sa,this.w)};N.Ab=function(a,b){this.M();delete this.l;if(this.S=b?a?fa(a):"":a)this.S=this.S[y](/:$/,"");return this};
N.Bb=function(a,b){this.M();delete this.l;this.Ea=b?a?fa(a):"":a;return this};N.ub=function(a,b){this.M();delete this.l;this.ra=b?a?fa(a):"":a;return this};N.yb=function(a){this.M();delete this.l;if(a){a=Number(a);if(isNaN(a)||a<0)k(m("Bad port number "+a));this.ka=a}else this.ka=i;return this};N.xb=function(a,b){this.M();delete this.l;this.za=b?a?fa(a):"":a;return this};
N.zb=function(a){this.M();delete this.l;if(a instanceof Nd){this.B=a;this.B.Eb=this;this.B.oa(this.w)}else this.B=new Nd(a,this,this.w);return this};N.wb=function(a,b){this.M();delete this.l;this.B.K(a,b);return this};N.vb=function(a,b){this.M();delete this.l;this.sa=b?a?fa(a):"":a;return this};N.M=function(){if(this.hd)k(m("Tried to modify a read-only Uri"))};N.oa=function(a){this.w=a;this.B&&this.B.oa(a)};
var Td=function(a,b,c,d,f,g,h,l){var q=new Md(i,l);a&&q.Ab(a);b&&q.Bb(b);c&&q.ub(c);d&&q.yb(d);f&&q.xb(f);g&&q.zb(g);h&&q.vb(h);return q};
var Qd=function(a){if(Q(a))return aa(a);return i},Ud=/^[a-zA-Z0-9\-_.!~*'():\/;?]*$/,Od=function(a,b){var c=i;if(Q(a)){c=a;Ud[ra](c)||(c=encodeURI(a));if(c.search(b)>=0)c=c[y](b,Vd)}return c},Vd=function(a){var b=a.charCodeAt(0);return"%"+(b>>4&15)[qa](16)+(b&15)[qa](16)},Pd=/[#\/\?@]/g,Rd=/[\#\?]/g,Sd=/#/g,Nd=function(a,b,c){this.h=new hd;this.Eb=b||i;this.w=!!c;if(a){var d=a[z]("&"),f=0;for(;f<d[w];f++){var g=d[f][C]("="),h=i,l=i;if(g>=0){h=d[f][Oa](0,g);l=d[f][Oa](g+1)}else h=d[f];h=fa(h[y](/\+/g,
" "));h=this.Z(h);this.add(h,l?fa(l[y](/\+/g," ")):"")}}};N=Nd[x];N.d=0;N.add=function(a,b){this.Oa();a=this.Z(a);if(this.L(a)){var c=this.h.Y(a);P(c)?c[u](b):this.h.K(a,[c,b])}else this.h.K(a,b);this.d++;return this};N.remove=function(a){a=this.Z(a);if(this.h.L(a)){this.Oa();var b=this.h.Y(a);if(P(b))this.d-=b[w];else this.d--;return this.h.remove(a)}return e};N.L=function(a){a=this.Z(a);return this.h.L(a)};
N.ha=function(){var a=this.h.$(),b=this.h.ha(),c=[],d=0;for(;d<b[w];d++){var f=a[d];if(P(f)){var g=0;for(;g<f[w];g++)c[u](b[d])}else c[u](b[d])}return c};N.$=function(a){var b;if(a){var c=this.Z(a);if(this.L(c)){var d=this.h.Y(c);if(P(d))return d;else{b=[];b[u](d)}}else b=[]}else{var f=this.h.$();b=[];var g=0;for(;g<f[w];g++){var h=f[g];P(h)?rb(b,h):b[u](h)}}return b};
N.K=function(a,b){this.Oa();a=this.Z(a);if(this.L(a)){var c=this.h.Y(a);if(P(c))this.d-=c[w];else this.d--}this.h.K(a,b);this.d++;return this};N.Y=function(a,b){a=this.Z(a);if(this.L(a)){var c=this.h.Y(a);return P(c)?c[0]:c}else return b};ga(N,function(){if(this.l)return this.l;var a=[],b=0,c=this.h.ha(),d=0;for(;d<c[w];d++){var f=c[d],g=Eb(f),h=this.h.Y(f);if(P(h)){var l=0;for(;l<h[w];l++){b>0&&a[u]("&");a[u](g,"=",Eb(h[l]));b++}}else{b>0&&a[u]("&");a[u](g,"=",Eb(h));b++}}return this.l=a[M]("")});
N.Oa=function(){delete this.l;this.Eb&&delete this.Eb.l};N.t=function(){var a=new Nd;a.h=this.h.t();return a};N.Z=function(a){var b=o(a);if(this.w)b=b.toLowerCase();return b};N.oa=function(a){if(a&&!this.w){this.Oa();gd(this.h,function(b,c){var d=c.toLowerCase();if(c!=d){this.remove(c);this.add(d,b)}},this)}this.w=a};var Wd=function(a,b){this.ce=a;this.de=!b;this.a=new Jd};Wd[x].qd="GET";Wd[x].Oc=da;Wd[x].cd=i;Wd[x].Kd=function(a,b,c){X(this.a,"success",function(f){var g=f[H].Yc();if(g)try{var h=eval("("+g+")");c(a,h)}catch(l){c(a,[])}else c(a,[])});var d=new Md(this.ce);d.wb("token",a);d.wb("max_matches",o(b));d.wb("use_similar",o(Number(this.de)));this.a.F&&this.a[xa]();this.a.send(d[qa](),this.qd,this.Oc,this.cd)};var Xd=function(a){var b=a.className;return b&&typeof b[z]=="function"?b[z](" "):[]},Zd=function(a){var b=Xd(a),c=sb(arguments,1),d=Yd(b,c);ha(a,b[M](" "));return d},ae=function(a){var b=Xd(a),c=sb(arguments,1),d=$d(b,c);ha(a,b[M](" "));return d},Yd=function(a,b){var c=0,d=0;for(;d<b[w];d++)if(!nb(a,b[d])){a[u](b[d]);c++}return c==b[w]},$d=function(a,b){var c=0,d=0;for(;d<a[w];d++)if(nb(b,a[d])){tb(a,d--,1);c++}return c==b[w]};var be=function(a,b){this.x=Ya(a)?a:0;this.y=Ya(b)?b:0};be[x].t=function(){return new be(this.x,this.y)};ga(be[x],function(){return"("+this.x+", "+this.y+")"});var ce=function(a,b){ia(this,a);this.height=b};ce[x].t=function(){return new ce(this[ua],this[Ua])};ga(ce[x],function(){return"("+this[ua]+" x "+this[Ua]+")"});ce[x].round=function(){ia(this,Math[wa](this[ua]));this.height=Math[wa](this[Ua]);return this};var fe=function(a){return a?new de(ee(a)):Dc||(Dc=new de)};
var he=function(a,b){ub(b,function(c,d){if(d=="style")a[E].cssText=c;else if(d=="class")ha(a,c);else if(d=="for")a.htmlFor=c;else if(d in ge)a[Na](ge[d],c);else a[d]=c})},ge={cellpadding:"cellPadding",cellspacing:"cellSpacing",colspan:"colSpan",rowspan:"rowSpan",valign:"vAlign",height:"height",width:"width",usemap:"useMap",frameborder:"frameBorder",type:"type"},ie=function(a,b){a[pa](b)},je=function(a){var b;for(;b=a.firstChild;)a.removeChild(b)},ke=function(a){return a&&a[L]?a[L].removeChild(a):
i};
var le=V&&Nb(ac,"521")<=0,me=function(a,b){if(typeof a[Qa]!="undefined"&&!le&&b[Aa]==1)return a==b||a[Qa](b);if(typeof a.compareDocumentPosition!="undefined")return a==b||Boolean(a.compareDocumentPosition(b)&16);for(;b&&a!=b;)b=b[L];return b==a},ee=function(a){return a[Aa]==9?a:a.ownerDocument||a.document},ne=function(a){if(a&&typeof a[w]=="number")if(eb(a))return typeof a.item=="function"||typeof a.item=="string";else if(db(a))return typeof a.item=="function";return e},de=function(a){this.ga=a||
O.document||ea};N=de[x];N.Ib=function(a,b){if(T&&b&&(b[Ta]||b[K])){var c=["<",a];b[Ta]&&c[u](' name="',Lb(b[Ta]),'"');if(b[K]){c[u](' type="',Lb(b[K]),'"');b=hb(b);delete b[K]}c[u](">");a=c[M]("")}var d=this[La](a);b&&he(d,b);if(arguments[w]>2){function f(l){if(l)this[pa](d,Q(l)?this[Ca](l):l)}var g=2;for(;g<arguments[w];g++){var h=arguments[g];cb(h)&&!(eb(h)&&h[Aa]>0)?mb(ne(h)?pb(h):h,f,this):f[I](this,h)}}return d};N.createElement=function(a){return this.ga[La](a)};N.createTextNode=function(a){return this.ga[Ca](a)};
N.bc=function(){var a=this.ga;if(a.compatMode)return a.compatMode=="CSS1Compat";if(V){var b=a[La]("div");b[E].cssText="position:absolute;width:0;height:0;width:1";return(a.compatMode=b[E][ua]=="1px"?"BackCompat":"CSS1Compat")=="CSS1Compat"}return e};N.Wc=function(){var a=this.ga;return!V&&this.bc()?a[Wa]:a[F]};N.Vc=function(){var a=this.Wc();return new be(a.scrollLeft,a.scrollTop)};N.appendChild=ie;N.Cd=je;N.removeNode=ke;N.contains=me;var oe,pe,qe,re,se,te;(function(){te=se=re=qe=pe=oe=e;var a=Xb();if(!!a)if(a[C]("Firefox")!=-1)oe=j;else if(a[C]("Camino")!=-1)pe=j;else if(a[C]("iPhone")!=-1||a[C]("iPod")!=-1)qe=j;else if(a[C]("Android")!=-1)re=j;else if(a[C]("Chrome")!=-1)se=j;else if(a[C]("Safari")!=-1)te=j})();var ue=function(a,b){var c=ee(a);if(c.defaultView&&c.defaultView.getComputedStyle){var d=c.defaultView.getComputedStyle(a,"");if(d)return d[b]}return i};var ve=function(a,b){return ue(a,b)||(a.currentStyle?a.currentStyle[b]:i)||a[E][b]};
var we=function(a,b,c){var d,f,g=U&&$b&&cc("1.9");if(b instanceof be){d=b.x;f=b.y}else{d=b;f=c}a[E].left=typeof d=="number"?(g?Math[wa](d):d)+"px":d;a[E].top=typeof f=="number"?(g?Math[wa](f):f)+"px":f},xe=function(a){var b;b=a?a[Aa]==9?a:ee(a):ea;if(T&&!fe(b).bc())return b[F];return b[Wa]},ye=function(a){var b=a.getBoundingClientRect();if(T){var c=a.ownerDocument;b.left-=c[Wa].clientLeft+c[F].clientLeft;b.top-=c[Wa].clientTop+c[F].clientTop}return b},ze=function(a){if(T)return a.offsetParent;var b=
ee(a),c=ve(a,"position"),d=c=="fixed"||c=="absolute",f=a[L];for(;f&&f!=b;f=f[L]){c=ve(f,"position");d=d&&c=="static"&&f!=b[Wa]&&f!=b[F];if(!d&&(f.scrollWidth>f.clientWidth||f.scrollHeight>f.clientHeight||c=="fixed"||c=="absolute"))return f}return i},Ae=function(a){var b,c=ee(a),d=ve(a,"position"),f=U&&c[Ja]&&!a.getBoundingClientRect&&d=="absolute"&&(b=c[Ja](a))&&(b[Ha]<0||b[Ia]<0),g=new be(0,0),h=xe(c);if(a==h)return g;if(a.getBoundingClientRect){b=ye(a);var l=fe(c).Vc();g.x=b.left+l.x;g.y=b.top+
l.y}else if(c[Ja]&&!f){b=c[Ja](a);var q=c[Ja](h);g.x=b[Ha]-q[Ha];g.y=b[Ia]-q[Ia]}else{var n=a;do{g.x+=n.offsetLeft;g.y+=n.offsetTop;if(n!=a){g.x+=n.clientLeft||0;g.y+=n.clientTop||0}if(V&&ve(n,"position")=="fixed"){g.x+=c[F].scrollLeft;g.y+=c[F].scrollTop;break}n=n.offsetParent}while(n&&n!=a);if(Yb||V&&d=="absolute")g.y-=c[F].offsetTop;n=a;for(;(n=ze(n))&&n!=c[F];){g.x-=n.scrollLeft;if(!Yb||n.tagName!="TR")g.y-=n.scrollTop}}return g},Be=function(a,b,c){var d=Ae(a);if(b instanceof be){c=b.y;b=b.x}we(a,
a.offsetLeft+(b-d.x),a.offsetTop+(c-d.y))},Ce=function(a){if(ve(a,"display")!="none")return Yb?new ce(a[Ba]||a.clientWidth,a[Va]||a.clientHeight):new ce(a[Ba],a[Va]);var b=a[E],c=b.display,d=b.visibility,f=b.position;oa(b,"hidden");b.position="absolute";b.display="inline";var g,h;if(Yb){g=a[Ba]||a.clientWidth;h=a[Va]||a.clientHeight}else{g=a[Ba];h=a[Va]}b.display=c;b.position=f;oa(b,d);return new ce(g,h)},De=function(a,b){a[E].display=b?"":"none"};U&&cc("1.9");
var Ee=U?"MozUserSelect":V?"WebkitUserSelect":i,Fe=function(a,b,c){var d=!c?a.getElementsByTagName("*"):i;if(Ee){var f=b?"none":"";a[E][Ee]=f;if(d){var g=0,h;for(;h=d[g];g++)h[E][Ee]=f}}else if(T||Yb){var f=b?"on":"";a[Na]("unselectable",f);if(d){var g=0,h;for(;h=d[g];g++)h[Na]("unselectable",f)}}};var Ge=function(a,b,c,d){this.P=a||ea[F];this.o=fe(this.P);this.Jd=!a;this.c=i;this.C="";this.j=[];this.yc=this.Ka=-1;this.T=e;ha(this,"ac-renderer");this.sb="ac-row";this.gc="active";this.Fb="ac-active";this.dd="ac-highlighted";this.fa=b||i;this.ee=d!=i?d:j;this.Ld=c!=i?c:e;this.lb=i;this.Va=e};R(Ge,Z);var He=0;N=Ge[x];N.Id=function(a,b,c){this.C=b;this.j=a;this.Ka=0;this.yc=jb();this.k=c;this.Aa=[];this.Bd()};N.V=function(){this.k&&Hc(this.k,i);if(this.T){this.T=e;De(this.c,e)}};
N.Wd=function(){if(!this.T){this.T=j;De(this.c,j)}};N.ac=function(a){this.ed();this.Ka=a;if(a>=0&&a<this.c.childNodes[w]){var b=this.Aa[a];Zd(b,this.Fb,this.gc);this.k&&Hc(this.k,b)}};N.ed=function(){this.Ka>=0&&ae(this.Aa[this.Ka],this.Fb,this.gc)};N.N=function(a){if(a==-1)this.ac(-1);else{var b=0;for(;b<this.j[w];b++)if(this.j[b].id==a){this.ac(b);return}}};N.Rd=function(a){Zd(a,this.className)};
N.pd=function(){if(!this.c){var a=this.o.Ib("div",{style:"display:none"});this.c=a;this.Rd(a);Fc(a,"listbox");a.id="goog-acr-"+He++;if(this.k){Fc(this.k,"combobox");Gc(this.k,"autocomplete","list");Gc(this.k,"haspopup",j)}this.o[pa](this.P,a);X(a,"click",this.Tb,e,this);X(a,"mousedown",this.Vb,e,this);X(this.o.ga,"click",this.Ub,e,this);X(a,"mouseover",this.Wb,e,this)}};
N.Bd=function(){this.pd();if(this.Va)oa(this.c[E],"hidden");t(this.Aa,0);this.o.Cd(this.c);if(this.fa&&this.fa.Ed)this.fa.Ed(this,this.c,this.j,this.C);else{var a=i;dd(this.j,function(g){g=this.Hd(g,this.C);this.Va?this.c.insertBefore(g,a):this.o[pa](this.c,g);a=g},this)}if(this.j[w]==0)this.V();else{this.Wd();this.zd(this.c);if(this.k&&this.Jd){var b=Ae(this.k),c=Ce(this.k),d=Ce(xe(this.k)),f=Ce(this.c);b.y=this.Va?b.y-f[Ua]:b.y+c[Ua];if((this.Ld||b.x+f[ua]>d[ua])&&this.lb!="LEFT"){b.x=b.x+c[ua]-
f[ua];this.lb="RIGHT"}else this.lb="LEFT";Be(this.c,b);if(this.Va)oa(this.c[E],"visible")}Fe(this.c,j)}};N.e=function(){Ge.r.e[I](this);if(this.c){tc(this.c,"click",this.Tb,e,this);tc(this.c,"mousedown",this.Vb,e,this);tc(this.o.ga,"click",this.Ub,e,this);tc(this.c,"mouseover",this.Wb,e,this);this.o.removeNode(this.c);this.c=i;this.T=e}delete this.P};N.zd=function(a){if(U&&$b){ia(a[E],"");a[E].overflow="visible";ia(a[E],a[Ba]);a[E].overflow="auto"}};N.Gd=function(a,b,c){c.innerHTML=Lb(a.data[qa]())};
N.hb=function(a,b){if(a[Aa]==3){var c,d=i;if(P(b)){c=b[w]>0?b[0]:"";if(b[w]>1)d=sb(b,1)}else c=b;if(!(c[w]==0)){var f=a.nodeValue;c=o(c)[y](/([-()\[\]{}+?*.$\^|,:#<!\\])/g,"\\$1")[y](/\x08/g,"\\x08");var g=new RegExp("(.*?)(^|\\W+)("+c+")","gi"),h=[],l=0,q=g[sa](f);for(;q;){h[u](q[1]);h[u](q[2]);h[u](q[3]);l=g.lastIndex;q=g[sa](f)}h[u](f[Oa](l));if(h[w]>1){a.nodeValue=h[0]+h[1];var n=this.o[La]("b");ha(n,this.dd);this.o[pa](n,this.o[Ca](h[2]));n=a[L].insertBefore(n,a.nextSibling);var r=h[w]-1;for(;r>=
3;r--)a[L].insertBefore(this.o[Ca](h[r]),n.nextSibling)}else d&&this.hb(a,d)}}else{var s=a.firstChild;for(;s;){var v=s.nextSibling;this.hb(s,b);s=v}}};N.Hd=function(a,b){var c=this.o.Ib("div",{className:this.sb,id:"goog-acri-"+He++});Fc(c,"option");this.fa&&this.fa.Fd?this.fa.Fd(a,b,c):this.Gd(a,b,c);b&&this.ee&&this.hb(c,b);Zd(c,this.sb);this.Aa[u](c);return c};N.Rb=function(a){for(;a&&a!=this.c&&!nb(Xd(a),this.sb);)a=a[L];return a?lb(this.Aa,a):-1};
N.Tb=function(a){var b=this.Rb(a[H]);b>=0&&this[D]({type:"select",Sa:this.j[b].id});a[Da]()};N.Vb=function(a){this[D]("canceldismiss");a[Da]();a[B]()};N.Ub=function(){this[D]("dismiss")};N.Wb=function(a){var b=this.Rb(a[H]);if(b>=0)jb()-this.yc<300||this[D]({type:"hilite",Sa:this.j[b].id})};var Ie=function(a,b,c,d){var f=new Wd(a,!d);this.pb=f;var g=new Ge,h=new $c(i,i,!!c,300);Cc[I](this,f,g,h);h.Fc(this);h.Hc(b)};R(Ie,Cc);kb("sgst",function(a){var b=[],c=ea.getElementsByName(a),d=c[w],f=0;for(;f<d;++f){c[f][Na]("autocomplete","off");c[f].form.he="off";b[f]=new Ie("/Suggest.aspx",c[f])}return b});

// Copyright (c) 1999-2004 Nedstat B.V.
// All rights reserved.
// By using this software, you are agreeing to be bound by the
// terms of this license: http://www.nedstat.com/terms.html
var ns_scriptversion="132";// 2004-05-24

function ns_14(){
	var ns_02 = navigator.appVersion;
	var ns_00 = parseInt(ns_02.substring(ns_02.indexOf("MSIE")+5, ns_02.indexOf("MSIE")+6));
	if (ns_00 > 0) ns_02 = 0;else ns_02 = parseInt(ns_02);
	return ns_02;
}

function ns_22(){
	var ns_02 = navigator.appVersion;
	var ns_01 = parseInt(ns_02.substring(ns_02.indexOf("MSIE")+5, ns_02.indexOf("MSIE")+6));
	if(ns_01>0) ns_02=ns_01;else ns_02=0;
	return ns_02;
}

function ns_pluginNetscape(){
	var ns_pluglength = navigator.plugins.length;
	var ns_08 = "";
	if(ns_pluglength>0){
		ns_08 = "&ns_java="+navigator.javaEnabled()+"&ns_plugins=";
		for(ns_24 = 0 ; ns_24 < ns_pluglength ; ns_24++){
			var ns_29 = false;
			for(ns_23 = 0 ; ns_23 < ns_24 ; ns_23++)ns_29 = (navigator.plugins[ns_24].description == navigator.plugins[ns_23].description);
			if(!ns_29)ns_08 += escape(navigator.plugins[ns_24].description +"|");
		}
	}
	return ns_08;
}

function ns_10(){
	var ns_15 = navigator.mimeTypes;
	var ns_17 = ns_15.length;
	if(ns_17>0){
		ns_08 = "&ns_mimetypes=";
		for(ns_24=0;ns_24<ns_17;ns_24++){
			ns_29 = false;
			for(ns_23=0;ns_23<ns_24;ns_23++)if(ns_15[ns_24].enabledPlugin == ns_15[ns_23].enabledPlugin)ns_29 = true;
			if(!ns_29)ns_08 += escape(ns_15[ns_24].description + "|")
		}
	}
	return ns_08;
}

function ns_12(){
	if(!document.body){
		document.write('<body>');
	}
	var ns_33=document.body;
	var ns_13 = 0;var ns_34 = 1;ns_11=new Array("47F67D00-9E55-11D1-BAEF-00C04FC2D130","7790769C-0471-11D2-AF11-00C04FA35D02","283807B5-2C60-11D0-A31D-00AA00B92C03","9381D8F2-0288-11D0-9501-00AA00B911A5","5A8D6EE0-3E18-11D0-821E-444553540000","630B1DA0-B465-11D1-9948-00C04F98BBC9","45EA75A0-A269-11D1-B5BF-0000F8051515","76C19B50-F0C8-11CF-87CC-0020AFEECF20","D27CDB6E-AE6D-11CF-96B8-444553540000","2A202491-F00D-11CF-87CC-0020AFEECF20","08B0E5C0-4FCB-11CF-AAA5-00401C608500","3AF36230-A269-11D1-B5BF-0000F8051515","3BF42070-B3B1-11D1-B5C5-0000F8051515","90A7533D-88FE-11D0-9DBE-0000C0411FC3","10072CEC-8CC1-11D1-986E-00A0C955B42F","4F645220-306D-11D2-995D-00C04F98BBC9","1CDEE860-E95B-11CF-B1B0-00AA00BBAD66","73FA19D0-2D75-11D2-995D-00C04F98BBC9","23064720-C4F8-11D1-994D-00C04F98BBC9","22D6F312-B0F6-11D0-94AB-0080C74C7E95","CA8A9784-280D-11CF-A24D-444553540000","CA8A9780-280D-11CF-A24D-444553540000","B801CA65-A1FC-11D0-85AD-444553540000");
	ns_33.addBehavior("#default#clientcaps");
	for(var ns_18=0;ns_18<ns_11.length;ns_18++){
		if(ns_11[ns_18])if(ns_33.isComponentInstalled("{"+ns_11[ns_18]+"}","ComponentID"))ns_13|=ns_34;ns_34*=2;
	}
	return ns_13;
}

function ns_26(ns_l7){
	var ns_31 = "";
	for(var i = 0; i < ns_l7.elements.length ; i++){
		var ns_28 = ns_l7.elements[i];
		if(ns_28.name){
			if(ns_28.type == "select-multiple") {
				for(var j = 0 ; j < ns_28.options.length ; j++)if(ns_28.options[j].selected)ns_31 += ns_28.name+";";
			}else if(ns_28.type == "select-one") {
				ns_31 += ns_28.name+";";
			}else if(ns_28.type == "checkbox" || ns_28.type == "radio") {
				if(ns_28.checked)ns_31 += ns_28.name+";";
			}else ns_31  += ns_28.name+";";
		}
	}
	return ns_31.substring(0,ns_31.lastIndexOf(";"));
}

function sitestatForm(ns_30, ns_pixelUrl, ns_03){
	if (ns_03 == null)ns_03 = ns_26(ns_30);
	if(ns_14() >=4 || ns_22() >= 4){
		var ns_07 = ns_03.split(";");
		ns_07_length = ns_07.length;
		ns_pixelUrl += '&ns_type=submit&ns__t=' + parseInt((new Date()).getTime());
		for(var ns_24=0;ns_24<ns_30.elements.length;ns_24++){
			var ns_32 = ns_30.elements[ns_24];var ns_04;
			ns_16 = false;
			if(ns_03){
				for(ns_t = 0; ns_t < ns_07_length; ns_t++)
					if(ns_32.name == ns_07[ns_t])ns_16 = true;
			}else{
				if(ns_32.name)ns_16 = true;
			}
			if(ns_16){
				if(ns_32.type == 'select-multiple'){
					for(var ns_j=0;ns_j<ns_32.options.length;ns_j++)
						if(ns_32.options[ns_j].selected)ns_pixelUrl = ns_pixelUrl + "&ns_f_" + escape(ns_32.name) + "=" + escape(ns_32.options[ns_j].value);
				}else{
					if(ns_32.type == 'select-one')ns_04 = ns_32.options[ns_32.selectedIndex].value;
					else{
						if(ns_32.type == 'checkbox' || ns_32.type == 'radio')if(!ns_32.checked)continue;ns_04 = ns_32.value;
					}ns_pixelUrl = ns_pixelUrl + "&ns_f_" + escape(ns_32.name) + "=" + escape(ns_04);
				}
			}
		}
		ns_30.onsubmit = null;var ns_21 = new Image();ns_21.ns_30 = ns_30;ns_21.onload = ns_1O;ns_21.onerror = ns_1O;ns_21.onabort = ns_1O;document.sitestatForm = ns_30;ns_21.timerID = setTimeout(ns_19, 5000);ns_21.src = ns_pixelUrl;
	}	
}

function ns_1O(){
	this.onload = null;
	this.onerror = null;
	this.onabort = null;
	clearTimeout(this.timerID);
	this.ns_30.submit();
}

function ns_19(){
	var ns_30 = document.sitestatForm;
	ns_30.onload = null;
	ns_30.onerror = null;
	ns_30.onabort = null;
	ns_30.submit();
}

function ns_25(){
	ns_pixelUrl+="&ns_type=hidden&ns_ver="+ns_scriptversion;
	if(ns_14() >=3) {
		ns_pixelUrl+=ns_pluginNetscape();
		ns_pixelUrl+=ns_10();
	}
	if(ns_14() >=4 || ns_22() >= 4){
		var ns_screen=screen;
		if(parent.innerWidth) {
			ns_pixelUrl+= "&ns_innersize="+parent.innerWidth+"x"+parent.innerHeight+ "&ns_offset="+parent.pageXOffset+"x"+parent.pageYOffset;
		}
		ns_pixelUrl +=  "&ns_availscreen="+ns_screen.availWidth+"x"+ns_screen.availHeight;
		if(ns_screen)ns_pixelUrl += "&ns_screen="+ns_screen.width+"x"+ns_screen.height+"&ns_colordepth="+ns_screen.colorDepth;
	}
	if(document.images)	{
		ns_pixel= new Image();
		ns_pixel.src=ns_pixelUrl;
	}
}

function ns_09(){
	if(typeof (ns_loadingtime2) != "undefined"){
		var ns_html_loading_time=(ns_loadingtime2 - ns_loadingtime1)/1000;
		var ns_full_loading_time=((new Date()).getTime() - ns_loadingtime1)/1000;
		ns_pixelUrl += "&ns_html_loading_time="+ns_html_loading_time+"&ns_full_loading_time="+ns_full_loading_time;
		ns_25();
	}
	if (typeof (ns_05)!="undefined")ns_06();
}

document.cookie = "ns_cookietest=true";
if(document.cookie.indexOf("ns_cookietest",0)>=0){
	if(document.cookie.indexOf("ns_session",0)<0){
		document.cookie = "ns_session=true";
		if (typeof(ns_pixelUrl) != "undefined" ) {
			if (ns_22() >= 5 && navigator.appVersion.indexOf("Mac")<0) {
				ns_pixelUrl+="&ns_p="+ns_12();
			}
			if (typeof (ns_loadingtime1) == "undefined" || ns_22() < 4)ns_25();
			else {
				if (document.body.onload) {
					ns_05 = 1;
					ns_06 = document.body.onload;
				}
				document.body.onload = ns_09;
			}
		}
	}
}

// (c) 2004-2007 Copyright Nedstat BV Netherlands.
// ALL RIGHTS RESERVED
var ns_sendOrders={};function ns_order(ns_counterURL,ns_client_id,ns_order_id,delimiter){var DELIMITER=".";this.hasDelimiter=!!(delimiter);this.counterURL=ns_counterURL;this.clientID=ns_client_id;this.orderID=ns_order_id;this.delimiter=(delimiter)?/^[\.,];$/.test(delimiter)?delimiter:DELIMITER:DELIMITER;this.orders=[];this.DEBUG=false;};ns_order.prototype.addLine=function(prod_id,brand,prod_grp,shop,qty,prod_price){this.orders[this.orders.length]={ns_prod_id:!this.isEmpty(prod_id)?prod_id:"ns_undefined",ns_brand:!this.isEmpty(brand)?brand:"ns_undefined",ns_prod_grp:!this.isEmpty(prod_grp)?prod_grp:"ns_undefined",ns_shop:!this.isEmpty(shop)?shop:"ns_undefined",ns_qty:this.toFloat(qty),ns_prod_price:this.toSignedFloat(prod_price),ns_ec_price:prod_price}};ns_order.prototype.sendOrder=function(){var cookieStr="ns_order_id_"+this.orderID+"=true";if(!this.orderID||(ns_sendOrders[this.orderID]||document.cookie.indexOf(cookieStr)>0))
return;ns_sendOrders[this.orderID]=true;document.cookie=cookieStr;var log=this.counterURL+"&ns__t="+(new Date()).getTime()+"&ns_ec_ver=2.01"+"&ns_commerce=true&ns_type=hidden"+"&ns_ec_has_delimiter="+this.hasDelimiter+"&ns_ec_delimiter="+this.delimiter+"&ns_client_id="+this.toValueString(this.clientID)+"&ns_order_id="+this.toValueString(this.orderID)+"&ns_orderlines="+this.orders.length;for(var i=0,order,logURL;(order=this.orders[i]);i++){logURL=log;logURL+="&ns_orderline_id="+(i+1);for(var key in order)logURL+="&"+key+"="+escape(this.toValueString(order[key]));if(this.DEBUG&&document.getElementById("debug")){document.getElementById("debug").firstChild.appendChild(document.createTextNode(logURL+"\n"));}var imgId="ns_order_"+this.orderID+"#"+i;window[imgId]=new Image();window[imgId].id=imgId;window[imgId].onload=window[imgId].onerror=function(){try{window[this.id]=null;delete window[this.id];}catch(e){}};window[imgId].src=logURL;}};ns_order.prototype.toValueString=function(s){
return new String((typeof s=="undefined")?0:s).replace(/(%3C|%3E|<|>)/gi,"_");};ns_order.prototype.toFloat=function(s){var val=parseFloat(s);
return isNaN(val)?"ns_undefined":val;};ns_order.prototype.toSignedFloat=function(s){s=new String(s||"");var regEx=/([\+-])?(?:0+)?(\d.*)/;var matches=s.match(regEx);if(!matches)
return 0;var index=(matches[2].indexOf(this.delimiter)>0)?matches[2].indexOf(this.delimiter):matches[2].length;var val=matches[2].substring(0,index).replace(/[\.,]/g,"");var decimals=matches[2].substring(Math.min(matches[2].length,index+1));var signedFloat=parseFloat(parseInt(val)+"."+((decimals.length>2)?(Math.round(decimals/100)*100):decimals)).toFixed(2);
return isNaN(signedFloat)?0:((matches[1])?matches[1]:"")+signedFloat;};ns_order.prototype.isMoney=function(s){
return/^([\+-])?([0-9]+|[0-9]{1,3}([\.,][0-9]{3})*)([\.,][0-9]{1,2})?$/.test(new String((typeof s=="undefined")?0:s).replace(/(^\s+)|\s+$/g,""));};ns_order.prototype.isEmpty=function(s){s=new String((typeof s=="undefined")?"":s);
return(s)?s.match(/^([\s]+)?$/):false;};
function sitestat(ns_l){// FromUrl v1.5 Copyright (c) 2001-2008 Nedstat B.V. All rights reserved.
var ns_type='' // leave empty for normal/ppc measurement, fill in for clickin, clickout or pdf
var r='' // yes=only parse url when there is a real document.referrer,
// no=only parse url when there is no real document.referrer, empty=always parse url
var t='?' // tag in url where parameters follow; default '?' could be replaced by "#"
var p=new Array();var w='';var l='';var d=document;var n=navigator;var ns_0=''
;if(top!=self){if('\u0041'=='A'){var u=n.userAgent;if(u.indexOf('Safari')==-1)
{var b=u.indexOf('Opera');if(b==-1||(u.charAt(b+6)+0)>5){b=u.indexOf('Mozilla'
);var xb=b!=-1?u.charAt(b+8)>4:1;if(u.indexOf('compatible')!=-1||xb){var c=
'try{ns_0=top.document.referrer}catch(e){}';eval(c);c=
'try{l=top.document.location.href}catch(e){}';eval(c);}}}}}else{ns_0=
d.referrer;l=d.location.href;}if(ns_0.lastIndexOf('/')==ns_0.length-1){ns_0=
ns_0.substring(ns_0.lastIndexOf('/'),0);}var f=ns_l.indexOf('?');if(f!=-1){
var q=ns_l.substring(f+1);ns_l=ns_l.substring(0,f);if(q){var m=q.indexOf('&');
w=q.substring(0,m==-1?q.length:m);if(w.indexOf('=')!=-1){w='';}if(w){q=
q.substring(m==-1?q.length:m+1);q+=(q?'&':'')+'ns_name='+w;}if(ns_0.length>0){
q+=(q?'&':'')+'ns_referrer='+escape(ns_0);}var s=0;var e=0;while(q.length){e=
q.indexOf('&');if(e==-1){e=q.length;}var o=q.substring(s,e);if(o.substring(0,4
)=='amp;'){o=o.substring(4);}if(o)p[p.length]=o;q=q.substring(e+1);}}}var a=
l.indexOf(t);a=a==-1?0:l.substring(a+1);var j;if(r=='yes')j=ns_0.length;else
if(r=='no')j=!ns_0.length;else if(r=='')j=1;if(a&&j){while(a.length){var e=
a.indexOf('&');if(e==-1){e=a.length;}var k=a.substring(0,a.substring(0,e)
.indexOf('='));var v=a.substring(a.substring(0,e).indexOf('=')+1,e);if(
k.substring(0,4)=='amp;'){k=k.substring(4);}while(v.substring(0,1)=='='){v=
v.substring(1);}if(k=='ns_name'){w=v;}else if(k=='ns_or'){var g='ns_referrer='
;for(var z=0;z<p.length;z++){if(p[z].substring(0,g.length)==g){p[z]=
'ns_referrer='+v;}}}else{if(k.substring(0,3)=='ns_'&&v&&k){var h=0;for(var x=0
;x<p.length;x++){if(p[x].substring(0,p[x].indexOf('='))==k){p[x]=k+"="+v;h=1}}
if(!h){p[p.length]=k+"="+v;}}}a=a.substring(e+1);}}if(!w){return;}var s='';
var y='';for(var i=0;i<p.length;i++)if(p[i].substring(0,8)!='ns_name='){if(p[i
].substring(0,12)!='ns_referrer='){s+='&'+p[i];}else{y='&'+p[i];}}s+=ns_type?
'&ns_type='+ns_type+'&ns_action=view':'';ns_pixelUrl=ns_l+'?'+w+"&ns__t="+(
new Date()).getTime();ns_l=ns_pixelUrl+s+y;if(d.images){ns_1=new Image();
ns_1.src=ns_l;}else{d.write('<img src='+ns_l+' width="1" height="1">');}}
if(typeof(Sys)!=='undefined')Sys.Application.notifyScriptLoaded();