var g,aa=aa||{},m=this,n=function(a){return void 0!==a},q=function(a){return"string"==typeof a},ba=function(a){return"number"==typeof a},ca=function(a,b,c){a=a.split(".");c=c||m;a[0]in c||"undefined"==typeof c.execScript||c.execScript("var "+a[0]);for(var d;a.length&&(d=a.shift());)!a.length&&n(b)?c[d]=b:c=c[d]&&c[d]!==Object.prototype[d]?c[d]:c[d]={}},da=function(a,b){a=a.split(".");b=b||m;for(var c=0;c<a.length;c++)if(b=b[a[c]],null==b)return null;return b},ea=function(){},t=function(a){var b=typeof a; if("object"==b)if(a){if(a instanceof Array)return"array";if(a instanceof Object)return b;var c=Object.prototype.toString.call(a);if("[object Window]"==c)return"object";if("[object Array]"==c||"number"==typeof a.length&&"undefined"!=typeof a.splice&&"undefined"!=typeof a.propertyIsEnumerable&&!a.propertyIsEnumerable("splice"))return"array";if("[object Function]"==c||"undefined"!=typeof a.call&&"undefined"!=typeof a.propertyIsEnumerable&&!a.propertyIsEnumerable("call"))return"function"}else return"null"; else if("function"==b&&"undefined"==typeof a.call)return"object";return b},u=function(a){return"array"==t(a)},fa=function(a){var b=t(a);return"array"==b||"object"==b&&"number"==typeof a.length},v=function(a){return"function"==t(a)},w=function(a){var b=typeof a;return"object"==b&&null!=a||"function"==b},ja=function(a){return a[ha]||(a[ha]=++ia)},ha="closure_uid_"+(1E9*Math.random()>>>0),ia=0,la=function(a,b,c){return a.call.apply(a.bind,arguments)},ma=function(a,b,c){if(!a)throw Error();if(2<arguments.length){var d= Array.prototype.slice.call(arguments,2);return function(){var c=Array.prototype.slice.call(arguments);Array.prototype.unshift.apply(c,d);return a.apply(b,c)}}return function(){return a.apply(b,arguments)}},x=function(a,b,c){x=Function.prototype.bind&&-1!=Function.prototype.bind.toString().indexOf("native code")?la:ma;return x.apply(null,arguments)},na=function(a,b){var c=Array.prototype.slice.call(arguments,1);return function(){var b=c.slice();b.push.apply(b,arguments);return a.apply(this,b)}},y= Date.now||function(){return+new Date},z=function(a,b){function c(){}c.prototype=b.prototype;a.C=b.prototype;a.prototype=new c;a.prototype.constructor=a;a.Qd=function(a,c,f){for(var d=Array(arguments.length-2),e=2;e<arguments.length;e++)d[e-2]=arguments[e];return b.prototype[c].apply(a,d)}};var A=function(a){if(Error.captureStackTrace)Error.captureStackTrace(this,A);else{var b=Error().stack;b&&(this.stack=b)}a&&(this.message=String(a))};z(A,Error);A.prototype.name="CustomError";var oa;var pa=function(a,b){a=a.split("%s");for(var c="",d=a.length-1,e=0;e<d;e++)c+=a[e]+(e<b.length?b[e]:"%s");A.call(this,c+a[d])};z(pa,A);pa.prototype.name="AssertionError"; var qa=function(a,b,c,d){var e="Assertion failed";if(c){e+=": "+c;var f=d}else a&&(e+=": "+a,f=b);throw new pa(""+e,f||[]);},B=function(a,b,c){a||qa("",null,b,Array.prototype.slice.call(arguments,2));return a},ra=function(a,b){throw new pa("Failure"+(a?": "+a:""),Array.prototype.slice.call(arguments,1));},sa=function(a,b,c){ba(a)||qa("Expected number but got %s: %s.",[t(a),a],b,Array.prototype.slice.call(arguments,2));return a},ta=function(a,b,c){v(a)||qa("Expected function but got %s: %s.",[t(a), a],b,Array.prototype.slice.call(arguments,2))};var ua=Array.prototype.indexOf?function(a,b){B(null!=a.length);return Array.prototype.indexOf.call(a,b,void 0)}:function(a,b){if(q(a))return q(b)&&1==b.length?a.indexOf(b,0):-1;for(var c=0;c<a.length;c++)if(c in a&&a[c]===b)return c;return-1},va=Array.prototype.forEach?function(a,b,c){B(null!=a.length);Array.prototype.forEach.call(a,b,c)}:function(a,b,c){for(var d=a.length,e=q(a)?a.split(""):a,f=0;f<d;f++)f in e&&b.call(c,e[f],f,a)},wa=Array.prototype.map?function(a,b){B(null!=a.length);return Array.prototype.map.call(a, b,void 0)}:function(a,b){for(var c=a.length,d=Array(c),e=q(a)?a.split(""):a,f=0;f<c;f++)f in e&&(d[f]=b.call(void 0,e[f],f,a));return d},xa=Array.prototype.some?function(a,b){B(null!=a.length);return Array.prototype.some.call(a,b,void 0)}:function(a,b){for(var c=a.length,d=q(a)?a.split(""):a,e=0;e<c;e++)if(e in d&&b.call(void 0,d[e],e,a))return!0;return!1},za=function(a){a:{var b=ya;for(var c=a.length,d=q(a)?a.split(""):a,e=0;e<c;e++)if(e in d&&b.call(void 0,d[e],e,a)){b=e;break a}b=-1}return 0>b? null:q(a)?a.charAt(b):a[b]},Aa=function(a,b){b=ua(a,b);var c;if(c=0<=b)B(null!=a.length),Array.prototype.splice.call(a,b,1);return c},Ba=function(a){return Array.prototype.concat.apply([],arguments)},Ca=function(a){var b=a.length;if(0<b){for(var c=Array(b),d=0;d<b;d++)c[d]=a[d];return c}return[]};var Ea=function(a,b,c){for(var d in a)b.call(c,a[d],d,a)},Fa=function(a,b){for(var c in a)if(b.call(void 0,a[c],c,a))return!0;return!1},Ga="constructor hasOwnProperty isPrototypeOf propertyIsEnumerable toLocaleString toString valueOf".split(" "),Ha=function(a,b){for(var c,d,e=1;e<arguments.length;e++){d=arguments[e];for(c in d)a[c]=d[c];for(var f=0;f<Ga.length;f++)c=Ga[f],Object.prototype.hasOwnProperty.call(d,c)&&(a[c]=d[c])}};var Ia=String.prototype.trim?function(a){return a.trim()}:function(a){return/^[\s\xa0]*([\s\S]*?)[\s\xa0]*$/.exec(a)[1]},Qa=function(a){if(!Ja.test(a))return a;-1!=a.indexOf("&")&&(a=a.replace(Ka,"&"));-1!=a.indexOf("<")&&(a=a.replace(La,"<"));-1!=a.indexOf(">")&&(a=a.replace(Ma,">"));-1!=a.indexOf('"')&&(a=a.replace(Na,"""));-1!=a.indexOf("'")&&(a=a.replace(Oa,"'"));-1!=a.indexOf("\x00")&&(a=a.replace(Pa,"�"));return a},Ka=/&/g,La=/</g,Ma=/>/g,Na=/"/g,Oa=/'/g,Pa=/\x00/g,Ja= /[\x00&<>"']/,Ra=function(a,b){return a<b?-1:a>b?1:0};var Sa=function(a,b){this.xd=100;this.od=a;this.Hd=b;this.qb=0;this.mb=null};Sa.prototype.get=function(){if(0<this.qb){this.qb--;var a=this.mb;this.mb=a.next;a.next=null}else a=this.od();return a};Sa.prototype.put=function(a){this.Hd(a);this.qb<this.xd&&(this.qb++,a.next=this.mb,this.mb=a)};var Ta;a:{var Ua=m.navigator;if(Ua){var Va=Ua.userAgent;if(Va){Ta=Va;break a}}Ta=""}var C=function(a){return-1!=Ta.indexOf(a)};var Wa=function(a){m.setTimeout(function(){throw a;},0)},Xa,Ya=function(){var a=m.MessageChannel;"undefined"===typeof a&&"undefined"!==typeof window&&window.postMessage&&window.addEventListener&&!C("Presto")&&(a=function(){var a=document.createElement("IFRAME");a.style.display="none";a.src="";document.documentElement.appendChild(a);var b=a.contentWindow;a=b.document;a.open();a.write("");a.close();var c="callImmediate"+Math.random(),d="file:"==b.location.protocol?"*":b.location.protocol+"//"+b.location.host; a=x(function(a){if(("*"==d||a.origin==d)&&a.data==c)this.port1.onmessage()},this);b.addEventListener("message",a,!1);this.port1={};this.port2={postMessage:function(){b.postMessage(c,d)}}});if("undefined"!==typeof a&&!C("Trident")&&!C("MSIE")){var b=new a,c={},d=c;b.port1.onmessage=function(){if(n(c.next)){c=c.next;var a=c.uc;c.uc=null;a()}};return function(a){d.next={uc:a};d=d.next;b.port2.postMessage(0)}}return"undefined"!==typeof document&&"onreadystatechange"in document.createElement("SCRIPT")? function(a){var b=document.createElement("SCRIPT");b.onreadystatechange=function(){b.onreadystatechange=null;b.parentNode.removeChild(b);b=null;a();a=null};document.documentElement.appendChild(b)}:function(a){m.setTimeout(a,0)}};var Za=function(){this.Db=this.Aa=null},ab=new Sa(function(){return new $a},function(a){a.reset()});Za.prototype.add=function(a,b){var c=ab.get();c.set(a,b);this.Db?this.Db.next=c:(B(!this.Aa),this.Aa=c);this.Db=c};Za.prototype.remove=function(){var a=null;this.Aa&&(a=this.Aa,this.Aa=this.Aa.next,this.Aa||(this.Db=null),a.next=null);return a};var $a=function(){this.next=this.scope=this.Qb=null};$a.prototype.set=function(a,b){this.Qb=a;this.scope=b;this.next=null}; $a.prototype.reset=function(){this.next=this.scope=this.Qb=null};var fb=function(a,b){bb||cb();db||(bb(),db=!0);eb.add(a,b)},bb,cb=function(){if(m.Promise&&m.Promise.resolve){var a=m.Promise.resolve(void 0);bb=function(){a.then(gb)}}else bb=function(){var a=gb;!v(m.setImmediate)||m.Window&&m.Window.prototype&&!C("Edge")&&m.Window.prototype.setImmediate==m.setImmediate?(Xa||(Xa=Ya()),Xa(a)):m.setImmediate(a)}},db=!1,eb=new Za,gb=function(){for(var a;a=eb.remove();){try{a.Qb.call(a.scope)}catch(b){Wa(b)}ab.put(a)}db=!1};var hb=function(a){hb[" "](a);return a};hb[" "]=ea;var ib=function(a,b){try{return hb(a[b]),!0}catch(c){}return!1},kb=function(a,b){var c=jb;return Object.prototype.hasOwnProperty.call(c,a)?c[a]:c[a]=b(a)};var lb=C("Opera"),D=C("Trident")||C("MSIE"),mb=C("Edge"),nb=C("Gecko")&&!(-1!=Ta.toLowerCase().indexOf("webkit")&&!C("Edge"))&&!(C("Trident")||C("MSIE"))&&!C("Edge"),ob=-1!=Ta.toLowerCase().indexOf("webkit")&&!C("Edge"),pb=function(){var a=m.document;return a?a.documentMode:void 0},qb; a:{var rb="",sb=function(){var a=Ta;if(nb)return/rv:([^\);]+)(\)|;)/.exec(a);if(mb)return/Edge\/([\d\.]+)/.exec(a);if(D)return/\b(?:MSIE|rv)[: ]([^\);]+)(\)|;)/.exec(a);if(ob)return/WebKit\/(\S+)/.exec(a);if(lb)return/(?:Version)[ \/]?(\S+)/.exec(a)}();sb&&(rb=sb?sb[1]:"");if(D){var tb=pb();if(null!=tb&&tb>parseFloat(rb)){qb=String(tb);break a}}qb=rb} var ub=qb,jb={},vb=function(a){return kb(a,function(){for(var b=0,c=Ia(String(ub)).split("."),d=Ia(String(a)).split("."),e=Math.max(c.length,d.length),f=0;0==b&&f<e;f++){var h=c[f]||"",k=d[f]||"";do{h=/(\d*)(\D*)(.*)/.exec(h)||["","","",""];k=/(\d*)(\D*)(.*)/.exec(k)||["","","",""];if(0==h[0].length&&0==k[0].length)break;b=Ra(0==h[1].length?0:parseInt(h[1],10),0==k[1].length?0:parseInt(k[1],10))||Ra(0==h[2].length,0==k[2].length)||Ra(h[2],k[2]);h=h[3];k=k[3]}while(0==b)}return 0<=b})},wb;var xb=m.document; wb=xb&&D?pb()||("CSS1Compat"==xb.compatMode?parseInt(ub,10):5):void 0;var yb=Object.freeze||function(a){return a};var zb=function(){this.name="FINEST";this.value=300};zb.prototype.toString=function(){return this.name};var Ab=new zb;var E=function(){this.T=this.T;this.ta=this.ta};E.prototype.T=!1;E.prototype.Mb=function(){this.T||(this.T=!0,this.g())};var Bb=function(a,b){a.T?n(void 0)?b.call(void 0):b():(a.ta||(a.ta=[]),a.ta.push(n(void 0)?x(b,void 0):b))};E.prototype.g=function(){if(this.ta)for(;this.ta.length;)this.ta.shift()()};var F=function(a){a&&"function"==typeof a.Mb&&a.Mb()};var Cb;(Cb=!D)||(Cb=9<=Number(wb));var Db=Cb,Eb=D&&!vb("9"),Fb=function(){if(!m.addEventListener||!Object.defineProperty)return!1;var a=!1,b=Object.defineProperty({},"passive",{get:function(){a=!0}});m.addEventListener("test",ea,b);m.removeEventListener("test",ea,b);return a}();var Gb=function(a,b){this.type=a;this.currentTarget=this.target=b;this.defaultPrevented=this.xa=!1;this.Zc=!0};Gb.prototype.stopPropagation=function(){this.xa=!0};Gb.prototype.preventDefault=function(){this.defaultPrevented=!0;this.Zc=!1};var Hb=function(a,b){Gb.call(this,a?a.type:"");this.relatedTarget=this.currentTarget=this.target=null;this.button=this.screenY=this.screenX=this.clientY=this.clientX=this.offsetY=this.offsetX=0;this.key="";this.charCode=this.keyCode=0;this.metaKey=this.shiftKey=this.altKey=this.ctrlKey=!1;this.state=null;this.pointerId=0;this.pointerType="";this.ia=null;a&&this.Tb(a,b)};z(Hb,Gb);var Ib=yb({2:"touch",3:"pen",4:"mouse"}); Hb.prototype.Tb=function(a,b){var c=this.type=a.type,d=a.changedTouches?a.changedTouches[0]:null;this.target=a.target||a.srcElement;this.currentTarget=b;(b=a.relatedTarget)?nb&&(ib(b,"nodeName")||(b=null)):"mouseover"==c?b=a.fromElement:"mouseout"==c&&(b=a.toElement);this.relatedTarget=b;null===d?(this.offsetX=ob||void 0!==a.offsetX?a.offsetX:a.layerX,this.offsetY=ob||void 0!==a.offsetY?a.offsetY:a.layerY,this.clientX=void 0!==a.clientX?a.clientX:a.pageX,this.clientY=void 0!==a.clientY?a.clientY: a.pageY,this.screenX=a.screenX||0,this.screenY=a.screenY||0):(this.clientX=void 0!==d.clientX?d.clientX:d.pageX,this.clientY=void 0!==d.clientY?d.clientY:d.pageY,this.screenX=d.screenX||0,this.screenY=d.screenY||0);this.button=a.button;this.keyCode=a.keyCode||0;this.key=a.key||"";this.charCode=a.charCode||("keypress"==c?a.keyCode:0);this.ctrlKey=a.ctrlKey;this.altKey=a.altKey;this.shiftKey=a.shiftKey;this.metaKey=a.metaKey;this.pointerId=a.pointerId||0;this.pointerType=q(a.pointerType)?a.pointerType: Ib[a.pointerType]||"";this.state=a.state;this.ia=a;a.defaultPrevented&&this.preventDefault()};Hb.prototype.stopPropagation=function(){Hb.C.stopPropagation.call(this);this.ia.stopPropagation?this.ia.stopPropagation():this.ia.cancelBubble=!0};Hb.prototype.preventDefault=function(){Hb.C.preventDefault.call(this);var a=this.ia;if(a.preventDefault)a.preventDefault();else if(a.returnValue=!1,Eb)try{if(a.ctrlKey||112<=a.keyCode&&123>=a.keyCode)a.keyCode=-1}catch(b){}};var Jb="closure_listenable_"+(1E6*Math.random()|0),Kb=function(a){return!(!a||!a[Jb])},Lb=0;var Mb=function(a,b,c,d,e){this.listener=a;this.tb=null;this.src=b;this.type=c;this.capture=!!d;this.qa=e;this.key=++Lb;this.Ma=this.ib=!1},Nb=function(a){a.Ma=!0;a.listener=null;a.tb=null;a.src=null;a.qa=null};var Ob=function(a){this.src=a;this.u={};this.bb=0};Ob.prototype.add=function(a,b,c,d,e){var f=a.toString();a=this.u[f];a||(a=this.u[f]=[],this.bb++);var h=Pb(a,b,d,e);-1<h?(b=a[h],c||(b.ib=!1)):(b=new Mb(b,this.src,f,!!d,e),b.ib=c,a.push(b));return b};Ob.prototype.remove=function(a,b,c,d){a=a.toString();if(!(a in this.u))return!1;var e=this.u[a];b=Pb(e,b,c,d);return-1<b?(Nb(e[b]),B(null!=e.length),Array.prototype.splice.call(e,b,1),0==e.length&&(delete this.u[a],this.bb--),!0):!1}; var Qb=function(a,b){var c=b.type;c in a.u&&Aa(a.u[c],b)&&(Nb(b),0==a.u[c].length&&(delete a.u[c],a.bb--))};Ob.prototype.ub=function(a){a=a&&a.toString();var b=0,c;for(c in this.u)if(!a||c==a){for(var d=this.u[c],e=0;e<d.length;e++)++b,Nb(d[e]);delete this.u[c];this.bb--}};Ob.prototype.Sa=function(a,b,c,d){a=this.u[a.toString()];var e=-1;a&&(e=Pb(a,b,c,d));return-1<e?a[e]:null}; Ob.prototype.hasListener=function(a,b){var c=n(a),d=c?a.toString():"",e=n(b);return Fa(this.u,function(a){for(var f=0;f<a.length;++f)if(!(c&&a[f].type!=d||e&&a[f].capture!=b))return!0;return!1})};var Pb=function(a,b,c,d){for(var e=0;e<a.length;++e){var f=a[e];if(!f.Ma&&f.listener==b&&f.capture==!!c&&f.qa==d)return e}return-1};var Rb="closure_lm_"+(1E6*Math.random()|0),Sb={},Tb=0,Vb=function(a,b,c,d,e){if(d&&d.once)return Ub(a,b,c,d,e);if(u(b)){for(var f=0;f<b.length;f++)Vb(a,b[f],c,d,e);return null}c=Wb(c);return Kb(a)?a.Va(b,c,w(d)?!!d.capture:!!d,e):Xb(a,b,c,!1,d,e)},Xb=function(a,b,c,d,e,f){if(!b)throw Error("Invalid event type");var h=w(e)?!!e.capture:!!e,k=Yb(a);k||(a[Rb]=k=new Ob(a));c=k.add(b,c,d,h,f);if(c.tb)return c;d=Zb();c.tb=d;d.src=a;d.listener=c;if(a.addEventListener)Fb||(e=h),void 0===e&&(e=!1),a.addEventListener(b.toString(), d,e);else if(a.attachEvent)a.attachEvent($b(b.toString()),d);else if(a.addListener&&a.removeListener)B("change"===b,"MediaQueryList only has a change event"),a.addListener(d);else throw Error("addEventListener and attachEvent are unavailable.");Tb++;return c},Zb=function(){var a=ac,b=Db?function(c){return a.call(b.src,b.listener,c)}:function(c){c=a.call(b.src,b.listener,c);if(!c)return c};return b},Ub=function(a,b,c,d,e){if(u(b)){for(var f=0;f<b.length;f++)Ub(a,b[f],c,d,e);return null}c=Wb(c);return Kb(a)? a.Wb(b,c,w(d)?!!d.capture:!!d,e):Xb(a,b,c,!0,d,e)},bc=function(a,b,c,d,e){if(u(b))for(var f=0;f<b.length;f++)bc(a,b[f],c,d,e);else d=w(d)?!!d.capture:!!d,c=Wb(c),Kb(a)?a.kc(b,c,d,e):a&&(a=Yb(a))&&(b=a.Sa(b,c,d,e))&&cc(b)},cc=function(a){if(!ba(a)&&a&&!a.Ma){var b=a.src;if(Kb(b))Qb(b.M,a);else{var c=a.type,d=a.tb;b.removeEventListener?b.removeEventListener(c,d,a.capture):b.detachEvent?b.detachEvent($b(c),d):b.addListener&&b.removeListener&&b.removeListener(d);Tb--;(c=Yb(b))?(Qb(c,a),0==c.bb&&(c.src= null,b[Rb]=null)):Nb(a)}}},dc=function(a,b,c,d,e){c=Wb(c);d=!!d;return Kb(a)?a.Sa(b,c,d,e):a?(a=Yb(a))?a.Sa(b,c,d,e):null:null},$b=function(a){return a in Sb?Sb[a]:Sb[a]="on"+a},fc=function(a,b,c,d){var e=!0;if(a=Yb(a))if(b=a.u[b.toString()])for(b=b.concat(),a=0;a<b.length;a++){var f=b[a];f&&f.capture==c&&!f.Ma&&(f=ec(f,d),e=e&&!1!==f)}return e},ec=function(a,b){var c=a.listener,d=a.qa||a.src;a.ib&&cc(a);return c.call(d,b)},ac=function(a,b){if(a.Ma)return!0;if(!Db){var c=b||da("window.event");b=new Hb(c, this);var d=!0;if(!(0>c.keyCode||void 0!=c.returnValue)){a:{var e=!1;if(0==c.keyCode)try{c.keyCode=-1;break a}catch(h){e=!0}if(e||void 0==c.returnValue)c.returnValue=!0}c=[];for(e=b.currentTarget;e;e=e.parentNode)c.push(e);a=a.type;for(e=c.length-1;!b.xa&&0<=e;e--){b.currentTarget=c[e];var f=fc(c[e],a,!0,b);d=d&&f}for(e=0;!b.xa&&e<c.length;e++)b.currentTarget=c[e],f=fc(c[e],a,!1,b),d=d&&f}return d}return ec(a,new Hb(b,this))},Yb=function(a){a=a[Rb];return a instanceof Ob?a:null},gc="__closure_events_fn_"+ (1E9*Math.random()>>>0),Wb=function(a){B(a,"Listener can not be null.");if(v(a))return a;B(a.handleEvent,"An object listener must have handleEvent method.");a[gc]||(a[gc]=function(b){return a.handleEvent(b)});return a[gc]};var G=function(){E.call(this);this.M=new Ob(this);this.hd=this;this.ac=null};z(G,E);G.prototype[Jb]=!0;g=G.prototype;g.addEventListener=function(a,b,c,d){Vb(this,a,b,c,d)};g.removeEventListener=function(a,b,c,d){bc(this,a,b,c,d)}; g.dispatchEvent=function(a){hc(this);var b=this.ac;if(b){var c=[];for(var d=1;b;b=b.ac)c.push(b),B(1E3>++d,"infinite loop")}b=this.hd;d=a.type||a;if(q(a))a=new Gb(a,b);else if(a instanceof Gb)a.target=a.target||b;else{var e=a;a=new Gb(d,b);Ha(a,e)}e=!0;if(c)for(var f=c.length-1;!a.xa&&0<=f;f--){var h=a.currentTarget=c[f];e=ic(h,d,!0,a)&&e}a.xa||(h=a.currentTarget=b,e=ic(h,d,!0,a)&&e,a.xa||(e=ic(h,d,!1,a)&&e));if(c)for(f=0;!a.xa&&f<c.length;f++)h=a.currentTarget=c[f],e=ic(h,d,!1,a)&&e;return e}; g.g=function(){G.C.g.call(this);this.M&&this.M.ub(void 0);this.ac=null};g.Va=function(a,b,c,d){hc(this);return this.M.add(String(a),b,!1,c,d)};g.Wb=function(a,b,c,d){return this.M.add(String(a),b,!0,c,d)};g.kc=function(a,b,c,d){this.M.remove(String(a),b,c,d)};var ic=function(a,b,c,d){b=a.M.u[String(b)];if(!b)return!0;b=b.concat();for(var e=!0,f=0;f<b.length;++f){var h=b[f];if(h&&!h.Ma&&h.capture==c){var k=h.listener,p=h.qa||h.src;h.ib&&Qb(a.M,h);e=!1!==k.call(p,d)&&e}}return e&&0!=d.Zc}; G.prototype.Sa=function(a,b,c,d){return this.M.Sa(String(a),b,c,d)};G.prototype.hasListener=function(a,b){return this.M.hasListener(n(a)?String(a):void 0,b)};var hc=function(a){B(a.M,"Event target is not initialized. Did you call the superclass (goog.events.EventTarget) constructor?")};var jc="StopIteration"in m?m.StopIteration:{message:"StopIteration",stack:""},kc=function(){};kc.prototype.next=function(){throw jc;};kc.prototype.gd=function(){return this};var nc=function(a){var b=[];lc(new mc,a,b);return b.join("")},mc=function(){this.vb=void 0},lc=function(a,b,c){if(null==b)c.push("null");else{if("object"==typeof b){if(u(b)){var d=b;b=d.length;c.push("[");for(var e="",f=0;f<b;f++)c.push(e),e=d[f],lc(a,a.vb?a.vb.call(d,String(f),e):e,c),e=",";c.push("]");return}if(b instanceof String||b instanceof Number||b instanceof Boolean)b=b.valueOf();else{c.push("{");f="";for(d in b)Object.prototype.hasOwnProperty.call(b,d)&&(e=b[d],"function"!=typeof e&&(c.push(f), oc(d,c),c.push(":"),lc(a,a.vb?a.vb.call(b,d,e):e,c),f=","));c.push("}");return}}switch(typeof b){case "string":oc(b,c);break;case "number":c.push(isFinite(b)&&!isNaN(b)?String(b):"null");break;case "boolean":c.push(String(b));break;case "function":c.push("null");break;default:throw Error("Unknown type: "+typeof b);}}},pc={'"':'\\"',"\\":"\\\\","/":"\\/","\b":"\\b","\f":"\\f","\n":"\\n","\r":"\\r","\t":"\\t","\x0B":"\\u000b"},qc=/\uffff/.test("\uffff")?/[\\"\x00-\x1f\x7f-\uffff]/g:/[\\"\x00-\x1f\x7f-\xff]/g, oc=function(a,b){b.push('"',a.replace(qc,function(a){var b=pc[a];b||(b="\\u"+(a.charCodeAt(0)|65536).toString(16).substr(1),pc[a]=b);return b}),'"')};var I=function(a){var b=H.b;b&&b.log(Ab,a,void 0)},J=function(a,b,c){a&&a.Sd(b,c)},K=function(a,b,c){a&&a.Td(b,c)},L=function(a){var b=H.b;b&&b.info(a,void 0)},M=function(a,b){a&&a.Rd(b,void 0)};var rc=function(){};rc.prototype.tc=null;var tc=function(a){var b;(b=a.tc)||(b={},sc(a)&&(b[0]=!0,b[1]=!0),b=a.tc=b);return b};var uc,vc=function(){};z(vc,rc);var wc=function(a){return(a=sc(a))?new ActiveXObject(a):new XMLHttpRequest},sc=function(a){if(!a.Ic&&"undefined"==typeof XMLHttpRequest&&"undefined"!=typeof ActiveXObject){for(var b=["MSXML2.XMLHTTP.6.0","MSXML2.XMLHTTP.3.0","MSXML2.XMLHTTP","Microsoft.XMLHTTP"],c=0;c<b.length;c++){var d=b[c];try{return new ActiveXObject(d),a.Ic=d}catch(e){}}throw Error("Could not create ActiveXObject. ActiveX might be disabled, or MSXML might not be installed");}return a.Ic};uc=new vc;var xc=function(a,b){this.P={};this.h=[];this.cb=this.j=0;var c=arguments.length;if(1<c){if(c%2)throw Error("Uneven number of arguments");for(var d=0;d<c;d+=2)this.set(arguments[d],arguments[d+1])}else a&&this.addAll(a)};g=xc.prototype;g.W=function(){yc(this);for(var a=[],b=0;b<this.h.length;b++)a.push(this.P[this.h[b]]);return a};g.ba=function(){yc(this);return this.h.concat()};g.Pa=function(a){return zc(this.P,a)};g.clear=function(){this.P={};this.cb=this.j=this.h.length=0}; g.remove=function(a){return zc(this.P,a)?(delete this.P[a],this.j--,this.cb++,this.h.length>2*this.j&&yc(this),!0):!1};var yc=function(a){if(a.j!=a.h.length){for(var b=0,c=0;b<a.h.length;){var d=a.h[b];zc(a.P,d)&&(a.h[c++]=d);b++}a.h.length=c}if(a.j!=a.h.length){var e={};for(c=b=0;b<a.h.length;)d=a.h[b],zc(e,d)||(a.h[c++]=d,e[d]=1),b++;a.h.length=c}};g=xc.prototype;g.get=function(a,b){return zc(this.P,a)?this.P[a]:b}; g.set=function(a,b){zc(this.P,a)||(this.j++,this.h.push(a),this.cb++);this.P[a]=b};g.addAll=function(a){if(a instanceof xc)for(var b=a.ba(),c=0;c<b.length;c++)this.set(b[c],a.get(b[c]));else for(b in a)this.set(b,a[b])};g.forEach=function(a,b){for(var c=this.ba(),d=0;d<c.length;d++){var e=c[d],f=this.get(e);a.call(b,f,e,this)}};g.clone=function(){return new xc(this)}; g.gd=function(a){yc(this);var b=0,c=this.cb,d=this,e=new kc;e.next=function(){if(c!=d.cb)throw Error("The map has changed since the iterator was created");if(b>=d.h.length)throw jc;var e=d.h[b++];return a?e:d.P[e]};return e};var zc=function(a,b){return Object.prototype.hasOwnProperty.call(a,b)};var Ac=function(a){if(a.W&&"function"==typeof a.W)return a.W();if(q(a))return a.split("");if(fa(a)){for(var b=[],c=a.length,d=0;d<c;d++)b.push(a[d]);return b}b=[];c=0;for(d in a)b[c++]=a[d];return b},Bc=function(a,b,c){if(a.forEach&&"function"==typeof a.forEach)a.forEach(b,c);else if(fa(a)||q(a))va(a,b,c);else{if(a.ba&&"function"==typeof a.ba)var d=a.ba();else if(a.W&&"function"==typeof a.W)d=void 0;else if(fa(a)||q(a)){d=[];for(var e=a.length,f=0;f<e;f++)d.push(f)}else for(f in d=[],e=0,a)d[e++]= f;e=Ac(a);f=e.length;for(var h=0;h<f;h++)b.call(c,e[h],d&&d[h],a)}};var Cc=function(a){a.prototype.then=a.prototype.then;a.prototype.$goog_Thenable=!0},Dc=function(a){if(!a)return!1;try{return!!a.$goog_Thenable}catch(b){return!1}};var N=function(a,b){this.l=0;this.ea=void 0;this.Da=this.$=this.w=null;this.lb=this.Pb=!1;if(a!=ea)try{var c=this;a.call(b,function(a){Ec(c,2,a)},function(a){if(!(a instanceof Fc))try{if(a instanceof Error)throw a;throw Error("Promise rejected.");}catch(e){}Ec(c,3,a)})}catch(d){Ec(this,3,d)}},Gc=function(){this.next=this.context=this.Ka=this.ua=this.na=null;this.gb=!1};Gc.prototype.reset=function(){this.context=this.Ka=this.ua=this.na=null;this.gb=!1}; var Hc=new Sa(function(){return new Gc},function(a){a.reset()}),Ic=function(a,b,c){var d=Hc.get();d.ua=a;d.Ka=b;d.context=c;return d};N.prototype.then=function(a,b,c){null!=a&&ta(a,"opt_onFulfilled should be a function.");null!=b&&ta(b,"opt_onRejected should be a function. Did you pass opt_context as the second argument instead of the third?");return Jc(this,v(a)?a:null,v(b)?b:null,c)};Cc(N);N.prototype.cancel=function(a){0==this.l&&fb(function(){var b=new Fc(a);Kc(this,b)},this)}; var Kc=function(a,b){if(0==a.l)if(a.w){var c=a.w;if(c.$){for(var d=0,e=null,f=null,h=c.$;h&&(h.gb||(d++,h.na==a&&(e=h),!(e&&1<d)));h=h.next)e||(f=h);e&&(0==c.l&&1==d?Kc(c,b):(f?(d=f,B(c.$),B(null!=d),d.next==c.Da&&(c.Da=d),d.next=d.next.next):Lc(c),Mc(c,e,3,b)))}a.w=null}else Ec(a,3,b)},Oc=function(a,b){a.$||2!=a.l&&3!=a.l||Nc(a);B(null!=b.ua);a.Da?a.Da.next=b:a.$=b;a.Da=b},Jc=function(a,b,c,d){var e=Ic(null,null,null);e.na=new N(function(a,h){e.ua=b?function(c){try{var e=b.call(d,c);a(e)}catch(r){h(r)}}: a;e.Ka=c?function(b){try{var e=c.call(d,b);!n(e)&&b instanceof Fc?h(b):a(e)}catch(r){h(r)}}:h});e.na.w=a;Oc(a,e);return e.na};N.prototype.Nd=function(a){B(1==this.l);this.l=0;Ec(this,2,a)};N.prototype.Od=function(a){B(1==this.l);this.l=0;Ec(this,3,a)}; var Ec=function(a,b,c){if(0==a.l){a===c&&(b=3,c=new TypeError("Promise cannot resolve to itself"));a.l=1;a:{var d=c,e=a.Nd,f=a.Od;if(d instanceof N){null!=e&&ta(e,"opt_onFulfilled should be a function.");null!=f&&ta(f,"opt_onRejected should be a function. Did you pass opt_context as the second argument instead of the third?");Oc(d,Ic(e||ea,f||null,a));var h=!0}else if(Dc(d))d.then(e,f,a),h=!0;else{if(w(d))try{var k=d.then;if(v(k)){Pc(d,k,e,f,a);h=!0;break a}}catch(p){f.call(a,p);h=!0;break a}h=!1}}h|| (a.ea=c,a.l=b,a.w=null,Nc(a),3!=b||c instanceof Fc||Qc(a,c))}},Pc=function(a,b,c,d,e){var f=!1,h=function(a){f||(f=!0,c.call(e,a))},k=function(a){f||(f=!0,d.call(e,a))};try{b.call(a,h,k)}catch(p){k(p)}},Nc=function(a){a.Pb||(a.Pb=!0,fb(a.sd,a))},Lc=function(a){var b=null;a.$&&(b=a.$,a.$=b.next,b.next=null);a.$||(a.Da=null);null!=b&&B(null!=b.ua);return b};N.prototype.sd=function(){for(var a;a=Lc(this);)Mc(this,a,this.l,this.ea);this.Pb=!1}; var Mc=function(a,b,c,d){if(3==c&&b.Ka&&!b.gb)for(;a&&a.lb;a=a.w)a.lb=!1;if(b.na)b.na.w=null,Rc(b,c,d);else try{b.gb?b.ua.call(b.context):Rc(b,c,d)}catch(e){Sc.call(null,e)}Hc.put(b)},Rc=function(a,b,c){2==b?a.ua.call(a.context,c):a.Ka&&a.Ka.call(a.context,c)},Qc=function(a,b){a.lb=!0;fb(function(){a.lb&&Sc.call(null,b)})},Sc=Wa,Fc=function(a){A.call(this,a)};z(Fc,A);Fc.prototype.name="cancel";var Tc=function(a,b){G.call(this);this.sa=a||1;this.Na=b||m;this.Ib=x(this.Md,this);this.Vb=y()};z(Tc,G);g=Tc.prototype;g.enabled=!1;g.L=null;g.setInterval=function(a){this.sa=a;this.L&&this.enabled?(this.stop(),this.start()):this.L&&this.stop()}; g.Md=function(){if(this.enabled){var a=y()-this.Vb;0<a&&a<.8*this.sa?this.L=this.Na.setTimeout(this.Ib,this.sa-a):(this.L&&(this.Na.clearTimeout(this.L),this.L=null),this.dispatchEvent("tick"),this.enabled&&(this.L=this.Na.setTimeout(this.Ib,this.sa),this.Vb=y()))}};g.start=function(){this.enabled=!0;this.L||(this.L=this.Na.setTimeout(this.Ib,this.sa),this.Vb=y())};g.stop=function(){this.enabled=!1;this.L&&(this.Na.clearTimeout(this.L),this.L=null)};g.g=function(){Tc.C.g.call(this);this.stop();delete this.Na}; var Uc=function(a,b,c){if(v(a))c&&(a=x(a,c));else if(a&&"function"==typeof a.handleEvent)a=x(a.handleEvent,a);else throw Error("Invalid listener argument");return 2147483647<Number(b)?-1:m.setTimeout(a,b||0)};var Vc=/^(?:([^:/?#.]+):)?(?:\/\/(?:([^/?#]*)@)?([^/#?]*?)(?::([0-9]+))?(?=[/#?]|$))?([^?#]+)?(?:\?([^#]*))?(?:#([\s\S]*))?$/,Wc=function(a){var b=a.match(Vc);a=b[1];var c=b[2],d=b[3];b=b[4];var e="";a&&(e+=a+":");d&&(e+="//",c&&(e+=c+"@"),e+=d,b&&(e+=":"+b));return e},Xc=function(a,b){if(a){a=a.split("&");for(var c=0;c<a.length;c++){var d=a[c].indexOf("="),e=null;if(0<=d){var f=a[c].substring(0,d);e=a[c].substring(d+1)}else f=a[c];b(f,e?decodeURIComponent(e.replace(/\+/g," ")):"")}}};var O=function(a){G.call(this);this.headers=new xc;this.Fb=a||null;this.ga=!1;this.Eb=this.c=null;this.Ua=this.Kc=this.pb="";this.ra=this.Sb=this.nb=this.Ob=!1;this.ab=0;this.zb=null;this.Yc="";this.Cb=this.Fd=this.lc=!1};z(O,G);var Yc=/^https?$/i,Zc=["POST","PUT"],$c=[];O.prototype.md=function(){this.Mb();Aa($c,this)}; O.prototype.send=function(a,b,c,d){if(this.c)throw Error("[goog.net.XhrIo] Object is active with another request="+this.pb+"; newUri="+a);b=b?b.toUpperCase():"GET";this.pb=a;this.Ua="";this.Kc=b;this.Ob=!1;this.ga=!0;this.c=this.Fb?wc(this.Fb):wc(uc);this.Eb=this.Fb?tc(this.Fb):tc(uc);this.c.onreadystatechange=x(this.Qc,this);this.Fd&&"onprogress"in this.c&&(this.c.onprogress=x(function(a){this.Pc(a,!0)},this),this.c.upload&&(this.c.upload.onprogress=x(this.Pc,this)));try{M(this.O,P(this,"Opening Xhr")), this.Sb=!0,this.c.open(b,String(a),!0),this.Sb=!1}catch(f){M(this.O,P(this,"Error opening Xhr: "+f.message));this.kb(5,f);return}a=c||"";var e=this.headers.clone();d&&Bc(d,function(a,b){e.set(b,a)});d=za(e.ba());c=m.FormData&&a instanceof m.FormData;!(0<=ua(Zc,b))||d||c||e.set("Content-Type","application/x-www-form-urlencoded;charset=utf-8");e.forEach(function(a,b){this.c.setRequestHeader(b,a)},this);this.Yc&&(this.c.responseType=this.Yc);"withCredentials"in this.c&&this.c.withCredentials!==this.lc&& (this.c.withCredentials=this.lc);try{ad(this),0<this.ab&&(this.Cb=bd(this.c),M(this.O,P(this,"Will abort after "+this.ab+"ms if incomplete, xhr2 "+this.Cb)),this.Cb?(this.c.timeout=this.ab,this.c.ontimeout=x(this.ad,this)):this.zb=Uc(this.ad,this.ab,this)),M(this.O,P(this,"Sending request")),this.nb=!0,this.c.send(a),this.nb=!1}catch(f){M(this.O,P(this,"Send error: "+f.message)),this.kb(5,f)}}; var bd=function(a){return D&&vb(9)&&ba(a.timeout)&&n(a.ontimeout)},ya=function(a){return"content-type"==a.toLowerCase()};O.prototype.ad=function(){"undefined"!=typeof aa&&this.c&&(this.Ua="Timed out after "+this.ab+"ms, aborting",M(this.O,P(this,this.Ua)),this.dispatchEvent("timeout"),this.abort(8))};O.prototype.kb=function(a,b){this.ga=!1;this.c&&(this.ra=!0,this.c.abort(),this.ra=!1);this.Ua=b;cd(this);dd(this)};var cd=function(a){a.Ob||(a.Ob=!0,a.dispatchEvent("complete"),a.dispatchEvent("error"))}; O.prototype.abort=function(){this.c&&this.ga&&(M(this.O,P(this,"Aborting")),this.ga=!1,this.ra=!0,this.c.abort(),this.ra=!1,this.dispatchEvent("complete"),this.dispatchEvent("abort"),dd(this))};O.prototype.g=function(){this.c&&(this.ga&&(this.ga=!1,this.ra=!0,this.c.abort(),this.ra=!1),dd(this,!0));O.C.g.call(this)};O.prototype.Qc=function(){this.T||(this.Sb||this.nb||this.ra?ed(this):this.zd())};O.prototype.zd=function(){ed(this)}; var ed=function(a){if(a.ga&&"undefined"!=typeof aa)if(a.Eb[1]&&4==fd(a)&&2==gd(a))M(a.O,P(a,"Local request error detected and ignored"));else if(a.nb&&4==fd(a))Uc(a.Qc,0,a);else if(a.dispatchEvent("readystatechange"),4==fd(a)){M(a.O,P(a,"Request complete"));a.ga=!1;try{if(hd(a))a.dispatchEvent("complete"),a.dispatchEvent("success");else{try{var b=2<fd(a)?a.c.statusText:""}catch(c){M(a.O,"Can not get status: "+c.message),b=""}a.Ua=b+" ["+gd(a)+"]";cd(a)}}finally{dd(a)}}}; O.prototype.Pc=function(a,b){B("progress"===a.type,"goog.net.EventType.PROGRESS is of the same type as raw XHR progress.");this.dispatchEvent(id(a,"progress"));this.dispatchEvent(id(a,b?"downloadprogress":"uploadprogress"))}; var id=function(a,b){return{type:b,lengthComputable:a.lengthComputable,loaded:a.loaded,total:a.total}},dd=function(a,b){if(a.c){ad(a);var c=a.c,d=a.Eb[0]?ea:null;a.c=null;a.Eb=null;b||a.dispatchEvent("ready");try{c.onreadystatechange=d}catch(e){J(a.O,"Problem encountered resetting onreadystatechange: "+e.message)}}},ad=function(a){a.c&&a.Cb&&(a.c.ontimeout=null);a.zb&&(m.clearTimeout(a.zb),a.zb=null)};O.prototype.Ub=function(){return!!this.c}; var hd=function(a){var b=gd(a);a:switch(b){case 200:case 201:case 202:case 204:case 206:case 304:case 1223:var c=!0;break a;default:c=!1}if(!c){if(b=0===b)a=String(a.pb).match(Vc)[1]||null,!a&&m.self&&m.self.location&&(a=m.self.location.protocol,a=a.substr(0,a.length-1)),b=!Yc.test(a?a.toLowerCase():"");c=b}return c},fd=function(a){return a.c?a.c.readyState:0},gd=function(a){try{return 2<fd(a)?a.c.status:-1}catch(b){return-1}},jd=function(a){try{return a.c?a.c.responseText:""}catch(b){return M(a.O, "Can not get responseText: "+b.message),""}};O.prototype.getResponseHeader=function(a){if(this.c&&4==fd(this))return a=this.c.getResponseHeader(a),null===a?void 0:a};O.prototype.getAllResponseHeaders=function(){return this.c&&4==fd(this)?this.c.getAllResponseHeaders()||"":""};var P=function(a,b){return b+" ["+a.Kc+" "+a.pb+" "+gd(a)+"]"};var Q=function(a){this.aa=this.za=this.ma="";this.La=null;this.pa=this.Z="";this.K=this.wd=!1;if(a instanceof Q){this.K=n(void 0)?void 0:a.K;kd(this,a.ma);var b=a.za;R(this);this.za=b;b=a.aa;R(this);this.aa=b;ld(this,a.La);b=a.Z;R(this);this.Z=b;md(this,a.F.clone());a=a.pa;R(this);this.pa=a}else a&&(b=String(a).match(Vc))?(this.K=!1,kd(this,b[1]||"",!0),a=b[2]||"",R(this),this.za=nd(a),a=b[3]||"",R(this),this.aa=nd(a,!0),ld(this,b[4]),a=b[5]||"",R(this),this.Z=nd(a,!0),md(this,b[6]||"",!0),a=b[7]|| "",R(this),this.pa=nd(a)):(this.K=!1,this.F=new od(null,this.K))}; Q.prototype.toString=function(){var a=[],b=this.ma;b&&a.push(pd(b,qd,!0),":");var c=this.aa;if(c||"file"==b)a.push("//"),(b=this.za)&&a.push(pd(b,qd,!0),"@"),a.push(encodeURIComponent(String(c)).replace(/%25([0-9a-fA-F]{2})/g,"%$1")),c=this.La,null!=c&&a.push(":",String(c));if(c=this.Z)this.aa&&"/"!=c.charAt(0)&&a.push("/"),a.push(pd(c,"/"==c.charAt(0)?rd:sd,!0));(c=this.F.toString())&&a.push("?",c);(c=this.pa)&&a.push("#",pd(c,td));return a.join("")}; Q.prototype.resolve=function(a){var b=this.clone(),c=!!a.ma;c?kd(b,a.ma):c=!!a.za;if(c){var d=a.za;R(b);b.za=d}else c=!!a.aa;c?(d=a.aa,R(b),b.aa=d):c=null!=a.La;d=a.Z;if(c)ld(b,a.La);else if(c=!!a.Z){if("/"!=d.charAt(0))if(this.aa&&!this.Z)d="/"+d;else{var e=b.Z.lastIndexOf("/");-1!=e&&(d=b.Z.substr(0,e+1)+d)}e=d;if(".."==e||"."==e)d="";else if(-1!=e.indexOf("./")||-1!=e.indexOf("/.")){d=0==e.lastIndexOf("/",0);e=e.split("/");for(var f=[],h=0;h<e.length;){var k=e[h++];"."==k?d&&h==e.length&&f.push(""): ".."==k?((1<f.length||1==f.length&&""!=f[0])&&f.pop(),d&&h==e.length&&f.push("")):(f.push(k),d=!0)}d=f.join("/")}else d=e}c?(R(b),b.Z=d):c=""!==a.F.toString();c?md(b,a.F.clone()):c=!!a.pa;c&&(a=a.pa,R(b),b.pa=a);return b};Q.prototype.clone=function(){return new Q(this)}; var kd=function(a,b,c){R(a);a.ma=c?nd(b,!0):b;a.ma&&(a.ma=a.ma.replace(/:$/,""))},ld=function(a,b){R(a);if(b){b=Number(b);if(isNaN(b)||0>b)throw Error("Bad port number "+b);a.La=b}else a.La=null},md=function(a,b,c){R(a);b instanceof od?(a.F=b,a.F.ic(a.K)):(c||(b=pd(b,ud)),a.F=new od(b,a.K))};Q.prototype.removeParameter=function(a){R(this);this.F.remove(a);return this};var R=function(a){if(a.wd)throw Error("Tried to modify a read-only Uri");};Q.prototype.ic=function(a){this.K=a;this.F&&this.F.ic(a)}; var nd=function(a,b){return a?b?decodeURI(a.replace(/%25/g,"%2525")):decodeURIComponent(a):""},pd=function(a,b,c){return q(a)?(a=encodeURI(a).replace(b,vd),c&&(a=a.replace(/%25([0-9a-fA-F]{2})/g,"%$1")),a):null},vd=function(a){a=a.charCodeAt(0);return"%"+(a>>4&15).toString(16)+(a&15).toString(16)},qd=/[#\/\?@]/g,sd=/[#\?:]/g,rd=/[#\?]/g,ud=/[#\?@]/g,td=/#/g,od=function(a,b){this.j=this.i=null;this.G=a||null;this.K=!!b},wd=function(a){a.i||(a.i=new xc,a.j=0,a.G&&Xc(a.G,function(b,c){a.add(decodeURIComponent(b.replace(/\+/g, " ")),c)}))};g=od.prototype;g.add=function(a,b){wd(this);this.G=null;a=xd(this,a);var c=this.i.get(a);c||this.i.set(a,c=[]);c.push(b);this.j=sa(this.j)+1;return this};g.remove=function(a){wd(this);a=xd(this,a);return this.i.Pa(a)?(this.G=null,this.j=sa(this.j)-this.i.get(a).length,this.i.remove(a)):!1};g.clear=function(){this.i=this.G=null;this.j=0};g.Pa=function(a){wd(this);a=xd(this,a);return this.i.Pa(a)}; g.forEach=function(a,b){wd(this);this.i.forEach(function(c,d){va(c,function(c){a.call(b,c,d,this)},this)},this)};g.ba=function(){wd(this);for(var a=this.i.W(),b=this.i.ba(),c=[],d=0;d<b.length;d++)for(var e=a[d],f=0;f<e.length;f++)c.push(b[d]);return c};g.W=function(a){wd(this);var b=[];if(q(a))this.Pa(a)&&(b=Ba(b,this.i.get(xd(this,a))));else{a=this.i.W();for(var c=0;c<a.length;c++)b=Ba(b,a[c])}return b}; g.set=function(a,b){wd(this);this.G=null;a=xd(this,a);this.Pa(a)&&(this.j=sa(this.j)-this.i.get(a).length);this.i.set(a,[b]);this.j=sa(this.j)+1;return this};g.get=function(a,b){a=a?this.W(a):[];return 0<a.length?String(a[0]):b}; g.toString=function(){if(this.G)return this.G;if(!this.i)return"";for(var a=[],b=this.i.ba(),c=0;c<b.length;c++){var d=b[c],e=encodeURIComponent(String(d));d=this.W(d);for(var f=0;f<d.length;f++){var h=e;""!==d[f]&&(h+="="+encodeURIComponent(String(d[f])));a.push(h)}}return this.G=a.join("&")};g.clone=function(){var a=new od;a.G=this.G;this.i&&(a.i=this.i.clone(),a.j=this.j);return a};var xd=function(a,b){b=String(b);a.K&&(b=b.toLowerCase());return b}; od.prototype.ic=function(a){a&&!this.K&&(wd(this),this.G=null,this.i.forEach(function(a,c){var b=c.toLowerCase();c!=b&&(this.remove(c),this.remove(b),0<a.length&&(this.G=null,this.i.set(xd(this,b),Ca(a)),this.j=sa(this.j)+a.length))},this));this.K=a};od.prototype.extend=function(a){for(var b=0;b<arguments.length;b++)Bc(arguments[b],function(a,b){this.add(b,a)},this)};var yd=function(a,b,c,d){a=new Q(a);0!=b&&(R(a),a.F.set("authuser",b));null!=c&&(R(a),a.F.set("service",c));this.Kd=a.toString();this.qa=d;this.yd=0};yd.prototype.start=function(){};yd.prototype.send=function(a,b,c){var d=new Q(this.Kd);for(k in c){var e=d,f=k,h=c[k];R(e);e.F.set(f,h)}c=d.toString();d=x(this.Hc,this,this.yd++);var k=new O;$c.push(k);d&&k.Va("complete",d);k.Wb("ready",k.md);k.lc=!0;k.send(c,"POST",a,b)}; yd.prototype.Hc=function(a,b){b=b.target;hd(b)?this.qa.oa.send("ss",[a]):(b=jd(b),this.qa.oa.send("sf",[a,b]))};var zd=function(a,b,c){E.call(this);this.Xb=a;this.sa=b||0;this.Ga=c;this.kd=x(this.rd,this)};z(zd,E);g=zd.prototype;g.N=0;g.g=function(){zd.C.g.call(this);this.stop();delete this.Xb;delete this.Ga};g.start=function(a){this.stop();this.N=Uc(this.kd,n(a)?a:this.sa)};g.stop=function(){this.Ub()&&m.clearTimeout(this.N);this.N=0};g.Ub=function(){return 0!=this.N};g.rd=function(){this.N=0;this.Xb&&this.Xb.call(this.Ga)};var Ad={area:!0,base:!0,br:!0,col:!0,command:!0,embed:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0};var Cd=function(){this.yb="";this.ed=Bd};Cd.prototype.ja=!0;Cd.prototype.V=function(){return this.yb};Cd.prototype.toString=function(){return"Const{"+this.yb+"}"};var Dd=function(a){if(a instanceof Cd&&a.constructor===Cd&&a.ed===Bd)return a.yb;ra("expected object of type Const, got '"+a+"'");return"type_error:Const"},Bd={},Ed=function(a){var b=new Cd;b.yb=a;return b};Ed("");var Gd=function(){this.dc="";this.fd=Fd};g=Gd.prototype;g.ja=!0;g.V=function(){return this.dc};g.Rb=!0;g.Ra=function(){return 1};g.toString=function(){return"TrustedResourceUrl{"+this.dc+"}"};var Fd={};var Id=function(){this.da="";this.dd=Hd};g=Id.prototype;g.ja=!0;g.V=function(){return this.da};g.Rb=!0;g.Ra=function(){return 1};g.toString=function(){return"SafeUrl{"+this.da+"}"}; var Jd=function(a){if(a instanceof Id&&a.constructor===Id&&a.dd===Hd)return a.da;ra("expected object of type SafeUrl, got '"+a+"' of type "+t(a));return"type_error:SafeUrl"},Kd=/^(?:(?:https?|mailto|ftp):|[^:/?#]*(?:[/?#]|$))/i,Md=function(a){if(a instanceof Id)return a;a=a.ja?a.V():String(a);Kd.test(a)||(a="about:invalid#zClosurez");return Ld(a)},Hd={},Ld=function(a){var b=new Id;b.da=a;return b};Ld("about:blank");var Od=function(){this.sb="";this.cd=Nd};Od.prototype.ja=!0;var Nd={};Od.prototype.V=function(){return this.sb};Od.prototype.toString=function(){return"SafeStyle{"+this.sb+"}"};Od.prototype.ob=function(a){this.sb=a;return this}; var Pd=(new Od).ob(""),Ud=function(a){if(a instanceof Id)return'url("'+Jd(a).replace(/</g,"%3c").replace(/[\\"]/g,"\\$&")+'")';if(a instanceof Cd)a=Dd(a);else{a=String(a);var b=a.replace(Qd,"$1").replace(Rd,"url");if(Sd.test(b)){for(var c=b=!0,d=0;d<a.length;d++){var e=a.charAt(d);"'"==e&&c?b=!b:'"'==e&&b&&(c=!c)}b&&c?a=Td(a):(ra("String value requires balanced quotes, got: "+a),a="zClosurez")}else ra("String value allows only [-,.\"'%_!# a-zA-Z0-9] and simple functions, got: "+a),a="zClosurez"}B(!/[{;}]/.test(a), "Value does not allow [{;}].");return a},Sd=/^[-,."'%_!# a-zA-Z0-9]+$/,Rd=/\b(url\([ \t\n]*)('[ -&(-\[\]-~]*'|"[ !#-\[\]-~]*"|[!#-&*-\[\]-~]*)([ \t\n]*\))/g,Qd=/\b(hsl|hsla|rgb|rgba|(rotate|scale|translate)(X|Y|Z|3d)?)\([-0-9a-z.%, ]+\)/g,Td=function(a){return a.replace(Rd,function(a,c,d,e){var b="";d=d.replace(/^(['"])(.*)\1$/,function(a,c,d){b=c;return d});a=Md(d).V();return c+b+a+b+e})};var Wd=function(){this.da="";this.bd=Vd;this.Cc=null};g=Wd.prototype;g.Rb=!0;g.Ra=function(){return this.Cc};g.ja=!0;g.V=function(){return this.da};g.toString=function(){return"SafeHtml{"+this.da+"}"}; var Xd=function(a){if(a instanceof Wd&&a.constructor===Wd&&a.bd===Vd)return a.da;ra("expected object of type SafeHtml, got '"+a+"' of type "+t(a));return"type_error:SafeHtml"},Yd=/^[a-zA-Z0-9-]+$/,Zd={action:!0,cite:!0,data:!0,formaction:!0,href:!0,manifest:!0,poster:!0,src:!0},be=function(a){var b=0,c="",d=function(a){if(u(a))va(a,d);else{if(!(a instanceof Wd)){var e=null;a.Rb&&(e=a.Ra());a=$d(Qa(a.ja?a.V():String(a)),e)}c+=Xd(a);a=a.Ra();0==b?b=a:0!=a&&b!=a&&(b=null)}};va(arguments,d);return $d(c, b)},Vd={},$d=function(a,b){return(new Wd).ob(a,b)};Wd.prototype.ob=function(a,b){this.da=a;this.Cc=b;return this};$d("<!DOCTYPE html>",0);$d("",0);$d("<br>",0);var ce={MATH:!0,SCRIPT:!0,STYLE:!0,SVG:!0,TEMPLATE:!0};var ee=function(a,b,c){function d(c){c&&b.appendChild(q(c)?a.createTextNode(c):c)}for(var e=1;e<c.length;e++){var f=c[e];!fa(f)||w(f)&&0<f.nodeType?d(f):va(de(f)?Ca(f):f,d)}},fe=function(a){return a&&a.parentNode?a.parentNode.removeChild(a):null},de=function(a){if(a&&"number"==typeof a.length){if(w(a))return"function"==typeof a.item||"string"==typeof a.item;if(v(a))return"function"==typeof a.item}return!1},ge=function(){this.Qa=m.document||document};g=ge.prototype; g.getElementsByTagName=function(a,b){return(b||this.Qa).getElementsByTagName(String(a))};g.createElement=function(a){return this.Qa.createElement(String(a))};g.createTextNode=function(a){return this.Qa.createTextNode(String(a))};g.f=function(){var a=this.Qa;return a.parentWindow||a.defaultView};g.appendChild=function(a,b){a.appendChild(b)};g.append=function(a,b){var c=a;B(c,"Node cannot be null or undefined.");ee(9==c.nodeType?c:c.ownerDocument||c.document,a,arguments)}; g.canHaveChildren=function(a){if(1!=a.nodeType)return!1;switch(a.tagName){case "APPLET":case "AREA":case "BASE":case "BR":case "COL":case "COMMAND":case "EMBED":case "FRAME":case "HR":case "IMG":case "INPUT":case "IFRAME":case "ISINDEX":case "KEYGEN":case "LINK":case "NOFRAMES":case "NOSCRIPT":case "META":case "OBJECT":case "PARAM":case "SCRIPT":case "SOURCE":case "STYLE":case "TRACK":case "WBR":return!1}return!0};g.removeNode=fe; g.contains=function(a,b){if(!a||!b)return!1;if(a.contains&&1==b.nodeType)return a==b||a.contains(b);if("undefined"!=typeof a.compareDocumentPosition)return a==b||!!(a.compareDocumentPosition(b)&16);for(;b&&a!=b;)b=b.parentNode;return b==a};var S=function(a){E.call(this);this.Ga=a;this.h={}};z(S,E);var he=[];S.prototype.Va=function(a,b,c,d){u(b)||(b&&(he[0]=b.toString()),b=he);for(var e=0;e<b.length;e++){var f=Vb(a,b[e],c||this.handleEvent,d||!1,this.Ga||this);if(!f)break;this.h[f.key]=f}return this};S.prototype.Wb=function(a,b,c,d){return ie(this,a,b,c,d)};var ie=function(a,b,c,d,e,f){if(u(c))for(var h=0;h<c.length;h++)ie(a,b,c[h],d,e,f);else{b=Ub(b,c,d||a.handleEvent,e,f||a.Ga||a);if(!b)return a;a.h[b.key]=b}return a}; S.prototype.kc=function(a,b,c,d,e){if(u(b))for(var f=0;f<b.length;f++)this.kc(a,b[f],c,d,e);else if(a=dc(a,b,c||this.handleEvent,w(d)?!!d.capture:!!d,e||this.Ga||this))cc(a),delete this.h[a.key]};S.prototype.ub=function(){Ea(this.h,function(a,b){this.h.hasOwnProperty(b)&&cc(a)},this);this.h={}};S.prototype.g=function(){S.C.g.call(this);this.ub()};S.prototype.handleEvent=function(){throw Error("EventHandler.handleEvent not implemented");};var je=function(){E.call(this);this.hc={}};z(je,E);je.prototype.connect=function(a){a&&a()};je.prototype.isConnected=function(){return!0};je.prototype.g=function(){je.C.g.call(this);delete this.hc;delete this.Bc};var H={};var ke={1:"NativeMessagingTransport",2:"FrameElementMethodTransport",3:"IframeRelayTransport",4:"IframePollingTransport",5:"FlashTransport",6:"NixTransport",7:"DirectTransport"},le=["pu","lru","pru","lpu","ppu"],T={},ne=function(){for(var a=10,b=me,c=b.length,d="";0<a--;)d+=b.charAt(Math.floor(Math.random()*c));return d},me="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";var U=function(a){E.call(this);this.U=a||oa||(oa=new ge)};z(U,E);U.prototype.ya=0;U.prototype.f=function(){return this.U.f()};U.prototype.getName=function(){return ke[String(this.ya)]||""};/* Portions of this code are from MochiKit, received by The Closure Authors under the MIT license. All other code is Copyright 2005-2009 The Closure Authors. All Rights Reserved. */ var V=function(a,b){this.fa=[];this.Oc=a;this.Ac=b||null;this.Ta=this.J=!1;this.ea=void 0;this.jc=this.sc=this.Hb=!1;this.Bb=0;this.w=null;this.hb=0};V.prototype.cancel=function(a){if(this.J)this.ea instanceof V&&this.ea.cancel();else{if(this.w){var b=this.w;delete this.w;a?b.cancel(a):(b.hb--,0>=b.hb&&b.cancel())}this.Oc?this.Oc.call(this.Ac,this):this.jc=!0;this.J||this.Dc(new oe(this))}};V.prototype.yc=function(a,b){this.Hb=!1;pe(this,a,b)}; var pe=function(a,b,c){a.J=!0;a.ea=c;a.Ta=!b;qe(a)},se=function(a){if(a.J){if(!a.jc)throw new re(a);a.jc=!1}};V.prototype.I=function(a){se(this);te(a);pe(this,!0,a)};V.prototype.Dc=function(a){se(this);te(a);pe(this,!1,a)};var te=function(a){B(!(a instanceof V),"An execution sequence may not be initiated with a blocking Deferred.")},ve=function(a,b,c){ue(a,b,null,c)},ue=function(a,b,c,d){B(!a.sc,"Blocking Deferreds can not be re-used");a.fa.push([b,c,d]);a.J&&qe(a)}; V.prototype.then=function(a,b,c){var d,e,f=new N(function(a,b){d=a;e=b});ue(this,d,function(a){a instanceof oe?f.cancel():e(a)});return f.then(a,b,c)};Cc(V);var we=function(a,b){b instanceof V?ve(a,x(b.jd,b)):ve(a,function(){return b})};V.prototype.jd=function(a){var b=new V;ue(this,b.I,b.Dc,b);a&&(b.w=this,this.hb++);return b}; var xe=function(a){return xa(a.fa,function(a){return v(a[1])})},qe=function(a){if(a.Bb&&a.J&&xe(a)){var b=a.Bb,c=ye[b];c&&(m.clearTimeout(c.N),delete ye[b]);a.Bb=0}a.w&&(a.w.hb--,delete a.w);b=a.ea;for(var d=c=!1;a.fa.length&&!a.Hb;){var e=a.fa.shift(),f=e[0],h=e[1];e=e[2];if(f=a.Ta?h:f)try{var k=f.call(e||a.Ac,b);n(k)&&(a.Ta=a.Ta&&(k==b||k instanceof Error),a.ea=b=k);if(Dc(b)||"function"===typeof m.Promise&&b instanceof m.Promise)d=!0,a.Hb=!0}catch(p){b=p,a.Ta=!0,xe(a)||(c=!0)}}a.ea=b;d&&(k=x(a.yc, a,!0),d=x(a.yc,a,!1),b instanceof V?(ue(b,k,d),b.sc=!0):b.then(k,d));c&&(b=new ze(b),ye[b.N]=b,a.Bb=b.N)},re=function(){A.call(this)};z(re,A);re.prototype.message="Deferred has already fired";re.prototype.name="AlreadyCalledError";var oe=function(){A.call(this)};z(oe,A);oe.prototype.message="Deferred was canceled";oe.prototype.name="CanceledError";var ze=function(a){this.N=m.setTimeout(x(this.Ld,this),0);this.kb=a}; ze.prototype.Ld=function(){B(ye[this.N],"Cannot throw an error that is not scheduled.");delete ye[this.N];throw this.kb;};var ye={};var Be=function(a,b){U.call(this,b);this.a=a;this.Fa=new S(this);Bb(this,na(F,this.Fa));this.Y=new Tc(100,this.f());Bb(this,na(F,this.Y));this.A=new V;this.B=new V;this.o=new V;this.Nb=ne();this.la=null;this.Ca={};this.Ad=this.a.name;Ae(this.a,this.a.name+"_"+W(this.a));this.X=!1;we(this.o,this.A);we(this.o,this.B);ve(this.o,this.Zb,this);this.o.I(!0);this.Fa.Va(this.Y,"tick",this.Wa);L("DirectTransport created. role="+W(this.a))};z(Be,U); var Ce={},Fe=function(a){var b=new De(a.channelName,a.service,a.payload);a=b.Jb;var c=b.$a;b=b.va;M(H.b,"messageReceived: channel="+a+", service="+c+", payload="+b);var d=T[a];if(d)return d.S(c,b),!0;d=Ee(b)[0];for(var e in T){var f=T[e];if(1==W(f)&&!f.isConnected()&&"tp"==c&&"SETUP"==d)return Ae(f,a),f.S(c,b),!0}L("channel name mismatch; message ignored.");return!1};g=Be.prototype;g.ya=7; g.Ab=function(a){a=Ee(a);var b=a[1];switch(a[0]){case "SETUP_ACK":this.A.J||this.A.I(!0);break;case "SETUP":this.xb(),null!=this.la&&this.la!=b&&(L("Sending SETUP and changing peer ID to: "+b),this.Ya()),this.la=b}};g.Ya=function(){this.send("tp","SETUP,"+this.Nb)};g.xb=function(){this.send("tp","SETUP_ACK");this.B.J||this.B.I(!0)}; g.connect=function(){var a=this.f();if(a){var b=ja(a);0==(Ce[b]||0)&&null==da("crosswindowmessaging.channel",a)&&ca("crosswindowmessaging.channel",Fe,a);Ce[b]++;this.X=!0;this.Wa()}else M(H.b,"connect(): no window to initialize.")};g.Wa=function(){this.a.isConnected()?this.Y.stop():(this.Y.start(),this.Ya())};g.send=function(a,b){this.a.H?(a=new De(this.Ad+"_"+(0==W(this.a)?1:0),a,b),this.a.m.directSyncMode?this.Ec(a):this.Ca[ja(a)]=Uc(x(this.Ec,this,a),0)):M(H.b,"send(): window not ready")}; g.Ec=function(a){var b=ja(a);this.Ca[b]&&delete this.Ca[b];try{var c=da("crosswindowmessaging.channel",this.a.H)}catch(d){K(H.b,"Can't access other window, ignoring.",d);return}if(null===c)K(H.b,"Peer window had no global function.");else try{c({channelName:a.Jb,service:a.$a,payload:a.va}),L("send(): channelName="+a.Jb+" service="+a.$a+" payload="+a.va)}catch(d){K(H.b,"Error performing call, ignoring.",d)}};g.Zb=function(){Ge(this.a,0)}; g.g=function(){if(this.X){var a=this.f(),b=ja(a);1==--Ce[b]&&ca("crosswindowmessaging.channel",null,a)}this.Ca&&(Ea(this.Ca,function(a){m.clearTimeout(a)}),this.Ca=null);this.A&&(this.A.cancel(),delete this.A);this.B&&(this.B.cancel(),delete this.B);this.o&&(this.o.cancel(),delete this.o);Be.C.g.call(this)};var Ee=function(a){a=a.split(",");a[1]=a[1]||null;return a},De=function(a,b,c){this.Jb=a;this.$a=b;this.va=c};var He=function(a,b){U.call(this,b);this.a=a;this.Xa=[];this.pd=x(this.qd,this)};z(He,U);g=He.prototype;g.ya=2;g.ec=!1;g.connect=function(){0==W(this.a)?(this.ca=this.a.Ha,this.ca.XPC_toOuter=x(this.Jc,this)):this.qc()}; g.qc=function(){var a=!0;try{this.ca||(this.ca=this.f().frameElement),this.ca&&this.ca.XPC_toOuter&&(this.$b=this.ca.XPC_toOuter,this.ca.XPC_toOuter.XPC_toInner=x(this.Jc,this),a=!1,this.send("tp","SETUP_ACK"),Ge(this.a))}catch(b){J(H.b,"exception caught while attempting setup: "+b)}a&&(this.pc||(this.pc=x(this.qc,this)),this.f().setTimeout(this.pc,100))}; g.Ab=function(a){if(0!=W(this.a)||this.a.isConnected()||"SETUP_ACK"!=a)throw Error("Got unexpected transport message.");this.$b=this.ca.XPC_toOuter.XPC_toInner;Ge(this.a)};g.Jc=function(a,b){this.ec||0!=this.Xa.length?(this.Xa.push({Jd:a,va:b}),1==this.Xa.length&&this.f().setTimeout(this.pd,1)):this.a.S(a,b)};g.qd=function(){for(;this.Xa.length;){var a=this.Xa.shift();this.a.S(a.Jd,a.va)}};g.send=function(a,b){this.ec=!0;this.$b(a,b);this.ec=!1};g.g=function(){He.C.g.call(this);this.ca=this.$b=null};var X=function(a,b){U.call(this,b);this.a=a;this.fc=this.a.m.ppu;this.Gd=this.a.m.lpu;this.wb=[]},Ie,Je;z(X,U);g=X.prototype;g.Cd=5;g.ya=4;g.fa=0;g.Oa=!1;g.X=!1;g.Wc=null;var Ke=function(a){return"googlexpc_"+a.a.name+"_msg"},Le=function(a){return"googlexpc_"+a.a.name+"_ack"},Ne=function(a){try{if(!a.T&&Me(a.a))return a.a.H.frames||{}}catch(b){M(H.b,"error retrieving peer frames")}return{}},Oe=function(a,b){return Ne(a)[b]}; X.prototype.connect=function(){if(!this.T&&Me(this.a)){M(H.b,"transport connect called");if(!this.X){M(H.b,"initializing...");var a=Ke(this);this.Ja=Pe(this,a);this.Yb=this.f().frames[a];a=Le(this);this.Ba=Pe(this,a);this.Gb=this.f().frames[a];this.X=!0}if(Qe(this,Ke(this))&&Qe(this,Le(this)))M(H.b,"foreign frames present"),this.Lc=new Re(this,Oe(this,Ke(this)),x(this.Ed,this)),this.mc=new Re(this,Oe(this,Le(this)),x(this.Dd,this)),this.wc();else{I("foreign frames not (yet) present");if(1==W(this.a))this.Wc|| 0<this.Cd--||(I("Inner peer reconnect triggered."),Ae(this.a,ne()),I("switching channels: "+this.a.name),Se(this),this.X=!1,this.Wc=Pe(this,"googlexpc_reconnect_"+this.a.name));else if(0==W(this.a)){I("outerPeerReconnect called");a=Ne(this);for(var b=a.length,c=0;c<b;c++){try{if(a[c]&&a[c].name)var d=a[c].name}catch(f){}if(d){var e=d.split("_");if(3==e.length&&"googlexpc"==e[0]&&"reconnect"==e[1]){this.a.name=e[2];Se(this);this.X=!1;break}}}}this.f().setTimeout(x(this.connect,this),100)}}}; var Pe=function(a,b){I("constructing sender frame: "+b);var c=document.createElement("IFRAME");var d=c.style;d.position="absolute";d.top="-10px";d.left="10px";d.width="1px";d.height="1px";c.id=c.name=b;c.src=a.fc+"#INITIAL";a.f().document.body.appendChild(c);return c},Se=function(a){I("deconstructSenderFrames called");a.Ja&&(a.Ja.parentNode.removeChild(a.Ja),a.Ja=null,a.Yb=null);a.Ba&&(a.Ba.parentNode.removeChild(a.Ba),a.Ba=null,a.Gb=null)},Qe=function(a,b){I("checking for receive frame: "+b);try{var c= Oe(a,b);if(!c||0!=c.location.href.indexOf(a.Gd))return!1}catch(d){return!1}return!0};X.prototype.wc=function(){var a=Ne(this);a[Le(this)]&&a[Ke(this)]?(this.Mc=new Te(this.fc,this.Yb),this.fb=new Te(this.fc,this.Gb),M(H.b,"local frames ready"),this.f().setTimeout(x(function(){this.Mc.send("SETUP");this.Oa=!0;M(H.b,"SETUP sent")},this),100)):(this.vc||(this.vc=x(this.wc,this)),this.f().setTimeout(this.vc,100),M(H.b,"local frames not (yet) present"))}; var Ue=function(a){if(a.gc&&a.Uc){if(Ge(a.a),a.Ea){M(H.b,"delivering queued messages ("+a.Ea.length+")");for(var b=0,c;b<a.Ea.length;b++)c=a.Ea[b],a.a.S(c.$a,c.va);delete a.Ea}}else I("checking if connected: ack sent:"+a.gc+", ack rcvd: "+a.Uc)}; X.prototype.Ed=function(a){I("msg received: "+a);if("SETUP"==a)this.fb&&(this.fb.send("SETUP_ACK"),I("SETUP_ACK sent"),this.gc=!0,Ue(this));else if(this.a.isConnected()||this.gc){var b=a.indexOf("|"),c=a.substring(0,b);a=a.substring(b+1);b=c.indexOf(",");if(-1==b)this.fb.send("ACK:"+c),Ve(this,a);else{var d=c.substring(0,b);this.fb.send("ACK:"+d);c=c.substring(b+1).split("/");b=parseInt(c[0],10);c=parseInt(c[1],10);1==b&&(this.bc=[]);this.bc.push(a);b==c&&(Ve(this,this.bc.join("")),delete this.bc)}}else K(H.b, "received msg, but channel is not connected")};X.prototype.Dd=function(a){I("ack received: "+a);"SETUP_ACK"==a?(this.Oa=!1,this.Uc=!0,Ue(this)):this.a.isConnected()?this.Oa?parseInt(a.split(":")[1],10)==this.fa?(this.Oa=!1,We(this)):K(H.b,"got ack with wrong sequence"):K(H.b,"got unexpected ack"):K(H.b,"received ack, but channel not connected")}; var We=function(a){if(!a.Oa&&a.wb.length){var b=a.wb.shift();++a.fa;a.Mc.send(a.fa+b);I("msg sent: "+a.fa+b);a.Oa=!0}},Ve=function(a,b){var c=b.indexOf(":"),d=b.substr(0,c);b=b.substring(c+1);a.a.isConnected()?a.a.S(d,b):((a.Ea||(a.Ea=[])).push({$a:d,va:b}),I("queued delivery"))};X.prototype.eb=3800; X.prototype.send=function(a,b){a=a+":"+b;if(!D||b.length<=this.eb)this.wb.push("|"+a);else{b=b.length;for(var c=Math.ceil(b/this.eb),d=0,e=1;d<b;)this.wb.push(","+e+"/"+c+"|"+a.substr(d,this.eb)),e++,d+=this.eb}We(this)};X.prototype.g=function(){X.C.g.call(this);var a=Xe;Aa(a,this.Lc);Aa(a,this.mc);this.Lc=this.mc=null;fe(this.Ja);fe(this.Ba);this.Yb=this.Gb=this.Ja=this.Ba=null}; var Xe=[],Ye=x(function(){var a=Xe,b,c=!1;try{for(var d=0;b=a[d];d++){var e;if(!(e=c)){var f=b,h=f.Tc.location.href;if(h!=f.zc){f.zc=h;var k=h.split("#")[1];k&&(k=k.substr(1),f.ld(decodeURIComponent(k)));e=!0}else e=!1}c=e}}catch(p){if(L("receive_() failed: "+p),b=b.v.a,L("Transport Error"),b.close(),!a.length)return}a=y();c&&(Ie=a);Je=window.setTimeout(Ye,1E3>a-Ie?10:100)},X),Ze=function(){M(H.b,"starting receive-timer");Ie=y();Je&&window.clearTimeout(Je);Je=window.setTimeout(Ye,10)},Te=function(a, b){if(!/^https?:\/\//.test(a))throw Error("URL "+a+" is invalid");this.Id=a;this.$c=b;this.Lb=0}; Te.prototype.send=function(a){this.Lb=++this.Lb%2;a=this.Id+"#"+this.Lb+encodeURIComponent(a);try{if(ob){var b=this.$c.location,c=b&&b.ownerDocument;var d=c&&(c.defaultView||c.parentWindow)||m;if("undefined"!=typeof d.Location&&"undefined"!=typeof d.Element){var e=b&&(b instanceof d.Location||!(b instanceof d.Element));var f=w(b)?b.constructor.displayName||b.constructor.name||Object.prototype.toString.call(b):void 0===b?"undefined":null===b?"null":typeof b;B(e,"Argument is not a Location (or a non-Element mock); got: %s", f)}if(a instanceof Id)var h=a;else d=a,d instanceof Id?h=d:(d=d.ja?d.V():String(d),B(Kd.test(d))||(d="about:invalid#zClosurez"),h=Ld(d));b.href=Jd(h)}else this.$c.location.replace(a)}catch(k){J(H.b,"sending failed",k)}Ze()};var Re=function(a,b,c){this.v=a;this.Tc=b;this.ld=c;this.zc=this.Tc.location.href.split("#")[0]+"#INITIAL";Xe.push(this);Ze()};var af=function(a,b){U.call(this,b);this.a=a;this.Bd=this.a.m.pru;this.Sc=this.a.m.ifrid;ob&&$e()};z(af,U);if(ob)var bf=[],cf=0,$e=function(){cf||(cf=window.setTimeout(function(){df()},1E3))},df=function(a){var b=y();for(a=a||3E3;bf.length&&b-bf[0].timestamp>=a;){var c=bf.shift().vd;fe(c);I("iframe removed")}cf=window.setTimeout(ef,1E3)},ef=function(){df()};var ff={};af.prototype.ya=3;af.prototype.connect=function(){this.f().xpcRelay||(this.f().xpcRelay=gf);this.send("tp","SETUP")}; var gf=function(a,b){var c=b.indexOf(":"),d=b.substr(0,c);b=b.substr(c+1);if(D&&-1!=(c=d.indexOf("|"))){h=d.substr(0,c);d=d.substr(c+1);c=d.indexOf("+");var e=d.substr(0,c);c=parseInt(d.substr(c+1),10);var f=ff[e];f||(f=ff[e]={Gc:[],Vc:0,Fc:0});-1!=d.indexOf("++")&&(f.Fc=c+1);f.Gc[c]=b;f.Vc++;if(f.Vc!=f.Fc)return;b=f.Gc.join("");delete ff[e]}else var h=d;T[a].S(h,decodeURIComponent(b))};af.prototype.Ab=function(a){"SETUP"==a?(this.send("tp","SETUP_ACK"),Ge(this.a)):"SETUP_ACK"==a&&Ge(this.a)}; af.prototype.send=function(a,b){b=encodeURIComponent(b);var c=b.length;if(D&&1800<c)for(var d=Math.floor(2147483648*Math.random()).toString(36)+Math.abs(Math.floor(2147483648*Math.random())^y()).toString(36),e=0,f=0;e<c;f++){var h=b.substr(e,1800);e+=1800;hf(this,a,h,d+(e>=c?"++":"+")+f)}else hf(this,a,b)}; var hf=function(a,b,c,d){if(D){var e=a.f().document.createElement("DIV"),f={onload:Ed("this.xpcOnload()"),sandbox:null},h={src:null,srcdoc:null},k={sandbox:""};var p={};for(var r in h)B(r.toLowerCase()==r,"Must be lower case"),p[r]=h[r];for(r in k)B(r.toLowerCase()==r,"Must be lower case"),p[r]=k[r];for(r in f){var l=r.toLowerCase();if(l in h)throw Error('Cannot override "'+l+'" attribute, got "'+r+'" with value "'+f[r]+'"');l in k&&delete p[l];p[r]=f[r]}f=null;h="";if(p)for(ka in p){if(!Yd.test(ka))throw Error('Invalid attribute name "'+ ka+'".');r=p[ka];if(null!=r){k=ka;l=r;if(l instanceof Cd)l=Dd(l);else if("style"==k.toLowerCase()){r=void 0;if(!w(l))throw Error('The "style" attribute requires goog.html.SafeStyle or map of style properties, '+typeof l+" given: "+l);if(!(l instanceof Od)){var ae=l;l="";for(r in ae){if(!/^[-_a-zA-Z0-9]+$/.test(r))throw Error("Name allows only [-_a-zA-Z0-9], got: "+r);var Da=ae[r];null!=Da&&(Da=u(Da)?wa(Da,Ud).join(" "):Ud(Da),l+=r+":"+Da+";")}l?(r=l,B(!/[<>]/.test(r),"Forbidden characters in style string: "+ r),l=(new Od).ob(l)):l=Pd}l instanceof Od&&l.constructor===Od&&l.cd===Nd?r=l.sb:(ra("expected object of type SafeStyle, got '"+l+"' of type "+t(l)),r="type_error:SafeStyle");l=r}else{if(/^on/i.test(k))throw Error('Attribute "'+k+'" requires goog.string.Const value, "'+l+'" given.');if(k.toLowerCase()in Zd)if(l instanceof Gd)l instanceof Gd&&l.constructor===Gd&&l.fd===Fd?l=l.dc:(ra("expected object of type TrustedResourceUrl, got '"+l+"' of type "+t(l)),l="type_error:TrustedResourceUrl");else if(l instanceof Id)l=Jd(l);else if(q(l))l=Md(l).V();else throw Error('Attribute "'+k+'" on tag "iframe" requires goog.html.SafeUrl, goog.string.Const, or string, value "'+l+'" given.');}l.ja&&(l=l.V());B(q(l)||ba(l),"String or number value expected, got "+typeof l+" with value: "+l);k=k+'="'+Qa(String(l))+'"';h+=" "+k}}var ka="<iframe"+h;h=void 0;null!=h?u(h)||(h=[h]):h=[];!0===Ad.iframe?(B(!h.length,"Void tag <iframe> does not allow content."),ka+=">"):(f=be(h),ka+=">"+Xd(f)+"</iframe>",f=f.Ra());(p=p&&p.dir)&& (f=/^(ltr|rtl|auto)$/i.test(p)?0:null);p=$d(ka,f);if(ce[e.tagName.toUpperCase()])throw Error("goog.dom.safe.setInnerHtml cannot be used to set content of "+e.tagName+".");e.innerHTML=Xd(p);e=e.childNodes[0];e.xpcOnload=jf}else e=a.f().document.createElement("IFRAME"),ob?bf.push({timestamp:y(),vd:e}):Vb(e,"load",jf);p=e.style;p.visibility="hidden";p.width=e.style.height="0px";p.position="absolute";p=a.Bd;p+="#"+a.a.name;a.Sc&&(p+=","+a.Sc);p+="|"+b;d&&(p+="|"+d);p+=":"+c;e.src=p;a.f().document.body.appendChild(e); I("msg sent: "+p)},jf=function(){I("iframe-load");fe(this)};af.prototype.g=function(){af.C.g.call(this);ob&&df(0)};var Y=function(a,b,c,d,e){U.call(this,c);this.a=a;this.R=e||2;B(1<=this.R);B(2>=this.R);this.Rc=b||"*";this.Fa=new S(this);this.Y=new Tc(100,this.f());this.rb=!!d;this.A=new V;this.B=new V;this.o=new V;this.Nb=ne();this.la=null;this.rb?1==W(this.a)?we(this.o,this.A):we(this.o,this.B):(we(this.o,this.A),2==this.R&&we(this.o,this.B));ve(this.o,this.Zb,this);this.o.I(!0);this.Fa.Va(this.Y,"tick",this.Wa);L("NativeMessagingTransport created. protocolVersion="+this.R+", oneSidedHandshake="+this.rb+", role="+ W(this.a))};z(Y,U);Y.prototype.D=null;Y.prototype.X=!1;Y.prototype.ya=1;var kf={};Y.prototype.Za=0; var nf=function(a){var b=a.ia.data;if(!q(b))return!1;var c=b.indexOf("|"),d=b.indexOf(":");if(-1==c||-1==d)return!1;var e=b.substring(0,c);c=b.substring(c+1,d);b=b.substring(d+1);M(H.b,"messageReceived: channel="+e+", service="+c+", payload="+b);if(d=T[e])return d.S(c,b,a.ia.origin),!0;d=lf(b)[0];for(var f in T){var h=T[f];if(1==W(h)&&!h.isConnected()&&"tp"==c&&("SETUP"==d||"SETUP_NTPV2"==d)&&mf(h,a.ia.origin))return Ae(h,e),h.S(c,b),!0}L('channel name mismatch; message ignored"');return!1}; Y.prototype.Ab=function(a){var b=lf(a);a=b[1];switch(b[0]){case "SETUP_ACK":of(this,1);this.A.J||this.A.I(!0);break;case "SETUP_ACK_NTPV2":2==this.R&&(of(this,2),this.A.J||this.A.I(!0));break;case "SETUP":of(this,1);this.xb(1);break;case "SETUP_NTPV2":2==this.R&&(b=this.D,of(this,2),this.xb(2),1!=b&&null==this.la||this.la==a||(L("Sending SETUP and changing peer ID to: "+a),this.Ya()),this.la=a)}}; Y.prototype.Ya=function(){B(!(1==this.R&&2==this.D));2!=this.R||null!=this.D&&2!=this.D||this.send("tp","SETUP_NTPV2,"+this.Nb);null!=this.D&&1!=this.D||this.send("tp","SETUP")};Y.prototype.xb=function(a){B(1!=this.R||2!=a,"Shouldn't try to send a v2 setup ack in v1 mode.");if(2!=this.R||null!=this.D&&2!=this.D||2!=a){if(null!=this.D&&1!=this.D||1!=a)return;this.send("tp","SETUP_ACK")}else this.send("tp","SETUP_ACK_NTPV2");this.B.J||this.B.I(!0)}; var of=function(a,b){b>a.D&&(a.D=b);1==a.D&&(a.B.J||a.rb||a.B.I(!0),a.la=null)};g=Y.prototype;g.connect=function(){var a=this.f(),b=ja(a),c=kf[b];ba(c)||(c=0);0==c&&Vb(a.postMessage?a:a.document,"message",nf,!1,Y);kf[b]=c+1;this.X=!0;this.Wa()};g.Wa=function(){var a=0==W(this.a);this.rb&&a||this.a.isConnected()||this.T?this.Y.stop():(this.Y.start(),this.Ya())}; g.send=function(a,b){var c=this.a.H;c?(this.send=function(a,b){var d=this,e=this.a.name;this.Za=Uc(function(){d.Za=0;try{var f=c.postMessage?c:c.document;f.postMessage?(f.postMessage(e+"|"+a+":"+b,d.Rc),M(H.b,"send(): service="+a+" payload="+b+" to hostname="+d.Rc)):K(H.b,"Peer window had no postMessage function.")}catch(p){K(H.b,"Error performing postMessage, ignoring.",p)}},0)},this.send(a,b)):M(H.b,"send(): window not ready")};g.Zb=function(){Ge(this.a,1==this.R||1==this.D?200:void 0)}; g.g=function(){if(this.X){var a=this.f(),b=ja(a),c=kf[b];kf[b]=c-1;1==c&&bc(a.postMessage?a:a.document,"message",nf,!1,Y)}this.Za&&(m.clearTimeout(this.Za),this.Za=0);F(this.Fa);delete this.Fa;F(this.Y);delete this.Y;this.A.cancel();delete this.A;this.B.cancel();delete this.B;this.o.cancel();delete this.o;delete this.send;Y.C.g.call(this)};var lf=function(a){a=a.split(",");a[1]=a[1]||null;return a};var pf=function(a,b){U.call(this,b);this.a=a;this.rc=a.at||"";this.Xc=a.rat||"";a=this.f();if(!a.nix_setup_complete)try{a.execScript("Class GCXPC____NIXVBS_wrapper\n Private m_Transport\nPrivate m_Auth\nPublic Sub SetTransport(transport)\nIf isEmpty(m_Transport) Then\nSet m_Transport = transport\nEnd If\nEnd Sub\nPublic Sub SetAuth(auth)\nIf isEmpty(m_Auth) Then\nm_Auth = auth\nEnd If\nEnd Sub\nPublic Function GetAuthToken()\n GetAuthToken = m_Auth\nEnd Function\nPublic Sub SendMessage(service, payload)\n Call m_Transport.GCXPC____NIXJS_handle_message(service, payload)\nEnd Sub\nPublic Sub CreateChannel(channel)\n Call m_Transport.GCXPC____NIXJS_create_channel(channel)\nEnd Sub\nPublic Sub GCXPC____NIXVBS_container()\n End Sub\nEnd Class\n Function GCXPC____NIXVBS_get_wrapper(transport, auth)\nDim wrap\nSet wrap = New GCXPC____NIXVBS_wrapper\nwrap.SetTransport transport\nwrap.SetAuth auth\nSet GCXPC____NIXVBS_get_wrapper = wrap\nEnd Function", "vbscript"),a.nix_setup_complete=!0}catch(c){J(H.b,"exception caught while attempting global setup: "+c)}this.GCXPC____NIXJS_handle_message=this.ud;this.GCXPC____NIXJS_create_channel=this.nd};z(pf,U);g=pf.prototype;g.ya=6;g.Ia=!1;g.ka=null;g.connect=function(){0==W(this.a)?this.oc():this.nc()}; g.oc=function(){if(!this.Ia){var a=this.a.Ha;try{a.contentWindow.opener=(0,this.f().GCXPC____NIXVBS_get_wrapper)(this,this.rc),this.Ia=!0}catch(b){J(H.b,"exception caught while attempting setup: "+b)}this.Ia||this.f().setTimeout(x(this.oc,this),100)}}; g.nc=function(){if(!this.Ia){try{var a=this.f().opener;if(a&&"GCXPC____NIXVBS_container"in a){this.ka=a;if(this.ka.GetAuthToken()!=this.Xc){J(H.b,"Invalid auth token from other party");return}this.ka.CreateChannel((0,this.f().GCXPC____NIXVBS_get_wrapper)(this,this.rc));this.Ia=!0;Ge(this.a)}}catch(b){J(H.b,"exception caught while attempting setup: "+b);return}this.Ia||this.f().setTimeout(x(this.nc,this),100)}}; g.nd=function(a){"unknown"==typeof a&&"GCXPC____NIXVBS_container"in a||J(H.b,"Invalid NIX channel given to createChannel_");this.ka=a;this.ka.GetAuthToken()!=this.Xc?J(H.b,"Invalid auth token from other party"):Ge(this.a)};g.ud=function(a,b){this.f().setTimeout(x(function(){this.a.S(a,b)},this),1)};g.send=function(a,b){"unknown"!==typeof this.ka&&J(H.b,"NIX channel not connected");this.ka.SendMessage(a,b)};g.g=function(){pf.C.g.call(this);this.ka=null};var Z=function(a,b){je.call(this);for(var c=0,d;d=le[c];c++)if(d in a&&!/^https?:\/\//.test(a[d]))throw Error("URI "+a[d]+" is invalid for field "+d);this.m=a;this.name=this.m.cn||ne();this.U=b||oa||(oa=new ge);this.jb=[];this.cc=new S(this);a.lpu=a.lpu||Wc(this.U.f().location.href)+"/robots.txt";a.ppu=a.ppu||Wc(a.pu||"")+"/robots.txt";T[this.name]=this;dc(window,"unload",qf)||Ub(window,"unload",qf);L("CrossPageChannel created: "+this.name)};z(Z,je);var rf=/^%*tp$/,sf=/^%+tp$/;g=Z.prototype; g.ha=null;g.wa=null;g.v=null;g.l=1;g.isConnected=function(){return 2==this.l};g.H=null;g.Ha=null;var Me=function(a){try{return!!a.H&&!a.H.closed}catch(b){return!1}};Z.prototype.connect=function(a){this.Kb=a||ea;3==this.l&&(this.l=1);this.wa?ve(this.wa,this.xc):this.xc()}; Z.prototype.xc=function(){L("continueConnection_()");this.wa=null;if(this.m.ifrid){var a=this.m.ifrid;this.Ha=q(a)?this.U.Qa.getElementById(a):a}this.Ha&&((a=this.Ha.contentWindow)||(a=window.frames[this.m.ifrid]),this.H=a);if(!this.H){if(window==window.top)throw Error("CrossPageChannel: Can't connect, peer window-object not set.");this.H=window.parent}if(!this.v){if(!this.m.tp){a=this.m;if(v(document.postMessage)||v(window.postMessage)||D&&window.postMessage)var b=1;else if(nb)b=2;else if(D&&this.m.pru)b= 3;else{var c;if(c=D){c=!1;try{b=window.opener,window.opener={},c=ib(window,"opener"),window.opener=b}catch(d){}}b=c?6:4}a.tp=b}switch(this.m.tp){case 1:this.v=new Y(this,this.m.ph,this.U,!!this.m.osh,this.m.nativeProtocolVersion||2);break;case 6:this.v=new pf(this,this.U);break;case 2:this.v=new He(this,this.U);break;case 3:this.v=new af(this,this.U);break;case 4:this.v=new X(this,this.U);break;case 7:if(a=this.H)try{a=window.document.domain==this.H.document.domain}catch(d){a=!1}a?this.v=new Be(this, this.U):L("DirectTransport not supported for this window, peer window in different security context or not set yet.")}if(this.v)L("Transport created: "+this.v.getName());else throw Error("CrossPageChannel: No suitable transport found!");}for(this.v.connect();0<this.jb.length;)this.jb.shift()()};Z.prototype.close=function(){this.wa&&(this.wa.cancel(),this.wa=null);this.jb.length=0;this.cc.ub();this.l=3;F(this.v);this.Kb=this.v=null;F(this.ha);this.ha=null;L('Channel "'+this.name+'" closed')}; var Ge=function(a,b){a.isConnected()||a.ha&&a.ha.Ub()||(a.l=2,L('Channel "'+a.name+'" connected'),F(a.ha),n(b)?(a.ha=new zd(a.Kb,b),a.ha.start()):(a.ha=null,a.Kb()))};Z.prototype.send=function(a,b){this.isConnected()?Me(this)?(w(b)&&(b=nc(b)),this.v.send(tf(a),b)):(J(H.b,"Peer has disappeared."),this.close()):J(H.b,"Can't send. Channel not connected.")}; Z.prototype.S=function(a,b,c){if(this.wa)this.jb.push(x(this.S,this,a,b,c));else if(mf(this,c))if(this.T||3==this.l)K(H.b,"CrossPageChannel::xpcDeliver(): Channel closed.");else if(a&&"tp"!=a)if(this.isConnected()){if(a=a.replace(/%[0-9a-f]{2}/gi,decodeURIComponent),a=sf.test(a)?a.substring(1):a,c=this.hc[a],c||(this.Bc?c={I:na(this.Bc,a),Nc:w(b)}:(K(this.b,'Unknown service name "'+a+'"'),c=null)),c){a:{var d=c.Nc;if(d&&q(b))try{var e=JSON.parse(b);break a}catch(f){K(this.b,"Expected JSON payload for "+ a+', was "'+b+'"');e=null;break a}else if(!d&&!q(b)){e=nc(b);break a}e=b}null!=e&&c.I(e)}}else L("CrossPageChannel::xpcDeliver(): Not connected.");else this.v.Ab(b);else K(H.b,'Message received from unapproved origin "'+c+'" - rejected.')}; var tf=function(a){rf.test(a)&&(a="%"+a);return a.replace(/[%:|]/g,encodeURIComponent)},W=function(a){var b=a.m.role;return ba(b)?b:window.parent==a.H?1:0},Ae=function(a,b){M(H.b,"changing channel name to "+b);delete T[a.name];a.name=b;T[b]=a},mf=function(a,b){var c=a.m.ph;return/^[\s\xa0]*$/.test(null==b?"":String(b))||/^[\s\xa0]*$/.test(null==c?"":String(c))||b==a.m.ph};Z.prototype.g=function(){this.close();this.Ha=this.H=null;delete T[this.name];F(this.cc);delete this.cc;Z.C.g.call(this)}; var qf=function(){for(var a in T)F(T[a])};var uf=function(a,b,c,d){this.td=new yd(a,b,c,this);a=new Q(d||window.location.href);this.Pd=JSON.parse(a.F.get("xpc"));this.oa=null};uf.prototype.Tb=function(){this.oa=new Z(this.Pd);var a=x(uf.prototype.send,this);this.oa.hc.s={I:a,Nc:!0};this.oa.connect()};uf.prototype.send=function(a){this.td.send(a[0],a[1],a[2])};uf.prototype.Hc=function(a,b){b=b.target;hd(b)?this.oa.send("ss",[a]):this.oa.send("sf",[a,jd(b)])};uf.prototype.init=uf.prototype.Tb;ca("invalidation.XpcSenderServer",uf,void 0);