1
(function(){/*
2
3
Copyright The Closure Library Authors.
4
SPDX-License-Identifier: Apache-2.0
5
*/
6
var aa=this||self,n=function(a,b){a=a.split(".");var c=aa;a[0]in c||"undefined"==typeof c.execScript||c.execScript("var "+a[0]);for(var d;a.length&&(d=a.shift());)a.length||void 0===b?c=c[d]&&c[d]!==Object.prototype[d]?c[d]:c[d]={}
7
:c[d]=b}
8
;var p=function(a,b){for(var c in b)b.hasOwnProperty(c)&&(a[c]=b[c])}
9
,q=function(a){for(var b in a)if(a.hasOwnProperty(b))return!0;return!1}
10
;function t(){for(var a=u,b={}
11
,c=0;c<a.length;++c)b[a[c]]=c;return b}
12
function v(){var a="ABCDEFGHIJKLMNOPQRSTUVWXYZ";a+=a.toLowerCase()+"0123456789-_";return a+"."}
13
var u,w;
14
function ba(a){function b(k){for(;d<a.length;){var m=a.charAt(d++),l=w[m];if(null!=l)return l;if(!/^[\s\xa0]*$/.test(m))throw Error("Unknown base64 encoding at char: "+m);}
15
return k}
16
u=u||v();w=w||t();for(var c="",d=0;;){var e=b(-1),f=b(0),h=b(64),g=b(64);if(64===g&&-1===e)return c;c+=String.fromCharCode(e<<2|f>>4);64!=h&&(c+=String.fromCharCode(f<<4&240|h>>2),64!=g&&(c+=String.fromCharCode(h<<6&192|g)))}
17
}
18
;var y={}
19
,z=function(a){y.TAGGING=y.TAGGING||[];y.TAGGING[a]=!0}
20
;var A=/^(?:(?:https?|mailto|ftp):|[^:/?#]*(?:[/?#]|$))/i;var B=window,C=window.history,D=document,E=navigator,F=function(a,b){D.addEventListener?D.addEventListener(a,b,!1):D.attachEvent&&D.attachEvent("on"+a,b)}
21
;var G=/:[0-9]+$/,J=function(a,b){b&&(b=String(b).toLowerCase());if("protocol"===b||"port"===b)a.protocol=H(a.protocol)||H(B.location.protocol);"port"===b?a.port=String(Number(a.hostname?a.port:B.location.port)||("http"===a.protocol?80:"https"===a.protocol?443:"")):"host"===b&&(a.hostname=(a.hostname||B.location.hostname).replace(G,"").toLowerCase());return I(a,b)}
22
,I=function(a,b,c){var d=H(a.protocol);b&&(b=String(b).toLowerCase());switch(b){case "url_no_fragment":c="";a&&a.href&&(c=a.href.indexOf("#"),
23
c=0>c?a.href:a.href.substr(0,c));a=c;break;case "protocol":a=d;break;case "host":a=a.hostname.replace(G,"").toLowerCase();c&&(c=/^www\d*\./.exec(a))&&c[0]&&(a=a.substr(c[0].length));break;case "port":a=String(Number(a.port)||("http"===d?80:"https"===d?443:""));break;case "path":a.pathname||a.hostname||z(1);a="/"===a.pathname.substr(0,1)?a.pathname:"/"+a.pathname;a=a.split("/");0<=[].indexOf(a[a.length-1])&&(a[a.length-1]="");a=a.join("/");break;case "query":a=a.search.replace("?","");break;case "extension":a=
24
a.pathname.split(".");a=1<a.length?a[a.length-1]:"";a=a.split("/")[0];break;case "fragment":a=a.hash.replace("#","");break;default:a=a&&a.href}
25
return a}
26
,H=function(a){return a?a.replace(":","").toLowerCase():""}
27
,K=function(a){var b=D.createElement("a");a&&(b.href=a);var c=b.pathname;"/"!==c[0]&&(a||z(1),c="/"+c);a=b.hostname.replace(G,"");return{href:b.href,protocol:b.protocol,host:b.host,hostname:a,pathname:c,search:b.search,hash:b.hash,port:b.port}
28
}
29
;var L;var N=function(){var a=ca,b=da,c=M(),d=function(h){a(h.target||h.srcElement||{}
30
)}
31
,e=function(h){b(h.target||h.srcElement||{}
32
)}
33
;if(!c.init){F("mousedown",d);F("keyup",d);F("submit",e);var f=HTMLFormElement.prototype.submit;HTMLFormElement.prototype.submit=function(){b(this);f.call(this)}
34
;c.init=!0}
35
}
36
,O=function(a,b,c,d,e){a={callback:a,domains:b,fragment:2===c,placement:c,forms:d,sameHost:e}
37
;M().decorators.push(a)}
38
,P=function(a,b,c){for(var d=M().decorators,e={}
39
,f=0;f<d.length;++f){var h=d[f],g;if(g=
40
!c||h.forms)a:{g=h.domains;var k=a,m=!!h.sameHost;if(g&&(m||k!==D.location.hostname))for(var l=0;l<g.length;l++)if(g[l]instanceof RegExp){if(g[l].test(k)){g=!0;break a}
...
</html>