@resk/core
Version:
An innovative TypeScript framework that empowers developers to build applications with a fully decorator-based architecture for efficient resource management. By combining the power of decorators with a resource-oriented design, DecorRes enhances code cla
4 lines • 647 kB
JavaScript
'use strict';require('reflect-metadata');var i18nJs=require('i18n-js'),X=require('moment');function _interopDefault(e){return e&&e.__esModule?e:{default:e}}var X__default=/*#__PURE__*/_interopDefault(X);var Nt=Object.create;var $e=Object.defineProperty,St=Object.defineProperties,_t=Object.getOwnPropertyDescriptor,Tt=Object.getOwnPropertyDescriptors,Et=Object.getOwnPropertyNames,fe=Object.getOwnPropertySymbols,Ct=Object.getPrototypeOf,Ce=Object.prototype.hasOwnProperty,Ge=Object.prototype.propertyIsEnumerable;var we=(t,o,r)=>o in t?$e(t,o,{enumerable:true,configurable:true,writable:true,value:r}):t[o]=r,L=(t,o)=>{for(var r in o||(o={}))Ce.call(o,r)&&we(t,r,o[r]);if(fe)for(var r of fe(o))Ge.call(o,r)&&we(t,r,o[r]);return t},Z=(t,o)=>St(t,Tt(o));var se=(t=>typeof require!="undefined"?require:typeof Proxy!="undefined"?new Proxy(t,{get:(o,r)=>(typeof require!="undefined"?require:o)[r]}):t)(function(t){if(typeof require!="undefined")return require.apply(this,arguments);throw Error('Dynamic require of "'+t+'" is not supported')});var re=(t,o)=>{var r={};for(var n in t)Ce.call(t,n)&&o.indexOf(n)<0&&(r[n]=t[n]);if(t!=null&&fe)for(var n of fe(t))o.indexOf(n)<0&&Ge.call(t,n)&&(r[n]=t[n]);return r};var Pt=(t,o)=>()=>(o||t((o={exports:{}}).exports,o),o.exports),At=(t,o)=>{for(var r in o)$e(t,r,{get:o[r],enumerable:true});},Dt=(t,o,r,n)=>{if(o&&typeof o=="object"||typeof o=="function")for(let i of Et(o))!Ce.call(t,i)&&i!==r&&$e(t,i,{get:()=>o[i],enumerable:!(n=_t(o,i))||n.enumerable});return t};var Rt=(t,o,r)=>(r=t!=null?Nt(Ct(t)):{},Dt(!t||!t.__esModule?$e(r,"default",{value:t,enumerable:true}):r,t));var nt=Pt((exports,module)=>{(function(t){if(typeof exports=="object"&&typeof module!="undefined")module.exports=t();else if(typeof define=="function"&&define.amd)define([],t);else {var o;typeof window!="undefined"?o=window:typeof global!="undefined"?o=global:typeof self!="undefined"?o=self:o=this,o.libphonenumber=t();}})(function(){return function(){function t(o,r,n){function i(l,m){if(!r[l]){if(!o[l]){var p=typeof se=="function"&&se;if(!m&&p)return p(l,true);if(s)return s(l,true);var y=new Error("Cannot find module '"+l+"'");throw y.code="MODULE_NOT_FOUND",y}var h=r[l]={exports:{}};o[l][0].call(h.exports,function(N){var T=o[l][1][N];return i(T||N)},h,h.exports,t,o,r,n);}return r[l].exports}for(var s=typeof se=="function"&&se,u=0;u<n.length;u++)i(n[u]);return i}return t}()({1:[function(require,module,exports){(function(global){(function(){var $jscomp=$jscomp||{};$jscomp.scope={},$jscomp.createTemplateTagFirstArg=function(t){return t.raw=t},$jscomp.createTemplateTagFirstArgWithRaw=function(t,o){return t.raw=o,t},$jscomp.arrayIteratorImpl=function(t){var o=0;return function(){return o<t.length?{done:false,value:t[o++]}:{done:true}}},$jscomp.arrayIterator=function(t){return {next:$jscomp.arrayIteratorImpl(t)}},$jscomp.makeIterator=function(t){var o=typeof Symbol!="undefined"&&Symbol.iterator&&t[Symbol.iterator];return o?o.call(t):$jscomp.arrayIterator(t)},$jscomp.arrayFromIterator=function(t){for(var o,r=[];!(o=t.next()).done;)r.push(o.value);return r},$jscomp.arrayFromIterable=function(t){return t instanceof Array?t:$jscomp.arrayFromIterator($jscomp.makeIterator(t))},$jscomp.checkStringArgs=function(t,o,r){if(t==null)throw new TypeError("The 'this' value for String.prototype."+r+" must not be null or undefined");if(o instanceof RegExp)throw new TypeError("First argument to String.prototype."+r+" must not be a regular expression");return t+""},$jscomp.ASSUME_ES5=false,$jscomp.ASSUME_NO_NATIVE_MAP=false,$jscomp.ASSUME_NO_NATIVE_SET=false,$jscomp.SIMPLE_FROUND_POLYFILL=false,$jscomp.ISOLATE_POLYFILLS=false,$jscomp.FORCE_POLYFILL_PROMISE=false,$jscomp.FORCE_POLYFILL_PROMISE_WHEN_NO_UNHANDLED_REJECTION=false,$jscomp.defineProperty=$jscomp.ASSUME_ES5||typeof Object.defineProperties=="function"?Object.defineProperty:function(t,o,r){return t==Array.prototype||t==Object.prototype||(t[o]=r.value),t},$jscomp.getGlobal=function(t){t=[typeof globalThis=="object"&&globalThis,t,typeof window=="object"&&window,typeof self=="object"&&self,typeof global=="object"&&global];for(var o=0;o<t.length;++o){var r=t[o];if(r&&r.Math==Math)return r}throw Error("Cannot find global object")},$jscomp.global=$jscomp.getGlobal(this),$jscomp.IS_SYMBOL_NATIVE=typeof Symbol=="function"&&typeof Symbol("x")=="symbol",$jscomp.TRUST_ES6_POLYFILLS=!$jscomp.ISOLATE_POLYFILLS||$jscomp.IS_SYMBOL_NATIVE,$jscomp.polyfills={},$jscomp.propertyToPolyfillSymbol={},$jscomp.POLYFILL_PREFIX="$jscp$";$jscomp.polyfill=function(t,o,r,n){o&&($jscomp.ISOLATE_POLYFILLS?$jscomp.polyfillIsolated(t,o,r,n):$jscomp.polyfillUnisolated(t,o,r,n));},$jscomp.polyfillUnisolated=function(t,o,r,n){for(r=$jscomp.global,t=t.split("."),n=0;n<t.length-1;n++){var i=t[n];if(!(i in r))return;r=r[i];}t=t[t.length-1],n=r[t],o=o(n),o!=n&&o!=null&&$jscomp.defineProperty(r,t,{configurable:true,writable:true,value:o});},$jscomp.polyfillIsolated=function(t,o,r,n){var i=t.split(".");t=i.length===1,n=i[0],n=!t&&n in $jscomp.polyfills?$jscomp.polyfills:$jscomp.global;for(var s=0;s<i.length-1;s++){var u=i[s];if(!(u in n))return;n=n[u];}i=i[i.length-1],r=$jscomp.IS_SYMBOL_NATIVE&&r==="es6"?n[i]:null,o=o(r),o!=null&&(t?$jscomp.defineProperty($jscomp.polyfills,i,{configurable:true,writable:true,value:o}):o!==r&&($jscomp.propertyToPolyfillSymbol[i]=$jscomp.IS_SYMBOL_NATIVE?$jscomp.global.Symbol(i):$jscomp.POLYFILL_PREFIX+i,i=$jscomp.propertyToPolyfillSymbol[i],$jscomp.defineProperty(n,i,{configurable:true,writable:true,value:o})));},$jscomp.polyfill("String.prototype.endsWith",function(t){return t||function(o,r){var n=$jscomp.checkStringArgs(this,o,"endsWith");o+="",r===void 0&&(r=n.length),r=Math.max(0,Math.min(r|0,n.length));for(var i=o.length;0<i&&0<r;)if(n[--r]!=o[--i])return false;return 0>=i}},"es6","es3"),$jscomp.findInternal=function(t,o,r){t instanceof String&&(t=String(t));for(var n=t.length,i=0;i<n;i++){var s=t[i];if(o.call(r,s,i,t))return {i,v:s}}return {i:-1,v:void 0}},$jscomp.polyfill("Array.prototype.find",function(t){return t||function(o,r){return $jscomp.findInternal(this,o,r).v}},"es6","es3"),$jscomp.polyfill("String.prototype.startsWith",function(t){return t||function(o,r){var n=$jscomp.checkStringArgs(this,o,"startsWith");o+="";var i=n.length,s=o.length;r=Math.max(0,Math.min(r|0,n.length));for(var u=0;u<s&&r<i;)if(n[r++]!=o[u++])return false;return u>=s}},"es6","es3"),$jscomp.polyfill("String.prototype.repeat",function(t){return t||function(o){var r=$jscomp.checkStringArgs(this,null,"repeat");if(0>o||1342177279<o)throw new RangeError("Invalid count value");o|=0;for(var n="";o;)o&1&&(n+=r),(o>>>=1)&&(r+=r);return n}},"es6","es3"),$jscomp.initSymbol=function(){},$jscomp.polyfill("Symbol",function(t){if(t)return t;var o=function(i,s){this.$jscomp$symbol$id_=i,$jscomp.defineProperty(this,"description",{configurable:true,writable:true,value:s});};o.prototype.toString=function(){return this.$jscomp$symbol$id_};var r=0,n=function(i){if(this instanceof n)throw new TypeError("Symbol is not a constructor");return new o("jscomp_symbol_"+(i||"")+"_"+r++,i)};return n},"es6","es3"),$jscomp.polyfill("Symbol.iterator",function(t){if(t)return t;t=Symbol("Symbol.iterator");for(var o="Array Int8Array Uint8Array Uint8ClampedArray Int16Array Uint16Array Int32Array Uint32Array Float32Array Float64Array".split(" "),r=0;r<o.length;r++){var n=$jscomp.global[o[r]];typeof n=="function"&&typeof n.prototype[t]!="function"&&$jscomp.defineProperty(n.prototype,t,{configurable:true,writable:true,value:function(){return $jscomp.iteratorPrototype($jscomp.arrayIteratorImpl(this))}});}return t},"es6","es3"),$jscomp.iteratorPrototype=function(t){return t={next:t},t[Symbol.iterator]=function(){return this},t},$jscomp.iteratorFromArray=function(t,o){t instanceof String&&(t+="");var r=0,n=false,i={next:function(){if(!n&&r<t.length){var s=r++;return {value:o(s,t[s]),done:false}}return n=true,{done:true,value:void 0}}};return i[Symbol.iterator]=function(){return i},i},$jscomp.polyfill("Array.prototype.keys",function(t){return t||function(){return $jscomp.iteratorFromArray(this,function(o){return o})}},"es6","es3"),$jscomp.polyfill("Object.is",function(t){return t||function(o,r){return o===r?o!==0||1/o===1/r:o!==o&&r!==r}},"es6","es3"),$jscomp.polyfill("Array.prototype.includes",function(t){return t||function(o,r){var n=this;n instanceof String&&(n=String(n));var i=n.length;for(r=r||0,0>r&&(r=Math.max(r+i,0));r<i;r++){var s=n[r];if(s===o||Object.is(s,o))return true}return false}},"es7","es3"),$jscomp.polyfill("String.prototype.includes",function(t){return t||function(o,r){return $jscomp.checkStringArgs(this,o,"includes").indexOf(o,r||0)!==-1}},"es6","es3");var goog=goog||{};goog.global=this||self,goog.exportPath_=function(t,o,r,n){t=t.split("."),n=n||goog.global,t[0]in n||typeof n.execScript=="undefined"||n.execScript("var "+t[0]);for(var i;t.length&&(i=t.shift());)if(t.length||o===void 0)n=n[i]&&n[i]!==Object.prototype[i]?n[i]:n[i]={};else if(!r&&goog.isObject(o)&&goog.isObject(n[i]))for(var s in o)o.hasOwnProperty(s)&&(n[i][s]=o[s]);else n[i]=o;},goog.define=function(t,o){return o},goog.FEATURESET_YEAR=2012,goog.DEBUG=true,goog.LOCALE="en",goog.TRUSTED_SITE=true,goog.DISALLOW_TEST_ONLY_CODE=!goog.DEBUG,goog.ENABLE_CHROME_APP_SAFE_SCRIPT_LOADING=false,goog.provide=function(t){if(goog.isInModuleLoader_())throw Error("goog.provide cannot be used within a module.");goog.constructNamespace_(t);},goog.constructNamespace_=function(t,o,r){goog.exportPath_(t,o,r);},goog.getScriptNonce=function(t){return t&&t!=goog.global?goog.getScriptNonce_(t.document):(goog.cspNonce_===null&&(goog.cspNonce_=goog.getScriptNonce_(goog.global.document)),goog.cspNonce_)},goog.NONCE_PATTERN_=/^[\w+/_-]+[=]{0,2}$/,goog.cspNonce_=null,goog.getScriptNonce_=function(t){return (t=t.querySelector&&t.querySelector("script[nonce]"))&&(t=t.nonce||t.getAttribute("nonce"))&&goog.NONCE_PATTERN_.test(t)?t:""},goog.VALID_MODULE_RE_=/^[a-zA-Z_$][a-zA-Z0-9._$]*$/,goog.module=function(t){if(typeof t!="string"||!t||t.search(goog.VALID_MODULE_RE_)==-1)throw Error("Invalid module identifier");if(!goog.isInGoogModuleLoader_())throw Error("Module "+t+" has been loaded incorrectly. Note, modules cannot be loaded as normal scripts. They require some kind of pre-processing step. You're likely trying to load a module via a script tag or as a part of a concatenated bundle without rewriting the module. For more info see: https://github.com/google/closure-library/wiki/goog.module:-an-ES6-module-like-alternative-to-goog.provide.");if(goog.moduleLoaderState_.moduleName)throw Error("goog.module may only be called once per module.");if(goog.moduleLoaderState_.moduleName=t,false);},goog.module.get=function(t){return goog.module.getInternal_(t)},goog.module.getInternal_=function(t){return null},goog.ModuleType={ES6:"es6",GOOG:"goog"},goog.moduleLoaderState_=null,goog.isInModuleLoader_=function(){return goog.isInGoogModuleLoader_()||goog.isInEs6ModuleLoader_()},goog.isInGoogModuleLoader_=function(){return !!goog.moduleLoaderState_&&goog.moduleLoaderState_.type==goog.ModuleType.GOOG},goog.isInEs6ModuleLoader_=function(){if(goog.moduleLoaderState_&&goog.moduleLoaderState_.type==goog.ModuleType.ES6)return true;var t=goog.global.$jscomp;return t?typeof t.getCurrentModulePath!="function"?false:!!t.getCurrentModulePath():false},goog.module.declareLegacyNamespace=function(){goog.moduleLoaderState_.declareLegacyNamespace=true;},goog.declareModuleId=function(t){if(goog.moduleLoaderState_)goog.moduleLoaderState_.moduleName=t;else {var o=goog.global.$jscomp;if(!o||typeof o.getCurrentModulePath!="function")throw Error('Module with namespace "'+t+'" has been loaded incorrectly.');o=o.require(o.getCurrentModulePath()),goog.loadedModules_[t]={exports:o,type:goog.ModuleType.ES6,moduleId:t};}},goog.setTestOnly=function(t){if(goog.DISALLOW_TEST_ONLY_CODE)throw t=t||"",Error("Importing test-only code into non-debug environment"+(t?": "+t:"."))},goog.forwardDeclare=function(t){},goog.getObjectByName=function(t,o){t=t.split("."),o=o||goog.global;for(var r=0;r<t.length;r++)if(o=o[t[r]],o==null)return null;return o},goog.addDependency=function(t,o,r,n){},goog.ENABLE_DEBUG_LOADER=true,goog.logToConsole_=function(t){goog.global.console&&goog.global.console.error(t);},goog.require=function(t){},goog.requireType=function(t){return {}},goog.basePath="",goog.nullFunction=function(){},goog.abstractMethod=function(){throw Error("unimplemented abstract method")},goog.addSingletonGetter=function(t){t.instance_=void 0,t.getInstance=function(){return t.instance_?t.instance_:(goog.DEBUG&&(goog.instantiatedSingletons_[goog.instantiatedSingletons_.length]=t),t.instance_=new t)};},goog.instantiatedSingletons_=[],goog.LOAD_MODULE_USING_EVAL=true,goog.SEAL_MODULE_EXPORTS=goog.DEBUG,goog.loadedModules_={},goog.DEPENDENCIES_ENABLED=false,goog.TRANSPILE="detect",goog.ASSUME_ES_MODULES_TRANSPILED=false,goog.TRANSPILE_TO_LANGUAGE="",goog.TRANSPILER="transpile.js",goog.hasBadLetScoping=null,goog.useSafari10Workaround=function(){if(goog.hasBadLetScoping==null){try{var a=!eval('"use strict";let x = 1; function f() { return typeof x; };f() == "number";');}catch(t){a=false;}goog.hasBadLetScoping=a;}return goog.hasBadLetScoping},goog.workaroundSafari10EvalBug=function(t){return "(function(){"+t+`
;})();
`},goog.loadModule=function(t){var o=goog.moduleLoaderState_;try{goog.moduleLoaderState_={moduleName:"",declareLegacyNamespace:!1,type:goog.ModuleType.GOOG};var r={},n=r;if(typeof t=="function")n=t.call(void 0,n);else if(typeof t=="string")goog.useSafari10Workaround()&&(t=goog.workaroundSafari10EvalBug(t)),n=goog.loadModuleFromSource_.call(void 0,n,t);else throw Error("Invalid module definition");var i=goog.moduleLoaderState_.moduleName;if(typeof i=="string"&&i)goog.moduleLoaderState_.declareLegacyNamespace?goog.constructNamespace_(i,n,r!==n):goog.SEAL_MODULE_EXPORTS&&Object.seal&&typeof n=="object"&&n!=null&&Object.seal(n),goog.loadedModules_[i]={exports:n,type:goog.ModuleType.GOOG,moduleId:goog.moduleLoaderState_.moduleName};else throw Error('Invalid module name "'+i+'"')}finally{goog.moduleLoaderState_=o;}},goog.loadModuleFromSource_=function(a,b){return eval(b),a},goog.normalizePath_=function(t){t=t.split("/");for(var o=0;o<t.length;)t[o]=="."?t.splice(o,1):o&&t[o]==".."&&t[o-1]&&t[o-1]!=".."?t.splice(--o,2):o++;return t.join("/")},goog.loadFileSync_=function(t){if(goog.global.CLOSURE_LOAD_FILE_SYNC)return goog.global.CLOSURE_LOAD_FILE_SYNC(t);try{var o=new goog.global.XMLHttpRequest;return o.open("get",t,!1),o.send(),o.status==0||o.status==200?o.responseText:null}catch(r){return null}},goog.transpile_=function(t,o,r){var n=goog.global.$jscomp;n||(goog.global.$jscomp=n={});var i=n.transpile;if(!i){var s=goog.basePath+goog.TRANSPILER,u=goog.loadFileSync_(s);if(u){if(function(){(0, eval)(u+`
//# sourceURL=`+s);}.call(goog.global),goog.global.$gwtExport&&goog.global.$gwtExport.$jscomp&&!goog.global.$gwtExport.$jscomp.transpile)throw Error('The transpiler did not properly export the "transpile" method. $gwtExport: '+JSON.stringify(goog.global.$gwtExport));goog.global.$jscomp.transpile=goog.global.$gwtExport.$jscomp.transpile,n=goog.global.$jscomp,i=n.transpile;}}return i||(i=n.transpile=function(l,m){return goog.logToConsole_(m+" requires transpilation but no transpiler was found."),l}),i(t,o,r)},goog.typeOf=function(t){var o=typeof t;return o!="object"?o:t?Array.isArray(t)?"array":o:"null"},goog.isArrayLike=function(t){var o=goog.typeOf(t);return o=="array"||o=="object"&&typeof t.length=="number"},goog.isDateLike=function(t){return goog.isObject(t)&&typeof t.getFullYear=="function"},goog.isObject=function(t){var o=typeof t;return o=="object"&&t!=null||o=="function"},goog.getUid=function(t){return Object.prototype.hasOwnProperty.call(t,goog.UID_PROPERTY_)&&t[goog.UID_PROPERTY_]||(t[goog.UID_PROPERTY_]=++goog.uidCounter_)},goog.hasUid=function(t){return !!t[goog.UID_PROPERTY_]},goog.removeUid=function(t){t!==null&&"removeAttribute"in t&&t.removeAttribute(goog.UID_PROPERTY_);try{delete t[goog.UID_PROPERTY_];}catch(o){}},goog.UID_PROPERTY_="closure_uid_"+(1e9*Math.random()>>>0),goog.uidCounter_=0,goog.cloneObject=function(t){var o=goog.typeOf(t);if(o=="object"||o=="array"){if(typeof t.clone=="function")return t.clone();o=o=="array"?[]:{};for(var r in t)o[r]=goog.cloneObject(t[r]);return o}return t},goog.bindNative_=function(t,o,r){return t.call.apply(t.bind,arguments)},goog.bindJs_=function(t,o,r){if(!t)throw Error();if(2<arguments.length){var n=Array.prototype.slice.call(arguments,2);return function(){var i=Array.prototype.slice.call(arguments);return Array.prototype.unshift.apply(i,n),t.apply(o,i)}}return function(){return t.apply(o,arguments)}},goog.bind=function(t,o,r){return Function.prototype.bind&&Function.prototype.bind.toString().indexOf("native code")!=-1?goog.bind=goog.bindNative_:goog.bind=goog.bindJs_,goog.bind.apply(null,arguments)},goog.partial=function(t,o){var r=Array.prototype.slice.call(arguments,1);return function(){var n=r.slice();return n.push.apply(n,arguments),t.apply(this,n)}},goog.mixin=function(t,o){for(var r in o)t[r]=o[r];},goog.now=function(){return Date.now()},goog.globalEval=function(t){(0, eval)(t);},goog.getCssName=function(t,o){if(String(t).charAt(0)==".")throw Error('className passed in goog.getCssName must not start with ".". You passed: '+t);var r=function(i){return goog.cssNameMapping_[i]||i},n=function(i){i=i.split("-");for(var s=[],u=0;u<i.length;u++)s.push(r(i[u]));return s.join("-")};return n=goog.cssNameMapping_?goog.cssNameMappingStyle_=="BY_WHOLE"?r:n:function(i){return i},t=o?t+"-"+n(o):n(t),goog.global.CLOSURE_CSS_NAME_MAP_FN?goog.global.CLOSURE_CSS_NAME_MAP_FN(t):t},goog.setCssNameMapping=function(t,o){goog.cssNameMapping_=t,goog.cssNameMappingStyle_=o;},goog.getMsg=function(t,o,r){return r&&r.html&&(t=t.replace(/</g,"<")),r&&r.unescapeHtmlEntities&&(t=t.replace(/</g,"<").replace(/>/g,">").replace(/'/g,"'").replace(/"/g,'"').replace(/&/g,"&")),o&&(t=t.replace(/\{\$([^}]+)}/g,function(n,i){return o!=null&&i in o?o[i]:n})),t},goog.getMsgWithFallback=function(t,o){return t},goog.exportSymbol=function(t,o,r){goog.exportPath_(t,o,true,r);},goog.exportProperty=function(t,o,r){t[o]=r;},goog.inherits=function(t,o){function r(){}r.prototype=o.prototype,t.superClass_=o.prototype,t.prototype=new r,t.prototype.constructor=t,t.base=function(n,i,s){for(var u=Array(arguments.length-2),l=2;l<arguments.length;l++)u[l-2]=arguments[l];return o.prototype[i].apply(n,u)};},goog.scope=function(t){if(goog.isInModuleLoader_())throw Error("goog.scope is not supported within a module.");t.call(goog.global);},goog.defineClass=function(t,o){var r=o.constructor,n=o.statics;return r&&r!=Object.prototype.constructor||(r=function(){throw Error("cannot instantiate an interface (no constructor defined).")}),r=goog.defineClass.createSealingConstructor_(r,t),t&&goog.inherits(r,t),delete o.constructor,delete o.statics,goog.defineClass.applyProperties_(r.prototype,o),n!=null&&(n instanceof Function?n(r):goog.defineClass.applyProperties_(r,n)),r},goog.defineClass.SEAL_CLASS_INSTANCES=goog.DEBUG,goog.defineClass.createSealingConstructor_=function(t,o){return goog.defineClass.SEAL_CLASS_INSTANCES?function(){var r=t.apply(this,arguments)||this;return r[goog.UID_PROPERTY_]=r[goog.UID_PROPERTY_],r}:t},goog.defineClass.OBJECT_PROTOTYPE_FIELDS_="constructor hasOwnProperty isPrototypeOf propertyIsEnumerable toLocaleString toString valueOf".split(" "),goog.defineClass.applyProperties_=function(t,o){for(var r in o)Object.prototype.hasOwnProperty.call(o,r)&&(t[r]=o[r]);for(var n=0;n<goog.defineClass.OBJECT_PROTOTYPE_FIELDS_.length;n++)r=goog.defineClass.OBJECT_PROTOTYPE_FIELDS_[n],Object.prototype.hasOwnProperty.call(o,r)&&(t[r]=o[r]);},goog.TRUSTED_TYPES_POLICY_NAME="goog",goog.identity_=function(t){return t},goog.createTrustedTypesPolicy=function(t){var o=null,r=goog.global.trustedTypes;if(!r||!r.createPolicy)return o;try{o=r.createPolicy(t,{createHTML:goog.identity_,createScript:goog.identity_,createScriptURL:goog.identity_});}catch(n){goog.logToConsole_(n.message);}return o},goog.debug={};function module$contents$goog$debug$Error_DebugError(t){if(Error.captureStackTrace)Error.captureStackTrace(this,module$contents$goog$debug$Error_DebugError);else {var o=Error().stack;o&&(this.stack=o);}t&&(this.message=String(t)),this.reportErrorToServer=true;}goog.inherits(module$contents$goog$debug$Error_DebugError,Error),module$contents$goog$debug$Error_DebugError.prototype.name="CustomError",goog.debug.Error=module$contents$goog$debug$Error_DebugError,goog.dom={},goog.dom.NodeType={ELEMENT:1,ATTRIBUTE:2,TEXT:3,CDATA_SECTION:4,ENTITY_REFERENCE:5,ENTITY:6,PROCESSING_INSTRUCTION:7,COMMENT:8,DOCUMENT:9,DOCUMENT_TYPE:10,DOCUMENT_FRAGMENT:11,NOTATION:12},goog.asserts={},goog.asserts.ENABLE_ASSERTS=goog.DEBUG,goog.asserts.AssertionError=function(t,o){module$contents$goog$debug$Error_DebugError.call(this,goog.asserts.subs_(t,o)),this.messagePattern=t;},goog.inherits(goog.asserts.AssertionError,module$contents$goog$debug$Error_DebugError),goog.asserts.AssertionError.prototype.name="AssertionError",goog.asserts.DEFAULT_ERROR_HANDLER=function(t){throw t},goog.asserts.errorHandler_=goog.asserts.DEFAULT_ERROR_HANDLER,goog.asserts.subs_=function(t,o){t=t.split("%s");for(var r="",n=t.length-1,i=0;i<n;i++)r+=t[i]+(i<o.length?o[i]:"%s");return r+t[n]},goog.asserts.doAssertFailure_=function(t,o,r,n){var i="Assertion failed";if(r){i+=": "+r;var s=n;}else t&&(i+=": "+t,s=o);t=new goog.asserts.AssertionError(""+i,s||[]),goog.asserts.errorHandler_(t);},goog.asserts.setErrorHandler=function(t){goog.asserts.ENABLE_ASSERTS&&(goog.asserts.errorHandler_=t);},goog.asserts.assert=function(t,o,r){return goog.asserts.ENABLE_ASSERTS&&!t&&goog.asserts.doAssertFailure_("",null,o,Array.prototype.slice.call(arguments,2)),t},goog.asserts.assertExists=function(t,o,r){return goog.asserts.ENABLE_ASSERTS&&t==null&&goog.asserts.doAssertFailure_("Expected to exist: %s.",[t],o,Array.prototype.slice.call(arguments,2)),t},goog.asserts.fail=function(t,o){goog.asserts.ENABLE_ASSERTS&&goog.asserts.errorHandler_(new goog.asserts.AssertionError("Failure"+(t?": "+t:""),Array.prototype.slice.call(arguments,1)));},goog.asserts.assertNumber=function(t,o,r){return goog.asserts.ENABLE_ASSERTS&&typeof t!="number"&&goog.asserts.doAssertFailure_("Expected number but got %s: %s.",[goog.typeOf(t),t],o,Array.prototype.slice.call(arguments,2)),t},goog.asserts.assertString=function(t,o,r){return goog.asserts.ENABLE_ASSERTS&&typeof t!="string"&&goog.asserts.doAssertFailure_("Expected string but got %s: %s.",[goog.typeOf(t),t],o,Array.prototype.slice.call(arguments,2)),t},goog.asserts.assertFunction=function(t,o,r){return goog.asserts.ENABLE_ASSERTS&&typeof t!="function"&&goog.asserts.doAssertFailure_("Expected function but got %s: %s.",[goog.typeOf(t),t],o,Array.prototype.slice.call(arguments,2)),t},goog.asserts.assertObject=function(t,o,r){return goog.asserts.ENABLE_ASSERTS&&!goog.isObject(t)&&goog.asserts.doAssertFailure_("Expected object but got %s: %s.",[goog.typeOf(t),t],o,Array.prototype.slice.call(arguments,2)),t},goog.asserts.assertArray=function(t,o,r){return goog.asserts.ENABLE_ASSERTS&&!Array.isArray(t)&&goog.asserts.doAssertFailure_("Expected array but got %s: %s.",[goog.typeOf(t),t],o,Array.prototype.slice.call(arguments,2)),t},goog.asserts.assertBoolean=function(t,o,r){return goog.asserts.ENABLE_ASSERTS&&typeof t!="boolean"&&goog.asserts.doAssertFailure_("Expected boolean but got %s: %s.",[goog.typeOf(t),t],o,Array.prototype.slice.call(arguments,2)),t},goog.asserts.assertElement=function(t,o,r){return !goog.asserts.ENABLE_ASSERTS||goog.isObject(t)&&t.nodeType==goog.dom.NodeType.ELEMENT||goog.asserts.doAssertFailure_("Expected Element but got %s: %s.",[goog.typeOf(t),t],o,Array.prototype.slice.call(arguments,2)),t},goog.asserts.assertInstanceof=function(t,o,r,n){return !goog.asserts.ENABLE_ASSERTS||t instanceof o||goog.asserts.doAssertFailure_("Expected instanceof %s but got %s.",[goog.asserts.getType_(o),goog.asserts.getType_(t)],r,Array.prototype.slice.call(arguments,3)),t},goog.asserts.assertFinite=function(t,o,r){return !goog.asserts.ENABLE_ASSERTS||typeof t=="number"&&isFinite(t)||goog.asserts.doAssertFailure_("Expected %s to be a finite number but it is not.",[t],o,Array.prototype.slice.call(arguments,2)),t},goog.asserts.assertObjectPrototypeIsIntact=function(){for(var t in Object.prototype)goog.asserts.fail(t+" should not be enumerable in Object.prototype.");},goog.asserts.getType_=function(t){return t instanceof Function?t.displayName||t.name||"unknown type name":t instanceof Object?t.constructor.displayName||t.constructor.name||Object.prototype.toString.call(t):t===null?"null":typeof t},goog.array={},goog.NATIVE_ARRAY_PROTOTYPES=goog.TRUSTED_SITE;var module$contents$goog$array_ASSUME_NATIVE_FUNCTIONS=2012<goog.FEATURESET_YEAR;goog.array.ASSUME_NATIVE_FUNCTIONS=module$contents$goog$array_ASSUME_NATIVE_FUNCTIONS;function module$contents$goog$array_peek(t){return t[t.length-1]}goog.array.peek=module$contents$goog$array_peek,goog.array.last=module$contents$goog$array_peek;var module$contents$goog$array_indexOf=goog.NATIVE_ARRAY_PROTOTYPES&&(module$contents$goog$array_ASSUME_NATIVE_FUNCTIONS||Array.prototype.indexOf)?function(t,o,r){return goog.asserts.assert(t.length!=null),Array.prototype.indexOf.call(t,o,r)}:function(t,o,r){if(r=r==null?0:0>r?Math.max(0,t.length+r):r,typeof t=="string")return typeof o!="string"||o.length!=1?-1:t.indexOf(o,r);for(;r<t.length;r++)if(r in t&&t[r]===o)return r;return -1};goog.array.indexOf=module$contents$goog$array_indexOf;var module$contents$goog$array_lastIndexOf=goog.NATIVE_ARRAY_PROTOTYPES&&(module$contents$goog$array_ASSUME_NATIVE_FUNCTIONS||Array.prototype.lastIndexOf)?function(t,o,r){return goog.asserts.assert(t.length!=null),Array.prototype.lastIndexOf.call(t,o,r==null?t.length-1:r)}:function(t,o,r){if(r=r==null?t.length-1:r,0>r&&(r=Math.max(0,t.length+r)),typeof t=="string")return typeof o!="string"||o.length!=1?-1:t.lastIndexOf(o,r);for(;0<=r;r--)if(r in t&&t[r]===o)return r;return -1};goog.array.lastIndexOf=module$contents$goog$array_lastIndexOf;var module$contents$goog$array_forEach=goog.NATIVE_ARRAY_PROTOTYPES&&(module$contents$goog$array_ASSUME_NATIVE_FUNCTIONS||Array.prototype.forEach)?function(t,o,r){goog.asserts.assert(t.length!=null),Array.prototype.forEach.call(t,o,r);}:function(t,o,r){for(var n=t.length,i=typeof t=="string"?t.split(""):t,s=0;s<n;s++)s in i&&o.call(r,i[s],s,t);};goog.array.forEach=module$contents$goog$array_forEach;function module$contents$goog$array_forEachRight(t,o,r){var n=t.length,i=typeof t=="string"?t.split(""):t;for(--n;0<=n;--n)n in i&&o.call(r,i[n],n,t);}goog.array.forEachRight=module$contents$goog$array_forEachRight;var module$contents$goog$array_filter=goog.NATIVE_ARRAY_PROTOTYPES&&(module$contents$goog$array_ASSUME_NATIVE_FUNCTIONS||Array.prototype.filter)?function(t,o,r){return goog.asserts.assert(t.length!=null),Array.prototype.filter.call(t,o,r)}:function(t,o,r){for(var n=t.length,i=[],s=0,u=typeof t=="string"?t.split(""):t,l=0;l<n;l++)if(l in u){var m=u[l];o.call(r,m,l,t)&&(i[s++]=m);}return i};goog.array.filter=module$contents$goog$array_filter;var module$contents$goog$array_map=goog.NATIVE_ARRAY_PROTOTYPES&&(module$contents$goog$array_ASSUME_NATIVE_FUNCTIONS||Array.prototype.map)?function(t,o,r){return goog.asserts.assert(t.length!=null),Array.prototype.map.call(t,o,r)}:function(t,o,r){for(var n=t.length,i=Array(n),s=typeof t=="string"?t.split(""):t,u=0;u<n;u++)u in s&&(i[u]=o.call(r,s[u],u,t));return i};goog.array.map=module$contents$goog$array_map;var module$contents$goog$array_reduce=goog.NATIVE_ARRAY_PROTOTYPES&&(module$contents$goog$array_ASSUME_NATIVE_FUNCTIONS||Array.prototype.reduce)?function(t,o,r,n){return goog.asserts.assert(t.length!=null),n&&(o=goog.bind(o,n)),Array.prototype.reduce.call(t,o,r)}:function(t,o,r,n){var i=r;return module$contents$goog$array_forEach(t,function(s,u){i=o.call(n,i,s,u,t);}),i};goog.array.reduce=module$contents$goog$array_reduce;var module$contents$goog$array_reduceRight=goog.NATIVE_ARRAY_PROTOTYPES&&(module$contents$goog$array_ASSUME_NATIVE_FUNCTIONS||Array.prototype.reduceRight)?function(t,o,r,n){return goog.asserts.assert(t.length!=null),goog.asserts.assert(o!=null),n&&(o=goog.bind(o,n)),Array.prototype.reduceRight.call(t,o,r)}:function(t,o,r,n){var i=r;return module$contents$goog$array_forEachRight(t,function(s,u){i=o.call(n,i,s,u,t);}),i};goog.array.reduceRight=module$contents$goog$array_reduceRight;var module$contents$goog$array_some=goog.NATIVE_ARRAY_PROTOTYPES&&(module$contents$goog$array_ASSUME_NATIVE_FUNCTIONS||Array.prototype.some)?function(t,o,r){return goog.asserts.assert(t.length!=null),Array.prototype.some.call(t,o,r)}:function(t,o,r){for(var n=t.length,i=typeof t=="string"?t.split(""):t,s=0;s<n;s++)if(s in i&&o.call(r,i[s],s,t))return true;return false};goog.array.some=module$contents$goog$array_some;var module$contents$goog$array_every=goog.NATIVE_ARRAY_PROTOTYPES&&(module$contents$goog$array_ASSUME_NATIVE_FUNCTIONS||Array.prototype.every)?function(t,o,r){return goog.asserts.assert(t.length!=null),Array.prototype.every.call(t,o,r)}:function(t,o,r){for(var n=t.length,i=typeof t=="string"?t.split(""):t,s=0;s<n;s++)if(s in i&&!o.call(r,i[s],s,t))return false;return true};goog.array.every=module$contents$goog$array_every;function module$contents$goog$array_count(t,o,r){var n=0;return module$contents$goog$array_forEach(t,function(i,s,u){o.call(r,i,s,u)&&++n;},r),n}goog.array.count=module$contents$goog$array_count;function module$contents$goog$array_find(t,o,r){return o=module$contents$goog$array_findIndex(t,o,r),0>o?null:typeof t=="string"?t.charAt(o):t[o]}goog.array.find=module$contents$goog$array_find;function module$contents$goog$array_findIndex(t,o,r){for(var n=t.length,i=typeof t=="string"?t.split(""):t,s=0;s<n;s++)if(s in i&&o.call(r,i[s],s,t))return s;return -1}goog.array.findIndex=module$contents$goog$array_findIndex;function module$contents$goog$array_findRight(t,o,r){return o=module$contents$goog$array_findIndexRight(t,o,r),0>o?null:typeof t=="string"?t.charAt(o):t[o]}goog.array.findRight=module$contents$goog$array_findRight;function module$contents$goog$array_findIndexRight(t,o,r){var n=t.length,i=typeof t=="string"?t.split(""):t;for(--n;0<=n;n--)if(n in i&&o.call(r,i[n],n,t))return n;return -1}goog.array.findIndexRight=module$contents$goog$array_findIndexRight;function module$contents$goog$array_contains(t,o){return 0<=module$contents$goog$array_indexOf(t,o)}goog.array.contains=module$contents$goog$array_contains;function module$contents$goog$array_isEmpty(t){return t.length==0}goog.array.isEmpty=module$contents$goog$array_isEmpty;function module$contents$goog$array_clear(t){if(!Array.isArray(t))for(var o=t.length-1;0<=o;o--)delete t[o];t.length=0;}goog.array.clear=module$contents$goog$array_clear;function module$contents$goog$array_insert(t,o){module$contents$goog$array_contains(t,o)||t.push(o);}goog.array.insert=module$contents$goog$array_insert;function module$contents$goog$array_insertAt(t,o,r){module$contents$goog$array_splice(t,r,0,o);}goog.array.insertAt=module$contents$goog$array_insertAt;function module$contents$goog$array_insertArrayAt(t,o,r){goog.partial(module$contents$goog$array_splice,t,r,0).apply(null,o);}goog.array.insertArrayAt=module$contents$goog$array_insertArrayAt;function module$contents$goog$array_insertBefore(t,o,r){var n;arguments.length==2||0>(n=module$contents$goog$array_indexOf(t,r))?t.push(o):module$contents$goog$array_insertAt(t,o,n);}goog.array.insertBefore=module$contents$goog$array_insertBefore;function module$contents$goog$array_remove(t,o){o=module$contents$goog$array_indexOf(t,o);var r;return (r=0<=o)&&module$contents$goog$array_removeAt(t,o),r}goog.array.remove=module$contents$goog$array_remove;function module$contents$goog$array_removeLast(t,o){return o=module$contents$goog$array_lastIndexOf(t,o),0<=o?(module$contents$goog$array_removeAt(t,o),true):false}goog.array.removeLast=module$contents$goog$array_removeLast;function module$contents$goog$array_removeAt(t,o){return goog.asserts.assert(t.length!=null),Array.prototype.splice.call(t,o,1).length==1}goog.array.removeAt=module$contents$goog$array_removeAt;function module$contents$goog$array_removeIf(t,o,r){return o=module$contents$goog$array_findIndex(t,o,r),0<=o?(module$contents$goog$array_removeAt(t,o),true):false}goog.array.removeIf=module$contents$goog$array_removeIf;function module$contents$goog$array_removeAllIf(t,o,r){var n=0;return module$contents$goog$array_forEachRight(t,function(i,s){o.call(r,i,s,t)&&module$contents$goog$array_removeAt(t,s)&&n++;}),n}goog.array.removeAllIf=module$contents$goog$array_removeAllIf;function module$contents$goog$array_concat(t){return Array.prototype.concat.apply([],arguments)}goog.array.concat=module$contents$goog$array_concat;function module$contents$goog$array_join(t){return Array.prototype.concat.apply([],arguments)}goog.array.join=module$contents$goog$array_join;function module$contents$goog$array_toArray(t){var o=t.length;if(0<o){for(var r=Array(o),n=0;n<o;n++)r[n]=t[n];return r}return []}var module$contents$goog$array_clone=goog.array.toArray=module$contents$goog$array_toArray;goog.array.clone=module$contents$goog$array_clone;function module$contents$goog$array_extend(t,o){for(var r=1;r<arguments.length;r++){var n=arguments[r];if(goog.isArrayLike(n)){var i=t.length||0,s=n.length||0;t.length=i+s;for(var u=0;u<s;u++)t[i+u]=n[u];}else t.push(n);}}goog.array.extend=module$contents$goog$array_extend;function module$contents$goog$array_splice(t,o,r,n){return goog.asserts.assert(t.length!=null),Array.prototype.splice.apply(t,module$contents$goog$array_slice(arguments,1))}goog.array.splice=module$contents$goog$array_splice;function module$contents$goog$array_slice(t,o,r){return goog.asserts.assert(t.length!=null),2>=arguments.length?Array.prototype.slice.call(t,o):Array.prototype.slice.call(t,o,r)}goog.array.slice=module$contents$goog$array_slice;function module$contents$goog$array_removeDuplicates(t,o,r){o=o||t;var n=function(m){return goog.isObject(m)?"o"+goog.getUid(m):(typeof m).charAt(0)+m};r=r||n,n={};for(var i=0,s=0;s<t.length;){var u=t[s++],l=r(u);Object.prototype.hasOwnProperty.call(n,l)||(n[l]=true,o[i++]=u);}o.length=i;}goog.array.removeDuplicates=module$contents$goog$array_removeDuplicates;function module$contents$goog$array_binarySearch(t,o,r){return module$contents$goog$array_binarySearch_(t,r||module$contents$goog$array_defaultCompare,false,o)}goog.array.binarySearch=module$contents$goog$array_binarySearch;function module$contents$goog$array_binarySelect(t,o,r){return module$contents$goog$array_binarySearch_(t,o,true,void 0,r)}goog.array.binarySelect=module$contents$goog$array_binarySelect;function module$contents$goog$array_binarySearch_(t,o,r,n,i){for(var s=0,u=t.length,l;s<u;){var m=s+(u-s>>>1),p=r?o.call(i,t[m],m,t):o(n,t[m]);0<p?s=m+1:(u=m,l=!p);}return l?s:-s-1}function module$contents$goog$array_sort(t,o){t.sort(o||module$contents$goog$array_defaultCompare);}goog.array.sort=module$contents$goog$array_sort;function module$contents$goog$array_stableSort(t,o){for(var r=Array(t.length),n=0;n<t.length;n++)r[n]={index:n,value:t[n]};var i=o||module$contents$goog$array_defaultCompare;for(module$contents$goog$array_sort(r,function(s,u){return i(s.value,u.value)||s.index-u.index}),n=0;n<t.length;n++)t[n]=r[n].value;}goog.array.stableSort=module$contents$goog$array_stableSort;function module$contents$goog$array_sortByKey(t,o,r){var n=r||module$contents$goog$array_defaultCompare;module$contents$goog$array_sort(t,function(i,s){return n(o(i),o(s))});}goog.array.sortByKey=module$contents$goog$array_sortByKey;function module$contents$goog$array_sortObjectsByKey(t,o,r){module$contents$goog$array_sortByKey(t,function(n){return n[o]},r);}goog.array.sortObjectsByKey=module$contents$goog$array_sortObjectsByKey;function module$contents$goog$array_isSorted(t,o,r){o=o||module$contents$goog$array_defaultCompare;for(var n=1;n<t.length;n++){var i=o(t[n-1],t[n]);if(0<i||i==0&&r)return false}return true}goog.array.isSorted=module$contents$goog$array_isSorted;function module$contents$goog$array_equals(t,o,r){if(!goog.isArrayLike(t)||!goog.isArrayLike(o)||t.length!=o.length)return false;var n=t.length;r=r||module$contents$goog$array_defaultCompareEquality;for(var i=0;i<n;i++)if(!r(t[i],o[i]))return false;return true}goog.array.equals=module$contents$goog$array_equals;function module$contents$goog$array_compare3(t,o,r){r=r||module$contents$goog$array_defaultCompare;for(var n=Math.min(t.length,o.length),i=0;i<n;i++){var s=r(t[i],o[i]);if(s!=0)return s}return module$contents$goog$array_defaultCompare(t.length,o.length)}goog.array.compare3=module$contents$goog$array_compare3;function module$contents$goog$array_defaultCompare(t,o){return t>o?1:t<o?-1:0}goog.array.defaultCompare=module$contents$goog$array_defaultCompare;function module$contents$goog$array_inverseDefaultCompare(t,o){return -module$contents$goog$array_defaultCompare(t,o)}goog.array.inverseDefaultCompare=module$contents$goog$array_inverseDefaultCompare;function module$contents$goog$array_defaultCompareEquality(t,o){return t===o}goog.array.defaultCompareEquality=module$contents$goog$array_defaultCompareEquality;function module$contents$goog$array_binaryInsert(t,o,r){return r=module$contents$goog$array_binarySearch(t,o,r),0>r?(module$contents$goog$array_insertAt(t,o,-(r+1)),true):false}goog.array.binaryInsert=module$contents$goog$array_binaryInsert;function module$contents$goog$array_binaryRemove(t,o,r){return o=module$contents$goog$array_binarySearch(t,o,r),0<=o?module$contents$goog$array_removeAt(t,o):false}goog.array.binaryRemove=module$contents$goog$array_binaryRemove;function module$contents$goog$array_bucket(t,o,r){for(var n={},i=0;i<t.length;i++){var s=t[i],u=o.call(r,s,i,t);u!==void 0&&(n[u]||(n[u]=[])).push(s);}return n}goog.array.bucket=module$contents$goog$array_bucket;function module$contents$goog$array_toObject(t,o,r){var n={};return module$contents$goog$array_forEach(t,function(i,s){n[o.call(r,i,s,t)]=i;}),n}goog.array.toObject=module$contents$goog$array_toObject;function module$contents$goog$array_range(t,o,r){var n=[],i=0,s=t;if(r=r||1,o!==void 0&&(i=t,s=o),0>r*(s-i))return [];if(0<r)for(t=i;t<s;t+=r)n.push(t);else for(t=i;t>s;t+=r)n.push(t);return n}goog.array.range=module$contents$goog$array_range;function module$contents$goog$array_repeat(t,o){for(var r=[],n=0;n<o;n++)r[n]=t;return r}goog.array.repeat=module$contents$goog$array_repeat;function module$contents$goog$array_flatten(t){for(var o=[],r=0;r<arguments.length;r++){var n=arguments[r];if(Array.isArray(n))for(var i=0;i<n.length;i+=8192){var s=module$contents$goog$array_slice(n,i,i+8192);s=module$contents$goog$array_flatten.apply(null,s);for(var u=0;u<s.length;u++)o.push(s[u]);}else o.push(n);}return o}goog.array.flatten=module$contents$goog$array_flatten;function module$contents$goog$array_rotate(t,o){return goog.asserts.assert(t.length!=null),t.length&&(o%=t.length,0<o?Array.prototype.unshift.apply(t,t.splice(-o,o)):0>o&&Array.prototype.push.apply(t,t.splice(0,-o))),t}goog.array.rotate=module$contents$goog$array_rotate;function module$contents$goog$array_moveItem(t,o,r){goog.asserts.assert(0<=o&&o<t.length),goog.asserts.assert(0<=r&&r<t.length),o=Array.prototype.splice.call(t,o,1),Array.prototype.splice.call(t,r,0,o[0]);}goog.array.moveItem=module$contents$goog$array_moveItem;function module$contents$goog$array_zip(t){if(!arguments.length)return [];for(var o=[],r=arguments[0].length,n=1;n<arguments.length;n++)arguments[n].length<r&&(r=arguments[n].length);for(n=0;n<r;n++){for(var i=[],s=0;s<arguments.length;s++)i.push(arguments[s][n]);o.push(i);}return o}goog.array.zip=module$contents$goog$array_zip;function module$contents$goog$array_shuffle(t,o){o=o||Math.random;for(var r=t.length-1;0<r;r--){var n=Math.floor(o()*(r+1)),i=t[r];t[r]=t[n],t[n]=i;}}goog.array.shuffle=module$contents$goog$array_shuffle;function module$contents$goog$array_copyByIndex(t,o){var r=[];return module$contents$goog$array_forEach(o,function(n){r.push(t[n]);}),r}goog.array.copyByIndex=module$contents$goog$array_copyByIndex;function module$contents$goog$array_concatMap(t,o,r){return module$contents$goog$array_concat.apply([],module$contents$goog$array_map(t,o,r))}goog.array.concatMap=module$contents$goog$array_concatMap,goog.dom.asserts={},goog.dom.asserts.assertIsLocation=function(t){if(goog.asserts.ENABLE_ASSERTS){var o=goog.dom.asserts.getWindow_(t);o&&(!t||!(t instanceof o.Location)&&t instanceof o.Element)&&goog.asserts.fail("Argument is not a Location (or a non-Element mock); got: %s",goog.dom.asserts.debugStringForType_(t));}return t},goog.dom.asserts.assertIsElementType_=function(t,o){if(goog.asserts.ENABLE_ASSERTS){var r=goog.dom.asserts.getWindow_(t);r&&typeof r[o]!="undefined"&&(t&&(t instanceof r[o]||!(t instanceof r.Location||t instanceof r.Element))||goog.asserts.fail("Argument is not a %s (or a non-Element, non-Location mock); got: %s",o,goog.dom.asserts.debugStringForType_(t)));}return t},goog.dom.asserts.assertIsHTMLAnchorElement=function(t){return goog.dom.asserts.assertIsElementType_(t,"HTMLAnchorElement")},goog.dom.asserts.assertIsHTMLButtonElement=function(t){return goog.dom.asserts.assertIsElementType_(t,"HTMLButtonElement")},goog.dom.asserts.assertIsHTMLLinkElement=function(t){return goog.dom.asserts.assertIsElementType_(t,"HTMLLinkElement")},goog.dom.asserts.assertIsHTMLImageElement=function(t){return goog.dom.asserts.assertIsElementType_(t,"HTMLImageElement")},goog.dom.asserts.assertIsHTMLAudioElement=function(t){return goog.dom.asserts.assertIsElementType_(t,"HTMLAudioElement")},goog.dom.asserts.assertIsHTMLVideoElement=function(t){return goog.dom.asserts.assertIsElementType_(t,"HTMLVideoElement")},goog.dom.asserts.assertIsHTMLInputElement=function(t){return goog.dom.asserts.assertIsElementType_(t,"HTMLInputElement")},goog.dom.asserts.assertIsHTMLTextAreaElement=function(t){return goog.dom.asserts.assertIsElementType_(t,"HTMLTextAreaElement")},goog.dom.asserts.assertIsHTMLCanvasElement=function(t){return goog.dom.asserts.assertIsElementType_(t,"HTMLCanvasElement")},goog.dom.asserts.assertIsHTMLEmbedElement=function(t){return goog.dom.asserts.assertIsElementType_(t,"HTMLEmbedElement")},goog.dom.asserts.assertIsHTMLFormElement=function(t){return goog.dom.asserts.assertIsElementType_(t,"HTMLFormElement")},goog.dom.asserts.assertIsHTMLFrameElement=function(t){return goog.dom.asserts.assertIsElementType_(t,"HTMLFrameElement")},goog.dom.asserts.assertIsHTMLIFrameElement=function(t){return goog.dom.asserts.assertIsElementType_(t,"HTMLIFrameElement")},goog.dom.asserts.assertIsHTMLObjectElement=function(t){return goog.dom.asserts.assertIsElementType_(t,"HTMLObjectElement")},goog.dom.asserts.assertIsHTMLScriptElement=function(t){return goog.dom.asserts.assertIsElementType_(t,"HTMLScriptElement")},goog.dom.asserts.debugStringForType_=function(t){if(goog.isObject(t))try{return t.constructor.displayName||t.constructor.name||Object.prototype.toString.call(t)}catch(o){return "<object could not be stringified>"}else return t===void 0?"undefined":t===null?"null":typeof t},goog.dom.asserts.getWindow_=function(t){try{var o=t&&t.ownerDocument,r=o&&(o.defaultView||o.parentWindow);if(r=r||goog.global,r.Element&&r.Location)return r}catch(n){}return null},goog.dom.HtmlElement=function(){},goog.functions={},goog.functions.constant=function(t){return function(){return t}},goog.functions.FALSE=function(){return false},goog.functions.TRUE=function(){return true},goog.functions.NULL=function(){return null},goog.functions.identity=function(t,o){return t},goog.functions.error=function(t){return function(){throw Error(t)}},goog.functions.fail=function(t){return function(){throw t}},goog.functions.lock=function(t,o){return o=o||0,function(){return t.apply(this,Array.prototype.slice.call(arguments,0,o))}},goog.functions.nth=function(t){return function(){return arguments[t]}},goog.functions.partialRight=function(t,o){var r=Array.prototype.slice.call(arguments,1);return function(){var n=this;n===goog.global&&(n=void 0);var i=Array.prototype.slice.call(arguments);return i.push.apply(i,r),t.apply(n,i)}},goog.functions.withReturnValue=function(t,o){return goog.functions.sequence(t,goog.functions.constant(o))},goog.functions.equalTo=function(t,o){return function(r){return o?t==r:t===r}},goog.functions.compose=function(t,o){var r=arguments,n=r.length;return function(){var i;n&&(i=r[n-1].apply(this,arguments));for(var s=n-2;0<=s;s--)i=r[s].call(this,i);return i}},goog.functions.sequence=function(t){var o=arguments,r=o.length;return function(){for(var n,i=0;i<r;i++)n=o[i].apply(this,arguments);return n}},goog.functions.and=function(t){var o=arguments,r=o.length;return function(){for(var n=0;n<r;n++)if(!o[n].apply(this,arguments))return false;return true}},goog.functions.or=function(t){var o=arguments,r=o.length;return function(){for(var n=0;n<r;n++)if(o[n].apply(this,arguments))return true;return false}},goog.functions.not=function(t){return function(){return !t.apply(this,arguments)}},goog.functions.create=function(t,o){var r=function(){};return r.prototype=t.prototype,r=new r,t.apply(r,Array.prototype.slice.call(arguments,1)),r},goog.functions.CACHE_RETURN_VALUE=true,goog.functions.cacheReturnValue=function(t){var o=false,r;return function(){return goog.functions.CACHE_RETURN_VALUE?(o||(r=t(),o=true),r):t()}},goog.functions.once=function(t){var o=t;return function(){if(o){var r=o;o=null,r();}}},goog.functions.debounce=function(t,o,r){var n=0;return function(i){goog.global.clearTimeout(n);var s=arguments;n=goog.global.setTimeout(function(){t.apply(r,s);},o);}},goog.functions.throttle=function(t,o,r){var n=0,i=false,s=[],u=function(){n=0,i&&(i=false,l());},l=function(){n=goog.global.setTimeout(u,o),t.apply(r,s);};return function(m){s=arguments,n?i=true:l();}},goog.functions.rateLimit=function(t,o,r){var n=0,i=function(){n=0;};return function(s){n||(n=goog.global.setTimeout(i,o),t.apply(r,arguments));}},goog.functions.isFunction=function(t){return typeof t=="function"},goog.dom.TagName=function(){},goog.dom.TagName.cast=function(t,o){return t},goog.dom.TagName.prototype.toString=function(){},goog.dom.TagName.A="A",goog.dom.TagName.ABBR="ABBR",goog.dom.TagName.ACRONYM="ACRONYM",goog.dom.TagName.ADDRESS="ADDRESS",goog.dom.TagName.APPLET="APPLET",goog.dom.TagName.AREA="AREA",goog.dom.TagName.ARTICLE="ARTICLE",goog.dom.TagName.ASIDE="ASIDE",goog.dom.TagName.AUDIO="AUDIO",goog.dom.TagName.B="B",goog.dom.TagName.BASE="BASE",goog.dom.TagName.BASEFONT="BASEFONT",goog.dom.TagName.BDI="BDI",goog.dom.TagName.BDO="BDO",goog.dom.TagName.BIG="BIG",goog.dom.TagName.BLOCKQUOTE="BLOCKQUOTE",goog.dom.TagName.BODY="BODY",goog.dom.TagName.BR="BR",goog.dom.TagName.BUTTON="BUTTON",goog.dom.TagName.CANVAS="CANVAS",goog.dom.TagName.CAPTION="CAPTION",goog.dom.TagName.CENTER="CENTER",goog.dom.TagName.CITE="CITE",goog.dom.TagName.CODE="CODE",goog.dom.TagName.COL="COL",goog.dom.TagName.COLGROUP="COLGROUP",goog.dom.TagName.COMMAND="COMMAND",goog.dom.TagName.DATA="DATA",goog.dom.TagName.DATALIST="DATALIST",goog.dom.TagName.DD="DD",goog.dom.TagName.DEL="DEL",goog.dom.TagName.DETAILS="DETAILS",goog.dom.TagName.DFN="DFN",goog.dom.TagName.DIALOG="DIALOG",goog.dom.TagName.DIR="DIR",goog.dom.TagName.DIV="DIV",goog.dom.TagName.DL="DL",goog.dom.TagName.DT="DT",goog.dom.TagName.EM="EM",goog.dom.TagName.EMBED="EMBED",goog.dom.TagName.FIELDSET="FIELDSET",goog.dom.TagName.FIGCAPTION="FIGCAPTION",goog.dom.TagName.FIGURE="FIGURE",goog.dom.TagName.FONT="FONT",goog.dom.TagName.FOOTER="FOOTER",goog.dom.TagName.FORM="FORM",goog.dom.TagName.FRAME="FRAME",goog.dom.TagName.FRAMESET="FRAMESET",goog.dom.TagName.H1="H1",goog.dom.TagName.H2="H2",goog.dom.TagName.H3="H3",goog.dom.TagName.H4="H4",goog.dom.TagName.H5="H5",goog.dom.TagName.H6="H6",goog.dom.TagName.HEAD="HEAD",goog.dom.TagName.HEADER="HEADER",goog.dom.TagName.HGROUP="HGROUP",goog.dom.TagName.HR="HR",goog.dom.TagName.HTML="HTML",goog.dom.TagName.I="I",goog.dom.TagName.IFRAME="IFRAME",goog.dom.TagName.IMG="IMG",goog.dom.TagName.INPUT="INPUT",goog.dom.TagName.INS="INS",goog.dom.TagName.ISINDEX="ISINDEX",goog.dom.TagName.KBD="KBD",goog.dom.TagName.KEYGEN="KEYGEN",goog.dom.TagName.LABEL="LABEL",goog.dom.TagName.LEGEND="LEGEND",goog.dom.TagName.LI="LI",goog.dom.TagName.LINK="LINK",goog.dom.TagName.MAIN="MAIN",goog.dom.TagName.MAP="MAP",goog.dom.TagName.MARK="MARK",goog.dom.TagName.MATH="MATH",goog.dom.TagName.MENU="MENU",goog.dom.TagName.MENUITEM="MENUITEM",goog.dom.TagName.META="META",goog.dom.TagName.METER="METER",goog.dom.TagName.NAV="NAV",goog.dom.TagName.NOFRAMES="NOFRAMES",goog.dom.TagName.NOSCRIPT="NOSCRIPT",goog.dom.TagName.OBJECT="OBJECT",goog.dom.TagName.OL="OL",goog.dom.TagName.OPTGROUP="OPTGROUP",goog.dom.TagName.OPTION="OPTION",goog.dom.TagName.OUTPUT="OUTPUT",goog.dom.TagName.P="P",goog.dom.TagName.PARAM="PARAM",goog.dom.TagName.PICTURE="PICTURE",goog.dom.TagName.PRE="PRE",goog.dom.TagName.PROGRESS="PROGRESS",goog.dom.TagName.Q="Q",goog.dom.TagName.RP="RP",goog.dom.TagName.RT="RT",goog.dom.TagName.RTC="RTC",goog.dom.TagName.RUBY="RUBY",goog.dom.TagName.S="S",goog.dom.TagName.SAMP="SAMP",goog.dom.TagName.SCRIPT="SCRIPT",goog.dom.TagName.SECTION="SECTION",goog.dom.TagName.SELECT="SELECT",goog.dom.TagName.SMALL="SMALL",goog.dom.TagName.SOURCE="SOURCE",goog.dom.TagName.SPAN="SPAN",goog.dom.TagName.STRIKE="STRIKE",goog.dom.TagName.STRONG="STRONG",goog.dom.TagName.STYLE="STYLE",goog.dom.TagName.SUB="SUB",goog.dom.TagName.SUMMARY="SUMMARY",goog.dom.TagName.SUP="SUP",goog.dom.TagName.SVG="SVG",goog.dom.TagName.TABLE="TABLE",goog.dom.TagName.TBODY="TBODY",goog.dom.TagName.TD="TD",goog.dom.TagName.TEMPLATE="TEMPLATE",goog.dom.TagName.TEXTAREA="TEXTAREA",goog.dom.TagName.TFOOT="TFOOT",goog.dom.TagName.TH="TH",goog.dom.TagName.THEAD="THEAD