/* Copyright The Closure Library Authors. SPDX-License-Identifier: Apache-2.0 */ var d,e=e||{};e.scope={};e.arrayIteratorImpl=function(a){var b=0;return function(){return b=g}},"es6"); e.polyfill("String.prototype.startsWith",function(a){return a?a:function(b,c){var f=e.checkStringArgs(this,b,"startsWith");b+="";var g=f.length,h=b.length;c=Math.max(0,Math.min(c|0,f.length));for(var l=0;l=h}},"es6"); e.polyfill("String.prototype.repeat",function(a){return a?a:function(b){var c=e.checkStringArgs(this,null,"repeat");if(0>b||1342177279>>=1)c+=c;return f}},"es6");e.polyfill("String.prototype.trimLeft",function(a){function b(){return this.replace(/^[\s\xa0]+/,"")}return a||b},"es_2019"); e.iteratorFromArray=function(a,b){a instanceof String&&(a+="");var c=0,f=!1,g={next:function(){if(!f&&c>>0);k.uidCounter_=0;k.cloneObject=function(a){var b=k.typeOf(a);if("object"==b||"array"==b){if("function"===typeof a.clone)return a.clone();b="array"==b?[]:{};for(var c in a)b[c]=k.cloneObject(a[c]);return b}return a};k.bindNative_=function(a,b,c){return a.call.apply(a.bind,arguments)}; k.bindJs_=function(a,b,c){if(!a)throw Error();if(2").replace(/'/g,"'").replace(/"/g,'"').replace(/&/g,"&"));b&&(a=a.replace(/\{\$([^}]+)}/g,function(f,g){return null!=b&&g in b?b[g]:f}));return a};k.getMsgWithFallback=function(a){return a};k.exportSymbol=function(a,b,c){k.exportPath_(a,b,!0,c)}; k.exportProperty=function(a,b,c){a[b]=c};k.inherits=function(a,b){function c(){}c.prototype=b.prototype;a.superClass_=b.prototype;a.prototype=new c;a.prototype.constructor=a;a.base=function(f,g,h){for(var l=Array(arguments.length-2),r=2;rc?Math.max(0,a.length+c):c;if("string"===typeof a)return"string"!==typeof b||1!=b.length?-1:a.indexOf(b,c);for(;cc&&(c=Math.max(0,a.length+c));if("string"===typeof a)return"string"!==typeof b||1!=b.length?-1:a.lastIndexOf(b,c);for(;0<=c;c--)if(c in a&&a[c]===b)return c;return-1};k.array.lastIndexOf=la; var n=k.NATIVE_ARRAY_PROTOTYPES&&(m||Array.prototype.forEach)?function(a,b,c){k.asserts.assert(null!=a.length);Array.prototype.forEach.call(a,b,c)}:function(a,b,c){for(var f=a.length,g="string"===typeof a?a.split(""):a,h=0;hb?null:"string"===typeof a?a.charAt(b):a[b]}k.array.find=ra; function sa(a,b,c){for(var f=a.length,g="string"===typeof a?a.split(""):a,h=0;hb?null:"string"===typeof a?a.charAt(b):a[b]};function ta(a,b,c){var f=a.length,g="string"===typeof a?a.split(""):a;for(--f;0<=f;f--)if(f in g&&b.call(c,g[f],f,a))return f;return-1}k.array.findIndexRight=ta;function ua(a,b){return 0<=ka(a,b)}k.array.contains=ua; function va(a){return 0==a.length}k.array.isEmpty=va;function wa(a){if(!Array.isArray(a))for(var b=a.length-1;0<=b;b--)delete a[b];a.length=0}k.array.clear=wa;k.array.insert=function(a,b){ua(a,b)||a.push(b)};function ya(a,b,c){za(a,c,0,b)}k.array.insertAt=ya;k.array.insertArrayAt=function(a,b,c){k.partial(za,a,c,0).apply(null,b)};k.array.insertBefore=function(a,b,c){var f;2==arguments.length||0>(f=ka(a,c))?a.push(b):ya(a,b,f)};function Aa(a,b){b=ka(a,b);var c;(c=0<=b)&&Ba(a,b);return c} k.array.remove=Aa;k.array.removeLast=function(a,b){b=la(a,b);return 0<=b?(Ba(a,b),!0):!1};function Ba(a,b){k.asserts.assert(null!=a.length);return 1==Array.prototype.splice.call(a,b,1).length}k.array.removeAt=Ba;k.array.removeIf=function(a,b,c){b=sa(a,b,c);return 0<=b?(Ba(a,b),!0):!1};k.array.removeAllIf=function(a,b,c){var f=0;ma(a,function(g,h){b.call(c,g,h,a)&&Ba(a,h)&&f++});return f};function Ca(a){return Array.prototype.concat.apply([],arguments)}k.array.concat=Ca; k.array.join=function(a){return Array.prototype.concat.apply([],arguments)};function Da(a){var b=a.length;if(0=arguments.length?Array.prototype.slice.call(a,b):Array.prototype.slice.call(a,b,c)}k.array.slice=Ea; function Fa(a,b,c){b=b||a;var f=function(v){return k.isObject(v)?"o"+k.getUid(v):(typeof v).charAt(0)+v};c=c||f;f={};for(var g=0,h=0;h>>1);var E=c?b.call(g,a[v],v,a):b(f,a[v]);0b?1:ac?(ya(a,b,-(c+1)),!0):!1};k.array.binaryRemove=function(a,b,c){b=Ga(a,b,c);return 0<=b?Ba(a,b):!1}; k.array.bucket=function(a,b,c){for(var f={},g=0;gc*(h-g))return[];if(0h;a+=c)f.push(a);return f}k.array.range=Na;function Oa(a,b){for(var c=[],f=0;fb&&Array.prototype.push.apply(a,a.splice(0,-b)));return a}; k.array.moveItem=function(a,b,c){k.asserts.assert(0<=b&&b":"
")}; k.string.internal.htmlEscape=function(a,b){if(b)a=a.replace(k.string.internal.AMP_RE_,"&").replace(k.string.internal.LT_RE_,"<").replace(k.string.internal.GT_RE_,">").replace(k.string.internal.QUOT_RE_,""").replace(k.string.internal.SINGLE_QUOTE_RE_,"'").replace(k.string.internal.NULL_RE_,"�");else{if(!k.string.internal.ALL_RE_.test(a))return a;-1!=a.indexOf("&")&&(a=a.replace(k.string.internal.AMP_RE_,"&"));-1!=a.indexOf("<")&&(a=a.replace(k.string.internal.LT_RE_,"<")); -1!=a.indexOf(">")&&(a=a.replace(k.string.internal.GT_RE_,">"));-1!=a.indexOf('"')&&(a=a.replace(k.string.internal.QUOT_RE_,"""));-1!=a.indexOf("'")&&(a=a.replace(k.string.internal.SINGLE_QUOTE_RE_,"'"));-1!=a.indexOf("\x00")&&(a=a.replace(k.string.internal.NULL_RE_,"�"))}return a};k.string.internal.AMP_RE_=/&/g;k.string.internal.LT_RE_=//g;k.string.internal.QUOT_RE_=/"/g;k.string.internal.SINGLE_QUOTE_RE_=/'/g;k.string.internal.NULL_RE_=/\x00/g; k.string.internal.ALL_RE_=/[\x00&<>"']/;k.string.internal.whitespaceEscape=function(a){return k.string.internal.newLineToBr(a.replace(/ /g,"  "),void 0)};k.string.internal.contains=function(a,b){return-1!=a.indexOf(b)};k.string.internal.caseInsensitiveContains=function(a,b){return k.string.internal.contains(a.toLowerCase(),b.toLowerCase())}; k.string.internal.compareVersions=function(a,b){var c=0;a=k.string.internal.trim(String(a)).split(".");b=k.string.internal.trim(String(b)).split(".");for(var f=Math.max(a.length,b.length),g=0;0==c&&gb?1:0};k.labs={};k.labs.userAgent={};k.labs.userAgent.util={};k.labs.userAgent.util.getNativeUserAgentString_=function(){var a=k.labs.userAgent.util.getNavigator_();return a&&(a=a.userAgent)?a:""};k.labs.userAgent.util.getNavigator_=function(){return k.global.navigator};k.labs.userAgent.util.userAgent_=k.labs.userAgent.util.getNativeUserAgentString_();k.labs.userAgent.util.setUserAgent=function(a){k.labs.userAgent.util.userAgent_=a||k.labs.userAgent.util.getNativeUserAgentString_()}; k.labs.userAgent.util.getUserAgent=function(){return k.labs.userAgent.util.userAgent_};k.labs.userAgent.util.matchUserAgent=function(a){return k.string.internal.contains(k.labs.userAgent.util.getUserAgent(),a)};k.labs.userAgent.util.matchUserAgentIgnoreCase=function(a){return k.string.internal.caseInsensitiveContains(k.labs.userAgent.util.getUserAgent(),a)}; k.labs.userAgent.util.extractVersionTuples=function(a){for(var b=/(\w[\w ]+)\/([^\s]+)\s*(?:\((.*?)\))?/g,c=[],f;f=b.exec(a);)c.push([f[1],f[2],f[3]||void 0]);return c};k.object={};k.object.forEach=function(a,b,c){for(var f in a)b.call(c,a[f],f,a)};k.object.filter=function(a,b,c){var f={},g;for(g in a)b.call(c,a[g],g,a)&&(f[g]=a[g]);return f};k.object.map=function(a,b,c){var f={},g;for(g in a)f[g]=b.call(c,a[g],g,a);return f};k.object.some=function(a,b,c){for(var f in a)if(b.call(c,a[f],f,a))return!0;return!1};k.object.every=function(a,b,c){for(var f in a)if(!b.call(c,a[f],f,a))return!1;return!0};k.object.getCount=function(a){var b=0,c;for(c in a)b++;return b}; k.object.getAnyKey=function(a){for(var b in a)return b};k.object.getAnyValue=function(a){for(var b in a)return a[b]};k.object.contains=function(a,b){return k.object.containsValue(a,b)};k.object.getValues=function(a){var b=[],c=0,f;for(f in a)b[c++]=a[f];return b};k.object.getKeys=function(a){var b=[],c=0,f;for(f in a)b[c++]=f;return b};k.object.getValueByKeys=function(a,b){var c=k.isArrayLike(b),f=c?b:arguments;for(c=c?0:1;c"}else return void 0===a?"undefined":null===a?"null":typeof a}; k.dom.asserts.getWindow_=function(a){try{var b=a&&a.ownerDocument,c=b&&(b.defaultView||b.parentWindow);c=c||k.global;if(c.Element&&c.Location)return c}catch(f){}return null};k.functions={};k.functions.constant=function(a){return function(){return a}};k.functions.FALSE=function(){return!1};k.functions.TRUE=function(){return!0};k.functions.NULL=function(){return null};k.functions.UNDEFINED=function(){};k.functions.EMPTY=k.functions.UNDEFINED;k.functions.identity=function(a){return a};k.functions.error=function(a){return function(){throw Error(a);}};k.functions.fail=function(){}; k.functions.lock=function(a,b){b=b||0;return function(){return a.apply(this,Array.prototype.slice.call(arguments,0,b))}};k.functions.nth=function(a){return function(){return arguments[a]}};k.functions.partialRight=function(a,b){var c=Array.prototype.slice.call(arguments,1);return function(){var f=this;f===k.global&&(f=void 0);var g=Array.prototype.slice.call(arguments);g.push.apply(g,c);return a.apply(f,g)}};k.functions.withReturnValue=function(a,b){return k.functions.sequence(a,k.functions.constant(b))}; k.functions.equalTo=function(a,b){return function(c){return b?a==c:a===c}};k.functions.compose=function(a,b){var c=arguments,f=c.length;return function(){var g;f&&(g=c[f-1].apply(this,arguments));for(var h=f-2;0<=h;h--)g=c[h].call(this,g);return g}};k.functions.sequence=function(a){var b=arguments,c=b.length;return function(){for(var f,g=0;ga?k.i18n.bidi.Dir.RTL:k.i18n.bidi.Dir.NEUTRAL:null==a?null:a?k.i18n.bidi.Dir.RTL:k.i18n.bidi.Dir.LTR};k.i18n.bidi.ltrChars_="A-Za-z\u00c0-\u00d6\u00d8-\u00f6\u00f8-\u02b8\u0300-\u0590\u0900-\u1fff\u200e\u2c00-\ud801\ud804-\ud839\ud83c-\udbff\uf900-\ufb1c\ufe00-\ufe6f\ufefd-\uffff"; k.i18n.bidi.rtlChars_="\u0591-\u06ef\u06fa-\u08ff\u200f\ud802-\ud803\ud83a-\ud83b\ufb1d-\ufdff\ufe70-\ufefc";k.i18n.bidi.htmlSkipReg_=/<[^>]*>|&[^;]+;/g;k.i18n.bidi.stripHtmlIfNeeded_=function(a,b){return b?a.replace(k.i18n.bidi.htmlSkipReg_,""):a};k.i18n.bidi.rtlCharReg_=new RegExp("["+k.i18n.bidi.rtlChars_+"]");k.i18n.bidi.ltrCharReg_=new RegExp("["+k.i18n.bidi.ltrChars_+"]");k.i18n.bidi.hasAnyRtl=function(a,b){return k.i18n.bidi.rtlCharReg_.test(k.i18n.bidi.stripHtmlIfNeeded_(a,b))}; k.i18n.bidi.hasRtlChar=k.i18n.bidi.hasAnyRtl;k.i18n.bidi.hasAnyLtr=function(a){return k.i18n.bidi.ltrCharReg_.test(k.i18n.bidi.stripHtmlIfNeeded_(a,void 0))};k.i18n.bidi.ltrRe_=new RegExp("^["+k.i18n.bidi.ltrChars_+"]");k.i18n.bidi.rtlRe_=new RegExp("^["+k.i18n.bidi.rtlChars_+"]");k.i18n.bidi.isRtlChar=function(a){return k.i18n.bidi.rtlRe_.test(a)};k.i18n.bidi.isLtrChar=function(a){return k.i18n.bidi.ltrRe_.test(a)};k.i18n.bidi.isNeutralChar=function(a){return!k.i18n.bidi.isLtrChar(a)&&!k.i18n.bidi.isRtlChar(a)}; k.i18n.bidi.ltrDirCheckRe_=new RegExp("^[^"+k.i18n.bidi.rtlChars_+"]*["+k.i18n.bidi.ltrChars_+"]");k.i18n.bidi.rtlDirCheckRe_=new RegExp("^[^"+k.i18n.bidi.ltrChars_+"]*["+k.i18n.bidi.rtlChars_+"]");k.i18n.bidi.startsWithRtl=function(a,b){return k.i18n.bidi.rtlDirCheckRe_.test(k.i18n.bidi.stripHtmlIfNeeded_(a,b))};k.i18n.bidi.isRtlText=k.i18n.bidi.startsWithRtl;k.i18n.bidi.startsWithLtr=function(a,b){return k.i18n.bidi.ltrDirCheckRe_.test(k.i18n.bidi.stripHtmlIfNeeded_(a,b))}; k.i18n.bidi.isLtrText=k.i18n.bidi.startsWithLtr;k.i18n.bidi.isRequiredLtrRe_=/^http:\/\/.*/;k.i18n.bidi.isNeutralText=function(a,b){a=k.i18n.bidi.stripHtmlIfNeeded_(a,b);return k.i18n.bidi.isRequiredLtrRe_.test(a)||!k.i18n.bidi.hasAnyLtr(a)&&!k.i18n.bidi.hasAnyRtl(a)};k.i18n.bidi.ltrExitDirCheckRe_=new RegExp("["+k.i18n.bidi.ltrChars_+"][^"+k.i18n.bidi.rtlChars_+"]*$");k.i18n.bidi.rtlExitDirCheckRe_=new RegExp("["+k.i18n.bidi.rtlChars_+"][^"+k.i18n.bidi.ltrChars_+"]*$"); k.i18n.bidi.endsWithLtr=function(a,b){return k.i18n.bidi.ltrExitDirCheckRe_.test(k.i18n.bidi.stripHtmlIfNeeded_(a,b))};k.i18n.bidi.isLtrExitText=k.i18n.bidi.endsWithLtr;k.i18n.bidi.endsWithRtl=function(a,b){return k.i18n.bidi.rtlExitDirCheckRe_.test(k.i18n.bidi.stripHtmlIfNeeded_(a,b))};k.i18n.bidi.isRtlExitText=k.i18n.bidi.endsWithRtl;k.i18n.bidi.rtlLocalesRe_=/^(ar|ckb|dv|he|iw|fa|nqo|ps|sd|ug|ur|yi|.*[-_](Adlm|Arab|Hebr|Nkoo|Rohg|Thaa))(?!.*[-_](Latn|Cyrl)($|-|_))($|-|_)/i; k.i18n.bidi.isRtlLanguage=function(a){return k.i18n.bidi.rtlLocalesRe_.test(a)};k.i18n.bidi.bracketGuardTextRe_=/(\(.*?\)+)|(\[.*?\]+)|(\{.*?\}+)|(<.*?>+)/g;k.i18n.bidi.guardBracketInText=function(a,b){b=(void 0===b?k.i18n.bidi.hasAnyRtl(a):b)?k.i18n.bidi.Format.RLM:k.i18n.bidi.Format.LRM;return a.replace(k.i18n.bidi.bracketGuardTextRe_,b+"$&"+b)};k.i18n.bidi.enforceRtlInHtml=function(a){return"<"==a.charAt(0)?a.replace(/<\w+/,"$& dir=rtl"):"\n"+a+""}; k.i18n.bidi.enforceRtlInText=function(a){return k.i18n.bidi.Format.RLE+a+k.i18n.bidi.Format.PDF};k.i18n.bidi.enforceLtrInHtml=function(a){return"<"==a.charAt(0)?a.replace(/<\w+/,"$& dir=ltr"):"\n"+a+""};k.i18n.bidi.enforceLtrInText=function(a){return k.i18n.bidi.Format.LRE+a+k.i18n.bidi.Format.PDF};k.i18n.bidi.dimensionsRe_=/:\s*([.\d][.\w]*)\s+([.\d][.\w]*)\s+([.\d][.\w]*)\s+([.\d][.\w]*)/g;k.i18n.bidi.leftRe_=/left/gi;k.i18n.bidi.rightRe_=/right/gi;k.i18n.bidi.tempRe_=/%%%%/g; k.i18n.bidi.mirrorCSS=function(a){return a.replace(k.i18n.bidi.dimensionsRe_,":$1 $4 $3 $2").replace(k.i18n.bidi.leftRe_,"%%%%").replace(k.i18n.bidi.rightRe_,k.i18n.bidi.LEFT).replace(k.i18n.bidi.tempRe_,k.i18n.bidi.RIGHT)};k.i18n.bidi.doubleQuoteSubstituteRe_=/([\u0591-\u05f2])"/g;k.i18n.bidi.singleQuoteSubstituteRe_=/([\u0591-\u05f2])'/g;k.i18n.bidi.normalizeHebrewQuote=function(a){return a.replace(k.i18n.bidi.doubleQuoteSubstituteRe_,"$1\u05f4").replace(k.i18n.bidi.singleQuoteSubstituteRe_,"$1\u05f3")}; k.i18n.bidi.wordSeparatorRe_=/\s+/;k.i18n.bidi.hasNumeralsRe_=/[\d\u06f0-\u06f9]/;k.i18n.bidi.rtlDetectionThreshold_=.4; k.i18n.bidi.estimateDirection=function(a,b){var c=0,f=0,g=!1;a=k.i18n.bidi.stripHtmlIfNeeded_(a,b).split(k.i18n.bidi.wordSeparatorRe_);for(b=0;bk.i18n.bidi.rtlDetectionThreshold_?k.i18n.bidi.Dir.RTL:k.i18n.bidi.Dir.LTR}; k.i18n.bidi.detectRtlDirectionality=function(a,b){return k.i18n.bidi.estimateDirection(a,b)==k.i18n.bidi.Dir.RTL};k.i18n.bidi.setElementDirAndAlign=function(a,b){a&&(b=k.i18n.bidi.toDir(b))&&(a.style.textAlign=b==k.i18n.bidi.Dir.RTL?k.i18n.bidi.RIGHT:k.i18n.bidi.LEFT,a.dir=b==k.i18n.bidi.Dir.RTL?"rtl":"ltr")}; k.i18n.bidi.setElementDirByTextDirectionality=function(a,b){switch(k.i18n.bidi.estimateDirection(b)){case k.i18n.bidi.Dir.LTR:"ltr"!==a.dir&&(a.dir="ltr");break;case k.i18n.bidi.Dir.RTL:"rtl"!==a.dir&&(a.dir="rtl");break;default:a.removeAttribute("dir")}};k.i18n.bidi.DirectionalString=function(){};k.html.TrustedResourceUrl=function(a,b){this.privateDoNotAccessOrElseTrustedResourceUrlWrappedValue_=b===k.html.TrustedResourceUrl.CONSTRUCTOR_TOKEN_PRIVATE_?a:""};d=k.html.TrustedResourceUrl.prototype;d.implementsGoogStringTypedString=!0;d.getTypedStringValue=function(){return this.privateDoNotAccessOrElseTrustedResourceUrlWrappedValue_.toString()};d.implementsGoogI18nBidiDirectionalString=!0;d.getDirection=function(){return k.i18n.bidi.Dir.LTR}; d.toString=function(){return this.privateDoNotAccessOrElseTrustedResourceUrlWrappedValue_+""};k.html.TrustedResourceUrl.unwrap=function(a){return k.html.TrustedResourceUrl.unwrapTrustedScriptURL(a).toString()}; k.html.TrustedResourceUrl.unwrapTrustedScriptURL=function(a){if(a instanceof k.html.TrustedResourceUrl&&a.constructor===k.html.TrustedResourceUrl)return a.privateDoNotAccessOrElseTrustedResourceUrlWrappedValue_;k.asserts.fail("expected object of type TrustedResourceUrl, got '"+a+"' of type "+k.typeOf(a));return"type_error:TrustedResourceUrl"}; k.html.TrustedResourceUrl.format=function(a,b){var c=k.string.Const.unwrap(a);if(!k.html.TrustedResourceUrl.BASE_URL_.test(c))throw Error("Invalid TrustedResourceUrl format: "+c);a=c.replace(k.html.TrustedResourceUrl.FORMAT_MARKER_,function(f,g){if(!Object.prototype.hasOwnProperty.call(b,g))throw Error('Found marker, "'+g+'", in format string, "'+c+'", but no valid label mapping found in args: '+JSON.stringify(b));f=b[g];return f instanceof k.string.Const?k.string.Const.unwrap(f):encodeURIComponent(String(f))}); return k.html.TrustedResourceUrl.createTrustedResourceUrlSecurityPrivateDoNotAccessOrElse(a)};k.html.TrustedResourceUrl.FORMAT_MARKER_=/%{(\w+)}/g;k.html.TrustedResourceUrl.BASE_URL_=/^((https:)?\/\/[0-9a-z.:[\]-]+\/|\/[^/\\]|[^:/\\%]+\/|[^:/\\%]*[?#]|about:blank#)/i;k.html.TrustedResourceUrl.URL_PARAM_PARSER_=/^([^?#]*)(\?[^#]*)?(#[\s\S]*)?/; k.html.TrustedResourceUrl.formatWithParams=function(a,b,c,f){a=k.html.TrustedResourceUrl.format(a,b);a=k.html.TrustedResourceUrl.unwrap(a);a=k.html.TrustedResourceUrl.URL_PARAM_PARSER_.exec(a);b=a[3]||"";return k.html.TrustedResourceUrl.createTrustedResourceUrlSecurityPrivateDoNotAccessOrElse(a[1]+k.html.TrustedResourceUrl.stringifyParams_("?",a[2]||"",c)+k.html.TrustedResourceUrl.stringifyParams_("#",b,f))};k.html.TrustedResourceUrl.fromConstant=function(a){return k.html.TrustedResourceUrl.createTrustedResourceUrlSecurityPrivateDoNotAccessOrElse(k.string.Const.unwrap(a))}; k.html.TrustedResourceUrl.fromConstants=function(a){for(var b="",c=0;ca.length?"&":"")+encodeURIComponent(f)+"="+encodeURIComponent(String(l)))}}return b};k.html.SafeUrl=function(a,b){this.privateDoNotAccessOrElseSafeUrlWrappedValue_=b===k.html.SafeUrl.CONSTRUCTOR_TOKEN_PRIVATE_?a:""};k.html.SafeUrl.INNOCUOUS_STRING="about:invalid#zClosurez";d=k.html.SafeUrl.prototype;d.implementsGoogStringTypedString=!0;d.getTypedStringValue=function(){return this.privateDoNotAccessOrElseSafeUrlWrappedValue_.toString()};d.implementsGoogI18nBidiDirectionalString=!0;d.getDirection=function(){return k.i18n.bidi.Dir.LTR};d.toString=function(){return this.privateDoNotAccessOrElseSafeUrlWrappedValue_.toString()}; k.html.SafeUrl.unwrap=function(a){if(a instanceof k.html.SafeUrl&&a.constructor===k.html.SafeUrl)return a.privateDoNotAccessOrElseSafeUrlWrappedValue_;k.asserts.fail("expected object of type SafeUrl, got '"+a+"' of type "+k.typeOf(a));return"type_error:SafeUrl"};k.html.SafeUrl.fromConstant=function(a){return k.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(k.string.Const.unwrap(a))};k.html.SAFE_MIME_TYPE_PATTERN_=/^(?:audio\/(?:3gpp2|3gpp|aac|L16|midi|mp3|mp4|mpeg|oga|ogg|opus|x-m4a|x-matroska|x-wav|wav|webm)|font\/\w+|image\/(?:bmp|gif|jpeg|jpg|png|tiff|webp|x-icon)|video\/(?:mpeg|mp4|ogg|webm|quicktime|x-matroska))(?:;\w+=(?:\w+|"[\w;,= ]+"))*$/i; k.html.SafeUrl.isSafeMimeType=function(a){return k.html.SAFE_MIME_TYPE_PATTERN_.test(a)};k.html.SafeUrl.fromBlob=function(a){a=k.html.SafeUrl.isSafeMimeType(a.type)?k.fs.url.createObjectUrl(a):k.html.SafeUrl.INNOCUOUS_STRING;return k.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(a)};k.html.SafeUrl.revokeObjectUrl=function(a){a=a.getTypedStringValue();a!==k.html.SafeUrl.INNOCUOUS_STRING&&k.fs.url.revokeObjectUrl(a)}; k.html.SafeUrl.fromMediaSource=function(a){k.asserts.assert("MediaSource"in k.global,"No support for MediaSource");a=a instanceof MediaSource?k.fs.url.createObjectUrl(a):k.html.SafeUrl.INNOCUOUS_STRING;return k.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(a)};k.html.DATA_URL_PATTERN_=/^data:(.*);base64,[a-z0-9+\/]+=*$/i; k.html.SafeUrl.tryFromDataUrl=function(a){a=String(a);a=a.replace(/(%0A|%0D)/g,"");var b=a.match(k.html.DATA_URL_PATTERN_);return b&&k.html.SafeUrl.isSafeMimeType(b[1])?k.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(a):null};k.html.SafeUrl.fromDataUrl=function(a){return k.html.SafeUrl.tryFromDataUrl(a)||k.html.SafeUrl.INNOCUOUS_URL};k.html.SafeUrl.fromTelUrl=function(a){k.string.internal.caseInsensitiveStartsWith(a,"tel:")||(a=k.html.SafeUrl.INNOCUOUS_STRING);return k.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(a)}; k.html.SIP_URL_PATTERN_=/^sip[s]?:[+a-z0-9_.!$%&'*\/=^`{|}~-]+@([a-z0-9-]+\.)+[a-z0-9]{2,63}$/i;k.html.SafeUrl.fromSipUrl=function(a){k.html.SIP_URL_PATTERN_.test(decodeURIComponent(a))||(a=k.html.SafeUrl.INNOCUOUS_STRING);return k.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(a)};k.html.SafeUrl.fromFacebookMessengerUrl=function(a){k.string.internal.caseInsensitiveStartsWith(a,"fb-messenger://share")||(a=k.html.SafeUrl.INNOCUOUS_STRING);return k.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(a)}; k.html.SafeUrl.fromWhatsAppUrl=function(a){k.string.internal.caseInsensitiveStartsWith(a,"whatsapp://send")||(a=k.html.SafeUrl.INNOCUOUS_STRING);return k.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(a)};k.html.SafeUrl.fromSmsUrl=function(a){k.string.internal.caseInsensitiveStartsWith(a,"sms:")&&k.html.SafeUrl.isSmsUrlBodyValid_(a)||(a=k.html.SafeUrl.INNOCUOUS_STRING);return k.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(a)}; k.html.SafeUrl.isSmsUrlBodyValid_=function(a){var b=a.indexOf("#");0.":"");if(a.toUpperCase()in k.html.SafeHtml.NOT_ALLOWED_TAG_NAMES_)throw Error(k.html.SafeHtml.ENABLE_ERROR_MESSAGES?"Tag name <"+a+"> is not allowed for SafeHtml.":"");}; k.html.SafeHtml.createIframe=function(a,b,c,f){a&&k.html.TrustedResourceUrl.unwrap(a);var g={};g.src=a||null;g.srcdoc=b&&k.html.SafeHtml.unwrap(b);a=k.html.SafeHtml.combineAttributes(g,{sandbox:""},c);return k.html.SafeHtml.createSafeHtmlTagSecurityPrivateDoNotAccessOrElse("iframe",a,f)}; k.html.SafeHtml.createSandboxIframe=function(a,b,c,f){if(!k.html.SafeHtml.canUseSandboxIframe())throw Error(k.html.SafeHtml.ENABLE_ERROR_MESSAGES?"The browser does not support sandboxed iframes.":"");var g={};g.src=a?k.html.SafeUrl.unwrap(k.html.SafeUrl.sanitize(a)):null;g.srcdoc=b||null;g.sandbox="";a=k.html.SafeHtml.combineAttributes(g,{},c);return k.html.SafeHtml.createSafeHtmlTagSecurityPrivateDoNotAccessOrElse("iframe",a,f)}; k.html.SafeHtml.canUseSandboxIframe=function(){return k.global.HTMLIFrameElement&&"sandbox"in k.global.HTMLIFrameElement.prototype};k.html.SafeHtml.createScriptSrc=function(a,b){k.html.TrustedResourceUrl.unwrap(a);a=k.html.SafeHtml.combineAttributes({src:a},{},b);return k.html.SafeHtml.createSafeHtmlTagSecurityPrivateDoNotAccessOrElse("script",a)}; k.html.SafeHtml.createScript=function(a,b){for(var c in b)if(Object.prototype.hasOwnProperty.call(b,c)){var f=c.toLowerCase();if("language"==f||"src"==f||"text"==f||"type"==f)throw Error(k.html.SafeHtml.ENABLE_ERROR_MESSAGES?'Cannot set "'+f+'" attribute':"");}c="";a=Ca(a);for(f=0;f does not allow content."),g+=">"):(f=k.html.SafeHtml.concat(c),g+=">"+k.html.SafeHtml.unwrap(f)+"",f=f.getDirection());(a=b&&b.dir)&&(f=/^(ltr|rtl|auto)$/i.test(a)?k.i18n.bidi.Dir.NEUTRAL:null);return k.html.SafeHtml.createSafeHtmlSecurityPrivateDoNotAccessOrElse(g, f)};k.html.SafeHtml.stringifyAttributes=function(a,b){var c="";if(b)for(var f in b)if(Object.prototype.hasOwnProperty.call(b,f)){if(!k.html.SafeHtml.VALID_NAMES_IN_TAG_.test(f))throw Error(k.html.SafeHtml.ENABLE_ERROR_MESSAGES?'Invalid attribute name "'+f+'".':"");var g=b[f];null!=g&&(c+=" "+k.html.SafeHtml.getAttrNameAndValue_(a,f,g))}return c}; k.html.SafeHtml.combineAttributes=function(a,b,c){var f={},g;for(g in a)Object.prototype.hasOwnProperty.call(a,g)&&(k.asserts.assert(g.toLowerCase()==g,"Must be lower case"),f[g]=a[g]);for(g in b)Object.prototype.hasOwnProperty.call(b,g)&&(k.asserts.assert(g.toLowerCase()==g,"Must be lower case"),f[g]=b[g]);if(c)for(g in c)if(Object.prototype.hasOwnProperty.call(c,g)){var h=g.toLowerCase();if(h in a)throw Error(k.html.SafeHtml.ENABLE_ERROR_MESSAGES?'Cannot override "'+h+'" attribute, got "'+g+'" with value "'+ c[g]+'"':"");h in b&&delete f[h];f[g]=c[g]}return f};k.html.SafeHtml.DOCTYPE_HTML=k.html.SafeHtml.createSafeHtmlSecurityPrivateDoNotAccessOrElse("",k.i18n.bidi.Dir.NEUTRAL);k.html.SafeHtml.EMPTY=new k.html.SafeHtml(k.global.trustedTypes&&k.global.trustedTypes.emptyHTML||"",k.i18n.bidi.Dir.NEUTRAL,k.html.SafeHtml.CONSTRUCTOR_TOKEN_PRIVATE_);k.html.SafeHtml.BR=k.html.SafeHtml.createSafeHtmlSecurityPrivateDoNotAccessOrElse("
",k.i18n.bidi.Dir.NEUTRAL);k.html.uncheckedconversions={};k.html.uncheckedconversions.safeHtmlFromStringKnownToSatisfyTypeContract=function(a,b){k.asserts.assertString(k.string.Const.unwrap(a),"must provide justification");k.asserts.assert(!k.string.internal.isEmptyOrWhitespace(k.string.Const.unwrap(a)),"must provide non-empty justification");return k.html.SafeHtml.createSafeHtmlSecurityPrivateDoNotAccessOrElse(b,null)}; k.html.uncheckedconversions.safeScriptFromStringKnownToSatisfyTypeContract=function(a,b){k.asserts.assertString(k.string.Const.unwrap(a),"must provide justification");k.asserts.assert(!k.string.internal.isEmptyOrWhitespace(k.string.Const.unwrap(a)),"must provide non-empty justification");return Ra(b)}; k.html.uncheckedconversions.safeStyleFromStringKnownToSatisfyTypeContract=function(a,b){k.asserts.assertString(k.string.Const.unwrap(a),"must provide justification");k.asserts.assert(!k.string.internal.isEmptyOrWhitespace(k.string.Const.unwrap(a)),"must provide non-empty justification");return k.html.SafeStyle.createSafeStyleSecurityPrivateDoNotAccessOrElse(b)}; k.html.uncheckedconversions.safeStyleSheetFromStringKnownToSatisfyTypeContract=function(a,b){k.asserts.assertString(k.string.Const.unwrap(a),"must provide justification");k.asserts.assert(!k.string.internal.isEmptyOrWhitespace(k.string.Const.unwrap(a)),"must provide non-empty justification");return new t(b,Ta)}; k.html.uncheckedconversions.safeUrlFromStringKnownToSatisfyTypeContract=function(a,b){k.asserts.assertString(k.string.Const.unwrap(a),"must provide justification");k.asserts.assert(!k.string.internal.isEmptyOrWhitespace(k.string.Const.unwrap(a)),"must provide non-empty justification");return k.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(b)}; k.html.uncheckedconversions.trustedResourceUrlFromStringKnownToSatisfyTypeContract=function(a,b){k.asserts.assertString(k.string.Const.unwrap(a),"must provide justification");k.asserts.assert(!k.string.internal.isEmptyOrWhitespace(k.string.Const.unwrap(a)),"must provide non-empty justification");return k.html.TrustedResourceUrl.createTrustedResourceUrlSecurityPrivateDoNotAccessOrElse(b)};k.dom.safe={};k.dom.safe.InsertAdjacentHtmlPosition={AFTERBEGIN:"afterbegin",AFTEREND:"afterend",BEFOREBEGIN:"beforebegin",BEFOREEND:"beforeend"};k.dom.safe.insertAdjacentHtml=function(a,b,c){a.insertAdjacentHTML(b,k.html.SafeHtml.unwrapTrustedHTML(c))};k.dom.safe.SET_INNER_HTML_DISALLOWED_TAGS_={MATH:!0,SCRIPT:!0,STYLE:!0,SVG:!0,TEMPLATE:!0}; k.dom.safe.isInnerHtmlCleanupRecursive_=k.functions.cacheReturnValue(function(){if(k.DEBUG&&"undefined"===typeof document)return!1;var a=document.createElement("div"),b=document.createElement("div");b.appendChild(document.createElement("div"));a.appendChild(b);if(k.DEBUG&&!a.firstChild)return!1;b=a.firstChild.firstChild;a.innerHTML=k.html.SafeHtml.unwrapTrustedHTML(k.html.SafeHtml.EMPTY);return!b.parentElement}); k.dom.safe.unsafeSetInnerHtmlDoNotUseOrElse=function(a,b){if(k.dom.safe.isInnerHtmlCleanupRecursive_())for(;a.lastChild;)a.removeChild(a.lastChild);a.innerHTML=k.html.SafeHtml.unwrapTrustedHTML(b)};k.dom.safe.setInnerHtml=function(a,b){if(k.asserts.ENABLE_ASSERTS&&a.tagName&&k.dom.safe.SET_INNER_HTML_DISALLOWED_TAGS_[a.tagName.toUpperCase()])throw Error("goog.dom.safe.setInnerHtml cannot be used to set content of "+a.tagName+".");k.dom.safe.unsafeSetInnerHtmlDoNotUseOrElse(a,b)}; k.dom.safe.setInnerHtmlFromConstant=function(a,b){k.dom.safe.setInnerHtml(a,k.html.uncheckedconversions.safeHtmlFromStringKnownToSatisfyTypeContract(k.string.Const.from("Constant HTML to be immediatelly used."),k.string.Const.unwrap(b)))};k.dom.safe.setOuterHtml=function(a,b){a.outerHTML=k.html.SafeHtml.unwrapTrustedHTML(b)};k.dom.safe.setFormElementAction=function(a,b){b=b instanceof k.html.SafeUrl?b:k.html.SafeUrl.sanitizeAssertUnchanged(b);k.dom.asserts.assertIsHTMLFormElement(a).action=k.html.SafeUrl.unwrap(b)}; k.dom.safe.setButtonFormAction=function(a,b){b=b instanceof k.html.SafeUrl?b:k.html.SafeUrl.sanitizeAssertUnchanged(b);k.dom.asserts.assertIsHTMLButtonElement(a).formAction=k.html.SafeUrl.unwrap(b)};k.dom.safe.setInputFormAction=function(a,b){b=b instanceof k.html.SafeUrl?b:k.html.SafeUrl.sanitizeAssertUnchanged(b);k.dom.asserts.assertIsHTMLInputElement(a).formAction=k.html.SafeUrl.unwrap(b)};k.dom.safe.setStyle=function(a,b){a.style.cssText=k.html.SafeStyle.unwrap(b)}; k.dom.safe.documentWrite=function(a,b){a.write(k.html.SafeHtml.unwrapTrustedHTML(b))};k.dom.safe.setAnchorHref=function(a,b){k.dom.asserts.assertIsHTMLAnchorElement(a);b=b instanceof k.html.SafeUrl?b:k.html.SafeUrl.sanitizeAssertUnchanged(b);a.href=k.html.SafeUrl.unwrap(b)};k.dom.safe.setImageSrc=function(a,b){k.dom.asserts.assertIsHTMLImageElement(a);b=b instanceof k.html.SafeUrl?b:k.html.SafeUrl.sanitizeAssertUnchanged(b,/^data:image\//i.test(b));a.src=k.html.SafeUrl.unwrap(b)}; k.dom.safe.setAudioSrc=function(a,b){k.dom.asserts.assertIsHTMLAudioElement(a);b=b instanceof k.html.SafeUrl?b:k.html.SafeUrl.sanitizeAssertUnchanged(b,/^data:audio\//i.test(b));a.src=k.html.SafeUrl.unwrap(b)};k.dom.safe.setVideoSrc=function(a,b){k.dom.asserts.assertIsHTMLVideoElement(a);b=b instanceof k.html.SafeUrl?b:k.html.SafeUrl.sanitizeAssertUnchanged(b,/^data:video\//i.test(b));a.src=k.html.SafeUrl.unwrap(b)}; k.dom.safe.setEmbedSrc=function(a,b){k.dom.asserts.assertIsHTMLEmbedElement(a);a.src=k.html.TrustedResourceUrl.unwrapTrustedScriptURL(b)};k.dom.safe.setFrameSrc=function(a,b){k.dom.asserts.assertIsHTMLFrameElement(a);a.src=k.html.TrustedResourceUrl.unwrap(b)};k.dom.safe.setIframeSrc=function(a,b){k.dom.asserts.assertIsHTMLIFrameElement(a);a.src=k.html.TrustedResourceUrl.unwrap(b)};k.dom.safe.setIframeSrcdoc=function(a,b){k.dom.asserts.assertIsHTMLIFrameElement(a);a.srcdoc=k.html.SafeHtml.unwrapTrustedHTML(b)}; k.dom.safe.setLinkHrefAndRel=function(a,b,c){k.dom.asserts.assertIsHTMLLinkElement(a);a.rel=c;k.string.internal.caseInsensitiveContains(c,"stylesheet")?(k.asserts.assert(b instanceof k.html.TrustedResourceUrl,'URL must be TrustedResourceUrl because "rel" contains "stylesheet"'),a.href=k.html.TrustedResourceUrl.unwrap(b)):a.href=b instanceof k.html.TrustedResourceUrl?k.html.TrustedResourceUrl.unwrap(b):b instanceof k.html.SafeUrl?k.html.SafeUrl.unwrap(b):k.html.SafeUrl.unwrap(k.html.SafeUrl.sanitizeAssertUnchanged(b))}; k.dom.safe.setObjectData=function(a,b){k.dom.asserts.assertIsHTMLObjectElement(a);a.data=k.html.TrustedResourceUrl.unwrapTrustedScriptURL(b)};k.dom.safe.setScriptSrc=function(a,b){k.dom.asserts.assertIsHTMLScriptElement(a);a.src=k.html.TrustedResourceUrl.unwrapTrustedScriptURL(b);k.dom.safe.setNonceForScriptElement_(a)};k.dom.safe.setScriptContent=function(a,b){k.dom.asserts.assertIsHTMLScriptElement(a);a.textContent=Sa(b);k.dom.safe.setNonceForScriptElement_(a)}; k.dom.safe.setNonceForScriptElement_=function(a){var b=k.getScriptNonce(a.ownerDocument&&a.ownerDocument.defaultView);b&&a.setAttribute("nonce",b)};k.dom.safe.setLocationHref=function(a,b){k.dom.asserts.assertIsLocation(a);b=b instanceof k.html.SafeUrl?b:k.html.SafeUrl.sanitizeAssertUnchanged(b);a.href=k.html.SafeUrl.unwrap(b)};k.dom.safe.assignLocation=function(a,b){k.dom.asserts.assertIsLocation(a);b=b instanceof k.html.SafeUrl?b:k.html.SafeUrl.sanitizeAssertUnchanged(b);a.assign(k.html.SafeUrl.unwrap(b))}; k.dom.safe.replaceLocation=function(a,b){b=b instanceof k.html.SafeUrl?b:k.html.SafeUrl.sanitizeAssertUnchanged(b);a.replace(k.html.SafeUrl.unwrap(b))};k.dom.safe.openInWindow=function(a,b,c,f,g){a=a instanceof k.html.SafeUrl?a:k.html.SafeUrl.sanitizeAssertUnchanged(a);b=b||k.global;c=c instanceof k.string.Const?k.string.Const.unwrap(c):c||"";return void 0!==f||void 0!==g?b.open(k.html.SafeUrl.unwrap(a),c,f,g):b.open(k.html.SafeUrl.unwrap(a),c)}; k.dom.safe.parseFromStringHtml=function(a,b){return k.dom.safe.parseFromString(a,b,"text/html")};k.dom.safe.parseFromString=function(a,b,c){return a.parseFromString(k.html.SafeHtml.unwrapTrustedHTML(b),c)}; k.dom.safe.createImageFromBlob=function(a){if(!/^image\/.*/g.test(a.type))throw Error("goog.dom.safe.createImageFromBlob only accepts MIME type image/.*.");var b=k.global.URL.createObjectURL(a);a=new k.global.Image;a.onload=function(){k.global.URL.revokeObjectURL(b)};k.dom.safe.setImageSrc(a,k.html.uncheckedconversions.safeUrlFromStringKnownToSatisfyTypeContract(k.string.Const.from("Image blob URL."),b));return a};k.dom.safe.createContextualFragment=function(a,b){return a.createContextualFragment(k.html.SafeHtml.unwrapTrustedHTML(b))};k.string.DETECT_DOUBLE_ESCAPING=!1;k.string.FORCE_NON_DOM_HTML_UNESCAPING=!1;k.string.Unicode={NBSP:"\u00a0"};k.string.startsWith=k.string.internal.startsWith;k.string.endsWith=k.string.internal.endsWith;k.string.caseInsensitiveStartsWith=k.string.internal.caseInsensitiveStartsWith;k.string.caseInsensitiveEndsWith=k.string.internal.caseInsensitiveEndsWith;k.string.caseInsensitiveEquals=k.string.internal.caseInsensitiveEquals; k.string.subs=function(a,b){for(var c=a.split("%s"),f="",g=Array.prototype.slice.call(arguments,1);g.length&&1=a||"\u0080"<=a&&"\ufffd">=a}; k.string.stripNewlines=function(a){return a.replace(/(\r\n|\r|\n)+/g," ")};k.string.canonicalizeNewlines=function(a){return a.replace(/(\r\n|\r|\n)/g,"\n")};k.string.normalizeWhitespace=function(a){return a.replace(/\xa0|\s/g," ")};k.string.normalizeSpaces=function(a){return a.replace(/\xa0|[ \t]+/g," ")};k.string.collapseBreakingSpaces=function(a){return a.replace(/[\t\r\n ]+/g," ").replace(/^[\t\r\n ]+|[\t\r\n ]+$/g,"")};k.string.trim=k.string.internal.trim; k.string.trimLeft=function(a){return a.replace(/^[\s\xa0]+/,"")};k.string.trimRight=function(a){return a.replace(/[\s\xa0]+$/,"")};k.string.caseInsensitiveCompare=k.string.internal.caseInsensitiveCompare; k.string.numberAwareCompare_=function(a,b,c){if(a==b)return 0;if(!a)return-1;if(!b)return 1;for(var f=a.toLowerCase().match(c),g=b.toLowerCase().match(c),h=Math.min(f.length,g.length),l=0;l",""":'"'};var f=b?b.createElement("div"):k.global.document.createElement("div");return a.replace(k.string.HTML_ENTITY_PATTERN_,function(g,h){var l=c[g];if(l)return l;"#"==h.charAt(0)&&(h=Number("0"+h.substr(1)),isNaN(h)||(l=String.fromCharCode(h)));l||(k.dom.safe.setInnerHtml(f,k.html.uncheckedconversions.safeHtmlFromStringKnownToSatisfyTypeContract(k.string.Const.from("Single HTML entity."),g+" ")),l=f.firstChild.nodeValue.slice(0, -1));return c[g]=l})};k.string.unescapePureXmlEntities_=function(a){return a.replace(/&([^;]+);/g,function(b,c){switch(c){case "amp":return"&";case "lt":return"<";case "gt":return">";case "quot":return'"';default:return"#"!=c.charAt(0)||(c=Number("0"+c.substr(1)),isNaN(c))?b:String.fromCharCode(c)}})};k.string.HTML_ENTITY_PATTERN_=/&([^;\s<&]+);?/g;k.string.whitespaceEscape=function(a){return k.string.newLineToBr(a.replace(/ /g,"  "),void 0)}; k.string.preserveSpaces=function(a){return a.replace(/(^|[\n ]) /g,"$1"+k.string.Unicode.NBSP)};k.string.stripQuotes=function(a,b){for(var c=b.length,f=0;fb&&(a=a.substring(0,b-3)+"...");c&&(a=k.string.htmlEscape(a));return a}; k.string.truncateMiddle=function(a,b,c,f){c&&(a=k.string.unescapeEntities(a));f&&a.length>b?(f>b&&(f=b),a=a.substring(0,b-f)+"..."+a.substring(a.length-f)):a.length>b&&(f=Math.floor(b/2),a=a.substring(0,f+b%2)+"..."+a.substring(a.length-f));c&&(a=k.string.htmlEscape(a));return a};k.string.specialEscapeChars_={"\x00":"\\0","\b":"\\b","\f":"\\f","\n":"\\n","\r":"\\r","\t":"\\t","\x0B":"\\x0B",'"':'\\"',"\\":"\\\\","<":"\\u003C"};k.string.jsEscapeCache_={"'":"\\'"}; k.string.quote=function(a){a=String(a);for(var b=['"'],c=0;cg?f:k.string.escapeChar(f))}b.push('"');return b.join("")};k.string.escapeString=function(a){for(var b=[],c=0;cb)var c=a;else{if(256>b){if(c="\\x",16>b||256b&&(c+="0");c+=b.toString(16).toUpperCase()}return k.string.jsEscapeCache_[a]=c};k.string.contains=k.string.internal.contains;k.string.caseInsensitiveContains=k.string.internal.caseInsensitiveContains; k.string.countOf=function(a,b){return a&&b?a.split(b).length-1:0};k.string.removeAt=function(a,b,c){var f=a;0<=b&&b>>0;return b};k.string.uniqueStringCounter_=2147483648*Math.random()|0; k.string.createUniqueString=function(){return"goog_"+k.string.uniqueStringCounter_++};k.string.toNumber=function(a){var b=Number(a);return 0==b&&k.string.isEmptyOrWhitespace(a)?NaN:b};k.string.isLowerCamelCase=function(a){return/^[a-z]+([A-Z][a-z]*)*$/.test(a)};k.string.isUpperCamelCase=function(a){return/^([A-Z][a-z]*)+$/.test(a)};k.string.toCamelCase=function(a){return String(a).replace(/\-([a-z])/g,function(b,c){return c.toUpperCase()})}; k.string.toSelectorCase=function(a){return String(a).replace(/([A-Z])/g,"-$1").toLowerCase()};k.string.toTitleCase=function(a,b){b="string"===typeof b?k.string.regExpEscape(b):"\\s";return a.replace(new RegExp("(^"+(b?"|["+b+"]+":"")+")([a-z])","g"),function(c,f,g){return f+g.toUpperCase()})};k.string.capitalize=function(a){return String(a.charAt(0)).toUpperCase()+String(a.substr(1)).toLowerCase()}; k.string.parseInt=function(a){isFinite(a)&&(a=String(a));return"string"===typeof a?/^\s*-?0x/i.test(a)?parseInt(a,16):parseInt(a,10):NaN};k.string.splitLimit=function(a,b,c){a=a.split(b);for(var f=[];0c&&(c=g)}return-1==c?a:a.slice(c+1)}; k.string.editDistance=function(a,b){var c=[],f=[];if(a==b)return 0;if(!a.length||!b.length)return Math.max(a.length,b.length);for(var g=0;gparseFloat(a))?String(b):a}; k.userAgent.getVersionRegexResult_=function(){var a=k.userAgent.getUserAgentString();if(k.userAgent.GECKO)return/rv:([^\);]+)(\)|;)/.exec(a);if(k.userAgent.EDGE)return/Edge\/([\d\.]+)/.exec(a);if(k.userAgent.IE)return/\b(?:MSIE|rv)[: ]([^\);]+)(\)|;)/.exec(a);if(k.userAgent.WEBKIT)return/WebKit\/(\S+)/.exec(a);if(k.userAgent.OPERA)return/(?:Version)[ \/]?(\S+)/.exec(a)};k.userAgent.getDocumentMode_=function(){var a=k.global.document;return a?a.documentMode:void 0};k.userAgent.VERSION=k.userAgent.determineVersion_(); k.userAgent.compare=function(a,b){return k.string.compareVersions(a,b)};k.userAgent.isVersionOrHigherCache_={};k.userAgent.isVersionOrHigher=function(a){return k.userAgent.ASSUME_ANY_VERSION||k.reflect.cache(k.userAgent.isVersionOrHigherCache_,a,function(){return 0<=k.string.compareVersions(k.userAgent.VERSION,a)})};k.userAgent.isVersion=k.userAgent.isVersionOrHigher;k.userAgent.isDocumentModeOrHigher=function(a){return Number(k.userAgent.DOCUMENT_MODE)>=a};k.userAgent.isDocumentMode=k.userAgent.isDocumentModeOrHigher; var Ua;if(k.global.document&&k.userAgent.IE){var Va=k.userAgent.getDocumentMode_();Ua=Va?Va:parseInt(k.userAgent.VERSION,10)||void 0}else Ua=void 0;k.userAgent.DOCUMENT_MODE=Ua;k.debug.LOGGING_ENABLED=k.DEBUG;k.debug.FORCE_SLOPPY_STACKS=!1;k.debug.CHECK_FOR_THROWN_EVENT=!1;k.debug.catchErrors=function(a,b,c){c=c||k.global;var f=c.onerror,g=!!b;k.userAgent.WEBKIT&&!k.userAgent.isVersionOrHigher("535.3")&&(g=!g);c.onerror=function(h,l,r,v,E){f&&f(h,l,r,v,E);a({message:h,fileName:l,line:r,lineNumber:r,col:v,error:E});return g}}; k.debug.expose=function(a,b){if("undefined"==typeof a)return"undefined";if(null==a)return"NULL";var c=[],f;for(f in a)if(b||"function"!==typeof a[f]){var g=f+" = ";try{g+=a[f]}catch(h){g+="*** "+h+" ***"}c.push(g)}return c.join("\n")}; k.debug.deepExpose=function(a,b){var c=[],f=[],g={},h=function(l,r){var v=r+" ";try{if(void 0===l)c.push("undefined");else if(null===l)c.push("NULL");else if("string"===typeof l)c.push('"'+l.replace(/\n/g,"\n"+r)+'"');else if("function"===typeof l)c.push(String(l).replace(/\n/g,"\n"+r));else if(k.isObject(l)){k.hasUid(l)||f.push(l);var E=k.getUid(l);if(g[E])c.push("*** reference loop detected (id="+E+") ***");else{g[E]=!0;c.push("{");for(var H in l)if(b||"function"!==typeof l[H])c.push("\n"),c.push(v), c.push(H+" = "),h(l[H],v);c.push("\n"+r+"}");delete g[E]}}else c.push(l)}catch(ia){c.push("*** "+ia+" ***")}};h(a,"");for(a=0;a=k.debug.MAX_STACK_DEPTH){b.push("[...long stack...]");break}}a&&f>=a?b.push("[...reached max depth limit...]"):b.push("[end]");return b.join("")}; k.debug.MAX_STACK_DEPTH=50;k.debug.getNativeStackTrace_=function(a){var b=Error();if(Error.captureStackTrace)return Error.captureStackTrace(b,a),String(b.stack);try{throw b;}catch(c){b=c}return(a=b.stack)?String(a):null};k.debug.getStacktrace=function(a){var b;k.debug.FORCE_SLOPPY_STACKS||(b=k.debug.getNativeStackTrace_(a||k.debug.getStacktrace));b||(b=k.debug.getStacktraceHelper_(a||arguments.callee.caller,[]));return b}; k.debug.getStacktraceHelper_=function(a,b){var c=[];if(ua(b,a))c.push("[...circular reference...]");else if(a&&b.length=a.keyCode)a.keyCode=-1}catch(b){}};k.events.BrowserEvent.getPointerType_=function(a){return"string"===typeof a.pointerType?a.pointerType:k.events.BrowserEvent.IE_POINTER_TYPE_MAP[a.pointerType]||""};k.events.Listenable=function(){};k.events.Listenable.IMPLEMENTED_BY_PROP="closure_listenable_"+(1E6*Math.random()|0);k.events.Listenable.addImplementation=function(a){a.prototype[k.events.Listenable.IMPLEMENTED_BY_PROP]=!0};k.events.Listenable.isImplementedBy=function(a){return!(!a||!a[k.events.Listenable.IMPLEMENTED_BY_PROP])};d=k.events.Listenable.prototype;d.listen=function(){};d.listenOnce=function(){};d.unlisten=function(){};d.unlistenByKey=function(){};d.dispatchEvent=function(){}; d.removeAllListeners=function(){};d.getParentEventTarget=function(){};d.fireListeners=function(){};d.getListeners=function(){};d.getListener=function(){};d.hasListener=function(){};k.events.ListenableKey=function(){};k.events.ListenableKey.counter_=0;k.events.ListenableKey.reserveKey=function(){return++k.events.ListenableKey.counter_};k.events.Listener=function(a,b,c,f,g){this.listener=a;this.proxy=null;this.src=b;this.type=c;this.capture=!!f;this.handler=g;this.key=k.events.ListenableKey.reserveKey();this.removed=this.callOnce=!1};k.events.Listener.ENABLE_MONITORING=!1;var Ya=function(a){a.removed=!0;a.listener=null;a.proxy=null;a.src=null;a.handler=null};k.events.ListenerMap=function(a){this.src=a;this.listeners={};this.typeCount_=0};k.events.ListenerMap.prototype.add=function(a,b,c,f,g){var h=a.toString();a=this.listeners[h];a||(a=this.listeners[h]=[],this.typeCount_++);var l=k.events.ListenerMap.findListenerIndex_(a,b,f,g);-1a.keyCode||void 0!=a.returnValue};k.events.uniqueIdCounter_=0; k.events.getUniqueId=function(a){return a+"_"+k.events.uniqueIdCounter_++};k.events.getListenerMap_=function(a){a=a[k.events.LISTENER_MAP_PROP_];return a instanceof k.events.ListenerMap?a:null};k.events.LISTENER_WRAPPER_PROP_="__closure_events_fn_"+(1E9*Math.random()>>>0); k.events.wrapListener=function(a){k.asserts.assert(a,"Listener can not be null.");if("function"===typeof a)return a;k.asserts.assert(a.handleEvent,"An object listener must have handleEvent method.");a[k.events.LISTENER_WRAPPER_PROP_]||(a[k.events.LISTENER_WRAPPER_PROP_]=function(b){return a.handleEvent(b)});return a[k.events.LISTENER_WRAPPER_PROP_]};k.debug.entryPointRegistry.register(function(a){k.events.handleBrowserEvent_=a(k.events.handleBrowserEvent_)});k.events.EventHandler=function(a){k.Disposable.call(this);this.handler_=a;this.keys_={}};k.inherits(k.events.EventHandler,k.Disposable);k.events.EventHandler.typeArray_=[];k.events.EventHandler.prototype.listen=function(a,b,c,f){return this.listen_(a,b,c,f)}; k.events.EventHandler.prototype.listen_=function(a,b,c,f,g){Array.isArray(b)||(b&&(k.events.EventHandler.typeArray_[0]=b.toString()),b=k.events.EventHandler.typeArray_);for(var h=0;ha*b?a+b:a};k.math.lerp=function(a,b,c){return a+c*(b-a)};k.math.nearlyEquals=function(a,b,c){return Math.abs(a-b)<=(c||1E-6)};k.math.standardAngle=function(a){return k.math.modulo(a,360)};k.math.standardAngleInRadians=function(a){return k.math.modulo(a,2*Math.PI)}; k.math.toRadians=function(a){return a*Math.PI/180};k.math.toDegrees=function(a){return 180*a/Math.PI};k.math.angleDx=function(a,b){return b*Math.cos(k.math.toRadians(a))};k.math.angleDy=function(a,b){return b*Math.sin(k.math.toRadians(a))};k.math.angle=function(a,b,c,f){return k.math.standardAngle(k.math.toDegrees(Math.atan2(f-b,c-a)))};k.math.angleDifference=function(a,b){a=k.math.standardAngle(b)-k.math.standardAngle(a);180=a&&(a=360+a);return a}; k.math.sign=function(a){return 0a?-1:a};k.math.longestCommonSubsequence=function(a,b,c,f){c=c||function(H,ia){return H==ia};f=f||function(H){return a[H]};for(var g=a.length,h=b.length,l=[],r=0;rl[r][v-1]?r--:v--;return E}; k.math.sum=function(a){return oa(arguments,function(b,c){return b+c},0)};k.math.average=function(a){return k.math.sum.apply(null,arguments)/arguments.length};k.math.sampleVariance=function(a){var b=arguments.length;if(2>b)return 0;var c=k.math.average.apply(null,arguments);return k.math.sum.apply(null,p(arguments,function(f){return Math.pow(f-c,2)}))/(b-1)};k.math.standardDeviation=function(a){return Math.sqrt(k.math.sampleVariance.apply(null,arguments))}; k.math.isInt=function(a){return isFinite(a)&&0==a%1};k.math.isFiniteNumber=function(a){return isFinite(a)};k.math.isNegativeZero=function(a){return 0==a&&0>1/a};k.math.log10Floor=function(a){if(0a?1:0)}return 0==a?-Infinity:NaN};k.math.safeFloor=function(a,b){k.asserts.assert(void 0===b||0=a.length)throw k.iter.StopIteration;if(b in a)return a[b++];b++}};return c}throw Error("Not implemented");}; k.iter.forEach=function(a,b,c){if(k.isArrayLike(a))try{n(a,b,c)}catch(f){if(f!==k.iter.StopIteration)throw f;}else{a=k.iter.toIterator(a);try{for(;;)b.call(c,a.next(),void 0,a)}catch(f){if(f!==k.iter.StopIteration)throw f;}}};k.iter.filter=function(a,b,c){var f=k.iter.toIterator(a);a=new k.iter.Iterator;a.next=function(){for(;;){var g=f.next();if(b.call(c,g,void 0,f))return g}};return a};k.iter.filterFalse=function(a,b,c){return k.iter.filter(a,k.functions.not(b),c)}; k.iter.range=function(a,b,c){var f=0,g=a,h=c||1;1=g||0>h&&f<=g)throw k.iter.StopIteration;var r=f;f+=h;return r};return l};k.iter.join=function(a,b){return k.iter.toArray(a).join(b)};k.iter.map=function(a,b,c){var f=k.iter.toIterator(a);a=new k.iter.Iterator;a.next=function(){var g=f.next();return b.call(c,g,void 0,f)};return a}; k.iter.reduce=function(a,b,c,f){var g=c;k.iter.forEach(a,function(h){g=b.call(f,g,h)});return g};k.iter.some=function(a,b,c){a=k.iter.toIterator(a);try{for(;;)if(b.call(c,a.next(),void 0,a))return!0}catch(f){if(f!==k.iter.StopIteration)throw f;}return!1};k.iter.every=function(a,b,c){a=k.iter.toIterator(a);try{for(;;)if(!b.call(c,a.next(),void 0,a))return!1}catch(f){if(f!==k.iter.StopIteration)throw f;}return!0};k.iter.chain=function(a){return k.iter.chainFromIterable(arguments)}; k.iter.chainFromIterable=function(a){var b=k.iter.toIterator(a);a=new k.iter.Iterator;var c=null;a.next=function(){for(;;){if(null==c){var f=b.next();c=k.iter.toIterator(f)}try{return c.next()}catch(g){if(g!==k.iter.StopIteration)throw g;c=null}}};return a};k.iter.dropWhile=function(a,b,c){var f=k.iter.toIterator(a);a=new k.iter.Iterator;var g=!0;a.next=function(){for(;;){var h=f.next();if(!g||!b.call(c,h,void 0,f))return g=!1,h}};return a}; k.iter.takeWhile=function(a,b,c){var f=k.iter.toIterator(a);a=new k.iter.Iterator;a.next=function(){var g=f.next();if(b.call(c,g,void 0,f))return g;throw k.iter.StopIteration;};return a};k.iter.toArray=function(a){if(k.isArrayLike(a))return Da(a);a=k.iter.toIterator(a);var b=[];k.iter.forEach(a,function(c){b.push(c)});return b};k.iter.equals=function(a,b){a=k.iter.zipLongest({},a,b);var c=Ma;return k.iter.every(a,function(f){return c(f[0],f[1])})}; k.iter.nextOrValue=function(a){try{k.iter.toIterator(a).next()}catch(b){if(b!=k.iter.StopIteration)throw b;}};k.iter.product=function(a){if(pa(arguments,function(g){return!g.length})||!arguments.length)return new k.iter.Iterator;var b=new k.iter.Iterator,c=arguments,f=Oa(0,c.length);b.next=function(){if(f){for(var g=p(f,function(l,r){return c[r][l]}),h=f.length-1;0<=h;h--){k.asserts.assert(f);if(f[h]=b),a=k.iter.limit(a,c-b));return a};k.iter.hasDuplicates_=function(a){var b=[];Fa(a,b);return a.length!=b.length};k.iter.permutations=function(a,b){a=k.iter.toArray(a);b=k.iter.product.apply(void 0,Oa(a,"number"===typeof b?b:a.length));return k.iter.filter(b,function(c){return!k.iter.hasDuplicates_(c)})}; k.iter.combinations=function(a,b){function c(h){return f[h]}var f=k.iter.toArray(a);a=k.iter.range(f.length);b=k.iter.permutations(a,b);var g=k.iter.filter(b,function(h){return La(h)});b=new k.iter.Iterator;b.next=function(){return p(g.next(),c)};return b}; k.iter.combinationsWithReplacement=function(a,b){function c(h){return f[h]}var f=k.iter.toArray(a);a=Na(f.length);b=k.iter.product.apply(void 0,Oa(a,b));var g=k.iter.filter(b,function(h){return La(h)});b=new k.iter.Iterator;b.next=function(){return p(g.next(),c)};return b};k.structs={};k.structs.Map=function(a,b){this.map_={};this.keys_=[];this.version_=this.count_=0;var c=arguments.length;if(12*this.count_&&bb(this),!0):!1}; var bb=function(a){if(a.count_!=a.keys_.length){for(var b=0,c=0;b=f.keys_.length)throw k.iter.StopIteration;var h=f.keys_[b++];return a?h:f.map_[h]};return g};k.structs.Map.hasKey_=function(a,b){return Object.prototype.hasOwnProperty.call(a,b)};k.structs.LinkedMap=function(a){this.maxCount_=a||null;this.cache_=!0;this.evictionCallback_=void 0;this.map_=new k.structs.Map;this.head_=new k.structs.LinkedMap.Node_("",void 0);this.head_.next=this.head_.prev=this.head_};var db=function(a,b){(b=a.map_.get(b))&&a.cache_&&(b.remove(),cb(a,b));return b};d=k.structs.LinkedMap.prototype;d.get=function(a,b){return(a=db(this,a))?a.value:b}; d.set=function(a,b){var c=db(this,a);c?c.value=b:(c=new k.structs.LinkedMap.Node_(a,b),this.map_.set(a,c),cb(this,c))};d.peek=function(){return this.head_.next.value};d.shift=function(){return eb(this,this.head_.next)};d.pop=function(){return eb(this,this.head_.prev)};d.remove=function(a){return(a=this.map_.get(a))?(this.removeNode(a),!0):!1};d.removeNode=function(a){a.remove();this.map_.remove(a.key)};d.getCount=function(){return this.map_.getCount()};d.isEmpty=function(){return this.map_.isEmpty()}; d.getKeys=function(){return this.map(function(a,b){return b})};d.getValues=function(){return this.map(function(a){return a})};d.contains=function(a){return this.some(function(b){return b==a})};d.containsKey=function(a){return this.map_.containsKey(a)};d.clear=function(){gb(this,0)};d.forEach=function(a,b){for(var c=this.head_.next;c!=this.head_;c=c.next)a.call(b,c.value,c.key,this)};d.map=function(a,b){for(var c=[],f=this.head_.next;f!=this.head_;f=f.next)c.push(a.call(b,f.value,f.key,this));return c}; d.some=function(a,b){for(var c=this.head_.next;c!=this.head_;c=c.next)if(a.call(b,c.value,c.key,this))return!0;return!1};d.every=function(a,b){for(var c=this.head_.next;c!=this.head_;c=c.next)if(!a.call(b,c.value,c.key,this))return!1;return!0}; var cb=function(a,b){a.cache_?(b.next=a.head_.next,b.prev=a.head_,a.head_.next=b,b.next.prev=b):(b.prev=a.head_.prev,b.next=a.head_,a.head_.prev=b,b.prev.next=b);null!=a.maxCount_&&gb(a,a.maxCount_)},gb=function(a,b){for(;a.getCount()>b;){var c=a.cache_?a.head_.prev:a.head_.next;a.removeNode(c);a.evictionCallback_&&a.evictionCallback_(c.key,c.value)}},eb=function(a,b){a.head_!=b&&a.removeNode(b);return b.value};k.structs.LinkedMap.Node_=function(a,b){this.key=a;this.value=b}; k.structs.LinkedMap.Node_.prototype.remove=function(){this.prev.next=this.next;this.next.prev=this.prev;delete this.prev;delete this.next};var hb=function(a,b){k.events.EventTarget.call(this);this.timeout_=a||36E5;this.cache_=new k.structs.LinkedMap(b||100)};e.inherits(hb,k.events.EventTarget);hb.prototype.get=function(a){return(a=this.cache_.get(a))&&Date.now()-a.timeStamp_<=this.timeout_?a.licenses_:null};hb.prototype.remove=function(a){this.cache_.remove(a)};hb.Entry=function(a){this.timeStamp_=Date.now();this.licenses_=a};da.LicensesCache=hb;k.structs.getCount=function(a){return a.getCount&&"function"==typeof a.getCount?a.getCount():k.isArrayLike(a)||"string"===typeof a?a.length:k.object.getCount(a)};k.structs.getValues=function(a){if(a.getValues&&"function"==typeof a.getValues)return a.getValues();if("string"===typeof a)return a.split("");if(k.isArrayLike(a)){for(var b=[],c=a.length,f=0;fa?null:(void 0).substr(a+1)};k.uri.utils.setFragmentEncoded=function(a,b){return k.uri.utils.removeFragment(a)+(b?"#"+b:"")};k.uri.utils.getFragment=function(){return k.uri.utils.decodeIfPossible_(k.uri.utils.getFragmentEncoded())}; k.uri.utils.getHost=function(a){a=k.uri.utils.split(a);return k.uri.utils.buildFromEncodedParts(a[k.uri.utils.ComponentIndex.SCHEME],a[k.uri.utils.ComponentIndex.USER_INFO],a[k.uri.utils.ComponentIndex.DOMAIN],a[k.uri.utils.ComponentIndex.PORT])};k.uri.utils.getOrigin=function(a){a=k.uri.utils.split(a);return k.uri.utils.buildFromEncodedParts(a[k.uri.utils.ComponentIndex.SCHEME],null,a[k.uri.utils.ComponentIndex.DOMAIN],a[k.uri.utils.ComponentIndex.PORT])}; k.uri.utils.getPathAndAfter=function(a){a=k.uri.utils.split(a);return k.uri.utils.buildFromEncodedParts(null,null,null,null,a[k.uri.utils.ComponentIndex.PATH],a[k.uri.utils.ComponentIndex.QUERY_DATA],a[k.uri.utils.ComponentIndex.FRAGMENT])};k.uri.utils.removeFragment=function(a){var b=a.indexOf("#");return 0>b?a:a.substr(0,b)}; k.uri.utils.haveSameDomain=function(a,b){a=k.uri.utils.split(a);b=k.uri.utils.split(b);return a[k.uri.utils.ComponentIndex.DOMAIN]==b[k.uri.utils.ComponentIndex.DOMAIN]&&a[k.uri.utils.ComponentIndex.SCHEME]==b[k.uri.utils.ComponentIndex.SCHEME]&&a[k.uri.utils.ComponentIndex.PORT]==b[k.uri.utils.ComponentIndex.PORT]};k.uri.utils.assertNoFragmentsOrQueries_=function(a){k.asserts.assert(0>a.indexOf("#")&&0>a.indexOf("?"),"goog.uri.utils: Fragment or query identifiers are not supported: [%s]",a)}; k.uri.utils.parseQueryData=function(a,b){if(a){a=a.split("&");for(var c=0;cb&&(b=a.length);var c=a.indexOf("?");if(0>c||c>b){c=b;var f=""}else f=a.substring(c+1,b);return[a.substr(0,c),f,a.substr(b)]};k.uri.utils.joinQueryData_=function(a){return a[0]+(a[1]?"?"+a[1]:"")+a[2]}; k.uri.utils.appendQueryData_=function(a,b){return b?a?a+"&"+b:b:a};k.uri.utils.appendQueryDataToUri_=function(a,b){if(!b)return a;a=k.uri.utils.splitQueryData_(a);a[1]=k.uri.utils.appendQueryData_(a[1],b);return k.uri.utils.joinQueryData_(a)};k.uri.utils.appendKeyValuePairs_=function(a,b,c){k.asserts.assertString(a);if(Array.isArray(b)){k.asserts.assertArray(b);for(var f=0;ff)return null;var g=a.indexOf("&",f);if(0>g||g>c)g=c;f+=b.length+1;return k.string.urlDecode(a.substr(f,g-f))};k.uri.utils.getParamValues=function(a,b){for(var c=a.search(k.uri.utils.hashOrEndRe_),f=0,g,h=[];0<=(g=k.uri.utils.findParam_(a,f,b,c));){f=a.indexOf("&",g);if(0>f||f>c)f=c;g+=b.length+1;h.push(k.string.urlDecode(a.substr(g,f-g)))}return h}; k.uri.utils.trailingQueryPunctuationRe_=/[?&]($|#)/;k.uri.utils.removeParam=function(a,b){for(var c=a.search(k.uri.utils.hashOrEndRe_),f=0,g,h=[];0<=(g=k.uri.utils.findParam_(a,f,b,c));)h.push(a.substring(f,g)),f=Math.min(a.indexOf("&",g)+1||c,c);h.push(a.substr(f));return h.join("").replace(k.uri.utils.trailingQueryPunctuationRe_,"$1")}; k.uri.utils.setParam=function(a){var b=k.uri.utils.StandardQueryParam.RANDOM,c=k.string.getRandomString();return k.uri.utils.appendParam(k.uri.utils.removeParam(a,b),b,c)};k.uri.utils.setParamsFromMap=function(a,b){a=k.uri.utils.splitQueryData_(a);var c=a[1],f=[];c&&c.split("&").forEach(function(g){var h=g.indexOf("=");b.hasOwnProperty(0<=h?g.substr(0,h):g)||f.push(g)});a[1]=k.uri.utils.appendQueryData_(f.join("&"),k.uri.utils.buildQueryDataFromMap(b));return k.uri.utils.joinQueryData_(a)}; k.uri.utils.appendPath=function(a,b){k.uri.utils.assertNoFragmentsOrQueries_(a);k.string.endsWith(a,"/")&&(a=a.substr(0,a.length-1));k.string.startsWith(b,"/")&&(b=b.substr(1));return""+a+"/"+b};k.uri.utils.setPath=function(a,b){k.string.startsWith(b,"/");k.uri.utils.split(a)};k.uri.utils.StandardQueryParam={RANDOM:"zx"};k.uri.utils.makeUnique=function(a){return k.uri.utils.setParam(a)};k.Uri=function(a,b){this.domain_=this.userInfo_=this.scheme_="";this.port_=null;this.fragment_=this.path_="";this.ignoreCase_=this.isReadOnly_=!1;var c;a instanceof k.Uri?(this.ignoreCase_=void 0!==b?b:a.ignoreCase_,ib(this,a.getScheme()),jb(this,a.getUserInfo()),kb(this,a.getDomain()),lb(this,a.getPort()),this.setPath(a.getPath()),mb(this,a.getQueryData().clone()),nb(this,a.getFragment())):a&&(c=k.uri.utils.split(String(a)))?(this.ignoreCase_=!!b,ib(this,c[k.uri.utils.ComponentIndex.SCHEME]||"", !0),jb(this,c[k.uri.utils.ComponentIndex.USER_INFO]||"",!0),kb(this,c[k.uri.utils.ComponentIndex.DOMAIN]||"",!0),lb(this,c[k.uri.utils.ComponentIndex.PORT]),this.setPath(c[k.uri.utils.ComponentIndex.PATH]||"",!0),mb(this,c[k.uri.utils.ComponentIndex.QUERY_DATA]||"",!0),nb(this,c[k.uri.utils.ComponentIndex.FRAGMENT]||"",!0)):(this.ignoreCase_=!!b,this.queryData_=new k.Uri.QueryData(null,this.ignoreCase_))};k.Uri.RANDOM_PARAM=k.uri.utils.StandardQueryParam.RANDOM; k.Uri.prototype.toString=function(){var a=[],b=this.getScheme();b&&a.push(k.Uri.encodeSpecialChars_(b,k.Uri.reDisallowedInSchemeOrUserInfo_,!0),":");var c=this.getDomain();if(c||"file"==b)a.push("//"),(b=this.getUserInfo())&&a.push(k.Uri.encodeSpecialChars_(b,k.Uri.reDisallowedInSchemeOrUserInfo_,!0),"@"),a.push(k.Uri.removeDoubleEncoding_(k.string.urlEncode(c))),c=this.getPort(),null!=c&&a.push(":",String(c));if(c=this.getPath())this.domain_&&"/"!=c.charAt(0)&&a.push("/"),a.push(k.Uri.encodeSpecialChars_(c, "/"==c.charAt(0)?k.Uri.reDisallowedInAbsolutePath_:k.Uri.reDisallowedInRelativePath_,!0));(c=this.queryData_.toString())&&a.push("?",c);(c=this.getFragment())&&a.push("#",k.Uri.encodeSpecialChars_(c,k.Uri.reDisallowedInFragment_));return a.join("")}; k.Uri.prototype.resolve=function(a){var b=this.clone(),c=!!a.scheme_;c?ib(b,a.getScheme()):c=!!a.userInfo_;c?jb(b,a.getUserInfo()):c=!!a.domain_;c?kb(b,a.getDomain()):c=null!=a.port_;var f=a.getPath();if(c)lb(b,a.getPort());else if(c=!!a.path_){if("/"!=f.charAt(0))if(this.domain_&&!this.path_)f="/"+f;else{var g=b.getPath().lastIndexOf("/");-1!=g&&(f=b.getPath().substr(0,g+1)+f)}f=k.Uri.removeDotSegments(f)}c?b.setPath(f):c=""!==a.queryData_.toString();c?mb(b,a.getQueryData().clone()):c=!!a.fragment_; c&&nb(b,a.getFragment());return b};k.Uri.prototype.clone=function(){return new k.Uri(this)};k.Uri.prototype.getScheme=function(){return this.scheme_};var ib=function(a,b,c){u(a);a.scheme_=c?k.Uri.decodeOrEmpty_(b,!0):b;a.scheme_&&(a.scheme_=a.scheme_.replace(/:$/,""))};k.Uri.prototype.getUserInfo=function(){return this.userInfo_};var jb=function(a,b,c){u(a);a.userInfo_=c?k.Uri.decodeOrEmpty_(b):b};k.Uri.prototype.getDomain=function(){return this.domain_}; var kb=function(a,b,c){u(a);a.domain_=c?k.Uri.decodeOrEmpty_(b,!0):b};k.Uri.prototype.getPort=function(){return this.port_};var lb=function(a,b){u(a);if(b){b=Number(b);if(isNaN(b)||0>b)throw Error("Bad port number "+b);a.port_=b}else a.port_=null};k.Uri.prototype.getPath=function(){return this.path_};k.Uri.prototype.setPath=function(a,b){u(this);this.path_=b?k.Uri.decodeOrEmpty_(a,!0):a}; var mb=function(a,b,c){u(a);b instanceof k.Uri.QueryData?(a.queryData_=b,a.queryData_.setIgnoreCase(a.ignoreCase_)):(c||(b=k.Uri.encodeSpecialChars_(b,k.Uri.reDisallowedInQuery_)),a.queryData_=new k.Uri.QueryData(b,a.ignoreCase_))};k.Uri.prototype.getQueryData=function(){return this.queryData_};k.Uri.prototype.getQuery=function(){return this.queryData_.toString()};k.Uri.prototype.getFragment=function(){return this.fragment_};var nb=function(a,b,c){u(a);a.fragment_=c?k.Uri.decodeOrEmpty_(b):b}; k.Uri.prototype.makeUnique=function(){u(this);var a=k.Uri.RANDOM_PARAM,b=k.string.getRandomString();u(this);this.queryData_.set(a,b);return this};k.Uri.prototype.removeParameter=function(a){u(this);this.queryData_.remove(a);return this};var u=function(a){if(a.isReadOnly_)throw Error("Tried to modify a read-only Uri");};k.Uri.prototype.setIgnoreCase=function(a){this.ignoreCase_=a;this.queryData_&&this.queryData_.setIgnoreCase(a)}; k.Uri.parse=function(a,b){return a instanceof k.Uri?a.clone():new k.Uri(a,b)};k.Uri.create=function(a,b,c,f,g,h,l,r){r=new k.Uri(null,r);a&&ib(r,a);b&&jb(r,b);c&&kb(r,c);f&&lb(r,f);g&&r.setPath(g);h&&mb(r,h);l&&nb(r,l);return r};k.Uri.resolve=function(a,b){a instanceof k.Uri||(a=k.Uri.parse(a));b instanceof k.Uri||(b=k.Uri.parse(b));return a.resolve(b)}; k.Uri.removeDotSegments=function(a){if(".."==a||"."==a)return"";if(k.string.contains(a,"./")||k.string.contains(a,"/.")){var b=k.string.startsWith(a,"/");a=a.split("/");for(var c=[],f=0;f>4&15).toString(16)+(a&15).toString(16)};k.Uri.removeDoubleEncoding_=function(a){return a.replace(/%25([0-9a-fA-F]{2})/g,"%$1")};k.Uri.reDisallowedInSchemeOrUserInfo_=/[#\/\?@]/g;k.Uri.reDisallowedInRelativePath_=/[#\?:]/g;k.Uri.reDisallowedInAbsolutePath_=/[#\?]/g; k.Uri.reDisallowedInQuery_=/[#\?@]/g;k.Uri.reDisallowedInFragment_=/#/g;k.Uri.haveSameDomain=function(a,b){a=k.uri.utils.split(a);b=k.uri.utils.split(b);return a[k.uri.utils.ComponentIndex.DOMAIN]==b[k.uri.utils.ComponentIndex.DOMAIN]&&a[k.uri.utils.ComponentIndex.PORT]==b[k.uri.utils.ComponentIndex.PORT]};k.Uri.QueryData=function(a,b){this.count_=this.keyMap_=null;this.encodedQuery_=a||null;this.ignoreCase_=!!b}; var w=function(a){a.keyMap_||(a.keyMap_=new k.structs.Map,a.count_=0,a.encodedQuery_&&k.uri.utils.parseQueryData(a.encodedQuery_,function(b,c){a.add(k.string.urlDecode(b),c)}))};k.Uri.QueryData.createFromMap=function(a,b){var c=k.structs.getKeys(a);if("undefined"==typeof c)throw Error("Keys are undefined");b=new k.Uri.QueryData(null,b);a=k.structs.getValues(a);for(var f=0;f>=8);b[c++]=g}return b};k.crypt.byteArrayToString=function(a){if(8192>=a.length)return String.fromCharCode.apply(null,a);for(var b="",c=0;cg?b[c++]=g:(2048>g?b[c++]=g>>6|192:(55296==(g&64512)&&f+1>18|240,b[c++]=g>>12&63|128):b[c++]=g>>12|224,b[c++]=g>>6&63|128),b[c++]=g&63|128)}return b}; k.crypt.utf8ByteArrayToString=function(a){for(var b=[],c=0,f=0;cg)b[f++]=String.fromCharCode(g);else if(191g){var h=a[c++];b[f++]=String.fromCharCode((g&31)<<6|h&63)}else if(239g){h=a[c++];var l=a[c++],r=a[c++];g=((g&7)<<18|(h&63)<<12|(l&63)<<6|r&63)-65536;b[f++]=String.fromCharCode(55296+(g>>10));b[f++]=String.fromCharCode(56320+(g&1023))}else h=a[c++],l=a[c++],b[f++]=String.fromCharCode((g&15)<<12|(h&63)<<6|l&63)}return b.join("")}; k.crypt.xorByteArray=function(a,b){k.asserts.assert(a.length==b.length,"XOR array lengths must match");for(var c=[],f=0;f>>0;a=Math.floor((a-b)/4294967296)>>>0;A=b;B=a}function xb(a){var b=0>a;a=Math.abs(a);var c=a>>>0;a=Math.floor((a-c)/4294967296);a>>>=0;b&&(a=~a>>>0,c=(~c>>>0)+1,4294967295a?1:0;a=b?-a:a;if(0===a)B=0<1/a?0:2147483648,A=0;else if(isNaN(a))B=2147483647,A=4294967295;else if(1.7976931348623157E308>>0,A=0;else if(2.2250738585072014E-308>a)a/=Math.pow(2,-1074),B=(b<<31|a/4294967296)>>>0,A=a>>>0;else{var c=a,f=0;if(2<=c)for(;2<=c&&1023>f;)f++,c/=2;else for(;1>c&&-1022>>0;A=4503599627370496*a>>>0}} function zb(a){var b=a.charCodeAt(4),c=a.charCodeAt(5),f=a.charCodeAt(6),g=a.charCodeAt(7);A=a.charCodeAt(0)+(a.charCodeAt(1)<<8)+(a.charCodeAt(2)<<16)+(a.charCodeAt(3)<<24)>>>0;B=b+(c<<8)+(f<<16)+(g<<24)>>>0}function Ab(a,b){return 4294967296*b+(a>>>0)}function Bb(a,b){var c=b&2147483648;c&&(a=~a+1>>>0,b=~b>>>0,0==a&&(b=b+1>>>0));a=Ab(a,b);return c?-a:a}function Cb(a,b,c){var f=-(a&1);return c((a>>>1|b<<31)^f,b>>>1^f)} function Db(a,b){var c=2*(b>>31)+1,f=b>>>20&2047;a=4294967296*(b&1048575)+a;return 2047==f?a?NaN:Infinity*c:0==f?c*Math.pow(2,-1074)*a:c*Math.pow(2,f-1075)*(a+4503599627370496)}function Eb(a,b){return String.fromCharCode(a>>>0&255,a>>>8&255,a>>>16&255,a>>>24&255,b>>>0&255,b>>>8&255,b>>>16&255,b>>>24&255)} function Fb(a,b){function c(g,h){g=g?String(g):"";return h?"0000000".slice(g.length)+g:g}if(2097151>=b)return""+(4294967296*b+a);var f=(a>>>24|b<<8)>>>0&16777215;b=b>>16&65535;a=(a&16777215)+6777216*f+6710656*b;f+=8147497*b;b*=2;1E7<=a&&(f+=Math.floor(a/1E7),a%=1E7);1E7<=f&&(b+=Math.floor(f/1E7),f%=1E7);return c(b,0)+c(f,b)+c(a,1)}function Gb(a,b){var c=b&2147483648;c&&(a=~a+1>>>0,b=~b+(0==a?1:0)>>>0);a=Fb(a,b);return c?"-"+a:a}function Hb(a,b){zb(a);a=A;var c=B;return b?Gb(a,c):Fb(a,c)} function Ib(a){function b(l,r){for(var v=0;8>v&&(1!==l||0>>=8}function c(){for(var l=0;8>l;l++)g[l]=~g[l]&255}(0,k.asserts.assert)(0a?48+a:87+a)}function Mb(a){return 97<=a?a-97+10:a-48} function Nb(a,b,c,f,g){var h=0;if(128>f)for(;b>=7}if(a[b++]!=l)break;h++;b+=g}return h}function Ob(a){if(a.constructor===Uint8Array)return a;if(a.constructor===ArrayBuffer)return new Uint8Array(a);if(a.constructor===Array)return new Uint8Array(a);if(a.constructor===String)return k.crypt.base64.decodeStringToUint8Array(a);(0,k.asserts.fail)("Type not convertible to Uint8Array.");return new Uint8Array(0)} x.utils.byteSourceToUint8Array=Ob;x.utils.countDelimitedFields=function(a,b,c,f){var g=0;for(f=8*f+z.DELIMITED;b>=7}if(a[b++]!=h)break;g++;for(var l=0,r=1;h=a[b++],l+=(h&127)*r,r*=128,0!=(h&128););b+=l}return g};x.utils.countFixed32Fields=function(a,b,c,f){return Nb(a,b,c,8*f+z.FIXED32,4)};x.utils.countFixed64Fields=function(a,b,c,f){return Nb(a,b,c,8*f+z.FIXED64,8)}; x.utils.countVarintFields=function(a,b,c,f){var g=0;f=8*f+z.VARINT;if(128>f)for(;b>=7}if(a[b++]!=h)break;for(g++;h=a[b++],0!=(h&128););}return g};x.utils.countVarints=function(a,b,c){for(var f=0,g=b;g>7;return c-b-f}; x.utils.debugBytesToTextFormat=function(a){var b='"';if(a){a=Ob(a);for(var c=0;ca[c]&&(b+="0"),b+=a[c].toString(16)}return b+'"'};x.utils.debugScalarToTextFormat=function(a){return"string"===typeof a?k.string.quote(a):a.toString()};x.utils.decimalStringToHash64=Ib;x.utils.DIGITS="0123456789abcdef".split("");x.utils.fromZigzag64=Cb;x.utils.hash64ArrayToDecimalStrings=function(a,b){for(var c=Array(a.length),f=0;fc;c++){var f=a.charCodeAt(7-c);b[2*c+2]=Lb(f>>4);b[2*c+3]=Lb(f&15)}return b.join("")};x.utils.hash64ToNumber=function(a,b){zb(a);a=A;var c=B;return b?Bb(a,c):Ab(a,c)}; x.utils.hexStringToHash64=function(a){a=a.toLowerCase();(0,k.asserts.assert)(18==a.length);(0,k.asserts.assert)("0"==a[0]);(0,k.asserts.assert)("x"==a[1]);for(var b="",c=0;8>c;c++)b=String.fromCharCode(16*Mb(a.charCodeAt(2*c+2))+Mb(a.charCodeAt(2*c+3)))+b;return b};x.utils.joinFloat64=Db;x.utils.joinFloat32=function(a){var b=2*(a>>31)+1,c=a>>>23&255;a&=8388607;return 255==c?a?NaN:Infinity*b:0==c?b*Math.pow(2,-149)*a:b*Math.pow(2,c-150)*(a+Math.pow(2,23))};x.utils.joinHash64=Eb;x.utils.joinInt64=Bb; x.utils.joinSignedDecimalString=Gb;x.utils.joinUint64=Ab;x.utils.joinUnsignedDecimalString=Fb;x.utils.joinZigzag64=function(a,b){return Cb(a,b,Bb)};x.utils.numberToHash64=function(a){xb(a);return Eb(A,B)};x.utils.splitDecimalString=Kb;x.utils.splitHash64=zb;x.utils.splitFloat64=yb; x.utils.splitFloat32=function(a){var b=0>a?1:0;a=b?-a:a;if(0===a)0<1/a?A=B=0:(B=0,A=2147483648);else if(isNaN(a))B=0,A=2147483647;else if(3.4028234663852886E38>>0;else if(1.1754943508222875E-38>a)a=Math.round(a/Math.pow(2,-149)),B=0,A=(b<<31|a)>>>0;else{var c=Math.floor(Math.log(a)/Math.LN2);a*=Math.pow(2,-c);a=Math.round(8388608*a)&8388607;B=0;A=(b<<31|c+127<<23|a)>>>0}}; x.utils.splitZigzag64=function(a){var b=0>a;a=2*Math.abs(a);wb(a);a=A;var c=B;b&&(0==a?0==c?c=a=4294967295:(c--,a=4294967295):a--);A=a;B=c};x.utils.splitInt64=xb;x.utils.splitUint64=wb;x.utils.getSplit64Low=function(){return A};x.utils.getSplit64High=function(){return B};x.utils.stringToByteArray=function(a){for(var b=new Uint8Array(a.length),c=0;c>31;return c(a<<1^f,(b<<1|a>>>31)^f)};var Pb=function(a,b,c){this.bytes_=null;this.cursor_=this.end_=this.start_=0;this.error_=!1;a&&this.setBlock(a,b,c)};Pb.alloc=function(a,b,c){if(Pb.instanceCache_.length){var f=Pb.instanceCache_.pop();a&&f.setBlock(a,b,c);return f}return new Pb(a,b,c)};d=Pb.prototype;d.clone=function(){return Pb.alloc(this.bytes_,this.start_,this.end_-this.start_)};d.clear=function(){this.bytes_=null;this.cursor_=this.end_=this.start_=0;this.error_=!1}; d.setBlock=function(a,b,c){this.bytes_=Ob(a);this.start_=void 0!==b?b:0;this.end_=void 0!==c?this.start_+c:this.bytes_.length;this.cursor_=this.start_};d.setEnd=function(a){this.end_=a};d.reset=function(){this.cursor_=this.start_};d.getCursor=function(){return this.cursor_};d.advance=function(a){this.cursor_+=a;k.asserts.assert(this.cursor_<=this.end_)};d.getError=function(){return this.error_||0>this.cursor_||this.cursor_>this.end_}; d.readSplitVarint64=function(a){for(var b=128,c=0,f=0,g=0;4>g&&128<=b;g++)b=this.bytes_[this.cursor_++],c|=(b&127)<<7*g;128<=b&&(b=this.bytes_[this.cursor_++],c|=(b&127)<<28,f|=(b&127)>>4);if(128<=b)for(g=0;5>g&&128<=b;g++)b=this.bytes_[this.cursor_++],f|=(b&127)<<7*g+3;if(128>b)return a(c>>>0,f>>>0);k.asserts.fail("Failed to read varint, encoding is invalid.");this.error_=!0}; var Qb=function(a){var b=a.bytes_;var c=b[a.cursor_+0];var f=c&127;if(128>c)return a.cursor_+=1,k.asserts.assert(a.cursor_<=a.end_),f;c=b[a.cursor_+1];f|=(c&127)<<7;if(128>c)return a.cursor_+=2,k.asserts.assert(a.cursor_<=a.end_),f;c=b[a.cursor_+2];f|=(c&127)<<14;if(128>c)return a.cursor_+=3,k.asserts.assert(a.cursor_<=a.end_),f;c=b[a.cursor_+3];f|=(c&127)<<21;if(128>c)return a.cursor_+=4,k.asserts.assert(a.cursor_<=a.end_),f;c=b[a.cursor_+4];f|=(c&15)<<28;if(128>c)return a.cursor_+=5,k.asserts.assert(a.cursor_<= a.end_),f>>>0;a.cursor_+=5;128<=b[a.cursor_++]&&128<=b[a.cursor_++]&&128<=b[a.cursor_++]&&128<=b[a.cursor_++]&&128<=b[a.cursor_++]&&k.asserts.assert(!1);k.asserts.assert(a.cursor_<=a.end_);return f};d=Pb.prototype;d.readSignedVarint32=function(){return Qb(this)}; d.readUint32=function(){var a=this.bytes_[this.cursor_+0],b=this.bytes_[this.cursor_+1],c=this.bytes_[this.cursor_+2],f=this.bytes_[this.cursor_+3];this.cursor_+=4;k.asserts.assert(this.cursor_<=this.end_);return(a<<0|b<<8|c<<16|f<<24)>>>0};d.readInt32=function(){var a=this.bytes_[this.cursor_+0],b=this.bytes_[this.cursor_+1],c=this.bytes_[this.cursor_+2],f=this.bytes_[this.cursor_+3];this.cursor_+=4;k.asserts.assert(this.cursor_<=this.end_);return a<<0|b<<8|c<<16|f<<24}; d.readInt64=function(){var a=this.readUint32(),b=this.readUint32();return Bb(a,b)};d.readInt64String=function(){var a=this.readUint32(),b=this.readUint32();return Gb(a,b)};d.readDouble=function(){var a=this.readUint32(),b=this.readUint32();return Db(a,b)};d.readBool=function(){return!!this.bytes_[this.cursor_++]};d.readEnum=function(){return this.readSignedVarint32()}; d.readString=function(a){var b=this.bytes_,c=this.cursor_;a=c+a;for(var f=[],g="";ch)f.push(h);else if(192>h)continue;else if(224>h){var l=b[c++];f.push((h&31)<<6|l&63)}else if(240>h){l=b[c++];var r=b[c++];f.push((h&15)<<12|(l&63)<<6|r&63)}else if(248>h){l=b[c++];r=b[c++];var v=b[c++];h=(h&7)<<18|(l&63)<<12|(r&63)<<6|v&63;h-=65536;f.push((h>>10&1023)+55296,(h&1023)+56320)}8192<=f.length&&(g+=String.fromCharCode.apply(null,f),f.length=0)}g+=k.crypt.byteArrayToString(f);this.cursor_= c;return g};d.readBytes=function(a){if(0>a||this.cursor_+a>this.bytes_.length)return this.error_=!0,k.asserts.fail("Invalid byte length!"),new Uint8Array(0);var b=this.bytes_.subarray(this.cursor_,this.cursor_+a);this.cursor_+=a;k.asserts.assert(this.cursor_<=this.end_);return b};Pb.instanceCache_=[];x.BinaryDecoder=Pb;var C=function(a,b,c){this.decoder_=Pb.alloc(a,b,c);this.fieldCursor_=this.decoder_.getCursor();this.nextField_=-1;this.nextWireType_=z.INVALID;this.error_=!1};C.alloc=function(a,b,c){if(C.instanceCache_.length){var f=C.instanceCache_.pop();a&&f.decoder_.setBlock(a,b,c);return f}return new C(a,b,c)};C.prototype.getCursor=function(){return this.decoder_.getCursor()};C.prototype.getFieldNumber=function(){return this.nextField_};var D=function(a){return a.nextWireType_==z.END_GROUP}; C.prototype.getError=function(){return this.error_||this.decoder_.getError()};C.prototype.setBlock=function(a,b,c){this.decoder_.setBlock(a,b,c);this.nextField_=-1;this.nextWireType_=z.INVALID};C.prototype.reset=function(){this.decoder_.reset();this.nextField_=-1;this.nextWireType_=z.INVALID};C.prototype.advance=function(a){this.decoder_.advance(a)}; var F=function(a){var b=a.decoder_;if(b.cursor_==b.end_)return!1;if(a.getError())return k.asserts.fail("Decoder hit an error"),!1;a.fieldCursor_=a.decoder_.getCursor();var c=Qb(a.decoder_);b=c>>>3;c&=7;if(c!=z.VARINT&&c!=z.FIXED32&&c!=z.FIXED64&&c!=z.DELIMITED&&c!=z.START_GROUP&&c!=z.END_GROUP)return k.asserts.fail("Invalid wire type: %s (at position %s)",c,a.fieldCursor_),a.error_=!0,!1;a.nextField_=b;a.nextWireType_=c;return!0},G=function(a){switch(a.nextWireType_){case z.VARINT:if(a.nextWireType_!= z.VARINT)k.asserts.fail("Invalid wire type for skipVarintField"),G(a);else{for(a=a.decoder_;a.bytes_[a.cursor_]&128;)a.cursor_++;a.cursor_++}break;case z.FIXED64:a.nextWireType_!=z.FIXED64?(k.asserts.fail("Invalid wire type for skipFixed64Field"),G(a)):a.decoder_.advance(8);break;case z.DELIMITED:if(a.nextWireType_!=z.DELIMITED)k.asserts.fail("Invalid wire type for skipDelimitedField"),G(a);else{var b=Qb(a.decoder_);a.decoder_.advance(b)}break;case z.FIXED32:a.nextWireType_!=z.FIXED32?(k.asserts.fail("Invalid wire type for skipFixed32Field"), G(a)):a.decoder_.advance(4);break;case z.START_GROUP:b=a.nextField_;do{if(!F(a)){k.asserts.fail("Unmatched start-group tag: stream EOF");a.error_=!0;break}if(a.nextWireType_==z.END_GROUP){a.nextField_!=b&&(k.asserts.fail("Unmatched end-group tag"),a.error_=!0);break}G(a)}while(1);break;default:a.error_=!0,k.asserts.fail("Invalid wire encoding for field.")}};d=C.prototype; d.readMessage=function(a,b){k.asserts.assert(this.nextWireType_==z.DELIMITED);var c=this.decoder_.end_,f=Qb(this.decoder_);f=this.decoder_.getCursor()+f;this.decoder_.setEnd(f);b(a,this);this.decoder_.cursor_=f;this.decoder_.setEnd(c)};d.readInt32=function(){k.asserts.assert(this.nextWireType_==z.VARINT);return this.decoder_.readSignedVarint32()};d.readInt64=function(){k.asserts.assert(this.nextWireType_==z.VARINT);return this.decoder_.readSplitVarint64(Bb)}; d.readInt64String=function(){k.asserts.assert(this.nextWireType_==z.VARINT);return this.decoder_.readSplitVarint64(Gb)};d.readUint32=function(){k.asserts.assert(this.nextWireType_==z.VARINT);return Qb(this.decoder_)};d.readDouble=function(){k.asserts.assert(this.nextWireType_==z.FIXED64);return this.decoder_.readDouble()};d.readBool=function(){k.asserts.assert(this.nextWireType_==z.VARINT);return!!Qb(this.decoder_)};d.readEnum=function(){k.asserts.assert(this.nextWireType_==z.VARINT);return this.decoder_.readSplitVarint64(Bb)}; d.readString=function(){k.asserts.assert(this.nextWireType_==z.DELIMITED);var a=Qb(this.decoder_);return this.decoder_.readString(a)};d.readBytes=function(){k.asserts.assert(this.nextWireType_==z.DELIMITED);var a=Qb(this.decoder_);return this.decoder_.readBytes(a)};d.readSplitVarint64=function(a){k.asserts.assert(this.nextWireType_==z.VARINT);return this.decoder_.readSplitVarint64(a)};C.instanceCache_=[];x.BinaryReader=C;x.arith={};x.arith.UInt64=function(a,b){this.lo=a;this.hi=b};x.arith.UInt64.prototype.cmp=function(a){return this.hi>>1|(a.hi&1)<<31)>>>0,a.hi>>>1>>>0)},Sb=function(a){return new x.arith.UInt64(a.lo<<1>>>0,(a.hi<<1|a.lo>>>31)>>>0)}; x.arith.UInt64.prototype.add=function(a){return new x.arith.UInt64((this.lo+a.lo&4294967295)>>>0>>>0,((this.hi+a.hi&4294967295)>>>0)+(4294967296<=this.lo+a.lo?1:0)>>>0)};x.arith.UInt64.prototype.sub=function(a){return new x.arith.UInt64((this.lo-a.lo&4294967295)>>>0>>>0,((this.hi-a.hi&4294967295)>>>0)-(0>this.lo-a.lo?1:0)>>>0)}; x.arith.UInt64.mul32x32=function(a){var b=a&65535,c=a>>>16;a=10*b+65536*(0*b&65535)+65536*(10*c&65535);for(b=0*c+(0*b>>>16)+(10*c>>>16);4294967296<=a;)a-=4294967296,b+=1;return new x.arith.UInt64(a>>>0,b>>>0)}; x.arith.UInt64.prototype.toString=function(){for(var a="",b=this;0!=b.lo||0!=b.hi;){var c=new x.arith.UInt64(0,0);b=new x.arith.UInt64(b.lo,b.hi);for(var f=new x.arith.UInt64(10,0),g=new x.arith.UInt64(1,0);!(f.hi&2147483648);)f=Sb(f),g=Sb(g);for(;0!=g.lo||0!=g.hi;)0>=f.cmp(b)&&(c=c.add(g),b=b.sub(f)),f=Rb(f),g=Rb(g);c=[c,b];b=c[0];a=c[1].lo+a}""==a&&(a="0");return a}; x.arith.UInt64.fromString=function(a){for(var b=new x.arith.UInt64(0,0),c=new x.arith.UInt64(0,0),f=0;fa[f]||"9">>0>>>0,((this.hi+a.hi&4294967295)>>>0)+(4294967296<=this.lo+a.lo?1:0)>>>0)};x.arith.Int64.prototype.sub=function(a){return new x.arith.Int64((this.lo-a.lo&4294967295)>>>0>>>0,((this.hi-a.hi&4294967295)>>>0)-(0>this.lo-a.lo?1:0)>>>0)};x.arith.Int64.prototype.clone=function(){return new x.arith.Int64(this.lo,this.hi)}; x.arith.Int64.prototype.toString=function(){var a=0!=(this.hi&2147483648),b=new x.arith.UInt64(this.lo,this.hi);a&&(b=(new x.arith.UInt64(0,0)).sub(b));return(a?"-":"")+b.toString()};x.arith.Int64.fromString=function(a){var b=0a);for(k.asserts.assert(0<=b&&4294967296>b);0>>7|b<<25)>>>0,b>>>=7;this.buffer_.push(a)}; Tb.prototype.writeSplitFixed64=function(a,b){k.asserts.assert(a==Math.floor(a));k.asserts.assert(b==Math.floor(b));k.asserts.assert(0<=a&&4294967296>a);k.asserts.assert(0<=b&&4294967296>b);this.writeUint32(a);this.writeUint32(b)}; var Ub=function(a,b){k.asserts.assert(b==Math.floor(b));for(k.asserts.assert(0<=b&&4294967296>b);127>>=7;a.buffer_.push(b)},Vb=function(a,b){k.asserts.assert(b==Math.floor(b));k.asserts.assert(-2147483648<=b&&2147483648>b);if(0<=b)Ub(a,b);else{for(var c=0;9>c;c++)a.buffer_.push(b&127|128),b>>=7;a.buffer_.push(1)}};d=Tb.prototype; d.writeUint32=function(a){k.asserts.assert(a==Math.floor(a));k.asserts.assert(0<=a&&4294967296>a);this.buffer_.push(a>>>0&255);this.buffer_.push(a>>>8&255);this.buffer_.push(a>>>16&255);this.buffer_.push(a>>>24&255)};d.writeInt32=function(a){k.asserts.assert(a==Math.floor(a));k.asserts.assert(-2147483648<=a&&2147483648>a);this.buffer_.push(a>>>0&255);this.buffer_.push(a>>>8&255);this.buffer_.push(a>>>16&255);this.buffer_.push(a>>>24&255)}; d.writeInt64=function(a){k.asserts.assert(a==Math.floor(a));k.asserts.assert(-9223372036854775808<=a&&0x7fffffffffffffff>a);xb(a);this.writeSplitFixed64(A,B)};d.writeInt64String=function(a){k.asserts.assert(a==Math.floor(a));k.asserts.assert(-9223372036854775808<=+a&&0x7fffffffffffffff>+a);Kb(a);this.writeSplitFixed64(A,B)};d.writeDouble=function(a){k.asserts.assert(Infinity===a||-Infinity===a||isNaN(a)||-1.7976931348623157E308<=a&&1.7976931348623157E308>=a);yb(a);this.writeUint32(A);this.writeUint32(B)}; d.writeBool=function(a){k.asserts.assert("boolean"===typeof a||"number"===typeof a);this.buffer_.push(a?1:0)};d.writeEnum=function(a){k.asserts.assert(a==Math.floor(a));k.asserts.assert(-2147483648<=a&&2147483648>a);Vb(this,a)};d.writeBytes=function(a){this.buffer_.push.apply(this.buffer_,a)}; d.writeString=function(a){for(var b=0;bc)this.buffer_.push(c);else if(2048>c)this.buffer_.push(c>>6|192),this.buffer_.push(c&63|128);else if(65536>c)if(55296<=c&&56319>=c&&b+1=f&&(c=1024*(c-55296)+f-56320+65536,this.buffer_.push(c>>18|240),this.buffer_.push(c>>12&63|128),this.buffer_.push(c>>6&63|128),this.buffer_.push(c&63|128),b++)}else this.buffer_.push(c>>12|224),this.buffer_.push(c>>6&63|128),this.buffer_.push(c& 63|128)}};x.BinaryEncoder=Tb;k.userAgent.product={};k.userAgent.product.ASSUME_FIREFOX=!1;k.userAgent.product.ASSUME_IPHONE=!1;k.userAgent.product.ASSUME_IPAD=!1;k.userAgent.product.ASSUME_ANDROID=!1;k.userAgent.product.ASSUME_CHROME=!1;k.userAgent.product.ASSUME_SAFARI=!1; k.userAgent.product.PRODUCT_KNOWN_=k.userAgent.ASSUME_IE||k.userAgent.ASSUME_EDGE||k.userAgent.ASSUME_OPERA||k.userAgent.product.ASSUME_FIREFOX||k.userAgent.product.ASSUME_IPHONE||k.userAgent.product.ASSUME_IPAD||k.userAgent.product.ASSUME_ANDROID||k.userAgent.product.ASSUME_CHROME||k.userAgent.product.ASSUME_SAFARI;k.userAgent.product.OPERA=k.userAgent.OPERA;k.userAgent.product.IE=k.userAgent.IE;k.userAgent.product.EDGE=k.userAgent.EDGE; k.userAgent.product.FIREFOX=k.userAgent.product.PRODUCT_KNOWN_?k.userAgent.product.ASSUME_FIREFOX:k.labs.userAgent.browser.isFirefox();k.userAgent.product.isIphoneOrIpod_=function(){return k.labs.userAgent.platform.isIphone()||k.labs.userAgent.platform.isIpod()};k.userAgent.product.IPHONE=k.userAgent.product.PRODUCT_KNOWN_?k.userAgent.product.ASSUME_IPHONE:k.userAgent.product.isIphoneOrIpod_();k.userAgent.product.IPAD=k.userAgent.product.PRODUCT_KNOWN_?k.userAgent.product.ASSUME_IPAD:k.labs.userAgent.platform.isIpad(); k.userAgent.product.ANDROID=k.userAgent.product.PRODUCT_KNOWN_?k.userAgent.product.ASSUME_ANDROID:k.labs.userAgent.browser.isAndroidBrowser();k.userAgent.product.CHROME=k.userAgent.product.PRODUCT_KNOWN_?k.userAgent.product.ASSUME_CHROME:k.labs.userAgent.browser.isChrome();k.userAgent.product.isSafariDesktop_=function(){return k.labs.userAgent.browser.isSafari()&&!k.labs.userAgent.platform.isIos()};k.userAgent.product.SAFARI=k.userAgent.product.PRODUCT_KNOWN_?k.userAgent.product.ASSUME_SAFARI:k.userAgent.product.isSafariDesktop_();k.crypt.base64={};k.crypt.base64.DEFAULT_ALPHABET_COMMON_="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";k.crypt.base64.ENCODED_VALS=k.crypt.base64.DEFAULT_ALPHABET_COMMON_+"+/=";k.crypt.base64.ENCODED_VALS_WEBSAFE=k.crypt.base64.DEFAULT_ALPHABET_COMMON_+"-_.";k.crypt.base64.Alphabet={DEFAULT:0,NO_PADDING:1,WEBSAFE:2,WEBSAFE_DOT_PADDING:3,WEBSAFE_NO_PADDING:4};k.crypt.base64.paddingChars_="=."; k.crypt.base64.isPadding_=function(a){return k.string.contains(k.crypt.base64.paddingChars_,a)};k.crypt.base64.byteToCharMaps_={};k.crypt.base64.charToByteMap_=null;k.crypt.base64.ASSUME_NATIVE_SUPPORT_=k.userAgent.GECKO||k.userAgent.WEBKIT&&!k.userAgent.product.SAFARI||k.userAgent.OPERA;k.crypt.base64.HAS_NATIVE_ENCODE_=k.crypt.base64.ASSUME_NATIVE_SUPPORT_||"function"==typeof k.global.btoa; k.crypt.base64.HAS_NATIVE_DECODE_=k.crypt.base64.ASSUME_NATIVE_SUPPORT_||!k.userAgent.product.SAFARI&&!k.userAgent.IE&&"function"==typeof k.global.atob; k.crypt.base64.encodeByteArray=function(a,b){k.asserts.assert(k.isArrayLike(a),"encodeByteArray takes an array as a parameter");void 0===b&&(b=k.crypt.base64.Alphabet.DEFAULT);k.crypt.base64.init_();b=k.crypt.base64.byteToCharMaps_[b];for(var c=[],f=0;f>2;g=(g&3)<<4|l>>4;l=(l&15)<<2|v>>6;v&=63;r||(v=64,h||(l=64));c.push(b[E],b[g],b[l]||"",b[v]||"")}return c.join("")}; k.crypt.base64.encodeString=function(a,b){return k.crypt.base64.HAS_NATIVE_ENCODE_&&!b?k.global.btoa(a):k.crypt.base64.encodeByteArray(k.crypt.stringToByteArray(a),b)};k.crypt.base64.decodeString=function(a,b){if(k.crypt.base64.HAS_NATIVE_DECODE_&&!b)return k.global.atob(a);var c="";k.crypt.base64.decodeStringInternal_(a,function(f){c+=String.fromCharCode(f)});return c};k.crypt.base64.decodeStringToByteArray=function(a){var b=[];k.crypt.base64.decodeStringInternal_(a,function(c){b.push(c)});return b}; k.crypt.base64.decodeStringToUint8Array=function(a){k.asserts.assert(!k.userAgent.IE||k.userAgent.isVersionOrHigher("10"),"Browser does not support typed arrays");var b=a.length,c=3*b/4;c%3?c=Math.floor(c):k.crypt.base64.isPadding_(a[b-1])&&(c=k.crypt.base64.isPadding_(a[b-2])?c-2:c-1);var f=new Uint8Array(c),g=0;k.crypt.base64.decodeStringInternal_(a,function(h){f[g++]=h});return f.subarray(0,g)}; k.crypt.base64.decodeStringInternal_=function(a,b){function c(v){for(;f>4);64!=l&&(b(h<<4&240|l>>2),64!=r&&b(l<<6&192|r))}}; k.crypt.base64.init_=function(){if(!k.crypt.base64.charToByteMap_){k.crypt.base64.charToByteMap_={};for(var a=k.crypt.base64.DEFAULT_ALPHABET_COMMON_.split(""),b=["+/=","+/","-_=","-_.","-_"],c=0;5>c;c++){var f=a.concat(b[c].split(""));k.crypt.base64.byteToCharMaps_[c]=f;for(var g=0;g>>=7,a.totalLength_++;b.push(c);a.totalLength_++};Wb.prototype.reset=function(){this.blocks_=[];this.encoder_.end();this.totalLength_=0}; var I=function(a,b,c){(0,k.asserts.assert)(1<=b&&b==Math.floor(b));Ub(a.encoder_,8*b+c)},$b=function(a,b,c){null!=c&&(Zb(b,c),I(a,b,z.VARINT),Vb(a.encoder_,c))};d=Wb.prototype;d.writeInt32=function(a,b){null!=b&&(ac(a,b,-2147483648<=b&&2147483648>b),$b(this,a,b))}; d.writeInt64=function(a,b){null!=b&&(ac(a,b,-9223372036854775808<=b&&0x7fffffffffffffff>b),null!=b&&(I(this,a,z.VARINT),a=this.encoder_,k.asserts.assert(b==Math.floor(b)),k.asserts.assert(-9223372036854775808<=b&&0x7fffffffffffffff>b),xb(b),a.writeSplitVarint64(A,B)))};d.writeInt64String=function(a,b){null!=b&&(b=x.arith.Int64.fromString(b),I(this,a,z.VARINT),this.encoder_.writeSplitVarint64(b.lo,b.hi))};d.writeUint32=function(){};d.writeDouble=function(a,b){null!=b&&(I(this,a,z.FIXED64),this.encoder_.writeDouble(b))}; d.writeBool=function(a,b){null!=b&&(ac(a,b,"boolean"===typeof b||"number"===typeof b),I(this,a,z.VARINT),this.encoder_.writeBool(b))};d.writeEnum=function(a,b){null!=b&&(b=parseInt(b,10),Zb(a,b),I(this,a,z.VARINT),Vb(this.encoder_,b))};d.writeString=function(a,b){null!=b&&(a=Xb(this,a),this.encoder_.writeString(b),Yb(this,a))}; d.writeBytes=function(a,b){null!=b&&(b=Ob(b),I(this,a,z.DELIMITED),Ub(this.encoder_,b.length),a=this.encoder_.end(),this.blocks_.push(a),this.blocks_.push(b),this.totalLength_+=a.length+b.length)};var J=function(a,b,c,f){null!=c&&(b=Xb(a,b),f(c,a),Yb(a,b))};Wb.prototype.writeMessageSet=function(a,b,c){null!=b&&(I(this,1,z.START_GROUP),I(this,2,z.VARINT),Vb(this.encoder_,a),a=Xb(this,3),c(b,this),Yb(this,a),I(this,1,z.END_GROUP))}; Wb.prototype.writeSplitFixed64=function(a,b){I(this,a,z.FIXED64);this.encoder_.writeSplitFixed64(b,void 0)};Wb.prototype.writeSplitVarint64=function(a,b){I(this,a,z.VARINT);this.encoder_.writeSplitVarint64(b,void 0)};var bc=function(a,b,c){if(null!=c)for(var f=0;fb)} function ac(a,b,c){c||(0,k.asserts.fail)("for ["+b+"] at ["+a+"]")}x.BinaryWriter=Wb;var cc=function(a,b,c,f,g){this.fieldIndex=a;this.fieldName=b;this.ctor=c;this.toObjectFn=f;this.isRepeated=g};x.ExtensionFieldInfo=cc;var dc=function(a,b,c,f,g,h){this.fieldInfo=a;this.binaryReaderFn=b;this.binaryWriterFn=c;this.binaryMessageSerializeFn=f;this.binaryMessageDeserializeFn=g;this.isPacked=h||!1};x.ExtensionFieldBinaryInfo=dc;var ec={isFreezerLoaded:!1};var gc=function(a,b){this.arr_=a;this.valueCtor=b;this.map={};this.arrClean=!0;this.markMessageFrozenFn_=null;if(0b.length?c.length:b.length;a.messageId_&&(f[0]=a.messageId_,g=1);for(;ga?b>g?b:g:b");c=c.join("")}c=k.dom.createElement_(a,c);f&&("string"===typeof f?c.className=f:Array.isArray(f)?c.className=f.join(" "):k.dom.setProperties(c,f));2a};k.dom.nativelySupportsFocus_=function(a){return a.tagName==k.dom.TagName.A&&a.hasAttribute("href")||a.tagName==k.dom.TagName.INPUT||a.tagName==k.dom.TagName.TEXTAREA||a.tagName==k.dom.TagName.SELECT||a.tagName==k.dom.TagName.BUTTON}; k.dom.hasNonZeroBoundingRect_=function(a){a="function"!==typeof a.getBoundingClientRect||k.userAgent.IE&&null==a.parentElement?{height:a.offsetHeight,width:a.offsetWidth}:a.getBoundingClientRect();return null!=a&&0=k.log.getEffectiveLevel(a).value:!1};k.log.getAllLoggers=function(){return k.log.ENABLED?k.log.LogRegistry.getInstance().getAllLoggers():[]};k.log.getLogRecord=function(a,b,c){return Zc(k.log.LogBuffer.getInstance(),b||k.log.Level.OFF,c,a.getName())}; k.log.publishLogRecord=function(a,b){k.log.ENABLED&&a&&k.log.isLoggable(a,b.getLevel())&&cd(k.log.LogRegistry.getInstance(),a.getName()).publish(b)};k.log.log=function(a,b,c){if(k.log.ENABLED&&a&&k.log.isLoggable(a,b)){b=b||k.log.Level.OFF;var f=cd(k.log.LogRegistry.getInstance(),a.getName());"function"===typeof c&&(c=c());a=Zc(k.log.LogBuffer.getInstance(),b,c,a.getName());f.publish(a)}};k.log.error=function(a,b,c){k.log.ENABLED&&a&&k.log.log(a,k.log.Level.SEVERE,b,c)}; k.log.warning=function(a,b,c){k.log.ENABLED&&a&&k.log.log(a,k.log.Level.WARNING,b,c)};k.log.info=function(a,b,c){k.log.ENABLED&&a&&k.log.log(a,k.log.Level.INFO,b,c)};k.log.fine=function(a,b){k.log.ENABLED&&a&&k.log.log(a,k.log.Level.FINE,b,void 0)};k.net={};k.net.ErrorCode={NO_ERROR:0,ACCESS_DENIED:1,FILE_NOT_FOUND:2,FF_SILENT_ERROR:3,CUSTOM_ERROR:4,EXCEPTION:5,HTTP_ERROR:6,ABORT:7,TIMEOUT:8,OFFLINE:9}; k.net.ErrorCode.getDebugMessage=function(a){switch(a){case k.net.ErrorCode.NO_ERROR:return"No Error";case k.net.ErrorCode.ACCESS_DENIED:return"Access denied to content document";case k.net.ErrorCode.FILE_NOT_FOUND:return"File not found";case k.net.ErrorCode.FF_SILENT_ERROR:return"Firefox silently errored";case k.net.ErrorCode.CUSTOM_ERROR:return"Application custom error";case k.net.ErrorCode.EXCEPTION:return"An exception occurred";case k.net.ErrorCode.HTTP_ERROR:return"Http response at 400 or 500 level"; case k.net.ErrorCode.ABORT:return"Request was aborted";case k.net.ErrorCode.TIMEOUT:return"Request timed out";case k.net.ErrorCode.OFFLINE:return"The resource is not available offline";default:return"Unrecognized error code"}};k.net.EventType={COMPLETE:"complete",SUCCESS:"success",ERROR:"error",ABORT:"abort",READY:"ready",READY_STATE_CHANGE:"readystatechange",TIMEOUT:"timeout",INCREMENTAL_DATA:"incrementaldata",PROGRESS:"progress",DOWNLOAD_PROGRESS:"downloadprogress",UPLOAD_PROGRESS:"uploadprogress"};k.net.HttpStatus={CONTINUE:100,SWITCHING_PROTOCOLS:101,OK:200,CREATED:201,ACCEPTED:202,NON_AUTHORITATIVE_INFORMATION:203,NO_CONTENT:204,RESET_CONTENT:205,PARTIAL_CONTENT:206,MULTI_STATUS:207,MULTIPLE_CHOICES:300,MOVED_PERMANENTLY:301,FOUND:302,SEE_OTHER:303,NOT_MODIFIED:304,USE_PROXY:305,TEMPORARY_REDIRECT:307,PERMANENT_REDIRECT:308,BAD_REQUEST:400,UNAUTHORIZED:401,PAYMENT_REQUIRED:402,FORBIDDEN:403,NOT_FOUND:404,METHOD_NOT_ALLOWED:405,NOT_ACCEPTABLE:406,PROXY_AUTHENTICATION_REQUIRED:407,REQUEST_TIMEOUT:408, CONFLICT:409,GONE:410,LENGTH_REQUIRED:411,PRECONDITION_FAILED:412,REQUEST_ENTITY_TOO_LARGE:413,REQUEST_URI_TOO_LONG:414,UNSUPPORTED_MEDIA_TYPE:415,REQUEST_RANGE_NOT_SATISFIABLE:416,EXPECTATION_FAILED:417,UNPROCESSABLE_ENTITY:422,LOCKED:423,FAILED_DEPENDENCY:424,PRECONDITION_REQUIRED:428,TOO_MANY_REQUESTS:429,REQUEST_HEADER_FIELDS_TOO_LARGE:431,INTERNAL_SERVER_ERROR:500,NOT_IMPLEMENTED:501,BAD_GATEWAY:502,SERVICE_UNAVAILABLE:503,GATEWAY_TIMEOUT:504,HTTP_VERSION_NOT_SUPPORTED:505,INSUFFICIENT_STORAGE:507, NETWORK_AUTHENTICATION_REQUIRED:511,QUIRK_IE_NO_CONTENT:1223};k.net.HttpStatus.isSuccess=function(a){switch(a){case k.net.HttpStatus.OK:case k.net.HttpStatus.CREATED:case k.net.HttpStatus.ACCEPTED:case k.net.HttpStatus.NO_CONTENT:case k.net.HttpStatus.PARTIAL_CONTENT:case k.net.HttpStatus.NOT_MODIFIED:case k.net.HttpStatus.QUIRK_IE_NO_CONTENT:return!0;default:return!1}};k.net.XhrLike=function(){};d=k.net.XhrLike.prototype;d.open=function(){};d.send=function(){};d.abort=function(){};d.setRequestHeader=function(){};d.getResponseHeader=function(){};d.getAllResponseHeaders=function(){};k.net.XmlHttpFactory=function(){};k.net.XmlHttpFactory.prototype.cachedOptions_=null;k.net.XmlHttpFactory.prototype.getOptions=function(){var a;(a=this.cachedOptions_)||(a={},dd(this)&&(a[k.net.XmlHttp.OptionType.USE_NULL_FUNCTION]=!0,a[k.net.XmlHttp.OptionType.LOCAL_REQUEST_ERROR]=!0),a=this.cachedOptions_=a);return a};k.net.WrapperXmlHttpFactory=function(a,b){this.xhrFactory_=a;this.optionsFactory_=b};k.inherits(k.net.WrapperXmlHttpFactory,k.net.XmlHttpFactory);k.net.WrapperXmlHttpFactory.prototype.createInstance=function(){return this.xhrFactory_()};k.net.WrapperXmlHttpFactory.prototype.getOptions=function(){return this.optionsFactory_()};k.net.XmlHttp=function(){return k.net.XmlHttp.factory_.createInstance()};k.net.XmlHttp.ASSUME_NATIVE_XHR=!1;k.net.XmlHttpDefines={};k.net.XmlHttpDefines.ASSUME_NATIVE_XHR=!1;k.net.XmlHttp.getOptions=function(){return k.net.XmlHttp.factory_.getOptions()};k.net.XmlHttp.OptionType={USE_NULL_FUNCTION:0,LOCAL_REQUEST_ERROR:1};k.net.XmlHttp.ReadyState={UNINITIALIZED:0,LOADING:1,LOADED:2,INTERACTIVE:3,COMPLETE:4}; k.net.XmlHttp.setFactory=function(a,b){k.net.XmlHttp.setGlobalFactory(new k.net.WrapperXmlHttpFactory(k.asserts.assert(a),k.asserts.assert(b)))};k.net.XmlHttp.setGlobalFactory=function(a){k.net.XmlHttp.factory_=a};k.net.DefaultXmlHttpFactory=function(){};k.inherits(k.net.DefaultXmlHttpFactory,k.net.XmlHttpFactory);k.net.DefaultXmlHttpFactory.prototype.createInstance=function(){var a=dd(this);return a?new ActiveXObject(a):new XMLHttpRequest}; var dd=function(a){if(k.net.XmlHttp.ASSUME_NATIVE_XHR||k.net.XmlHttpDefines.ASSUME_NATIVE_XHR)return"";if(!a.ieProgId_&&"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.stack+="\n\n"+c.join("\n")}}; k.Promise.addUnhandledRejection_=function(a,b){0k.Timer.MAX_TIMEOUT_?k.Timer.INVALID_TIMEOUT_ID_:k.Timer.defaultTimerObject.setTimeout(a,b||0)};k.Timer.clear=function(a){k.Timer.defaultTimerObject.clearTimeout(a)}; k.Timer.promise=function(a,b){var c=null;return hd(new k.Promise(function(f,g){c=k.Timer.callOnce(function(){f(b)},a);c==k.Timer.INVALID_TIMEOUT_ID_&&g(Error("Failed to schedule timer."))}),function(f){k.Timer.clear(c);throw f;})};k.net.XhrIo=function(a){k.events.EventTarget.call(this);this.headers=new k.structs.Map;this.xmlHttpFactory_=a||null;this.active_=!1;this.xhrOptions_=this.xhr_=null;this.lastError_=this.lastMethod_=this.lastUri_="";this.inAbort_=this.inOpen_=this.inSend_=this.errorDispatched_=!1;this.timeoutInterval_=0;this.timeoutId_=null;this.responseType_=k.net.XhrIo.ResponseType.DEFAULT;this.useXhr2Timeout_=this.progressEventsEnabled_=this.withCredentials_=!1};k.inherits(k.net.XhrIo,k.events.EventTarget); k.net.XhrIo.ResponseType={DEFAULT:"",TEXT:"text",DOCUMENT:"document",BLOB:"blob",ARRAY_BUFFER:"arraybuffer"};k.net.XhrIo.prototype.logger_=k.log.getLogger();k.net.XhrIo.CONTENT_TYPE_HEADER="Content-Type";k.net.XhrIo.CONTENT_TRANSFER_ENCODING="Content-Transfer-Encoding";k.net.XhrIo.HTTP_SCHEME_PATTERN=/^https?$/i;k.net.XhrIo.METHODS_WITH_FORM_DATA=["POST","PUT"];k.net.XhrIo.FORM_CONTENT_TYPE="application/x-www-form-urlencoded;charset=utf-8";k.net.XhrIo.XHR2_TIMEOUT_="timeout"; k.net.XhrIo.XHR2_ON_TIMEOUT_="ontimeout";k.net.XhrIo.sendInstances_=[];k.net.XhrIo.send=function(a,b,c,f,g,h,l){var r=new k.net.XhrIo;k.net.XhrIo.sendInstances_.push(r);b&&r.listen(k.net.EventType.COMPLETE,b);r.listenOnce(k.net.EventType.READY,r.cleanupSend_);h&&(r.timeoutInterval_=Math.max(0,h));l&&(r.withCredentials_=l);r.send(a,c,f,g);return r};k.net.XhrIo.cleanup=function(){for(var a=k.net.XhrIo.sendInstances_;a.length;)a.pop().dispose()}; k.net.XhrIo.protectEntryPoints=function(a){k.net.XhrIo.prototype.onReadyStateChangeEntryPoint_=a.protectEntryPoint(k.net.XhrIo.prototype.onReadyStateChangeEntryPoint_)};k.net.XhrIo.prototype.cleanupSend_=function(){this.dispose();Aa(k.net.XhrIo.sendInstances_,this)}; k.net.XhrIo.prototype.send=function(a,b,c,f){if(this.xhr_)throw Error("[goog.net.XhrIo] Object is active with another request="+this.lastUri_+"; newUri="+a);b=b?b.toUpperCase():"GET";this.lastUri_=a;this.lastError_="";this.lastMethod_=b;this.errorDispatched_=!1;this.active_=!0;this.xhr_=this.xmlHttpFactory_?this.xmlHttpFactory_.createInstance():k.net.XmlHttp();this.xhrOptions_=this.xmlHttpFactory_?this.xmlHttpFactory_.getOptions():k.net.XmlHttp.getOptions();this.xhr_.onreadystatechange=k.bind(this.onReadyStateChange_, this);this.progressEventsEnabled_&&"onprogress"in this.xhr_&&(this.xhr_.onprogress=k.bind(function(h){this.onProgressHandler_(h,!0)},this),this.xhr_.upload&&(this.xhr_.upload.onprogress=k.bind(this.onProgressHandler_,this)));try{k.log.fine(this.logger_,od(this,"Opening Xhr")),this.inOpen_=!0,this.xhr_.open(b,String(a),!0),this.inOpen_=!1}catch(h){k.log.fine(this.logger_,od(this,"Error opening Xhr: "+h.message));this.error_(k.net.ErrorCode.EXCEPTION,h);return}a=c||"";var g=this.headers.clone();f&& k.structs.forEach(f,function(h,l){g.set(l,h)});f=ra(g.getKeys(),k.net.XhrIo.isContentTypeHeader_);c=k.global.FormData&&a instanceof k.global.FormData;!ua(k.net.XhrIo.METHODS_WITH_FORM_DATA,b)||f||c||g.set(k.net.XhrIo.CONTENT_TYPE_HEADER,k.net.XhrIo.FORM_CONTENT_TYPE);g.forEach(function(h,l){this.xhr_.setRequestHeader(l,h)},this);this.responseType_&&(this.xhr_.responseType=this.responseType_);"withCredentials"in this.xhr_&&this.xhr_.withCredentials!==this.withCredentials_&&(this.xhr_.withCredentials= this.withCredentials_);try{pd(this),0k.net.XmlHttp.ReadyState.LOADED?a.xhr_.statusText:""}catch(c){k.log.fine(a.logger_,"Can not get status: "+c.message),b=""}a.lastError_=b+" ["+a.getStatus()+"]";qd(a)}}finally{rd(a)}}}; k.net.XhrIo.prototype.onProgressHandler_=function(a,b){k.asserts.assert(a.type===k.net.EventType.PROGRESS,"goog.net.EventType.PROGRESS is of the same type as raw XHR progress.");this.dispatchEvent(k.net.XhrIo.buildProgressEvent_(a,k.net.EventType.PROGRESS));this.dispatchEvent(k.net.XhrIo.buildProgressEvent_(a,b?k.net.EventType.DOWNLOAD_PROGRESS:k.net.EventType.UPLOAD_PROGRESS))};k.net.XhrIo.buildProgressEvent_=function(a,b){return{type:b,lengthComputable:a.lengthComputable,loaded:a.loaded,total:a.total}}; var rd=function(a,b){if(a.xhr_){pd(a);var c=a.xhr_,f=a.xhrOptions_[k.net.XmlHttp.OptionType.USE_NULL_FUNCTION]?k.nullFunction:null;a.xhr_=null;a.xhrOptions_=null;b||a.dispatchEvent(k.net.EventType.READY);try{c.onreadystatechange=f}catch(g){k.log.error(a.logger_,"Problem encountered resetting onreadystatechange: "+g.message)}}},pd=function(a){a.xhr_&&a.useXhr2Timeout_&&(a.xhr_[k.net.XhrIo.XHR2_ON_TIMEOUT_]=null);a.timeoutId_&&(k.Timer.clear(a.timeoutId_),a.timeoutId_=null)},ud=function(a){return td(a)== k.net.XmlHttp.ReadyState.COMPLETE};k.net.XhrIo.prototype.isSuccess=function(){var a=this.getStatus(),b;if(!(b=k.net.HttpStatus.isSuccess(a))){if(a=0===a)a=k.uri.utils.getEffectiveScheme(String(this.lastUri_)),a=!k.net.XhrIo.HTTP_SCHEME_PATTERN.test(a);b=a}return b};var td=function(a){return a.xhr_?a.xhr_.readyState:k.net.XmlHttp.ReadyState.UNINITIALIZED};k.net.XhrIo.prototype.getStatus=function(){try{return td(this)>k.net.XmlHttp.ReadyState.LOADED?this.xhr_.status:-1}catch(a){return-1}}; k.net.XhrIo.prototype.getResponseHeader=function(a){if(this.xhr_&&ud(this))return a=this.xhr_.getResponseHeader(a),null===a?void 0:a};k.net.XhrIo.prototype.getAllResponseHeaders=function(){return this.xhr_&&ud(this)?this.xhr_.getAllResponseHeaders()||"":""};var od=function(a,b){return b+" ["+a.lastMethod_+" "+a.lastUri_+" "+a.getStatus()+"]"};k.debug.entryPointRegistry.register(function(a){k.net.XhrIo.prototype.onReadyStateChangeEntryPoint_=a(k.net.XhrIo.prototype.onReadyStateChangeEntryPoint_)});k.craw.AppAuthenticator=function(){};