Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(373)

Side by Side Diff: appengine/swarming/ui/build/elements.html

Issue 2872573003: Add UI for botlist to only display Machine Provider bots (Closed)
Patch Set: Created 3 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « no previous file | appengine/swarming/ui/res/imp/botlist/bot-filters.html » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 <!DOCTYPE html><html><head><meta charset="UTF-8"> </head><body><div hidden="" by -vulcanize=""><script>!function(){function e(){document.body.removeAttribute("un resolved")}window.WebComponents?addEventListener("WebComponentsReady",e):"intera ctive"===document.readyState||"complete"===document.readyState?e():addEventListe ner("DOMContentLoaded",e)}(),window.Polymer={Settings:function(){var e=window.Po lymer||{};if(!e.noUrlSettings)for(var t,r=location.search.slice(1).split("&"),i= 0;i<r.length&&(t=r[i]);i++)t=t.split("="),t[0]&&(e[t[0]]=t[1]||!0);return e.want Shadow="shadow"===e.dom,e.hasShadow=Boolean(Element.prototype.createShadowRoot), e.nativeShadow=e.hasShadow&&!window.ShadowDOMPolyfill,e.useShadow=e.wantShadow&& e.hasShadow,e.hasNativeImports=Boolean("import"in document.createElement("link") ),e.useNativeImports=e.hasNativeImports,e.useNativeCustomElements=!window.Custom Elements||window.CustomElements.useNative,e.useNativeShadow=e.useShadow&&e.nativ eShadow,e.usePolyfillProto=!e.useNativeCustomElements&&!Object.__proto__,e.hasNa tiveCSSProperties=!navigator.userAgent.match("AppleWebKit/601")&&window.CSS&&CSS .supports&&CSS.supports("box-shadow","0 0 0 var(--foo)"),e.useNativeCSSPropertie s=e.hasNativeCSSProperties&&e.lazyRegister&&e.useNativeCSSProperties,e}()},funct ion(){var e=window.Polymer;window.Polymer=function(e){"function"==typeof e&&(e=e .prototype),e||(e={});var r=t(e);e=r.prototype;var i={prototype:e};return e.exte nds&&(i.extends=e.extends),Polymer.telemetry._registrate(e),document.registerEle ment(e.is,i),r};var t=function(e){var t=Polymer.Base;return e.extends&&(t=Polyme r.Base._getExtendedPrototype(e.extends)),e=Polymer.Base.chainObject(e,t),e.regis terCallback(),e.constructor};if(e)for(var r in e)Polymer[r]=e[r];Polymer.Class=t }(),Polymer.telemetry={registrations:[],_regLog:function(e){console.log("["+e.is +"]: registered")},_registrate:function(e){this.registrations.push(e),Polymer.lo g&&this._regLog(e)},dumpRegistrations:function(){this.registrations.forEach(this ._regLog)}},Object.defineProperty(window,"currentImport",{enumerable:!0,configur able:!0,get:function(){return(document._currentScript||document.currentScript).o wnerDocument}}),Polymer.RenderStatus={_ready:!1,_callbacks:[],whenReady:function (e){this._ready?e():this._callbacks.push(e)},_makeReady:function(){this._ready=! 0;for(var e=0;e<this._callbacks.length;e++)this._callbacks[e]();this._callbacks= []},_catchFirstRender:function(){requestAnimationFrame(function(){Polymer.Render Status._makeReady()})},_afterNextRenderQueue:[],_waitingNextRender:!1,afterNextR ender:function(e,t,r){this._watchNextRender(),this._afterNextRenderQueue.push([e ,t,r])},hasRendered:function(){return this._ready},_watchNextRender:function(){i f(!this._waitingNextRender){this._waitingNextRender=!0;var e=function(){Polymer. RenderStatus._flushNextRender()};this._ready?requestAnimationFrame(e):this.whenR eady(e)}},_flushNextRender:function(){var e=this;setTimeout(function(){e._flushR enderCallbacks(e._afterNextRenderQueue),e._afterNextRenderQueue=[],e._waitingNex tRender=!1})},_flushRenderCallbacks:function(e){for(var t,r=0;r<e.length;r++)t=e [r],t[1].apply(t[0],t[2]||Polymer.nar)}},window.HTMLImports?HTMLImports.whenRead y(function(){Polymer.RenderStatus._catchFirstRender()}):Polymer.RenderStatus._ca tchFirstRender(),Polymer.ImportStatus=Polymer.RenderStatus,Polymer.ImportStatus. whenLoaded=Polymer.ImportStatus.whenReady,function(){"use strict";var e=Polymer. Settings;Polymer.Base={__isPolymerInstance__:!0,_addFeature:function(e){this.ext end(this,e)},registerCallback:function(){"max"===e.lazyRegister?this.beforeRegis ter&&this.beforeRegister():(this._desugarBehaviors(),this._doBehavior("beforeReg ister")),this._registerFeatures(),e.lazyRegister||this.ensureRegisterFinished()} ,createdCallback:function(){this.__hasRegisterFinished||this._ensureRegisterFini shed(this.__proto__),Polymer.telemetry.instanceCount++,this.root=this,this._doBe havior("created"),this._initFeatures()},ensureRegisterFinished:function(){this._ ensureRegisterFinished(this)},_ensureRegisterFinished:function(t){t.__hasRegiste rFinished===t.is&&t.is||("max"===e.lazyRegister&&(t._desugarBehaviors(),t._doBeh aviorOnly("beforeRegister")),t.__hasRegisterFinished=t.is,t._finishRegisterFeatu res&&t._finishRegisterFeatures(),t._doBehavior("registered"),e.usePolyfillProto& &t!==this&&t.extend(this,t))},attachedCallback:function(){var e=this;Polymer.Ren derStatus.whenReady(function(){e.isAttached=!0,e._doBehavior("attached")})},deta chedCallback:function(){var e=this;Polymer.RenderStatus.whenReady(function(){e.i sAttached=!1,e._doBehavior("detached")})},attributeChangedCallback:function(e,t, r){this._attributeChangedImpl(e),this._doBehavior("attributeChanged",[e,t,r])},_ attributeChangedImpl:function(e){this._setAttributeToProperty(this,e)},extend:fu nction(e,t){if(e&&t)for(var r,i=Object.getOwnPropertyNames(t),o=0;o<i.length&&(r =i[o]);o++)this.copyOwnProperty(r,t,e);return e||t},mixin:function(e,t){for(var r in t)e[r]=t[r];return e},copyOwnProperty:function(e,t,r){var i=Object.getOwnPr opertyDescriptor(t,e);i&&Object.defineProperty(r,e,i)},_logger:function(e,t){swi tch(1===t.length&&Array.isArray(t[0])&&(t=t[0]),e){case"log":case"warn":case"err or":console[e].apply(console,t)}},_log:function(){var e=Array.prototype.slice.ca ll(arguments,0);this._logger("log",e)},_warn:function(){var e=Array.prototype.sl ice.call(arguments,0);this._logger("warn",e)},_error:function(){var e=Array.prot otype.slice.call(arguments,0);this._logger("error",e)},_logf:function(){return t his._logPrefix.concat(this.is).concat(Array.prototype.slice.call(arguments,0))}} ,Polymer.Base._logPrefix=function(){var e=window.chrome&&!/edge/i.test(navigator .userAgent)||/firefox/i.test(navigator.userAgent);return e?["%c[%s::%s]:","font- weight: bold; background-color:#EEEE00;"]:["[%s::%s]:"]}(),Polymer.Base.chainObj ect=function(e,t){return e&&t&&e!==t&&(Object.__proto__||(e=Polymer.Base.extend( Object.create(t),e)),e.__proto__=t),e},Polymer.Base=Polymer.Base.chainObject(Pol ymer.Base,HTMLElement.prototype),window.CustomElements?Polymer.instanceof=Custom Elements.instanceof:Polymer.instanceof=function(e,t){return e instanceof t},Poly mer.isInstance=function(e){return Boolean(e&&e.__isPolymerInstance__)},Polymer.t elemetry.instanceCount=0}(),function(){function e(){if(s)for(var e,t=document._c urrentScript||document.currentScript,r=t&&t.ownerDocument||document,i=r.querySel ectorAll("dom-module"),o=i.length-1;o>=0&&(e=i[o]);o--){if(e.__upgraded__)return ;CustomElements.upgrade(e)}}var t={},r={},i=function(e){return t[e]||r[e.toLower Case()]},o=function(){return document.createElement("dom-module")};o.prototype=O bject.create(HTMLElement.prototype),Polymer.Base.extend(o.prototype,{constructor :o,createdCallback:function(){this.register()},register:function(e){e=e||this.id ||this.getAttribute("name")||this.getAttribute("is"),e&&(this.id=e,t[e]=this,r[e .toLowerCase()]=this)},import:function(t,r){if(t){var o=i(t);return o||(e(),o=i( t)),o&&r&&(o=o.querySelector(r)),o}}});var s=window.CustomElements&&!CustomEleme nts.useNative;document.registerElement("dom-module",o)}(),Polymer.Base._addFeatu re({_prepIs:function(){if(!this.is){var e=(document._currentScript||document.cur rentScript).parentNode;if("dom-module"===e.localName){var t=e.id||e.getAttribute ("name")||e.getAttribute("is");this.is=t}}this.is&&(this.is=this.is.toLowerCase( ))}}),Polymer.Base._addFeature({behaviors:[],_desugarBehaviors:function(){this.b ehaviors.length&&(this.behaviors=this._desugarSomeBehaviors(this.behaviors))},_d esugarSomeBehaviors:function(e){var t=[];e=this._flattenBehaviorsList(e);for(var r=e.length-1;r>=0;r--){var i=e[r];t.indexOf(i)===-1&&(this._mixinBehavior(i),t. unshift(i))}return t},_flattenBehaviorsList:function(e){for(var t=[],r=0;r<e.len gth;r++){var i=e[r];i instanceof Array?t=t.concat(this._flattenBehaviorsList(i)) :i?t.push(i):this._warn(this._logf("_flattenBehaviorsList","behavior is null, ch eck for missing or 404 import"))}return t},_mixinBehavior:function(e){for(var t, r=Object.getOwnPropertyNames(e),i=0;i<r.length&&(t=r[i]);i++)Polymer.Base._behav iorProperties[t]||this.hasOwnProperty(t)||this.copyOwnProperty(t,e,this)},_prepB ehaviors:function(){this._prepFlattenedBehaviors(this.behaviors)},_prepFlattened Behaviors:function(e){for(var t=0,r=e.length;t<r;t++)this._prepBehavior(e[t]);th is._prepBehavior(this)},_doBehavior:function(e,t){for(var r=0;r<this.behaviors.l ength;r++)this._invokeBehavior(this.behaviors[r],e,t);this._invokeBehavior(this, e,t)},_doBehaviorOnly:function(e,t){for(var r=0;r<this.behaviors.length;r++)this ._invokeBehavior(this.behaviors[r],e,t)},_invokeBehavior:function(e,t,r){var i=e [t];i&&i.apply(this,r||Polymer.nar)},_marshalBehaviors:function(){for(var e=0;e< this.behaviors.length;e++)this._marshalBehavior(this.behaviors[e]);this._marshal Behavior(this)}}),Polymer.Base._behaviorProperties={hostAttributes:!0,beforeRegi ster:!0,registered:!0,properties:!0,observers:!0,listeners:!0,created:!0,attache d:!0,detached:!0,attributeChanged:!0,ready:!0},Polymer.Base._addFeature({_getExt endedPrototype:function(e){return this._getExtendedNativePrototype(e)},_nativePr ototypes:{},_getExtendedNativePrototype:function(e){var t=this._nativePrototypes [e];if(!t){var r=this.getNativePrototype(e);t=this.extend(Object.create(r),Polym er.Base),this._nativePrototypes[e]=t}return t},getNativePrototype:function(e){re turn Object.getPrototypeOf(document.createElement(e))}}),Polymer.Base._addFeatur e({_prepConstructor:function(){this._factoryArgs=this.extends?[this.extends,this .is]:[this.is];var e=function(){return this._factory(arguments)};this.hasOwnProp erty("extends")&&(e.extends=this.extends),Object.defineProperty(this,"constructo r",{value:e,writable:!0,configurable:!0}),e.prototype=this},_factory:function(e) {var t=document.createElement.apply(document,this._factoryArgs);return this.fact oryImpl&&this.factoryImpl.apply(t,e),t}}),Polymer.nob=Object.create(null),Polyme r.Base._addFeature({properties:{},getPropertyInfo:function(e){var t=this._getPro pertyInfo(e,this.properties);if(!t)for(var r=0;r<this.behaviors.length;r++)if(t= this._getPropertyInfo(e,this.behaviors[r].properties))return t;return t||Polymer .nob},_getPropertyInfo:function(e,t){var r=t&&t[e];return"function"==typeof r&&( r=t[e]={type:r}),r&&(r.defined=!0),r},_prepPropertyInfo:function(){this._propert yInfo={};for(var e=0;e<this.behaviors.length;e++)this._addPropertyInfo(this._pro pertyInfo,this.behaviors[e].properties);this._addPropertyInfo(this._propertyInfo ,this.properties),this._addPropertyInfo(this._propertyInfo,this._propertyEffects )},_addPropertyInfo:function(e,t){if(t){var r,i;for(var o in t)r=e[o],i=t[o],("_ "!==o[0]||i.readOnly)&&(e[o]?(r.type||(r.type=i.type),r.readOnly||(r.readOnly=i. readOnly)):e[o]={type:"function"==typeof i?i:i.type,readOnly:i.readOnly,attribut e:Polymer.CaseMap.camelToDashCase(o)})}}}),Polymer.CaseMap={_caseMap:{},_rx:{das hToCamel:/-[a-z]/g,camelToDash:/([A-Z])/g},dashToCamelCase:function(e){return th is._caseMap[e]||(this._caseMap[e]=e.indexOf("-")<0?e:e.replace(this._rx.dashToCa mel,function(e){return e[1].toUpperCase()}))},camelToDashCase:function(e){return this._caseMap[e]||(this._caseMap[e]=e.replace(this._rx.camelToDash,"-$1").toLow erCase())}},Polymer.Base._addFeature({_addHostAttributes:function(e){this._aggre gatedAttributes||(this._aggregatedAttributes={}),e&&this.mixin(this._aggregatedA ttributes,e)},_marshalHostAttributes:function(){this._aggregatedAttributes&&this ._applyAttributes(this,this._aggregatedAttributes)},_applyAttributes:function(e, t){for(var r in t)if(!this.hasAttribute(r)&&"class"!==r){var i=t[r];this.seriali zeValueToAttribute(i,r,this)}},_marshalAttributes:function(){this._takeAttribute sToModel(this)},_takeAttributesToModel:function(e){if(this.hasAttributes())for(v ar t in this._propertyInfo){var r=this._propertyInfo[t];this.hasAttribute(r.attr ibute)&&this._setAttributeToProperty(e,r.attribute,t,r)}},_setAttributeToPropert y:function(e,t,r,i){if(!this._serializing&&(r=r||Polymer.CaseMap.dashToCamelCase (t),i=i||this._propertyInfo&&this._propertyInfo[r],i&&!i.readOnly)){var o=this.g etAttribute(t);e[r]=this.deserialize(o,i.type)}},_serializing:!1,reflectProperty ToAttribute:function(e,t,r){this._serializing=!0,r=void 0===r?this[e]:r,this.ser ializeValueToAttribute(r,t||Polymer.CaseMap.camelToDashCase(e)),this._serializin g=!1},serializeValueToAttribute:function(e,t,r){var i=this.serialize(e);r=r||thi s,void 0===i?r.removeAttribute(t):r.setAttribute(t,i)},deserialize:function(e,t) {switch(t){case Number:e=Number(e);break;case Boolean:e=null!=e;break;case Objec t:try{e=JSON.parse(e)}catch(e){}break;case Array:try{e=JSON.parse(e)}catch(t){e= null,console.warn("Polymer::Attributes: couldn`t decode Array as JSON")}break;ca se Date:e=new Date(e);break;case String:}return e},serialize:function(e){switch( typeof e){case"boolean":return e?"":void 0;case"object":if(e instanceof Date)ret urn e.toString();if(e)try{return JSON.stringify(e)}catch(e){return""}default:ret urn null!=e?e:void 0}}}),Polymer.version="1.7.0",Polymer.Base._addFeature({_regi sterFeatures:function(){this._prepIs(),this._prepBehaviors(),this._prepConstruct or(),this._prepPropertyInfo()},_prepBehavior:function(e){this._addHostAttributes (e.hostAttributes)},_marshalBehavior:function(e){},_initFeatures:function(){this ._marshalHostAttributes(),this._marshalBehaviors()}})</script> <script>Polymer.B ase._addFeature({_prepTemplate:function(){void 0===this._template&&(this._templa te=Polymer.DomModule.import(this.is,"template")),this._template&&this._template. hasAttribute("is")&&this._warn(this._logf("_prepTemplate","top-level Polymer tem plate must not be a type-extension, found",this._template,"Move inside simple <t emplate>.")),this._template&&!this._template.content&&window.HTMLTemplateElement &&HTMLTemplateElement.decorate&&HTMLTemplateElement.decorate(this._template)},_s tampTemplate:function(){this._template&&(this.root=this.instanceTemplate(this._t emplate))},instanceTemplate:function(e){var t=document.importNode(e._content||e. content,!0);return t}}),function(){var e=Polymer.Base.attachedCallback;Polymer.B ase._addFeature({_hostStack:[],ready:function(){},_registerHost:function(e){this .dataHost=e=e||Polymer.Base._hostStack[Polymer.Base._hostStack.length-1],e&&e._c lients&&e._clients.push(this),this._clients=null,this._clientsReadied=!1},_begin Hosting:function(){Polymer.Base._hostStack.push(this),this._clients||(this._clie nts=[])},_endHosting:function(){Polymer.Base._hostStack.pop()},_tryReady:functio n(){this._readied=!1,this._canReady()&&this._ready()},_canReady:function(){retur n!this.dataHost||this.dataHost._clientsReadied},_ready:function(){this._beforeCl ientsReady(),this._template&&(this._setupRoot(),this._readyClients()),this._clie ntsReadied=!0,this._clients=null,this._afterClientsReady(),this._readySelf()},_r eadyClients:function(){this._beginDistribute();var e=this._clients;if(e)for(var t,o=0,i=e.length;o<i&&(t=e[o]);o++)t._ready();this._finishDistribute()},_readySe lf:function(){this._doBehavior("ready"),this._readied=!0,this._attachedPending&& (this._attachedPending=!1,this.attachedCallback())},_beforeClientsReady:function (){},_afterClientsReady:function(){},_beforeAttached:function(){},attachedCallba ck:function(){this._readied?(this._beforeAttached(),e.call(this)):this._attached Pending=!0}})}(),Polymer.ArraySplice=function(){function e(e,t,o){return{index:e ,removed:t,addedCount:o}}function t(){}var o=0,i=1,n=2,s=3;return t.prototype={c alcEditDistances:function(e,t,o,i,n,s){for(var r=s-n+1,d=o-t+1,a=new Array(r),l= 0;l<r;l++)a[l]=new Array(d),a[l][0]=l;for(var h=0;h<d;h++)a[0][h]=h;for(l=1;l<r; l++)for(h=1;h<d;h++)if(this.equals(e[t+h-1],i[n+l-1]))a[l][h]=a[l-1][h-1];else{v ar u=a[l-1][h]+1,c=a[l][h-1]+1;a[l][h]=u<c?u:c}return a},spliceOperationsFromEdi tDistances:function(e){for(var t=e.length-1,r=e[0].length-1,d=e[t][r],a=[];t>0|| r>0;)if(0!=t)if(0!=r){var l,h=e[t-1][r-1],u=e[t-1][r],c=e[t][r-1];l=u<c?u<h?u:h: c<h?c:h,l==h?(h==d?a.push(o):(a.push(i),d=h),t--,r--):l==u?(a.push(s),t--,d=u):( a.push(n),r--,d=c)}else a.push(s),t--;else a.push(n),r--;return a.reverse(),a},c alcSplices:function(t,r,d,a,l,h){var u=0,c=0,_=Math.min(d-r,h-l);if(0==r&&0==l&& (u=this.sharedPrefix(t,a,_)),d==t.length&&h==a.length&&(c=this.sharedSuffix(t,a, _-u)),r+=u,l+=u,d-=c,h-=c,d-r==0&&h-l==0)return[];if(r==d){for(var f=e(r,[],0);l <h;)f.removed.push(a[l++]);return[f]}if(l==h)return[e(r,[],d-r)];var m=this.spli ceOperationsFromEditDistances(this.calcEditDistances(t,r,d,a,l,h));f=void 0;for( var p=[],v=r,g=l,b=0;b<m.length;b++)switch(m[b]){case o:f&&(p.push(f),f=void 0), v++,g++;break;case i:f||(f=e(v,[],0)),f.addedCount++,v++,f.removed.push(a[g]),g+ +;break;case n:f||(f=e(v,[],0)),f.addedCount++,v++;break;case s:f||(f=e(v,[],0)) ,f.removed.push(a[g]),g++}return f&&p.push(f),p},sharedPrefix:function(e,t,o){fo r(var i=0;i<o;i++)if(!this.equals(e[i],t[i]))return i;return o},sharedSuffix:fun ction(e,t,o){for(var i=e.length,n=t.length,s=0;s<o&&this.equals(e[--i],t[--n]);) s++;return s},calculateSplices:function(e,t){return this.calcSplices(e,0,e.lengt h,t,0,t.length)},equals:function(e,t){return e===t}},new t}(),Polymer.domInnerHT ML=function(){function e(e){switch(e){case"&":return"&amp;";case"<":return"&lt;" ;case">":return"&gt;";case'"':return"&quot;";case" ":return"&nbsp;"}}function t( t){return t.replace(r,e)}function o(t){return t.replace(d,e)}function i(e){for(v ar t={},o=0;o<e.length;o++)t[e[o]]=!0;return t}function n(e,i,n){switch(e.nodeTy pe){case Node.ELEMENT_NODE:for(var r,d=e.localName,h="<"+d,u=e.attributes,c=0;r= u[c];c++)h+=" "+r.name+'="'+t(r.value)+'"';return h+=">",a[d]?h:h+s(e,n)+"</"+d+ ">";case Node.TEXT_NODE:var _=e.data;return i&&l[i.localName]?_:o(_);case Node.C OMMENT_NODE:return"\x3c!--"+e.data+"--\x3e";default:throw console.error(e),new E rror("not implemented")}}function s(e,t){e instanceof HTMLTemplateElement&&(e=e. content);for(var o,i="",s=Polymer.dom(e).childNodes,r=0,d=s.length;r<d&&(o=s[r]) ;r++)i+=n(o,e,t);return i}var r=/[&\u00A0"]/g,d=/[&\u00A0<>]/g,a=i(["area","base ","br","col","command","embed","hr","img","input","keygen","link","meta","param" ,"source","track","wbr"]),l=i(["style","script","xmp","iframe","noembed","nofram es","plaintext","noscript"]);return{getInnerHTML:s}}(),function(){"use strict";v ar e=Element.prototype.insertBefore,t=Element.prototype.appendChild,o=Element.pr ototype.removeChild;Polymer.TreeApi={arrayCopyChildNodes:function(e){for(var t=[ ],o=0,i=e.firstChild;i;i=i.nextSibling)t[o++]=i;return t},arrayCopyChildren:func tion(e){for(var t=[],o=0,i=e.firstElementChild;i;i=i.nextElementSibling)t[o++]=i ;return t},arrayCopy:function(e){for(var t=e.length,o=new Array(t),i=0;i<t;i++)o [i]=e[i];return o}},Polymer.TreeApi.Logical={hasParentNode:function(e){return Bo olean(e.__dom&&e.__dom.parentNode)},hasChildNodes:function(e){return Boolean(e._ _dom&&void 0!==e.__dom.childNodes)},getChildNodes:function(e){return this.hasChi ldNodes(e)?this._getChildNodes(e):e.childNodes},_getChildNodes:function(e){if(!e .__dom.childNodes){e.__dom.childNodes=[];for(var t=e.__dom.firstChild;t;t=t.__do m.nextSibling)e.__dom.childNodes.push(t)}return e.__dom.childNodes},getParentNod e:function(e){return e.__dom&&void 0!==e.__dom.parentNode?e.__dom.parentNode:e.p arentNode},getFirstChild:function(e){return e.__dom&&void 0!==e.__dom.firstChild ?e.__dom.firstChild:e.firstChild},getLastChild:function(e){return e.__dom&&void 0!==e.__dom.lastChild?e.__dom.lastChild:e.lastChild},getNextSibling:function(e){ return e.__dom&&void 0!==e.__dom.nextSibling?e.__dom.nextSibling:e.nextSibling}, getPreviousSibling:function(e){return e.__dom&&void 0!==e.__dom.previousSibling? e.__dom.previousSibling:e.previousSibling},getFirstElementChild:function(e){retu rn e.__dom&&void 0!==e.__dom.firstChild?this._getFirstElementChild(e):e.firstEle mentChild},_getFirstElementChild:function(e){for(var t=e.__dom.firstChild;t&&t.n odeType!==Node.ELEMENT_NODE;)t=t.__dom.nextSibling;return t},getLastElementChild :function(e){return e.__dom&&void 0!==e.__dom.lastChild?this._getLastElementChil d(e):e.lastElementChild},_getLastElementChild:function(e){for(var t=e.__dom.last Child;t&&t.nodeType!==Node.ELEMENT_NODE;)t=t.__dom.previousSibling;return t},get NextElementSibling:function(e){return e.__dom&&void 0!==e.__dom.nextSibling?this ._getNextElementSibling(e):e.nextElementSibling},_getNextElementSibling:function (e){for(var t=e.__dom.nextSibling;t&&t.nodeType!==Node.ELEMENT_NODE;)t=t.__dom.n extSibling;return t},getPreviousElementSibling:function(e){return e.__dom&&void 0!==e.__dom.previousSibling?this._getPreviousElementSibling(e):e.previousElement Sibling},_getPreviousElementSibling:function(e){for(var t=e.__dom.previousSiblin g;t&&t.nodeType!==Node.ELEMENT_NODE;)t=t.__dom.previousSibling;return t},saveChi ldNodes:function(e){if(!this.hasChildNodes(e)){e.__dom=e.__dom||{},e.__dom.first Child=e.firstChild,e.__dom.lastChild=e.lastChild,e.__dom.childNodes=[];for(var t =e.firstChild;t;t=t.nextSibling)t.__dom=t.__dom||{},t.__dom.parentNode=e,e.__dom .childNodes.push(t),t.__dom.nextSibling=t.nextSibling,t.__dom.previousSibling=t. previousSibling}},recordInsertBefore:function(e,t,o){if(t.__dom.childNodes=null, e.nodeType===Node.DOCUMENT_FRAGMENT_NODE)for(var i=e.firstChild;i;i=i.nextSiblin g)this._linkNode(i,t,o);else this._linkNode(e,t,o)},_linkNode:function(e,t,o){e. __dom=e.__dom||{},t.__dom=t.__dom||{},o&&(o.__dom=o.__dom||{}),e.__dom.previousS ibling=o?o.__dom.previousSibling:t.__dom.lastChild,e.__dom.previousSibling&&(e._ _dom.previousSibling.__dom.nextSibling=e),e.__dom.nextSibling=o||null,e.__dom.ne xtSibling&&(e.__dom.nextSibling.__dom.previousSibling=e),e.__dom.parentNode=t,o? o===t.__dom.firstChild&&(t.__dom.firstChild=e):(t.__dom.lastChild=e,t.__dom.firs tChild||(t.__dom.firstChild=e)),t.__dom.childNodes=null},recordRemoveChild:funct ion(e,t){e.__dom=e.__dom||{},t.__dom=t.__dom||{},e===t.__dom.firstChild&&(t.__do m.firstChild=e.__dom.nextSibling),e===t.__dom.lastChild&&(t.__dom.lastChild=e.__ dom.previousSibling);var o=e.__dom.previousSibling,i=e.__dom.nextSibling;o&&(o._ _dom.nextSibling=i),i&&(i.__dom.previousSibling=o),e.__dom.parentNode=e.__dom.pr eviousSibling=e.__dom.nextSibling=void 0,t.__dom.childNodes=null}},Polymer.TreeA pi.Composed={getChildNodes:function(e){return Polymer.TreeApi.arrayCopyChildNode s(e)},getParentNode:function(e){return e.parentNode},clearChildNodes:function(e) {e.textContent=""},insertBefore:function(t,o,i){return e.call(t,o,i||null)},appe ndChild:function(e,o){return t.call(e,o)},removeChild:function(e,t){return o.cal l(e,t)}}}(),Polymer.DomApi=function(){"use strict";var e=Polymer.Settings,t=Poly mer.TreeApi,o=function(e){this.node=i?o.wrap(e):e},i=e.hasShadow&&!e.nativeShado w;o.wrap=window.wrap?window.wrap:function(e){return e},o.prototype={flush:functi on(){Polymer.dom.flush()},deepContains:function(e){if(this.node.contains(e))retu rn!0;for(var t=e,o=e.ownerDocument;t&&t!==o&&t!==this.node;)t=Polymer.dom(t).par entNode||t.host;return t===this.node},queryDistributedElements:function(e){for(v ar t,i=this.getEffectiveChildNodes(),n=[],s=0,r=i.length;s<r&&(t=i[s]);s++)t.nod eType===Node.ELEMENT_NODE&&o.matchesSelector.call(t,e)&&n.push(t);return n},getE ffectiveChildNodes:function(){for(var e,t=[],o=this.childNodes,i=0,r=o.length;i< r&&(e=o[i]);i++)if(e.localName===n)for(var d=s(e).getDistributedNodes(),a=0;a<d. length;a++)t.push(d[a]);else t.push(e);return t},observeNodes:function(e){if(e)r eturn this.observer||(this.observer=this.node.localName===n?new o.DistributedNod esObserver(this):new o.EffectiveNodesObserver(this)),this.observer.addListener(e )},unobserveNodes:function(e){this.observer&&this.observer.removeListener(e)},no tifyObserver:function(){this.observer&&this.observer.notify()},_query:function(e ,o,i){o=o||this.node;var n=[];return this._queryElements(t.Logical.getChildNodes (o),e,i,n),n},_queryElements:function(e,t,o,i){for(var n,s=0,r=e.length;s<r&&(n= e[s]);s++)if(n.nodeType===Node.ELEMENT_NODE&&this._queryElement(n,t,o,i))return! 0},_queryElement:function(e,o,i,n){var s=o(e);return s&&n.push(e),i&&i(s)?s:void this._queryElements(t.Logical.getChildNodes(e),o,i,n)}};var n=o.CONTENT="conten t",s=o.factory=function(e){return e=e||document,e.__domApi||(e.__domApi=new o.ct or(e)),e.__domApi};o.hasApi=function(e){return Boolean(e.__domApi)},o.ctor=o,Pol ymer.dom=function(e,t){return e instanceof Event?Polymer.EventApi.factory(e):o.f actory(e,t)};var r=Element.prototype;return o.matchesSelector=r.matches||r.match esSelector||r.mozMatchesSelector||r.msMatchesSelector||r.oMatchesSelector||r.web kitMatchesSelector,o}(),function(){"use strict";var e=Polymer.Settings,t=Polymer .DomApi,o=t.factory,i=Polymer.TreeApi,n=Polymer.domInnerHTML.getInnerHTML,s=t.CO NTENT;if(!e.useShadow){var r=Element.prototype.cloneNode,d=Document.prototype.im portNode;Polymer.Base.extend(t.prototype,{_lazyDistribute:function(e){e.shadyRoo t&&e.shadyRoot._distributionClean&&(e.shadyRoot._distributionClean=!1,Polymer.do m.addDebouncer(e.debounce("_distribute",e._distributeContent)))},appendChild:fun ction(e){return this.insertBefore(e)},insertBefore:function(e,n){if(n&&i.Logical .getParentNode(n)!==this.node)throw Error("The ref_node to be inserted before is not a child of this node");if(e.nodeType!==Node.DOCUMENT_FRAGMENT_NODE){var r=i .Logical.getParentNode(e);r?(t.hasApi(r)&&o(r).notifyObserver(),this._removeNode (e)):this._removeOwnerShadyRoot(e)}if(!this._addNode(e,n)){n&&(n=n.localName===s ?this._firstComposedNode(n):n);var d=this.node._isShadyRoot?this.node.host:this. node;n?i.Composed.insertBefore(d,e,n):i.Composed.appendChild(d,e)}return this.no tifyObserver(),e},_addNode:function(e,t){var o=this.getOwnerRoot();if(o){var n=t his._maybeAddInsertionPoint(e,this.node);o._invalidInsertionPoints||(o._invalidI nsertionPoints=n),this._addNodeToHost(o.host,e)}i.Logical.hasChildNodes(this.nod e)&&i.Logical.recordInsertBefore(e,this.node,t);var s=this._maybeDistribute(e)|| this.node.shadyRoot;if(s)if(e.nodeType===Node.DOCUMENT_FRAGMENT_NODE)for(;e.firs tChild;)i.Composed.removeChild(e,e.firstChild);else{var r=i.Composed.getParentNo de(e);r&&i.Composed.removeChild(r,e)}return s},removeChild:function(e){if(i.Logi cal.getParentNode(e)!==this.node)throw Error("The node to be removed is not a ch ild of this node: "+e);if(!this._removeNode(e)){var t=this.node._isShadyRoot?thi s.node.host:this.node,o=i.Composed.getParentNode(e);t===o&&i.Composed.removeChil d(t,e)}return this.notifyObserver(),e},_removeNode:function(e){var t,n=i.Logical .hasParentNode(e)&&i.Logical.getParentNode(e),s=this._ownerShadyRootForNode(e);r eturn n&&(t=o(e)._maybeDistributeParent(),i.Logical.recordRemoveChild(e,n),s&&th is._removeDistributedChildren(s,e)&&(s._invalidInsertionPoints=!0,this._lazyDist ribute(s.host))),this._removeOwnerShadyRoot(e),s&&this._removeNodeFromHost(s.hos t,e),t},replaceChild:function(e,t){return this.insertBefore(e,t),this.removeChil d(t),e},_hasCachedOwnerRoot:function(e){return Boolean(void 0!==e._ownerShadyRoo t)},getOwnerRoot:function(){return this._ownerShadyRootForNode(this.node)},_owne rShadyRootForNode:function(e){if(e){var t=e._ownerShadyRoot;if(void 0===t){if(e. _isShadyRoot)t=e;else{var o=i.Logical.getParentNode(e);t=o?o._isShadyRoot?o:this ._ownerShadyRootForNode(o):null}(t||document.documentElement.contains(e))&&(e._o wnerShadyRoot=t)}return t}},_maybeDistribute:function(e){var t=e.nodeType===Node .DOCUMENT_FRAGMENT_NODE&&!e.__noContent&&o(e).querySelector(s),n=t&&i.Logical.ge tParentNode(t).nodeType!==Node.DOCUMENT_FRAGMENT_NODE,r=t||e.localName===s;if(r) {var d=this.getOwnerRoot();d&&this._lazyDistribute(d.host)}var a=this._nodeNeeds Distribution(this.node);return a&&this._lazyDistribute(this.node),a||r&&!n},_may beAddInsertionPoint:function(e,t){var n;if(e.nodeType!==Node.DOCUMENT_FRAGMENT_N ODE||e.__noContent)e.localName===s&&(i.Logical.saveChildNodes(t),i.Logical.saveC hildNodes(e),n=!0);else for(var r,d,a,l=o(e).querySelectorAll(s),h=0;h<l.length& &(r=l[h]);h++)d=i.Logical.getParentNode(r),d===e&&(d=t),a=this._maybeAddInsertio nPoint(r,d),n=n||a;return n},_updateInsertionPoints:function(e){for(var t,n=e.sh adyRoot._insertionPoints=o(e.shadyRoot).querySelectorAll(s),r=0;r<n.length;r++)t =n[r],i.Logical.saveChildNodes(t),i.Logical.saveChildNodes(i.Logical.getParentNo de(t))},_nodeNeedsDistribution:function(e){return e&&e.shadyRoot&&t.hasInsertion Point(e.shadyRoot)},_addNodeToHost:function(e,t){e._elementAdd&&e._elementAdd(t) },_removeNodeFromHost:function(e,t){e._elementRemove&&e._elementRemove(t)},_remo veDistributedChildren:function(e,t){for(var n,s=e._insertionPoints,r=0;r<s.lengt h;r++){var d=s[r];if(this._contains(t,d))for(var a=o(d).getDistributedNodes(),l= 0;l<a.length;l++){n=!0;var h=a[l],u=i.Composed.getParentNode(h);u&&i.Composed.re moveChild(u,h)}}return n},_contains:function(e,t){for(;t;){if(t==e)return!0;t=i. Logical.getParentNode(t)}},_removeOwnerShadyRoot:function(e){if(this._hasCachedO wnerRoot(e))for(var t,o=i.Logical.getChildNodes(e),n=0,s=o.length;n<s&&(t=o[n]); n++)this._removeOwnerShadyRoot(t);e._ownerShadyRoot=void 0},_firstComposedNode:f unction(e){for(var t,i,n=o(e).getDistributedNodes(),s=0,r=n.length;s<r&&(t=n[s]) ;s++)if(i=o(t).getDestinationInsertionPoints(),i[i.length-1]===e)return t},query Selector:function(e){var o=this._query(function(o){return t.matchesSelector.call (o,e)},this.node,function(e){return Boolean(e)})[0];return o||null},querySelecto rAll:function(e){return this._query(function(o){return t.matchesSelector.call(o, e)},this.node)},getDestinationInsertionPoints:function(){return this.node._desti nationInsertionPoints||[]},getDistributedNodes:function(){return this.node._dist ributedNodes||[]},_clear:function(){for(;this.childNodes.length;)this.removeChil d(this.childNodes[0])},setAttribute:function(e,t){this.node.setAttribute(e,t),th is._maybeDistributeParent()},removeAttribute:function(e){this.node.removeAttribu te(e),this._maybeDistributeParent()},_maybeDistributeParent:function(){if(this._ nodeNeedsDistribution(this.parentNode))return this._lazyDistribute(this.parentNo de),!0},cloneNode:function(e){var t=r.call(this.node,!1);if(e)for(var i,n=this.c hildNodes,s=o(t),d=0;d<n.length;d++)i=o(n[d]).cloneNode(!0),s.appendChild(i);ret urn t},importNode:function(e,t){var n=this.node instanceof Document?this.node:th is.node.ownerDocument,s=d.call(n,e,!1);if(t)for(var r,a=i.Logical.getChildNodes( e),l=o(s),h=0;h<a.length;h++)r=o(n).importNode(a[h],!0),l.appendChild(r);return s},_getComposedInnerHTML:function(){return n(this.node,!0)}}),Object.definePrope rties(t.prototype,{activeElement:{get:function(){var e=document.activeElement;if (!e)return null;var t=!!this.node._isShadyRoot;if(this.node!==document){if(!t)re turn null;if(this.node.host===e||!this.node.host.contains(e))return null}for(var i=o(e).getOwnerRoot();i&&i!==this.node;)e=i.host,i=o(e).getOwnerRoot();return t his.node===document?i?null:e:i===this.node?e:null},configurable:!0},childNodes:{ get:function(){var e=i.Logical.getChildNodes(this.node);return Array.isArray(e)? e:i.arrayCopyChildNodes(this.node)},configurable:!0},children:{get:function(){re turn i.Logical.hasChildNodes(this.node)?Array.prototype.filter.call(this.childNo des,function(e){return e.nodeType===Node.ELEMENT_NODE}):i.arrayCopyChildren(this .node)},configurable:!0},parentNode:{get:function(){return i.Logical.getParentNo de(this.node)},configurable:!0},firstChild:{get:function(){return i.Logical.getF irstChild(this.node)},configurable:!0},lastChild:{get:function(){return i.Logica l.getLastChild(this.node)},configurable:!0},nextSibling:{get:function(){return i .Logical.getNextSibling(this.node)},configurable:!0},previousSibling:{get:functi on(){return i.Logical.getPreviousSibling(this.node)},configurable:!0},firstEleme ntChild:{get:function(){return i.Logical.getFirstElementChild(this.node)},config urable:!0},lastElementChild:{get:function(){return i.Logical.getLastElementChild (this.node)},configurable:!0},nextElementSibling:{get:function(){return i.Logica l.getNextElementSibling(this.node)},configurable:!0},previousElementSibling:{get :function(){return i.Logical.getPreviousElementSibling(this.node)},configurable: !0},textContent:{get:function(){var e=this.node.nodeType;if(e===Node.TEXT_NODE|| e===Node.COMMENT_NODE)return this.node.textContent;for(var t,o=[],i=0,n=this.chi ldNodes;t=n[i];i++)t.nodeType!==Node.COMMENT_NODE&&o.push(t.textContent);return o.join("")},set:function(e){var t=this.node.nodeType;t===Node.TEXT_NODE||t===Nod e.COMMENT_NODE?this.node.textContent=e:(this._clear(),e&&this.appendChild(docume nt.createTextNode(e)))},configurable:!0},innerHTML:{get:function(){var e=this.no de.nodeType;return e===Node.TEXT_NODE||e===Node.COMMENT_NODE?null:n(this.node)}, set:function(e){var t=this.node.nodeType;if(t!==Node.TEXT_NODE||t!==Node.COMMENT _NODE){this._clear();var o=document.createElement("div");o.innerHTML=e;for(var n =i.arrayCopyChildNodes(o),s=0;s<n.length;s++)this.appendChild(n[s])}},configurab le:!0}}),t.hasInsertionPoint=function(e){return Boolean(e&&e._insertionPoints.le ngth)}}}(),function(){"use strict";var e=Polymer.Settings,t=Polymer.TreeApi,o=Po lymer.DomApi;if(e.useShadow){Polymer.Base.extend(o.prototype,{querySelectorAll:f unction(e){return t.arrayCopy(this.node.querySelectorAll(e))},getOwnerRoot:funct ion(){for(var e=this.node;e;){if(e.nodeType===Node.DOCUMENT_FRAGMENT_NODE&&e.hos t)return e;e=e.parentNode}},importNode:function(e,t){var o=this.node instanceof Document?this.node:this.node.ownerDocument;return o.importNode(e,t)},getDestinat ionInsertionPoints:function(){var e=this.node.getDestinationInsertionPoints&&thi s.node.getDestinationInsertionPoints();return e?t.arrayCopy(e):[]},getDistribute dNodes:function(){var e=this.node.getDistributedNodes&&this.node.getDistributedN odes();return e?t.arrayCopy(e):[]}}),Object.defineProperties(o.prototype,{active Element:{get:function(){var e=o.wrap(this.node),t=e.activeElement;return e.conta ins(t)?t:null},configurable:!0},childNodes:{get:function(){return t.arrayCopyChi ldNodes(this.node)},configurable:!0},children:{get:function(){return t.arrayCopy Children(this.node)},configurable:!0},textContent:{get:function(){return this.no de.textContent},set:function(e){return this.node.textContent=e},configurable:!0} ,innerHTML:{get:function(){return this.node.innerHTML},set:function(e){return th is.node.innerHTML=e},configurable:!0}});var i=function(e){for(var t=0;t<e.length ;t++)n(e[t])},n=function(e){o.prototype[e]=function(){return this.node[e].apply( this.node,arguments)}};i(["cloneNode","appendChild","insertBefore","removeChild" ,"replaceChild","setAttribute","removeAttribute","querySelector"]);var s=functio n(e){for(var t=0;t<e.length;t++)r(e[t])},r=function(e){Object.defineProperty(o.p rototype,e,{get:function(){return this.node[e]},configurable:!0})};s(["parentNod e","firstChild","lastChild","nextSibling","previousSibling","firstElementChild", "lastElementChild","nextElementSibling","previousElementSibling"])}}(),Polymer.B ase.extend(Polymer.dom,{_flushGuard:0,_FLUSH_MAX:100,_needsTakeRecords:!Polymer. Settings.useNativeCustomElements,_debouncers:[],_staticFlushList:[],_finishDebou ncer:null,flush:function(){for(this._flushGuard=0,this._prepareFlush();this._deb ouncers.length&&this._flushGuard<this._FLUSH_MAX;){for(;this._debouncers.length; )this._debouncers.shift().complete();this._finishDebouncer&&this._finishDebounce r.complete(),this._prepareFlush(),this._flushGuard++}this._flushGuard>=this._FLU SH_MAX&&console.warn("Polymer.dom.flush aborted. Flush may not be complete.")},_ prepareFlush:function(){this._needsTakeRecords&&CustomElements.takeRecords();for (var e=0;e<this._staticFlushList.length;e++)this._staticFlushList[e]()},addStati cFlush:function(e){this._staticFlushList.push(e)},removeStaticFlush:function(e){ var t=this._staticFlushList.indexOf(e);t>=0&&this._staticFlushList.splice(t,1)}, addDebouncer:function(e){this._debouncers.push(e),this._finishDebouncer=Polymer. Debounce(this._finishDebouncer,this._finishFlush)},_finishFlush:function(){Polym er.dom._debouncers=[]}}),Polymer.EventApi=function(){"use strict";var e=Polymer. DomApi.ctor,t=Polymer.Settings;e.Event=function(e){this.event=e},t.useShadow?e.E vent.prototype={get rootTarget(){return this.event.path[0]},get localTarget(){re turn this.event.target},get path(){var e=this.event.path;return Array.isArray(e) ||(e=Array.prototype.slice.call(e)),e}}:e.Event.prototype={get rootTarget(){retu rn this.event.target},get localTarget(){for(var e=this.event.currentTarget,t=e&& Polymer.dom(e).getOwnerRoot(),o=this.path,i=0;i<o.length;i++)if(Polymer.dom(o[i] ).getOwnerRoot()===t)return o[i]},get path(){if(!this.event._path){for(var e=[], t=this.rootTarget;t;){e.push(t);var o=Polymer.dom(t).getDestinationInsertionPoin ts();if(o.length){for(var i=0;i<o.length-1;i++)e.push(o[i]);t=o[o.length-1]}else t=Polymer.dom(t).parentNode||t.host}e.push(window),this.event._path=e}return th is.event._path}};var o=function(t){return t.__eventApi||(t.__eventApi=new e.Even t(t)),t.__eventApi};return{factory:o}}(),function(){"use strict";var e=Polymer.D omApi.ctor,t=Polymer.Settings.useShadow;Object.defineProperty(e.prototype,"class List",{get:function(){return this._classList||(this._classList=new e.ClassList(t his)),this._classList},configurable:!0}),e.ClassList=function(e){this.domApi=e,t his.node=e.node},e.ClassList.prototype={add:function(){this.node.classList.add.a pply(this.node.classList,arguments),this._distributeParent()},remove:function(){ this.node.classList.remove.apply(this.node.classList,arguments),this._distribute Parent()},toggle:function(){this.node.classList.toggle.apply(this.node.classList ,arguments),this._distributeParent()},_distributeParent:function(){t||this.domAp i._maybeDistributeParent()},contains:function(){return this.node.classList.conta ins.apply(this.node.classList,arguments)}}}(),function(){"use strict";var e=Poly mer.DomApi.ctor,t=Polymer.Settings;if(e.EffectiveNodesObserver=function(e){this. domApi=e,this.node=this.domApi.node,this._listeners=[]},e.EffectiveNodesObserver .prototype={addListener:function(e){this._isSetup||(this._setup(),this._isSetup= !0);var t={fn:e,_nodes:[]};return this._listeners.push(t),this._scheduleNotify() ,t},removeListener:function(e){var t=this._listeners.indexOf(e);t>=0&&(this._lis teners.splice(t,1),e._nodes=[]),this._hasListeners()||(this._cleanup(),this._isS etup=!1)},_setup:function(){this._observeContentElements(this.domApi.childNodes) },_cleanup:function(){this._unobserveContentElements(this.domApi.childNodes)},_h asListeners:function(){return Boolean(this._listeners.length)},_scheduleNotify:f unction(){this._debouncer&&this._debouncer.stop(),this._debouncer=Polymer.Deboun ce(this._debouncer,this._notify),this._debouncer.context=this,Polymer.dom.addDeb ouncer(this._debouncer)},notify:function(){this._hasListeners()&&this._scheduleN otify()},_notify:function(){this._beforeCallListeners(),this._callListeners()},_ beforeCallListeners:function(){this._updateContentElements()},_updateContentElem ents:function(){this._observeContentElements(this.domApi.childNodes)},_observeCo ntentElements:function(e){for(var t,o=0;o<e.length&&(t=e[o]);o++)this._isContent (t)&&(t.__observeNodesMap=t.__observeNodesMap||new WeakMap,t.__observeNodesMap.h as(this)||t.__observeNodesMap.set(this,this._observeContent(t)))},_observeConten t:function(e){var t=this,o=Polymer.dom(e).observeNodes(function(){t._scheduleNot ify()});return o._avoidChangeCalculation=!0,o},_unobserveContentElements:functio n(e){for(var t,o,i=0;i<e.length&&(t=e[i]);i++)this._isContent(t)&&(o=t.__observe NodesMap.get(this),o&&(Polymer.dom(t).unobserveNodes(o),t.__observeNodesMap.dele te(this)))},_isContent:function(e){return"content"===e.localName},_callListeners :function(){for(var e,t=this._listeners,o=this._getEffectiveNodes(),i=0;i<t.leng th&&(e=t[i]);i++){var n=this._generateListenerInfo(e,o);(n||e._alwaysNotify)&&th is._callListener(e,n)}},_getEffectiveNodes:function(){return this.domApi.getEffe ctiveChildNodes()},_generateListenerInfo:function(e,t){if(e._avoidChangeCalculat ion)return!0;for(var o,i=e._nodes,n={target:this.node,addedNodes:[],removedNodes :[]},s=Polymer.ArraySplice.calculateSplices(t,i),r=0;r<s.length&&(o=s[r]);r++)fo r(var d,a=0;a<o.removed.length&&(d=o.removed[a]);a++)n.removedNodes.push(d);for( r=0,o;r<s.length&&(o=s[r]);r++)for(a=o.index;a<o.index+o.addedCount;a++)n.addedN odes.push(t[a]);return e._nodes=t,n.addedNodes.length||n.removedNodes.length?n:v oid 0},_callListener:function(e,t){return e.fn.call(this.node,t)},enableShadowAt tributeTracking:function(){}},t.useShadow){var o=e.EffectiveNodesObserver.protot ype._setup,i=e.EffectiveNodesObserver.prototype._cleanup;Polymer.Base.extend(e.E ffectiveNodesObserver.prototype,{_setup:function(){if(!this._observer){var e=thi s;this._mutationHandler=function(t){t&&t.length&&e._scheduleNotify()},this._obse rver=new MutationObserver(this._mutationHandler),this._boundFlush=function(){e._ flush()},Polymer.dom.addStaticFlush(this._boundFlush),this._observer.observe(thi s.node,{childList:!0})}o.call(this)},_cleanup:function(){this._observer.disconne ct(),this._observer=null,this._mutationHandler=null,Polymer.dom.removeStaticFlus h(this._boundFlush),i.call(this)},_flush:function(){this._observer&&this._mutati onHandler(this._observer.takeRecords())},enableShadowAttributeTracking:function( ){if(this._observer){this._makeContentListenersAlwaysNotify(),this._observer.dis connect(),this._observer.observe(this.node,{childList:!0,attributes:!0,subtree:! 0});var e=this.domApi.getOwnerRoot(),t=e&&e.host;t&&Polymer.dom(t).observer&&Pol ymer.dom(t).observer.enableShadowAttributeTracking()}},_makeContentListenersAlwa ysNotify:function(){for(var e,t=0;t<this._listeners.length;t++)e=this._listeners [t],e._alwaysNotify=e._isContentListener}})}}(),function(){"use strict";var e=Po lymer.DomApi.ctor,t=Polymer.Settings;e.DistributedNodesObserver=function(t){e.Ef fectiveNodesObserver.call(this,t)},e.DistributedNodesObserver.prototype=Object.c reate(e.EffectiveNodesObserver.prototype),Polymer.Base.extend(e.DistributedNodes Observer.prototype,{_setup:function(){},_cleanup:function(){},_beforeCallListene rs:function(){},_getEffectiveNodes:function(){return this.domApi.getDistributedN odes()}}),t.useShadow&&Polymer.Base.extend(e.DistributedNodesObserver.prototype, {_setup:function(){if(!this._observer){var e=this.domApi.getOwnerRoot(),t=e&&e.h ost;if(t){var o=this;this._observer=Polymer.dom(t).observeNodes(function(){o._sc heduleNotify()}),this._observer._isContentListener=!0,this._hasAttrSelect()&&Pol ymer.dom(t).observer.enableShadowAttributeTracking()}}},_hasAttrSelect:function( ){var e=this.node.getAttribute("select");return e&&e.match(/[[.]+/)},_cleanup:fu nction(){var e=this.domApi.getOwnerRoot(),t=e&&e.host;t&&Polymer.dom(t).unobserv eNodes(this._observer),this._observer=null}})}(),function(){function e(e,t){t._d istributedNodes.push(e);var o=e._destinationInsertionPoints;o?o.push(t):e._desti nationInsertionPoints=[t]}function t(e){var t=e._distributedNodes;if(t)for(var o =0;o<t.length;o++){var i=t[o]._destinationInsertionPoints;i&&i.splice(i.indexOf( e)+1,i.length)}}function o(e,t){var o=u.Logical.getParentNode(e);o&&o.shadyRoot& &h.hasInsertionPoint(o.shadyRoot)&&o.shadyRoot._distributionClean&&(o.shadyRoot. _distributionClean=!1,t.shadyRoot._dirtyRoots.push(o))}function i(e,t){var o=t._ destinationInsertionPoints;return o&&o[o.length-1]===e}function n(e){return"cont ent"==e.localName}function s(e){for(;e&&r(e);)e=e.domHost;return e}function r(e) {for(var t,o=u.Logical.getChildNodes(e),i=0;i<o.length;i++)if(t=o[i],t.localName &&"content"===t.localName)return e.domHost}function d(e){for(var t,o=0;o<e._inse rtionPoints.length;o++)t=e._insertionPoints[o],h.hasApi(t)&&Polymer.dom(t).notif yObserver()}function a(e){h.hasApi(e)&&Polymer.dom(e).notifyObserver()}function l(e){if(c&&e)for(var t=0;t<e.length;t++)CustomElements.upgrade(e[t])}var h=Polym er.DomApi,u=Polymer.TreeApi;Polymer.Base._addFeature({_prepShady:function(){this ._useContent=this._useContent||Boolean(this._template)},_setupShady:function(){t his.shadyRoot=null,this.__domApi||(this.__domApi=null),this.__dom||(this.__dom=n ull),this._ownerShadyRoot||(this._ownerShadyRoot=void 0)},_poolContent:function( ){this._useContent&&u.Logical.saveChildNodes(this)},_setupRoot:function(){this._ useContent&&(this._createLocalRoot(),this.dataHost||l(u.Logical.getChildNodes(th is)))},_createLocalRoot:function(){this.shadyRoot=this.root,this.shadyRoot._dist ributionClean=!1,this.shadyRoot._hasDistributed=!1,this.shadyRoot._isShadyRoot=! 0,this.shadyRoot._dirtyRoots=[];var e=this.shadyRoot._insertionPoints=!this._not es||this._notes._hasContent?this.shadyRoot.querySelectorAll("content"):[];u.Logi cal.saveChildNodes(this.shadyRoot);for(var t,o=0;o<e.length;o++)t=e[o],u.Logical .saveChildNodes(t),u.Logical.saveChildNodes(t.parentNode);this.shadyRoot.host=th is},get domHost(){var e=Polymer.dom(this).getOwnerRoot();return e&&e.host},distr ibuteContent:function(e){if(this.shadyRoot){this.shadyRoot._invalidInsertionPoin ts=this.shadyRoot._invalidInsertionPoints||e;var t=s(this);Polymer.dom(this)._la zyDistribute(t)}},_distributeContent:function(){this._useContent&&!this.shadyRoo t._distributionClean&&(this.shadyRoot._invalidInsertionPoints&&(Polymer.dom(this )._updateInsertionPoints(this),this.shadyRoot._invalidInsertionPoints=!1),this._ beginDistribute(),this._distributeDirtyRoots(),this._finishDistribute())},_begin Distribute:function(){this._useContent&&h.hasInsertionPoint(this.shadyRoot)&&(th is._resetDistribution(),this._distributePool(this.shadyRoot,this._collectPool()) ); 1 <!DOCTYPE html><html><head><meta charset="UTF-8"> </head><body><div hidden="" by -vulcanize=""><script>!function(){function e(){document.body.removeAttribute("un resolved")}window.WebComponents?addEventListener("WebComponentsReady",e):"intera ctive"===document.readyState||"complete"===document.readyState?e():addEventListe ner("DOMContentLoaded",e)}(),window.Polymer={Settings:function(){var e=window.Po lymer||{};if(!e.noUrlSettings)for(var t,r=location.search.slice(1).split("&"),i= 0;i<r.length&&(t=r[i]);i++)t=t.split("="),t[0]&&(e[t[0]]=t[1]||!0);return e.want Shadow="shadow"===e.dom,e.hasShadow=Boolean(Element.prototype.createShadowRoot), e.nativeShadow=e.hasShadow&&!window.ShadowDOMPolyfill,e.useShadow=e.wantShadow&& e.hasShadow,e.hasNativeImports=Boolean("import"in document.createElement("link") ),e.useNativeImports=e.hasNativeImports,e.useNativeCustomElements=!window.Custom Elements||window.CustomElements.useNative,e.useNativeShadow=e.useShadow&&e.nativ eShadow,e.usePolyfillProto=!e.useNativeCustomElements&&!Object.__proto__,e.hasNa tiveCSSProperties=!navigator.userAgent.match("AppleWebKit/601")&&window.CSS&&CSS .supports&&CSS.supports("box-shadow","0 0 0 var(--foo)"),e.useNativeCSSPropertie s=e.hasNativeCSSProperties&&e.lazyRegister&&e.useNativeCSSProperties,e}()},funct ion(){var e=window.Polymer;window.Polymer=function(e){"function"==typeof e&&(e=e .prototype),e||(e={});var r=t(e);e=r.prototype;var i={prototype:e};return e.exte nds&&(i.extends=e.extends),Polymer.telemetry._registrate(e),document.registerEle ment(e.is,i),r};var t=function(e){var t=Polymer.Base;return e.extends&&(t=Polyme r.Base._getExtendedPrototype(e.extends)),e=Polymer.Base.chainObject(e,t),e.regis terCallback(),e.constructor};if(e)for(var r in e)Polymer[r]=e[r];Polymer.Class=t }(),Polymer.telemetry={registrations:[],_regLog:function(e){console.log("["+e.is +"]: registered")},_registrate:function(e){this.registrations.push(e),Polymer.lo g&&this._regLog(e)},dumpRegistrations:function(){this.registrations.forEach(this ._regLog)}},Object.defineProperty(window,"currentImport",{enumerable:!0,configur able:!0,get:function(){return(document._currentScript||document.currentScript).o wnerDocument}}),Polymer.RenderStatus={_ready:!1,_callbacks:[],whenReady:function (e){this._ready?e():this._callbacks.push(e)},_makeReady:function(){this._ready=! 0;for(var e=0;e<this._callbacks.length;e++)this._callbacks[e]();this._callbacks= []},_catchFirstRender:function(){requestAnimationFrame(function(){Polymer.Render Status._makeReady()})},_afterNextRenderQueue:[],_waitingNextRender:!1,afterNextR ender:function(e,t,r){this._watchNextRender(),this._afterNextRenderQueue.push([e ,t,r])},hasRendered:function(){return this._ready},_watchNextRender:function(){i f(!this._waitingNextRender){this._waitingNextRender=!0;var e=function(){Polymer. RenderStatus._flushNextRender()};this._ready?requestAnimationFrame(e):this.whenR eady(e)}},_flushNextRender:function(){var e=this;setTimeout(function(){e._flushR enderCallbacks(e._afterNextRenderQueue),e._afterNextRenderQueue=[],e._waitingNex tRender=!1})},_flushRenderCallbacks:function(e){for(var t,r=0;r<e.length;r++)t=e [r],t[1].apply(t[0],t[2]||Polymer.nar)}},window.HTMLImports?HTMLImports.whenRead y(function(){Polymer.RenderStatus._catchFirstRender()}):Polymer.RenderStatus._ca tchFirstRender(),Polymer.ImportStatus=Polymer.RenderStatus,Polymer.ImportStatus. whenLoaded=Polymer.ImportStatus.whenReady,function(){"use strict";var e=Polymer. Settings;Polymer.Base={__isPolymerInstance__:!0,_addFeature:function(e){this.ext end(this,e)},registerCallback:function(){"max"===e.lazyRegister?this.beforeRegis ter&&this.beforeRegister():(this._desugarBehaviors(),this._doBehavior("beforeReg ister")),this._registerFeatures(),e.lazyRegister||this.ensureRegisterFinished()} ,createdCallback:function(){this.__hasRegisterFinished||this._ensureRegisterFini shed(this.__proto__),Polymer.telemetry.instanceCount++,this.root=this,this._doBe havior("created"),this._initFeatures()},ensureRegisterFinished:function(){this._ ensureRegisterFinished(this)},_ensureRegisterFinished:function(t){t.__hasRegiste rFinished===t.is&&t.is||("max"===e.lazyRegister&&(t._desugarBehaviors(),t._doBeh aviorOnly("beforeRegister")),t.__hasRegisterFinished=t.is,t._finishRegisterFeatu res&&t._finishRegisterFeatures(),t._doBehavior("registered"),e.usePolyfillProto& &t!==this&&t.extend(this,t))},attachedCallback:function(){var e=this;Polymer.Ren derStatus.whenReady(function(){e.isAttached=!0,e._doBehavior("attached")})},deta chedCallback:function(){var e=this;Polymer.RenderStatus.whenReady(function(){e.i sAttached=!1,e._doBehavior("detached")})},attributeChangedCallback:function(e,t, r){this._attributeChangedImpl(e),this._doBehavior("attributeChanged",[e,t,r])},_ attributeChangedImpl:function(e){this._setAttributeToProperty(this,e)},extend:fu nction(e,t){if(e&&t)for(var r,i=Object.getOwnPropertyNames(t),o=0;o<i.length&&(r =i[o]);o++)this.copyOwnProperty(r,t,e);return e||t},mixin:function(e,t){for(var r in t)e[r]=t[r];return e},copyOwnProperty:function(e,t,r){var i=Object.getOwnPr opertyDescriptor(t,e);i&&Object.defineProperty(r,e,i)},_logger:function(e,t){swi tch(1===t.length&&Array.isArray(t[0])&&(t=t[0]),e){case"log":case"warn":case"err or":console[e].apply(console,t)}},_log:function(){var e=Array.prototype.slice.ca ll(arguments,0);this._logger("log",e)},_warn:function(){var e=Array.prototype.sl ice.call(arguments,0);this._logger("warn",e)},_error:function(){var e=Array.prot otype.slice.call(arguments,0);this._logger("error",e)},_logf:function(){return t his._logPrefix.concat(this.is).concat(Array.prototype.slice.call(arguments,0))}} ,Polymer.Base._logPrefix=function(){var e=window.chrome&&!/edge/i.test(navigator .userAgent)||/firefox/i.test(navigator.userAgent);return e?["%c[%s::%s]:","font- weight: bold; background-color:#EEEE00;"]:["[%s::%s]:"]}(),Polymer.Base.chainObj ect=function(e,t){return e&&t&&e!==t&&(Object.__proto__||(e=Polymer.Base.extend( Object.create(t),e)),e.__proto__=t),e},Polymer.Base=Polymer.Base.chainObject(Pol ymer.Base,HTMLElement.prototype),window.CustomElements?Polymer.instanceof=Custom Elements.instanceof:Polymer.instanceof=function(e,t){return e instanceof t},Poly mer.isInstance=function(e){return Boolean(e&&e.__isPolymerInstance__)},Polymer.t elemetry.instanceCount=0}(),function(){function e(){if(s)for(var e,t=document._c urrentScript||document.currentScript,r=t&&t.ownerDocument||document,i=r.querySel ectorAll("dom-module"),o=i.length-1;o>=0&&(e=i[o]);o--){if(e.__upgraded__)return ;CustomElements.upgrade(e)}}var t={},r={},i=function(e){return t[e]||r[e.toLower Case()]},o=function(){return document.createElement("dom-module")};o.prototype=O bject.create(HTMLElement.prototype),Polymer.Base.extend(o.prototype,{constructor :o,createdCallback:function(){this.register()},register:function(e){e=e||this.id ||this.getAttribute("name")||this.getAttribute("is"),e&&(this.id=e,t[e]=this,r[e .toLowerCase()]=this)},import:function(t,r){if(t){var o=i(t);return o||(e(),o=i( t)),o&&r&&(o=o.querySelector(r)),o}}});var s=window.CustomElements&&!CustomEleme nts.useNative;document.registerElement("dom-module",o)}(),Polymer.Base._addFeatu re({_prepIs:function(){if(!this.is){var e=(document._currentScript||document.cur rentScript).parentNode;if("dom-module"===e.localName){var t=e.id||e.getAttribute ("name")||e.getAttribute("is");this.is=t}}this.is&&(this.is=this.is.toLowerCase( ))}}),Polymer.Base._addFeature({behaviors:[],_desugarBehaviors:function(){this.b ehaviors.length&&(this.behaviors=this._desugarSomeBehaviors(this.behaviors))},_d esugarSomeBehaviors:function(e){var t=[];e=this._flattenBehaviorsList(e);for(var r=e.length-1;r>=0;r--){var i=e[r];t.indexOf(i)===-1&&(this._mixinBehavior(i),t. unshift(i))}return t},_flattenBehaviorsList:function(e){for(var t=[],r=0;r<e.len gth;r++){var i=e[r];i instanceof Array?t=t.concat(this._flattenBehaviorsList(i)) :i?t.push(i):this._warn(this._logf("_flattenBehaviorsList","behavior is null, ch eck for missing or 404 import"))}return t},_mixinBehavior:function(e){for(var t, r=Object.getOwnPropertyNames(e),i=0;i<r.length&&(t=r[i]);i++)Polymer.Base._behav iorProperties[t]||this.hasOwnProperty(t)||this.copyOwnProperty(t,e,this)},_prepB ehaviors:function(){this._prepFlattenedBehaviors(this.behaviors)},_prepFlattened Behaviors:function(e){for(var t=0,r=e.length;t<r;t++)this._prepBehavior(e[t]);th is._prepBehavior(this)},_doBehavior:function(e,t){for(var r=0;r<this.behaviors.l ength;r++)this._invokeBehavior(this.behaviors[r],e,t);this._invokeBehavior(this, e,t)},_doBehaviorOnly:function(e,t){for(var r=0;r<this.behaviors.length;r++)this ._invokeBehavior(this.behaviors[r],e,t)},_invokeBehavior:function(e,t,r){var i=e [t];i&&i.apply(this,r||Polymer.nar)},_marshalBehaviors:function(){for(var e=0;e< this.behaviors.length;e++)this._marshalBehavior(this.behaviors[e]);this._marshal Behavior(this)}}),Polymer.Base._behaviorProperties={hostAttributes:!0,beforeRegi ster:!0,registered:!0,properties:!0,observers:!0,listeners:!0,created:!0,attache d:!0,detached:!0,attributeChanged:!0,ready:!0},Polymer.Base._addFeature({_getExt endedPrototype:function(e){return this._getExtendedNativePrototype(e)},_nativePr ototypes:{},_getExtendedNativePrototype:function(e){var t=this._nativePrototypes [e];if(!t){var r=this.getNativePrototype(e);t=this.extend(Object.create(r),Polym er.Base),this._nativePrototypes[e]=t}return t},getNativePrototype:function(e){re turn Object.getPrototypeOf(document.createElement(e))}}),Polymer.Base._addFeatur e({_prepConstructor:function(){this._factoryArgs=this.extends?[this.extends,this .is]:[this.is];var e=function(){return this._factory(arguments)};this.hasOwnProp erty("extends")&&(e.extends=this.extends),Object.defineProperty(this,"constructo r",{value:e,writable:!0,configurable:!0}),e.prototype=this},_factory:function(e) {var t=document.createElement.apply(document,this._factoryArgs);return this.fact oryImpl&&this.factoryImpl.apply(t,e),t}}),Polymer.nob=Object.create(null),Polyme r.Base._addFeature({properties:{},getPropertyInfo:function(e){var t=this._getPro pertyInfo(e,this.properties);if(!t)for(var r=0;r<this.behaviors.length;r++)if(t= this._getPropertyInfo(e,this.behaviors[r].properties))return t;return t||Polymer .nob},_getPropertyInfo:function(e,t){var r=t&&t[e];return"function"==typeof r&&( r=t[e]={type:r}),r&&(r.defined=!0),r},_prepPropertyInfo:function(){this._propert yInfo={};for(var e=0;e<this.behaviors.length;e++)this._addPropertyInfo(this._pro pertyInfo,this.behaviors[e].properties);this._addPropertyInfo(this._propertyInfo ,this.properties),this._addPropertyInfo(this._propertyInfo,this._propertyEffects )},_addPropertyInfo:function(e,t){if(t){var r,i;for(var o in t)r=e[o],i=t[o],("_ "!==o[0]||i.readOnly)&&(e[o]?(r.type||(r.type=i.type),r.readOnly||(r.readOnly=i. readOnly)):e[o]={type:"function"==typeof i?i:i.type,readOnly:i.readOnly,attribut e:Polymer.CaseMap.camelToDashCase(o)})}}}),Polymer.CaseMap={_caseMap:{},_rx:{das hToCamel:/-[a-z]/g,camelToDash:/([A-Z])/g},dashToCamelCase:function(e){return th is._caseMap[e]||(this._caseMap[e]=e.indexOf("-")<0?e:e.replace(this._rx.dashToCa mel,function(e){return e[1].toUpperCase()}))},camelToDashCase:function(e){return this._caseMap[e]||(this._caseMap[e]=e.replace(this._rx.camelToDash,"-$1").toLow erCase())}},Polymer.Base._addFeature({_addHostAttributes:function(e){this._aggre gatedAttributes||(this._aggregatedAttributes={}),e&&this.mixin(this._aggregatedA ttributes,e)},_marshalHostAttributes:function(){this._aggregatedAttributes&&this ._applyAttributes(this,this._aggregatedAttributes)},_applyAttributes:function(e, t){for(var r in t)if(!this.hasAttribute(r)&&"class"!==r){var i=t[r];this.seriali zeValueToAttribute(i,r,this)}},_marshalAttributes:function(){this._takeAttribute sToModel(this)},_takeAttributesToModel:function(e){if(this.hasAttributes())for(v ar t in this._propertyInfo){var r=this._propertyInfo[t];this.hasAttribute(r.attr ibute)&&this._setAttributeToProperty(e,r.attribute,t,r)}},_setAttributeToPropert y:function(e,t,r,i){if(!this._serializing&&(r=r||Polymer.CaseMap.dashToCamelCase (t),i=i||this._propertyInfo&&this._propertyInfo[r],i&&!i.readOnly)){var o=this.g etAttribute(t);e[r]=this.deserialize(o,i.type)}},_serializing:!1,reflectProperty ToAttribute:function(e,t,r){this._serializing=!0,r=void 0===r?this[e]:r,this.ser ializeValueToAttribute(r,t||Polymer.CaseMap.camelToDashCase(e)),this._serializin g=!1},serializeValueToAttribute:function(e,t,r){var i=this.serialize(e);r=r||thi s,void 0===i?r.removeAttribute(t):r.setAttribute(t,i)},deserialize:function(e,t) {switch(t){case Number:e=Number(e);break;case Boolean:e=null!=e;break;case Objec t:try{e=JSON.parse(e)}catch(e){}break;case Array:try{e=JSON.parse(e)}catch(t){e= null,console.warn("Polymer::Attributes: couldn`t decode Array as JSON")}break;ca se Date:e=new Date(e);break;case String:}return e},serialize:function(e){switch( typeof e){case"boolean":return e?"":void 0;case"object":if(e instanceof Date)ret urn e.toString();if(e)try{return JSON.stringify(e)}catch(e){return""}default:ret urn null!=e?e:void 0}}}),Polymer.version="1.7.0",Polymer.Base._addFeature({_regi sterFeatures:function(){this._prepIs(),this._prepBehaviors(),this._prepConstruct or(),this._prepPropertyInfo()},_prepBehavior:function(e){this._addHostAttributes (e.hostAttributes)},_marshalBehavior:function(e){},_initFeatures:function(){this ._marshalHostAttributes(),this._marshalBehaviors()}})</script> <script>Polymer.B ase._addFeature({_prepTemplate:function(){void 0===this._template&&(this._templa te=Polymer.DomModule.import(this.is,"template")),this._template&&this._template. hasAttribute("is")&&this._warn(this._logf("_prepTemplate","top-level Polymer tem plate must not be a type-extension, found",this._template,"Move inside simple <t emplate>.")),this._template&&!this._template.content&&window.HTMLTemplateElement &&HTMLTemplateElement.decorate&&HTMLTemplateElement.decorate(this._template)},_s tampTemplate:function(){this._template&&(this.root=this.instanceTemplate(this._t emplate))},instanceTemplate:function(e){var t=document.importNode(e._content||e. content,!0);return t}}),function(){var e=Polymer.Base.attachedCallback;Polymer.B ase._addFeature({_hostStack:[],ready:function(){},_registerHost:function(e){this .dataHost=e=e||Polymer.Base._hostStack[Polymer.Base._hostStack.length-1],e&&e._c lients&&e._clients.push(this),this._clients=null,this._clientsReadied=!1},_begin Hosting:function(){Polymer.Base._hostStack.push(this),this._clients||(this._clie nts=[])},_endHosting:function(){Polymer.Base._hostStack.pop()},_tryReady:functio n(){this._readied=!1,this._canReady()&&this._ready()},_canReady:function(){retur n!this.dataHost||this.dataHost._clientsReadied},_ready:function(){this._beforeCl ientsReady(),this._template&&(this._setupRoot(),this._readyClients()),this._clie ntsReadied=!0,this._clients=null,this._afterClientsReady(),this._readySelf()},_r eadyClients:function(){this._beginDistribute();var e=this._clients;if(e)for(var t,o=0,i=e.length;o<i&&(t=e[o]);o++)t._ready();this._finishDistribute()},_readySe lf:function(){this._doBehavior("ready"),this._readied=!0,this._attachedPending&& (this._attachedPending=!1,this.attachedCallback())},_beforeClientsReady:function (){},_afterClientsReady:function(){},_beforeAttached:function(){},attachedCallba ck:function(){this._readied?(this._beforeAttached(),e.call(this)):this._attached Pending=!0}})}(),Polymer.ArraySplice=function(){function e(e,t,o){return{index:e ,removed:t,addedCount:o}}function t(){}var o=0,i=1,n=2,s=3;return t.prototype={c alcEditDistances:function(e,t,o,i,n,s){for(var r=s-n+1,d=o-t+1,a=new Array(r),l= 0;l<r;l++)a[l]=new Array(d),a[l][0]=l;for(var h=0;h<d;h++)a[0][h]=h;for(l=1;l<r; l++)for(h=1;h<d;h++)if(this.equals(e[t+h-1],i[n+l-1]))a[l][h]=a[l-1][h-1];else{v ar u=a[l-1][h]+1,c=a[l][h-1]+1;a[l][h]=u<c?u:c}return a},spliceOperationsFromEdi tDistances:function(e){for(var t=e.length-1,r=e[0].length-1,d=e[t][r],a=[];t>0|| r>0;)if(0!=t)if(0!=r){var l,h=e[t-1][r-1],u=e[t-1][r],c=e[t][r-1];l=u<c?u<h?u:h: c<h?c:h,l==h?(h==d?a.push(o):(a.push(i),d=h),t--,r--):l==u?(a.push(s),t--,d=u):( a.push(n),r--,d=c)}else a.push(s),t--;else a.push(n),r--;return a.reverse(),a},c alcSplices:function(t,r,d,a,l,h){var u=0,c=0,_=Math.min(d-r,h-l);if(0==r&&0==l&& (u=this.sharedPrefix(t,a,_)),d==t.length&&h==a.length&&(c=this.sharedSuffix(t,a, _-u)),r+=u,l+=u,d-=c,h-=c,d-r==0&&h-l==0)return[];if(r==d){for(var f=e(r,[],0);l <h;)f.removed.push(a[l++]);return[f]}if(l==h)return[e(r,[],d-r)];var m=this.spli ceOperationsFromEditDistances(this.calcEditDistances(t,r,d,a,l,h));f=void 0;for( var p=[],v=r,g=l,b=0;b<m.length;b++)switch(m[b]){case o:f&&(p.push(f),f=void 0), v++,g++;break;case i:f||(f=e(v,[],0)),f.addedCount++,v++,f.removed.push(a[g]),g+ +;break;case n:f||(f=e(v,[],0)),f.addedCount++,v++;break;case s:f||(f=e(v,[],0)) ,f.removed.push(a[g]),g++}return f&&p.push(f),p},sharedPrefix:function(e,t,o){fo r(var i=0;i<o;i++)if(!this.equals(e[i],t[i]))return i;return o},sharedSuffix:fun ction(e,t,o){for(var i=e.length,n=t.length,s=0;s<o&&this.equals(e[--i],t[--n]);) s++;return s},calculateSplices:function(e,t){return this.calcSplices(e,0,e.lengt h,t,0,t.length)},equals:function(e,t){return e===t}},new t}(),Polymer.domInnerHT ML=function(){function e(e){switch(e){case"&":return"&amp;";case"<":return"&lt;" ;case">":return"&gt;";case'"':return"&quot;";case" ":return"&nbsp;"}}function t( t){return t.replace(r,e)}function o(t){return t.replace(d,e)}function i(e){for(v ar t={},o=0;o<e.length;o++)t[e[o]]=!0;return t}function n(e,i,n){switch(e.nodeTy pe){case Node.ELEMENT_NODE:for(var r,d=e.localName,h="<"+d,u=e.attributes,c=0;r= u[c];c++)h+=" "+r.name+'="'+t(r.value)+'"';return h+=">",a[d]?h:h+s(e,n)+"</"+d+ ">";case Node.TEXT_NODE:var _=e.data;return i&&l[i.localName]?_:o(_);case Node.C OMMENT_NODE:return"\x3c!--"+e.data+"--\x3e";default:throw console.error(e),new E rror("not implemented")}}function s(e,t){e instanceof HTMLTemplateElement&&(e=e. content);for(var o,i="",s=Polymer.dom(e).childNodes,r=0,d=s.length;r<d&&(o=s[r]) ;r++)i+=n(o,e,t);return i}var r=/[&\u00A0"]/g,d=/[&\u00A0<>]/g,a=i(["area","base ","br","col","command","embed","hr","img","input","keygen","link","meta","param" ,"source","track","wbr"]),l=i(["style","script","xmp","iframe","noembed","nofram es","plaintext","noscript"]);return{getInnerHTML:s}}(),function(){"use strict";v ar e=Element.prototype.insertBefore,t=Element.prototype.appendChild,o=Element.pr ototype.removeChild;Polymer.TreeApi={arrayCopyChildNodes:function(e){for(var t=[ ],o=0,i=e.firstChild;i;i=i.nextSibling)t[o++]=i;return t},arrayCopyChildren:func tion(e){for(var t=[],o=0,i=e.firstElementChild;i;i=i.nextElementSibling)t[o++]=i ;return t},arrayCopy:function(e){for(var t=e.length,o=new Array(t),i=0;i<t;i++)o [i]=e[i];return o}},Polymer.TreeApi.Logical={hasParentNode:function(e){return Bo olean(e.__dom&&e.__dom.parentNode)},hasChildNodes:function(e){return Boolean(e._ _dom&&void 0!==e.__dom.childNodes)},getChildNodes:function(e){return this.hasChi ldNodes(e)?this._getChildNodes(e):e.childNodes},_getChildNodes:function(e){if(!e .__dom.childNodes){e.__dom.childNodes=[];for(var t=e.__dom.firstChild;t;t=t.__do m.nextSibling)e.__dom.childNodes.push(t)}return e.__dom.childNodes},getParentNod e:function(e){return e.__dom&&void 0!==e.__dom.parentNode?e.__dom.parentNode:e.p arentNode},getFirstChild:function(e){return e.__dom&&void 0!==e.__dom.firstChild ?e.__dom.firstChild:e.firstChild},getLastChild:function(e){return e.__dom&&void 0!==e.__dom.lastChild?e.__dom.lastChild:e.lastChild},getNextSibling:function(e){ return e.__dom&&void 0!==e.__dom.nextSibling?e.__dom.nextSibling:e.nextSibling}, getPreviousSibling:function(e){return e.__dom&&void 0!==e.__dom.previousSibling? e.__dom.previousSibling:e.previousSibling},getFirstElementChild:function(e){retu rn e.__dom&&void 0!==e.__dom.firstChild?this._getFirstElementChild(e):e.firstEle mentChild},_getFirstElementChild:function(e){for(var t=e.__dom.firstChild;t&&t.n odeType!==Node.ELEMENT_NODE;)t=t.__dom.nextSibling;return t},getLastElementChild :function(e){return e.__dom&&void 0!==e.__dom.lastChild?this._getLastElementChil d(e):e.lastElementChild},_getLastElementChild:function(e){for(var t=e.__dom.last Child;t&&t.nodeType!==Node.ELEMENT_NODE;)t=t.__dom.previousSibling;return t},get NextElementSibling:function(e){return e.__dom&&void 0!==e.__dom.nextSibling?this ._getNextElementSibling(e):e.nextElementSibling},_getNextElementSibling:function (e){for(var t=e.__dom.nextSibling;t&&t.nodeType!==Node.ELEMENT_NODE;)t=t.__dom.n extSibling;return t},getPreviousElementSibling:function(e){return e.__dom&&void 0!==e.__dom.previousSibling?this._getPreviousElementSibling(e):e.previousElement Sibling},_getPreviousElementSibling:function(e){for(var t=e.__dom.previousSiblin g;t&&t.nodeType!==Node.ELEMENT_NODE;)t=t.__dom.previousSibling;return t},saveChi ldNodes:function(e){if(!this.hasChildNodes(e)){e.__dom=e.__dom||{},e.__dom.first Child=e.firstChild,e.__dom.lastChild=e.lastChild,e.__dom.childNodes=[];for(var t =e.firstChild;t;t=t.nextSibling)t.__dom=t.__dom||{},t.__dom.parentNode=e,e.__dom .childNodes.push(t),t.__dom.nextSibling=t.nextSibling,t.__dom.previousSibling=t. previousSibling}},recordInsertBefore:function(e,t,o){if(t.__dom.childNodes=null, e.nodeType===Node.DOCUMENT_FRAGMENT_NODE)for(var i=e.firstChild;i;i=i.nextSiblin g)this._linkNode(i,t,o);else this._linkNode(e,t,o)},_linkNode:function(e,t,o){e. __dom=e.__dom||{},t.__dom=t.__dom||{},o&&(o.__dom=o.__dom||{}),e.__dom.previousS ibling=o?o.__dom.previousSibling:t.__dom.lastChild,e.__dom.previousSibling&&(e._ _dom.previousSibling.__dom.nextSibling=e),e.__dom.nextSibling=o||null,e.__dom.ne xtSibling&&(e.__dom.nextSibling.__dom.previousSibling=e),e.__dom.parentNode=t,o? o===t.__dom.firstChild&&(t.__dom.firstChild=e):(t.__dom.lastChild=e,t.__dom.firs tChild||(t.__dom.firstChild=e)),t.__dom.childNodes=null},recordRemoveChild:funct ion(e,t){e.__dom=e.__dom||{},t.__dom=t.__dom||{},e===t.__dom.firstChild&&(t.__do m.firstChild=e.__dom.nextSibling),e===t.__dom.lastChild&&(t.__dom.lastChild=e.__ dom.previousSibling);var o=e.__dom.previousSibling,i=e.__dom.nextSibling;o&&(o._ _dom.nextSibling=i),i&&(i.__dom.previousSibling=o),e.__dom.parentNode=e.__dom.pr eviousSibling=e.__dom.nextSibling=void 0,t.__dom.childNodes=null}},Polymer.TreeA pi.Composed={getChildNodes:function(e){return Polymer.TreeApi.arrayCopyChildNode s(e)},getParentNode:function(e){return e.parentNode},clearChildNodes:function(e) {e.textContent=""},insertBefore:function(t,o,i){return e.call(t,o,i||null)},appe ndChild:function(e,o){return t.call(e,o)},removeChild:function(e,t){return o.cal l(e,t)}}}(),Polymer.DomApi=function(){"use strict";var e=Polymer.Settings,t=Poly mer.TreeApi,o=function(e){this.node=i?o.wrap(e):e},i=e.hasShadow&&!e.nativeShado w;o.wrap=window.wrap?window.wrap:function(e){return e},o.prototype={flush:functi on(){Polymer.dom.flush()},deepContains:function(e){if(this.node.contains(e))retu rn!0;for(var t=e,o=e.ownerDocument;t&&t!==o&&t!==this.node;)t=Polymer.dom(t).par entNode||t.host;return t===this.node},queryDistributedElements:function(e){for(v ar t,i=this.getEffectiveChildNodes(),n=[],s=0,r=i.length;s<r&&(t=i[s]);s++)t.nod eType===Node.ELEMENT_NODE&&o.matchesSelector.call(t,e)&&n.push(t);return n},getE ffectiveChildNodes:function(){for(var e,t=[],o=this.childNodes,i=0,r=o.length;i< r&&(e=o[i]);i++)if(e.localName===n)for(var d=s(e).getDistributedNodes(),a=0;a<d. length;a++)t.push(d[a]);else t.push(e);return t},observeNodes:function(e){if(e)r eturn this.observer||(this.observer=this.node.localName===n?new o.DistributedNod esObserver(this):new o.EffectiveNodesObserver(this)),this.observer.addListener(e )},unobserveNodes:function(e){this.observer&&this.observer.removeListener(e)},no tifyObserver:function(){this.observer&&this.observer.notify()},_query:function(e ,o,i){o=o||this.node;var n=[];return this._queryElements(t.Logical.getChildNodes (o),e,i,n),n},_queryElements:function(e,t,o,i){for(var n,s=0,r=e.length;s<r&&(n= e[s]);s++)if(n.nodeType===Node.ELEMENT_NODE&&this._queryElement(n,t,o,i))return! 0},_queryElement:function(e,o,i,n){var s=o(e);return s&&n.push(e),i&&i(s)?s:void this._queryElements(t.Logical.getChildNodes(e),o,i,n)}};var n=o.CONTENT="conten t",s=o.factory=function(e){return e=e||document,e.__domApi||(e.__domApi=new o.ct or(e)),e.__domApi};o.hasApi=function(e){return Boolean(e.__domApi)},o.ctor=o,Pol ymer.dom=function(e,t){return e instanceof Event?Polymer.EventApi.factory(e):o.f actory(e,t)};var r=Element.prototype;return o.matchesSelector=r.matches||r.match esSelector||r.mozMatchesSelector||r.msMatchesSelector||r.oMatchesSelector||r.web kitMatchesSelector,o}(),function(){"use strict";var e=Polymer.Settings,t=Polymer .DomApi,o=t.factory,i=Polymer.TreeApi,n=Polymer.domInnerHTML.getInnerHTML,s=t.CO NTENT;if(!e.useShadow){var r=Element.prototype.cloneNode,d=Document.prototype.im portNode;Polymer.Base.extend(t.prototype,{_lazyDistribute:function(e){e.shadyRoo t&&e.shadyRoot._distributionClean&&(e.shadyRoot._distributionClean=!1,Polymer.do m.addDebouncer(e.debounce("_distribute",e._distributeContent)))},appendChild:fun ction(e){return this.insertBefore(e)},insertBefore:function(e,n){if(n&&i.Logical .getParentNode(n)!==this.node)throw Error("The ref_node to be inserted before is not a child of this node");if(e.nodeType!==Node.DOCUMENT_FRAGMENT_NODE){var r=i .Logical.getParentNode(e);r?(t.hasApi(r)&&o(r).notifyObserver(),this._removeNode (e)):this._removeOwnerShadyRoot(e)}if(!this._addNode(e,n)){n&&(n=n.localName===s ?this._firstComposedNode(n):n);var d=this.node._isShadyRoot?this.node.host:this. node;n?i.Composed.insertBefore(d,e,n):i.Composed.appendChild(d,e)}return this.no tifyObserver(),e},_addNode:function(e,t){var o=this.getOwnerRoot();if(o){var n=t his._maybeAddInsertionPoint(e,this.node);o._invalidInsertionPoints||(o._invalidI nsertionPoints=n),this._addNodeToHost(o.host,e)}i.Logical.hasChildNodes(this.nod e)&&i.Logical.recordInsertBefore(e,this.node,t);var s=this._maybeDistribute(e)|| this.node.shadyRoot;if(s)if(e.nodeType===Node.DOCUMENT_FRAGMENT_NODE)for(;e.firs tChild;)i.Composed.removeChild(e,e.firstChild);else{var r=i.Composed.getParentNo de(e);r&&i.Composed.removeChild(r,e)}return s},removeChild:function(e){if(i.Logi cal.getParentNode(e)!==this.node)throw Error("The node to be removed is not a ch ild of this node: "+e);if(!this._removeNode(e)){var t=this.node._isShadyRoot?thi s.node.host:this.node,o=i.Composed.getParentNode(e);t===o&&i.Composed.removeChil d(t,e)}return this.notifyObserver(),e},_removeNode:function(e){var t,n=i.Logical .hasParentNode(e)&&i.Logical.getParentNode(e),s=this._ownerShadyRootForNode(e);r eturn n&&(t=o(e)._maybeDistributeParent(),i.Logical.recordRemoveChild(e,n),s&&th is._removeDistributedChildren(s,e)&&(s._invalidInsertionPoints=!0,this._lazyDist ribute(s.host))),this._removeOwnerShadyRoot(e),s&&this._removeNodeFromHost(s.hos t,e),t},replaceChild:function(e,t){return this.insertBefore(e,t),this.removeChil d(t),e},_hasCachedOwnerRoot:function(e){return Boolean(void 0!==e._ownerShadyRoo t)},getOwnerRoot:function(){return this._ownerShadyRootForNode(this.node)},_owne rShadyRootForNode:function(e){if(e){var t=e._ownerShadyRoot;if(void 0===t){if(e. _isShadyRoot)t=e;else{var o=i.Logical.getParentNode(e);t=o?o._isShadyRoot?o:this ._ownerShadyRootForNode(o):null}(t||document.documentElement.contains(e))&&(e._o wnerShadyRoot=t)}return t}},_maybeDistribute:function(e){var t=e.nodeType===Node .DOCUMENT_FRAGMENT_NODE&&!e.__noContent&&o(e).querySelector(s),n=t&&i.Logical.ge tParentNode(t).nodeType!==Node.DOCUMENT_FRAGMENT_NODE,r=t||e.localName===s;if(r) {var d=this.getOwnerRoot();d&&this._lazyDistribute(d.host)}var a=this._nodeNeeds Distribution(this.node);return a&&this._lazyDistribute(this.node),a||r&&!n},_may beAddInsertionPoint:function(e,t){var n;if(e.nodeType!==Node.DOCUMENT_FRAGMENT_N ODE||e.__noContent)e.localName===s&&(i.Logical.saveChildNodes(t),i.Logical.saveC hildNodes(e),n=!0);else for(var r,d,a,l=o(e).querySelectorAll(s),h=0;h<l.length& &(r=l[h]);h++)d=i.Logical.getParentNode(r),d===e&&(d=t),a=this._maybeAddInsertio nPoint(r,d),n=n||a;return n},_updateInsertionPoints:function(e){for(var t,n=e.sh adyRoot._insertionPoints=o(e.shadyRoot).querySelectorAll(s),r=0;r<n.length;r++)t =n[r],i.Logical.saveChildNodes(t),i.Logical.saveChildNodes(i.Logical.getParentNo de(t))},_nodeNeedsDistribution:function(e){return e&&e.shadyRoot&&t.hasInsertion Point(e.shadyRoot)},_addNodeToHost:function(e,t){e._elementAdd&&e._elementAdd(t) },_removeNodeFromHost:function(e,t){e._elementRemove&&e._elementRemove(t)},_remo veDistributedChildren:function(e,t){for(var n,s=e._insertionPoints,r=0;r<s.lengt h;r++){var d=s[r];if(this._contains(t,d))for(var a=o(d).getDistributedNodes(),l= 0;l<a.length;l++){n=!0;var h=a[l],u=i.Composed.getParentNode(h);u&&i.Composed.re moveChild(u,h)}}return n},_contains:function(e,t){for(;t;){if(t==e)return!0;t=i. Logical.getParentNode(t)}},_removeOwnerShadyRoot:function(e){if(this._hasCachedO wnerRoot(e))for(var t,o=i.Logical.getChildNodes(e),n=0,s=o.length;n<s&&(t=o[n]); n++)this._removeOwnerShadyRoot(t);e._ownerShadyRoot=void 0},_firstComposedNode:f unction(e){for(var t,i,n=o(e).getDistributedNodes(),s=0,r=n.length;s<r&&(t=n[s]) ;s++)if(i=o(t).getDestinationInsertionPoints(),i[i.length-1]===e)return t},query Selector:function(e){var o=this._query(function(o){return t.matchesSelector.call (o,e)},this.node,function(e){return Boolean(e)})[0];return o||null},querySelecto rAll:function(e){return this._query(function(o){return t.matchesSelector.call(o, e)},this.node)},getDestinationInsertionPoints:function(){return this.node._desti nationInsertionPoints||[]},getDistributedNodes:function(){return this.node._dist ributedNodes||[]},_clear:function(){for(;this.childNodes.length;)this.removeChil d(this.childNodes[0])},setAttribute:function(e,t){this.node.setAttribute(e,t),th is._maybeDistributeParent()},removeAttribute:function(e){this.node.removeAttribu te(e),this._maybeDistributeParent()},_maybeDistributeParent:function(){if(this._ nodeNeedsDistribution(this.parentNode))return this._lazyDistribute(this.parentNo de),!0},cloneNode:function(e){var t=r.call(this.node,!1);if(e)for(var i,n=this.c hildNodes,s=o(t),d=0;d<n.length;d++)i=o(n[d]).cloneNode(!0),s.appendChild(i);ret urn t},importNode:function(e,t){var n=this.node instanceof Document?this.node:th is.node.ownerDocument,s=d.call(n,e,!1);if(t)for(var r,a=i.Logical.getChildNodes( e),l=o(s),h=0;h<a.length;h++)r=o(n).importNode(a[h],!0),l.appendChild(r);return s},_getComposedInnerHTML:function(){return n(this.node,!0)}}),Object.definePrope rties(t.prototype,{activeElement:{get:function(){var e=document.activeElement;if (!e)return null;var t=!!this.node._isShadyRoot;if(this.node!==document){if(!t)re turn null;if(this.node.host===e||!this.node.host.contains(e))return null}for(var i=o(e).getOwnerRoot();i&&i!==this.node;)e=i.host,i=o(e).getOwnerRoot();return t his.node===document?i?null:e:i===this.node?e:null},configurable:!0},childNodes:{ get:function(){var e=i.Logical.getChildNodes(this.node);return Array.isArray(e)? e:i.arrayCopyChildNodes(this.node)},configurable:!0},children:{get:function(){re turn i.Logical.hasChildNodes(this.node)?Array.prototype.filter.call(this.childNo des,function(e){return e.nodeType===Node.ELEMENT_NODE}):i.arrayCopyChildren(this .node)},configurable:!0},parentNode:{get:function(){return i.Logical.getParentNo de(this.node)},configurable:!0},firstChild:{get:function(){return i.Logical.getF irstChild(this.node)},configurable:!0},lastChild:{get:function(){return i.Logica l.getLastChild(this.node)},configurable:!0},nextSibling:{get:function(){return i .Logical.getNextSibling(this.node)},configurable:!0},previousSibling:{get:functi on(){return i.Logical.getPreviousSibling(this.node)},configurable:!0},firstEleme ntChild:{get:function(){return i.Logical.getFirstElementChild(this.node)},config urable:!0},lastElementChild:{get:function(){return i.Logical.getLastElementChild (this.node)},configurable:!0},nextElementSibling:{get:function(){return i.Logica l.getNextElementSibling(this.node)},configurable:!0},previousElementSibling:{get :function(){return i.Logical.getPreviousElementSibling(this.node)},configurable: !0},textContent:{get:function(){var e=this.node.nodeType;if(e===Node.TEXT_NODE|| e===Node.COMMENT_NODE)return this.node.textContent;for(var t,o=[],i=0,n=this.chi ldNodes;t=n[i];i++)t.nodeType!==Node.COMMENT_NODE&&o.push(t.textContent);return o.join("")},set:function(e){var t=this.node.nodeType;t===Node.TEXT_NODE||t===Nod e.COMMENT_NODE?this.node.textContent=e:(this._clear(),e&&this.appendChild(docume nt.createTextNode(e)))},configurable:!0},innerHTML:{get:function(){var e=this.no de.nodeType;return e===Node.TEXT_NODE||e===Node.COMMENT_NODE?null:n(this.node)}, set:function(e){var t=this.node.nodeType;if(t!==Node.TEXT_NODE||t!==Node.COMMENT _NODE){this._clear();var o=document.createElement("div");o.innerHTML=e;for(var n =i.arrayCopyChildNodes(o),s=0;s<n.length;s++)this.appendChild(n[s])}},configurab le:!0}}),t.hasInsertionPoint=function(e){return Boolean(e&&e._insertionPoints.le ngth)}}}(),function(){"use strict";var e=Polymer.Settings,t=Polymer.TreeApi,o=Po lymer.DomApi;if(e.useShadow){Polymer.Base.extend(o.prototype,{querySelectorAll:f unction(e){return t.arrayCopy(this.node.querySelectorAll(e))},getOwnerRoot:funct ion(){for(var e=this.node;e;){if(e.nodeType===Node.DOCUMENT_FRAGMENT_NODE&&e.hos t)return e;e=e.parentNode}},importNode:function(e,t){var o=this.node instanceof Document?this.node:this.node.ownerDocument;return o.importNode(e,t)},getDestinat ionInsertionPoints:function(){var e=this.node.getDestinationInsertionPoints&&thi s.node.getDestinationInsertionPoints();return e?t.arrayCopy(e):[]},getDistribute dNodes:function(){var e=this.node.getDistributedNodes&&this.node.getDistributedN odes();return e?t.arrayCopy(e):[]}}),Object.defineProperties(o.prototype,{active Element:{get:function(){var e=o.wrap(this.node),t=e.activeElement;return e.conta ins(t)?t:null},configurable:!0},childNodes:{get:function(){return t.arrayCopyChi ldNodes(this.node)},configurable:!0},children:{get:function(){return t.arrayCopy Children(this.node)},configurable:!0},textContent:{get:function(){return this.no de.textContent},set:function(e){return this.node.textContent=e},configurable:!0} ,innerHTML:{get:function(){return this.node.innerHTML},set:function(e){return th is.node.innerHTML=e},configurable:!0}});var i=function(e){for(var t=0;t<e.length ;t++)n(e[t])},n=function(e){o.prototype[e]=function(){return this.node[e].apply( this.node,arguments)}};i(["cloneNode","appendChild","insertBefore","removeChild" ,"replaceChild","setAttribute","removeAttribute","querySelector"]);var s=functio n(e){for(var t=0;t<e.length;t++)r(e[t])},r=function(e){Object.defineProperty(o.p rototype,e,{get:function(){return this.node[e]},configurable:!0})};s(["parentNod e","firstChild","lastChild","nextSibling","previousSibling","firstElementChild", "lastElementChild","nextElementSibling","previousElementSibling"])}}(),Polymer.B ase.extend(Polymer.dom,{_flushGuard:0,_FLUSH_MAX:100,_needsTakeRecords:!Polymer. Settings.useNativeCustomElements,_debouncers:[],_staticFlushList:[],_finishDebou ncer:null,flush:function(){for(this._flushGuard=0,this._prepareFlush();this._deb ouncers.length&&this._flushGuard<this._FLUSH_MAX;){for(;this._debouncers.length; )this._debouncers.shift().complete();this._finishDebouncer&&this._finishDebounce r.complete(),this._prepareFlush(),this._flushGuard++}this._flushGuard>=this._FLU SH_MAX&&console.warn("Polymer.dom.flush aborted. Flush may not be complete.")},_ prepareFlush:function(){this._needsTakeRecords&&CustomElements.takeRecords();for (var e=0;e<this._staticFlushList.length;e++)this._staticFlushList[e]()},addStati cFlush:function(e){this._staticFlushList.push(e)},removeStaticFlush:function(e){ var t=this._staticFlushList.indexOf(e);t>=0&&this._staticFlushList.splice(t,1)}, addDebouncer:function(e){this._debouncers.push(e),this._finishDebouncer=Polymer. Debounce(this._finishDebouncer,this._finishFlush)},_finishFlush:function(){Polym er.dom._debouncers=[]}}),Polymer.EventApi=function(){"use strict";var e=Polymer. DomApi.ctor,t=Polymer.Settings;e.Event=function(e){this.event=e},t.useShadow?e.E vent.prototype={get rootTarget(){return this.event.path[0]},get localTarget(){re turn this.event.target},get path(){var e=this.event.path;return Array.isArray(e) ||(e=Array.prototype.slice.call(e)),e}}:e.Event.prototype={get rootTarget(){retu rn this.event.target},get localTarget(){for(var e=this.event.currentTarget,t=e&& Polymer.dom(e).getOwnerRoot(),o=this.path,i=0;i<o.length;i++)if(Polymer.dom(o[i] ).getOwnerRoot()===t)return o[i]},get path(){if(!this.event._path){for(var e=[], t=this.rootTarget;t;){e.push(t);var o=Polymer.dom(t).getDestinationInsertionPoin ts();if(o.length){for(var i=0;i<o.length-1;i++)e.push(o[i]);t=o[o.length-1]}else t=Polymer.dom(t).parentNode||t.host}e.push(window),this.event._path=e}return th is.event._path}};var o=function(t){return t.__eventApi||(t.__eventApi=new e.Even t(t)),t.__eventApi};return{factory:o}}(),function(){"use strict";var e=Polymer.D omApi.ctor,t=Polymer.Settings.useShadow;Object.defineProperty(e.prototype,"class List",{get:function(){return this._classList||(this._classList=new e.ClassList(t his)),this._classList},configurable:!0}),e.ClassList=function(e){this.domApi=e,t his.node=e.node},e.ClassList.prototype={add:function(){this.node.classList.add.a pply(this.node.classList,arguments),this._distributeParent()},remove:function(){ this.node.classList.remove.apply(this.node.classList,arguments),this._distribute Parent()},toggle:function(){this.node.classList.toggle.apply(this.node.classList ,arguments),this._distributeParent()},_distributeParent:function(){t||this.domAp i._maybeDistributeParent()},contains:function(){return this.node.classList.conta ins.apply(this.node.classList,arguments)}}}(),function(){"use strict";var e=Poly mer.DomApi.ctor,t=Polymer.Settings;if(e.EffectiveNodesObserver=function(e){this. domApi=e,this.node=this.domApi.node,this._listeners=[]},e.EffectiveNodesObserver .prototype={addListener:function(e){this._isSetup||(this._setup(),this._isSetup= !0);var t={fn:e,_nodes:[]};return this._listeners.push(t),this._scheduleNotify() ,t},removeListener:function(e){var t=this._listeners.indexOf(e);t>=0&&(this._lis teners.splice(t,1),e._nodes=[]),this._hasListeners()||(this._cleanup(),this._isS etup=!1)},_setup:function(){this._observeContentElements(this.domApi.childNodes) },_cleanup:function(){this._unobserveContentElements(this.domApi.childNodes)},_h asListeners:function(){return Boolean(this._listeners.length)},_scheduleNotify:f unction(){this._debouncer&&this._debouncer.stop(),this._debouncer=Polymer.Deboun ce(this._debouncer,this._notify),this._debouncer.context=this,Polymer.dom.addDeb ouncer(this._debouncer)},notify:function(){this._hasListeners()&&this._scheduleN otify()},_notify:function(){this._beforeCallListeners(),this._callListeners()},_ beforeCallListeners:function(){this._updateContentElements()},_updateContentElem ents:function(){this._observeContentElements(this.domApi.childNodes)},_observeCo ntentElements:function(e){for(var t,o=0;o<e.length&&(t=e[o]);o++)this._isContent (t)&&(t.__observeNodesMap=t.__observeNodesMap||new WeakMap,t.__observeNodesMap.h as(this)||t.__observeNodesMap.set(this,this._observeContent(t)))},_observeConten t:function(e){var t=this,o=Polymer.dom(e).observeNodes(function(){t._scheduleNot ify()});return o._avoidChangeCalculation=!0,o},_unobserveContentElements:functio n(e){for(var t,o,i=0;i<e.length&&(t=e[i]);i++)this._isContent(t)&&(o=t.__observe NodesMap.get(this),o&&(Polymer.dom(t).unobserveNodes(o),t.__observeNodesMap.dele te(this)))},_isContent:function(e){return"content"===e.localName},_callListeners :function(){for(var e,t=this._listeners,o=this._getEffectiveNodes(),i=0;i<t.leng th&&(e=t[i]);i++){var n=this._generateListenerInfo(e,o);(n||e._alwaysNotify)&&th is._callListener(e,n)}},_getEffectiveNodes:function(){return this.domApi.getEffe ctiveChildNodes()},_generateListenerInfo:function(e,t){if(e._avoidChangeCalculat ion)return!0;for(var o,i=e._nodes,n={target:this.node,addedNodes:[],removedNodes :[]},s=Polymer.ArraySplice.calculateSplices(t,i),r=0;r<s.length&&(o=s[r]);r++)fo r(var d,a=0;a<o.removed.length&&(d=o.removed[a]);a++)n.removedNodes.push(d);for( r=0,o;r<s.length&&(o=s[r]);r++)for(a=o.index;a<o.index+o.addedCount;a++)n.addedN odes.push(t[a]);return e._nodes=t,n.addedNodes.length||n.removedNodes.length?n:v oid 0},_callListener:function(e,t){return e.fn.call(this.node,t)},enableShadowAt tributeTracking:function(){}},t.useShadow){var o=e.EffectiveNodesObserver.protot ype._setup,i=e.EffectiveNodesObserver.prototype._cleanup;Polymer.Base.extend(e.E ffectiveNodesObserver.prototype,{_setup:function(){if(!this._observer){var e=thi s;this._mutationHandler=function(t){t&&t.length&&e._scheduleNotify()},this._obse rver=new MutationObserver(this._mutationHandler),this._boundFlush=function(){e._ flush()},Polymer.dom.addStaticFlush(this._boundFlush),this._observer.observe(thi s.node,{childList:!0})}o.call(this)},_cleanup:function(){this._observer.disconne ct(),this._observer=null,this._mutationHandler=null,Polymer.dom.removeStaticFlus h(this._boundFlush),i.call(this)},_flush:function(){this._observer&&this._mutati onHandler(this._observer.takeRecords())},enableShadowAttributeTracking:function( ){if(this._observer){this._makeContentListenersAlwaysNotify(),this._observer.dis connect(),this._observer.observe(this.node,{childList:!0,attributes:!0,subtree:! 0});var e=this.domApi.getOwnerRoot(),t=e&&e.host;t&&Polymer.dom(t).observer&&Pol ymer.dom(t).observer.enableShadowAttributeTracking()}},_makeContentListenersAlwa ysNotify:function(){for(var e,t=0;t<this._listeners.length;t++)e=this._listeners [t],e._alwaysNotify=e._isContentListener}})}}(),function(){"use strict";var e=Po lymer.DomApi.ctor,t=Polymer.Settings;e.DistributedNodesObserver=function(t){e.Ef fectiveNodesObserver.call(this,t)},e.DistributedNodesObserver.prototype=Object.c reate(e.EffectiveNodesObserver.prototype),Polymer.Base.extend(e.DistributedNodes Observer.prototype,{_setup:function(){},_cleanup:function(){},_beforeCallListene rs:function(){},_getEffectiveNodes:function(){return this.domApi.getDistributedN odes()}}),t.useShadow&&Polymer.Base.extend(e.DistributedNodesObserver.prototype, {_setup:function(){if(!this._observer){var e=this.domApi.getOwnerRoot(),t=e&&e.h ost;if(t){var o=this;this._observer=Polymer.dom(t).observeNodes(function(){o._sc heduleNotify()}),this._observer._isContentListener=!0,this._hasAttrSelect()&&Pol ymer.dom(t).observer.enableShadowAttributeTracking()}}},_hasAttrSelect:function( ){var e=this.node.getAttribute("select");return e&&e.match(/[[.]+/)},_cleanup:fu nction(){var e=this.domApi.getOwnerRoot(),t=e&&e.host;t&&Polymer.dom(t).unobserv eNodes(this._observer),this._observer=null}})}(),function(){function e(e,t){t._d istributedNodes.push(e);var o=e._destinationInsertionPoints;o?o.push(t):e._desti nationInsertionPoints=[t]}function t(e){var t=e._distributedNodes;if(t)for(var o =0;o<t.length;o++){var i=t[o]._destinationInsertionPoints;i&&i.splice(i.indexOf( e)+1,i.length)}}function o(e,t){var o=u.Logical.getParentNode(e);o&&o.shadyRoot& &h.hasInsertionPoint(o.shadyRoot)&&o.shadyRoot._distributionClean&&(o.shadyRoot. _distributionClean=!1,t.shadyRoot._dirtyRoots.push(o))}function i(e,t){var o=t._ destinationInsertionPoints;return o&&o[o.length-1]===e}function n(e){return"cont ent"==e.localName}function s(e){for(;e&&r(e);)e=e.domHost;return e}function r(e) {for(var t,o=u.Logical.getChildNodes(e),i=0;i<o.length;i++)if(t=o[i],t.localName &&"content"===t.localName)return e.domHost}function d(e){for(var t,o=0;o<e._inse rtionPoints.length;o++)t=e._insertionPoints[o],h.hasApi(t)&&Polymer.dom(t).notif yObserver()}function a(e){h.hasApi(e)&&Polymer.dom(e).notifyObserver()}function l(e){if(c&&e)for(var t=0;t<e.length;t++)CustomElements.upgrade(e[t])}var h=Polym er.DomApi,u=Polymer.TreeApi;Polymer.Base._addFeature({_prepShady:function(){this ._useContent=this._useContent||Boolean(this._template)},_setupShady:function(){t his.shadyRoot=null,this.__domApi||(this.__domApi=null),this.__dom||(this.__dom=n ull),this._ownerShadyRoot||(this._ownerShadyRoot=void 0)},_poolContent:function( ){this._useContent&&u.Logical.saveChildNodes(this)},_setupRoot:function(){this._ useContent&&(this._createLocalRoot(),this.dataHost||l(u.Logical.getChildNodes(th is)))},_createLocalRoot:function(){this.shadyRoot=this.root,this.shadyRoot._dist ributionClean=!1,this.shadyRoot._hasDistributed=!1,this.shadyRoot._isShadyRoot=! 0,this.shadyRoot._dirtyRoots=[];var e=this.shadyRoot._insertionPoints=!this._not es||this._notes._hasContent?this.shadyRoot.querySelectorAll("content"):[];u.Logi cal.saveChildNodes(this.shadyRoot);for(var t,o=0;o<e.length;o++)t=e[o],u.Logical .saveChildNodes(t),u.Logical.saveChildNodes(t.parentNode);this.shadyRoot.host=th is},get domHost(){var e=Polymer.dom(this).getOwnerRoot();return e&&e.host},distr ibuteContent:function(e){if(this.shadyRoot){this.shadyRoot._invalidInsertionPoin ts=this.shadyRoot._invalidInsertionPoints||e;var t=s(this);Polymer.dom(this)._la zyDistribute(t)}},_distributeContent:function(){this._useContent&&!this.shadyRoo t._distributionClean&&(this.shadyRoot._invalidInsertionPoints&&(Polymer.dom(this )._updateInsertionPoints(this),this.shadyRoot._invalidInsertionPoints=!1),this._ beginDistribute(),this._distributeDirtyRoots(),this._finishDistribute())},_begin Distribute:function(){this._useContent&&h.hasInsertionPoint(this.shadyRoot)&&(th is._resetDistribution(),this._distributePool(this.shadyRoot,this._collectPool()) );
2 },_distributeDirtyRoots:function(){for(var e,t=this.shadyRoot._dirtyRoots,o=0,i= t.length;o<i&&(e=t[o]);o++)e._distributeContent();this.shadyRoot._dirtyRoots=[]} ,_finishDistribute:function(){if(this._useContent){if(this.shadyRoot._distributi onClean=!0,h.hasInsertionPoint(this.shadyRoot))this._composeTree(),d(this.shadyR oot);else if(this.shadyRoot._hasDistributed){var e=this._composeNode(this);this. _updateChildNodes(this,e)}else u.Composed.clearChildNodes(this),this.appendChild (this.shadyRoot);this.shadyRoot._hasDistributed||a(this),this.shadyRoot._hasDist ributed=!0}},elementMatches:function(e,t){return t=t||this,h.matchesSelector.cal l(t,e)},_resetDistribution:function(){for(var e=u.Logical.getChildNodes(this),o= 0;o<e.length;o++){var i=e[o];i._destinationInsertionPoints&&(i._destinationInser tionPoints=void 0),n(i)&&t(i)}for(var s=this.shadyRoot,r=s._insertionPoints,d=0; d<r.length;d++)r[d]._distributedNodes=[]},_collectPool:function(){for(var e=[],t =u.Logical.getChildNodes(this),o=0;o<t.length;o++){var i=t[o];n(i)?e.push.apply( e,i._distributedNodes):e.push(i)}return e},_distributePool:function(e,t){for(var i,n=e._insertionPoints,s=0,r=n.length;s<r&&(i=n[s]);s++)this._distributeInserti onPoint(i,t),o(i,this)},_distributeInsertionPoint:function(t,o){for(var i,n=!1,s =0,r=o.length;s<r;s++)i=o[s],i&&this._matchesContentSelect(i,t)&&(e(i,t),o[s]=vo id 0,n=!0);if(!n)for(var d=u.Logical.getChildNodes(t),a=0;a<d.length;a++)e(d[a], t)},_composeTree:function(){this._updateChildNodes(this,this._composeNode(this)) ;for(var e,t,o=this.shadyRoot._insertionPoints,i=0,n=o.length;i<n&&(e=o[i]);i++) t=u.Logical.getParentNode(e),t._useContent||t===this||t===this.shadyRoot||this._ updateChildNodes(t,this._composeNode(t))},_composeNode:function(e){for(var t=[], o=u.Logical.getChildNodes(e.shadyRoot||e),s=0;s<o.length;s++){var r=o[s];if(n(r) )for(var d=r._distributedNodes,a=0;a<d.length;a++){var l=d[a];i(r,l)&&t.push(l)} else t.push(r)}return t},_updateChildNodes:function(e,t){for(var o,i=u.Composed. getChildNodes(e),n=Polymer.ArraySplice.calculateSplices(t,i),s=0,r=0;s<n.length& &(o=n[s]);s++){for(var d,a=0;a<o.removed.length&&(d=o.removed[a]);a++)u.Composed .getParentNode(d)===e&&u.Composed.removeChild(e,d),i.splice(o.index+r,1);r-=o.ad dedCount}for(var o,l,s=0;s<n.length&&(o=n[s]);s++)for(l=i[o.index],a=o.index,d;a <o.index+o.addedCount;a++)d=t[a],u.Composed.insertBefore(e,d,l),i.splice(a,0,d)} ,_matchesContentSelect:function(e,t){var o=t.getAttribute("select");if(!o)return !0;if(o=o.trim(),!o)return!0;if(!(e instanceof Element))return!1;var i=/^(:not\( )?[*.#[a-zA-Z_|]/;return!!i.test(o)&&this.elementMatches(o,e)},_elementAdd:funct ion(){},_elementRemove:function(){}});var c=window.CustomElements&&!CustomElemen ts.useNative}(),Polymer.Settings.useShadow&&Polymer.Base._addFeature({_poolConte nt:function(){},_beginDistribute:function(){},distributeContent:function(){},_di stributeContent:function(){},_finishDistribute:function(){},_createLocalRoot:fun ction(){this.createShadowRoot(),this.shadowRoot.appendChild(this.root),this.root =this.shadowRoot}}),Polymer.Async={_currVal:0,_lastVal:0,_callbacks:[],_twiddleC ontent:0,_twiddle:document.createTextNode(""),run:function(e,t){return t>0?~setT imeout(e,t):(this._twiddle.textContent=this._twiddleContent++,this._callbacks.pu sh(e),this._currVal++)},cancel:function(e){if(e<0)clearTimeout(~e);else{var t=e- this._lastVal;if(t>=0){if(!this._callbacks[t])throw"invalid async handle: "+e;th is._callbacks[t]=null}}},_atEndOfMicrotask:function(){for(var e=this._callbacks. length,t=0;t<e;t++){var o=this._callbacks[t];if(o)try{o()}catch(e){throw t++,thi s._callbacks.splice(0,t),this._lastVal+=t,this._twiddle.textContent=this._twiddl eContent++,e}}this._callbacks.splice(0,e),this._lastVal+=e}},new window.Mutation Observer(function(){Polymer.Async._atEndOfMicrotask()}).observe(Polymer.Async._t widdle,{characterData:!0}),Polymer.Debounce=function(){function e(e,t,i){return e?e.stop():e=new o(this),e.go(t,i),e}var t=Polymer.Async,o=function(e){this.cont ext=e;var t=this;this.boundComplete=function(){t.complete()}};return o.prototype ={go:function(e,o){var i;this.finish=function(){t.cancel(i)},i=t.run(this.boundC omplete,o),this.callback=e},stop:function(){this.finish&&(this.finish(),this.fin ish=null,this.callback=null)},complete:function(){if(this.finish){var e=this.cal lback;this.stop(),e.call(this.context)}}},e}(),Polymer.Base._addFeature({_setupD ebouncers:function(){this._debouncers={}},debounce:function(e,t,o){return this._ debouncers[e]=Polymer.Debounce.call(this,this._debouncers[e],t,o)},isDebouncerAc tive:function(e){var t=this._debouncers[e];return!(!t||!t.finish)},flushDebounce r:function(e){var t=this._debouncers[e];t&&t.complete()},cancelDebouncer:functio n(e){var t=this._debouncers[e];t&&t.stop()}}),Polymer.DomModule=document.createE lement("dom-module"),Polymer.Base._addFeature({_registerFeatures:function(){this ._prepIs(),this._prepBehaviors(),this._prepConstructor(),this._prepTemplate(),th is._prepShady(),this._prepPropertyInfo()},_prepBehavior:function(e){this._addHos tAttributes(e.hostAttributes)},_initFeatures:function(){this._registerHost(),thi s._template&&(this._poolContent(),this._beginHosting(),this._stampTemplate(),thi s._endHosting()),this._marshalHostAttributes(),this._setupDebouncers(),this._mar shalBehaviors(),this._tryReady()},_marshalBehavior:function(e){}})</script> <scr ipt>Polymer.nar=[],Polymer.Annotations={parseAnnotations:function(e){var t=[],n= e._content||e.content;return this._parseNodeAnnotations(n,t,e.hasAttribute("stri p-whitespace")),t},_parseNodeAnnotations:function(e,t,n){return e.nodeType===Nod e.TEXT_NODE?this._parseTextNodeAnnotation(e,t):this._parseElementAnnotations(e,t ,n)},_bindingRegex:function(){var e="(?:[a-zA-Z_$][\\w.:$\\-*]*)",t="(?:[-+]?[0- 9]*\\.?[0-9]+(?:[eE][-+]?[0-9]+)?)",n="(?:'(?:[^'\\\\]|\\\\.)*')",r='(?:"(?:[^"\ \\\]|\\\\.)*")',s="(?:"+n+"|"+r+")",i="(?:"+e+"|"+t+"|"+s+"\\s*)",o="(?:"+i+"(?: ,\\s*"+i+")*)",a="(?:\\(\\s*(?:"+o+"?)\\)\\s*)",l="("+e+"\\s*"+a+"?)",c="(\\[\\[ |{{)\\s*",h="(?:]]|}})",u="(?:(!)\\s*)?",f=c+u+l+h;return new RegExp(f,"g")}(),_ parseBindings:function(e){for(var t,n=this._bindingRegex,r=[],s=0;null!==(t=n.ex ec(e));){t.index>s&&r.push({literal:e.slice(s,t.index)});var i,o,a,l=t[1][0],c=B oolean(t[2]),h=t[3].trim();"{"==l&&(a=h.indexOf("::"))>0&&(o=h.substring(a+2),h= h.substring(0,a),i=!0),r.push({compoundIndex:r.length,value:h,mode:l,negate:c,ev ent:o,customEvent:i}),s=n.lastIndex}if(s&&s<e.length){var u=e.substring(s);u&&r. push({literal:u})}if(r.length)return r},_literalFromParts:function(e){for(var t= "",n=0;n<e.length;n++){var r=e[n].literal;t+=r||""}return t},_parseTextNodeAnnot ation:function(e,t){var n=this._parseBindings(e.textContent);if(n){e.textContent =this._literalFromParts(n)||" ";var r={bindings:[{kind:"text",name:"textContent" ,parts:n,isCompound:1!==n.length}]};return t.push(r),r}},_parseElementAnnotation s:function(e,t,n){var r={bindings:[],events:[]};return"content"===e.localName&&( t._hasContent=!0),this._parseChildNodesAnnotations(e,r,t,n),e.attributes&&(this. _parseNodeAttributeAnnotations(e,r,t),this.prepElement&&this.prepElement(e)),(r. bindings.length||r.events.length||r.id)&&t.push(r),r},_parseChildNodesAnnotation s:function(e,t,n,r){if(e.firstChild)for(var s=e.firstChild,i=0;s;){var o=s.nextS ibling;if("template"!==s.localName||s.hasAttribute("preserve-content")||this._pa rseTemplate(s,i,n,t),"slot"==s.localName&&(s=this._replaceSlotWithContent(s)),s. nodeType===Node.TEXT_NODE){for(var a=o;a&&a.nodeType===Node.TEXT_NODE;)s.textCon tent+=a.textContent,o=a.nextSibling,e.removeChild(a),a=o;r&&!s.textContent.trim( )&&(e.removeChild(s),i--)}if(s.parentNode){var l=this._parseNodeAnnotations(s,n, r);l&&(l.parent=t,l.index=i)}s=o,i++}},_replaceSlotWithContent:function(e){for(v ar t=e.ownerDocument.createElement("content");e.firstChild;)t.appendChild(e.firs tChild);for(var n=e.attributes,r=0;r<n.length;r++){var s=n[r];t.setAttribute(s.n ame,s.value)}var i=e.getAttribute("name"),o=i?"[slot='"+i+"']":":not([slot])";re turn t.setAttribute("select",o),e.parentNode.replaceChild(t,e),t},_parseTemplate :function(e,t,n,r){var s=document.createDocumentFragment();s._notes=this.parseAn notations(e),s.appendChild(e.content),n.push({bindings:Polymer.nar,events:Polyme r.nar,templateContent:s,parent:r,index:t})},_parseNodeAttributeAnnotations:funct ion(e,t){for(var n,r=Array.prototype.slice.call(e.attributes),s=r.length-1;n=r[s ];s--){var i,o=n.name,a=n.value;"on-"===o.slice(0,3)?(e.removeAttribute(o),t.eve nts.push({name:o.slice(3),value:a})):(i=this._parseNodeAttributeAnnotation(e,o,a ))?t.bindings.push(i):"id"===o&&(t.id=a)}},_parseNodeAttributeAnnotation:functio n(e,t,n){var r=this._parseBindings(n);if(r){var s=t,i="property";"$"==t[t.length -1]&&(t=t.slice(0,-1),i="attribute");var o=this._literalFromParts(r);o&&"attribu te"==i&&e.setAttribute(t,o),"input"===e.localName&&"value"===s&&e.setAttribute(s ,""),e.removeAttribute(s);var a=Polymer.CaseMap.dashToCamelCase(t);return"proper ty"===i&&(t=a),{kind:i,name:t,propertyName:a,parts:r,literal:o,isCompound:1!==r. length}}},findAnnotatedNode:function(e,t){var n=t.parent&&Polymer.Annotations.fi ndAnnotatedNode(e,t.parent);if(!n)return e;for(var r=n.firstChild,s=0;r;r=r.next Sibling)if(t.index===s++)return r}},function(){function e(e,t){return e.replace( a,function(e,r,s,i){return r+"'"+n(s.replace(/["']/g,""),t)+"'"+i})}function t(t ,r){for(var s in l)for(var i,o,a,c=l[s],u=0,f=c.length;u<f&&(i=c[u]);u++)"*"!==s &&t.localName!==s||(o=t.attributes[i],a=o&&o.value,a&&a.search(h)<0&&(o.value="s tyle"===i?e(a,r):n(a,r)))}function n(e,t){if(e&&c.test(e))return e;var n=s(t);re turn n.href=e,n.href||e}function r(e,t){return i||(i=document.implementation.cre ateHTMLDocument("temp"),o=i.createElement("base"),i.head.appendChild(o)),o.href= t,n(e,i)}function s(e){return e.__urlResolver||(e.__urlResolver=e.createElement( "a"))}var i,o,a=/(url\()([^)]*)(\))/g,l={"*":["href","src","style","url"],form:[ "action"]},c=/(^\/)|(^#)|(^[\w-\d]*:)/,h=/\{\{|\[\[/;Polymer.ResolveUrl={resolve Css:e,resolveAttrs:t,resolveUrl:r}}(),Polymer.Path={root:function(e){var t=e.ind exOf(".");return t===-1?e:e.slice(0,t)},isDeep:function(e){return e.indexOf(".") !==-1},isAncestor:function(e,t){return 0===e.indexOf(t+".")},isDescendant:functi on(e,t){return 0===t.indexOf(e+".")},translate:function(e,t,n){return t+n.slice( e.length)},matches:function(e,t,n){return e===n||this.isAncestor(e,n)||Boolean(t )&&this.isDescendant(e,n)}},Polymer.Base._addFeature({_prepAnnotations:function( ){if(this._template){var e=this;Polymer.Annotations.prepElement=function(t){e._p repElement(t)},this._template._content&&this._template._content._notes?this._not es=this._template._content._notes:(this._notes=Polymer.Annotations.parseAnnotati ons(this._template),this._processAnnotations(this._notes)),Polymer.Annotations.p repElement=null}else this._notes=[]},_processAnnotations:function(e){for(var t=0 ;t<e.length;t++){for(var n=e[t],r=0;r<n.bindings.length;r++)for(var s=n.bindings [r],i=0;i<s.parts.length;i++){var o=s.parts[i];if(!o.literal){var a=this._parseM ethod(o.value);a?o.signature=a:o.model=Polymer.Path.root(o.value)}}if(n.template Content){this._processAnnotations(n.templateContent._notes);var l=n.templateCont ent._parentProps=this._discoverTemplateParentProps(n.templateContent._notes),c=[ ];for(var h in l){var u="_parent_"+h;c.push({index:n.index,kind:"property",name: u,propertyName:u,parts:[{mode:"{",model:h,value:h}]})}n.bindings=n.bindings.conc at(c)}}},_discoverTemplateParentProps:function(e){for(var t,n={},r=0;r<e.length& &(t=e[r]);r++){for(var s,i=0,o=t.bindings;i<o.length&&(s=o[i]);i++)for(var a,l=0 ,c=s.parts;l<c.length&&(a=c[l]);l++)if(a.signature){for(var h=a.signature.args,u =0;u<h.length;u++){var f=h[u].model;f&&(n[f]=!0)}a.signature.dynamicFn&&(n[a.sig nature.method]=!0)}else a.model&&(n[a.model]=!0);if(t.templateContent){var p=t.t emplateContent._parentProps;Polymer.Base.mixin(n,p)}}return n},_prepElement:func tion(e){Polymer.ResolveUrl.resolveAttrs(e,this._template.ownerDocument)},_findAn notatedNode:Polymer.Annotations.findAnnotatedNode,_marshalAnnotationReferences:f unction(){this._template&&(this._marshalIdNodes(),this._marshalAnnotatedNodes(), this._marshalAnnotatedListeners())},_configureAnnotationReferences:function(){fo r(var e=this._notes,t=this._nodes,n=0;n<e.length;n++){var r=e[n],s=t[n];this._co nfigureTemplateContent(r,s),this._configureCompoundBindings(r,s)}},_configureTem plateContent:function(e,t){e.templateContent&&(t._content=e.templateContent)},_c onfigureCompoundBindings:function(e,t){for(var n=e.bindings,r=0;r<n.length;r++){ var s=n[r];if(s.isCompound){for(var i=t.__compoundStorage__||(t.__compoundStorag e__={}),o=s.parts,a=new Array(o.length),l=0;l<o.length;l++)a[l]=o[l].literal;var c=s.name;i[c]=a,s.literal&&"property"==s.kind&&(t._configValue?t._configValue(c ,s.literal):t[c]=s.literal)}}},_marshalIdNodes:function(){this.$={};for(var e,t= 0,n=this._notes.length;t<n&&(e=this._notes[t]);t++)e.id&&(this.$[e.id]=this._fin dAnnotatedNode(this.root,e))},_marshalAnnotatedNodes:function(){if(this._notes&& this._notes.length){for(var e=new Array(this._notes.length),t=0;t<this._notes.le ngth;t++)e[t]=this._findAnnotatedNode(this.root,this._notes[t]);this._nodes=e}}, _marshalAnnotatedListeners:function(){for(var e,t=0,n=this._notes.length;t<n&&(e =this._notes[t]);t++)if(e.events&&e.events.length)for(var r,s=this._findAnnotate dNode(this.root,e),i=0,o=e.events;i<o.length&&(r=o[i]);i++)this.listen(s,r.name, r.value)}}),Polymer.Base._addFeature({listeners:{},_listenListeners:function(e){ var t,n,r;for(r in e)r.indexOf(".")<0?(t=this,n=r):(n=r.split("."),t=this.$[n[0] ],n=n[1]),this.listen(t,n,e[r])},listen:function(e,t,n){var r=this._recallEventH andler(this,t,e,n);r||(r=this._createEventHandler(e,t,n)),r._listening||(this._l isten(e,t,r),r._listening=!0)},_boundListenerKey:function(e,t){return e+":"+t},_ recordEventHandler:function(e,t,n,r,s){var i=e.__boundListeners;i||(i=e.__boundL isteners=new WeakMap);var o=i.get(n);o||(o={},i.set(n,o));var a=this._boundListe nerKey(t,r);o[a]=s},_recallEventHandler:function(e,t,n,r){var s=e.__boundListene rs;if(s){var i=s.get(n);if(i){var o=this._boundListenerKey(t,r);return i[o]}}},_ createEventHandler:function(e,t,n){var r=this,s=function(e){r[n]?r[n](e,e.detail ):r._warn(r._logf("_createEventHandler","listener method `"+n+"` not defined"))} ;return s._listening=!1,this._recordEventHandler(r,t,e,n,s),s},unlisten:function (e,t,n){var r=this._recallEventHandler(this,t,e,n);r&&(this._unlisten(e,t,r),r._ listening=!1)},_listen:function(e,t,n){e.addEventListener(t,n)},_unlisten:functi on(e,t,n){e.removeEventListener(t,n)}}),function(){"use strict";function e(e){fo r(var t,n=g?["click"]:m,r=0;r<n.length;r++)t=n[r],e?document.addEventListener(t, P,!0):document.removeEventListener(t,P,!0)}function t(){S.mouse.mouseIgnoreJob|| e(!0);var t=function(){e(),S.mouse.target=null,S.mouse.mouseIgnoreJob=null};S.mo use.mouseIgnoreJob=Polymer.Debounce(S.mouse.mouseIgnoreJob,t,d)}function n(e){va r t=e.type;if(m.indexOf(t)===-1)return!1;if("mousemove"===t){var n=void 0===e.bu ttons?1:e.buttons;return e instanceof window.MouseEvent&&!v&&(n=y[e.which]||0),B oolean(1&n)}var r=void 0===e.button?0:e.button;return 0===r}function r(e){if("cl ick"===e.type){if(0===e.detail)return!0;var t=C.findOriginalTarget(e),n=t.getBou ndingClientRect(),r=e.pageX,s=e.pageY;return!(r>=n.left&&r<=n.right&&s>=n.top&&s <=n.bottom)}return!1}function s(e){for(var t,n=Polymer.dom(e).path,r="auto",s=0; s<n.length;s++)if(t=n[s],t[u]){r=t[u];break}return r}function i(e,t,n){e.movefn= t,e.upfn=n,document.addEventListener("mousemove",t),document.addEventListener("m ouseup",n)}function o(e){document.removeEventListener("mousemove",e.movefn),docu ment.removeEventListener("mouseup",e.upfn),e.movefn=null,e.upfn=null}var a=Polym er.DomApi.wrap,l="string"==typeof document.head.style.touchAction,c="__polymerGe stures",h="__polymerGesturesHandled",u="__polymerGesturesTouchAction",f=25,p=5,_ =2,d=2500,m=["mousedown","mousemove","mouseup","click"],y=[0,1,4,2],v=function() {try{return 1===new MouseEvent("test",{buttons:1}).buttons}catch(e){return!1}}() ,g=navigator.userAgent.match(/iP(?:[oa]d|hone)|Android/),P=function(e){var t=e.s ourceCapabilities;if((!t||t.firesTouchEvents)&&(e[h]={skip:!0},"click"===e.type) ){for(var n=Polymer.dom(e).path,r=0;r<n.length;r++)if(n[r]===S.mouse.target)retu rn;e.preventDefault(),e.stopPropagation()}},S={mouse:{target:null,mouseIgnoreJob :null},touch:{x:0,y:0,id:-1,scrollDecided:!1}},C={gestures:{},recognizers:[],dee pTargetFind:function(e,t){for(var n=document.elementFromPoint(e,t),r=n;r&&r.shad owRoot;)r=r.shadowRoot.elementFromPoint(e,t),r&&(n=r);return n},findOriginalTarg et:function(e){return e.path?e.path[0]:e.target},handleNative:function(e){var n, r=e.type,s=a(e.currentTarget),i=s[c];if(i){var o=i[r];if(o){if(!e[h]&&(e[h]={}," touch"===r.slice(0,5))){var u=e.changedTouches[0];if("touchstart"===r&&1===e.tou ches.length&&(S.touch.id=u.identifier),S.touch.id!==u.identifier)return;l||"touc hstart"!==r&&"touchmove"!==r||C.handleTouchAction(e),"touchend"===r&&(S.mouse.ta rget=Polymer.dom(e).rootTarget,t())}if(n=e[h],!n.skip){for(var f,p=C.recognizers ,_=0;_<p.length;_++)f=p[_],o[f.name]&&!n[f.name]&&f.flow&&f.flow.start.indexOf(e .type)>-1&&f.reset&&f.reset();for(_=0,f;_<p.length;_++)f=p[_],o[f.name]&&!n[f.na me]&&(n[f.name]=!0,f[r](e))}}}},handleTouchAction:function(e){var t=e.changedTou ches[0],n=e.type;if("touchstart"===n)S.touch.x=t.clientX,S.touch.y=t.clientY,S.t ouch.scrollDecided=!1;else if("touchmove"===n){if(S.touch.scrollDecided)return;S .touch.scrollDecided=!0;var r=s(e),i=!1,o=Math.abs(S.touch.x-t.clientX),a=Math.a bs(S.touch.y-t.clientY);e.cancelable&&("none"===r?i=!0:"pan-x"===r?i=a>o:"pan-y" ===r&&(i=o>a)),i?e.preventDefault():C.prevent("track")}},add:function(e,t,n){e=a (e);var r=this.gestures[t],s=r.deps,i=r.name,o=e[c];o||(e[c]=o={});for(var l,h,u =0;u<s.length;u++)l=s[u],g&&m.indexOf(l)>-1&&"click"!==l||(h=o[l],h||(o[l]=h={_c ount:0}),0===h._count&&e.addEventListener(l,this.handleNative),h[i]=(h[i]||0)+1, h._count=(h._count||0)+1);e.addEventListener(t,n),r.touchAction&&this.setTouchAc tion(e,r.touchAction)},remove:function(e,t,n){e=a(e);var r=this.gestures[t],s=r. deps,i=r.name,o=e[c];if(o)for(var l,h,u=0;u<s.length;u++)l=s[u],h=o[l],h&&h[i]&& (h[i]=(h[i]||1)-1,h._count=(h._count||1)-1,0===h._count&&e.removeEventListener(l ,this.handleNative));e.removeEventListener(t,n)},register:function(e){this.recog nizers.push(e);for(var t=0;t<e.emits.length;t++)this.gestures[e.emits[t]]=e},fin dRecognizerByEvent:function(e){for(var t,n=0;n<this.recognizers.length;n++){t=th is.recognizers[n];for(var r,s=0;s<t.emits.length;s++)if(r=t.emits[s],r===e)retur n t}return null},setTouchAction:function(e,t){l&&(e.style.touchAction=t),e[u]=t} ,fire:function(e,t,n){var r=Polymer.Base.fire(t,n,{node:e,bubbles:!0,cancelable: !0});if(r.defaultPrevented){var s=n.preventer||n.sourceEvent;s&&s.preventDefault &&s.preventDefault()}},prevent:function(e){var t=this.findRecognizerByEvent(e);t .info&&(t.info.prevent=!0)},resetMouseCanceller:function(){S.mouse.mouseIgnoreJo b&&S.mouse.mouseIgnoreJob.complete()}};C.register({name:"downup",deps:["mousedow n","touchstart","touchend"],flow:{start:["mousedown","touchstart"],end:["mouseup ","touchend"]},emits:["down","up"],info:{movefn:null,upfn:null},reset:function() {o(this.info)},mousedown:function(e){if(n(e)){var t=C.findOriginalTarget(e),r=th is,s=function(e){n(e)||(r.fire("up",t,e),o(r.info))},a=function(e){n(e)&&r.fire( "up",t,e),o(r.info)};i(this.info,s,a),this.fire("down",t,e)}},touchstart:functio n(e){this.fire("down",C.findOriginalTarget(e),e.changedTouches[0],e)},touchend:f unction(e){this.fire("up",C.findOriginalTarget(e),e.changedTouches[0],e)},fire:f unction(e,t,n,r){C.fire(t,e,{x:n.clientX,y:n.clientY,sourceEvent:n,preventer:r,p revent:function(e){return C.prevent(e)}})}}),C.register({name:"track",touchActio n:"none",deps:["mousedown","touchstart","touchmove","touchend"],flow:{start:["mo usedown","touchstart"],end:["mouseup","touchend"]},emits:["track"],info:{x:0,y:0 ,state:"start",started:!1,moves:[],addMove:function(e){this.moves.length>_&&this .moves.shift(),this.moves.push(e)},movefn:null,upfn:null,prevent:!1},reset:funct ion(){this.info.state="start",this.info.started=!1,this.info.moves=[],this.info. x=0,this.info.y=0,this.info.prevent=!1,o(this.info)},hasMovedEnough:function(e,t ){if(this.info.prevent)return!1;if(this.info.started)return!0;var n=Math.abs(thi s.info.x-e),r=Math.abs(this.info.y-t);return n>=p||r>=p},mousedown:function(e){i f(n(e)){var t=C.findOriginalTarget(e),r=this,s=function(e){var s=e.clientX,i=e.c lientY;r.hasMovedEnough(s,i)&&(r.info.state=r.info.started?"mouseup"===e.type?"e nd":"track":"start","start"===r.info.state&&C.prevent("tap"),r.info.addMove({x:s ,y:i}),n(e)||(r.info.state="end",o(r.info)),r.fire(t,e),r.info.started=!0)},a=fu nction(e){r.info.started&&s(e),o(r.info)};i(this.info,s,a),this.info.x=e.clientX ,this.info.y=e.clientY}},touchstart:function(e){var t=e.changedTouches[0];this.i nfo.x=t.clientX,this.info.y=t.clientY},touchmove:function(e){var t=C.findOrigina lTarget(e),n=e.changedTouches[0],r=n.clientX,s=n.clientY;this.hasMovedEnough(r,s )&&("start"===this.info.state&&C.prevent("tap"),this.info.addMove({x:r,y:s}),thi s.fire(t,n),this.info.state="track",this.info.started=!0)},touchend:function(e){ var t=C.findOriginalTarget(e),n=e.changedTouches[0];this.info.started&&(this.inf o.state="end",this.info.addMove({x:n.clientX,y:n.clientY}),this.fire(t,n,e))},fi re:function(e,t,n){var r,s=this.info.moves[this.info.moves.length-2],i=this.info .moves[this.info.moves.length-1],o=i.x-this.info.x,a=i.y-this.info.y,l=0;return s&&(r=i.x-s.x,l=i.y-s.y),C.fire(e,"track",{state:this.info.state,x:t.clientX,y:t .clientY,dx:o,dy:a,ddx:r,ddy:l,sourceEvent:t,preventer:n,hover:function(){return C.deepTargetFind(t.clientX,t.clientY)}})}}),C.register({name:"tap",deps:["mouse down","click","touchstart","touchend"],flow:{start:["mousedown","touchstart"],en d:["click","touchend"]},emits:["tap"],info:{x:NaN,y:NaN,prevent:!1},reset:functi on(){this.info.x=NaN,this.info.y=NaN,this.info.prevent=!1},save:function(e){this .info.x=e.clientX,this.info.y=e.clientY},mousedown:function(e){n(e)&&this.save(e )},click:function(e){n(e)&&this.forward(e)},touchstart:function(e){this.save(e.c hangedTouches[0],e)},touchend:function(e){this.forward(e.changedTouches[0],e)},f orward:function(e,t){var n=Math.abs(e.clientX-this.info.x),s=Math.abs(e.clientY- this.info.y),i=C.findOriginalTarget(e);(isNaN(n)||isNaN(s)||n<=f&&s<=f||r(e))&&( this.info.prevent||C.fire(i,"tap",{x:e.clientX,y:e.clientY,sourceEvent:e,prevent er:t}))}});var E={x:"pan-x",y:"pan-y",none:"none",all:"auto"};Polymer.Base._addF eature({_setupGestures:function(){this.__polymerGestures=null},_listen:function( e,t,n){C.gestures[t]?C.add(e,t,n):e.addEventListener(t,n)},_unlisten:function(e, t,n){C.gestures[t]?C.remove(e,t,n):e.removeEventListener(t,n)},setScrollDirectio n:function(e,t){t=t||this,C.setTouchAction(t,E[e]||"auto")}}),Polymer.Gestures=C }(),function(){"use strict";if(Polymer.Base._addFeature({$$:function(e){return P olymer.dom(this.root).querySelector(e)},toggleClass:function(e,t,n){n=n||this,1= =arguments.length&&(t=!n.classList.contains(e)),t?Polymer.dom(n).classList.add(e ):Polymer.dom(n).classList.remove(e)},toggleAttribute:function(e,t,n){n=n||this, 1==arguments.length&&(t=!n.hasAttribute(e)),t?Polymer.dom(n).setAttribute(e,""): Polymer.dom(n).removeAttribute(e)},classFollows:function(e,t,n){n&&Polymer.dom(n ).classList.remove(e),t&&Polymer.dom(t).classList.add(e)},attributeFollows:funct ion(e,t,n){n&&Polymer.dom(n).removeAttribute(e),t&&Polymer.dom(t).setAttribute(e ,"")},getEffectiveChildNodes:function(){return Polymer.dom(this).getEffectiveChi ldNodes()},getEffectiveChildren:function(){var e=Polymer.dom(this).getEffectiveC hildNodes();return e.filter(function(e){return e.nodeType===Node.ELEMENT_NODE})} ,getEffectiveTextContent:function(){for(var e,t=this.getEffectiveChildNodes(),n= [],r=0;e=t[r];r++)e.nodeType!==Node.COMMENT_NODE&&n.push(Polymer.dom(e).textCont ent);return n.join("")},queryEffectiveChildren:function(e){var t=Polymer.dom(thi s).queryDistributedElements(e);return t&&t[0]},queryAllEffectiveChildren:functio n(e){return Polymer.dom(this).queryDistributedElements(e)},getContentChildNodes: function(e){var t=Polymer.dom(this.root).querySelector(e||"content");return t?Po lymer.dom(t).getDistributedNodes():[]},getContentChildren:function(e){return thi s.getContentChildNodes(e).filter(function(e){return e.nodeType===Node.ELEMENT_NO DE})},fire:function(e,t,n){n=n||Polymer.nob;var r=n.node||this;t=null===t||void 0===t?{}:t;var s=void 0===n.bubbles||n.bubbles,i=Boolean(n.cancelable),o=n._useC ache,a=this._getEvent(e,s,i,o);return a.detail=t,o&&(this.__eventCache[e]=null), r.dispatchEvent(a),o&&(this.__eventCache[e]=a),a},__eventCache:{},_getEvent:func tion(e,t,n,r){var s=r&&this.__eventCache[e];return s&&s.bubbles==t&&s.cancelable ==n||(s=new Event(e,{bubbles:Boolean(t),cancelable:n})),s},async:function(e,t){v ar n=this;return Polymer.Async.run(function(){e.call(n)},t)},cancelAsync:functio n(e){Polymer.Async.cancel(e)},arrayDelete:function(e,t){var n;if(Array.isArray(e )){if(n=e.indexOf(t),n>=0)return e.splice(n,1)}else{var r=this._get(e);if(n=r.in dexOf(t),n>=0)return this.splice(e,n,1)}},transform:function(e,t){t=t||this,t.st yle.webkitTransform=e,t.style.transform=e},translate3d:function(e,t,n,r){r=r||th is,this.transform("translate3d("+e+","+t+","+n+")",r)},importHref:function(e,t,n ,r){var s=document.createElement("link");s.rel="import",s.href=e;var i=Polymer.B ase.importHref.imported=Polymer.Base.importHref.imported||{},o=i[s.href],a=o||s, l=this;if(t){var c=function(e){return e.target.__firedLoad=!0,e.target.removeEve ntListener("load",c),t.call(l,e)};a.addEventListener("load",c)}if(n){var h=funct ion(e){return e.target.__firedError=!0,e.target.removeEventListener("error",h),n .call(l,e)};a.addEventListener("error",h)}return o?(o.__firedLoad&&o.dispatchEve nt(new Event("load")),o.__firedError&&o.dispatchEvent(new Event("error"))):(i[s. href]=s,r=Boolean(r),r&&s.setAttribute("async",""),document.head.appendChild(s)) ,a},create:function(e,t){var n=document.createElement(e);if(t)for(var r in t)n[r ]=t[r];return n},isLightDescendant:function(e){return this!==e&&this.contains(e) &&Polymer.dom(this).getOwnerRoot()===Polymer.dom(e).getOwnerRoot()},isLocalDesce ndant:function(e){return this.root===Polymer.dom(e).getOwnerRoot()}}),!Polymer.S ettings.useNativeCustomElements){var e=Polymer.Base.importHref;Polymer.Base.impo rtHref=function(t,n,r,s){CustomElements.ready=!1;var i=function(e){if(CustomElem ents.upgradeDocumentTree(document),CustomElements.ready=!0,n)return n.call(this, e)};return e.call(this,t,i,r,s)}}}(),Polymer.Bind={prepareModel:function(e){Poly mer.Base.mixin(e,this._modelApi)},_modelApi:{_notifyChange:function(e,t,n){n=voi d 0===n?this[e]:n,t=t||Polymer.CaseMap.camelToDashCase(e)+"-changed",this.fire(t ,{value:n},{bubbles:!1,cancelable:!1,_useCache:!0})},_propertySetter:function(e, t,n,r){var s=this.__data__[e];return s===t||s!==s&&t!==t||(this.__data__[e]=t,"o bject"==typeof t&&this._clearPath(e),this._propertyChanged&&this._propertyChange d(e,t,s),n&&this._effectEffects(e,t,n,s,r)),s},__setProperty:function(e,t,n,r){r =r||this;var s=r._propertyEffects&&r._propertyEffects[e];s?r._propertySetter(e,t ,s,n):r[e]!==t&&(r[e]=t)},_effectEffects:function(e,t,n,r,s){for(var i,o=0,a=n.l ength;o<a&&(i=n[o]);o++)i.fn.call(this,e,this[e],i.effect,r,s)},_clearPath:funct ion(e){for(var t in this.__data__)Polymer.Path.isDescendant(e,t)&&(this.__data__ [t]=void 0)}},ensurePropertyEffects:function(e,t){e._propertyEffects||(e._proper tyEffects={});var n=e._propertyEffects[t];return n||(n=e._propertyEffects[t]=[]) ,n},addPropertyEffect:function(e,t,n,r){var s=this.ensurePropertyEffects(e,t),i= {kind:n,effect:r,fn:Polymer.Bind["_"+n+"Effect"]};return s.push(i),i},createBind ings:function(e){var t=e._propertyEffects;if(t)for(var n in t){var r=t[n];r.sort (this._sortPropertyEffects),this._createAccessors(e,n,r)}},_sortPropertyEffects: function(){var e={compute:0,annotation:1,annotatedComputation:2,reflect:3,notify :4,observer:5,complexObserver:6,function:7};return function(t,n){return e[t.kind ]-e[n.kind]}}(),_createAccessors:function(e,t,n){var r={get:function(){return th is.__data__[t]}},s=function(e){this._propertySetter(t,e,n)},i=e.getPropertyInfo& &e.getPropertyInfo(t);i&&i.readOnly?i.computed||(e["_set"+this.upper(t)]=s):r.se t=s,Object.defineProperty(e,t,r)},upper:function(e){return e[0].toUpperCase()+e. substring(1)},_addAnnotatedListener:function(e,t,n,r,s,i){e._bindListeners||(e._ bindListeners=[]);var o=this._notedListenerFactory(n,r,Polymer.Path.isDeep(r),i) ,a=s||Polymer.CaseMap.camelToDashCase(n)+"-changed";e._bindListeners.push({index :t,property:n,path:r,changedFn:o,event:a})},_isEventBogus:function(e,t){return e .path&&e.path[0]!==t},_notedListenerFactory:function(e,t,n,r){return function(s, i,o){if(o){var a=Polymer.Path.translate(e,t,o);this._notifyPath(a,i)}else i=s[e] ,r&&(i=!i),n?this.__data__[t]!=i&&this.set(t,i):this[t]=i}},prepareInstance:func tion(e){e.__data__=Object.create(null)},setupBindListeners:function(e){for(var t ,n=e._bindListeners,r=0,s=n.length;r<s&&(t=n[r]);r++){var i=e._nodes[t.index];th is._addNotifyListener(i,e,t.event,t.changedFn)}},_addNotifyListener:function(e,t ,n,r){e.addEventListener(n,function(e){return t._notifyListener(r,e)})}},Polymer .Base.extend(Polymer.Bind,{_shouldAddListener:function(e){return e.name&&"attrib ute"!=e.kind&&"text"!=e.kind&&!e.isCompound&&"{"===e.parts[0].mode},_annotationE ffect:function(e,t,n){e!=n.value&&(t=this._get(n.value),this.__data__[n.value]=t ),this._applyEffectValue(n,t)},_reflectEffect:function(e,t,n){this.reflectProper tyToAttribute(e,n.attribute,t)},_notifyEffect:function(e,t,n,r,s){s||this._notif yChange(e,n.event,t)},_functionEffect:function(e,t,n,r,s){n.call(this,e,t,r,s)}, _observerEffect:function(e,t,n,r){var s=this[n.method];s?s.call(this,t,r):this._ warn(this._logf("_observerEffect","observer method `"+n.method+"` not defined")) },_complexObserverEffect:function(e,t,n){var r=this[n.method];if(r){var s=Polyme r.Bind._marshalArgs(this.__data__,n,e,t);s&&r.apply(this,s)}else n.dynamicFn||th is._warn(this._logf("_complexObserverEffect","observer method `"+n.method+"` not defined"))},_computeEffect:function(e,t,n){var r=this[n.method];if(r){var s=Pol ymer.Bind._marshalArgs(this.__data__,n,e,t);if(s){var i=r.apply(this,s);this.__s etProperty(n.name,i)}}else n.dynamicFn||this._warn(this._logf("_computeEffect"," compute method `"+n.method+"` not defined"))},_annotatedComputationEffect:functi on(e,t,n){var r=this._rootDataHost||this,s=r[n.method];if(s){var i=Polymer.Bind. _marshalArgs(this.__data__,n,e,t);if(i){var o=s.apply(r,i);this._applyEffectValu e(n,o)}}else n.dynamicFn||r._warn(r._logf("_annotatedComputationEffect","compute method `"+n.method+"` not defined"))},_marshalArgs:function(e,t,n,r){for(var s= [],i=t.args,o=i.length>1||t.dynamicFn,a=0,l=i.length;a<l;a++){var c,h=i[a],u=h.n ame;if(h.literal?c=h.value:n===u?c=r:(c=e[u],void 0===c&&h.structured&&(c=Polyme r.Base._get(u,e))),o&&void 0===c)return;if(h.wildcard){var f=Polymer.Path.isAnce stor(n,u);s[a]={path:f?n:u,value:f?r:c,base:c}}else s[a]=c}return s}}),Polymer.B ase._addFeature({_addPropertyEffect:function(e,t,n){var r=Polymer.Bind.addProper tyEffect(this,e,t,n);r.pathFn=this["_"+r.kind+"PathEffect"]},_prepEffects:functi on(){Polymer.Bind.prepareModel(this),this._addAnnotationEffects(this._notes)},_p repBindings:function(){Polymer.Bind.createBindings(this)},_addPropertyEffects:fu nction(e){if(e)for(var t in e){var n=e[t];if(n.observer&&this._addObserverEffect (t,n.observer),n.computed&&(n.readOnly=!0,this._addComputedEffect(t,n.computed)) ,n.notify&&this._addPropertyEffect(t,"notify",{event:Polymer.CaseMap.camelToDash Case(t)+"-changed"}),n.reflectToAttribute){var r=Polymer.CaseMap.camelToDashCase (t);"-"===r[0]?this._warn(this._logf("_addPropertyEffects","Property "+t+" canno t be reflected to attribute "+r+' because "-" is not a valid starting attribute name. Use a lowercase first letter for the property instead.')):this._addPropert yEffect(t,"reflect",{attribute:r})}n.readOnly&&Polymer.Bind.ensurePropertyEffect s(this,t)}},_addComputedEffect:function(e,t){for(var n,r=this._parseMethod(t),s= r.dynamicFn,i=0;i<r.args.length&&(n=r.args[i]);i++)this._addPropertyEffect(n.mod el,"compute",{method:r.method,args:r.args,trigger:n,name:e,dynamicFn:s});s&&this ._addPropertyEffect(r.method,"compute",{method:r.method,args:r.args,trigger:null ,name:e,dynamicFn:s})},_addObserverEffect:function(e,t){this._addPropertyEffect( e,"observer",{method:t,property:e})},_addComplexObserverEffects:function(e){if(e )for(var t,n=0;n<e.length&&(t=e[n]);n++)this._addComplexObserverEffect(t)},_addC omplexObserverEffect:function(e){var t=this._parseMethod(e);if(!t)throw new Erro r("Malformed observer expression '"+e+"'");for(var n,r=t.dynamicFn,s=0;s<t.args. length&&(n=t.args[s]);s++)this._addPropertyEffect(n.model,"complexObserver",{met hod:t.method,args:t.args,trigger:n,dynamicFn:r});r&&this._addPropertyEffect(t.me thod,"complexObserver",{method:t.method,args:t.args,trigger:null,dynamicFn:r})}, _addAnnotationEffects:function(e){for(var t,n=0;n<e.length&&(t=e[n]);n++)for(var r,s=t.bindings,i=0;i<s.length&&(r=s[i]);i++)this._addAnnotationEffect(r,n)},_ad dAnnotationEffect:function(e,t){Polymer.Bind._shouldAddListener(e)&&Polymer.Bind ._addAnnotatedListener(this,t,e.name,e.parts[0].value,e.parts[0].event,e.parts[0 ].negate);for(var n=0;n<e.parts.length;n++){var r=e.parts[n];r.signature?this._a ddAnnotatedComputationEffect(e,r,t):r.literal||("attribute"===e.kind&&"-"===e.na me[0]?this._warn(this._logf("_addAnnotationEffect","Cannot set attribute "+e.nam e+' because "-" is not a valid attribute starting character')):this._addProperty Effect(r.model,"annotation",{kind:e.kind,index:t,name:e.name,propertyName:e.prop ertyName,value:r.value,isCompound:e.isCompound,compoundIndex:r.compoundIndex,eve nt:r.event,customEvent:r.customEvent,negate:r.negate}))}},_addAnnotatedComputati onEffect:function(e,t,n){var r=t.signature;if(r.static)this.__addAnnotatedComput ationEffect("__static__",n,e,t,null);else{for(var s,i=0;i<r.args.length&&(s=r.ar gs[i]);i++)s.literal||this.__addAnnotatedComputationEffect(s.model,n,e,t,s);r.dy namicFn&&this.__addAnnotatedComputationEffect(r.method,n,e,t,null)}},__addAnnota tedComputationEffect:function(e,t,n,r,s){this._addPropertyEffect(e,"annotatedCom putation",{index:t,isCompound:n.isCompound,compoundIndex:r.compoundIndex,kind:n. kind,name:n.name,negate:r.negate,method:r.signature.method,args:r.signature.args ,trigger:s,dynamicFn:r.signature.dynamicFn})},_parseMethod:function(e){var t=e.m atch(/([^\s]+?)\(([\s\S]*)\)/);if(t){var n={method:t[1],static:!0};if(this.getPr opertyInfo(n.method)!==Polymer.nob&&(n.static=!1,n.dynamicFn=!0),t[2].trim()){va r r=t[2].replace(/\\,/g,"&comma;").split(",");return this._parseArgs(r,n)}return n.args=Polymer.nar,n}},_parseArgs:function(e,t){return t.args=e.map(function(e) {var n=this._parseArg(e);return n.literal||(t.static=!1),n},this),t},_parseArg:f unction(e){var t=e.trim().replace(/&comma;/g,",").replace(/\\(.)/g,"$1"),n={name :t},r=t[0];switch("-"===r&&(r=t[1]),r>="0"&&r<="9"&&(r="#"),r){case"'":case'"':n .value=t.slice(1,-1),n.literal=!0;break;case"#":n.value=Number(t),n.literal=!0}r eturn n.literal||(n.model=Polymer.Path.root(t),n.structured=Polymer.Path.isDeep( t),n.structured&&(n.wildcard=".*"==t.slice(-2),n.wildcard&&(n.name=t.slice(0,-2) ))),n},_marshalInstanceEffects:function(){Polymer.Bind.prepareInstance(this),thi s._bindListeners&&Polymer.Bind.setupBindListeners(this)},_applyEffectValue:funct ion(e,t){var n=this._nodes[e.index],r=e.name;if(t=this._computeFinalAnnotationVa lue(n,r,t,e),"attribute"==e.kind)this.serializeValueToAttribute(t,r,n);else{var s=n._propertyInfo&&n._propertyInfo[r];if(s&&s.readOnly)return;this.__setProperty (r,t,!1,n)}},_computeFinalAnnotationValue:function(e,t,n,r){if(r.negate&&(n=!n), r.isCompound){var s=e.__compoundStorage__[t];s[r.compoundIndex]=n,n=s.join("")}r eturn"attribute"!==r.kind&&("className"===t&&(n=this._scopeElementClass(e,n)),(" textContent"===t||"input"==e.localName&&"value"==t)&&(n=void 0==n?"":n)),n},_exe cuteStaticEffects:function(){this._propertyEffects&&this._propertyEffects.__stat ic__&&this._effectEffects("__static__",null,this._propertyEffects.__static__)}}) ,function(){var e=Polymer.Settings.usePolyfillProto;Polymer.Base._addFeature({_s etupConfigure:function(e){if(this._config={},this._handlers=[],this._aboveConfig =null,e)for(var t in e)void 0!==e[t]&&(this._config[t]=e[t])},_marshalAttributes :function(){this._takeAttributesToModel(this._config)},_attributeChangedImpl:fun ction(e){var t=this._clientsReadied?this:this._config;this._setAttributeToProper ty(t,e)},_configValue:function(e,t){var n=this._propertyInfo[e];n&&n.readOnly||( this._config[e]=t)},_beforeClientsReady:function(){this._configure()},_configure :function(){this._configureAnnotationReferences(),this._configureInstancePropert ies(),this._aboveConfig=this.mixin({},this._config);for(var e={},t=0;t<this.beha viors.length;t++)this._configureProperties(this.behaviors[t].properties,e);this. _configureProperties(this.properties,e),this.mixin(e,this._aboveConfig),this._co nfig=e,this._clients&&this._clients.length&&this._distributeConfig(this._config) },_configureInstanceProperties:function(){for(var t in this._propertyEffects)!e& &this.hasOwnProperty(t)&&(this._configValue(t,this[t]), 2 },_distributeDirtyRoots:function(){for(var e,t=this.shadyRoot._dirtyRoots,o=0,i= t.length;o<i&&(e=t[o]);o++)e._distributeContent();this.shadyRoot._dirtyRoots=[]} ,_finishDistribute:function(){if(this._useContent){if(this.shadyRoot._distributi onClean=!0,h.hasInsertionPoint(this.shadyRoot))this._composeTree(),d(this.shadyR oot);else if(this.shadyRoot._hasDistributed){var e=this._composeNode(this);this. _updateChildNodes(this,e)}else u.Composed.clearChildNodes(this),this.appendChild (this.shadyRoot);this.shadyRoot._hasDistributed||a(this),this.shadyRoot._hasDist ributed=!0}},elementMatches:function(e,t){return t=t||this,h.matchesSelector.cal l(t,e)},_resetDistribution:function(){for(var e=u.Logical.getChildNodes(this),o= 0;o<e.length;o++){var i=e[o];i._destinationInsertionPoints&&(i._destinationInser tionPoints=void 0),n(i)&&t(i)}for(var s=this.shadyRoot,r=s._insertionPoints,d=0; d<r.length;d++)r[d]._distributedNodes=[]},_collectPool:function(){for(var e=[],t =u.Logical.getChildNodes(this),o=0;o<t.length;o++){var i=t[o];n(i)?e.push.apply( e,i._distributedNodes):e.push(i)}return e},_distributePool:function(e,t){for(var i,n=e._insertionPoints,s=0,r=n.length;s<r&&(i=n[s]);s++)this._distributeInserti onPoint(i,t),o(i,this)},_distributeInsertionPoint:function(t,o){for(var i,n=!1,s =0,r=o.length;s<r;s++)i=o[s],i&&this._matchesContentSelect(i,t)&&(e(i,t),o[s]=vo id 0,n=!0);if(!n)for(var d=u.Logical.getChildNodes(t),a=0;a<d.length;a++)e(d[a], t)},_composeTree:function(){this._updateChildNodes(this,this._composeNode(this)) ;for(var e,t,o=this.shadyRoot._insertionPoints,i=0,n=o.length;i<n&&(e=o[i]);i++) t=u.Logical.getParentNode(e),t._useContent||t===this||t===this.shadyRoot||this._ updateChildNodes(t,this._composeNode(t))},_composeNode:function(e){for(var t=[], o=u.Logical.getChildNodes(e.shadyRoot||e),s=0;s<o.length;s++){var r=o[s];if(n(r) )for(var d=r._distributedNodes,a=0;a<d.length;a++){var l=d[a];i(r,l)&&t.push(l)} else t.push(r)}return t},_updateChildNodes:function(e,t){for(var o,i=u.Composed. getChildNodes(e),n=Polymer.ArraySplice.calculateSplices(t,i),s=0,r=0;s<n.length& &(o=n[s]);s++){for(var d,a=0;a<o.removed.length&&(d=o.removed[a]);a++)u.Composed .getParentNode(d)===e&&u.Composed.removeChild(e,d),i.splice(o.index+r,1);r-=o.ad dedCount}for(var o,l,s=0;s<n.length&&(o=n[s]);s++)for(l=i[o.index],a=o.index,d;a <o.index+o.addedCount;a++)d=t[a],u.Composed.insertBefore(e,d,l),i.splice(a,0,d)} ,_matchesContentSelect:function(e,t){var o=t.getAttribute("select");if(!o)return !0;if(o=o.trim(),!o)return!0;if(!(e instanceof Element))return!1;var i=/^(:not\( )?[*.#[a-zA-Z_|]/;return!!i.test(o)&&this.elementMatches(o,e)},_elementAdd:funct ion(){},_elementRemove:function(){}});var c=window.CustomElements&&!CustomElemen ts.useNative}(),Polymer.Settings.useShadow&&Polymer.Base._addFeature({_poolConte nt:function(){},_beginDistribute:function(){},distributeContent:function(){},_di stributeContent:function(){},_finishDistribute:function(){},_createLocalRoot:fun ction(){this.createShadowRoot(),this.shadowRoot.appendChild(this.root),this.root =this.shadowRoot}}),Polymer.Async={_currVal:0,_lastVal:0,_callbacks:[],_twiddleC ontent:0,_twiddle:document.createTextNode(""),run:function(e,t){return t>0?~setT imeout(e,t):(this._twiddle.textContent=this._twiddleContent++,this._callbacks.pu sh(e),this._currVal++)},cancel:function(e){if(e<0)clearTimeout(~e);else{var t=e- this._lastVal;if(t>=0){if(!this._callbacks[t])throw"invalid async handle: "+e;th is._callbacks[t]=null}}},_atEndOfMicrotask:function(){for(var e=this._callbacks. length,t=0;t<e;t++){var o=this._callbacks[t];if(o)try{o()}catch(e){throw t++,thi s._callbacks.splice(0,t),this._lastVal+=t,this._twiddle.textContent=this._twiddl eContent++,e}}this._callbacks.splice(0,e),this._lastVal+=e}},new window.Mutation Observer(function(){Polymer.Async._atEndOfMicrotask()}).observe(Polymer.Async._t widdle,{characterData:!0}),Polymer.Debounce=function(){function e(e,t,i){return e?e.stop():e=new o(this),e.go(t,i),e}var t=Polymer.Async,o=function(e){this.cont ext=e;var t=this;this.boundComplete=function(){t.complete()}};return o.prototype ={go:function(e,o){var i;this.finish=function(){t.cancel(i)},i=t.run(this.boundC omplete,o),this.callback=e},stop:function(){this.finish&&(this.finish(),this.fin ish=null,this.callback=null)},complete:function(){if(this.finish){var e=this.cal lback;this.stop(),e.call(this.context)}}},e}(),Polymer.Base._addFeature({_setupD ebouncers:function(){this._debouncers={}},debounce:function(e,t,o){return this._ debouncers[e]=Polymer.Debounce.call(this,this._debouncers[e],t,o)},isDebouncerAc tive:function(e){var t=this._debouncers[e];return!(!t||!t.finish)},flushDebounce r:function(e){var t=this._debouncers[e];t&&t.complete()},cancelDebouncer:functio n(e){var t=this._debouncers[e];t&&t.stop()}}),Polymer.DomModule=document.createE lement("dom-module"),Polymer.Base._addFeature({_registerFeatures:function(){this ._prepIs(),this._prepBehaviors(),this._prepConstructor(),this._prepTemplate(),th is._prepShady(),this._prepPropertyInfo()},_prepBehavior:function(e){this._addHos tAttributes(e.hostAttributes)},_initFeatures:function(){this._registerHost(),thi s._template&&(this._poolContent(),this._beginHosting(),this._stampTemplate(),thi s._endHosting()),this._marshalHostAttributes(),this._setupDebouncers(),this._mar shalBehaviors(),this._tryReady()},_marshalBehavior:function(e){}})</script> <scr ipt>Polymer.nar=[],Polymer.Annotations={parseAnnotations:function(e){var t=[],n= e._content||e.content;return this._parseNodeAnnotations(n,t,e.hasAttribute("stri p-whitespace")),t},_parseNodeAnnotations:function(e,t,n){return e.nodeType===Nod e.TEXT_NODE?this._parseTextNodeAnnotation(e,t):this._parseElementAnnotations(e,t ,n)},_bindingRegex:function(){var e="(?:[a-zA-Z_$][\\w.:$\\-*]*)",t="(?:[-+]?[0- 9]*\\.?[0-9]+(?:[eE][-+]?[0-9]+)?)",n="(?:'(?:[^'\\\\]|\\\\.)*')",r='(?:"(?:[^"\ \\\]|\\\\.)*")',s="(?:"+n+"|"+r+")",i="(?:"+e+"|"+t+"|"+s+"\\s*)",o="(?:"+i+"(?: ,\\s*"+i+")*)",a="(?:\\(\\s*(?:"+o+"?)\\)\\s*)",l="("+e+"\\s*"+a+"?)",c="(\\[\\[ |{{)\\s*",h="(?:]]|}})",u="(?:(!)\\s*)?",f=c+u+l+h;return new RegExp(f,"g")}(),_ parseBindings:function(e){for(var t,n=this._bindingRegex,r=[],s=0;null!==(t=n.ex ec(e));){t.index>s&&r.push({literal:e.slice(s,t.index)});var i,o,a,l=t[1][0],c=B oolean(t[2]),h=t[3].trim();"{"==l&&(a=h.indexOf("::"))>0&&(o=h.substring(a+2),h= h.substring(0,a),i=!0),r.push({compoundIndex:r.length,value:h,mode:l,negate:c,ev ent:o,customEvent:i}),s=n.lastIndex}if(s&&s<e.length){var u=e.substring(s);u&&r. push({literal:u})}if(r.length)return r},_literalFromParts:function(e){for(var t= "",n=0;n<e.length;n++){var r=e[n].literal;t+=r||""}return t},_parseTextNodeAnnot ation:function(e,t){var n=this._parseBindings(e.textContent);if(n){e.textContent =this._literalFromParts(n)||" ";var r={bindings:[{kind:"text",name:"textContent" ,parts:n,isCompound:1!==n.length}]};return t.push(r),r}},_parseElementAnnotation s:function(e,t,n){var r={bindings:[],events:[]};return"content"===e.localName&&( t._hasContent=!0),this._parseChildNodesAnnotations(e,r,t,n),e.attributes&&(this. _parseNodeAttributeAnnotations(e,r,t),this.prepElement&&this.prepElement(e)),(r. bindings.length||r.events.length||r.id)&&t.push(r),r},_parseChildNodesAnnotation s:function(e,t,n,r){if(e.firstChild)for(var s=e.firstChild,i=0;s;){var o=s.nextS ibling;if("template"!==s.localName||s.hasAttribute("preserve-content")||this._pa rseTemplate(s,i,n,t),"slot"==s.localName&&(s=this._replaceSlotWithContent(s)),s. nodeType===Node.TEXT_NODE){for(var a=o;a&&a.nodeType===Node.TEXT_NODE;)s.textCon tent+=a.textContent,o=a.nextSibling,e.removeChild(a),a=o;r&&!s.textContent.trim( )&&(e.removeChild(s),i--)}if(s.parentNode){var l=this._parseNodeAnnotations(s,n, r);l&&(l.parent=t,l.index=i)}s=o,i++}},_replaceSlotWithContent:function(e){for(v ar t=e.ownerDocument.createElement("content");e.firstChild;)t.appendChild(e.firs tChild);for(var n=e.attributes,r=0;r<n.length;r++){var s=n[r];t.setAttribute(s.n ame,s.value)}var i=e.getAttribute("name"),o=i?"[slot='"+i+"']":":not([slot])";re turn t.setAttribute("select",o),e.parentNode.replaceChild(t,e),t},_parseTemplate :function(e,t,n,r){var s=document.createDocumentFragment();s._notes=this.parseAn notations(e),s.appendChild(e.content),n.push({bindings:Polymer.nar,events:Polyme r.nar,templateContent:s,parent:r,index:t})},_parseNodeAttributeAnnotations:funct ion(e,t){for(var n,r=Array.prototype.slice.call(e.attributes),s=r.length-1;n=r[s ];s--){var i,o=n.name,a=n.value;"on-"===o.slice(0,3)?(e.removeAttribute(o),t.eve nts.push({name:o.slice(3),value:a})):(i=this._parseNodeAttributeAnnotation(e,o,a ))?t.bindings.push(i):"id"===o&&(t.id=a)}},_parseNodeAttributeAnnotation:functio n(e,t,n){var r=this._parseBindings(n);if(r){var s=t,i="property";"$"==t[t.length -1]&&(t=t.slice(0,-1),i="attribute");var o=this._literalFromParts(r);o&&"attribu te"==i&&e.setAttribute(t,o),"input"===e.localName&&"value"===s&&e.setAttribute(s ,""),e.removeAttribute(s);var a=Polymer.CaseMap.dashToCamelCase(t);return"proper ty"===i&&(t=a),{kind:i,name:t,propertyName:a,parts:r,literal:o,isCompound:1!==r. length}}},findAnnotatedNode:function(e,t){var n=t.parent&&Polymer.Annotations.fi ndAnnotatedNode(e,t.parent);if(!n)return e;for(var r=n.firstChild,s=0;r;r=r.next Sibling)if(t.index===s++)return r}},function(){function e(e,t){return e.replace( a,function(e,r,s,i){return r+"'"+n(s.replace(/["']/g,""),t)+"'"+i})}function t(t ,r){for(var s in l)for(var i,o,a,c=l[s],u=0,f=c.length;u<f&&(i=c[u]);u++)"*"!==s &&t.localName!==s||(o=t.attributes[i],a=o&&o.value,a&&a.search(h)<0&&(o.value="s tyle"===i?e(a,r):n(a,r)))}function n(e,t){if(e&&c.test(e))return e;var n=s(t);re turn n.href=e,n.href||e}function r(e,t){return i||(i=document.implementation.cre ateHTMLDocument("temp"),o=i.createElement("base"),i.head.appendChild(o)),o.href= t,n(e,i)}function s(e){return e.__urlResolver||(e.__urlResolver=e.createElement( "a"))}var i,o,a=/(url\()([^)]*)(\))/g,l={"*":["href","src","style","url"],form:[ "action"]},c=/(^\/)|(^#)|(^[\w-\d]*:)/,h=/\{\{|\[\[/;Polymer.ResolveUrl={resolve Css:e,resolveAttrs:t,resolveUrl:r}}(),Polymer.Path={root:function(e){var t=e.ind exOf(".");return t===-1?e:e.slice(0,t)},isDeep:function(e){return e.indexOf(".") !==-1},isAncestor:function(e,t){return 0===e.indexOf(t+".")},isDescendant:functi on(e,t){return 0===t.indexOf(e+".")},translate:function(e,t,n){return t+n.slice( e.length)},matches:function(e,t,n){return e===n||this.isAncestor(e,n)||Boolean(t )&&this.isDescendant(e,n)}},Polymer.Base._addFeature({_prepAnnotations:function( ){if(this._template){var e=this;Polymer.Annotations.prepElement=function(t){e._p repElement(t)},this._template._content&&this._template._content._notes?this._not es=this._template._content._notes:(this._notes=Polymer.Annotations.parseAnnotati ons(this._template),this._processAnnotations(this._notes)),Polymer.Annotations.p repElement=null}else this._notes=[]},_processAnnotations:function(e){for(var t=0 ;t<e.length;t++){for(var n=e[t],r=0;r<n.bindings.length;r++)for(var s=n.bindings [r],i=0;i<s.parts.length;i++){var o=s.parts[i];if(!o.literal){var a=this._parseM ethod(o.value);a?o.signature=a:o.model=Polymer.Path.root(o.value)}}if(n.template Content){this._processAnnotations(n.templateContent._notes);var l=n.templateCont ent._parentProps=this._discoverTemplateParentProps(n.templateContent._notes),c=[ ];for(var h in l){var u="_parent_"+h;c.push({index:n.index,kind:"property",name: u,propertyName:u,parts:[{mode:"{",model:h,value:h}]})}n.bindings=n.bindings.conc at(c)}}},_discoverTemplateParentProps:function(e){for(var t,n={},r=0;r<e.length& &(t=e[r]);r++){for(var s,i=0,o=t.bindings;i<o.length&&(s=o[i]);i++)for(var a,l=0 ,c=s.parts;l<c.length&&(a=c[l]);l++)if(a.signature){for(var h=a.signature.args,u =0;u<h.length;u++){var f=h[u].model;f&&(n[f]=!0)}a.signature.dynamicFn&&(n[a.sig nature.method]=!0)}else a.model&&(n[a.model]=!0);if(t.templateContent){var p=t.t emplateContent._parentProps;Polymer.Base.mixin(n,p)}}return n},_prepElement:func tion(e){Polymer.ResolveUrl.resolveAttrs(e,this._template.ownerDocument)},_findAn notatedNode:Polymer.Annotations.findAnnotatedNode,_marshalAnnotationReferences:f unction(){this._template&&(this._marshalIdNodes(),this._marshalAnnotatedNodes(), this._marshalAnnotatedListeners())},_configureAnnotationReferences:function(){fo r(var e=this._notes,t=this._nodes,n=0;n<e.length;n++){var r=e[n],s=t[n];this._co nfigureTemplateContent(r,s),this._configureCompoundBindings(r,s)}},_configureTem plateContent:function(e,t){e.templateContent&&(t._content=e.templateContent)},_c onfigureCompoundBindings:function(e,t){for(var n=e.bindings,r=0;r<n.length;r++){ var s=n[r];if(s.isCompound){for(var i=t.__compoundStorage__||(t.__compoundStorag e__={}),o=s.parts,a=new Array(o.length),l=0;l<o.length;l++)a[l]=o[l].literal;var c=s.name;i[c]=a,s.literal&&"property"==s.kind&&(t._configValue?t._configValue(c ,s.literal):t[c]=s.literal)}}},_marshalIdNodes:function(){this.$={};for(var e,t= 0,n=this._notes.length;t<n&&(e=this._notes[t]);t++)e.id&&(this.$[e.id]=this._fin dAnnotatedNode(this.root,e))},_marshalAnnotatedNodes:function(){if(this._notes&& this._notes.length){for(var e=new Array(this._notes.length),t=0;t<this._notes.le ngth;t++)e[t]=this._findAnnotatedNode(this.root,this._notes[t]);this._nodes=e}}, _marshalAnnotatedListeners:function(){for(var e,t=0,n=this._notes.length;t<n&&(e =this._notes[t]);t++)if(e.events&&e.events.length)for(var r,s=this._findAnnotate dNode(this.root,e),i=0,o=e.events;i<o.length&&(r=o[i]);i++)this.listen(s,r.name, r.value)}}),Polymer.Base._addFeature({listeners:{},_listenListeners:function(e){ var t,n,r;for(r in e)r.indexOf(".")<0?(t=this,n=r):(n=r.split("."),t=this.$[n[0] ],n=n[1]),this.listen(t,n,e[r])},listen:function(e,t,n){var r=this._recallEventH andler(this,t,e,n);r||(r=this._createEventHandler(e,t,n)),r._listening||(this._l isten(e,t,r),r._listening=!0)},_boundListenerKey:function(e,t){return e+":"+t},_ recordEventHandler:function(e,t,n,r,s){var i=e.__boundListeners;i||(i=e.__boundL isteners=new WeakMap);var o=i.get(n);o||(o={},i.set(n,o));var a=this._boundListe nerKey(t,r);o[a]=s},_recallEventHandler:function(e,t,n,r){var s=e.__boundListene rs;if(s){var i=s.get(n);if(i){var o=this._boundListenerKey(t,r);return i[o]}}},_ createEventHandler:function(e,t,n){var r=this,s=function(e){r[n]?r[n](e,e.detail ):r._warn(r._logf("_createEventHandler","listener method `"+n+"` not defined"))} ;return s._listening=!1,this._recordEventHandler(r,t,e,n,s),s},unlisten:function (e,t,n){var r=this._recallEventHandler(this,t,e,n);r&&(this._unlisten(e,t,r),r._ listening=!1)},_listen:function(e,t,n){e.addEventListener(t,n)},_unlisten:functi on(e,t,n){e.removeEventListener(t,n)}}),function(){"use strict";function e(e){fo r(var t,n=g?["click"]:m,r=0;r<n.length;r++)t=n[r],e?document.addEventListener(t, P,!0):document.removeEventListener(t,P,!0)}function t(){S.mouse.mouseIgnoreJob|| e(!0);var t=function(){e(),S.mouse.target=null,S.mouse.mouseIgnoreJob=null};S.mo use.mouseIgnoreJob=Polymer.Debounce(S.mouse.mouseIgnoreJob,t,d)}function n(e){va r t=e.type;if(m.indexOf(t)===-1)return!1;if("mousemove"===t){var n=void 0===e.bu ttons?1:e.buttons;return e instanceof window.MouseEvent&&!v&&(n=y[e.which]||0),B oolean(1&n)}var r=void 0===e.button?0:e.button;return 0===r}function r(e){if("cl ick"===e.type){if(0===e.detail)return!0;var t=C.findOriginalTarget(e),n=t.getBou ndingClientRect(),r=e.pageX,s=e.pageY;return!(r>=n.left&&r<=n.right&&s>=n.top&&s <=n.bottom)}return!1}function s(e){for(var t,n=Polymer.dom(e).path,r="auto",s=0; s<n.length;s++)if(t=n[s],t[u]){r=t[u];break}return r}function i(e,t,n){e.movefn= t,e.upfn=n,document.addEventListener("mousemove",t),document.addEventListener("m ouseup",n)}function o(e){document.removeEventListener("mousemove",e.movefn),docu ment.removeEventListener("mouseup",e.upfn),e.movefn=null,e.upfn=null}var a=Polym er.DomApi.wrap,l="string"==typeof document.head.style.touchAction,c="__polymerGe stures",h="__polymerGesturesHandled",u="__polymerGesturesTouchAction",f=25,p=5,_ =2,d=2500,m=["mousedown","mousemove","mouseup","click"],y=[0,1,4,2],v=function() {try{return 1===new MouseEvent("test",{buttons:1}).buttons}catch(e){return!1}}() ,g=navigator.userAgent.match(/iP(?:[oa]d|hone)|Android/),P=function(e){var t=e.s ourceCapabilities;if((!t||t.firesTouchEvents)&&(e[h]={skip:!0},"click"===e.type) ){for(var n=Polymer.dom(e).path,r=0;r<n.length;r++)if(n[r]===S.mouse.target)retu rn;e.preventDefault(),e.stopPropagation()}},S={mouse:{target:null,mouseIgnoreJob :null},touch:{x:0,y:0,id:-1,scrollDecided:!1}},C={gestures:{},recognizers:[],dee pTargetFind:function(e,t){for(var n=document.elementFromPoint(e,t),r=n;r&&r.shad owRoot;)r=r.shadowRoot.elementFromPoint(e,t),r&&(n=r);return n},findOriginalTarg et:function(e){return e.path?e.path[0]:e.target},handleNative:function(e){var n, r=e.type,s=a(e.currentTarget),i=s[c];if(i){var o=i[r];if(o){if(!e[h]&&(e[h]={}," touch"===r.slice(0,5))){var u=e.changedTouches[0];if("touchstart"===r&&1===e.tou ches.length&&(S.touch.id=u.identifier),S.touch.id!==u.identifier)return;l||"touc hstart"!==r&&"touchmove"!==r||C.handleTouchAction(e),"touchend"===r&&(S.mouse.ta rget=Polymer.dom(e).rootTarget,t())}if(n=e[h],!n.skip){for(var f,p=C.recognizers ,_=0;_<p.length;_++)f=p[_],o[f.name]&&!n[f.name]&&f.flow&&f.flow.start.indexOf(e .type)>-1&&f.reset&&f.reset();for(_=0,f;_<p.length;_++)f=p[_],o[f.name]&&!n[f.na me]&&(n[f.name]=!0,f[r](e))}}}},handleTouchAction:function(e){var t=e.changedTou ches[0],n=e.type;if("touchstart"===n)S.touch.x=t.clientX,S.touch.y=t.clientY,S.t ouch.scrollDecided=!1;else if("touchmove"===n){if(S.touch.scrollDecided)return;S .touch.scrollDecided=!0;var r=s(e),i=!1,o=Math.abs(S.touch.x-t.clientX),a=Math.a bs(S.touch.y-t.clientY);e.cancelable&&("none"===r?i=!0:"pan-x"===r?i=a>o:"pan-y" ===r&&(i=o>a)),i?e.preventDefault():C.prevent("track")}},add:function(e,t,n){e=a (e);var r=this.gestures[t],s=r.deps,i=r.name,o=e[c];o||(e[c]=o={});for(var l,h,u =0;u<s.length;u++)l=s[u],g&&m.indexOf(l)>-1&&"click"!==l||(h=o[l],h||(o[l]=h={_c ount:0}),0===h._count&&e.addEventListener(l,this.handleNative),h[i]=(h[i]||0)+1, h._count=(h._count||0)+1);e.addEventListener(t,n),r.touchAction&&this.setTouchAc tion(e,r.touchAction)},remove:function(e,t,n){e=a(e);var r=this.gestures[t],s=r. deps,i=r.name,o=e[c];if(o)for(var l,h,u=0;u<s.length;u++)l=s[u],h=o[l],h&&h[i]&& (h[i]=(h[i]||1)-1,h._count=(h._count||1)-1,0===h._count&&e.removeEventListener(l ,this.handleNative));e.removeEventListener(t,n)},register:function(e){this.recog nizers.push(e);for(var t=0;t<e.emits.length;t++)this.gestures[e.emits[t]]=e},fin dRecognizerByEvent:function(e){for(var t,n=0;n<this.recognizers.length;n++){t=th is.recognizers[n];for(var r,s=0;s<t.emits.length;s++)if(r=t.emits[s],r===e)retur n t}return null},setTouchAction:function(e,t){l&&(e.style.touchAction=t),e[u]=t} ,fire:function(e,t,n){var r=Polymer.Base.fire(t,n,{node:e,bubbles:!0,cancelable: !0});if(r.defaultPrevented){var s=n.preventer||n.sourceEvent;s&&s.preventDefault &&s.preventDefault()}},prevent:function(e){var t=this.findRecognizerByEvent(e);t .info&&(t.info.prevent=!0)},resetMouseCanceller:function(){S.mouse.mouseIgnoreJo b&&S.mouse.mouseIgnoreJob.complete()}};C.register({name:"downup",deps:["mousedow n","touchstart","touchend"],flow:{start:["mousedown","touchstart"],end:["mouseup ","touchend"]},emits:["down","up"],info:{movefn:null,upfn:null},reset:function() {o(this.info)},mousedown:function(e){if(n(e)){var t=C.findOriginalTarget(e),r=th is,s=function(e){n(e)||(r.fire("up",t,e),o(r.info))},a=function(e){n(e)&&r.fire( "up",t,e),o(r.info)};i(this.info,s,a),this.fire("down",t,e)}},touchstart:functio n(e){this.fire("down",C.findOriginalTarget(e),e.changedTouches[0],e)},touchend:f unction(e){this.fire("up",C.findOriginalTarget(e),e.changedTouches[0],e)},fire:f unction(e,t,n,r){C.fire(t,e,{x:n.clientX,y:n.clientY,sourceEvent:n,preventer:r,p revent:function(e){return C.prevent(e)}})}}),C.register({name:"track",touchActio n:"none",deps:["mousedown","touchstart","touchmove","touchend"],flow:{start:["mo usedown","touchstart"],end:["mouseup","touchend"]},emits:["track"],info:{x:0,y:0 ,state:"start",started:!1,moves:[],addMove:function(e){this.moves.length>_&&this .moves.shift(),this.moves.push(e)},movefn:null,upfn:null,prevent:!1},reset:funct ion(){this.info.state="start",this.info.started=!1,this.info.moves=[],this.info. x=0,this.info.y=0,this.info.prevent=!1,o(this.info)},hasMovedEnough:function(e,t ){if(this.info.prevent)return!1;if(this.info.started)return!0;var n=Math.abs(thi s.info.x-e),r=Math.abs(this.info.y-t);return n>=p||r>=p},mousedown:function(e){i f(n(e)){var t=C.findOriginalTarget(e),r=this,s=function(e){var s=e.clientX,i=e.c lientY;r.hasMovedEnough(s,i)&&(r.info.state=r.info.started?"mouseup"===e.type?"e nd":"track":"start","start"===r.info.state&&C.prevent("tap"),r.info.addMove({x:s ,y:i}),n(e)||(r.info.state="end",o(r.info)),r.fire(t,e),r.info.started=!0)},a=fu nction(e){r.info.started&&s(e),o(r.info)};i(this.info,s,a),this.info.x=e.clientX ,this.info.y=e.clientY}},touchstart:function(e){var t=e.changedTouches[0];this.i nfo.x=t.clientX,this.info.y=t.clientY},touchmove:function(e){var t=C.findOrigina lTarget(e),n=e.changedTouches[0],r=n.clientX,s=n.clientY;this.hasMovedEnough(r,s )&&("start"===this.info.state&&C.prevent("tap"),this.info.addMove({x:r,y:s}),thi s.fire(t,n),this.info.state="track",this.info.started=!0)},touchend:function(e){ var t=C.findOriginalTarget(e),n=e.changedTouches[0];this.info.started&&(this.inf o.state="end",this.info.addMove({x:n.clientX,y:n.clientY}),this.fire(t,n,e))},fi re:function(e,t,n){var r,s=this.info.moves[this.info.moves.length-2],i=this.info .moves[this.info.moves.length-1],o=i.x-this.info.x,a=i.y-this.info.y,l=0;return s&&(r=i.x-s.x,l=i.y-s.y),C.fire(e,"track",{state:this.info.state,x:t.clientX,y:t .clientY,dx:o,dy:a,ddx:r,ddy:l,sourceEvent:t,preventer:n,hover:function(){return C.deepTargetFind(t.clientX,t.clientY)}})}}),C.register({name:"tap",deps:["mouse down","click","touchstart","touchend"],flow:{start:["mousedown","touchstart"],en d:["click","touchend"]},emits:["tap"],info:{x:NaN,y:NaN,prevent:!1},reset:functi on(){this.info.x=NaN,this.info.y=NaN,this.info.prevent=!1},save:function(e){this .info.x=e.clientX,this.info.y=e.clientY},mousedown:function(e){n(e)&&this.save(e )},click:function(e){n(e)&&this.forward(e)},touchstart:function(e){this.save(e.c hangedTouches[0],e)},touchend:function(e){this.forward(e.changedTouches[0],e)},f orward:function(e,t){var n=Math.abs(e.clientX-this.info.x),s=Math.abs(e.clientY- this.info.y),i=C.findOriginalTarget(e);(isNaN(n)||isNaN(s)||n<=f&&s<=f||r(e))&&( this.info.prevent||C.fire(i,"tap",{x:e.clientX,y:e.clientY,sourceEvent:e,prevent er:t}))}});var E={x:"pan-x",y:"pan-y",none:"none",all:"auto"};Polymer.Base._addF eature({_setupGestures:function(){this.__polymerGestures=null},_listen:function( e,t,n){C.gestures[t]?C.add(e,t,n):e.addEventListener(t,n)},_unlisten:function(e, t,n){C.gestures[t]?C.remove(e,t,n):e.removeEventListener(t,n)},setScrollDirectio n:function(e,t){t=t||this,C.setTouchAction(t,E[e]||"auto")}}),Polymer.Gestures=C }(),function(){"use strict";if(Polymer.Base._addFeature({$$:function(e){return P olymer.dom(this.root).querySelector(e)},toggleClass:function(e,t,n){n=n||this,1= =arguments.length&&(t=!n.classList.contains(e)),t?Polymer.dom(n).classList.add(e ):Polymer.dom(n).classList.remove(e)},toggleAttribute:function(e,t,n){n=n||this, 1==arguments.length&&(t=!n.hasAttribute(e)),t?Polymer.dom(n).setAttribute(e,""): Polymer.dom(n).removeAttribute(e)},classFollows:function(e,t,n){n&&Polymer.dom(n ).classList.remove(e),t&&Polymer.dom(t).classList.add(e)},attributeFollows:funct ion(e,t,n){n&&Polymer.dom(n).removeAttribute(e),t&&Polymer.dom(t).setAttribute(e ,"")},getEffectiveChildNodes:function(){return Polymer.dom(this).getEffectiveChi ldNodes()},getEffectiveChildren:function(){var e=Polymer.dom(this).getEffectiveC hildNodes();return e.filter(function(e){return e.nodeType===Node.ELEMENT_NODE})} ,getEffectiveTextContent:function(){for(var e,t=this.getEffectiveChildNodes(),n= [],r=0;e=t[r];r++)e.nodeType!==Node.COMMENT_NODE&&n.push(Polymer.dom(e).textCont ent);return n.join("")},queryEffectiveChildren:function(e){var t=Polymer.dom(thi s).queryDistributedElements(e);return t&&t[0]},queryAllEffectiveChildren:functio n(e){return Polymer.dom(this).queryDistributedElements(e)},getContentChildNodes: function(e){var t=Polymer.dom(this.root).querySelector(e||"content");return t?Po lymer.dom(t).getDistributedNodes():[]},getContentChildren:function(e){return thi s.getContentChildNodes(e).filter(function(e){return e.nodeType===Node.ELEMENT_NO DE})},fire:function(e,t,n){n=n||Polymer.nob;var r=n.node||this;t=null===t||void 0===t?{}:t;var s=void 0===n.bubbles||n.bubbles,i=Boolean(n.cancelable),o=n._useC ache,a=this._getEvent(e,s,i,o);return a.detail=t,o&&(this.__eventCache[e]=null), r.dispatchEvent(a),o&&(this.__eventCache[e]=a),a},__eventCache:{},_getEvent:func tion(e,t,n,r){var s=r&&this.__eventCache[e];return s&&s.bubbles==t&&s.cancelable ==n||(s=new Event(e,{bubbles:Boolean(t),cancelable:n})),s},async:function(e,t){v ar n=this;return Polymer.Async.run(function(){e.call(n)},t)},cancelAsync:functio n(e){Polymer.Async.cancel(e)},arrayDelete:function(e,t){var n;if(Array.isArray(e )){if(n=e.indexOf(t),n>=0)return e.splice(n,1)}else{var r=this._get(e);if(n=r.in dexOf(t),n>=0)return this.splice(e,n,1)}},transform:function(e,t){t=t||this,t.st yle.webkitTransform=e,t.style.transform=e},translate3d:function(e,t,n,r){r=r||th is,this.transform("translate3d("+e+","+t+","+n+")",r)},importHref:function(e,t,n ,r){var s=document.createElement("link");s.rel="import",s.href=e;var i=Polymer.B ase.importHref.imported=Polymer.Base.importHref.imported||{},o=i[s.href],a=o||s, l=this;if(t){var c=function(e){return e.target.__firedLoad=!0,e.target.removeEve ntListener("load",c),t.call(l,e)};a.addEventListener("load",c)}if(n){var h=funct ion(e){return e.target.__firedError=!0,e.target.removeEventListener("error",h),n .call(l,e)};a.addEventListener("error",h)}return o?(o.__firedLoad&&o.dispatchEve nt(new Event("load")),o.__firedError&&o.dispatchEvent(new Event("error"))):(i[s. href]=s,r=Boolean(r),r&&s.setAttribute("async",""),document.head.appendChild(s)) ,a},create:function(e,t){var n=document.createElement(e);if(t)for(var r in t)n[r ]=t[r];return n},isLightDescendant:function(e){return this!==e&&this.contains(e) &&Polymer.dom(this).getOwnerRoot()===Polymer.dom(e).getOwnerRoot()},isLocalDesce ndant:function(e){return this.root===Polymer.dom(e).getOwnerRoot()}}),!Polymer.S ettings.useNativeCustomElements){var e=Polymer.Base.importHref;Polymer.Base.impo rtHref=function(t,n,r,s){CustomElements.ready=!1;var i=function(e){if(CustomElem ents.upgradeDocumentTree(document),CustomElements.ready=!0,n)return n.call(this, e)};return e.call(this,t,i,r,s)}}}(),Polymer.Bind={prepareModel:function(e){Poly mer.Base.mixin(e,this._modelApi)},_modelApi:{_notifyChange:function(e,t,n){n=voi d 0===n?this[e]:n,t=t||Polymer.CaseMap.camelToDashCase(e)+"-changed",this.fire(t ,{value:n},{bubbles:!1,cancelable:!1,_useCache:!0})},_propertySetter:function(e, t,n,r){var s=this.__data__[e];return s===t||s!==s&&t!==t||(this.__data__[e]=t,"o bject"==typeof t&&this._clearPath(e),this._propertyChanged&&this._propertyChange d(e,t,s),n&&this._effectEffects(e,t,n,s,r)),s},__setProperty:function(e,t,n,r){r =r||this;var s=r._propertyEffects&&r._propertyEffects[e];s?r._propertySetter(e,t ,s,n):r[e]!==t&&(r[e]=t)},_effectEffects:function(e,t,n,r,s){for(var i,o=0,a=n.l ength;o<a&&(i=n[o]);o++)i.fn.call(this,e,this[e],i.effect,r,s)},_clearPath:funct ion(e){for(var t in this.__data__)Polymer.Path.isDescendant(e,t)&&(this.__data__ [t]=void 0)}},ensurePropertyEffects:function(e,t){e._propertyEffects||(e._proper tyEffects={});var n=e._propertyEffects[t];return n||(n=e._propertyEffects[t]=[]) ,n},addPropertyEffect:function(e,t,n,r){var s=this.ensurePropertyEffects(e,t),i= {kind:n,effect:r,fn:Polymer.Bind["_"+n+"Effect"]};return s.push(i),i},createBind ings:function(e){var t=e._propertyEffects;if(t)for(var n in t){var r=t[n];r.sort (this._sortPropertyEffects),this._createAccessors(e,n,r)}},_sortPropertyEffects: function(){var e={compute:0,annotation:1,annotatedComputation:2,reflect:3,notify :4,observer:5,complexObserver:6,function:7};return function(t,n){return e[t.kind ]-e[n.kind]}}(),_createAccessors:function(e,t,n){var r={get:function(){return th is.__data__[t]}},s=function(e){this._propertySetter(t,e,n)},i=e.getPropertyInfo& &e.getPropertyInfo(t);i&&i.readOnly?i.computed||(e["_set"+this.upper(t)]=s):r.se t=s,Object.defineProperty(e,t,r)},upper:function(e){return e[0].toUpperCase()+e. substring(1)},_addAnnotatedListener:function(e,t,n,r,s,i){e._bindListeners||(e._ bindListeners=[]);var o=this._notedListenerFactory(n,r,Polymer.Path.isDeep(r),i) ,a=s||Polymer.CaseMap.camelToDashCase(n)+"-changed";e._bindListeners.push({index :t,property:n,path:r,changedFn:o,event:a})},_isEventBogus:function(e,t){return e .path&&e.path[0]!==t},_notedListenerFactory:function(e,t,n,r){return function(s, i,o){if(o){var a=Polymer.Path.translate(e,t,o);this._notifyPath(a,i)}else i=s[e] ,r&&(i=!i),n?this.__data__[t]!=i&&this.set(t,i):this[t]=i}},prepareInstance:func tion(e){e.__data__=Object.create(null)},setupBindListeners:function(e){for(var t ,n=e._bindListeners,r=0,s=n.length;r<s&&(t=n[r]);r++){var i=e._nodes[t.index];th is._addNotifyListener(i,e,t.event,t.changedFn)}},_addNotifyListener:function(e,t ,n,r){e.addEventListener(n,function(e){return t._notifyListener(r,e)})}},Polymer .Base.extend(Polymer.Bind,{_shouldAddListener:function(e){return e.name&&"attrib ute"!=e.kind&&"text"!=e.kind&&!e.isCompound&&"{"===e.parts[0].mode},_annotationE ffect:function(e,t,n){e!=n.value&&(t=this._get(n.value),this.__data__[n.value]=t ),this._applyEffectValue(n,t)},_reflectEffect:function(e,t,n){this.reflectProper tyToAttribute(e,n.attribute,t)},_notifyEffect:function(e,t,n,r,s){s||this._notif yChange(e,n.event,t)},_functionEffect:function(e,t,n,r,s){n.call(this,e,t,r,s)}, _observerEffect:function(e,t,n,r){var s=this[n.method];s?s.call(this,t,r):this._ warn(this._logf("_observerEffect","observer method `"+n.method+"` not defined")) },_complexObserverEffect:function(e,t,n){var r=this[n.method];if(r){var s=Polyme r.Bind._marshalArgs(this.__data__,n,e,t);s&&r.apply(this,s)}else n.dynamicFn||th is._warn(this._logf("_complexObserverEffect","observer method `"+n.method+"` not defined"))},_computeEffect:function(e,t,n){var r=this[n.method];if(r){var s=Pol ymer.Bind._marshalArgs(this.__data__,n,e,t);if(s){var i=r.apply(this,s);this.__s etProperty(n.name,i)}}else n.dynamicFn||this._warn(this._logf("_computeEffect"," compute method `"+n.method+"` not defined"))},_annotatedComputationEffect:functi on(e,t,n){var r=this._rootDataHost||this,s=r[n.method];if(s){var i=Polymer.Bind. _marshalArgs(this.__data__,n,e,t);if(i){var o=s.apply(r,i);this._applyEffectValu e(n,o)}}else n.dynamicFn||r._warn(r._logf("_annotatedComputationEffect","compute method `"+n.method+"` not defined"))},_marshalArgs:function(e,t,n,r){for(var s= [],i=t.args,o=i.length>1||t.dynamicFn,a=0,l=i.length;a<l;a++){var c,h=i[a],u=h.n ame;if(h.literal?c=h.value:n===u?c=r:(c=e[u],void 0===c&&h.structured&&(c=Polyme r.Base._get(u,e))),o&&void 0===c)return;if(h.wildcard){var f=Polymer.Path.isAnce stor(n,u);s[a]={path:f?n:u,value:f?r:c,base:c}}else s[a]=c}return s}}),Polymer.B ase._addFeature({_addPropertyEffect:function(e,t,n){var r=Polymer.Bind.addProper tyEffect(this,e,t,n);r.pathFn=this["_"+r.kind+"PathEffect"]},_prepEffects:functi on(){Polymer.Bind.prepareModel(this),this._addAnnotationEffects(this._notes)},_p repBindings:function(){Polymer.Bind.createBindings(this)},_addPropertyEffects:fu nction(e){if(e)for(var t in e){var n=e[t];if(n.observer&&this._addObserverEffect (t,n.observer),n.computed&&(n.readOnly=!0,this._addComputedEffect(t,n.computed)) ,n.notify&&this._addPropertyEffect(t,"notify",{event:Polymer.CaseMap.camelToDash Case(t)+"-changed"}),n.reflectToAttribute){var r=Polymer.CaseMap.camelToDashCase (t);"-"===r[0]?this._warn(this._logf("_addPropertyEffects","Property "+t+" canno t be reflected to attribute "+r+' because "-" is not a valid starting attribute name. Use a lowercase first letter for the property instead.')):this._addPropert yEffect(t,"reflect",{attribute:r})}n.readOnly&&Polymer.Bind.ensurePropertyEffect s(this,t)}},_addComputedEffect:function(e,t){for(var n,r=this._parseMethod(t),s= r.dynamicFn,i=0;i<r.args.length&&(n=r.args[i]);i++)this._addPropertyEffect(n.mod el,"compute",{method:r.method,args:r.args,trigger:n,name:e,dynamicFn:s});s&&this ._addPropertyEffect(r.method,"compute",{method:r.method,args:r.args,trigger:null ,name:e,dynamicFn:s})},_addObserverEffect:function(e,t){this._addPropertyEffect( e,"observer",{method:t,property:e})},_addComplexObserverEffects:function(e){if(e )for(var t,n=0;n<e.length&&(t=e[n]);n++)this._addComplexObserverEffect(t)},_addC omplexObserverEffect:function(e){var t=this._parseMethod(e);if(!t)throw new Erro r("Malformed observer expression '"+e+"'");for(var n,r=t.dynamicFn,s=0;s<t.args. length&&(n=t.args[s]);s++)this._addPropertyEffect(n.model,"complexObserver",{met hod:t.method,args:t.args,trigger:n,dynamicFn:r});r&&this._addPropertyEffect(t.me thod,"complexObserver",{method:t.method,args:t.args,trigger:null,dynamicFn:r})}, _addAnnotationEffects:function(e){for(var t,n=0;n<e.length&&(t=e[n]);n++)for(var r,s=t.bindings,i=0;i<s.length&&(r=s[i]);i++)this._addAnnotationEffect(r,n)},_ad dAnnotationEffect:function(e,t){Polymer.Bind._shouldAddListener(e)&&Polymer.Bind ._addAnnotatedListener(this,t,e.name,e.parts[0].value,e.parts[0].event,e.parts[0 ].negate);for(var n=0;n<e.parts.length;n++){var r=e.parts[n];r.signature?this._a ddAnnotatedComputationEffect(e,r,t):r.literal||("attribute"===e.kind&&"-"===e.na me[0]?this._warn(this._logf("_addAnnotationEffect","Cannot set attribute "+e.nam e+' because "-" is not a valid attribute starting character')):this._addProperty Effect(r.model,"annotation",{kind:e.kind,index:t,name:e.name,propertyName:e.prop ertyName,value:r.value,isCompound:e.isCompound,compoundIndex:r.compoundIndex,eve nt:r.event,customEvent:r.customEvent,negate:r.negate}))}},_addAnnotatedComputati onEffect:function(e,t,n){var r=t.signature;if(r.static)this.__addAnnotatedComput ationEffect("__static__",n,e,t,null);else{for(var s,i=0;i<r.args.length&&(s=r.ar gs[i]);i++)s.literal||this.__addAnnotatedComputationEffect(s.model,n,e,t,s);r.dy namicFn&&this.__addAnnotatedComputationEffect(r.method,n,e,t,null)}},__addAnnota tedComputationEffect:function(e,t,n,r,s){this._addPropertyEffect(e,"annotatedCom putation",{index:t,isCompound:n.isCompound,compoundIndex:r.compoundIndex,kind:n. kind,name:n.name,negate:r.negate,method:r.signature.method,args:r.signature.args ,trigger:s,dynamicFn:r.signature.dynamicFn})},_parseMethod:function(e){var t=e.m atch(/([^\s]+?)\(([\s\S]*)\)/);if(t){var n={method:t[1],static:!0};if(this.getPr opertyInfo(n.method)!==Polymer.nob&&(n.static=!1,n.dynamicFn=!0),t[2].trim()){va r r=t[2].replace(/\\,/g,"&comma;").split(",");return this._parseArgs(r,n)}return n.args=Polymer.nar,n}},_parseArgs:function(e,t){return t.args=e.map(function(e) {var n=this._parseArg(e);return n.literal||(t.static=!1),n},this),t},_parseArg:f unction(e){var t=e.trim().replace(/&comma;/g,",").replace(/\\(.)/g,"$1"),n={name :t},r=t[0];switch("-"===r&&(r=t[1]),r>="0"&&r<="9"&&(r="#"),r){case"'":case'"':n .value=t.slice(1,-1),n.literal=!0;break;case"#":n.value=Number(t),n.literal=!0}r eturn n.literal||(n.model=Polymer.Path.root(t),n.structured=Polymer.Path.isDeep( t),n.structured&&(n.wildcard=".*"==t.slice(-2),n.wildcard&&(n.name=t.slice(0,-2) ))),n},_marshalInstanceEffects:function(){Polymer.Bind.prepareInstance(this),thi s._bindListeners&&Polymer.Bind.setupBindListeners(this)},_applyEffectValue:funct ion(e,t){var n=this._nodes[e.index],r=e.name;if(t=this._computeFinalAnnotationVa lue(n,r,t,e),"attribute"==e.kind)this.serializeValueToAttribute(t,r,n);else{var s=n._propertyInfo&&n._propertyInfo[r];if(s&&s.readOnly)return;this.__setProperty (r,t,!1,n)}},_computeFinalAnnotationValue:function(e,t,n,r){if(r.negate&&(n=!n), r.isCompound){var s=e.__compoundStorage__[t];s[r.compoundIndex]=n,n=s.join("")}r eturn"attribute"!==r.kind&&("className"===t&&(n=this._scopeElementClass(e,n)),(" textContent"===t||"input"==e.localName&&"value"==t)&&(n=void 0==n?"":n)),n},_exe cuteStaticEffects:function(){this._propertyEffects&&this._propertyEffects.__stat ic__&&this._effectEffects("__static__",null,this._propertyEffects.__static__)}}) ,function(){var e=Polymer.Settings.usePolyfillProto;Polymer.Base._addFeature({_s etupConfigure:function(e){if(this._config={},this._handlers=[],this._aboveConfig =null,e)for(var t in e)void 0!==e[t]&&(this._config[t]=e[t])},_marshalAttributes :function(){this._takeAttributesToModel(this._config)},_attributeChangedImpl:fun ction(e){var t=this._clientsReadied?this:this._config;this._setAttributeToProper ty(t,e)},_configValue:function(e,t){var n=this._propertyInfo[e];n&&n.readOnly||( this._config[e]=t)},_beforeClientsReady:function(){this._configure()},_configure :function(){this._configureAnnotationReferences(),this._configureInstancePropert ies(),this._aboveConfig=this.mixin({},this._config);for(var e={},t=0;t<this.beha viors.length;t++)this._configureProperties(this.behaviors[t].properties,e);this. _configureProperties(this.properties,e),this.mixin(e,this._aboveConfig),this._co nfig=e,this._clients&&this._clients.length&&this._distributeConfig(this._config) },_configureInstanceProperties:function(){for(var t in this._propertyEffects)!e& &this.hasOwnProperty(t)&&(this._configValue(t,this[t]),
3 delete this[t])},_configureProperties:function(e,t){for(var n in e){var r=e[n];i f(void 0!==r.value){var s=r.value;"function"==typeof s&&(s=s.call(this,this._con fig)),t[n]=s}}},_distributeConfig:function(e){var t=this._propertyEffects;if(t)f or(var n in e){var r=t[n];if(r)for(var s,i=0,o=r.length;i<o&&(s=r[i]);i++)if("an notation"===s.kind){var a=this._nodes[s.effect.index],l=s.effect.propertyName,c= "attribute"==s.effect.kind,h=a._propertyEffects&&a._propertyEffects[l];if(a._con figValue&&(h||!c)){var u=n===s.effect.value?e[n]:this._get(s.effect.value,e);u=t his._computeFinalAnnotationValue(a,l,u,s.effect),c&&(u=a.deserialize(this.serial ize(u),a._propertyInfo[l].type)),a._configValue(l,u)}}}},_afterClientsReady:func tion(){this._executeStaticEffects(),this._applyConfig(this._config,this._aboveCo nfig),this._flushHandlers()},_applyConfig:function(e,t){for(var n in e)void 0=== this[n]&&this.__setProperty(n,e[n],n in t)},_notifyListener:function(e,t){if(!Po lymer.Bind._isEventBogus(t,t.target)){var n,r;if(t.detail&&(n=t.detail.value,r=t .detail.path),this._clientsReadied)return e.call(this,t.target,n,r);this._queueH andler([e,t.target,n,r])}},_queueHandler:function(e){this._handlers.push(e)},_fl ushHandlers:function(){for(var e,t=this._handlers,n=0,r=t.length;n<r&&(e=t[n]);n ++)e[0].call(this,e[1],e[2],e[3]);this._handlers=[]}})}(),function(){"use strict ";var e=Polymer.Path;Polymer.Base._addFeature({notifyPath:function(e,t,n){var r= {},s=this._get(e,this,r);1===arguments.length&&(t=s),r.path&&this._notifyPath(r. path,t,n)},_notifyPath:function(e,t,n){var r=this._propertySetter(e,t);if(r!==t& &(r===r||t===t))return this._pathEffector(e,t),n||this._notifyPathUp(e,t),!0},_g etPathParts:function(e){if(Array.isArray(e)){for(var t=[],n=0;n<e.length;n++)for (var r=e[n].toString().split("."),s=0;s<r.length;s++)t.push(r[s]);return t}retur n e.toString().split(".")},set:function(e,t,n){var r,s=n||this,i=this._getPathPa rts(e),o=i[i.length-1];if(i.length>1){for(var a=0;a<i.length-1;a++){var l=i[a];i f(r&&"#"==l[0]?s=Polymer.Collection.get(r).getItem(l):(s=s[l],r&&parseInt(l,10)= =l&&(i[a]=Polymer.Collection.get(r).getKey(s))),!s)return;r=Array.isArray(s)?s:n ull}if(r){var c,h,u=Polymer.Collection.get(r);"#"==o[0]?(h=o,c=u.getItem(h),o=r. indexOf(c),u.setItem(h,t)):parseInt(o,10)==o&&(c=s[o],h=u.getKey(c),i[a]=h,u.set Item(h,t))}s[o]=t,n||this._notifyPath(i.join("."),t)}else s[e]=t},get:function(e ,t){return this._get(e,t)},_get:function(e,t,n){for(var r,s=t||this,i=this._getP athParts(e),o=0;o<i.length;o++){if(!s)return;var a=i[o];r&&"#"==a[0]?s=Polymer.C ollection.get(r).getItem(a):(s=s[a],n&&r&&parseInt(a,10)==a&&(i[o]=Polymer.Colle ction.get(r).getKey(s))),r=Array.isArray(s)?s:null}return n&&(n.path=i.join(".") ),s},_pathEffector:function(t,n){var r=e.root(t),s=this._propertyEffects&&this._ propertyEffects[r];if(s)for(var i,o=0;o<s.length&&(i=s[o]);o++){var a=i.pathFn;a &&a.call(this,t,n,i.effect)}this._boundPaths&&this._notifyBoundPaths(t,n)},_anno tationPathEffect:function(t,n,r){if(e.matches(r.value,!1,t))Polymer.Bind._annota tionEffect.call(this,t,n,r);else if(!r.negate&&e.isDescendant(r.value,t)){var s= this._nodes[r.index];if(s&&s._notifyPath){var i=e.translate(r.value,r.name,t);s. _notifyPath(i,n,!0)}}},_complexObserverPathEffect:function(t,n,r){e.matches(r.tr igger.name,r.trigger.wildcard,t)&&Polymer.Bind._complexObserverEffect.call(this, t,n,r)},_computePathEffect:function(t,n,r){e.matches(r.trigger.name,r.trigger.wi ldcard,t)&&Polymer.Bind._computeEffect.call(this,t,n,r)},_annotatedComputationPa thEffect:function(t,n,r){e.matches(r.trigger.name,r.trigger.wildcard,t)&&Polymer .Bind._annotatedComputationEffect.call(this,t,n,r)},linkPaths:function(e,t){this ._boundPaths=this._boundPaths||{},t?this._boundPaths[e]=t:this.unlinkPaths(e)},u nlinkPaths:function(e){this._boundPaths&&delete this._boundPaths[e]},_notifyBoun dPaths:function(t,n){for(var r in this._boundPaths){var s=this._boundPaths[r];e. isDescendant(r,t)?this._notifyPath(e.translate(r,s,t),n):e.isDescendant(s,t)&&th is._notifyPath(e.translate(s,r,t),n)}},_notifyPathUp:function(t,n){var r=e.root( t),s=Polymer.CaseMap.camelToDashCase(r),i=s+this._EVENT_CHANGED;this.fire(i,{pat h:t,value:n},{bubbles:!1,_useCache:!0})},_EVENT_CHANGED:"-changed",notifySplices :function(e,t){var n={},r=this._get(e,this,n);this._notifySplices(r,n.path,t)},_ notifySplices:function(e,t,n){var r={keySplices:Polymer.Collection.applySplices( e,n),indexSplices:n},s=t+".splices";this._notifyPath(s,r),this._notifyPath(t+".l ength",e.length),this.__data__[s]={keySplices:null,indexSplices:null}},_notifySp lice:function(e,t,n,r,s){this._notifySplices(e,t,[{index:n,addedCount:r,removed: s,object:e,type:"splice"}])},push:function(e){var t={},n=this._get(e,this,t),r=A rray.prototype.slice.call(arguments,1),s=n.length,i=n.push.apply(n,r);return r.l ength&&this._notifySplice(n,t.path,s,r.length,[]),i},pop:function(e){var t={},n= this._get(e,this,t),r=Boolean(n.length),s=Array.prototype.slice.call(arguments,1 ),i=n.pop.apply(n,s);return r&&this._notifySplice(n,t.path,n.length,0,[i]),i},sp lice:function(e,t){var n={},r=this._get(e,this,n);t=t<0?r.length-Math.floor(-t): Math.floor(t),t||(t=0);var s=Array.prototype.slice.call(arguments,1),i=r.splice. apply(r,s),o=Math.max(s.length-2,0);return(o||i.length)&&this._notifySplice(r,n. path,t,o,i),i},shift:function(e){var t={},n=this._get(e,this,t),r=Boolean(n.leng th),s=Array.prototype.slice.call(arguments,1),i=n.shift.apply(n,s);return r&&thi s._notifySplice(n,t.path,0,0,[i]),i},unshift:function(e){var t={},n=this._get(e, this,t),r=Array.prototype.slice.call(arguments,1),s=n.unshift.apply(n,r);return r.length&&this._notifySplice(n,t.path,0,r.length,[]),s},prepareModelNotifyPath:f unction(e){this.mixin(e,{fire:Polymer.Base.fire,_getEvent:Polymer.Base._getEvent ,__eventCache:Polymer.Base.__eventCache,notifyPath:Polymer.Base.notifyPath,_get: Polymer.Base._get,_EVENT_CHANGED:Polymer.Base._EVENT_CHANGED,_notifyPath:Polymer .Base._notifyPath,_notifyPathUp:Polymer.Base._notifyPathUp,_pathEffector:Polymer .Base._pathEffector,_annotationPathEffect:Polymer.Base._annotationPathEffect,_co mplexObserverPathEffect:Polymer.Base._complexObserverPathEffect,_annotatedComput ationPathEffect:Polymer.Base._annotatedComputationPathEffect,_computePathEffect: Polymer.Base._computePathEffect,_notifyBoundPaths:Polymer.Base._notifyBoundPaths ,_getPathParts:Polymer.Base._getPathParts})}})}(),Polymer.Base._addFeature({reso lveUrl:function(e){var t=Polymer.DomModule.import(this.is),n="";if(t){var r=t.ge tAttribute("assetpath")||"";n=Polymer.ResolveUrl.resolveUrl(r,t.ownerDocument.ba seURI)}return Polymer.ResolveUrl.resolveUrl(e,n)}}),Polymer.CssParse=function(){ return{parse:function(e){return e=this._clean(e),this._parseCss(this._lex(e),e)} ,_clean:function(e){return e.replace(this._rx.comments,"").replace(this._rx.port ,"")},_lex:function(e){for(var t={start:0,end:e.length},n=t,r=0,s=e.length;r<s;r ++)switch(e[r]){case this.OPEN_BRACE:n.rules||(n.rules=[]);var i=n,o=i.rules[i.r ules.length-1];n={start:r+1,parent:i,previous:o},i.rules.push(n);break;case this .CLOSE_BRACE:n.end=r+1,n=n.parent||t}return t},_parseCss:function(e,t){var n=t.s ubstring(e.start,e.end-1);if(e.parsedCssText=e.cssText=n.trim(),e.parent){var r= e.previous?e.previous.end:e.parent.start;n=t.substring(r,e.start-1),n=this._expa ndUnicodeEscapes(n),n=n.replace(this._rx.multipleSpaces," "),n=n.substring(n.las tIndexOf(";")+1);var s=e.parsedSelector=e.selector=n.trim();e.atRule=0===s.index Of(this.AT_START),e.atRule?0===s.indexOf(this.MEDIA_START)?e.type=this.types.MED IA_RULE:s.match(this._rx.keyframesRule)&&(e.type=this.types.KEYFRAMES_RULE,e.key framesName=e.selector.split(this._rx.multipleSpaces).pop()):0===s.indexOf(this.V AR_START)?e.type=this.types.MIXIN_RULE:e.type=this.types.STYLE_RULE}var i=e.rule s;if(i)for(var o,a=0,l=i.length;a<l&&(o=i[a]);a++)this._parseCss(o,t);return e}, _expandUnicodeEscapes:function(e){return e.replace(/\\([0-9a-f]{1,6})\s/gi,funct ion(){for(var e=arguments[1],t=6-e.length;t--;)e="0"+e;return"\\"+e})},stringify :function(e,t,n){n=n||"";var r="";if(e.cssText||e.rules){var s=e.rules;if(s&&!th is._hasMixinRules(s))for(var i,o=0,a=s.length;o<a&&(i=s[o]);o++)r=this.stringify (i,t,r);else r=t?e.cssText:this.removeCustomProps(e.cssText),r=r.trim(),r&&(r=" "+r+"\n")}return r&&(e.selector&&(n+=e.selector+" "+this.OPEN_BRACE+"\n"),n+=r, e.selector&&(n+=this.CLOSE_BRACE+"\n\n")),n},_hasMixinRules:function(e){return 0 ===e[0].selector.indexOf(this.VAR_START)},removeCustomProps:function(e){return e =this.removeCustomPropAssignment(e),this.removeCustomPropApply(e)},removeCustomP ropAssignment:function(e){return e.replace(this._rx.customProp,"").replace(this. _rx.mixinProp,"")},removeCustomPropApply:function(e){return e.replace(this._rx.m ixinApply,"").replace(this._rx.varApply,"")},types:{STYLE_RULE:1,KEYFRAMES_RULE: 7,MEDIA_RULE:4,MIXIN_RULE:1e3},OPEN_BRACE:"{",CLOSE_BRACE:"}",_rx:{comments:/\/\ *[^*]*\*+([^\/*][^*]*\*+)*\//gim,port:/@import[^;]*;/gim,customProp:/(?:^[^;\-\s }]+)?--[^;{}]*?:[^{};]*?(?:[;\n]|$)/gim,mixinProp:/(?:^[^;\-\s}]+)?--[^;{}]*?:[^ {};]*?{[^}]*?}(?:[;\n]|$)?/gim,mixinApply:/@apply\s*\(?[^);]*\)?\s*(?:[;\n]|$)?/ gim,varApply:/[^;:]*?:[^;]*?var\([^;]*\)(?:[;\n]|$)?/gim,keyframesRule:/^@[^\s]* keyframes/,multipleSpaces:/\s+/g},VAR_START:"--",MEDIA_START:"@media",AT_START:" @"}}(),Polymer.StyleUtil=function(){var e=Polymer.Settings;return{NATIVE_VARIABL ES:Polymer.Settings.useNativeCSSProperties,MODULE_STYLES_SELECTOR:"style, link[r el=import][type~=css], template",INCLUDE_ATTR:"include",toCssText:function(e,t){ return"string"==typeof e&&(e=this.parser.parse(e)),t&&this.forEachRule(e,t),this .parser.stringify(e,this.NATIVE_VARIABLES)},forRulesInStyles:function(e,t,n){if( e)for(var r,s=0,i=e.length;s<i&&(r=e[s]);s++)this.forEachRuleInStyle(r,t,n)},for ActiveRulesInStyles:function(e,t,n){if(e)for(var r,s=0,i=e.length;s<i&&(r=e[s]); s++)this.forEachRuleInStyle(r,t,n,!0)},rulesForStyle:function(e){return!e.__cssR ules&&e.textContent&&(e.__cssRules=this.parser.parse(e.textContent)),e.__cssRule s},isKeyframesSelector:function(e){return e.parent&&e.parent.type===this.ruleTyp es.KEYFRAMES_RULE},forEachRuleInStyle:function(e,t,n,r){var s,i,o=this.rulesForS tyle(e);t&&(s=function(n){t(n,e)}),n&&(i=function(t){n(t,e)}),this.forEachRule(o ,s,i,r)},forEachRule:function(e,t,n,r){if(e){var s=!1;if(r&&e.type===this.ruleTy pes.MEDIA_RULE){var i=e.selector.match(this.rx.MEDIA_MATCH);i&&(window.matchMedi a(i[1]).matches||(s=!0))}e.type===this.ruleTypes.STYLE_RULE?t(e):n&&e.type===thi s.ruleTypes.KEYFRAMES_RULE?n(e):e.type===this.ruleTypes.MIXIN_RULE&&(s=!0);var o =e.rules;if(o&&!s)for(var a,l=0,c=o.length;l<c&&(a=o[l]);l++)this.forEachRule(a, t,n,r)}},applyCss:function(e,t,n,r){var s=this.createScopeStyle(e,t);return this .applyStyle(s,n,r)},applyStyle:function(e,t,n){t=t||document.head;var r=n&&n.nex tSibling||t.firstChild;return this.__lastHeadApplyNode=e,t.insertBefore(e,r)},cr eateScopeStyle:function(e,t){var n=document.createElement("style");return t&&n.s etAttribute("scope",t),n.textContent=e,n},__lastHeadApplyNode:null,applyStylePla ceHolder:function(e){var t=document.createComment(" Shady DOM styles for "+e+" " ),n=this.__lastHeadApplyNode?this.__lastHeadApplyNode.nextSibling:null,r=documen t.head;return r.insertBefore(t,n||r.firstChild),this.__lastHeadApplyNode=t,t},cs sFromModules:function(e,t){for(var n=e.trim().split(" "),r="",s=0;s<n.length;s++ )r+=this.cssFromModule(n[s],t);return r},cssFromModule:function(e,t){var n=Polym er.DomModule.import(e);return n&&!n._cssText&&(n._cssText=this.cssFromElement(n) ),!n&&t&&console.warn("Could not find style data in module named",e),n&&n._cssTe xt||""},cssFromElement:function(e){for(var t,n="",r=e.content||e,s=Polymer.TreeA pi.arrayCopy(r.querySelectorAll(this.MODULE_STYLES_SELECTOR)),i=0;i<s.length;i++ )if(t=s[i],"template"===t.localName)t.hasAttribute("preserve-content")||(n+=this .cssFromElement(t));else if("style"===t.localName){var o=t.getAttribute(this.INC LUDE_ATTR);o&&(n+=this.cssFromModules(o,!0)),t=t.__appliedElement||t,t.parentNod e.removeChild(t),n+=this.resolveCss(t.textContent,e.ownerDocument)}else t.import &&t.import.body&&(n+=this.resolveCss(t.import.body.textContent,t.import));return n},isTargetedBuild:function(t){return e.useNativeShadow?"shadow"===t:"shady"=== t},cssBuildTypeForModule:function(e){var t=Polymer.DomModule.import(e);if(t)retu rn this.getCssBuildType(t)},getCssBuildType:function(e){return e.getAttribute("c ss-build")},_findMatchingParen:function(e,t){for(var n=0,r=t,s=e.length;r<s;r++) switch(e[r]){case"(":n++;break;case")":if(0===--n)return r}return-1},processVari ableAndFallback:function(e,t){var n=e.indexOf("var(");if(n===-1)return t(e,"","" ,"");var r=this._findMatchingParen(e,n+3),s=e.substring(n+4,r),i=e.substring(0,n ),o=this.processVariableAndFallback(e.substring(r+1),t),a=s.indexOf(",");if(a=== -1)return t(i,s.trim(),"",o);var l=s.substring(0,a).trim(),c=s.substring(a+1).tr im();return t(i,l,c,o)},rx:{VAR_ASSIGN:/(?:^|[;\s{]\s*)(--[\w-]*?)\s*:\s*(?:([^; {]*)|{([^}]*)})(?:(?=[;\s}])|$)/gi,MIXIN_MATCH:/(?:^|\W+)@apply\s*\(?([^);\n]*)\ )?/gi,VAR_CONSUMED:/(--[\w-]+)\s*([:,;)]|$)/gi,ANIMATION_MATCH:/(animation\s*:)| (animation-name\s*:)/,MEDIA_MATCH:/@media[^(]*(\([^)]*\))/,IS_VAR:/^--/,BRACKETE D:/\{[^}]*\}/g,HOST_PREFIX:"(?:^|[^.#[:])",HOST_SUFFIX:"($|[.:[\\s>+~])"},resolv eCss:Polymer.ResolveUrl.resolveCss,parser:Polymer.CssParse,ruleTypes:Polymer.Css Parse.types}}(),Polymer.StyleTransformer=function(){var e=Polymer.StyleUtil,t=Po lymer.Settings,n={dom:function(e,t,n,r){this._transformDom(e,t||"",n,r)},_transf ormDom:function(e,t,n,r){e.setAttribute&&this.element(e,t,n,r);for(var s=Polymer .dom(e).childNodes,i=0;i<s.length;i++)this._transformDom(s[i],t,n,r)},element:fu nction(e,t,n,s){if(n)s?e.removeAttribute(r):e.setAttribute(r,t);else if(t)if(e.c lassList)s?(e.classList.remove(r),e.classList.remove(t)):(e.classList.add(r),e.c lassList.add(t));else if(e.getAttribute){var i=e.getAttribute(g);s?i&&e.setAttri bute(g,i.replace(r,"").replace(t,"")):e.setAttribute(g,(i?i+" ":"")+r+" "+t)}},e lementStyles:function(n,r){var s,i=n._styles,o="",a=n.__cssBuild,l=t.useNativeSh adow||"shady"===a;if(l){var h=this;s=function(e){e.selector=h._slottedToContent( e.selector),e.selector=e.selector.replace(c,":host > *"),r&&r(e)}}for(var u,f=0, p=i.length;f<p&&(u=i[f]);f++){var _=e.rulesForStyle(u);o+=l?e.toCssText(_,s):thi s.css(_,n.is,n.extends,r,n._scopeCssViaAttr)+"\n\n"}return o.trim()},css:functio n(t,n,r,s,i){var o=this._calcHostScope(n,r);n=this._calcElementScope(n,i);var a= this;return e.toCssText(t,function(e){e.isScoped||(a.rule(e,n,o),e.isScoped=!0), s&&s(e,n,o)})},_calcElementScope:function(e,t){return e?t?m+e+y:d+e:""},_calcHos tScope:function(e,t){return t?"[is="+e+"]":e},rule:function(e,t,n){this._transfo rmRule(e,this._transformComplexSelector,t,n)},_transformRule:function(e,t,n,r){e .selector=e.transformedSelector=this._transformRuleCss(e,t,n,r)},_transformRuleC ss:function(t,n,r,s){var o=t.selector.split(i);if(!e.isKeyframesSelector(t))for( var a,l=0,c=o.length;l<c&&(a=o[l]);l++)o[l]=n.call(this,a,r,s);return o.join(i)} ,_transformComplexSelector:function(e,t,n){var r=!1,s=!1,a=this;return e=e.trim( ),e=this._slottedToContent(e),e=e.replace(c,":host > *"),e=e.replace(P,l+" $1"), e=e.replace(o,function(e,i,o){if(r)o=o.replace(_," ");else{var l=a._transformCom poundSelector(o,i,t,n);r=r||l.stop,s=s||l.hostContext,i=l.combinator,o=l.value}r eturn i+o}),s&&(e=e.replace(f,function(e,t,r,s){return t+r+" "+n+s+i+" "+t+n+r+s })),e},_transformCompoundSelector:function(e,t,n,r){var s=e.search(_),i=!1;e.ind exOf(u)>=0?i=!0:e.indexOf(l)>=0?e=this._transformHostSelector(e,r):0!==s&&(e=n?t his._transformSimpleSelector(e,n):e),e.indexOf(p)>=0&&(t="");var o;return s>=0&& (e=e.replace(_," "),o=!0),{value:e,combinator:t,stop:o,hostContext:i}},_transfor mSimpleSelector:function(e,t){var n=e.split(v);return n[0]+=t,n.join(v)},_transf ormHostSelector:function(e,t){var n=e.match(h),r=n&&n[2].trim()||"";if(r){if(r[0 ].match(a))return e.replace(h,function(e,n,r){return t+r});var s=r.split(a)[0];r eturn s===t?r:S}return e.replace(l,t)},documentRule:function(e){e.selector=e.par sedSelector,this.normalizeRootSelector(e),t.useNativeShadow||this._transformRule (e,this._transformDocumentSelector)},normalizeRootSelector:function(e){e.selecto r=e.selector.replace(c,"html")},_transformDocumentSelector:function(e){return e. match(_)?this._transformComplexSelector(e,s):this._transformSimpleSelector(e.tri m(),s)},_slottedToContent:function(e){return e.replace(C,p+"> $1")},SCOPE_NAME:" style-scope"},r=n.SCOPE_NAME,s=":not(["+r+"]):not(."+r+")",i=",",o=/(^|[\s>+~]+) ((?:\[.+?\]|[^\s>+~=\[])+)/g,a=/[[.:#*]/,l=":host",c=":root",h=/(:host)(?:\(((?: \([^)(]*\)|[^)(]*)+?)\))/,u=":host-context",f=/(.*)(?::host-context)(?:\(((?:\([ ^)(]*\)|[^)(]*)+?)\))(.*)/,p="::content",_=/::content|::shadow|\/deep\//,d=".",m ="["+r+"~=",y="]",v=":",g="class",P=new RegExp("^("+p+")"),S="should_not_match", C=/(?:::slotted)(?:\(((?:\([^)(]*\)|[^)(]*)+?)\))/g;return n}(),Polymer.StyleExt ends=function(){var e=Polymer.StyleUtil;return{hasExtends:function(e){return Boo lean(e.match(this.rx.EXTEND))},transform:function(t){var n=e.rulesForStyle(t),r= this;return e.forEachRule(n,function(e){if(r._mapRuleOntoParent(e),e.parent)for( var t;t=r.rx.EXTEND.exec(e.cssText);){var n=t[1],s=r._findExtendor(n,e);s&&r._ex tendRule(e,s)}e.cssText=e.cssText.replace(r.rx.EXTEND,"")}),e.toCssText(n,functi on(e){e.selector.match(r.rx.STRIP)&&(e.cssText="")},!0)},_mapRuleOntoParent:func tion(e){if(e.parent){for(var t,n=e.parent.map||(e.parent.map={}),r=e.selector.sp lit(","),s=0;s<r.length;s++)t=r[s],n[t.trim()]=e;return n}},_findExtendor:functi on(e,t){return t.parent&&t.parent.map&&t.parent.map[e]||this._findExtendor(e,t.p arent)},_extendRule:function(e,t){e.parent!==t.parent&&this._cloneAndAddRuleToPa rent(t,e.parent),e.extends=e.extends||[],e.extends.push(t),t.selector=t.selector .replace(this.rx.STRIP,""),t.selector=(t.selector&&t.selector+",\n")+e.selector, t.extends&&t.extends.forEach(function(t){this._extendRule(e,t)},this)},_cloneAnd AddRuleToParent:function(e,t){e=Object.create(e),e.parent=t,e.extends&&(e.extend s=e.extends.slice()),t.rules.push(e)},rx:{EXTEND:/@extends\(([^)]*)\)\s*?;/gim,S TRIP:/%[^,]*$/}}}(),Polymer.ApplyShim=function(){"use strict";function e(e,t){e= e.trim(),m[e]={properties:t,dependants:{}}}function t(e){return e=e.trim(),m[e]} function n(e,t){var n=_.exec(t);return n&&(t=n[1]?y._getInitialValueForProperty( e):"apply-shim-inherit"),t}function r(e){for(var t,r,s,i,o=e.split(";"),a={},l=0 ;l<o.length;l++)s=o[l],s&&(i=s.split(":"),i.length>1&&(t=i[0].trim(),r=n(t,i.sli ce(1).join(":")),a[t]=r));return a}function s(e){var t=y.__currentElementProto,n =t&&t.is;for(var r in e.dependants)r!==n&&(e.dependants[r].__applyShimInvalid=!0 )}function i(n,i,o,a){if(o&&c.processVariableAndFallback(o,function(e,n){n&&t(n) &&(a="@apply "+n+";")}),!a)return n;var h=l(a),u=n.slice(0,n.indexOf("--")),f=r( h),p=f,_=t(i),m=_&&_.properties;m?(p=Object.create(m),p=Polymer.Base.mixin(p,f)) :e(i,p);var y,v,g=[],P=!1;for(y in p)v=f[y],void 0===v&&(v="initial"),!m||y in m ||(P=!0),g.push(i+d+y+": "+v);return P&&s(_),_&&(_.properties=p),o&&(u=n+";"+u), u+g.join("; ")+";"}function o(e,t,n){return"var("+t+",var("+n+"))"}function a(n, r){n=n.replace(p,"");var s=[],i=t(n);if(i||(e(n,{}),i=t(n)),i){var o=y.__current ElementProto;o&&(i.dependants[o.is]=o);var a,l,c;for(a in i.properties)c=r&&r[a] ,l=[a,": var(",n,d,a],c&&l.push(",",c),l.push(")"),s.push(l.join(""))}return s.j oin("; ")}function l(e){for(var t;t=h.exec(e);){var n=t[0],s=t[1],i=t.index,o=i+ n.indexOf("@apply"),l=i+n.length,c=e.slice(0,o),u=e.slice(l),f=r(c),p=a(s,f);e=[ c,p,u].join(""),h.lastIndex=i+p.length}return e}var c=Polymer.StyleUtil,h=c.rx.M IXIN_MATCH,u=c.rx.VAR_ASSIGN,f=/var\(\s*(--[^,]*),\s*(--[^)]*)\)/g,p=/;\s*/m,_=/ ^\s*(initial)|(inherit)\s*$/,d="_-_",m={},y={_measureElement:null,_map:m,_separa tor:d,transform:function(e,t){this.__currentElementProto=t,c.forRulesInStyles(e, this._boundFindDefinitions),c.forRulesInStyles(e,this._boundFindApplications),t& &(t.__applyShimInvalid=!1),this.__currentElementProto=null},_findDefinitions:fun ction(e){var t=e.parsedCssText;t=t.replace(f,o),t=t.replace(u,i),e.cssText=t,":r oot"===e.selector&&(e.selector=":host > *")},_findApplications:function(e){e.css Text=l(e.cssText)},transformRule:function(e){this._findDefinitions(e),this._find Applications(e)},_getInitialValueForProperty:function(e){return this._measureEle ment||(this._measureElement=document.createElement("meta"),this._measureElement. style.all="initial",document.head.appendChild(this._measureElement)),window.getC omputedStyle(this._measureElement).getPropertyValue(e)}};return y._boundTransfor mRule=y.transformRule.bind(y),y._boundFindDefinitions=y._findDefinitions.bind(y) ,y._boundFindApplications=y._findApplications.bind(y),y}(),function(){var e=Poly mer.Base._prepElement,t=Polymer.Settings.useNativeShadow,n=Polymer.StyleUtil,r=P olymer.StyleTransformer,s=Polymer.StyleExtends,i=Polymer.ApplyShim,o=Polymer.Set tings;Polymer.Base._addFeature({_prepElement:function(t){this._encapsulateStyle& &"shady"!==this.__cssBuild&&r.element(t,this.is,this._scopeCssViaAttr),e.call(th is,t)},_prepStyles:function(){void 0===this._encapsulateStyle&&(this._encapsulat eStyle=!t),t||(this._scopeStyle=n.applyStylePlaceHolder(this.is)),this.__cssBuil d=n.cssBuildTypeForModule(this.is)},_prepShimStyles:function(){if(this._template ){var e=n.isTargetedBuild(this.__cssBuild);if(o.useNativeCSSProperties&&"shadow" ===this.__cssBuild&&e)return;this._styles=this._styles||this._collectStyles(),o. useNativeCSSProperties&&!this.__cssBuild&&i.transform(this._styles,this);var s=o .useNativeCSSProperties&&e?this._styles.length&&this._styles[0].textContent.trim ():r.elementStyles(this);this._prepStyleProperties(),!this._needsStyleProperties ()&&s&&n.applyCss(s,this.is,t?this._template.content:null,this._scopeStyle)}else this._styles=[]},_collectStyles:function(){var e=[],t="",r=this.styleModules;if (r)for(var i,o=0,a=r.length;o<a&&(i=r[o]);o++)t+=n.cssFromModule(i);t+=n.cssFrom Module(this.is);var l=this._template&&this._template.parentNode;if(!this._templa te||l&&l.id.toLowerCase()===this.is||(t+=n.cssFromElement(this._template)),t){va r c=document.createElement("style");c.textContent=t,s.hasExtends(c.textContent)& &(t=s.transform(c)),e.push(c)}return e},_elementAdd:function(e){this._encapsulat eStyle&&(e.__styleScoped?e.__styleScoped=!1:r.dom(e,this.is,this._scopeCssViaAtt r))},_elementRemove:function(e){this._encapsulateStyle&&r.dom(e,this.is,this._sc opeCssViaAttr,!0)},scopeSubtree:function(e,n){if(!t){var r=this,s=function(e){if (e.nodeType===Node.ELEMENT_NODE){var t=e.getAttribute("class");e.setAttribute("c lass",r._scopeElementClass(e,t));for(var n,s=e.querySelectorAll("*"),i=0;i<s.len gth&&(n=s[i]);i++)t=n.getAttribute("class"),n.setAttribute("class",r._scopeEleme ntClass(n,t))}};if(s(e),n){var i=new MutationObserver(function(e){for(var t,n=0; n<e.length&&(t=e[n]);n++)if(t.addedNodes)for(var r=0;r<t.addedNodes.length;r++)s (t.addedNodes[r])});return i.observe(e,{childList:!0,subtree:!0}),i}}}})}(),Poly mer.StyleProperties=function(){"use strict";function e(e,t){var n=parseInt(e/32) ,r=1<<e%32;t[n]=(t[n]||0)|r}var t=Polymer.DomApi.matchesSelector,n=Polymer.Style Util,r=Polymer.StyleTransformer,s=navigator.userAgent.match("Trident"),i=Polymer .Settings;return{decorateStyles:function(e,t){var s=this,i={},o=[],a=0,l=r._calc HostScope(t.is,t.extends);n.forRulesInStyles(e,function(e,r){s.decorateRule(e),e .index=a++,s.whenHostOrRootRule(t,e,r,function(r){if(e.parent.type===n.ruleTypes .MEDIA_RULE&&(t.__notStyleScopeCacheable=!0),r.isHost){var s=r.selector.split(" ").some(function(e){return 0===e.indexOf(l)&&e.length!==l.length});t.__notStyleS copeCacheable=t.__notStyleScopeCacheable||s}}),s.collectPropertiesInCssText(e.pr opertyInfo.cssText,i)},function(e){o.push(e)}),e._keyframes=o;var c=[];for(var h in i)c.push(h);return c},decorateRule:function(e){if(e.propertyInfo)return e.pr opertyInfo;var t={},n={},r=this.collectProperties(e,n);return r&&(t.properties=n ,e.rules=null),t.cssText=this.collectCssText(e),e.propertyInfo=t,t},collectPrope rties:function(e,t){var n=e.propertyInfo;if(!n){for(var r,s,i,o=this.rx.VAR_ASSI GN,a=e.parsedCssText;r=o.exec(a);)s=(r[2]||r[3]).trim(),"inherit"!==s&&(t[r[1].t rim()]=s),i=!0;return i}if(n.properties)return Polymer.Base.mixin(t,n.properties ),!0},collectCssText:function(e){return this.collectConsumingCssText(e.parsedCss Text)},collectConsumingCssText:function(e){return e.replace(this.rx.BRACKETED,"" ).replace(this.rx.VAR_ASSIGN,"")},collectPropertiesInCssText:function(e,t){for(v ar n;n=this.rx.VAR_CONSUMED.exec(e);){var r=n[1];":"!==n[2]&&(t[r]=!0)}},reify:f unction(e){for(var t,n=Object.getOwnPropertyNames(e),r=0;r<n.length;r++)t=n[r],e [t]=this.valueForProperty(e[t],e)},valueForProperty:function(e,t){if(e)if(e.inde xOf(";")>=0)e=this.valueForProperties(e,t);else{var r=this,s=function(e,n,s,i){v ar o=r.valueForProperty(t[n],t);return o&&"initial"!==o?"apply-shim-inherit"===o &&(o="inherit"):o=r.valueForProperty(t[s]||s,t)||s,e+(o||"")+i};e=n.processVaria bleAndFallback(e,s)}return e&&e.trim()||""},valueForProperties:function(e,t){for (var n,r,s=e.split(";"),i=0;i<s.length;i++)if(n=s[i]){if(this.rx.MIXIN_MATCH.las tIndex=0,r=this.rx.MIXIN_MATCH.exec(n))n=this.valueForProperty(t[r[1]],t);else{v ar o=n.indexOf(":");if(o!==-1){var a=n.substring(o);a=a.trim(),a=this.valueForPr operty(a,t)||a,n=n.substring(0,o)+a}}s[i]=n&&n.lastIndexOf(";")===n.length-1?n.s lice(0,-1):n||""}return s.join(";")},applyProperties:function(e,t){var n="";e.pr opertyInfo||this.decorateRule(e),e.propertyInfo.cssText&&(n=this.valueForPropert ies(e.propertyInfo.cssText,t)),e.cssText=n},applyKeyframeTransforms:function(e,t ){var n=e.cssText,r=e.cssText;if(null==e.hasAnimations&&(e.hasAnimations=this.rx .ANIMATION_MATCH.test(n)),e.hasAnimations){var s;if(null==e.keyframeNamesToTrans form){e.keyframeNamesToTransform=[];for(var i in t)s=t[i],r=s(n),n!==r&&(n=r,e.k eyframeNamesToTransform.push(i))}else{for(var o=0;o<e.keyframeNamesToTransform.l ength;++o)s=t[e.keyframeNamesToTransform[o]],n=s(n);r=n}}e.cssText=r},propertyDa taFromStyles:function(r,s){var i={},o=this,a=[];return n.forActiveRulesInStyles( r,function(n){n.propertyInfo||o.decorateRule(n);var r=n.transformedSelector||n.p arsedSelector;s&&n.propertyInfo.properties&&r&&t.call(s,r)&&(o.collectProperties (n,i),e(n.index,a))}),{properties:i,key:a}},_rootSelector:/:root|:host\s*>\s*\*/ ,_checkRoot:function(e,t){return Boolean(t.match(this._rootSelector))||"html"=== e&&t.indexOf("html")>-1},whenHostOrRootRule:function(e,t,n,s){if(t.propertyInfo| |self.decorateRule(t),t.propertyInfo.properties){var o=e.is?r._calcHostScope(e.i s,e.extends):"html",a=t.parsedSelector,l=this._checkRoot(o,a),c=!l&&0===a.indexO f(":host"),h=e.__cssBuild||n.__cssBuild;if("shady"===h&&(l=a===o+" > *."+o||a.in dexOf("html")>-1,c=!l&&0===a.indexOf(o)),l||c){var u=o;c&&(i.useNativeShadow&&!t .transformedSelector&&(t.transformedSelector=r._transformRuleCss(t,r._transformC omplexSelector,e.is,o)),u=t.transformedSelector||t.parsedSelector),l&&"html"===o &&(u=t.transformedSelector||t.parsedSelector),s({selector:u,isHost:c,isRoot:l})} }},hostAndRootPropertiesForScope:function(e){var r={},s={},i=this;return n.forAc tiveRulesInStyles(e._styles,function(n,o){i.whenHostOrRootRule(e,n,o,function(o) {var a=e._element||e;t.call(a,o.selector)&&(o.isHost?i.collectProperties(n,r):i. collectProperties(n,s))})}),{rootProps:s,hostProps:r}},transformStyles:function( e,t,n){var s=this,o=r._calcHostScope(e.is,e.extends),a=e.extends?"\\"+o.slice(0, -1)+"\\]":o,l=new RegExp(this.rx.HOST_PREFIX+a+this.rx.HOST_SUFFIX),c=this._elem entKeyframeTransforms(e,n);return r.elementStyles(e,function(r){s.applyPropertie s(r,t),i.useNativeShadow||Polymer.StyleUtil.isKeyframesSelector(r)||!r.cssText|| (s.applyKeyframeTransforms(r,c),s._scopeSelector(r,l,o,e._scopeCssViaAttr,n))})} ,_elementKeyframeTransforms:function(e,t){var n=e._styles._keyframes,r={};if(!i. useNativeShadow&&n)for(var s=0,o=n[s];s<n.length;o=n[++s])this._scopeKeyframes(o ,t),r[o.keyframesName]=this._keyframesRuleTransformer(o);return r},_keyframesRul eTransformer:function(e){return function(t){return t.replace(e.keyframesNameRx,e .transformedKeyframesName)}},_scopeKeyframes:function(e,t){e.keyframesNameRx=new RegExp(e.keyframesName,"g"),e.transformedKeyframesName=e.keyframesName+"-"+t,e. transformedSelector=e.transformedSelector||e.selector,e.selector=e.transformedSe lector.replace(e.keyframesName,e.transformedKeyframesName)},_scopeSelector:funct ion(e,t,n,s,i){e.transformedSelector=e.transformedSelector||e.selector;for(var o ,a=e.transformedSelector,l=s?"["+r.SCOPE_NAME+"~="+i+"]":"."+i,c=a.split(","),h= 0,u=c.length;h<u&&(o=c[h]);h++)c[h]=o.match(t)?o.replace(n,l):l+" "+o;e.selector =c.join(",")},applyElementScopeSelector:function(e,t,n,s){var i=s?e.getAttribute (r.SCOPE_NAME):e.getAttribute("class")||"",o=n?i.replace(n,t):(i?i+" ":"")+this. XSCOPE_NAME+" "+t;i!==o&&(s?e.setAttribute(r.SCOPE_NAME,o):e.setAttribute("class ",o))},applyElementStyle:function(e,t,r,o){var a=o?o.textContent||"":this.transf ormStyles(e,t,r),l=e._customStyle;return l&&!i.useNativeShadow&&l!==o&&(l._useCo unt--,l._useCount<=0&&l.parentNode&&l.parentNode.removeChild(l)),i.useNativeShad ow?e._customStyle?(e._customStyle.textContent=a,o=e._customStyle):a&&(o=n.applyC ss(a,r,e.root,e._scopeStyle)):o?o.parentNode||(s&&a.indexOf("@media")>-1&&(o.tex tContent=a),n.applyStyle(o,null,e._scopeStyle)):a&&(o=n.applyCss(a,r,null,e._sco peStyle)),o&&(o._useCount=o._useCount||0,e._customStyle!=o&&o._useCount++,e._cus tomStyle=o),o},mixinCustomStyle:function(e,t){var n;for(var r in t)n=t[r],(n||0= ==n)&&(e[r]=n)},updateNativeStyleProperties:function(e,t){var n=e.__customStyleP roperties;if(n)for(var r=0;r<n.length;r++)e.style.removeProperty(n[r]);var s=[]; for(var i in t)null!==t[i]&&(e.style.setProperty(i,t[i]),s.push(i));e.__customSt yleProperties=s},rx:n.rx,XSCOPE_NAME:"x-scope"}}(),function(){Polymer.StyleCache =function(){this.cache={}},Polymer.StyleCache.prototype={MAX:100,store:function( e,t,n,r){t.keyValues=n,t.styles=r;var s=this.cache[e]=this.cache[e]||[];s.push(t ),s.length>this.MAX&&s.shift()},retrieve:function(e,t,n){var r=this.cache[e];if( r)for(var s,i=r.length-1;i>=0;i--)if(s=r[i],n===s.styles&&this._objectsEqual(t,s .keyValues))return s},clear:function(){this.cache={}},_objectsEqual:function(e,t ){var n,r;for(var s in e)if(n=e[s],r=t[s],!("object"==typeof n&&n?this._objectsS trictlyEqual(n,r):n===r))return!1;return!Array.isArray(e)||e.length===t.length}, _objectsStrictlyEqual:function(e,t){return this._objectsEqual(e,t)&&this._object sEqual(t,e)}}}(),Polymer.StyleDefaults=function(){var e=Polymer.StyleProperties, t=Polymer.StyleCache,n=Polymer.Settings.useNativeCSSProperties,r={_styles:[],_pr operties:null,customStyle:{},_styleCache:new t,_element:Polymer.DomApi.wrap(docu ment.documentElement),addStyle:function(e){this._styles.push(e),this._properties =null},get _styleProperties(){return this._properties||(e.decorateStyles(this._s tyles,this),this._styles._scopeStyleProperties=null,this._properties=e.hostAndRo otPropertiesForScope(this).rootProps,e.mixinCustomStyle(this._properties,this.cu stomStyle),e.reify(this._properties)),this._properties},hasStyleProperties:funct ion(){return Boolean(this._properties)},_needsStyleProperties:function(){},_comp uteStyleProperties:function(){return this._styleProperties},updateStyles:functio n(t){this._properties=null,t&&Polymer.Base.mixin(this.customStyle,t),this._style Cache.clear();for(var r,s=0;s<this._styles.length;s++)r=this._styles[s],r=r.__im portElement||r,r._apply();n&&e.updateNativeStyleProperties(document.documentElem ent,this.customStyle)}};return r}(),function(){"use strict";var e=Polymer.Base.s erializeValueToAttribute,t=Polymer.StyleProperties,n=Polymer.StyleTransformer,r= Polymer.StyleDefaults,s=Polymer.Settings.useNativeShadow,i=Polymer.Settings.useN ativeCSSProperties;Polymer.Base._addFeature({_prepStyleProperties:function(){i|| (this._ownStylePropertyNames=this._styles&&this._styles.length?t.decorateStyles( this._styles,this):null); 3 delete this[t])},_configureProperties:function(e,t){for(var n in e){var r=e[n];i f(void 0!==r.value){var s=r.value;"function"==typeof s&&(s=s.call(this,this._con fig)),t[n]=s}}},_distributeConfig:function(e){var t=this._propertyEffects;if(t)f or(var n in e){var r=t[n];if(r)for(var s,i=0,o=r.length;i<o&&(s=r[i]);i++)if("an notation"===s.kind){var a=this._nodes[s.effect.index],l=s.effect.propertyName,c= "attribute"==s.effect.kind,h=a._propertyEffects&&a._propertyEffects[l];if(a._con figValue&&(h||!c)){var u=n===s.effect.value?e[n]:this._get(s.effect.value,e);u=t his._computeFinalAnnotationValue(a,l,u,s.effect),c&&(u=a.deserialize(this.serial ize(u),a._propertyInfo[l].type)),a._configValue(l,u)}}}},_afterClientsReady:func tion(){this._executeStaticEffects(),this._applyConfig(this._config,this._aboveCo nfig),this._flushHandlers()},_applyConfig:function(e,t){for(var n in e)void 0=== this[n]&&this.__setProperty(n,e[n],n in t)},_notifyListener:function(e,t){if(!Po lymer.Bind._isEventBogus(t,t.target)){var n,r;if(t.detail&&(n=t.detail.value,r=t .detail.path),this._clientsReadied)return e.call(this,t.target,n,r);this._queueH andler([e,t.target,n,r])}},_queueHandler:function(e){this._handlers.push(e)},_fl ushHandlers:function(){for(var e,t=this._handlers,n=0,r=t.length;n<r&&(e=t[n]);n ++)e[0].call(this,e[1],e[2],e[3]);this._handlers=[]}})}(),function(){"use strict ";var e=Polymer.Path;Polymer.Base._addFeature({notifyPath:function(e,t,n){var r= {},s=this._get(e,this,r);1===arguments.length&&(t=s),r.path&&this._notifyPath(r. path,t,n)},_notifyPath:function(e,t,n){var r=this._propertySetter(e,t);if(r!==t& &(r===r||t===t))return this._pathEffector(e,t),n||this._notifyPathUp(e,t),!0},_g etPathParts:function(e){if(Array.isArray(e)){for(var t=[],n=0;n<e.length;n++)for (var r=e[n].toString().split("."),s=0;s<r.length;s++)t.push(r[s]);return t}retur n e.toString().split(".")},set:function(e,t,n){var r,s=n||this,i=this._getPathPa rts(e),o=i[i.length-1];if(i.length>1){for(var a=0;a<i.length-1;a++){var l=i[a];i f(r&&"#"==l[0]?s=Polymer.Collection.get(r).getItem(l):(s=s[l],r&&parseInt(l,10)= =l&&(i[a]=Polymer.Collection.get(r).getKey(s))),!s)return;r=Array.isArray(s)?s:n ull}if(r){var c,h,u=Polymer.Collection.get(r);"#"==o[0]?(h=o,c=u.getItem(h),o=r. indexOf(c),u.setItem(h,t)):parseInt(o,10)==o&&(c=s[o],h=u.getKey(c),i[a]=h,u.set Item(h,t))}s[o]=t,n||this._notifyPath(i.join("."),t)}else s[e]=t},get:function(e ,t){return this._get(e,t)},_get:function(e,t,n){for(var r,s=t||this,i=this._getP athParts(e),o=0;o<i.length;o++){if(!s)return;var a=i[o];r&&"#"==a[0]?s=Polymer.C ollection.get(r).getItem(a):(s=s[a],n&&r&&parseInt(a,10)==a&&(i[o]=Polymer.Colle ction.get(r).getKey(s))),r=Array.isArray(s)?s:null}return n&&(n.path=i.join(".") ),s},_pathEffector:function(t,n){var r=e.root(t),s=this._propertyEffects&&this._ propertyEffects[r];if(s)for(var i,o=0;o<s.length&&(i=s[o]);o++){var a=i.pathFn;a &&a.call(this,t,n,i.effect)}this._boundPaths&&this._notifyBoundPaths(t,n)},_anno tationPathEffect:function(t,n,r){if(e.matches(r.value,!1,t))Polymer.Bind._annota tionEffect.call(this,t,n,r);else if(!r.negate&&e.isDescendant(r.value,t)){var s= this._nodes[r.index];if(s&&s._notifyPath){var i=e.translate(r.value,r.name,t);s. _notifyPath(i,n,!0)}}},_complexObserverPathEffect:function(t,n,r){e.matches(r.tr igger.name,r.trigger.wildcard,t)&&Polymer.Bind._complexObserverEffect.call(this, t,n,r)},_computePathEffect:function(t,n,r){e.matches(r.trigger.name,r.trigger.wi ldcard,t)&&Polymer.Bind._computeEffect.call(this,t,n,r)},_annotatedComputationPa thEffect:function(t,n,r){e.matches(r.trigger.name,r.trigger.wildcard,t)&&Polymer .Bind._annotatedComputationEffect.call(this,t,n,r)},linkPaths:function(e,t){this ._boundPaths=this._boundPaths||{},t?this._boundPaths[e]=t:this.unlinkPaths(e)},u nlinkPaths:function(e){this._boundPaths&&delete this._boundPaths[e]},_notifyBoun dPaths:function(t,n){for(var r in this._boundPaths){var s=this._boundPaths[r];e. isDescendant(r,t)?this._notifyPath(e.translate(r,s,t),n):e.isDescendant(s,t)&&th is._notifyPath(e.translate(s,r,t),n)}},_notifyPathUp:function(t,n){var r=e.root( t),s=Polymer.CaseMap.camelToDashCase(r),i=s+this._EVENT_CHANGED;this.fire(i,{pat h:t,value:n},{bubbles:!1,_useCache:!0})},_EVENT_CHANGED:"-changed",notifySplices :function(e,t){var n={},r=this._get(e,this,n);this._notifySplices(r,n.path,t)},_ notifySplices:function(e,t,n){var r={keySplices:Polymer.Collection.applySplices( e,n),indexSplices:n},s=t+".splices";this._notifyPath(s,r),this._notifyPath(t+".l ength",e.length),this.__data__[s]={keySplices:null,indexSplices:null}},_notifySp lice:function(e,t,n,r,s){this._notifySplices(e,t,[{index:n,addedCount:r,removed: s,object:e,type:"splice"}])},push:function(e){var t={},n=this._get(e,this,t),r=A rray.prototype.slice.call(arguments,1),s=n.length,i=n.push.apply(n,r);return r.l ength&&this._notifySplice(n,t.path,s,r.length,[]),i},pop:function(e){var t={},n= this._get(e,this,t),r=Boolean(n.length),s=Array.prototype.slice.call(arguments,1 ),i=n.pop.apply(n,s);return r&&this._notifySplice(n,t.path,n.length,0,[i]),i},sp lice:function(e,t){var n={},r=this._get(e,this,n);t=t<0?r.length-Math.floor(-t): Math.floor(t),t||(t=0);var s=Array.prototype.slice.call(arguments,1),i=r.splice. apply(r,s),o=Math.max(s.length-2,0);return(o||i.length)&&this._notifySplice(r,n. path,t,o,i),i},shift:function(e){var t={},n=this._get(e,this,t),r=Boolean(n.leng th),s=Array.prototype.slice.call(arguments,1),i=n.shift.apply(n,s);return r&&thi s._notifySplice(n,t.path,0,0,[i]),i},unshift:function(e){var t={},n=this._get(e, this,t),r=Array.prototype.slice.call(arguments,1),s=n.unshift.apply(n,r);return r.length&&this._notifySplice(n,t.path,0,r.length,[]),s},prepareModelNotifyPath:f unction(e){this.mixin(e,{fire:Polymer.Base.fire,_getEvent:Polymer.Base._getEvent ,__eventCache:Polymer.Base.__eventCache,notifyPath:Polymer.Base.notifyPath,_get: Polymer.Base._get,_EVENT_CHANGED:Polymer.Base._EVENT_CHANGED,_notifyPath:Polymer .Base._notifyPath,_notifyPathUp:Polymer.Base._notifyPathUp,_pathEffector:Polymer .Base._pathEffector,_annotationPathEffect:Polymer.Base._annotationPathEffect,_co mplexObserverPathEffect:Polymer.Base._complexObserverPathEffect,_annotatedComput ationPathEffect:Polymer.Base._annotatedComputationPathEffect,_computePathEffect: Polymer.Base._computePathEffect,_notifyBoundPaths:Polymer.Base._notifyBoundPaths ,_getPathParts:Polymer.Base._getPathParts})}})}(),Polymer.Base._addFeature({reso lveUrl:function(e){var t=Polymer.DomModule.import(this.is),n="";if(t){var r=t.ge tAttribute("assetpath")||"";n=Polymer.ResolveUrl.resolveUrl(r,t.ownerDocument.ba seURI)}return Polymer.ResolveUrl.resolveUrl(e,n)}}),Polymer.CssParse=function(){ return{parse:function(e){return e=this._clean(e),this._parseCss(this._lex(e),e)} ,_clean:function(e){return e.replace(this._rx.comments,"").replace(this._rx.port ,"")},_lex:function(e){for(var t={start:0,end:e.length},n=t,r=0,s=e.length;r<s;r ++)switch(e[r]){case this.OPEN_BRACE:n.rules||(n.rules=[]);var i=n,o=i.rules[i.r ules.length-1];n={start:r+1,parent:i,previous:o},i.rules.push(n);break;case this .CLOSE_BRACE:n.end=r+1,n=n.parent||t}return t},_parseCss:function(e,t){var n=t.s ubstring(e.start,e.end-1);if(e.parsedCssText=e.cssText=n.trim(),e.parent){var r= e.previous?e.previous.end:e.parent.start;n=t.substring(r,e.start-1),n=this._expa ndUnicodeEscapes(n),n=n.replace(this._rx.multipleSpaces," "),n=n.substring(n.las tIndexOf(";")+1);var s=e.parsedSelector=e.selector=n.trim();e.atRule=0===s.index Of(this.AT_START),e.atRule?0===s.indexOf(this.MEDIA_START)?e.type=this.types.MED IA_RULE:s.match(this._rx.keyframesRule)&&(e.type=this.types.KEYFRAMES_RULE,e.key framesName=e.selector.split(this._rx.multipleSpaces).pop()):0===s.indexOf(this.V AR_START)?e.type=this.types.MIXIN_RULE:e.type=this.types.STYLE_RULE}var i=e.rule s;if(i)for(var o,a=0,l=i.length;a<l&&(o=i[a]);a++)this._parseCss(o,t);return e}, _expandUnicodeEscapes:function(e){return e.replace(/\\([0-9a-f]{1,6})\s/gi,funct ion(){for(var e=arguments[1],t=6-e.length;t--;)e="0"+e;return"\\"+e})},stringify :function(e,t,n){n=n||"";var r="";if(e.cssText||e.rules){var s=e.rules;if(s&&!th is._hasMixinRules(s))for(var i,o=0,a=s.length;o<a&&(i=s[o]);o++)r=this.stringify (i,t,r);else r=t?e.cssText:this.removeCustomProps(e.cssText),r=r.trim(),r&&(r=" "+r+"\n")}return r&&(e.selector&&(n+=e.selector+" "+this.OPEN_BRACE+"\n"),n+=r, e.selector&&(n+=this.CLOSE_BRACE+"\n\n")),n},_hasMixinRules:function(e){return 0 ===e[0].selector.indexOf(this.VAR_START)},removeCustomProps:function(e){return e =this.removeCustomPropAssignment(e),this.removeCustomPropApply(e)},removeCustomP ropAssignment:function(e){return e.replace(this._rx.customProp,"").replace(this. _rx.mixinProp,"")},removeCustomPropApply:function(e){return e.replace(this._rx.m ixinApply,"").replace(this._rx.varApply,"")},types:{STYLE_RULE:1,KEYFRAMES_RULE: 7,MEDIA_RULE:4,MIXIN_RULE:1e3},OPEN_BRACE:"{",CLOSE_BRACE:"}",_rx:{comments:/\/\ *[^*]*\*+([^\/*][^*]*\*+)*\//gim,port:/@import[^;]*;/gim,customProp:/(?:^[^;\-\s }]+)?--[^;{}]*?:[^{};]*?(?:[;\n]|$)/gim,mixinProp:/(?:^[^;\-\s}]+)?--[^;{}]*?:[^ {};]*?{[^}]*?}(?:[;\n]|$)?/gim,mixinApply:/@apply\s*\(?[^);]*\)?\s*(?:[;\n]|$)?/ gim,varApply:/[^;:]*?:[^;]*?var\([^;]*\)(?:[;\n]|$)?/gim,keyframesRule:/^@[^\s]* keyframes/,multipleSpaces:/\s+/g},VAR_START:"--",MEDIA_START:"@media",AT_START:" @"}}(),Polymer.StyleUtil=function(){var e=Polymer.Settings;return{NATIVE_VARIABL ES:Polymer.Settings.useNativeCSSProperties,MODULE_STYLES_SELECTOR:"style, link[r el=import][type~=css], template",INCLUDE_ATTR:"include",toCssText:function(e,t){ return"string"==typeof e&&(e=this.parser.parse(e)),t&&this.forEachRule(e,t),this .parser.stringify(e,this.NATIVE_VARIABLES)},forRulesInStyles:function(e,t,n){if( e)for(var r,s=0,i=e.length;s<i&&(r=e[s]);s++)this.forEachRuleInStyle(r,t,n)},for ActiveRulesInStyles:function(e,t,n){if(e)for(var r,s=0,i=e.length;s<i&&(r=e[s]); s++)this.forEachRuleInStyle(r,t,n,!0)},rulesForStyle:function(e){return!e.__cssR ules&&e.textContent&&(e.__cssRules=this.parser.parse(e.textContent)),e.__cssRule s},isKeyframesSelector:function(e){return e.parent&&e.parent.type===this.ruleTyp es.KEYFRAMES_RULE},forEachRuleInStyle:function(e,t,n,r){var s,i,o=this.rulesForS tyle(e);t&&(s=function(n){t(n,e)}),n&&(i=function(t){n(t,e)}),this.forEachRule(o ,s,i,r)},forEachRule:function(e,t,n,r){if(e){var s=!1;if(r&&e.type===this.ruleTy pes.MEDIA_RULE){var i=e.selector.match(this.rx.MEDIA_MATCH);i&&(window.matchMedi a(i[1]).matches||(s=!0))}e.type===this.ruleTypes.STYLE_RULE?t(e):n&&e.type===thi s.ruleTypes.KEYFRAMES_RULE?n(e):e.type===this.ruleTypes.MIXIN_RULE&&(s=!0);var o =e.rules;if(o&&!s)for(var a,l=0,c=o.length;l<c&&(a=o[l]);l++)this.forEachRule(a, t,n,r)}},applyCss:function(e,t,n,r){var s=this.createScopeStyle(e,t);return this .applyStyle(s,n,r)},applyStyle:function(e,t,n){t=t||document.head;var r=n&&n.nex tSibling||t.firstChild;return this.__lastHeadApplyNode=e,t.insertBefore(e,r)},cr eateScopeStyle:function(e,t){var n=document.createElement("style");return t&&n.s etAttribute("scope",t),n.textContent=e,n},__lastHeadApplyNode:null,applyStylePla ceHolder:function(e){var t=document.createComment(" Shady DOM styles for "+e+" " ),n=this.__lastHeadApplyNode?this.__lastHeadApplyNode.nextSibling:null,r=documen t.head;return r.insertBefore(t,n||r.firstChild),this.__lastHeadApplyNode=t,t},cs sFromModules:function(e,t){for(var n=e.trim().split(" "),r="",s=0;s<n.length;s++ )r+=this.cssFromModule(n[s],t);return r},cssFromModule:function(e,t){var n=Polym er.DomModule.import(e);return n&&!n._cssText&&(n._cssText=this.cssFromElement(n) ),!n&&t&&console.warn("Could not find style data in module named",e),n&&n._cssTe xt||""},cssFromElement:function(e){for(var t,n="",r=e.content||e,s=Polymer.TreeA pi.arrayCopy(r.querySelectorAll(this.MODULE_STYLES_SELECTOR)),i=0;i<s.length;i++ )if(t=s[i],"template"===t.localName)t.hasAttribute("preserve-content")||(n+=this .cssFromElement(t));else if("style"===t.localName){var o=t.getAttribute(this.INC LUDE_ATTR);o&&(n+=this.cssFromModules(o,!0)),t=t.__appliedElement||t,t.parentNod e.removeChild(t),n+=this.resolveCss(t.textContent,e.ownerDocument)}else t.import &&t.import.body&&(n+=this.resolveCss(t.import.body.textContent,t.import));return n},isTargetedBuild:function(t){return e.useNativeShadow?"shadow"===t:"shady"=== t},cssBuildTypeForModule:function(e){var t=Polymer.DomModule.import(e);if(t)retu rn this.getCssBuildType(t)},getCssBuildType:function(e){return e.getAttribute("c ss-build")},_findMatchingParen:function(e,t){for(var n=0,r=t,s=e.length;r<s;r++) switch(e[r]){case"(":n++;break;case")":if(0===--n)return r}return-1},processVari ableAndFallback:function(e,t){var n=e.indexOf("var(");if(n===-1)return t(e,"","" ,"");var r=this._findMatchingParen(e,n+3),s=e.substring(n+4,r),i=e.substring(0,n ),o=this.processVariableAndFallback(e.substring(r+1),t),a=s.indexOf(",");if(a=== -1)return t(i,s.trim(),"",o);var l=s.substring(0,a).trim(),c=s.substring(a+1).tr im();return t(i,l,c,o)},rx:{VAR_ASSIGN:/(?:^|[;\s{]\s*)(--[\w-]*?)\s*:\s*(?:([^; {]*)|{([^}]*)})(?:(?=[;\s}])|$)/gi,MIXIN_MATCH:/(?:^|\W+)@apply\s*\(?([^);\n]*)\ )?/gi,VAR_CONSUMED:/(--[\w-]+)\s*([:,;)]|$)/gi,ANIMATION_MATCH:/(animation\s*:)| (animation-name\s*:)/,MEDIA_MATCH:/@media[^(]*(\([^)]*\))/,IS_VAR:/^--/,BRACKETE D:/\{[^}]*\}/g,HOST_PREFIX:"(?:^|[^.#[:])",HOST_SUFFIX:"($|[.:[\\s>+~])"},resolv eCss:Polymer.ResolveUrl.resolveCss,parser:Polymer.CssParse,ruleTypes:Polymer.Css Parse.types}}(),Polymer.StyleTransformer=function(){var e=Polymer.StyleUtil,t=Po lymer.Settings,n={dom:function(e,t,n,r){this._transformDom(e,t||"",n,r)},_transf ormDom:function(e,t,n,r){e.setAttribute&&this.element(e,t,n,r);for(var s=Polymer .dom(e).childNodes,i=0;i<s.length;i++)this._transformDom(s[i],t,n,r)},element:fu nction(e,t,n,s){if(n)s?e.removeAttribute(r):e.setAttribute(r,t);else if(t)if(e.c lassList)s?(e.classList.remove(r),e.classList.remove(t)):(e.classList.add(r),e.c lassList.add(t));else if(e.getAttribute){var i=e.getAttribute(g);s?i&&e.setAttri bute(g,i.replace(r,"").replace(t,"")):e.setAttribute(g,(i?i+" ":"")+r+" "+t)}},e lementStyles:function(n,r){var s,i=n._styles,o="",a=n.__cssBuild,l=t.useNativeSh adow||"shady"===a;if(l){var h=this;s=function(e){e.selector=h._slottedToContent( e.selector),e.selector=e.selector.replace(c,":host > *"),r&&r(e)}}for(var u,f=0, p=i.length;f<p&&(u=i[f]);f++){var _=e.rulesForStyle(u);o+=l?e.toCssText(_,s):thi s.css(_,n.is,n.extends,r,n._scopeCssViaAttr)+"\n\n"}return o.trim()},css:functio n(t,n,r,s,i){var o=this._calcHostScope(n,r);n=this._calcElementScope(n,i);var a= this;return e.toCssText(t,function(e){e.isScoped||(a.rule(e,n,o),e.isScoped=!0), s&&s(e,n,o)})},_calcElementScope:function(e,t){return e?t?m+e+y:d+e:""},_calcHos tScope:function(e,t){return t?"[is="+e+"]":e},rule:function(e,t,n){this._transfo rmRule(e,this._transformComplexSelector,t,n)},_transformRule:function(e,t,n,r){e .selector=e.transformedSelector=this._transformRuleCss(e,t,n,r)},_transformRuleC ss:function(t,n,r,s){var o=t.selector.split(i);if(!e.isKeyframesSelector(t))for( var a,l=0,c=o.length;l<c&&(a=o[l]);l++)o[l]=n.call(this,a,r,s);return o.join(i)} ,_transformComplexSelector:function(e,t,n){var r=!1,s=!1,a=this;return e=e.trim( ),e=this._slottedToContent(e),e=e.replace(c,":host > *"),e=e.replace(P,l+" $1"), e=e.replace(o,function(e,i,o){if(r)o=o.replace(_," ");else{var l=a._transformCom poundSelector(o,i,t,n);r=r||l.stop,s=s||l.hostContext,i=l.combinator,o=l.value}r eturn i+o}),s&&(e=e.replace(f,function(e,t,r,s){return t+r+" "+n+s+i+" "+t+n+r+s })),e},_transformCompoundSelector:function(e,t,n,r){var s=e.search(_),i=!1;e.ind exOf(u)>=0?i=!0:e.indexOf(l)>=0?e=this._transformHostSelector(e,r):0!==s&&(e=n?t his._transformSimpleSelector(e,n):e),e.indexOf(p)>=0&&(t="");var o;return s>=0&& (e=e.replace(_," "),o=!0),{value:e,combinator:t,stop:o,hostContext:i}},_transfor mSimpleSelector:function(e,t){var n=e.split(v);return n[0]+=t,n.join(v)},_transf ormHostSelector:function(e,t){var n=e.match(h),r=n&&n[2].trim()||"";if(r){if(r[0 ].match(a))return e.replace(h,function(e,n,r){return t+r});var s=r.split(a)[0];r eturn s===t?r:S}return e.replace(l,t)},documentRule:function(e){e.selector=e.par sedSelector,this.normalizeRootSelector(e),t.useNativeShadow||this._transformRule (e,this._transformDocumentSelector)},normalizeRootSelector:function(e){e.selecto r=e.selector.replace(c,"html")},_transformDocumentSelector:function(e){return e. match(_)?this._transformComplexSelector(e,s):this._transformSimpleSelector(e.tri m(),s)},_slottedToContent:function(e){return e.replace(C,p+"> $1")},SCOPE_NAME:" style-scope"},r=n.SCOPE_NAME,s=":not(["+r+"]):not(."+r+")",i=",",o=/(^|[\s>+~]+) ((?:\[.+?\]|[^\s>+~=\[])+)/g,a=/[[.:#*]/,l=":host",c=":root",h=/(:host)(?:\(((?: \([^)(]*\)|[^)(]*)+?)\))/,u=":host-context",f=/(.*)(?::host-context)(?:\(((?:\([ ^)(]*\)|[^)(]*)+?)\))(.*)/,p="::content",_=/::content|::shadow|\/deep\//,d=".",m ="["+r+"~=",y="]",v=":",g="class",P=new RegExp("^("+p+")"),S="should_not_match", C=/(?:::slotted)(?:\(((?:\([^)(]*\)|[^)(]*)+?)\))/g;return n}(),Polymer.StyleExt ends=function(){var e=Polymer.StyleUtil;return{hasExtends:function(e){return Boo lean(e.match(this.rx.EXTEND))},transform:function(t){var n=e.rulesForStyle(t),r= this;return e.forEachRule(n,function(e){if(r._mapRuleOntoParent(e),e.parent)for( var t;t=r.rx.EXTEND.exec(e.cssText);){var n=t[1],s=r._findExtendor(n,e);s&&r._ex tendRule(e,s)}e.cssText=e.cssText.replace(r.rx.EXTEND,"")}),e.toCssText(n,functi on(e){e.selector.match(r.rx.STRIP)&&(e.cssText="")},!0)},_mapRuleOntoParent:func tion(e){if(e.parent){for(var t,n=e.parent.map||(e.parent.map={}),r=e.selector.sp lit(","),s=0;s<r.length;s++)t=r[s],n[t.trim()]=e;return n}},_findExtendor:functi on(e,t){return t.parent&&t.parent.map&&t.parent.map[e]||this._findExtendor(e,t.p arent)},_extendRule:function(e,t){e.parent!==t.parent&&this._cloneAndAddRuleToPa rent(t,e.parent),e.extends=e.extends||[],e.extends.push(t),t.selector=t.selector .replace(this.rx.STRIP,""),t.selector=(t.selector&&t.selector+",\n")+e.selector, t.extends&&t.extends.forEach(function(t){this._extendRule(e,t)},this)},_cloneAnd AddRuleToParent:function(e,t){e=Object.create(e),e.parent=t,e.extends&&(e.extend s=e.extends.slice()),t.rules.push(e)},rx:{EXTEND:/@extends\(([^)]*)\)\s*?;/gim,S TRIP:/%[^,]*$/}}}(),Polymer.ApplyShim=function(){"use strict";function e(e,t){e= e.trim(),m[e]={properties:t,dependants:{}}}function t(e){return e=e.trim(),m[e]} function n(e,t){var n=_.exec(t);return n&&(t=n[1]?y._getInitialValueForProperty( e):"apply-shim-inherit"),t}function r(e){for(var t,r,s,i,o=e.split(";"),a={},l=0 ;l<o.length;l++)s=o[l],s&&(i=s.split(":"),i.length>1&&(t=i[0].trim(),r=n(t,i.sli ce(1).join(":")),a[t]=r));return a}function s(e){var t=y.__currentElementProto,n =t&&t.is;for(var r in e.dependants)r!==n&&(e.dependants[r].__applyShimInvalid=!0 )}function i(n,i,o,a){if(o&&c.processVariableAndFallback(o,function(e,n){n&&t(n) &&(a="@apply "+n+";")}),!a)return n;var h=l(a),u=n.slice(0,n.indexOf("--")),f=r( h),p=f,_=t(i),m=_&&_.properties;m?(p=Object.create(m),p=Polymer.Base.mixin(p,f)) :e(i,p);var y,v,g=[],P=!1;for(y in p)v=f[y],void 0===v&&(v="initial"),!m||y in m ||(P=!0),g.push(i+d+y+": "+v);return P&&s(_),_&&(_.properties=p),o&&(u=n+";"+u), u+g.join("; ")+";"}function o(e,t,n){return"var("+t+",var("+n+"))"}function a(n, r){n=n.replace(p,"");var s=[],i=t(n);if(i||(e(n,{}),i=t(n)),i){var o=y.__current ElementProto;o&&(i.dependants[o.is]=o);var a,l,c;for(a in i.properties)c=r&&r[a] ,l=[a,": var(",n,d,a],c&&l.push(",",c),l.push(")"),s.push(l.join(""))}return s.j oin("; ")}function l(e){for(var t;t=h.exec(e);){var n=t[0],s=t[1],i=t.index,o=i+ n.indexOf("@apply"),l=i+n.length,c=e.slice(0,o),u=e.slice(l),f=r(c),p=a(s,f);e=[ c,p,u].join(""),h.lastIndex=i+p.length}return e}var c=Polymer.StyleUtil,h=c.rx.M IXIN_MATCH,u=c.rx.VAR_ASSIGN,f=/var\(\s*(--[^,]*),\s*(--[^)]*)\)/g,p=/;\s*/m,_=/ ^\s*(initial)|(inherit)\s*$/,d="_-_",m={},y={_measureElement:null,_map:m,_separa tor:d,transform:function(e,t){this.__currentElementProto=t,c.forRulesInStyles(e, this._boundFindDefinitions),c.forRulesInStyles(e,this._boundFindApplications),t& &(t.__applyShimInvalid=!1),this.__currentElementProto=null},_findDefinitions:fun ction(e){var t=e.parsedCssText;t=t.replace(f,o),t=t.replace(u,i),e.cssText=t,":r oot"===e.selector&&(e.selector=":host > *")},_findApplications:function(e){e.css Text=l(e.cssText)},transformRule:function(e){this._findDefinitions(e),this._find Applications(e)},_getInitialValueForProperty:function(e){return this._measureEle ment||(this._measureElement=document.createElement("meta"),this._measureElement. style.all="initial",document.head.appendChild(this._measureElement)),window.getC omputedStyle(this._measureElement).getPropertyValue(e)}};return y._boundTransfor mRule=y.transformRule.bind(y),y._boundFindDefinitions=y._findDefinitions.bind(y) ,y._boundFindApplications=y._findApplications.bind(y),y}(),function(){var e=Poly mer.Base._prepElement,t=Polymer.Settings.useNativeShadow,n=Polymer.StyleUtil,r=P olymer.StyleTransformer,s=Polymer.StyleExtends,i=Polymer.ApplyShim,o=Polymer.Set tings;Polymer.Base._addFeature({_prepElement:function(t){this._encapsulateStyle& &"shady"!==this.__cssBuild&&r.element(t,this.is,this._scopeCssViaAttr),e.call(th is,t)},_prepStyles:function(){void 0===this._encapsulateStyle&&(this._encapsulat eStyle=!t),t||(this._scopeStyle=n.applyStylePlaceHolder(this.is)),this.__cssBuil d=n.cssBuildTypeForModule(this.is)},_prepShimStyles:function(){if(this._template ){var e=n.isTargetedBuild(this.__cssBuild);if(o.useNativeCSSProperties&&"shadow" ===this.__cssBuild&&e)return;this._styles=this._styles||this._collectStyles(),o. useNativeCSSProperties&&!this.__cssBuild&&i.transform(this._styles,this);var s=o .useNativeCSSProperties&&e?this._styles.length&&this._styles[0].textContent.trim ():r.elementStyles(this);this._prepStyleProperties(),!this._needsStyleProperties ()&&s&&n.applyCss(s,this.is,t?this._template.content:null,this._scopeStyle)}else this._styles=[]},_collectStyles:function(){var e=[],t="",r=this.styleModules;if (r)for(var i,o=0,a=r.length;o<a&&(i=r[o]);o++)t+=n.cssFromModule(i);t+=n.cssFrom Module(this.is);var l=this._template&&this._template.parentNode;if(!this._templa te||l&&l.id.toLowerCase()===this.is||(t+=n.cssFromElement(this._template)),t){va r c=document.createElement("style");c.textContent=t,s.hasExtends(c.textContent)& &(t=s.transform(c)),e.push(c)}return e},_elementAdd:function(e){this._encapsulat eStyle&&(e.__styleScoped?e.__styleScoped=!1:r.dom(e,this.is,this._scopeCssViaAtt r))},_elementRemove:function(e){this._encapsulateStyle&&r.dom(e,this.is,this._sc opeCssViaAttr,!0)},scopeSubtree:function(e,n){if(!t){var r=this,s=function(e){if (e.nodeType===Node.ELEMENT_NODE){var t=e.getAttribute("class");e.setAttribute("c lass",r._scopeElementClass(e,t));for(var n,s=e.querySelectorAll("*"),i=0;i<s.len gth&&(n=s[i]);i++)t=n.getAttribute("class"),n.setAttribute("class",r._scopeEleme ntClass(n,t))}};if(s(e),n){var i=new MutationObserver(function(e){for(var t,n=0; n<e.length&&(t=e[n]);n++)if(t.addedNodes)for(var r=0;r<t.addedNodes.length;r++)s (t.addedNodes[r])});return i.observe(e,{childList:!0,subtree:!0}),i}}}})}(),Poly mer.StyleProperties=function(){"use strict";function e(e,t){var n=parseInt(e/32) ,r=1<<e%32;t[n]=(t[n]||0)|r}var t=Polymer.DomApi.matchesSelector,n=Polymer.Style Util,r=Polymer.StyleTransformer,s=navigator.userAgent.match("Trident"),i=Polymer .Settings;return{decorateStyles:function(e,t){var s=this,i={},o=[],a=0,l=r._calc HostScope(t.is,t.extends);n.forRulesInStyles(e,function(e,r){s.decorateRule(e),e .index=a++,s.whenHostOrRootRule(t,e,r,function(r){if(e.parent.type===n.ruleTypes .MEDIA_RULE&&(t.__notStyleScopeCacheable=!0),r.isHost){var s=r.selector.split(" ").some(function(e){return 0===e.indexOf(l)&&e.length!==l.length});t.__notStyleS copeCacheable=t.__notStyleScopeCacheable||s}}),s.collectPropertiesInCssText(e.pr opertyInfo.cssText,i)},function(e){o.push(e)}),e._keyframes=o;var c=[];for(var h in i)c.push(h);return c},decorateRule:function(e){if(e.propertyInfo)return e.pr opertyInfo;var t={},n={},r=this.collectProperties(e,n);return r&&(t.properties=n ,e.rules=null),t.cssText=this.collectCssText(e),e.propertyInfo=t,t},collectPrope rties:function(e,t){var n=e.propertyInfo;if(!n){for(var r,s,i,o=this.rx.VAR_ASSI GN,a=e.parsedCssText;r=o.exec(a);)s=(r[2]||r[3]).trim(),"inherit"!==s&&(t[r[1].t rim()]=s),i=!0;return i}if(n.properties)return Polymer.Base.mixin(t,n.properties ),!0},collectCssText:function(e){return this.collectConsumingCssText(e.parsedCss Text)},collectConsumingCssText:function(e){return e.replace(this.rx.BRACKETED,"" ).replace(this.rx.VAR_ASSIGN,"")},collectPropertiesInCssText:function(e,t){for(v ar n;n=this.rx.VAR_CONSUMED.exec(e);){var r=n[1];":"!==n[2]&&(t[r]=!0)}},reify:f unction(e){for(var t,n=Object.getOwnPropertyNames(e),r=0;r<n.length;r++)t=n[r],e [t]=this.valueForProperty(e[t],e)},valueForProperty:function(e,t){if(e)if(e.inde xOf(";")>=0)e=this.valueForProperties(e,t);else{var r=this,s=function(e,n,s,i){v ar o=r.valueForProperty(t[n],t);return o&&"initial"!==o?"apply-shim-inherit"===o &&(o="inherit"):o=r.valueForProperty(t[s]||s,t)||s,e+(o||"")+i};e=n.processVaria bleAndFallback(e,s)}return e&&e.trim()||""},valueForProperties:function(e,t){for (var n,r,s=e.split(";"),i=0;i<s.length;i++)if(n=s[i]){if(this.rx.MIXIN_MATCH.las tIndex=0,r=this.rx.MIXIN_MATCH.exec(n))n=this.valueForProperty(t[r[1]],t);else{v ar o=n.indexOf(":");if(o!==-1){var a=n.substring(o);a=a.trim(),a=this.valueForPr operty(a,t)||a,n=n.substring(0,o)+a}}s[i]=n&&n.lastIndexOf(";")===n.length-1?n.s lice(0,-1):n||""}return s.join(";")},applyProperties:function(e,t){var n="";e.pr opertyInfo||this.decorateRule(e),e.propertyInfo.cssText&&(n=this.valueForPropert ies(e.propertyInfo.cssText,t)),e.cssText=n},applyKeyframeTransforms:function(e,t ){var n=e.cssText,r=e.cssText;if(null==e.hasAnimations&&(e.hasAnimations=this.rx .ANIMATION_MATCH.test(n)),e.hasAnimations){var s;if(null==e.keyframeNamesToTrans form){e.keyframeNamesToTransform=[];for(var i in t)s=t[i],r=s(n),n!==r&&(n=r,e.k eyframeNamesToTransform.push(i))}else{for(var o=0;o<e.keyframeNamesToTransform.l ength;++o)s=t[e.keyframeNamesToTransform[o]],n=s(n);r=n}}e.cssText=r},propertyDa taFromStyles:function(r,s){var i={},o=this,a=[];return n.forActiveRulesInStyles( r,function(n){n.propertyInfo||o.decorateRule(n);var r=n.transformedSelector||n.p arsedSelector;s&&n.propertyInfo.properties&&r&&t.call(s,r)&&(o.collectProperties (n,i),e(n.index,a))}),{properties:i,key:a}},_rootSelector:/:root|:host\s*>\s*\*/ ,_checkRoot:function(e,t){return Boolean(t.match(this._rootSelector))||"html"=== e&&t.indexOf("html")>-1},whenHostOrRootRule:function(e,t,n,s){if(t.propertyInfo| |self.decorateRule(t),t.propertyInfo.properties){var o=e.is?r._calcHostScope(e.i s,e.extends):"html",a=t.parsedSelector,l=this._checkRoot(o,a),c=!l&&0===a.indexO f(":host"),h=e.__cssBuild||n.__cssBuild;if("shady"===h&&(l=a===o+" > *."+o||a.in dexOf("html")>-1,c=!l&&0===a.indexOf(o)),l||c){var u=o;c&&(i.useNativeShadow&&!t .transformedSelector&&(t.transformedSelector=r._transformRuleCss(t,r._transformC omplexSelector,e.is,o)),u=t.transformedSelector||t.parsedSelector),l&&"html"===o &&(u=t.transformedSelector||t.parsedSelector),s({selector:u,isHost:c,isRoot:l})} }},hostAndRootPropertiesForScope:function(e){var r={},s={},i=this;return n.forAc tiveRulesInStyles(e._styles,function(n,o){i.whenHostOrRootRule(e,n,o,function(o) {var a=e._element||e;t.call(a,o.selector)&&(o.isHost?i.collectProperties(n,r):i. collectProperties(n,s))})}),{rootProps:s,hostProps:r}},transformStyles:function( e,t,n){var s=this,o=r._calcHostScope(e.is,e.extends),a=e.extends?"\\"+o.slice(0, -1)+"\\]":o,l=new RegExp(this.rx.HOST_PREFIX+a+this.rx.HOST_SUFFIX),c=this._elem entKeyframeTransforms(e,n);return r.elementStyles(e,function(r){s.applyPropertie s(r,t),i.useNativeShadow||Polymer.StyleUtil.isKeyframesSelector(r)||!r.cssText|| (s.applyKeyframeTransforms(r,c),s._scopeSelector(r,l,o,e._scopeCssViaAttr,n))})} ,_elementKeyframeTransforms:function(e,t){var n=e._styles._keyframes,r={};if(!i. useNativeShadow&&n)for(var s=0,o=n[s];s<n.length;o=n[++s])this._scopeKeyframes(o ,t),r[o.keyframesName]=this._keyframesRuleTransformer(o);return r},_keyframesRul eTransformer:function(e){return function(t){return t.replace(e.keyframesNameRx,e .transformedKeyframesName)}},_scopeKeyframes:function(e,t){e.keyframesNameRx=new RegExp(e.keyframesName,"g"),e.transformedKeyframesName=e.keyframesName+"-"+t,e. transformedSelector=e.transformedSelector||e.selector,e.selector=e.transformedSe lector.replace(e.keyframesName,e.transformedKeyframesName)},_scopeSelector:funct ion(e,t,n,s,i){e.transformedSelector=e.transformedSelector||e.selector;for(var o ,a=e.transformedSelector,l=s?"["+r.SCOPE_NAME+"~="+i+"]":"."+i,c=a.split(","),h= 0,u=c.length;h<u&&(o=c[h]);h++)c[h]=o.match(t)?o.replace(n,l):l+" "+o;e.selector =c.join(",")},applyElementScopeSelector:function(e,t,n,s){var i=s?e.getAttribute (r.SCOPE_NAME):e.getAttribute("class")||"",o=n?i.replace(n,t):(i?i+" ":"")+this. XSCOPE_NAME+" "+t;i!==o&&(s?e.setAttribute(r.SCOPE_NAME,o):e.setAttribute("class ",o))},applyElementStyle:function(e,t,r,o){var a=o?o.textContent||"":this.transf ormStyles(e,t,r),l=e._customStyle;return l&&!i.useNativeShadow&&l!==o&&(l._useCo unt--,l._useCount<=0&&l.parentNode&&l.parentNode.removeChild(l)),i.useNativeShad ow?e._customStyle?(e._customStyle.textContent=a,o=e._customStyle):a&&(o=n.applyC ss(a,r,e.root,e._scopeStyle)):o?o.parentNode||(s&&a.indexOf("@media")>-1&&(o.tex tContent=a),n.applyStyle(o,null,e._scopeStyle)):a&&(o=n.applyCss(a,r,null,e._sco peStyle)),o&&(o._useCount=o._useCount||0,e._customStyle!=o&&o._useCount++,e._cus tomStyle=o),o},mixinCustomStyle:function(e,t){var n;for(var r in t)n=t[r],(n||0= ==n)&&(e[r]=n)},updateNativeStyleProperties:function(e,t){var n=e.__customStyleP roperties;if(n)for(var r=0;r<n.length;r++)e.style.removeProperty(n[r]);var s=[]; for(var i in t)null!==t[i]&&(e.style.setProperty(i,t[i]),s.push(i));e.__customSt yleProperties=s},rx:n.rx,XSCOPE_NAME:"x-scope"}}(),function(){Polymer.StyleCache =function(){this.cache={}},Polymer.StyleCache.prototype={MAX:100,store:function( e,t,n,r){t.keyValues=n,t.styles=r;var s=this.cache[e]=this.cache[e]||[];s.push(t ),s.length>this.MAX&&s.shift()},retrieve:function(e,t,n){var r=this.cache[e];if( r)for(var s,i=r.length-1;i>=0;i--)if(s=r[i],n===s.styles&&this._objectsEqual(t,s .keyValues))return s},clear:function(){this.cache={}},_objectsEqual:function(e,t ){var n,r;for(var s in e)if(n=e[s],r=t[s],!("object"==typeof n&&n?this._objectsS trictlyEqual(n,r):n===r))return!1;return!Array.isArray(e)||e.length===t.length}, _objectsStrictlyEqual:function(e,t){return this._objectsEqual(e,t)&&this._object sEqual(t,e)}}}(),Polymer.StyleDefaults=function(){var e=Polymer.StyleProperties, t=Polymer.StyleCache,n=Polymer.Settings.useNativeCSSProperties,r={_styles:[],_pr operties:null,customStyle:{},_styleCache:new t,_element:Polymer.DomApi.wrap(docu ment.documentElement),addStyle:function(e){this._styles.push(e),this._properties =null},get _styleProperties(){return this._properties||(e.decorateStyles(this._s tyles,this),this._styles._scopeStyleProperties=null,this._properties=e.hostAndRo otPropertiesForScope(this).rootProps,e.mixinCustomStyle(this._properties,this.cu stomStyle),e.reify(this._properties)),this._properties},hasStyleProperties:funct ion(){return Boolean(this._properties)},_needsStyleProperties:function(){},_comp uteStyleProperties:function(){return this._styleProperties},updateStyles:functio n(t){this._properties=null,t&&Polymer.Base.mixin(this.customStyle,t),this._style Cache.clear();for(var r,s=0;s<this._styles.length;s++)r=this._styles[s],r=r.__im portElement||r,r._apply();n&&e.updateNativeStyleProperties(document.documentElem ent,this.customStyle)}};return r}(),function(){"use strict";var e=Polymer.Base.s erializeValueToAttribute,t=Polymer.StyleProperties,n=Polymer.StyleTransformer,r= Polymer.StyleDefaults,s=Polymer.Settings.useNativeShadow,i=Polymer.Settings.useN ativeCSSProperties;Polymer.Base._addFeature({_prepStyleProperties:function(){i|| (this._ownStylePropertyNames=this._styles&&this._styles.length?t.decorateStyles( this._styles,this):null);
4 },customStyle:null,getComputedStyleValue:function(e){return!i&&this._styleProper ties&&this._styleProperties[e]||getComputedStyle(this).getPropertyValue(e)},_set upStyleProperties:function(){this.customStyle={},this._styleCache=null,this._sty leProperties=null,this._scopeSelector=null,this._ownStyleProperties=null,this._c ustomStyle=null},_needsStyleProperties:function(){return Boolean(!i&&this._ownSt ylePropertyNames&&this._ownStylePropertyNames.length)},_validateApplyShim:functi on(){if(this.__applyShimInvalid){Polymer.ApplyShim.transform(this._styles,this._ _proto__);var e=n.elementStyles(this);if(s){var t=this._template.content.querySe lector("style");t&&(t.textContent=e)}else{var r=this._scopeStyle&&this._scopeSty le.nextSibling;r&&(r.textContent=e)}}},_beforeAttached:function(){this._scopeSel ector&&!this.__stylePropertiesInvalid||!this._needsStyleProperties()||(this.__st ylePropertiesInvalid=!1,this._updateStyleProperties())},_findStyleHost:function( ){for(var e,t=this;e=Polymer.dom(t).getOwnerRoot();){if(Polymer.isInstance(e.hos t))return e.host;t=e.host}return r},_updateStyleProperties:function(){var e,n=th is._findStyleHost();n._styleProperties||n._computeStyleProperties(),n._styleCach e||(n._styleCache=new Polymer.StyleCache);var r=t.propertyDataFromStyles(n._styl es,this),i=!this.__notStyleScopeCacheable;i&&(r.key.customStyle=this.customStyle ,e=n._styleCache.retrieve(this.is,r.key,this._styles));var a=Boolean(e);a?this._ styleProperties=e._styleProperties:this._computeStyleProperties(r.properties),th is._computeOwnStyleProperties(),a||(e=o.retrieve(this.is,this._ownStylePropertie s,this._styles));var l=Boolean(e)&&!a,c=this._applyStyleProperties(e);a||(c=c&&s ?c.cloneNode(!0):c,e={style:c,_scopeSelector:this._scopeSelector,_stylePropertie s:this._styleProperties},i&&(r.key.customStyle={},this.mixin(r.key.customStyle,t his.customStyle),n._styleCache.store(this.is,e,r.key,this._styles)),l||o.store(t his.is,Object.create(e),this._ownStyleProperties,this._styles))},_computeStylePr operties:function(e){var n=this._findStyleHost();n._styleProperties||n._computeS tyleProperties();var r=Object.create(n._styleProperties),s=t.hostAndRootProperti esForScope(this);this.mixin(r,s.hostProps),e=e||t.propertyDataFromStyles(n._styl es,this).properties,this.mixin(r,e),this.mixin(r,s.rootProps),t.mixinCustomStyle (r,this.customStyle),t.reify(r),this._styleProperties=r},_computeOwnStylePropert ies:function(){for(var e,t={},n=0;n<this._ownStylePropertyNames.length;n++)e=thi s._ownStylePropertyNames[n],t[e]=this._styleProperties[e];this._ownStyleProperti es=t},_scopeCount:0,_applyStyleProperties:function(e){var n=this._scopeSelector; this._scopeSelector=e?e._scopeSelector:this.is+"-"+this.__proto__._scopeCount++; var r=t.applyElementStyle(this,this._styleProperties,this._scopeSelector,e&&e.st yle);return s||t.applyElementScopeSelector(this,this._scopeSelector,n,this._scop eCssViaAttr),r},serializeValueToAttribute:function(t,n,r){if(r=r||this,"class"== =n&&!s){var i=r===this?this.domHost||this.dataHost:this;i&&(t=i._scopeElementCla ss(r,t))}r=this.shadyRoot&&this.shadyRoot._hasDistributed?Polymer.dom(r):r,e.cal l(this,t,n,r)},_scopeElementClass:function(e,t){return s||this._scopeCssViaAttr| |(t=(t?t+" ":"")+a+" "+this.is+(e._scopeSelector?" "+l+" "+e._scopeSelector:"")) ,t},updateStyles:function(e){e&&this.mixin(this.customStyle,e),i?t.updateNativeS tyleProperties(this,this.customStyle):(this.isAttached?this._needsStylePropertie s()?this._updateStyleProperties():this._styleProperties=null:this.__stylePropert iesInvalid=!0,this._styleCache&&this._styleCache.clear(),this._updateRootStyles( ))},_updateRootStyles:function(e){e=e||this.root;for(var t,n=Polymer.dom(e)._que ry(function(e){return e.shadyRoot||e.shadowRoot}),r=0,s=n.length;r<s&&(t=n[r]);r ++)t.updateStyles&&t.updateStyles()}}),Polymer.updateStyles=function(e){r.update Styles(e),Polymer.Base._updateRootStyles(document)};var o=new Polymer.StyleCache ;Polymer.customStyleCache=o;var a=n.SCOPE_NAME,l=t.XSCOPE_NAME}(),Polymer.Base._ addFeature({_registerFeatures:function(){this._prepIs(),this._prepConstructor(), this._prepStyles()},_finishRegisterFeatures:function(){this._prepTemplate(),this ._prepShimStyles(),this._prepAnnotations(),this._prepEffects(),this._prepBehavio rs(),this._prepPropertyInfo(),this._prepBindings(),this._prepShady()},_prepBehav ior:function(e){this._addPropertyEffects(e.properties),this._addComplexObserverE ffects(e.observers),this._addHostAttributes(e.hostAttributes)},_initFeatures:fun ction(){this._setupGestures(),this._setupConfigure(),this._setupStyleProperties( ),this._setupDebouncers(),this._setupShady(),this._registerHost(),this._template &&(this._validateApplyShim(),this._poolContent(),this._beginHosting(),this._stam pTemplate(),this._endHosting(),this._marshalAnnotationReferences()),this._marsha lInstanceEffects(),this._marshalBehaviors(),this._marshalHostAttributes(),this._ marshalAttributes(),this._tryReady()},_marshalBehavior:function(e){e.listeners&& this._listenListeners(e.listeners)}}),function(){var e,t=Polymer.StyleProperties ,n=Polymer.StyleUtil,r=Polymer.CssParse,s=Polymer.StyleDefaults,i=Polymer.StyleT ransformer,o=Polymer.ApplyShim,a=Polymer.Debounce,l=Polymer.Settings;Polymer({is :"custom-style",extends:"style",_template:null,properties:{include:String},ready :function(){this.__appliedElement=this.__appliedElement||this,this.__cssBuild=n. getCssBuildType(this),this.__appliedElement!==this&&(this.__appliedElement.__css Build=this.__cssBuild),this._tryApply()},attached:function(){this._tryApply()},_ tryApply:function(){if(!this._appliesToDocument&&this.parentNode&&"dom-module"!= =this.parentNode.localName){this._appliesToDocument=!0;var e=this.__appliedEleme nt;if(l.useNativeCSSProperties||(this.__needsUpdateStyles=s.hasStyleProperties() ,s.addStyle(e)),e.textContent||this.include)this._apply(!0);else{var t=this,n=ne w MutationObserver(function(){n.disconnect(),t._apply(!0)});n.observe(e,{childLi st:!0})}}},_updateStyles:function(){Polymer.updateStyles()},_apply:function(e){v ar t=this.__appliedElement;if(this.include&&(t.textContent=n.cssFromModules(this .include,!0)+t.textContent),t.textContent){var r=this.__cssBuild,s=n.isTargetedB uild(r);if(!l.useNativeCSSProperties||!s){var a=n.rulesForStyle(t);if(s||(n.forE achRule(a,function(e){i.documentRule(e)}),l.useNativeCSSProperties&&!r&&o.transf orm([t])),l.useNativeCSSProperties)t.textContent=n.toCssText(a);else{var c=this, h=function(){c._flushCustomProperties()};e?Polymer.RenderStatus.whenReady(h):h() }}}},_flushCustomProperties:function(){this.__needsUpdateStyles?(this.__needsUpd ateStyles=!1,e=a(e,this._updateStyles)):this._applyCustomProperties()},_applyCus tomProperties:function(){var e=this.__appliedElement;this._computeStylePropertie s();var s=this._styleProperties,i=n.rulesForStyle(e);i&&(e.textContent=n.toCssTe xt(i,function(e){var n=e.cssText=e.parsedCssText;e.propertyInfo&&e.propertyInfo. cssText&&(n=r.removeCustomPropAssignment(n),e.cssText=t.valueForProperties(n,s)) }))}})}(),Polymer.Templatizer={properties:{__hideTemplateChildren__:{observer:"_ showHideChildren"}},_instanceProps:Polymer.nob,_parentPropPrefix:"_parent_",temp latize:function(e){if(this._templatized=e,e._content||(e._content=e.content),e._ content._ctor)return this.ctor=e._content._ctor,void this._prepParentProperties( this.ctor.prototype,e);var t=Object.create(Polymer.Base);this._customPrepAnnotat ions(t,e),this._prepParentProperties(t,e),t._prepEffects(),this._customPrepEffec ts(t),t._prepBehaviors(),t._prepPropertyInfo(),t._prepBindings(),t._notifyPathUp =this._notifyPathUpImpl,t._scopeElementClass=this._scopeElementClassImpl,t.liste n=this._listenImpl,t._showHideChildren=this._showHideChildrenImpl,t.__setPropert yOrig=this.__setProperty,t.__setProperty=this.__setPropertyImpl;var n=this._cons tructorImpl,r=function(e,t){n.call(this,e,t)};r.prototype=t,t.constructor=r,e._c ontent._ctor=r,this.ctor=r},_getRootDataHost:function(){return this.dataHost&&th is.dataHost._rootDataHost||this.dataHost},_showHideChildrenImpl:function(e){for( var t=this._children,n=0;n<t.length;n++){var r=t[n];Boolean(e)!=Boolean(r.__hide TemplateChildren__)&&(r.nodeType===Node.TEXT_NODE?e?(r.__polymerTextContent__=r. textContent,r.textContent=""):r.textContent=r.__polymerTextContent__:r.style&&(e ?(r.__polymerDisplay__=r.style.display,r.style.display="none"):r.style.display=r .__polymerDisplay__)),r.__hideTemplateChildren__=e}},__setPropertyImpl:function( e,t,n,r){r&&r.__hideTemplateChildren__&&"textContent"==e&&(e="__polymerTextConte nt__"),this.__setPropertyOrig(e,t,n,r)},_debounceTemplate:function(e){Polymer.do m.addDebouncer(this.debounce("_debounceTemplate",e))},_flushTemplates:function() {Polymer.dom.flush()},_customPrepEffects:function(e){var t=e._parentProps;for(va r n in t)e._addPropertyEffect(n,"function",this._createHostPropEffector(n));for( n in this._instanceProps)e._addPropertyEffect(n,"function",this._createInstanceP ropEffector(n))},_customPrepAnnotations:function(e,t){e._template=t;var n=t._con tent;if(!n._notes){var r=e._rootDataHost;r&&(Polymer.Annotations.prepElement=fun ction(){r._prepElement()}),n._notes=Polymer.Annotations.parseAnnotations(t),Poly mer.Annotations.prepElement=null,this._processAnnotations(n._notes)}e._notes=n._ notes,e._parentProps=n._parentProps},_prepParentProperties:function(e,t){var n=t his._parentProps=e._parentProps;if(this._forwardParentProp&&n){var r,s=e._parent PropProto;if(!s){for(r in this._instanceProps)delete n[r];s=e._parentPropProto=O bject.create(null),t!=this&&(Polymer.Bind.prepareModel(s),Polymer.Base.prepareMo delNotifyPath(s));for(r in n){var i=this._parentPropPrefix+r,o=[{kind:"function" ,effect:this._createForwardPropEffector(r),fn:Polymer.Bind._functionEffect},{kin d:"notify",fn:Polymer.Bind._notifyEffect,effect:{event:Polymer.CaseMap.camelToDa shCase(i)+"-changed"}}];Polymer.Bind._createAccessors(s,i,o)}}var a=this;t!=this &&(Polymer.Bind.prepareInstance(t),t._forwardParentProp=function(e,t){a._forward ParentProp(e,t)}),this._extendTemplate(t,s),t._pathEffector=function(e,t,n){retu rn a._pathEffectorImpl(e,t,n)}}},_createForwardPropEffector:function(e){return f unction(t,n){this._forwardParentProp(e,n)}},_createHostPropEffector:function(e){ var t=this._parentPropPrefix;return function(n,r){this.dataHost._templatized[t+e ]=r}},_createInstancePropEffector:function(e){return function(t,n,r,s){s||this.d ataHost._forwardInstanceProp(this,e,n)}},_extendTemplate:function(e,t){var n=Obj ect.getOwnPropertyNames(t);t._propertySetter&&(e._propertySetter=t._propertySett er);for(var r,s=0;s<n.length&&(r=n[s]);s++){var i=e[r],o=Object.getOwnPropertyDe scriptor(t,r);Object.defineProperty(e,r,o),void 0!==i&&e._propertySetter(r,i)}}, _showHideChildren:function(e){},_forwardInstancePath:function(e,t,n){},_forwardI nstanceProp:function(e,t,n){},_notifyPathUpImpl:function(e,t){var n=this.dataHos t,r=Polymer.Path.root(e);n._forwardInstancePath.call(n,this,e,t),r in n._parentP rops&&n._templatized._notifyPath(n._parentPropPrefix+e,t)},_pathEffectorImpl:fun ction(e,t,n){if(this._forwardParentPath&&0===e.indexOf(this._parentPropPrefix)){ var r=e.substring(this._parentPropPrefix.length),s=Polymer.Path.root(r);s in thi s._parentProps&&this._forwardParentPath(r,t)}Polymer.Base._pathEffector.call(thi s._templatized,e,t,n)},_constructorImpl:function(e,t){this._rootDataHost=t._getR ootDataHost(),this._setupConfigure(e),this._registerHost(t),this._beginHosting() ,this.root=this.instanceTemplate(this._template),this.root.__noContent=!this._no tes._hasContent,this.root.__styleScoped=!0,this._endHosting(),this._marshalAnnot atedNodes(),this._marshalInstanceEffects(),this._marshalAnnotatedListeners();for (var n=[],r=this.root.firstChild;r;r=r.nextSibling)n.push(r),r._templateInstance =this;this._children=n,t.__hideTemplateChildren__&&this._showHideChildren(!0),th is._tryReady()},_listenImpl:function(e,t,n){var r=this,s=this._rootDataHost,i=s. _createEventHandler(e,t,n),o=function(e){e.model=r,i(e)};s._listen(e,t,o)},_scop eElementClassImpl:function(e,t){var n=this._rootDataHost;return n?n._scopeElemen tClass(e,t):t},stamp:function(e){if(e=e||{},this._parentProps){var t=this._templ atized;for(var n in this._parentProps)void 0===e[n]&&(e[n]=t[this._parentPropPre fix+n])}return new this.ctor(e,this)},modelForElement:function(e){for(var t;e;)i f(t=e._templateInstance){if(t.dataHost==this)return t;e=t.dataHost}else e=e.pare ntNode}},Polymer({is:"dom-template",extends:"template",_template:null,behaviors: [Polymer.Templatizer],ready:function(){this.templatize(this)}}),Polymer._collect ions=new WeakMap,Polymer.Collection=function(e){Polymer._collections.set(e,this) ,this.userArray=e,this.store=e.slice(),this.initMap()},Polymer.Collection.protot ype={constructor:Polymer.Collection,initMap:function(){for(var e=this.omap=new W eakMap,t=this.pmap={},n=this.store,r=0;r<n.length;r++){var s=n[r];s&&"object"==t ypeof s?e.set(s,r):t[s]=r}},add:function(e){var t=this.store.push(e)-1;return e& &"object"==typeof e?this.omap.set(e,t):this.pmap[e]=t,"#"+t},removeKey:function( e){(e=this._parseKey(e))&&(this._removeFromMap(this.store[e]),delete this.store[ e])},_removeFromMap:function(e){e&&"object"==typeof e?this.omap.delete(e):delete this.pmap[e]},remove:function(e){var t=this.getKey(e);return this.removeKey(t), t},getKey:function(e){var t;if(t=e&&"object"==typeof e?this.omap.get(e):this.pma p[e],void 0!=t)return"#"+t},getKeys:function(){return Object.keys(this.store).ma p(function(e){return"#"+e})},_parseKey:function(e){if(e&&"#"==e[0])return e.slic e(1)},setItem:function(e,t){if(e=this._parseKey(e)){var n=this.store[e];n&&this. _removeFromMap(n),t&&"object"==typeof t?this.omap.set(t,e):this.pmap[t]=e,this.s tore[e]=t}},getItem:function(e){if(e=this._parseKey(e))return this.store[e]},get Items:function(){var e=[],t=this.store;for(var n in t)e.push(t[n]);return e},_ap plySplices:function(e){for(var t,n,r={},s=0;s<e.length&&(n=e[s]);s++){n.addedKey s=[];for(var i=0;i<n.removed.length;i++)t=this.getKey(n.removed[i]),r[t]=r[t]?nu ll:-1;for(i=0;i<n.addedCount;i++){var o=this.userArray[n.index+i];t=this.getKey( o),t=void 0===t?this.add(o):t,r[t]=r[t]?null:1,n.addedKeys.push(t)}}var a=[],l=[ ];for(t in r)r[t]<0&&(this.removeKey(t),a.push(t)),r[t]>0&&l.push(t);return[{rem oved:a,added:l}]}},Polymer.Collection.get=function(e){return Polymer._collection s.get(e)||new Polymer.Collection(e)},Polymer.Collection.applySplices=function(e, t){var n=Polymer._collections.get(e);return n?n._applySplices(t):null},Polymer({ is:"dom-repeat",extends:"template",_template:null,properties:{items:{type:Array} ,as:{type:String,value:"item"},indexAs:{type:String,value:"index"},sort:{type:Fu nction,observer:"_sortChanged"},filter:{type:Function,observer:"_filterChanged"} ,observe:{type:String,observer:"_observeChanged"},delay:Number,renderedItemCount :{type:Number,notify:!0,readOnly:!0},initialCount:{type:Number,observer:"_initia lizeChunking"},targetFramerate:{type:Number,value:20},_targetFrameTime:{type:Num ber,computed:"_computeFrameTime(targetFramerate)"}},behaviors:[Polymer.Templatiz er],observers:["_itemsChanged(items.*)"],created:function(){this._instances=[],t his._pool=[],this._limit=1/0;var e=this;this._boundRenderChunk=function(){e._ren derChunk()}},detached:function(){this.__isDetached=!0;for(var e=0;e<this._instan ces.length;e++)this._detachInstance(e)},attached:function(){if(this.__isDetached ){this.__isDetached=!1;for(var e=Polymer.dom(Polymer.dom(this).parentNode),t=0;t <this._instances.length;t++)this._attachInstance(t,e)}},ready:function(){this._i nstanceProps={__key__:!0},this._instanceProps[this.as]=!0,this._instanceProps[th is.indexAs]=!0,this.ctor||this.templatize(this)},_sortChanged:function(e){var t= this._getRootDataHost();this._sortFn=e&&("function"==typeof e?e:function(){retur n t[e].apply(t,arguments)}),this._needFullRefresh=!0,this.items&&this._debounceT emplate(this._render)},_filterChanged:function(e){var t=this._getRootDataHost(); this._filterFn=e&&("function"==typeof e?e:function(){return t[e].apply(t,argumen ts)}),this._needFullRefresh=!0,this.items&&this._debounceTemplate(this._render)} ,_computeFrameTime:function(e){return Math.ceil(1e3/e)},_initializeChunking:func tion(){this.initialCount&&(this._limit=this.initialCount,this._chunkCount=this.i nitialCount,this._lastChunkTime=performance.now())},_tryRenderChunk:function(){t his.items&&this._limit<this.items.length&&this.debounce("renderChunk",this._requ estRenderChunk)},_requestRenderChunk:function(){requestAnimationFrame(this._boun dRenderChunk)},_renderChunk:function(){var e=performance.now(),t=this._targetFra meTime/(e-this._lastChunkTime);this._chunkCount=Math.round(this._chunkCount*t)|| 1,this._limit+=this._chunkCount,this._lastChunkTime=e,this._debounceTemplate(thi s._render)},_observeChanged:function(){this._observePaths=this.observe&&this.obs erve.replace(".*",".").split(" ")},_itemsChanged:function(e){if("items"==e.path) Array.isArray(this.items)?this.collection=Polymer.Collection.get(this.items):thi s.items?this._error(this._logf("dom-repeat","expected array for `items`, found", this.items)):this.collection=null,this._keySplices=[],this._indexSplices=[],this ._needFullRefresh=!0,this._initializeChunking(),this._debounceTemplate(this._ren der);else if("items.splices"==e.path)this._keySplices=this._keySplices.concat(e. value.keySplices),this._indexSplices=this._indexSplices.concat(e.value.indexSpli ces),this._debounceTemplate(this._render);else{var t=e.path.slice(6);this._forwa rdItemPath(t,e.value),this._checkObservedPaths(t)}},_checkObservedPaths:function (e){if(this._observePaths){e=e.substring(e.indexOf(".")+1);for(var t=this._obser vePaths,n=0;n<t.length;n++)if(0===e.indexOf(t[n]))return this._needFullRefresh=! 0,void(this.delay?this.debounce("render",this._render,this.delay):this._debounce Template(this._render))}},render:function(){this._needFullRefresh=!0,this._debou nceTemplate(this._render),this._flushTemplates()},_render:function(){this._needF ullRefresh?(this._applyFullRefresh(),this._needFullRefresh=!1):this._keySplices. length&&(this._sortFn?this._applySplicesUserSort(this._keySplices):this._filterF n?this._applyFullRefresh():this._applySplicesArrayOrder(this._indexSplices)),thi s._keySplices=[],this._indexSplices=[];for(var e=this._keyToInstIdx={},t=this._i nstances.length-1;t>=0;t--){var n=this._instances[t];n.isPlaceholder&&t<this._li mit?n=this._insertInstance(t,n.__key__):!n.isPlaceholder&&t>=this._limit&&(n=thi s._downgradeInstance(t,n.__key__)),e[n.__key__]=t,n.isPlaceholder||n.__setProper ty(this.indexAs,t,!0)}this._pool.length=0,this._setRenderedItemCount(this._insta nces.length),this.fire("dom-change"),this._tryRenderChunk()},_applyFullRefresh:f unction(){var e,t=this.collection;if(this._sortFn)e=t?t.getKeys():[];else{e=[];v ar n=this.items;if(n)for(var r=0;r<n.length;r++)e.push(t.getKey(n[r]))}var s=thi s;for(this._filterFn&&(e=e.filter(function(e){return s._filterFn(t.getItem(e))}) ),this._sortFn&&e.sort(function(e,n){return s._sortFn(t.getItem(e),t.getItem(n)) }),r=0;r<e.length;r++){var i=e[r],o=this._instances[r];o?(o.__key__=i,!o.isPlace holder&&r<this._limit&&o.__setProperty(this.as,t.getItem(i),!0)):r<this._limit?t his._insertInstance(r,i):this._insertPlaceholder(r,i)}for(var a=this._instances. length-1;a>=r;a--)this._detachAndRemoveInstance(a)},_numericSort:function(e,t){r eturn e-t},_applySplicesUserSort:function(e){for(var t,n,r=this.collection,s={}, i=0;i<e.length&&(n=e[i]);i++){for(var o=0;o<n.removed.length;o++)t=n.removed[o], s[t]=s[t]?null:-1;for(o=0;o<n.added.length;o++)t=n.added[o],s[t]=s[t]?null:1}var a=[],l=[];for(t in s)s[t]===-1&&a.push(this._keyToInstIdx[t]),1===s[t]&&l.push( t);if(a.length)for(a.sort(this._numericSort),i=a.length-1;i>=0;i--){var c=a[i];v oid 0!==c&&this._detachAndRemoveInstance(c)}var h=this;if(l.length){this._filter Fn&&(l=l.filter(function(e){return h._filterFn(r.getItem(e))})),l.sort(function( e,t){return h._sortFn(r.getItem(e),r.getItem(t))});var u=0;for(i=0;i<l.length;i+ +)u=this._insertRowUserSort(u,l[i])}},_insertRowUserSort:function(e,t){for(var n =this.collection,r=n.getItem(t),s=this._instances.length-1,i=-1;e<=s;){var o=e+s >>1,a=this._instances[o].__key__,l=this._sortFn(n.getItem(a),r);if(l<0)e=o+1;els e{if(!(l>0)){i=o;break}s=o-1}}return i<0&&(i=s+1),this._insertPlaceholder(i,t),i },_applySplicesArrayOrder:function(e){for(var t,n=0;n<e.length&&(t=e[n]);n++){fo r(var r=0;r<t.removed.length;r++)this._detachAndRemoveInstance(t.index);for(r=0; r<t.addedKeys.length;r++)this._insertPlaceholder(t.index+r,t.addedKeys[r])}},_de tachInstance:function(e){var t=this._instances[e];if(!t.isPlaceholder){for(var n =0;n<t._children.length;n++){var r=t._children[n];Polymer.dom(t.root).appendChil d(r)}return t}},_attachInstance:function(e,t){var n=this._instances[e];n.isPlace holder||t.insertBefore(n.root,this)},_detachAndRemoveInstance:function(e){var t= this._detachInstance(e);t&&this._pool.push(t),this._instances.splice(e,1)},_inse rtPlaceholder:function(e,t){this._instances.splice(e,0,{isPlaceholder:!0,__key__ :t})},_stampInstance:function(e,t){var n={__key__:t};return n[this.as]=this.coll ection.getItem(t),n[this.indexAs]=e,this.stamp(n)},_insertInstance:function(e,t) {var n=this._pool.pop();n?(n.__setProperty(this.as,this.collection.getItem(t),!0 ),n.__setProperty("__key__",t,!0)):n=this._stampInstance(e,t);var r=this._instan ces[e+1],s=r&&!r.isPlaceholder?r._children[0]:this,i=Polymer.dom(this).parentNod e;return Polymer.dom(i).insertBefore(n.root,s),this._instances[e]=n,n},_downgrad eInstance:function(e,t){var n=this._detachInstance(e);return n&&this._pool.push( n),n={isPlaceholder:!0,__key__:t},this._instances[e]=n,n},_showHideChildren:func tion(e){for(var t=0;t<this._instances.length;t++)this._instances[t]._showHideChi ldren(e)},_forwardInstanceProp:function(e,t,n){if(t==this.as){var r;r=this._sort Fn||this._filterFn?this.items.indexOf(this.collection.getItem(e.__key__)):e[this .indexAs],this.set("items."+r,n)}},_forwardInstancePath:function(e,t,n){0===t.in dexOf(this.as+".")&&this._notifyPath("items."+e.__key__+"."+t.slice(this.as.leng th+1),n)},_forwardParentProp:function(e,t){for(var n,r=this._instances,s=0;s<r.l ength&&(n=r[s]);s++)n.isPlaceholder||n.__setProperty(e,t,!0)},_forwardParentPath :function(e,t){for(var n,r=this._instances,s=0;s<r.length&&(n=r[s]);s++)n.isPlac eholder||n._notifyPath(e,t,!0)},_forwardItemPath:function(e,t){if(this._keyToIns tIdx){var n=e.indexOf("."),r=e.substring(0,n<0?e.length:n),s=this._keyToInstIdx[ r],i=this._instances[s];i&&!i.isPlaceholder&&(n>=0?(e=this.as+"."+e.substring(n+ 1),i._notifyPath(e,t,!0)):i.__setProperty(this.as,t,!0))}},itemForElement:functi on(e){var t=this.modelForElement(e);return t&&t[this.as]},keyForElement:function (e){var t=this.modelForElement(e);return t&&t.__key__},indexForElement:function( e){var t=this.modelForElement(e);return t&&t[this.indexAs]}}),Polymer({is:"array -selector",_template:null,properties:{items:{type:Array,observer:"clearSelection "},multi:{type:Boolean,value:!1,observer:"clearSelection"},selected:{type:Object ,notify:!0},selectedItem:{type:Object,notify:!0},toggle:{type:Boolean,value:!1}} ,clearSelection:function(){if(Array.isArray(this.selected))for(var e=0;e<this.se lected.length;e++)this.unlinkPaths("selected."+e);else this.unlinkPaths("selecte d"),this.unlinkPaths("selectedItem");this.multi?this.selected&&!this.selected.le ngth||(this.selected=[],this._selectedColl=Polymer.Collection.get(this.selected) ):(this.selected=null,this._selectedColl=null),this.selectedItem=null},isSelecte d:function(e){return this.multi?void 0!==this._selectedColl.getKey(e):this.selec ted==e},deselect:function(e){if(this.multi){if(this.isSelected(e)){var t=this._s electedColl.getKey(e);this.arrayDelete("selected",e),this.unlinkPaths("selected. "+t)}}else this.selected=null,this.selectedItem=null,this.unlinkPaths("selected" ),this.unlinkPaths("selectedItem")},select:function(e){var t=Polymer.Collection. get(this.items),n=t.getKey(e);if(this.multi)if(this.isSelected(e))this.toggle&&t his.deselect(e);else{this.push("selected",e);var r=this._selectedColl.getKey(e); this.linkPaths("selected."+r,"items."+n)}else this.toggle&&e==this.selected?this .deselect():(this.selected=e,this.selectedItem=e,this.linkPaths("selected","item s."+n),this.linkPaths("selectedItem","items."+n))}}),Polymer({is:"dom-if",extend s:"template",_template:null,properties:{if:{type:Boolean,value:!1,observer:"_que ueRender"},restamp:{type:Boolean,value:!1,observer:"_queueRender"}},behaviors:[P olymer.Templatizer],_queueRender:function(){this._debounceTemplate(this._render) },detached:function(){this.parentNode&&(this.parentNode.nodeType!=Node.DOCUMENT_ FRAGMENT_NODE||Polymer.Settings.hasShadow&&this.parentNode instanceof ShadowRoot )||this._teardownInstance()},attached:function(){this.if&&this.ctor&&this.async( this._ensureInstance)},render:function(){this._flushTemplates()},_render:functio n(){this.if?(this.ctor||this.templatize(this),this._ensureInstance(),this._showH ideChildren()):this.restamp&&this._teardownInstance(),!this.restamp&&this._insta nce&&this._showHideChildren(),this.if!=this._lastIf&&(this.fire("dom-change"),th is._lastIf=this.if)},_ensureInstance:function(){var e=Polymer.dom(this).parentNo de;if(e){var t=Polymer.dom(e);if(this._instance){var n=this._instance._children; if(n&&n.length){var r=Polymer.dom(this).previousSibling;if(r!==n[n.length-1])for (var s,i=0;i<n.length&&(s=n[i]);i++)t.insertBefore(s,this)}}else{this._instance= this.stamp();var o=this._instance.root;t.insertBefore(o,this)}}},_teardownInstan ce:function(){if(this._instance){var e=this._instance._children;if(e&&e.length)f or(var t,n=Polymer.dom(Polymer.dom(e[0]).parentNode),r=0;r<e.length&&(t=e[r]);r+ +)n.removeChild(t);this._instance=null}},_showHideChildren:function(){var e=this .__hideTemplateChildren__||!this.if;this._instance&&this._instance._showHideChil dren(e)},_forwardParentProp:function(e,t){this._instance&&this._instance.__setPr operty(e,t,!0)},_forwardParentPath:function(e,t){this._instance&&this._instance. _notifyPath(e,t,!0)}}),Polymer({is:"dom-bind",extends:"template",_template:null, created:function(){var e=this;Polymer.RenderStatus.whenReady(function(){"loading "==document.readyState?document.addEventListener("DOMContentLoaded",function(){e ._markImportsReady()}):e._markImportsReady()})},_ensureReady:function(){this._re adied||this._readySelf()},_markImportsReady:function(){this._importsReady=!0,thi s._ensureReady()},_registerFeatures:function(){this._prepConstructor()},_insertC hildren:function(){var e=Polymer.dom(Polymer.dom(this).parentNode);e.insertBefor e(this.root,this)},_removeChildren:function(){if(this._children)for(var e=0;e<th is._children.length;e++)this.root.appendChild(this._children[e])},_initFeatures: function(){},_scopeElementClass:function(e,t){return this.dataHost?this.dataHost ._scopeElementClass(e,t):t},_configureInstanceProperties:function(){},_prepConfi gure:function(){var e={};for(var t in this._propertyEffects)e[t]=this[t];var n=t his._setupConfigure;this._setupConfigure=function(){n.call(this,e)}},attached:fu nction(){this._importsReady&&this.render()},detached:function(){this._removeChil dren()},render:function(){this._ensureReady(),this._children||(this._template=th is,this._prepAnnotations(),this._prepEffects(),this._prepBehaviors(),this._prepC onfigure(),this._prepBindings(),this._prepPropertyInfo(),Polymer.Base._initFeatu res.call(this),this._children=Polymer.TreeApi.arrayCopyChildNodes(this.root)),th is._insertChildren(),this.fire("dom-change")}})</script> <script>window.Swarming Behaviors=window.SwarmingBehaviors||{},function(){SwarmingBehaviors.CommonBehavi or={_botLink:function(e){if(e)return"/bot?id="+e},_botListLink:function(e,t){e=e ||[],t=t||[];var n=[];e.forEach(function(e){e.key&&e.value?Array.isArray(e.value )?e.value.forEach(function(t){n.push(e.key+":"+t)}):n.push(e.key+":"+e.value):n. push(e)});var s={f:n,c:t};return"/botlist?"+sk.query.fromParamSet(s)},_getJsonAs ync:function(e,t,n,s,i){if(!e||!t||!n)return void console.log("Need at least a p olymer element to bind to, a busy element, and a url");this.set(n,!0);var o=new Date;return this._jsonAsync=this._jsonAsync||{},this._jsonAsync[e]=o,i&&(t=t+"?" +sk.query.fromParamSet(i)),sk.request("GET",t,"",s).then(JSON.parse).then(functi on(t){return this._jsonAsync[e]!==o?(console.log("ignoring result because a seco nd request happened."),void this.set(n,!1)):(this.set(e,t),void this.set(n,!1))} .bind(this)).catch(function(s){return console.log("Reason for failure of request to "+t,s),this._jsonAsync[e]!==o?(console.log("ignoring failure because a secon d request happened."),void this.set(n,!1)):(this.set(e,!1),this.set(n,!1),Promis e.reject(s))}.bind(this))},_getJsonAsyncArr:function(e,t,n,s,i,o){if(!t||!n||!s) return void console.log("Need at least a polymer array to bind to, a busy elemen t, and a url");var r=t+":"+e;this.splice(s,e,1,{status:!0});var a=new Date;retur n this._jsonAsync=this._jsonAsync||{},this._jsonAsync[r]=a,o&&(n=n+"?"+sk.query. fromParamSet(o)),sk.request("GET",n,"",i).then(JSON.parse).then(function(n){retu rn this._jsonAsync[r]!==a?(console.log("ignoring result because a second request happened for ",r),void this.splice(s,e,1,{status:!1})):(this.splice(t,e,1,n),vo id this.splice(s,e,1,{status:!1}))}.bind(this)).catch(function(t){return console .log("Reason for failure of request to "+n,t),this._jsonAsync[r]!==a?(console.lo g("ignoring failure because a second request happened."),void this.splice(s,e,1, {status:!1})):(this.splice(s,e,1,{status:!1}),Promise.reject(t))}.bind(this))},_ humanDuration:function(e){return sk.human.strDuration(e)||"0s"},_not:function(e) {return!e},_or:function(){for(var e=!1,t=0;t<arguments.length;t++)e=e||arguments [t];return e},_taskLink:function(e,t){if(e)return t||(e=e.substring(0,e.length-1 )+"0"),"/task?id="+e},_taskListLink:function(e,t){e=e||[],t=t||[];var n=[];e.for Each(function(e){e.key&&e.value?Array.isArray(e.value)?e.value.forEach(function( t){n.push(e.key+":"+t)}):n.push(e.key+":"+e.value):n.push(e)});var s={f:n,c:t};r eturn"/tasklist?"+sk.query.fromParamSet(s)},_timeDiffApprox:function(e){return e ?sk.human.diffDate(e.getTime()):"eons"},_timeDiffExact:function(e,t){return e?(t ||(t=new Date),this._humanDuration((t.getTime()-e.getTime())/1e3)):"eons"},_trut hy:function(e){return!!e}}}()</script> <script>Polymer.AppLayout=Polymer.AppLayo ut||{},Polymer.AppLayout._scrollEffects=Polymer.AppLayout._scrollEffects||{},Pol ymer.AppLayout.scrollTimingFunction=function(o,l,e,r){return o/=r,-e*o*(o-2)+l}, Polymer.AppLayout.registerEffect=function(o,l){if(null!=Polymer.AppLayout._scrol lEffects[o])throw new Error("effect `"+o+"` is already registered.");Polymer.App Layout._scrollEffects[o]=l},Polymer.AppLayout.scroll=function(o){o=o||{};var l=d ocument.documentElement,e=o.target||l,r="scrollBehavior"in e.style&&e.scroll,t=" app-layout-silent-scroll",s=o.top||0,c=o.left||0,i=e===l?window.scrollTo:functio n(o,l){e.scrollLeft=o,e.scrollTop=l};if("smooth"===o.behavior)if(r)e.scroll(o);e lse{var n=Polymer.AppLayout.scrollTimingFunction,a=Date.now(),p=e===l?window.pag eYOffset:e.scrollTop,u=e===l?window.pageXOffset:e.scrollLeft,y=s-p,f=c-u,m=300,L =function o(){var l=Date.now(),e=l-a;e<m?(i(n(e,u,f,m),n(e,p,y,m)),requestAnimat ionFrame(o)):i(c,s)}.bind(this);L()}else"silent"===o.behavior?(l.classList.add(t ),clearInterval(Polymer.AppLayout._scrollTimer),Polymer.AppLayout._scrollTimer=s etTimeout(function(){l.classList.remove(t),Polymer.AppLayout._scrollTimer=null}, 100),i(c,s)):i(c,s)}</script> <style>[hidden]{display:none!important}</style> <s tyle is="custom-style">:root{--layout:{display:-ms-flexbox;display:-webkit-flex; display:flex};--layout-inline:{display:-ms-inline-flexbox;display:-webkit-inline -flex;display:inline-flex};--layout-horizontal:{@apply(--layout);-ms-flex-direct ion:row;-webkit-flex-direction:row;flex-direction:row};--layout-horizontal-rever se:{@apply(--layout);-ms-flex-direction:row-reverse;-webkit-flex-direction:row-r everse;flex-direction:row-reverse};--layout-vertical:{@apply(--layout);-ms-flex- direction:column;-webkit-flex-direction:column;flex-direction:column};--layout-v ertical-reverse:{@apply(--layout);-ms-flex-direction:column-reverse;-webkit-flex -direction:column-reverse;flex-direction:column-reverse};--layout-wrap:{-ms-flex -wrap:wrap;-webkit-flex-wrap:wrap;flex-wrap:wrap};--layout-wrap-reverse:{-ms-fle x-wrap:wrap-reverse;-webkit-flex-wrap:wrap-reverse;flex-wrap:wrap-reverse};--lay out-flex-auto:{-ms-flex:1 1 auto;-webkit-flex:1 1 auto;flex:1 1 auto};--layout-f lex-none:{-ms-flex:none;-webkit-flex:none;flex:none};--layout-flex:{-ms-flex:1 1 0px;-webkit-flex:1;flex:1;-webkit-flex-basis:0px;flex-basis:0px};--layout-flex- 2:{-ms-flex:2;-webkit-flex:2;flex:2};--layout-flex-3:{-ms-flex:3;-webkit-flex:3; flex:3};--layout-flex-4:{-ms-flex:4;-webkit-flex:4;flex:4};--layout-flex-5:{-ms- flex:5;-webkit-flex:5;flex:5};--layout-flex-6:{-ms-flex:6;-webkit-flex:6;flex:6} ;--layout-flex-7:{-ms-flex:7;-webkit-flex:7;flex:7};--layout-flex-8:{-ms-flex:8; -webkit-flex:8;flex:8};--layout-flex-9:{-ms-flex:9;-webkit-flex:9;flex:9};--layo ut-flex-10:{-ms-flex:10;-webkit-flex:10;flex:10};--layout-flex-11:{-ms-flex:11;- webkit-flex:11;flex:11};--layout-flex-12:{-ms-flex:12;-webkit-flex:12;flex:12};- -layout-start:{-ms-flex-align:start;-webkit-align-items:flex-start;align-items:f lex-start};--layout-center:{-ms-flex-align:center;-webkit-align-items:center;ali gn-items:center};--layout-end:{-ms-flex-align:end;-webkit-align-items:flex-end;a lign-items:flex-end};--layout-baseline:{-ms-flex-align:baseline;-webkit-align-it ems:baseline;align-items:baseline};--layout-start-justified:{-ms-flex-pack:start ;-webkit-justify-content:flex-start;justify-content:flex-start};--layout-center- justified:{-ms-flex-pack:center;-webkit-justify-content:center;justify-content:c enter};--layout-end-justified:{-ms-flex-pack:end;-webkit-justify-content:flex-en d;justify-content:flex-end};--layout-around-justified:{-ms-flex-pack:distribute; -webkit-justify-content:space-around;justify-content:space-around};--layout-just ified:{-ms-flex-pack:justify;-webkit-justify-content:space-between;justify-conte nt:space-between};--layout-center-center:{@apply(--layout-center);@apply(--layou t-center-justified)};--layout-self-start:{-ms-align-self:flex-start;-webkit-alig n-self:flex-start;align-self:flex-start};--layout-self-center:{-ms-align-self:ce nter;-webkit-align-self:center;align-self:center};--layout-self-end:{-ms-align-s elf:flex-end;-webkit-align-self:flex-end;align-self:flex-end};--layout-self-stre tch:{-ms-align-self:stretch;-webkit-align-self:stretch;align-self:stretch};--lay out-self-baseline:{-ms-align-self:baseline;-webkit-align-self:baseline;align-sel f:baseline};--layout-start-aligned:{-ms-flex-line-pack:start;-ms-align-content:f lex-start;-webkit-align-content:flex-start;align-content:flex-start};--layout-en d-aligned:{-ms-flex-line-pack:end;-ms-align-content:flex-end;-webkit-align-conte nt:flex-end;align-content:flex-end};--layout-center-aligned:{-ms-flex-line-pack: center;-ms-align-content:center;-webkit-align-content:center;align-content:cente r};--layout-between-aligned:{-ms-flex-line-pack:justify;-ms-align-content:space- between;-webkit-align-content:space-between;align-content:space-between};--layou t-around-aligned:{-ms-flex-line-pack:distribute;-ms-align-content:space-around;- webkit-align-content:space-around;align-content:space-around};--layout-block:{di splay:block};--layout-invisible:{visibility:hidden!important};--layout-relative: {position:relative};--layout-fit:{position:absolute;top:0;right:0;bottom:0;left: 0};--layout-scroll:{-webkit-overflow-scrolling:touch;overflow:auto};--layout-ful lbleed:{margin:0;height:100vh};--layout-fixed-top:{position:fixed;top:0;left:0;r ight:0};--layout-fixed-right:{position:fixed;top:0;right:0;bottom:0};--layout-fi xed-bottom:{position:fixed;right:0;bottom:0;left:0};--layout-fixed-left:{positio n:fixed;top:0;bottom:0;left:0};}</style> <dom-module id="app-drawer" assetpath=" /res/imp/bower_components/app-layout/app-drawer/"> <template> <style>:host{posit ion:fixed;top:-120px;right:0;bottom:-120px;left:0;visibility:hidden;transition-p roperty:visibility}:host([opened]){visibility:visible}:host([persistent]){width: var(--app-drawer-width,256px)}:host([persistent][position=left]){right:auto}:hos t([persistent][position=right]){left:auto}#contentContainer{position:absolute;to p:0;bottom:0;left:0;width:var(--app-drawer-width,256px);padding:120px 0;transiti on-property:-webkit-transform;transition-property:transform;-webkit-transform:tr anslate3d(-100%,0,0);transform:translate3d(-100%,0,0);background-color:#FFF;@app ly(--app-drawer-content-container)}:host([position=right])>#contentContainer{rig ht:0;left:auto;-webkit-transform:translate3d(100%,0,0);transform:translate3d(100 %,0,0)}:host([swipe-open])>#contentContainer::after{position:fixed;top:0;bottom: 0;left:100%;visibility:visible;width:20px;content:''}:host([swipe-open][position =right])>#contentContainer::after{right:100%;left:auto}:host([opened])>#contentC ontainer{-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}#scri m{position:absolute;top:0;right:0;bottom:0;left:0;transition-property:opacity;-w ebkit-transform:translateZ(0);transform:translateZ(0);opacity:0;background:var(- -app-drawer-scrim-background,rgba(0,0,0,.5))}:host([opened])>#scrim{opacity:1}:h ost([opened][persistent])>#scrim{visibility:hidden;opacity:0}</style> <div id="s crim" on-tap="close"></div> <div id="contentContainer"> <content></content> </di v> </template> <script>Polymer({is:"app-drawer",properties:{opened:{type:Boolean ,value:!1,notify:!0,reflectToAttribute:!0},persistent:{type:Boolean,value:!1,ref lectToAttribute:!0},transitionDuration:{type:Number,value:200},align:{type:Strin g,value:"left"},position:{type:String,readOnly:!0,reflectToAttribute:!0},swipeOp en:{type:Boolean,value:!1,reflectToAttribute:!0},noFocusTrap:{type:Boolean,value :!1}},observers:["resetLayout(position, isAttached)","_resetPosition(align, isAt tached)","_styleTransitionDuration(transitionDuration)","_openedPersistentChange d(opened, persistent)"],_translateOffset:0,_trackDetails:null,_drawerState:0,_bo undEscKeydownHandler:null,_firstTabStop:null,_lastTabStop:null,attached:function (){this._styleTransitionDuration(0),Polymer.RenderStatus.afterNextRender(this,fu nction(){this._styleTransitionDuration(this.transitionDuration),this._boundEscKe ydownHandler=this._escKeydownHandler.bind(this),this._resetDrawerState(),this.$. scrim.addEventListener("transitionend",this._transitionend.bind(this)),this.$.co ntentContainer.addEventListener("transitionend",this._transitionend.bind(this)), this.addEventListener("keydown",this._tabKeydownHandler.bind(this)),this.listen( this,"track","_track"),this.setScrollDirection("y")}),this.fire("app-drawer-atta ched")},detached:function(){document.removeEventListener("keydown",this._boundEs cKeydownHandler)},open:function(){this.opened=!0},close:function(){this.opened=! 1},toggle:function(){this.opened=!this.opened},getWidth:function(){return this.$ .contentContainer.offsetWidth},resetLayout:function(){this.fire("app-drawer-rese t-layout")},_isRTL:function(){return"rtl"===window.getComputedStyle(this).direct ion},_resetPosition:function(){switch(this.align){case"start":return void this._ setPosition(this._isRTL()?"right":"left");case"end":return void this._setPositio n(this._isRTL()?"left":"right")}this._setPosition(this.align)},_escKeydownHandle r:function(t){var i=27;t.keyCode===i&&(t.preventDefault(),this.close())},_track: function(t){if(!this.persistent)switch(t.preventDefault(),t.detail.state){case"s tart":this._trackStart(t);break;case"track":this._trackMove(t);break;case"end":t his._trackEnd(t)}},_trackStart:function(t){this._drawerState=this._DRAWER_STATE. TRACKING,this._styleTransitionDuration(0),this.style.visibility="visible";var i= this.$.contentContainer.getBoundingClientRect();"left"===this.position?this._tra nslateOffset=i.left:this._translateOffset=i.right-window.innerWidth,this._trackD etails=[]},_trackMove:function(t){this._translateDrawer(t.detail.dx+this._transl ateOffset),this._trackDetails.push({dx:t.detail.dx,timeStamp:Date.now()})},_trac kEnd:function(t){var i=t.detail.dx+this._translateOffset,e=this.getWidth(),n="le ft"===this.position,s=n?i>=0||i<=-e:i<=0||i>=e;if(!s){var a=this._trackDetails;i f(this._trackDetails=null,this._flingDrawer(t,a),this._drawerState===this._DRAWE R_STATE.FLINGING)return}var r=e/2;t.detail.dx<-r?this.opened="right"===this.posi tion:t.detail.dx>r&&(this.opened="left"===this.position),s&&this._resetDrawerSta te(),this._styleTransitionDuration(this.transitionDuration),this._resetDrawerTra nslate(),this.style.visibility=""},_calculateVelocity:function(t,i){for(var e,n= Date.now(),s=n-100,a=0,r=i.length-1;a<=r;){var o=a+r>>1,h=i[o];h.timeStamp>=s?(e =h,r=o-1):a=o+1}if(e){var l=t.detail.dx-e.dx,d=n-e.timeStamp||1;return l/d}retur n 0},_flingDrawer:function(t,i){var e=this._calculateVelocity(t,i);if(!(Math.abs (e)<this._MIN_FLING_THRESHOLD)){this._drawerState=this._DRAWER_STATE.FLINGING;va r n,s=t.detail.dx+this._translateOffset,a=this.getWidth(),r="left"===this.positi on,o=e>0,h=!o&&r,l=o&&!r;n=h?-(s+a):l?a-s:-s,o?(e=Math.max(e,this._MIN_TRANSITIO N_VELOCITY),this.opened="left"===this.position):(e=Math.min(e,-this._MIN_TRANSIT ION_VELOCITY),this.opened="right"===this.position),this._styleTransitionDuration (this._FLING_INITIAL_SLOPE*n/e),this._styleTransitionTimingFunction(this._FLING_ TIMING_FUNCTION),this._resetDrawerTranslate()}},_transitionend:function(){this._ drawerState===this._DRAWER_STATE.FLINGING&&(this._styleTransitionDuration(this.t ransitionDuration),this._styleTransitionTimingFunction(""),this.style.visibility =""),this._resetDrawerState()},_styleTransitionDuration:function(t){this.style.t ransitionDuration=t+"ms",this.$.contentContainer.style.transitionDuration=t+"ms" ,this.$.scrim.style.transitionDuration=t+"ms"},_styleTransitionTimingFunction:fu nction(t){this.$.contentContainer.style.transitionTimingFunction=t,this.$.scrim. style.transitionTimingFunction=t},_translateDrawer:function(t){var i=this.getWid th();"left"===this.position?(t=Math.max(-i,Math.min(t,0)),this.$.scrim.style.opa city=1+t/i):(t=Math.max(0,Math.min(t,i)),this.$.scrim.style.opacity=1-t/i),this. translate3d(t+"px","0","0",this.$.contentContainer)},_resetDrawerTranslate:funct ion(){this.$.scrim.style.opacity="",this.transform("",this.$.contentContainer)}, _resetDrawerState:function(){var t=this._drawerState;this.opened?this._drawerSta te=this.persistent?this._DRAWER_STATE.OPENED_PERSISTENT:this._DRAWER_STATE.OPENE D:this._drawerState=this._DRAWER_STATE.CLOSED,t!==this._drawerState&&(this._draw erState===this._DRAWER_STATE.OPENED?(this._setKeyboardFocusTrap(),document.addEv entListener("keydown",this._boundEscKeydownHandler),document.body.style.overflow ="hidden"):(document.removeEventListener("keydown",this._boundEscKeydownHandler) ,document.body.style.overflow=""),t!==this._DRAWER_STATE.INIT&&this.fire("app-dr awer-transitioned"))},_setKeyboardFocusTrap:function(){if(!this.noFocusTrap){var t=['a[href]:not([tabindex="-1"])','area[href]:not([tabindex="-1"])','input:not( [disabled]):not([tabindex="-1"])','select:not([disabled]):not([tabindex="-1"])', 'textarea:not([disabled]):not([tabindex="-1"])','button:not([disabled]):not([tab index="-1"])','iframe:not([tabindex="-1"])','[tabindex]:not([tabindex="-1"])','[ contentEditable=true]:not([tabindex="-1"])'].join(","),i=Polymer.dom(this).query SelectorAll(t);i.length>0?(this._firstTabStop=i[0],this._lastTabStop=i[i.length- 1]):(this._firstTabStop=null,this._lastTabStop=null);var e=this.getAttribute("ta bindex");e&&parseInt(e,10)>-1?this.focus():this._firstTabStop&&this._firstTabSto p.focus()}},_tabKeydownHandler:function(t){if(!this.noFocusTrap){var i=9;this._d rawerState===this._DRAWER_STATE.OPENED&&t.keyCode===i&&(t.shiftKey?this._firstTa bStop&&Polymer.dom(t).localTarget===this._firstTabStop&&(t.preventDefault(),this ._lastTabStop.focus()):this._lastTabStop&&Polymer.dom(t).localTarget===this._las tTabStop&&(t.preventDefault(),this._firstTabStop.focus()))}},_openedPersistentCh anged:function(){0===this.transitionDuration&&this._resetDrawerState()},_MIN_FLI NG_THRESHOLD:.2,_MIN_TRANSITION_VELOCITY:1.2,_FLING_TIMING_FUNCTION:"cubic-bezie r(0.667, 1, 0.667, 1)",_FLING_INITIAL_SLOPE:1.5,_DRAWER_STATE:{INIT:0,OPENED:1,O PENED_PERSISTENT:2,CLOSED:3,TRACKING:4,FLINGING:5}})</script> </dom-module> <scr ipt>Polymer({is:"iron-media-query",properties:{queryMatches:{type:Boolean,value: !1,readOnly:!0,notify:!0},query:{type:String,observer:"queryChanged"},full:{type :Boolean,value:!1},_boundMQHandler:{value:function(){return this.queryHandler.bi nd(this)}},_mq:{value:null}},attached:function(){this.style.display="none",this. queryChanged()},detached:function(){this._remove()},_add:function(){this._mq&&th is._mq.addListener(this._boundMQHandler)},_remove:function(){this._mq&&this._mq. removeListener(this._boundMQHandler),this._mq=null},queryChanged:function(){this ._remove();var e=this.query;e&&(this.full||"("===e[0]||(e="("+e+")"),this._mq=wi ndow.matchMedia(e),this._add(),this.queryHandler(this._mq))},queryHandler:functi on(e){this._setQueryMatches(e.matches)}})</script> <script>Polymer.IronResizable Behavior={properties:{_parentResizable:{type:Object,observer:"_parentResizableCh anged"},_notifyingDescendant:{type:Boolean,value:!1}},listeners:{"iron-request-r esize-notifications":"_onIronRequestResizeNotifications"},created:function(){thi s._interestedResizables=[],this._boundNotifyResize=this.notifyResize.bind(this)} ,attached:function(){this.fire("iron-request-resize-notifications",null,{node:th is,bubbles:!0,cancelable:!0}),this._parentResizable||(window.addEventListener("r esize",this._boundNotifyResize),this.notifyResize())},detached:function(){this._ parentResizable?this._parentResizable.stopResizeNotificationsFor(this):window.re moveEventListener("resize",this._boundNotifyResize),this._parentResizable=null}, notifyResize:function(){this.isAttached&&(this._interestedResizables.forEach(fun ction(e){this.resizerShouldNotify(e)&&this._notifyDescendant(e)},this),this._fir eResize())},assignParentResizable:function(e){this._parentResizable=e},stopResiz eNotificationsFor:function(e){var i=this._interestedResizables.indexOf(e);i>-1&& (this._interestedResizables.splice(i,1),this.unlisten(e,"iron-resize","_onDescen dantIronResize"))},resizerShouldNotify:function(e){return!0},_onDescendantIronRe size:function(e){return this._notifyingDescendant?void e.stopPropagation():void( Polymer.Settings.useShadow||this._fireResize())},_fireResize:function(){this.fir e("iron-resize",null,{node:this,bubbles:!1})},_onIronRequestResizeNotifications: function(e){var i=e.path?e.path[0]:e.target;i!==this&&(this._interestedResizable s.indexOf(i)===-1&&(this._interestedResizables.push(i),this.listen(i,"iron-resiz e","_onDescendantIronResize")),i.assignParentResizable(this),this._notifyDescend ant(i),e.stopPropagation())},_parentResizableChanged:function(e){e&&window.remov eEventListener("resize",this._boundNotifyResize)},_notifyDescendant:function(e){ this.isAttached&&(this._notifyingDescendant=!0,e.notifyResize(),this._notifyingD escendant=!1)}}</script> <dom-module id="app-drawer-layout" assetpath="/res/imp/ bower_components/app-layout/app-drawer-layout/"> <template> <style>:host{display :block}:host([fullbleed]){@apply(--layout-fit)}#contentContainer{position:relati ve;height:100%;transition:var(--app-drawer-layout-content-transition,none)}#cont entContainer:not(.narrow)>::content [drawer-toggle]{display:none}</style> <div i d="contentContainer"> <content select=":not(app-drawer)"></content> </div> <cont ent id="drawerContent" select="app-drawer"></content> <iron-media-query query="[ [_computeMediaQuery(forceNarrow, responsiveWidth)]]" on-query-matches-changed="_ onQueryMatchesChanged"></iron-media-query> </template> <script>Polymer({is:"app- drawer-layout",behaviors:[Polymer.IronResizableBehavior],properties:{forceNarrow :{type:Boolean,value:!1},responsiveWidth:{type:String,value:"640px"},narrow:{typ e:Boolean,readOnly:!0,notify:!0},openedWhenNarrow:{type:Boolean,value:!1}},liste ners:{tap:"_tapHandler","app-drawer-attached":"_resetDrawerState","app-drawer-re set-layout":"resetLayout","iron-resize":"resetLayout"},observers:["resetLayout(n arrow, isAttached)","_narrowChanged(narrow, isAttached)"],get drawer(){return Po lymer.dom(this.$.drawerContent).getDistributedNodes()[0]},_tapHandler:function(e ){var t=Polymer.dom(e).localTarget;if(t&&t.hasAttribute("drawer-toggle")){var r= this.drawer;r&&!r.persistent&&r.toggle()}},resetLayout:function(){this.debounce( "_resetLayout",function(){var e=this.drawer,t=this.$.contentContainer;if(this.na rrow||!e)t.style.marginLeft="",t.style.marginRight="";else{var r=e.getWidth();"r ight"==e.position?(t.style.marginLeft="",t.style.marginRight=r+"px"):(t.style.ma rginLeft=r+"px",t.style.marginRight="")}})},_resetDrawerState:function(){this.de bounce("_resetDrawerState",function(){var e=this.drawer;e&&(this.narrow?(e.opene d=this.openedWhenNarrow,e.persistent=!1):e.opened=e.persistent=!0)})},_narrowCha nged:function(e){this.toggleClass("narrow",e,this.$.contentContainer),this._rese tDrawerState(),this.notifyResize()},_onQueryMatchesChanged:function(e){this._set Narrow(e.detail.value)},_computeMediaQuery:function(e,t){return e?"(min-width: 0 px)":"(max-width: "+t+")"}})</script> </dom-module> <dom-module id="app-grid-sty le" assetpath="/res/imp/bower_components/app-layout/app-grid/"> <template> <styl e>:host{--app-grid-expandible-item:{-webkit-flex-basis:calc((100% - .1px)/ var(- -app-grid-columns,1) * var(--app-grid-expandible-item-columns,1) - var(--app-gri d-gutter,0px))!important;flex-basis:calc((100% - .1px)/ var(--app-grid-columns,1 ) * var(--app-grid-expandible-item-columns,1) - var(--app-grid-gutter,0px))!impo rtant;max-width:calc((100% - .1px)/ var(--app-grid-columns,1) * var(--app-grid-e xpandible-item-columns,1) - var(--app-grid-gutter,0px))!important};}.app-grid{di splay:-ms-flexbox;display:-webkit-flex;display:flex;-ms-flex-direction:row;-webk it-flex-direction:row;flex-direction:row;-ms-flex-wrap:wrap;-webkit-flex-wrap:wr ap;flex-wrap:wrap;padding-top:var(--app-grid-gutter,0);padding-left:var(--app-gr id-gutter,0);box-sizing:border-box}.app-grid>*{-ms-flex:1 1 100%;-webkit-flex:1; flex:1;-webkit-flex-basis:calc((100% - .1px - (var(--app-grid-gutter,0px) * var( --app-grid-columns,1)))/ var(--app-grid-columns,1));flex-basis:calc((100% - .1px - (var(--app-grid-gutter,0px) * var(--app-grid-columns,1)))/ var(--app-grid-col umns,1));max-width:calc((100% - .1px - (var(--app-grid-gutter,0px) * var(--app-g rid-columns,1)))/ var(--app-grid-columns,1));margin-bottom:var(--app-grid-gutter ,0);margin-right:var(--app-grid-gutter,0);height:var(--app-grid-item-height);box -sizing:border-box}.app-grid[has-aspect-ratio]>*{position:relative}.app-grid[has -aspect-ratio]>::before{display:block;content:"";padding-top:var(--app-grid-item -height,100%)}.app-grid[has-aspect-ratio]>*>*{position:absolute;top:0;right:0;bo ttom:0;left:0}</style> </template> </dom-module> <script>Polymer.IronScrollTarge tBehavior={properties:{scrollTarget:{type:HTMLElement,value:function(){return th is._defaultScrollTarget}}},observers:["_scrollTargetChanged(scrollTarget, isAtta ched)"],_shouldHaveListener:!0,_scrollTargetChanged:function(t,l){this._oldScrol lTarget&&(this._toggleScrollListener(!1,this._oldScrollTarget),this._oldScrollTa rget=null),l&&("document"===t?this.scrollTarget=this._doc:"string"==typeof t?thi s.scrollTarget=this.domHost?this.domHost.$[t]:Polymer.dom(this.ownerDocument).qu erySelector("#"+t):this._isValidScrollTarget()&&(this._boundScrollHandler=this._ boundScrollHandler||this._scrollHandler.bind(this),this._oldScrollTarget=t,this. _toggleScrollListener(this._shouldHaveListener,t)))},_scrollHandler:function(){} ,get _defaultScrollTarget(){return this._doc},get _doc(){return this.ownerDocume nt.documentElement},get _scrollTop(){return this._isValidScrollTarget()?this.scr ollTarget===this._doc?window.pageYOffset:this.scrollTarget.scrollTop:0},get _scr ollLeft(){return this._isValidScrollTarget()?this.scrollTarget===this._doc?windo w.pageXOffset:this.scrollTarget.scrollLeft:0},set _scrollTop(t){this.scrollTarge t===this._doc?window.scrollTo(window.pageXOffset,t):this._isValidScrollTarget()& &(this.scrollTarget.scrollTop=t)},set _scrollLeft(t){this.scrollTarget===this._d oc?window.scrollTo(t,window.pageYOffset):this._isValidScrollTarget()&&(this.scro llTarget.scrollLeft=t)},scroll:function(t,l){this.scrollTarget===this._doc?windo w.scrollTo(t,l):this._isValidScrollTarget()&&(this.scrollTarget.scrollLeft=t,thi s.scrollTarget.scrollTop=l)},get _scrollTargetWidth(){return this._isValidScroll Target()?this.scrollTarget===this._doc?window.innerWidth:this.scrollTarget.offse tWidth:0},get _scrollTargetHeight(){return this._isValidScrollTarget()?this.scro llTarget===this._doc?window.innerHeight:this.scrollTarget.offsetHeight:0},_isVal idScrollTarget:function(){return this.scrollTarget instanceof HTMLElement},_togg leScrollListener:function(t,l){if(this._boundScrollHandler){var e=l===this._doc? window:l;t?e.addEventListener("scroll",this._boundScrollHandler):e.removeEventLi stener("scroll",this._boundScrollHandler)}},toggleScrollListener:function(t){thi s._shouldHaveListener=t,this._toggleScrollListener(t,this.scrollTarget)}}</scrip t> <script>Polymer.AppScrollEffectsBehavior=[Polymer.IronScrollTargetBehavior,{p roperties:{effects:{type:String},effectsConfig:{type:Object,value:function(){ret urn{}}},disabled:{type:Boolean,reflectToAttribute:!0,value:!1},threshold:{type:N umber,value:0},thresholdTriggered:{type:Boolean,notify:!0,readOnly:!0,reflectToA ttribute:!0}},observers:["_effectsChanged(effects, effectsConfig, isAttached)"], _updateScrollState:function(){},isOnScreen:function(){return!1},isContentBelow:f unction(){return!1},_effectsRunFn:null,_effects:null,get _clampedScrollTop(){ret urn Math.max(0,this._scrollTop)},detached:function(){this._tearDownEffects()},cr eateEffect:function(t,e){var f=Polymer.AppLayout._scrollEffects[t];if(!f)throw n ew ReferenceError(this._getUndefinedMsg(t));var n=this._boundEffect(f,e||{});ret urn n.setUp(),n},_effectsChanged:function(t,e,f){this._tearDownEffects(),""!==t& &f&&(t.split(" ").forEach(function(t){var f;""!==t&&((f=Polymer.AppLayout._scrol lEffects[t])?this._effects.push(this._boundEffect(f,e[t])):this._warn(this._logf ("_effectsChanged",this._getUndefinedMsg(t))))},this),this._setUpEffect())},_lay outIfDirty:function(){return this.offsetWidth},_boundEffect:function(t,e){e=e||{ };var f=parseFloat(e.startsAt||0),n=parseFloat(e.endsAt||1),s=n-f,i=function(){} ,r=0===f&&1===n?t.run:function(e,n){t.run.call(this,Math.max(0,(e-f)/s),n)};retu rn{setUp:t.setUp?t.setUp.bind(this,e):i,run:t.run?r.bind(this):i,tearDown:t.tear Down?t.tearDown.bind(this):i}},_setUpEffect:function(){this.isAttached&&this._ef fects&&(this._effectsRunFn=[],this._effects.forEach(function(t){t.setUp()!==!1&& this._effectsRunFn.push(t.run)},this))},_tearDownEffects:function(){this._effect s&&this._effects.forEach(function(t){t.tearDown()}),this._effectsRunFn=[],this._ effects=[]},_runEffects:function(t,e){this._effectsRunFn&&this._effectsRunFn.for Each(function(f){f(t,e)})},_scrollHandler:function(){if(!this.disabled){var t=th is._clampedScrollTop;this._updateScrollState(t),this.threshold>0&&this._setThres holdTriggered(t>=this.threshold)}},_getDOMRef:function(t){this._warn(this._logf( "_getDOMRef","`"+t+"` is undefined"))},_getUndefinedMsg:function(t){return"Scrol l effect `"+t+"` is undefined. Did you forget to import app-layout/app-scroll-ef fects/effects/"+t+".html ?"}}]</script> <dom-module id="app-header" assetpath="/ res/imp/bower_components/app-layout/app-header/"> <template> <style>:host{positi on:relative;display:block;transition-timing-function:linear;transition-property: -webkit-transform;transition-property:transform}:host::after{position:absolute;r ight:0;bottom:-5px;left:0;width:100%;height:5px;content:"";transition:opacity .4 s;pointer-events:none;opacity:0;box-shadow:inset 0 5px 6px -3px rgba(0,0,0,.4);w ill-change:opacity;@apply(--app-header-shadow)}:host([shadow])::after{opacity:1} ::content [condensed-title],::content [main-title]{-webkit-transform-origin:left top;transform-origin:left top;white-space:nowrap}::content [condensed-title]{op acity:0}#background{@apply(--layout-fit);overflow:hidden}#backgroundFrontLayer,# backgroundRearLayer{@apply(--layout-fit);height:100%;pointer-events:none;backgro und-size:cover}#backgroundFrontLayer{@apply(--app-header-background-front-layer) }#backgroundRearLayer{opacity:0;@apply(--app-header-background-rear-layer)}#cont entContainer{position:relative;width:100%;height:100%}:host([disabled]),:host([d isabled]) #backgroundFrontLayer,:host([disabled]) #backgroundRearLayer,:host([di sabled]) ::content>[sticky],:host([disabled]) ::content>app-toolbar:first-of-typ e,:host([disabled])::after,:host-context(.app-layout-silent-scroll),:host-contex t(.app-layout-silent-scroll) #backgroundFrontLayer,:host-context(.app-layout-sil ent-scroll) #backgroundRearLayer,:host-context(.app-layout-silent-scroll) ::cont ent>[sticky],:host-context(.app-layout-silent-scroll) ::content>app-toolbar:firs t-of-type,:host-context(.app-layout-silent-scroll)::after{transition:none!import ant}</style> <div id="contentContainer"> <content id="content"></content> </div> </template> <script>Polymer({is:"app-header",behaviors:[Polymer.AppScrollEffect sBehavior,Polymer.IronResizableBehavior],properties:{condenses:{type:Boolean,val ue:!1},fixed:{type:Boolean,value:!1},reveals:{type:Boolean,value:!1},shadow:{typ e:Boolean,reflectToAttribute:!0,value:!1}},observers:["resetLayout(isAttached, c ondenses, fixed)"],listeners:{"iron-resize":"_resizeHandler"},_height:0,_dHeight :0,_stickyElTop:0,_stickyEl:null,_top:0,_progress:0,_wasScrollingDown:!1,_initSc rollTop:0,_initTimestamp:0,_lastTimestamp:0,_lastScrollTop:0,get _maxHeaderTop() {return this.fixed?this._dHeight:this._height+5},_getStickyEl:function(){for(var t,e=Polymer.dom(this.$.content).getDistributedNodes(),i=0;i<e.length;i++)if(e[i ].nodeType===Node.ELEMENT_NODE){var s=e[i];if(s.hasAttribute("sticky")){t=s;brea k}t||(t=s)}return t},resetLayout:function(){this.fire("app-header-reset-layout") ,this.debounce("_resetLayout",function(){if(0!==this.offsetWidth||0!==this.offse tHeight){var t=this._clampedScrollTop,e=0===this._height||0===t,i=this.disabled; this._height=this.offsetHeight,this._stickyEl=this._getStickyEl(),this.disabled= !0,e||this._updateScrollState(0,!0),this._mayMove()?this._dHeight=this._stickyEl ?this._height-this._stickyEl.offsetHeight:0:this._dHeight=0,this._stickyElTop=th is._stickyEl?this._stickyEl.offsetTop:0,this._setUpEffect(),e?this._updateScroll State(t,!0):(this._updateScrollState(this._lastScrollTop,!0),this._layoutIfDirty ()),this.disabled=i}})},_updateScrollState:function(t,e){if(0!==this._height){va r i=0,s=0,o=this._top,r=(this._lastScrollTop,this._maxHeaderTop),h=t-this._lastS crollTop,n=Math.abs(h),a=t>this._lastScrollTop,l=Date.now();if(this._mayMove()&& (s=this._clamp(this.reveals?o+h:t,0,r)),t>=this._dHeight&&(s=this.condenses&&!th is.fixed?Math.max(this._dHeight,s):s,this.style.transitionDuration="0ms"),this.r eveals&&!this.disabled&&n<100&&((l-this._initTimestamp>300||this._wasScrollingDo wn!==a)&&(this._initScrollTop=t,this._initTimestamp=l),t>=r))if(Math.abs(this._i nitScrollTop-t)>30||n>10){a&&t>=r?s=r:!a&&t>=this._dHeight&&(s=this.condenses&&! this.fixed?this._dHeight:0);var _=h/(l-this._lastTimestamp);this.style.transitio nDuration=this._clamp((s-o)/_,0,300)+"ms"}else s=this._top;i=0===this._dHeight?t >0?1:0:s/this._dHeight,e||(this._lastScrollTop=t,this._top=s,this._wasScrollingD own=a,this._lastTimestamp=l),(e||i!==this._progress||o!==s||0===t)&&(this._progr ess=i,this._runEffects(i,s),this._transformHeader(s))}},_mayMove:function(){retu rn this.condenses||!this.fixed},willCondense:function(){return this._dHeight>0&& this.condenses},isOnScreen:function(){return 0!==this._height&&this._top<this._h eight},isContentBelow:function(){return 0===this._top?this._clampedScrollTop>0:t his._clampedScrollTop-this._maxHeaderTop>=0},_transformHeader:function(t){this.t ranslate3d(0,-t+"px",0),this._stickyEl&&this.condenses&&t>=this._stickyElTop&&th is.translate3d(0,Math.min(t,this._dHeight)-this._stickyElTop+"px",0,this._sticky El)},_resizeHandler:function(){this.resetLayout()},_clamp:function(t,e,i){return Math.min(i,Math.max(e,t))},_ensureBgContainers:function(){this._bgContainer||(t his._bgContainer=document.createElement("div"),this._bgContainer.id="background" ,this._bgRear=document.createElement("div"),this._bgRear.id="backgroundRearLayer ",this._bgContainer.appendChild(this._bgRear),this._bgFront=document.createEleme nt("div"),this._bgFront.id="backgroundFrontLayer",this._bgContainer.appendChild( this._bgFront),Polymer.dom(this.root).insertBefore(this._bgContainer,this.$.cont entContainer))},_getDOMRef:function(t){switch(t){case"backgroundFrontLayer":retu rn this._ensureBgContainers(),this._bgFront;case"backgroundRearLayer":return thi s._ensureBgContainers(),this._bgRear;case"background":return this._ensureBgConta iners(),this._bgContainer;case"mainTitle":return Polymer.dom(this).querySelector ("[main-title]");case"condensedTitle":return Polymer.dom(this).querySelector("[c ondensed-title]")}return null},getScrollState:function(){return{progress:this._p rogress,top:this._top}}})</script> </dom-module> <dom-module id="app-header-layo ut" assetpath="/res/imp/bower_components/app-layout/app-header-layout/"> <templa te> <style>:host{display:block;position:relative;z-index:0}:host>::content>app-h eader{@apply(--layout-fixed-top);z-index:1}:host([has-scrolling-region]){height: 100%}:host([has-scrolling-region])>::content>app-header{position:absolute}:host( [has-scrolling-region])>#contentContainer{@apply(--layout-fit);overflow-y:auto;- webkit-overflow-scrolling:touch}:host([fullbleed]){@apply(--layout-vertical);@ap ply(--layout-fit)}:host([fullbleed])>#contentContainer{@apply(--layout-vertical) ;@apply(--layout-flex)}#contentContainer{position:relative;z-index:0}</style> <c ontent id="header" select="app-header"></content> <div id="contentContainer"> <c ontent></content> </div> </template> <script>Polymer({is:"app-header-layout",beh aviors:[Polymer.IronResizableBehavior],properties:{hasScrollingRegion:{type:Bool ean,value:!1,reflectToAttribute:!0}},listeners:{"iron-resize":"_resizeHandler"," app-header-reset-layout":"resetLayout"},observers:["resetLayout(isAttached, hasS crollingRegion)"],get header(){return Polymer.dom(this.$.header).getDistributedN odes()[0]},resetLayout:function(){this._updateScroller(),this.debounce("_resetLa yout",this._updateContentPosition)},_updateContentPosition:function(){var e=this .header;if(this.isAttached&&e){var t=e.offsetHeight;if(this.hasScrollingRegion)e .style.left="",e.style.right="";else{var i=this.getBoundingClientRect(),o=docume nt.documentElement.clientWidth-i.right;e.style.left=i.left+"px",e.style.right=o+ "px"}var n=this.$.contentContainer.style;e.fixed&&!e.willCondense()&&this.hasScr ollingRegion?(n.marginTop=t+"px",n.paddingTop=""):(n.paddingTop=t+"px",n.marginT op="")}},_updateScroller:function(){if(this.isAttached){var e=this.header;e&&(e. scrollTarget=this.hasScrollingRegion?this.$.contentContainer:this.ownerDocument. documentElement)}},_resizeHandler:function(){this.resetLayout()}})</script> </do m-module> <dom-module id="app-scrollpos-control" assetpath="/res/imp/bower_compo nents/app-layout/app-scrollpos-control/"> <script>Polymer({is:"app-scrollpos-con trol",behaviors:[Polymer.IronScrollTargetBehavior],properties:{selected:{type:St ring,observer:"_selectedChanged"},reset:{type:Boolean,value:!1}},observers:["_up dateScrollPos(selected, reset)"],created:function(){this._scrollposMap={}},_sele ctedChanged:function(e,s){null!=s&&(this._scrollposMap[s]={x:this._scrollLeft,y: this._scrollTop})},_updateScrollPos:function(e,s){this.debounce("_updateScrollPo s",function(){var e=this._scrollposMap[this.selected];null==e||this.reset?this.s croll(0,0):this.scroll(e.x,e.y)})}})</script> </dom-module> <dom-module id="app- toolbar" assetpath="/res/imp/bower_components/app-layout/app-toolbar/"> <templat e> <style>:host{@apply(--layout-horizontal);@apply(--layout-center);position:rel ative;height:64px;padding:0 16px;pointer-events:none;font-size:var(--app-toolbar -font-size,20px)}::content>*{pointer-events:auto}::content>paper-icon-button{fon t-size:0}::content>[condensed-title],::content>[main-title]{pointer-events:none; @apply(--layout-flex)}::content>[bottom-item]{position:absolute;right:0;bottom:0 ;left:0}::content>[top-item]{position:absolute;top:0;right:0;left:0}::content>[s pacer]{margin-left:64px}</style> <content></content> </template> <script>Polymer ({is:"app-toolbar"})</script> </dom-module> <dom-module id="app-box" assetpath=" /res/imp/bower_components/app-layout/app-box/"> <template> <style>:host{position :relative;display:block}#background{@apply(--layout-fit);overflow:hidden;height: 100%}#backgroundFrontLayer{min-height:100%;pointer-events:none;background-size:c over;@apply(--app-box-background-front-layer)}#contentContainer{position:relativ e;width:100%;height:100%}:host([disabled]),:host([disabled]) #backgroundFrontLay er{transition:none!important}</style> <div id="background"> <div id="backgroundF rontLayer"> <content select="[background]"></content> </div> </div> <div id="con tentContainer"> <content id="content"></content> </div> </template> <script>Poly mer({is:"app-box",behaviors:[Polymer.AppScrollEffectsBehavior,Polymer.IronResiza bleBehavior],listeners:{"iron-resize":"_resizeHandler"},_progress:0,attached:fun ction(){this.resetLayout()},resetLayout:function(){this.debounce("_resetLayout", function(){if(0!==this.offsetWidth||0!==this.offsetHeight){var e=this._clampedSc rollTop,t=this.disabled;this.disabled=!0,this._elementTop=this._getElementTop(), this._elementHeight=this.offsetHeight,this._cachedScrollTargetHeight=this._scrol lTargetHeight,this._setUpEffect(),this._updateScrollState(e),this.disabled=t}},1 )},_getElementTop:function(){for(var e=this,t=0;e&&e!==this.scrollTarget;)t+=e.o ffsetTop,e=e.offsetParent;return t},_updateScrollState:function(e){if(this.isOnS creen()){var t=this._elementTop-e;this._progress=1-(t+this._elementHeight)/this. _cachedScrollTargetHeight,this._runEffects(this._progress,e)}},isOnScreen:functi on(){return this._elementTop<this._scrollTop+this._cachedScrollTargetHeight&&thi s._elementTop+this._elementHeight>this._scrollTop},_resizeHandler:function(){thi s.resetLayout()},_getDOMRef:function(e){return"background"===e?this.$.background :"backgroundFrontLayer"===e?this.$.backgroundFrontLayer:void 0},getScrollState:f unction(){return{progress:this._progress}}})</script> </dom-module> <dom-module id="iron-flex" assetpath="/res/imp/bower_components/iron-flex-layout/"> <templat e> <style>.layout.horizontal,.layout.vertical{display:-ms-flexbox;display:-webki t-flex;display:flex}.layout.inline{display:-ms-inline-flexbox;display:-webkit-in line-flex;display:inline-flex}.layout.horizontal{-ms-flex-direction:row;-webkit- flex-direction:row;flex-direction:row}.layout.vertical{-ms-flex-direction:column ;-webkit-flex-direction:column;flex-direction:column}.layout.wrap{-ms-flex-wrap: wrap;-webkit-flex-wrap:wrap;flex-wrap:wrap}.layout.center,.layout.center-center{ -ms-flex-align:center;-webkit-align-items:center;align-items:center}.layout.cent er-center,.layout.center-justified{-ms-flex-pack:center;-webkit-justify-content: center;justify-content:center}.flex{-ms-flex:1 1 0px;-webkit-flex:1;flex:1;-webk it-flex-basis:0px;flex-basis:0px}.flex-auto{-ms-flex:1 1 auto;-webkit-flex:1 1 a uto;flex:1 1 auto}.flex-none{-ms-flex:none;-webkit-flex:none;flex:none}</style> </template> </dom-module> <dom-module id="iron-flex-reverse" assetpath="/res/imp /bower_components/iron-flex-layout/"> <template> <style>.layout.horizontal-rever se,.layout.vertical-reverse{display:-ms-flexbox;display:-webkit-flex;display:fle x}.layout.horizontal-reverse{-ms-flex-direction:row-reverse;-webkit-flex-directi on:row-reverse;flex-direction:row-reverse}.layout.vertical-reverse{-ms-flex-dire ction:column-reverse;-webkit-flex-direction:column-reverse;flex-direction:column -reverse}.layout.wrap-reverse{-ms-flex-wrap:wrap-reverse;-webkit-flex-wrap:wrap- reverse;flex-wrap:wrap-reverse}</style> </template> </dom-module> <dom-module id ="iron-flex-alignment" assetpath="/res/imp/bower_components/iron-flex-layout/"> <template> <style>.layout.start{-ms-flex-align:start;-webkit-align-items:flex-st art;align-items:flex-start}.layout.center,.layout.center-center{-ms-flex-align:c enter;-webkit-align-items:center;align-items:center}.layout.end{-ms-flex-align:e nd;-webkit-align-items:flex-end;align-items:flex-end}.layout.baseline{-ms-flex-a lign:baseline;-webkit-align-items:baseline;align-items:baseline}.layout.start-ju stified{-ms-flex-pack:start;-webkit-justify-content:flex-start;justify-content:f lex-start}.layout.center-center,.layout.center-justified{-ms-flex-pack:center;-w ebkit-justify-content:center;justify-content:center}.layout.end-justified{-ms-fl ex-pack:end;-webkit-justify-content:flex-end;justify-content:flex-end}.layout.ar ound-justified{-ms-flex-pack:distribute;-webkit-justify-content:space-around;jus tify-content:space-around}.layout.justified{-ms-flex-pack:justify;-webkit-justif y-content:space-between;justify-content:space-between}.self-start{-ms-align-self :flex-start;-webkit-align-self:flex-start;align-self:flex-start}.self-center{-ms -align-self:center;-webkit-align-self:center;align-self:center}.self-end{-ms-ali gn-self:flex-end;-webkit-align-self:flex-end;align-self:flex-end}.self-stretch{- ms-align-self:stretch;-webkit-align-self:stretch;align-self:stretch}.self-baseli ne{-ms-align-self:baseline;-webkit-align-self:baseline;align-self:baseline}; .la yout.start-aligned{-ms-flex-line-pack:start;-ms-align-content:flex-start;-webkit -align-content:flex-start;align-content:flex-start}.layout.end-aligned{-ms-flex- line-pack:end;-ms-align-content:flex-end;-webkit-align-content:flex-end;align-co ntent:flex-end}.layout.center-aligned{-ms-flex-line-pack:center;-ms-align-conten t:center;-webkit-align-content:center;align-content:center}.layout.between-align ed{-ms-flex-line-pack:justify;-ms-align-content:space-between;-webkit-align-cont ent:space-between;align-content:space-between}.layout.around-aligned{-ms-flex-li ne-pack:distribute;-ms-align-content:space-around;-webkit-align-content:space-ar ound;align-content:space-around}</style> </template> </dom-module> <dom-module i d="iron-flex-factors" assetpath="/res/imp/bower_components/iron-flex-layout/"> < template> <style>.flex,.flex-1{-ms-flex:1 1 0px;-webkit-flex:1;flex:1;-webkit-fl ex-basis:0px;flex-basis:0px}.flex-2{-ms-flex:2;-webkit-flex:2;flex:2}.flex-3{-ms -flex:3;-webkit-flex:3;flex:3}.flex-4{-ms-flex:4;-webkit-flex:4;flex:4}.flex-5{- ms-flex:5;-webkit-flex:5;flex:5}.flex-6{-ms-flex:6;-webkit-flex:6;flex:6}.flex-7 {-ms-flex:7;-webkit-flex:7;flex:7}.flex-8{-ms-flex:8;-webkit-flex:8;flex:8}.flex -9{-ms-flex:9;-webkit-flex:9;flex:9}.flex-10{-ms-flex:10;-webkit-flex:10;flex:10 }.flex-11{-ms-flex:11;-webkit-flex:11;flex:11}.flex-12{-ms-flex:12;-webkit-flex: 12;flex:12}</style> </template> </dom-module> <dom-module id="iron-positioning" assetpath="/res/imp/bower_components/iron-flex-layout/"> <template> <style>.bloc k{display:block}[hidden]{display:none!important}.invisible{visibility:hidden!imp ortant}.relative{position:relative}.fit{position:absolute;top:0;right:0;bottom:0 ;left:0}body.fullbleed{margin:0;height:100vh}.scroll{-webkit-overflow-scrolling: touch;overflow:auto}.fixed-bottom,.fixed-left,.fixed-right,.fixed-top{position:f ixed}.fixed-top{top:0;left:0;right:0}.fixed-right{top:0;right:0;bottom:0}.fixed- bottom{right:0;bottom:0;left:0}.fixed-left{top:0;bottom:0;left:0}</style> </temp late> </dom-module> <script>!function(){var e={},t={},i=null;Polymer.IronMeta=Po lymer({is:"iron-meta",properties:{type:{type:String,value:"default",observer:"_t ypeChanged"},key:{type:String,observer:"_keyChanged"},value:{type:Object,notify: !0,observer:"_valueChanged"},self:{type:Boolean,observer:"_selfChanged"},list:{t ype:Array,notify:!0}},hostAttributes:{hidden:!0},factoryImpl:function(e){if(e)fo r(var t in e)switch(t){case"type":case"key":case"value":this[t]=e[t]}},created:f unction(){this._metaDatas=e,this._metaArrays=t},_keyChanged:function(e,t){this._ resetRegistration(t)},_valueChanged:function(e){this._resetRegistration(this.key )},_selfChanged:function(e){e&&(this.value=this)},_typeChanged:function(i){this. _unregisterKey(this.key),e[i]||(e[i]={}),this._metaData=e[i],t[i]||(t[i]=[]),thi s.list=t[i],this._registerKeyValue(this.key,this.value)},byKey:function(e){retur n this._metaData&&this._metaData[e]},_resetRegistration:function(e){this._unregi sterKey(e),this._registerKeyValue(this.key,this.value)},_unregisterKey:function( e){this._unregister(e,this._metaData,this.list)},_registerKeyValue:function(e,t) {this._register(e,t,this._metaData,this.list)},_register:function(e,t,i,a){e&&i& &void 0!==t&&(i[e]=t,a.push(t))},_unregister:function(e,t,i){if(e&&t&&e in t){va r a=t[e];delete t[e],this.arrayDelete(i,a)}}}),Polymer.IronMeta.getIronMeta=func tion(){return null===i&&(i=new Polymer.IronMeta),i},Polymer.IronMetaQuery=Polyme r({is:"iron-meta-query",properties:{type:{type:String,value:"default",observer:" _typeChanged"},key:{type:String,observer:"_keyChanged"},value:{type:Object,notif y:!0,readOnly:!0},list:{type:Array,notify:!0}},factoryImpl:function(e){if(e)for( var t in e)switch(t){case"type":case"key":this[t]=e[t]}},created:function(){this ._metaDatas=e,this._metaArrays=t},_keyChanged:function(e){this._setValue(this._m etaData&&this._metaData[e])},_typeChanged:function(i){this._metaData=e[i],this.l ist=t[i],this.key&&this._keyChanged(this.key)},byKey:function(e){return this._me taData&&this._metaData[e]}})}()</script> <dom-module id="iron-icon" assetpath="/ res/imp/bower_components/iron-icon/"> <template> <style>:host{@apply(--layout-in line);@apply(--layout-center-center);position:relative;vertical-align:middle;fil l:var(--iron-icon-fill-color,currentcolor);stroke:var(--iron-icon-stroke-color,n one);width:var(--iron-icon-width,24px);height:var(--iron-icon-height,24px);@appl y(--iron-icon)}</style> </template> <script>Polymer({is:"iron-icon",properties:{ icon:{type:String},theme:{type:String},src:{type:String},_meta:{value:Polymer.Ba se.create("iron-meta",{type:"iconset"})}},observers:["_updateIcon(_meta, isAttac hed)","_updateIcon(theme, isAttached)","_srcChanged(src, isAttached)","_iconChan ged(icon, isAttached)"],_DEFAULT_ICONSET:"icons",_iconChanged:function(t){var i= (t||"").split(":");this._iconName=i.pop(),this._iconsetName=i.pop()||this._DEFAU LT_ICONSET,this._updateIcon()},_srcChanged:function(t){this._updateIcon()},_uses Iconset:function(){return this.icon||!this.src},_updateIcon:function(){this._use sIconset()?(this._img&&this._img.parentNode&&Polymer.dom(this.root).removeChild( this._img),""===this._iconName?this._iconset&&this._iconset.removeIcon(this):thi s._iconsetName&&this._meta&&(this._iconset=this._meta.byKey(this._iconsetName),t his._iconset?(this._iconset.applyIcon(this,this._iconName,this.theme),this.unlis ten(window,"iron-iconset-added","_updateIcon")):this.listen(window,"iron-iconset -added","_updateIcon"))):(this._iconset&&this._iconset.removeIcon(this),this._im g||(this._img=document.createElement("img"),this._img.style.width="100%",this._i mg.style.height="100%",this._img.draggable=!1),this._img.src=this.src,Polymer.do m(this.root).appendChild(this._img))}})</script> </dom-module> <script>Polymer({ is:"iron-iconset-svg",properties:{name:{type:String,observer:"_nameChanged"},siz e:{type:Number,value:24},rtlMirroring:{type:Boolean,value:!1}},_targetIsRTL:func tion(e){return e&&e.nodeType!==Node.ELEMENT_NODE&&(e=e.host),e&&"rtl"===window.g etComputedStyle(e).direction},attached:function(){this.style.display="none"},get IconNames:function(){return this._icons=this._createIconMap(),Object.keys(this._ icons).map(function(e){return this.name+":"+e},this)},applyIcon:function(e,t){e= e.root||e,this.removeIcon(e);var n=this._cloneIcon(t,this.rtlMirroring&&this._ta rgetIsRTL(e));if(n){var o=Polymer.dom(e);return o.insertBefore(n,o.childNodes[0] ),e._svgIcon=n}return null},removeIcon:function(e){e=e.root||e,e._svgIcon&&(Poly mer.dom(e).removeChild(e._svgIcon),e._svgIcon=null)},_nameChanged:function(){new Polymer.IronMeta({type:"iconset",key:this.name,value:this}),this.async(function (){this.fire("iron-iconset-added",this,{node:window})})},_createIconMap:function (){var e=Object.create(null);return Polymer.dom(this).querySelectorAll("[id]").f orEach(function(t){e[t.id]=t}),e},_cloneIcon:function(e,t){return this._icons=th is._icons||this._createIconMap(),this._prepareSvgClone(this._icons[e],this.size, t)},_prepareSvgClone:function(e,t,n){if(e){var o=e.cloneNode(!0),r=document.crea teElementNS("http://www.w3.org/2000/svg","svg"),i=o.getAttribute("viewBox")||"0 0 "+t+" "+t,s="pointer-events: none; display: block; width: 100%; height: 100%;" ;return n&&o.hasAttribute("mirror-in-rtl")&&(s+="-webkit-transform:scale(-1,1);t ransform:scale(-1,1);"),r.setAttribute("viewBox",i),r.setAttribute("preserveAspe ctRatio","xMidYMid meet"),r.style.cssText=s,r.appendChild(o).removeAttribute("id "),r}return null}})</script> <iron-iconset-svg name="icons" size="24"> <svg><def s> <g id="3d-rotation"><path d="M7.52 21.48C4.25 19.94 1.91 16.76 1.55 13H.05C.5 6 19.16 5.71 24 12 24l.66-.03-3.81-3.81-1.33 1.32zm.89-6.52c-.19 0-.37-.03-.52-. 08-.16-.06-.29-.13-.4-.24-.11-.1-.2-.22-.26-.37-.06-.14-.09-.3-.09-.47h-1.3c0 .3 6.07.68.21.95.14.27.33.5.56.69.24.18.51.32.82.41.3.1.62.15.96.15.37 0 .72-.05 1. 03-.15.32-.1.6-.25.83-.44s.42-.43.55-.72c.13-.29.2-.61.2-.97 0-.19-.02-.38-.07-. 56-.05-.18-.12-.35-.23-.51-.1-.16-.24-.3-.4-.43-.17-.13-.37-.23-.61-.31.2-.09.37 -.2.52-.33.15-.13.27-.27.37-.42.1-.15.17-.3.22-.46.05-.16.07-.32.07-.48 0-.36-.0 6-.68-.18-.96-.12-.28-.29-.51-.51-.69-.2-.19-.47-.33-.77-.43C9.1 8.05 8.76 8 8.3 9 8c-.36 0-.69.05-1 .16-.3.11-.57.26-.79.45-.21.19-.38.41-.51.67-.12.26-.18.54-. 18.85h1.3c0-.17.03-.32.09-.45s.14-.25.25-.34c.11-.09.23-.17.38-.22.15-.05.3-.08. 48-.08.4 0 .7.1.89.31.19.2.29.49.29.86 0 .18-.03.34-.08.49-.05.15-.14.27-.25.37- .11.1-.25.18-.41.24-.16.06-.36.09-.58.09H7.5v1.03h.77c.22 0 .42.02.6.07s.33.13.4 5.23c.12.11.22.24.29.4.07.16.1.35.1.57 0 .41-.12.72-.35.93-.23.23-.55.33-.95.33z m8.55-5.92c-.32-.33-.7-.59-1.14-.77-.43-.18-.92-.27-1.46-.27H12v8h2.3c.55 0 1.06 -.09 1.51-.27.45-.18.84-.43 1.16-.76.32-.33.57-.73.74-1.19.17-.47.26-.99.26-1.57 v-.4c0-.58-.09-1.1-.26-1.57-.18-.47-.43-.87-.75-1.2zm-.39 3.16c0 .42-.05.79-.14 1.13-.1.33-.24.62-.43.85-.19.23-.43.41-.71.53-.29.12-.62.18-.99.18h-.91V9.12h.97 c.72 0 1.27.23 1.64.69.38.46.57 1.12.57 1.99v.4zM12 0l-.66.03 3.81 3.81 1.33-1.3 3c3.27 1.55 5.61 4.72 5.96 8.48h1.5C23.44 4.84 18.29 0 12 0z"></path></g> <g id= "accessibility"><path d="M12 2c1.1 0 2 .9 2 2s-.9 2-2 2-2-.9-2-2 .9-2 2-2zm9 7h- 6v13h-2v-6h-2v6H9V9H3V7h18v2z"></path></g> <g id="accessible"><circle cx="12" cy ="4" r="2"></circle><path d="M19 13v-2c-1.54.02-3.09-.75-4.07-1.83l-1.29-1.43c-. 17-.19-.38-.34-.61-.45-.01 0-.01-.01-.02-.01H13c-.35-.2-.75-.3-1.19-.26C10.76 7. 11 10 8.04 10 9.09V15c0 1.1.9 2 2 2h5v5h2v-5.5c0-1.1-.9-2-2-2h-3v-3.45c1.29 1.07 3.25 1.94 5 1.95zm-6.17 5c-.41 1.16-1.52 2-2.83 2-1.66 0-3-1.34-3-3 0-1.31.84-2 .41 2-2.83V12.1c-2.28.46-4 2.48-4 4.9 0 2.76 2.24 5 5 5 2.42 0 4.44-1.72 4.9-4h- 2.07z"></path></g> <g id="account-balance"><path d="M4 10v7h3v-7H4zm6 0v7h3v-7h- 3zM2 22h19v-3H2v3zm14-12v7h3v-7h-3zm-4.5-9L2 6v2h19V6l-9.5-5z"></path></g> <g id ="account-balance-wallet"><path d="M21 18v1c0 1.1-.9 2-2 2H5c-1.11 0-2-.9-2-2V5c 0-1.1.89-2 2-2h14c1.1 0 2 .9 2 2v1h-9c-1.11 0-2 .9-2 2v8c0 1.1.89 2 2 2h9zm-9-2h 10V8H12v8zm4-2.5c-.83 0-1.5-.67-1.5-1.5s.67-1.5 1.5-1.5 1.5.67 1.5 1.5-.67 1.5-1 .5 1.5z"></path></g> <g id="account-box"><path d="M3 5v14c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2H5c-1.11 0-2 .9-2 2zm12 4c0 1.66-1.34 3-3 3s-3-1.34-3 -3 1.34-3 3-3 3 1.34 3 3zm-9 8c0-2 4-3.1 6-3.1s6 1.1 6 3.1v1H6v-1z"></path></g> <g id="account-circle"><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 1 0-10S17.52 2 12 2zm0 3c1.66 0 3 1.34 3 3s-1.34 3-3 3-3-1.34-3-3 1.34-3 3-3zm0 14 .2c-2.5 0-4.71-1.28-6-3.22.03-1.99 4-3.08 6-3.08 1.99 0 5.97 1.09 6 3.08-1.29 1. 94-3.5 3.22-6 3.22z"></path></g> <g id="add"><path d="M19 13h-6v6h-2v-6H5v-2h6V5 h2v6h6v2z"></path></g> <g id="add-alert"><path d="M10.01 21.01c0 1.1.89 1.99 1.9 9 1.99s1.99-.89 1.99-1.99h-3.98zm8.87-4.19V11c0-3.25-2.25-5.97-5.29-6.69v-.72C13 .59 2.71 12.88 2 12 2s-1.59.71-1.59 1.59v.72C7.37 5.03 5.12 7.75 5.12 11v5.82L3 18.94V20h18v-1.06l-2.12-2.12zM16 13.01h-3v3h-2v-3H8V11h3V8h2v3h3v2.01z"></path>< /g> <g id="add-box"><path d="M19 3H5c-1.11 0-2 .9-2 2v14c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm-2 10h-4v4h-2v-4H7v-2h4V7h2v4h4v2z"></path></g> <g i d="add-circle"><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17. 52 2 12 2zm5 11h-4v4h-2v-4H7v-2h4V7h2v4h4v2z"></path></g> <g id="add-circle-outl ine"><path d="M13 7h-2v4H7v2h4v4h2v-4h4v-2h-4V7zm-1-5C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm0 18c-4.41 0-8-3.59-8-8s3.59-8 8-8 8 3.59 8 8 -3.59 8-8 8z"></path></g> <g id="add-shopping-cart"><path d="M11 9h2V6h3V4h-3V1h -2v3H8v2h3v3zm-4 9c-1.1 0-1.99.9-1.99 2S5.9 22 7 22s2-.9 2-2-.9-2-2-2zm10 0c-1.1 0-1.99.9-1.99 2s.89 2 1.99 2 2-.9 2-2-.9-2-2-2zm-9.83-3.25l.03-.12.9-1.63h7.45c .75 0 1.41-.41 1.75-1.03l3.86-7.01L19.42 4h-.01l-1.1 2-2.76 5H8.53l-.13-.27L6.16 6l-.95-2-.94-2H1v2h2l3.6 7.59-1.35 2.45c-.16.28-.25.61-.25.96 0 1.1.9 2 2 2h12v -2H7.42c-.13 0-.25-.11-.25-.25z"></path></g> <g id="alarm"><path d="M22 5.72l-4. 6-3.86-1.29 1.53 4.6 3.86L22 5.72zM7.88 3.39L6.6 1.86 2 5.71l1.29 1.53 4.59-3.85 zM12.5 8H11v6l4.75 2.85.75-1.23-4-2.37V8zM12 4c-4.97 0-9 4.03-9 9s4.02 9 9 9c4.9 7 0 9-4.03 9-9s-4.03-9-9-9zm0 16c-3.87 0-7-3.13-7-7s3.13-7 7-7 7 3.13 7 7-3.13 7 -7 7z"></path></g> <g id="alarm-add"><path d="M7.88 3.39L6.6 1.86 2 5.71l1.29 1. 53 4.59-3.85zM22 5.72l-4.6-3.86-1.29 1.53 4.6 3.86L22 5.72zM12 4c-4.97 0-9 4.03- 9 9s4.02 9 9 9c4.97 0 9-4.03 9-9s-4.03-9-9-9zm0 16c-3.87 0-7-3.13-7-7s3.13-7 7-7 7 3.13 7 7-3.13 7-7 7zm1-11h-2v3H8v2h3v3h2v-3h3v-2h-3V9z"></path></g> <g id="al arm-off"><path d="M12 6c3.87 0 7 3.13 7 7 0 .84-.16 1.65-.43 2.4l1.52 1.52c.58-1 .19.91-2.51.91-3.92 0-4.97-4.03-9-9-9-1.41 0-2.73.33-3.92.91L9.6 6.43C10.35 6.16 11.16 6 12 6zm10-.28l-4.6-3.86-1.29 1.53 4.6 3.86L22 5.72zM2.92 2.29L1.65 3.57 2.98 4.9l-1.11.93 1.42 1.42 1.11-.94.8.8C3.83 8.69 3 10.75 3 13c0 4.97 4.02 9 9 9 2.25 0 4.31-.83 5.89-2.2l2.2 2.2 1.27-1.27L3.89 3.27l-.97-.98zm13.55 16.1C15.2 6 19.39 13.7 20 12 20c-3.87 0-7-3.13-7-7 0-1.7.61-3.26 1.61-4.47l9.86 9.86zM8.02 3.28L6.6 1.86l-.86.71 1.42 1.42.86-.71z"></path></g> <g id="alarm-on"><path d=" M22 5.72l-4.6-3.86-1.29 1.53 4.6 3.86L22 5.72zM7.88 3.39L6.6 1.86 2 5.71l1.29 1. 53 4.59-3.85zM12 4c-4.97 0-9 4.03-9 9s4.02 9 9 9c4.97 0 9-4.03 9-9s-4.03-9-9-9zm 0 16c-3.87 0-7-3.13-7-7s3.13-7 7-7 7 3.13 7 7-3.13 7-7 7zm-1.46-5.47L8.41 12.4l- 1.06 1.06 3.18 3.18 6-6-1.06-1.06-4.93 4.95z"></path></g> <g id="all-out"><path d="M16.21 4.16l4 4v-4zm4 12l-4 4h4zm-12 4l-4-4v4zm-4-12l4-4h-4zm12.95-.95c-2.73- 2.73-7.17-2.73-9.9 0s-2.73 7.17 0 9.9 7.17 2.73 9.9 0 2.73-7.16 0-9.9zm-1.1 8.8c -2.13 2.13-5.57 2.13-7.7 0s-2.13-5.57 0-7.7 5.57-2.13 7.7 0 2.13 5.57 0 7.7z"></ path></g> <g id="android"><path d="M6 18c0 .55.45 1 1 1h1v3.5c0 .83.67 1.5 1.5 1 .5s1.5-.67 1.5-1.5V19h2v3.5c0 .83.67 1.5 1.5 1.5s1.5-.67 1.5-1.5V19h1c.55 0 1-.4 5 1-1V8H6v10zM3.5 8C2.67 8 2 8.67 2 9.5v7c0 .83.67 1.5 1.5 1.5S5 17.33 5 16.5v-7 C5 8.67 4.33 8 3.5 8zm17 0c-.83 0-1.5.67-1.5 1.5v7c0 .83.67 1.5 1.5 1.5s1.5-.67 1.5-1.5v-7c0-.83-.67-1.5-1.5-1.5zm-4.97-5.84l1.3-1.3c.2-.2.2-.51 0-.71-.2-.2-.51 -.2-.71 0l-1.48 1.48C13.85 1.23 12.95 1 12 1c-.96 0-1.86.23-2.66.63L7.85.15c-.2- .2-.51-.2-.71 0-.2.2-.2.51 0 .71l1.31 1.31C6.97 3.26 6 5.01 6 7h12c0-1.99-.97-3. 75-2.47-4.84zM10 5H9V4h1v1zm5 0h-1V4h1v1z"></path></g> <g id="announcement"><pat h d="M20 2H4c-1.1 0-1.99.9-1.99 2L2 22l4-4h14c1.1 0 2-.9 2-2V4c0-1.1-.9-2-2-2zm- 7 9h-2V5h2v6zm0 4h-2v-2h2v2z"></path></g> <g id="apps"><path d="M4 8h4V4H4v4zm6 12h4v-4h-4v4zm-6 0h4v-4H4v4zm0-6h4v-4H4v4zm6 0h4v-4h-4v4zm6-10v4h4V4h-4zm-6 4h4V 4h-4v4zm6 6h4v-4h-4v4zm0 6h4v-4h-4v4z"></path></g> <g id="archive"><path d="M20. 54 5.23l-1.39-1.68C18.88 3.21 18.47 3 18 3H6c-.47 0-.88.21-1.16.55L3.46 5.23C3.1 7 5.57 3 6.02 3 6.5V19c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V6.5c0-.48-.17-.93-.46-1.2 7zM12 17.5L6.5 12H10v-2h4v2h3.5L12 17.5zM5.12 5l.81-1h12l.94 1H5.12z"></path></g > <g id="arrow-back"><path d="M20 11H7.83l5.59-5.59L12 4l-8 8 8 8 1.41-1.41L7.83 13H20v-2z"></path></g> <g id="arrow-downward"><path d="M20 12l-1.41-1.41L13 16. 17V4h-2v12.17l-5.58-5.59L4 12l8 8 8-8z"></path></g> <g id="arrow-drop-down"><pat h d="M7 10l5 5 5-5z"></path></g> <g id="arrow-drop-down-circle"><path d="M12 2C6 .48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm0 12l-4-4h8l-4 4z">< /path></g> <g id="arrow-drop-up"><path d="M7 14l5-5 5 5z"></path></g> <g id="arr ow-forward"><path d="M12 4l-1.41 1.41L16.17 11H4v2h12.17l-5.58 5.59L12 20l8-8z"> </path></g> <g id="arrow-upward"><path d="M4 12l1.41 1.41L11 7.83V20h2V7.83l5.58 5.59L20 12l-8-8-8 8z"></path></g> <g id="aspect-ratio"><path d="M19 12h-2v3h-3v 2h5v-5zM7 9h3V7H5v5h2V9zm14-6H3c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h18c1.1 0 2-.9 2 -2V5c0-1.1-.9-2-2-2zm0 16.01H3V4.99h18v14.02z"></path></g> <g id="assessment"><p ath d="M19 3H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2 -2zM9 17H7v-7h2v7zm4 0h-2V7h2v10zm4 0h-2v-4h2v4z"></path></g> <g id="assignment" ><path d="M19 3h-4.18C14.4 1.84 13.3 1 12 1c-1.3 0-2.4.84-2.82 2H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm-7 0c.55 0 1 .45 1 1s-.4 5 1-1 1-1-.45-1-1 .45-1 1-1zm2 14H7v-2h7v2zm3-4H7v-2h10v2zm0-4H7V7h10v2z"></path ></g> <g id="assignment-ind"><path d="M19 3h-4.18C14.4 1.84 13.3 1 12 1c-1.3 0-2 .4.84-2.82 2H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2 -2zm-7 0c.55 0 1 .45 1 1s-.45 1-1 1-1-.45-1-1 .45-1 1-1zm0 4c1.66 0 3 1.34 3 3s- 1.34 3-3 3-3-1.34-3-3 1.34-3 3-3zm6 12H6v-1.4c0-2 4-3.1 6-3.1s6 1.1 6 3.1V19z">< /path></g> <g id="assignment-late"><path d="M19 3h-4.18C14.4 1.84 13.3 1 12 1c-1 .3 0-2.4.84-2.82 2H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1- .9-2-2-2zm-6 15h-2v-2h2v2zm0-4h-2V8h2v6zm-1-9c-.55 0-1-.45-1-1s.45-1 1-1 1 .45 1 1-.45 1-1 1z"></path></g> <g id="assignment-return"><path d="M19 3h-4.18C14.4 1 .84 13.3 1 12 1c-1.3 0-2.4.84-2.82 2H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm-7 0c.55 0 1 .45 1 1s-.45 1-1 1-1-.45-1-1 .45-1 1-1z m4 12h-4v3l-5-5 5-5v3h4v4z"></path></g> <g id="assignment-returned"><path d="M19 3h-4.18C14.4 1.84 13.3 1 12 1c-1.3 0-2.4.84-2.82 2H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm-7 0c.55 0 1 .45 1 1s-.45 1-1 1-1-.45 -1-1 .45-1 1-1zm0 15l-5-5h3V9h4v4h3l-5 5z"></path></g> <g id="assignment-turned- in"><path d="M19 3h-4.18C14.4 1.84 13.3 1 12 1c-1.3 0-2.4.84-2.82 2H5c-1.1 0-2 . 9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm-7 0c.55 0 1 .45 1 1s -.45 1-1 1-1-.45-1-1 .45-1 1-1zm-2 14l-4-4 1.41-1.41L10 14.17l6.59-6.59L18 9l-8 8z"></path></g> <g id="attachment"><path d="M2 12.5C2 9.46 4.46 7 7.5 7H18c2.21 0 4 1.79 4 4s-1.79 4-4 4H9.5C8.12 15 7 13.88 7 12.5S8.12 10 9.5 10H17v2H9.41c-.5 5 0-.55 1 0 1H18c1.1 0 2-.9 2-2s-.9-2-2-2H7.5C5.57 9 4 10.57 4 12.5S5.57 16 7.5 16H17v2H7.5C4.46 18 2 15.54 2 12.5z"></path></g> <g id="autorenew"><path d="M12 6v3l4-4-4-4v3c-4.42 0-8 3.58-8 8 0 1.57.46 3.03 1.24 4.26L6.7 14.8c-.45-.83-.7-1 .79-.7-2.8 0-3.31 2.69-6 6-6zm6.76 1.74L17.3 9.2c.44.84.7 1.79.7 2.8 0 3.31-2.69 6-6 6v-3l-4 4 4 4v-3c4.42 0 8-3.58 8-8 0-1.57-.46-3.03-1.24-4.26z"></path></g> <g id="backspace"><path d="M22 3H7c-.69 0-1.23.35-1.59.88L0 12l5.41 8.11c.36.53. 9.89 1.59.89h15c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm-3 12.59L17.59 17 14 13.41 10.4 1 17 9 15.59 12.59 12 9 8.41 10.41 7 14 10.59 17.59 7 19 8.41 15.41 12 19 15.59z "></path></g> <g id="backup"><path d="M19.35 10.04C18.67 6.59 15.64 4 12 4 9.11 4 6.6 5.64 5.35 8.04 2.34 8.36 0 10.91 0 14c0 3.31 2.69 6 6 6h13c2.76 0 5-2.24 5 -5 0-2.64-2.05-4.78-4.65-4.96zM14 13v4h-4v-4H7l5-5 5 5h-3z"></path></g> <g id="b lock"><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2 zM4 12c0-4.42 3.58-8 8-8 1.85 0 3.55.63 4.9 1.69L5.69 16.9C4.63 15.55 4 13.85 4 12zm8 8c-1.85 0-3.55-.63-4.9-1.69L18.31 7.1C19.37 8.45 20 10.15 20 12c0 4.42-3.5 8 8-8 8z"></path></g> <g id="book"><path d="M18 2H6c-1.1 0-2 .9-2 2v16c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2V4c0-1.1-.9-2-2-2zM6 4h5v8l-2.5-1.5L6 12V4z"></path></g> < g id="bookmark"><path d="M17 3H7c-1.1 0-1.99.9-1.99 2L5 21l7-3 7 3V5c0-1.1-.9-2- 2-2z"></path></g> <g id="bookmark-border"><path d="M17 3H7c-1.1 0-1.99.9-1.99 2L 5 21l7-3 7 3V5c0-1.1-.9-2-2-2zm0 15l-5-2.18L7 18V5h10v13z"></path></g> <g id="bu g-report"><path d="M20 8h-2.81c-.45-.78-1.07-1.45-1.82-1.96L17 4.41 15.59 3l-2.1 7 2.17C12.96 5.06 12.49 5 12 5c-.49 0-.96.06-1.41.17L8.41 3 7 4.41l1.62 1.63C7.8 8 6.55 7.26 7.22 6.81 8H4v2h2.09c-.05.33-.09.66-.09 1v1H4v2h2v1c0 .34.04.67.09 1 H4v2h2.81c1.04 1.79 2.97 3 5.19 3s4.15-1.21 5.19-3H20v-2h-2.09c.05-.33.09-.66.09 -1v-1h2v-2h-2v-1c0-.34-.04-.67-.09-1H20V8zm-6 8h-4v-2h4v2zm0-4h-4v-2h4v2z"></pat h></g> <g id="build"><path d="M22.7 19l-9.1-9.1c.9-2.3.4-5-1.5-6.9-2-2-5-2.4-7.4 -1.3L9 6 6 9 1.6 4.7C.4 7.1.9 10.1 2.9 12.1c1.9 1.9 4.6 2.4 6.9 1.5l9.1 9.1c.4.4 1 .4 1.4 0l2.3-2.3c.5-.4.5-1.1.1-1.4z"></path></g> <g id="cached"><path d="M19 8l-4 4h3c0 3.31-2.69 6-6 6-1.01 0-1.97-.25-2.8-.7l-1.46 1.46C8.97 19.54 10.43 20 12 20c4.42 0 8-3.58 8-8h3l-4-4zM6 12c0-3.31 2.69-6 6-6 1.01 0 1.97.25 2.8.7l1.4 6-1.46C15.03 4.46 13.57 4 12 4c-4.42 0-8 3.58-8 8H1l4 4 4-4H6z"></path></g> <g i d="camera-enhance"><path d="M9 3L7.17 5H4c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h16c1. 1 0 2-.9 2-2V7c0-1.1-.9-2-2-2h-3.17L15 3H9zm3 15c-2.76 0-5-2.24-5-5s2.24-5 5-5 5 2.24 5 5-2.24 5-5 5zm0-1l1.25-2.75L16 13l-2.75-1.25L12 9l-1.25 2.75L8 13l2.75 1 .25z"></path></g> <g id="cancel"><path d="M12 2C6.47 2 2 6.47 2 12s4.47 10 10 10 10-4.47 10-10S17.53 2 12 2zm5 13.59L15.59 17 12 13.41 8.41 17 7 15.59 10.59 12 7 8.41 8.41 7 12 10.59 15.59 7 17 8.41 13.41 12 17 15.59z"></path></g> <g id="ca rd-giftcard"><path d="M20 6h-2.18c.11-.31.18-.65.18-1 0-1.66-1.34-3-3-3-1.05 0-1 .96.54-2.5 1.35l-.5.67-.5-.68C10.96 2.54 10.05 2 9 2 7.34 2 6 3.34 6 5c0 .35.07. 69.18 1H4c-1.11 0-1.99.89-1.99 2L2 19c0 1.11.89 2 2 2h16c1.11 0 2-.89 2-2V8c0-1. 11-.89-2-2-2zm-5-2c.55 0 1 .45 1 1s-.45 1-1 1-1-.45-1-1 .45-1 1-1zM9 4c.55 0 1 . 45 1 1s-.45 1-1 1-1-.45-1-1 .45-1 1-1zm11 15H4v-2h16v2zm0-5H4V8h5.08L7 10.83 8.6 2 12 11 8.76l1-1.36 1 1.36L15.38 12 17 10.83 14.92 8H20v6z"></path></g> <g id="c ard-membership"><path d="M20 2H4c-1.11 0-2 .89-2 2v11c0 1.11.89 2 2 2h4v5l4-2 4 2v-5h4c1.11 0 2-.89 2-2V4c0-1.11-.89-2-2-2zm0 13H4v-2h16v2zm0-5H4V4h16v6z"></pat h></g> <g id="card-travel"><path d="M20 6h-3V4c0-1.11-.89-2-2-2H9c-1.11 0-2 .89- 2 2v2H4c-1.11 0-2 .89-2 2v11c0 1.11.89 2 2 2h16c1.11 0 2-.89 2-2V8c0-1.11-.89-2- 2-2zM9 4h6v2H9V4zm11 15H4v-2h16v2zm0-5H4V8h3v2h2V8h6v2h2V8h3v6z"></path></g> <g id="change-history"><path d="M12 7.77L18.39 18H5.61L12 7.77M12 4L2 20h20L12 4z"> </path></g> <g id="check"><path d="M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1 .41z"></path></g> <g id="check-box"><path d="M19 3H5c-1.11 0-2 .9-2 2v14c0 1.1.8 9 2 2 2h14c1.11 0 2-.9 2-2V5c0-1.1-.89-2-2-2zm-9 14l-5-5 1.41-1.41L10 14.17l7.59 -7.59L19 8l-9 9z"></path></g> <g id="check-box-outline-blank"><path d="M19 5v14H 5V5h14m0-2H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2 z"></path></g> <g id="check-circle"><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm-2 15l-5-5 1.41-1.41L10 14.17l7.59-7.59L19 8l-9 9z"></path></g> <g id="chevron-left"><path d="M15.41 7.41L14 6l-6 6 6 6 1.41-1.4 1L10.83 12z"></path></g> <g id="chevron-right"><path d="M10 6L8.59 7.41 13.17 12 l-4.58 4.59L10 18l6-6z"></path></g> <g id="chrome-reader-mode"><path d="M13 12h7 v1.5h-7zm0-2.5h7V11h-7zm0 5h7V16h-7zM21 4H3c-1.1 0-2 .9-2 2v13c0 1.1.9 2 2 2h18c 1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2zm0 15h-9V6h9v13z"></path></g> <g id="class"><pat h d="M18 2H6c-1.1 0-2 .9-2 2v16c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2V4c0-1.1-.9-2-2-2 zM6 4h5v8l-2.5-1.5L6 12V4z"></path></g> <g id="clear"><path d="M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z"></path></g> <g id="close"><path d="M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z"></path></g> <g i d="cloud"><path d="M19.35 10.04C18.67 6.59 15.64 4 12 4 9.11 4 6.6 5.64 5.35 8.0 4 2.34 8.36 0 10.91 0 14c0 3.31 2.69 6 6 6h13c2.76 0 5-2.24 5-5 0-2.64-2.05-4.78 -4.65-4.96z"></path></g> <g id="cloud-circle"><path d="M12 2C6.48 2 2 6.48 2 12s 4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm4.5 14H8c-1.66 0-3-1.34-3-3s1.34-3 3-3 l.14.01C8.58 8.28 10.13 7 12 7c2.21 0 4 1.79 4 4h.5c1.38 0 2.5 1.12 2.5 2.5S17.8 8 16 16.5 16z"></path></g> <g id="cloud-done"><path d="M19.35 10.04C18.67 6.59 1 5.64 4 12 4 9.11 4 6.6 5.64 5.35 8.04 2.34 8.36 0 10.91 0 14c0 3.31 2.69 6 6 6h1 3c2.76 0 5-2.24 5-5 0-2.64-2.05-4.78-4.65-4.96zM10 17l-3.5-3.5 1.41-1.41L10 14.1 7 15.18 9l1.41 1.41L10 17z"></path></g> <g id="cloud-download"><path d="M19.35 1 0.04C18.67 6.59 15.64 4 12 4 9.11 4 6.6 5.64 5.35 8.04 2.34 8.36 0 10.91 0 14c0 3.31 2.69 6 6 6h13c2.76 0 5-2.24 5-5 0-2.64-2.05-4.78-4.65-4.96zM17 13l-5 5-5-5h 3V9h4v4h3z"></path></g> <g id="cloud-off"><path d="M19.35 10.04C18.67 6.59 15.64 4 12 4c-1.48 0-2.85.43-4.01 1.17l1.46 1.46C10.21 6.23 11.08 6 12 6c3.04 0 5.5 2 .46 5.5 5.5v.5H19c1.66 0 3 1.34 3 3 0 1.13-.64 2.11-1.56 2.62l1.45 1.45C23.16 18 .16 24 16.68 24 15c0-2.64-2.05-4.78-4.65-4.96zM3 5.27l2.75 2.74C2.56 8.15 0 10.7 7 0 14c0 3.31 2.69 6 6 6h11.73l2 2L21 20.73 4.27 4 3 5.27zM7.73 10l8 8H6c-2.21 0 -4-1.79-4-4s1.79-4 4-4h1.73z"></path></g> <g id="cloud-queue"><path d="M19.35 10 .04C18.67 6.59 15.64 4 12 4 9.11 4 6.6 5.64 5.35 8.04 2.34 8.36 0 10.91 0 14c0 3 .31 2.69 6 6 6h13c2.76 0 5-2.24 5-5 0-2.64-2.05-4.78-4.65-4.96zM19 18H6c-2.21 0- 4-1.79-4-4s1.79-4 4-4h.71C7.37 7.69 9.48 6 12 6c3.04 0 5.5 2.46 5.5 5.5v.5H19c1. 66 0 3 1.34 3 3s-1.34 3-3 3z"></path></g> <g id="cloud-upload"><path d="M19.35 1 0.04C18.67 6.59 15.64 4 12 4 9.11 4 6.6 5.64 5.35 8.04 2.34 8.36 0 10.91 0 14c0 3.31 2.69 6 6 6h13c2.76 0 5-2.24 5-5 0-2.64-2.05-4.78-4.65-4.96zM14 13v4h-4v-4H7 l5-5 5 5h-3z"></path></g> <g id="code"><path d="M9.4 16.6L4.8 12l4.6-4.6L8 6l-6 6 6 6 1.4-1.4zm5.2 0l4.6-4.6-4.6-4.6L16 6l6 6-6 6-1.4-1.4z"></path></g> <g id="c ompare-arrows"><path d="M9.01 14H2v2h7.01v3L13 15l-3.99-4v3zm5.98-1v-3H22V8h-7.0 1V5L11 9l3.99 4z"></path></g> <g id="content-copy"><path d="M16 1H4c-1.1 0-2 .9- 2 2v14h2V3h12V1zm3 4H8c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h11c1.1 0 2-.9 2-2V7c0-1. 1-.9-2-2-2zm0 16H8V7h11v14z"></path></g> <g id="content-cut"><path d="M9.64 7.64 c.23-.5.36-1.05.36-1.64 0-2.21-1.79-4-4-4S2 3.79 2 6s1.79 4 4 4c.59 0 1.14-.13 1 .64-.36L10 12l-2.36 2.36C7.14 14.13 6.59 14 6 14c-2.21 0-4 1.79-4 4s1.79 4 4 4 4 -1.79 4-4c0-.59-.13-1.14-.36-1.64L12 14l7 7h3v-1L9.64 7.64zM6 8c-1.1 0-2-.89-2-2 s.9-2 2-2 2 .89 2 2-.9 2-2 2zm0 12c-1.1 0-2-.89-2-2s.9-2 2-2 2 .89 2 2-.9 2-2 2z m6-7.5c-.28 0-.5-.22-.5-.5s.22-.5.5-.5.5.22.5.5-.22.5-.5.5zM19 3l-6 6 2 2 7-7V3z "></path></g> <g id="content-paste"><path d="M19 2h-4.18C14.4.84 13.3 0 12 0c-1. 3 0-2.4.84-2.82 2H5c-1.1 0-2 .9-2 2v16c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V4c0-1.1-. 9-2-2-2zm-7 0c.55 0 1 .45 1 1s-.45 1-1 1-1-.45-1-1 .45-1 1-1zm7 18H5V4h2v3h10V4h 2v16z"></path></g> <g id="copyright"><path d="M10.08 10.86c.05-.33.16-.62.3-.87s .34-.46.59-.62c.24-.15.54-.22.91-.23.23.01.44.05.63.13.2.09.38.21.52.36s.25.33.3 4.53.13.42.14.64h1.79c-.02-.47-.11-.9-.28-1.29s-.4-.73-.7-1.01-.66-.5-1.08-.66-. 88-.23-1.39-.23c-.65 0-1.22.11-1.7.34s-.88.53-1.2.92-.56.84-.71 1.36S8 11.29 8 1 1.87v.27c0 .58.08 1.12.23 1.64s.39.97.71 1.35.72.69 1.2.91 1.05.34 1.7.34c.47 0 .91-.08 1.32-.23s.77-.36 1.08-.63.56-.58.74-.94.29-.74.3-1.15h-1.79c-.01.21-.06. 4-.15.58s-.21.33-.36.46-.32.23-.52.3c-.19.07-.39.09-.6.1-.36-.01-.66-.08-.89-.23 -.25-.16-.45-.37-.59-.62s-.25-.55-.3-.88-.08-.67-.08-1v-.27c0-.35.03-.68.08-1.01 zM12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm0 18c-4.41 0 -8-3.59-8-8s3.59-8 8-8 8 3.59 8 8-3.59 8-8 8z"></path></g> <g id="create"><path d="M3 17.25V21h3.75L17.81 9.94l-3.75-3.75L3 17.25zM20.71 7.04c.39-.39.39-1.02 0- 1.41l-2.34-2.34c-.39-.39-1.02-.39-1.41 0l-1.83 1.83 3.75 3.75 1.83-1.83z"></path ></g> <g id="create-new-folder"><path d="M20 6h-8l-2-2H4c-1.11 0-1.99.89-1.99 2L 2 18c0 1.11.89 2 2 2h16c1.11 0 2-.89 2-2V8c0-1.11-.89-2-2-2zm-1 8h-3v3h-2v-3h-3v -2h3V9h2v3h3v2z"></path></g> <g id="credit-card"><path d="M20 4H4c-1.11 0-1.99.8 9-1.99 2L2 18c0 1.11.89 2 2 2h16c1.11 0 2-.89 2-2V6c0-1.11-.89-2-2-2zm0 14H4v-6h 16v6zm0-10H4V6h16v2z"></path></g> <g id="dashboard"><path d="M3 13h8V3H3v10zm0 8 h8v-6H3v6zm10 0h8V11h-8v10zm0-18v6h8V3h-8z"></path></g> <g id="date-range"><path d="M9 11H7v2h2v-2zm4 0h-2v2h2v-2zm4 0h-2v2h2v-2zm2-7h-1V2h-2v2H8V2H6v2H5c-1.11 0-1.99.9-1.99 2L3 20c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2zm0 16H5V9 h14v11z"></path></g> <g id="delete"><path d="M6 19c0 1.1.9 2 2 2h8c1.1 0 2-.9 2- 2V7H6v12zM19 4h-3.5l-1-1h-5l-1 1H5v2h14V4z"></path></g> <g id="description"><pat h d="M14 2H6c-1.1 0-1.99.9-1.99 2L4 20c0 1.1.89 2 1.99 2H18c1.1 0 2-.9 2-2V8l-6- 6zm2 16H8v-2h8v2zm0-4H8v-2h8v2zm-3-5V3.5L18.5 9H13z"></path></g> <g id="dns"><pa th d="M20 13H4c-.55 0-1 .45-1 1v6c0 .55.45 1 1 1h16c.55 0 1-.45 1-1v-6c0-.55-.45 -1-1-1zM7 19c-1.1 0-2-.9-2-2s.9-2 2-2 2 .9 2 2-.9 2-2 2zM20 3H4c-.55 0-1 .45-1 1 v6c0 .55.45 1 1 1h16c.55 0 1-.45 1-1V4c0-.55-.45-1-1-1zM7 9c-1.1 0-2-.9-2-2s.9-2 2-2 2 .9 2 2-.9 2-2 2z"></path></g> <g id="done"><path d="M9 16.2L4.8 12l-1.4 1 .4L9 19 21 7l-1.4-1.4L9 16.2z"></path></g> <g id="done-all"><path d="M18 7l-1.41 -1.41-6.34 6.34 1.41 1.41L18 7zm4.24-1.41L11.66 16.17 7.48 12l-1.41 1.41L11.66 1 9l12-12-1.42-1.41zM.41 13.41L6 19l1.41-1.41L1.83 12 .41 13.41z"></path></g> <g i d="donut-large"><path d="M11 5.08V2c-5 .5-9 4.81-9 10s4 9.5 9 10v-3.08c-3-.48-6- 3.4-6-6.92s3-6.44 6-6.92zM18.97 11H22c-.47-5-4-8.53-9-9v3.08C16 5.51 18.54 8 18. 97 11zM13 18.92V22c5-.47 8.53-4 9-9h-3.03c-.43 3-2.97 5.49-5.97 5.92z"></path></ g> <g id="donut-small"><path d="M11 9.16V2c-5 .5-9 4.79-9 10s4 9.5 9 10v-7.16c-1 -.41-2-1.52-2-2.84s1-2.43 2-2.84zM14.86 11H22c-.48-4.75-4-8.53-9-9v7.16c1 .3 1.5 2.98 1.86 1.84zM13 14.84V22c5-.47 8.52-4.25 9-9h-7.14c-.34.86-.86 1.54-1.86 1.84 z"></path></g> <g id="drafts"><path d="M21.99 8c0-.72-.37-1.35-.94-1.7L12 1 2.95 6.3C2.38 6.65 2 7.28 2 8v10c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2l-.01-10zM12 13L3.74 7.84 12 3l8.26 4.84L12 13z"></path></g> <g id="eject"><path d="M5 17h14v2H5zm7- 12L5.33 15h13.34z"></path></g> <g id="error"><path d="M12 2C6.48 2 2 6.48 2 12s4 .48 10 10 10 10-4.48 10-10S17.52 2 12 2zm1 15h-2v-2h2v2zm0-4h-2V7h2v6z"></path>< /g> <g id="error-outline"><path d="M11 15h2v2h-2zm0-8h2v6h-2zm.99-5C6.47 2 2 6.4 8 2 12s4.47 10 9.99 10C17.52 22 22 17.52 22 12S17.52 2 11.99 2zM12 20c-4.42 0-8- 3.58-8-8s3.58-8 8-8 8 3.58 8 8-3.58 8-8 8z"></path></g> <g id="event"><path d="M 17 12h-5v5h5v-5zM16 1v2H8V1H6v2H5c-1.11 0-1.99.9-1.99 2L3 19c0 1.1.89 2 2 2h14c1 .1 0 2-.9 2-2V5c0-1.1-.9-2-2-2h-1V1h-2zm3 18H5V8h14v11z"></path></g> <g id="even t-seat"><path d="M4 18v3h3v-3h10v3h3v-6H4zm15-8h3v3h-3zM2 10h3v3H2zm15 3H7V5c0-1 .1.9-2 2-2h6c1.1 0 2 .9 2 2v8z"></path></g> <g id="exit-to-app"><path d="M10.09 15.59L11.5 17l5-5-5-5-1.41 1.41L12.67 11H3v2h9.67l-2.58 2.59zM19 3H5c-1.11 0-2 . 9-2 2v4h2V5h14v14H5v-4H3v4c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2z">< /path></g> <g id="expand-less"><path d="M12 8l-6 6 1.41 1.41L12 10.83l4.59 4.58L 18 14z"></path></g> <g id="expand-more"><path d="M16.59 8.59L12 13.17 7.41 8.59 6 10l6 6 6-6z"></path></g> <g id="explore"><path d="M12 10.9c-.61 0-1.1.49-1.1 1 .1s.49 1.1 1.1 1.1c.61 0 1.1-.49 1.1-1.1s-.49-1.1-1.1-1.1zM12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm2.19 12.19L6 18l3.81-8.19L18 6l-3.8 1 8.19z"></path></g> <g id="extension"><path d="M20.5 11H19V7c0-1.1-.9-2-2-2h-4V 3.5C13 2.12 11.88 1 10.5 1S8 2.12 8 3.5V5H4c-1.1 0-1.99.9-1.99 2v3.8H3.5c1.49 0 2.7 1.21 2.7 2.7s-1.21 2.7-2.7 2.7H2V20c0 1.1.9 2 2 2h3.8v-1.5c0-1.49 1.21-2.7 2 .7-2.7 1.49 0 2.7 1.21 2.7 2.7V22H17c1.1 0 2-.9 2-2v-4h1.5c1.38 0 2.5-1.12 2.5-2 .5S21.88 11 20.5 11z"></path></g> <g id="face"><path d="M9 11.75c-.69 0-1.25.56- 1.25 1.25s.56 1.25 1.25 1.25 1.25-.56 1.25-1.25-.56-1.25-1.25-1.25zm6 0c-.69 0-1 .25.56-1.25 1.25s.56 1.25 1.25 1.25 1.25-.56 1.25-1.25-.56-1.25-1.25-1.25zM12 2C 6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm0 18c-4.41 0-8-3.59 -8-8 0-.29.02-.58.05-.86 2.36-1.05 4.23-2.98 5.21-5.37C11.07 8.33 14.05 10 17.42 10c.78 0 1.53-.09 2.25-.26.21.71.33 1.47.33 2.26 0 4.41-3.59 8-8 8z"></path></g > <g id="favorite"><path d="M12 21.35l-1.45-1.32C5.4 15.36 2 12.28 2 8.5 2 5.42 4.42 3 7.5 3c1.74 0 3.41.81 4.5 2.09C13.09 3.81 14.76 3 16.5 3 19.58 3 22 5.42 2 2 8.5c0 3.78-3.4 6.86-8.55 11.54L12 21.35z"></path></g> <g id="favorite-border"> <path d="M16.5 3c-1.74 0-3.41.81-4.5 2.09C10.91 3.81 9.24 3 7.5 3 4.42 3 2 5.42 2 8.5c0 3.78 3.4 6.86 8.55 11.54L12 21.35l1.45-1.32C18.6 15.36 22 12.28 22 8.5 2 2 5.42 19.58 3 16.5 3zm-4.4 15.55l-.1.1-.1-.1C7.14 14.24 4 11.39 4 8.5 4 6.5 5.5 5 7.5 5c1.54 0 3.04.99 3.57 2.36h1.87C13.46 5.99 14.96 5 16.5 5c2 0 3.5 1.5 3.5 3.5 0 2.89-3.14 5.74-7.9 10.05z"></path></g> <g id="feedback"><path d="M20 2H4c -1.1 0-1.99.9-1.99 2L2 22l4-4h14c1.1 0 2-.9 2-2V4c0-1.1-.9-2-2-2zm-7 12h-2v-2h2v 2zm0-4h-2V6h2v4z"></path></g> <g id="file-download"><path d="M19 9h-4V3H9v6H5l7 7 7-7zM5 18v2h14v-2H5z"></path></g> <g id="file-upload"><path d="M9 16h6v-6h4l-7 -7-7 7h4zm-4 2h14v2H5z"></path></g> <g id="filter-list"><path d="M10 18h4v-2h-4v 2zM3 6v2h18V6H3zm3 7h12v-2H6v2z"></path></g> <g id="find-in-page"><path d="M20 1 9.59V8l-6-6H6c-1.1 0-1.99.9-1.99 2L4 20c0 1.1.89 2 1.99 2H18c.45 0 .85-.15 1.19- .4l-4.43-4.43c-.8.52-1.74.83-2.76.83-2.76 0-5-2.24-5-5s2.24-5 5-5 5 2.24 5 5c0 1 .02-.31 1.96-.83 2.75L20 19.59zM9 13c0 1.66 1.34 3 3 3s3-1.34 3-3-1.34-3-3-3-3 1 .34-3 3z"></path></g> <g id="find-replace"><path d="M11 6c1.38 0 2.63.56 3.54 1. 46L12 10h6V4l-2.05 2.05C14.68 4.78 12.93 4 11 4c-3.53 0-6.43 2.61-6.92 6H6.1c.46 -2.28 2.48-4 4.9-4zm5.64 9.14c.66-.9 1.12-1.97 1.28-3.14H15.9c-.46 2.28-2.48 4-4 .9 4-1.38 0-2.63-.56-3.54-1.46L10 12H4v6l2.05-2.05C7.32 17.22 9.07 18 11 18c1.55 0 2.98-.51 4.14-1.36L20 21.49 21.49 20l-4.85-4.86z"></path></g> <g id="fingerpr int"><path d="M17.81 4.47c-.08 0-.16-.02-.23-.06C15.66 3.42 14 3 12.01 3c-1.98 0 -3.86.47-5.57 1.41-.24.13-.54.04-.68-.2-.13-.24-.04-.55.2-.68C7.82 2.52 9.86 2 1 2.01 2c2.13 0 3.99.47 6.03 1.52.25.13.34.43.21.67-.09.18-.26.28-.44.28zM3.5 9.72 c-.1 0-.2-.03-.29-.09-.23-.16-.28-.47-.12-.7.99-1.4 2.25-2.5 3.75-3.27C9.98 4.04 14 4.03 17.15 5.65c1.5.77 2.76 1.86 3.75 3.25.16.22.11.54-.12.7-.23.16-.54.11-. 7-.12-.9-1.26-2.04-2.25-3.39-2.94-2.87-1.47-6.54-1.47-9.4.01-1.36.7-2.5 1.7-3.4 2.96-.08.14-.23.21-.39.21zm6.25 12.07c-.13 0-.26-.05-.35-.15-.87-.87-1.34-1.43-2 .01-2.64-.69-1.23-1.05-2.73-1.05-4.34 0-2.97 2.54-5.39 5.66-5.39s5.66 2.42 5.66 5.39c0 .28-.22.5-.5.5s-.5-.22-.5-.5c0-2.42-2.09-4.39-4.66-4.39-2.57 0-4.66 1.97- 4.66 4.39 0 1.44.32 2.77.93 3.85.64 1.15 1.08 1.64 1.85 2.42.19.2.19.51 0 .71-.1 1.1-.24.15-.37.15zm7.17-1.85c-1.19 0-2.24-.3-3.1-.89-1.49-1.01-2.38-2.65-2.38-4. 39 0-.28.22-.5.5-.5s.5.22.5.5c0 1.41.72 2.74 1.94 3.56.71.48 1.54.71 2.54.71.24 0 .64-.03 1.04-.1.27-.05.53.13.58.41.05.27-.13.53-.41.58-.57.11-1.07.12-1.21.12z M14.91 22c-.04 0-.09-.01-.13-.02-1.59-.44-2.63-1.03-3.72-2.1-1.4-1.39-2.17-3.24- 2.17-5.22 0-1.62 1.38-2.94 3.08-2.94 1.7 0 3.08 1.32 3.08 2.94 0 1.07.93 1.94 2. 08 1.94s2.08-.87 2.08-1.94c0-3.77-3.25-6.83-7.25-6.83-2.84 0-5.44 1.58-6.61 4.03 -.39.81-.59 1.76-.59 2.8 0 .78.07 2.01.67 3.61.1.26-.03.55-.29.64-.26.1-.55-.04- .64-.29-.49-1.31-.73-2.61-.73-3.96 0-1.2.23-2.29.68-3.24 1.33-2.79 4.28-4.6 7.51 -4.6 4.55 0 8.25 3.51 8.25 7.83 0 1.62-1.38 2.94-3.08 2.94s-3.08-1.32-3.08-2.94c 0-1.07-.93-1.94-2.08-1.94s-2.08.87-2.08 1.94c0 1.71.66 3.31 1.87 4.51.95.94 1.86 1.46 3.27 1.85.27.07.42.35.35.61-.05.23-.26.38-.47.38z"></path></g> <g id="flag "><path d="M14.4 6L14 4H5v17h2v-7h5.6l.4 2h7V6z"></path></g> <g id="flight-land" ><path d="M2.5 19h19v2h-19zm7.18-5.73l4.35 1.16 5.31 1.42c.8.21 1.62-.26 1.84-1. 06.21-.8-.26-1.62-1.06-1.84l-5.31-1.42-2.76-9.02L10.12 2v8.28L5.15 8.95l-.93-2.3 2-1.45-.39v5.17l1.6.43 5.31 1.43z"></path></g> <g id="flight-takeoff"><path d="M 2.5 19h19v2h-19zm19.57-9.36c-.21-.8-1.04-1.28-1.84-1.06L14.92 10l-6.9-6.43-1.93. 51 4.14 7.17-4.97 1.33-1.97-1.54-1.45.39 1.82 3.16.77 1.33 1.6-.43 5.31-1.42 4.3 5-1.16L21 11.49c.81-.23 1.28-1.05 1.07-1.85z"></path></g> <g id="flip-to-back">< path d="M9 7H7v2h2V7zm0 4H7v2h2v-2zm0-8c-1.11 0-2 .9-2 2h2V3zm4 12h-2v2h2v-2zm6- 12v2h2c0-1.1-.9-2-2-2zm-6 0h-2v2h2V3zM9 17v-2H7c0 1.1.89 2 2 2zm10-4h2v-2h-2v2zm 0-4h2V7h-2v2zm0 8c1.1 0 2-.9 2-2h-2v2zM5 7H3v12c0 1.1.89 2 2 2h12v-2H5V7zm10-2h2 V3h-2v2zm0 12h2v-2h-2v2z"></path></g> <g id="flip-to-front"><path d="M3 13h2v-2H 3v2zm0 4h2v-2H3v2zm2 4v-2H3c0 1.1.89 2 2 2zM3 9h2V7H3v2zm12 12h2v-2h-2v2zm4-18H9 c-1.11 0-2 .9-2 2v10c0 1.1.89 2 2 2h10c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm0 12H9V5 h10v10zm-8 6h2v-2h-2v2zm-4 0h2v-2H7v2z"></path></g> <g id="folder"><path d="M10 4H4c-1.1 0-1.99.9-1.99 2L2 18c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V8c0-1.1-.9-2-2-2h- 8l-2-2z"></path></g> <g id="folder-open"><path d="M20 6h-8l-2-2H4c-1.1 0-1.99.9- 1.99 2L2 18c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V8c0-1.1-.9-2-2-2zm0 12H4V8h16v10z">< /path></g> <g id="folder-shared"><path d="M20 6h-8l-2-2H4c-1.1 0-1.99.9-1.99 2L2 18c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V8c0-1.1-.9-2-2-2zm-5 3c1.1 0 2 .9 2 2s-.9 2- 2 2-2-.9-2-2 .9-2 2-2zm4 8h-8v-1c0-1.33 2.67-2 4-2s4 .67 4 2v1z"></path></g> <g id="font-download"><path d="M9.93 13.5h4.14L12 7.98zM20 2H4c-1.1 0-2 .9-2 2v16c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V4c0-1.1-.9-2-2-2zm-4.05 16.5l-1.14-3H9.17l-1.12 3 H5.96l5.11-13h1.86l5.11 13h-2.09z"></path></g> <g id="forward"><path d="M12 8V4l 8 8-8 8v-4H4V8z"></path></g> <g id="fullscreen"><path d="M7 14H5v5h5v-2H7v-3zm-2 -4h2V7h3V5H5v5zm12 7h-3v2h5v-5h-2v3zM14 5v2h3v3h2V5h-5z"></path></g> <g id="full screen-exit"><path d="M5 16h3v3h2v-5H5v2zm3-8H5v2h5V5H8v3zm6 11h2v-3h3v-2h-5v5zm 2-11V5h-2v5h5V8h-3z"></path></g> <g id="gavel"><path d="M1 21h12v2H1zM5.245 8.07 l2.83-2.827 14.14 14.142-2.828 2.828zM12.317 1l5.657 5.656-2.83 2.83-5.654-5.66z M3.825 9.485l5.657 5.657-2.828 2.828-5.657-5.657z"></path></g> <g id="gesture">< path d="M4.59 6.89c.7-.71 1.4-1.35 1.71-1.22.5.2 0 1.03-.3 1.52-.25.42-2.86 3.89 -2.86 6.31 0 1.28.48 2.34 1.34 2.98.75.56 1.74.73 2.64.46 1.07-.31 1.95-1.4 3.06 -2.77 1.21-1.49 2.83-3.44 4.08-3.44 1.63 0 1.65 1.01 1.76 1.79-3.78.64-5.38 3.67 -5.38 5.37 0 1.7 1.44 3.09 3.21 3.09 1.63 0 4.29-1.33 4.69-6.1H21v-2.5h-2.47c-.1 5-1.65-1.09-4.2-4.03-4.2-2.25 0-4.18 1.91-4.94 2.84-.58.73-2.06 2.48-2.29 2.72-. 25.3-.68.84-1.11.84-.45 0-.72-.83-.36-1.92.35-1.09 1.4-2.86 1.85-3.52.78-1.14 1. 3-1.92 1.3-3.28C8.95 3.69 7.31 3 6.44 3 5.12 3 3.97 4 3.72 4.25c-.36.36-.66.66-. 88.93l1.75 1.71zm9.29 11.66c-.31 0-.74-.26-.74-.72 0-.6.73-2.2 2.87-2.76-.3 2.69 -1.43 3.48-2.13 3.48z"></path></g> <g id="get-app"><path d="M19 9h-4V3H9v6H5l7 7 7-7zM5 18v2h14v-2H5z"></path></g> <g id="gif"><path d="M11.5 9H13v6h-1.5zM9 9H6 c-.6 0-1 .5-1 1v4c0 .5.4 1 1 1h3c.6 0 1-.5 1-1v-2H8.5v1.5h-2v-3H10V10c0-.5-.4-1- 1-1zm10 1.5V9h-4.5v6H16v-2h2v-1.5h-2v-1z"></path></g> <g id="grade"><path d="M12 17.27L18.18 21l-1.64-7.03L22 9.24l-7.19-.61L12 2 9.19 8.63 2 9.24l5.46 4.73L5.8 2 21z"></path></g> <g id="group-work"><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zM8 17.5c-1.38 0-2.5-1.12-2.5-2.5s1.12-2.5 2.5-2 .5 2.5 1.12 2.5 2.5-1.12 2.5-2.5 2.5zM9.5 8c0-1.38 1.12-2.5 2.5-2.5s2.5 1.12 2.5 2.5-1.12 2.5-2.5 2.5S9.5 9.38 9.5 8zm6.5 9.5c-1.38 0-2.5-1.12-2.5-2.5s1.12-2.5 2.5-2.5 2.5 1.12 2.5 2.5-1.12 2.5-2.5 2.5z"></path></g> <g id="help"><path d="M1 2 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm1 17h-2v-2h2v2z m2.07-7.75l-.9.92C13.45 12.9 13 13.5 13 15h-2v-.5c0-1.1.45-2.1 1.17-2.83l1.24-1. 26c.37-.36.59-.86.59-1.41 0-1.1-.9-2-2-2s-2 .9-2 2H8c0-2.21 1.79-4 4-4s4 1.79 4 4c0 .88-.36 1.68-.93 2.25z"></path></g> <g id="help-outline"><path d="M11 18h2v- 2h-2v2zm1-16C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm0 18c- 4.41 0-8-3.59-8-8s3.59-8 8-8 8 3.59 8 8-3.59 8-8 8zm0-14c-2.21 0-4 1.79-4 4h2c0- 1.1.9-2 2-2s2 .9 2 2c0 2-3 1.75-3 5h2c0-2.25 3-2.5 3-5 0-2.21-1.79-4-4-4z"></pat h></g> <g id="highlight-off"><path d="M14.59 8L12 10.59 9.41 8 8 9.41 10.59 12 8 14.59 9.41 16 12 13.41 14.59 16 16 14.59 13.41 12 16 9.41 14.59 8zM12 2C6.47 2 2 6.47 2 12s4.47 10 10 10 10-4.47 10-10S17.53 2 12 2zm0 18c-4.41 0-8-3.59-8-8s3. 59-8 8-8 8 3.59 8 8-3.59 8-8 8z"></path></g> <g id="history"><path d="M13 3c-4.9 7 0-9 4.03-9 9H1l3.89 3.89.07.14L9 12H6c0-3.87 3.13-7 7-7s7 3.13 7 7-3.13 7-7 7c -1.93 0-3.68-.79-4.94-2.06l-1.42 1.42C8.27 19.99 10.51 21 13 21c4.97 0 9-4.03 9- 9s-4.03-9-9-9zm-1 5v5l4.28 2.54.72-1.21-3.5-2.08V8H12z"></path></g> <g id="home" ><path d="M10 20v-6h4v6h5v-8h3L12 3 2 12h3v8z"></path></g> <g id="hourglass-empt y"><path d="M6 2v6h.01L6 8.01 10 12l-4 4 .01.01H6V22h12v-5.99h-.01L18 16l-4-4 4- 3.99-.01-.01H18V2H6zm10 14.5V20H8v-3.5l4-4 4 4zm-4-5l-4-4V4h8v3.5l-4 4z"></path> </g> <g id="hourglass-full"><path d="M6 2v6h.01L6 8.01 10 12l-4 4 .01.01H6V22h12 v-5.99h-.01L18 16l-4-4 4-3.99-.01-.01H18V2H6z"></path></g> <g id="http"><path d= "M4.5 11h-2V9H1v6h1.5v-2.5h2V15H6V9H4.5v2zm2.5-.5h1.5V15H10v-4.5h1.5V9H7v1.5zm5. 5 0H14V15h1.5v-4.5H17V9h-4.5v1.5zm9-1.5H18v6h1.5v-2h2c.8 0 1.5-.7 1.5-1.5v-1c0-. 8-.7-1.5-1.5-1.5zm0 2.5h-2v-1h2v1z"></path></g> <g id="https"><path d="M18 8h-1V 6c0-2.76-2.24-5-5-5S7 3.24 7 6v2H6c-1.1 0-2 .9-2 2v10c0 1.1.9 2 2 2h12c1.1 0 2-. 9 2-2V10c0-1.1-.9-2-2-2zm-6 9c-1.1 0-2-.9-2-2s.9-2 2-2 2 .9 2 2-.9 2-2 2zm3.1-9H 8.9V6c0-1.71 1.39-3.1 3.1-3.1 1.71 0 3.1 1.39 3.1 3.1v2z"></path></g> <g id="imp ortant-devices"><path d="M23 11.01L18 11c-.55 0-1 .45-1 1v9c0 .55.45 1 1 1h5c.55 0 1-.45 1-1v-9c0-.55-.45-.99-1-.99zM23 20h-5v-7h5v7zM20 2H2C.89 2 0 2.89 0 4v12 c0 1.1.89 2 2 2h7v2H7v2h8v-2h-2v-2h2v-2H2V4h18v5h2V4c0-1.11-.9-2-2-2zm-8.03 7L11 6l-.97 3H7l2.47 1.76-.94 2.91 2.47-1.8 2.47 1.8-.94-2.91L15 9h-3.03z"></path></ g> <g id="inbox"><path d="M19 3H4.99c-1.11 0-1.98.89-1.98 2L3 19c0 1.1.88 2 1.99 2H19c1.1 0 2-.9 2-2V5c0-1.11-.9-2-2-2zm0 12h-4c0 1.66-1.35 3-3 3s-3-1.34-3-3H4. 99V5H19v10z"></path></g> <g id="indeterminate-check-box"><path d="M19 3H5c-1.1 0 -2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm-2 10H7v-2h10v2z" ></path></g> <g id="info"><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.4 8 10-10S17.52 2 12 2zm1 15h-2v-6h2v6zm0-8h-2V7h2v2z"></path></g> <g id="info-out line"><path d="M11 17h2v-6h-2v6zm1-15C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 1 0-10S17.52 2 12 2zm0 18c-4.41 0-8-3.59-8-8s3.59-8 8-8 8 3.59 8 8-3.59 8-8 8zM11 9h2V7h-2v2z"></path></g> <g id="input"><path d="M21 3.01H3c-1.1 0-2 .9-2 2V9h2V4 .99h18v14.03H3V15H1v4.01c0 1.1.9 1.98 2 1.98h18c1.1 0 2-.88 2-1.98v-14c0-1.11-.9 -2-2-2zM11 16l4-4-4-4v3H1v2h10v3z"></path></g> <g id="invert-colors"><path d="M1 7.66 7.93L12 2.27 6.34 7.93c-3.12 3.12-3.12 8.19 0 11.31C7.9 20.8 9.95 21.58 12 21.58c2.05 0 4.1-.78 5.66-2.34 3.12-3.12 3.12-8.19 0-11.31zM12 19.59c-1.6 0-3.11 -.62-4.24-1.76C6.62 16.69 6 15.19 6 13.59s.62-3.11 1.76-4.24L12 5.1v14.49z"></pa th></g> <g id="label"><path d="M17.63 5.84C17.27 5.33 16.67 5 16 5L5 5.01C3.9 5. 01 3 5.9 3 7v10c0 1.1.9 1.99 2 1.99L16 19c.67 0 1.27-.33 1.63-.84L22 12l-4.37-6. 16z"></path></g> <g id="label-outline"><path d="M17.63 5.84C17.27 5.33 16.67 5 1 6 5L5 5.01C3.9 5.01 3 5.9 3 7v10c0 1.1.9 1.99 2 1.99L16 19c.67 0 1.27-.33 1.63-. 84L22 12l-4.37-6.16zM16 17H5V7h11l3.55 5L16 17z"></path></g> <g id="language"><p ath d="M11.99 2C6.47 2 2 6.48 2 12s4.47 10 9.99 10C17.52 22 22 17.52 22 12S17.52 2 11.99 2zm6.93 6h-2.95c-.32-1.25-.78-2.45-1.38-3.56 1.84.63 3.37 1.91 4.33 3.5 6zM12 4.04c.83 1.2 1.48 2.53 1.91 3.96h-3.82c.43-1.43 1.08-2.76 1.91-3.96zM4.26 14C4.1 13.36 4 12.69 4 12s.1-1.36.26-2h3.38c-.08.66-.14 1.32-.14 2 0 .68.06 1.34 .14 2H4.26zm.82 2h2.95c.32 1.25.78 2.45 1.38 3.56-1.84-.63-3.37-1.9-4.33-3.56zm2 .95-8H5.08c.96-1.66 2.49-2.93 4.33-3.56C8.81 5.55 8.35 6.75 8.03 8zM12 19.96c-.8 3-1.2-1.48-2.53-1.91-3.96h3.82c-.43 1.43-1.08 2.76-1.91 3.96zM14.34 14H9.66c-.09 -.66-.16-1.32-.16-2 0-.68.07-1.35.16-2h4.68c.09.65.16 1.32.16 2 0 .68-.07 1.34-. 16 2zm.25 5.56c.6-1.11 1.06-2.31 1.38-3.56h2.95c-.96 1.65-2.49 2.93-4.33 3.56zM1 6.36 14c.08-.66.14-1.32.14-2 0-.68-.06-1.34-.14-2h3.38c.16.64.26 1.31.26 2s-.1 1 .36-.26 2h-3.38z"></path></g> <g id="launch"><path d="M19 19H5V5h7V3H5c-1.11 0-2 .9-2 2v14c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2v-7h-2v7zM14 3v2h3.59l-9.83 9.83 1.41 1.41L19 6.41V10h2V3h-7z"></path></g> <g id="lightbulb-outline"><path d="M9 21c0 .55.45 1 1 1h4c.55 0 1-.45 1-1v-1H9v1zm3-19C8.14 2 5 5.14 5 9c0 2.38 1.19 4.47 3 5.74V17c0 .55.45 1 1 1h6c.55 0 1-.45 1-1v-2.26c1.81-1.27 3-3.36 3-5.74 0-3.86- 3.14-7-7-7zm2.85 11.1l-.85.6V16h-4v-2.3l-.85-.6C7.8 12.16 7 10.63 7 9c0-2.76 2.2 4-5 5-5s5 2.24 5 5c0 1.63-.8 3.16-2.15 4.1z"></path></g> <g id="line-style"><pat h d="M3 16h5v-2H3v2zm6.5 0h5v-2h-5v2zm6.5 0h5v-2h-5v2zM3 20h2v-2H3v2zm4 0h2v-2H7 v2zm4 0h2v-2h-2v2zm4 0h2v-2h-2v2zm4 0h2v-2h-2v2zM3 12h8v-2H3v2zm10 0h8v-2h-8v2zM 3 4v4h18V4H3z"></path></g> <g id="line-weight"><path d="M3 17h18v-2H3v2zm0 3h18v -1H3v1zm0-7h18v-3H3v3zm0-9v4h18V4H3z"></path></g> <g id="link"><path d="M3.9 12c 0-1.71 1.39-3.1 3.1-3.1h4V7H7c-2.76 0-5 2.24-5 5s2.24 5 5 5h4v-1.9H7c-1.71 0-3.1 -1.39-3.1-3.1zM8 13h8v-2H8v2zm9-6h-4v1.9h4c1.71 0 3.1 1.39 3.1 3.1s-1.39 3.1-3.1 3.1h-4V17h4c2.76 0 5-2.24 5-5s-2.24-5-5-5z"></path></g> <g id="list"><path d="M 3 13h2v-2H3v2zm0 4h2v-2H3v2zm0-8h2V7H3v2zm4 4h14v-2H7v2zm0 4h14v-2H7v2zM7 7v2h14 V7H7z"></path></g> <g id="lock"><path d="M18 8h-1V6c0-2.76-2.24-5-5-5S7 3.24 7 6 v2H6c-1.1 0-2 .9-2 2v10c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2V10c0-1.1-.9-2-2-2zm-6 9c -1.1 0-2-.9-2-2s.9-2 2-2 2 .9 2 2-.9 2-2 2zm3.1-9H8.9V6c0-1.71 1.39-3.1 3.1-3.1 1.71 0 3.1 1.39 3.1 3.1v2z"></path></g> <g id="lock-open"><path d="M12 17c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2zm6-9h-1V6c0-2.76-2.24-5-5-5S7 3.24 7 6h1.9c 0-1.71 1.39-3.1 3.1-3.1 1.71 0 3.1 1.39 3.1 3.1v2H6c-1.1 0-2 .9-2 2v10c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2V10c0-1.1-.9-2-2-2zm0 12H6V10h12v10z"></path></g> <g id="l ock-outline"><path d="M12 17c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2zm6-9h-1V 6c0-2.76-2.24-5-5-5S7 3.24 7 6v2H6c-1.1 0-2 .9-2 2v10c0 1.1.9 2 2 2h12c1.1 0 2-. 9 2-2V10c0-1.1-.9-2-2-2zM8.9 6c0-1.71 1.39-3.1 3.1-3.1s3.1 1.39 3.1 3.1v2H8.9V6z M18 20H6V10h12v10z"></path></g> <g id="loyalty"><path d="M21.41 11.58l-9-9C12.05 2.22 11.55 2 11 2H4c-1.1 0-2 .9-2 2v7c0 .55.22 1.05.59 1.42l9 9c.36.36.86.58 1. 41.58.55 0 1.05-.22 1.41-.59l7-7c.37-.36.59-.86.59-1.41 0-.55-.23-1.06-.59-1.42z M5.5 7C4.67 7 4 6.33 4 5.5S4.67 4 5.5 4 7 4.67 7 5.5 6.33 7 5.5 7zm11.77 8.27L13 19.54l-4.27-4.27C8.28 14.81 8 14.19 8 13.5c0-1.38 1.12-2.5 2.5-2.5.69 0 1.32.28 1.77.74l.73.72.73-.73c.45-.45 1.08-.73 1.77-.73 1.38 0 2.5 1.12 2.5 2.5 0 .69-. 28 1.32-.73 1.77z"></path></g> <g id="mail"><path d="M20 4H4c-1.1 0-1.99.9-1.99 2L2 18c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2zm0 4l-8 5-8-5V6l8 5 8-5v 2z"></path></g> <g id="markunread"><path d="M20 4H4c-1.1 0-1.99.9-1.99 2L2 18c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2zm0 4l-8 5-8-5V6l8 5 8-5v2z"></pat h></g> <g id="markunread-mailbox"><path d="M20 6H10v6H8V4h6V0H6v6H4c-1.1 0-2 .9- 2 2v12c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V8c0-1.1-.9-2-2-2z"></path></g> <g id="men u"><path d="M3 18h18v-2H3v2zm0-5h18v-2H3v2zm0-7v2h18V6H3z"></path></g> <g id="mo re-horiz"><path d="M6 10c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2zm12 0c-1.1 0 -2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2zm-6 0c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9- 2-2-2z"></path></g> <g id="more-vert"><path d="M12 8c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2zm0 2c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2zm0 6c-1.1 0-2 .9 -2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2z"></path></g> <g id="motorcycle"><path d="M19.44 9.03L15.41 5H11v2h3.59l2 2H5c-2.8 0-5 2.2-5 5s2.2 5 5 5c2.46 0 4.45-1.69 4.9-4h 1.65l2.77-2.77c-.21.54-.32 1.14-.32 1.77 0 2.8 2.2 5 5 5s5-2.2 5-5c0-2.65-1.97-4 .77-4.56-4.97zM7.82 15C7.4 16.15 6.28 17 5 17c-1.63 0-3-1.37-3-3s1.37-3 3-3c1.28 0 2.4.85 2.82 2H5v2h2.82zM19 17c-1.66 0-3-1.34-3-3s1.34-3 3-3 3 1.34 3 3-1.34 3 -3 3z"></path></g> <g id="move-to-inbox"><path d="M19 3H4.99c-1.11 0-1.98.9-1.98 2L3 19c0 1.1.88 2 1.99 2H19c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm0 12h-4c0 1.66-1.3 5 3-3 3s-3-1.34-3-3H4.99V5H19v10zm-3-5h-2V7h-4v3H8l4 4 4-4z"></path></g> <g id=" next-week"><path d="M20 7h-4V5c0-.55-.22-1.05-.59-1.41C15.05 3.22 14.55 3 14 3h- 4c-1.1 0-2 .9-2 2v2H4c-1.1 0-2 .9-2 2v11c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V9c0-1.1 -.9-2-2-2zM10 5h4v2h-4V5zm1 13.5l-1-1 3-3-3-3 1-1 4 4-4 4z"></path></g> <g id="n ote-add"><path d="M14 2H6c-1.1 0-1.99.9-1.99 2L4 20c0 1.1.89 2 1.99 2H18c1.1 0 2 -.9 2-2V8l-6-6zm2 14h-3v3h-2v-3H8v-2h3v-3h2v3h3v2zm-3-7V3.5L18.5 9H13z"></path>< /g> <g id="offline-pin"><path d="M12 2C6.5 2 2 6.5 2 12s4.5 10 10 10 10-4.5 10-1 0S17.5 2 12 2zm5 16H7v-2h10v2zm-6.7-4L7 10.7l1.4-1.4 1.9 1.9 5.3-5.3L17 7.3 10.3 14z"></path></g> <g id="opacity"><path d="M17.66 8L12 2.35 6.34 8C4.78 9.56 4 1 1.64 4 13.64s.78 4.11 2.34 5.67 3.61 2.35 5.66 2.35 4.1-.79 5.66-2.35S20 15.64 2 0 13.64 19.22 9.56 17.66 8zM6 14c.01-2 .62-3.27 1.76-4.4L12 5.27l4.24 4.38C17.38 10.77 17.99 12 18 14H6z"></path></g> <g id="open-in-browser"><path d="M19 4H5c- 1.11 0-2 .9-2 2v12c0 1.1.89 2 2 2h4v-2H5V8h14v10h-4v2h4c1.1 0 2-.9 2-2V6c0-1.1-. 89-2-2-2zm-7 6l-4 4h3v6h2v-6h3l-4-4z"></path></g> <g id="open-in-new"><path d="M 19 19H5V5h7V3H5c-1.11 0-2 .9-2 2v14c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2v-7h-2v7zM14 3v2h3.59l-9.83 9.83 1.41 1.41L19 6.41V10h2V3h-7z"></path></g> <g id="open-with" ><path d="M10 9h4V6h3l-5-5-5 5h3v3zm-1 1H6V7l-5 5 5 5v-3h3v-4zm14 2l-5-5v3h-3v4h 3v3l5-5zm-9 3h-4v3H7l5 5 5-5h-3v-3z"></path></g> <g id="pageview"><path d="M11.5 9C10.12 9 9 10.12 9 11.5s1.12 2.5 2.5 2.5 2.5-1.12 2.5-2.5S12.88 9 11.5 9zM20 4 H4c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2zm-3.21 14 .21l-2.91-2.91c-.69.44-1.51.7-2.39.7C9.01 16 7 13.99 7 11.5S9.01 7 11.5 7 16 9.0 1 16 11.5c0 .88-.26 1.69-.7 2.39l2.91 2.9-1.42 1.42z"></path></g> <g id="pan-too l"><path d="M23 5.5V20c0 2.2-1.8 4-4 4h-7.3c-1.08 0-2.1-.43-2.85-1.19L1 14.83s1. 26-1.23 1.3-1.25c.22-.19.49-.29.79-.29.22 0 .42.06.6.16.04.01 4.31 2.46 4.31 2.4 6V4c0-.83.67-1.5 1.5-1.5S11 3.17 11 4v7h1V1.5c0-.83.67-1.5 1.5-1.5S15 .67 15 1.5 V11h1V2.5c0-.83.67-1.5 1.5-1.5s1.5.67 1.5 1.5V11h1V5.5c0-.83.67-1.5 1.5-1.5s1.5. 67 1.5 1.5z"></path></g> <g id="payment"><path d="M20 4H4c-1.11 0-1.99.89-1.99 2 L2 18c0 1.11.89 2 2 2h16c1.11 0 2-.89 2-2V6c0-1.11-.89-2-2-2zm0 14H4v-6h16v6zm0- 10H4V6h16v2z"></path></g> <g id="perm-camera-mic"><path d="M20 5h-3.17L15 3H9L7. 17 5H4c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h7v-2.09c-2.83-.48-5-2.94-5-5.91h2c0 2.21 1.79 4 4 4s4-1.79 4-4h2c0 2.97-2.17 5.43-5 5.91V21h7c1.1 0 2-.9 2-2V7c0-1.1-.9- 2-2-2zm-6 8c0 1.1-.9 2-2 2s-2-.9-2-2V9c0-1.1.9-2 2-2s2 .9 2 2v4z"></path></g> <g id="perm-contact-calendar"><path d="M19 3h-1V1h-2v2H8V1H6v2H5c-1.11 0-2 .9-2 2v 14c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm-7 3c1.66 0 3 1.34 3 3s-1. 34 3-3 3-3-1.34-3-3 1.34-3 3-3zm6 12H6v-1c0-2 4-3.1 6-3.1s6 1.1 6 3.1v1z"></path ></g> <g id="perm-data-setting"><path d="M18.99 11.5c.34 0 .67.03 1 .07L20 0 0 2 0h11.56c-.04-.33-.07-.66-.07-1 0-4.14 3.36-7.5 7.5-7.5zm3.71 7.99c.02-.16.04-.32 .04-.49 0-.17-.01-.33-.04-.49l1.06-.83c.09-.08.12-.21.06-.32l-1-1.73c-.06-.11-.1 9-.15-.31-.11l-1.24.5c-.26-.2-.54-.37-.85-.49l-.19-1.32c-.01-.12-.12-.21-.24-.21 h-2c-.12 0-.23.09-.25.21l-.19 1.32c-.3.13-.59.29-.85.49l-1.24-.5c-.11-.04-.24 0- .31.11l-1 1.73c-.06.11-.04.24.06.32l1.06.83c-.02.16-.03.32-.03.49 0 .17.01.33.03 .49l-1.06.83c-.09.08-.12.21-.06.32l1 1.73c.06.11.19.15.31.11l1.24-.5c.26.2.54.37 .85.49l.19 1.32c.02.12.12.21.25.21h2c.12 0 .23-.09.25-.21l.19-1.32c.3-.13.59-.29 .84-.49l1.25.5c.11.04.24 0 .31-.11l1-1.73c.06-.11.03-.24-.06-.32l-1.07-.83zm-3.7 1 1.01c-.83 0-1.5-.67-1.5-1.5s.67-1.5 1.5-1.5 1.5.67 1.5 1.5-.67 1.5-1.5 1.5z">< /path></g> <g id="perm-device-information"><path d="M13 7h-2v2h2V7zm0 4h-2v6h2v- 6zm4-9.99L7 1c-1.1 0-2 .9-2 2v18c0 1.1.9 2 2 2h10c1.1 0 2-.9 2-2V3c0-1.1-.9-1.99 -2-1.99zM17 19H7V5h10v14z"></path></g> <g id="perm-identity"><path d="M12 5.9c1. 16 0 2.1.94 2.1 2.1s-.94 2.1-2.1 2.1S9.9 9.16 9.9 8s.94-2.1 2.1-2.1m0 9c2.97 0 6 .1 1.46 6.1 2.1v1.1H5.9V17c0-.64 3.13-2.1 6.1-2.1M12 4C9.79 4 8 5.79 8 8s1.79 4 4 4 4-1.79 4-4-1.79-4-4-4zm0 9c-2.67 0-8 1.34-8 4v3h16v-3c0-2.66-5.33-4-8-4z"></ path></g> <g id="perm-media"><path d="M2 6H0v5h.01L0 20c0 1.1.9 2 2 2h18v-2H2V6z m20-2h-8l-2-2H6c-1.1 0-1.99.9-1.99 2L4 16c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V6c0-1. 1-.9-2-2-2zM7 15l4.5-6 3.5 4.51 2.5-3.01L21 15H7z"></path></g> <g id="perm-phone -msg"><path d="M20 15.5c-1.25 0-2.45-.2-3.57-.57-.35-.11-.74-.03-1.02.24l-2.2 2. 2c-2.83-1.44-5.15-3.75-6.59-6.58l2.2-2.21c.28-.27.36-.66.25-1.01C8.7 6.45 8.5 5. 25 8.5 4c0-.55-.45-1-1-1H4c-.55 0-1 .45-1 1 0 9.39 7.61 17 17 17 .55 0 1-.45 1-1 v-3.5c0-.55-.45-1-1-1zM12 3v10l3-3h6V3h-9z"></path></g> <g id="perm-scan-wifi">< path d="M12 3C6.95 3 3.15 4.85 0 7.23L12 22 24 7.25C20.85 4.87 17.05 3 12 3zm1 1 3h-2v-6h2v6zm-2-8V6h2v2h-2z"></path></g> <g id="pets"><circle cx="4.5" cy="9.5" r="2.5"></circle><circle cx="9" cy="5.5" r="2.5"></circle><circle cx="15" cy="5. 5" r="2.5"></circle><circle cx="19.5" cy="9.5" r="2.5"></circle><path d="M17.34 14.86c-.87-1.02-1.6-1.89-2.48-2.91-.46-.54-1.05-1.08-1.75-1.32-.11-.04-.22-.07-. 33-.09-.25-.04-.52-.04-.78-.04s-.53 0-.79.05c-.11.02-.22.05-.33.09-.7.24-1.28.78 -1.75 1.32-.87 1.02-1.6 1.89-2.48 2.91-1.31 1.31-2.92 2.76-2.62 4.79.29 1.02 1.0 2 2.03 2.33 2.32.73.15 3.06-.44 5.54-.44h.18c2.48 0 4.81.58 5.54.44 1.31-.29 2.0 4-1.31 2.33-2.32.31-2.04-1.3-3.49-2.61-4.8z"></path></g> <g id="picture-in-pictu re"><path d="M19 7h-8v6h8V7zm2-4H3c-1.1 0-2 .9-2 2v14c0 1.1.9 1.98 2 1.98h18c1.1 0 2-.88 2-1.98V5c0-1.1-.9-2-2-2zm0 16.01H3V4.98h18v14.03z"></path></g> <g id="p icture-in-picture-alt"><path d="M19 11h-8v6h8v-6zm4 8V4.98C23 3.88 22.1 3 21 3H3 c-1.1 0-2 .88-2 1.98V19c0 1.1.9 2 2 2h18c1.1 0 2-.9 2-2zm-2 .02H3V4.97h18v14.05z "></path></g> <g id="play-for-work"><path d="M11 5v5.59H7.5l4.5 4.5 4.5-4.5H13V5 h-2zm-5 9c0 3.31 2.69 6 6 6s6-2.69 6-6h-2c0 2.21-1.79 4-4 4s-4-1.79-4-4H6z"></pa th></g> <g id="polymer"><path d="M19 4h-4L7.11 16.63 4.5 12 9 4H5L.5 12 5 20h4l7 .89-12.63L19.5 12 15 20h4l4.5-8z"></path></g> <g id="power-settings-new"><path d ="M13 3h-2v10h2V3zm4.83 2.17l-1.42 1.42C17.99 7.86 19 9.81 19 12c0 3.87-3.13 7-7 7s-7-3.13-7-7c0-2.19 1.01-4.14 2.58-5.42L6.17 5.17C4.23 6.82 3 9.26 3 12c0 4.97 4.03 9 9 9s9-4.03 9-9c0-2.74-1.23-5.18-3.17-6.83z"></path></g> <g id="pregnant- woman"><path d="M9 4c0-1.11.89-2 2-2s2 .89 2 2-.89 2-2 2-2-.89-2-2zm7 9c-.01-1.3 4-.83-2.51-2-3 0-1.66-1.34-3-3-3s-3 1.34-3 3v7h2v5h3v-5h3v-4z"></path></g> <g id ="print"><path d="M19 8H5c-1.66 0-3 1.34-3 3v6h4v4h12v-4h4v-6c0-1.66-1.34-3-3-3z m-3 11H8v-5h8v5zm3-7c-.55 0-1-.45-1-1s.45-1 1-1 1 .45 1 1-.45 1-1 1zm-1-9H6v4h12 V3z"></path></g> <g id="query-builder"><path d="M11.99 2C6.47 2 2 6.48 2 12s4.47 10 9.99 10C17.52 22 22 17.52 22 12S17.52 2 11.99 2zM12 20c-4.42 0-8-3.58-8-8s3. 58-8 8-8 8 3.58 8 8-3.58 8-8 8zm.5-13H11v6l5.25 3.15.75-1.23-4.5-2.67z"></path>< /g> <g id="question-answer"><path d="M21 6h-2v9H6v2c0 .55.45 1 1 1h11l4 4V7c0-.5 5-.45-1-1-1zm-4 6V3c0-.55-.45-1-1-1H3c-.55 0-1 .45-1 1v14l4-4h10c.55 0 1-.45 1-1 z"></path></g> <g id="radio-button-checked"><path d="M12 7c-2.76 0-5 2.24-5 5s2. 24 5 5 5 5-2.24 5-5-2.24-5-5-5zm0-5C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10- 10S17.52 2 12 2zm0 18c-4.42 0-8-3.58-8-8s3.58-8 8-8 8 3.58 8 8-3.58 8-8 8z"></pa th></g> <g id="radio-button-unchecked"><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm0 18c-4.42 0-8-3.58-8-8s3.58-8 8-8 8 3.58 8 8 -3.58 8-8 8z"></path></g> <g id="receipt"><path d="M18 17H6v-2h12v2zm0-4H6v-2h12 v2zm0-4H6V7h12v2zM3 22l1.5-1.5L6 22l1.5-1.5L9 22l1.5-1.5L12 22l1.5-1.5L15 22l1.5 -1.5L18 22l1.5-1.5L21 22V2l-1.5 1.5L18 2l-1.5 1.5L15 2l-1.5 1.5L12 2l-1.5 1.5L9 2 7.5 3.5 6 2 4.5 3.5 3 2v20z"></path></g> <g id="record-voice-over"><circle cx= "9" cy="9" r="4"></circle><path d="M9 15c-2.67 0-8 1.34-8 4v2h16v-2c0-2.66-5.33- 4-8-4zm7.76-9.64l-1.68 1.69c.84 1.18.84 2.71 0 3.89l1.68 1.69c2.02-2.02 2.02-5.0 7 0-7.27zM20.07 2l-1.63 1.63c2.77 3.02 2.77 7.56 0 10.74L20.07 16c3.9-3.89 3.91- 9.95 0-14z"></path></g> <g id="redeem"><path d="M20 6h-2.18c.11-.31.18-.65.18-1 0-1.66-1.34-3-3-3-1.05 0-1.96.54-2.5 1.35l-.5.67-.5-.68C10.96 2.54 10.05 2 9 2 7 .34 2 6 3.34 6 5c0 .35.07.69.18 1H4c-1.11 0-1.99.89-1.99 2L2 19c0 1.11.89 2 2 2h 16c1.11 0 2-.89 2-2V8c0-1.11-.89-2-2-2zm-5-2c.55 0 1 .45 1 1s-.45 1-1 1-1-.45-1- 1 .45-1 1-1zM9 4c.55 0 1 .45 1 1s-.45 1-1 1-1-.45-1-1 .45-1 1-1zm11 15H4v-2h16v2 zm0-5H4V8h5.08L7 10.83 8.62 12 11 8.76l1-1.36 1 1.36L15.38 12 17 10.83 14.92 8H2 0v6z"></path></g> <g id="redo"><path d="M18.4 10.6C16.55 8.99 14.15 8 11.5 8c-4. 65 0-8.58 3.03-9.96 7.22L3.9 16c1.05-3.19 4.05-5.5 7.6-5.5 1.95 0 3.73.72 5.12 1 .88L13 16h9V7l-3.6 3.6z"></path></g> <g id="refresh"><path d="M17.65 6.35C16.2 4 .9 14.21 4 12 4c-4.42 0-7.99 3.58-7.99 8s3.57 8 7.99 8c3.73 0 6.84-2.55 7.73-6h- 2.08c-.82 2.33-3.04 4-5.65 4-3.31 0-6-2.69-6-6s2.69-6 6-6c1.66 0 3.14.69 4.22 1. 78L13 11h7V4l-2.35 2.35z"></path></g> <g id="remove"><path d="M19 13H5v-2h14v2z" ></path></g> <g id="remove-circle"><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm5 11H7v-2h10v2z"></path></g> <g id="remove-circle -outline"><path d="M7 11v2h10v-2H7zm5-9C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm0 18c-4.41 0-8-3.59-8-8s3.59-8 8-8 8 3.59 8 8-3.59 8-8 8z"> </path></g> <g id="reorder"><path d="M3 15h18v-2H3v2zm0 4h18v-2H3v2zm0-8h18V9H3v 2zm0-6v2h18V5H3z"></path></g> <g id="reply"><path d="M10 9V5l-7 7 7 7v-4.1c5 0 8 .5 1.6 11 5.1-1-5-4-10-11-11z"></path></g> <g id="reply-all"><path d="M7 8V5l-7 7 7 7v-3l-4-4 4-4zm6 1V5l-7 7 7 7v-4.1c5 0 8.5 1.6 11 5.1-1-5-4-10-11-11z"></pat h></g> <g id="report"><path d="M15.73 3H8.27L3 8.27v7.46L8.27 21h7.46L21 15.73V8 .27L15.73 3zM12 17.3c-.72 0-1.3-.58-1.3-1.3 0-.72.58-1.3 1.3-1.3.72 0 1.3.58 1.3 1.3 0 .72-.58 1.3-1.3 1.3zm1-4.3h-2V7h2v6z"></path></g> <g id="report-problem"> <path d="M1 21h22L12 2 1 21zm12-3h-2v-2h2v2zm0-4h-2v-4h2v4z"></path></g> <g id=" restore"><path d="M13 3c-4.97 0-9 4.03-9 9H1l3.89 3.89.07.14L9 12H6c0-3.87 3.13- 7 7-7s7 3.13 7 7-3.13 7-7 7c-1.93 0-3.68-.79-4.94-2.06l-1.42 1.42C8.27 19.99 10. 51 21 13 21c4.97 0 9-4.03 9-9s-4.03-9-9-9zm-1 5v5l4.28 2.54.72-1.21-3.5-2.08V8H1 2z"></path></g> <g id="room"><path d="M12 2C8.13 2 5 5.13 5 9c0 5.25 7 13 7 13s7 -7.75 7-13c0-3.87-3.13-7-7-7zm0 9.5c-1.38 0-2.5-1.12-2.5-2.5s1.12-2.5 2.5-2.5 2. 5 1.12 2.5 2.5-1.12 2.5-2.5 2.5z"></path></g> <g id="rounded-corner"><path d="M1 9 19h2v2h-2v-2zm0-2h2v-2h-2v2zM3 13h2v-2H3v2zm0 4h2v-2H3v2zm0-8h2V7H3v2zm0-4h2V3 H3v2zm4 0h2V3H7v2zm8 16h2v-2h-2v2zm-4 0h2v-2h-2v2zm4 0h2v-2h-2v2zm-8 0h2v-2H7v2z m-4 0h2v-2H3v2zM21 8c0-2.76-2.24-5-5-5h-5v2h5c1.65 0 3 1.35 3 3v5h2V8z"></path>< /g> <g id="rowing"><path d="M8.5 14.5L4 19l1.5 1.5L9 17h2l-2.5-2.5zM15 1c-1.1 0- 2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2zm6 20.01L18 24l-2.99-3.01V19.5l-7.1-7.09c-.3 1.05-.61.07-.91.07v-2.16c1.66.03 3.61-.87 4.67-2.04l1.4-1.55c.19-.21.43-.38.69-. 5.29-.14.62-.23.96-.23h.03C15.99 6.01 17 7.02 17 8.26v5.75c0 .84-.35 1.61-.92 2. 16l-3.58-3.58v-2.27c-.63.52-1.43 1.02-2.29 1.39L16.5 18H18l3 3.01z"></path></g> <g id="save"><path d="M17 3H5c-1.11 0-2 .9-2 2v14c0 1.1.89 2 2 2h14c1.1 0 2-.9 2 -2V7l-4-4zm-5 16c-1.66 0-3-1.34-3-3s1.34-3 3-3 3 1.34 3 3-1.34 3-3 3zm3-10H5V5h1 0v4z"></path></g> <g id="schedule"><path d="M11.99 2C6.47 2 2 6.48 2 12s4.47 10 9.99 10C17.52 22 22 17.52 22 12S17.52 2 11.99 2zM12 20c-4.42 0-8-3.58-8-8s3.58-8 8-8 8 3.58 8 8-3.58 8-8 8zm.5-13H11v6l5.25 3.15.75-1.23-4.5-2.67z"></path></g> <g id="search"><path d="M15.5 14h-.79l-.28-.27C15.41 12.59 16 11.11 16 9.5 16 5. 91 13.09 3 9.5 3S3 5.91 3 9.5 5.91 16 9.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.7 9l5 4.99L20.49 19l-4.99-5zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9. 5 11.99 14 9.5 14z"></path></g> <g id="select-all"><path d="M3 5h2V3c-1.1 0-2 .9 -2 2zm0 8h2v-2H3v2zm4 8h2v-2H7v2zM3 9h2V7H3v2zm10-6h-2v2h2V3zm6 0v2h2c0-1.1-.9-2 -2-2zM5 21v-2H3c0 1.1.9 2 2 2zm-2-4h2v-2H3v2zM9 3H7v2h2V3zm2 18h2v-2h-2v2zm8-8h2 v-2h-2v2zm0 8c1.1 0 2-.9 2-2h-2v2zm0-12h2V7h-2v2zm0 8h2v-2h-2v2zm-4 4h2v-2h-2v2z m0-16h2V3h-2v2zM7 17h10V7H7v10zm2-8h6v6H9V9z"></path></g> <g id="send"><path d=" M2.01 21L23 12 2.01 3 2 10l15 2-15 2z"></path></g> <g id="settings"><path d="M19 .43 12.98c.04-.32.07-.64.07-.98s-.03-.66-.07-.98l2.11-1.65c.19-.15.24-.42.12-.64 l-2-3.46c-.12-.22-.39-.3-.61-.22l-2.49 1c-.52-.4-1.08-.73-1.69-.98l-.38-2.65C14. 46 2.18 14.25 2 14 2h-4c-.25 0-.46.18-.49.42l-.38 2.65c-.61.25-1.17.59-1.69.98l- 2.49-1c-.23-.09-.49 0-.61.22l-2 3.46c-.13.22-.07.49.12.64l2.11 1.65c-.04.32-.07. 65-.07.98s.03.66.07.98l-2.11 1.65c-.19.15-.24.42-.12.64l2 3.46c.12.22.39.3.61.22 l2.49-1c.52.4 1.08.73 1.69.98l.38 2.65c.03.24.24.42.49.42h4c.25 0 .46-.18.49-.42 l.38-2.65c.61-.25 1.17-.59 1.69-.98l2.49 1c.23.09.49 0 .61-.22l2-3.46c.12-.22.07 -.49-.12-.64l-2.11-1.65zM12 15.5c-1.93 0-3.5-1.57-3.5-3.5s1.57-3.5 3.5-3.5 3.5 1 .57 3.5 3.5-1.57 3.5-3.5 3.5z"></path></g> <g id="settings-applications"><path d ="M12 10c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2zm7-7H5c-1.11 0-2 .9-2 2v14c0 1.1.89 2 2 2h14c1.11 0 2-.9 2-2V5c0-1.1-.89-2-2-2zm-1.75 9c0 .23-.02.46-.05.68l 1.48 1.16c.13.11.17.3.08.45l-1.4 2.42c-.09.15-.27.21-.43.15l-1.74-.7c-.36.28-.76 .51-1.18.69l-.26 1.85c-.03.17-.18.3-.35.3h-2.8c-.17 0-.32-.13-.35-.29l-.26-1.85c -.43-.18-.82-.41-1.18-.69l-1.74.7c-.16.06-.34 0-.43-.15l-1.4-2.42c-.09-.15-.05-. 34.08-.45l1.48-1.16c-.03-.23-.05-.46-.05-.69 0-.23.02-.46.05-.68l-1.48-1.16c-.13 -.11-.17-.3-.08-.45l1.4-2.42c.09-.15.27-.21.43-.15l1.74.7c.36-.28.76-.51 1.18-.6 9l.26-1.85c.03-.17.18-.3.35-.3h2.8c.17 0 .32.13.35.29l.26 1.85c.43.18.82.41 1.18 .69l1.74-.7c.16-.06.34 0 .43.15l1.4 2.42c.09.15.05.34-.08.45l-1.48 1.16c.03.23.0 5.46.05.69z"></path></g> <g id="settings-backup-restore"><path d="M14 12c0-1.1-. 9-2-2-2s-2 .9-2 2 .9 2 2 2 2-.9 2-2zm-2-9c-4.97 0-9 4.03-9 9H0l4 4 4-4H5c0-3.87 3.13-7 7-7s7 3.13 7 7-3.13 7-7 7c-1.51 0-2.91-.49-4.06-1.3l-1.42 1.44C8.04 20.3 9.94 21 12 21c4.97 0 9-4.03 9-9s-4.03-9-9-9z"></path></g> <g id="settings-blueto oth"><path d="M11 24h2v-2h-2v2zm-4 0h2v-2H7v2zm8 0h2v-2h-2v2zm2.71-18.29L12 0h-1 v7.59L6.41 3 5 4.41 10.59 10 5 15.59 6.41 17 11 12.41V20h1l5.71-5.71-4.3-4.29 4. 3-4.29zM13 3.83l1.88 1.88L13 7.59V3.83zm1.88 10.46L13 16.17v-3.76l1.88 1.88z"></ path></g> <g id="settings-brightness"><path d="M21 3H3c-1.1 0-2 .9-2 2v14c0 1.1. 9 2 2 2h18c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm0 16.01H3V4.99h18v14.02zM8 16h2.5l1. 5 1.5 1.5-1.5H16v-2.5l1.5-1.5-1.5-1.5V8h-2.5L12 6.5 10.5 8H8v2.5L6.5 12 8 13.5V1 6zm4-7c1.66 0 3 1.34 3 3s-1.34 3-3 3V9z"></path></g> <g id="settings-cell"><path d="M7 24h2v-2H7v2zm4 0h2v-2h-2v2zm4 0h2v-2h-2v2zM16 .01L8 0C6.9 0 6 .9 6 2v16c0 1.1.9 2 2 2h8c1.1 0 2-.9 2-2V2c0-1.1-.9-1.99-2-1.99zM16 16H8V4h8v12z"></path></ g> <g id="settings-ethernet"><path d="M7.77 6.76L6.23 5.48.82 12l5.41 6.52 1.54- 1.28L3.42 12l4.35-5.24zM7 13h2v-2H7v2zm10-2h-2v2h2v-2zm-6 2h2v-2h-2v2zm6.77-7.52 l-1.54 1.28L20.58 12l-4.35 5.24 1.54 1.28L23.18 12l-5.41-6.52z"></path></g> <g i d="settings-input-antenna"><path d="M12 5c-3.87 0-7 3.13-7 7h2c0-2.76 2.24-5 5-5 s5 2.24 5 5h2c0-3.87-3.13-7-7-7zm1 9.29c.88-.39 1.5-1.26 1.5-2.29 0-1.38-1.12-2. 5-2.5-2.5S9.5 10.62 9.5 12c0 1.02.62 1.9 1.5 2.29v3.3L7.59 21 9 22.41l3-3 3 3L16 .41 21 13 17.59v-3.3zM12 1C5.93 1 1 5.93 1 12h2c0-4.97 4.03-9 9-9s9 4.03 9 9h2c0 -6.07-4.93-11-11-11z"></path></g> <g id="settings-input-component"><path d="M5 2 c0-.55-.45-1-1-1s-1 .45-1 1v4H1v6h6V6H5V2zm4 14c0 1.3.84 2.4 2 2.82V23h2v-4.18c1 .16-.41 2-1.51 2-2.82v-2H9v2zm-8 0c0 1.3.84 2.4 2 2.82V23h2v-4.18C6.16 18.4 7 17 .3 7 16v-2H1v2zM21 6V2c0-.55-.45-1-1-1s-1 .45-1 1v4h-2v6h6V6h-2zm-8-4c0-.55-.45- 1-1-1s-1 .45-1 1v4H9v6h6V6h-2V2zm4 14c0 1.3.84 2.4 2 2.82V23h2v-4.18c1.16-.41 2- 1.51 2-2.82v-2h-6v2z"></path></g> <g id="settings-input-composite"><path d="M5 2 c0-.55-.45-1-1-1s-1 .45-1 1v4H1v6h6V6H5V2zm4 14c0 1.3.84 2.4 2 2.82V23h2v-4.18c1 .16-.41 2-1.51 2-2.82v-2H9v2zm-8 0c0 1.3.84 2.4 2 2.82V23h2v-4.18C6.16 18.4 7 17 .3 7 16v-2H1v2zM21 6V2c0-.55-.45-1-1-1s-1 .45-1 1v4h-2v6h6V6h-2zm-8-4c0-.55-.45- 1-1-1s-1 .45-1 1v4H9v6h6V6h-2V2zm4 14c0 1.3.84 2.4 2 2.82V23h2v-4.18c1.16-.41 2- 1.51 2-2.82v-2h-6v2z"></path></g> <g id="settings-input-hdmi"><path d="M18 7V4c0 -1.1-.9-2-2-2H8c-1.1 0-2 .9-2 2v3H5v6l3 6v3h8v-3l3-6V7h-1zM8 4h8v3h-2V5h-1v2h-2V 5h-1v2H8V4z"></path></g> <g id="settings-input-svideo"><path d="M8 11.5c0-.83-.6 7-1.5-1.5-1.5S5 10.67 5 11.5 5.67 13 6.5 13 8 12.33 8 11.5zm7-5c0-.83-.67-1.5-1. 5-1.5h-3C9.67 5 9 5.67 9 6.5S9.67 8 10.5 8h3c.83 0 1.5-.67 1.5-1.5zM8.5 15c-.83 0-1.5.67-1.5 1.5S7.67 18 8.5 18s1.5-.67 1.5-1.5S9.33 15 8.5 15zM12 1C5.93 1 1 5. 93 1 12s4.93 11 11 11 11-4.93 11-11S18.07 1 12 1zm0 20c-4.96 0-9-4.04-9-9s4.04-9 9-9 9 4.04 9 9-4.04 9-9 9zm5.5-11c-.83 0-1.5.67-1.5 1.5s.67 1.5 1.5 1.5 1.5-.67 1.5-1.5-.67-1.5-1.5-1.5zm-2 5c-.83 0-1.5.67-1.5 1.5s.67 1.5 1.5 1.5 1.5-.67 1.5 -1.5-.67-1.5-1.5-1.5z"></path></g> <g id="settings-overscan"><path d="M12.01 5.5 L10 8h4l-1.99-2.5zM18 10v4l2.5-1.99L18 10zM6 10l-2.5 2.01L6 14v-4zm8 6h-4l2.01 2 .5L14 16zm7-13H3c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h18c1.1 0 2-.9 2-2V5c0-1.1-.9-2 -2-2zm0 16.01H3V4.99h18v14.02z"></path></g> <g id="settings-phone"><path d="M13 9h-2v2h2V9zm4 0h-2v2h2V9zm3 6.5c-1.25 0-2.45-.2-3.57-.57-.35-.11-.74-.03-1.02.24 l-2.2 2.2c-2.83-1.44-5.15-3.75-6.59-6.58l2.2-2.21c.28-.27.36-.66.25-1.01C8.7 6.4 5 8.5 5.25 8.5 4c0-.55-.45-1-1-1H4c-.55 0-1 .45-1 1 0 9.39 7.61 17 17 17 .55 0 1 -.45 1-1v-3.5c0-.55-.45-1-1-1zM19 9v2h2V9h-2z"></path></g> <g id="settings-power "><path d="M7 24h2v-2H7v2zm4 0h2v-2h-2v2zm2-22h-2v10h2V2zm3.56 2.44l-1.45 1.45C1 6.84 6.94 18 8.83 18 11c0 3.31-2.69 6-6 6s-6-2.69-6-6c0-2.17 1.16-4.06 2.88-5.12 L7.44 4.44C5.36 5.88 4 8.28 4 11c0 4.42 3.58 8 8 8s8-3.58 8-8c0-2.72-1.36-5.12-3 .44-6.56zM15 24h2v-2h-2v2z"></path></g> <g id="settings-remote"><path d="M15 9H9 c-.55 0-1 .45-1 1v12c0 .55.45 1 1 1h6c.55 0 1-.45 1-1V10c0-.55-.45-1-1-1zm-3 6c- 1.1 0-2-.9-2-2s.9-2 2-2 2 .9 2 2-.9 2-2 2zM7.05 6.05l1.41 1.41C9.37 6.56 10.62 6 12 6s2.63.56 3.54 1.46l1.41-1.41C15.68 4.78 13.93 4 12 4s-3.68.78-4.95 2.05zM12 0C8.96 0 6.21 1.23 4.22 3.22l1.41 1.41C7.26 3.01 9.51 2 12 2s4.74 1.01 6.36 2.6 4l1.41-1.41C17.79 1.23 15.04 0 12 0z"></path></g> <g id="settings-voice"><path d ="M7 24h2v-2H7v2zm5-11c1.66 0 2.99-1.34 2.99-3L15 4c0-1.66-1.34-3-3-3S9 2.34 9 4 v6c0 1.66 1.34 3 3 3zm-1 11h2v-2h-2v2zm4 0h2v-2h-2v2zm4-14h-1.7c0 3-2.54 5.1-5.3 5.1S6.7 13 6.7 10H5c0 3.41 2.72 6.23 6 6.72V20h2v-3.28c3.28-.49 6-3.31 6-6.72z" ></path></g> <g id="shop"><path d="M16 6V4c0-1.11-.89-2-2-2h-4c-1.11 0-2 .89-2 2 v2H2v13c0 1.11.89 2 2 2h16c1.11 0 2-.89 2-2V6h-6zm-6-2h4v2h-4V4zM9 18V9l7.5 4L9 18z"></path></g> <g id="shop-two"><path d="M3 9H1v11c0 1.11.89 2 2 2h14c1.11 0 2 -.89 2-2H3V9zm15-4V3c0-1.11-.89-2-2-2h-4c-1.11 0-2 .89-2 2v2H5v11c0 1.11.89 2 2 2h14c1.11 0 2-.89 2-2V5h-5zm-6-2h4v2h-4V3zm0 12V8l5.5 3-5.5 4z"></path></g> <g i d="shopping-basket"><path d="M17.21 9l-4.38-6.56c-.19-.28-.51-.42-.83-.42-.32 0- .64.14-.83.43L6.79 9H2c-.55 0-1 .45-1 1 0 .09.01.18.04.27l2.54 9.27c.23.84 1 1.4 6 1.92 1.46h13c.92 0 1.69-.62 1.93-1.46l2.54-9.27L23 10c0-.55-.45-1-1-1h-4.79zM9 9l3-4.4L15 9H9zm3 8c-1.1 0-2-.9-2-2s.9-2 2-2 2 .9 2 2-.9 2-2 2z"></path></g> <g id="shopping-cart"><path d="M7 18c-1.1 0-1.99.9-1.99 2S5.9 22 7 22s2-.9 2-2-.9- 2-2-2zM1 2v2h2l3.6 7.59-1.35 2.45c-.16.28-.25.61-.25.96 0 1.1.9 2 2 2h12v-2H7.42 c-.14 0-.25-.11-.25-.25l.03-.12.9-1.63h7.45c.75 0 1.41-.41 1.75-1.03l3.58-6.49c. 08-.14.12-.31.12-.48 0-.55-.45-1-1-1H5.21l-.94-2H1zm16 16c-1.1 0-1.99.9-1.99 2s. 89 2 1.99 2 2-.9 2-2-.9-2-2-2z"></path></g> <g id="sort"><path d="M3 18h6v-2H3v2 zM3 6v2h18V6H3zm0 7h12v-2H3v2z"></path></g> <g id="speaker-notes"><path d="M20 2 H4c-1.1 0-1.99.9-1.99 2L2 22l4-4h14c1.1 0 2-.9 2-2V4c0-1.1-.9-2-2-2zM8 14H6v-2h2 v2zm0-3H6V9h2v2zm0-3H6V6h2v2zm7 6h-5v-2h5v2zm3-3h-8V9h8v2zm0-3h-8V6h8v2z"></path ></g> <g id="spellcheck"><path d="M12.45 16h2.09L9.43 3H7.57L2.46 16h2.09l1.12-3 h5.64l1.14 3zm-6.02-5L8.5 5.48 10.57 11H6.43zm15.16.59l-8.09 8.09L9.83 16l-1.41 1.41 5.09 5.09L23 13l-1.41-1.41z"></path></g> <g id="star"><path d="M12 17.27L18 .18 21l-1.64-7.03L22 9.24l-7.19-.61L12 2 9.19 8.63 2 9.24l5.46 4.73L5.82 21z"></ path></g> <g id="star-border"><path d="M22 9.24l-7.19-.62L12 2 9.19 8.63 2 9.24l 5.46 4.73L5.82 21 12 17.27 18.18 21l-1.63-7.03L22 9.24zM12 15.4l-3.76 2.27 1-4.2 8-3.32-2.88 4.38-.38L12 6.1l1.71 4.04 4.38.38-3.32 2.88 1 4.28L12 15.4z"></path> </g> <g id="star-half"><path d="M22 9.24l-7.19-.62L12 2 9.19 8.63 2 9.24l5.46 4. 73L5.82 21 12 17.27 18.18 21l-1.63-7.03L22 9.24zM12 15.4V6.1l1.71 4.04 4.38.38-3 .32 2.88 1 4.28L12 15.4z"></path></g> <g id="stars"><path d="M11.99 2C6.47 2 2 6 .48 2 12s4.47 10 9.99 10C17.52 22 22 17.52 22 12S17.52 2 11.99 2zm4.24 16L12 15. 45 7.77 18l1.12-4.81-3.73-3.23 4.92-.42L12 5l1.92 4.53 4.92.42-3.73 3.23L16.23 1 8z"></path></g> <g id="store"><path d="M20 4H4v2h16V4zm1 10v-2l-1-5H4l-1 5v2h1v6 h10v-6h4v6h2v-6h1zm-9 4H6v-4h6v4z"></path></g> <g id="subdirectory-arrow-left">< path d="M11 9l1.42 1.42L8.83 14H18V4h2v12H8.83l3.59 3.58L11 21l-6-6 6-6z"></path ></g> <g id="subdirectory-arrow-right"><path d="M19 15l-6 6-1.42-1.42L15.17 16H4 V4h2v10h9.17l-3.59-3.58L13 9l6 6z"></path></g> <g id="subject"><path d="M14 17H4 v2h10v-2zm6-8H4v2h16V9zM4 15h16v-2H4v2zM4 5v2h16V5H4z"></path></g> <g id="superv isor-account"><path d="M16.5 12c1.38 0 2.49-1.12 2.49-2.5S17.88 7 16.5 7C15.12 7 14 8.12 14 9.5s1.12 2.5 2.5 2.5zM9 11c1.66 0 2.99-1.34 2.99-3S10.66 5 9 5C7.34 5 6 6.34 6 8s1.34 3 3 3zm7.5 3c-1.83 0-5.5.92-5.5 2.75V19h11v-2.25c0-1.83-3.67-2 .75-5.5-2.75zM9 13c-2.33 0-7 1.17-7 3.5V19h7v-2.25c0-.85.33-2.34 2.37-3.47C10.5 13.1 9.66 13 9 13z"></path></g> <g id="swap-horiz"><path d="M6.99 11L3 15l3.99 4 v-3H14v-2H6.99v-3zM21 9l-3.99-4v3H10v2h7.01v3L21 9z"></path></g> <g id="swap-ver t"><path d="M16 17.01V10h-2v7.01h-3L15 21l4-3.99h-3zM9 3L5 6.99h3V14h2V6.99h3L9 3z"></path></g> <g id="swap-vertical-circle"><path d="M12 2C6.48 2 2 6.48 2 12s4 .48 10 10 10 10-4.48 10-10S17.52 2 12 2zM6.5 9L10 5.5 13.5 9H11v4H9V9H6.5zm11 6L 14 18.5 10.5 15H13v-4h2v4h2.5z"></path></g> <g id="system-update-alt"><path d="M 12 16.5l4-4h-3v-9h-2v9H8l4 4zm9-13h-6v1.99h6v14.03H3V5.49h6V3.5H3c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h18c1.1 0 2-.9 2-2v-14c0-1.1-.9-2-2-2z"></path></g> <g id="tab "><path d="M21 3H3c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h18c1.1 0 2-.9 2-2V5c0-1.1-.9 -2-2-2zm0 16H3V5h10v4h8v10z"></path></g> <g id="tab-unselected"><path d="M1 9h2V 7H1v2zm0 4h2v-2H1v2zm0-8h2V3c-1.1 0-2 .9-2 2zm8 16h2v-2H9v2zm-8-4h2v-2H1v2zm2 4v -2H1c0 1.1.9 2 2 2zM21 3h-8v6h10V5c0-1.1-.9-2-2-2zm0 14h2v-2h-2v2zM9 5h2V3H9v2zM 5 21h2v-2H5v2zM5 5h2V3H5v2zm16 16c1.1 0 2-.9 2-2h-2v2zm0-8h2v-2h-2v2zm-8 8h2v-2h -2v2zm4 0h2v-2h-2v2z"></path></g> <g id="text-format"><path d="M5 17v2h14v-2H5zm 4.5-4.2h5l.9 2.2h2.1L12.75 4h-1.5L6.5 15h2.1l.9-2.2zM12 5.98L13.87 11h-3.74L12 5 .98z"></path></g> <g id="theaters"><path d="M18 3v2h-2V3H8v2H6V3H4v18h2v-2h2v2h8 v-2h2v2h2V3h-2zM8 17H6v-2h2v2zm0-4H6v-2h2v2zm0-4H6V7h2v2zm10 8h-2v-2h2v2zm0-4h-2 v-2h2v2zm0-4h-2V7h2v2z"></path></g> <g id="thumb-down"><path d="M15 3H6c-.83 0-1 .54.5-1.84 1.22l-3.02 7.05c-.09.23-.14.47-.14.73v1.91l.01.01L1 14c0 1.1.9 2 2 2h 6.31l-.95 4.57-.03.32c0 .41.17.79.44 1.06L9.83 23l6.59-6.59c.36-.36.58-.86.58-1. 41V5c0-1.1-.9-2-2-2zm4 0v12h4V3h-4z"></path></g> <g id="thumb-up"><path d="M1 21 h4V9H1v12zm22-11c0-1.1-.9-2-2-2h-6.31l.95-4.57.03-.32c0-.41-.17-.79-.44-1.06L14. 17 1 7.59 7.59C7.22 7.95 7 8.45 7 9v10c0 1.1.9 2 2 2h9c.83 0 1.54-.5 1.84-1.22l3 .02-7.05c.09-.23.14-.47.14-.73v-1.91l-.01-.01L23 10z"></path></g> <g id="thumbs- up-down"><path d="M12 6c0-.55-.45-1-1-1H5.82l.66-3.18.02-.23c0-.31-.13-.59-.33-. 8L5.38 0 .44 4.94C.17 5.21 0 5.59 0 6v6.5c0 .83.67 1.5 1.5 1.5h6.75c.62 0 1.15-. 38 1.38-.91l2.26-5.29c.07-.17.11-.36.11-.55V6zm10.5 4h-6.75c-.62 0-1.15.38-1.38. 91l-2.26 5.29c-.07.17-.11.36-.11.55V18c0 .55.45 1 1 1h5.18l-.66 3.18-.02.24c0 .3 1.13.59.33.8l.79.78 4.94-4.94c.27-.27.44-.65.44-1.06v-6.5c0-.83-.67-1.5-1.5-1.5z "></path></g> <g id="timeline"><path d="M23 8c0 1.1-.9 2-2 2-.18 0-.35-.02-.51-. 07l-3.56 3.55c.05.16.07.34.07.52 0 1.1-.9 2-2 2s-2-.9-2-2c0-.18.02-.36.07-.52l-2 .55-2.55c-.16.05-.34.07-.52.07s-.36-.02-.52-.07l-4.55 4.56c.05.16.07.33.07.51 0 1.1-.9 2-2 2s-2-.9-2-2 .9-2 2-2c.18 0 .35.02.51.07l4.56-4.55C8.02 9.36 8 9.18 8 9c0-1.1.9-2 2-2s2 .9 2 2c0 .18-.02.36-.07.52l2.55 2.55c.16-.05.34-.07.52-.07s.36 .02.52.07l3.55-3.56C19.02 8.35 19 8.18 19 8c0-1.1.9-2 2-2s2 .9 2 2z"></path></g> <g id="toc"><path d="M3 9h14V7H3v2zm0 4h14v-2H3v2zm0 4h14v-2H3v2zm16 0h2v-2h-2v 2zm0-10v2h2V7h-2zm0 6h2v-2h-2v2z"></path></g> <g id="today"><path d="M19 3h-1V1h -2v2H8V1H6v2H5c-1.11 0-1.99.9-1.99 2L3 19c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2V5c0-1 .1-.9-2-2-2zm0 16H5V8h14v11zM7 10h5v5H7z"></path></g> <g id="toll"><path d="M15 4c-4.42 0-8 3.58-8 8s3.58 8 8 8 8-3.58 8-8-3.58-8-8-8zm0 14c-3.31 0-6-2.69-6-6s2 .69-6 6-6 6 2.69 6 6-2.69 6-6 6zM3 12c0-2.61 1.67-4.83 4-5.65V4.26C3.55 5.15 1 8 .27 1 12s2.55 6.85 6 7.74v-2.09c-2.33-.82-4-3.04-4-5.65z"></path></g> <g id="tou ch-app"><path d="M9 11.24V7.5C9 6.12 10.12 5 11.5 5S14 6.12 14 7.5v3.74c1.21-.81 2-2.18 2-3.74C16 5.01 13.99 3 11.5 3S7 5.01 7 7.5c0 1.56.79 2.93 2 3.74zm9.84 4 .63l-4.54-2.26c-.17-.07-.35-.11-.54-.11H13v-6c0-.83-.67-1.5-1.5-1.5S10 6.67 10 7 .5v10.74l-3.43-.72c-.08-.01-.15-.03-.24-.03-.31 0-.59.13-.79.33l-.79.8 4.94 4.94 c.27.27.65.44 1.06.44h6.79c.75 0 1.33-.55 1.44-1.28l.75-5.27c.01-.07.02-.14.02-. 2 0-.62-.38-1.16-.91-1.38z"></path></g> <g id="track-changes"><path d="M19.07 4. 93l-1.41 1.41C19.1 7.79 20 9.79 20 12c0 4.42-3.58 8-8 8s-8-3.58-8-8c0-4.08 3.05- 7.44 7-7.93v2.02C8.16 6.57 6 9.03 6 12c0 3.31 2.69 6 6 6s6-2.69 6-6c0-1.66-.67-3 .16-1.76-4.24l-1.41 1.41C15.55 9.9 16 10.9 16 12c0 2.21-1.79 4-4 4s-4-1.79-4-4c0 -1.86 1.28-3.41 3-3.86v2.14c-.6.35-1 .98-1 1.72 0 1.1.9 2 2 2s2-.9 2-2c0-.74-.4- 1.38-1-1.72V2h-1C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10c0-2.76-1.12-5.26 -2.93-7.07z"></path></g> <g id="translate"><path d="M12.87 15.07l-2.54-2.51.03-. 03c1.74-1.94 2.98-4.17 3.71-6.53H17V4h-7V2H8v2H1v1.99h11.17C11.5 7.92 10.44 9.75 9 11.35 8.07 10.32 7.3 9.19 6.69 8h-2c.73 1.63 1.73 3.17 2.98 4.56l-5.09 5.02L4 19l5-5 3.11 3.11.76-2.04zM18.5 10h-2L12 22h2l1.12-3h4.75L21 22h2l-4.5-12zm-2.62 7l1.62-4.33L19.12 17h-3.24z"></path></g> <g id="trending-down"><path d="M16 18l 2.29-2.29-4.88-4.88-4 4L2 7.41 3.41 6l6 6 4-4 6.3 6.29L22 12v6z"></path></g> <g id="trending-flat"><path d="M22 12l-4-4v3H3v2h15v3z"></path></g> <g id="trending -up"><path d="M16 6l2.29 2.29-4.88 4.88-4-4L2 16.59 3.41 18l6-6 4 4 6.3-6.29L22 12V6z"></path></g> <g id="turned-in"><path d="M17 3H7c-1.1 0-1.99.9-1.99 2L5 21l 7-3 7 3V5c0-1.1-.9-2-2-2z"></path></g> <g id="turned-in-not"><path d="M17 3H7c-1 .1 0-1.99.9-1.99 2L5 21l7-3 7 3V5c0-1.1-.9-2-2-2zm0 15l-5-2.18L7 18V5h10v13z"></ path></g> <g id="unarchive"><path d="M20.55 5.22l-1.39-1.68C18.88 3.21 18.47 3 1 8 3H6c-.47 0-.88.21-1.15.55L3.46 5.22C3.17 5.57 3 6.01 3 6.5V19c0 1.1.89 2 2 2h1 4c1.1 0 2-.9 2-2V6.5c0-.49-.17-.93-.45-1.28zM12 9.5l5.5 5.5H14v2h-4v-2H6.5L12 9. 5zM5.12 5l.82-1h12l.93 1H5.12z"></path></g> <g id="undo"><path d="M12.5 8c-2.65 0-5.05.99-6.9 2.6L2 7v9h9l-3.62-3.62c1.39-1.16 3.16-1.88 5.12-1.88 3.54 0 6.55 2 .31 7.6 5.5l2.37-.78C21.08 11.03 17.15 8 12.5 8z"></path></g> <g id="unfold-less "><path d="M7.41 18.59L8.83 20 12 16.83 15.17 20l1.41-1.41L12 14l-4.59 4.59zm9.1 8-13.18L15.17 4 12 7.17 8.83 4 7.41 5.41 12 10l4.59-4.59z"></path></g> <g id="un fold-more"><path d="M12 5.83L15.17 9l1.41-1.41L12 3 7.41 7.59 8.83 9 12 5.83zm0 12.34L8.83 15l-1.41 1.41L12 21l4.59-4.59L15.17 15 12 18.17z"></path></g> <g id=" update"><path d="M21 10.12h-6.78l2.74-2.82c-2.73-2.7-7.15-2.8-9.88-.1-2.73 2.71- 2.73 7.08 0 9.79 2.73 2.71 7.15 2.71 9.88 0C18.32 15.65 19 14.08 19 12.1h2c0 1.9 8-.88 4.55-2.64 6.29-3.51 3.48-9.21 3.48-12.72 0-3.5-3.47-3.53-9.11-.02-12.58 3. 51-3.47 9.14-3.47 12.65 0L21 3v7.12zM12.5 8v4.25l3.5 2.08-.72 1.21L11 13V8h1.5z" ></path></g> <g id="verified-user"><path d="M12 1L3 5v6c0 5.55 3.84 10.74 9 12 5 .16-1.26 9-6.45 9-12V5l-9-4zm-2 16l-4-4 1.41-1.41L10 14.17l6.59-6.59L18 9l-8 8z" ></path></g> <g id="view-agenda"><path d="M20 13H3c-.55 0-1 .45-1 1v6c0 .55.45 1 1 1h17c.55 0 1-.45 1-1v-6c0-.55-.45-1-1-1zm0-10H3c-.55 0-1 .45-1 1v6c0 .55.45 1 1 1h17c.55 0 1-.45 1-1V4c0-.55-.45-1-1-1z"></path></g> <g id="view-array"><path d="M4 18h3V5H4v13zM18 5v13h3V5h-3zM8 18h9V5H8v13z"></path></g> <g id="view-caro usel"><path d="M7 19h10V4H7v15zm-5-2h4V6H2v11zM18 6v11h4V6h-4z"></path></g> <g i d="view-column"><path d="M10 18h5V5h-5v13zm-6 0h5V5H4v13zM16 5v13h5V5h-5z"></pat h></g> <g id="view-day"><path d="M2 21h19v-3H2v3zM20 8H3c-.55 0-1 .45-1 1v6c0 .5 5.45 1 1 1h17c.55 0 1-.45 1-1V9c0-.55-.45-1-1-1zM2 3v3h19V3H2z"></path></g> <g i d="view-headline"><path d="M4 15h16v-2H4v2zm0 4h16v-2H4v2zm0-8h16V9H4v2zm0-6v2h1 6V5H4z"></path></g> <g id="view-list"><path d="M4 14h4v-4H4v4zm0 5h4v-4H4v4zM4 9 h4V5H4v4zm5 5h12v-4H9v4zm0 5h12v-4H9v4zM9 5v4h12V5H9z"></path></g> <g id="view-m odule"><path d="M4 11h5V5H4v6zm0 7h5v-6H4v6zm6 0h5v-6h-5v6zm6 0h5v-6h-5v6zm-6-7h 5V5h-5v6zm6-6v6h5V5h-5z"></path></g> <g id="view-quilt"><path d="M10 18h5v-6h-5v 6zm-6 0h5V5H4v13zm12 0h5v-6h-5v6zM10 5v6h11V5H10z"></path></g> <g id="view-strea m"><path d="M4 18h17v-6H4v6zM4 5v6h17V5H4z"></path></g> <g id="view-week"><path d="M6 5H3c-.55 0-1 .45-1 1v12c0 .55.45 1 1 1h3c.55 0 1-.45 1-1V6c0-.55-.45-1-1-1 zm14 0h-3c-.55 0-1 .45-1 1v12c0 .55.45 1 1 1h3c.55 0 1-.45 1-1V6c0-.55-.45-1-1-1 zm-7 0h-3c-.55 0-1 .45-1 1v12c0 .55.45 1 1 1h3c.55 0 1-.45 1-1V6c0-.55-.45-1-1-1 z"></path></g> <g id="visibility"><path d="M12 4.5C7 4.5 2.73 7.61 1 12c1.73 4.3 9 6 7.5 11 7.5s9.27-3.11 11-7.5c-1.73-4.39-6-7.5-11-7.5zM12 17c-2.76 0-5-2.24-5- 5s2.24-5 5-5 5 2.24 5 5-2.24 5-5 5zm0-8c-1.66 0-3 1.34-3 3s1.34 3 3 3 3-1.34 3-3 -1.34-3-3-3z"></path></g> <g id="visibility-off"><path d="M12 7c2.76 0 5 2.24 5 5 0 .65-.13 1.26-.36 1.83l2.92 2.92c1.51-1.26 2.7-2.89 3.43-4.75-1.73-4.39-6-7.5 -11-7.5-1.4 0-2.74.25-3.98.7l2.16 2.16C10.74 7.13 11.35 7 12 7zM2 4.27l2.28 2.28 .46.46C3.08 8.3 1.78 10.02 1 12c1.73 4.39 6 7.5 11 7.5 1.55 0 3.03-.3 4.38-.84l. 42.42L19.73 22 21 20.73 3.27 3 2 4.27zM7.53 9.8l1.55 1.55c-.05.21-.08.43-.08.65 0 1.66 1.34 3 3 3 .22 0 .44-.03.65-.08l1.55 1.55c-.67.33-1.41.53-2.2.53-2.76 0-5 -2.24-5-5 0-.79.2-1.53.53-2.2zm4.31-.78l3.15 3.15.02-.16c0-1.66-1.34-3-3-3l-.17. 01z"></path></g> <g id="warning"><path d="M1 21h22L12 2 1 21zm12-3h-2v-2h2v2zm0- 4h-2v-4h2v4z"></path></g> <g id="watch-later"><path d="M12 2C6.5 2 2 6.5 2 12s4. 5 10 10 10 10-4.5 10-10S17.5 2 12 2zm4.2 14.2L11 13V7h1.5v5.2l4.5 2.7-.8 1.3z">< /path></g> <g id="weekend"><path d="M21 10c-1.1 0-2 .9-2 2v3H5v-3c0-1.1-.9-2-2-2 s-2 .9-2 2v5c0 1.1.9 2 2 2h18c1.1 0 2-.9 2-2v-5c0-1.1-.9-2-2-2zm-3-5H6c-1.1 0-2 .9-2 2v2.15c1.16.41 2 1.51 2 2.82V14h12v-2.03c0-1.3.84-2.4 2-2.82V7c0-1.1-.9-2-2 -2z"></path></g> <g id="work"><path d="M20 6h-4V4c0-1.11-.89-2-2-2h-4c-1.11 0-2 .89-2 2v2H4c-1.11 0-1.99.89-1.99 2L2 19c0 1.11.89 2 2 2h16c1.11 0 2-.89 2-2V8c0- 1.11-.89-2-2-2zm-6 0h-4V4h4v2z"></path></g> <g id="youtube-searched-for"><path d ="M17.01 14h-.8l-.27-.27c.98-1.14 1.57-2.61 1.57-4.23 0-3.59-2.91-6.5-6.5-6.5s-6 .5 3-6.5 6.5H2l3.84 4 4.16-4H6.51C6.51 7 8.53 5 11.01 5s4.5 2.01 4.5 4.5c0 2.48- 2.02 4.5-4.5 4.5-.65 0-1.26-.14-1.82-.38L7.71 15.1c.97.57 2.09.9 3.3.9 1.61 0 3. 08-.59 4.22-1.57l.27.27v.79l5.01 4.99L22 19l-4.99-5z"></path></g> <g id="zoom-in "><path d="M15.5 14h-.79l-.28-.27C15.41 12.59 16 11.11 16 9.5 16 5.91 13.09 3 9. 5 3S3 5.91 3 9.5 5.91 16 9.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.79l5 4.99L20.4 9 19l-4.99-5zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9. 5 14zm2.5-4h-2v2H9v-2H7V9h2V7h1v2h2v1z"></path></g> <g id="zoom-out"><path d="M1 5.5 14h-.79l-.28-.27C15.41 12.59 16 11.11 16 9.5 16 5.91 13.09 3 9.5 3S3 5.91 3 9.5 5.91 16 9.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.79l5 4.99L20.49 19l-4.99-5z m-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14zM7 9h5v1 H7z"></path></g> </defs></svg> </iron-iconset-svg> <script>!function(){"use stri ct";function e(e,t){var n="";if(e){var i=e.toLowerCase();" "===i||v.test(i)?n="s pace":f.test(i)?n="esc":1==i.length?t&&!u.test(i)||(n=i):n=c.test(i)?i.replace(" arrow",""):"multiply"==i?"*":i}return n}function t(e){var t="";return e&&(e in o ?t=o[e]:h.test(e)?(e=parseInt(e.replace("U+","0x"),16),t=String.fromCharCode(e). toLowerCase()):t=e.toLowerCase()),t}function n(e){var t="";return Number(e)&&(t= e>=65&&e<=90?String.fromCharCode(32+e):e>=112&&e<=123?"f"+(e-112):e>=48&&e<=57?S tring(e-48):e>=96&&e<=105?String(e-96):d[e]),t}function i(i,r){return i.key?e(i. key,r):i.detail&&i.detail.key?e(i.detail.key,r):t(i.keyIdentifier)||n(i.keyCode) ||""}function r(e,t){var n=i(t,e.hasModifiers);return n===e.key&&(!e.hasModifier s||!!t.shiftKey==!!e.shiftKey&&!!t.ctrlKey==!!e.ctrlKey&&!!t.altKey==!!e.altKey& &!!t.metaKey==!!e.metaKey)}function s(e){return 1===e.length?{combo:e,key:e,even t:"keydown"}:e.split("+").reduce(function(e,t){var n=t.split(":"),i=n[0],r=n[1]; return i in y?(e[y[i]]=!0,e.hasModifiers=!0):(e.key=i,e.event=r||"keydown"),e},{ combo:e.split(":").shift()})}function a(e){return e.trim().split(" ").map(functi on(e){return s(e)})}var o={"U+0008":"backspace","U+0009":"tab","U+001B":"esc","U +0020":"space","U+007F":"del"},d={8:"backspace",9:"tab",13:"enter",27:"esc",33:" pageup",34:"pagedown",35:"end",36:"home",32:"space",37:"left",38:"up",39:"right" ,40:"down",46:"del",106:"*"},y={shift:"shiftKey",ctrl:"ctrlKey",alt:"altKey",met a:"metaKey"},u=/[a-z0-9*]/,h=/U\+/,c=/^arrow/,v=/^space(bar)?/,f=/^escape$/;Poly mer.IronA11yKeysBehavior={properties:{keyEventTarget:{type:Object,value:function (){return this}},stopKeyboardEventPropagation:{type:Boolean,value:!1},_boundKeyH andlers:{type:Array,value:function(){return[]}},_imperativeKeyBindings:{type:Obj ect,value:function(){return{}}}},observers:["_resetKeyEventListeners(keyEventTar get, _boundKeyHandlers)"],keyBindings:{},registered:function(){this._prepKeyBind ings()},attached:function(){this._listenKeyEventListeners()},detached:function() {this._unlistenKeyEventListeners()},addOwnKeyBinding:function(e,t){this._imperat iveKeyBindings[e]=t,this._prepKeyBindings(),this._resetKeyEventListeners()},remo veOwnKeyBindings:function(){this._imperativeKeyBindings={},this._prepKeyBindings (),this._resetKeyEventListeners()},keyboardEventMatchesKeys:function(e,t){for(va r n=a(t),i=0;i<n.length;++i)if(r(n[i],e))return!0;return!1},_collectKeyBindings: function(){var e=this.behaviors.map(function(e){return e.keyBindings});return e. indexOf(this.keyBindings)===-1&&e.push(this.keyBindings),e},_prepKeyBindings:fun ction(){this._keyBindings={},this._collectKeyBindings().forEach(function(e){for( var t in e)this._addKeyBinding(t,e[t])},this);for(var e in this._imperativeKeyBi ndings)this._addKeyBinding(e,this._imperativeKeyBindings[e]);for(var t in this._ keyBindings)this._keyBindings[t].sort(function(e,t){var n=e[0].hasModifiers,i=t[ 0].hasModifiers;return n===i?0:n?-1:1})},_addKeyBinding:function(e,t){a(e).forEa ch(function(e){this._keyBindings[e.event]=this._keyBindings[e.event]||[],this._k eyBindings[e.event].push([e,t])},this)},_resetKeyEventListeners:function(){this. _unlistenKeyEventListeners(),this.isAttached&&this._listenKeyEventListeners()},_ listenKeyEventListeners:function(){this.keyEventTarget&&Object.keys(this._keyBin dings).forEach(function(e){var t=this._keyBindings[e],n=this._onKeyBindingEvent. bind(this,t);this._boundKeyHandlers.push([this.keyEventTarget,e,n]),this.keyEven tTarget.addEventListener(e,n)},this)},_unlistenKeyEventListeners:function(){for( var e,t,n,i;this._boundKeyHandlers.length;)e=this._boundKeyHandlers.pop(),t=e[0] ,n=e[1],i=e[2],t.removeEventListener(n,i)},_onKeyBindingEvent:function(e,t){if(t his.stopKeyboardEventPropagation&&t.stopPropagation(),!t.defaultPrevented)for(va r n=0;n<e.length;n++){var i=e[n][0],s=e[n][1];if(r(i,t)&&(this._triggerKeyHandle r(i,s,t),t.defaultPrevented))return}},_triggerKeyHandler:function(e,t,n){var i=O bject.create(e);i.keyboardEvent=n;var r=new CustomEvent(e.event,{detail:i,cancel able:!0});this[t].call(this,r),r.defaultPrevented&&n.preventDefault()}}}()</scri pt> <script>Polymer.IronControlState={properties:{focused:{type:Boolean,value:!1 ,notify:!0,readOnly:!0,reflectToAttribute:!0},disabled:{type:Boolean,value:!1,no tify:!0,observer:"_disabledChanged",reflectToAttribute:!0},_oldTabIndex:{type:Nu mber},_boundFocusBlurHandler:{type:Function,value:function(){return this._focusB lurHandler.bind(this)}}},observers:["_changedControlState(focused, disabled)"],r eady:function(){this.addEventListener("focus",this._boundFocusBlurHandler,!0),th is.addEventListener("blur",this._boundFocusBlurHandler,!0)},_focusBlurHandler:fu nction(e){if(e.target===this)this._setFocused("focus"===e.type);else if(!this.sh adowRoot){var t=Polymer.dom(e).localTarget;this.isLightDescendant(t)||this.fire( e.type,{sourceEvent:e},{node:this,bubbles:e.bubbles,cancelable:e.cancelable})}}, _disabledChanged:function(e,t){this.setAttribute("aria-disabled",e?"true":"false "),this.style.pointerEvents=e?"none":"",e?(this._oldTabIndex=this.tabIndex,this. _setFocused(!1),this.tabIndex=-1,this.blur()):void 0!==this._oldTabIndex&&(this. tabIndex=this._oldTabIndex)},_changedControlState:function(){this._controlStateC hanged&&this._controlStateChanged()}}</script> <script>Polymer.IronButtonStateIm pl={properties:{pressed:{type:Boolean,readOnly:!0,value:!1,reflectToAttribute:!0 ,observer:"_pressedChanged"},toggles:{type:Boolean,value:!1,reflectToAttribute:! 0},active:{type:Boolean,value:!1,notify:!0,reflectToAttribute:!0},pointerDown:{t ype:Boolean,readOnly:!0,value:!1},receivedFocusFromKeyboard:{type:Boolean,readOn ly:!0},ariaActiveAttribute:{type:String,value:"aria-pressed",observer:"_ariaActi veAttributeChanged"}},listeners:{down:"_downHandler",up:"_upHandler",tap:"_tapHa ndler"},observers:["_detectKeyboardFocus(focused)","_activeChanged(active, ariaA ctiveAttribute)"],keyBindings:{"enter:keydown":"_asyncClick","space:keydown":"_s paceKeyDownHandler","space:keyup":"_spaceKeyUpHandler"},_mouseEventRe:/^mouse/,_ tapHandler:function(){this.toggles?this._userActivate(!this.active):this.active= !1},_detectKeyboardFocus:function(e){this._setReceivedFocusFromKeyboard(!this.po interDown&&e)},_userActivate:function(e){this.active!==e&&(this.active=e,this.fi re("change"))},_downHandler:function(e){this._setPointerDown(!0),this._setPresse d(!0),this._setReceivedFocusFromKeyboard(!1)},_upHandler:function(){this._setPoi nterDown(!1),this._setPressed(!1)},_spaceKeyDownHandler:function(e){var t=e.deta il.keyboardEvent,i=Polymer.dom(t).localTarget;this.isLightDescendant(i)||(t.prev entDefault(),t.stopImmediatePropagation(),this._setPressed(!0))},_spaceKeyUpHand ler:function(e){var t=e.detail.keyboardEvent,i=Polymer.dom(t).localTarget;this.i sLightDescendant(i)||(this.pressed&&this._asyncClick(),this._setPressed(!1))},_a syncClick:function(){this.async(function(){this.click()},1)},_pressedChanged:fun ction(e){this._changedButtonState()},_ariaActiveAttributeChanged:function(e,t){t &&t!=e&&this.hasAttribute(t)&&this.removeAttribute(t)},_activeChanged:function(e ,t){this.toggles?this.setAttribute(this.ariaActiveAttribute,e?"true":"false"):th is.removeAttribute(this.ariaActiveAttribute),this._changedButtonState()},_contro lStateChanged:function(){this.disabled?this._setPressed(!1):this._changedButtonS tate()},_changedButtonState:function(){this._buttonStateChanged&&this._buttonSta teChanged()}},Polymer.IronButtonState=[Polymer.IronA11yKeysBehavior,Polymer.Iron ButtonStateImpl]</script> <dom-module id="paper-ripple" assetpath="/res/imp/bowe r_components/paper-ripple/"> <template> <style>:host{display:block;position:abso lute;border-radius:inherit;overflow:hidden;top:0;left:0;right:0;bottom:0;pointer -events:none}:host([animating]){-webkit-transform:translate(0,0);transform:trans late3d(0,0,0)}#background,#waves,.wave,.wave-container{pointer-events:none;posit ion:absolute;top:0;left:0;width:100%;height:100%}#background,.wave{opacity:0}#wa ves,.wave{overflow:hidden}.wave,.wave-container{border-radius:50%}:host(.circle) #background,:host(.circle) #waves{border-radius:50%}:host(.circle) .wave-contai ner{overflow:hidden}</style> <div id="background"></div> <div id="waves"></div> </template> </dom-module> <script>!function(){function t(t){this.element=t,this. width=this.boundingRect.width,this.height=this.boundingRect.height,this.size=Mat h.max(this.width,this.height)}function i(t){this.element=t,this.color=window.get ComputedStyle(t).color,this.wave=document.createElement("div"),this.waveContaine r=document.createElement("div"),this.wave.style.backgroundColor=this.color,this. wave.classList.add("wave"),this.waveContainer.classList.add("wave-container"),Po lymer.dom(this.waveContainer).appendChild(this.wave),this.resetInteractionState( )}var e={distance:function(t,i,e,n){var s=t-e,o=i-n;return Math.sqrt(s*s+o*o)},n ow:window.performance&&window.performance.now?window.performance.now.bind(window .performance):Date.now};t.prototype={get boundingRect(){return this.element.getB oundingClientRect()},furthestCornerDistanceFrom:function(t,i){var n=e.distance(t ,i,0,0),s=e.distance(t,i,this.width,0),o=e.distance(t,i,0,this.height),a=e.dista nce(t,i,this.width,this.height);return Math.max(n,s,o,a)}},i.MAX_RADIUS=300,i.pr ototype={get recenters(){return this.element.recenters},get center(){return this .element.center},get mouseDownElapsed(){var t;return this.mouseDownStart?(t=e.no w()-this.mouseDownStart,this.mouseUpStart&&(t-=this.mouseUpElapsed),t):0},get mo useUpElapsed(){return this.mouseUpStart?e.now()-this.mouseUpStart:0},get mouseDo wnElapsedSeconds(){return this.mouseDownElapsed/1e3},get mouseUpElapsedSeconds() {return this.mouseUpElapsed/1e3},get mouseInteractionSeconds(){return this.mouse DownElapsedSeconds+this.mouseUpElapsedSeconds},get initialOpacity(){return this. element.initialOpacity},get opacityDecayVelocity(){return this.element.opacityDe cayVelocity},get radius(){var t=this.containerMetrics.width*this.containerMetric s.width,e=this.containerMetrics.height*this.containerMetrics.height,n=1.1*Math.m in(Math.sqrt(t+e),i.MAX_RADIUS)+5,s=1.1-.2*(n/i.MAX_RADIUS),o=this.mouseInteract ionSeconds/s,a=n*(1-Math.pow(80,-o));return Math.abs(a)},get opacity(){return th is.mouseUpStart?Math.max(0,this.initialOpacity-this.mouseUpElapsedSeconds*this.o pacityDecayVelocity):this.initialOpacity},get outerOpacity(){var t=.3*this.mouse UpElapsedSeconds,i=this.opacity;return Math.max(0,Math.min(t,i))},get isOpacityF ullyDecayed(){return this.opacity<.01&&this.radius>=Math.min(this.maxRadius,i.MA X_RADIUS)},get isRestingAtMaxRadius(){return this.opacity>=this.initialOpacity&& this.radius>=Math.min(this.maxRadius,i.MAX_RADIUS)},get isAnimationComplete(){re turn this.mouseUpStart?this.isOpacityFullyDecayed:this.isRestingAtMaxRadius},get translationFraction(){return Math.min(1,this.radius/this.containerMetrics.size* 2/Math.sqrt(2))},get xNow(){return this.xEnd?this.xStart+this.translationFractio n*(this.xEnd-this.xStart):this.xStart},get yNow(){return this.yEnd?this.yStart+t his.translationFraction*(this.yEnd-this.yStart):this.yStart},get isMouseDown(){r eturn this.mouseDownStart&&!this.mouseUpStart},resetInteractionState:function(){ this.maxRadius=0,this.mouseDownStart=0,this.mouseUpStart=0,this.xStart=0,this.yS tart=0,this.xEnd=0,this.yEnd=0,this.slideDistance=0,this.containerMetrics=new t( this.element)},draw:function(){var t,i,e;this.wave.style.opacity=this.opacity,t= this.radius/(this.containerMetrics.size/2),i=this.xNow-this.containerMetrics.wid th/2,e=this.yNow-this.containerMetrics.height/2,this.waveContainer.style.webkitT ransform="translate("+i+"px, "+e+"px)",this.waveContainer.style.transform="trans late3d("+i+"px, "+e+"px, 0)",this.wave.style.webkitTransform="scale("+t+","+t+") ",this.wave.style.transform="scale3d("+t+","+t+",1)"},downAction:function(t){var i=this.containerMetrics.width/2,n=this.containerMetrics.height/2;this.resetInte ractionState(),this.mouseDownStart=e.now(),this.center?(this.xStart=i,this.yStar t=n,this.slideDistance=e.distance(this.xStart,this.yStart,this.xEnd,this.yEnd)): (this.xStart=t?t.detail.x-this.containerMetrics.boundingRect.left:this.container Metrics.width/2,this.yStart=t?t.detail.y-this.containerMetrics.boundingRect.top: this.containerMetrics.height/2),this.recenters&&(this.xEnd=i,this.yEnd=n,this.sl ideDistance=e.distance(this.xStart,this.yStart,this.xEnd,this.yEnd)),this.maxRad ius=this.containerMetrics.furthestCornerDistanceFrom(this.xStart,this.yStart),th is.waveContainer.style.top=(this.containerMetrics.height-this.containerMetrics.s ize)/2+"px",this.waveContainer.style.left=(this.containerMetrics.width-this.cont ainerMetrics.size)/2+"px",this.waveContainer.style.width=this.containerMetrics.s ize+"px",this.waveContainer.style.height=this.containerMetrics.size+"px"},upActi on:function(t){this.isMouseDown&&(this.mouseUpStart=e.now())},remove:function(){ Polymer.dom(this.waveContainer.parentNode).removeChild(this.waveContainer)}},Pol ymer({is:"paper-ripple",behaviors:[Polymer.IronA11yKeysBehavior],properties:{ini tialOpacity:{type:Number,value:.25},opacityDecayVelocity:{type:Number,value:.8}, recenters:{type:Boolean,value:!1},center:{type:Boolean,value:!1},ripples:{type:A rray,value:function(){return[]}},animating:{type:Boolean,readOnly:!0,reflectToAt tribute:!0,value:!1},holdDown:{type:Boolean,value:!1,observer:"_holdDownChanged" },noink:{type:Boolean,value:!1},_animating:{type:Boolean},_boundAnimate:{type:Fu nction,value:function(){return this.animate.bind(this)}}},get target(){return th is.keyEventTarget},keyBindings:{"enter:keydown":"_onEnterKeydown","space:keydown ":"_onSpaceKeydown","space:keyup":"_onSpaceKeyup"},attached:function(){11==this. parentNode.nodeType?this.keyEventTarget=Polymer.dom(this).getOwnerRoot().host:th is.keyEventTarget=this.parentNode;var t=this.keyEventTarget;this.listen(t,"up"," uiUpAction"),this.listen(t,"down","uiDownAction")},detached:function(){this.unli sten(this.keyEventTarget,"up","uiUpAction"),this.unlisten(this.keyEventTarget,"d own","uiDownAction"),this.keyEventTarget=null},get shouldKeepAnimating(){for(var t=0;t<this.ripples.length;++t)if(!this.ripples[t].isAnimationComplete)return!0; return!1},simulatedRipple:function(){this.downAction(null),this.async(function() {this.upAction()},1)},uiDownAction:function(t){this.noink||this.downAction(t)},d ownAction:function(t){if(!(this.holdDown&&this.ripples.length>0)){var i=this.add Ripple();i.downAction(t),this._animating||(this._animating=!0,this.animate())}}, uiUpAction:function(t){this.noink||this.upAction(t)},upAction:function(t){this.h oldDown||(this.ripples.forEach(function(i){i.upAction(t)}),this._animating=!0,th is.animate())},onAnimationComplete:function(){this._animating=!1,this.$.backgrou nd.style.backgroundColor=null,this.fire("transitionend")},addRipple:function(){v ar t=new i(this);return Polymer.dom(this.$.waves).appendChild(t.waveContainer),t his.$.background.style.backgroundColor=t.color,this.ripples.push(t),this._setAni mating(!0),t},removeRipple:function(t){var i=this.ripples.indexOf(t);i<0||(this. ripples.splice(i,1),t.remove(),this.ripples.length||this._setAnimating(!1))},ani mate:function(){if(this._animating){var t,i;for(t=0;t<this.ripples.length;++t)i= this.ripples[t],i.draw(),this.$.background.style.opacity=i.outerOpacity,i.isOpac ityFullyDecayed&&!i.isRestingAtMaxRadius&&this.removeRipple(i);this.shouldKeepAn imating||0!==this.ripples.length?window.requestAnimationFrame(this._boundAnimate ):this.onAnimationComplete()}},_onEnterKeydown:function(){this.uiDownAction(),th is.async(this.uiUpAction,1)},_onSpaceKeydown:function(){this.uiDownAction()},_on SpaceKeyup:function(){this.uiUpAction()},_holdDownChanged:function(t,i){void 0!= =i&&(t?this.downAction():this.upAction())}})}()</script> <script>Polymer.PaperRi ppleBehavior={properties:{noink:{type:Boolean,observer:"_noinkChanged"},_rippleC ontainer:{type:Object}},_buttonStateChanged:function(){this.focused&&this.ensure Ripple()},_downHandler:function(e){Polymer.IronButtonStateImpl._downHandler.call (this,e),this.pressed&&this.ensureRipple(e)},ensureRipple:function(e){if(!this.h asRipple()){this._ripple=this._createRipple(),this._ripple.noink=this.noink;var i=this._rippleContainer||this.root;if(i&&Polymer.dom(i).appendChild(this._ripple ),e){var n=Polymer.dom(this._rippleContainer||this),t=Polymer.dom(e).rootTarget; n.deepContains(t)&&this._ripple.uiDownAction(e)}}},getRipple:function(){return t his.ensureRipple(),this._ripple},hasRipple:function(){return Boolean(this._rippl e)},_createRipple:function(){return document.createElement("paper-ripple")},_noi nkChanged:function(e){this.hasRipple()&&(this._ripple.noink=e)}}</script> <scrip t>Polymer.PaperButtonBehaviorImpl={properties:{elevation:{type:Number,reflectToA ttribute:!0,readOnly:!0}},observers:["_calculateElevation(focused, disabled, act ive, pressed, receivedFocusFromKeyboard)","_computeKeyboardClass(receivedFocusFr omKeyboard)"],hostAttributes:{role:"button",tabindex:"0",animated:!0},_calculate Elevation:function(){var e=1;this.disabled?e=0:this.active||this.pressed?e=4:thi s.receivedFocusFromKeyboard&&(e=3),this._setElevation(e)},_computeKeyboardClass: function(e){this.toggleClass("keyboard-focus",e)},_spaceKeyDownHandler:function( e){Polymer.IronButtonStateImpl._spaceKeyDownHandler.call(this,e),this.hasRipple( )&&this.getRipple().ripples.length<1&&this._ripple.uiDownAction()},_spaceKeyUpHa ndler:function(e){Polymer.IronButtonStateImpl._spaceKeyUpHandler.call(this,e),th is.hasRipple()&&this._ripple.uiUpAction()}},Polymer.PaperButtonBehavior=[Polymer .IronButtonState,Polymer.IronControlState,Polymer.PaperRippleBehavior,Polymer.Pa perButtonBehaviorImpl]</script> <style is="custom-style">:root{--shadow-transiti on:{transition:box-shadow .28s cubic-bezier(.4,0,.2,1)};--shadow-none:{box-shado w:none};--shadow-elevation-2dp:{box-shadow:0 2px 2px 0 rgba(0,0,0,.14),0 1px 5px 0 rgba(0,0,0,.12),0 3px 1px -2px rgba(0,0,0,.2)};--shadow-elevation-3dp:{box-sh adow:0 3px 4px 0 rgba(0,0,0,.14),0 1px 8px 0 rgba(0,0,0,.12),0 3px 3px -2px rgba (0,0,0,.4)};--shadow-elevation-4dp:{box-shadow:0 4px 5px 0 rgba(0,0,0,.14),0 1px 10px 0 rgba(0,0,0,.12),0 2px 4px -1px rgba(0,0,0,.4)};--shadow-elevation-6dp:{b ox-shadow:0 6px 10px 0 rgba(0,0,0,.14),0 1px 18px 0 rgba(0,0,0,.12),0 3px 5px -1 px rgba(0,0,0,.4)};--shadow-elevation-8dp:{box-shadow:0 8px 10px 1px rgba(0,0,0, .14),0 3px 14px 2px rgba(0,0,0,.12),0 5px 5px -3px rgba(0,0,0,.4)};--shadow-elev ation-12dp:{box-shadow:0 12px 16px 1px rgba(0,0,0,.14),0 4px 22px 3px rgba(0,0,0 ,.12),0 6px 7px -4px rgba(0,0,0,.4)};--shadow-elevation-16dp:{box-shadow:0 16px 24px 2px rgba(0,0,0,.14),0 6px 30px 5px rgba(0,0,0,.12),0 8px 10px -5px rgba(0,0 ,0,.4)};--shadow-elevation-24dp:{box-shadow:0 24px 38px 3px rgba(0,0,0,.14),0 9p x 46px 8px rgba(0,0,0,.12),0 11px 15px -7px rgba(0,0,0,.4)};}</style> <dom-modul e id="paper-material-shared-styles" assetpath="/res/imp/bower_components/paper-m aterial/"> <template> <style>:host{display:block;position:relative}:host([elevat ion="1"]){@apply(--shadow-elevation-2dp)}:host([elevation="2"]){@apply(--shadow- elevation-4dp)}:host([elevation="3"]){@apply(--shadow-elevation-6dp)}:host([elev ation="4"]){@apply(--shadow-elevation-8dp)}:host([elevation="5"]){@apply(--shado w-elevation-16dp)}</style> </template> </dom-module> <style is="custom-style">:r oot{--google-red-100:#f4c7c3;--google-red-300:#e67c73;--google-red-500:#db4437;- -google-red-700:#c53929;--google-blue-100:#c6dafc;--google-blue-300:#7baaf7;--go ogle-blue-500:#4285f4;--google-blue-700:#3367d6;--google-green-100:#b7e1cd;--goo gle-green-300:#57bb8a;--google-green-500:#0f9d58;--google-green-700:#0b8043;--go ogle-yellow-100:#fce8b2;--google-yellow-300:#f7cb4d;--google-yellow-500:#f4b400; --google-yellow-700:#f09300;--google-grey-100:#f5f5f5;--google-grey-300:#e0e0e0; --google-grey-500:#9e9e9e;--google-grey-700:#616161;--paper-red-50:#ffebee;--pap er-red-100:#ffcdd2;--paper-red-200:#ef9a9a;--paper-red-300:#e57373;--paper-red-4 00:#ef5350;--paper-red-500:#f44336;--paper-red-600:#e53935;--paper-red-700:#d32f 2f;--paper-red-800:#c62828;--paper-red-900:#b71c1c;--paper-red-a100:#ff8a80;--pa per-red-a200:#ff5252;--paper-red-a400:#ff1744;--paper-red-a700:#d50000;--paper-p ink-50:#fce4ec;--paper-pink-100:#f8bbd0;--paper-pink-200:#f48fb1;--paper-pink-30 0:#f06292;--paper-pink-400:#ec407a;--paper-pink-500:#e91e63;--paper-pink-600:#d8 1b60;--paper-pink-700:#c2185b;--paper-pink-800:#ad1457;--paper-pink-900:#880e4f; --paper-pink-a100:#ff80ab;--paper-pink-a200:#ff4081;--paper-pink-a400:#f50057;-- paper-pink-a700:#c51162;--paper-purple-50:#f3e5f5;--paper-purple-100:#e1bee7;--p aper-purple-200:#ce93d8;--paper-purple-300:#ba68c8;--paper-purple-400:#ab47bc;-- paper-purple-500:#9c27b0;--paper-purple-600:#8e24aa;--paper-purple-700:#7b1fa2;- -paper-purple-800:#6a1b9a;--paper-purple-900:#4a148c;--paper-purple-a100:#ea80fc ;--paper-purple-a200:#e040fb;--paper-purple-a400:#d500f9;--paper-purple-a700:#aa 00ff;--paper-deep-purple-50:#ede7f6;--paper-deep-purple-100:#d1c4e9;--paper-deep -purple-200:#b39ddb;--paper-deep-purple-300:#9575cd;--paper-deep-purple-400:#7e5 7c2;--paper-deep-purple-500:#673ab7;--paper-deep-purple-600:#5e35b1;--paper-deep -purple-700:#512da8;--paper-deep-purple-800:#4527a0;--paper-deep-purple-900:#311 b92;--paper-deep-purple-a100:#b388ff;--paper-deep-purple-a200:#7c4dff;--paper-de ep-purple-a400:#651fff;--paper-deep-purple-a700:#6200ea;--paper-indigo-50:#e8eaf 6;--paper-indigo-100:#c5cae9;--paper-indigo-200:#9fa8da;--paper-indigo-300:#7986 cb;--paper-indigo-400:#5c6bc0;--paper-indigo-500:#3f51b5;--paper-indigo-600:#394 9ab;--paper-indigo-700:#303f9f;--paper-indigo-800:#283593;--paper-indigo-900:#1a 237e;--paper-indigo-a100:#8c9eff;--paper-indigo-a200:#536dfe;--paper-indigo-a400 :#3d5afe;--paper-indigo-a700:#304ffe;--paper-blue-50:#e3f2fd;--paper-blue-100:#b bdefb;--paper-blue-200:#90caf9;--paper-blue-300:#64b5f6;--paper-blue-400:#42a5f5 ;--paper-blue-500:#2196f3;--paper-blue-600:#1e88e5;--paper-blue-700:#1976d2;--pa per-blue-800:#1565c0;--paper-blue-900:#0d47a1;--paper-blue-a100:#82b1ff;--paper- blue-a200:#448aff;--paper-blue-a400:#2979ff;--paper-blue-a700:#2962ff;--paper-li ght-blue-50:#e1f5fe;--paper-light-blue-100:#b3e5fc;--paper-light-blue-200:#81d4f a;--paper-light-blue-300:#4fc3f7;--paper-light-blue-400:#29b6f6;--paper-light-bl ue-500:#03a9f4;--paper-light-blue-600:#039be5;--paper-light-blue-700:#0288d1;--p aper-light-blue-800:#0277bd;--paper-light-blue-900:#01579b;--paper-light-blue-a1 00:#80d8ff;--paper-light-blue-a200:#40c4ff;--paper-light-blue-a400:#00b0ff;--pap er-light-blue-a700:#0091ea;--paper-cyan-50:#e0f7fa;--paper-cyan-100:#b2ebf2;--pa per-cyan-200:#80deea;--paper-cyan-300:#4dd0e1;--paper-cyan-400:#26c6da;--paper-c yan-500:#00bcd4;--paper-cyan-600:#00acc1;--paper-cyan-700:#0097a7;--paper-cyan-8 00:#00838f;--paper-cyan-900:#006064;--paper-cyan-a100:#84ffff;--paper-cyan-a200: #18ffff;--paper-cyan-a400:#00e5ff;--paper-cyan-a700:#00b8d4;--paper-teal-50:#e0f 2f1;--paper-teal-100:#b2dfdb;--paper-teal-200:#80cbc4;--paper-teal-300:#4db6ac;- -paper-teal-400:#26a69a;--paper-teal-500:#009688;--paper-teal-600:#00897b;--pape r-teal-700:#00796b;--paper-teal-800:#00695c;--paper-teal-900:#004d40;--paper-tea l-a100:#a7ffeb;--paper-teal-a200:#64ffda;--paper-teal-a400:#1de9b6;--paper-teal- a700:#00bfa5;--paper-green-50:#e8f5e9;--paper-green-100:#c8e6c9;--paper-green-20 0:#a5d6a7;--paper-green-300:#81c784;--paper-green-400:#66bb6a;--paper-green-500: #4caf50;--paper-green-600:#43a047;--paper-green-700:#388e3c;--paper-green-800:#2 e7d32;--paper-green-900:#1b5e20;--paper-green-a100:#b9f6ca;--paper-green-a200:#6 9f0ae;--paper-green-a400:#00e676;--paper-green-a700:#00c853;--paper-light-green- 50:#f1f8e9;--paper-light-green-100:#dcedc8;--paper-light-green-200:#c5e1a5;--pap er-light-green-300:#aed581;--paper-light-green-400:#9ccc65;--paper-light-green-5 00:#8bc34a;--paper-light-green-600:#7cb342;--paper-light-green-700:#689f38;--pap er-light-green-800:#558b2f;--paper-light-green-900:#33691e;--paper-light-green-a 100:#ccff90;--paper-light-green-a200:#b2ff59;--paper-light-green-a400:#76ff03;-- paper-light-green-a700:#64dd17;--paper-lime-50:#f9fbe7;--paper-lime-100:#f0f4c3; --paper-lime-200:#e6ee9c;--paper-lime-300:#dce775;--paper-lime-400:#d4e157;--pap er-lime-500:#cddc39;--paper-lime-600:#c0ca33;--paper-lime-700:#afb42b;--paper-li me-800:#9e9d24;--paper-lime-900:#827717;--paper-lime-a100:#f4ff81;--paper-lime-a 200:#eeff41;--paper-lime-a400:#c6ff00;--paper-lime-a700:#aeea00;--paper-yellow-5 0:#fffde7;--paper-yellow-100:#fff9c4;--paper-yellow-200:#fff59d;--paper-yellow-3 00:#fff176;--paper-yellow-400:#ffee58;--paper-yellow-500:#ffeb3b;--paper-yellow- 600:#fdd835;--paper-yellow-700:#fbc02d;--paper-yellow-800:#f9a825;--paper-yellow -900:#f57f17;--paper-yellow-a100:#ffff8d;--paper-yellow-a200:#ffff00;--paper-yel low-a400:#ffea00;--paper-yellow-a700:#ffd600;--paper-amber-50:#fff8e1;--paper-am ber-100:#ffecb3;--paper-amber-200:#ffe082;--paper-amber-300:#ffd54f;--paper-ambe r-400:#ffca28;--paper-amber-500:#ffc107;--paper-amber-600:#ffb300;--paper-amber- 700:#ffa000;--paper-amber-800:#ff8f00;--paper-amber-900:#ff6f00;--paper-amber-a1 00:#ffe57f;--paper-amber-a200:#ffd740;--paper-amber-a400:#ffc400;--paper-amber-a 700:#ffab00;--paper-orange-50:#fff3e0;--paper-orange-100:#ffe0b2;--paper-orange- 200:#ffcc80;--paper-orange-300:#ffb74d;--paper-orange-400:#ffa726;--paper-orange -500:#ff9800;--paper-orange-600:#fb8c00;--paper-orange-700:#f57c00;--paper-orang e-800:#ef6c00;--paper-orange-900:#e65100;--paper-orange-a100:#ffd180;--paper-ora nge-a200:#ffab40;--paper-orange-a400:#ff9100;--paper-orange-a700:#ff6500;--paper -deep-orange-50:#fbe9e7;--paper-deep-orange-100:#ffccbc;--paper-deep-orange-200: #ffab91;--paper-deep-orange-300:#ff8a65;--paper-deep-orange-400:#ff7043;--paper- deep-orange-500:#ff5722;--paper-deep-orange-600:#f4511e;--paper-deep-orange-700: #e64a19;--paper-deep-orange-800:#d84315;--paper-deep-orange-900:#bf360c;--paper- deep-orange-a100:#ff9e80;--paper-deep-orange-a200:#ff6e40;--paper-deep-orange-a4 00:#ff3d00;--paper-deep-orange-a700:#dd2c00;--paper-brown-50:#efebe9;--paper-bro wn-100:#d7ccc8;--paper-brown-200:#bcaaa4;--paper-brown-300:#a1887f;--paper-brown -400:#8d6e63;--paper-brown-500:#795548;--paper-brown-600:#6d4c41;--paper-brown-7 00:#5d4037;--paper-brown-800:#4e342e;--paper-brown-900:#3e2723;--paper-grey-50:# fafafa;--paper-grey-100:#f5f5f5;--paper-grey-200:#eeeeee;--paper-grey-300:#e0e0e 0;--paper-grey-400:#bdbdbd;--paper-grey-500:#9e9e9e;--paper-grey-600:#757575;--p aper-grey-700:#616161;--paper-grey-800:#424242;--paper-grey-900:#212121;--paper- blue-grey-50:#eceff1;--paper-blue-grey-100:#cfd8dc;--paper-blue-grey-200:#b0bec5 ;--paper-blue-grey-300:#90a4ae;--paper-blue-grey-400:#78909c;--paper-blue-grey-5 00:#607d8b;--paper-blue-grey-600:#546e7a;--paper-blue-grey-700:#455a64;--paper-b lue-grey-800:#37474f;--paper-blue-grey-900:#263238;--dark-divider-opacity:0.12;- -dark-disabled-opacity:0.38;--dark-secondary-opacity:0.54;--dark-primary-opacity :0.87;--light-divider-opacity:0.12;--light-disabled-opacity:0.3;--light-secondar y-opacity:0.7;--light-primary-opacity:1.0}</style> <style is="custom-style">:roo t{--primary-text-color:var(--light-theme-text-color);--primary-background-color: var(--light-theme-background-color);--secondary-text-color:var(--light-theme-sec ondary-color);--disabled-text-color:var(--light-theme-disabled-color);--divider- color:var(--light-theme-divider-color);--error-color:var(--paper-deep-orange-a70 0);--primary-color:var(--paper-indigo-500);--light-primary-color:var(--paper-ind igo-100);--dark-primary-color:var(--paper-indigo-700);--accent-color:var(--paper -pink-a200);--light-accent-color:var(--paper-pink-a100);--dark-accent-color:var( --paper-pink-a400);--light-theme-background-color:#ffffff;--light-theme-base-col or:#000000;--light-theme-text-color:var(--paper-grey-900);--light-theme-secondar y-color:#737373;--light-theme-disabled-color:#9b9b9b;--light-theme-divider-color :#dbdbdb;--dark-theme-background-color:var(--paper-grey-900);--dark-theme-base-c olor:#ffffff;--dark-theme-text-color:#ffffff;--dark-theme-secondary-color:#bcbcb c;--dark-theme-disabled-color:#646464;--dark-theme-divider-color:#3c3c3c;--text- primary-color:var(--dark-theme-text-color);--default-primary-color:var(--primary -color)}</style> <dom-module id="paper-fab" assetpath="/res/imp/bower_components /paper-fab/"> <template strip-whitespace=""> <style include="paper-material-shar ed-styles">:host{@apply(--layout-vertical);@apply(--layout-center-center);backgr ound:var(--paper-fab-background,--accent-color);border-radius:50%;box-sizing:bor der-box;color:var(--text-primary-color);cursor:pointer;height:56px;min-width:0;o utline:0;padding:16px;position:relative;-moz-user-select:none;-ms-user-select:no ne;-webkit-user-select:none;user-select:none;width:56px;z-index:0;-webkit-tap-hi ghlight-color:transparent;-webkit-tap-highlight-color:transparent;@apply(--paper -fab)}[hidden]{display:none!important}:host([mini]){width:40px;height:40px;paddi ng:8px;@apply(--paper-fab-mini)}:host([disabled]){color:var(--paper-fab-disabled -text,--paper-grey-500);background:var(--paper-fab-disabled-background,--paper-g rey-300);@apply(--paper-fab-disabled)}iron-icon{@apply(--paper-fab-iron-icon)}sp an{width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-ali gn:center;@apply(--paper-fab-label)}:host(.keyboard-focus){background:var(--pape r-fab-keyboard-focus-background,--paper-pink-900)}</style> <iron-icon id="icon" hidden$="{{!_computeIsIconFab(icon, src)}}" src="[[src]]" icon="[[icon]]"></iron -icon> <span hidden$="{{_computeIsIconFab(icon, src)}}">{{label}}</span> </templ ate> <script>Polymer({is:"paper-fab",behaviors:[Polymer.PaperButtonBehavior],pro perties:{src:{type:String,value:""},icon:{type:String,value:""},mini:{type:Boole an,value:!1,reflectToAttribute:!0},label:{type:String,observer:"_labelChanged"}} ,_labelChanged:function(){this.setAttribute("aria-label",this.label)},_computeIs IconFab:function(e,t){return e.length>0||t.length>0}})</script> </dom-module> <s cript>Polymer.PaperInkyFocusBehaviorImpl={observers:["_focusedChanged(receivedFo cusFromKeyboard)"],_focusedChanged:function(e){e&&this.ensureRipple(),this.hasRi pple()&&(this._ripple.holdDown=e)},_createRipple:function(){var e=Polymer.PaperR ippleBehavior._createRipple();return e.id="ink",e.setAttribute("center",""),e.cl assList.add("circle"),e}},Polymer.PaperInkyFocusBehavior=[Polymer.IronButtonStat e,Polymer.IronControlState,Polymer.PaperRippleBehavior,Polymer.PaperInkyFocusBeh aviorImpl]</script> <dom-module id="paper-icon-button" assetpath="/res/imp/bower _components/paper-icon-button/"> <template strip-whitespace=""> <style>:host{dis play:inline-block;position:relative;padding:8px;outline:0;-webkit-user-select:no ne;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:pointer;z- index:0;line-height:1;width:40px;height:40px;-webkit-tap-highlight-color:transpa rent;-webkit-tap-highlight-color:transparent;box-sizing:border-box!important;@ap ply(--paper-icon-button)}:host #ink{color:var(--paper-icon-button-ink-color,--pr imary-text-color);opacity:.6}:host([disabled]){color:var(--paper-icon-button-dis abled-text,--disabled-text-color);pointer-events:none;cursor:auto;@apply(--paper -icon-button-disabled)}:host(:hover){@apply(--paper-icon-button-hover)}iron-icon {--iron-icon-width:100%;--iron-icon-height:100%}</style> <iron-icon id="icon" sr c="[[src]]" icon="[[icon]]" alt$="[[alt]]"></iron-icon> </template> <script>Poly mer({is:"paper-icon-button",hostAttributes:{role:"button",tabindex:"0"},behavior s:[Polymer.PaperInkyFocusBehavior],properties:{src:{type:String},icon:{type:Stri ng},alt:{type:String,observer:"_altChanged"}},_altChanged:function(t,e){var r=th is.getAttribute("aria-label");r&&e!=r||this.setAttribute("aria-label",t)}})</scr ipt> </dom-module> <script>Polymer.PaperItemBehaviorImpl={hostAttributes:{role:" option",tabindex:"0"}},Polymer.PaperItemBehavior=[Polymer.IronButtonState,Polyme r.IronControlState,Polymer.PaperItemBehaviorImpl]</script> <link rel="stylesheet " href="https://fonts.googleapis.com/css?family=Roboto:400,300,300italic,400ital ic,500,500italic,700,700italic"> <link rel="stylesheet" href="https://fonts.goog leapis.com/css?family=Roboto+Mono:400,700"> <style is="custom-style">:root{--pap er-font-common-base:{font-family:Roboto,Noto,sans-serif;-webkit-font-smoothing:a ntialiased};--paper-font-common-code:{font-family:'Roboto Mono',Consolas,Menlo,m onospace;-webkit-font-smoothing:antialiased};--paper-font-common-expensive-kerni ng:{text-rendering:optimizeLegibility};--paper-font-common-nowrap:{white-space:n owrap;overflow:hidden;text-overflow:ellipsis};--paper-font-display4:{@apply(--pa per-font-common-base);@apply(--paper-font-common-nowrap);font-size:112px;font-we ight:300;letter-spacing:-.044em;line-height:120px};--paper-font-display3:{@apply (--paper-font-common-base);@apply(--paper-font-common-nowrap);font-size:56px;fon t-weight:400;letter-spacing:-.026em;line-height:60px};--paper-font-display2:{@ap ply(--paper-font-common-base);font-size:45px;font-weight:400;letter-spacing:-.01 8em;line-height:48px};--paper-font-display1:{@apply(--paper-font-common-base);fo nt-size:34px;font-weight:400;letter-spacing:-.01em;line-height:40px};--paper-fon t-headline:{@apply(--paper-font-common-base);font-size:24px;font-weight:400;lett er-spacing:-.012em;line-height:32px};--paper-font-title:{@apply(--paper-font-com mon-base);@apply(--paper-font-common-nowrap);font-size:20px;font-weight:500;line -height:28px};--paper-font-subhead:{@apply(--paper-font-common-base);font-size:1 6px;font-weight:400;line-height:24px};--paper-font-body2:{@apply(--paper-font-co mmon-base);font-size:14px;font-weight:500;line-height:24px};--paper-font-body1:{ @apply(--paper-font-common-base);font-size:14px;font-weight:400;line-height:20px };--paper-font-caption:{@apply(--paper-font-common-base);@apply(--paper-font-com mon-nowrap);font-size:12px;font-weight:400;letter-spacing:0.011em;line-height:20 px};--paper-font-menu:{@apply(--paper-font-common-base);@apply(--paper-font-comm on-nowrap);font-size:13px;font-weight:500;line-height:24px};--paper-font-button: {@apply(--paper-font-common-base);@apply(--paper-font-common-nowrap);font-size:1 4px;font-weight:500;letter-spacing:0.018em;line-height:24px;text-transform:upper case};--paper-font-code2:{@apply(--paper-font-common-code);font-size:14px;font-w eight:700;line-height:20px};--paper-font-code1:{@apply(--paper-font-common-code) ;font-size:14px;font-weight:500;line-height:20px};}</style> <dom-module id="pape r-item-shared-styles" assetpath="/res/imp/bower_components/paper-item/"> <templa te> <style>.paper-item,:host{display:block;position:relative;min-height:var(--pa per-item-min-height,48px);padding:0 16px}.paper-item{@apply(--paper-font-subhead );border:none;outline:0;background:#fff;width:100%;text-align:left}.paper-item[h idden],:host([hidden]){display:none!important}.paper-item.iron-selected,:host(.i ron-selected){font-weight:var(--paper-item-selected-weight,bold);@apply(--paper- item-selected)}.paper-item[disabled],:host([disabled]){color:var(--paper-item-di sabled-color,--disabled-text-color);@apply(--paper-item-disabled)}.paper-item:fo cus,:host(:focus){position:relative;outline:0;@apply(--paper-item-focused)}.pape r-item:focus:before,:host(:focus):before{@apply(--layout-fit);background:current Color;content:'';opacity:var(--dark-divider-opacity);pointer-events:none;@apply( --paper-item-focused-before)}</style> </template> </dom-module> <dom-module id=" paper-item" assetpath="/res/imp/bower_components/paper-item/"> <template> <style include="paper-item-shared-styles"></style> <style>:host{@apply(--layout-horizo ntal);@apply(--layout-center);@apply(--paper-font-subhead);@apply(--paper-item)} </style> <content></content> </template> <script>Polymer({is:"paper-item",behavi ors:[Polymer.PaperItemBehavior]})</script> </dom-module> <script>Polymer.IronSel ection=function(e){this.selection=[],this.selectCallback=e},Polymer.IronSelectio n.prototype={get:function(){return this.multi?this.selection.slice():this.select ion[0]},clear:function(e){this.selection.slice().forEach(function(t){(!e||e.inde xOf(t)<0)&&this.setItemSelected(t,!1)},this)},isSelected:function(e){return this .selection.indexOf(e)>=0},setItemSelected:function(e,t){if(null!=e&&t!==this.isS elected(e)){if(t)this.selection.push(e);else{var i=this.selection.indexOf(e);i>= 0&&this.selection.splice(i,1)}this.selectCallback&&this.selectCallback(e,t)}},se lect:function(e){this.multi?this.toggle(e):this.get()!==e&&(this.setItemSelected (this.get(),!1),this.setItemSelected(e,!0))},toggle:function(e){this.setItemSele cted(e,!this.isSelected(e))}}</script> <script>Polymer.IronSelectableBehavior={p roperties:{attrForSelected:{type:String,value:null},selected:{type:String,notify :!0},selectedItem:{type:Object,readOnly:!0,notify:!0},activateEvent:{type:String ,value:"tap",observer:"_activateEventChanged"},selectable:String,selectedClass:{ type:String,value:"iron-selected"},selectedAttribute:{type:String,value:null},fa llbackSelection:{type:String,value:null},items:{type:Array,readOnly:!0,notify:!0 ,value:function(){return[]}},_excludedLocalNames:{type:Object,value:function(){r eturn{template:1}}}},observers:["_updateAttrForSelected(attrForSelected)","_upda teSelected(selected)","_checkFallback(fallbackSelection)"],created:function(){th is._bindFilterItem=this._filterItem.bind(this),this._selection=new Polymer.IronS election(this._applySelection.bind(this))},attached:function(){this._observer=th is._observeItems(this),this._updateItems(),this._shouldUpdateSelection||this._up dateSelected(),this._addListener(this.activateEvent)},detached:function(){this._ observer&&Polymer.dom(this).unobserveNodes(this._observer),this._removeListener( this.activateEvent)},indexOf:function(e){return this.items.indexOf(e)},select:fu nction(e){this.selected=e},selectPrevious:function(){var e=this.items.length,t=( Number(this._valueToIndex(this.selected))-1+e)%e;this.selected=this._indexToValu e(t)},selectNext:function(){var e=(Number(this._valueToIndex(this.selected))+1)% this.items.length;this.selected=this._indexToValue(e)},selectIndex:function(e){t his.select(this._indexToValue(e))},forceSynchronousItemUpdate:function(){this._u pdateItems()},get _shouldUpdateSelection(){return null!=this.selected},_checkFal lback:function(){this._shouldUpdateSelection&&this._updateSelected()},_addListen er:function(e){this.listen(this,e,"_activateHandler")},_removeListener:function( e){this.unlisten(this,e,"_activateHandler")},_activateEventChanged:function(e,t) {this._removeListener(t),this._addListener(e)},_updateItems:function(){var e=Pol ymer.dom(this).queryDistributedElements(this.selectable||"*");e=Array.prototype. filter.call(e,this._bindFilterItem),this._setItems(e)},_updateAttrForSelected:fu nction(){this._shouldUpdateSelection&&(this.selected=this._indexToValue(this.ind exOf(this.selectedItem)))},_updateSelected:function(){this._selectSelected(this. selected)},_selectSelected:function(e){this._selection.select(this._valueToItem( this.selected)),this.fallbackSelection&&this.items.length&&void 0===this._select ion.get()&&(this.selected=this.fallbackSelection)},_filterItem:function(e){retur n!this._excludedLocalNames[e.localName]},_valueToItem:function(e){return null==e ?null:this.items[this._valueToIndex(e)]},_valueToIndex:function(e){if(!this.attr ForSelected)return Number(e);for(var t,i=0;t=this.items[i];i++)if(this._valueFor Item(t)==e)return i},_indexToValue:function(e){if(!this.attrForSelected)return e ;var t=this.items[e];return t?this._valueForItem(t):void 0},_valueForItem:functi on(e){var t=e[Polymer.CaseMap.dashToCamelCase(this.attrForSelected)];return void 0!=t?t:e.getAttribute(this.attrForSelected)},_applySelection:function(e,t){this .selectedClass&&this.toggleClass(this.selectedClass,t,e),this.selectedAttribute& &this.toggleAttribute(this.selectedAttribute,t,e),this._selectionChange(),this.f ire("iron-"+(t?"select":"deselect"),{item:e})},_selectionChange:function(){this. _setSelectedItem(this._selection.get())},_observeItems:function(e){return Polyme r.dom(e).observeNodes(function(e){this._updateItems(),this._shouldUpdateSelectio n&&this._updateSelected(),this.fire("iron-items-changed",e,{bubbles:!1,cancelabl e:!1})})},_activateHandler:function(e){for(var t=e.target,i=this.items;t&&t!=thi s;){var s=i.indexOf(t);if(s>=0){var n=this._indexToValue(s);return void this._it emActivate(n,t)}t=t.parentNode}},_itemActivate:function(e,t){this.fire("iron-act ivate",{selected:e,item:t},{cancelable:!0}).defaultPrevented||this.select(e)}}</ script> <script>Polymer.IronMultiSelectableBehaviorImpl={properties:{multi:{type :Boolean,value:!1,observer:"multiChanged"},selectedValues:{type:Array,notify:!0} ,selectedItems:{type:Array,readOnly:!0,notify:!0}},observers:["_updateSelected(s electedValues.splices)"],select:function(e){this.multi?this.selectedValues?this. _toggleSelected(e):this.selectedValues=[e]:this.selected=e},multiChanged:functio n(e){this._selection.multi=e},get _shouldUpdateSelection(){return null!=this.sel ected||null!=this.selectedValues&&this.selectedValues.length},_updateAttrForSele cted:function(){this.multi?this._shouldUpdateSelection&&(this.selectedValues=thi s.selectedItems.map(function(e){return this._indexToValue(this.indexOf(e))},this ).filter(function(e){return null!=e},this)):Polymer.IronSelectableBehavior._upda teAttrForSelected.apply(this)},_updateSelected:function(){this.multi?this._selec tMulti(this.selectedValues):this._selectSelected(this.selected)},_selectMulti:fu nction(e){if(e){var t=this._valuesToItems(e);this._selection.clear(t);for(var l= 0;l<t.length;l++)this._selection.setItemSelected(t[l],!0);if(this.fallbackSelect ion&&this.items.length&&!this._selection.get().length){var s=this._valueToItem(t his.fallbackSelection);s&&(this.selectedValues=[this.fallbackSelection])}}else t his._selection.clear()},_selectionChange:function(){var e=this._selection.get(); this.multi?this._setSelectedItems(e):(this._setSelectedItems([e]),this._setSelec tedItem(e))},_toggleSelected:function(e){var t=this.selectedValues.indexOf(e),l= t<0;l?this.push("selectedValues",e):this.splice("selectedValues",t,1)},_valuesTo Items:function(e){return null==e?null:e.map(function(e){return this._valueToItem (e)},this)}},Polymer.IronMultiSelectableBehavior=[Polymer.IronSelectableBehavior ,Polymer.IronMultiSelectableBehaviorImpl]</script> <script>Polymer.IronMenuBehav iorImpl={properties:{focusedItem:{observer:"_focusedItemChanged",readOnly:!0,typ e:Object},attrForItemTitle:{type:String}},_SEARCH_RESET_TIMEOUT_MS:1e3,hostAttri butes:{role:"menu",tabindex:"0"},observers:["_updateMultiselectable(multi)"],lis teners:{focus:"_onFocus",keydown:"_onKeydown","iron-items-changed":"_onIronItems Changed"},keyBindings:{up:"_onUpKey",down:"_onDownKey",esc:"_onEscKey","shift+ta b:keydown":"_onShiftTabDown"},attached:function(){this._resetTabindices()},selec t:function(e){this._defaultFocusAsync&&(this.cancelAsync(this._defaultFocusAsync ),this._defaultFocusAsync=null);var t=this._valueToItem(e);t&&t.hasAttribute("di sabled")||(this._setFocusedItem(t),Polymer.IronMultiSelectableBehaviorImpl.selec t.apply(this,arguments))},_resetTabindices:function(){var e=this.multi?this.sele ctedItems&&this.selectedItems[0]:this.selectedItem;this.items.forEach(function(t ){t.setAttribute("tabindex",t===e?"0":"-1")},this)},_updateMultiselectable:funct ion(e){e?this.setAttribute("aria-multiselectable","true"):this.removeAttribute(" aria-multiselectable")},_focusWithKeyboardEvent:function(e){this.cancelDebouncer ("_clearSearchText");var t=this._searchText||"",s=e.key&&1==e.key.length?e.key:S tring.fromCharCode(e.keyCode);t+=s.toLocaleLowerCase();for(var i,o=t.length,n=0; i=this.items[n];n++)if(!i.hasAttribute("disabled")){var r=this.attrForItemTitle| |"textContent",a=(i[r]||i.getAttribute(r)||"").trim();if(!(a.length<o)&&a.slice( 0,o).toLocaleLowerCase()==t){this._setFocusedItem(i);break}}this._searchText=t,t his.debounce("_clearSearchText",this._clearSearchText,this._SEARCH_RESET_TIMEOUT _MS)},_clearSearchText:function(){this._searchText=""},_focusPrevious:function() {for(var e=this.items.length,t=Number(this.indexOf(this.focusedItem)),s=1;s<e+1; s++){var i=this.items[(t-s+e)%e];if(!i.hasAttribute("disabled")){var o=Polymer.d om(i).getOwnerRoot()||document;if(this._setFocusedItem(i),Polymer.dom(o).activeE lement==i)return}}},_focusNext:function(){for(var e=this.items.length,t=Number(t his.indexOf(this.focusedItem)),s=1;s<e+1;s++){var i=this.items[(t+s)%e];if(!i.ha sAttribute("disabled")){var o=Polymer.dom(i).getOwnerRoot()||document;if(this._s etFocusedItem(i),Polymer.dom(o).activeElement==i)return}}},_applySelection:funct ion(e,t){t?e.setAttribute("aria-selected","true"):e.removeAttribute("aria-select ed"),Polymer.IronSelectableBehavior._applySelection.apply(this,arguments)},_focu sedItemChanged:function(e,t){t&&t.setAttribute("tabindex","-1"),e&&(e.setAttribu te("tabindex","0"),e.focus())},_onIronItemsChanged:function(e){e.detail.addedNod es.length&&this._resetTabindices()},_onShiftTabDown:function(e){var t=this.getAt tribute("tabindex");Polymer.IronMenuBehaviorImpl._shiftTabPressed=!0,this._setFo cusedItem(null),this.setAttribute("tabindex","-1"),this.async(function(){this.se tAttribute("tabindex",t),Polymer.IronMenuBehaviorImpl._shiftTabPressed=!1},1)},_ onFocus:function(e){if(!Polymer.IronMenuBehaviorImpl._shiftTabPressed){var t=Pol ymer.dom(e).rootTarget;(t===this||"undefined"==typeof t.tabIndex||this.isLightDe scendant(t))&&(this._defaultFocusAsync=this.async(function(){var e=this.multi?th is.selectedItems&&this.selectedItems[0]:this.selectedItem;this._setFocusedItem(n ull),e?this._setFocusedItem(e):this.items[0]&&this._focusNext()}))}},_onUpKey:fu nction(e){this._focusPrevious(),e.detail.keyboardEvent.preventDefault()},_onDown Key:function(e){this._focusNext(),e.detail.keyboardEvent.preventDefault()},_onEs cKey:function(e){this.focusedItem.blur()},_onKeydown:function(e){this.keyboardEv entMatchesKeys(e,"up down esc")||this._focusWithKeyboardEvent(e),e.stopPropagati on()},_activateHandler:function(e){Polymer.IronSelectableBehavior._activateHandl er.call(this,e),e.stopPropagation()}},Polymer.IronMenuBehaviorImpl._shiftTabPres sed=!1,Polymer.IronMenuBehavior=[Polymer.IronMultiSelectableBehavior,Polymer.Iro nA11yKeysBehavior,Polymer.IronMenuBehaviorImpl]</script> <dom-module id="paper-m enu-shared-styles" assetpath="/res/imp/bower_components/paper-menu/"> <template> <style>.selectable-content>::content>.iron-selected{font-weight:700;@apply(--pa per-menu-selected-item)}.selectable-content>::content>[disabled]{color:var(--pap er-menu-disabled-color,--disabled-text-color)}.selectable-content>::content>:foc us{position:relative;outline:0;@apply(--paper-menu-focused-item)}.selectable-con tent>::content>:focus:after{@apply(--layout-fit);background:currentColor;opacity :var(--dark-divider-opacity);content:'';pointer-events:none;@apply(--paper-menu- focused-item-after)}.selectable-content>::content>[colored]:focus:after{opacity: .26}</style> </template> </dom-module> <dom-module id="paper-menu" assetpath="/r es/imp/bower_components/paper-menu/"> <template> <style include="paper-menu-shar ed-styles"></style> <style>:host{display:block;padding:8px 0;background:var(--pa per-menu-background-color,--primary-background-color);color:var(--paper-menu-col or,--primary-text-color);@apply(--paper-menu)}</style> <div class="selectable-co ntent"> <content></content> </div> </template> <script>!function(){Polymer({is:" paper-menu",behaviors:[Polymer.IronMenuBehavior]})}()</script> </dom-module> <sc ript>Polymer.PaperSpinnerBehavior={listeners:{animationend:"__reset",webkitAnima tionEnd:"__reset"},properties:{active:{type:Boolean,value:!1,reflectToAttribute: !0,observer:"__activeChanged"},alt:{type:String,value:"loading",observer:"__altC hanged"},__coolingDown:{type:Boolean,value:!1}},__computeContainerClasses:functi on(e,t){return[e||t?"active":"",t?"cooldown":""].join(" ")},__activeChanged:func tion(e,t){this.__setAriaHidden(!e),this.__coolingDown=!e&&t},__altChanged:functi on(e){e===this.getPropertyInfo("alt").value?this.alt=this.getAttribute("aria-lab el")||e:(this.__setAriaHidden(""===e),this.setAttribute("aria-label",e))},__setA riaHidden:function(e){var t="aria-hidden";e?this.setAttribute(t,"true"):this.rem oveAttribute(t)},__reset:function(){this.active=!1,this.__coolingDown=!1}}</scri pt> <dom-module id="paper-spinner-styles" assetpath="/res/imp/bower_components/p aper-spinner/"> <template> <style>:host{display:inline-block;position:relative;w idth:28px;height:28px;--paper-spinner-container-rotation-duration:1568ms;--paper -spinner-expand-contract-duration:1333ms;--paper-spinner-full-cycle-duration:533 2ms;--paper-spinner-cooldown-duration:400ms}#spinnerContainer{width:100%;height: 100%;direction:ltr}#spinnerContainer.active{-webkit-animation:container-rotate v ar(--paper-spinner-container-rotation-duration) linear infinite;animation:contai ner-rotate var(--paper-spinner-container-rotation-duration) linear infinite}@-we bkit-keyframes container-rotate{to{-webkit-transform:rotate(360deg)}}@keyframes container-rotate{to{transform:rotate(360deg)}}.spinner-layer{position:absolute;w idth:100%;height:100%;opacity:0;white-space:nowrap;border-color:var(--paper-spin ner-color,--google-blue-500)}.layer-1{border-color:var(--paper-spinner-layer-1-c olor,--google-blue-500)}.layer-2{border-color:var(--paper-spinner-layer-2-color, --google-red-500)}.layer-3{border-color:var(--paper-spinner-layer-3-color,--goog le-yellow-500)}.layer-4{border-color:var(--paper-spinner-layer-4-color,--google- green-500)}.active .spinner-layer{-webkit-animation-name:fill-unfill-rotate;-web kit-animation-duration:var(--paper-spinner-full-cycle-duration);-webkit-animatio n-timing-function:cubic-bezier(.4,0,.2,1);-webkit-animation-iteration-count:infi nite;animation-name:fill-unfill-rotate;animation-duration:var(--paper-spinner-fu ll-cycle-duration);animation-timing-function:cubic-bezier(.4,0,.2,1);animation-i teration-count:infinite;opacity:1}.active .spinner-layer.layer-1{-webkit-animati on-name:fill-unfill-rotate,layer-1-fade-in-out;animation-name:fill-unfill-rotate ,layer-1-fade-in-out}.active .spinner-layer.layer-2{-webkit-animation-name:fill- unfill-rotate,layer-2-fade-in-out;animation-name:fill-unfill-rotate,layer-2-fade -in-out}.active .spinner-layer.layer-3{-webkit-animation-name:fill-unfill-rotate ,layer-3-fade-in-out;animation-name:fill-unfill-rotate,layer-3-fade-in-out}.acti ve .spinner-layer.layer-4{-webkit-animation-name:fill-unfill-rotate,layer-4-fade -in-out;animation-name:fill-unfill-rotate,layer-4-fade-in-out}@-webkit-keyframes fill-unfill-rotate{12.5%{-webkit-transform:rotate(135deg)}25%{-webkit-transform :rotate(270deg)}37.5%{-webkit-transform:rotate(405deg)}50%{-webkit-transform:rot ate(540deg)}62.5%{-webkit-transform:rotate(675deg)}75%{-webkit-transform:rotate( 810deg)}87.5%{-webkit-transform:rotate(945deg)}to{-webkit-transform:rotate(1080d eg)}}@keyframes fill-unfill-rotate{12.5%{transform:rotate(135deg)}25%{transform: rotate(270deg)}37.5%{transform:rotate(405deg)}50%{transform:rotate(540deg)}62.5% {transform:rotate(675deg)}75%{transform:rotate(810deg)}87.5%{transform:rotate(94 5deg)}to{transform:rotate(1080deg)}}@-webkit-keyframes layer-1-fade-in-out{0%{op acity:1}25%{opacity:1}26%{opacity:0}89%{opacity:0}90%{opacity:1}to{opacity:1}}@k eyframes layer-1-fade-in-out{0%{opacity:1}25%{opacity:1}26%{opacity:0}89%{opacit y:0}90%{opacity:1}to{opacity:1}}@-webkit-keyframes layer-2-fade-in-out{0%{opacit y:0}15%{opacity:0}25%{opacity:1}50%{opacity:1}51%{opacity:0}to{opacity:0}}@keyfr ames layer-2-fade-in-out{0%{opacity:0}15%{opacity:0}25%{opacity:1}50%{opacity:1} 51%{opacity:0}to{opacity:0}}@-webkit-keyframes layer-3-fade-in-out{0%{opacity:0} 40%{opacity:0}50%{opacity:1}75%{opacity:1}76%{opacity:0}to{opacity:0}}@keyframes layer-3-fade-in-out{0%{opacity:0}40%{opacity:0}50%{opacity:1}75%{opacity:1}76%{ opacity:0}to{opacity:0}}@-webkit-keyframes layer-4-fade-in-out{0%{opacity:0}65%{ opacity:0}75%{opacity:1}90%{opacity:1}to{opacity:0}}@keyframes layer-4-fade-in-o ut{0%{opacity:0}65%{opacity:0}75%{opacity:1}90%{opacity:1}to{opacity:0}}.circle- clipper{display:inline-block;position:relative;width:50%;height:100%;overflow:hi dden;border-color:inherit}.spinner-layer::after{left:45%;width:10%;border-top-st yle:solid}.circle-clipper::after,.spinner-layer::after{content:'';box-sizing:bor der-box;position:absolute;top:0;border-width:var(--paper-spinner-stroke-width,3p x);border-color:inherit;border-radius:50%}.circle-clipper::after{bottom:0;width: 200%;border-style:solid;border-bottom-color:transparent!important}.circle-clippe r.left::after{left:0;border-right-color:transparent!important;-webkit-transform: rotate(129deg);transform:rotate(129deg)}.circle-clipper.right::after{left:-100%; border-left-color:transparent!important;-webkit-transform:rotate(-129deg);transf orm:rotate(-129deg)}.active .circle-clipper::after,.active .gap-patch::after{-we bkit-animation-duration:var(--paper-spinner-expand-contract-duration);-webkit-an imation-timing-function:cubic-bezier(.4,0,.2,1);-webkit-animation-iteration-coun t:infinite;animation-duration:var(--paper-spinner-expand-contract-duration);anim ation-timing-function:cubic-bezier(.4,0,.2,1);animation-iteration-count:infinite }.active .circle-clipper.left::after{-webkit-animation-name:left-spin;animation- name:left-spin}.active .circle-clipper.right::after{-webkit-animation-name:right -spin;animation-name:right-spin}@-webkit-keyframes left-spin{0%{-webkit-transfor m:rotate(130deg)}50%{-webkit-transform:rotate(-5deg)}to{-webkit-transform:rotate (130deg)}}@keyframes left-spin{0%{transform:rotate(130deg)}50%{transform:rotate( -5deg)}to{transform:rotate(130deg)}}@-webkit-keyframes right-spin{0%{-webkit-tra nsform:rotate(-130deg)}50%{-webkit-transform:rotate(5deg)}to{-webkit-transform:r otate(-130deg)}}@keyframes right-spin{0%{transform:rotate(-130deg)}50%{transform :rotate(5deg)}to{transform:rotate(-130deg)}}#spinnerContainer.cooldown{-webkit-a nimation:container-rotate var(--paper-spinner-container-rotation-duration) linea r infinite,fade-out var(--paper-spinner-cooldown-duration) cubic-bezier(.4,0,.2, 1);animation:container-rotate var(--paper-spinner-container-rotation-duration) l inear infinite,fade-out var(--paper-spinner-cooldown-duration) cubic-bezier(.4,0 ,.2,1)}@-webkit-keyframes fade-out{0%{opacity:1}to{opacity:0}}@keyframes fade-ou t{0%{opacity:1}to{opacity:0}}</style> </template> </dom-module> <dom-module id=" paper-spinner-lite" assetpath="/res/imp/bower_components/paper-spinner/"> <templ ate strip-whitespace=""> <style include="paper-spinner-styles"></style> <div id= "spinnerContainer" class-name="[[__computeContainerClasses(active, __coolingDown )]]"> <div class="spinner-layer"> <div class="circle-clipper left"></div> <div c lass="circle-clipper right"></div> </div> </div> </template> <script>Polymer({is :"paper-spinner-lite",behaviors:[Polymer.PaperSpinnerBehavior]})</script> </dom- module> <script>!function(){"use strict";Polymer.IronJsonpLibraryBehavior={prope rties:{libraryLoaded:{type:Boolean,value:!1,notify:!0,readOnly:!0},libraryErrorM essage:{type:String,value:null,notify:!0,readOnly:!0}},observers:["_libraryUrlCh anged(libraryUrl)"],_libraryUrlChanged:function(r){this._isReady&&this.libraryUr l&&this._loadLibrary()},_libraryLoadCallback:function(r,i){r?(console.warn("Libr ary load failed:",r.message),this._setLibraryErrorMessage(r.message)):(this._set LibraryErrorMessage(null),this._setLibraryLoaded(!0),this.notifyEvent&&this.fire (this.notifyEvent,i))},_loadLibrary:function(){r.require(this.libraryUrl,this._l ibraryLoadCallback.bind(this),this.callbackName)},ready:function(){this._isReady =!0,this.libraryUrl&&this._loadLibrary()}};var r={apiMap:{},require:function(r,t ,e){var a=this.nameFromUrl(r);this.apiMap[a]||(this.apiMap[a]=new i(a,r,e)),this .apiMap[a].requestNotify(t)},nameFromUrl:function(r){return r.replace(/[\:\/\%\? \&\.\=\-\,]/g,"_")+"_api"}},i=function(r,i,t){if(this.notifiers=[],!t){if(!(i.in dexOf(this.callbackMacro)>=0))return void(this.error=new Error("IronJsonpLibrary Behavior a %%callback%% parameter is required in libraryUrl"));t=r+"_loaded",i=i .replace(this.callbackMacro,t)}this.callbackName=t,window[this.callbackName]=thi s.success.bind(this),this.addScript(i)};i.prototype={callbackMacro:"%%callback%% ",loaded:!1,addScript:function(r){var i=document.createElement("script");i.src=r ,i.onerror=this.handleError.bind(this);var t=document.querySelector("script")||d ocument.body;t.parentNode.insertBefore(i,t),this.script=i},removeScript:function (){this.script.parentNode&&this.script.parentNode.removeChild(this.script),this. script=null},handleError:function(r){this.error=new Error("Library failed to loa d"),this.notifyAll(),this.cleanup()},success:function(){this.loaded=!0,this.resu lt=Array.prototype.slice.call(arguments),this.notifyAll(),this.cleanup()},cleanu p:function(){delete window[this.callbackName]},notifyAll:function(){this.notifie rs.forEach(function(r){r(this.error,this.result)}.bind(this)),this.notifiers=[]} ,requestNotify:function(r){this.loaded||this.error?r(this.error,this.result):thi s.notifiers.push(r)}}}()</script> <script>Polymer({is:"iron-jsonp-library",behav iors:[Polymer.IronJsonpLibraryBehavior],properties:{libraryUrl:String,callbackNa me:String,notifyEvent:String}})</script> <script>Polymer({is:"google-js-api",beh aviors:[Polymer.IronJsonpLibraryBehavior],properties:{libraryUrl:{type:String,va lue:"https://apis.google.com/js/api.js?onload=%%callback%%"},notifyEvent:{type:S tring,value:"js-api-load"}},get api(){return gapi}})</script> <script>!function( ){var e={appPackageName:"apppackagename",clientId:"clientid",cookiePolicy:"cooki epolicy",hostedDomain:"hostedDomain",openidPrompt:"prompt",requestVisibleActions :"requestvisibleactions"},t={_clientId:null,get clientId(){return this._clientId },set clientId(e){if(this._clientId&&e&&e!=this._clientId)throw new Error("clien tId cannot change. Values do not match. New: "+e+" Old:"+this._clientId);e&&e!=t his._clientId&&(this._clientId=e,this.initAuth2())},_cookiePolicy:"single_host_o rigin",get cookiePolicy(){return this._cookiePolicy},set cookiePolicy(e){e&&(thi s._cookiePolicy=e)},_appPackageName:"",get appPackageName(){return this._appPack ageName},set appPackageName(e){if(this._appPackageName&&e&&e!=this._appPackageNa me)throw new Error("appPackageName cannot change. Values do not match. New: "+e+ " Old: "+this._appPackageName);e&&(this._appPackageName=e)},_requestVisibleActio ns:"",get requestVisibleactions(){return this._requestVisibleActions},set reques tVisibleactions(e){if(this._requestVisibleActions&&e&&e!=this._requestVisibleAct ions)throw new Error("requestVisibleactions cannot change. Values do not match. New: "+e+" Old: "+this._requestVisibleActions);e&&(this._requestVisibleActions=e )},_hostedDomain:"",get hostedDomain(){return this._hostedDomain},set hostedDoma in(e){if(this._hostedDomain&&e&&e!=this._hostedDomain)throw new Error("hostedDom ain cannot change. Values do not match. New: "+e+" Old: "+this._hostedDomain);e& &(this._hostedDomain=e)},_openidPrompt:"",get openidPrompt(){return this._openid Prompt},set openidPrompt(e){if("string"!=typeof e)throw new Error("openidPrompt must be a string. Received "+typeof e);if(e){var t=e.split(" ");t=t.map(function (e){return e.trim()}),t=t.filter(function(e){return e});var i={none:0,login:0,co nsent:0,select_account:0};t.forEach(function(e){if("none"==e&&t.length>1)throw n ew Error("none cannot be combined with other openidPrompt values");if(!(e in i)) throw new Error("invalid openidPrompt value "+e+". Valid values: "+Object.keys(i ).join(", "))})}this._openidPrompt=e},_offline:!1,get offline(){return this._off line},set offline(e){this._offline=e,this.updateAdditionalAuth()},_offlineAlways Prompt:!1,get offlineAlwaysPrompt(){return this._offlineAlwaysPrompt},set offlin eAlwaysPrompt(e){this._offlineAlwaysPrompt=e,this.updateAdditionalAuth()},offlin eGranted:!1,_apiLoader:null,_requestedScopeArray:[],get requestedScopes(){return this._requestedScopeArray.join(" ")},_signedIn:!1,_grantedScopeArray:[],_needAd ditionalAuth:!0,_hasPlusScopes:!1,signinAwares:[],init:function(){this._apiLoade r=document.createElement("google-js-api"),this._apiLoader.addEventListener("js-a pi-load",this.loadAuth2.bind(this))},loadAuth2:function(){gapi.load("auth2",this .initAuth2.bind(this))},initAuth2:function(){if("gapi"in window&&"auth2"in windo w.gapi&&this.clientId){var e=gapi.auth2.init({client_id:this.clientId,cookie_pol icy:this.cookiePolicy,scope:this.requestedScopes,hosted_domain:this.hostedDomain });e.currentUser.listen(this.handleUserUpdate.bind(this)),e.then(function(){},fu nction(e){console.error(e)})}},handleUserUpdate:function(e){var t=e.isSignedIn() ;if(t!=this._signedIn){this._signedIn=t;for(var i=0;i<this.signinAwares.length;i ++)this.signinAwares[i]._setSignedIn(t)}this._grantedScopeArray=this.strToScopeA rray(e.getGrantedScopes()),this.updateAdditionalAuth();for(var n=e.getAuthRespon se(),i=0;i<this.signinAwares.length;i++)this.signinAwares[i]._updateScopeStatus( n)},setOfflineCode:function(e){for(var t=0;t<this.signinAwares.length;t++)this.s igninAwares[t]._updateOfflineCode(e)},strToScopeArray:function(e){if(!e)return[] ;for(var t=e.replace(/\ +/g," ").trim().split(" "),i=0;i<t.length;i++)t[i]=t[i]. toLowerCase(),"https://www.googleapis.com/auth/userinfo.profile"===t[i]&&(t[i]=" profile"),"https://www.googleapis.com/auth/userinfo.email"===t[i]&&(t[i]="email" );return t.filter(function(e,t,i){return i.indexOf(e)===t})},isPlusScope:functio n(e){return e.indexOf("/auth/games")>-1||e.indexOf("auth/plus.")>-1&&e.indexOf(" auth/plus.me")<0},hasGrantedScopes:function(e){for(var t=this.strToScopeArray(e) ,i=0;i<t.length;i++)if(this._grantedScopeArray.indexOf(t[i])===-1)return!1;retur n!0},requestScopes:function(e){for(var t=this.strToScopeArray(e),i=!1,n=0;n<t.le ngth;n++)this._requestedScopeArray.indexOf(t[n])===-1&&(this._requestedScopeArra y.push(t[n]),i=!0);i&&(this.updateAdditionalAuth(),this.updatePlusScopes())},upd ateAdditionalAuth:function(){var e=!1;if(!this.offlineAlwaysPrompt&&!this.offlin e||this.offlineGranted){for(var t=0;t<this._requestedScopeArray.length;t++)if(th is._grantedScopeArray.indexOf(this._requestedScopeArray[t])===-1){e=!0;break}}el se e=!0;if(this._needAdditionalAuth!=e){this._needAdditionalAuth=e;for(var t=0;t <this.signinAwares.length;t++)this.signinAwares[t]._setNeedAdditionalAuth(e)}},u pdatePlusScopes:function(){for(var e=!1,t=0;t<this._requestedScopeArray.length;t ++)if(this.isPlusScope(this._requestedScopeArray[t])){e=!0;break}if(this._hasPlu sScopes!=e){this._hasPlusScopes=e;for(var t=0;t<this.signinAwares.length;t++)thi s.signinAwares[t]._setHasPlusScopes(e)}},attachSigninAware:function(e){this.sign inAwares.indexOf(e)==-1?(this.signinAwares.push(e),e._setNeedAdditionalAuth(this ._needAdditionalAuth),e._setSignedIn(this._signedIn),e._setHasPlusScopes(this._h asPlusScopes)):console.warn("signinAware attached more than once",e)},detachSign inAware:function(e){var t=this.signinAwares.indexOf(e);t!=-1?this.signinAwares.s plice(t,1):console.warn("Trying to detach unattached signin-aware")},getMissingS copes:function(){return this._requestedScopeArray.filter(function(e){return this ._grantedScopeArray.indexOf(e)===-1}.bind(this)).join(" ")},assertAuthInitialize d:function(){if(!this.clientId)throw new Error("AuthEngine not initialized. clie ntId has not been configured.");if(!("gapi"in window))throw new Error("AuthEngin e not initialized. gapi has not loaded.");if(!("auth2"in window.gapi))throw new Error("AuthEngine not initialized. auth2 not loaded.")},signIn:function(){this.a ssertAuthInitialized();var i={scope:this.getMissingScopes()};Object.keys(e).forE ach(function(t){this[t]&&""!==this[t]&&(i[e[t]]=this[t])},this);var n,o=gapi.aut h2.getAuthInstance().currentUser.get();this.offline||this.offlineAlwaysPrompt?(i .redirect_uri="postmessage",this.offlineAlwaysPrompt&&(i.approval_prompt="force" ),n=gapi.auth2.getAuthInstance().grantOfflineAccess(i)):n=o.getGrantedScopes()?o .grant(i):gapi.auth2.getAuthInstance().signIn(i),n.then(function(e){var i;e.code ?(t.offlineGranted=!0,i=gapi.auth2.getAuthInstance().currentUser.get(),t.setOffl ineCode(e.code)):i=e;i.getAuthResponse()},function(e){"Access denied."!==e.reaso n&&this.signinAwares.forEach(function(t){t.errorNotify(e)})}.bind(this))},signOu t:function(){this.assertAuthInitialized(),gapi.auth2.getAuthInstance().signOut() .then(function(){},function(e){console.error(e)})}};t.init(),Polymer({is:"google -signin-aware",properties:{appPackageName:{type:String,observer:"_appPackageName Changed"},clientId:{type:String,observer:"_clientIdChanged"},cookiePolicy:{type: String,observer:"_cookiePolicyChanged"},requestVisibleActions:{type:String,obser ver:"_requestVisibleActionsChanged"},hostedDomain:{type:String,observer:"_hosted DomainChanged"},offline:{type:Boolean,value:!1,observer:"_offlineChanged"},offli neAlwaysPrompt:{type:Boolean,value:!1,observer:"_offlineAlwaysPromptChanged"},sc opes:{type:String,value:"profile",observer:"_scopesChanged"},openidPrompt:{type: String,value:"",observer:"_openidPromptChanged"},signedIn:{type:Boolean,notify:! 0,readOnly:!0},isAuthorized:{type:Boolean,notify:!0,readOnly:!0,value:!1},needAd ditionalAuth:{type:Boolean,notify:!0,readOnly:!0},hasPlusScopes:{type:Boolean,va lue:!1,notify:!0,readOnly:!0}},attached:function(){t.attachSigninAware(this)},de tached:function(){t.detachSigninAware(this)},signIn:function(){t.signIn()},signO ut:function(){t.signOut()},errorNotify:function(e){this.fire("google-signin-awar e-error",e)},_appPackageNameChanged:function(e,i){t.appPackageName=e},_clientIdC hanged:function(e,i){t.clientId=e},_cookiePolicyChanged:function(e,i){t.cookiePo licy=e},_requestVisibleActionsChanged:function(e,i){t.requestVisibleActions=e},_ hostedDomainChanged:function(e,i){t.hostedDomain=e},_offlineChanged:function(e,i ){t.offline=e},_offlineAlwaysPromptChanged:function(e,i){t.offlineAlwaysPrompt=e },_scopesChanged:function(e,i){t.requestScopes(e),this._updateScopeStatus(void 0 )},_openidPromptChanged:function(e,i){t.openidPrompt=e},_updateScopeStatus:funct ion(e){var i=this.signedIn&&t.hasGrantedScopes(this.scopes);i!==this.isAuthorize d&&(this._setIsAuthorized(i),i?this.fire("google-signin-aware-success",e):this.f ire("google-signin-aware-signed-out",e))},_updateOfflineCode:function(e){e&&this .fire("google-signin-offline-success",{code:e})}})}()</script> <dom-module id="a uth-signin" assetpath="/res/imp/common/"> <template> <style>#avatar{border-radiu s:5px}a{color:#fff}.center{vertical-align:middle}</style> <google-signin-aware i d="aware" client-id="[[client_id]]" offline="" scopes="email" on-google-signin-a ware-success="_onSignin" on-google-signin-aware-signed-out="_onSignout"> </googl e-signin-aware> <template is="dom-if" if="[[!signed_in]]"> <div id="signinContai ner"> <a on-tap="signIn" href="#">Sign in</a> </div> </template> <template is="d om-if" if="[[signed_in]]"> <img class="center" id="avatar" src="[[profile.imageU rl]]" width="30" height="30"> <span class="center">[[profile.email]]</span> <spa n class="center">|</span> <a class="center" on-tap="signOut" href="#">Sign out</ a> </template> </template> <script>"use strict";Polymer({is:"auth-signin",proper ties:{auth_headers:{type:Object,computed:"_makeHeader(auth_response)",notify:!0} ,auth_response:{type:Object,notify:!0},client_id:{type:String},profile:{type:Obj ect,readOnly:!0,notify:!0},signed_in:{type:Boolean,readOnly:!0,value:!1,notify:! 0}},ready:function(){this.client_id&&window.setTimeout(function(){if(!this.signe d_in&&!this._signingIn)if("gapi"in window&&"auth2"in window.gapi){var i=gapi.aut h2.getAuthInstance().currentUser.get();i&&i.getAuthResponse().access_token?this. _onSignin():window.setTimeout(this.ready.bind(this),50)}else window.setTimeout(t his.ready.bind(this),50)}.bind(this),50)},_onSignin:function(){this._signingIn=! 0;var i=gapi.auth2.getAuthInstance().currentUser.get(),e=i.getBasicProfile();thi s._setProfile({email:e.getEmail(),imageUrl:e.getImageUrl()}),this.set("auth_resp onse",i.getAuthResponse()),this._setSigned_in(!0),this.fire("auth-signin"),this. async(function(){console.log("reloading credentials"),i.reloadAuthResponse(),thi s._onSignin()},1e3*this.auth_response.expires_in),this._signingIn=!1},_onSignout :function(i){this._setSigned_in(!1),this._setProfile(null)},_makeHeader:function (i){return i?{authorization:i.token_type+" "+i.access_token}:{}},signIn:function (){this.$.aware.signIn()},signOut:function(){this.$.aware.signOut()}})</script> </dom-module> <dom-module id="iron-a11y-announcer" assetpath="/res/imp/bower_com ponents/iron-a11y-announcer/"> <template> <style>:host{display:inline-block;posi tion:fixed;clip:rect(0,0,0,0)}</style> <div aria-live$="[[mode]]">[[_text]]</div > </template> <script>!function(){"use strict";Polymer.IronA11yAnnouncer=Polymer ({is:"iron-a11y-announcer",properties:{mode:{type:String,value:"polite"},_text:{ type:String,value:""}},created:function(){Polymer.IronA11yAnnouncer.instance||(P olymer.IronA11yAnnouncer.instance=this),document.body.addEventListener("iron-ann ounce",this._onIronAnnounce.bind(this))},announce:function(n){this._text="",this .async(function(){this._text=n},100)},_onIronAnnounce:function(n){n.detail&&n.de tail.text&&this.announce(n.detail.text)}}),Polymer.IronA11yAnnouncer.instance=nu ll,Polymer.IronA11yAnnouncer.requestAvailability=function(){Polymer.IronA11yAnno uncer.instance||(Polymer.IronA11yAnnouncer.instance=document.createElement("iron -a11y-announcer")),document.body.appendChild(Polymer.IronA11yAnnouncer.instance) }}()</script> </dom-module> <script>Polymer.IronFitBehavior={properties:{sizingT arget:{type:Object,value:function(){return this}},fitInto:{type:Object,value:win dow},noOverlap:{type:Boolean},positionTarget:{type:Element},horizontalAlign:{typ e:String},verticalAlign:{type:String},dynamicAlign:{type:Boolean},horizontalOffs et:{type:Number,value:0,notify:!0},verticalOffset:{type:Number,value:0,notify:!0 },autoFitOnAttach:{type:Boolean,value:!1},_fitInfo:{type:Object}},get _fitWidth( ){var t;return t=this.fitInto===window?this.fitInto.innerWidth:this.fitInto.getB oundingClientRect().width},get _fitHeight(){var t;return t=this.fitInto===window ?this.fitInto.innerHeight:this.fitInto.getBoundingClientRect().height},get _fitL eft(){var t;return t=this.fitInto===window?0:this.fitInto.getBoundingClientRect( ).left},get _fitTop(){var t;return t=this.fitInto===window?0:this.fitInto.getBou ndingClientRect().top},get _defaultPositionTarget(){var t=Polymer.dom(this).pare ntNode;return t&&t.nodeType===Node.DOCUMENT_FRAGMENT_NODE&&(t=t.host),t},get _lo caleHorizontalAlign(){if(this._isRTL){if("right"===this.horizontalAlign)return"l eft";if("left"===this.horizontalAlign)return"right"}return this.horizontalAlign} ,attached:function(){this._isRTL="rtl"==window.getComputedStyle(this).direction, this.positionTarget=this.positionTarget||this._defaultPositionTarget,this.autoFi tOnAttach&&("none"===window.getComputedStyle(this).display?setTimeout(function() {this.fit()}.bind(this)):this.fit())},fit:function(){this.position(),this.constr ain(),this.center()},_discoverInfo:function(){if(!this._fitInfo){var t=window.ge tComputedStyle(this),i=window.getComputedStyle(this.sizingTarget);this._fitInfo= {inlineStyle:{top:this.style.top||"",left:this.style.left||"",position:this.styl e.position||""},sizerInlineStyle:{maxWidth:this.sizingTarget.style.maxWidth||"", maxHeight:this.sizingTarget.style.maxHeight||"",boxSizing:this.sizingTarget.styl e.boxSizing||""},positionedBy:{vertically:"auto"!==t.top?"top":"auto"!==t.bottom ?"bottom":null,horizontally:"auto"!==t.left?"left":"auto"!==t.right?"right":null },sizedBy:{height:"none"!==i.maxHeight,width:"none"!==i.maxWidth,minWidth:parseI nt(i.minWidth,10)||0,minHeight:parseInt(i.minHeight,10)||0},margin:{top:parseInt (t.marginTop,10)||0,right:parseInt(t.marginRight,10)||0,bottom:parseInt(t.margin Bottom,10)||0,left:parseInt(t.marginLeft,10)||0}},this.verticalOffset&&(this._fi tInfo.margin.top=this._fitInfo.margin.bottom=this.verticalOffset,this._fitInfo.i nlineStyle.marginTop=this.style.marginTop||"",this._fitInfo.inlineStyle.marginBo ttom=this.style.marginBottom||"",this.style.marginTop=this.style.marginBottom=th is.verticalOffset+"px"),this.horizontalOffset&&(this._fitInfo.margin.left=this._ fitInfo.margin.right=this.horizontalOffset,this._fitInfo.inlineStyle.marginLeft= this.style.marginLeft||"",this._fitInfo.inlineStyle.marginRight=this.style.margi nRight||"",this.style.marginLeft=this.style.marginRight=this.horizontalOffset+"p x")}},resetFit:function(){var t=this._fitInfo||{};for(var i in t.sizerInlineStyl e)this.sizingTarget.style[i]=t.sizerInlineStyle[i];for(var i in t.inlineStyle)th is.style[i]=t.inlineStyle[i];this._fitInfo=null},refit:function(){var t=this.siz ingTarget.scrollLeft,i=this.sizingTarget.scrollTop;this.resetFit(),this.fit(),th is.sizingTarget.scrollLeft=t,this.sizingTarget.scrollTop=i},position:function(){ if(this.horizontalAlign||this.verticalAlign){this._discoverInfo(),this.style.pos ition="fixed",this.sizingTarget.style.boxSizing="border-box",this.style.left="0p x",this.style.top="0px";var t=this.getBoundingClientRect(),i=this.__getNormalize dRect(this.positionTarget),e=this.__getNormalizedRect(this.fitInto),n=this._fitI nfo.margin,o={width:t.width+n.left+n.right,height:t.height+n.top+n.bottom},h=thi s.__getPosition(this._localeHorizontalAlign,this.verticalAlign,o,i,e),s=h.left+n .left,l=h.top+n.top,r=Math.min(e.right-n.right,s+t.width),a=Math.min(e.bottom-n. bottom,l+t.height),g=this._fitInfo.sizedBy.minWidth,f=this._fitInfo.sizedBy.minH eight;s<n.left&&(s=n.left,r-s<g&&(s=r-g)),l<n.top&&(l=n.top,a-l<f&&(l=a-f)),this .sizingTarget.style.maxWidth=r-s+"px",this.sizingTarget.style.maxHeight=a-l+"px" ,this.style.left=s-t.left+"px",this.style.top=l-t.top+"px"}},constrain:function( ){if(!this.horizontalAlign&&!this.verticalAlign){this._discoverInfo();var t=this ._fitInfo;t.positionedBy.vertically||(this.style.position="fixed",this.style.top ="0px"),t.positionedBy.horizontally||(this.style.position="fixed",this.style.lef t="0px"),this.sizingTarget.style.boxSizing="border-box";var i=this.getBoundingCl ientRect();t.sizedBy.height||this.__sizeDimension(i,t.positionedBy.vertically,"t op","bottom","Height"),t.sizedBy.width||this.__sizeDimension(i,t.positionedBy.ho rizontally,"left","right","Width")}},_sizeDimension:function(t,i,e,n,o){this.__s izeDimension(t,i,e,n,o)},__sizeDimension:function(t,i,e,n,o){var h=this._fitInfo ,s=this.__getNormalizedRect(this.fitInto),l="Width"===o?s.width:s.height,r=i===n ,a=r?l-t[n]:t[e],g=h.margin[r?e:n],f="offset"+o,p=this[f]-this.sizingTarget[f];t his.sizingTarget.style["max"+o]=l-g-a-p+"px"},center:function(){if(!this.horizon talAlign&&!this.verticalAlign){this._discoverInfo();var t=this._fitInfo.position edBy;if(!t.vertically||!t.horizontally){this.style.position="fixed",t.vertically ||(this.style.top="0px"),t.horizontally||(this.style.left="0px");var i=this.getB oundingClientRect(),e=this.__getNormalizedRect(this.fitInto);if(!t.vertically){v ar n=e.top-i.top+(e.height-i.height)/2;this.style.top=n+"px"}if(!t.horizontally) {var o=e.left-i.left+(e.width-i.width)/2;this.style.left=o+"px"}}}},__getNormali zedRect:function(t){return t===document.documentElement||t===window?{top:0,left: 0,width:window.innerWidth,height:window.innerHeight,right:window.innerWidth,bott om:window.innerHeight}:t.getBoundingClientRect()},__getCroppedArea:function(t,i, e){var n=Math.min(0,t.top)+Math.min(0,e.bottom-(t.top+i.height)),o=Math.min(0,t. left)+Math.min(0,e.right-(t.left+i.width));return Math.abs(n)*i.width+Math.abs(o )*i.height},__getPosition:function(t,i,e,n,o){var h=[{verticalAlign:"top",horizo ntalAlign:"left",top:n.top,left:n.left},{verticalAlign:"top",horizontalAlign:"ri ght",top:n.top,left:n.right-e.width},{verticalAlign:"bottom",horizontalAlign:"le ft",top:n.bottom-e.height,left:n.left},{verticalAlign:"bottom",horizontalAlign:" right",top:n.bottom-e.height,left:n.right-e.width}];if(this.noOverlap){for(var s =0,l=h.length;s<l;s++){var r={};for(var a in h[s])r[a]=h[s][a];h.push(r)}h[0].to p=h[1].top+=n.height,h[2].top=h[3].top-=n.height,h[4].left=h[6].left+=n.width,h[ 5].left=h[7].left-=n.width}i="auto"===i?null:i,t="auto"===t?null:t;for(var g,s=0 ;s<h.length;s++){var f=h[s];if(!this.dynamicAlign&&!this.noOverlap&&f.verticalAl ign===i&&f.horizontalAlign===t){g=f;break}var p=!(i&&f.verticalAlign!==i||t&&f.h orizontalAlign!==t);if(this.dynamicAlign||p){g=g||f,f.croppedArea=this.__getCrop pedArea(f,e,o);var d=f.croppedArea-g.croppedArea;if((d<0||0===d&&p)&&(g=f),0===g .croppedArea&&p)break}}return g}}</script> <dom-module id="iron-overlay-backdrop " assetpath="/res/imp/bower_components/iron-overlay-behavior/"> <template> <styl e>:host{position:fixed;top:0;left:0;width:100%;height:100%;background-color:var( --iron-overlay-backdrop-background-color,#000);opacity:0;transition:opacity .2s; pointer-events:none;@apply(--iron-overlay-backdrop)}:host(.opened){opacity:var(- -iron-overlay-backdrop-opacity,.6);pointer-events:auto;@apply(--iron-overlay-bac kdrop-opened)}</style> <content></content> </template> </dom-module> <script>!fu nction(){"use strict";Polymer({is:"iron-overlay-backdrop",properties:{opened:{re flectToAttribute:!0,type:Boolean,value:!1,observer:"_openedChanged"}},listeners: {transitionend:"_onTransitionend"},created:function(){this.__openedRaf=null},att ached:function(){this.opened&&this._openedChanged(this.opened)},prepare:function (){this.opened&&!this.parentNode&&Polymer.dom(document.body).appendChild(this)}, open:function(){this.opened=!0},close:function(){this.opened=!1},complete:functi on(){this.opened||this.parentNode!==document.body||Polymer.dom(this.parentNode). removeChild(this)},_onTransitionend:function(e){e&&e.target===this&&this.complet e()},_openedChanged:function(e){if(e)this.prepare();else{var t=window.getCompute dStyle(this);"0s"!==t.transitionDuration&&0!=t.opacity||this.complete()}this.isA ttached&&(this.__openedRaf&&(window.cancelAnimationFrame(this.__openedRaf),this. __openedRaf=null),this.scrollTop=this.scrollTop,this.__openedRaf=window.requestA nimationFrame(function(){this.__openedRaf=null,this.toggleClass("opened",this.op ened)}.bind(this)))}})}()</script> <script>Polymer.IronOverlayManagerClass=funct ion(){this._overlays=[],this._minimumZ=101,this._backdropElement=null,Polymer.Ge stures.add(document,"tap",this._onCaptureClick.bind(this)),document.addEventList ener("focus",this._onCaptureFocus.bind(this),!0),document.addEventListener("keyd own",this._onCaptureKeyDown.bind(this),!0)},Polymer.IronOverlayManagerClass.prot otype={constructor:Polymer.IronOverlayManagerClass,get backdropElement(){return this._backdropElement||(this._backdropElement=document.createElement("iron-overl ay-backdrop")),this._backdropElement},get deepActiveElement(){for(var e=document .activeElement||document.body;e.root&&Polymer.dom(e.root).activeElement;)e=Polym er.dom(e.root).activeElement;return e},_bringOverlayAtIndexToFront:function(e){v ar t=this._overlays[e];if(t){var r=this._overlays.length-1,a=this._overlays[r];i f(a&&this._shouldBeBehindOverlay(t,a)&&r--,!(e>=r)){var n=Math.max(this.currentO verlayZ(),this._minimumZ);for(this._getZ(t)<=n&&this._applyOverlayZ(t,n);e<r;)th is._overlays[e]=this._overlays[e+1],e++;this._overlays[r]=t}}},addOrRemoveOverla y:function(e){e.opened?this.addOverlay(e):this.removeOverlay(e)},addOverlay:func tion(e){var t=this._overlays.indexOf(e);if(t>=0)return this._bringOverlayAtIndex ToFront(t),void this.trackBackdrop();var r=this._overlays.length,a=this._overlay s[r-1],n=Math.max(this._getZ(a),this._minimumZ),o=this._getZ(e);if(a&&this._shou ldBeBehindOverlay(e,a)){this._applyOverlayZ(a,n),r--;var i=this._overlays[r-1];n =Math.max(this._getZ(i),this._minimumZ)}o<=n&&this._applyOverlayZ(e,n),this._ove rlays.splice(r,0,e),this.trackBackdrop()},removeOverlay:function(e){var t=this._ overlays.indexOf(e);t!==-1&&(this._overlays.splice(t,1),this.trackBackdrop())},c urrentOverlay:function(){var e=this._overlays.length-1;return this._overlays[e]} ,currentOverlayZ:function(){return this._getZ(this.currentOverlay())},ensureMini mumZ:function(e){this._minimumZ=Math.max(this._minimumZ,e)},focusOverlay:functio n(){var e=this.currentOverlay();e&&e._applyFocus()},trackBackdrop:function(){var e=this._overlayWithBackdrop();(e||this._backdropElement)&&(this.backdropElement .style.zIndex=this._getZ(e)-1,this.backdropElement.opened=!!e)},getBackdrops:fun ction(){for(var e=[],t=0;t<this._overlays.length;t++)this._overlays[t].withBackd rop&&e.push(this._overlays[t]);return e},backdropZ:function(){return this._getZ( this._overlayWithBackdrop())-1},_overlayWithBackdrop:function(){for(var e=0;e<th is._overlays.length;e++)if(this._overlays[e].withBackdrop)return this._overlays[ e]},_getZ:function(e){var t=this._minimumZ;if(e){var r=Number(e.style.zIndex||wi ndow.getComputedStyle(e).zIndex);r===r&&(t=r)}return t},_setZ:function(e,t){e.st yle.zIndex=t},_applyOverlayZ:function(e,t){this._setZ(e,t+2)},_overlayInPath:fun ction(e){e=e||[];for(var t=0;t<e.length;t++)if(e[t]._manager===this)return e[t]} ,_onCaptureClick:function(e){var t=this.currentOverlay();t&&this._overlayInPath( Polymer.dom(e).path)!==t&&t._onCaptureClick(e)},_onCaptureFocus:function(e){var t=this.currentOverlay();t&&t._onCaptureFocus(e)},_onCaptureKeyDown:function(e){v ar t=this.currentOverlay();t&&(Polymer.IronA11yKeysBehavior.keyboardEventMatches Keys(e,"esc")?t._onCaptureEsc(e):Polymer.IronA11yKeysBehavior.keyboardEventMatch esKeys(e,"tab")&&t._onCaptureTab(e))},_shouldBeBehindOverlay:function(e,t){retur n!e.alwaysOnTop&&t.alwaysOnTop}},Polymer.IronOverlayManager=new Polymer.IronOver layManagerClass</script> <script>!function(){"use strict";Polymer.IronOverlayBeh aviorImpl={properties:{opened:{observer:"_openedChanged",type:Boolean,value:!1,n otify:!0},canceled:{observer:"_canceledChanged",readOnly:!0,type:Boolean,value:! 1},withBackdrop:{observer:"_withBackdropChanged",type:Boolean},noAutoFocus:{type :Boolean,value:!1},noCancelOnEscKey:{type:Boolean,value:!1},noCancelOnOutsideCli ck:{type:Boolean,value:!1},closingReason:{type:Object},restoreFocusOnClose:{type :Boolean,value:!1},alwaysOnTop:{type:Boolean},_manager:{type:Object,value:Polyme r.IronOverlayManager},_focusedChild:{type:Object}},listeners:{"iron-resize":"_on IronResize"},get backdropElement(){return this._manager.backdropElement},get _fo cusNode(){return this._focusedChild||Polymer.dom(this).querySelector("[autofocus ]")||this},get _focusableNodes(){var e=["a[href]","area[href]","iframe","[tabind ex]","[contentEditable=true]"],t=["input","select","textarea","button"],i=e.join (':not([tabindex="-1"]),')+':not([tabindex="-1"]),'+t.join(':not([disabled]):not ([tabindex="-1"]),')+':not([disabled]):not([tabindex="-1"])',s=Polymer.dom(this) .querySelectorAll(i);return this.tabIndex>=0&&s.splice(0,0,this),s.sort(function (e,t){return e.tabIndex===t.tabIndex?0:0===e.tabIndex||e.tabIndex>t.tabIndex?1:- 1})},ready:function(){this.__isAnimating=!1,this.__shouldRemoveTabIndex=!1,this. __firstFocusableNode=this.__lastFocusableNode=null,this.__raf=null,this.__restor eFocusNode=null,this._ensureSetup()},attached:function(){this.opened&&this._open edChanged(this.opened),this._observer=Polymer.dom(this).observeNodes(this._onNod esChange)},detached:function(){Polymer.dom(this).unobserveNodes(this._observer), this._observer=null,this.__raf&&(window.cancelAnimationFrame(this.__raf),this.__ raf=null),this._manager.removeOverlay(this)},toggle:function(){this._setCanceled (!1),this.opened=!this.opened},open:function(){this._setCanceled(!1),this.opened =!0},close:function(){this._setCanceled(!1),this.opened=!1},cancel:function(e){v ar t=this.fire("iron-overlay-canceled",e,{cancelable:!0});t.defaultPrevented||(t his._setCanceled(!0),this.opened=!1)},invalidateTabbables:function(){this.__firs tFocusableNode=this.__lastFocusableNode=null},_ensureSetup:function(){this._over laySetup||(this._overlaySetup=!0,this.style.outline="none",this.style.display="n one")},_openedChanged:function(e){e?this.removeAttribute("aria-hidden"):this.set Attribute("aria-hidden","true"),this.isAttached&&(this.__isAnimating=!0,this.__o nNextAnimationFrame(this.__openedChanged))},_canceledChanged:function(){this.clo singReason=this.closingReason||{},this.closingReason.canceled=this.canceled},_wi thBackdropChanged:function(){this.withBackdrop&&!this.hasAttribute("tabindex")?( this.setAttribute("tabindex","-1"),this.__shouldRemoveTabIndex=!0):this.__should RemoveTabIndex&&(this.removeAttribute("tabindex"),this.__shouldRemoveTabIndex=!1 ),this.opened&&this.isAttached&&this._manager.trackBackdrop()},_prepareRenderOpe ned:function(){this.__restoreFocusNode=this._manager.deepActiveElement,this._pre parePositioning(),this.refit(),this._finishPositioning(),this.noAutoFocus&&docum ent.activeElement===this._focusNode&&(this._focusNode.blur(),this.__restoreFocus Node.focus())},_renderOpened:function(){this._finishRenderOpened()},_renderClose d:function(){this._finishRenderClosed()},_finishRenderOpened:function(){this.not ifyResize(),this.__isAnimating=!1,this.fire("iron-overlay-opened")},_finishRende rClosed:function(){this.style.display="none",this.style.zIndex="",this.notifyRes ize(),this.__isAnimating=!1,this.fire("iron-overlay-closed",this.closingReason)} ,_preparePositioning:function(){this.style.transition=this.style.webkitTransitio n="none",this.style.transform=this.style.webkitTransform="none",this.style.displ ay=""},_finishPositioning:function(){this.style.display="none",this.scrollTop=th is.scrollTop,this.style.transition=this.style.webkitTransition="",this.style.tra nsform=this.style.webkitTransform="",this.style.display="",this.scrollTop=this.s crollTop},_applyFocus:function(){if(this.opened)this.noAutoFocus||this._focusNod e.focus();else{this._focusNode.blur(),this._focusedChild=null,this.restoreFocusO nClose&&this.__restoreFocusNode&&this.__restoreFocusNode.focus(),this.__restoreF ocusNode=null;var e=this._manager.currentOverlay();e&&this!==e&&e._applyFocus()} },_onCaptureClick:function(e){this.noCancelOnOutsideClick||this.cancel(e)},_onCa ptureFocus:function(e){if(this.withBackdrop){var t=Polymer.dom(e).path;t.indexOf (this)===-1?(e.stopPropagation(),this._applyFocus()):this._focusedChild=t[0]}},_ onCaptureEsc:function(e){this.noCancelOnEscKey||this.cancel(e)},_onCaptureTab:fu nction(e){if(this.withBackdrop){this.__ensureFirstLastFocusables();var t=e.shift Key,i=t?this.__firstFocusableNode:this.__lastFocusableNode,s=t?this.__lastFocusa bleNode:this.__firstFocusableNode,n=!1;if(i===s)n=!0;else{var o=this._manager.de epActiveElement;n=o===i||o===this}n&&(e.preventDefault(),this._focusedChild=s,th is._applyFocus())}},_onIronResize:function(){this.opened&&!this.__isAnimating&&t his.__onNextAnimationFrame(this.refit)},_onNodesChange:function(){this.opened&&! this.__isAnimating&&(this.invalidateTabbables(),this.notifyResize())},__ensureFi rstLastFocusables:function(){if(!this.__firstFocusableNode||!this.__lastFocusabl eNode){var e=this._focusableNodes;this.__firstFocusableNode=e[0],this.__lastFocu sableNode=e[e.length-1]}},__openedChanged:function(){this.opened?(this._prepareR enderOpened(),this._manager.addOverlay(this),this._applyFocus(),this._renderOpen ed()):(this._manager.removeOverlay(this),this._applyFocus(),this._renderClosed() )},__onNextAnimationFrame:function(e){this.__raf&&window.cancelAnimationFrame(th is.__raf);var t=this;this.__raf=window.requestAnimationFrame(function(){t.__raf= null,e.call(t)})}},Polymer.IronOverlayBehavior=[Polymer.IronFitBehavior,Polymer. IronResizableBehavior,Polymer.IronOverlayBehaviorImpl]}()</script> <dom-module i d="paper-toast" assetpath="/res/imp/bower_components/paper-toast/"> <template> < style>:host{display:block;position:fixed;background-color:var(--paper-toast-back ground-color,#323232);color:var(--paper-toast-color,#f1f1f1);min-height:48px;min -width:288px;padding:16px 24px;box-sizing:border-box;box-shadow:0 2px 5px 0 rgba (0,0,0,.26);border-radius:2px;margin:12px;font-size:14px;cursor:default;-webkit- transition:-webkit-transform .3s,opacity .3s;transition:transform .3s,opacity .3 s;opacity:0;-webkit-transform:translateY(100px);transform:translateY(100px);@app ly(--paper-font-common-base)}:host(.capsule){border-radius:24px}:host(.fit-botto m){width:100%;min-width:0;border-radius:0;margin:0}:host(.paper-toast-open){opac ity:1;-webkit-transform:translateY(0);transform:translateY(0)}</style> <span id= "label">{{text}}</span> <content></content> </template> <script>!function(){var e=null;Polymer({is:"paper-toast",behaviors:[Polymer.IronOverlayBehavior],propert ies:{fitInto:{type:Object,value:window,observer:"_onFitIntoChanged"},horizontalA lign:{type:String,value:"left"},verticalAlign:{type:String,value:"bottom"},durat ion:{type:Number,value:3e3},text:{type:String,value:""},noCancelOnOutsideClick:{ type:Boolean,value:!0},noAutoFocus:{type:Boolean,value:!0}},listeners:{transitio nend:"__onTransitionEnd"},get visible(){return Polymer.Base._warn("`visible` is deprecated, use `opened` instead"),this.opened},get _canAutoClose(){return this. duration>0&&this.duration!==1/0},created:function(){this._autoClose=null,Polymer .IronA11yAnnouncer.requestAvailability()},show:function(e){"string"==typeof e&&( e={text:e});for(var t in e)0===t.indexOf("_")?Polymer.Base._warn('The property " '+t+'" is private and was not set.'):t in this?this[t]=e[t]:Polymer.Base._warn(' The property "'+t+'" is not valid.');this.open()},hide:function(){this.close()}, __onTransitionEnd:function(e){e&&e.target===this&&"opacity"===e.propertyName&&(t his.opened?this._finishRenderOpened():this._finishRenderClosed())},_openedChange d:function(){null!==this._autoClose&&(this.cancelAsync(this._autoClose),this._au toClose=null),this.opened?(e&&e!==this&&e.close(),e=this,this.fire("iron-announc e",{text:this.text}),this._canAutoClose&&(this._autoClose=this.async(this.close, this.duration))):e===this&&(e=null),Polymer.IronOverlayBehaviorImpl._openedChang ed.apply(this,arguments)},_renderOpened:function(){this.classList.add("paper-toa st-open")},_renderClosed:function(){this.classList.remove("paper-toast-open")},_ onFitIntoChanged:function(e){this.positionTarget=e}})}()</script> </dom-module> <dom-module id="error-toast" assetpath="/res/imp/common/"> <template> <paper-toa st id="toast"></paper-toast> </template> </dom-module> <script>Polymer({is:"erro r-toast",ready:function(){document.addEventListener("error-sk",function(t){if(th is.$.toast.close(),t.detail.message){this.$.toast.text=t.detail.message;var e=1e 4;void 0!==t.detail.duration&&(e=t.detail.duration),this.$.toast.duration=e,this .$.toast.show()}else console.log("Empty message?",t)}.bind(this))}})</script> <d om-module id="swarming-app" assetpath="/res/imp/common/"> <template> <style incl ude="iron-flex">:host{position:absolute;top:0;bottom:0;left:0;right:0}app-toolba r{background-color:#1F78B4;color:#fff}app-toolbar.error{background-color:#b41f1f ;color:#fff}app-toolbar a{color:#fff}.left{margin-right:15px}.right{margin-left: 15px}.main-content{padding:3px}.main-content a{color:#1F78B4}.menu-button{min-wi dth:40px}.small,auth-signin{font-size:.7em}#mobile_menu{z-index:10;--app-drawer- content-container:{margin-top:64px};}a[href]{color:#1F78B4}.menu-item{padding:8p x 3px;border-bottom:1px solid #CCC}paper-fab{position:fixed;bottom:5px;right:5px ;background-color:#1F78B4}paper-spinner-lite{--paper-spinner-color:var(--google- yellow-500)}</style> <app-header-layout> <app-drawer id="mobile_menu"> <div clas s="menu-item"><a class="left" href="/">Home</a></div> <div class="menu-item"><a class="left" href="/botlist">Bot List</a></div> <div class="menu-item"><a class= "left" href="/tasklist">Task List</a></div> <div class="menu-item"><a class="lef t" href="/oldui">Old UI</a></div> </app-drawer> <app-header fixed=""> <app-toolb ar class$="[[_toolbarClass(client_id)]]"> <paper-icon-button class="menu-button" icon="icons:menu" on-tap="_toggleMobileMenu" hidden$="[[wide_layout]]"> </paper -icon-button> <div class="title left">[[name]]</div> <paper-spinner-lite class=" left" active="[[_or(busy,_busy1,_busy2)]]"></paper-spinner-lite> <a class="left" href="/" hidden$="[[!wide_layout]]">Home</a> <a class="left" href="/botlist" hi dden$="[[!wide_layout]]">Bot List</a> <a class="left" href="/tasklist" hidden$=" [[!wide_layout]]">Task List</a> <div class="flex" hidden$="[[!wide_layout]]"></d iv> <template is="dom-if" if="[[client_id]]"> <div class="small right"> Server: <a href$="[[_versionLink(server_details)]]"> [[server_details.server_version]] < /a> </div> <auth-signin class="right" client_id="[[client_id]]" auth_headers="{{ auth_headers}}" profile="{{profile}}" signed_in="{{signed_in}}"> </auth-signin> </template> <template is="dom-if" if="[[!client_id]]"> <div class="right">No OAa uth client id found.</div> </template> </app-toolbar> </app-header> <div class=" main-content"> <content></content> </div> <error-toast></error-toast> <a target= "_blank" rel="noopener" href="https://bugs.chromium.org/p/chromium/issues/entry? components=Infra%3EPlatform%3ESwarming&amp;owner=kjlubick@chromium.org&amp;statu s=Assigned"> <paper-fab mini="" icon="icons:bug-report"></paper-fab> </a> </app- header-layout> <iron-media-query query="min-width: 600px" query-matches="{{wide_ layout}}"></iron-media-query> </template> <script>Polymer({is:"swarming-app",beh aviors:[SwarmingBehaviors.CommonBehavior],properties:{busy:{type:Boolean},client _id:{type:String},name:{type:String},auth_headers:{type:Object,notify:!0,observe r:"_load"},permissions:{type:Object,value:function(){return{}},notify:!0},profil e:{type:Object,notify:!0},server_details:{type:Object,notify:!0},signed_in:{type :Boolean,value:!1,notify:!0},_busy1:{type:Boolean,value:!1},_busy2:{type:Boolean ,value:!1}},_load:function(){this._getJsonAsync("permissions","/api/swarming/v1/ server/permissions","_busy1",this.auth_headers),this._getJsonAsync("server_detai ls","/api/swarming/v1/server/details","_busy2",this.auth_headers).catch(function (e){sk.errorMessage("Http response: "+(e.status||" ")+" "+e.response)})},_toggle MobileMenu:function(){this.$.mobile_menu.toggle()},_toolbarClass:function(e){ret urn e?"":"error"},_versionLink:function(e){if(e&&e.server_version){var s=e.serve r_version.split("-");if(2===s.length)return"https://github.com/luci/luci-py/comm it/"+s[1]}}})</script> </dom-module> <dom-module id="swarming-app-style" assetpa th="/res/imp/common/"> <style>*{font-family:sans-serif}a[href]{color:#1F78B4}but ton{min-width:5.14em;background-color:#fff;color:#1f78b4;text-align:center;text- transform:uppercase;outline:0;border-radius:3px;padding:.6em 1.2em;border:solid #d3d3d3 1px;margin:.6em;cursor:pointer}button:hover{background:#eee}button:focus {background-color:#ddd;transition:background-color .1s cubic-bezier(.4,0,.2,1)}b utton.raised:active,button:active{background-color:#999;transition:background-co lor .1s cubic-bezier(.4,0,.2,1)}button:disabled{color:#999}button:disabled:hover {background:initial;cursor:initial}button.action:active{background-color:#A6CEE3 ;transition:background-color .1s color .1s cubic-bezier(.4,0,.2,1)}button.action {color:#fff;background:#1f78b4;border:none}button.action:disabled{color:#fff;bac kground:#999;border:none}button.raised{transition:box-shadow .1s cubic-bezier(.4 ,0,.2,1);box-shadow:5px 5px 18px 0 rgba(0,0,0,.3)}button.raised:active{box-shado w:2px 2px 5px 0 rgba(0,0,0,.1)}option,select{padding:.4em 1.2em;background-color :#fff;border:none;line-height:20px;vertical-align:middle}select{overflow-y:auto} </style> </dom-module> <dom-module id="swarming-index" assetpath="/res/imp/index /"> <template> <style include="swarming-app-style">.command{font-family:monospac e;margin-bottom:10px;margin-top:10px;white-space:pre-wrap;background-color:#f5f5 f5;border:1px solid #ccc;border-radius:4px}</style> <swarming-app client_id="[[c lient_id]]" auth_headers="{{_auth_headers}}" permissions="{{_permissions}}" serv er_details="{{_server_details}}" name="Swarming Server" busy="[[_or(_busy1,busy2 )]]"> <h2>Service Status</h2> <div>Server Version: [[_server_details.server_vers ion]]</div> <div>Bot Version: [[_server_details.bot_version]]</div> <ul> <li> <a href="/stats">Usage statistics</a> </li> <li> <a href="/restricted/mapreduce/st atus">Map Reduce Jobs</a> </li> <li> <a href$="[[_makeInstancesUrl(_server_detai ls,_project_id)]]">View version's instances on Cloud Console</a> </li> <li> <a>< /a><a href$="[[_makeErrorUrl(_project_id)]]">View server errors on Cloud Console </a> </li> <li> <a></a><a href$="[[_makeLogUrl(_project_id)]]">View logs for HTT P 5xx on Cloud Console</a> </li> </ul> <h2>Configuration</h2> <ul> <li> <a href= "/restricted/config">View server config</a> </li> <li> <a href="/restricted/uplo ad/bootstrap">View/upload bootstrap.py</a> </li> <li> <a href="/restricted/uploa d/bot_config">View/upload bot_config.py</a> </li> <li> <a href="/auth/groups">Vi ew/edit user groups</a> </li> </ul> <div hidden$="[[_cannotBootstrap(_permission s)]]"> <h2>Bootstrapping a bot</h2> To bootstrap a bot, run one of these (all li nks are valid for 1 hour): <ol> <li> <strong> TL;DR; </strong> <pre class="comma nd">python -c "import urllib; exec urllib.urlopen('[[_host_url]]/bootstrap?tok=[ [_bootstrap_token]]').read()"</pre> </li> <li> Escaped version to pass as a ssh argument: <pre class="command">'python -c "import urllib; exec urllib.urlopen('" '[[_host_url]]/bootstrap?tok=[[_bootstrap_token]]'"').read()"'</pre> </li> <li> Manually: <pre class="command" style="margin-bottom:0">mkdir bot; cd bot 4 },customStyle:null,getComputedStyleValue:function(e){return!i&&this._styleProper ties&&this._styleProperties[e]||getComputedStyle(this).getPropertyValue(e)},_set upStyleProperties:function(){this.customStyle={},this._styleCache=null,this._sty leProperties=null,this._scopeSelector=null,this._ownStyleProperties=null,this._c ustomStyle=null},_needsStyleProperties:function(){return Boolean(!i&&this._ownSt ylePropertyNames&&this._ownStylePropertyNames.length)},_validateApplyShim:functi on(){if(this.__applyShimInvalid){Polymer.ApplyShim.transform(this._styles,this._ _proto__);var e=n.elementStyles(this);if(s){var t=this._template.content.querySe lector("style");t&&(t.textContent=e)}else{var r=this._scopeStyle&&this._scopeSty le.nextSibling;r&&(r.textContent=e)}}},_beforeAttached:function(){this._scopeSel ector&&!this.__stylePropertiesInvalid||!this._needsStyleProperties()||(this.__st ylePropertiesInvalid=!1,this._updateStyleProperties())},_findStyleHost:function( ){for(var e,t=this;e=Polymer.dom(t).getOwnerRoot();){if(Polymer.isInstance(e.hos t))return e.host;t=e.host}return r},_updateStyleProperties:function(){var e,n=th is._findStyleHost();n._styleProperties||n._computeStyleProperties(),n._styleCach e||(n._styleCache=new Polymer.StyleCache);var r=t.propertyDataFromStyles(n._styl es,this),i=!this.__notStyleScopeCacheable;i&&(r.key.customStyle=this.customStyle ,e=n._styleCache.retrieve(this.is,r.key,this._styles));var a=Boolean(e);a?this._ styleProperties=e._styleProperties:this._computeStyleProperties(r.properties),th is._computeOwnStyleProperties(),a||(e=o.retrieve(this.is,this._ownStylePropertie s,this._styles));var l=Boolean(e)&&!a,c=this._applyStyleProperties(e);a||(c=c&&s ?c.cloneNode(!0):c,e={style:c,_scopeSelector:this._scopeSelector,_stylePropertie s:this._styleProperties},i&&(r.key.customStyle={},this.mixin(r.key.customStyle,t his.customStyle),n._styleCache.store(this.is,e,r.key,this._styles)),l||o.store(t his.is,Object.create(e),this._ownStyleProperties,this._styles))},_computeStylePr operties:function(e){var n=this._findStyleHost();n._styleProperties||n._computeS tyleProperties();var r=Object.create(n._styleProperties),s=t.hostAndRootProperti esForScope(this);this.mixin(r,s.hostProps),e=e||t.propertyDataFromStyles(n._styl es,this).properties,this.mixin(r,e),this.mixin(r,s.rootProps),t.mixinCustomStyle (r,this.customStyle),t.reify(r),this._styleProperties=r},_computeOwnStylePropert ies:function(){for(var e,t={},n=0;n<this._ownStylePropertyNames.length;n++)e=thi s._ownStylePropertyNames[n],t[e]=this._styleProperties[e];this._ownStyleProperti es=t},_scopeCount:0,_applyStyleProperties:function(e){var n=this._scopeSelector; this._scopeSelector=e?e._scopeSelector:this.is+"-"+this.__proto__._scopeCount++; var r=t.applyElementStyle(this,this._styleProperties,this._scopeSelector,e&&e.st yle);return s||t.applyElementScopeSelector(this,this._scopeSelector,n,this._scop eCssViaAttr),r},serializeValueToAttribute:function(t,n,r){if(r=r||this,"class"== =n&&!s){var i=r===this?this.domHost||this.dataHost:this;i&&(t=i._scopeElementCla ss(r,t))}r=this.shadyRoot&&this.shadyRoot._hasDistributed?Polymer.dom(r):r,e.cal l(this,t,n,r)},_scopeElementClass:function(e,t){return s||this._scopeCssViaAttr| |(t=(t?t+" ":"")+a+" "+this.is+(e._scopeSelector?" "+l+" "+e._scopeSelector:"")) ,t},updateStyles:function(e){e&&this.mixin(this.customStyle,e),i?t.updateNativeS tyleProperties(this,this.customStyle):(this.isAttached?this._needsStylePropertie s()?this._updateStyleProperties():this._styleProperties=null:this.__stylePropert iesInvalid=!0,this._styleCache&&this._styleCache.clear(),this._updateRootStyles( ))},_updateRootStyles:function(e){e=e||this.root;for(var t,n=Polymer.dom(e)._que ry(function(e){return e.shadyRoot||e.shadowRoot}),r=0,s=n.length;r<s&&(t=n[r]);r ++)t.updateStyles&&t.updateStyles()}}),Polymer.updateStyles=function(e){r.update Styles(e),Polymer.Base._updateRootStyles(document)};var o=new Polymer.StyleCache ;Polymer.customStyleCache=o;var a=n.SCOPE_NAME,l=t.XSCOPE_NAME}(),Polymer.Base._ addFeature({_registerFeatures:function(){this._prepIs(),this._prepConstructor(), this._prepStyles()},_finishRegisterFeatures:function(){this._prepTemplate(),this ._prepShimStyles(),this._prepAnnotations(),this._prepEffects(),this._prepBehavio rs(),this._prepPropertyInfo(),this._prepBindings(),this._prepShady()},_prepBehav ior:function(e){this._addPropertyEffects(e.properties),this._addComplexObserverE ffects(e.observers),this._addHostAttributes(e.hostAttributes)},_initFeatures:fun ction(){this._setupGestures(),this._setupConfigure(),this._setupStyleProperties( ),this._setupDebouncers(),this._setupShady(),this._registerHost(),this._template &&(this._validateApplyShim(),this._poolContent(),this._beginHosting(),this._stam pTemplate(),this._endHosting(),this._marshalAnnotationReferences()),this._marsha lInstanceEffects(),this._marshalBehaviors(),this._marshalHostAttributes(),this._ marshalAttributes(),this._tryReady()},_marshalBehavior:function(e){e.listeners&& this._listenListeners(e.listeners)}}),function(){var e,t=Polymer.StyleProperties ,n=Polymer.StyleUtil,r=Polymer.CssParse,s=Polymer.StyleDefaults,i=Polymer.StyleT ransformer,o=Polymer.ApplyShim,a=Polymer.Debounce,l=Polymer.Settings;Polymer({is :"custom-style",extends:"style",_template:null,properties:{include:String},ready :function(){this.__appliedElement=this.__appliedElement||this,this.__cssBuild=n. getCssBuildType(this),this.__appliedElement!==this&&(this.__appliedElement.__css Build=this.__cssBuild),this._tryApply()},attached:function(){this._tryApply()},_ tryApply:function(){if(!this._appliesToDocument&&this.parentNode&&"dom-module"!= =this.parentNode.localName){this._appliesToDocument=!0;var e=this.__appliedEleme nt;if(l.useNativeCSSProperties||(this.__needsUpdateStyles=s.hasStyleProperties() ,s.addStyle(e)),e.textContent||this.include)this._apply(!0);else{var t=this,n=ne w MutationObserver(function(){n.disconnect(),t._apply(!0)});n.observe(e,{childLi st:!0})}}},_updateStyles:function(){Polymer.updateStyles()},_apply:function(e){v ar t=this.__appliedElement;if(this.include&&(t.textContent=n.cssFromModules(this .include,!0)+t.textContent),t.textContent){var r=this.__cssBuild,s=n.isTargetedB uild(r);if(!l.useNativeCSSProperties||!s){var a=n.rulesForStyle(t);if(s||(n.forE achRule(a,function(e){i.documentRule(e)}),l.useNativeCSSProperties&&!r&&o.transf orm([t])),l.useNativeCSSProperties)t.textContent=n.toCssText(a);else{var c=this, h=function(){c._flushCustomProperties()};e?Polymer.RenderStatus.whenReady(h):h() }}}},_flushCustomProperties:function(){this.__needsUpdateStyles?(this.__needsUpd ateStyles=!1,e=a(e,this._updateStyles)):this._applyCustomProperties()},_applyCus tomProperties:function(){var e=this.__appliedElement;this._computeStylePropertie s();var s=this._styleProperties,i=n.rulesForStyle(e);i&&(e.textContent=n.toCssTe xt(i,function(e){var n=e.cssText=e.parsedCssText;e.propertyInfo&&e.propertyInfo. cssText&&(n=r.removeCustomPropAssignment(n),e.cssText=t.valueForProperties(n,s)) }))}})}(),Polymer.Templatizer={properties:{__hideTemplateChildren__:{observer:"_ showHideChildren"}},_instanceProps:Polymer.nob,_parentPropPrefix:"_parent_",temp latize:function(e){if(this._templatized=e,e._content||(e._content=e.content),e._ content._ctor)return this.ctor=e._content._ctor,void this._prepParentProperties( this.ctor.prototype,e);var t=Object.create(Polymer.Base);this._customPrepAnnotat ions(t,e),this._prepParentProperties(t,e),t._prepEffects(),this._customPrepEffec ts(t),t._prepBehaviors(),t._prepPropertyInfo(),t._prepBindings(),t._notifyPathUp =this._notifyPathUpImpl,t._scopeElementClass=this._scopeElementClassImpl,t.liste n=this._listenImpl,t._showHideChildren=this._showHideChildrenImpl,t.__setPropert yOrig=this.__setProperty,t.__setProperty=this.__setPropertyImpl;var n=this._cons tructorImpl,r=function(e,t){n.call(this,e,t)};r.prototype=t,t.constructor=r,e._c ontent._ctor=r,this.ctor=r},_getRootDataHost:function(){return this.dataHost&&th is.dataHost._rootDataHost||this.dataHost},_showHideChildrenImpl:function(e){for( var t=this._children,n=0;n<t.length;n++){var r=t[n];Boolean(e)!=Boolean(r.__hide TemplateChildren__)&&(r.nodeType===Node.TEXT_NODE?e?(r.__polymerTextContent__=r. textContent,r.textContent=""):r.textContent=r.__polymerTextContent__:r.style&&(e ?(r.__polymerDisplay__=r.style.display,r.style.display="none"):r.style.display=r .__polymerDisplay__)),r.__hideTemplateChildren__=e}},__setPropertyImpl:function( e,t,n,r){r&&r.__hideTemplateChildren__&&"textContent"==e&&(e="__polymerTextConte nt__"),this.__setPropertyOrig(e,t,n,r)},_debounceTemplate:function(e){Polymer.do m.addDebouncer(this.debounce("_debounceTemplate",e))},_flushTemplates:function() {Polymer.dom.flush()},_customPrepEffects:function(e){var t=e._parentProps;for(va r n in t)e._addPropertyEffect(n,"function",this._createHostPropEffector(n));for( n in this._instanceProps)e._addPropertyEffect(n,"function",this._createInstanceP ropEffector(n))},_customPrepAnnotations:function(e,t){e._template=t;var n=t._con tent;if(!n._notes){var r=e._rootDataHost;r&&(Polymer.Annotations.prepElement=fun ction(){r._prepElement()}),n._notes=Polymer.Annotations.parseAnnotations(t),Poly mer.Annotations.prepElement=null,this._processAnnotations(n._notes)}e._notes=n._ notes,e._parentProps=n._parentProps},_prepParentProperties:function(e,t){var n=t his._parentProps=e._parentProps;if(this._forwardParentProp&&n){var r,s=e._parent PropProto;if(!s){for(r in this._instanceProps)delete n[r];s=e._parentPropProto=O bject.create(null),t!=this&&(Polymer.Bind.prepareModel(s),Polymer.Base.prepareMo delNotifyPath(s));for(r in n){var i=this._parentPropPrefix+r,o=[{kind:"function" ,effect:this._createForwardPropEffector(r),fn:Polymer.Bind._functionEffect},{kin d:"notify",fn:Polymer.Bind._notifyEffect,effect:{event:Polymer.CaseMap.camelToDa shCase(i)+"-changed"}}];Polymer.Bind._createAccessors(s,i,o)}}var a=this;t!=this &&(Polymer.Bind.prepareInstance(t),t._forwardParentProp=function(e,t){a._forward ParentProp(e,t)}),this._extendTemplate(t,s),t._pathEffector=function(e,t,n){retu rn a._pathEffectorImpl(e,t,n)}}},_createForwardPropEffector:function(e){return f unction(t,n){this._forwardParentProp(e,n)}},_createHostPropEffector:function(e){ var t=this._parentPropPrefix;return function(n,r){this.dataHost._templatized[t+e ]=r}},_createInstancePropEffector:function(e){return function(t,n,r,s){s||this.d ataHost._forwardInstanceProp(this,e,n)}},_extendTemplate:function(e,t){var n=Obj ect.getOwnPropertyNames(t);t._propertySetter&&(e._propertySetter=t._propertySett er);for(var r,s=0;s<n.length&&(r=n[s]);s++){var i=e[r],o=Object.getOwnPropertyDe scriptor(t,r);Object.defineProperty(e,r,o),void 0!==i&&e._propertySetter(r,i)}}, _showHideChildren:function(e){},_forwardInstancePath:function(e,t,n){},_forwardI nstanceProp:function(e,t,n){},_notifyPathUpImpl:function(e,t){var n=this.dataHos t,r=Polymer.Path.root(e);n._forwardInstancePath.call(n,this,e,t),r in n._parentP rops&&n._templatized._notifyPath(n._parentPropPrefix+e,t)},_pathEffectorImpl:fun ction(e,t,n){if(this._forwardParentPath&&0===e.indexOf(this._parentPropPrefix)){ var r=e.substring(this._parentPropPrefix.length),s=Polymer.Path.root(r);s in thi s._parentProps&&this._forwardParentPath(r,t)}Polymer.Base._pathEffector.call(thi s._templatized,e,t,n)},_constructorImpl:function(e,t){this._rootDataHost=t._getR ootDataHost(),this._setupConfigure(e),this._registerHost(t),this._beginHosting() ,this.root=this.instanceTemplate(this._template),this.root.__noContent=!this._no tes._hasContent,this.root.__styleScoped=!0,this._endHosting(),this._marshalAnnot atedNodes(),this._marshalInstanceEffects(),this._marshalAnnotatedListeners();for (var n=[],r=this.root.firstChild;r;r=r.nextSibling)n.push(r),r._templateInstance =this;this._children=n,t.__hideTemplateChildren__&&this._showHideChildren(!0),th is._tryReady()},_listenImpl:function(e,t,n){var r=this,s=this._rootDataHost,i=s. _createEventHandler(e,t,n),o=function(e){e.model=r,i(e)};s._listen(e,t,o)},_scop eElementClassImpl:function(e,t){var n=this._rootDataHost;return n?n._scopeElemen tClass(e,t):t},stamp:function(e){if(e=e||{},this._parentProps){var t=this._templ atized;for(var n in this._parentProps)void 0===e[n]&&(e[n]=t[this._parentPropPre fix+n])}return new this.ctor(e,this)},modelForElement:function(e){for(var t;e;)i f(t=e._templateInstance){if(t.dataHost==this)return t;e=t.dataHost}else e=e.pare ntNode}},Polymer({is:"dom-template",extends:"template",_template:null,behaviors: [Polymer.Templatizer],ready:function(){this.templatize(this)}}),Polymer._collect ions=new WeakMap,Polymer.Collection=function(e){Polymer._collections.set(e,this) ,this.userArray=e,this.store=e.slice(),this.initMap()},Polymer.Collection.protot ype={constructor:Polymer.Collection,initMap:function(){for(var e=this.omap=new W eakMap,t=this.pmap={},n=this.store,r=0;r<n.length;r++){var s=n[r];s&&"object"==t ypeof s?e.set(s,r):t[s]=r}},add:function(e){var t=this.store.push(e)-1;return e& &"object"==typeof e?this.omap.set(e,t):this.pmap[e]=t,"#"+t},removeKey:function( e){(e=this._parseKey(e))&&(this._removeFromMap(this.store[e]),delete this.store[ e])},_removeFromMap:function(e){e&&"object"==typeof e?this.omap.delete(e):delete this.pmap[e]},remove:function(e){var t=this.getKey(e);return this.removeKey(t), t},getKey:function(e){var t;if(t=e&&"object"==typeof e?this.omap.get(e):this.pma p[e],void 0!=t)return"#"+t},getKeys:function(){return Object.keys(this.store).ma p(function(e){return"#"+e})},_parseKey:function(e){if(e&&"#"==e[0])return e.slic e(1)},setItem:function(e,t){if(e=this._parseKey(e)){var n=this.store[e];n&&this. _removeFromMap(n),t&&"object"==typeof t?this.omap.set(t,e):this.pmap[t]=e,this.s tore[e]=t}},getItem:function(e){if(e=this._parseKey(e))return this.store[e]},get Items:function(){var e=[],t=this.store;for(var n in t)e.push(t[n]);return e},_ap plySplices:function(e){for(var t,n,r={},s=0;s<e.length&&(n=e[s]);s++){n.addedKey s=[];for(var i=0;i<n.removed.length;i++)t=this.getKey(n.removed[i]),r[t]=r[t]?nu ll:-1;for(i=0;i<n.addedCount;i++){var o=this.userArray[n.index+i];t=this.getKey( o),t=void 0===t?this.add(o):t,r[t]=r[t]?null:1,n.addedKeys.push(t)}}var a=[],l=[ ];for(t in r)r[t]<0&&(this.removeKey(t),a.push(t)),r[t]>0&&l.push(t);return[{rem oved:a,added:l}]}},Polymer.Collection.get=function(e){return Polymer._collection s.get(e)||new Polymer.Collection(e)},Polymer.Collection.applySplices=function(e, t){var n=Polymer._collections.get(e);return n?n._applySplices(t):null},Polymer({ is:"dom-repeat",extends:"template",_template:null,properties:{items:{type:Array} ,as:{type:String,value:"item"},indexAs:{type:String,value:"index"},sort:{type:Fu nction,observer:"_sortChanged"},filter:{type:Function,observer:"_filterChanged"} ,observe:{type:String,observer:"_observeChanged"},delay:Number,renderedItemCount :{type:Number,notify:!0,readOnly:!0},initialCount:{type:Number,observer:"_initia lizeChunking"},targetFramerate:{type:Number,value:20},_targetFrameTime:{type:Num ber,computed:"_computeFrameTime(targetFramerate)"}},behaviors:[Polymer.Templatiz er],observers:["_itemsChanged(items.*)"],created:function(){this._instances=[],t his._pool=[],this._limit=1/0;var e=this;this._boundRenderChunk=function(){e._ren derChunk()}},detached:function(){this.__isDetached=!0;for(var e=0;e<this._instan ces.length;e++)this._detachInstance(e)},attached:function(){if(this.__isDetached ){this.__isDetached=!1;for(var e=Polymer.dom(Polymer.dom(this).parentNode),t=0;t <this._instances.length;t++)this._attachInstance(t,e)}},ready:function(){this._i nstanceProps={__key__:!0},this._instanceProps[this.as]=!0,this._instanceProps[th is.indexAs]=!0,this.ctor||this.templatize(this)},_sortChanged:function(e){var t= this._getRootDataHost();this._sortFn=e&&("function"==typeof e?e:function(){retur n t[e].apply(t,arguments)}),this._needFullRefresh=!0,this.items&&this._debounceT emplate(this._render)},_filterChanged:function(e){var t=this._getRootDataHost(); this._filterFn=e&&("function"==typeof e?e:function(){return t[e].apply(t,argumen ts)}),this._needFullRefresh=!0,this.items&&this._debounceTemplate(this._render)} ,_computeFrameTime:function(e){return Math.ceil(1e3/e)},_initializeChunking:func tion(){this.initialCount&&(this._limit=this.initialCount,this._chunkCount=this.i nitialCount,this._lastChunkTime=performance.now())},_tryRenderChunk:function(){t his.items&&this._limit<this.items.length&&this.debounce("renderChunk",this._requ estRenderChunk)},_requestRenderChunk:function(){requestAnimationFrame(this._boun dRenderChunk)},_renderChunk:function(){var e=performance.now(),t=this._targetFra meTime/(e-this._lastChunkTime);this._chunkCount=Math.round(this._chunkCount*t)|| 1,this._limit+=this._chunkCount,this._lastChunkTime=e,this._debounceTemplate(thi s._render)},_observeChanged:function(){this._observePaths=this.observe&&this.obs erve.replace(".*",".").split(" ")},_itemsChanged:function(e){if("items"==e.path) Array.isArray(this.items)?this.collection=Polymer.Collection.get(this.items):thi s.items?this._error(this._logf("dom-repeat","expected array for `items`, found", this.items)):this.collection=null,this._keySplices=[],this._indexSplices=[],this ._needFullRefresh=!0,this._initializeChunking(),this._debounceTemplate(this._ren der);else if("items.splices"==e.path)this._keySplices=this._keySplices.concat(e. value.keySplices),this._indexSplices=this._indexSplices.concat(e.value.indexSpli ces),this._debounceTemplate(this._render);else{var t=e.path.slice(6);this._forwa rdItemPath(t,e.value),this._checkObservedPaths(t)}},_checkObservedPaths:function (e){if(this._observePaths){e=e.substring(e.indexOf(".")+1);for(var t=this._obser vePaths,n=0;n<t.length;n++)if(0===e.indexOf(t[n]))return this._needFullRefresh=! 0,void(this.delay?this.debounce("render",this._render,this.delay):this._debounce Template(this._render))}},render:function(){this._needFullRefresh=!0,this._debou nceTemplate(this._render),this._flushTemplates()},_render:function(){this._needF ullRefresh?(this._applyFullRefresh(),this._needFullRefresh=!1):this._keySplices. length&&(this._sortFn?this._applySplicesUserSort(this._keySplices):this._filterF n?this._applyFullRefresh():this._applySplicesArrayOrder(this._indexSplices)),thi s._keySplices=[],this._indexSplices=[];for(var e=this._keyToInstIdx={},t=this._i nstances.length-1;t>=0;t--){var n=this._instances[t];n.isPlaceholder&&t<this._li mit?n=this._insertInstance(t,n.__key__):!n.isPlaceholder&&t>=this._limit&&(n=thi s._downgradeInstance(t,n.__key__)),e[n.__key__]=t,n.isPlaceholder||n.__setProper ty(this.indexAs,t,!0)}this._pool.length=0,this._setRenderedItemCount(this._insta nces.length),this.fire("dom-change"),this._tryRenderChunk()},_applyFullRefresh:f unction(){var e,t=this.collection;if(this._sortFn)e=t?t.getKeys():[];else{e=[];v ar n=this.items;if(n)for(var r=0;r<n.length;r++)e.push(t.getKey(n[r]))}var s=thi s;for(this._filterFn&&(e=e.filter(function(e){return s._filterFn(t.getItem(e))}) ),this._sortFn&&e.sort(function(e,n){return s._sortFn(t.getItem(e),t.getItem(n)) }),r=0;r<e.length;r++){var i=e[r],o=this._instances[r];o?(o.__key__=i,!o.isPlace holder&&r<this._limit&&o.__setProperty(this.as,t.getItem(i),!0)):r<this._limit?t his._insertInstance(r,i):this._insertPlaceholder(r,i)}for(var a=this._instances. length-1;a>=r;a--)this._detachAndRemoveInstance(a)},_numericSort:function(e,t){r eturn e-t},_applySplicesUserSort:function(e){for(var t,n,r=this.collection,s={}, i=0;i<e.length&&(n=e[i]);i++){for(var o=0;o<n.removed.length;o++)t=n.removed[o], s[t]=s[t]?null:-1;for(o=0;o<n.added.length;o++)t=n.added[o],s[t]=s[t]?null:1}var a=[],l=[];for(t in s)s[t]===-1&&a.push(this._keyToInstIdx[t]),1===s[t]&&l.push( t);if(a.length)for(a.sort(this._numericSort),i=a.length-1;i>=0;i--){var c=a[i];v oid 0!==c&&this._detachAndRemoveInstance(c)}var h=this;if(l.length){this._filter Fn&&(l=l.filter(function(e){return h._filterFn(r.getItem(e))})),l.sort(function( e,t){return h._sortFn(r.getItem(e),r.getItem(t))});var u=0;for(i=0;i<l.length;i+ +)u=this._insertRowUserSort(u,l[i])}},_insertRowUserSort:function(e,t){for(var n =this.collection,r=n.getItem(t),s=this._instances.length-1,i=-1;e<=s;){var o=e+s >>1,a=this._instances[o].__key__,l=this._sortFn(n.getItem(a),r);if(l<0)e=o+1;els e{if(!(l>0)){i=o;break}s=o-1}}return i<0&&(i=s+1),this._insertPlaceholder(i,t),i },_applySplicesArrayOrder:function(e){for(var t,n=0;n<e.length&&(t=e[n]);n++){fo r(var r=0;r<t.removed.length;r++)this._detachAndRemoveInstance(t.index);for(r=0; r<t.addedKeys.length;r++)this._insertPlaceholder(t.index+r,t.addedKeys[r])}},_de tachInstance:function(e){var t=this._instances[e];if(!t.isPlaceholder){for(var n =0;n<t._children.length;n++){var r=t._children[n];Polymer.dom(t.root).appendChil d(r)}return t}},_attachInstance:function(e,t){var n=this._instances[e];n.isPlace holder||t.insertBefore(n.root,this)},_detachAndRemoveInstance:function(e){var t= this._detachInstance(e);t&&this._pool.push(t),this._instances.splice(e,1)},_inse rtPlaceholder:function(e,t){this._instances.splice(e,0,{isPlaceholder:!0,__key__ :t})},_stampInstance:function(e,t){var n={__key__:t};return n[this.as]=this.coll ection.getItem(t),n[this.indexAs]=e,this.stamp(n)},_insertInstance:function(e,t) {var n=this._pool.pop();n?(n.__setProperty(this.as,this.collection.getItem(t),!0 ),n.__setProperty("__key__",t,!0)):n=this._stampInstance(e,t);var r=this._instan ces[e+1],s=r&&!r.isPlaceholder?r._children[0]:this,i=Polymer.dom(this).parentNod e;return Polymer.dom(i).insertBefore(n.root,s),this._instances[e]=n,n},_downgrad eInstance:function(e,t){var n=this._detachInstance(e);return n&&this._pool.push( n),n={isPlaceholder:!0,__key__:t},this._instances[e]=n,n},_showHideChildren:func tion(e){for(var t=0;t<this._instances.length;t++)this._instances[t]._showHideChi ldren(e)},_forwardInstanceProp:function(e,t,n){if(t==this.as){var r;r=this._sort Fn||this._filterFn?this.items.indexOf(this.collection.getItem(e.__key__)):e[this .indexAs],this.set("items."+r,n)}},_forwardInstancePath:function(e,t,n){0===t.in dexOf(this.as+".")&&this._notifyPath("items."+e.__key__+"."+t.slice(this.as.leng th+1),n)},_forwardParentProp:function(e,t){for(var n,r=this._instances,s=0;s<r.l ength&&(n=r[s]);s++)n.isPlaceholder||n.__setProperty(e,t,!0)},_forwardParentPath :function(e,t){for(var n,r=this._instances,s=0;s<r.length&&(n=r[s]);s++)n.isPlac eholder||n._notifyPath(e,t,!0)},_forwardItemPath:function(e,t){if(this._keyToIns tIdx){var n=e.indexOf("."),r=e.substring(0,n<0?e.length:n),s=this._keyToInstIdx[ r],i=this._instances[s];i&&!i.isPlaceholder&&(n>=0?(e=this.as+"."+e.substring(n+ 1),i._notifyPath(e,t,!0)):i.__setProperty(this.as,t,!0))}},itemForElement:functi on(e){var t=this.modelForElement(e);return t&&t[this.as]},keyForElement:function (e){var t=this.modelForElement(e);return t&&t.__key__},indexForElement:function( e){var t=this.modelForElement(e);return t&&t[this.indexAs]}}),Polymer({is:"array -selector",_template:null,properties:{items:{type:Array,observer:"clearSelection "},multi:{type:Boolean,value:!1,observer:"clearSelection"},selected:{type:Object ,notify:!0},selectedItem:{type:Object,notify:!0},toggle:{type:Boolean,value:!1}} ,clearSelection:function(){if(Array.isArray(this.selected))for(var e=0;e<this.se lected.length;e++)this.unlinkPaths("selected."+e);else this.unlinkPaths("selecte d"),this.unlinkPaths("selectedItem");this.multi?this.selected&&!this.selected.le ngth||(this.selected=[],this._selectedColl=Polymer.Collection.get(this.selected) ):(this.selected=null,this._selectedColl=null),this.selectedItem=null},isSelecte d:function(e){return this.multi?void 0!==this._selectedColl.getKey(e):this.selec ted==e},deselect:function(e){if(this.multi){if(this.isSelected(e)){var t=this._s electedColl.getKey(e);this.arrayDelete("selected",e),this.unlinkPaths("selected. "+t)}}else this.selected=null,this.selectedItem=null,this.unlinkPaths("selected" ),this.unlinkPaths("selectedItem")},select:function(e){var t=Polymer.Collection. get(this.items),n=t.getKey(e);if(this.multi)if(this.isSelected(e))this.toggle&&t his.deselect(e);else{this.push("selected",e);var r=this._selectedColl.getKey(e); this.linkPaths("selected."+r,"items."+n)}else this.toggle&&e==this.selected?this .deselect():(this.selected=e,this.selectedItem=e,this.linkPaths("selected","item s."+n),this.linkPaths("selectedItem","items."+n))}}),Polymer({is:"dom-if",extend s:"template",_template:null,properties:{if:{type:Boolean,value:!1,observer:"_que ueRender"},restamp:{type:Boolean,value:!1,observer:"_queueRender"}},behaviors:[P olymer.Templatizer],_queueRender:function(){this._debounceTemplate(this._render) },detached:function(){this.parentNode&&(this.parentNode.nodeType!=Node.DOCUMENT_ FRAGMENT_NODE||Polymer.Settings.hasShadow&&this.parentNode instanceof ShadowRoot )||this._teardownInstance()},attached:function(){this.if&&this.ctor&&this.async( this._ensureInstance)},render:function(){this._flushTemplates()},_render:functio n(){this.if?(this.ctor||this.templatize(this),this._ensureInstance(),this._showH ideChildren()):this.restamp&&this._teardownInstance(),!this.restamp&&this._insta nce&&this._showHideChildren(),this.if!=this._lastIf&&(this.fire("dom-change"),th is._lastIf=this.if)},_ensureInstance:function(){var e=Polymer.dom(this).parentNo de;if(e){var t=Polymer.dom(e);if(this._instance){var n=this._instance._children; if(n&&n.length){var r=Polymer.dom(this).previousSibling;if(r!==n[n.length-1])for (var s,i=0;i<n.length&&(s=n[i]);i++)t.insertBefore(s,this)}}else{this._instance= this.stamp();var o=this._instance.root;t.insertBefore(o,this)}}},_teardownInstan ce:function(){if(this._instance){var e=this._instance._children;if(e&&e.length)f or(var t,n=Polymer.dom(Polymer.dom(e[0]).parentNode),r=0;r<e.length&&(t=e[r]);r+ +)n.removeChild(t);this._instance=null}},_showHideChildren:function(){var e=this .__hideTemplateChildren__||!this.if;this._instance&&this._instance._showHideChil dren(e)},_forwardParentProp:function(e,t){this._instance&&this._instance.__setPr operty(e,t,!0)},_forwardParentPath:function(e,t){this._instance&&this._instance. _notifyPath(e,t,!0)}}),Polymer({is:"dom-bind",extends:"template",_template:null, created:function(){var e=this;Polymer.RenderStatus.whenReady(function(){"loading "==document.readyState?document.addEventListener("DOMContentLoaded",function(){e ._markImportsReady()}):e._markImportsReady()})},_ensureReady:function(){this._re adied||this._readySelf()},_markImportsReady:function(){this._importsReady=!0,thi s._ensureReady()},_registerFeatures:function(){this._prepConstructor()},_insertC hildren:function(){var e=Polymer.dom(Polymer.dom(this).parentNode);e.insertBefor e(this.root,this)},_removeChildren:function(){if(this._children)for(var e=0;e<th is._children.length;e++)this.root.appendChild(this._children[e])},_initFeatures: function(){},_scopeElementClass:function(e,t){return this.dataHost?this.dataHost ._scopeElementClass(e,t):t},_configureInstanceProperties:function(){},_prepConfi gure:function(){var e={};for(var t in this._propertyEffects)e[t]=this[t];var n=t his._setupConfigure;this._setupConfigure=function(){n.call(this,e)}},attached:fu nction(){this._importsReady&&this.render()},detached:function(){this._removeChil dren()},render:function(){this._ensureReady(),this._children||(this._template=th is,this._prepAnnotations(),this._prepEffects(),this._prepBehaviors(),this._prepC onfigure(),this._prepBindings(),this._prepPropertyInfo(),Polymer.Base._initFeatu res.call(this),this._children=Polymer.TreeApi.arrayCopyChildNodes(this.root)),th is._insertChildren(),this.fire("dom-change")}})</script> <script>window.Swarming Behaviors=window.SwarmingBehaviors||{},function(){SwarmingBehaviors.CommonBehavi or={_botLink:function(e){if(e)return"/bot?id="+e},_botListLink:function(e,t){e=e ||[],t=t||[];var n=[];e.forEach(function(e){e.key&&e.value?Array.isArray(e.value )?e.value.forEach(function(t){n.push(e.key+":"+t)}):n.push(e.key+":"+e.value):n. push(e)});var s={f:n,c:t};return"/botlist?"+sk.query.fromParamSet(s)},_getJsonAs ync:function(e,t,n,s,i){if(!e||!t||!n)return void console.log("Need at least a p olymer element to bind to, a busy element, and a url");this.set(n,!0);var o=new Date;return this._jsonAsync=this._jsonAsync||{},this._jsonAsync[e]=o,i&&(t=t+"?" +sk.query.fromParamSet(i)),sk.request("GET",t,"",s).then(JSON.parse).then(functi on(t){return this._jsonAsync[e]!==o?(console.log("ignoring result because a seco nd request happened."),void this.set(n,!1)):(this.set(e,t),void this.set(n,!1))} .bind(this)).catch(function(s){return console.log("Reason for failure of request to "+t,s),this._jsonAsync[e]!==o?(console.log("ignoring failure because a secon d request happened."),void this.set(n,!1)):(this.set(e,!1),this.set(n,!1),Promis e.reject(s))}.bind(this))},_getJsonAsyncArr:function(e,t,n,s,i,o){if(!t||!n||!s) return void console.log("Need at least a polymer array to bind to, a busy elemen t, and a url");var r=t+":"+e;this.splice(s,e,1,{status:!0});var a=new Date;retur n this._jsonAsync=this._jsonAsync||{},this._jsonAsync[r]=a,o&&(n=n+"?"+sk.query. fromParamSet(o)),sk.request("GET",n,"",i).then(JSON.parse).then(function(n){retu rn this._jsonAsync[r]!==a?(console.log("ignoring result because a second request happened for ",r),void this.splice(s,e,1,{status:!1})):(this.splice(t,e,1,n),vo id this.splice(s,e,1,{status:!1}))}.bind(this)).catch(function(t){return console .log("Reason for failure of request to "+n,t),this._jsonAsync[r]!==a?(console.lo g("ignoring failure because a second request happened."),void this.splice(s,e,1, {status:!1})):(this.splice(s,e,1,{status:!1}),Promise.reject(t))}.bind(this))},_ humanDuration:function(e){return sk.human.strDuration(e)||"0s"},_not:function(e) {return!e},_or:function(){for(var e=!1,t=0;t<arguments.length;t++)e=e||arguments [t];return e},_taskLink:function(e,t){if(e)return t||(e=e.substring(0,e.length-1 )+"0"),"/task?id="+e},_taskListLink:function(e,t){e=e||[],t=t||[];var n=[];e.for Each(function(e){e.key&&e.value?Array.isArray(e.value)?e.value.forEach(function( t){n.push(e.key+":"+t)}):n.push(e.key+":"+e.value):n.push(e)});var s={f:n,c:t};r eturn"/tasklist?"+sk.query.fromParamSet(s)},_timeDiffApprox:function(e){return e ?sk.human.diffDate(e.getTime()):"eons"},_timeDiffExact:function(e,t){return e?(t ||(t=new Date),this._humanDuration((t.getTime()-e.getTime())/1e3)):"eons"},_trut hy:function(e){return!!e}}}()</script> <script>Polymer.AppLayout=Polymer.AppLayo ut||{},Polymer.AppLayout._scrollEffects=Polymer.AppLayout._scrollEffects||{},Pol ymer.AppLayout.scrollTimingFunction=function(o,l,e,r){return o/=r,-e*o*(o-2)+l}, Polymer.AppLayout.registerEffect=function(o,l){if(null!=Polymer.AppLayout._scrol lEffects[o])throw new Error("effect `"+o+"` is already registered.");Polymer.App Layout._scrollEffects[o]=l},Polymer.AppLayout.scroll=function(o){o=o||{};var l=d ocument.documentElement,e=o.target||l,r="scrollBehavior"in e.style&&e.scroll,t=" app-layout-silent-scroll",s=o.top||0,c=o.left||0,i=e===l?window.scrollTo:functio n(o,l){e.scrollLeft=o,e.scrollTop=l};if("smooth"===o.behavior)if(r)e.scroll(o);e lse{var n=Polymer.AppLayout.scrollTimingFunction,a=Date.now(),p=e===l?window.pag eYOffset:e.scrollTop,u=e===l?window.pageXOffset:e.scrollLeft,y=s-p,f=c-u,m=300,L =function o(){var l=Date.now(),e=l-a;e<m?(i(n(e,u,f,m),n(e,p,y,m)),requestAnimat ionFrame(o)):i(c,s)}.bind(this);L()}else"silent"===o.behavior?(l.classList.add(t ),clearInterval(Polymer.AppLayout._scrollTimer),Polymer.AppLayout._scrollTimer=s etTimeout(function(){l.classList.remove(t),Polymer.AppLayout._scrollTimer=null}, 100),i(c,s)):i(c,s)}</script> <style>[hidden]{display:none!important}</style> <s tyle is="custom-style">:root{--layout:{display:-ms-flexbox;display:-webkit-flex; display:flex};--layout-inline:{display:-ms-inline-flexbox;display:-webkit-inline -flex;display:inline-flex};--layout-horizontal:{@apply(--layout);-ms-flex-direct ion:row;-webkit-flex-direction:row;flex-direction:row};--layout-horizontal-rever se:{@apply(--layout);-ms-flex-direction:row-reverse;-webkit-flex-direction:row-r everse;flex-direction:row-reverse};--layout-vertical:{@apply(--layout);-ms-flex- direction:column;-webkit-flex-direction:column;flex-direction:column};--layout-v ertical-reverse:{@apply(--layout);-ms-flex-direction:column-reverse;-webkit-flex -direction:column-reverse;flex-direction:column-reverse};--layout-wrap:{-ms-flex -wrap:wrap;-webkit-flex-wrap:wrap;flex-wrap:wrap};--layout-wrap-reverse:{-ms-fle x-wrap:wrap-reverse;-webkit-flex-wrap:wrap-reverse;flex-wrap:wrap-reverse};--lay out-flex-auto:{-ms-flex:1 1 auto;-webkit-flex:1 1 auto;flex:1 1 auto};--layout-f lex-none:{-ms-flex:none;-webkit-flex:none;flex:none};--layout-flex:{-ms-flex:1 1 0px;-webkit-flex:1;flex:1;-webkit-flex-basis:0px;flex-basis:0px};--layout-flex- 2:{-ms-flex:2;-webkit-flex:2;flex:2};--layout-flex-3:{-ms-flex:3;-webkit-flex:3; flex:3};--layout-flex-4:{-ms-flex:4;-webkit-flex:4;flex:4};--layout-flex-5:{-ms- flex:5;-webkit-flex:5;flex:5};--layout-flex-6:{-ms-flex:6;-webkit-flex:6;flex:6} ;--layout-flex-7:{-ms-flex:7;-webkit-flex:7;flex:7};--layout-flex-8:{-ms-flex:8; -webkit-flex:8;flex:8};--layout-flex-9:{-ms-flex:9;-webkit-flex:9;flex:9};--layo ut-flex-10:{-ms-flex:10;-webkit-flex:10;flex:10};--layout-flex-11:{-ms-flex:11;- webkit-flex:11;flex:11};--layout-flex-12:{-ms-flex:12;-webkit-flex:12;flex:12};- -layout-start:{-ms-flex-align:start;-webkit-align-items:flex-start;align-items:f lex-start};--layout-center:{-ms-flex-align:center;-webkit-align-items:center;ali gn-items:center};--layout-end:{-ms-flex-align:end;-webkit-align-items:flex-end;a lign-items:flex-end};--layout-baseline:{-ms-flex-align:baseline;-webkit-align-it ems:baseline;align-items:baseline};--layout-start-justified:{-ms-flex-pack:start ;-webkit-justify-content:flex-start;justify-content:flex-start};--layout-center- justified:{-ms-flex-pack:center;-webkit-justify-content:center;justify-content:c enter};--layout-end-justified:{-ms-flex-pack:end;-webkit-justify-content:flex-en d;justify-content:flex-end};--layout-around-justified:{-ms-flex-pack:distribute; -webkit-justify-content:space-around;justify-content:space-around};--layout-just ified:{-ms-flex-pack:justify;-webkit-justify-content:space-between;justify-conte nt:space-between};--layout-center-center:{@apply(--layout-center);@apply(--layou t-center-justified)};--layout-self-start:{-ms-align-self:flex-start;-webkit-alig n-self:flex-start;align-self:flex-start};--layout-self-center:{-ms-align-self:ce nter;-webkit-align-self:center;align-self:center};--layout-self-end:{-ms-align-s elf:flex-end;-webkit-align-self:flex-end;align-self:flex-end};--layout-self-stre tch:{-ms-align-self:stretch;-webkit-align-self:stretch;align-self:stretch};--lay out-self-baseline:{-ms-align-self:baseline;-webkit-align-self:baseline;align-sel f:baseline};--layout-start-aligned:{-ms-flex-line-pack:start;-ms-align-content:f lex-start;-webkit-align-content:flex-start;align-content:flex-start};--layout-en d-aligned:{-ms-flex-line-pack:end;-ms-align-content:flex-end;-webkit-align-conte nt:flex-end;align-content:flex-end};--layout-center-aligned:{-ms-flex-line-pack: center;-ms-align-content:center;-webkit-align-content:center;align-content:cente r};--layout-between-aligned:{-ms-flex-line-pack:justify;-ms-align-content:space- between;-webkit-align-content:space-between;align-content:space-between};--layou t-around-aligned:{-ms-flex-line-pack:distribute;-ms-align-content:space-around;- webkit-align-content:space-around;align-content:space-around};--layout-block:{di splay:block};--layout-invisible:{visibility:hidden!important};--layout-relative: {position:relative};--layout-fit:{position:absolute;top:0;right:0;bottom:0;left: 0};--layout-scroll:{-webkit-overflow-scrolling:touch;overflow:auto};--layout-ful lbleed:{margin:0;height:100vh};--layout-fixed-top:{position:fixed;top:0;left:0;r ight:0};--layout-fixed-right:{position:fixed;top:0;right:0;bottom:0};--layout-fi xed-bottom:{position:fixed;right:0;bottom:0;left:0};--layout-fixed-left:{positio n:fixed;top:0;bottom:0;left:0};}</style> <dom-module id="app-drawer" assetpath=" /res/imp/bower_components/app-layout/app-drawer/"> <template> <style>:host{posit ion:fixed;top:-120px;right:0;bottom:-120px;left:0;visibility:hidden;transition-p roperty:visibility}:host([opened]){visibility:visible}:host([persistent]){width: var(--app-drawer-width,256px)}:host([persistent][position=left]){right:auto}:hos t([persistent][position=right]){left:auto}#contentContainer{position:absolute;to p:0;bottom:0;left:0;width:var(--app-drawer-width,256px);padding:120px 0;transiti on-property:-webkit-transform;transition-property:transform;-webkit-transform:tr anslate3d(-100%,0,0);transform:translate3d(-100%,0,0);background-color:#FFF;@app ly(--app-drawer-content-container)}:host([position=right])>#contentContainer{rig ht:0;left:auto;-webkit-transform:translate3d(100%,0,0);transform:translate3d(100 %,0,0)}:host([swipe-open])>#contentContainer::after{position:fixed;top:0;bottom: 0;left:100%;visibility:visible;width:20px;content:''}:host([swipe-open][position =right])>#contentContainer::after{right:100%;left:auto}:host([opened])>#contentC ontainer{-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}#scri m{position:absolute;top:0;right:0;bottom:0;left:0;transition-property:opacity;-w ebkit-transform:translateZ(0);transform:translateZ(0);opacity:0;background:var(- -app-drawer-scrim-background,rgba(0,0,0,.5))}:host([opened])>#scrim{opacity:1}:h ost([opened][persistent])>#scrim{visibility:hidden;opacity:0}</style> <div id="s crim" on-tap="close"></div> <div id="contentContainer"> <content></content> </di v> </template> <script>Polymer({is:"app-drawer",properties:{opened:{type:Boolean ,value:!1,notify:!0,reflectToAttribute:!0},persistent:{type:Boolean,value:!1,ref lectToAttribute:!0},transitionDuration:{type:Number,value:200},align:{type:Strin g,value:"left"},position:{type:String,readOnly:!0,reflectToAttribute:!0},swipeOp en:{type:Boolean,value:!1,reflectToAttribute:!0},noFocusTrap:{type:Boolean,value :!1}},observers:["resetLayout(position, isAttached)","_resetPosition(align, isAt tached)","_styleTransitionDuration(transitionDuration)","_openedPersistentChange d(opened, persistent)"],_translateOffset:0,_trackDetails:null,_drawerState:0,_bo undEscKeydownHandler:null,_firstTabStop:null,_lastTabStop:null,attached:function (){this._styleTransitionDuration(0),Polymer.RenderStatus.afterNextRender(this,fu nction(){this._styleTransitionDuration(this.transitionDuration),this._boundEscKe ydownHandler=this._escKeydownHandler.bind(this),this._resetDrawerState(),this.$. scrim.addEventListener("transitionend",this._transitionend.bind(this)),this.$.co ntentContainer.addEventListener("transitionend",this._transitionend.bind(this)), this.addEventListener("keydown",this._tabKeydownHandler.bind(this)),this.listen( this,"track","_track"),this.setScrollDirection("y")}),this.fire("app-drawer-atta ched")},detached:function(){document.removeEventListener("keydown",this._boundEs cKeydownHandler)},open:function(){this.opened=!0},close:function(){this.opened=! 1},toggle:function(){this.opened=!this.opened},getWidth:function(){return this.$ .contentContainer.offsetWidth},resetLayout:function(){this.fire("app-drawer-rese t-layout")},_isRTL:function(){return"rtl"===window.getComputedStyle(this).direct ion},_resetPosition:function(){switch(this.align){case"start":return void this._ setPosition(this._isRTL()?"right":"left");case"end":return void this._setPositio n(this._isRTL()?"left":"right")}this._setPosition(this.align)},_escKeydownHandle r:function(t){var i=27;t.keyCode===i&&(t.preventDefault(),this.close())},_track: function(t){if(!this.persistent)switch(t.preventDefault(),t.detail.state){case"s tart":this._trackStart(t);break;case"track":this._trackMove(t);break;case"end":t his._trackEnd(t)}},_trackStart:function(t){this._drawerState=this._DRAWER_STATE. TRACKING,this._styleTransitionDuration(0),this.style.visibility="visible";var i= this.$.contentContainer.getBoundingClientRect();"left"===this.position?this._tra nslateOffset=i.left:this._translateOffset=i.right-window.innerWidth,this._trackD etails=[]},_trackMove:function(t){this._translateDrawer(t.detail.dx+this._transl ateOffset),this._trackDetails.push({dx:t.detail.dx,timeStamp:Date.now()})},_trac kEnd:function(t){var i=t.detail.dx+this._translateOffset,e=this.getWidth(),n="le ft"===this.position,s=n?i>=0||i<=-e:i<=0||i>=e;if(!s){var a=this._trackDetails;i f(this._trackDetails=null,this._flingDrawer(t,a),this._drawerState===this._DRAWE R_STATE.FLINGING)return}var r=e/2;t.detail.dx<-r?this.opened="right"===this.posi tion:t.detail.dx>r&&(this.opened="left"===this.position),s&&this._resetDrawerSta te(),this._styleTransitionDuration(this.transitionDuration),this._resetDrawerTra nslate(),this.style.visibility=""},_calculateVelocity:function(t,i){for(var e,n= Date.now(),s=n-100,a=0,r=i.length-1;a<=r;){var o=a+r>>1,h=i[o];h.timeStamp>=s?(e =h,r=o-1):a=o+1}if(e){var l=t.detail.dx-e.dx,d=n-e.timeStamp||1;return l/d}retur n 0},_flingDrawer:function(t,i){var e=this._calculateVelocity(t,i);if(!(Math.abs (e)<this._MIN_FLING_THRESHOLD)){this._drawerState=this._DRAWER_STATE.FLINGING;va r n,s=t.detail.dx+this._translateOffset,a=this.getWidth(),r="left"===this.positi on,o=e>0,h=!o&&r,l=o&&!r;n=h?-(s+a):l?a-s:-s,o?(e=Math.max(e,this._MIN_TRANSITIO N_VELOCITY),this.opened="left"===this.position):(e=Math.min(e,-this._MIN_TRANSIT ION_VELOCITY),this.opened="right"===this.position),this._styleTransitionDuration (this._FLING_INITIAL_SLOPE*n/e),this._styleTransitionTimingFunction(this._FLING_ TIMING_FUNCTION),this._resetDrawerTranslate()}},_transitionend:function(){this._ drawerState===this._DRAWER_STATE.FLINGING&&(this._styleTransitionDuration(this.t ransitionDuration),this._styleTransitionTimingFunction(""),this.style.visibility =""),this._resetDrawerState()},_styleTransitionDuration:function(t){this.style.t ransitionDuration=t+"ms",this.$.contentContainer.style.transitionDuration=t+"ms" ,this.$.scrim.style.transitionDuration=t+"ms"},_styleTransitionTimingFunction:fu nction(t){this.$.contentContainer.style.transitionTimingFunction=t,this.$.scrim. style.transitionTimingFunction=t},_translateDrawer:function(t){var i=this.getWid th();"left"===this.position?(t=Math.max(-i,Math.min(t,0)),this.$.scrim.style.opa city=1+t/i):(t=Math.max(0,Math.min(t,i)),this.$.scrim.style.opacity=1-t/i),this. translate3d(t+"px","0","0",this.$.contentContainer)},_resetDrawerTranslate:funct ion(){this.$.scrim.style.opacity="",this.transform("",this.$.contentContainer)}, _resetDrawerState:function(){var t=this._drawerState;this.opened?this._drawerSta te=this.persistent?this._DRAWER_STATE.OPENED_PERSISTENT:this._DRAWER_STATE.OPENE D:this._drawerState=this._DRAWER_STATE.CLOSED,t!==this._drawerState&&(this._draw erState===this._DRAWER_STATE.OPENED?(this._setKeyboardFocusTrap(),document.addEv entListener("keydown",this._boundEscKeydownHandler),document.body.style.overflow ="hidden"):(document.removeEventListener("keydown",this._boundEscKeydownHandler) ,document.body.style.overflow=""),t!==this._DRAWER_STATE.INIT&&this.fire("app-dr awer-transitioned"))},_setKeyboardFocusTrap:function(){if(!this.noFocusTrap){var t=['a[href]:not([tabindex="-1"])','area[href]:not([tabindex="-1"])','input:not( [disabled]):not([tabindex="-1"])','select:not([disabled]):not([tabindex="-1"])', 'textarea:not([disabled]):not([tabindex="-1"])','button:not([disabled]):not([tab index="-1"])','iframe:not([tabindex="-1"])','[tabindex]:not([tabindex="-1"])','[ contentEditable=true]:not([tabindex="-1"])'].join(","),i=Polymer.dom(this).query SelectorAll(t);i.length>0?(this._firstTabStop=i[0],this._lastTabStop=i[i.length- 1]):(this._firstTabStop=null,this._lastTabStop=null);var e=this.getAttribute("ta bindex");e&&parseInt(e,10)>-1?this.focus():this._firstTabStop&&this._firstTabSto p.focus()}},_tabKeydownHandler:function(t){if(!this.noFocusTrap){var i=9;this._d rawerState===this._DRAWER_STATE.OPENED&&t.keyCode===i&&(t.shiftKey?this._firstTa bStop&&Polymer.dom(t).localTarget===this._firstTabStop&&(t.preventDefault(),this ._lastTabStop.focus()):this._lastTabStop&&Polymer.dom(t).localTarget===this._las tTabStop&&(t.preventDefault(),this._firstTabStop.focus()))}},_openedPersistentCh anged:function(){0===this.transitionDuration&&this._resetDrawerState()},_MIN_FLI NG_THRESHOLD:.2,_MIN_TRANSITION_VELOCITY:1.2,_FLING_TIMING_FUNCTION:"cubic-bezie r(0.667, 1, 0.667, 1)",_FLING_INITIAL_SLOPE:1.5,_DRAWER_STATE:{INIT:0,OPENED:1,O PENED_PERSISTENT:2,CLOSED:3,TRACKING:4,FLINGING:5}})</script> </dom-module> <scr ipt>Polymer({is:"iron-media-query",properties:{queryMatches:{type:Boolean,value: !1,readOnly:!0,notify:!0},query:{type:String,observer:"queryChanged"},full:{type :Boolean,value:!1},_boundMQHandler:{value:function(){return this.queryHandler.bi nd(this)}},_mq:{value:null}},attached:function(){this.style.display="none",this. queryChanged()},detached:function(){this._remove()},_add:function(){this._mq&&th is._mq.addListener(this._boundMQHandler)},_remove:function(){this._mq&&this._mq. removeListener(this._boundMQHandler),this._mq=null},queryChanged:function(){this ._remove();var e=this.query;e&&(this.full||"("===e[0]||(e="("+e+")"),this._mq=wi ndow.matchMedia(e),this._add(),this.queryHandler(this._mq))},queryHandler:functi on(e){this._setQueryMatches(e.matches)}})</script> <script>Polymer.IronResizable Behavior={properties:{_parentResizable:{type:Object,observer:"_parentResizableCh anged"},_notifyingDescendant:{type:Boolean,value:!1}},listeners:{"iron-request-r esize-notifications":"_onIronRequestResizeNotifications"},created:function(){thi s._interestedResizables=[],this._boundNotifyResize=this.notifyResize.bind(this)} ,attached:function(){this.fire("iron-request-resize-notifications",null,{node:th is,bubbles:!0,cancelable:!0}),this._parentResizable||(window.addEventListener("r esize",this._boundNotifyResize),this.notifyResize())},detached:function(){this._ parentResizable?this._parentResizable.stopResizeNotificationsFor(this):window.re moveEventListener("resize",this._boundNotifyResize),this._parentResizable=null}, notifyResize:function(){this.isAttached&&(this._interestedResizables.forEach(fun ction(e){this.resizerShouldNotify(e)&&this._notifyDescendant(e)},this),this._fir eResize())},assignParentResizable:function(e){this._parentResizable=e},stopResiz eNotificationsFor:function(e){var i=this._interestedResizables.indexOf(e);i>-1&& (this._interestedResizables.splice(i,1),this.unlisten(e,"iron-resize","_onDescen dantIronResize"))},resizerShouldNotify:function(e){return!0},_onDescendantIronRe size:function(e){return this._notifyingDescendant?void e.stopPropagation():void( Polymer.Settings.useShadow||this._fireResize())},_fireResize:function(){this.fir e("iron-resize",null,{node:this,bubbles:!1})},_onIronRequestResizeNotifications: function(e){var i=e.path?e.path[0]:e.target;i!==this&&(this._interestedResizable s.indexOf(i)===-1&&(this._interestedResizables.push(i),this.listen(i,"iron-resiz e","_onDescendantIronResize")),i.assignParentResizable(this),this._notifyDescend ant(i),e.stopPropagation())},_parentResizableChanged:function(e){e&&window.remov eEventListener("resize",this._boundNotifyResize)},_notifyDescendant:function(e){ this.isAttached&&(this._notifyingDescendant=!0,e.notifyResize(),this._notifyingD escendant=!1)}}</script> <dom-module id="app-drawer-layout" assetpath="/res/imp/ bower_components/app-layout/app-drawer-layout/"> <template> <style>:host{display :block}:host([fullbleed]){@apply(--layout-fit)}#contentContainer{position:relati ve;height:100%;transition:var(--app-drawer-layout-content-transition,none)}#cont entContainer:not(.narrow)>::content [drawer-toggle]{display:none}</style> <div i d="contentContainer"> <content select=":not(app-drawer)"></content> </div> <cont ent id="drawerContent" select="app-drawer"></content> <iron-media-query query="[ [_computeMediaQuery(forceNarrow, responsiveWidth)]]" on-query-matches-changed="_ onQueryMatchesChanged"></iron-media-query> </template> <script>Polymer({is:"app- drawer-layout",behaviors:[Polymer.IronResizableBehavior],properties:{forceNarrow :{type:Boolean,value:!1},responsiveWidth:{type:String,value:"640px"},narrow:{typ e:Boolean,readOnly:!0,notify:!0},openedWhenNarrow:{type:Boolean,value:!1}},liste ners:{tap:"_tapHandler","app-drawer-attached":"_resetDrawerState","app-drawer-re set-layout":"resetLayout","iron-resize":"resetLayout"},observers:["resetLayout(n arrow, isAttached)","_narrowChanged(narrow, isAttached)"],get drawer(){return Po lymer.dom(this.$.drawerContent).getDistributedNodes()[0]},_tapHandler:function(e ){var t=Polymer.dom(e).localTarget;if(t&&t.hasAttribute("drawer-toggle")){var r= this.drawer;r&&!r.persistent&&r.toggle()}},resetLayout:function(){this.debounce( "_resetLayout",function(){var e=this.drawer,t=this.$.contentContainer;if(this.na rrow||!e)t.style.marginLeft="",t.style.marginRight="";else{var r=e.getWidth();"r ight"==e.position?(t.style.marginLeft="",t.style.marginRight=r+"px"):(t.style.ma rginLeft=r+"px",t.style.marginRight="")}})},_resetDrawerState:function(){this.de bounce("_resetDrawerState",function(){var e=this.drawer;e&&(this.narrow?(e.opene d=this.openedWhenNarrow,e.persistent=!1):e.opened=e.persistent=!0)})},_narrowCha nged:function(e){this.toggleClass("narrow",e,this.$.contentContainer),this._rese tDrawerState(),this.notifyResize()},_onQueryMatchesChanged:function(e){this._set Narrow(e.detail.value)},_computeMediaQuery:function(e,t){return e?"(min-width: 0 px)":"(max-width: "+t+")"}})</script> </dom-module> <dom-module id="app-grid-sty le" assetpath="/res/imp/bower_components/app-layout/app-grid/"> <template> <styl e>:host{--app-grid-expandible-item:{-webkit-flex-basis:calc((100% - .1px)/ var(- -app-grid-columns,1) * var(--app-grid-expandible-item-columns,1) - var(--app-gri d-gutter,0px))!important;flex-basis:calc((100% - .1px)/ var(--app-grid-columns,1 ) * var(--app-grid-expandible-item-columns,1) - var(--app-grid-gutter,0px))!impo rtant;max-width:calc((100% - .1px)/ var(--app-grid-columns,1) * var(--app-grid-e xpandible-item-columns,1) - var(--app-grid-gutter,0px))!important};}.app-grid{di splay:-ms-flexbox;display:-webkit-flex;display:flex;-ms-flex-direction:row;-webk it-flex-direction:row;flex-direction:row;-ms-flex-wrap:wrap;-webkit-flex-wrap:wr ap;flex-wrap:wrap;padding-top:var(--app-grid-gutter,0);padding-left:var(--app-gr id-gutter,0);box-sizing:border-box}.app-grid>*{-ms-flex:1 1 100%;-webkit-flex:1; flex:1;-webkit-flex-basis:calc((100% - .1px - (var(--app-grid-gutter,0px) * var( --app-grid-columns,1)))/ var(--app-grid-columns,1));flex-basis:calc((100% - .1px - (var(--app-grid-gutter,0px) * var(--app-grid-columns,1)))/ var(--app-grid-col umns,1));max-width:calc((100% - .1px - (var(--app-grid-gutter,0px) * var(--app-g rid-columns,1)))/ var(--app-grid-columns,1));margin-bottom:var(--app-grid-gutter ,0);margin-right:var(--app-grid-gutter,0);height:var(--app-grid-item-height);box -sizing:border-box}.app-grid[has-aspect-ratio]>*{position:relative}.app-grid[has -aspect-ratio]>::before{display:block;content:"";padding-top:var(--app-grid-item -height,100%)}.app-grid[has-aspect-ratio]>*>*{position:absolute;top:0;right:0;bo ttom:0;left:0}</style> </template> </dom-module> <script>Polymer.IronScrollTarge tBehavior={properties:{scrollTarget:{type:HTMLElement,value:function(){return th is._defaultScrollTarget}}},observers:["_scrollTargetChanged(scrollTarget, isAtta ched)"],_shouldHaveListener:!0,_scrollTargetChanged:function(t,l){this._oldScrol lTarget&&(this._toggleScrollListener(!1,this._oldScrollTarget),this._oldScrollTa rget=null),l&&("document"===t?this.scrollTarget=this._doc:"string"==typeof t?thi s.scrollTarget=this.domHost?this.domHost.$[t]:Polymer.dom(this.ownerDocument).qu erySelector("#"+t):this._isValidScrollTarget()&&(this._boundScrollHandler=this._ boundScrollHandler||this._scrollHandler.bind(this),this._oldScrollTarget=t,this. _toggleScrollListener(this._shouldHaveListener,t)))},_scrollHandler:function(){} ,get _defaultScrollTarget(){return this._doc},get _doc(){return this.ownerDocume nt.documentElement},get _scrollTop(){return this._isValidScrollTarget()?this.scr ollTarget===this._doc?window.pageYOffset:this.scrollTarget.scrollTop:0},get _scr ollLeft(){return this._isValidScrollTarget()?this.scrollTarget===this._doc?windo w.pageXOffset:this.scrollTarget.scrollLeft:0},set _scrollTop(t){this.scrollTarge t===this._doc?window.scrollTo(window.pageXOffset,t):this._isValidScrollTarget()& &(this.scrollTarget.scrollTop=t)},set _scrollLeft(t){this.scrollTarget===this._d oc?window.scrollTo(t,window.pageYOffset):this._isValidScrollTarget()&&(this.scro llTarget.scrollLeft=t)},scroll:function(t,l){this.scrollTarget===this._doc?windo w.scrollTo(t,l):this._isValidScrollTarget()&&(this.scrollTarget.scrollLeft=t,thi s.scrollTarget.scrollTop=l)},get _scrollTargetWidth(){return this._isValidScroll Target()?this.scrollTarget===this._doc?window.innerWidth:this.scrollTarget.offse tWidth:0},get _scrollTargetHeight(){return this._isValidScrollTarget()?this.scro llTarget===this._doc?window.innerHeight:this.scrollTarget.offsetHeight:0},_isVal idScrollTarget:function(){return this.scrollTarget instanceof HTMLElement},_togg leScrollListener:function(t,l){if(this._boundScrollHandler){var e=l===this._doc? window:l;t?e.addEventListener("scroll",this._boundScrollHandler):e.removeEventLi stener("scroll",this._boundScrollHandler)}},toggleScrollListener:function(t){thi s._shouldHaveListener=t,this._toggleScrollListener(t,this.scrollTarget)}}</scrip t> <script>Polymer.AppScrollEffectsBehavior=[Polymer.IronScrollTargetBehavior,{p roperties:{effects:{type:String},effectsConfig:{type:Object,value:function(){ret urn{}}},disabled:{type:Boolean,reflectToAttribute:!0,value:!1},threshold:{type:N umber,value:0},thresholdTriggered:{type:Boolean,notify:!0,readOnly:!0,reflectToA ttribute:!0}},observers:["_effectsChanged(effects, effectsConfig, isAttached)"], _updateScrollState:function(){},isOnScreen:function(){return!1},isContentBelow:f unction(){return!1},_effectsRunFn:null,_effects:null,get _clampedScrollTop(){ret urn Math.max(0,this._scrollTop)},detached:function(){this._tearDownEffects()},cr eateEffect:function(t,e){var f=Polymer.AppLayout._scrollEffects[t];if(!f)throw n ew ReferenceError(this._getUndefinedMsg(t));var n=this._boundEffect(f,e||{});ret urn n.setUp(),n},_effectsChanged:function(t,e,f){this._tearDownEffects(),""!==t& &f&&(t.split(" ").forEach(function(t){var f;""!==t&&((f=Polymer.AppLayout._scrol lEffects[t])?this._effects.push(this._boundEffect(f,e[t])):this._warn(this._logf ("_effectsChanged",this._getUndefinedMsg(t))))},this),this._setUpEffect())},_lay outIfDirty:function(){return this.offsetWidth},_boundEffect:function(t,e){e=e||{ };var f=parseFloat(e.startsAt||0),n=parseFloat(e.endsAt||1),s=n-f,i=function(){} ,r=0===f&&1===n?t.run:function(e,n){t.run.call(this,Math.max(0,(e-f)/s),n)};retu rn{setUp:t.setUp?t.setUp.bind(this,e):i,run:t.run?r.bind(this):i,tearDown:t.tear Down?t.tearDown.bind(this):i}},_setUpEffect:function(){this.isAttached&&this._ef fects&&(this._effectsRunFn=[],this._effects.forEach(function(t){t.setUp()!==!1&& this._effectsRunFn.push(t.run)},this))},_tearDownEffects:function(){this._effect s&&this._effects.forEach(function(t){t.tearDown()}),this._effectsRunFn=[],this._ effects=[]},_runEffects:function(t,e){this._effectsRunFn&&this._effectsRunFn.for Each(function(f){f(t,e)})},_scrollHandler:function(){if(!this.disabled){var t=th is._clampedScrollTop;this._updateScrollState(t),this.threshold>0&&this._setThres holdTriggered(t>=this.threshold)}},_getDOMRef:function(t){this._warn(this._logf( "_getDOMRef","`"+t+"` is undefined"))},_getUndefinedMsg:function(t){return"Scrol l effect `"+t+"` is undefined. Did you forget to import app-layout/app-scroll-ef fects/effects/"+t+".html ?"}}]</script> <dom-module id="app-header" assetpath="/ res/imp/bower_components/app-layout/app-header/"> <template> <style>:host{positi on:relative;display:block;transition-timing-function:linear;transition-property: -webkit-transform;transition-property:transform}:host::after{position:absolute;r ight:0;bottom:-5px;left:0;width:100%;height:5px;content:"";transition:opacity .4 s;pointer-events:none;opacity:0;box-shadow:inset 0 5px 6px -3px rgba(0,0,0,.4);w ill-change:opacity;@apply(--app-header-shadow)}:host([shadow])::after{opacity:1} ::content [condensed-title],::content [main-title]{-webkit-transform-origin:left top;transform-origin:left top;white-space:nowrap}::content [condensed-title]{op acity:0}#background{@apply(--layout-fit);overflow:hidden}#backgroundFrontLayer,# backgroundRearLayer{@apply(--layout-fit);height:100%;pointer-events:none;backgro und-size:cover}#backgroundFrontLayer{@apply(--app-header-background-front-layer) }#backgroundRearLayer{opacity:0;@apply(--app-header-background-rear-layer)}#cont entContainer{position:relative;width:100%;height:100%}:host([disabled]),:host([d isabled]) #backgroundFrontLayer,:host([disabled]) #backgroundRearLayer,:host([di sabled]) ::content>[sticky],:host([disabled]) ::content>app-toolbar:first-of-typ e,:host([disabled])::after,:host-context(.app-layout-silent-scroll),:host-contex t(.app-layout-silent-scroll) #backgroundFrontLayer,:host-context(.app-layout-sil ent-scroll) #backgroundRearLayer,:host-context(.app-layout-silent-scroll) ::cont ent>[sticky],:host-context(.app-layout-silent-scroll) ::content>app-toolbar:firs t-of-type,:host-context(.app-layout-silent-scroll)::after{transition:none!import ant}</style> <div id="contentContainer"> <content id="content"></content> </div> </template> <script>Polymer({is:"app-header",behaviors:[Polymer.AppScrollEffect sBehavior,Polymer.IronResizableBehavior],properties:{condenses:{type:Boolean,val ue:!1},fixed:{type:Boolean,value:!1},reveals:{type:Boolean,value:!1},shadow:{typ e:Boolean,reflectToAttribute:!0,value:!1}},observers:["resetLayout(isAttached, c ondenses, fixed)"],listeners:{"iron-resize":"_resizeHandler"},_height:0,_dHeight :0,_stickyElTop:0,_stickyEl:null,_top:0,_progress:0,_wasScrollingDown:!1,_initSc rollTop:0,_initTimestamp:0,_lastTimestamp:0,_lastScrollTop:0,get _maxHeaderTop() {return this.fixed?this._dHeight:this._height+5},_getStickyEl:function(){for(var t,e=Polymer.dom(this.$.content).getDistributedNodes(),i=0;i<e.length;i++)if(e[i ].nodeType===Node.ELEMENT_NODE){var s=e[i];if(s.hasAttribute("sticky")){t=s;brea k}t||(t=s)}return t},resetLayout:function(){this.fire("app-header-reset-layout") ,this.debounce("_resetLayout",function(){if(0!==this.offsetWidth||0!==this.offse tHeight){var t=this._clampedScrollTop,e=0===this._height||0===t,i=this.disabled; this._height=this.offsetHeight,this._stickyEl=this._getStickyEl(),this.disabled= !0,e||this._updateScrollState(0,!0),this._mayMove()?this._dHeight=this._stickyEl ?this._height-this._stickyEl.offsetHeight:0:this._dHeight=0,this._stickyElTop=th is._stickyEl?this._stickyEl.offsetTop:0,this._setUpEffect(),e?this._updateScroll State(t,!0):(this._updateScrollState(this._lastScrollTop,!0),this._layoutIfDirty ()),this.disabled=i}})},_updateScrollState:function(t,e){if(0!==this._height){va r i=0,s=0,o=this._top,r=(this._lastScrollTop,this._maxHeaderTop),h=t-this._lastS crollTop,n=Math.abs(h),a=t>this._lastScrollTop,l=Date.now();if(this._mayMove()&& (s=this._clamp(this.reveals?o+h:t,0,r)),t>=this._dHeight&&(s=this.condenses&&!th is.fixed?Math.max(this._dHeight,s):s,this.style.transitionDuration="0ms"),this.r eveals&&!this.disabled&&n<100&&((l-this._initTimestamp>300||this._wasScrollingDo wn!==a)&&(this._initScrollTop=t,this._initTimestamp=l),t>=r))if(Math.abs(this._i nitScrollTop-t)>30||n>10){a&&t>=r?s=r:!a&&t>=this._dHeight&&(s=this.condenses&&! this.fixed?this._dHeight:0);var _=h/(l-this._lastTimestamp);this.style.transitio nDuration=this._clamp((s-o)/_,0,300)+"ms"}else s=this._top;i=0===this._dHeight?t >0?1:0:s/this._dHeight,e||(this._lastScrollTop=t,this._top=s,this._wasScrollingD own=a,this._lastTimestamp=l),(e||i!==this._progress||o!==s||0===t)&&(this._progr ess=i,this._runEffects(i,s),this._transformHeader(s))}},_mayMove:function(){retu rn this.condenses||!this.fixed},willCondense:function(){return this._dHeight>0&& this.condenses},isOnScreen:function(){return 0!==this._height&&this._top<this._h eight},isContentBelow:function(){return 0===this._top?this._clampedScrollTop>0:t his._clampedScrollTop-this._maxHeaderTop>=0},_transformHeader:function(t){this.t ranslate3d(0,-t+"px",0),this._stickyEl&&this.condenses&&t>=this._stickyElTop&&th is.translate3d(0,Math.min(t,this._dHeight)-this._stickyElTop+"px",0,this._sticky El)},_resizeHandler:function(){this.resetLayout()},_clamp:function(t,e,i){return Math.min(i,Math.max(e,t))},_ensureBgContainers:function(){this._bgContainer||(t his._bgContainer=document.createElement("div"),this._bgContainer.id="background" ,this._bgRear=document.createElement("div"),this._bgRear.id="backgroundRearLayer ",this._bgContainer.appendChild(this._bgRear),this._bgFront=document.createEleme nt("div"),this._bgFront.id="backgroundFrontLayer",this._bgContainer.appendChild( this._bgFront),Polymer.dom(this.root).insertBefore(this._bgContainer,this.$.cont entContainer))},_getDOMRef:function(t){switch(t){case"backgroundFrontLayer":retu rn this._ensureBgContainers(),this._bgFront;case"backgroundRearLayer":return thi s._ensureBgContainers(),this._bgRear;case"background":return this._ensureBgConta iners(),this._bgContainer;case"mainTitle":return Polymer.dom(this).querySelector ("[main-title]");case"condensedTitle":return Polymer.dom(this).querySelector("[c ondensed-title]")}return null},getScrollState:function(){return{progress:this._p rogress,top:this._top}}})</script> </dom-module> <dom-module id="app-header-layo ut" assetpath="/res/imp/bower_components/app-layout/app-header-layout/"> <templa te> <style>:host{display:block;position:relative;z-index:0}:host>::content>app-h eader{@apply(--layout-fixed-top);z-index:1}:host([has-scrolling-region]){height: 100%}:host([has-scrolling-region])>::content>app-header{position:absolute}:host( [has-scrolling-region])>#contentContainer{@apply(--layout-fit);overflow-y:auto;- webkit-overflow-scrolling:touch}:host([fullbleed]){@apply(--layout-vertical);@ap ply(--layout-fit)}:host([fullbleed])>#contentContainer{@apply(--layout-vertical) ;@apply(--layout-flex)}#contentContainer{position:relative;z-index:0}</style> <c ontent id="header" select="app-header"></content> <div id="contentContainer"> <c ontent></content> </div> </template> <script>Polymer({is:"app-header-layout",beh aviors:[Polymer.IronResizableBehavior],properties:{hasScrollingRegion:{type:Bool ean,value:!1,reflectToAttribute:!0}},listeners:{"iron-resize":"_resizeHandler"," app-header-reset-layout":"resetLayout"},observers:["resetLayout(isAttached, hasS crollingRegion)"],get header(){return Polymer.dom(this.$.header).getDistributedN odes()[0]},resetLayout:function(){this._updateScroller(),this.debounce("_resetLa yout",this._updateContentPosition)},_updateContentPosition:function(){var e=this .header;if(this.isAttached&&e){var t=e.offsetHeight;if(this.hasScrollingRegion)e .style.left="",e.style.right="";else{var i=this.getBoundingClientRect(),o=docume nt.documentElement.clientWidth-i.right;e.style.left=i.left+"px",e.style.right=o+ "px"}var n=this.$.contentContainer.style;e.fixed&&!e.willCondense()&&this.hasScr ollingRegion?(n.marginTop=t+"px",n.paddingTop=""):(n.paddingTop=t+"px",n.marginT op="")}},_updateScroller:function(){if(this.isAttached){var e=this.header;e&&(e. scrollTarget=this.hasScrollingRegion?this.$.contentContainer:this.ownerDocument. documentElement)}},_resizeHandler:function(){this.resetLayout()}})</script> </do m-module> <dom-module id="app-scrollpos-control" assetpath="/res/imp/bower_compo nents/app-layout/app-scrollpos-control/"> <script>Polymer({is:"app-scrollpos-con trol",behaviors:[Polymer.IronScrollTargetBehavior],properties:{selected:{type:St ring,observer:"_selectedChanged"},reset:{type:Boolean,value:!1}},observers:["_up dateScrollPos(selected, reset)"],created:function(){this._scrollposMap={}},_sele ctedChanged:function(e,s){null!=s&&(this._scrollposMap[s]={x:this._scrollLeft,y: this._scrollTop})},_updateScrollPos:function(e,s){this.debounce("_updateScrollPo s",function(){var e=this._scrollposMap[this.selected];null==e||this.reset?this.s croll(0,0):this.scroll(e.x,e.y)})}})</script> </dom-module> <dom-module id="app- toolbar" assetpath="/res/imp/bower_components/app-layout/app-toolbar/"> <templat e> <style>:host{@apply(--layout-horizontal);@apply(--layout-center);position:rel ative;height:64px;padding:0 16px;pointer-events:none;font-size:var(--app-toolbar -font-size,20px)}::content>*{pointer-events:auto}::content>paper-icon-button{fon t-size:0}::content>[condensed-title],::content>[main-title]{pointer-events:none; @apply(--layout-flex)}::content>[bottom-item]{position:absolute;right:0;bottom:0 ;left:0}::content>[top-item]{position:absolute;top:0;right:0;left:0}::content>[s pacer]{margin-left:64px}</style> <content></content> </template> <script>Polymer ({is:"app-toolbar"})</script> </dom-module> <dom-module id="app-box" assetpath=" /res/imp/bower_components/app-layout/app-box/"> <template> <style>:host{position :relative;display:block}#background{@apply(--layout-fit);overflow:hidden;height: 100%}#backgroundFrontLayer{min-height:100%;pointer-events:none;background-size:c over;@apply(--app-box-background-front-layer)}#contentContainer{position:relativ e;width:100%;height:100%}:host([disabled]),:host([disabled]) #backgroundFrontLay er{transition:none!important}</style> <div id="background"> <div id="backgroundF rontLayer"> <content select="[background]"></content> </div> </div> <div id="con tentContainer"> <content id="content"></content> </div> </template> <script>Poly mer({is:"app-box",behaviors:[Polymer.AppScrollEffectsBehavior,Polymer.IronResiza bleBehavior],listeners:{"iron-resize":"_resizeHandler"},_progress:0,attached:fun ction(){this.resetLayout()},resetLayout:function(){this.debounce("_resetLayout", function(){if(0!==this.offsetWidth||0!==this.offsetHeight){var e=this._clampedSc rollTop,t=this.disabled;this.disabled=!0,this._elementTop=this._getElementTop(), this._elementHeight=this.offsetHeight,this._cachedScrollTargetHeight=this._scrol lTargetHeight,this._setUpEffect(),this._updateScrollState(e),this.disabled=t}},1 )},_getElementTop:function(){for(var e=this,t=0;e&&e!==this.scrollTarget;)t+=e.o ffsetTop,e=e.offsetParent;return t},_updateScrollState:function(e){if(this.isOnS creen()){var t=this._elementTop-e;this._progress=1-(t+this._elementHeight)/this. _cachedScrollTargetHeight,this._runEffects(this._progress,e)}},isOnScreen:functi on(){return this._elementTop<this._scrollTop+this._cachedScrollTargetHeight&&thi s._elementTop+this._elementHeight>this._scrollTop},_resizeHandler:function(){thi s.resetLayout()},_getDOMRef:function(e){return"background"===e?this.$.background :"backgroundFrontLayer"===e?this.$.backgroundFrontLayer:void 0},getScrollState:f unction(){return{progress:this._progress}}})</script> </dom-module> <dom-module id="iron-flex" assetpath="/res/imp/bower_components/iron-flex-layout/"> <templat e> <style>.layout.horizontal,.layout.vertical{display:-ms-flexbox;display:-webki t-flex;display:flex}.layout.inline{display:-ms-inline-flexbox;display:-webkit-in line-flex;display:inline-flex}.layout.horizontal{-ms-flex-direction:row;-webkit- flex-direction:row;flex-direction:row}.layout.vertical{-ms-flex-direction:column ;-webkit-flex-direction:column;flex-direction:column}.layout.wrap{-ms-flex-wrap: wrap;-webkit-flex-wrap:wrap;flex-wrap:wrap}.layout.center,.layout.center-center{ -ms-flex-align:center;-webkit-align-items:center;align-items:center}.layout.cent er-center,.layout.center-justified{-ms-flex-pack:center;-webkit-justify-content: center;justify-content:center}.flex{-ms-flex:1 1 0px;-webkit-flex:1;flex:1;-webk it-flex-basis:0px;flex-basis:0px}.flex-auto{-ms-flex:1 1 auto;-webkit-flex:1 1 a uto;flex:1 1 auto}.flex-none{-ms-flex:none;-webkit-flex:none;flex:none}</style> </template> </dom-module> <dom-module id="iron-flex-reverse" assetpath="/res/imp /bower_components/iron-flex-layout/"> <template> <style>.layout.horizontal-rever se,.layout.vertical-reverse{display:-ms-flexbox;display:-webkit-flex;display:fle x}.layout.horizontal-reverse{-ms-flex-direction:row-reverse;-webkit-flex-directi on:row-reverse;flex-direction:row-reverse}.layout.vertical-reverse{-ms-flex-dire ction:column-reverse;-webkit-flex-direction:column-reverse;flex-direction:column -reverse}.layout.wrap-reverse{-ms-flex-wrap:wrap-reverse;-webkit-flex-wrap:wrap- reverse;flex-wrap:wrap-reverse}</style> </template> </dom-module> <dom-module id ="iron-flex-alignment" assetpath="/res/imp/bower_components/iron-flex-layout/"> <template> <style>.layout.start{-ms-flex-align:start;-webkit-align-items:flex-st art;align-items:flex-start}.layout.center,.layout.center-center{-ms-flex-align:c enter;-webkit-align-items:center;align-items:center}.layout.end{-ms-flex-align:e nd;-webkit-align-items:flex-end;align-items:flex-end}.layout.baseline{-ms-flex-a lign:baseline;-webkit-align-items:baseline;align-items:baseline}.layout.start-ju stified{-ms-flex-pack:start;-webkit-justify-content:flex-start;justify-content:f lex-start}.layout.center-center,.layout.center-justified{-ms-flex-pack:center;-w ebkit-justify-content:center;justify-content:center}.layout.end-justified{-ms-fl ex-pack:end;-webkit-justify-content:flex-end;justify-content:flex-end}.layout.ar ound-justified{-ms-flex-pack:distribute;-webkit-justify-content:space-around;jus tify-content:space-around}.layout.justified{-ms-flex-pack:justify;-webkit-justif y-content:space-between;justify-content:space-between}.self-start{-ms-align-self :flex-start;-webkit-align-self:flex-start;align-self:flex-start}.self-center{-ms -align-self:center;-webkit-align-self:center;align-self:center}.self-end{-ms-ali gn-self:flex-end;-webkit-align-self:flex-end;align-self:flex-end}.self-stretch{- ms-align-self:stretch;-webkit-align-self:stretch;align-self:stretch}.self-baseli ne{-ms-align-self:baseline;-webkit-align-self:baseline;align-self:baseline}; .la yout.start-aligned{-ms-flex-line-pack:start;-ms-align-content:flex-start;-webkit -align-content:flex-start;align-content:flex-start}.layout.end-aligned{-ms-flex- line-pack:end;-ms-align-content:flex-end;-webkit-align-content:flex-end;align-co ntent:flex-end}.layout.center-aligned{-ms-flex-line-pack:center;-ms-align-conten t:center;-webkit-align-content:center;align-content:center}.layout.between-align ed{-ms-flex-line-pack:justify;-ms-align-content:space-between;-webkit-align-cont ent:space-between;align-content:space-between}.layout.around-aligned{-ms-flex-li ne-pack:distribute;-ms-align-content:space-around;-webkit-align-content:space-ar ound;align-content:space-around}</style> </template> </dom-module> <dom-module i d="iron-flex-factors" assetpath="/res/imp/bower_components/iron-flex-layout/"> < template> <style>.flex,.flex-1{-ms-flex:1 1 0px;-webkit-flex:1;flex:1;-webkit-fl ex-basis:0px;flex-basis:0px}.flex-2{-ms-flex:2;-webkit-flex:2;flex:2}.flex-3{-ms -flex:3;-webkit-flex:3;flex:3}.flex-4{-ms-flex:4;-webkit-flex:4;flex:4}.flex-5{- ms-flex:5;-webkit-flex:5;flex:5}.flex-6{-ms-flex:6;-webkit-flex:6;flex:6}.flex-7 {-ms-flex:7;-webkit-flex:7;flex:7}.flex-8{-ms-flex:8;-webkit-flex:8;flex:8}.flex -9{-ms-flex:9;-webkit-flex:9;flex:9}.flex-10{-ms-flex:10;-webkit-flex:10;flex:10 }.flex-11{-ms-flex:11;-webkit-flex:11;flex:11}.flex-12{-ms-flex:12;-webkit-flex: 12;flex:12}</style> </template> </dom-module> <dom-module id="iron-positioning" assetpath="/res/imp/bower_components/iron-flex-layout/"> <template> <style>.bloc k{display:block}[hidden]{display:none!important}.invisible{visibility:hidden!imp ortant}.relative{position:relative}.fit{position:absolute;top:0;right:0;bottom:0 ;left:0}body.fullbleed{margin:0;height:100vh}.scroll{-webkit-overflow-scrolling: touch;overflow:auto}.fixed-bottom,.fixed-left,.fixed-right,.fixed-top{position:f ixed}.fixed-top{top:0;left:0;right:0}.fixed-right{top:0;right:0;bottom:0}.fixed- bottom{right:0;bottom:0;left:0}.fixed-left{top:0;bottom:0;left:0}</style> </temp late> </dom-module> <script>!function(){var e={},t={},i=null;Polymer.IronMeta=Po lymer({is:"iron-meta",properties:{type:{type:String,value:"default",observer:"_t ypeChanged"},key:{type:String,observer:"_keyChanged"},value:{type:Object,notify: !0,observer:"_valueChanged"},self:{type:Boolean,observer:"_selfChanged"},list:{t ype:Array,notify:!0}},hostAttributes:{hidden:!0},factoryImpl:function(e){if(e)fo r(var t in e)switch(t){case"type":case"key":case"value":this[t]=e[t]}},created:f unction(){this._metaDatas=e,this._metaArrays=t},_keyChanged:function(e,t){this._ resetRegistration(t)},_valueChanged:function(e){this._resetRegistration(this.key )},_selfChanged:function(e){e&&(this.value=this)},_typeChanged:function(i){this. _unregisterKey(this.key),e[i]||(e[i]={}),this._metaData=e[i],t[i]||(t[i]=[]),thi s.list=t[i],this._registerKeyValue(this.key,this.value)},byKey:function(e){retur n this._metaData&&this._metaData[e]},_resetRegistration:function(e){this._unregi sterKey(e),this._registerKeyValue(this.key,this.value)},_unregisterKey:function( e){this._unregister(e,this._metaData,this.list)},_registerKeyValue:function(e,t) {this._register(e,t,this._metaData,this.list)},_register:function(e,t,i,a){e&&i& &void 0!==t&&(i[e]=t,a.push(t))},_unregister:function(e,t,i){if(e&&t&&e in t){va r a=t[e];delete t[e],this.arrayDelete(i,a)}}}),Polymer.IronMeta.getIronMeta=func tion(){return null===i&&(i=new Polymer.IronMeta),i},Polymer.IronMetaQuery=Polyme r({is:"iron-meta-query",properties:{type:{type:String,value:"default",observer:" _typeChanged"},key:{type:String,observer:"_keyChanged"},value:{type:Object,notif y:!0,readOnly:!0},list:{type:Array,notify:!0}},factoryImpl:function(e){if(e)for( var t in e)switch(t){case"type":case"key":this[t]=e[t]}},created:function(){this ._metaDatas=e,this._metaArrays=t},_keyChanged:function(e){this._setValue(this._m etaData&&this._metaData[e])},_typeChanged:function(i){this._metaData=e[i],this.l ist=t[i],this.key&&this._keyChanged(this.key)},byKey:function(e){return this._me taData&&this._metaData[e]}})}()</script> <dom-module id="iron-icon" assetpath="/ res/imp/bower_components/iron-icon/"> <template> <style>:host{@apply(--layout-in line);@apply(--layout-center-center);position:relative;vertical-align:middle;fil l:var(--iron-icon-fill-color,currentcolor);stroke:var(--iron-icon-stroke-color,n one);width:var(--iron-icon-width,24px);height:var(--iron-icon-height,24px);@appl y(--iron-icon)}</style> </template> <script>Polymer({is:"iron-icon",properties:{ icon:{type:String},theme:{type:String},src:{type:String},_meta:{value:Polymer.Ba se.create("iron-meta",{type:"iconset"})}},observers:["_updateIcon(_meta, isAttac hed)","_updateIcon(theme, isAttached)","_srcChanged(src, isAttached)","_iconChan ged(icon, isAttached)"],_DEFAULT_ICONSET:"icons",_iconChanged:function(t){var i= (t||"").split(":");this._iconName=i.pop(),this._iconsetName=i.pop()||this._DEFAU LT_ICONSET,this._updateIcon()},_srcChanged:function(t){this._updateIcon()},_uses Iconset:function(){return this.icon||!this.src},_updateIcon:function(){this._use sIconset()?(this._img&&this._img.parentNode&&Polymer.dom(this.root).removeChild( this._img),""===this._iconName?this._iconset&&this._iconset.removeIcon(this):thi s._iconsetName&&this._meta&&(this._iconset=this._meta.byKey(this._iconsetName),t his._iconset?(this._iconset.applyIcon(this,this._iconName,this.theme),this.unlis ten(window,"iron-iconset-added","_updateIcon")):this.listen(window,"iron-iconset -added","_updateIcon"))):(this._iconset&&this._iconset.removeIcon(this),this._im g||(this._img=document.createElement("img"),this._img.style.width="100%",this._i mg.style.height="100%",this._img.draggable=!1),this._img.src=this.src,Polymer.do m(this.root).appendChild(this._img))}})</script> </dom-module> <script>Polymer({ is:"iron-iconset-svg",properties:{name:{type:String,observer:"_nameChanged"},siz e:{type:Number,value:24},rtlMirroring:{type:Boolean,value:!1}},_targetIsRTL:func tion(e){return e&&e.nodeType!==Node.ELEMENT_NODE&&(e=e.host),e&&"rtl"===window.g etComputedStyle(e).direction},attached:function(){this.style.display="none"},get IconNames:function(){return this._icons=this._createIconMap(),Object.keys(this._ icons).map(function(e){return this.name+":"+e},this)},applyIcon:function(e,t){e= e.root||e,this.removeIcon(e);var n=this._cloneIcon(t,this.rtlMirroring&&this._ta rgetIsRTL(e));if(n){var o=Polymer.dom(e);return o.insertBefore(n,o.childNodes[0] ),e._svgIcon=n}return null},removeIcon:function(e){e=e.root||e,e._svgIcon&&(Poly mer.dom(e).removeChild(e._svgIcon),e._svgIcon=null)},_nameChanged:function(){new Polymer.IronMeta({type:"iconset",key:this.name,value:this}),this.async(function (){this.fire("iron-iconset-added",this,{node:window})})},_createIconMap:function (){var e=Object.create(null);return Polymer.dom(this).querySelectorAll("[id]").f orEach(function(t){e[t.id]=t}),e},_cloneIcon:function(e,t){return this._icons=th is._icons||this._createIconMap(),this._prepareSvgClone(this._icons[e],this.size, t)},_prepareSvgClone:function(e,t,n){if(e){var o=e.cloneNode(!0),r=document.crea teElementNS("http://www.w3.org/2000/svg","svg"),i=o.getAttribute("viewBox")||"0 0 "+t+" "+t,s="pointer-events: none; display: block; width: 100%; height: 100%;" ;return n&&o.hasAttribute("mirror-in-rtl")&&(s+="-webkit-transform:scale(-1,1);t ransform:scale(-1,1);"),r.setAttribute("viewBox",i),r.setAttribute("preserveAspe ctRatio","xMidYMid meet"),r.style.cssText=s,r.appendChild(o).removeAttribute("id "),r}return null}})</script> <iron-iconset-svg name="icons" size="24"> <svg><def s> <g id="3d-rotation"><path d="M7.52 21.48C4.25 19.94 1.91 16.76 1.55 13H.05C.5 6 19.16 5.71 24 12 24l.66-.03-3.81-3.81-1.33 1.32zm.89-6.52c-.19 0-.37-.03-.52-. 08-.16-.06-.29-.13-.4-.24-.11-.1-.2-.22-.26-.37-.06-.14-.09-.3-.09-.47h-1.3c0 .3 6.07.68.21.95.14.27.33.5.56.69.24.18.51.32.82.41.3.1.62.15.96.15.37 0 .72-.05 1. 03-.15.32-.1.6-.25.83-.44s.42-.43.55-.72c.13-.29.2-.61.2-.97 0-.19-.02-.38-.07-. 56-.05-.18-.12-.35-.23-.51-.1-.16-.24-.3-.4-.43-.17-.13-.37-.23-.61-.31.2-.09.37 -.2.52-.33.15-.13.27-.27.37-.42.1-.15.17-.3.22-.46.05-.16.07-.32.07-.48 0-.36-.0 6-.68-.18-.96-.12-.28-.29-.51-.51-.69-.2-.19-.47-.33-.77-.43C9.1 8.05 8.76 8 8.3 9 8c-.36 0-.69.05-1 .16-.3.11-.57.26-.79.45-.21.19-.38.41-.51.67-.12.26-.18.54-. 18.85h1.3c0-.17.03-.32.09-.45s.14-.25.25-.34c.11-.09.23-.17.38-.22.15-.05.3-.08. 48-.08.4 0 .7.1.89.31.19.2.29.49.29.86 0 .18-.03.34-.08.49-.05.15-.14.27-.25.37- .11.1-.25.18-.41.24-.16.06-.36.09-.58.09H7.5v1.03h.77c.22 0 .42.02.6.07s.33.13.4 5.23c.12.11.22.24.29.4.07.16.1.35.1.57 0 .41-.12.72-.35.93-.23.23-.55.33-.95.33z m8.55-5.92c-.32-.33-.7-.59-1.14-.77-.43-.18-.92-.27-1.46-.27H12v8h2.3c.55 0 1.06 -.09 1.51-.27.45-.18.84-.43 1.16-.76.32-.33.57-.73.74-1.19.17-.47.26-.99.26-1.57 v-.4c0-.58-.09-1.1-.26-1.57-.18-.47-.43-.87-.75-1.2zm-.39 3.16c0 .42-.05.79-.14 1.13-.1.33-.24.62-.43.85-.19.23-.43.41-.71.53-.29.12-.62.18-.99.18h-.91V9.12h.97 c.72 0 1.27.23 1.64.69.38.46.57 1.12.57 1.99v.4zM12 0l-.66.03 3.81 3.81 1.33-1.3 3c3.27 1.55 5.61 4.72 5.96 8.48h1.5C23.44 4.84 18.29 0 12 0z"></path></g> <g id= "accessibility"><path d="M12 2c1.1 0 2 .9 2 2s-.9 2-2 2-2-.9-2-2 .9-2 2-2zm9 7h- 6v13h-2v-6h-2v6H9V9H3V7h18v2z"></path></g> <g id="accessible"><circle cx="12" cy ="4" r="2"></circle><path d="M19 13v-2c-1.54.02-3.09-.75-4.07-1.83l-1.29-1.43c-. 17-.19-.38-.34-.61-.45-.01 0-.01-.01-.02-.01H13c-.35-.2-.75-.3-1.19-.26C10.76 7. 11 10 8.04 10 9.09V15c0 1.1.9 2 2 2h5v5h2v-5.5c0-1.1-.9-2-2-2h-3v-3.45c1.29 1.07 3.25 1.94 5 1.95zm-6.17 5c-.41 1.16-1.52 2-2.83 2-1.66 0-3-1.34-3-3 0-1.31.84-2 .41 2-2.83V12.1c-2.28.46-4 2.48-4 4.9 0 2.76 2.24 5 5 5 2.42 0 4.44-1.72 4.9-4h- 2.07z"></path></g> <g id="account-balance"><path d="M4 10v7h3v-7H4zm6 0v7h3v-7h- 3zM2 22h19v-3H2v3zm14-12v7h3v-7h-3zm-4.5-9L2 6v2h19V6l-9.5-5z"></path></g> <g id ="account-balance-wallet"><path d="M21 18v1c0 1.1-.9 2-2 2H5c-1.11 0-2-.9-2-2V5c 0-1.1.89-2 2-2h14c1.1 0 2 .9 2 2v1h-9c-1.11 0-2 .9-2 2v8c0 1.1.89 2 2 2h9zm-9-2h 10V8H12v8zm4-2.5c-.83 0-1.5-.67-1.5-1.5s.67-1.5 1.5-1.5 1.5.67 1.5 1.5-.67 1.5-1 .5 1.5z"></path></g> <g id="account-box"><path d="M3 5v14c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2H5c-1.11 0-2 .9-2 2zm12 4c0 1.66-1.34 3-3 3s-3-1.34-3 -3 1.34-3 3-3 3 1.34 3 3zm-9 8c0-2 4-3.1 6-3.1s6 1.1 6 3.1v1H6v-1z"></path></g> <g id="account-circle"><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 1 0-10S17.52 2 12 2zm0 3c1.66 0 3 1.34 3 3s-1.34 3-3 3-3-1.34-3-3 1.34-3 3-3zm0 14 .2c-2.5 0-4.71-1.28-6-3.22.03-1.99 4-3.08 6-3.08 1.99 0 5.97 1.09 6 3.08-1.29 1. 94-3.5 3.22-6 3.22z"></path></g> <g id="add"><path d="M19 13h-6v6h-2v-6H5v-2h6V5 h2v6h6v2z"></path></g> <g id="add-alert"><path d="M10.01 21.01c0 1.1.89 1.99 1.9 9 1.99s1.99-.89 1.99-1.99h-3.98zm8.87-4.19V11c0-3.25-2.25-5.97-5.29-6.69v-.72C13 .59 2.71 12.88 2 12 2s-1.59.71-1.59 1.59v.72C7.37 5.03 5.12 7.75 5.12 11v5.82L3 18.94V20h18v-1.06l-2.12-2.12zM16 13.01h-3v3h-2v-3H8V11h3V8h2v3h3v2.01z"></path>< /g> <g id="add-box"><path d="M19 3H5c-1.11 0-2 .9-2 2v14c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm-2 10h-4v4h-2v-4H7v-2h4V7h2v4h4v2z"></path></g> <g i d="add-circle"><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17. 52 2 12 2zm5 11h-4v4h-2v-4H7v-2h4V7h2v4h4v2z"></path></g> <g id="add-circle-outl ine"><path d="M13 7h-2v4H7v2h4v4h2v-4h4v-2h-4V7zm-1-5C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm0 18c-4.41 0-8-3.59-8-8s3.59-8 8-8 8 3.59 8 8 -3.59 8-8 8z"></path></g> <g id="add-shopping-cart"><path d="M11 9h2V6h3V4h-3V1h -2v3H8v2h3v3zm-4 9c-1.1 0-1.99.9-1.99 2S5.9 22 7 22s2-.9 2-2-.9-2-2-2zm10 0c-1.1 0-1.99.9-1.99 2s.89 2 1.99 2 2-.9 2-2-.9-2-2-2zm-9.83-3.25l.03-.12.9-1.63h7.45c .75 0 1.41-.41 1.75-1.03l3.86-7.01L19.42 4h-.01l-1.1 2-2.76 5H8.53l-.13-.27L6.16 6l-.95-2-.94-2H1v2h2l3.6 7.59-1.35 2.45c-.16.28-.25.61-.25.96 0 1.1.9 2 2 2h12v -2H7.42c-.13 0-.25-.11-.25-.25z"></path></g> <g id="alarm"><path d="M22 5.72l-4. 6-3.86-1.29 1.53 4.6 3.86L22 5.72zM7.88 3.39L6.6 1.86 2 5.71l1.29 1.53 4.59-3.85 zM12.5 8H11v6l4.75 2.85.75-1.23-4-2.37V8zM12 4c-4.97 0-9 4.03-9 9s4.02 9 9 9c4.9 7 0 9-4.03 9-9s-4.03-9-9-9zm0 16c-3.87 0-7-3.13-7-7s3.13-7 7-7 7 3.13 7 7-3.13 7 -7 7z"></path></g> <g id="alarm-add"><path d="M7.88 3.39L6.6 1.86 2 5.71l1.29 1. 53 4.59-3.85zM22 5.72l-4.6-3.86-1.29 1.53 4.6 3.86L22 5.72zM12 4c-4.97 0-9 4.03- 9 9s4.02 9 9 9c4.97 0 9-4.03 9-9s-4.03-9-9-9zm0 16c-3.87 0-7-3.13-7-7s3.13-7 7-7 7 3.13 7 7-3.13 7-7 7zm1-11h-2v3H8v2h3v3h2v-3h3v-2h-3V9z"></path></g> <g id="al arm-off"><path d="M12 6c3.87 0 7 3.13 7 7 0 .84-.16 1.65-.43 2.4l1.52 1.52c.58-1 .19.91-2.51.91-3.92 0-4.97-4.03-9-9-9-1.41 0-2.73.33-3.92.91L9.6 6.43C10.35 6.16 11.16 6 12 6zm10-.28l-4.6-3.86-1.29 1.53 4.6 3.86L22 5.72zM2.92 2.29L1.65 3.57 2.98 4.9l-1.11.93 1.42 1.42 1.11-.94.8.8C3.83 8.69 3 10.75 3 13c0 4.97 4.02 9 9 9 2.25 0 4.31-.83 5.89-2.2l2.2 2.2 1.27-1.27L3.89 3.27l-.97-.98zm13.55 16.1C15.2 6 19.39 13.7 20 12 20c-3.87 0-7-3.13-7-7 0-1.7.61-3.26 1.61-4.47l9.86 9.86zM8.02 3.28L6.6 1.86l-.86.71 1.42 1.42.86-.71z"></path></g> <g id="alarm-on"><path d=" M22 5.72l-4.6-3.86-1.29 1.53 4.6 3.86L22 5.72zM7.88 3.39L6.6 1.86 2 5.71l1.29 1. 53 4.59-3.85zM12 4c-4.97 0-9 4.03-9 9s4.02 9 9 9c4.97 0 9-4.03 9-9s-4.03-9-9-9zm 0 16c-3.87 0-7-3.13-7-7s3.13-7 7-7 7 3.13 7 7-3.13 7-7 7zm-1.46-5.47L8.41 12.4l- 1.06 1.06 3.18 3.18 6-6-1.06-1.06-4.93 4.95z"></path></g> <g id="all-out"><path d="M16.21 4.16l4 4v-4zm4 12l-4 4h4zm-12 4l-4-4v4zm-4-12l4-4h-4zm12.95-.95c-2.73- 2.73-7.17-2.73-9.9 0s-2.73 7.17 0 9.9 7.17 2.73 9.9 0 2.73-7.16 0-9.9zm-1.1 8.8c -2.13 2.13-5.57 2.13-7.7 0s-2.13-5.57 0-7.7 5.57-2.13 7.7 0 2.13 5.57 0 7.7z"></ path></g> <g id="android"><path d="M6 18c0 .55.45 1 1 1h1v3.5c0 .83.67 1.5 1.5 1 .5s1.5-.67 1.5-1.5V19h2v3.5c0 .83.67 1.5 1.5 1.5s1.5-.67 1.5-1.5V19h1c.55 0 1-.4 5 1-1V8H6v10zM3.5 8C2.67 8 2 8.67 2 9.5v7c0 .83.67 1.5 1.5 1.5S5 17.33 5 16.5v-7 C5 8.67 4.33 8 3.5 8zm17 0c-.83 0-1.5.67-1.5 1.5v7c0 .83.67 1.5 1.5 1.5s1.5-.67 1.5-1.5v-7c0-.83-.67-1.5-1.5-1.5zm-4.97-5.84l1.3-1.3c.2-.2.2-.51 0-.71-.2-.2-.51 -.2-.71 0l-1.48 1.48C13.85 1.23 12.95 1 12 1c-.96 0-1.86.23-2.66.63L7.85.15c-.2- .2-.51-.2-.71 0-.2.2-.2.51 0 .71l1.31 1.31C6.97 3.26 6 5.01 6 7h12c0-1.99-.97-3. 75-2.47-4.84zM10 5H9V4h1v1zm5 0h-1V4h1v1z"></path></g> <g id="announcement"><pat h d="M20 2H4c-1.1 0-1.99.9-1.99 2L2 22l4-4h14c1.1 0 2-.9 2-2V4c0-1.1-.9-2-2-2zm- 7 9h-2V5h2v6zm0 4h-2v-2h2v2z"></path></g> <g id="apps"><path d="M4 8h4V4H4v4zm6 12h4v-4h-4v4zm-6 0h4v-4H4v4zm0-6h4v-4H4v4zm6 0h4v-4h-4v4zm6-10v4h4V4h-4zm-6 4h4V 4h-4v4zm6 6h4v-4h-4v4zm0 6h4v-4h-4v4z"></path></g> <g id="archive"><path d="M20. 54 5.23l-1.39-1.68C18.88 3.21 18.47 3 18 3H6c-.47 0-.88.21-1.16.55L3.46 5.23C3.1 7 5.57 3 6.02 3 6.5V19c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V6.5c0-.48-.17-.93-.46-1.2 7zM12 17.5L6.5 12H10v-2h4v2h3.5L12 17.5zM5.12 5l.81-1h12l.94 1H5.12z"></path></g > <g id="arrow-back"><path d="M20 11H7.83l5.59-5.59L12 4l-8 8 8 8 1.41-1.41L7.83 13H20v-2z"></path></g> <g id="arrow-downward"><path d="M20 12l-1.41-1.41L13 16. 17V4h-2v12.17l-5.58-5.59L4 12l8 8 8-8z"></path></g> <g id="arrow-drop-down"><pat h d="M7 10l5 5 5-5z"></path></g> <g id="arrow-drop-down-circle"><path d="M12 2C6 .48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm0 12l-4-4h8l-4 4z">< /path></g> <g id="arrow-drop-up"><path d="M7 14l5-5 5 5z"></path></g> <g id="arr ow-forward"><path d="M12 4l-1.41 1.41L16.17 11H4v2h12.17l-5.58 5.59L12 20l8-8z"> </path></g> <g id="arrow-upward"><path d="M4 12l1.41 1.41L11 7.83V20h2V7.83l5.58 5.59L20 12l-8-8-8 8z"></path></g> <g id="aspect-ratio"><path d="M19 12h-2v3h-3v 2h5v-5zM7 9h3V7H5v5h2V9zm14-6H3c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h18c1.1 0 2-.9 2 -2V5c0-1.1-.9-2-2-2zm0 16.01H3V4.99h18v14.02z"></path></g> <g id="assessment"><p ath d="M19 3H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2 -2zM9 17H7v-7h2v7zm4 0h-2V7h2v10zm4 0h-2v-4h2v4z"></path></g> <g id="assignment" ><path d="M19 3h-4.18C14.4 1.84 13.3 1 12 1c-1.3 0-2.4.84-2.82 2H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm-7 0c.55 0 1 .45 1 1s-.4 5 1-1 1-1-.45-1-1 .45-1 1-1zm2 14H7v-2h7v2zm3-4H7v-2h10v2zm0-4H7V7h10v2z"></path ></g> <g id="assignment-ind"><path d="M19 3h-4.18C14.4 1.84 13.3 1 12 1c-1.3 0-2 .4.84-2.82 2H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2 -2zm-7 0c.55 0 1 .45 1 1s-.45 1-1 1-1-.45-1-1 .45-1 1-1zm0 4c1.66 0 3 1.34 3 3s- 1.34 3-3 3-3-1.34-3-3 1.34-3 3-3zm6 12H6v-1.4c0-2 4-3.1 6-3.1s6 1.1 6 3.1V19z">< /path></g> <g id="assignment-late"><path d="M19 3h-4.18C14.4 1.84 13.3 1 12 1c-1 .3 0-2.4.84-2.82 2H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1- .9-2-2-2zm-6 15h-2v-2h2v2zm0-4h-2V8h2v6zm-1-9c-.55 0-1-.45-1-1s.45-1 1-1 1 .45 1 1-.45 1-1 1z"></path></g> <g id="assignment-return"><path d="M19 3h-4.18C14.4 1 .84 13.3 1 12 1c-1.3 0-2.4.84-2.82 2H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm-7 0c.55 0 1 .45 1 1s-.45 1-1 1-1-.45-1-1 .45-1 1-1z m4 12h-4v3l-5-5 5-5v3h4v4z"></path></g> <g id="assignment-returned"><path d="M19 3h-4.18C14.4 1.84 13.3 1 12 1c-1.3 0-2.4.84-2.82 2H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm-7 0c.55 0 1 .45 1 1s-.45 1-1 1-1-.45 -1-1 .45-1 1-1zm0 15l-5-5h3V9h4v4h3l-5 5z"></path></g> <g id="assignment-turned- in"><path d="M19 3h-4.18C14.4 1.84 13.3 1 12 1c-1.3 0-2.4.84-2.82 2H5c-1.1 0-2 . 9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm-7 0c.55 0 1 .45 1 1s -.45 1-1 1-1-.45-1-1 .45-1 1-1zm-2 14l-4-4 1.41-1.41L10 14.17l6.59-6.59L18 9l-8 8z"></path></g> <g id="attachment"><path d="M2 12.5C2 9.46 4.46 7 7.5 7H18c2.21 0 4 1.79 4 4s-1.79 4-4 4H9.5C8.12 15 7 13.88 7 12.5S8.12 10 9.5 10H17v2H9.41c-.5 5 0-.55 1 0 1H18c1.1 0 2-.9 2-2s-.9-2-2-2H7.5C5.57 9 4 10.57 4 12.5S5.57 16 7.5 16H17v2H7.5C4.46 18 2 15.54 2 12.5z"></path></g> <g id="autorenew"><path d="M12 6v3l4-4-4-4v3c-4.42 0-8 3.58-8 8 0 1.57.46 3.03 1.24 4.26L6.7 14.8c-.45-.83-.7-1 .79-.7-2.8 0-3.31 2.69-6 6-6zm6.76 1.74L17.3 9.2c.44.84.7 1.79.7 2.8 0 3.31-2.69 6-6 6v-3l-4 4 4 4v-3c4.42 0 8-3.58 8-8 0-1.57-.46-3.03-1.24-4.26z"></path></g> <g id="backspace"><path d="M22 3H7c-.69 0-1.23.35-1.59.88L0 12l5.41 8.11c.36.53. 9.89 1.59.89h15c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm-3 12.59L17.59 17 14 13.41 10.4 1 17 9 15.59 12.59 12 9 8.41 10.41 7 14 10.59 17.59 7 19 8.41 15.41 12 19 15.59z "></path></g> <g id="backup"><path d="M19.35 10.04C18.67 6.59 15.64 4 12 4 9.11 4 6.6 5.64 5.35 8.04 2.34 8.36 0 10.91 0 14c0 3.31 2.69 6 6 6h13c2.76 0 5-2.24 5 -5 0-2.64-2.05-4.78-4.65-4.96zM14 13v4h-4v-4H7l5-5 5 5h-3z"></path></g> <g id="b lock"><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2 zM4 12c0-4.42 3.58-8 8-8 1.85 0 3.55.63 4.9 1.69L5.69 16.9C4.63 15.55 4 13.85 4 12zm8 8c-1.85 0-3.55-.63-4.9-1.69L18.31 7.1C19.37 8.45 20 10.15 20 12c0 4.42-3.5 8 8-8 8z"></path></g> <g id="book"><path d="M18 2H6c-1.1 0-2 .9-2 2v16c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2V4c0-1.1-.9-2-2-2zM6 4h5v8l-2.5-1.5L6 12V4z"></path></g> < g id="bookmark"><path d="M17 3H7c-1.1 0-1.99.9-1.99 2L5 21l7-3 7 3V5c0-1.1-.9-2- 2-2z"></path></g> <g id="bookmark-border"><path d="M17 3H7c-1.1 0-1.99.9-1.99 2L 5 21l7-3 7 3V5c0-1.1-.9-2-2-2zm0 15l-5-2.18L7 18V5h10v13z"></path></g> <g id="bu g-report"><path d="M20 8h-2.81c-.45-.78-1.07-1.45-1.82-1.96L17 4.41 15.59 3l-2.1 7 2.17C12.96 5.06 12.49 5 12 5c-.49 0-.96.06-1.41.17L8.41 3 7 4.41l1.62 1.63C7.8 8 6.55 7.26 7.22 6.81 8H4v2h2.09c-.05.33-.09.66-.09 1v1H4v2h2v1c0 .34.04.67.09 1 H4v2h2.81c1.04 1.79 2.97 3 5.19 3s4.15-1.21 5.19-3H20v-2h-2.09c.05-.33.09-.66.09 -1v-1h2v-2h-2v-1c0-.34-.04-.67-.09-1H20V8zm-6 8h-4v-2h4v2zm0-4h-4v-2h4v2z"></pat h></g> <g id="build"><path d="M22.7 19l-9.1-9.1c.9-2.3.4-5-1.5-6.9-2-2-5-2.4-7.4 -1.3L9 6 6 9 1.6 4.7C.4 7.1.9 10.1 2.9 12.1c1.9 1.9 4.6 2.4 6.9 1.5l9.1 9.1c.4.4 1 .4 1.4 0l2.3-2.3c.5-.4.5-1.1.1-1.4z"></path></g> <g id="cached"><path d="M19 8l-4 4h3c0 3.31-2.69 6-6 6-1.01 0-1.97-.25-2.8-.7l-1.46 1.46C8.97 19.54 10.43 20 12 20c4.42 0 8-3.58 8-8h3l-4-4zM6 12c0-3.31 2.69-6 6-6 1.01 0 1.97.25 2.8.7l1.4 6-1.46C15.03 4.46 13.57 4 12 4c-4.42 0-8 3.58-8 8H1l4 4 4-4H6z"></path></g> <g i d="camera-enhance"><path d="M9 3L7.17 5H4c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h16c1. 1 0 2-.9 2-2V7c0-1.1-.9-2-2-2h-3.17L15 3H9zm3 15c-2.76 0-5-2.24-5-5s2.24-5 5-5 5 2.24 5 5-2.24 5-5 5zm0-1l1.25-2.75L16 13l-2.75-1.25L12 9l-1.25 2.75L8 13l2.75 1 .25z"></path></g> <g id="cancel"><path d="M12 2C6.47 2 2 6.47 2 12s4.47 10 10 10 10-4.47 10-10S17.53 2 12 2zm5 13.59L15.59 17 12 13.41 8.41 17 7 15.59 10.59 12 7 8.41 8.41 7 12 10.59 15.59 7 17 8.41 13.41 12 17 15.59z"></path></g> <g id="ca rd-giftcard"><path d="M20 6h-2.18c.11-.31.18-.65.18-1 0-1.66-1.34-3-3-3-1.05 0-1 .96.54-2.5 1.35l-.5.67-.5-.68C10.96 2.54 10.05 2 9 2 7.34 2 6 3.34 6 5c0 .35.07. 69.18 1H4c-1.11 0-1.99.89-1.99 2L2 19c0 1.11.89 2 2 2h16c1.11 0 2-.89 2-2V8c0-1. 11-.89-2-2-2zm-5-2c.55 0 1 .45 1 1s-.45 1-1 1-1-.45-1-1 .45-1 1-1zM9 4c.55 0 1 . 45 1 1s-.45 1-1 1-1-.45-1-1 .45-1 1-1zm11 15H4v-2h16v2zm0-5H4V8h5.08L7 10.83 8.6 2 12 11 8.76l1-1.36 1 1.36L15.38 12 17 10.83 14.92 8H20v6z"></path></g> <g id="c ard-membership"><path d="M20 2H4c-1.11 0-2 .89-2 2v11c0 1.11.89 2 2 2h4v5l4-2 4 2v-5h4c1.11 0 2-.89 2-2V4c0-1.11-.89-2-2-2zm0 13H4v-2h16v2zm0-5H4V4h16v6z"></pat h></g> <g id="card-travel"><path d="M20 6h-3V4c0-1.11-.89-2-2-2H9c-1.11 0-2 .89- 2 2v2H4c-1.11 0-2 .89-2 2v11c0 1.11.89 2 2 2h16c1.11 0 2-.89 2-2V8c0-1.11-.89-2- 2-2zM9 4h6v2H9V4zm11 15H4v-2h16v2zm0-5H4V8h3v2h2V8h6v2h2V8h3v6z"></path></g> <g id="change-history"><path d="M12 7.77L18.39 18H5.61L12 7.77M12 4L2 20h20L12 4z"> </path></g> <g id="check"><path d="M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1 .41z"></path></g> <g id="check-box"><path d="M19 3H5c-1.11 0-2 .9-2 2v14c0 1.1.8 9 2 2 2h14c1.11 0 2-.9 2-2V5c0-1.1-.89-2-2-2zm-9 14l-5-5 1.41-1.41L10 14.17l7.59 -7.59L19 8l-9 9z"></path></g> <g id="check-box-outline-blank"><path d="M19 5v14H 5V5h14m0-2H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2 z"></path></g> <g id="check-circle"><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm-2 15l-5-5 1.41-1.41L10 14.17l7.59-7.59L19 8l-9 9z"></path></g> <g id="chevron-left"><path d="M15.41 7.41L14 6l-6 6 6 6 1.41-1.4 1L10.83 12z"></path></g> <g id="chevron-right"><path d="M10 6L8.59 7.41 13.17 12 l-4.58 4.59L10 18l6-6z"></path></g> <g id="chrome-reader-mode"><path d="M13 12h7 v1.5h-7zm0-2.5h7V11h-7zm0 5h7V16h-7zM21 4H3c-1.1 0-2 .9-2 2v13c0 1.1.9 2 2 2h18c 1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2zm0 15h-9V6h9v13z"></path></g> <g id="class"><pat h d="M18 2H6c-1.1 0-2 .9-2 2v16c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2V4c0-1.1-.9-2-2-2 zM6 4h5v8l-2.5-1.5L6 12V4z"></path></g> <g id="clear"><path d="M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z"></path></g> <g id="close"><path d="M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z"></path></g> <g i d="cloud"><path d="M19.35 10.04C18.67 6.59 15.64 4 12 4 9.11 4 6.6 5.64 5.35 8.0 4 2.34 8.36 0 10.91 0 14c0 3.31 2.69 6 6 6h13c2.76 0 5-2.24 5-5 0-2.64-2.05-4.78 -4.65-4.96z"></path></g> <g id="cloud-circle"><path d="M12 2C6.48 2 2 6.48 2 12s 4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm4.5 14H8c-1.66 0-3-1.34-3-3s1.34-3 3-3 l.14.01C8.58 8.28 10.13 7 12 7c2.21 0 4 1.79 4 4h.5c1.38 0 2.5 1.12 2.5 2.5S17.8 8 16 16.5 16z"></path></g> <g id="cloud-done"><path d="M19.35 10.04C18.67 6.59 1 5.64 4 12 4 9.11 4 6.6 5.64 5.35 8.04 2.34 8.36 0 10.91 0 14c0 3.31 2.69 6 6 6h1 3c2.76 0 5-2.24 5-5 0-2.64-2.05-4.78-4.65-4.96zM10 17l-3.5-3.5 1.41-1.41L10 14.1 7 15.18 9l1.41 1.41L10 17z"></path></g> <g id="cloud-download"><path d="M19.35 1 0.04C18.67 6.59 15.64 4 12 4 9.11 4 6.6 5.64 5.35 8.04 2.34 8.36 0 10.91 0 14c0 3.31 2.69 6 6 6h13c2.76 0 5-2.24 5-5 0-2.64-2.05-4.78-4.65-4.96zM17 13l-5 5-5-5h 3V9h4v4h3z"></path></g> <g id="cloud-off"><path d="M19.35 10.04C18.67 6.59 15.64 4 12 4c-1.48 0-2.85.43-4.01 1.17l1.46 1.46C10.21 6.23 11.08 6 12 6c3.04 0 5.5 2 .46 5.5 5.5v.5H19c1.66 0 3 1.34 3 3 0 1.13-.64 2.11-1.56 2.62l1.45 1.45C23.16 18 .16 24 16.68 24 15c0-2.64-2.05-4.78-4.65-4.96zM3 5.27l2.75 2.74C2.56 8.15 0 10.7 7 0 14c0 3.31 2.69 6 6 6h11.73l2 2L21 20.73 4.27 4 3 5.27zM7.73 10l8 8H6c-2.21 0 -4-1.79-4-4s1.79-4 4-4h1.73z"></path></g> <g id="cloud-queue"><path d="M19.35 10 .04C18.67 6.59 15.64 4 12 4 9.11 4 6.6 5.64 5.35 8.04 2.34 8.36 0 10.91 0 14c0 3 .31 2.69 6 6 6h13c2.76 0 5-2.24 5-5 0-2.64-2.05-4.78-4.65-4.96zM19 18H6c-2.21 0- 4-1.79-4-4s1.79-4 4-4h.71C7.37 7.69 9.48 6 12 6c3.04 0 5.5 2.46 5.5 5.5v.5H19c1. 66 0 3 1.34 3 3s-1.34 3-3 3z"></path></g> <g id="cloud-upload"><path d="M19.35 1 0.04C18.67 6.59 15.64 4 12 4 9.11 4 6.6 5.64 5.35 8.04 2.34 8.36 0 10.91 0 14c0 3.31 2.69 6 6 6h13c2.76 0 5-2.24 5-5 0-2.64-2.05-4.78-4.65-4.96zM14 13v4h-4v-4H7 l5-5 5 5h-3z"></path></g> <g id="code"><path d="M9.4 16.6L4.8 12l4.6-4.6L8 6l-6 6 6 6 1.4-1.4zm5.2 0l4.6-4.6-4.6-4.6L16 6l6 6-6 6-1.4-1.4z"></path></g> <g id="c ompare-arrows"><path d="M9.01 14H2v2h7.01v3L13 15l-3.99-4v3zm5.98-1v-3H22V8h-7.0 1V5L11 9l3.99 4z"></path></g> <g id="content-copy"><path d="M16 1H4c-1.1 0-2 .9- 2 2v14h2V3h12V1zm3 4H8c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h11c1.1 0 2-.9 2-2V7c0-1. 1-.9-2-2-2zm0 16H8V7h11v14z"></path></g> <g id="content-cut"><path d="M9.64 7.64 c.23-.5.36-1.05.36-1.64 0-2.21-1.79-4-4-4S2 3.79 2 6s1.79 4 4 4c.59 0 1.14-.13 1 .64-.36L10 12l-2.36 2.36C7.14 14.13 6.59 14 6 14c-2.21 0-4 1.79-4 4s1.79 4 4 4 4 -1.79 4-4c0-.59-.13-1.14-.36-1.64L12 14l7 7h3v-1L9.64 7.64zM6 8c-1.1 0-2-.89-2-2 s.9-2 2-2 2 .89 2 2-.9 2-2 2zm0 12c-1.1 0-2-.89-2-2s.9-2 2-2 2 .89 2 2-.9 2-2 2z m6-7.5c-.28 0-.5-.22-.5-.5s.22-.5.5-.5.5.22.5.5-.22.5-.5.5zM19 3l-6 6 2 2 7-7V3z "></path></g> <g id="content-paste"><path d="M19 2h-4.18C14.4.84 13.3 0 12 0c-1. 3 0-2.4.84-2.82 2H5c-1.1 0-2 .9-2 2v16c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V4c0-1.1-. 9-2-2-2zm-7 0c.55 0 1 .45 1 1s-.45 1-1 1-1-.45-1-1 .45-1 1-1zm7 18H5V4h2v3h10V4h 2v16z"></path></g> <g id="copyright"><path d="M10.08 10.86c.05-.33.16-.62.3-.87s .34-.46.59-.62c.24-.15.54-.22.91-.23.23.01.44.05.63.13.2.09.38.21.52.36s.25.33.3 4.53.13.42.14.64h1.79c-.02-.47-.11-.9-.28-1.29s-.4-.73-.7-1.01-.66-.5-1.08-.66-. 88-.23-1.39-.23c-.65 0-1.22.11-1.7.34s-.88.53-1.2.92-.56.84-.71 1.36S8 11.29 8 1 1.87v.27c0 .58.08 1.12.23 1.64s.39.97.71 1.35.72.69 1.2.91 1.05.34 1.7.34c.47 0 .91-.08 1.32-.23s.77-.36 1.08-.63.56-.58.74-.94.29-.74.3-1.15h-1.79c-.01.21-.06. 4-.15.58s-.21.33-.36.46-.32.23-.52.3c-.19.07-.39.09-.6.1-.36-.01-.66-.08-.89-.23 -.25-.16-.45-.37-.59-.62s-.25-.55-.3-.88-.08-.67-.08-1v-.27c0-.35.03-.68.08-1.01 zM12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm0 18c-4.41 0 -8-3.59-8-8s3.59-8 8-8 8 3.59 8 8-3.59 8-8 8z"></path></g> <g id="create"><path d="M3 17.25V21h3.75L17.81 9.94l-3.75-3.75L3 17.25zM20.71 7.04c.39-.39.39-1.02 0- 1.41l-2.34-2.34c-.39-.39-1.02-.39-1.41 0l-1.83 1.83 3.75 3.75 1.83-1.83z"></path ></g> <g id="create-new-folder"><path d="M20 6h-8l-2-2H4c-1.11 0-1.99.89-1.99 2L 2 18c0 1.11.89 2 2 2h16c1.11 0 2-.89 2-2V8c0-1.11-.89-2-2-2zm-1 8h-3v3h-2v-3h-3v -2h3V9h2v3h3v2z"></path></g> <g id="credit-card"><path d="M20 4H4c-1.11 0-1.99.8 9-1.99 2L2 18c0 1.11.89 2 2 2h16c1.11 0 2-.89 2-2V6c0-1.11-.89-2-2-2zm0 14H4v-6h 16v6zm0-10H4V6h16v2z"></path></g> <g id="dashboard"><path d="M3 13h8V3H3v10zm0 8 h8v-6H3v6zm10 0h8V11h-8v10zm0-18v6h8V3h-8z"></path></g> <g id="date-range"><path d="M9 11H7v2h2v-2zm4 0h-2v2h2v-2zm4 0h-2v2h2v-2zm2-7h-1V2h-2v2H8V2H6v2H5c-1.11 0-1.99.9-1.99 2L3 20c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2zm0 16H5V9 h14v11z"></path></g> <g id="delete"><path d="M6 19c0 1.1.9 2 2 2h8c1.1 0 2-.9 2- 2V7H6v12zM19 4h-3.5l-1-1h-5l-1 1H5v2h14V4z"></path></g> <g id="description"><pat h d="M14 2H6c-1.1 0-1.99.9-1.99 2L4 20c0 1.1.89 2 1.99 2H18c1.1 0 2-.9 2-2V8l-6- 6zm2 16H8v-2h8v2zm0-4H8v-2h8v2zm-3-5V3.5L18.5 9H13z"></path></g> <g id="dns"><pa th d="M20 13H4c-.55 0-1 .45-1 1v6c0 .55.45 1 1 1h16c.55 0 1-.45 1-1v-6c0-.55-.45 -1-1-1zM7 19c-1.1 0-2-.9-2-2s.9-2 2-2 2 .9 2 2-.9 2-2 2zM20 3H4c-.55 0-1 .45-1 1 v6c0 .55.45 1 1 1h16c.55 0 1-.45 1-1V4c0-.55-.45-1-1-1zM7 9c-1.1 0-2-.9-2-2s.9-2 2-2 2 .9 2 2-.9 2-2 2z"></path></g> <g id="done"><path d="M9 16.2L4.8 12l-1.4 1 .4L9 19 21 7l-1.4-1.4L9 16.2z"></path></g> <g id="done-all"><path d="M18 7l-1.41 -1.41-6.34 6.34 1.41 1.41L18 7zm4.24-1.41L11.66 16.17 7.48 12l-1.41 1.41L11.66 1 9l12-12-1.42-1.41zM.41 13.41L6 19l1.41-1.41L1.83 12 .41 13.41z"></path></g> <g i d="donut-large"><path d="M11 5.08V2c-5 .5-9 4.81-9 10s4 9.5 9 10v-3.08c-3-.48-6- 3.4-6-6.92s3-6.44 6-6.92zM18.97 11H22c-.47-5-4-8.53-9-9v3.08C16 5.51 18.54 8 18. 97 11zM13 18.92V22c5-.47 8.53-4 9-9h-3.03c-.43 3-2.97 5.49-5.97 5.92z"></path></ g> <g id="donut-small"><path d="M11 9.16V2c-5 .5-9 4.79-9 10s4 9.5 9 10v-7.16c-1 -.41-2-1.52-2-2.84s1-2.43 2-2.84zM14.86 11H22c-.48-4.75-4-8.53-9-9v7.16c1 .3 1.5 2.98 1.86 1.84zM13 14.84V22c5-.47 8.52-4.25 9-9h-7.14c-.34.86-.86 1.54-1.86 1.84 z"></path></g> <g id="drafts"><path d="M21.99 8c0-.72-.37-1.35-.94-1.7L12 1 2.95 6.3C2.38 6.65 2 7.28 2 8v10c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2l-.01-10zM12 13L3.74 7.84 12 3l8.26 4.84L12 13z"></path></g> <g id="eject"><path d="M5 17h14v2H5zm7- 12L5.33 15h13.34z"></path></g> <g id="error"><path d="M12 2C6.48 2 2 6.48 2 12s4 .48 10 10 10 10-4.48 10-10S17.52 2 12 2zm1 15h-2v-2h2v2zm0-4h-2V7h2v6z"></path>< /g> <g id="error-outline"><path d="M11 15h2v2h-2zm0-8h2v6h-2zm.99-5C6.47 2 2 6.4 8 2 12s4.47 10 9.99 10C17.52 22 22 17.52 22 12S17.52 2 11.99 2zM12 20c-4.42 0-8- 3.58-8-8s3.58-8 8-8 8 3.58 8 8-3.58 8-8 8z"></path></g> <g id="event"><path d="M 17 12h-5v5h5v-5zM16 1v2H8V1H6v2H5c-1.11 0-1.99.9-1.99 2L3 19c0 1.1.89 2 2 2h14c1 .1 0 2-.9 2-2V5c0-1.1-.9-2-2-2h-1V1h-2zm3 18H5V8h14v11z"></path></g> <g id="even t-seat"><path d="M4 18v3h3v-3h10v3h3v-6H4zm15-8h3v3h-3zM2 10h3v3H2zm15 3H7V5c0-1 .1.9-2 2-2h6c1.1 0 2 .9 2 2v8z"></path></g> <g id="exit-to-app"><path d="M10.09 15.59L11.5 17l5-5-5-5-1.41 1.41L12.67 11H3v2h9.67l-2.58 2.59zM19 3H5c-1.11 0-2 . 9-2 2v4h2V5h14v14H5v-4H3v4c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2z">< /path></g> <g id="expand-less"><path d="M12 8l-6 6 1.41 1.41L12 10.83l4.59 4.58L 18 14z"></path></g> <g id="expand-more"><path d="M16.59 8.59L12 13.17 7.41 8.59 6 10l6 6 6-6z"></path></g> <g id="explore"><path d="M12 10.9c-.61 0-1.1.49-1.1 1 .1s.49 1.1 1.1 1.1c.61 0 1.1-.49 1.1-1.1s-.49-1.1-1.1-1.1zM12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm2.19 12.19L6 18l3.81-8.19L18 6l-3.8 1 8.19z"></path></g> <g id="extension"><path d="M20.5 11H19V7c0-1.1-.9-2-2-2h-4V 3.5C13 2.12 11.88 1 10.5 1S8 2.12 8 3.5V5H4c-1.1 0-1.99.9-1.99 2v3.8H3.5c1.49 0 2.7 1.21 2.7 2.7s-1.21 2.7-2.7 2.7H2V20c0 1.1.9 2 2 2h3.8v-1.5c0-1.49 1.21-2.7 2 .7-2.7 1.49 0 2.7 1.21 2.7 2.7V22H17c1.1 0 2-.9 2-2v-4h1.5c1.38 0 2.5-1.12 2.5-2 .5S21.88 11 20.5 11z"></path></g> <g id="face"><path d="M9 11.75c-.69 0-1.25.56- 1.25 1.25s.56 1.25 1.25 1.25 1.25-.56 1.25-1.25-.56-1.25-1.25-1.25zm6 0c-.69 0-1 .25.56-1.25 1.25s.56 1.25 1.25 1.25 1.25-.56 1.25-1.25-.56-1.25-1.25-1.25zM12 2C 6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm0 18c-4.41 0-8-3.59 -8-8 0-.29.02-.58.05-.86 2.36-1.05 4.23-2.98 5.21-5.37C11.07 8.33 14.05 10 17.42 10c.78 0 1.53-.09 2.25-.26.21.71.33 1.47.33 2.26 0 4.41-3.59 8-8 8z"></path></g > <g id="favorite"><path d="M12 21.35l-1.45-1.32C5.4 15.36 2 12.28 2 8.5 2 5.42 4.42 3 7.5 3c1.74 0 3.41.81 4.5 2.09C13.09 3.81 14.76 3 16.5 3 19.58 3 22 5.42 2 2 8.5c0 3.78-3.4 6.86-8.55 11.54L12 21.35z"></path></g> <g id="favorite-border"> <path d="M16.5 3c-1.74 0-3.41.81-4.5 2.09C10.91 3.81 9.24 3 7.5 3 4.42 3 2 5.42 2 8.5c0 3.78 3.4 6.86 8.55 11.54L12 21.35l1.45-1.32C18.6 15.36 22 12.28 22 8.5 2 2 5.42 19.58 3 16.5 3zm-4.4 15.55l-.1.1-.1-.1C7.14 14.24 4 11.39 4 8.5 4 6.5 5.5 5 7.5 5c1.54 0 3.04.99 3.57 2.36h1.87C13.46 5.99 14.96 5 16.5 5c2 0 3.5 1.5 3.5 3.5 0 2.89-3.14 5.74-7.9 10.05z"></path></g> <g id="feedback"><path d="M20 2H4c -1.1 0-1.99.9-1.99 2L2 22l4-4h14c1.1 0 2-.9 2-2V4c0-1.1-.9-2-2-2zm-7 12h-2v-2h2v 2zm0-4h-2V6h2v4z"></path></g> <g id="file-download"><path d="M19 9h-4V3H9v6H5l7 7 7-7zM5 18v2h14v-2H5z"></path></g> <g id="file-upload"><path d="M9 16h6v-6h4l-7 -7-7 7h4zm-4 2h14v2H5z"></path></g> <g id="filter-list"><path d="M10 18h4v-2h-4v 2zM3 6v2h18V6H3zm3 7h12v-2H6v2z"></path></g> <g id="find-in-page"><path d="M20 1 9.59V8l-6-6H6c-1.1 0-1.99.9-1.99 2L4 20c0 1.1.89 2 1.99 2H18c.45 0 .85-.15 1.19- .4l-4.43-4.43c-.8.52-1.74.83-2.76.83-2.76 0-5-2.24-5-5s2.24-5 5-5 5 2.24 5 5c0 1 .02-.31 1.96-.83 2.75L20 19.59zM9 13c0 1.66 1.34 3 3 3s3-1.34 3-3-1.34-3-3-3-3 1 .34-3 3z"></path></g> <g id="find-replace"><path d="M11 6c1.38 0 2.63.56 3.54 1. 46L12 10h6V4l-2.05 2.05C14.68 4.78 12.93 4 11 4c-3.53 0-6.43 2.61-6.92 6H6.1c.46 -2.28 2.48-4 4.9-4zm5.64 9.14c.66-.9 1.12-1.97 1.28-3.14H15.9c-.46 2.28-2.48 4-4 .9 4-1.38 0-2.63-.56-3.54-1.46L10 12H4v6l2.05-2.05C7.32 17.22 9.07 18 11 18c1.55 0 2.98-.51 4.14-1.36L20 21.49 21.49 20l-4.85-4.86z"></path></g> <g id="fingerpr int"><path d="M17.81 4.47c-.08 0-.16-.02-.23-.06C15.66 3.42 14 3 12.01 3c-1.98 0 -3.86.47-5.57 1.41-.24.13-.54.04-.68-.2-.13-.24-.04-.55.2-.68C7.82 2.52 9.86 2 1 2.01 2c2.13 0 3.99.47 6.03 1.52.25.13.34.43.21.67-.09.18-.26.28-.44.28zM3.5 9.72 c-.1 0-.2-.03-.29-.09-.23-.16-.28-.47-.12-.7.99-1.4 2.25-2.5 3.75-3.27C9.98 4.04 14 4.03 17.15 5.65c1.5.77 2.76 1.86 3.75 3.25.16.22.11.54-.12.7-.23.16-.54.11-. 7-.12-.9-1.26-2.04-2.25-3.39-2.94-2.87-1.47-6.54-1.47-9.4.01-1.36.7-2.5 1.7-3.4 2.96-.08.14-.23.21-.39.21zm6.25 12.07c-.13 0-.26-.05-.35-.15-.87-.87-1.34-1.43-2 .01-2.64-.69-1.23-1.05-2.73-1.05-4.34 0-2.97 2.54-5.39 5.66-5.39s5.66 2.42 5.66 5.39c0 .28-.22.5-.5.5s-.5-.22-.5-.5c0-2.42-2.09-4.39-4.66-4.39-2.57 0-4.66 1.97- 4.66 4.39 0 1.44.32 2.77.93 3.85.64 1.15 1.08 1.64 1.85 2.42.19.2.19.51 0 .71-.1 1.1-.24.15-.37.15zm7.17-1.85c-1.19 0-2.24-.3-3.1-.89-1.49-1.01-2.38-2.65-2.38-4. 39 0-.28.22-.5.5-.5s.5.22.5.5c0 1.41.72 2.74 1.94 3.56.71.48 1.54.71 2.54.71.24 0 .64-.03 1.04-.1.27-.05.53.13.58.41.05.27-.13.53-.41.58-.57.11-1.07.12-1.21.12z M14.91 22c-.04 0-.09-.01-.13-.02-1.59-.44-2.63-1.03-3.72-2.1-1.4-1.39-2.17-3.24- 2.17-5.22 0-1.62 1.38-2.94 3.08-2.94 1.7 0 3.08 1.32 3.08 2.94 0 1.07.93 1.94 2. 08 1.94s2.08-.87 2.08-1.94c0-3.77-3.25-6.83-7.25-6.83-2.84 0-5.44 1.58-6.61 4.03 -.39.81-.59 1.76-.59 2.8 0 .78.07 2.01.67 3.61.1.26-.03.55-.29.64-.26.1-.55-.04- .64-.29-.49-1.31-.73-2.61-.73-3.96 0-1.2.23-2.29.68-3.24 1.33-2.79 4.28-4.6 7.51 -4.6 4.55 0 8.25 3.51 8.25 7.83 0 1.62-1.38 2.94-3.08 2.94s-3.08-1.32-3.08-2.94c 0-1.07-.93-1.94-2.08-1.94s-2.08.87-2.08 1.94c0 1.71.66 3.31 1.87 4.51.95.94 1.86 1.46 3.27 1.85.27.07.42.35.35.61-.05.23-.26.38-.47.38z"></path></g> <g id="flag "><path d="M14.4 6L14 4H5v17h2v-7h5.6l.4 2h7V6z"></path></g> <g id="flight-land" ><path d="M2.5 19h19v2h-19zm7.18-5.73l4.35 1.16 5.31 1.42c.8.21 1.62-.26 1.84-1. 06.21-.8-.26-1.62-1.06-1.84l-5.31-1.42-2.76-9.02L10.12 2v8.28L5.15 8.95l-.93-2.3 2-1.45-.39v5.17l1.6.43 5.31 1.43z"></path></g> <g id="flight-takeoff"><path d="M 2.5 19h19v2h-19zm19.57-9.36c-.21-.8-1.04-1.28-1.84-1.06L14.92 10l-6.9-6.43-1.93. 51 4.14 7.17-4.97 1.33-1.97-1.54-1.45.39 1.82 3.16.77 1.33 1.6-.43 5.31-1.42 4.3 5-1.16L21 11.49c.81-.23 1.28-1.05 1.07-1.85z"></path></g> <g id="flip-to-back">< path d="M9 7H7v2h2V7zm0 4H7v2h2v-2zm0-8c-1.11 0-2 .9-2 2h2V3zm4 12h-2v2h2v-2zm6- 12v2h2c0-1.1-.9-2-2-2zm-6 0h-2v2h2V3zM9 17v-2H7c0 1.1.89 2 2 2zm10-4h2v-2h-2v2zm 0-4h2V7h-2v2zm0 8c1.1 0 2-.9 2-2h-2v2zM5 7H3v12c0 1.1.89 2 2 2h12v-2H5V7zm10-2h2 V3h-2v2zm0 12h2v-2h-2v2z"></path></g> <g id="flip-to-front"><path d="M3 13h2v-2H 3v2zm0 4h2v-2H3v2zm2 4v-2H3c0 1.1.89 2 2 2zM3 9h2V7H3v2zm12 12h2v-2h-2v2zm4-18H9 c-1.11 0-2 .9-2 2v10c0 1.1.89 2 2 2h10c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm0 12H9V5 h10v10zm-8 6h2v-2h-2v2zm-4 0h2v-2H7v2z"></path></g> <g id="folder"><path d="M10 4H4c-1.1 0-1.99.9-1.99 2L2 18c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V8c0-1.1-.9-2-2-2h- 8l-2-2z"></path></g> <g id="folder-open"><path d="M20 6h-8l-2-2H4c-1.1 0-1.99.9- 1.99 2L2 18c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V8c0-1.1-.9-2-2-2zm0 12H4V8h16v10z">< /path></g> <g id="folder-shared"><path d="M20 6h-8l-2-2H4c-1.1 0-1.99.9-1.99 2L2 18c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V8c0-1.1-.9-2-2-2zm-5 3c1.1 0 2 .9 2 2s-.9 2- 2 2-2-.9-2-2 .9-2 2-2zm4 8h-8v-1c0-1.33 2.67-2 4-2s4 .67 4 2v1z"></path></g> <g id="font-download"><path d="M9.93 13.5h4.14L12 7.98zM20 2H4c-1.1 0-2 .9-2 2v16c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V4c0-1.1-.9-2-2-2zm-4.05 16.5l-1.14-3H9.17l-1.12 3 H5.96l5.11-13h1.86l5.11 13h-2.09z"></path></g> <g id="forward"><path d="M12 8V4l 8 8-8 8v-4H4V8z"></path></g> <g id="fullscreen"><path d="M7 14H5v5h5v-2H7v-3zm-2 -4h2V7h3V5H5v5zm12 7h-3v2h5v-5h-2v3zM14 5v2h3v3h2V5h-5z"></path></g> <g id="full screen-exit"><path d="M5 16h3v3h2v-5H5v2zm3-8H5v2h5V5H8v3zm6 11h2v-3h3v-2h-5v5zm 2-11V5h-2v5h5V8h-3z"></path></g> <g id="gavel"><path d="M1 21h12v2H1zM5.245 8.07 l2.83-2.827 14.14 14.142-2.828 2.828zM12.317 1l5.657 5.656-2.83 2.83-5.654-5.66z M3.825 9.485l5.657 5.657-2.828 2.828-5.657-5.657z"></path></g> <g id="gesture">< path d="M4.59 6.89c.7-.71 1.4-1.35 1.71-1.22.5.2 0 1.03-.3 1.52-.25.42-2.86 3.89 -2.86 6.31 0 1.28.48 2.34 1.34 2.98.75.56 1.74.73 2.64.46 1.07-.31 1.95-1.4 3.06 -2.77 1.21-1.49 2.83-3.44 4.08-3.44 1.63 0 1.65 1.01 1.76 1.79-3.78.64-5.38 3.67 -5.38 5.37 0 1.7 1.44 3.09 3.21 3.09 1.63 0 4.29-1.33 4.69-6.1H21v-2.5h-2.47c-.1 5-1.65-1.09-4.2-4.03-4.2-2.25 0-4.18 1.91-4.94 2.84-.58.73-2.06 2.48-2.29 2.72-. 25.3-.68.84-1.11.84-.45 0-.72-.83-.36-1.92.35-1.09 1.4-2.86 1.85-3.52.78-1.14 1. 3-1.92 1.3-3.28C8.95 3.69 7.31 3 6.44 3 5.12 3 3.97 4 3.72 4.25c-.36.36-.66.66-. 88.93l1.75 1.71zm9.29 11.66c-.31 0-.74-.26-.74-.72 0-.6.73-2.2 2.87-2.76-.3 2.69 -1.43 3.48-2.13 3.48z"></path></g> <g id="get-app"><path d="M19 9h-4V3H9v6H5l7 7 7-7zM5 18v2h14v-2H5z"></path></g> <g id="gif"><path d="M11.5 9H13v6h-1.5zM9 9H6 c-.6 0-1 .5-1 1v4c0 .5.4 1 1 1h3c.6 0 1-.5 1-1v-2H8.5v1.5h-2v-3H10V10c0-.5-.4-1- 1-1zm10 1.5V9h-4.5v6H16v-2h2v-1.5h-2v-1z"></path></g> <g id="grade"><path d="M12 17.27L18.18 21l-1.64-7.03L22 9.24l-7.19-.61L12 2 9.19 8.63 2 9.24l5.46 4.73L5.8 2 21z"></path></g> <g id="group-work"><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zM8 17.5c-1.38 0-2.5-1.12-2.5-2.5s1.12-2.5 2.5-2 .5 2.5 1.12 2.5 2.5-1.12 2.5-2.5 2.5zM9.5 8c0-1.38 1.12-2.5 2.5-2.5s2.5 1.12 2.5 2.5-1.12 2.5-2.5 2.5S9.5 9.38 9.5 8zm6.5 9.5c-1.38 0-2.5-1.12-2.5-2.5s1.12-2.5 2.5-2.5 2.5 1.12 2.5 2.5-1.12 2.5-2.5 2.5z"></path></g> <g id="help"><path d="M1 2 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm1 17h-2v-2h2v2z m2.07-7.75l-.9.92C13.45 12.9 13 13.5 13 15h-2v-.5c0-1.1.45-2.1 1.17-2.83l1.24-1. 26c.37-.36.59-.86.59-1.41 0-1.1-.9-2-2-2s-2 .9-2 2H8c0-2.21 1.79-4 4-4s4 1.79 4 4c0 .88-.36 1.68-.93 2.25z"></path></g> <g id="help-outline"><path d="M11 18h2v- 2h-2v2zm1-16C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm0 18c- 4.41 0-8-3.59-8-8s3.59-8 8-8 8 3.59 8 8-3.59 8-8 8zm0-14c-2.21 0-4 1.79-4 4h2c0- 1.1.9-2 2-2s2 .9 2 2c0 2-3 1.75-3 5h2c0-2.25 3-2.5 3-5 0-2.21-1.79-4-4-4z"></pat h></g> <g id="highlight-off"><path d="M14.59 8L12 10.59 9.41 8 8 9.41 10.59 12 8 14.59 9.41 16 12 13.41 14.59 16 16 14.59 13.41 12 16 9.41 14.59 8zM12 2C6.47 2 2 6.47 2 12s4.47 10 10 10 10-4.47 10-10S17.53 2 12 2zm0 18c-4.41 0-8-3.59-8-8s3. 59-8 8-8 8 3.59 8 8-3.59 8-8 8z"></path></g> <g id="history"><path d="M13 3c-4.9 7 0-9 4.03-9 9H1l3.89 3.89.07.14L9 12H6c0-3.87 3.13-7 7-7s7 3.13 7 7-3.13 7-7 7c -1.93 0-3.68-.79-4.94-2.06l-1.42 1.42C8.27 19.99 10.51 21 13 21c4.97 0 9-4.03 9- 9s-4.03-9-9-9zm-1 5v5l4.28 2.54.72-1.21-3.5-2.08V8H12z"></path></g> <g id="home" ><path d="M10 20v-6h4v6h5v-8h3L12 3 2 12h3v8z"></path></g> <g id="hourglass-empt y"><path d="M6 2v6h.01L6 8.01 10 12l-4 4 .01.01H6V22h12v-5.99h-.01L18 16l-4-4 4- 3.99-.01-.01H18V2H6zm10 14.5V20H8v-3.5l4-4 4 4zm-4-5l-4-4V4h8v3.5l-4 4z"></path> </g> <g id="hourglass-full"><path d="M6 2v6h.01L6 8.01 10 12l-4 4 .01.01H6V22h12 v-5.99h-.01L18 16l-4-4 4-3.99-.01-.01H18V2H6z"></path></g> <g id="http"><path d= "M4.5 11h-2V9H1v6h1.5v-2.5h2V15H6V9H4.5v2zm2.5-.5h1.5V15H10v-4.5h1.5V9H7v1.5zm5. 5 0H14V15h1.5v-4.5H17V9h-4.5v1.5zm9-1.5H18v6h1.5v-2h2c.8 0 1.5-.7 1.5-1.5v-1c0-. 8-.7-1.5-1.5-1.5zm0 2.5h-2v-1h2v1z"></path></g> <g id="https"><path d="M18 8h-1V 6c0-2.76-2.24-5-5-5S7 3.24 7 6v2H6c-1.1 0-2 .9-2 2v10c0 1.1.9 2 2 2h12c1.1 0 2-. 9 2-2V10c0-1.1-.9-2-2-2zm-6 9c-1.1 0-2-.9-2-2s.9-2 2-2 2 .9 2 2-.9 2-2 2zm3.1-9H 8.9V6c0-1.71 1.39-3.1 3.1-3.1 1.71 0 3.1 1.39 3.1 3.1v2z"></path></g> <g id="imp ortant-devices"><path d="M23 11.01L18 11c-.55 0-1 .45-1 1v9c0 .55.45 1 1 1h5c.55 0 1-.45 1-1v-9c0-.55-.45-.99-1-.99zM23 20h-5v-7h5v7zM20 2H2C.89 2 0 2.89 0 4v12 c0 1.1.89 2 2 2h7v2H7v2h8v-2h-2v-2h2v-2H2V4h18v5h2V4c0-1.11-.9-2-2-2zm-8.03 7L11 6l-.97 3H7l2.47 1.76-.94 2.91 2.47-1.8 2.47 1.8-.94-2.91L15 9h-3.03z"></path></ g> <g id="inbox"><path d="M19 3H4.99c-1.11 0-1.98.89-1.98 2L3 19c0 1.1.88 2 1.99 2H19c1.1 0 2-.9 2-2V5c0-1.11-.9-2-2-2zm0 12h-4c0 1.66-1.35 3-3 3s-3-1.34-3-3H4. 99V5H19v10z"></path></g> <g id="indeterminate-check-box"><path d="M19 3H5c-1.1 0 -2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm-2 10H7v-2h10v2z" ></path></g> <g id="info"><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.4 8 10-10S17.52 2 12 2zm1 15h-2v-6h2v6zm0-8h-2V7h2v2z"></path></g> <g id="info-out line"><path d="M11 17h2v-6h-2v6zm1-15C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 1 0-10S17.52 2 12 2zm0 18c-4.41 0-8-3.59-8-8s3.59-8 8-8 8 3.59 8 8-3.59 8-8 8zM11 9h2V7h-2v2z"></path></g> <g id="input"><path d="M21 3.01H3c-1.1 0-2 .9-2 2V9h2V4 .99h18v14.03H3V15H1v4.01c0 1.1.9 1.98 2 1.98h18c1.1 0 2-.88 2-1.98v-14c0-1.11-.9 -2-2-2zM11 16l4-4-4-4v3H1v2h10v3z"></path></g> <g id="invert-colors"><path d="M1 7.66 7.93L12 2.27 6.34 7.93c-3.12 3.12-3.12 8.19 0 11.31C7.9 20.8 9.95 21.58 12 21.58c2.05 0 4.1-.78 5.66-2.34 3.12-3.12 3.12-8.19 0-11.31zM12 19.59c-1.6 0-3.11 -.62-4.24-1.76C6.62 16.69 6 15.19 6 13.59s.62-3.11 1.76-4.24L12 5.1v14.49z"></pa th></g> <g id="label"><path d="M17.63 5.84C17.27 5.33 16.67 5 16 5L5 5.01C3.9 5. 01 3 5.9 3 7v10c0 1.1.9 1.99 2 1.99L16 19c.67 0 1.27-.33 1.63-.84L22 12l-4.37-6. 16z"></path></g> <g id="label-outline"><path d="M17.63 5.84C17.27 5.33 16.67 5 1 6 5L5 5.01C3.9 5.01 3 5.9 3 7v10c0 1.1.9 1.99 2 1.99L16 19c.67 0 1.27-.33 1.63-. 84L22 12l-4.37-6.16zM16 17H5V7h11l3.55 5L16 17z"></path></g> <g id="language"><p ath d="M11.99 2C6.47 2 2 6.48 2 12s4.47 10 9.99 10C17.52 22 22 17.52 22 12S17.52 2 11.99 2zm6.93 6h-2.95c-.32-1.25-.78-2.45-1.38-3.56 1.84.63 3.37 1.91 4.33 3.5 6zM12 4.04c.83 1.2 1.48 2.53 1.91 3.96h-3.82c.43-1.43 1.08-2.76 1.91-3.96zM4.26 14C4.1 13.36 4 12.69 4 12s.1-1.36.26-2h3.38c-.08.66-.14 1.32-.14 2 0 .68.06 1.34 .14 2H4.26zm.82 2h2.95c.32 1.25.78 2.45 1.38 3.56-1.84-.63-3.37-1.9-4.33-3.56zm2 .95-8H5.08c.96-1.66 2.49-2.93 4.33-3.56C8.81 5.55 8.35 6.75 8.03 8zM12 19.96c-.8 3-1.2-1.48-2.53-1.91-3.96h3.82c-.43 1.43-1.08 2.76-1.91 3.96zM14.34 14H9.66c-.09 -.66-.16-1.32-.16-2 0-.68.07-1.35.16-2h4.68c.09.65.16 1.32.16 2 0 .68-.07 1.34-. 16 2zm.25 5.56c.6-1.11 1.06-2.31 1.38-3.56h2.95c-.96 1.65-2.49 2.93-4.33 3.56zM1 6.36 14c.08-.66.14-1.32.14-2 0-.68-.06-1.34-.14-2h3.38c.16.64.26 1.31.26 2s-.1 1 .36-.26 2h-3.38z"></path></g> <g id="launch"><path d="M19 19H5V5h7V3H5c-1.11 0-2 .9-2 2v14c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2v-7h-2v7zM14 3v2h3.59l-9.83 9.83 1.41 1.41L19 6.41V10h2V3h-7z"></path></g> <g id="lightbulb-outline"><path d="M9 21c0 .55.45 1 1 1h4c.55 0 1-.45 1-1v-1H9v1zm3-19C8.14 2 5 5.14 5 9c0 2.38 1.19 4.47 3 5.74V17c0 .55.45 1 1 1h6c.55 0 1-.45 1-1v-2.26c1.81-1.27 3-3.36 3-5.74 0-3.86- 3.14-7-7-7zm2.85 11.1l-.85.6V16h-4v-2.3l-.85-.6C7.8 12.16 7 10.63 7 9c0-2.76 2.2 4-5 5-5s5 2.24 5 5c0 1.63-.8 3.16-2.15 4.1z"></path></g> <g id="line-style"><pat h d="M3 16h5v-2H3v2zm6.5 0h5v-2h-5v2zm6.5 0h5v-2h-5v2zM3 20h2v-2H3v2zm4 0h2v-2H7 v2zm4 0h2v-2h-2v2zm4 0h2v-2h-2v2zm4 0h2v-2h-2v2zM3 12h8v-2H3v2zm10 0h8v-2h-8v2zM 3 4v4h18V4H3z"></path></g> <g id="line-weight"><path d="M3 17h18v-2H3v2zm0 3h18v -1H3v1zm0-7h18v-3H3v3zm0-9v4h18V4H3z"></path></g> <g id="link"><path d="M3.9 12c 0-1.71 1.39-3.1 3.1-3.1h4V7H7c-2.76 0-5 2.24-5 5s2.24 5 5 5h4v-1.9H7c-1.71 0-3.1 -1.39-3.1-3.1zM8 13h8v-2H8v2zm9-6h-4v1.9h4c1.71 0 3.1 1.39 3.1 3.1s-1.39 3.1-3.1 3.1h-4V17h4c2.76 0 5-2.24 5-5s-2.24-5-5-5z"></path></g> <g id="list"><path d="M 3 13h2v-2H3v2zm0 4h2v-2H3v2zm0-8h2V7H3v2zm4 4h14v-2H7v2zm0 4h14v-2H7v2zM7 7v2h14 V7H7z"></path></g> <g id="lock"><path d="M18 8h-1V6c0-2.76-2.24-5-5-5S7 3.24 7 6 v2H6c-1.1 0-2 .9-2 2v10c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2V10c0-1.1-.9-2-2-2zm-6 9c -1.1 0-2-.9-2-2s.9-2 2-2 2 .9 2 2-.9 2-2 2zm3.1-9H8.9V6c0-1.71 1.39-3.1 3.1-3.1 1.71 0 3.1 1.39 3.1 3.1v2z"></path></g> <g id="lock-open"><path d="M12 17c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2zm6-9h-1V6c0-2.76-2.24-5-5-5S7 3.24 7 6h1.9c 0-1.71 1.39-3.1 3.1-3.1 1.71 0 3.1 1.39 3.1 3.1v2H6c-1.1 0-2 .9-2 2v10c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2V10c0-1.1-.9-2-2-2zm0 12H6V10h12v10z"></path></g> <g id="l ock-outline"><path d="M12 17c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2zm6-9h-1V 6c0-2.76-2.24-5-5-5S7 3.24 7 6v2H6c-1.1 0-2 .9-2 2v10c0 1.1.9 2 2 2h12c1.1 0 2-. 9 2-2V10c0-1.1-.9-2-2-2zM8.9 6c0-1.71 1.39-3.1 3.1-3.1s3.1 1.39 3.1 3.1v2H8.9V6z M18 20H6V10h12v10z"></path></g> <g id="loyalty"><path d="M21.41 11.58l-9-9C12.05 2.22 11.55 2 11 2H4c-1.1 0-2 .9-2 2v7c0 .55.22 1.05.59 1.42l9 9c.36.36.86.58 1. 41.58.55 0 1.05-.22 1.41-.59l7-7c.37-.36.59-.86.59-1.41 0-.55-.23-1.06-.59-1.42z M5.5 7C4.67 7 4 6.33 4 5.5S4.67 4 5.5 4 7 4.67 7 5.5 6.33 7 5.5 7zm11.77 8.27L13 19.54l-4.27-4.27C8.28 14.81 8 14.19 8 13.5c0-1.38 1.12-2.5 2.5-2.5.69 0 1.32.28 1.77.74l.73.72.73-.73c.45-.45 1.08-.73 1.77-.73 1.38 0 2.5 1.12 2.5 2.5 0 .69-. 28 1.32-.73 1.77z"></path></g> <g id="mail"><path d="M20 4H4c-1.1 0-1.99.9-1.99 2L2 18c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2zm0 4l-8 5-8-5V6l8 5 8-5v 2z"></path></g> <g id="markunread"><path d="M20 4H4c-1.1 0-1.99.9-1.99 2L2 18c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2zm0 4l-8 5-8-5V6l8 5 8-5v2z"></pat h></g> <g id="markunread-mailbox"><path d="M20 6H10v6H8V4h6V0H6v6H4c-1.1 0-2 .9- 2 2v12c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V8c0-1.1-.9-2-2-2z"></path></g> <g id="men u"><path d="M3 18h18v-2H3v2zm0-5h18v-2H3v2zm0-7v2h18V6H3z"></path></g> <g id="mo re-horiz"><path d="M6 10c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2zm12 0c-1.1 0 -2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2zm-6 0c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9- 2-2-2z"></path></g> <g id="more-vert"><path d="M12 8c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2zm0 2c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2zm0 6c-1.1 0-2 .9 -2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2z"></path></g> <g id="motorcycle"><path d="M19.44 9.03L15.41 5H11v2h3.59l2 2H5c-2.8 0-5 2.2-5 5s2.2 5 5 5c2.46 0 4.45-1.69 4.9-4h 1.65l2.77-2.77c-.21.54-.32 1.14-.32 1.77 0 2.8 2.2 5 5 5s5-2.2 5-5c0-2.65-1.97-4 .77-4.56-4.97zM7.82 15C7.4 16.15 6.28 17 5 17c-1.63 0-3-1.37-3-3s1.37-3 3-3c1.28 0 2.4.85 2.82 2H5v2h2.82zM19 17c-1.66 0-3-1.34-3-3s1.34-3 3-3 3 1.34 3 3-1.34 3 -3 3z"></path></g> <g id="move-to-inbox"><path d="M19 3H4.99c-1.11 0-1.98.9-1.98 2L3 19c0 1.1.88 2 1.99 2H19c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm0 12h-4c0 1.66-1.3 5 3-3 3s-3-1.34-3-3H4.99V5H19v10zm-3-5h-2V7h-4v3H8l4 4 4-4z"></path></g> <g id=" next-week"><path d="M20 7h-4V5c0-.55-.22-1.05-.59-1.41C15.05 3.22 14.55 3 14 3h- 4c-1.1 0-2 .9-2 2v2H4c-1.1 0-2 .9-2 2v11c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V9c0-1.1 -.9-2-2-2zM10 5h4v2h-4V5zm1 13.5l-1-1 3-3-3-3 1-1 4 4-4 4z"></path></g> <g id="n ote-add"><path d="M14 2H6c-1.1 0-1.99.9-1.99 2L4 20c0 1.1.89 2 1.99 2H18c1.1 0 2 -.9 2-2V8l-6-6zm2 14h-3v3h-2v-3H8v-2h3v-3h2v3h3v2zm-3-7V3.5L18.5 9H13z"></path>< /g> <g id="offline-pin"><path d="M12 2C6.5 2 2 6.5 2 12s4.5 10 10 10 10-4.5 10-1 0S17.5 2 12 2zm5 16H7v-2h10v2zm-6.7-4L7 10.7l1.4-1.4 1.9 1.9 5.3-5.3L17 7.3 10.3 14z"></path></g> <g id="opacity"><path d="M17.66 8L12 2.35 6.34 8C4.78 9.56 4 1 1.64 4 13.64s.78 4.11 2.34 5.67 3.61 2.35 5.66 2.35 4.1-.79 5.66-2.35S20 15.64 2 0 13.64 19.22 9.56 17.66 8zM6 14c.01-2 .62-3.27 1.76-4.4L12 5.27l4.24 4.38C17.38 10.77 17.99 12 18 14H6z"></path></g> <g id="open-in-browser"><path d="M19 4H5c- 1.11 0-2 .9-2 2v12c0 1.1.89 2 2 2h4v-2H5V8h14v10h-4v2h4c1.1 0 2-.9 2-2V6c0-1.1-. 89-2-2-2zm-7 6l-4 4h3v6h2v-6h3l-4-4z"></path></g> <g id="open-in-new"><path d="M 19 19H5V5h7V3H5c-1.11 0-2 .9-2 2v14c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2v-7h-2v7zM14 3v2h3.59l-9.83 9.83 1.41 1.41L19 6.41V10h2V3h-7z"></path></g> <g id="open-with" ><path d="M10 9h4V6h3l-5-5-5 5h3v3zm-1 1H6V7l-5 5 5 5v-3h3v-4zm14 2l-5-5v3h-3v4h 3v3l5-5zm-9 3h-4v3H7l5 5 5-5h-3v-3z"></path></g> <g id="pageview"><path d="M11.5 9C10.12 9 9 10.12 9 11.5s1.12 2.5 2.5 2.5 2.5-1.12 2.5-2.5S12.88 9 11.5 9zM20 4 H4c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2zm-3.21 14 .21l-2.91-2.91c-.69.44-1.51.7-2.39.7C9.01 16 7 13.99 7 11.5S9.01 7 11.5 7 16 9.0 1 16 11.5c0 .88-.26 1.69-.7 2.39l2.91 2.9-1.42 1.42z"></path></g> <g id="pan-too l"><path d="M23 5.5V20c0 2.2-1.8 4-4 4h-7.3c-1.08 0-2.1-.43-2.85-1.19L1 14.83s1. 26-1.23 1.3-1.25c.22-.19.49-.29.79-.29.22 0 .42.06.6.16.04.01 4.31 2.46 4.31 2.4 6V4c0-.83.67-1.5 1.5-1.5S11 3.17 11 4v7h1V1.5c0-.83.67-1.5 1.5-1.5S15 .67 15 1.5 V11h1V2.5c0-.83.67-1.5 1.5-1.5s1.5.67 1.5 1.5V11h1V5.5c0-.83.67-1.5 1.5-1.5s1.5. 67 1.5 1.5z"></path></g> <g id="payment"><path d="M20 4H4c-1.11 0-1.99.89-1.99 2 L2 18c0 1.11.89 2 2 2h16c1.11 0 2-.89 2-2V6c0-1.11-.89-2-2-2zm0 14H4v-6h16v6zm0- 10H4V6h16v2z"></path></g> <g id="perm-camera-mic"><path d="M20 5h-3.17L15 3H9L7. 17 5H4c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h7v-2.09c-2.83-.48-5-2.94-5-5.91h2c0 2.21 1.79 4 4 4s4-1.79 4-4h2c0 2.97-2.17 5.43-5 5.91V21h7c1.1 0 2-.9 2-2V7c0-1.1-.9- 2-2-2zm-6 8c0 1.1-.9 2-2 2s-2-.9-2-2V9c0-1.1.9-2 2-2s2 .9 2 2v4z"></path></g> <g id="perm-contact-calendar"><path d="M19 3h-1V1h-2v2H8V1H6v2H5c-1.11 0-2 .9-2 2v 14c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm-7 3c1.66 0 3 1.34 3 3s-1. 34 3-3 3-3-1.34-3-3 1.34-3 3-3zm6 12H6v-1c0-2 4-3.1 6-3.1s6 1.1 6 3.1v1z"></path ></g> <g id="perm-data-setting"><path d="M18.99 11.5c.34 0 .67.03 1 .07L20 0 0 2 0h11.56c-.04-.33-.07-.66-.07-1 0-4.14 3.36-7.5 7.5-7.5zm3.71 7.99c.02-.16.04-.32 .04-.49 0-.17-.01-.33-.04-.49l1.06-.83c.09-.08.12-.21.06-.32l-1-1.73c-.06-.11-.1 9-.15-.31-.11l-1.24.5c-.26-.2-.54-.37-.85-.49l-.19-1.32c-.01-.12-.12-.21-.24-.21 h-2c-.12 0-.23.09-.25.21l-.19 1.32c-.3.13-.59.29-.85.49l-1.24-.5c-.11-.04-.24 0- .31.11l-1 1.73c-.06.11-.04.24.06.32l1.06.83c-.02.16-.03.32-.03.49 0 .17.01.33.03 .49l-1.06.83c-.09.08-.12.21-.06.32l1 1.73c.06.11.19.15.31.11l1.24-.5c.26.2.54.37 .85.49l.19 1.32c.02.12.12.21.25.21h2c.12 0 .23-.09.25-.21l.19-1.32c.3-.13.59-.29 .84-.49l1.25.5c.11.04.24 0 .31-.11l1-1.73c.06-.11.03-.24-.06-.32l-1.07-.83zm-3.7 1 1.01c-.83 0-1.5-.67-1.5-1.5s.67-1.5 1.5-1.5 1.5.67 1.5 1.5-.67 1.5-1.5 1.5z">< /path></g> <g id="perm-device-information"><path d="M13 7h-2v2h2V7zm0 4h-2v6h2v- 6zm4-9.99L7 1c-1.1 0-2 .9-2 2v18c0 1.1.9 2 2 2h10c1.1 0 2-.9 2-2V3c0-1.1-.9-1.99 -2-1.99zM17 19H7V5h10v14z"></path></g> <g id="perm-identity"><path d="M12 5.9c1. 16 0 2.1.94 2.1 2.1s-.94 2.1-2.1 2.1S9.9 9.16 9.9 8s.94-2.1 2.1-2.1m0 9c2.97 0 6 .1 1.46 6.1 2.1v1.1H5.9V17c0-.64 3.13-2.1 6.1-2.1M12 4C9.79 4 8 5.79 8 8s1.79 4 4 4 4-1.79 4-4-1.79-4-4-4zm0 9c-2.67 0-8 1.34-8 4v3h16v-3c0-2.66-5.33-4-8-4z"></ path></g> <g id="perm-media"><path d="M2 6H0v5h.01L0 20c0 1.1.9 2 2 2h18v-2H2V6z m20-2h-8l-2-2H6c-1.1 0-1.99.9-1.99 2L4 16c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V6c0-1. 1-.9-2-2-2zM7 15l4.5-6 3.5 4.51 2.5-3.01L21 15H7z"></path></g> <g id="perm-phone -msg"><path d="M20 15.5c-1.25 0-2.45-.2-3.57-.57-.35-.11-.74-.03-1.02.24l-2.2 2. 2c-2.83-1.44-5.15-3.75-6.59-6.58l2.2-2.21c.28-.27.36-.66.25-1.01C8.7 6.45 8.5 5. 25 8.5 4c0-.55-.45-1-1-1H4c-.55 0-1 .45-1 1 0 9.39 7.61 17 17 17 .55 0 1-.45 1-1 v-3.5c0-.55-.45-1-1-1zM12 3v10l3-3h6V3h-9z"></path></g> <g id="perm-scan-wifi">< path d="M12 3C6.95 3 3.15 4.85 0 7.23L12 22 24 7.25C20.85 4.87 17.05 3 12 3zm1 1 3h-2v-6h2v6zm-2-8V6h2v2h-2z"></path></g> <g id="pets"><circle cx="4.5" cy="9.5" r="2.5"></circle><circle cx="9" cy="5.5" r="2.5"></circle><circle cx="15" cy="5. 5" r="2.5"></circle><circle cx="19.5" cy="9.5" r="2.5"></circle><path d="M17.34 14.86c-.87-1.02-1.6-1.89-2.48-2.91-.46-.54-1.05-1.08-1.75-1.32-.11-.04-.22-.07-. 33-.09-.25-.04-.52-.04-.78-.04s-.53 0-.79.05c-.11.02-.22.05-.33.09-.7.24-1.28.78 -1.75 1.32-.87 1.02-1.6 1.89-2.48 2.91-1.31 1.31-2.92 2.76-2.62 4.79.29 1.02 1.0 2 2.03 2.33 2.32.73.15 3.06-.44 5.54-.44h.18c2.48 0 4.81.58 5.54.44 1.31-.29 2.0 4-1.31 2.33-2.32.31-2.04-1.3-3.49-2.61-4.8z"></path></g> <g id="picture-in-pictu re"><path d="M19 7h-8v6h8V7zm2-4H3c-1.1 0-2 .9-2 2v14c0 1.1.9 1.98 2 1.98h18c1.1 0 2-.88 2-1.98V5c0-1.1-.9-2-2-2zm0 16.01H3V4.98h18v14.03z"></path></g> <g id="p icture-in-picture-alt"><path d="M19 11h-8v6h8v-6zm4 8V4.98C23 3.88 22.1 3 21 3H3 c-1.1 0-2 .88-2 1.98V19c0 1.1.9 2 2 2h18c1.1 0 2-.9 2-2zm-2 .02H3V4.97h18v14.05z "></path></g> <g id="play-for-work"><path d="M11 5v5.59H7.5l4.5 4.5 4.5-4.5H13V5 h-2zm-5 9c0 3.31 2.69 6 6 6s6-2.69 6-6h-2c0 2.21-1.79 4-4 4s-4-1.79-4-4H6z"></pa th></g> <g id="polymer"><path d="M19 4h-4L7.11 16.63 4.5 12 9 4H5L.5 12 5 20h4l7 .89-12.63L19.5 12 15 20h4l4.5-8z"></path></g> <g id="power-settings-new"><path d ="M13 3h-2v10h2V3zm4.83 2.17l-1.42 1.42C17.99 7.86 19 9.81 19 12c0 3.87-3.13 7-7 7s-7-3.13-7-7c0-2.19 1.01-4.14 2.58-5.42L6.17 5.17C4.23 6.82 3 9.26 3 12c0 4.97 4.03 9 9 9s9-4.03 9-9c0-2.74-1.23-5.18-3.17-6.83z"></path></g> <g id="pregnant- woman"><path d="M9 4c0-1.11.89-2 2-2s2 .89 2 2-.89 2-2 2-2-.89-2-2zm7 9c-.01-1.3 4-.83-2.51-2-3 0-1.66-1.34-3-3-3s-3 1.34-3 3v7h2v5h3v-5h3v-4z"></path></g> <g id ="print"><path d="M19 8H5c-1.66 0-3 1.34-3 3v6h4v4h12v-4h4v-6c0-1.66-1.34-3-3-3z m-3 11H8v-5h8v5zm3-7c-.55 0-1-.45-1-1s.45-1 1-1 1 .45 1 1-.45 1-1 1zm-1-9H6v4h12 V3z"></path></g> <g id="query-builder"><path d="M11.99 2C6.47 2 2 6.48 2 12s4.47 10 9.99 10C17.52 22 22 17.52 22 12S17.52 2 11.99 2zM12 20c-4.42 0-8-3.58-8-8s3. 58-8 8-8 8 3.58 8 8-3.58 8-8 8zm.5-13H11v6l5.25 3.15.75-1.23-4.5-2.67z"></path>< /g> <g id="question-answer"><path d="M21 6h-2v9H6v2c0 .55.45 1 1 1h11l4 4V7c0-.5 5-.45-1-1-1zm-4 6V3c0-.55-.45-1-1-1H3c-.55 0-1 .45-1 1v14l4-4h10c.55 0 1-.45 1-1 z"></path></g> <g id="radio-button-checked"><path d="M12 7c-2.76 0-5 2.24-5 5s2. 24 5 5 5 5-2.24 5-5-2.24-5-5-5zm0-5C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10- 10S17.52 2 12 2zm0 18c-4.42 0-8-3.58-8-8s3.58-8 8-8 8 3.58 8 8-3.58 8-8 8z"></pa th></g> <g id="radio-button-unchecked"><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm0 18c-4.42 0-8-3.58-8-8s3.58-8 8-8 8 3.58 8 8 -3.58 8-8 8z"></path></g> <g id="receipt"><path d="M18 17H6v-2h12v2zm0-4H6v-2h12 v2zm0-4H6V7h12v2zM3 22l1.5-1.5L6 22l1.5-1.5L9 22l1.5-1.5L12 22l1.5-1.5L15 22l1.5 -1.5L18 22l1.5-1.5L21 22V2l-1.5 1.5L18 2l-1.5 1.5L15 2l-1.5 1.5L12 2l-1.5 1.5L9 2 7.5 3.5 6 2 4.5 3.5 3 2v20z"></path></g> <g id="record-voice-over"><circle cx= "9" cy="9" r="4"></circle><path d="M9 15c-2.67 0-8 1.34-8 4v2h16v-2c0-2.66-5.33- 4-8-4zm7.76-9.64l-1.68 1.69c.84 1.18.84 2.71 0 3.89l1.68 1.69c2.02-2.02 2.02-5.0 7 0-7.27zM20.07 2l-1.63 1.63c2.77 3.02 2.77 7.56 0 10.74L20.07 16c3.9-3.89 3.91- 9.95 0-14z"></path></g> <g id="redeem"><path d="M20 6h-2.18c.11-.31.18-.65.18-1 0-1.66-1.34-3-3-3-1.05 0-1.96.54-2.5 1.35l-.5.67-.5-.68C10.96 2.54 10.05 2 9 2 7 .34 2 6 3.34 6 5c0 .35.07.69.18 1H4c-1.11 0-1.99.89-1.99 2L2 19c0 1.11.89 2 2 2h 16c1.11 0 2-.89 2-2V8c0-1.11-.89-2-2-2zm-5-2c.55 0 1 .45 1 1s-.45 1-1 1-1-.45-1- 1 .45-1 1-1zM9 4c.55 0 1 .45 1 1s-.45 1-1 1-1-.45-1-1 .45-1 1-1zm11 15H4v-2h16v2 zm0-5H4V8h5.08L7 10.83 8.62 12 11 8.76l1-1.36 1 1.36L15.38 12 17 10.83 14.92 8H2 0v6z"></path></g> <g id="redo"><path d="M18.4 10.6C16.55 8.99 14.15 8 11.5 8c-4. 65 0-8.58 3.03-9.96 7.22L3.9 16c1.05-3.19 4.05-5.5 7.6-5.5 1.95 0 3.73.72 5.12 1 .88L13 16h9V7l-3.6 3.6z"></path></g> <g id="refresh"><path d="M17.65 6.35C16.2 4 .9 14.21 4 12 4c-4.42 0-7.99 3.58-7.99 8s3.57 8 7.99 8c3.73 0 6.84-2.55 7.73-6h- 2.08c-.82 2.33-3.04 4-5.65 4-3.31 0-6-2.69-6-6s2.69-6 6-6c1.66 0 3.14.69 4.22 1. 78L13 11h7V4l-2.35 2.35z"></path></g> <g id="remove"><path d="M19 13H5v-2h14v2z" ></path></g> <g id="remove-circle"><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm5 11H7v-2h10v2z"></path></g> <g id="remove-circle -outline"><path d="M7 11v2h10v-2H7zm5-9C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm0 18c-4.41 0-8-3.59-8-8s3.59-8 8-8 8 3.59 8 8-3.59 8-8 8z"> </path></g> <g id="reorder"><path d="M3 15h18v-2H3v2zm0 4h18v-2H3v2zm0-8h18V9H3v 2zm0-6v2h18V5H3z"></path></g> <g id="reply"><path d="M10 9V5l-7 7 7 7v-4.1c5 0 8 .5 1.6 11 5.1-1-5-4-10-11-11z"></path></g> <g id="reply-all"><path d="M7 8V5l-7 7 7 7v-3l-4-4 4-4zm6 1V5l-7 7 7 7v-4.1c5 0 8.5 1.6 11 5.1-1-5-4-10-11-11z"></pat h></g> <g id="report"><path d="M15.73 3H8.27L3 8.27v7.46L8.27 21h7.46L21 15.73V8 .27L15.73 3zM12 17.3c-.72 0-1.3-.58-1.3-1.3 0-.72.58-1.3 1.3-1.3.72 0 1.3.58 1.3 1.3 0 .72-.58 1.3-1.3 1.3zm1-4.3h-2V7h2v6z"></path></g> <g id="report-problem"> <path d="M1 21h22L12 2 1 21zm12-3h-2v-2h2v2zm0-4h-2v-4h2v4z"></path></g> <g id=" restore"><path d="M13 3c-4.97 0-9 4.03-9 9H1l3.89 3.89.07.14L9 12H6c0-3.87 3.13- 7 7-7s7 3.13 7 7-3.13 7-7 7c-1.93 0-3.68-.79-4.94-2.06l-1.42 1.42C8.27 19.99 10. 51 21 13 21c4.97 0 9-4.03 9-9s-4.03-9-9-9zm-1 5v5l4.28 2.54.72-1.21-3.5-2.08V8H1 2z"></path></g> <g id="room"><path d="M12 2C8.13 2 5 5.13 5 9c0 5.25 7 13 7 13s7 -7.75 7-13c0-3.87-3.13-7-7-7zm0 9.5c-1.38 0-2.5-1.12-2.5-2.5s1.12-2.5 2.5-2.5 2. 5 1.12 2.5 2.5-1.12 2.5-2.5 2.5z"></path></g> <g id="rounded-corner"><path d="M1 9 19h2v2h-2v-2zm0-2h2v-2h-2v2zM3 13h2v-2H3v2zm0 4h2v-2H3v2zm0-8h2V7H3v2zm0-4h2V3 H3v2zm4 0h2V3H7v2zm8 16h2v-2h-2v2zm-4 0h2v-2h-2v2zm4 0h2v-2h-2v2zm-8 0h2v-2H7v2z m-4 0h2v-2H3v2zM21 8c0-2.76-2.24-5-5-5h-5v2h5c1.65 0 3 1.35 3 3v5h2V8z"></path>< /g> <g id="rowing"><path d="M8.5 14.5L4 19l1.5 1.5L9 17h2l-2.5-2.5zM15 1c-1.1 0- 2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2zm6 20.01L18 24l-2.99-3.01V19.5l-7.1-7.09c-.3 1.05-.61.07-.91.07v-2.16c1.66.03 3.61-.87 4.67-2.04l1.4-1.55c.19-.21.43-.38.69-. 5.29-.14.62-.23.96-.23h.03C15.99 6.01 17 7.02 17 8.26v5.75c0 .84-.35 1.61-.92 2. 16l-3.58-3.58v-2.27c-.63.52-1.43 1.02-2.29 1.39L16.5 18H18l3 3.01z"></path></g> <g id="save"><path d="M17 3H5c-1.11 0-2 .9-2 2v14c0 1.1.89 2 2 2h14c1.1 0 2-.9 2 -2V7l-4-4zm-5 16c-1.66 0-3-1.34-3-3s1.34-3 3-3 3 1.34 3 3-1.34 3-3 3zm3-10H5V5h1 0v4z"></path></g> <g id="schedule"><path d="M11.99 2C6.47 2 2 6.48 2 12s4.47 10 9.99 10C17.52 22 22 17.52 22 12S17.52 2 11.99 2zM12 20c-4.42 0-8-3.58-8-8s3.58-8 8-8 8 3.58 8 8-3.58 8-8 8zm.5-13H11v6l5.25 3.15.75-1.23-4.5-2.67z"></path></g> <g id="search"><path d="M15.5 14h-.79l-.28-.27C15.41 12.59 16 11.11 16 9.5 16 5. 91 13.09 3 9.5 3S3 5.91 3 9.5 5.91 16 9.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.7 9l5 4.99L20.49 19l-4.99-5zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9. 5 11.99 14 9.5 14z"></path></g> <g id="select-all"><path d="M3 5h2V3c-1.1 0-2 .9 -2 2zm0 8h2v-2H3v2zm4 8h2v-2H7v2zM3 9h2V7H3v2zm10-6h-2v2h2V3zm6 0v2h2c0-1.1-.9-2 -2-2zM5 21v-2H3c0 1.1.9 2 2 2zm-2-4h2v-2H3v2zM9 3H7v2h2V3zm2 18h2v-2h-2v2zm8-8h2 v-2h-2v2zm0 8c1.1 0 2-.9 2-2h-2v2zm0-12h2V7h-2v2zm0 8h2v-2h-2v2zm-4 4h2v-2h-2v2z m0-16h2V3h-2v2zM7 17h10V7H7v10zm2-8h6v6H9V9z"></path></g> <g id="send"><path d=" M2.01 21L23 12 2.01 3 2 10l15 2-15 2z"></path></g> <g id="settings"><path d="M19 .43 12.98c.04-.32.07-.64.07-.98s-.03-.66-.07-.98l2.11-1.65c.19-.15.24-.42.12-.64 l-2-3.46c-.12-.22-.39-.3-.61-.22l-2.49 1c-.52-.4-1.08-.73-1.69-.98l-.38-2.65C14. 46 2.18 14.25 2 14 2h-4c-.25 0-.46.18-.49.42l-.38 2.65c-.61.25-1.17.59-1.69.98l- 2.49-1c-.23-.09-.49 0-.61.22l-2 3.46c-.13.22-.07.49.12.64l2.11 1.65c-.04.32-.07. 65-.07.98s.03.66.07.98l-2.11 1.65c-.19.15-.24.42-.12.64l2 3.46c.12.22.39.3.61.22 l2.49-1c.52.4 1.08.73 1.69.98l.38 2.65c.03.24.24.42.49.42h4c.25 0 .46-.18.49-.42 l.38-2.65c.61-.25 1.17-.59 1.69-.98l2.49 1c.23.09.49 0 .61-.22l2-3.46c.12-.22.07 -.49-.12-.64l-2.11-1.65zM12 15.5c-1.93 0-3.5-1.57-3.5-3.5s1.57-3.5 3.5-3.5 3.5 1 .57 3.5 3.5-1.57 3.5-3.5 3.5z"></path></g> <g id="settings-applications"><path d ="M12 10c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2zm7-7H5c-1.11 0-2 .9-2 2v14c0 1.1.89 2 2 2h14c1.11 0 2-.9 2-2V5c0-1.1-.89-2-2-2zm-1.75 9c0 .23-.02.46-.05.68l 1.48 1.16c.13.11.17.3.08.45l-1.4 2.42c-.09.15-.27.21-.43.15l-1.74-.7c-.36.28-.76 .51-1.18.69l-.26 1.85c-.03.17-.18.3-.35.3h-2.8c-.17 0-.32-.13-.35-.29l-.26-1.85c -.43-.18-.82-.41-1.18-.69l-1.74.7c-.16.06-.34 0-.43-.15l-1.4-2.42c-.09-.15-.05-. 34.08-.45l1.48-1.16c-.03-.23-.05-.46-.05-.69 0-.23.02-.46.05-.68l-1.48-1.16c-.13 -.11-.17-.3-.08-.45l1.4-2.42c.09-.15.27-.21.43-.15l1.74.7c.36-.28.76-.51 1.18-.6 9l.26-1.85c.03-.17.18-.3.35-.3h2.8c.17 0 .32.13.35.29l.26 1.85c.43.18.82.41 1.18 .69l1.74-.7c.16-.06.34 0 .43.15l1.4 2.42c.09.15.05.34-.08.45l-1.48 1.16c.03.23.0 5.46.05.69z"></path></g> <g id="settings-backup-restore"><path d="M14 12c0-1.1-. 9-2-2-2s-2 .9-2 2 .9 2 2 2 2-.9 2-2zm-2-9c-4.97 0-9 4.03-9 9H0l4 4 4-4H5c0-3.87 3.13-7 7-7s7 3.13 7 7-3.13 7-7 7c-1.51 0-2.91-.49-4.06-1.3l-1.42 1.44C8.04 20.3 9.94 21 12 21c4.97 0 9-4.03 9-9s-4.03-9-9-9z"></path></g> <g id="settings-blueto oth"><path d="M11 24h2v-2h-2v2zm-4 0h2v-2H7v2zm8 0h2v-2h-2v2zm2.71-18.29L12 0h-1 v7.59L6.41 3 5 4.41 10.59 10 5 15.59 6.41 17 11 12.41V20h1l5.71-5.71-4.3-4.29 4. 3-4.29zM13 3.83l1.88 1.88L13 7.59V3.83zm1.88 10.46L13 16.17v-3.76l1.88 1.88z"></ path></g> <g id="settings-brightness"><path d="M21 3H3c-1.1 0-2 .9-2 2v14c0 1.1. 9 2 2 2h18c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm0 16.01H3V4.99h18v14.02zM8 16h2.5l1. 5 1.5 1.5-1.5H16v-2.5l1.5-1.5-1.5-1.5V8h-2.5L12 6.5 10.5 8H8v2.5L6.5 12 8 13.5V1 6zm4-7c1.66 0 3 1.34 3 3s-1.34 3-3 3V9z"></path></g> <g id="settings-cell"><path d="M7 24h2v-2H7v2zm4 0h2v-2h-2v2zm4 0h2v-2h-2v2zM16 .01L8 0C6.9 0 6 .9 6 2v16c0 1.1.9 2 2 2h8c1.1 0 2-.9 2-2V2c0-1.1-.9-1.99-2-1.99zM16 16H8V4h8v12z"></path></ g> <g id="settings-ethernet"><path d="M7.77 6.76L6.23 5.48.82 12l5.41 6.52 1.54- 1.28L3.42 12l4.35-5.24zM7 13h2v-2H7v2zm10-2h-2v2h2v-2zm-6 2h2v-2h-2v2zm6.77-7.52 l-1.54 1.28L20.58 12l-4.35 5.24 1.54 1.28L23.18 12l-5.41-6.52z"></path></g> <g i d="settings-input-antenna"><path d="M12 5c-3.87 0-7 3.13-7 7h2c0-2.76 2.24-5 5-5 s5 2.24 5 5h2c0-3.87-3.13-7-7-7zm1 9.29c.88-.39 1.5-1.26 1.5-2.29 0-1.38-1.12-2. 5-2.5-2.5S9.5 10.62 9.5 12c0 1.02.62 1.9 1.5 2.29v3.3L7.59 21 9 22.41l3-3 3 3L16 .41 21 13 17.59v-3.3zM12 1C5.93 1 1 5.93 1 12h2c0-4.97 4.03-9 9-9s9 4.03 9 9h2c0 -6.07-4.93-11-11-11z"></path></g> <g id="settings-input-component"><path d="M5 2 c0-.55-.45-1-1-1s-1 .45-1 1v4H1v6h6V6H5V2zm4 14c0 1.3.84 2.4 2 2.82V23h2v-4.18c1 .16-.41 2-1.51 2-2.82v-2H9v2zm-8 0c0 1.3.84 2.4 2 2.82V23h2v-4.18C6.16 18.4 7 17 .3 7 16v-2H1v2zM21 6V2c0-.55-.45-1-1-1s-1 .45-1 1v4h-2v6h6V6h-2zm-8-4c0-.55-.45- 1-1-1s-1 .45-1 1v4H9v6h6V6h-2V2zm4 14c0 1.3.84 2.4 2 2.82V23h2v-4.18c1.16-.41 2- 1.51 2-2.82v-2h-6v2z"></path></g> <g id="settings-input-composite"><path d="M5 2 c0-.55-.45-1-1-1s-1 .45-1 1v4H1v6h6V6H5V2zm4 14c0 1.3.84 2.4 2 2.82V23h2v-4.18c1 .16-.41 2-1.51 2-2.82v-2H9v2zm-8 0c0 1.3.84 2.4 2 2.82V23h2v-4.18C6.16 18.4 7 17 .3 7 16v-2H1v2zM21 6V2c0-.55-.45-1-1-1s-1 .45-1 1v4h-2v6h6V6h-2zm-8-4c0-.55-.45- 1-1-1s-1 .45-1 1v4H9v6h6V6h-2V2zm4 14c0 1.3.84 2.4 2 2.82V23h2v-4.18c1.16-.41 2- 1.51 2-2.82v-2h-6v2z"></path></g> <g id="settings-input-hdmi"><path d="M18 7V4c0 -1.1-.9-2-2-2H8c-1.1 0-2 .9-2 2v3H5v6l3 6v3h8v-3l3-6V7h-1zM8 4h8v3h-2V5h-1v2h-2V 5h-1v2H8V4z"></path></g> <g id="settings-input-svideo"><path d="M8 11.5c0-.83-.6 7-1.5-1.5-1.5S5 10.67 5 11.5 5.67 13 6.5 13 8 12.33 8 11.5zm7-5c0-.83-.67-1.5-1. 5-1.5h-3C9.67 5 9 5.67 9 6.5S9.67 8 10.5 8h3c.83 0 1.5-.67 1.5-1.5zM8.5 15c-.83 0-1.5.67-1.5 1.5S7.67 18 8.5 18s1.5-.67 1.5-1.5S9.33 15 8.5 15zM12 1C5.93 1 1 5. 93 1 12s4.93 11 11 11 11-4.93 11-11S18.07 1 12 1zm0 20c-4.96 0-9-4.04-9-9s4.04-9 9-9 9 4.04 9 9-4.04 9-9 9zm5.5-11c-.83 0-1.5.67-1.5 1.5s.67 1.5 1.5 1.5 1.5-.67 1.5-1.5-.67-1.5-1.5-1.5zm-2 5c-.83 0-1.5.67-1.5 1.5s.67 1.5 1.5 1.5 1.5-.67 1.5 -1.5-.67-1.5-1.5-1.5z"></path></g> <g id="settings-overscan"><path d="M12.01 5.5 L10 8h4l-1.99-2.5zM18 10v4l2.5-1.99L18 10zM6 10l-2.5 2.01L6 14v-4zm8 6h-4l2.01 2 .5L14 16zm7-13H3c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h18c1.1 0 2-.9 2-2V5c0-1.1-.9-2 -2-2zm0 16.01H3V4.99h18v14.02z"></path></g> <g id="settings-phone"><path d="M13 9h-2v2h2V9zm4 0h-2v2h2V9zm3 6.5c-1.25 0-2.45-.2-3.57-.57-.35-.11-.74-.03-1.02.24 l-2.2 2.2c-2.83-1.44-5.15-3.75-6.59-6.58l2.2-2.21c.28-.27.36-.66.25-1.01C8.7 6.4 5 8.5 5.25 8.5 4c0-.55-.45-1-1-1H4c-.55 0-1 .45-1 1 0 9.39 7.61 17 17 17 .55 0 1 -.45 1-1v-3.5c0-.55-.45-1-1-1zM19 9v2h2V9h-2z"></path></g> <g id="settings-power "><path d="M7 24h2v-2H7v2zm4 0h2v-2h-2v2zm2-22h-2v10h2V2zm3.56 2.44l-1.45 1.45C1 6.84 6.94 18 8.83 18 11c0 3.31-2.69 6-6 6s-6-2.69-6-6c0-2.17 1.16-4.06 2.88-5.12 L7.44 4.44C5.36 5.88 4 8.28 4 11c0 4.42 3.58 8 8 8s8-3.58 8-8c0-2.72-1.36-5.12-3 .44-6.56zM15 24h2v-2h-2v2z"></path></g> <g id="settings-remote"><path d="M15 9H9 c-.55 0-1 .45-1 1v12c0 .55.45 1 1 1h6c.55 0 1-.45 1-1V10c0-.55-.45-1-1-1zm-3 6c- 1.1 0-2-.9-2-2s.9-2 2-2 2 .9 2 2-.9 2-2 2zM7.05 6.05l1.41 1.41C9.37 6.56 10.62 6 12 6s2.63.56 3.54 1.46l1.41-1.41C15.68 4.78 13.93 4 12 4s-3.68.78-4.95 2.05zM12 0C8.96 0 6.21 1.23 4.22 3.22l1.41 1.41C7.26 3.01 9.51 2 12 2s4.74 1.01 6.36 2.6 4l1.41-1.41C17.79 1.23 15.04 0 12 0z"></path></g> <g id="settings-voice"><path d ="M7 24h2v-2H7v2zm5-11c1.66 0 2.99-1.34 2.99-3L15 4c0-1.66-1.34-3-3-3S9 2.34 9 4 v6c0 1.66 1.34 3 3 3zm-1 11h2v-2h-2v2zm4 0h2v-2h-2v2zm4-14h-1.7c0 3-2.54 5.1-5.3 5.1S6.7 13 6.7 10H5c0 3.41 2.72 6.23 6 6.72V20h2v-3.28c3.28-.49 6-3.31 6-6.72z" ></path></g> <g id="shop"><path d="M16 6V4c0-1.11-.89-2-2-2h-4c-1.11 0-2 .89-2 2 v2H2v13c0 1.11.89 2 2 2h16c1.11 0 2-.89 2-2V6h-6zm-6-2h4v2h-4V4zM9 18V9l7.5 4L9 18z"></path></g> <g id="shop-two"><path d="M3 9H1v11c0 1.11.89 2 2 2h14c1.11 0 2 -.89 2-2H3V9zm15-4V3c0-1.11-.89-2-2-2h-4c-1.11 0-2 .89-2 2v2H5v11c0 1.11.89 2 2 2h14c1.11 0 2-.89 2-2V5h-5zm-6-2h4v2h-4V3zm0 12V8l5.5 3-5.5 4z"></path></g> <g i d="shopping-basket"><path d="M17.21 9l-4.38-6.56c-.19-.28-.51-.42-.83-.42-.32 0- .64.14-.83.43L6.79 9H2c-.55 0-1 .45-1 1 0 .09.01.18.04.27l2.54 9.27c.23.84 1 1.4 6 1.92 1.46h13c.92 0 1.69-.62 1.93-1.46l2.54-9.27L23 10c0-.55-.45-1-1-1h-4.79zM9 9l3-4.4L15 9H9zm3 8c-1.1 0-2-.9-2-2s.9-2 2-2 2 .9 2 2-.9 2-2 2z"></path></g> <g id="shopping-cart"><path d="M7 18c-1.1 0-1.99.9-1.99 2S5.9 22 7 22s2-.9 2-2-.9- 2-2-2zM1 2v2h2l3.6 7.59-1.35 2.45c-.16.28-.25.61-.25.96 0 1.1.9 2 2 2h12v-2H7.42 c-.14 0-.25-.11-.25-.25l.03-.12.9-1.63h7.45c.75 0 1.41-.41 1.75-1.03l3.58-6.49c. 08-.14.12-.31.12-.48 0-.55-.45-1-1-1H5.21l-.94-2H1zm16 16c-1.1 0-1.99.9-1.99 2s. 89 2 1.99 2 2-.9 2-2-.9-2-2-2z"></path></g> <g id="sort"><path d="M3 18h6v-2H3v2 zM3 6v2h18V6H3zm0 7h12v-2H3v2z"></path></g> <g id="speaker-notes"><path d="M20 2 H4c-1.1 0-1.99.9-1.99 2L2 22l4-4h14c1.1 0 2-.9 2-2V4c0-1.1-.9-2-2-2zM8 14H6v-2h2 v2zm0-3H6V9h2v2zm0-3H6V6h2v2zm7 6h-5v-2h5v2zm3-3h-8V9h8v2zm0-3h-8V6h8v2z"></path ></g> <g id="spellcheck"><path d="M12.45 16h2.09L9.43 3H7.57L2.46 16h2.09l1.12-3 h5.64l1.14 3zm-6.02-5L8.5 5.48 10.57 11H6.43zm15.16.59l-8.09 8.09L9.83 16l-1.41 1.41 5.09 5.09L23 13l-1.41-1.41z"></path></g> <g id="star"><path d="M12 17.27L18 .18 21l-1.64-7.03L22 9.24l-7.19-.61L12 2 9.19 8.63 2 9.24l5.46 4.73L5.82 21z"></ path></g> <g id="star-border"><path d="M22 9.24l-7.19-.62L12 2 9.19 8.63 2 9.24l 5.46 4.73L5.82 21 12 17.27 18.18 21l-1.63-7.03L22 9.24zM12 15.4l-3.76 2.27 1-4.2 8-3.32-2.88 4.38-.38L12 6.1l1.71 4.04 4.38.38-3.32 2.88 1 4.28L12 15.4z"></path> </g> <g id="star-half"><path d="M22 9.24l-7.19-.62L12 2 9.19 8.63 2 9.24l5.46 4. 73L5.82 21 12 17.27 18.18 21l-1.63-7.03L22 9.24zM12 15.4V6.1l1.71 4.04 4.38.38-3 .32 2.88 1 4.28L12 15.4z"></path></g> <g id="stars"><path d="M11.99 2C6.47 2 2 6 .48 2 12s4.47 10 9.99 10C17.52 22 22 17.52 22 12S17.52 2 11.99 2zm4.24 16L12 15. 45 7.77 18l1.12-4.81-3.73-3.23 4.92-.42L12 5l1.92 4.53 4.92.42-3.73 3.23L16.23 1 8z"></path></g> <g id="store"><path d="M20 4H4v2h16V4zm1 10v-2l-1-5H4l-1 5v2h1v6 h10v-6h4v6h2v-6h1zm-9 4H6v-4h6v4z"></path></g> <g id="subdirectory-arrow-left">< path d="M11 9l1.42 1.42L8.83 14H18V4h2v12H8.83l3.59 3.58L11 21l-6-6 6-6z"></path ></g> <g id="subdirectory-arrow-right"><path d="M19 15l-6 6-1.42-1.42L15.17 16H4 V4h2v10h9.17l-3.59-3.58L13 9l6 6z"></path></g> <g id="subject"><path d="M14 17H4 v2h10v-2zm6-8H4v2h16V9zM4 15h16v-2H4v2zM4 5v2h16V5H4z"></path></g> <g id="superv isor-account"><path d="M16.5 12c1.38 0 2.49-1.12 2.49-2.5S17.88 7 16.5 7C15.12 7 14 8.12 14 9.5s1.12 2.5 2.5 2.5zM9 11c1.66 0 2.99-1.34 2.99-3S10.66 5 9 5C7.34 5 6 6.34 6 8s1.34 3 3 3zm7.5 3c-1.83 0-5.5.92-5.5 2.75V19h11v-2.25c0-1.83-3.67-2 .75-5.5-2.75zM9 13c-2.33 0-7 1.17-7 3.5V19h7v-2.25c0-.85.33-2.34 2.37-3.47C10.5 13.1 9.66 13 9 13z"></path></g> <g id="swap-horiz"><path d="M6.99 11L3 15l3.99 4 v-3H14v-2H6.99v-3zM21 9l-3.99-4v3H10v2h7.01v3L21 9z"></path></g> <g id="swap-ver t"><path d="M16 17.01V10h-2v7.01h-3L15 21l4-3.99h-3zM9 3L5 6.99h3V14h2V6.99h3L9 3z"></path></g> <g id="swap-vertical-circle"><path d="M12 2C6.48 2 2 6.48 2 12s4 .48 10 10 10 10-4.48 10-10S17.52 2 12 2zM6.5 9L10 5.5 13.5 9H11v4H9V9H6.5zm11 6L 14 18.5 10.5 15H13v-4h2v4h2.5z"></path></g> <g id="system-update-alt"><path d="M 12 16.5l4-4h-3v-9h-2v9H8l4 4zm9-13h-6v1.99h6v14.03H3V5.49h6V3.5H3c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h18c1.1 0 2-.9 2-2v-14c0-1.1-.9-2-2-2z"></path></g> <g id="tab "><path d="M21 3H3c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h18c1.1 0 2-.9 2-2V5c0-1.1-.9 -2-2-2zm0 16H3V5h10v4h8v10z"></path></g> <g id="tab-unselected"><path d="M1 9h2V 7H1v2zm0 4h2v-2H1v2zm0-8h2V3c-1.1 0-2 .9-2 2zm8 16h2v-2H9v2zm-8-4h2v-2H1v2zm2 4v -2H1c0 1.1.9 2 2 2zM21 3h-8v6h10V5c0-1.1-.9-2-2-2zm0 14h2v-2h-2v2zM9 5h2V3H9v2zM 5 21h2v-2H5v2zM5 5h2V3H5v2zm16 16c1.1 0 2-.9 2-2h-2v2zm0-8h2v-2h-2v2zm-8 8h2v-2h -2v2zm4 0h2v-2h-2v2z"></path></g> <g id="text-format"><path d="M5 17v2h14v-2H5zm 4.5-4.2h5l.9 2.2h2.1L12.75 4h-1.5L6.5 15h2.1l.9-2.2zM12 5.98L13.87 11h-3.74L12 5 .98z"></path></g> <g id="theaters"><path d="M18 3v2h-2V3H8v2H6V3H4v18h2v-2h2v2h8 v-2h2v2h2V3h-2zM8 17H6v-2h2v2zm0-4H6v-2h2v2zm0-4H6V7h2v2zm10 8h-2v-2h2v2zm0-4h-2 v-2h2v2zm0-4h-2V7h2v2z"></path></g> <g id="thumb-down"><path d="M15 3H6c-.83 0-1 .54.5-1.84 1.22l-3.02 7.05c-.09.23-.14.47-.14.73v1.91l.01.01L1 14c0 1.1.9 2 2 2h 6.31l-.95 4.57-.03.32c0 .41.17.79.44 1.06L9.83 23l6.59-6.59c.36-.36.58-.86.58-1. 41V5c0-1.1-.9-2-2-2zm4 0v12h4V3h-4z"></path></g> <g id="thumb-up"><path d="M1 21 h4V9H1v12zm22-11c0-1.1-.9-2-2-2h-6.31l.95-4.57.03-.32c0-.41-.17-.79-.44-1.06L14. 17 1 7.59 7.59C7.22 7.95 7 8.45 7 9v10c0 1.1.9 2 2 2h9c.83 0 1.54-.5 1.84-1.22l3 .02-7.05c.09-.23.14-.47.14-.73v-1.91l-.01-.01L23 10z"></path></g> <g id="thumbs- up-down"><path d="M12 6c0-.55-.45-1-1-1H5.82l.66-3.18.02-.23c0-.31-.13-.59-.33-. 8L5.38 0 .44 4.94C.17 5.21 0 5.59 0 6v6.5c0 .83.67 1.5 1.5 1.5h6.75c.62 0 1.15-. 38 1.38-.91l2.26-5.29c.07-.17.11-.36.11-.55V6zm10.5 4h-6.75c-.62 0-1.15.38-1.38. 91l-2.26 5.29c-.07.17-.11.36-.11.55V18c0 .55.45 1 1 1h5.18l-.66 3.18-.02.24c0 .3 1.13.59.33.8l.79.78 4.94-4.94c.27-.27.44-.65.44-1.06v-6.5c0-.83-.67-1.5-1.5-1.5z "></path></g> <g id="timeline"><path d="M23 8c0 1.1-.9 2-2 2-.18 0-.35-.02-.51-. 07l-3.56 3.55c.05.16.07.34.07.52 0 1.1-.9 2-2 2s-2-.9-2-2c0-.18.02-.36.07-.52l-2 .55-2.55c-.16.05-.34.07-.52.07s-.36-.02-.52-.07l-4.55 4.56c.05.16.07.33.07.51 0 1.1-.9 2-2 2s-2-.9-2-2 .9-2 2-2c.18 0 .35.02.51.07l4.56-4.55C8.02 9.36 8 9.18 8 9c0-1.1.9-2 2-2s2 .9 2 2c0 .18-.02.36-.07.52l2.55 2.55c.16-.05.34-.07.52-.07s.36 .02.52.07l3.55-3.56C19.02 8.35 19 8.18 19 8c0-1.1.9-2 2-2s2 .9 2 2z"></path></g> <g id="toc"><path d="M3 9h14V7H3v2zm0 4h14v-2H3v2zm0 4h14v-2H3v2zm16 0h2v-2h-2v 2zm0-10v2h2V7h-2zm0 6h2v-2h-2v2z"></path></g> <g id="today"><path d="M19 3h-1V1h -2v2H8V1H6v2H5c-1.11 0-1.99.9-1.99 2L3 19c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2V5c0-1 .1-.9-2-2-2zm0 16H5V8h14v11zM7 10h5v5H7z"></path></g> <g id="toll"><path d="M15 4c-4.42 0-8 3.58-8 8s3.58 8 8 8 8-3.58 8-8-3.58-8-8-8zm0 14c-3.31 0-6-2.69-6-6s2 .69-6 6-6 6 2.69 6 6-2.69 6-6 6zM3 12c0-2.61 1.67-4.83 4-5.65V4.26C3.55 5.15 1 8 .27 1 12s2.55 6.85 6 7.74v-2.09c-2.33-.82-4-3.04-4-5.65z"></path></g> <g id="tou ch-app"><path d="M9 11.24V7.5C9 6.12 10.12 5 11.5 5S14 6.12 14 7.5v3.74c1.21-.81 2-2.18 2-3.74C16 5.01 13.99 3 11.5 3S7 5.01 7 7.5c0 1.56.79 2.93 2 3.74zm9.84 4 .63l-4.54-2.26c-.17-.07-.35-.11-.54-.11H13v-6c0-.83-.67-1.5-1.5-1.5S10 6.67 10 7 .5v10.74l-3.43-.72c-.08-.01-.15-.03-.24-.03-.31 0-.59.13-.79.33l-.79.8 4.94 4.94 c.27.27.65.44 1.06.44h6.79c.75 0 1.33-.55 1.44-1.28l.75-5.27c.01-.07.02-.14.02-. 2 0-.62-.38-1.16-.91-1.38z"></path></g> <g id="track-changes"><path d="M19.07 4. 93l-1.41 1.41C19.1 7.79 20 9.79 20 12c0 4.42-3.58 8-8 8s-8-3.58-8-8c0-4.08 3.05- 7.44 7-7.93v2.02C8.16 6.57 6 9.03 6 12c0 3.31 2.69 6 6 6s6-2.69 6-6c0-1.66-.67-3 .16-1.76-4.24l-1.41 1.41C15.55 9.9 16 10.9 16 12c0 2.21-1.79 4-4 4s-4-1.79-4-4c0 -1.86 1.28-3.41 3-3.86v2.14c-.6.35-1 .98-1 1.72 0 1.1.9 2 2 2s2-.9 2-2c0-.74-.4- 1.38-1-1.72V2h-1C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10c0-2.76-1.12-5.26 -2.93-7.07z"></path></g> <g id="translate"><path d="M12.87 15.07l-2.54-2.51.03-. 03c1.74-1.94 2.98-4.17 3.71-6.53H17V4h-7V2H8v2H1v1.99h11.17C11.5 7.92 10.44 9.75 9 11.35 8.07 10.32 7.3 9.19 6.69 8h-2c.73 1.63 1.73 3.17 2.98 4.56l-5.09 5.02L4 19l5-5 3.11 3.11.76-2.04zM18.5 10h-2L12 22h2l1.12-3h4.75L21 22h2l-4.5-12zm-2.62 7l1.62-4.33L19.12 17h-3.24z"></path></g> <g id="trending-down"><path d="M16 18l 2.29-2.29-4.88-4.88-4 4L2 7.41 3.41 6l6 6 4-4 6.3 6.29L22 12v6z"></path></g> <g id="trending-flat"><path d="M22 12l-4-4v3H3v2h15v3z"></path></g> <g id="trending -up"><path d="M16 6l2.29 2.29-4.88 4.88-4-4L2 16.59 3.41 18l6-6 4 4 6.3-6.29L22 12V6z"></path></g> <g id="turned-in"><path d="M17 3H7c-1.1 0-1.99.9-1.99 2L5 21l 7-3 7 3V5c0-1.1-.9-2-2-2z"></path></g> <g id="turned-in-not"><path d="M17 3H7c-1 .1 0-1.99.9-1.99 2L5 21l7-3 7 3V5c0-1.1-.9-2-2-2zm0 15l-5-2.18L7 18V5h10v13z"></ path></g> <g id="unarchive"><path d="M20.55 5.22l-1.39-1.68C18.88 3.21 18.47 3 1 8 3H6c-.47 0-.88.21-1.15.55L3.46 5.22C3.17 5.57 3 6.01 3 6.5V19c0 1.1.89 2 2 2h1 4c1.1 0 2-.9 2-2V6.5c0-.49-.17-.93-.45-1.28zM12 9.5l5.5 5.5H14v2h-4v-2H6.5L12 9. 5zM5.12 5l.82-1h12l.93 1H5.12z"></path></g> <g id="undo"><path d="M12.5 8c-2.65 0-5.05.99-6.9 2.6L2 7v9h9l-3.62-3.62c1.39-1.16 3.16-1.88 5.12-1.88 3.54 0 6.55 2 .31 7.6 5.5l2.37-.78C21.08 11.03 17.15 8 12.5 8z"></path></g> <g id="unfold-less "><path d="M7.41 18.59L8.83 20 12 16.83 15.17 20l1.41-1.41L12 14l-4.59 4.59zm9.1 8-13.18L15.17 4 12 7.17 8.83 4 7.41 5.41 12 10l4.59-4.59z"></path></g> <g id="un fold-more"><path d="M12 5.83L15.17 9l1.41-1.41L12 3 7.41 7.59 8.83 9 12 5.83zm0 12.34L8.83 15l-1.41 1.41L12 21l4.59-4.59L15.17 15 12 18.17z"></path></g> <g id=" update"><path d="M21 10.12h-6.78l2.74-2.82c-2.73-2.7-7.15-2.8-9.88-.1-2.73 2.71- 2.73 7.08 0 9.79 2.73 2.71 7.15 2.71 9.88 0C18.32 15.65 19 14.08 19 12.1h2c0 1.9 8-.88 4.55-2.64 6.29-3.51 3.48-9.21 3.48-12.72 0-3.5-3.47-3.53-9.11-.02-12.58 3. 51-3.47 9.14-3.47 12.65 0L21 3v7.12zM12.5 8v4.25l3.5 2.08-.72 1.21L11 13V8h1.5z" ></path></g> <g id="verified-user"><path d="M12 1L3 5v6c0 5.55 3.84 10.74 9 12 5 .16-1.26 9-6.45 9-12V5l-9-4zm-2 16l-4-4 1.41-1.41L10 14.17l6.59-6.59L18 9l-8 8z" ></path></g> <g id="view-agenda"><path d="M20 13H3c-.55 0-1 .45-1 1v6c0 .55.45 1 1 1h17c.55 0 1-.45 1-1v-6c0-.55-.45-1-1-1zm0-10H3c-.55 0-1 .45-1 1v6c0 .55.45 1 1 1h17c.55 0 1-.45 1-1V4c0-.55-.45-1-1-1z"></path></g> <g id="view-array"><path d="M4 18h3V5H4v13zM18 5v13h3V5h-3zM8 18h9V5H8v13z"></path></g> <g id="view-caro usel"><path d="M7 19h10V4H7v15zm-5-2h4V6H2v11zM18 6v11h4V6h-4z"></path></g> <g i d="view-column"><path d="M10 18h5V5h-5v13zm-6 0h5V5H4v13zM16 5v13h5V5h-5z"></pat h></g> <g id="view-day"><path d="M2 21h19v-3H2v3zM20 8H3c-.55 0-1 .45-1 1v6c0 .5 5.45 1 1 1h17c.55 0 1-.45 1-1V9c0-.55-.45-1-1-1zM2 3v3h19V3H2z"></path></g> <g i d="view-headline"><path d="M4 15h16v-2H4v2zm0 4h16v-2H4v2zm0-8h16V9H4v2zm0-6v2h1 6V5H4z"></path></g> <g id="view-list"><path d="M4 14h4v-4H4v4zm0 5h4v-4H4v4zM4 9 h4V5H4v4zm5 5h12v-4H9v4zm0 5h12v-4H9v4zM9 5v4h12V5H9z"></path></g> <g id="view-m odule"><path d="M4 11h5V5H4v6zm0 7h5v-6H4v6zm6 0h5v-6h-5v6zm6 0h5v-6h-5v6zm-6-7h 5V5h-5v6zm6-6v6h5V5h-5z"></path></g> <g id="view-quilt"><path d="M10 18h5v-6h-5v 6zm-6 0h5V5H4v13zm12 0h5v-6h-5v6zM10 5v6h11V5H10z"></path></g> <g id="view-strea m"><path d="M4 18h17v-6H4v6zM4 5v6h17V5H4z"></path></g> <g id="view-week"><path d="M6 5H3c-.55 0-1 .45-1 1v12c0 .55.45 1 1 1h3c.55 0 1-.45 1-1V6c0-.55-.45-1-1-1 zm14 0h-3c-.55 0-1 .45-1 1v12c0 .55.45 1 1 1h3c.55 0 1-.45 1-1V6c0-.55-.45-1-1-1 zm-7 0h-3c-.55 0-1 .45-1 1v12c0 .55.45 1 1 1h3c.55 0 1-.45 1-1V6c0-.55-.45-1-1-1 z"></path></g> <g id="visibility"><path d="M12 4.5C7 4.5 2.73 7.61 1 12c1.73 4.3 9 6 7.5 11 7.5s9.27-3.11 11-7.5c-1.73-4.39-6-7.5-11-7.5zM12 17c-2.76 0-5-2.24-5- 5s2.24-5 5-5 5 2.24 5 5-2.24 5-5 5zm0-8c-1.66 0-3 1.34-3 3s1.34 3 3 3 3-1.34 3-3 -1.34-3-3-3z"></path></g> <g id="visibility-off"><path d="M12 7c2.76 0 5 2.24 5 5 0 .65-.13 1.26-.36 1.83l2.92 2.92c1.51-1.26 2.7-2.89 3.43-4.75-1.73-4.39-6-7.5 -11-7.5-1.4 0-2.74.25-3.98.7l2.16 2.16C10.74 7.13 11.35 7 12 7zM2 4.27l2.28 2.28 .46.46C3.08 8.3 1.78 10.02 1 12c1.73 4.39 6 7.5 11 7.5 1.55 0 3.03-.3 4.38-.84l. 42.42L19.73 22 21 20.73 3.27 3 2 4.27zM7.53 9.8l1.55 1.55c-.05.21-.08.43-.08.65 0 1.66 1.34 3 3 3 .22 0 .44-.03.65-.08l1.55 1.55c-.67.33-1.41.53-2.2.53-2.76 0-5 -2.24-5-5 0-.79.2-1.53.53-2.2zm4.31-.78l3.15 3.15.02-.16c0-1.66-1.34-3-3-3l-.17. 01z"></path></g> <g id="warning"><path d="M1 21h22L12 2 1 21zm12-3h-2v-2h2v2zm0- 4h-2v-4h2v4z"></path></g> <g id="watch-later"><path d="M12 2C6.5 2 2 6.5 2 12s4. 5 10 10 10 10-4.5 10-10S17.5 2 12 2zm4.2 14.2L11 13V7h1.5v5.2l4.5 2.7-.8 1.3z">< /path></g> <g id="weekend"><path d="M21 10c-1.1 0-2 .9-2 2v3H5v-3c0-1.1-.9-2-2-2 s-2 .9-2 2v5c0 1.1.9 2 2 2h18c1.1 0 2-.9 2-2v-5c0-1.1-.9-2-2-2zm-3-5H6c-1.1 0-2 .9-2 2v2.15c1.16.41 2 1.51 2 2.82V14h12v-2.03c0-1.3.84-2.4 2-2.82V7c0-1.1-.9-2-2 -2z"></path></g> <g id="work"><path d="M20 6h-4V4c0-1.11-.89-2-2-2h-4c-1.11 0-2 .89-2 2v2H4c-1.11 0-1.99.89-1.99 2L2 19c0 1.11.89 2 2 2h16c1.11 0 2-.89 2-2V8c0- 1.11-.89-2-2-2zm-6 0h-4V4h4v2z"></path></g> <g id="youtube-searched-for"><path d ="M17.01 14h-.8l-.27-.27c.98-1.14 1.57-2.61 1.57-4.23 0-3.59-2.91-6.5-6.5-6.5s-6 .5 3-6.5 6.5H2l3.84 4 4.16-4H6.51C6.51 7 8.53 5 11.01 5s4.5 2.01 4.5 4.5c0 2.48- 2.02 4.5-4.5 4.5-.65 0-1.26-.14-1.82-.38L7.71 15.1c.97.57 2.09.9 3.3.9 1.61 0 3. 08-.59 4.22-1.57l.27.27v.79l5.01 4.99L22 19l-4.99-5z"></path></g> <g id="zoom-in "><path d="M15.5 14h-.79l-.28-.27C15.41 12.59 16 11.11 16 9.5 16 5.91 13.09 3 9. 5 3S3 5.91 3 9.5 5.91 16 9.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.79l5 4.99L20.4 9 19l-4.99-5zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9. 5 14zm2.5-4h-2v2H9v-2H7V9h2V7h1v2h2v1z"></path></g> <g id="zoom-out"><path d="M1 5.5 14h-.79l-.28-.27C15.41 12.59 16 11.11 16 9.5 16 5.91 13.09 3 9.5 3S3 5.91 3 9.5 5.91 16 9.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.79l5 4.99L20.49 19l-4.99-5z m-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14zM7 9h5v1 H7z"></path></g> </defs></svg> </iron-iconset-svg> <script>!function(){"use stri ct";function e(e,t){var n="";if(e){var i=e.toLowerCase();" "===i||v.test(i)?n="s pace":f.test(i)?n="esc":1==i.length?t&&!u.test(i)||(n=i):n=c.test(i)?i.replace(" arrow",""):"multiply"==i?"*":i}return n}function t(e){var t="";return e&&(e in o ?t=o[e]:h.test(e)?(e=parseInt(e.replace("U+","0x"),16),t=String.fromCharCode(e). toLowerCase()):t=e.toLowerCase()),t}function n(e){var t="";return Number(e)&&(t= e>=65&&e<=90?String.fromCharCode(32+e):e>=112&&e<=123?"f"+(e-112):e>=48&&e<=57?S tring(e-48):e>=96&&e<=105?String(e-96):d[e]),t}function i(i,r){return i.key?e(i. key,r):i.detail&&i.detail.key?e(i.detail.key,r):t(i.keyIdentifier)||n(i.keyCode) ||""}function r(e,t){var n=i(t,e.hasModifiers);return n===e.key&&(!e.hasModifier s||!!t.shiftKey==!!e.shiftKey&&!!t.ctrlKey==!!e.ctrlKey&&!!t.altKey==!!e.altKey& &!!t.metaKey==!!e.metaKey)}function s(e){return 1===e.length?{combo:e,key:e,even t:"keydown"}:e.split("+").reduce(function(e,t){var n=t.split(":"),i=n[0],r=n[1]; return i in y?(e[y[i]]=!0,e.hasModifiers=!0):(e.key=i,e.event=r||"keydown"),e},{ combo:e.split(":").shift()})}function a(e){return e.trim().split(" ").map(functi on(e){return s(e)})}var o={"U+0008":"backspace","U+0009":"tab","U+001B":"esc","U +0020":"space","U+007F":"del"},d={8:"backspace",9:"tab",13:"enter",27:"esc",33:" pageup",34:"pagedown",35:"end",36:"home",32:"space",37:"left",38:"up",39:"right" ,40:"down",46:"del",106:"*"},y={shift:"shiftKey",ctrl:"ctrlKey",alt:"altKey",met a:"metaKey"},u=/[a-z0-9*]/,h=/U\+/,c=/^arrow/,v=/^space(bar)?/,f=/^escape$/;Poly mer.IronA11yKeysBehavior={properties:{keyEventTarget:{type:Object,value:function (){return this}},stopKeyboardEventPropagation:{type:Boolean,value:!1},_boundKeyH andlers:{type:Array,value:function(){return[]}},_imperativeKeyBindings:{type:Obj ect,value:function(){return{}}}},observers:["_resetKeyEventListeners(keyEventTar get, _boundKeyHandlers)"],keyBindings:{},registered:function(){this._prepKeyBind ings()},attached:function(){this._listenKeyEventListeners()},detached:function() {this._unlistenKeyEventListeners()},addOwnKeyBinding:function(e,t){this._imperat iveKeyBindings[e]=t,this._prepKeyBindings(),this._resetKeyEventListeners()},remo veOwnKeyBindings:function(){this._imperativeKeyBindings={},this._prepKeyBindings (),this._resetKeyEventListeners()},keyboardEventMatchesKeys:function(e,t){for(va r n=a(t),i=0;i<n.length;++i)if(r(n[i],e))return!0;return!1},_collectKeyBindings: function(){var e=this.behaviors.map(function(e){return e.keyBindings});return e. indexOf(this.keyBindings)===-1&&e.push(this.keyBindings),e},_prepKeyBindings:fun ction(){this._keyBindings={},this._collectKeyBindings().forEach(function(e){for( var t in e)this._addKeyBinding(t,e[t])},this);for(var e in this._imperativeKeyBi ndings)this._addKeyBinding(e,this._imperativeKeyBindings[e]);for(var t in this._ keyBindings)this._keyBindings[t].sort(function(e,t){var n=e[0].hasModifiers,i=t[ 0].hasModifiers;return n===i?0:n?-1:1})},_addKeyBinding:function(e,t){a(e).forEa ch(function(e){this._keyBindings[e.event]=this._keyBindings[e.event]||[],this._k eyBindings[e.event].push([e,t])},this)},_resetKeyEventListeners:function(){this. _unlistenKeyEventListeners(),this.isAttached&&this._listenKeyEventListeners()},_ listenKeyEventListeners:function(){this.keyEventTarget&&Object.keys(this._keyBin dings).forEach(function(e){var t=this._keyBindings[e],n=this._onKeyBindingEvent. bind(this,t);this._boundKeyHandlers.push([this.keyEventTarget,e,n]),this.keyEven tTarget.addEventListener(e,n)},this)},_unlistenKeyEventListeners:function(){for( var e,t,n,i;this._boundKeyHandlers.length;)e=this._boundKeyHandlers.pop(),t=e[0] ,n=e[1],i=e[2],t.removeEventListener(n,i)},_onKeyBindingEvent:function(e,t){if(t his.stopKeyboardEventPropagation&&t.stopPropagation(),!t.defaultPrevented)for(va r n=0;n<e.length;n++){var i=e[n][0],s=e[n][1];if(r(i,t)&&(this._triggerKeyHandle r(i,s,t),t.defaultPrevented))return}},_triggerKeyHandler:function(e,t,n){var i=O bject.create(e);i.keyboardEvent=n;var r=new CustomEvent(e.event,{detail:i,cancel able:!0});this[t].call(this,r),r.defaultPrevented&&n.preventDefault()}}}()</scri pt> <script>Polymer.IronControlState={properties:{focused:{type:Boolean,value:!1 ,notify:!0,readOnly:!0,reflectToAttribute:!0},disabled:{type:Boolean,value:!1,no tify:!0,observer:"_disabledChanged",reflectToAttribute:!0},_oldTabIndex:{type:Nu mber},_boundFocusBlurHandler:{type:Function,value:function(){return this._focusB lurHandler.bind(this)}}},observers:["_changedControlState(focused, disabled)"],r eady:function(){this.addEventListener("focus",this._boundFocusBlurHandler,!0),th is.addEventListener("blur",this._boundFocusBlurHandler,!0)},_focusBlurHandler:fu nction(e){if(e.target===this)this._setFocused("focus"===e.type);else if(!this.sh adowRoot){var t=Polymer.dom(e).localTarget;this.isLightDescendant(t)||this.fire( e.type,{sourceEvent:e},{node:this,bubbles:e.bubbles,cancelable:e.cancelable})}}, _disabledChanged:function(e,t){this.setAttribute("aria-disabled",e?"true":"false "),this.style.pointerEvents=e?"none":"",e?(this._oldTabIndex=this.tabIndex,this. _setFocused(!1),this.tabIndex=-1,this.blur()):void 0!==this._oldTabIndex&&(this. tabIndex=this._oldTabIndex)},_changedControlState:function(){this._controlStateC hanged&&this._controlStateChanged()}}</script> <script>Polymer.IronButtonStateIm pl={properties:{pressed:{type:Boolean,readOnly:!0,value:!1,reflectToAttribute:!0 ,observer:"_pressedChanged"},toggles:{type:Boolean,value:!1,reflectToAttribute:! 0},active:{type:Boolean,value:!1,notify:!0,reflectToAttribute:!0},pointerDown:{t ype:Boolean,readOnly:!0,value:!1},receivedFocusFromKeyboard:{type:Boolean,readOn ly:!0},ariaActiveAttribute:{type:String,value:"aria-pressed",observer:"_ariaActi veAttributeChanged"}},listeners:{down:"_downHandler",up:"_upHandler",tap:"_tapHa ndler"},observers:["_detectKeyboardFocus(focused)","_activeChanged(active, ariaA ctiveAttribute)"],keyBindings:{"enter:keydown":"_asyncClick","space:keydown":"_s paceKeyDownHandler","space:keyup":"_spaceKeyUpHandler"},_mouseEventRe:/^mouse/,_ tapHandler:function(){this.toggles?this._userActivate(!this.active):this.active= !1},_detectKeyboardFocus:function(e){this._setReceivedFocusFromKeyboard(!this.po interDown&&e)},_userActivate:function(e){this.active!==e&&(this.active=e,this.fi re("change"))},_downHandler:function(e){this._setPointerDown(!0),this._setPresse d(!0),this._setReceivedFocusFromKeyboard(!1)},_upHandler:function(){this._setPoi nterDown(!1),this._setPressed(!1)},_spaceKeyDownHandler:function(e){var t=e.deta il.keyboardEvent,i=Polymer.dom(t).localTarget;this.isLightDescendant(i)||(t.prev entDefault(),t.stopImmediatePropagation(),this._setPressed(!0))},_spaceKeyUpHand ler:function(e){var t=e.detail.keyboardEvent,i=Polymer.dom(t).localTarget;this.i sLightDescendant(i)||(this.pressed&&this._asyncClick(),this._setPressed(!1))},_a syncClick:function(){this.async(function(){this.click()},1)},_pressedChanged:fun ction(e){this._changedButtonState()},_ariaActiveAttributeChanged:function(e,t){t &&t!=e&&this.hasAttribute(t)&&this.removeAttribute(t)},_activeChanged:function(e ,t){this.toggles?this.setAttribute(this.ariaActiveAttribute,e?"true":"false"):th is.removeAttribute(this.ariaActiveAttribute),this._changedButtonState()},_contro lStateChanged:function(){this.disabled?this._setPressed(!1):this._changedButtonS tate()},_changedButtonState:function(){this._buttonStateChanged&&this._buttonSta teChanged()}},Polymer.IronButtonState=[Polymer.IronA11yKeysBehavior,Polymer.Iron ButtonStateImpl]</script> <dom-module id="paper-ripple" assetpath="/res/imp/bowe r_components/paper-ripple/"> <template> <style>:host{display:block;position:abso lute;border-radius:inherit;overflow:hidden;top:0;left:0;right:0;bottom:0;pointer -events:none}:host([animating]){-webkit-transform:translate(0,0);transform:trans late3d(0,0,0)}#background,#waves,.wave,.wave-container{pointer-events:none;posit ion:absolute;top:0;left:0;width:100%;height:100%}#background,.wave{opacity:0}#wa ves,.wave{overflow:hidden}.wave,.wave-container{border-radius:50%}:host(.circle) #background,:host(.circle) #waves{border-radius:50%}:host(.circle) .wave-contai ner{overflow:hidden}</style> <div id="background"></div> <div id="waves"></div> </template> </dom-module> <script>!function(){function t(t){this.element=t,this. width=this.boundingRect.width,this.height=this.boundingRect.height,this.size=Mat h.max(this.width,this.height)}function i(t){this.element=t,this.color=window.get ComputedStyle(t).color,this.wave=document.createElement("div"),this.waveContaine r=document.createElement("div"),this.wave.style.backgroundColor=this.color,this. wave.classList.add("wave"),this.waveContainer.classList.add("wave-container"),Po lymer.dom(this.waveContainer).appendChild(this.wave),this.resetInteractionState( )}var e={distance:function(t,i,e,n){var s=t-e,o=i-n;return Math.sqrt(s*s+o*o)},n ow:window.performance&&window.performance.now?window.performance.now.bind(window .performance):Date.now};t.prototype={get boundingRect(){return this.element.getB oundingClientRect()},furthestCornerDistanceFrom:function(t,i){var n=e.distance(t ,i,0,0),s=e.distance(t,i,this.width,0),o=e.distance(t,i,0,this.height),a=e.dista nce(t,i,this.width,this.height);return Math.max(n,s,o,a)}},i.MAX_RADIUS=300,i.pr ototype={get recenters(){return this.element.recenters},get center(){return this .element.center},get mouseDownElapsed(){var t;return this.mouseDownStart?(t=e.no w()-this.mouseDownStart,this.mouseUpStart&&(t-=this.mouseUpElapsed),t):0},get mo useUpElapsed(){return this.mouseUpStart?e.now()-this.mouseUpStart:0},get mouseDo wnElapsedSeconds(){return this.mouseDownElapsed/1e3},get mouseUpElapsedSeconds() {return this.mouseUpElapsed/1e3},get mouseInteractionSeconds(){return this.mouse DownElapsedSeconds+this.mouseUpElapsedSeconds},get initialOpacity(){return this. element.initialOpacity},get opacityDecayVelocity(){return this.element.opacityDe cayVelocity},get radius(){var t=this.containerMetrics.width*this.containerMetric s.width,e=this.containerMetrics.height*this.containerMetrics.height,n=1.1*Math.m in(Math.sqrt(t+e),i.MAX_RADIUS)+5,s=1.1-.2*(n/i.MAX_RADIUS),o=this.mouseInteract ionSeconds/s,a=n*(1-Math.pow(80,-o));return Math.abs(a)},get opacity(){return th is.mouseUpStart?Math.max(0,this.initialOpacity-this.mouseUpElapsedSeconds*this.o pacityDecayVelocity):this.initialOpacity},get outerOpacity(){var t=.3*this.mouse UpElapsedSeconds,i=this.opacity;return Math.max(0,Math.min(t,i))},get isOpacityF ullyDecayed(){return this.opacity<.01&&this.radius>=Math.min(this.maxRadius,i.MA X_RADIUS)},get isRestingAtMaxRadius(){return this.opacity>=this.initialOpacity&& this.radius>=Math.min(this.maxRadius,i.MAX_RADIUS)},get isAnimationComplete(){re turn this.mouseUpStart?this.isOpacityFullyDecayed:this.isRestingAtMaxRadius},get translationFraction(){return Math.min(1,this.radius/this.containerMetrics.size* 2/Math.sqrt(2))},get xNow(){return this.xEnd?this.xStart+this.translationFractio n*(this.xEnd-this.xStart):this.xStart},get yNow(){return this.yEnd?this.yStart+t his.translationFraction*(this.yEnd-this.yStart):this.yStart},get isMouseDown(){r eturn this.mouseDownStart&&!this.mouseUpStart},resetInteractionState:function(){ this.maxRadius=0,this.mouseDownStart=0,this.mouseUpStart=0,this.xStart=0,this.yS tart=0,this.xEnd=0,this.yEnd=0,this.slideDistance=0,this.containerMetrics=new t( this.element)},draw:function(){var t,i,e;this.wave.style.opacity=this.opacity,t= this.radius/(this.containerMetrics.size/2),i=this.xNow-this.containerMetrics.wid th/2,e=this.yNow-this.containerMetrics.height/2,this.waveContainer.style.webkitT ransform="translate("+i+"px, "+e+"px)",this.waveContainer.style.transform="trans late3d("+i+"px, "+e+"px, 0)",this.wave.style.webkitTransform="scale("+t+","+t+") ",this.wave.style.transform="scale3d("+t+","+t+",1)"},downAction:function(t){var i=this.containerMetrics.width/2,n=this.containerMetrics.height/2;this.resetInte ractionState(),this.mouseDownStart=e.now(),this.center?(this.xStart=i,this.yStar t=n,this.slideDistance=e.distance(this.xStart,this.yStart,this.xEnd,this.yEnd)): (this.xStart=t?t.detail.x-this.containerMetrics.boundingRect.left:this.container Metrics.width/2,this.yStart=t?t.detail.y-this.containerMetrics.boundingRect.top: this.containerMetrics.height/2),this.recenters&&(this.xEnd=i,this.yEnd=n,this.sl ideDistance=e.distance(this.xStart,this.yStart,this.xEnd,this.yEnd)),this.maxRad ius=this.containerMetrics.furthestCornerDistanceFrom(this.xStart,this.yStart),th is.waveContainer.style.top=(this.containerMetrics.height-this.containerMetrics.s ize)/2+"px",this.waveContainer.style.left=(this.containerMetrics.width-this.cont ainerMetrics.size)/2+"px",this.waveContainer.style.width=this.containerMetrics.s ize+"px",this.waveContainer.style.height=this.containerMetrics.size+"px"},upActi on:function(t){this.isMouseDown&&(this.mouseUpStart=e.now())},remove:function(){ Polymer.dom(this.waveContainer.parentNode).removeChild(this.waveContainer)}},Pol ymer({is:"paper-ripple",behaviors:[Polymer.IronA11yKeysBehavior],properties:{ini tialOpacity:{type:Number,value:.25},opacityDecayVelocity:{type:Number,value:.8}, recenters:{type:Boolean,value:!1},center:{type:Boolean,value:!1},ripples:{type:A rray,value:function(){return[]}},animating:{type:Boolean,readOnly:!0,reflectToAt tribute:!0,value:!1},holdDown:{type:Boolean,value:!1,observer:"_holdDownChanged" },noink:{type:Boolean,value:!1},_animating:{type:Boolean},_boundAnimate:{type:Fu nction,value:function(){return this.animate.bind(this)}}},get target(){return th is.keyEventTarget},keyBindings:{"enter:keydown":"_onEnterKeydown","space:keydown ":"_onSpaceKeydown","space:keyup":"_onSpaceKeyup"},attached:function(){11==this. parentNode.nodeType?this.keyEventTarget=Polymer.dom(this).getOwnerRoot().host:th is.keyEventTarget=this.parentNode;var t=this.keyEventTarget;this.listen(t,"up"," uiUpAction"),this.listen(t,"down","uiDownAction")},detached:function(){this.unli sten(this.keyEventTarget,"up","uiUpAction"),this.unlisten(this.keyEventTarget,"d own","uiDownAction"),this.keyEventTarget=null},get shouldKeepAnimating(){for(var t=0;t<this.ripples.length;++t)if(!this.ripples[t].isAnimationComplete)return!0; return!1},simulatedRipple:function(){this.downAction(null),this.async(function() {this.upAction()},1)},uiDownAction:function(t){this.noink||this.downAction(t)},d ownAction:function(t){if(!(this.holdDown&&this.ripples.length>0)){var i=this.add Ripple();i.downAction(t),this._animating||(this._animating=!0,this.animate())}}, uiUpAction:function(t){this.noink||this.upAction(t)},upAction:function(t){this.h oldDown||(this.ripples.forEach(function(i){i.upAction(t)}),this._animating=!0,th is.animate())},onAnimationComplete:function(){this._animating=!1,this.$.backgrou nd.style.backgroundColor=null,this.fire("transitionend")},addRipple:function(){v ar t=new i(this);return Polymer.dom(this.$.waves).appendChild(t.waveContainer),t his.$.background.style.backgroundColor=t.color,this.ripples.push(t),this._setAni mating(!0),t},removeRipple:function(t){var i=this.ripples.indexOf(t);i<0||(this. ripples.splice(i,1),t.remove(),this.ripples.length||this._setAnimating(!1))},ani mate:function(){if(this._animating){var t,i;for(t=0;t<this.ripples.length;++t)i= this.ripples[t],i.draw(),this.$.background.style.opacity=i.outerOpacity,i.isOpac ityFullyDecayed&&!i.isRestingAtMaxRadius&&this.removeRipple(i);this.shouldKeepAn imating||0!==this.ripples.length?window.requestAnimationFrame(this._boundAnimate ):this.onAnimationComplete()}},_onEnterKeydown:function(){this.uiDownAction(),th is.async(this.uiUpAction,1)},_onSpaceKeydown:function(){this.uiDownAction()},_on SpaceKeyup:function(){this.uiUpAction()},_holdDownChanged:function(t,i){void 0!= =i&&(t?this.downAction():this.upAction())}})}()</script> <script>Polymer.PaperRi ppleBehavior={properties:{noink:{type:Boolean,observer:"_noinkChanged"},_rippleC ontainer:{type:Object}},_buttonStateChanged:function(){this.focused&&this.ensure Ripple()},_downHandler:function(e){Polymer.IronButtonStateImpl._downHandler.call (this,e),this.pressed&&this.ensureRipple(e)},ensureRipple:function(e){if(!this.h asRipple()){this._ripple=this._createRipple(),this._ripple.noink=this.noink;var i=this._rippleContainer||this.root;if(i&&Polymer.dom(i).appendChild(this._ripple ),e){var n=Polymer.dom(this._rippleContainer||this),t=Polymer.dom(e).rootTarget; n.deepContains(t)&&this._ripple.uiDownAction(e)}}},getRipple:function(){return t his.ensureRipple(),this._ripple},hasRipple:function(){return Boolean(this._rippl e)},_createRipple:function(){return document.createElement("paper-ripple")},_noi nkChanged:function(e){this.hasRipple()&&(this._ripple.noink=e)}}</script> <scrip t>Polymer.PaperButtonBehaviorImpl={properties:{elevation:{type:Number,reflectToA ttribute:!0,readOnly:!0}},observers:["_calculateElevation(focused, disabled, act ive, pressed, receivedFocusFromKeyboard)","_computeKeyboardClass(receivedFocusFr omKeyboard)"],hostAttributes:{role:"button",tabindex:"0",animated:!0},_calculate Elevation:function(){var e=1;this.disabled?e=0:this.active||this.pressed?e=4:thi s.receivedFocusFromKeyboard&&(e=3),this._setElevation(e)},_computeKeyboardClass: function(e){this.toggleClass("keyboard-focus",e)},_spaceKeyDownHandler:function( e){Polymer.IronButtonStateImpl._spaceKeyDownHandler.call(this,e),this.hasRipple( )&&this.getRipple().ripples.length<1&&this._ripple.uiDownAction()},_spaceKeyUpHa ndler:function(e){Polymer.IronButtonStateImpl._spaceKeyUpHandler.call(this,e),th is.hasRipple()&&this._ripple.uiUpAction()}},Polymer.PaperButtonBehavior=[Polymer .IronButtonState,Polymer.IronControlState,Polymer.PaperRippleBehavior,Polymer.Pa perButtonBehaviorImpl]</script> <style is="custom-style">:root{--shadow-transiti on:{transition:box-shadow .28s cubic-bezier(.4,0,.2,1)};--shadow-none:{box-shado w:none};--shadow-elevation-2dp:{box-shadow:0 2px 2px 0 rgba(0,0,0,.14),0 1px 5px 0 rgba(0,0,0,.12),0 3px 1px -2px rgba(0,0,0,.2)};--shadow-elevation-3dp:{box-sh adow:0 3px 4px 0 rgba(0,0,0,.14),0 1px 8px 0 rgba(0,0,0,.12),0 3px 3px -2px rgba (0,0,0,.4)};--shadow-elevation-4dp:{box-shadow:0 4px 5px 0 rgba(0,0,0,.14),0 1px 10px 0 rgba(0,0,0,.12),0 2px 4px -1px rgba(0,0,0,.4)};--shadow-elevation-6dp:{b ox-shadow:0 6px 10px 0 rgba(0,0,0,.14),0 1px 18px 0 rgba(0,0,0,.12),0 3px 5px -1 px rgba(0,0,0,.4)};--shadow-elevation-8dp:{box-shadow:0 8px 10px 1px rgba(0,0,0, .14),0 3px 14px 2px rgba(0,0,0,.12),0 5px 5px -3px rgba(0,0,0,.4)};--shadow-elev ation-12dp:{box-shadow:0 12px 16px 1px rgba(0,0,0,.14),0 4px 22px 3px rgba(0,0,0 ,.12),0 6px 7px -4px rgba(0,0,0,.4)};--shadow-elevation-16dp:{box-shadow:0 16px 24px 2px rgba(0,0,0,.14),0 6px 30px 5px rgba(0,0,0,.12),0 8px 10px -5px rgba(0,0 ,0,.4)};--shadow-elevation-24dp:{box-shadow:0 24px 38px 3px rgba(0,0,0,.14),0 9p x 46px 8px rgba(0,0,0,.12),0 11px 15px -7px rgba(0,0,0,.4)};}</style> <dom-modul e id="paper-material-shared-styles" assetpath="/res/imp/bower_components/paper-m aterial/"> <template> <style>:host{display:block;position:relative}:host([elevat ion="1"]){@apply(--shadow-elevation-2dp)}:host([elevation="2"]){@apply(--shadow- elevation-4dp)}:host([elevation="3"]){@apply(--shadow-elevation-6dp)}:host([elev ation="4"]){@apply(--shadow-elevation-8dp)}:host([elevation="5"]){@apply(--shado w-elevation-16dp)}</style> </template> </dom-module> <style is="custom-style">:r oot{--google-red-100:#f4c7c3;--google-red-300:#e67c73;--google-red-500:#db4437;- -google-red-700:#c53929;--google-blue-100:#c6dafc;--google-blue-300:#7baaf7;--go ogle-blue-500:#4285f4;--google-blue-700:#3367d6;--google-green-100:#b7e1cd;--goo gle-green-300:#57bb8a;--google-green-500:#0f9d58;--google-green-700:#0b8043;--go ogle-yellow-100:#fce8b2;--google-yellow-300:#f7cb4d;--google-yellow-500:#f4b400; --google-yellow-700:#f09300;--google-grey-100:#f5f5f5;--google-grey-300:#e0e0e0; --google-grey-500:#9e9e9e;--google-grey-700:#616161;--paper-red-50:#ffebee;--pap er-red-100:#ffcdd2;--paper-red-200:#ef9a9a;--paper-red-300:#e57373;--paper-red-4 00:#ef5350;--paper-red-500:#f44336;--paper-red-600:#e53935;--paper-red-700:#d32f 2f;--paper-red-800:#c62828;--paper-red-900:#b71c1c;--paper-red-a100:#ff8a80;--pa per-red-a200:#ff5252;--paper-red-a400:#ff1744;--paper-red-a700:#d50000;--paper-p ink-50:#fce4ec;--paper-pink-100:#f8bbd0;--paper-pink-200:#f48fb1;--paper-pink-30 0:#f06292;--paper-pink-400:#ec407a;--paper-pink-500:#e91e63;--paper-pink-600:#d8 1b60;--paper-pink-700:#c2185b;--paper-pink-800:#ad1457;--paper-pink-900:#880e4f; --paper-pink-a100:#ff80ab;--paper-pink-a200:#ff4081;--paper-pink-a400:#f50057;-- paper-pink-a700:#c51162;--paper-purple-50:#f3e5f5;--paper-purple-100:#e1bee7;--p aper-purple-200:#ce93d8;--paper-purple-300:#ba68c8;--paper-purple-400:#ab47bc;-- paper-purple-500:#9c27b0;--paper-purple-600:#8e24aa;--paper-purple-700:#7b1fa2;- -paper-purple-800:#6a1b9a;--paper-purple-900:#4a148c;--paper-purple-a100:#ea80fc ;--paper-purple-a200:#e040fb;--paper-purple-a400:#d500f9;--paper-purple-a700:#aa 00ff;--paper-deep-purple-50:#ede7f6;--paper-deep-purple-100:#d1c4e9;--paper-deep -purple-200:#b39ddb;--paper-deep-purple-300:#9575cd;--paper-deep-purple-400:#7e5 7c2;--paper-deep-purple-500:#673ab7;--paper-deep-purple-600:#5e35b1;--paper-deep -purple-700:#512da8;--paper-deep-purple-800:#4527a0;--paper-deep-purple-900:#311 b92;--paper-deep-purple-a100:#b388ff;--paper-deep-purple-a200:#7c4dff;--paper-de ep-purple-a400:#651fff;--paper-deep-purple-a700:#6200ea;--paper-indigo-50:#e8eaf 6;--paper-indigo-100:#c5cae9;--paper-indigo-200:#9fa8da;--paper-indigo-300:#7986 cb;--paper-indigo-400:#5c6bc0;--paper-indigo-500:#3f51b5;--paper-indigo-600:#394 9ab;--paper-indigo-700:#303f9f;--paper-indigo-800:#283593;--paper-indigo-900:#1a 237e;--paper-indigo-a100:#8c9eff;--paper-indigo-a200:#536dfe;--paper-indigo-a400 :#3d5afe;--paper-indigo-a700:#304ffe;--paper-blue-50:#e3f2fd;--paper-blue-100:#b bdefb;--paper-blue-200:#90caf9;--paper-blue-300:#64b5f6;--paper-blue-400:#42a5f5 ;--paper-blue-500:#2196f3;--paper-blue-600:#1e88e5;--paper-blue-700:#1976d2;--pa per-blue-800:#1565c0;--paper-blue-900:#0d47a1;--paper-blue-a100:#82b1ff;--paper- blue-a200:#448aff;--paper-blue-a400:#2979ff;--paper-blue-a700:#2962ff;--paper-li ght-blue-50:#e1f5fe;--paper-light-blue-100:#b3e5fc;--paper-light-blue-200:#81d4f a;--paper-light-blue-300:#4fc3f7;--paper-light-blue-400:#29b6f6;--paper-light-bl ue-500:#03a9f4;--paper-light-blue-600:#039be5;--paper-light-blue-700:#0288d1;--p aper-light-blue-800:#0277bd;--paper-light-blue-900:#01579b;--paper-light-blue-a1 00:#80d8ff;--paper-light-blue-a200:#40c4ff;--paper-light-blue-a400:#00b0ff;--pap er-light-blue-a700:#0091ea;--paper-cyan-50:#e0f7fa;--paper-cyan-100:#b2ebf2;--pa per-cyan-200:#80deea;--paper-cyan-300:#4dd0e1;--paper-cyan-400:#26c6da;--paper-c yan-500:#00bcd4;--paper-cyan-600:#00acc1;--paper-cyan-700:#0097a7;--paper-cyan-8 00:#00838f;--paper-cyan-900:#006064;--paper-cyan-a100:#84ffff;--paper-cyan-a200: #18ffff;--paper-cyan-a400:#00e5ff;--paper-cyan-a700:#00b8d4;--paper-teal-50:#e0f 2f1;--paper-teal-100:#b2dfdb;--paper-teal-200:#80cbc4;--paper-teal-300:#4db6ac;- -paper-teal-400:#26a69a;--paper-teal-500:#009688;--paper-teal-600:#00897b;--pape r-teal-700:#00796b;--paper-teal-800:#00695c;--paper-teal-900:#004d40;--paper-tea l-a100:#a7ffeb;--paper-teal-a200:#64ffda;--paper-teal-a400:#1de9b6;--paper-teal- a700:#00bfa5;--paper-green-50:#e8f5e9;--paper-green-100:#c8e6c9;--paper-green-20 0:#a5d6a7;--paper-green-300:#81c784;--paper-green-400:#66bb6a;--paper-green-500: #4caf50;--paper-green-600:#43a047;--paper-green-700:#388e3c;--paper-green-800:#2 e7d32;--paper-green-900:#1b5e20;--paper-green-a100:#b9f6ca;--paper-green-a200:#6 9f0ae;--paper-green-a400:#00e676;--paper-green-a700:#00c853;--paper-light-green- 50:#f1f8e9;--paper-light-green-100:#dcedc8;--paper-light-green-200:#c5e1a5;--pap er-light-green-300:#aed581;--paper-light-green-400:#9ccc65;--paper-light-green-5 00:#8bc34a;--paper-light-green-600:#7cb342;--paper-light-green-700:#689f38;--pap er-light-green-800:#558b2f;--paper-light-green-900:#33691e;--paper-light-green-a 100:#ccff90;--paper-light-green-a200:#b2ff59;--paper-light-green-a400:#76ff03;-- paper-light-green-a700:#64dd17;--paper-lime-50:#f9fbe7;--paper-lime-100:#f0f4c3; --paper-lime-200:#e6ee9c;--paper-lime-300:#dce775;--paper-lime-400:#d4e157;--pap er-lime-500:#cddc39;--paper-lime-600:#c0ca33;--paper-lime-700:#afb42b;--paper-li me-800:#9e9d24;--paper-lime-900:#827717;--paper-lime-a100:#f4ff81;--paper-lime-a 200:#eeff41;--paper-lime-a400:#c6ff00;--paper-lime-a700:#aeea00;--paper-yellow-5 0:#fffde7;--paper-yellow-100:#fff9c4;--paper-yellow-200:#fff59d;--paper-yellow-3 00:#fff176;--paper-yellow-400:#ffee58;--paper-yellow-500:#ffeb3b;--paper-yellow- 600:#fdd835;--paper-yellow-700:#fbc02d;--paper-yellow-800:#f9a825;--paper-yellow -900:#f57f17;--paper-yellow-a100:#ffff8d;--paper-yellow-a200:#ffff00;--paper-yel low-a400:#ffea00;--paper-yellow-a700:#ffd600;--paper-amber-50:#fff8e1;--paper-am ber-100:#ffecb3;--paper-amber-200:#ffe082;--paper-amber-300:#ffd54f;--paper-ambe r-400:#ffca28;--paper-amber-500:#ffc107;--paper-amber-600:#ffb300;--paper-amber- 700:#ffa000;--paper-amber-800:#ff8f00;--paper-amber-900:#ff6f00;--paper-amber-a1 00:#ffe57f;--paper-amber-a200:#ffd740;--paper-amber-a400:#ffc400;--paper-amber-a 700:#ffab00;--paper-orange-50:#fff3e0;--paper-orange-100:#ffe0b2;--paper-orange- 200:#ffcc80;--paper-orange-300:#ffb74d;--paper-orange-400:#ffa726;--paper-orange -500:#ff9800;--paper-orange-600:#fb8c00;--paper-orange-700:#f57c00;--paper-orang e-800:#ef6c00;--paper-orange-900:#e65100;--paper-orange-a100:#ffd180;--paper-ora nge-a200:#ffab40;--paper-orange-a400:#ff9100;--paper-orange-a700:#ff6500;--paper -deep-orange-50:#fbe9e7;--paper-deep-orange-100:#ffccbc;--paper-deep-orange-200: #ffab91;--paper-deep-orange-300:#ff8a65;--paper-deep-orange-400:#ff7043;--paper- deep-orange-500:#ff5722;--paper-deep-orange-600:#f4511e;--paper-deep-orange-700: #e64a19;--paper-deep-orange-800:#d84315;--paper-deep-orange-900:#bf360c;--paper- deep-orange-a100:#ff9e80;--paper-deep-orange-a200:#ff6e40;--paper-deep-orange-a4 00:#ff3d00;--paper-deep-orange-a700:#dd2c00;--paper-brown-50:#efebe9;--paper-bro wn-100:#d7ccc8;--paper-brown-200:#bcaaa4;--paper-brown-300:#a1887f;--paper-brown -400:#8d6e63;--paper-brown-500:#795548;--paper-brown-600:#6d4c41;--paper-brown-7 00:#5d4037;--paper-brown-800:#4e342e;--paper-brown-900:#3e2723;--paper-grey-50:# fafafa;--paper-grey-100:#f5f5f5;--paper-grey-200:#eeeeee;--paper-grey-300:#e0e0e 0;--paper-grey-400:#bdbdbd;--paper-grey-500:#9e9e9e;--paper-grey-600:#757575;--p aper-grey-700:#616161;--paper-grey-800:#424242;--paper-grey-900:#212121;--paper- blue-grey-50:#eceff1;--paper-blue-grey-100:#cfd8dc;--paper-blue-grey-200:#b0bec5 ;--paper-blue-grey-300:#90a4ae;--paper-blue-grey-400:#78909c;--paper-blue-grey-5 00:#607d8b;--paper-blue-grey-600:#546e7a;--paper-blue-grey-700:#455a64;--paper-b lue-grey-800:#37474f;--paper-blue-grey-900:#263238;--dark-divider-opacity:0.12;- -dark-disabled-opacity:0.38;--dark-secondary-opacity:0.54;--dark-primary-opacity :0.87;--light-divider-opacity:0.12;--light-disabled-opacity:0.3;--light-secondar y-opacity:0.7;--light-primary-opacity:1.0}</style> <style is="custom-style">:roo t{--primary-text-color:var(--light-theme-text-color);--primary-background-color: var(--light-theme-background-color);--secondary-text-color:var(--light-theme-sec ondary-color);--disabled-text-color:var(--light-theme-disabled-color);--divider- color:var(--light-theme-divider-color);--error-color:var(--paper-deep-orange-a70 0);--primary-color:var(--paper-indigo-500);--light-primary-color:var(--paper-ind igo-100);--dark-primary-color:var(--paper-indigo-700);--accent-color:var(--paper -pink-a200);--light-accent-color:var(--paper-pink-a100);--dark-accent-color:var( --paper-pink-a400);--light-theme-background-color:#ffffff;--light-theme-base-col or:#000000;--light-theme-text-color:var(--paper-grey-900);--light-theme-secondar y-color:#737373;--light-theme-disabled-color:#9b9b9b;--light-theme-divider-color :#dbdbdb;--dark-theme-background-color:var(--paper-grey-900);--dark-theme-base-c olor:#ffffff;--dark-theme-text-color:#ffffff;--dark-theme-secondary-color:#bcbcb c;--dark-theme-disabled-color:#646464;--dark-theme-divider-color:#3c3c3c;--text- primary-color:var(--dark-theme-text-color);--default-primary-color:var(--primary -color)}</style> <dom-module id="paper-fab" assetpath="/res/imp/bower_components /paper-fab/"> <template strip-whitespace=""> <style include="paper-material-shar ed-styles">:host{@apply(--layout-vertical);@apply(--layout-center-center);backgr ound:var(--paper-fab-background,--accent-color);border-radius:50%;box-sizing:bor der-box;color:var(--text-primary-color);cursor:pointer;height:56px;min-width:0;o utline:0;padding:16px;position:relative;-moz-user-select:none;-ms-user-select:no ne;-webkit-user-select:none;user-select:none;width:56px;z-index:0;-webkit-tap-hi ghlight-color:transparent;-webkit-tap-highlight-color:transparent;@apply(--paper -fab)}[hidden]{display:none!important}:host([mini]){width:40px;height:40px;paddi ng:8px;@apply(--paper-fab-mini)}:host([disabled]){color:var(--paper-fab-disabled -text,--paper-grey-500);background:var(--paper-fab-disabled-background,--paper-g rey-300);@apply(--paper-fab-disabled)}iron-icon{@apply(--paper-fab-iron-icon)}sp an{width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-ali gn:center;@apply(--paper-fab-label)}:host(.keyboard-focus){background:var(--pape r-fab-keyboard-focus-background,--paper-pink-900)}</style> <iron-icon id="icon" hidden$="{{!_computeIsIconFab(icon, src)}}" src="[[src]]" icon="[[icon]]"></iron -icon> <span hidden$="{{_computeIsIconFab(icon, src)}}">{{label}}</span> </templ ate> <script>Polymer({is:"paper-fab",behaviors:[Polymer.PaperButtonBehavior],pro perties:{src:{type:String,value:""},icon:{type:String,value:""},mini:{type:Boole an,value:!1,reflectToAttribute:!0},label:{type:String,observer:"_labelChanged"}} ,_labelChanged:function(){this.setAttribute("aria-label",this.label)},_computeIs IconFab:function(e,t){return e.length>0||t.length>0}})</script> </dom-module> <s cript>Polymer.PaperInkyFocusBehaviorImpl={observers:["_focusedChanged(receivedFo cusFromKeyboard)"],_focusedChanged:function(e){e&&this.ensureRipple(),this.hasRi pple()&&(this._ripple.holdDown=e)},_createRipple:function(){var e=Polymer.PaperR ippleBehavior._createRipple();return e.id="ink",e.setAttribute("center",""),e.cl assList.add("circle"),e}},Polymer.PaperInkyFocusBehavior=[Polymer.IronButtonStat e,Polymer.IronControlState,Polymer.PaperRippleBehavior,Polymer.PaperInkyFocusBeh aviorImpl]</script> <dom-module id="paper-icon-button" assetpath="/res/imp/bower _components/paper-icon-button/"> <template strip-whitespace=""> <style>:host{dis play:inline-block;position:relative;padding:8px;outline:0;-webkit-user-select:no ne;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:pointer;z- index:0;line-height:1;width:40px;height:40px;-webkit-tap-highlight-color:transpa rent;-webkit-tap-highlight-color:transparent;box-sizing:border-box!important;@ap ply(--paper-icon-button)}:host #ink{color:var(--paper-icon-button-ink-color,--pr imary-text-color);opacity:.6}:host([disabled]){color:var(--paper-icon-button-dis abled-text,--disabled-text-color);pointer-events:none;cursor:auto;@apply(--paper -icon-button-disabled)}:host(:hover){@apply(--paper-icon-button-hover)}iron-icon {--iron-icon-width:100%;--iron-icon-height:100%}</style> <iron-icon id="icon" sr c="[[src]]" icon="[[icon]]" alt$="[[alt]]"></iron-icon> </template> <script>Poly mer({is:"paper-icon-button",hostAttributes:{role:"button",tabindex:"0"},behavior s:[Polymer.PaperInkyFocusBehavior],properties:{src:{type:String},icon:{type:Stri ng},alt:{type:String,observer:"_altChanged"}},_altChanged:function(t,e){var r=th is.getAttribute("aria-label");r&&e!=r||this.setAttribute("aria-label",t)}})</scr ipt> </dom-module> <script>Polymer.PaperItemBehaviorImpl={hostAttributes:{role:" option",tabindex:"0"}},Polymer.PaperItemBehavior=[Polymer.IronButtonState,Polyme r.IronControlState,Polymer.PaperItemBehaviorImpl]</script> <link rel="stylesheet " href="https://fonts.googleapis.com/css?family=Roboto:400,300,300italic,400ital ic,500,500italic,700,700italic"> <link rel="stylesheet" href="https://fonts.goog leapis.com/css?family=Roboto+Mono:400,700"> <style is="custom-style">:root{--pap er-font-common-base:{font-family:Roboto,Noto,sans-serif;-webkit-font-smoothing:a ntialiased};--paper-font-common-code:{font-family:'Roboto Mono',Consolas,Menlo,m onospace;-webkit-font-smoothing:antialiased};--paper-font-common-expensive-kerni ng:{text-rendering:optimizeLegibility};--paper-font-common-nowrap:{white-space:n owrap;overflow:hidden;text-overflow:ellipsis};--paper-font-display4:{@apply(--pa per-font-common-base);@apply(--paper-font-common-nowrap);font-size:112px;font-we ight:300;letter-spacing:-.044em;line-height:120px};--paper-font-display3:{@apply (--paper-font-common-base);@apply(--paper-font-common-nowrap);font-size:56px;fon t-weight:400;letter-spacing:-.026em;line-height:60px};--paper-font-display2:{@ap ply(--paper-font-common-base);font-size:45px;font-weight:400;letter-spacing:-.01 8em;line-height:48px};--paper-font-display1:{@apply(--paper-font-common-base);fo nt-size:34px;font-weight:400;letter-spacing:-.01em;line-height:40px};--paper-fon t-headline:{@apply(--paper-font-common-base);font-size:24px;font-weight:400;lett er-spacing:-.012em;line-height:32px};--paper-font-title:{@apply(--paper-font-com mon-base);@apply(--paper-font-common-nowrap);font-size:20px;font-weight:500;line -height:28px};--paper-font-subhead:{@apply(--paper-font-common-base);font-size:1 6px;font-weight:400;line-height:24px};--paper-font-body2:{@apply(--paper-font-co mmon-base);font-size:14px;font-weight:500;line-height:24px};--paper-font-body1:{ @apply(--paper-font-common-base);font-size:14px;font-weight:400;line-height:20px };--paper-font-caption:{@apply(--paper-font-common-base);@apply(--paper-font-com mon-nowrap);font-size:12px;font-weight:400;letter-spacing:0.011em;line-height:20 px};--paper-font-menu:{@apply(--paper-font-common-base);@apply(--paper-font-comm on-nowrap);font-size:13px;font-weight:500;line-height:24px};--paper-font-button: {@apply(--paper-font-common-base);@apply(--paper-font-common-nowrap);font-size:1 4px;font-weight:500;letter-spacing:0.018em;line-height:24px;text-transform:upper case};--paper-font-code2:{@apply(--paper-font-common-code);font-size:14px;font-w eight:700;line-height:20px};--paper-font-code1:{@apply(--paper-font-common-code) ;font-size:14px;font-weight:500;line-height:20px};}</style> <dom-module id="pape r-item-shared-styles" assetpath="/res/imp/bower_components/paper-item/"> <templa te> <style>.paper-item,:host{display:block;position:relative;min-height:var(--pa per-item-min-height,48px);padding:0 16px}.paper-item{@apply(--paper-font-subhead );border:none;outline:0;background:#fff;width:100%;text-align:left}.paper-item[h idden],:host([hidden]){display:none!important}.paper-item.iron-selected,:host(.i ron-selected){font-weight:var(--paper-item-selected-weight,bold);@apply(--paper- item-selected)}.paper-item[disabled],:host([disabled]){color:var(--paper-item-di sabled-color,--disabled-text-color);@apply(--paper-item-disabled)}.paper-item:fo cus,:host(:focus){position:relative;outline:0;@apply(--paper-item-focused)}.pape r-item:focus:before,:host(:focus):before{@apply(--layout-fit);background:current Color;content:'';opacity:var(--dark-divider-opacity);pointer-events:none;@apply( --paper-item-focused-before)}</style> </template> </dom-module> <dom-module id=" paper-item" assetpath="/res/imp/bower_components/paper-item/"> <template> <style include="paper-item-shared-styles"></style> <style>:host{@apply(--layout-horizo ntal);@apply(--layout-center);@apply(--paper-font-subhead);@apply(--paper-item)} </style> <content></content> </template> <script>Polymer({is:"paper-item",behavi ors:[Polymer.PaperItemBehavior]})</script> </dom-module> <script>Polymer.IronSel ection=function(e){this.selection=[],this.selectCallback=e},Polymer.IronSelectio n.prototype={get:function(){return this.multi?this.selection.slice():this.select ion[0]},clear:function(e){this.selection.slice().forEach(function(t){(!e||e.inde xOf(t)<0)&&this.setItemSelected(t,!1)},this)},isSelected:function(e){return this .selection.indexOf(e)>=0},setItemSelected:function(e,t){if(null!=e&&t!==this.isS elected(e)){if(t)this.selection.push(e);else{var i=this.selection.indexOf(e);i>= 0&&this.selection.splice(i,1)}this.selectCallback&&this.selectCallback(e,t)}},se lect:function(e){this.multi?this.toggle(e):this.get()!==e&&(this.setItemSelected (this.get(),!1),this.setItemSelected(e,!0))},toggle:function(e){this.setItemSele cted(e,!this.isSelected(e))}}</script> <script>Polymer.IronSelectableBehavior={p roperties:{attrForSelected:{type:String,value:null},selected:{type:String,notify :!0},selectedItem:{type:Object,readOnly:!0,notify:!0},activateEvent:{type:String ,value:"tap",observer:"_activateEventChanged"},selectable:String,selectedClass:{ type:String,value:"iron-selected"},selectedAttribute:{type:String,value:null},fa llbackSelection:{type:String,value:null},items:{type:Array,readOnly:!0,notify:!0 ,value:function(){return[]}},_excludedLocalNames:{type:Object,value:function(){r eturn{template:1}}}},observers:["_updateAttrForSelected(attrForSelected)","_upda teSelected(selected)","_checkFallback(fallbackSelection)"],created:function(){th is._bindFilterItem=this._filterItem.bind(this),this._selection=new Polymer.IronS election(this._applySelection.bind(this))},attached:function(){this._observer=th is._observeItems(this),this._updateItems(),this._shouldUpdateSelection||this._up dateSelected(),this._addListener(this.activateEvent)},detached:function(){this._ observer&&Polymer.dom(this).unobserveNodes(this._observer),this._removeListener( this.activateEvent)},indexOf:function(e){return this.items.indexOf(e)},select:fu nction(e){this.selected=e},selectPrevious:function(){var e=this.items.length,t=( Number(this._valueToIndex(this.selected))-1+e)%e;this.selected=this._indexToValu e(t)},selectNext:function(){var e=(Number(this._valueToIndex(this.selected))+1)% this.items.length;this.selected=this._indexToValue(e)},selectIndex:function(e){t his.select(this._indexToValue(e))},forceSynchronousItemUpdate:function(){this._u pdateItems()},get _shouldUpdateSelection(){return null!=this.selected},_checkFal lback:function(){this._shouldUpdateSelection&&this._updateSelected()},_addListen er:function(e){this.listen(this,e,"_activateHandler")},_removeListener:function( e){this.unlisten(this,e,"_activateHandler")},_activateEventChanged:function(e,t) {this._removeListener(t),this._addListener(e)},_updateItems:function(){var e=Pol ymer.dom(this).queryDistributedElements(this.selectable||"*");e=Array.prototype. filter.call(e,this._bindFilterItem),this._setItems(e)},_updateAttrForSelected:fu nction(){this._shouldUpdateSelection&&(this.selected=this._indexToValue(this.ind exOf(this.selectedItem)))},_updateSelected:function(){this._selectSelected(this. selected)},_selectSelected:function(e){this._selection.select(this._valueToItem( this.selected)),this.fallbackSelection&&this.items.length&&void 0===this._select ion.get()&&(this.selected=this.fallbackSelection)},_filterItem:function(e){retur n!this._excludedLocalNames[e.localName]},_valueToItem:function(e){return null==e ?null:this.items[this._valueToIndex(e)]},_valueToIndex:function(e){if(!this.attr ForSelected)return Number(e);for(var t,i=0;t=this.items[i];i++)if(this._valueFor Item(t)==e)return i},_indexToValue:function(e){if(!this.attrForSelected)return e ;var t=this.items[e];return t?this._valueForItem(t):void 0},_valueForItem:functi on(e){var t=e[Polymer.CaseMap.dashToCamelCase(this.attrForSelected)];return void 0!=t?t:e.getAttribute(this.attrForSelected)},_applySelection:function(e,t){this .selectedClass&&this.toggleClass(this.selectedClass,t,e),this.selectedAttribute& &this.toggleAttribute(this.selectedAttribute,t,e),this._selectionChange(),this.f ire("iron-"+(t?"select":"deselect"),{item:e})},_selectionChange:function(){this. _setSelectedItem(this._selection.get())},_observeItems:function(e){return Polyme r.dom(e).observeNodes(function(e){this._updateItems(),this._shouldUpdateSelectio n&&this._updateSelected(),this.fire("iron-items-changed",e,{bubbles:!1,cancelabl e:!1})})},_activateHandler:function(e){for(var t=e.target,i=this.items;t&&t!=thi s;){var s=i.indexOf(t);if(s>=0){var n=this._indexToValue(s);return void this._it emActivate(n,t)}t=t.parentNode}},_itemActivate:function(e,t){this.fire("iron-act ivate",{selected:e,item:t},{cancelable:!0}).defaultPrevented||this.select(e)}}</ script> <script>Polymer.IronMultiSelectableBehaviorImpl={properties:{multi:{type :Boolean,value:!1,observer:"multiChanged"},selectedValues:{type:Array,notify:!0} ,selectedItems:{type:Array,readOnly:!0,notify:!0}},observers:["_updateSelected(s electedValues.splices)"],select:function(e){this.multi?this.selectedValues?this. _toggleSelected(e):this.selectedValues=[e]:this.selected=e},multiChanged:functio n(e){this._selection.multi=e},get _shouldUpdateSelection(){return null!=this.sel ected||null!=this.selectedValues&&this.selectedValues.length},_updateAttrForSele cted:function(){this.multi?this._shouldUpdateSelection&&(this.selectedValues=thi s.selectedItems.map(function(e){return this._indexToValue(this.indexOf(e))},this ).filter(function(e){return null!=e},this)):Polymer.IronSelectableBehavior._upda teAttrForSelected.apply(this)},_updateSelected:function(){this.multi?this._selec tMulti(this.selectedValues):this._selectSelected(this.selected)},_selectMulti:fu nction(e){if(e){var t=this._valuesToItems(e);this._selection.clear(t);for(var l= 0;l<t.length;l++)this._selection.setItemSelected(t[l],!0);if(this.fallbackSelect ion&&this.items.length&&!this._selection.get().length){var s=this._valueToItem(t his.fallbackSelection);s&&(this.selectedValues=[this.fallbackSelection])}}else t his._selection.clear()},_selectionChange:function(){var e=this._selection.get(); this.multi?this._setSelectedItems(e):(this._setSelectedItems([e]),this._setSelec tedItem(e))},_toggleSelected:function(e){var t=this.selectedValues.indexOf(e),l= t<0;l?this.push("selectedValues",e):this.splice("selectedValues",t,1)},_valuesTo Items:function(e){return null==e?null:e.map(function(e){return this._valueToItem (e)},this)}},Polymer.IronMultiSelectableBehavior=[Polymer.IronSelectableBehavior ,Polymer.IronMultiSelectableBehaviorImpl]</script> <script>Polymer.IronMenuBehav iorImpl={properties:{focusedItem:{observer:"_focusedItemChanged",readOnly:!0,typ e:Object},attrForItemTitle:{type:String}},_SEARCH_RESET_TIMEOUT_MS:1e3,hostAttri butes:{role:"menu",tabindex:"0"},observers:["_updateMultiselectable(multi)"],lis teners:{focus:"_onFocus",keydown:"_onKeydown","iron-items-changed":"_onIronItems Changed"},keyBindings:{up:"_onUpKey",down:"_onDownKey",esc:"_onEscKey","shift+ta b:keydown":"_onShiftTabDown"},attached:function(){this._resetTabindices()},selec t:function(e){this._defaultFocusAsync&&(this.cancelAsync(this._defaultFocusAsync ),this._defaultFocusAsync=null);var t=this._valueToItem(e);t&&t.hasAttribute("di sabled")||(this._setFocusedItem(t),Polymer.IronMultiSelectableBehaviorImpl.selec t.apply(this,arguments))},_resetTabindices:function(){var e=this.multi?this.sele ctedItems&&this.selectedItems[0]:this.selectedItem;this.items.forEach(function(t ){t.setAttribute("tabindex",t===e?"0":"-1")},this)},_updateMultiselectable:funct ion(e){e?this.setAttribute("aria-multiselectable","true"):this.removeAttribute(" aria-multiselectable")},_focusWithKeyboardEvent:function(e){this.cancelDebouncer ("_clearSearchText");var t=this._searchText||"",s=e.key&&1==e.key.length?e.key:S tring.fromCharCode(e.keyCode);t+=s.toLocaleLowerCase();for(var i,o=t.length,n=0; i=this.items[n];n++)if(!i.hasAttribute("disabled")){var r=this.attrForItemTitle| |"textContent",a=(i[r]||i.getAttribute(r)||"").trim();if(!(a.length<o)&&a.slice( 0,o).toLocaleLowerCase()==t){this._setFocusedItem(i);break}}this._searchText=t,t his.debounce("_clearSearchText",this._clearSearchText,this._SEARCH_RESET_TIMEOUT _MS)},_clearSearchText:function(){this._searchText=""},_focusPrevious:function() {for(var e=this.items.length,t=Number(this.indexOf(this.focusedItem)),s=1;s<e+1; s++){var i=this.items[(t-s+e)%e];if(!i.hasAttribute("disabled")){var o=Polymer.d om(i).getOwnerRoot()||document;if(this._setFocusedItem(i),Polymer.dom(o).activeE lement==i)return}}},_focusNext:function(){for(var e=this.items.length,t=Number(t his.indexOf(this.focusedItem)),s=1;s<e+1;s++){var i=this.items[(t+s)%e];if(!i.ha sAttribute("disabled")){var o=Polymer.dom(i).getOwnerRoot()||document;if(this._s etFocusedItem(i),Polymer.dom(o).activeElement==i)return}}},_applySelection:funct ion(e,t){t?e.setAttribute("aria-selected","true"):e.removeAttribute("aria-select ed"),Polymer.IronSelectableBehavior._applySelection.apply(this,arguments)},_focu sedItemChanged:function(e,t){t&&t.setAttribute("tabindex","-1"),e&&(e.setAttribu te("tabindex","0"),e.focus())},_onIronItemsChanged:function(e){e.detail.addedNod es.length&&this._resetTabindices()},_onShiftTabDown:function(e){var t=this.getAt tribute("tabindex");Polymer.IronMenuBehaviorImpl._shiftTabPressed=!0,this._setFo cusedItem(null),this.setAttribute("tabindex","-1"),this.async(function(){this.se tAttribute("tabindex",t),Polymer.IronMenuBehaviorImpl._shiftTabPressed=!1},1)},_ onFocus:function(e){if(!Polymer.IronMenuBehaviorImpl._shiftTabPressed){var t=Pol ymer.dom(e).rootTarget;(t===this||"undefined"==typeof t.tabIndex||this.isLightDe scendant(t))&&(this._defaultFocusAsync=this.async(function(){var e=this.multi?th is.selectedItems&&this.selectedItems[0]:this.selectedItem;this._setFocusedItem(n ull),e?this._setFocusedItem(e):this.items[0]&&this._focusNext()}))}},_onUpKey:fu nction(e){this._focusPrevious(),e.detail.keyboardEvent.preventDefault()},_onDown Key:function(e){this._focusNext(),e.detail.keyboardEvent.preventDefault()},_onEs cKey:function(e){this.focusedItem.blur()},_onKeydown:function(e){this.keyboardEv entMatchesKeys(e,"up down esc")||this._focusWithKeyboardEvent(e),e.stopPropagati on()},_activateHandler:function(e){Polymer.IronSelectableBehavior._activateHandl er.call(this,e),e.stopPropagation()}},Polymer.IronMenuBehaviorImpl._shiftTabPres sed=!1,Polymer.IronMenuBehavior=[Polymer.IronMultiSelectableBehavior,Polymer.Iro nA11yKeysBehavior,Polymer.IronMenuBehaviorImpl]</script> <dom-module id="paper-m enu-shared-styles" assetpath="/res/imp/bower_components/paper-menu/"> <template> <style>.selectable-content>::content>.iron-selected{font-weight:700;@apply(--pa per-menu-selected-item)}.selectable-content>::content>[disabled]{color:var(--pap er-menu-disabled-color,--disabled-text-color)}.selectable-content>::content>:foc us{position:relative;outline:0;@apply(--paper-menu-focused-item)}.selectable-con tent>::content>:focus:after{@apply(--layout-fit);background:currentColor;opacity :var(--dark-divider-opacity);content:'';pointer-events:none;@apply(--paper-menu- focused-item-after)}.selectable-content>::content>[colored]:focus:after{opacity: .26}</style> </template> </dom-module> <dom-module id="paper-menu" assetpath="/r es/imp/bower_components/paper-menu/"> <template> <style include="paper-menu-shar ed-styles"></style> <style>:host{display:block;padding:8px 0;background:var(--pa per-menu-background-color,--primary-background-color);color:var(--paper-menu-col or,--primary-text-color);@apply(--paper-menu)}</style> <div class="selectable-co ntent"> <content></content> </div> </template> <script>!function(){Polymer({is:" paper-menu",behaviors:[Polymer.IronMenuBehavior]})}()</script> </dom-module> <sc ript>Polymer.PaperSpinnerBehavior={listeners:{animationend:"__reset",webkitAnima tionEnd:"__reset"},properties:{active:{type:Boolean,value:!1,reflectToAttribute: !0,observer:"__activeChanged"},alt:{type:String,value:"loading",observer:"__altC hanged"},__coolingDown:{type:Boolean,value:!1}},__computeContainerClasses:functi on(e,t){return[e||t?"active":"",t?"cooldown":""].join(" ")},__activeChanged:func tion(e,t){this.__setAriaHidden(!e),this.__coolingDown=!e&&t},__altChanged:functi on(e){e===this.getPropertyInfo("alt").value?this.alt=this.getAttribute("aria-lab el")||e:(this.__setAriaHidden(""===e),this.setAttribute("aria-label",e))},__setA riaHidden:function(e){var t="aria-hidden";e?this.setAttribute(t,"true"):this.rem oveAttribute(t)},__reset:function(){this.active=!1,this.__coolingDown=!1}}</scri pt> <dom-module id="paper-spinner-styles" assetpath="/res/imp/bower_components/p aper-spinner/"> <template> <style>:host{display:inline-block;position:relative;w idth:28px;height:28px;--paper-spinner-container-rotation-duration:1568ms;--paper -spinner-expand-contract-duration:1333ms;--paper-spinner-full-cycle-duration:533 2ms;--paper-spinner-cooldown-duration:400ms}#spinnerContainer{width:100%;height: 100%;direction:ltr}#spinnerContainer.active{-webkit-animation:container-rotate v ar(--paper-spinner-container-rotation-duration) linear infinite;animation:contai ner-rotate var(--paper-spinner-container-rotation-duration) linear infinite}@-we bkit-keyframes container-rotate{to{-webkit-transform:rotate(360deg)}}@keyframes container-rotate{to{transform:rotate(360deg)}}.spinner-layer{position:absolute;w idth:100%;height:100%;opacity:0;white-space:nowrap;border-color:var(--paper-spin ner-color,--google-blue-500)}.layer-1{border-color:var(--paper-spinner-layer-1-c olor,--google-blue-500)}.layer-2{border-color:var(--paper-spinner-layer-2-color, --google-red-500)}.layer-3{border-color:var(--paper-spinner-layer-3-color,--goog le-yellow-500)}.layer-4{border-color:var(--paper-spinner-layer-4-color,--google- green-500)}.active .spinner-layer{-webkit-animation-name:fill-unfill-rotate;-web kit-animation-duration:var(--paper-spinner-full-cycle-duration);-webkit-animatio n-timing-function:cubic-bezier(.4,0,.2,1);-webkit-animation-iteration-count:infi nite;animation-name:fill-unfill-rotate;animation-duration:var(--paper-spinner-fu ll-cycle-duration);animation-timing-function:cubic-bezier(.4,0,.2,1);animation-i teration-count:infinite;opacity:1}.active .spinner-layer.layer-1{-webkit-animati on-name:fill-unfill-rotate,layer-1-fade-in-out;animation-name:fill-unfill-rotate ,layer-1-fade-in-out}.active .spinner-layer.layer-2{-webkit-animation-name:fill- unfill-rotate,layer-2-fade-in-out;animation-name:fill-unfill-rotate,layer-2-fade -in-out}.active .spinner-layer.layer-3{-webkit-animation-name:fill-unfill-rotate ,layer-3-fade-in-out;animation-name:fill-unfill-rotate,layer-3-fade-in-out}.acti ve .spinner-layer.layer-4{-webkit-animation-name:fill-unfill-rotate,layer-4-fade -in-out;animation-name:fill-unfill-rotate,layer-4-fade-in-out}@-webkit-keyframes fill-unfill-rotate{12.5%{-webkit-transform:rotate(135deg)}25%{-webkit-transform :rotate(270deg)}37.5%{-webkit-transform:rotate(405deg)}50%{-webkit-transform:rot ate(540deg)}62.5%{-webkit-transform:rotate(675deg)}75%{-webkit-transform:rotate( 810deg)}87.5%{-webkit-transform:rotate(945deg)}to{-webkit-transform:rotate(1080d eg)}}@keyframes fill-unfill-rotate{12.5%{transform:rotate(135deg)}25%{transform: rotate(270deg)}37.5%{transform:rotate(405deg)}50%{transform:rotate(540deg)}62.5% {transform:rotate(675deg)}75%{transform:rotate(810deg)}87.5%{transform:rotate(94 5deg)}to{transform:rotate(1080deg)}}@-webkit-keyframes layer-1-fade-in-out{0%{op acity:1}25%{opacity:1}26%{opacity:0}89%{opacity:0}90%{opacity:1}to{opacity:1}}@k eyframes layer-1-fade-in-out{0%{opacity:1}25%{opacity:1}26%{opacity:0}89%{opacit y:0}90%{opacity:1}to{opacity:1}}@-webkit-keyframes layer-2-fade-in-out{0%{opacit y:0}15%{opacity:0}25%{opacity:1}50%{opacity:1}51%{opacity:0}to{opacity:0}}@keyfr ames layer-2-fade-in-out{0%{opacity:0}15%{opacity:0}25%{opacity:1}50%{opacity:1} 51%{opacity:0}to{opacity:0}}@-webkit-keyframes layer-3-fade-in-out{0%{opacity:0} 40%{opacity:0}50%{opacity:1}75%{opacity:1}76%{opacity:0}to{opacity:0}}@keyframes layer-3-fade-in-out{0%{opacity:0}40%{opacity:0}50%{opacity:1}75%{opacity:1}76%{ opacity:0}to{opacity:0}}@-webkit-keyframes layer-4-fade-in-out{0%{opacity:0}65%{ opacity:0}75%{opacity:1}90%{opacity:1}to{opacity:0}}@keyframes layer-4-fade-in-o ut{0%{opacity:0}65%{opacity:0}75%{opacity:1}90%{opacity:1}to{opacity:0}}.circle- clipper{display:inline-block;position:relative;width:50%;height:100%;overflow:hi dden;border-color:inherit}.spinner-layer::after{left:45%;width:10%;border-top-st yle:solid}.circle-clipper::after,.spinner-layer::after{content:'';box-sizing:bor der-box;position:absolute;top:0;border-width:var(--paper-spinner-stroke-width,3p x);border-color:inherit;border-radius:50%}.circle-clipper::after{bottom:0;width: 200%;border-style:solid;border-bottom-color:transparent!important}.circle-clippe r.left::after{left:0;border-right-color:transparent!important;-webkit-transform: rotate(129deg);transform:rotate(129deg)}.circle-clipper.right::after{left:-100%; border-left-color:transparent!important;-webkit-transform:rotate(-129deg);transf orm:rotate(-129deg)}.active .circle-clipper::after,.active .gap-patch::after{-we bkit-animation-duration:var(--paper-spinner-expand-contract-duration);-webkit-an imation-timing-function:cubic-bezier(.4,0,.2,1);-webkit-animation-iteration-coun t:infinite;animation-duration:var(--paper-spinner-expand-contract-duration);anim ation-timing-function:cubic-bezier(.4,0,.2,1);animation-iteration-count:infinite }.active .circle-clipper.left::after{-webkit-animation-name:left-spin;animation- name:left-spin}.active .circle-clipper.right::after{-webkit-animation-name:right -spin;animation-name:right-spin}@-webkit-keyframes left-spin{0%{-webkit-transfor m:rotate(130deg)}50%{-webkit-transform:rotate(-5deg)}to{-webkit-transform:rotate (130deg)}}@keyframes left-spin{0%{transform:rotate(130deg)}50%{transform:rotate( -5deg)}to{transform:rotate(130deg)}}@-webkit-keyframes right-spin{0%{-webkit-tra nsform:rotate(-130deg)}50%{-webkit-transform:rotate(5deg)}to{-webkit-transform:r otate(-130deg)}}@keyframes right-spin{0%{transform:rotate(-130deg)}50%{transform :rotate(5deg)}to{transform:rotate(-130deg)}}#spinnerContainer.cooldown{-webkit-a nimation:container-rotate var(--paper-spinner-container-rotation-duration) linea r infinite,fade-out var(--paper-spinner-cooldown-duration) cubic-bezier(.4,0,.2, 1);animation:container-rotate var(--paper-spinner-container-rotation-duration) l inear infinite,fade-out var(--paper-spinner-cooldown-duration) cubic-bezier(.4,0 ,.2,1)}@-webkit-keyframes fade-out{0%{opacity:1}to{opacity:0}}@keyframes fade-ou t{0%{opacity:1}to{opacity:0}}</style> </template> </dom-module> <dom-module id=" paper-spinner-lite" assetpath="/res/imp/bower_components/paper-spinner/"> <templ ate strip-whitespace=""> <style include="paper-spinner-styles"></style> <div id= "spinnerContainer" class-name="[[__computeContainerClasses(active, __coolingDown )]]"> <div class="spinner-layer"> <div class="circle-clipper left"></div> <div c lass="circle-clipper right"></div> </div> </div> </template> <script>Polymer({is :"paper-spinner-lite",behaviors:[Polymer.PaperSpinnerBehavior]})</script> </dom- module> <script>!function(){"use strict";Polymer.IronJsonpLibraryBehavior={prope rties:{libraryLoaded:{type:Boolean,value:!1,notify:!0,readOnly:!0},libraryErrorM essage:{type:String,value:null,notify:!0,readOnly:!0}},observers:["_libraryUrlCh anged(libraryUrl)"],_libraryUrlChanged:function(r){this._isReady&&this.libraryUr l&&this._loadLibrary()},_libraryLoadCallback:function(r,i){r?(console.warn("Libr ary load failed:",r.message),this._setLibraryErrorMessage(r.message)):(this._set LibraryErrorMessage(null),this._setLibraryLoaded(!0),this.notifyEvent&&this.fire (this.notifyEvent,i))},_loadLibrary:function(){r.require(this.libraryUrl,this._l ibraryLoadCallback.bind(this),this.callbackName)},ready:function(){this._isReady =!0,this.libraryUrl&&this._loadLibrary()}};var r={apiMap:{},require:function(r,t ,e){var a=this.nameFromUrl(r);this.apiMap[a]||(this.apiMap[a]=new i(a,r,e)),this .apiMap[a].requestNotify(t)},nameFromUrl:function(r){return r.replace(/[\:\/\%\? \&\.\=\-\,]/g,"_")+"_api"}},i=function(r,i,t){if(this.notifiers=[],!t){if(!(i.in dexOf(this.callbackMacro)>=0))return void(this.error=new Error("IronJsonpLibrary Behavior a %%callback%% parameter is required in libraryUrl"));t=r+"_loaded",i=i .replace(this.callbackMacro,t)}this.callbackName=t,window[this.callbackName]=thi s.success.bind(this),this.addScript(i)};i.prototype={callbackMacro:"%%callback%% ",loaded:!1,addScript:function(r){var i=document.createElement("script");i.src=r ,i.onerror=this.handleError.bind(this);var t=document.querySelector("script")||d ocument.body;t.parentNode.insertBefore(i,t),this.script=i},removeScript:function (){this.script.parentNode&&this.script.parentNode.removeChild(this.script),this. script=null},handleError:function(r){this.error=new Error("Library failed to loa d"),this.notifyAll(),this.cleanup()},success:function(){this.loaded=!0,this.resu lt=Array.prototype.slice.call(arguments),this.notifyAll(),this.cleanup()},cleanu p:function(){delete window[this.callbackName]},notifyAll:function(){this.notifie rs.forEach(function(r){r(this.error,this.result)}.bind(this)),this.notifiers=[]} ,requestNotify:function(r){this.loaded||this.error?r(this.error,this.result):thi s.notifiers.push(r)}}}()</script> <script>Polymer({is:"iron-jsonp-library",behav iors:[Polymer.IronJsonpLibraryBehavior],properties:{libraryUrl:String,callbackNa me:String,notifyEvent:String}})</script> <script>Polymer({is:"google-js-api",beh aviors:[Polymer.IronJsonpLibraryBehavior],properties:{libraryUrl:{type:String,va lue:"https://apis.google.com/js/api.js?onload=%%callback%%"},notifyEvent:{type:S tring,value:"js-api-load"}},get api(){return gapi}})</script> <script>!function( ){var e={appPackageName:"apppackagename",clientId:"clientid",cookiePolicy:"cooki epolicy",hostedDomain:"hostedDomain",openidPrompt:"prompt",requestVisibleActions :"requestvisibleactions"},t={_clientId:null,get clientId(){return this._clientId },set clientId(e){if(this._clientId&&e&&e!=this._clientId)throw new Error("clien tId cannot change. Values do not match. New: "+e+" Old:"+this._clientId);e&&e!=t his._clientId&&(this._clientId=e,this.initAuth2())},_cookiePolicy:"single_host_o rigin",get cookiePolicy(){return this._cookiePolicy},set cookiePolicy(e){e&&(thi s._cookiePolicy=e)},_appPackageName:"",get appPackageName(){return this._appPack ageName},set appPackageName(e){if(this._appPackageName&&e&&e!=this._appPackageNa me)throw new Error("appPackageName cannot change. Values do not match. New: "+e+ " Old: "+this._appPackageName);e&&(this._appPackageName=e)},_requestVisibleActio ns:"",get requestVisibleactions(){return this._requestVisibleActions},set reques tVisibleactions(e){if(this._requestVisibleActions&&e&&e!=this._requestVisibleAct ions)throw new Error("requestVisibleactions cannot change. Values do not match. New: "+e+" Old: "+this._requestVisibleActions);e&&(this._requestVisibleActions=e )},_hostedDomain:"",get hostedDomain(){return this._hostedDomain},set hostedDoma in(e){if(this._hostedDomain&&e&&e!=this._hostedDomain)throw new Error("hostedDom ain cannot change. Values do not match. New: "+e+" Old: "+this._hostedDomain);e& &(this._hostedDomain=e)},_openidPrompt:"",get openidPrompt(){return this._openid Prompt},set openidPrompt(e){if("string"!=typeof e)throw new Error("openidPrompt must be a string. Received "+typeof e);if(e){var t=e.split(" ");t=t.map(function (e){return e.trim()}),t=t.filter(function(e){return e});var i={none:0,login:0,co nsent:0,select_account:0};t.forEach(function(e){if("none"==e&&t.length>1)throw n ew Error("none cannot be combined with other openidPrompt values");if(!(e in i)) throw new Error("invalid openidPrompt value "+e+". Valid values: "+Object.keys(i ).join(", "))})}this._openidPrompt=e},_offline:!1,get offline(){return this._off line},set offline(e){this._offline=e,this.updateAdditionalAuth()},_offlineAlways Prompt:!1,get offlineAlwaysPrompt(){return this._offlineAlwaysPrompt},set offlin eAlwaysPrompt(e){this._offlineAlwaysPrompt=e,this.updateAdditionalAuth()},offlin eGranted:!1,_apiLoader:null,_requestedScopeArray:[],get requestedScopes(){return this._requestedScopeArray.join(" ")},_signedIn:!1,_grantedScopeArray:[],_needAd ditionalAuth:!0,_hasPlusScopes:!1,signinAwares:[],init:function(){this._apiLoade r=document.createElement("google-js-api"),this._apiLoader.addEventListener("js-a pi-load",this.loadAuth2.bind(this))},loadAuth2:function(){gapi.load("auth2",this .initAuth2.bind(this))},initAuth2:function(){if("gapi"in window&&"auth2"in windo w.gapi&&this.clientId){var e=gapi.auth2.init({client_id:this.clientId,cookie_pol icy:this.cookiePolicy,scope:this.requestedScopes,hosted_domain:this.hostedDomain });e.currentUser.listen(this.handleUserUpdate.bind(this)),e.then(function(){},fu nction(e){console.error(e)})}},handleUserUpdate:function(e){var t=e.isSignedIn() ;if(t!=this._signedIn){this._signedIn=t;for(var i=0;i<this.signinAwares.length;i ++)this.signinAwares[i]._setSignedIn(t)}this._grantedScopeArray=this.strToScopeA rray(e.getGrantedScopes()),this.updateAdditionalAuth();for(var n=e.getAuthRespon se(),i=0;i<this.signinAwares.length;i++)this.signinAwares[i]._updateScopeStatus( n)},setOfflineCode:function(e){for(var t=0;t<this.signinAwares.length;t++)this.s igninAwares[t]._updateOfflineCode(e)},strToScopeArray:function(e){if(!e)return[] ;for(var t=e.replace(/\ +/g," ").trim().split(" "),i=0;i<t.length;i++)t[i]=t[i]. toLowerCase(),"https://www.googleapis.com/auth/userinfo.profile"===t[i]&&(t[i]=" profile"),"https://www.googleapis.com/auth/userinfo.email"===t[i]&&(t[i]="email" );return t.filter(function(e,t,i){return i.indexOf(e)===t})},isPlusScope:functio n(e){return e.indexOf("/auth/games")>-1||e.indexOf("auth/plus.")>-1&&e.indexOf(" auth/plus.me")<0},hasGrantedScopes:function(e){for(var t=this.strToScopeArray(e) ,i=0;i<t.length;i++)if(this._grantedScopeArray.indexOf(t[i])===-1)return!1;retur n!0},requestScopes:function(e){for(var t=this.strToScopeArray(e),i=!1,n=0;n<t.le ngth;n++)this._requestedScopeArray.indexOf(t[n])===-1&&(this._requestedScopeArra y.push(t[n]),i=!0);i&&(this.updateAdditionalAuth(),this.updatePlusScopes())},upd ateAdditionalAuth:function(){var e=!1;if(!this.offlineAlwaysPrompt&&!this.offlin e||this.offlineGranted){for(var t=0;t<this._requestedScopeArray.length;t++)if(th is._grantedScopeArray.indexOf(this._requestedScopeArray[t])===-1){e=!0;break}}el se e=!0;if(this._needAdditionalAuth!=e){this._needAdditionalAuth=e;for(var t=0;t <this.signinAwares.length;t++)this.signinAwares[t]._setNeedAdditionalAuth(e)}},u pdatePlusScopes:function(){for(var e=!1,t=0;t<this._requestedScopeArray.length;t ++)if(this.isPlusScope(this._requestedScopeArray[t])){e=!0;break}if(this._hasPlu sScopes!=e){this._hasPlusScopes=e;for(var t=0;t<this.signinAwares.length;t++)thi s.signinAwares[t]._setHasPlusScopes(e)}},attachSigninAware:function(e){this.sign inAwares.indexOf(e)==-1?(this.signinAwares.push(e),e._setNeedAdditionalAuth(this ._needAdditionalAuth),e._setSignedIn(this._signedIn),e._setHasPlusScopes(this._h asPlusScopes)):console.warn("signinAware attached more than once",e)},detachSign inAware:function(e){var t=this.signinAwares.indexOf(e);t!=-1?this.signinAwares.s plice(t,1):console.warn("Trying to detach unattached signin-aware")},getMissingS copes:function(){return this._requestedScopeArray.filter(function(e){return this ._grantedScopeArray.indexOf(e)===-1}.bind(this)).join(" ")},assertAuthInitialize d:function(){if(!this.clientId)throw new Error("AuthEngine not initialized. clie ntId has not been configured.");if(!("gapi"in window))throw new Error("AuthEngin e not initialized. gapi has not loaded.");if(!("auth2"in window.gapi))throw new Error("AuthEngine not initialized. auth2 not loaded.")},signIn:function(){this.a ssertAuthInitialized();var i={scope:this.getMissingScopes()};Object.keys(e).forE ach(function(t){this[t]&&""!==this[t]&&(i[e[t]]=this[t])},this);var n,o=gapi.aut h2.getAuthInstance().currentUser.get();this.offline||this.offlineAlwaysPrompt?(i .redirect_uri="postmessage",this.offlineAlwaysPrompt&&(i.approval_prompt="force" ),n=gapi.auth2.getAuthInstance().grantOfflineAccess(i)):n=o.getGrantedScopes()?o .grant(i):gapi.auth2.getAuthInstance().signIn(i),n.then(function(e){var i;e.code ?(t.offlineGranted=!0,i=gapi.auth2.getAuthInstance().currentUser.get(),t.setOffl ineCode(e.code)):i=e;i.getAuthResponse()},function(e){"Access denied."!==e.reaso n&&this.signinAwares.forEach(function(t){t.errorNotify(e)})}.bind(this))},signOu t:function(){this.assertAuthInitialized(),gapi.auth2.getAuthInstance().signOut() .then(function(){},function(e){console.error(e)})}};t.init(),Polymer({is:"google -signin-aware",properties:{appPackageName:{type:String,observer:"_appPackageName Changed"},clientId:{type:String,observer:"_clientIdChanged"},cookiePolicy:{type: String,observer:"_cookiePolicyChanged"},requestVisibleActions:{type:String,obser ver:"_requestVisibleActionsChanged"},hostedDomain:{type:String,observer:"_hosted DomainChanged"},offline:{type:Boolean,value:!1,observer:"_offlineChanged"},offli neAlwaysPrompt:{type:Boolean,value:!1,observer:"_offlineAlwaysPromptChanged"},sc opes:{type:String,value:"profile",observer:"_scopesChanged"},openidPrompt:{type: String,value:"",observer:"_openidPromptChanged"},signedIn:{type:Boolean,notify:! 0,readOnly:!0},isAuthorized:{type:Boolean,notify:!0,readOnly:!0,value:!1},needAd ditionalAuth:{type:Boolean,notify:!0,readOnly:!0},hasPlusScopes:{type:Boolean,va lue:!1,notify:!0,readOnly:!0}},attached:function(){t.attachSigninAware(this)},de tached:function(){t.detachSigninAware(this)},signIn:function(){t.signIn()},signO ut:function(){t.signOut()},errorNotify:function(e){this.fire("google-signin-awar e-error",e)},_appPackageNameChanged:function(e,i){t.appPackageName=e},_clientIdC hanged:function(e,i){t.clientId=e},_cookiePolicyChanged:function(e,i){t.cookiePo licy=e},_requestVisibleActionsChanged:function(e,i){t.requestVisibleActions=e},_ hostedDomainChanged:function(e,i){t.hostedDomain=e},_offlineChanged:function(e,i ){t.offline=e},_offlineAlwaysPromptChanged:function(e,i){t.offlineAlwaysPrompt=e },_scopesChanged:function(e,i){t.requestScopes(e),this._updateScopeStatus(void 0 )},_openidPromptChanged:function(e,i){t.openidPrompt=e},_updateScopeStatus:funct ion(e){var i=this.signedIn&&t.hasGrantedScopes(this.scopes);i!==this.isAuthorize d&&(this._setIsAuthorized(i),i?this.fire("google-signin-aware-success",e):this.f ire("google-signin-aware-signed-out",e))},_updateOfflineCode:function(e){e&&this .fire("google-signin-offline-success",{code:e})}})}()</script> <dom-module id="a uth-signin" assetpath="/res/imp/common/"> <template> <style>#avatar{border-radiu s:5px}a{color:#fff}.center{vertical-align:middle}</style> <google-signin-aware i d="aware" client-id="[[client_id]]" offline="" scopes="email" on-google-signin-a ware-success="_onSignin" on-google-signin-aware-signed-out="_onSignout"> </googl e-signin-aware> <template is="dom-if" if="[[!signed_in]]"> <div id="signinContai ner"> <a on-tap="signIn" href="#">Sign in</a> </div> </template> <template is="d om-if" if="[[signed_in]]"> <img class="center" id="avatar" src="[[profile.imageU rl]]" width="30" height="30"> <span class="center">[[profile.email]]</span> <spa n class="center">|</span> <a class="center" on-tap="signOut" href="#">Sign out</ a> </template> </template> <script>"use strict";Polymer({is:"auth-signin",proper ties:{auth_headers:{type:Object,computed:"_makeHeader(auth_response)",notify:!0} ,auth_response:{type:Object,notify:!0},client_id:{type:String},profile:{type:Obj ect,readOnly:!0,notify:!0},signed_in:{type:Boolean,readOnly:!0,value:!1,notify:! 0}},ready:function(){this.client_id&&window.setTimeout(function(){if(!this.signe d_in&&!this._signingIn)if("gapi"in window&&"auth2"in window.gapi){var i=gapi.aut h2.getAuthInstance().currentUser.get();i&&i.getAuthResponse().access_token?this. _onSignin():window.setTimeout(this.ready.bind(this),50)}else window.setTimeout(t his.ready.bind(this),50)}.bind(this),50)},_onSignin:function(){this._signingIn=! 0;var i=gapi.auth2.getAuthInstance().currentUser.get(),e=i.getBasicProfile();thi s._setProfile({email:e.getEmail(),imageUrl:e.getImageUrl()}),this.set("auth_resp onse",i.getAuthResponse()),this._setSigned_in(!0),this.fire("auth-signin"),this. async(function(){console.log("reloading credentials"),i.reloadAuthResponse(),thi s._onSignin()},1e3*this.auth_response.expires_in),this._signingIn=!1},_onSignout :function(i){this._setSigned_in(!1),this._setProfile(null)},_makeHeader:function (i){return i?{authorization:i.token_type+" "+i.access_token}:{}},signIn:function (){this.$.aware.signIn()},signOut:function(){this.$.aware.signOut()}})</script> </dom-module> <dom-module id="iron-a11y-announcer" assetpath="/res/imp/bower_com ponents/iron-a11y-announcer/"> <template> <style>:host{display:inline-block;posi tion:fixed;clip:rect(0,0,0,0)}</style> <div aria-live$="[[mode]]">[[_text]]</div > </template> <script>!function(){"use strict";Polymer.IronA11yAnnouncer=Polymer ({is:"iron-a11y-announcer",properties:{mode:{type:String,value:"polite"},_text:{ type:String,value:""}},created:function(){Polymer.IronA11yAnnouncer.instance||(P olymer.IronA11yAnnouncer.instance=this),document.body.addEventListener("iron-ann ounce",this._onIronAnnounce.bind(this))},announce:function(n){this._text="",this .async(function(){this._text=n},100)},_onIronAnnounce:function(n){n.detail&&n.de tail.text&&this.announce(n.detail.text)}}),Polymer.IronA11yAnnouncer.instance=nu ll,Polymer.IronA11yAnnouncer.requestAvailability=function(){Polymer.IronA11yAnno uncer.instance||(Polymer.IronA11yAnnouncer.instance=document.createElement("iron -a11y-announcer")),document.body.appendChild(Polymer.IronA11yAnnouncer.instance) }}()</script> </dom-module> <script>Polymer.IronFitBehavior={properties:{sizingT arget:{type:Object,value:function(){return this}},fitInto:{type:Object,value:win dow},noOverlap:{type:Boolean},positionTarget:{type:Element},horizontalAlign:{typ e:String},verticalAlign:{type:String},dynamicAlign:{type:Boolean},horizontalOffs et:{type:Number,value:0,notify:!0},verticalOffset:{type:Number,value:0,notify:!0 },autoFitOnAttach:{type:Boolean,value:!1},_fitInfo:{type:Object}},get _fitWidth( ){var t;return t=this.fitInto===window?this.fitInto.innerWidth:this.fitInto.getB oundingClientRect().width},get _fitHeight(){var t;return t=this.fitInto===window ?this.fitInto.innerHeight:this.fitInto.getBoundingClientRect().height},get _fitL eft(){var t;return t=this.fitInto===window?0:this.fitInto.getBoundingClientRect( ).left},get _fitTop(){var t;return t=this.fitInto===window?0:this.fitInto.getBou ndingClientRect().top},get _defaultPositionTarget(){var t=Polymer.dom(this).pare ntNode;return t&&t.nodeType===Node.DOCUMENT_FRAGMENT_NODE&&(t=t.host),t},get _lo caleHorizontalAlign(){if(this._isRTL){if("right"===this.horizontalAlign)return"l eft";if("left"===this.horizontalAlign)return"right"}return this.horizontalAlign} ,attached:function(){this._isRTL="rtl"==window.getComputedStyle(this).direction, this.positionTarget=this.positionTarget||this._defaultPositionTarget,this.autoFi tOnAttach&&("none"===window.getComputedStyle(this).display?setTimeout(function() {this.fit()}.bind(this)):this.fit())},fit:function(){this.position(),this.constr ain(),this.center()},_discoverInfo:function(){if(!this._fitInfo){var t=window.ge tComputedStyle(this),i=window.getComputedStyle(this.sizingTarget);this._fitInfo= {inlineStyle:{top:this.style.top||"",left:this.style.left||"",position:this.styl e.position||""},sizerInlineStyle:{maxWidth:this.sizingTarget.style.maxWidth||"", maxHeight:this.sizingTarget.style.maxHeight||"",boxSizing:this.sizingTarget.styl e.boxSizing||""},positionedBy:{vertically:"auto"!==t.top?"top":"auto"!==t.bottom ?"bottom":null,horizontally:"auto"!==t.left?"left":"auto"!==t.right?"right":null },sizedBy:{height:"none"!==i.maxHeight,width:"none"!==i.maxWidth,minWidth:parseI nt(i.minWidth,10)||0,minHeight:parseInt(i.minHeight,10)||0},margin:{top:parseInt (t.marginTop,10)||0,right:parseInt(t.marginRight,10)||0,bottom:parseInt(t.margin Bottom,10)||0,left:parseInt(t.marginLeft,10)||0}},this.verticalOffset&&(this._fi tInfo.margin.top=this._fitInfo.margin.bottom=this.verticalOffset,this._fitInfo.i nlineStyle.marginTop=this.style.marginTop||"",this._fitInfo.inlineStyle.marginBo ttom=this.style.marginBottom||"",this.style.marginTop=this.style.marginBottom=th is.verticalOffset+"px"),this.horizontalOffset&&(this._fitInfo.margin.left=this._ fitInfo.margin.right=this.horizontalOffset,this._fitInfo.inlineStyle.marginLeft= this.style.marginLeft||"",this._fitInfo.inlineStyle.marginRight=this.style.margi nRight||"",this.style.marginLeft=this.style.marginRight=this.horizontalOffset+"p x")}},resetFit:function(){var t=this._fitInfo||{};for(var i in t.sizerInlineStyl e)this.sizingTarget.style[i]=t.sizerInlineStyle[i];for(var i in t.inlineStyle)th is.style[i]=t.inlineStyle[i];this._fitInfo=null},refit:function(){var t=this.siz ingTarget.scrollLeft,i=this.sizingTarget.scrollTop;this.resetFit(),this.fit(),th is.sizingTarget.scrollLeft=t,this.sizingTarget.scrollTop=i},position:function(){ if(this.horizontalAlign||this.verticalAlign){this._discoverInfo(),this.style.pos ition="fixed",this.sizingTarget.style.boxSizing="border-box",this.style.left="0p x",this.style.top="0px";var t=this.getBoundingClientRect(),i=this.__getNormalize dRect(this.positionTarget),e=this.__getNormalizedRect(this.fitInto),n=this._fitI nfo.margin,o={width:t.width+n.left+n.right,height:t.height+n.top+n.bottom},h=thi s.__getPosition(this._localeHorizontalAlign,this.verticalAlign,o,i,e),s=h.left+n .left,l=h.top+n.top,r=Math.min(e.right-n.right,s+t.width),a=Math.min(e.bottom-n. bottom,l+t.height),g=this._fitInfo.sizedBy.minWidth,f=this._fitInfo.sizedBy.minH eight;s<n.left&&(s=n.left,r-s<g&&(s=r-g)),l<n.top&&(l=n.top,a-l<f&&(l=a-f)),this .sizingTarget.style.maxWidth=r-s+"px",this.sizingTarget.style.maxHeight=a-l+"px" ,this.style.left=s-t.left+"px",this.style.top=l-t.top+"px"}},constrain:function( ){if(!this.horizontalAlign&&!this.verticalAlign){this._discoverInfo();var t=this ._fitInfo;t.positionedBy.vertically||(this.style.position="fixed",this.style.top ="0px"),t.positionedBy.horizontally||(this.style.position="fixed",this.style.lef t="0px"),this.sizingTarget.style.boxSizing="border-box";var i=this.getBoundingCl ientRect();t.sizedBy.height||this.__sizeDimension(i,t.positionedBy.vertically,"t op","bottom","Height"),t.sizedBy.width||this.__sizeDimension(i,t.positionedBy.ho rizontally,"left","right","Width")}},_sizeDimension:function(t,i,e,n,o){this.__s izeDimension(t,i,e,n,o)},__sizeDimension:function(t,i,e,n,o){var h=this._fitInfo ,s=this.__getNormalizedRect(this.fitInto),l="Width"===o?s.width:s.height,r=i===n ,a=r?l-t[n]:t[e],g=h.margin[r?e:n],f="offset"+o,p=this[f]-this.sizingTarget[f];t his.sizingTarget.style["max"+o]=l-g-a-p+"px"},center:function(){if(!this.horizon talAlign&&!this.verticalAlign){this._discoverInfo();var t=this._fitInfo.position edBy;if(!t.vertically||!t.horizontally){this.style.position="fixed",t.vertically ||(this.style.top="0px"),t.horizontally||(this.style.left="0px");var i=this.getB oundingClientRect(),e=this.__getNormalizedRect(this.fitInto);if(!t.vertically){v ar n=e.top-i.top+(e.height-i.height)/2;this.style.top=n+"px"}if(!t.horizontally) {var o=e.left-i.left+(e.width-i.width)/2;this.style.left=o+"px"}}}},__getNormali zedRect:function(t){return t===document.documentElement||t===window?{top:0,left: 0,width:window.innerWidth,height:window.innerHeight,right:window.innerWidth,bott om:window.innerHeight}:t.getBoundingClientRect()},__getCroppedArea:function(t,i, e){var n=Math.min(0,t.top)+Math.min(0,e.bottom-(t.top+i.height)),o=Math.min(0,t. left)+Math.min(0,e.right-(t.left+i.width));return Math.abs(n)*i.width+Math.abs(o )*i.height},__getPosition:function(t,i,e,n,o){var h=[{verticalAlign:"top",horizo ntalAlign:"left",top:n.top,left:n.left},{verticalAlign:"top",horizontalAlign:"ri ght",top:n.top,left:n.right-e.width},{verticalAlign:"bottom",horizontalAlign:"le ft",top:n.bottom-e.height,left:n.left},{verticalAlign:"bottom",horizontalAlign:" right",top:n.bottom-e.height,left:n.right-e.width}];if(this.noOverlap){for(var s =0,l=h.length;s<l;s++){var r={};for(var a in h[s])r[a]=h[s][a];h.push(r)}h[0].to p=h[1].top+=n.height,h[2].top=h[3].top-=n.height,h[4].left=h[6].left+=n.width,h[ 5].left=h[7].left-=n.width}i="auto"===i?null:i,t="auto"===t?null:t;for(var g,s=0 ;s<h.length;s++){var f=h[s];if(!this.dynamicAlign&&!this.noOverlap&&f.verticalAl ign===i&&f.horizontalAlign===t){g=f;break}var p=!(i&&f.verticalAlign!==i||t&&f.h orizontalAlign!==t);if(this.dynamicAlign||p){g=g||f,f.croppedArea=this.__getCrop pedArea(f,e,o);var d=f.croppedArea-g.croppedArea;if((d<0||0===d&&p)&&(g=f),0===g .croppedArea&&p)break}}return g}}</script> <dom-module id="iron-overlay-backdrop " assetpath="/res/imp/bower_components/iron-overlay-behavior/"> <template> <styl e>:host{position:fixed;top:0;left:0;width:100%;height:100%;background-color:var( --iron-overlay-backdrop-background-color,#000);opacity:0;transition:opacity .2s; pointer-events:none;@apply(--iron-overlay-backdrop)}:host(.opened){opacity:var(- -iron-overlay-backdrop-opacity,.6);pointer-events:auto;@apply(--iron-overlay-bac kdrop-opened)}</style> <content></content> </template> </dom-module> <script>!fu nction(){"use strict";Polymer({is:"iron-overlay-backdrop",properties:{opened:{re flectToAttribute:!0,type:Boolean,value:!1,observer:"_openedChanged"}},listeners: {transitionend:"_onTransitionend"},created:function(){this.__openedRaf=null},att ached:function(){this.opened&&this._openedChanged(this.opened)},prepare:function (){this.opened&&!this.parentNode&&Polymer.dom(document.body).appendChild(this)}, open:function(){this.opened=!0},close:function(){this.opened=!1},complete:functi on(){this.opened||this.parentNode!==document.body||Polymer.dom(this.parentNode). removeChild(this)},_onTransitionend:function(e){e&&e.target===this&&this.complet e()},_openedChanged:function(e){if(e)this.prepare();else{var t=window.getCompute dStyle(this);"0s"!==t.transitionDuration&&0!=t.opacity||this.complete()}this.isA ttached&&(this.__openedRaf&&(window.cancelAnimationFrame(this.__openedRaf),this. __openedRaf=null),this.scrollTop=this.scrollTop,this.__openedRaf=window.requestA nimationFrame(function(){this.__openedRaf=null,this.toggleClass("opened",this.op ened)}.bind(this)))}})}()</script> <script>Polymer.IronOverlayManagerClass=funct ion(){this._overlays=[],this._minimumZ=101,this._backdropElement=null,Polymer.Ge stures.add(document,"tap",this._onCaptureClick.bind(this)),document.addEventList ener("focus",this._onCaptureFocus.bind(this),!0),document.addEventListener("keyd own",this._onCaptureKeyDown.bind(this),!0)},Polymer.IronOverlayManagerClass.prot otype={constructor:Polymer.IronOverlayManagerClass,get backdropElement(){return this._backdropElement||(this._backdropElement=document.createElement("iron-overl ay-backdrop")),this._backdropElement},get deepActiveElement(){for(var e=document .activeElement||document.body;e.root&&Polymer.dom(e.root).activeElement;)e=Polym er.dom(e.root).activeElement;return e},_bringOverlayAtIndexToFront:function(e){v ar t=this._overlays[e];if(t){var r=this._overlays.length-1,a=this._overlays[r];i f(a&&this._shouldBeBehindOverlay(t,a)&&r--,!(e>=r)){var n=Math.max(this.currentO verlayZ(),this._minimumZ);for(this._getZ(t)<=n&&this._applyOverlayZ(t,n);e<r;)th is._overlays[e]=this._overlays[e+1],e++;this._overlays[r]=t}}},addOrRemoveOverla y:function(e){e.opened?this.addOverlay(e):this.removeOverlay(e)},addOverlay:func tion(e){var t=this._overlays.indexOf(e);if(t>=0)return this._bringOverlayAtIndex ToFront(t),void this.trackBackdrop();var r=this._overlays.length,a=this._overlay s[r-1],n=Math.max(this._getZ(a),this._minimumZ),o=this._getZ(e);if(a&&this._shou ldBeBehindOverlay(e,a)){this._applyOverlayZ(a,n),r--;var i=this._overlays[r-1];n =Math.max(this._getZ(i),this._minimumZ)}o<=n&&this._applyOverlayZ(e,n),this._ove rlays.splice(r,0,e),this.trackBackdrop()},removeOverlay:function(e){var t=this._ overlays.indexOf(e);t!==-1&&(this._overlays.splice(t,1),this.trackBackdrop())},c urrentOverlay:function(){var e=this._overlays.length-1;return this._overlays[e]} ,currentOverlayZ:function(){return this._getZ(this.currentOverlay())},ensureMini mumZ:function(e){this._minimumZ=Math.max(this._minimumZ,e)},focusOverlay:functio n(){var e=this.currentOverlay();e&&e._applyFocus()},trackBackdrop:function(){var e=this._overlayWithBackdrop();(e||this._backdropElement)&&(this.backdropElement .style.zIndex=this._getZ(e)-1,this.backdropElement.opened=!!e)},getBackdrops:fun ction(){for(var e=[],t=0;t<this._overlays.length;t++)this._overlays[t].withBackd rop&&e.push(this._overlays[t]);return e},backdropZ:function(){return this._getZ( this._overlayWithBackdrop())-1},_overlayWithBackdrop:function(){for(var e=0;e<th is._overlays.length;e++)if(this._overlays[e].withBackdrop)return this._overlays[ e]},_getZ:function(e){var t=this._minimumZ;if(e){var r=Number(e.style.zIndex||wi ndow.getComputedStyle(e).zIndex);r===r&&(t=r)}return t},_setZ:function(e,t){e.st yle.zIndex=t},_applyOverlayZ:function(e,t){this._setZ(e,t+2)},_overlayInPath:fun ction(e){e=e||[];for(var t=0;t<e.length;t++)if(e[t]._manager===this)return e[t]} ,_onCaptureClick:function(e){var t=this.currentOverlay();t&&this._overlayInPath( Polymer.dom(e).path)!==t&&t._onCaptureClick(e)},_onCaptureFocus:function(e){var t=this.currentOverlay();t&&t._onCaptureFocus(e)},_onCaptureKeyDown:function(e){v ar t=this.currentOverlay();t&&(Polymer.IronA11yKeysBehavior.keyboardEventMatches Keys(e,"esc")?t._onCaptureEsc(e):Polymer.IronA11yKeysBehavior.keyboardEventMatch esKeys(e,"tab")&&t._onCaptureTab(e))},_shouldBeBehindOverlay:function(e,t){retur n!e.alwaysOnTop&&t.alwaysOnTop}},Polymer.IronOverlayManager=new Polymer.IronOver layManagerClass</script> <script>!function(){"use strict";Polymer.IronOverlayBeh aviorImpl={properties:{opened:{observer:"_openedChanged",type:Boolean,value:!1,n otify:!0},canceled:{observer:"_canceledChanged",readOnly:!0,type:Boolean,value:! 1},withBackdrop:{observer:"_withBackdropChanged",type:Boolean},noAutoFocus:{type :Boolean,value:!1},noCancelOnEscKey:{type:Boolean,value:!1},noCancelOnOutsideCli ck:{type:Boolean,value:!1},closingReason:{type:Object},restoreFocusOnClose:{type :Boolean,value:!1},alwaysOnTop:{type:Boolean},_manager:{type:Object,value:Polyme r.IronOverlayManager},_focusedChild:{type:Object}},listeners:{"iron-resize":"_on IronResize"},get backdropElement(){return this._manager.backdropElement},get _fo cusNode(){return this._focusedChild||Polymer.dom(this).querySelector("[autofocus ]")||this},get _focusableNodes(){var e=["a[href]","area[href]","iframe","[tabind ex]","[contentEditable=true]"],t=["input","select","textarea","button"],i=e.join (':not([tabindex="-1"]),')+':not([tabindex="-1"]),'+t.join(':not([disabled]):not ([tabindex="-1"]),')+':not([disabled]):not([tabindex="-1"])',s=Polymer.dom(this) .querySelectorAll(i);return this.tabIndex>=0&&s.splice(0,0,this),s.sort(function (e,t){return e.tabIndex===t.tabIndex?0:0===e.tabIndex||e.tabIndex>t.tabIndex?1:- 1})},ready:function(){this.__isAnimating=!1,this.__shouldRemoveTabIndex=!1,this. __firstFocusableNode=this.__lastFocusableNode=null,this.__raf=null,this.__restor eFocusNode=null,this._ensureSetup()},attached:function(){this.opened&&this._open edChanged(this.opened),this._observer=Polymer.dom(this).observeNodes(this._onNod esChange)},detached:function(){Polymer.dom(this).unobserveNodes(this._observer), this._observer=null,this.__raf&&(window.cancelAnimationFrame(this.__raf),this.__ raf=null),this._manager.removeOverlay(this)},toggle:function(){this._setCanceled (!1),this.opened=!this.opened},open:function(){this._setCanceled(!1),this.opened =!0},close:function(){this._setCanceled(!1),this.opened=!1},cancel:function(e){v ar t=this.fire("iron-overlay-canceled",e,{cancelable:!0});t.defaultPrevented||(t his._setCanceled(!0),this.opened=!1)},invalidateTabbables:function(){this.__firs tFocusableNode=this.__lastFocusableNode=null},_ensureSetup:function(){this._over laySetup||(this._overlaySetup=!0,this.style.outline="none",this.style.display="n one")},_openedChanged:function(e){e?this.removeAttribute("aria-hidden"):this.set Attribute("aria-hidden","true"),this.isAttached&&(this.__isAnimating=!0,this.__o nNextAnimationFrame(this.__openedChanged))},_canceledChanged:function(){this.clo singReason=this.closingReason||{},this.closingReason.canceled=this.canceled},_wi thBackdropChanged:function(){this.withBackdrop&&!this.hasAttribute("tabindex")?( this.setAttribute("tabindex","-1"),this.__shouldRemoveTabIndex=!0):this.__should RemoveTabIndex&&(this.removeAttribute("tabindex"),this.__shouldRemoveTabIndex=!1 ),this.opened&&this.isAttached&&this._manager.trackBackdrop()},_prepareRenderOpe ned:function(){this.__restoreFocusNode=this._manager.deepActiveElement,this._pre parePositioning(),this.refit(),this._finishPositioning(),this.noAutoFocus&&docum ent.activeElement===this._focusNode&&(this._focusNode.blur(),this.__restoreFocus Node.focus())},_renderOpened:function(){this._finishRenderOpened()},_renderClose d:function(){this._finishRenderClosed()},_finishRenderOpened:function(){this.not ifyResize(),this.__isAnimating=!1,this.fire("iron-overlay-opened")},_finishRende rClosed:function(){this.style.display="none",this.style.zIndex="",this.notifyRes ize(),this.__isAnimating=!1,this.fire("iron-overlay-closed",this.closingReason)} ,_preparePositioning:function(){this.style.transition=this.style.webkitTransitio n="none",this.style.transform=this.style.webkitTransform="none",this.style.displ ay=""},_finishPositioning:function(){this.style.display="none",this.scrollTop=th is.scrollTop,this.style.transition=this.style.webkitTransition="",this.style.tra nsform=this.style.webkitTransform="",this.style.display="",this.scrollTop=this.s crollTop},_applyFocus:function(){if(this.opened)this.noAutoFocus||this._focusNod e.focus();else{this._focusNode.blur(),this._focusedChild=null,this.restoreFocusO nClose&&this.__restoreFocusNode&&this.__restoreFocusNode.focus(),this.__restoreF ocusNode=null;var e=this._manager.currentOverlay();e&&this!==e&&e._applyFocus()} },_onCaptureClick:function(e){this.noCancelOnOutsideClick||this.cancel(e)},_onCa ptureFocus:function(e){if(this.withBackdrop){var t=Polymer.dom(e).path;t.indexOf (this)===-1?(e.stopPropagation(),this._applyFocus()):this._focusedChild=t[0]}},_ onCaptureEsc:function(e){this.noCancelOnEscKey||this.cancel(e)},_onCaptureTab:fu nction(e){if(this.withBackdrop){this.__ensureFirstLastFocusables();var t=e.shift Key,i=t?this.__firstFocusableNode:this.__lastFocusableNode,s=t?this.__lastFocusa bleNode:this.__firstFocusableNode,n=!1;if(i===s)n=!0;else{var o=this._manager.de epActiveElement;n=o===i||o===this}n&&(e.preventDefault(),this._focusedChild=s,th is._applyFocus())}},_onIronResize:function(){this.opened&&!this.__isAnimating&&t his.__onNextAnimationFrame(this.refit)},_onNodesChange:function(){this.opened&&! this.__isAnimating&&(this.invalidateTabbables(),this.notifyResize())},__ensureFi rstLastFocusables:function(){if(!this.__firstFocusableNode||!this.__lastFocusabl eNode){var e=this._focusableNodes;this.__firstFocusableNode=e[0],this.__lastFocu sableNode=e[e.length-1]}},__openedChanged:function(){this.opened?(this._prepareR enderOpened(),this._manager.addOverlay(this),this._applyFocus(),this._renderOpen ed()):(this._manager.removeOverlay(this),this._applyFocus(),this._renderClosed() )},__onNextAnimationFrame:function(e){this.__raf&&window.cancelAnimationFrame(th is.__raf);var t=this;this.__raf=window.requestAnimationFrame(function(){t.__raf= null,e.call(t)})}},Polymer.IronOverlayBehavior=[Polymer.IronFitBehavior,Polymer. IronResizableBehavior,Polymer.IronOverlayBehaviorImpl]}()</script> <dom-module i d="paper-toast" assetpath="/res/imp/bower_components/paper-toast/"> <template> < style>:host{display:block;position:fixed;background-color:var(--paper-toast-back ground-color,#323232);color:var(--paper-toast-color,#f1f1f1);min-height:48px;min -width:288px;padding:16px 24px;box-sizing:border-box;box-shadow:0 2px 5px 0 rgba (0,0,0,.26);border-radius:2px;margin:12px;font-size:14px;cursor:default;-webkit- transition:-webkit-transform .3s,opacity .3s;transition:transform .3s,opacity .3 s;opacity:0;-webkit-transform:translateY(100px);transform:translateY(100px);@app ly(--paper-font-common-base)}:host(.capsule){border-radius:24px}:host(.fit-botto m){width:100%;min-width:0;border-radius:0;margin:0}:host(.paper-toast-open){opac ity:1;-webkit-transform:translateY(0);transform:translateY(0)}</style> <span id= "label">{{text}}</span> <content></content> </template> <script>!function(){var e=null;Polymer({is:"paper-toast",behaviors:[Polymer.IronOverlayBehavior],propert ies:{fitInto:{type:Object,value:window,observer:"_onFitIntoChanged"},horizontalA lign:{type:String,value:"left"},verticalAlign:{type:String,value:"bottom"},durat ion:{type:Number,value:3e3},text:{type:String,value:""},noCancelOnOutsideClick:{ type:Boolean,value:!0},noAutoFocus:{type:Boolean,value:!0}},listeners:{transitio nend:"__onTransitionEnd"},get visible(){return Polymer.Base._warn("`visible` is deprecated, use `opened` instead"),this.opened},get _canAutoClose(){return this. duration>0&&this.duration!==1/0},created:function(){this._autoClose=null,Polymer .IronA11yAnnouncer.requestAvailability()},show:function(e){"string"==typeof e&&( e={text:e});for(var t in e)0===t.indexOf("_")?Polymer.Base._warn('The property " '+t+'" is private and was not set.'):t in this?this[t]=e[t]:Polymer.Base._warn(' The property "'+t+'" is not valid.');this.open()},hide:function(){this.close()}, __onTransitionEnd:function(e){e&&e.target===this&&"opacity"===e.propertyName&&(t his.opened?this._finishRenderOpened():this._finishRenderClosed())},_openedChange d:function(){null!==this._autoClose&&(this.cancelAsync(this._autoClose),this._au toClose=null),this.opened?(e&&e!==this&&e.close(),e=this,this.fire("iron-announc e",{text:this.text}),this._canAutoClose&&(this._autoClose=this.async(this.close, this.duration))):e===this&&(e=null),Polymer.IronOverlayBehaviorImpl._openedChang ed.apply(this,arguments)},_renderOpened:function(){this.classList.add("paper-toa st-open")},_renderClosed:function(){this.classList.remove("paper-toast-open")},_ onFitIntoChanged:function(e){this.positionTarget=e}})}()</script> </dom-module> <dom-module id="error-toast" assetpath="/res/imp/common/"> <template> <paper-toa st id="toast"></paper-toast> </template> </dom-module> <script>Polymer({is:"erro r-toast",ready:function(){document.addEventListener("error-sk",function(t){if(th is.$.toast.close(),t.detail.message){this.$.toast.text=t.detail.message;var e=1e 4;void 0!==t.detail.duration&&(e=t.detail.duration),this.$.toast.duration=e,this .$.toast.show()}else console.log("Empty message?",t)}.bind(this))}})</script> <d om-module id="swarming-app" assetpath="/res/imp/common/"> <template> <style incl ude="iron-flex">:host{position:absolute;top:0;bottom:0;left:0;right:0}app-toolba r{background-color:#1F78B4;color:#fff}app-toolbar.error{background-color:#b41f1f ;color:#fff}app-toolbar a{color:#fff}.left{margin-right:15px}.right{margin-left: 15px}.main-content{padding:3px}.main-content a{color:#1F78B4}.menu-button{min-wi dth:40px}.small,auth-signin{font-size:.7em}#mobile_menu{z-index:10;--app-drawer- content-container:{margin-top:64px};}a[href]{color:#1F78B4}.menu-item{padding:8p x 3px;border-bottom:1px solid #CCC}paper-fab{position:fixed;bottom:5px;right:5px ;background-color:#1F78B4}paper-spinner-lite{--paper-spinner-color:var(--google- yellow-500)}</style> <app-header-layout> <app-drawer id="mobile_menu"> <div clas s="menu-item"><a class="left" href="/">Home</a></div> <div class="menu-item"><a class="left" href="/botlist">Bot List</a></div> <div class="menu-item"><a class= "left" href="/tasklist">Task List</a></div> <div class="menu-item"><a class="lef t" href="/oldui">Old UI</a></div> </app-drawer> <app-header fixed=""> <app-toolb ar class$="[[_toolbarClass(client_id)]]"> <paper-icon-button class="menu-button" icon="icons:menu" on-tap="_toggleMobileMenu" hidden$="[[wide_layout]]"> </paper -icon-button> <div class="title left">[[name]]</div> <paper-spinner-lite class=" left" active="[[_or(busy,_busy1,_busy2)]]"></paper-spinner-lite> <a class="left" href="/" hidden$="[[!wide_layout]]">Home</a> <a class="left" href="/botlist" hi dden$="[[!wide_layout]]">Bot List</a> <a class="left" href="/tasklist" hidden$=" [[!wide_layout]]">Task List</a> <div class="flex" hidden$="[[!wide_layout]]"></d iv> <template is="dom-if" if="[[client_id]]"> <div class="small right"> Server: <a href$="[[_versionLink(server_details)]]"> [[server_details.server_version]] < /a> </div> <auth-signin class="right" client_id="[[client_id]]" auth_headers="{{ auth_headers}}" profile="{{profile}}" signed_in="{{signed_in}}"> </auth-signin> </template> <template is="dom-if" if="[[!client_id]]"> <div class="right">No OAa uth client id found.</div> </template> </app-toolbar> </app-header> <div class=" main-content"> <content></content> </div> <error-toast></error-toast> <a target= "_blank" rel="noopener" href="https://bugs.chromium.org/p/chromium/issues/entry? components=Infra%3EPlatform%3ESwarming&amp;owner=kjlubick@chromium.org&amp;statu s=Assigned"> <paper-fab mini="" icon="icons:bug-report"></paper-fab> </a> </app- header-layout> <iron-media-query query="min-width: 600px" query-matches="{{wide_ layout}}"></iron-media-query> </template> <script>Polymer({is:"swarming-app",beh aviors:[SwarmingBehaviors.CommonBehavior],properties:{busy:{type:Boolean},client _id:{type:String},name:{type:String},auth_headers:{type:Object,notify:!0,observe r:"_load"},permissions:{type:Object,value:function(){return{}},notify:!0},profil e:{type:Object,notify:!0},server_details:{type:Object,notify:!0},signed_in:{type :Boolean,value:!1,notify:!0},_busy1:{type:Boolean,value:!1},_busy2:{type:Boolean ,value:!1}},_load:function(){this._getJsonAsync("permissions","/api/swarming/v1/ server/permissions","_busy1",this.auth_headers),this._getJsonAsync("server_detai ls","/api/swarming/v1/server/details","_busy2",this.auth_headers).catch(function (e){sk.errorMessage("Http response: "+(e.status||" ")+" "+e.response)})},_toggle MobileMenu:function(){this.$.mobile_menu.toggle()},_toolbarClass:function(e){ret urn e?"":"error"},_versionLink:function(e){if(e&&e.server_version){var s=e.serve r_version.split("-");if(2===s.length)return"https://github.com/luci/luci-py/comm it/"+s[1]}}})</script> </dom-module> <dom-module id="swarming-app-style" assetpa th="/res/imp/common/"> <style>*{font-family:sans-serif}a[href]{color:#1F78B4}but ton{min-width:5.14em;background-color:#fff;color:#1f78b4;text-align:center;text- transform:uppercase;outline:0;border-radius:3px;padding:.6em 1.2em;border:solid #d3d3d3 1px;margin:.6em;cursor:pointer}button:hover{background:#eee}button:focus {background-color:#ddd;transition:background-color .1s cubic-bezier(.4,0,.2,1)}b utton.raised:active,button:active{background-color:#999;transition:background-co lor .1s cubic-bezier(.4,0,.2,1)}button:disabled{color:#999}button:disabled:hover {background:initial;cursor:initial}button.action:active{background-color:#A6CEE3 ;transition:background-color .1s color .1s cubic-bezier(.4,0,.2,1)}button.action {color:#fff;background:#1f78b4;border:none}button.action:disabled{color:#fff;bac kground:#999;border:none}button.raised{transition:box-shadow .1s cubic-bezier(.4 ,0,.2,1);box-shadow:5px 5px 18px 0 rgba(0,0,0,.3)}button.raised:active{box-shado w:2px 2px 5px 0 rgba(0,0,0,.1)}option,select{padding:.4em 1.2em;background-color :#fff;border:none;line-height:20px;vertical-align:middle}select{overflow-y:auto} </style> </dom-module> <dom-module id="swarming-index" assetpath="/res/imp/index /"> <template> <style include="swarming-app-style">.command{font-family:monospac e;margin-bottom:10px;margin-top:10px;white-space:pre-wrap;background-color:#f5f5 f5;border:1px solid #ccc;border-radius:4px}</style> <swarming-app client_id="[[c lient_id]]" auth_headers="{{_auth_headers}}" permissions="{{_permissions}}" serv er_details="{{_server_details}}" name="Swarming Server" busy="[[_or(_busy1,busy2 )]]"> <h2>Service Status</h2> <div>Server Version: [[_server_details.server_vers ion]]</div> <div>Bot Version: [[_server_details.bot_version]]</div> <ul> <li> <a href="/stats">Usage statistics</a> </li> <li> <a href="/restricted/mapreduce/st atus">Map Reduce Jobs</a> </li> <li> <a href$="[[_makeInstancesUrl(_server_detai ls,_project_id)]]">View version's instances on Cloud Console</a> </li> <li> <a>< /a><a href$="[[_makeErrorUrl(_project_id)]]">View server errors on Cloud Console </a> </li> <li> <a></a><a href$="[[_makeLogUrl(_project_id)]]">View logs for HTT P 5xx on Cloud Console</a> </li> </ul> <h2>Configuration</h2> <ul> <li> <a href= "/restricted/config">View server config</a> </li> <li> <a href="/restricted/uplo ad/bootstrap">View/upload bootstrap.py</a> </li> <li> <a href="/restricted/uploa d/bot_config">View/upload bot_config.py</a> </li> <li> <a href="/auth/groups">Vi ew/edit user groups</a> </li> </ul> <div hidden$="[[_cannotBootstrap(_permission s)]]"> <h2>Bootstrapping a bot</h2> To bootstrap a bot, run one of these (all li nks are valid for 1 hour): <ol> <li> <strong> TL;DR; </strong> <pre class="comma nd">python -c "import urllib; exec urllib.urlopen('[[_host_url]]/bootstrap?tok=[ [_bootstrap_token]]').read()"</pre> </li> <li> Escaped version to pass as a ssh argument: <pre class="command">'python -c "import urllib; exec urllib.urlopen('" '[[_host_url]]/bootstrap?tok=[[_bootstrap_token]]'"').read()"'</pre> </li> <li> Manually: <pre class="command" style="margin-bottom:0">mkdir bot; cd bot
5 rm -f swarming_bot.zip; curl -sSLOJ [[_host_url]]/bot_code?tok=[[_bootstrap_to ken]] 5 rm -f swarming_bot.zip; curl -sSLOJ [[_host_url]]/bot_code?tok=[[_bootstrap_to ken]]
6 python swarming_bot.zip</pre> </li> </ol> </div> </swarming-app> </template> < script>Polymer({is:"swarming-index",behaviors:[SwarmingBehaviors.CommonBehavior] ,properties:{client_id:{type:String},_auth_headers:{type:String},_bootstrap_toke n:{type:String,value:"..."},_busy1:{type:Boolean,value:!1},_busy2:{type:Boolean, value:!1},_host_url:{type:String,value:function(){return location.origin}},_perm issions:{type:Object},_project_id:{type:String,value:function(){var t=location.h ostname.indexOf(".appspot.com");return location.hostname.substring(0,t)}},_serve r_details:{type:Object}},observers:["_fetchBootstrap(_permissions,_auth_headers) "],_cannotBootstrap:function(t){return!(t&&t.get_bootstrap_token)},_fetchBootstr ap:function(t,e){e&&t&&!this._cannotBootstrap(t)&&(this.set("_busy1",!0),sk.requ est("POST","/api/swarming/v1/server/token",void 0,e).then(JSON.parse).then(funct ion(t){this.set("_bootstrap_token",t.bootstrap_token),this.set("_busy1",!1)}.bin d(this)).catch(function(t){console.log("Could not get token",t),this.set("_busy1 ",!1)}.bind(this)))},_makeInstancesUrl:function(t,e){return"https://console.clou d.google.com/appengine/instances?project="+e+"&versionId="+t.server_version},_ma keErrorUrl:function(t){return"https://console.cloud.google.com/errors?project="+ t},_makeLogUrl:function(t){return"https://console.cloud.google.com/logs/viewer?f ilters=status:500..599&project="+t}})</script> </dom-module><dom-module id="dyna mic-table-style" assetpath="/res/imp/common/"> <template> <style>table{border-co llapse:collapse;margin-left:5px}td,th{border:1px solid #DDD;padding:5px}th{posit ion:relative}sort-toggle{position:absolute;right:0;top:.4em}</style> </template> </dom-module> <script>!function(){SwarmingBehaviors.DynamicTableBehavior=[Swarm ingBehaviors.CommonBehavior,{properties:{_columns:{type:Array},_filter:{type:Fun ction},_filteredSortedItems:{type:Array,computed:"_filterAndSort(_items.*,_filte r.*,_sort.*)"},_items:{type:Array},_plainColumns:{type:Array,computed:"_stripSpe cial(_columns.*)"},_sort:{type:Object,computed:"_makeSortObject(_sortstr)"},_sor tstr:{type:String},_verbose:{type:Boolean}},_column:function(t,i){var n=this._co lumnMap[t];return n||(n=function(i){var n=this._attribute(i,t,"none");return thi s._verbose?n.join(" | "):n[0]}),n.bind(this)(i)},_compare:function(t,i){if(!this ._sort)return 0;var n=1;"desc"===this._sort.direction&&(n=-1);var r=this._specia lSort[this._sort.name];if(r)return r.bind(this)(n,t,i);var e=this._column(this._ sort.name,t);"none"===e&&(e="ZZZ");var o=this._column(this._sort.name,i);return" none"===o&&(o="ZZZ"),n*naturalSort(e,o)},_filterAndSort:function(){swarming.stab leSort(this._items,this._compare.bind(this));var t=this._items;return this._filt er&&(t=t.filter(this._filter.bind(this))),t},_header:function(t){return this._he aderMap[t]||t},_hide:function(t){return this._columns.indexOf(t)===-1},_makeSort Object:function(t){if(t){var i=t.split(":");return 2!=i.length?{name:"id",direct ion:"asc"}:{name:i[0],direction:i[1]}}},_sortChange:function(t){t&&t.detail&&t.d etail.name&&this.set("_sortstr",t.detail.name+":"+t.detail.direction)},_stripSpe cial:function(){return this._columns.filter(function(t){return this._specialColu mns.indexOf(t)===-1}.bind(this)).sort()},_commonColumns:function(){return{device :function(t){var i=this._attribute(t,"device","none");i=i[0];var n=swarming.alia s.device(i);return"unknown"===n?i:swarming.alias.apply(i,n)},device_type:functio n(t){var i=this._attribute(t,"device_type","none");i=i[0];var n=swarming.alias.a ndroid(i);return"unknown"===n?i:swarming.alias.apply(i,n)},gpu:function(t){var i =this._attribute(t,"gpu","none"),n=[],r=[];return i.forEach(function(t){var i=sw arming.alias.gpu(t);return"unknown"===i?(n.push(t),void(t.indexOf(":")!==-1&&r.p ush(t))):(n.push(swarming.alias.apply(t,i)),void(t.indexOf(":")!==-1&&r.push(swa rming.alias.apply(t,i))))}.bind(this)),this._verbose||!r.length?n.join(" | "):r. join(" | ")},os:function(t){return this._verbose?this._attribute(t,"os","none"). join(" | "):swarming.longest(this._attribute(t,"os","none"))},pool:function(t){v ar i=this._attribute(t,"pool");return i.join(" | ")}}}}]}()</script><dom-module id="sort-toggle" assetpath="/res/imp/common/"> <template> <style>:host{display:i nline-block;position:relative;min-width:20px;min-height:16px;vertical-align:midd le}iron-icon{position:absolute;left:0;cursor:pointer}.hidden{visibility:hidden}< /style> <span on-click="toggle"> <iron-icon style="top:0" class$="[[_hidden(dire ction,'asc')]]" icon="icons:arrow-drop-down"> </iron-icon> <iron-icon style="bot tom:0" class$="[[_hidden(direction,'desc')]]" icon="icons:arrow-drop-up"> </iron -icon> </span> </template> <script>Polymer({is:"sort-toggle",properties:{current :{type:Object,observer:"_resetSort"},name:{type:String,observer:"_resetSort"},di rection:{type:String,value:"",notify:!0}},toggle:function(){"asc"===this.directi on?this.set("direction","desc"):this.set("direction","asc"),this.fire("sort_chan ge",{direction:this.direction,name:this.name})},_hidden:function(t,e){return t== =e?"hidden":""},_resetSort:function(){this.current&&this.current.name===this.nam e?this.set("direction",this.current.direction):this.set("direction","")}})</scri pt> </dom-module><dom-module id="url-param" assetpath="/res/imp/common/"> <templ ate> <paper-toast id="toast"></paper-toast> </template> <script>!function(){Poly mer({is:"url-param",properties:{default_value:{type:String},default_values:{type :Array},multi:{type:Boolean,value:!1},name:{type:String},valid:{type:Array},valu e:{type:String,value:"",notify:!0,observer:"_valueChanged"},_loaded:{type:Boolea n,value:!1}},observers:["_valueChanged(value.splices)"],ready:function(){this._l oaded=!0;var t=this._getURL();t&&this._isValid(t)?this.set("value",t):this.defau lt_value&&this._isValid(this.default_value)?this.set("value",this.default_value) :this.multi&&this.default_values&&this._isValid(this.default_values)?this.set("v alue",this.default_values):this._putURL()},_getURL:function(){var t=sk.query.toP aramSet(window.location.search.substring(1))[this.name];return t?this.multi?t:t. length>1?(this._error("Multiple values provided for "+this.name+" but only one a ccepted: "+t),null):t[0]:null},_putURL:function(){var t=sk.query.toParamSet(wind ow.location.search.substring(1));delete t[this.name],!this.value||Array.isArray( this.value)&&0==this.value.length||(this.multi?t[this.name]=this.value:t[this.na me]=[this.value]);var e=window.location.href.split("?")[0]+"?"+sk.query.fromPara mSet(t);window.history.replaceState("","",e)},_isValid:function(t){var e=functio n(t){if(this.valid){for(var e=0;e<this.valid.length;e++)if(t==this.valid[e])retu rn!0;return this._error("Invalid value for "+this.name+': "'+t+'". Must be one o f: '+this.valid),!1}return!0}.bind(this);if(!this.multi)return Array.isArray(t)& &this._error("Multiple values provided for "+this.name+" but only one accepted: "+t),e(t);if(!Array.isArray(t))return this._error("url-param-sk: Value is not an array: "+t),!1;for(var i=0;i<t.length;i++)if(!e(t[i]))return!1;return!0},_value Changed:function(){this._loaded&&this._putURL()},_error:function(t){console.log( "[ERROR] "+t),this.set("$.toast.text",t),this.$.toast.show()}})}()</script> </do m-module> <dom-module id="pageable-data" assetpath="/res/imp/common/"> <template > <style include="swarming-app-style"></style> <button on-tap="page" disabled$=" [[_noMore(_cursor)]]"> [[label]] </button> </template> <script> (function(){ 6 python swarming_bot.zip</pre> </li> </ol> </div> </swarming-app> </template> < script>Polymer({is:"swarming-index",behaviors:[SwarmingBehaviors.CommonBehavior] ,properties:{client_id:{type:String},_auth_headers:{type:String},_bootstrap_toke n:{type:String,value:"..."},_busy1:{type:Boolean,value:!1},_busy2:{type:Boolean, value:!1},_host_url:{type:String,value:function(){return location.origin}},_perm issions:{type:Object},_project_id:{type:String,value:function(){var t=location.h ostname.indexOf(".appspot.com");return location.hostname.substring(0,t)}},_serve r_details:{type:Object}},observers:["_fetchBootstrap(_permissions,_auth_headers) "],_cannotBootstrap:function(t){return!(t&&t.get_bootstrap_token)},_fetchBootstr ap:function(t,e){e&&t&&!this._cannotBootstrap(t)&&(this.set("_busy1",!0),sk.requ est("POST","/api/swarming/v1/server/token",void 0,e).then(JSON.parse).then(funct ion(t){this.set("_bootstrap_token",t.bootstrap_token),this.set("_busy1",!1)}.bin d(this)).catch(function(t){console.log("Could not get token",t),this.set("_busy1 ",!1)}.bind(this)))},_makeInstancesUrl:function(t,e){return"https://console.clou d.google.com/appengine/instances?project="+e+"&versionId="+t.server_version},_ma keErrorUrl:function(t){return"https://console.cloud.google.com/errors?project="+ t},_makeLogUrl:function(t){return"https://console.cloud.google.com/logs/viewer?f ilters=status:500..599&project="+t}})</script> </dom-module><dom-module id="dyna mic-table-style" assetpath="/res/imp/common/"> <template> <style>table{border-co llapse:collapse;margin-left:5px}td,th{border:1px solid #DDD;padding:5px}th{posit ion:relative}sort-toggle{position:absolute;right:0;top:.4em}</style> </template> </dom-module> <script>!function(){SwarmingBehaviors.DynamicTableBehavior=[Swarm ingBehaviors.CommonBehavior,{properties:{_columns:{type:Array},_filter:{type:Fun ction},_filteredSortedItems:{type:Array,computed:"_filterAndSort(_items.*,_filte r.*,_sort.*)"},_items:{type:Array},_plainColumns:{type:Array,computed:"_stripSpe cial(_columns.*)"},_sort:{type:Object,computed:"_makeSortObject(_sortstr)"},_sor tstr:{type:String},_verbose:{type:Boolean}},_column:function(t,i){var n=this._co lumnMap[t];return n||(n=function(i){var n=this._attribute(i,t,"none");return thi s._verbose?n.join(" | "):n[0]}),n.bind(this)(i)},_compare:function(t,i){if(!this ._sort)return 0;var n=1;"desc"===this._sort.direction&&(n=-1);var r=this._specia lSort[this._sort.name];if(r)return r.bind(this)(n,t,i);var e=this._column(this._ sort.name,t);"none"===e&&(e="ZZZ");var o=this._column(this._sort.name,i);return" none"===o&&(o="ZZZ"),n*naturalSort(e,o)},_filterAndSort:function(){swarming.stab leSort(this._items,this._compare.bind(this));var t=this._items;return this._filt er&&(t=t.filter(this._filter.bind(this))),t},_header:function(t){return this._he aderMap[t]||t},_hide:function(t){return this._columns.indexOf(t)===-1},_makeSort Object:function(t){if(t){var i=t.split(":");return 2!=i.length?{name:"id",direct ion:"asc"}:{name:i[0],direction:i[1]}}},_sortChange:function(t){t&&t.detail&&t.d etail.name&&this.set("_sortstr",t.detail.name+":"+t.detail.direction)},_stripSpe cial:function(){return this._columns.filter(function(t){return this._specialColu mns.indexOf(t)===-1}.bind(this)).sort()},_commonColumns:function(){return{device :function(t){var i=this._attribute(t,"device","none");i=i[0];var n=swarming.alia s.device(i);return"unknown"===n?i:swarming.alias.apply(i,n)},device_type:functio n(t){var i=this._attribute(t,"device_type","none");i=i[0];var n=swarming.alias.a ndroid(i);return"unknown"===n?i:swarming.alias.apply(i,n)},gpu:function(t){var i =this._attribute(t,"gpu","none"),n=[],r=[];return i.forEach(function(t){var i=sw arming.alias.gpu(t);return"unknown"===i?(n.push(t),void(t.indexOf(":")!==-1&&r.p ush(t))):(n.push(swarming.alias.apply(t,i)),void(t.indexOf(":")!==-1&&r.push(swa rming.alias.apply(t,i))))}.bind(this)),this._verbose||!r.length?n.join(" | "):r. join(" | ")},os:function(t){return this._verbose?this._attribute(t,"os","none"). join(" | "):swarming.longest(this._attribute(t,"os","none"))},pool:function(t){v ar i=this._attribute(t,"pool");return i.join(" | ")}}}}]}()</script><dom-module id="sort-toggle" assetpath="/res/imp/common/"> <template> <style>:host{display:i nline-block;position:relative;min-width:20px;min-height:16px;vertical-align:midd le}iron-icon{position:absolute;left:0;cursor:pointer}.hidden{visibility:hidden}< /style> <span on-click="toggle"> <iron-icon style="top:0" class$="[[_hidden(dire ction,'asc')]]" icon="icons:arrow-drop-down"> </iron-icon> <iron-icon style="bot tom:0" class$="[[_hidden(direction,'desc')]]" icon="icons:arrow-drop-up"> </iron -icon> </span> </template> <script>Polymer({is:"sort-toggle",properties:{current :{type:Object,observer:"_resetSort"},name:{type:String,observer:"_resetSort"},di rection:{type:String,value:"",notify:!0}},toggle:function(){"asc"===this.directi on?this.set("direction","desc"):this.set("direction","asc"),this.fire("sort_chan ge",{direction:this.direction,name:this.name})},_hidden:function(t,e){return t== =e?"hidden":""},_resetSort:function(){this.current&&this.current.name===this.nam e?this.set("direction",this.current.direction):this.set("direction","")}})</scri pt> </dom-module><dom-module id="url-param" assetpath="/res/imp/common/"> <templ ate> <paper-toast id="toast"></paper-toast> </template> <script>!function(){Poly mer({is:"url-param",properties:{default_value:{type:String},default_values:{type :Array},multi:{type:Boolean,value:!1},name:{type:String},valid:{type:Array},valu e:{type:String,value:"",notify:!0,observer:"_valueChanged"},_loaded:{type:Boolea n,value:!1}},observers:["_valueChanged(value.splices)"],ready:function(){this._l oaded=!0;var t=this._getURL();t&&this._isValid(t)?this.set("value",t):this.defau lt_value&&this._isValid(this.default_value)?this.set("value",this.default_value) :this.multi&&this.default_values&&this._isValid(this.default_values)?this.set("v alue",this.default_values):this._putURL()},_getURL:function(){var t=sk.query.toP aramSet(window.location.search.substring(1))[this.name];return t?this.multi?t:t. length>1?(this._error("Multiple values provided for "+this.name+" but only one a ccepted: "+t),null):t[0]:null},_putURL:function(){var t=sk.query.toParamSet(wind ow.location.search.substring(1));delete t[this.name],!this.value||Array.isArray( this.value)&&0==this.value.length||(this.multi?t[this.name]=this.value:t[this.na me]=[this.value]);var e=window.location.href.split("?")[0]+"?"+sk.query.fromPara mSet(t);window.history.replaceState("","",e)},_isValid:function(t){var e=functio n(t){if(this.valid){for(var e=0;e<this.valid.length;e++)if(t==this.valid[e])retu rn!0;return this._error("Invalid value for "+this.name+': "'+t+'". Must be one o f: '+this.valid),!1}return!0}.bind(this);if(!this.multi)return Array.isArray(t)& &this._error("Multiple values provided for "+this.name+" but only one accepted: "+t),e(t);if(!Array.isArray(t))return this._error("url-param-sk: Value is not an array: "+t),!1;for(var i=0;i<t.length;i++)if(!e(t[i]))return!1;return!0},_value Changed:function(){this._loaded&&this._putURL()},_error:function(t){console.log( "[ERROR] "+t),this.set("$.toast.text",t),this.$.toast.show()}})}()</script> </do m-module> <dom-module id="pageable-data" assetpath="/res/imp/common/"> <template > <style include="swarming-app-style"></style> <button on-tap="page" disabled$=" [[_noMore(_cursor)]]"> [[label]] </button> </template> <script> (function(){
7 var END = "END"; 7 var END = "END";
8 Polymer({ 8 Polymer({
9 is: 'pageable-data', 9 is: 'pageable-data',
10 10
(...skipping 97 matching lines...) Expand 10 before | Expand all | Expand 10 after
108 console.log("Reason for failure of request to " + this._url, reason); 108 console.log("Reason for failure of request to " + this._url, reason);
109 sk.errorMessage("Could not get next set of results. Try reloading the page?", 0); 109 sk.errorMessage("Could not get next set of results. Try reloading the page?", 0);
110 this.set("busy", false); 110 this.set("busy", false);
111 }.bind(this)); 111 }.bind(this));
112 }, 112 },
113 113
114 _noMore: function(cursor) { 114 _noMore: function(cursor) {
115 return cursor === END; 115 return cursor === END;
116 } 116 }
117 }); 117 });
118 })(); </script> </dom-module><script>Polymer({is:"iron-a11y-keys",behaviors:[P olymer.IronA11yKeysBehavior],properties:{target:{type:Object,observer:"_targetCh anged"},keys:{type:String,reflectToAttribute:!0,observer:"_keysChanged"}},attach ed:function(){this.target||(this.target=this.parentNode)},_targetChanged:functio n(e){this.keyEventTarget=e},_keysChanged:function(){this.removeOwnKeyBindings(), this.addOwnKeyBinding(this.keys,"_fireKeysPressed")},_fireKeysPressed:function(e ){this.fire("keys-pressed",e.detail,{})}})</script> <script>Polymer({is:"iron-se lector",behaviors:[Polymer.IronMultiSelectableBehavior]})</script> <script>Polym er.IronValidatableBehaviorMeta=null,Polymer.IronValidatableBehavior={properties: {validator:{type:String},invalid:{notify:!0,reflectToAttribute:!0,type:Boolean,v alue:!1},_validatorMeta:{type:Object},validatorType:{type:String,value:"validato r"},_validator:{type:Object,computed:"__computeValidator(validator)"}},observers :["_invalidChanged(invalid)"],registered:function(){Polymer.IronValidatableBehav iorMeta=new Polymer.IronMeta({type:"validator"})},_invalidChanged:function(){thi s.invalid?this.setAttribute("aria-invalid","true"):this.removeAttribute("aria-in valid")},hasValidator:function(){return null!=this._validator},validate:function (a){return this.invalid=!this._getValidity(a),!this.invalid},_getValidity:functi on(a){return!this.hasValidator()||this._validator.validate(a)},__computeValidato r:function(){return Polymer.IronValidatableBehaviorMeta&&Polymer.IronValidatable BehaviorMeta.byKey(this.validator)}}</script> <script>Polymer.IronFormElementBeh avior={properties:{name:{type:String},value:{notify:!0,type:String},required:{ty pe:Boolean,value:!1},_parentForm:{type:Object}},attached:function(){this.fire("i ron-form-element-register")},detached:function(){this._parentForm&&this._parentF orm.fire("iron-form-element-unregister",{target:this})}}</script> <script>Polyme r.IronCheckedElementBehaviorImpl={properties:{checked:{type:Boolean,value:!1,ref lectToAttribute:!0,notify:!0,observer:"_checkedChanged"},toggles:{type:Boolean,v alue:!0,reflectToAttribute:!0},value:{type:String,value:"on",observer:"_valueCha nged"}},observers:["_requiredChanged(required)"],created:function(){this._hasIro nCheckedElementBehavior=!0},_getValidity:function(e){return this.disabled||!this .required||this.checked},_requiredChanged:function(){this.required?this.setAttri bute("aria-required","true"):this.removeAttribute("aria-required")},_checkedChan ged:function(){this.active=this.checked,this.fire("iron-change")},_valueChanged: function(){void 0!==this.value&&null!==this.value||(this.value="on")}},Polymer.I ronCheckedElementBehavior=[Polymer.IronFormElementBehavior,Polymer.IronValidatab leBehavior,Polymer.IronCheckedElementBehaviorImpl]</script> <script>Polymer.Pape rCheckedElementBehaviorImpl={_checkedChanged:function(){Polymer.IronCheckedEleme ntBehaviorImpl._checkedChanged.call(this),this.hasRipple()&&(this.checked?this._ ripple.setAttribute("checked",""):this._ripple.removeAttribute("checked"))},_but tonStateChanged:function(){Polymer.PaperRippleBehavior._buttonStateChanged.call( this),this.disabled||this.isAttached&&(this.checked=this.active)}},Polymer.Paper CheckedElementBehavior=[Polymer.PaperInkyFocusBehavior,Polymer.IronCheckedElemen tBehavior,Polymer.PaperCheckedElementBehaviorImpl]</script> <dom-module id="pape r-checkbox" assetpath="/res/imp/bower_components/paper-checkbox/"> <template str ip-whitespace=""> <style>:host{display:inline-block;white-space:nowrap;cursor:po inter;--calculated-paper-checkbox-size:var(--paper-checkbox-size, 18px);--calcul ated-paper-checkbox-ink-size:var(--paper-checkbox-ink-size, -1px);@apply(--paper -font-common-base);line-height:0;-webkit-tap-highlight-color:transparent}:host([ hidden]){display:none!important}:host(:focus){outline:0}.hidden{display:none}#ch eckboxContainer{display:inline-block;position:relative;width:var(--calculated-pa per-checkbox-size);height:var(--calculated-paper-checkbox-size);min-width:var(-- calculated-paper-checkbox-size);margin:var(--paper-checkbox-margin,initial);vert ical-align:var(--paper-checkbox-vertical-align,middle);background-color:var(--pa per-checkbox-unchecked-background-color,transparent)}#ink{position:absolute;top: calc(0px - (var(--calculated-paper-checkbox-ink-size) - var(--calculated-paper-c heckbox-size))/ 2);left:calc(0px - (var(--calculated-paper-checkbox-ink-size) - var(--calculated-paper-checkbox-size))/ 2);width:var(--calculated-paper-checkbox -ink-size);height:var(--calculated-paper-checkbox-ink-size);color:var(--paper-ch eckbox-unchecked-ink-color,var(--primary-text-color));opacity:.6;pointer-events: none}:host-context([dir=rtl]) #ink{right:calc(0px - (var(--calculated-paper-chec kbox-ink-size) - var(--calculated-paper-checkbox-size))/ 2);left:auto}#ink[check ed]{color:var(--paper-checkbox-checked-ink-color,var(--primary-color))}#checkbox {position:relative;box-sizing:border-box;height:100%;border:solid 2px;border-col or:var(--paper-checkbox-unchecked-color,var(--primary-text-color));border-radius :2px;pointer-events:none;-webkit-transition:background-color 140ms,border-color 140ms;transition:background-color 140ms,border-color 140ms}#checkbox.checked #ch eckmark{-webkit-animation:checkmark-expand 140ms ease-out forwards;animation:che ckmark-expand 140ms ease-out forwards}@-webkit-keyframes checkmark-expand{0%{-we bkit-transform:scale(0,0) rotate(45deg)}100%{-webkit-transform:scale(1,1) rotate (45deg)}}@keyframes checkmark-expand{0%{transform:scale(0,0) rotate(45deg)}100%{ transform:scale(1,1) rotate(45deg)}}#checkbox.checked{background-color:var(--pap er-checkbox-checked-color,var(--primary-color));border-color:var(--paper-checkbo x-checked-color,var(--primary-color))}#checkmark{position:absolute;width:36%;hei ght:70%;border-style:solid;border-top:none;border-left:none;border-right-width:c alc(2/15 * var(--calculated-paper-checkbox-size));border-bottom-width:calc(2/15 * var(--calculated-paper-checkbox-size));border-color:var(--paper-checkbox-check mark-color,#fff);-webkit-transform-origin:97% 86%;transform-origin:97% 86%;box-s izing:content-box}:host-context([dir=rtl]) #checkmark{-webkit-transform-origin:5 0% 14%;transform-origin:50% 14%}#checkboxLabel{position:relative;display:inline- block;vertical-align:middle;padding-left:var(--paper-checkbox-label-spacing,8px) ;white-space:normal;line-height:normal;color:var(--paper-checkbox-label-color,va r(--primary-text-color));@apply(--paper-checkbox-label)}:host([checked]) #checkb oxLabel{color:var(--paper-checkbox-label-checked-color,var(--paper-checkbox-labe l-color,var(--primary-text-color)));@apply(--paper-checkbox-label-checked)}:host -context([dir=rtl]) #checkboxLabel{padding-right:var(--paper-checkbox-label-spac ing,8px);padding-left:0}#checkboxLabel[hidden]{display:none}:host([disabled]) #c heckbox{opacity:.5;border-color:var(--paper-checkbox-unchecked-color,var(--prima ry-text-color))}:host([disabled][checked]) #checkbox{background-color:var(--pape r-checkbox-unchecked-color,var(--primary-text-color));opacity:.5}:host([disabled ]) #checkboxLabel{opacity:.65}#checkbox.invalid:not(.checked){border-color:var(- -paper-checkbox-error-color,var(--error-color))}</style> <div id="checkboxContai ner"> <div id="checkbox" class$="[[_computeCheckboxClass(checked, invalid)]]"> < div id="checkmark" class$="[[_computeCheckmarkClass(checked)]]"></div> </div> </ div> <div id="checkboxLabel"><content></content></div> </template> <script>Polym er({is:"paper-checkbox",behaviors:[Polymer.PaperCheckedElementBehavior],hostAttr ibutes:{role:"checkbox","aria-checked":!1,tabindex:0},properties:{ariaActiveAttr ibute:{type:String,value:"aria-checked"}},attached:function(){var e=this.getComp utedStyleValue("--calculated-paper-checkbox-ink-size");if("-1px"===e){var t=pars eFloat(this.getComputedStyleValue("--calculated-paper-checkbox-size")),a=Math.fl oor(8/3*t);a%2!==t%2&&a++,this.customStyle["--paper-checkbox-ink-size"]=a+"px",t his.updateStyles()}},_computeCheckboxClass:function(e,t){var a="";return e&&(a+= "checked "),t&&(a+="invalid"),a},_computeCheckmarkClass:function(e){return e?"": "hidden"},_createRipple:function(){return this._rippleContainer=this.$.checkboxC ontainer,Polymer.PaperInkyFocusBehaviorImpl._createRipple.call(this)}})</script> </dom-module> <script>Polymer({is:"iron-input",extends:"input",behaviors:[Polym er.IronValidatableBehavior],properties:{bindValue:{observer:"_bindValueChanged", type:String},preventInvalidInput:{type:Boolean},allowedPattern:{type:String,obse rver:"_allowedPatternChanged"},_previousValidInput:{type:String,value:""},_patte rnAlreadyChecked:{type:Boolean,value:!1}},listeners:{input:"_onInput",keypress:" _onKeypress"},registered:function(){this._canDispatchEventOnDisabled()||(this._o rigDispatchEvent=this.dispatchEvent,this.dispatchEvent=this._dispatchEventFirefo xIE)},created:function(){Polymer.IronA11yAnnouncer.requestAvailability()},_canDi spatchEventOnDisabled:function(){var e=document.createElement("input"),t=!1;e.di sabled=!0,e.addEventListener("feature-check-dispatch-event",function(){t=!0});tr y{e.dispatchEvent(new Event("feature-check-dispatch-event"))}catch(e){}return t} ,_dispatchEventFirefoxIE:function(){var e=this.disabled;this.disabled=!1,this._o rigDispatchEvent.apply(this,arguments),this.disabled=e},get _patternRegExp(){var e;if(this.allowedPattern)e=new RegExp(this.allowedPattern);else switch(this.typ e){case"number":e=/[0-9.,e-]/}return e},ready:function(){this.bindValue=this.val ue},_bindValueChanged:function(){this.value!==this.bindValue&&(this.value=this.b indValue||0===this.bindValue||this.bindValue===!1?this.bindValue:""),this.fire(" bind-value-changed",{value:this.bindValue})},_allowedPatternChanged:function(){t his.preventInvalidInput=!!this.allowedPattern},_onInput:function(){if(this.preve ntInvalidInput&&!this._patternAlreadyChecked){var e=this._checkPatternValidity() ;e||(this._announceInvalidCharacter("Invalid string of characters not entered.") ,this.value=this._previousValidInput)}this.bindValue=this.value,this._previousVa lidInput=this.value,this._patternAlreadyChecked=!1},_isPrintable:function(e){var t=8==e.keyCode||9==e.keyCode||13==e.keyCode||27==e.keyCode,i=19==e.keyCode||20= =e.keyCode||45==e.keyCode||46==e.keyCode||144==e.keyCode||145==e.keyCode||e.keyC ode>32&&e.keyCode<41||e.keyCode>111&&e.keyCode<124;return!(t||0==e.charCode&&i)} ,_onKeypress:function(e){if(this.preventInvalidInput||"number"===this.type){var t=this._patternRegExp;if(t&&!(e.metaKey||e.ctrlKey||e.altKey)){this._patternAlre adyChecked=!0;var i=String.fromCharCode(e.charCode);this._isPrintable(e)&&!t.tes t(i)&&(e.preventDefault(),this._announceInvalidCharacter("Invalid character "+i+ " not entered."))}}},_checkPatternValidity:function(){var e=this._patternRegExp; if(!e)return!0;for(var t=0;t<this.value.length;t++)if(!e.test(this.value[t]))ret urn!1;return!0},validate:function(){var e=this.checkValidity();return e&&(this.r equired&&""===this.value?e=!1:this.hasValidator()&&(e=Polymer.IronValidatableBeh avior.validate.call(this,this.value))),this.invalid=!e,this.fire("iron-input-val idate"),e},_announceInvalidCharacter:function(e){this.fire("iron-announce",{text :e})}})</script> <script>Polymer.PaperInputHelper={},Polymer.PaperInputHelper.Ne xtLabelID=1,Polymer.PaperInputHelper.NextAddonID=1,Polymer.PaperInputBehaviorImp l={properties:{label:{type:String},value:{notify:!0,type:String},disabled:{type: Boolean,value:!1},invalid:{type:Boolean,value:!1,notify:!0},preventInvalidInput: {type:Boolean},allowedPattern:{type:String},type:{type:String},list:{type:String },pattern:{type:String},required:{type:Boolean,value:!1},errorMessage:{type:Stri ng},charCounter:{type:Boolean,value:!1},noLabelFloat:{type:Boolean,value:!1},alw aysFloatLabel:{type:Boolean,value:!1},autoValidate:{type:Boolean,value:!1},valid ator:{type:String},autocomplete:{type:String,value:"off"},autofocus:{type:Boolea n,observer:"_autofocusChanged"},inputmode:{type:String},minlength:{type:Number}, maxlength:{type:Number},min:{type:String},max:{type:String},step:{type:String},n ame:{type:String},placeholder:{type:String,value:""},readonly:{type:Boolean,valu e:!1},size:{type:Number},autocapitalize:{type:String,value:"none"},autocorrect:{ type:String,value:"off"},autosave:{type:String},results:{type:Number},accept:{ty pe:String},multiple:{type:Boolean},_ariaDescribedBy:{type:String,value:""},_aria LabelledBy:{type:String,value:""}},listeners:{"addon-attached":"_onAddonAttached "},keyBindings:{"shift+tab:keydown":"_onShiftTabDown"},hostAttributes:{tabindex: 0},get inputElement(){return this.$.input},get _focusableElement(){return this.i nputElement},registered:function(){this._typesThatHaveText=["date","datetime","d atetime-local","month","time","week","file"]},attached:function(){this._updateAr iaLabelledBy(),this.inputElement&&this._typesThatHaveText.indexOf(this.inputElem ent.type)!==-1&&(this.alwaysFloatLabel=!0)},_appendStringWithSpace:function(e,t) {return e=e?e+" "+t:t},_onAddonAttached:function(e){var t=e.path?e.path[0]:e.tar get;if(t.id)this._ariaDescribedBy=this._appendStringWithSpace(this._ariaDescribe dBy,t.id);else{var a="paper-input-add-on-"+Polymer.PaperInputHelper.NextAddonID+ +;t.id=a,this._ariaDescribedBy=this._appendStringWithSpace(this._ariaDescribedBy ,a)}},validate:function(){return this.inputElement.validate()},_focusBlurHandler :function(e){Polymer.IronControlState._focusBlurHandler.call(this,e),this.focuse d&&!this._shiftTabPressed&&this._focusableElement.focus()},_onShiftTabDown:funct ion(e){var t=this.getAttribute("tabindex");this._shiftTabPressed=!0,this.setAttr ibute("tabindex","-1"),this.async(function(){this.setAttribute("tabindex",t),thi s._shiftTabPressed=!1},1)},_handleAutoValidate:function(){this.autoValidate&&thi s.validate()},updateValueAndPreserveCaret:function(e){try{var t=this.inputElemen t.selectionStart;this.value=e,this.inputElement.selectionStart=t,this.inputEleme nt.selectionEnd=t}catch(t){this.value=e}},_computeAlwaysFloatLabel:function(e,t) {return t||e},_updateAriaLabelledBy:function(){var e=Polymer.dom(this.root).quer ySelector("label");if(!e)return void(this._ariaLabelledBy="");var t;e.id?t=e.id: (t="paper-input-label-"+Polymer.PaperInputHelper.NextLabelID++,e.id=t),this._ari aLabelledBy=t},_onChange:function(e){this.shadowRoot&&this.fire(e.type,{sourceEv ent:e},{node:this,bubbles:e.bubbles,cancelable:e.cancelable})},_autofocusChanged :function(){if(this.autofocus&&this._focusableElement){var e=document.activeElem ent,t=e instanceof HTMLElement,a=t&&e!==document.body&&e!==document.documentElem ent;a||this._focusableElement.focus()}}},Polymer.PaperInputBehavior=[Polymer.Iro nControlState,Polymer.IronA11yKeysBehavior,Polymer.PaperInputBehaviorImpl]</scri pt> <script>Polymer.PaperInputAddonBehavior={hostAttributes:{"add-on":""},attach ed:function(){this.fire("addon-attached")},update:function(t){}}</script> <dom-m odule id="paper-input-char-counter" assetpath="/res/imp/bower_components/paper-i nput/"> <template> <style>:host{display:inline-block;float:right;@apply(--paper- font-caption);@apply(--paper-input-char-counter)}:host([hidden]){display:none!im portant}:host-context([dir=rtl]){float:left}</style> <span>[[_charCounterStr]]</ span> </template> </dom-module> <script>Polymer({is:"paper-input-char-counter",b ehaviors:[Polymer.PaperInputAddonBehavior],properties:{_charCounterStr:{type:Str ing,value:"0"}},update:function(t){if(t.inputElement){t.value=t.value||"";var e= t.value.toString().length.toString();t.inputElement.hasAttribute("maxlength")&&( e+="/"+t.inputElement.getAttribute("maxlength")),this._charCounterStr=e}}})</scr ipt> <dom-module id="paper-input-container" assetpath="/res/imp/bower_components /paper-input/"> <template> <style>:host{display:block;padding:8px 0;@apply(--pap er-input-container)}:host([inline]){display:inline-block}:host([disabled]){point er-events:none;opacity:.33;@apply(--paper-input-container-disabled)}:host([hidde n]){display:none!important}.floated-label-placeholder{@apply(--paper-font-captio n)}.underline{position:relative}.focused-line{@apply(--layout-fit);background:va r(--paper-input-container-focus-color,--primary-color);height:2px;-webkit-transf orm-origin:center center;transform-origin:center center;-webkit-transform:scale3 d(0,1,1);transform:scale3d(0,1,1);@apply(--paper-input-container-underline-focus )}.underline.is-highlighted .focused-line{-webkit-transform:none;transform:none; -webkit-transition:-webkit-transform .25s;transition:transform .25s;@apply(--pap er-transition-easing)}.underline.is-invalid .focused-line{background:var(--paper -input-container-invalid-color,--error-color);-webkit-transform:none;transform:n one;-webkit-transition:-webkit-transform .25s;transition:transform .25s;@apply(- -paper-transition-easing)}.unfocused-line{@apply(--layout-fit);background:var(-- paper-input-container-color,--secondary-text-color);height:1px;@apply(--paper-in put-container-underline)}:host([disabled]) .unfocused-line{border-bottom:1px das hed;border-color:var(--paper-input-container-color,--secondary-text-color);backg round:0 0;@apply(--paper-input-container-underline-disabled)}.label-and-input-co ntainer{@apply(--layout-flex-auto);@apply(--layout-relative);width:100%;max-widt h:100%}.input-content{@apply(--layout-horizontal);@apply(--layout-center);positi on:relative}.input-content ::content .paper-input-label,.input-content ::content label{position:absolute;top:0;right:0;left:0;width:100%;font:inherit;color:var( --paper-input-container-color,--secondary-text-color);-webkit-transition:-webkit -transform .25s,width .25s;transition:transform .25s,width .25s;-webkit-transfor m-origin:left top;transform-origin:left top;@apply(--paper-font-common-nowrap);@ apply(--paper-font-subhead);@apply(--paper-input-container-label);@apply(--paper -transition-easing)}.input-content.label-is-floating ::content .paper-input-labe l,.input-content.label-is-floating ::content label{-webkit-transform:translateY( -75%) scale(.75);transform:translateY(-75%) scale(.75);width:133%;@apply(--paper -input-container-label-floating)}:host-context([dir=rtl]) .input-content.label-i s-floating ::content .paper-input-label,:host-context([dir=rtl]) .input-content. label-is-floating ::content label{width:100%;-webkit-transform-origin:right top; transform-origin:right top}.input-content.label-is-highlighted ::content .paper- input-label,.input-content.label-is-highlighted ::content label{color:var(--pape r-input-container-focus-color,--primary-color);@apply(--paper-input-container-la bel-focus)}.input-content.is-invalid ::content .paper-input-label,.input-content .is-invalid ::content label{color:var(--paper-input-container-invalid-color,--er ror-color)}.input-content.label-is-hidden ::content .paper-input-label,.input-co ntent.label-is-hidden ::content label{visibility:hidden}.input-content ::content .paper-input-input,.input-content ::content input,.input-content ::content iron -autogrow-textarea,.input-content ::content textarea{position:relative;outline:0 ;box-shadow:none;padding:0;width:100%;max-width:100%;background:0 0;border:none; color:var(--paper-input-container-input-color,--primary-text-color);-webkit-appe arance:none;text-align:inherit;vertical-align:bottom;@apply(--paper-font-subhead );@apply(--paper-input-container-input)}::content [prefix]{@apply(--paper-font-s ubhead);@apply(--paper-input-prefix);@apply(--layout-flex-none)}::content [suffi x]{@apply(--paper-font-subhead);@apply(--paper-input-suffix);@apply(--layout-fle x-none)}.input-content ::content input{min-width:0}.input-content ::content text area{resize:none}.add-on-content{position:relative}.add-on-content.is-invalid :: content *{color:var(--paper-input-container-invalid-color,--error-color)}.add-on -content.is-highlighted ::content *{color:var(--paper-input-container-focus-colo r,--primary-color)}</style> <template is="dom-if" if="[[!noLabelFloat]]"> <div c lass="floated-label-placeholder" aria-hidden="true">&nbsp;</div> </template> <di v class$="[[_computeInputContentClass(noLabelFloat,alwaysFloatLabel,focused,inva lid,_inputHasContent)]]"> <content select="[prefix]" id="prefix"></content> <div class="label-and-input-container" id="labelAndInputContainer"> <content select= ":not([add-on]):not([prefix]):not([suffix])"></content> </div> <content select=" [suffix]"></content> </div> <div class$="[[_computeUnderlineClass(focused,invali d)]]"> <div class="unfocused-line"></div> <div class="focused-line"></div> </div > <div class$="[[_computeAddOnContentClass(focused,invalid)]]"> <content id="add OnContent" select="[add-on]"></content> </div> </template> </dom-module> <script >Polymer({is:"paper-input-container",properties:{noLabelFloat:{type:Boolean,valu e:!1},alwaysFloatLabel:{type:Boolean,value:!1},attrForValue:{type:String,value:" bind-value"},autoValidate:{type:Boolean,value:!1},invalid:{observer:"_invalidCha nged",type:Boolean,value:!1},focused:{readOnly:!0,type:Boolean,value:!1,notify:! 0},_addons:{type:Array},_inputHasContent:{type:Boolean,value:!1},_inputSelector: {type:String,value:"input,textarea,.paper-input-input"},_boundOnFocus:{type:Func tion,value:function(){return this._onFocus.bind(this)}},_boundOnBlur:{type:Funct ion,value:function(){return this._onBlur.bind(this)}},_boundOnInput:{type:Functi on,value:function(){return this._onInput.bind(this)}},_boundValueChanged:{type:F unction,value:function(){return this._onValueChanged.bind(this)}}},listeners:{"a ddon-attached":"_onAddonAttached","iron-input-validate":"_onIronInputValidate"}, get _valueChangedEvent(){return this.attrForValue+"-changed"},get _propertyForVa lue(){return Polymer.CaseMap.dashToCamelCase(this.attrForValue)},get _inputEleme nt(){return Polymer.dom(this).querySelector(this._inputSelector)},get _inputElem entValue(){return this._inputElement[this._propertyForValue]||this._inputElement .value},ready:function(){this._addons||(this._addons=[]),this.addEventListener(" focus",this._boundOnFocus,!0),this.addEventListener("blur",this._boundOnBlur,!0) },attached:function(){this.attrForValue?this._inputElement.addEventListener(this ._valueChangedEvent,this._boundValueChanged):this.addEventListener("input",this. _onInput),""!=this._inputElementValue?this._handleValueAndAutoValidate(this._inp utElement):this._handleValue(this._inputElement)},_onAddonAttached:function(t){t his._addons||(this._addons=[]);var n=t.target;this._addons.indexOf(n)===-1&&(thi s._addons.push(n),this.isAttached&&this._handleValue(this._inputElement))},_onFo cus:function(){this._setFocused(!0)},_onBlur:function(){this._setFocused(!1),thi s._handleValueAndAutoValidate(this._inputElement)},_onInput:function(t){this._ha ndleValueAndAutoValidate(t.target)},_onValueChanged:function(t){this._handleValu eAndAutoValidate(t.target)},_handleValue:function(t){var n=this._inputElementVal ue;n||0===n||"number"===t.type&&!t.checkValidity()?this._inputHasContent=!0:this ._inputHasContent=!1,this.updateAddons({inputElement:t,value:n,invalid:this.inva lid})},_handleValueAndAutoValidate:function(t){if(this.autoValidate){var n;n=t.v alidate?t.validate(this._inputElementValue):t.checkValidity(),this.invalid=!n}th is._handleValue(t)},_onIronInputValidate:function(t){this.invalid=this._inputEle ment.invalid},_invalidChanged:function(){this._addons&&this.updateAddons({invali d:this.invalid})},updateAddons:function(t){for(var n,e=0;n=this._addons[e];e++)n .update(t)},_computeInputContentClass:function(t,n,e,i,a){var u="input-content"; if(t)a&&(u+=" label-is-hidden");else{var o=this.querySelector("label");n||a?(u+= " label-is-floating",this.$.labelAndInputContainer.style.position="static",i?u+= " is-invalid":e&&(u+=" label-is-highlighted")):o&&(this.$.labelAndInputContainer .style.position="relative")}return u},_computeUnderlineClass:function(t,n){var e ="underline";return n?e+=" is-invalid":t&&(e+=" is-highlighted"),e},_computeAddO nContentClass:function(t,n){var e="add-on-content";return n?e+=" is-invalid":t&& (e+=" is-highlighted"),e}})</script> <dom-module id="paper-input-error" assetpat h="/res/imp/bower_components/paper-input/"> <template> <style>:host{display:inli ne-block;visibility:hidden;color:var(--paper-input-container-invalid-color,--err or-color);@apply(--paper-font-caption);@apply(--paper-input-error);position:abso lute;left:0;right:0}:host([invalid]){visibility:visible};</style> <content></con tent> </template> </dom-module> <script>Polymer({is:"paper-input-error",behavior s:[Polymer.PaperInputAddonBehavior],properties:{invalid:{readOnly:!0,reflectToAt tribute:!0,type:Boolean}},update:function(e){this._setInvalid(e.invalid)}})</scr ipt> <dom-module id="paper-input" assetpath="/res/imp/bower_components/paper-inp ut/"> <template> <style>:host{display:block}:host([focused]){outline:0}:host([hi dden]){display:none!important}input::-webkit-input-placeholder{color:var(--paper -input-container-color,--secondary-text-color)}input:-moz-placeholder{color:var( --paper-input-container-color,--secondary-text-color)}input::-moz-placeholder{co lor:var(--paper-input-container-color,--secondary-text-color)}input:-ms-input-pl aceholder{color:var(--paper-input-container-color,--secondary-text-color)}label{ pointer-events:none}</style> <paper-input-container no-label-float="[[noLabelFlo at]]" always-float-label="[[_computeAlwaysFloatLabel(alwaysFloatLabel,placeholde r)]]" auto-validate$="[[autoValidate]]" disabled$="[[disabled]]" invalid="[[inva lid]]"> <content select="[prefix]"></content> <label hidden$="[[!label]]" aria-h idden="true" for="input">[[label]]</label> <input is="iron-input" id="input" ari a-labelledby$="[[_ariaLabelledBy]]" aria-describedby$="[[_ariaDescribedBy]]" dis abled$="[[disabled]]" title$="[[title]]" bind-value="{{value}}" invalid="{{inval id}}" prevent-invalid-input="[[preventInvalidInput]]" allowed-pattern="[[allowed Pattern]]" validator="[[validator]]" type$="[[type]]" pattern$="[[pattern]]" req uired$="[[required]]" autocomplete$="[[autocomplete]]" autofocus$="[[autofocus]] " inputmode$="[[inputmode]]" minlength$="[[minlength]]" maxlength$="[[maxlength] ]" min$="[[min]]" max$="[[max]]" step$="[[step]]" name$="[[name]]" placeholder$= "[[placeholder]]" readonly$="[[readonly]]" list$="[[list]]" size$="[[size]]" aut ocapitalize$="[[autocapitalize]]" autocorrect$="[[autocorrect]]" on-change="_onC hange" tabindex$="[[tabindex]]" autosave$="[[autosave]]" results$="[[results]]" accept$="[[accept]]" multiple$="[[multiple]]"> <content select="[suffix]"></cont ent> <template is="dom-if" if="[[errorMessage]]"> <paper-input-error aria-live=" assertive">[[errorMessage]]</paper-input-error> </template> <template is="dom-if " if="[[charCounter]]"> <paper-input-char-counter></paper-input-char-counter> </ template> </paper-input-container> </template> </dom-module> <script>Polymer({is :"paper-input",behaviors:[Polymer.IronFormElementBehavior,Polymer.PaperInputBeha vior]})</script> <dom-module id="query-column-filter-style" assetpath="/res/imp/ common/"> <template> <style>:host{display:block;font-family:sans-serif}#filter{m argin:0 5px}.container{min-height:120px;width:100%}.item{border-bottom:1px solid #EEE;max-width:250px;min-height:1em;min-width:100px;padding:.1em .2em;line-heig ht:1.5em}.header{height:2em;padding:.25em;line-height:2em}.selector{border:1px s olid #000;margin:0 5px;max-height:200px;min-height:130px;min-width:275px;overflo w-y:auto}.pointable,.selectable{cursor:pointer}.selectable:hover{background-colo r:#A6CEE3}.iron-selected{background-color:#1F78B4;color:#fff}.icons{cursor:point er;height:20px;margin:2px;width:20px;flex-shrink:0}.side-by-side{display:inline- block;vertical-align:top}.bold{font-weight:700}paper-checkbox{max-height:2em;mar gin:2px;--paper-checkbox-checked-color:black;--paper-checkbox-checked-ink-color: black;--paper-checkbox-unchecked-color:black;--paper-checkbox-unchecked-ink-colo r:black;--paper-checkbox-label-color:black}</style> </template> </dom-module> <s cript>!function(){var r=":",i=function(r,i){if(!i)return{idx:0,part:""};if(!r)re turn{idx:-1};i=i.trim().toLocaleLowerCase(),r=r.toLocaleLowerCase();for(var t=i. split(" "),e=0;e<t.length;e++){var n=r.indexOf(t[e]);if(n!==-1)return{idx:n,part :t[e]}}return{idx:-1}},t=function(i,t,e){if(!t)return!0;if(!i)return!1;if(i=i.to LocaleLowerCase(),t=t.trim().toLocaleLowerCase(),t.indexOf(" ")!==-1||t.indexOf( ":")===-1)return!1;var n=t.split(r,1)[0],a=t.substring(n.length+r.length);return e?i===n:i.startsWith(a)};SwarmingBehaviors.QueryColumnFilter=[SwarmingBehaviors .CommonBehavior,{properties:{dimensions:{type:Array},primary_map:{type:Object},p rimary_arr:{type:Array},special_columns:{type:Array,value:function(){return[]}}, filter:{type:Function,computed:"_makeFilter(_filters.*)",notify:!0},FILTER_SEP:{ type:String,value:r},_filters:{type:Array},_limit:{type:Number},_primaryItems:{t ype:Array,computed:"_primary(_query, primary_map, primary_arr, columns.*)"},_pri marySelected:{type:String,value:""},_query:{type:String},_secondaryItems:{type:A rray,computed:"_secondary(_primarySelected, _query, primary_map)"}},_addFilter:f unction(r){var i=r.model.item;if(!this._cantAddFilter(this._primarySelected,i)){ var t=this._primarySelected+this.FILTER_SEP+i;this.push("_filters",t)}},_removeF ilter:function(r){var i=r.model.fil;if(!this._cantRemoveFilter(i)){var t=this._f ilters.indexOf(i);t!==-1&&this.splice("_filters",t,1)}},_cantAddFilter:function( r,i){if(!r||!i)return!0;var t=r+this.FILTER_SEP+i;return this._filters.indexOf(t )!==-1},_cantRemoveFilter:function(r){return!r||this._filters.indexOf(r)===-1},_ makeFilter:function(){var r={};this._filters.forEach(function(i){var t=i.indexOf (this.FILTER_SEP),e=i.slice(0,t),n=i.slice(t+this.FILTER_SEP.length),a=r[e]||[]; a.push(n),r[e]=a}.bind(this));var i=this._filterMap||{};return function(t){var e =!0;for(primary in r){var n=r[primary],a=i[primary];a||(a=function(r,i){var t=th is._attribute(r,primary);return t.indexOf(i)!==-1}.bind(this)),a&&n.forEach(func tion(r){e=e&&a.bind(this)(t,r)}.bind(this))}return e}},_manuallyAddFilter:functi on(){var r=this._query.trim(),i=r.indexOf(this.FILTER_SEP);if(i===-1)return void sk.errorMessage('Invalid filter. Should be like "foo:bar"',5e3);var t=r.slice( 0,i),e=r.slice(i+this.FILTER_SEP.length);return swarming.alias.DIMENSIONS_WITH_A LIASES.indexOf(t)!==-1&&(e=swarming.alias.apply(e,t)),r=t+this.FILTER_SEP+e,this ._filters.indexOf(r)!==-1?void sk.errorMessage('Filter "'+r+'" is already active ',5e3):(this.push("_filters",r),void this.set("_query",""))},_toggleColumn:funct ion(r){var i=r.model.item;if(!this._cantToggleColumn(i)){if(this._columnState(i) ){var t=this.columns.indexOf(i);return void(t!==-1&&this.splice("columns",t,1))} this.push("columns",i)}},_cantToggleColumn:function(r){return!1},_columnState:fu nction(r){return!!r&&this.columns.indexOf(r)!==-1},_primary:function(r,e,n){var a=this.primary_arr.filter(function(n){if(t(n,r,!0))return!0;if(i(n,r).idx!==-1)r eturn!0;for(var a=e[n]||[],s=0;s<a.length;s++)if(i(a[s],r).idx!==-1)return!0;ret urn!1});return r&&a.length>0&&a.indexOf(this._primarySelected)===-1&&this.set("_ primarySelected",a[0]),a.sort(function(r,i){var t=this._columnState(r),e=this._c olumnState(i);if(t&&!e)return-1;if(e&&!t)return 1;if(t&&e){if(t=this.special_col umns.indexOf(r),e=this.special_columns.indexOf(i),t!==-1&&e===-1)return-1;if(t== =-1&&e!==-1)return 1;if(t!==-1&&e!==-1)return t-e}return naturalSort(r,i)}.bind( this)),a},_secondary:function(r,e,n){if(requestAnimationFrame(function(){this.$. secondaryList.render()}.bind(this)),!r)return[];var a=n[r]||[];return t(r,e,!0)? a.sort(function(r,i){var n=t(r,e,!1),a=t(i,e,!1);return n===a?naturalSort(r,i):a -n}):i(r,e).idx!==-1?a.sort(function(r,t){var n=i(r,e).idx!==-1,a=i(t,e).idx!==- 1;return n===a?naturalSort(r,t):a-n}):a.filter(function(r){return i(r,e).idx!==- 1})},_beforeBold:function(r,t){var e=i(r,t.replace(":"," "));return e.idx===-1?r :r.substring(0,e.idx)},_bold:function(r,t){var e=i(r,t.replace(":"," "));return e.idx===-1?"":r.substring(e.idx,e.idx+e.part.length)},_afterBold:function(r,t){v ar e=i(r,t.replace(":"," "));return e.idx===-1?"":r.substring(e.idx+e.part.lengt h)},_commonFilters:function(){return{android_devices:function(r,i){var t=this._a ttribute(r,"android_devices","0");return t.indexOf(i)!==-1},device_os:function(r ,i){var t=this._attribute(r,"device_os","none");return t.indexOf(i)!==-1},device _type:function(r,i){var t=this._attribute(r,"device_type","none");return t.index Of(swarming.alias.unapply(i))!==-1},gpu:function(r,i){var t=this._attribute(r,"g pu","none");return t.indexOf(swarming.alias.unapply(i))!==-1}}}}]}()</script> <s cript>!function(){var e="unknown";SwarmingBehaviors.BotListBehavior=[SwarmingBeh aviors.CommonBehavior,{properties:{BOT_PROPERTIES:{type:Array,value:function(){r eturn["disk_space","uptime","running_time","task","status","version","external_i p","internal_ip","mp_lease_id","mp_lease_expires","last_seen","first_seen","batt ery_level","battery_voltage","battery_temperature","battery_status","battery_hea lth","bot_temperature","device_temperature"]}}},_attribute:function(t,i,n){retur n n=n||e,this._dimension(t,i)||this._state(t,i)||[n]},_devices:function(e){retur n e.state.devices||[]},_deviceType:function(e){return e.device_type.toLowerCase( )},_dimension:function(e,t){if(e&&e.dimensions&&t)for(var i=0;i<e.dimensions.len gth;i++)if(e.dimensions[i].key===t)return e.dimensions[i].value},_state:function (e,t){if(e&&e.state&&e.state[t]){var i=e.state[t];return Array.isArray(i)?i:[i]} },_taskId:function(e){return e&&e.task_id?e.task_id:"idle"}}]}()</script> <dom-m odule id="bot-filters" assetpath="/res/imp/botlist/"> <template> <style is="cust om-style" include="iron-flex iron-flex-alignment iron-positioning query-column-f ilter-style swarming-app-style"></style> <url-param name="f" value="{{_filters}} " default_values="[]" multi=""> </url-param> <url-param name="c" value="{{column s}}" default_values="[&quot;id&quot;,&quot;os&quot;,&quot;task&quot;,&quot;statu s&quot;]" multi=""> </url-param> <url-param name="q" value="{{_query}}" default_ value=""> </url-param> <url-param name="v" value="{{verbose}}"> </url-param> <ur l-param name="l" default_value="100" value="{{_limit}}"> </url-param> <div class ="container horizontal layout"> <div class="narrow-down-selector"> <div> <iron-a 11y-keys target="[[_filter_input]]" keys="enter" on-keys-pressed="_manuallyAddFi lter"></iron-a11y-keys> <paper-input id="filter" label="Search columns and filte rs or supply a filter and press enter" placeholder="gpu nvidia pool:Chrome" valu e="{{_query::input}}"> </paper-input> </div> <div class="selector side-by-side" title="This shows all bot dimension names and other interesting bot properties. Mark the check box to add as a column. Select the row to see filter options."> < iron-selector attr-for-selected="label" selected="{{_primarySelected}}"> <templa te is="dom-repeat" items="[[_primaryItems]]" as="item"> <div class="selectable i tem horizontal layout" label="[[item]]"> <span>[[_beforeBold(item,_query)]]<span class="bold">[[_bold(item,_query)]]</span>[[_afterBold(item,_query)]]</span> <s pan class="flex"></span> <paper-checkbox noink="" disabled$="[[_cantToggleColumn (item)]]" checked="[[_columnState(item,columns.*)]]" on-change="_toggleColumn"> </paper-checkbox> </div> </template> </iron-selector> </div> <div class="selecto r side-by-side" title="These are all options (if any) that the bot list can be f iltered on."> <template is="dom-repeat" id="secondaryList" items="[[_secondaryIt ems]]" as="item"> <div class="item horizontal layout" label="[[item]]"> <span>[[ _beforeBold(item,_query)]]<span class="bold">[[_bold(item,_query)]]</span>[[_aft erBold(item,_query)]]</span> <span class="flex"></span> <iron-icon class="icons" icon="icons:arrow-forward" hidden="[[_cantAddFilter(_primarySelected,item,_filt ers.*)]]" on-tap="_addFilter"> </iron-icon> </div> </template> <template is="dom -if" if="[[_showDimensionMessage(_primarySelected,_secondaryItems.length)]]"> <d iv class="item"> Only dimensions can be used for filtering. <i>"[[_primarySelect ed]]"</i> is a part of the bot's state and is informational only. </div> </templ ate> </div> <div class="selector side-by-side" title="These filters are AND'd to gether and applied to all bots in 118 })(); </script> </dom-module><script>Polymer({is:"iron-a11y-keys",behaviors:[P olymer.IronA11yKeysBehavior],properties:{target:{type:Object,observer:"_targetCh anged"},keys:{type:String,reflectToAttribute:!0,observer:"_keysChanged"}},attach ed:function(){this.target||(this.target=this.parentNode)},_targetChanged:functio n(e){this.keyEventTarget=e},_keysChanged:function(){this.removeOwnKeyBindings(), this.addOwnKeyBinding(this.keys,"_fireKeysPressed")},_fireKeysPressed:function(e ){this.fire("keys-pressed",e.detail,{})}})</script> <script>Polymer({is:"iron-se lector",behaviors:[Polymer.IronMultiSelectableBehavior]})</script> <script>Polym er.IronValidatableBehaviorMeta=null,Polymer.IronValidatableBehavior={properties: {validator:{type:String},invalid:{notify:!0,reflectToAttribute:!0,type:Boolean,v alue:!1},_validatorMeta:{type:Object},validatorType:{type:String,value:"validato r"},_validator:{type:Object,computed:"__computeValidator(validator)"}},observers :["_invalidChanged(invalid)"],registered:function(){Polymer.IronValidatableBehav iorMeta=new Polymer.IronMeta({type:"validator"})},_invalidChanged:function(){thi s.invalid?this.setAttribute("aria-invalid","true"):this.removeAttribute("aria-in valid")},hasValidator:function(){return null!=this._validator},validate:function (a){return this.invalid=!this._getValidity(a),!this.invalid},_getValidity:functi on(a){return!this.hasValidator()||this._validator.validate(a)},__computeValidato r:function(){return Polymer.IronValidatableBehaviorMeta&&Polymer.IronValidatable BehaviorMeta.byKey(this.validator)}}</script> <script>Polymer.IronFormElementBeh avior={properties:{name:{type:String},value:{notify:!0,type:String},required:{ty pe:Boolean,value:!1},_parentForm:{type:Object}},attached:function(){this.fire("i ron-form-element-register")},detached:function(){this._parentForm&&this._parentF orm.fire("iron-form-element-unregister",{target:this})}}</script> <script>Polyme r.IronCheckedElementBehaviorImpl={properties:{checked:{type:Boolean,value:!1,ref lectToAttribute:!0,notify:!0,observer:"_checkedChanged"},toggles:{type:Boolean,v alue:!0,reflectToAttribute:!0},value:{type:String,value:"on",observer:"_valueCha nged"}},observers:["_requiredChanged(required)"],created:function(){this._hasIro nCheckedElementBehavior=!0},_getValidity:function(e){return this.disabled||!this .required||this.checked},_requiredChanged:function(){this.required?this.setAttri bute("aria-required","true"):this.removeAttribute("aria-required")},_checkedChan ged:function(){this.active=this.checked,this.fire("iron-change")},_valueChanged: function(){void 0!==this.value&&null!==this.value||(this.value="on")}},Polymer.I ronCheckedElementBehavior=[Polymer.IronFormElementBehavior,Polymer.IronValidatab leBehavior,Polymer.IronCheckedElementBehaviorImpl]</script> <script>Polymer.Pape rCheckedElementBehaviorImpl={_checkedChanged:function(){Polymer.IronCheckedEleme ntBehaviorImpl._checkedChanged.call(this),this.hasRipple()&&(this.checked?this._ ripple.setAttribute("checked",""):this._ripple.removeAttribute("checked"))},_but tonStateChanged:function(){Polymer.PaperRippleBehavior._buttonStateChanged.call( this),this.disabled||this.isAttached&&(this.checked=this.active)}},Polymer.Paper CheckedElementBehavior=[Polymer.PaperInkyFocusBehavior,Polymer.IronCheckedElemen tBehavior,Polymer.PaperCheckedElementBehaviorImpl]</script> <dom-module id="pape r-checkbox" assetpath="/res/imp/bower_components/paper-checkbox/"> <template str ip-whitespace=""> <style>:host{display:inline-block;white-space:nowrap;cursor:po inter;--calculated-paper-checkbox-size:var(--paper-checkbox-size, 18px);--calcul ated-paper-checkbox-ink-size:var(--paper-checkbox-ink-size, -1px);@apply(--paper -font-common-base);line-height:0;-webkit-tap-highlight-color:transparent}:host([ hidden]){display:none!important}:host(:focus){outline:0}.hidden{display:none}#ch eckboxContainer{display:inline-block;position:relative;width:var(--calculated-pa per-checkbox-size);height:var(--calculated-paper-checkbox-size);min-width:var(-- calculated-paper-checkbox-size);margin:var(--paper-checkbox-margin,initial);vert ical-align:var(--paper-checkbox-vertical-align,middle);background-color:var(--pa per-checkbox-unchecked-background-color,transparent)}#ink{position:absolute;top: calc(0px - (var(--calculated-paper-checkbox-ink-size) - var(--calculated-paper-c heckbox-size))/ 2);left:calc(0px - (var(--calculated-paper-checkbox-ink-size) - var(--calculated-paper-checkbox-size))/ 2);width:var(--calculated-paper-checkbox -ink-size);height:var(--calculated-paper-checkbox-ink-size);color:var(--paper-ch eckbox-unchecked-ink-color,var(--primary-text-color));opacity:.6;pointer-events: none}:host-context([dir=rtl]) #ink{right:calc(0px - (var(--calculated-paper-chec kbox-ink-size) - var(--calculated-paper-checkbox-size))/ 2);left:auto}#ink[check ed]{color:var(--paper-checkbox-checked-ink-color,var(--primary-color))}#checkbox {position:relative;box-sizing:border-box;height:100%;border:solid 2px;border-col or:var(--paper-checkbox-unchecked-color,var(--primary-text-color));border-radius :2px;pointer-events:none;-webkit-transition:background-color 140ms,border-color 140ms;transition:background-color 140ms,border-color 140ms}#checkbox.checked #ch eckmark{-webkit-animation:checkmark-expand 140ms ease-out forwards;animation:che ckmark-expand 140ms ease-out forwards}@-webkit-keyframes checkmark-expand{0%{-we bkit-transform:scale(0,0) rotate(45deg)}100%{-webkit-transform:scale(1,1) rotate (45deg)}}@keyframes checkmark-expand{0%{transform:scale(0,0) rotate(45deg)}100%{ transform:scale(1,1) rotate(45deg)}}#checkbox.checked{background-color:var(--pap er-checkbox-checked-color,var(--primary-color));border-color:var(--paper-checkbo x-checked-color,var(--primary-color))}#checkmark{position:absolute;width:36%;hei ght:70%;border-style:solid;border-top:none;border-left:none;border-right-width:c alc(2/15 * var(--calculated-paper-checkbox-size));border-bottom-width:calc(2/15 * var(--calculated-paper-checkbox-size));border-color:var(--paper-checkbox-check mark-color,#fff);-webkit-transform-origin:97% 86%;transform-origin:97% 86%;box-s izing:content-box}:host-context([dir=rtl]) #checkmark{-webkit-transform-origin:5 0% 14%;transform-origin:50% 14%}#checkboxLabel{position:relative;display:inline- block;vertical-align:middle;padding-left:var(--paper-checkbox-label-spacing,8px) ;white-space:normal;line-height:normal;color:var(--paper-checkbox-label-color,va r(--primary-text-color));@apply(--paper-checkbox-label)}:host([checked]) #checkb oxLabel{color:var(--paper-checkbox-label-checked-color,var(--paper-checkbox-labe l-color,var(--primary-text-color)));@apply(--paper-checkbox-label-checked)}:host -context([dir=rtl]) #checkboxLabel{padding-right:var(--paper-checkbox-label-spac ing,8px);padding-left:0}#checkboxLabel[hidden]{display:none}:host([disabled]) #c heckbox{opacity:.5;border-color:var(--paper-checkbox-unchecked-color,var(--prima ry-text-color))}:host([disabled][checked]) #checkbox{background-color:var(--pape r-checkbox-unchecked-color,var(--primary-text-color));opacity:.5}:host([disabled ]) #checkboxLabel{opacity:.65}#checkbox.invalid:not(.checked){border-color:var(- -paper-checkbox-error-color,var(--error-color))}</style> <div id="checkboxContai ner"> <div id="checkbox" class$="[[_computeCheckboxClass(checked, invalid)]]"> < div id="checkmark" class$="[[_computeCheckmarkClass(checked)]]"></div> </div> </ div> <div id="checkboxLabel"><content></content></div> </template> <script>Polym er({is:"paper-checkbox",behaviors:[Polymer.PaperCheckedElementBehavior],hostAttr ibutes:{role:"checkbox","aria-checked":!1,tabindex:0},properties:{ariaActiveAttr ibute:{type:String,value:"aria-checked"}},attached:function(){var e=this.getComp utedStyleValue("--calculated-paper-checkbox-ink-size");if("-1px"===e){var t=pars eFloat(this.getComputedStyleValue("--calculated-paper-checkbox-size")),a=Math.fl oor(8/3*t);a%2!==t%2&&a++,this.customStyle["--paper-checkbox-ink-size"]=a+"px",t his.updateStyles()}},_computeCheckboxClass:function(e,t){var a="";return e&&(a+= "checked "),t&&(a+="invalid"),a},_computeCheckmarkClass:function(e){return e?"": "hidden"},_createRipple:function(){return this._rippleContainer=this.$.checkboxC ontainer,Polymer.PaperInkyFocusBehaviorImpl._createRipple.call(this)}})</script> </dom-module> <script>Polymer({is:"iron-input",extends:"input",behaviors:[Polym er.IronValidatableBehavior],properties:{bindValue:{observer:"_bindValueChanged", type:String},preventInvalidInput:{type:Boolean},allowedPattern:{type:String,obse rver:"_allowedPatternChanged"},_previousValidInput:{type:String,value:""},_patte rnAlreadyChecked:{type:Boolean,value:!1}},listeners:{input:"_onInput",keypress:" _onKeypress"},registered:function(){this._canDispatchEventOnDisabled()||(this._o rigDispatchEvent=this.dispatchEvent,this.dispatchEvent=this._dispatchEventFirefo xIE)},created:function(){Polymer.IronA11yAnnouncer.requestAvailability()},_canDi spatchEventOnDisabled:function(){var e=document.createElement("input"),t=!1;e.di sabled=!0,e.addEventListener("feature-check-dispatch-event",function(){t=!0});tr y{e.dispatchEvent(new Event("feature-check-dispatch-event"))}catch(e){}return t} ,_dispatchEventFirefoxIE:function(){var e=this.disabled;this.disabled=!1,this._o rigDispatchEvent.apply(this,arguments),this.disabled=e},get _patternRegExp(){var e;if(this.allowedPattern)e=new RegExp(this.allowedPattern);else switch(this.typ e){case"number":e=/[0-9.,e-]/}return e},ready:function(){this.bindValue=this.val ue},_bindValueChanged:function(){this.value!==this.bindValue&&(this.value=this.b indValue||0===this.bindValue||this.bindValue===!1?this.bindValue:""),this.fire(" bind-value-changed",{value:this.bindValue})},_allowedPatternChanged:function(){t his.preventInvalidInput=!!this.allowedPattern},_onInput:function(){if(this.preve ntInvalidInput&&!this._patternAlreadyChecked){var e=this._checkPatternValidity() ;e||(this._announceInvalidCharacter("Invalid string of characters not entered.") ,this.value=this._previousValidInput)}this.bindValue=this.value,this._previousVa lidInput=this.value,this._patternAlreadyChecked=!1},_isPrintable:function(e){var t=8==e.keyCode||9==e.keyCode||13==e.keyCode||27==e.keyCode,i=19==e.keyCode||20= =e.keyCode||45==e.keyCode||46==e.keyCode||144==e.keyCode||145==e.keyCode||e.keyC ode>32&&e.keyCode<41||e.keyCode>111&&e.keyCode<124;return!(t||0==e.charCode&&i)} ,_onKeypress:function(e){if(this.preventInvalidInput||"number"===this.type){var t=this._patternRegExp;if(t&&!(e.metaKey||e.ctrlKey||e.altKey)){this._patternAlre adyChecked=!0;var i=String.fromCharCode(e.charCode);this._isPrintable(e)&&!t.tes t(i)&&(e.preventDefault(),this._announceInvalidCharacter("Invalid character "+i+ " not entered."))}}},_checkPatternValidity:function(){var e=this._patternRegExp; if(!e)return!0;for(var t=0;t<this.value.length;t++)if(!e.test(this.value[t]))ret urn!1;return!0},validate:function(){var e=this.checkValidity();return e&&(this.r equired&&""===this.value?e=!1:this.hasValidator()&&(e=Polymer.IronValidatableBeh avior.validate.call(this,this.value))),this.invalid=!e,this.fire("iron-input-val idate"),e},_announceInvalidCharacter:function(e){this.fire("iron-announce",{text :e})}})</script> <script>Polymer.PaperInputHelper={},Polymer.PaperInputHelper.Ne xtLabelID=1,Polymer.PaperInputHelper.NextAddonID=1,Polymer.PaperInputBehaviorImp l={properties:{label:{type:String},value:{notify:!0,type:String},disabled:{type: Boolean,value:!1},invalid:{type:Boolean,value:!1,notify:!0},preventInvalidInput: {type:Boolean},allowedPattern:{type:String},type:{type:String},list:{type:String },pattern:{type:String},required:{type:Boolean,value:!1},errorMessage:{type:Stri ng},charCounter:{type:Boolean,value:!1},noLabelFloat:{type:Boolean,value:!1},alw aysFloatLabel:{type:Boolean,value:!1},autoValidate:{type:Boolean,value:!1},valid ator:{type:String},autocomplete:{type:String,value:"off"},autofocus:{type:Boolea n,observer:"_autofocusChanged"},inputmode:{type:String},minlength:{type:Number}, maxlength:{type:Number},min:{type:String},max:{type:String},step:{type:String},n ame:{type:String},placeholder:{type:String,value:""},readonly:{type:Boolean,valu e:!1},size:{type:Number},autocapitalize:{type:String,value:"none"},autocorrect:{ type:String,value:"off"},autosave:{type:String},results:{type:Number},accept:{ty pe:String},multiple:{type:Boolean},_ariaDescribedBy:{type:String,value:""},_aria LabelledBy:{type:String,value:""}},listeners:{"addon-attached":"_onAddonAttached "},keyBindings:{"shift+tab:keydown":"_onShiftTabDown"},hostAttributes:{tabindex: 0},get inputElement(){return this.$.input},get _focusableElement(){return this.i nputElement},registered:function(){this._typesThatHaveText=["date","datetime","d atetime-local","month","time","week","file"]},attached:function(){this._updateAr iaLabelledBy(),this.inputElement&&this._typesThatHaveText.indexOf(this.inputElem ent.type)!==-1&&(this.alwaysFloatLabel=!0)},_appendStringWithSpace:function(e,t) {return e=e?e+" "+t:t},_onAddonAttached:function(e){var t=e.path?e.path[0]:e.tar get;if(t.id)this._ariaDescribedBy=this._appendStringWithSpace(this._ariaDescribe dBy,t.id);else{var a="paper-input-add-on-"+Polymer.PaperInputHelper.NextAddonID+ +;t.id=a,this._ariaDescribedBy=this._appendStringWithSpace(this._ariaDescribedBy ,a)}},validate:function(){return this.inputElement.validate()},_focusBlurHandler :function(e){Polymer.IronControlState._focusBlurHandler.call(this,e),this.focuse d&&!this._shiftTabPressed&&this._focusableElement.focus()},_onShiftTabDown:funct ion(e){var t=this.getAttribute("tabindex");this._shiftTabPressed=!0,this.setAttr ibute("tabindex","-1"),this.async(function(){this.setAttribute("tabindex",t),thi s._shiftTabPressed=!1},1)},_handleAutoValidate:function(){this.autoValidate&&thi s.validate()},updateValueAndPreserveCaret:function(e){try{var t=this.inputElemen t.selectionStart;this.value=e,this.inputElement.selectionStart=t,this.inputEleme nt.selectionEnd=t}catch(t){this.value=e}},_computeAlwaysFloatLabel:function(e,t) {return t||e},_updateAriaLabelledBy:function(){var e=Polymer.dom(this.root).quer ySelector("label");if(!e)return void(this._ariaLabelledBy="");var t;e.id?t=e.id: (t="paper-input-label-"+Polymer.PaperInputHelper.NextLabelID++,e.id=t),this._ari aLabelledBy=t},_onChange:function(e){this.shadowRoot&&this.fire(e.type,{sourceEv ent:e},{node:this,bubbles:e.bubbles,cancelable:e.cancelable})},_autofocusChanged :function(){if(this.autofocus&&this._focusableElement){var e=document.activeElem ent,t=e instanceof HTMLElement,a=t&&e!==document.body&&e!==document.documentElem ent;a||this._focusableElement.focus()}}},Polymer.PaperInputBehavior=[Polymer.Iro nControlState,Polymer.IronA11yKeysBehavior,Polymer.PaperInputBehaviorImpl]</scri pt> <script>Polymer.PaperInputAddonBehavior={hostAttributes:{"add-on":""},attach ed:function(){this.fire("addon-attached")},update:function(t){}}</script> <dom-m odule id="paper-input-char-counter" assetpath="/res/imp/bower_components/paper-i nput/"> <template> <style>:host{display:inline-block;float:right;@apply(--paper- font-caption);@apply(--paper-input-char-counter)}:host([hidden]){display:none!im portant}:host-context([dir=rtl]){float:left}</style> <span>[[_charCounterStr]]</ span> </template> </dom-module> <script>Polymer({is:"paper-input-char-counter",b ehaviors:[Polymer.PaperInputAddonBehavior],properties:{_charCounterStr:{type:Str ing,value:"0"}},update:function(t){if(t.inputElement){t.value=t.value||"";var e= t.value.toString().length.toString();t.inputElement.hasAttribute("maxlength")&&( e+="/"+t.inputElement.getAttribute("maxlength")),this._charCounterStr=e}}})</scr ipt> <dom-module id="paper-input-container" assetpath="/res/imp/bower_components /paper-input/"> <template> <style>:host{display:block;padding:8px 0;@apply(--pap er-input-container)}:host([inline]){display:inline-block}:host([disabled]){point er-events:none;opacity:.33;@apply(--paper-input-container-disabled)}:host([hidde n]){display:none!important}.floated-label-placeholder{@apply(--paper-font-captio n)}.underline{position:relative}.focused-line{@apply(--layout-fit);background:va r(--paper-input-container-focus-color,--primary-color);height:2px;-webkit-transf orm-origin:center center;transform-origin:center center;-webkit-transform:scale3 d(0,1,1);transform:scale3d(0,1,1);@apply(--paper-input-container-underline-focus )}.underline.is-highlighted .focused-line{-webkit-transform:none;transform:none; -webkit-transition:-webkit-transform .25s;transition:transform .25s;@apply(--pap er-transition-easing)}.underline.is-invalid .focused-line{background:var(--paper -input-container-invalid-color,--error-color);-webkit-transform:none;transform:n one;-webkit-transition:-webkit-transform .25s;transition:transform .25s;@apply(- -paper-transition-easing)}.unfocused-line{@apply(--layout-fit);background:var(-- paper-input-container-color,--secondary-text-color);height:1px;@apply(--paper-in put-container-underline)}:host([disabled]) .unfocused-line{border-bottom:1px das hed;border-color:var(--paper-input-container-color,--secondary-text-color);backg round:0 0;@apply(--paper-input-container-underline-disabled)}.label-and-input-co ntainer{@apply(--layout-flex-auto);@apply(--layout-relative);width:100%;max-widt h:100%}.input-content{@apply(--layout-horizontal);@apply(--layout-center);positi on:relative}.input-content ::content .paper-input-label,.input-content ::content label{position:absolute;top:0;right:0;left:0;width:100%;font:inherit;color:var( --paper-input-container-color,--secondary-text-color);-webkit-transition:-webkit -transform .25s,width .25s;transition:transform .25s,width .25s;-webkit-transfor m-origin:left top;transform-origin:left top;@apply(--paper-font-common-nowrap);@ apply(--paper-font-subhead);@apply(--paper-input-container-label);@apply(--paper -transition-easing)}.input-content.label-is-floating ::content .paper-input-labe l,.input-content.label-is-floating ::content label{-webkit-transform:translateY( -75%) scale(.75);transform:translateY(-75%) scale(.75);width:133%;@apply(--paper -input-container-label-floating)}:host-context([dir=rtl]) .input-content.label-i s-floating ::content .paper-input-label,:host-context([dir=rtl]) .input-content. label-is-floating ::content label{width:100%;-webkit-transform-origin:right top; transform-origin:right top}.input-content.label-is-highlighted ::content .paper- input-label,.input-content.label-is-highlighted ::content label{color:var(--pape r-input-container-focus-color,--primary-color);@apply(--paper-input-container-la bel-focus)}.input-content.is-invalid ::content .paper-input-label,.input-content .is-invalid ::content label{color:var(--paper-input-container-invalid-color,--er ror-color)}.input-content.label-is-hidden ::content .paper-input-label,.input-co ntent.label-is-hidden ::content label{visibility:hidden}.input-content ::content .paper-input-input,.input-content ::content input,.input-content ::content iron -autogrow-textarea,.input-content ::content textarea{position:relative;outline:0 ;box-shadow:none;padding:0;width:100%;max-width:100%;background:0 0;border:none; color:var(--paper-input-container-input-color,--primary-text-color);-webkit-appe arance:none;text-align:inherit;vertical-align:bottom;@apply(--paper-font-subhead );@apply(--paper-input-container-input)}::content [prefix]{@apply(--paper-font-s ubhead);@apply(--paper-input-prefix);@apply(--layout-flex-none)}::content [suffi x]{@apply(--paper-font-subhead);@apply(--paper-input-suffix);@apply(--layout-fle x-none)}.input-content ::content input{min-width:0}.input-content ::content text area{resize:none}.add-on-content{position:relative}.add-on-content.is-invalid :: content *{color:var(--paper-input-container-invalid-color,--error-color)}.add-on -content.is-highlighted ::content *{color:var(--paper-input-container-focus-colo r,--primary-color)}</style> <template is="dom-if" if="[[!noLabelFloat]]"> <div c lass="floated-label-placeholder" aria-hidden="true">&nbsp;</div> </template> <di v class$="[[_computeInputContentClass(noLabelFloat,alwaysFloatLabel,focused,inva lid,_inputHasContent)]]"> <content select="[prefix]" id="prefix"></content> <div class="label-and-input-container" id="labelAndInputContainer"> <content select= ":not([add-on]):not([prefix]):not([suffix])"></content> </div> <content select=" [suffix]"></content> </div> <div class$="[[_computeUnderlineClass(focused,invali d)]]"> <div class="unfocused-line"></div> <div class="focused-line"></div> </div > <div class$="[[_computeAddOnContentClass(focused,invalid)]]"> <content id="add OnContent" select="[add-on]"></content> </div> </template> </dom-module> <script >Polymer({is:"paper-input-container",properties:{noLabelFloat:{type:Boolean,valu e:!1},alwaysFloatLabel:{type:Boolean,value:!1},attrForValue:{type:String,value:" bind-value"},autoValidate:{type:Boolean,value:!1},invalid:{observer:"_invalidCha nged",type:Boolean,value:!1},focused:{readOnly:!0,type:Boolean,value:!1,notify:! 0},_addons:{type:Array},_inputHasContent:{type:Boolean,value:!1},_inputSelector: {type:String,value:"input,textarea,.paper-input-input"},_boundOnFocus:{type:Func tion,value:function(){return this._onFocus.bind(this)}},_boundOnBlur:{type:Funct ion,value:function(){return this._onBlur.bind(this)}},_boundOnInput:{type:Functi on,value:function(){return this._onInput.bind(this)}},_boundValueChanged:{type:F unction,value:function(){return this._onValueChanged.bind(this)}}},listeners:{"a ddon-attached":"_onAddonAttached","iron-input-validate":"_onIronInputValidate"}, get _valueChangedEvent(){return this.attrForValue+"-changed"},get _propertyForVa lue(){return Polymer.CaseMap.dashToCamelCase(this.attrForValue)},get _inputEleme nt(){return Polymer.dom(this).querySelector(this._inputSelector)},get _inputElem entValue(){return this._inputElement[this._propertyForValue]||this._inputElement .value},ready:function(){this._addons||(this._addons=[]),this.addEventListener(" focus",this._boundOnFocus,!0),this.addEventListener("blur",this._boundOnBlur,!0) },attached:function(){this.attrForValue?this._inputElement.addEventListener(this ._valueChangedEvent,this._boundValueChanged):this.addEventListener("input",this. _onInput),""!=this._inputElementValue?this._handleValueAndAutoValidate(this._inp utElement):this._handleValue(this._inputElement)},_onAddonAttached:function(t){t his._addons||(this._addons=[]);var n=t.target;this._addons.indexOf(n)===-1&&(thi s._addons.push(n),this.isAttached&&this._handleValue(this._inputElement))},_onFo cus:function(){this._setFocused(!0)},_onBlur:function(){this._setFocused(!1),thi s._handleValueAndAutoValidate(this._inputElement)},_onInput:function(t){this._ha ndleValueAndAutoValidate(t.target)},_onValueChanged:function(t){this._handleValu eAndAutoValidate(t.target)},_handleValue:function(t){var n=this._inputElementVal ue;n||0===n||"number"===t.type&&!t.checkValidity()?this._inputHasContent=!0:this ._inputHasContent=!1,this.updateAddons({inputElement:t,value:n,invalid:this.inva lid})},_handleValueAndAutoValidate:function(t){if(this.autoValidate){var n;n=t.v alidate?t.validate(this._inputElementValue):t.checkValidity(),this.invalid=!n}th is._handleValue(t)},_onIronInputValidate:function(t){this.invalid=this._inputEle ment.invalid},_invalidChanged:function(){this._addons&&this.updateAddons({invali d:this.invalid})},updateAddons:function(t){for(var n,e=0;n=this._addons[e];e++)n .update(t)},_computeInputContentClass:function(t,n,e,i,a){var u="input-content"; if(t)a&&(u+=" label-is-hidden");else{var o=this.querySelector("label");n||a?(u+= " label-is-floating",this.$.labelAndInputContainer.style.position="static",i?u+= " is-invalid":e&&(u+=" label-is-highlighted")):o&&(this.$.labelAndInputContainer .style.position="relative")}return u},_computeUnderlineClass:function(t,n){var e ="underline";return n?e+=" is-invalid":t&&(e+=" is-highlighted"),e},_computeAddO nContentClass:function(t,n){var e="add-on-content";return n?e+=" is-invalid":t&& (e+=" is-highlighted"),e}})</script> <dom-module id="paper-input-error" assetpat h="/res/imp/bower_components/paper-input/"> <template> <style>:host{display:inli ne-block;visibility:hidden;color:var(--paper-input-container-invalid-color,--err or-color);@apply(--paper-font-caption);@apply(--paper-input-error);position:abso lute;left:0;right:0}:host([invalid]){visibility:visible};</style> <content></con tent> </template> </dom-module> <script>Polymer({is:"paper-input-error",behavior s:[Polymer.PaperInputAddonBehavior],properties:{invalid:{readOnly:!0,reflectToAt tribute:!0,type:Boolean}},update:function(e){this._setInvalid(e.invalid)}})</scr ipt> <dom-module id="paper-input" assetpath="/res/imp/bower_components/paper-inp ut/"> <template> <style>:host{display:block}:host([focused]){outline:0}:host([hi dden]){display:none!important}input::-webkit-input-placeholder{color:var(--paper -input-container-color,--secondary-text-color)}input:-moz-placeholder{color:var( --paper-input-container-color,--secondary-text-color)}input::-moz-placeholder{co lor:var(--paper-input-container-color,--secondary-text-color)}input:-ms-input-pl aceholder{color:var(--paper-input-container-color,--secondary-text-color)}label{ pointer-events:none}</style> <paper-input-container no-label-float="[[noLabelFlo at]]" always-float-label="[[_computeAlwaysFloatLabel(alwaysFloatLabel,placeholde r)]]" auto-validate$="[[autoValidate]]" disabled$="[[disabled]]" invalid="[[inva lid]]"> <content select="[prefix]"></content> <label hidden$="[[!label]]" aria-h idden="true" for="input">[[label]]</label> <input is="iron-input" id="input" ari a-labelledby$="[[_ariaLabelledBy]]" aria-describedby$="[[_ariaDescribedBy]]" dis abled$="[[disabled]]" title$="[[title]]" bind-value="{{value}}" invalid="{{inval id}}" prevent-invalid-input="[[preventInvalidInput]]" allowed-pattern="[[allowed Pattern]]" validator="[[validator]]" type$="[[type]]" pattern$="[[pattern]]" req uired$="[[required]]" autocomplete$="[[autocomplete]]" autofocus$="[[autofocus]] " inputmode$="[[inputmode]]" minlength$="[[minlength]]" maxlength$="[[maxlength] ]" min$="[[min]]" max$="[[max]]" step$="[[step]]" name$="[[name]]" placeholder$= "[[placeholder]]" readonly$="[[readonly]]" list$="[[list]]" size$="[[size]]" aut ocapitalize$="[[autocapitalize]]" autocorrect$="[[autocorrect]]" on-change="_onC hange" tabindex$="[[tabindex]]" autosave$="[[autosave]]" results$="[[results]]" accept$="[[accept]]" multiple$="[[multiple]]"> <content select="[suffix]"></cont ent> <template is="dom-if" if="[[errorMessage]]"> <paper-input-error aria-live=" assertive">[[errorMessage]]</paper-input-error> </template> <template is="dom-if " if="[[charCounter]]"> <paper-input-char-counter></paper-input-char-counter> </ template> </paper-input-container> </template> </dom-module> <script>Polymer({is :"paper-input",behaviors:[Polymer.IronFormElementBehavior,Polymer.PaperInputBeha vior]})</script> <dom-module id="query-column-filter-style" assetpath="/res/imp/ common/"> <template> <style>:host{display:block;font-family:sans-serif}#filter{m argin:0 5px}.container{min-height:120px;width:100%}.item{border-bottom:1px solid #EEE;max-width:250px;min-height:1em;min-width:100px;padding:.1em .2em;line-heig ht:1.5em}.header{height:2em;padding:.25em;line-height:2em}.selector{border:1px s olid #000;margin:0 5px;max-height:200px;min-height:130px;min-width:275px;overflo w-y:auto}.pointable,.selectable{cursor:pointer}.selectable:hover{background-colo r:#A6CEE3}.iron-selected{background-color:#1F78B4;color:#fff}.icons{cursor:point er;height:20px;margin:2px;width:20px;flex-shrink:0}.side-by-side{display:inline- block;vertical-align:top}.bold{font-weight:700}paper-checkbox{max-height:2em;mar gin:2px;--paper-checkbox-checked-color:black;--paper-checkbox-checked-ink-color: black;--paper-checkbox-unchecked-color:black;--paper-checkbox-unchecked-ink-colo r:black;--paper-checkbox-label-color:black}</style> </template> </dom-module> <s cript>!function(){var r=":",i=function(r,i){if(!i)return{idx:0,part:""};if(!r)re turn{idx:-1};i=i.trim().toLocaleLowerCase(),r=r.toLocaleLowerCase();for(var t=i. split(" "),e=0;e<t.length;e++){var n=r.indexOf(t[e]);if(n!==-1)return{idx:n,part :t[e]}}return{idx:-1}},t=function(i,t,e){if(!t)return!0;if(!i)return!1;if(i=i.to LocaleLowerCase(),t=t.trim().toLocaleLowerCase(),t.indexOf(" ")!==-1||t.indexOf( ":")===-1)return!1;var n=t.split(r,1)[0],a=t.substring(n.length+r.length);return e?i===n:i.startsWith(a)};SwarmingBehaviors.QueryColumnFilter=[SwarmingBehaviors .CommonBehavior,{properties:{dimensions:{type:Array},primary_map:{type:Object},p rimary_arr:{type:Array},special_columns:{type:Array,value:function(){return[]}}, filter:{type:Function,computed:"_makeFilter(_filters.*)",notify:!0},FILTER_SEP:{ type:String,value:r},_filters:{type:Array},_limit:{type:Number},_primaryItems:{t ype:Array,computed:"_primary(_query, primary_map, primary_arr, columns.*)"},_pri marySelected:{type:String,value:""},_query:{type:String},_secondaryItems:{type:A rray,computed:"_secondary(_primarySelected, _query, primary_map)"}},_addFilter:f unction(r){var i=r.model.item;if(!this._cantAddFilter(this._primarySelected,i)){ var t=this._primarySelected+this.FILTER_SEP+i;this.push("_filters",t)}},_removeF ilter:function(r){var i=r.model.fil;if(!this._cantRemoveFilter(i)){var t=this._f ilters.indexOf(i);t!==-1&&this.splice("_filters",t,1)}},_cantAddFilter:function( r,i){if(!r||!i)return!0;var t=r+this.FILTER_SEP+i;return this._filters.indexOf(t )!==-1},_cantRemoveFilter:function(r){return!r||this._filters.indexOf(r)===-1},_ makeFilter:function(){var r={};this._filters.forEach(function(i){var t=i.indexOf (this.FILTER_SEP),e=i.slice(0,t),n=i.slice(t+this.FILTER_SEP.length),a=r[e]||[]; a.push(n),r[e]=a}.bind(this));var i=this._filterMap||{};return function(t){var e =!0;for(primary in r){var n=r[primary],a=i[primary];a||(a=function(r,i){var t=th is._attribute(r,primary);return t.indexOf(i)!==-1}.bind(this)),a&&n.forEach(func tion(r){e=e&&a.bind(this)(t,r)}.bind(this))}return e}},_manuallyAddFilter:functi on(){var r=this._query.trim(),i=r.indexOf(this.FILTER_SEP);if(i===-1)return void sk.errorMessage('Invalid filter. Should be like "foo:bar"',5e3);var t=r.slice( 0,i),e=r.slice(i+this.FILTER_SEP.length);return swarming.alias.DIMENSIONS_WITH_A LIASES.indexOf(t)!==-1&&(e=swarming.alias.apply(e,t)),r=t+this.FILTER_SEP+e,this ._filters.indexOf(r)!==-1?void sk.errorMessage('Filter "'+r+'" is already active ',5e3):(this.push("_filters",r),void this.set("_query",""))},_toggleColumn:funct ion(r){var i=r.model.item;if(!this._cantToggleColumn(i)){if(this._columnState(i) ){var t=this.columns.indexOf(i);return void(t!==-1&&this.splice("columns",t,1))} this.push("columns",i)}},_cantToggleColumn:function(r){return!1},_columnState:fu nction(r){return!!r&&this.columns.indexOf(r)!==-1},_primary:function(r,e,n){var a=this.primary_arr.filter(function(n){if(t(n,r,!0))return!0;if(i(n,r).idx!==-1)r eturn!0;for(var a=e[n]||[],s=0;s<a.length;s++)if(i(a[s],r).idx!==-1)return!0;ret urn!1});return r&&a.length>0&&a.indexOf(this._primarySelected)===-1&&this.set("_ primarySelected",a[0]),a.sort(function(r,i){var t=this._columnState(r),e=this._c olumnState(i);if(t&&!e)return-1;if(e&&!t)return 1;if(t&&e){if(t=this.special_col umns.indexOf(r),e=this.special_columns.indexOf(i),t!==-1&&e===-1)return-1;if(t== =-1&&e!==-1)return 1;if(t!==-1&&e!==-1)return t-e}return naturalSort(r,i)}.bind( this)),a},_secondary:function(r,e,n){if(requestAnimationFrame(function(){this.$. secondaryList.render()}.bind(this)),!r)return[];var a=n[r]||[];return t(r,e,!0)? a.sort(function(r,i){var n=t(r,e,!1),a=t(i,e,!1);return n===a?naturalSort(r,i):a -n}):i(r,e).idx!==-1?a.sort(function(r,t){var n=i(r,e).idx!==-1,a=i(t,e).idx!==- 1;return n===a?naturalSort(r,t):a-n}):a.filter(function(r){return i(r,e).idx!==- 1})},_beforeBold:function(r,t){var e=i(r,t.replace(":"," "));return e.idx===-1?r :r.substring(0,e.idx)},_bold:function(r,t){var e=i(r,t.replace(":"," "));return e.idx===-1?"":r.substring(e.idx,e.idx+e.part.length)},_afterBold:function(r,t){v ar e=i(r,t.replace(":"," "));return e.idx===-1?"":r.substring(e.idx+e.part.lengt h)},_commonFilters:function(){return{android_devices:function(r,i){var t=this._a ttribute(r,"android_devices","0");return t.indexOf(i)!==-1},device_os:function(r ,i){var t=this._attribute(r,"device_os","none");return t.indexOf(i)!==-1},device _type:function(r,i){var t=this._attribute(r,"device_type","none");return t.index Of(swarming.alias.unapply(i))!==-1},gpu:function(r,i){var t=this._attribute(r,"g pu","none");return t.indexOf(swarming.alias.unapply(i))!==-1}}}}]}()</script> <s cript>!function(){var e="unknown";SwarmingBehaviors.BotListBehavior=[SwarmingBeh aviors.CommonBehavior,{properties:{BOT_PROPERTIES:{type:Array,value:function(){r eturn["disk_space","uptime","running_time","task","status","version","external_i p","internal_ip","mp_lease_id","mp_lease_expires","last_seen","first_seen","batt ery_level","battery_voltage","battery_temperature","battery_status","battery_hea lth","bot_temperature","device_temperature","is_mp_bot"]}}},_attribute:function( t,i,n){return n=n||e,this._dimension(t,i)||this._state(t,i)||[n]},_devices:funct ion(e){return e.state.devices||[]},_deviceType:function(e){return e.device_type. toLowerCase()},_dimension:function(e,t){if(e&&e.dimensions&&t)for(var i=0;i<e.di mensions.length;i++)if(e.dimensions[i].key===t)return e.dimensions[i].value},_st ate:function(e,t){if(e&&e.state&&e.state[t]){var i=e.state[t];return Array.isArr ay(i)?i:[i]}},_taskId:function(e){return e&&e.task_id?e.task_id:"idle"}}]}()</sc ript> <dom-module id="bot-filters" assetpath="/res/imp/botlist/"> <template> <st yle is="custom-style" include="iron-flex iron-flex-alignment iron-positioning qu ery-column-filter-style swarming-app-style"></style> <url-param name="f" value=" {{_filters}}" default_values="[]" multi=""> </url-param> <url-param name="c" val ue="{{columns}}" default_values="[&quot;id&quot;,&quot;os&quot;,&quot;task&quot; ,&quot;status&quot;]" multi=""> </url-param> <url-param name="q" value="{{_query }}" default_value=""> </url-param> <url-param name="v" value="{{verbose}}"> </ur l-param> <url-param name="l" default_value="100" value="{{_limit}}"> </url-param > <div class="container horizontal layout"> <div class="narrow-down-selector"> < div> <iron-a11y-keys target="[[_filter_input]]" keys="enter" on-keys-pressed="_m anuallyAddFilter"></iron-a11y-keys> <paper-input id="filter" label="Search colum ns and filters or supply a filter and press enter" placeholder="gpu nvidia pool: Chrome" value="{{_query::input}}"> </paper-input> </div> <div class="selector si de-by-side" title="This shows all bot dimension names and other interesting bot properties. Mark the check box to add as a column. Select the row to see filter options."> <iron-selector attr-for-selected="label" selected="{{_primarySelected }}"> <template is="dom-repeat" items="[[_primaryItems]]" as="item"> <div class=" selectable item horizontal layout" label="[[item]]"> <span>[[_beforeBold(item,_q uery)]]<span class="bold">[[_bold(item,_query)]]</span>[[_afterBold(item,_query) ]]</span> <span class="flex"></span> <paper-checkbox noink="" disabled$="[[_cant ToggleColumn(item)]]" checked="[[_columnState(item,columns.*)]]" on-change="_tog gleColumn"> </paper-checkbox> </div> </template> </iron-selector> </div> <div cl ass="selector side-by-side" title="These are all options (if any) that the bot l ist can be filtered on."> <template is="dom-repeat" id="secondaryList" items="[[ _secondaryItems]]" as="item"> <div class="item horizontal layout" label="[[item] ]"> <span>[[_beforeBold(item,_query)]]<span class="bold">[[_bold(item,_query)]]< /span>[[_afterBold(item,_query)]]</span> <span class="flex"></span> <iron-icon c lass="icons" icon="icons:arrow-forward" hidden="[[_cantAddFilter(_primarySelecte d,item,_filters.*)]]" on-tap="_addFilter"> </iron-icon> </div> </template> <temp late is="dom-if" if="[[_showDimensionMessage(_primarySelected,_secondaryItems.le ngth)]]"> <div class="item"> Only dimensions can be used for filtering. <i>"[[_p rimarySelected]]"</i> is a part of the bot's state and is informational only. </ div> </template> </div> <div class="selector side-by-side" title="These filters are AND'd together and applied to all bots in
119 the fleet."> <template is="dom-repeat" items="[[_filters]]" as="fil"> <div class ="item horizontal layout" label="[[fil]]"> <span>[[fil]]</span> <span class="fle x"></span> <iron-icon class="icons" icon="icons:remove-circle-outline" hidden="[ [_cantRemoveFilter(fil,_filters.*)]]" on-tap="_removeFilter"> </iron-icon> </div > </template> </div> <div class="side-by-side"> <paper-checkbox checked="{{verbo se}}">Verbose Entries</paper-checkbox> <paper-input id="_limit" label="Limit Res ults" auto-validate="" min="0" max="1000" pattern="[0-9]+" value="{{_limit}}"> < /paper-input> <a href$="[[_matchingTasksLink(query_params)]]">View Matching Task s</a> </div> </div> </div> </template> <script>!function(){var i={disk_space:fun ction(i,t){return!0},id:function(i,t){return!0},status:function(i,t){return"quar antined"===t?i.quarantined:"dead"===t?i.is_dead:!i.quarantined&&!i.is_dead},task :function(i,t){return"idle"===t?"idle"===this._taskId(i):"idle"!==this._taskId(i )}};Polymer({is:"bot-filters",behaviors:[SwarmingBehaviors.BotListBehavior,Swarm ingBehaviors.QueryColumnFilter],properties:{columns:{type:Array,notify:!0},query _params:{type:Object,computed:"_extractQueryParams(dimensions.*,_filters.*, _lim it)",notify:!0},verbose:{type:Boolean,notify:!0},_filter_input:{type:Object,valu e:function(){return this.$.filter}},_filterMap:{type:Object,value:function(){var t=this._commonFilters();for(var n in i)t[n]=i[n];return t}}},_cantToggleColumn: function(i){return!i||"id"===i},_extractQueryParams:function(){var i={},t=[];thi s._filters.forEach(function(n){var e=n.split(this.FILTER_SEP,1),s=e[0];if(this.d imensions.indexOf(s)!==-1){var a=n.substring(s.length+this.FILTER_SEP.length);sw arming.alias.DIMENSIONS_WITH_ALIASES.indexOf(s)!==-1&&(a=swarming.alias.unapply( a)),t.push(s+this.FILTER_SEP+a)}else if("status"===s){var a=n.substring(s.length +this.FILTER_SEP.length);"alive"===a?(i.is_dead=["FALSE"],i.quarantined=["FALSE" ]):"quarantined"===a?i.quarantined=["TRUE"]:"dead"===a&&(i.is_dead=["TRUE"])}}.b ind(this)),i.dimensions=t;var n=parseInt(this._limit);return Number.isInteger(n) &&(n=Math.max(n,1),n=Math.min(1e3,n),i.limit=[n],this._limit!=n&&this.set("_limi t",n)),i},_matchingTasksLink:function(i){var t=["name","state","created_ts"];ret urn i.dimensions?(i.dimensions.forEach(function(i){var n=i.split(this.FILTER_SEP ,1)[0];t.indexOf(n)===-1&&t.push(n)}.bind(this)),this._taskListLink(i.dimensions ,t)):this._taskListLink([],t)},_showDimensionMessage:function(i,t){return i&&"id "!==i&&!t}})}()</script> </dom-module><dom-module id="bot-list-data" assetpath=" /res/imp/botlist/"> <script>!function(){function e(e){if(!e)return{};var t=[],s= 0;for(k in e)t.push(k+": "+e[k]),s+=e[k];return s/=t.length,s=s?s.toFixed(1):"un known",{average:s,zones:t.join(" | ")||"unknown"}}var t="available",s=["quaranti ned","error"],n=["first_seen_ts","last_seen_ts","lease_expiration_ts"];Polymer({ is:"bot-list-data",behaviors:[SwarmingBehaviors.BotListBehavior],properties:{aut h_headers:{type:Object,observer:"signIn"},bots:{type:Array,computed:"parseBots(_ list)",notify:!0},busy:{type:Boolean,computed:"_or(_busy2,_busy1)",notify:!0},di mensions:{type:Array,computed:"_makeArray(_dimensions)",notify:!0},fleet:{type:O bject,computed:"_fleet(_count)",notify:!0},primary_map:{type:Object,computed:"_p rimaryMap(_dimensions)",notify:!0},primary_arr:{type:Array,computed:"_primaryArr (dimensions, BOT_PROPERTIES)",notify:!0},_busy1:{type:Boolean,value:!1},_busy2:{ type:Boolean,value:!1},_count:{type:Object},_dimensions:{type:Object},_list:{typ e:Object}},signIn:function(){this._getJsonAsync("_count","/api/swarming/v1/bots/ count","_busy2",this.auth_headers),this._getJsonAsync("_dimensions","/api/swarmi ng/v1/bots/dimensions","_busy1",this.auth_headers)},parseBots:function(s){return s&&s.items?(s.items.forEach(function(s){s.state=s.state||"{}",s.state=JSON.pars e(s.state)||{};var i=s.state.disks||{},a=Object.keys(i);if(a.length){s.disks=[]; for(var o=0;o<a.length;o++)s.disks.push({id:a[o],mb:i[a[o]].free_mb});s.disks.so rt(function(e,t){return t.mb-e.mb})}else s.disks=[{id:"unknown",mb:0}];s.state.t emp=e(s.state.temp);var r=[],u=s&&s.state&&s.state.devices||{};for(key in u){var d=u[key];d.serial=key,d.okay=d.state===t;var c=this._dimension(s,"device_type") ||["unknown"];d.device_type=c[0],d.temp=e(d.temp),r.push(d)}s.state.devices=r,n. forEach(function(e){swarming.sanitizeAndHumanizeTime(s,e)})}.bind(this)),s.items ):[]},_fleet:function(){return this._count?{all:this._count.count||-1,alive:this ._count.count-this._count.dead||-1,busy:this._count.busy||-1,idle:this._count.co unt-this._count.busy||-1,dead:this._count.dead||-1,quarantined:this._count.quara ntined||-1}:{}},_makeArray:function(e){if(!e||!e.bots_dimensions)return[];var t= [];return e.bots_dimensions.forEach(function(e){s.indexOf(e.key)===-1&&t.push(e. key)}),t.push("id"),t.sort(),t},_primaryArr:function(e,t){return e.concat(t)},_p rimaryMap:function(e){e=e.bots_dimensions||[];var t={};return e.forEach(function (e){if(swarming.alias.DIMENSIONS_WITH_ALIASES.indexOf(e.key)===-1)t[e.key]=e.val ue;else{var s=[];e.value.forEach(function(t){s.push(swarming.alias.apply(t,e.key ))}),t[e.key]=s}}),t.android_devices&&t.android_devices.push("0"),t.device_os&&t .device_os.push("none"),t.device_type&&t.device_type.push("none"),t.id=[],t.disk _space=[],t.task=["busy","idle"],t.status=["alive","dead","quarantined"],t}})}() </script> </dom-module><dom-module id="bot-list-summary" assetpath="/res/imp/bot list/"> <template> <style include="swarming-app-style">:host{display:block;borde r-left:1px solid #000;padding:5px 5px;font-family:sans-serif}.header{font-size:1 .2em;font-weight:700}.header.buffer{margin-top:5px}.right{text-align:right}.left {text-align:left}</style> <div class="header">Fleet</div> <table> <tbody><tr> <t d class="right"> <a href$="[[_makeURL('','',columns.*,sort,verbose)]]">All</a>: </td> <td class="left">[[fleet.all]]</td> </tr> <tr> <td class="right"> <a href$ ="[[_makeURL('alive','',columns.*,sort,verbose)]]">Alive</a>: </td> <td class="l eft">[[fleet.alive]]</td> </tr> <tr> <td class="right"> <a href$="[[_makeURL('bu sy','',columns.*,sort,verbose)]]">Busy</a>: </td> <td class="left">[[fleet.busy] ]</td> </tr> <tr> <td class="right"> <a href$="[[_makeURL('idle','',columns.*,so rt,verbose)]]">Idle</a>: </td> <td class="left">[[fleet.idle]]</td> </tr> <tr> < td class="right"> <a href$="[[_makeURL('dead','',columns.*,sort,verbose)]]">Dead </a>: </td> <td class="left">[[fleet.dead]]</td> </tr> <tr> <td class="right"> < a href$="[[_makeURL('quarantined','',columns.*,sort,verbose)]]">Quarantined</a>: </td> <td class="left">[[fleet.quarantined]]</td> </tr> </tbody></table> <div c lass="header buffer">Selected</div> <table> <tbody><tr> <td class="right"> Displ ayed: </td> <td class="left">[[num_bots]]</td> </tr> <tr> <td class="right"> All : </td> <td class="left">[[_count_query.count]]</td> </tr> <tr> <td class="right "> <a href$="[[_makeURL('alive','true',columns.*,sort,verbose)]]">Alive</a>: </t d> <td class="left">[[_computeAlive(_count_query.*)]]</td> </tr> <tr> <td class= "right"> <a href$="[[_makeURL('busy','true',columns.*,sort,verbose)]]">Busy</a>: </td> <td class="left">[[_count_query.busy]]</td> </tr> <tr> <td class="right"> <a href$="[[_makeURL('idle','true',columns.*,sort,verbose)]]">Idle</a>: </td> < td class="left">[[_computeIdle(_count_query.*)]]</td> </tr> <tr> <td class="righ t"> <a href$="[[_makeURL('dead','true',columns.*,sort,verbose)]]">Dead</a>: </td > <td class="left">[[_count_query.dead]]</td> </tr> <tr> <td class="right"> <a h ref$="[[_makeURL('quarantined','true',columns.*,sort,verbose)]]">Quarantined</a> : </td> <td class="left">[[_count_query.quarantined]]</td> </tr> </tbody></table > </template> <script>Polymer({is:"bot-list-summary",behaviors:[SwarmingBehavior s.BotListBehavior],properties:{auth_headers:{type:Object},columns:{type:Array},c ount_params:{type:Object},fleet:{type:Object},num_bots:{type:Number},sort:{type: String},verbose:{type:Boolean},busy:{type:Boolean,value:!1,notify:!0},_count_que ry:{type:Object}},observers:["_recountTotal(auth_headers.*,count_params.*)"],_co mputeAlive:function(){return this._count_query.count-this._count_query.dead},_co mputeIdle:function(){return this._count_query.count-this._count_query.busy},_get FilterStr:function(t){return t?"alive"===t||"dead"===t||"quarantined"===t?"statu s:"+t:"task:"+t:""},_makeURL:function(t,e){if(!e){var r={s:[this.sort],c:this.co lumns,v:[this.verbose]};return t&&(r.f=[this._getFilterStr(t)]),window.location. href.split("?")[0]+"?"+sk.query.fromParamSet(r)}var o=encodeURIComponent(this._g etFilterStr(t));if(window.location.href.indexOf(o)===-1)return window.location.h ref+"&f="+o},_recountTotal:function(){this.auth_headers&&this.count_params&&this ._getJsonAsync("_count_query","/api/swarming/v1/bots/count","busy",this.auth_hea ders,this.count_params)}})</script> </dom-module><dom-module id="bot-list" asset path="/res/imp/botlist/"> <template> <style include="iron-flex iron-flex-alignme nt iron-positioning swarming-app-style dynamic-table-style">bot-filters,bot-list -summary{margin-bottom:8px;margin-right:10px}.old_version{background-color:#ffd} .bad-device,.quarantined{background-color:#fdd}.dead{background-color:#ccc}.alt{ background-color:#f8f8f8}.bot-list th>span{padding-right:30px}</style> <url-para m name="s" value="{{_sortstr}}" default_value="id:asc"> </url-param> <swarming-a pp client_id="[[client_id]]" auth_headers="{{_auth_headers}}" signed_in="{{_sign ed_in}}" server_details="{{_server_details}}" busy="[[_or(_busy1,_busy2,_busy3)] ]" name="Swarming Bot List"> <h2 hidden$="[[_signed_in]]">You must sign in to se e anything useful.</h2> <div hidden$="[[_not(_signed_in)]]"> <div class="horizon tal layout"> <bot-filters dimensions="[[_dimensions]]" primary_map="[[_primary_m ap]]" primary_arr="[[_primary_arr]]" special_columns="[[_specialColumns]]" colum ns="{{_columns}}" query_params="{{_query_params}}" filter="{{_filter}}" verbose= "{{_verbose}}"> </bot-filters> <bot-list-summary auth_headers="[[_auth_headers]] " columns="[[_columns]]" count_params="[[_query_params]]" fleet="[[_fleet]]" num _bots="[[_filteredSortedItems.length]]" sort="[[_sortstr]]" verbose="[[_verbose] ]" busy="{{_busy3}}"> </bot-list-summary> </div> <bot-list-data id="data" auth_h eaders="[[_auth_headers]]" query_params="[[_query_params]]" busy="{{_busy1}}" di mensions="{{_dimensions}}" fleet="{{_fleet}}" primary_map="{{_primary_map}}" pri mary_arr="{{_primary_arr}}"> </bot-list-data> <table class="bot-list"> <thead on -sort_change="_sortChange"> <tr> <th> <span>Bot Id</span> <sort-toggle name="id" current="[[_sort]]"> </sort-toggle> </th> <th hidden$="[[_hide('mp_lease_id', _ columns.*)]]"> <span>Machine Provider Lease Id</span> <sort-toggle name="mp_leas e_id" current="[[_sort]]"> </sort-toggle> </th> <th hidden$="[[_hide('task', _co lumns.*)]]"> <span>Current Task</span> <sort-toggle name="task" current="[[_sort ]]"> </sort-toggle> </th> <template is="dom-repeat" items="[[_plainColumns]]" as ="c"> <th hidden$="[[_hide(c)]]"> <span>[[_header(c)]]</span> <sort-toggle name= "[[c]]" current="[[_sort]]"> </sort-toggle> </th> </template> </tr> </thead> <tb ody> <template id="bot_table" is="dom-repeat" items="[[_filteredSortedItems]]" a s="bot" initial-count="50"> <tr class$="[[_botClass(bot,_server_details.bot_vers ion)]]"> <td> <a class="center" href$="[[_botLink(bot.bot_id)]]" target="_blank" rel="noopener"> [[bot.bot_id]] </a> </td> <td hidden$="[[_hide('mp_lease_id', _ columns.*)]]"> <a href$="[[_mpLink(bot, _server_details.machine_provider_templat e)]]"> [[_column('mp_lease_id', bot,_verbose)]] </a> </td> <td hidden$="[[_hide( 'task', _columns.*)]]"> <a href$="[[_taskLink(bot.task_id)]]">[[_taskId(bot)]]</ a> </td> <template is="dom-repeat" items="[[_plainColumns]]" as="c"> <td hidden$ ="[[_hide(c)]]"> [[_column(c, bot, _verbose)]] </td> </template> </tr> <template is="dom-repeat" items="[[_devices(bot)]]" as="device"> <tr hidden$="[[_hide('an droid_devices', _columns.*)]]" class$="[[_deviceClass(device,index)]]"> <td></td > <td hidden$="[[_hide('mp_lease_id', _columns.*)]]"></td> <td hidden$="[[_hide( 'task', _columns.*)]]"></td> <template is="dom-repeat" items="[[_plainColumns]]" as="c"> <td hidden$="[[_hide(c)]]"> [[_deviceColumn(c, device, _verbose)]] </td > </template> </tr> </template> </template> </tbody> </table> <pageable-data id= "page_bots" busy="{{_busy2}}" label="Show more bots" output="{{_items}}" parse=" [[_parseBots]]"> </pageable-data> </div> </swarming-app> </template> <script> (f unction(){ 119 the fleet."> <template is="dom-repeat" items="[[_filters]]" as="fil"> <div class ="item horizontal layout" label="[[fil]]"> <span>[[fil]]</span> <span class="fle x"></span> <iron-icon class="icons" icon="icons:remove-circle-outline" hidden="[ [_cantRemoveFilter(fil,_filters.*)]]" on-tap="_removeFilter"> </iron-icon> </div > </template> </div> <div class="side-by-side"> <paper-checkbox checked="{{verbo se}}">Verbose Entries</paper-checkbox> <paper-input id="_limit" label="Limit Res ults" auto-validate="" min="0" max="1000" pattern="[0-9]+" value="{{_limit}}"> < /paper-input> <a href$="[[_matchingTasksLink(query_params)]]">View Matching Task s</a> </div> </div> </div> </template> <script>!function(){var i={disk_space:fun ction(i,t){return!0},id:function(i,t){return!0},is_mp_bot:function(i,t){return"t rue"===t?!!i.lease_id:"false"!==t||!i.lease_id},status:function(i,t){return"quar antined"===t?i.quarantined:"dead"===t?i.is_dead:!i.quarantined&&!i.is_dead},task :function(i,t){return"idle"===t?"idle"===this._taskId(i):"idle"!==this._taskId(i )}};Polymer({is:"bot-filters",behaviors:[SwarmingBehaviors.BotListBehavior,Swarm ingBehaviors.QueryColumnFilter],properties:{columns:{type:Array,notify:!0},query _params:{type:Object,computed:"_extractQueryParams(dimensions.*,_filters.*, _lim it)",notify:!0},verbose:{type:Boolean,notify:!0},_filter_input:{type:Object,valu e:function(){return this.$.filter}},_filterMap:{type:Object,value:function(){var t=this._commonFilters();for(var n in i)t[n]=i[n];return t}}},_cantToggleColumn: function(i){return!i||"id"===i},_extractQueryParams:function(){var i={},t=[];thi s._filters.forEach(function(n){var e=n.split(this.FILTER_SEP,1),s=e[0],a=n.subst ring(s.length+this.FILTER_SEP.length);this.dimensions.indexOf(s)!==-1?(swarming. alias.DIMENSIONS_WITH_ALIASES.indexOf(s)!==-1&&(a=swarming.alias.unapply(a)),t.p ush(s+this.FILTER_SEP+a)):"status"===s?"alive"===a?(i.is_dead=["FALSE"],i.quaran tined=["FALSE"]):"quarantined"===a?i.quarantined=["TRUE"]:"dead"===a&&(i.is_dead =["TRUE"]):"is_mp_bot"===s&&("true"===a?i.is_mp=["TRUE"]:"false"===a&&(i.is_mp=[ "FALSE"]))}.bind(this)),i.dimensions=t;var n=parseInt(this._limit);return Number .isInteger(n)&&(n=Math.max(n,1),n=Math.min(1e3,n),i.limit=[n],this._limit!=n&&th is.set("_limit",n)),i},_matchingTasksLink:function(i){var t=["name","state","cre ated_ts"];return i.dimensions?(i.dimensions.forEach(function(i){var n=i.split(th is.FILTER_SEP,1)[0];t.indexOf(n)===-1&&t.push(n)}.bind(this)),this._taskListLink (i.dimensions,t)):this._taskListLink([],t)},_showDimensionMessage:function(i,t){ return i&&"id"!==i&&!t}})}()</script> </dom-module><dom-module id="bot-list-data " assetpath="/res/imp/botlist/"> <script>!function(){function e(e){if(!e)return{ };var t=[],s=0;for(k in e)t.push(k+": "+e[k]),s+=e[k];return s/=t.length,s=s?s.t oFixed(1):"unknown",{average:s,zones:t.join(" | ")||"unknown"}}var t="available" ,s=["quarantined","error"],n=["first_seen_ts","last_seen_ts","lease_expiration_t s"];Polymer({is:"bot-list-data",behaviors:[SwarmingBehaviors.BotListBehavior],pr operties:{auth_headers:{type:Object,observer:"signIn"},bots:{type:Array,computed :"parseBots(_list)",notify:!0},busy:{type:Boolean,computed:"_or(_busy2,_busy1)", notify:!0},dimensions:{type:Array,computed:"_makeArray(_dimensions)",notify:!0}, fleet:{type:Object,computed:"_fleet(_count)",notify:!0},primary_map:{type:Object ,computed:"_primaryMap(_dimensions)",notify:!0},primary_arr:{type:Array,computed :"_primaryArr(dimensions, BOT_PROPERTIES)",notify:!0},_busy1:{type:Boolean,value :!1},_busy2:{type:Boolean,value:!1},_count:{type:Object},_dimensions:{type:Objec t},_list:{type:Object}},signIn:function(){this._getJsonAsync("_count","/api/swar ming/v1/bots/count","_busy2",this.auth_headers),this._getJsonAsync("_dimensions" ,"/api/swarming/v1/bots/dimensions","_busy1",this.auth_headers)},parseBots:funct ion(s){return s&&s.items?(s.items.forEach(function(s){s.state=s.state||"{}",s.st ate=JSON.parse(s.state)||{};var i=s.state.disks||{},a=Object.keys(i);if(a.length ){s.disks=[];for(var o=0;o<a.length;o++)s.disks.push({id:a[o],mb:i[a[o]].free_mb });s.disks.sort(function(e,t){return t.mb-e.mb})}else s.disks=[{id:"unknown",mb: 0}];s.state.temp=e(s.state.temp);var r=[],u=s&&s.state&&s.state.devices||{};for( key in u){var _=u[key];_.serial=key,_.okay=_.state===t;var d=this._dimension(s," device_type")||["unknown"];_.device_type=d[0],_.temp=e(_.temp),r.push(_)}s.state .devices=r,n.forEach(function(e){swarming.sanitizeAndHumanizeTime(s,e)})}.bind(t his)),s.items):[]},_fleet:function(){return this._count?{all:this._count.count|| -1,alive:this._count.count-this._count.dead||-1,busy:this._count.busy||-1,idle:t his._count.count-this._count.busy||-1,dead:this._count.dead||-1,quarantined:this ._count.quarantined||-1}:{}},_makeArray:function(e){if(!e||!e.bots_dimensions)re turn[];var t=[];return e.bots_dimensions.forEach(function(e){s.indexOf(e.key)=== -1&&t.push(e.key)}),t.push("id"),t.sort(),t},_primaryArr:function(e,t){return e. concat(t)},_primaryMap:function(e){e=e.bots_dimensions||[];var t={};return e.for Each(function(e){if(swarming.alias.DIMENSIONS_WITH_ALIASES.indexOf(e.key)===-1)t [e.key]=e.value;else{var s=[];e.value.forEach(function(t){s.push(swarming.alias. apply(t,e.key))}),t[e.key]=s}}),t.android_devices&&t.android_devices.push("0"),t .device_os&&t.device_os.push("none"),t.device_type&&t.device_type.push("none"),t .id=[],t.disk_space=[],t.task=["busy","idle"],t.status=["alive","dead","quaranti ned"],t.is_mp_bot=["true","false"],t}})}()</script> </dom-module><dom-module id= "bot-list-summary" assetpath="/res/imp/botlist/"> <template> <style include="swa rming-app-style">:host{display:block;border-left:1px solid #000;padding:5px 5px; font-family:sans-serif}.header{font-size:1.2em;font-weight:700}.header.buffer{ma rgin-top:5px}.right{text-align:right}.left{text-align:left}</style> <div class=" header">Fleet</div> <table> <tbody><tr> <td class="right"> <a href$="[[_makeURL( '','',columns.*,sort,verbose)]]">All</a>: </td> <td class="left">[[fleet.all]]</ td> </tr> <tr> <td class="right"> <a href$="[[_makeURL('alive','',columns.*,sort ,verbose)]]">Alive</a>: </td> <td class="left">[[fleet.alive]]</td> </tr> <tr> < td class="right"> <a href$="[[_makeURL('busy','',columns.*,sort,verbose)]]">Busy </a>: </td> <td class="left">[[fleet.busy]]</td> </tr> <tr> <td class="right"> < a href$="[[_makeURL('idle','',columns.*,sort,verbose)]]">Idle</a>: </td> <td cla ss="left">[[fleet.idle]]</td> </tr> <tr> <td class="right"> <a href$="[[_makeURL ('dead','',columns.*,sort,verbose)]]">Dead</a>: </td> <td class="left">[[fleet.d ead]]</td> </tr> <tr> <td class="right"> <a href$="[[_makeURL('quarantined','',c olumns.*,sort,verbose)]]">Quarantined</a>: </td> <td class="left">[[fleet.quaran tined]]</td> </tr> </tbody></table> <div class="header buffer">Selected</div> <t able> <tbody><tr> <td class="right"> Displayed: </td> <td class="left">[[num_bot s]]</td> </tr> <tr> <td class="right"> All: </td> <td class="left">[[_count_quer y.count]]</td> </tr> <tr> <td class="right"> <a href$="[[_makeURL('alive','true' ,columns.*,sort,verbose)]]">Alive</a>: </td> <td class="left">[[_computeAlive(_c ount_query.*)]]</td> </tr> <tr> <td class="right"> <a href$="[[_makeURL('busy',' true',columns.*,sort,verbose)]]">Busy</a>: </td> <td class="left">[[_count_query .busy]]</td> </tr> <tr> <td class="right"> <a href$="[[_makeURL('idle','true',co lumns.*,sort,verbose)]]">Idle</a>: </td> <td class="left">[[_computeIdle(_count_ query.*)]]</td> </tr> <tr> <td class="right"> <a href$="[[_makeURL('dead','true' ,columns.*,sort,verbose)]]">Dead</a>: </td> <td class="left">[[_count_query.dead ]]</td> </tr> <tr> <td class="right"> <a href$="[[_makeURL('quarantined','true', columns.*,sort,verbose)]]">Quarantined</a>: </td> <td class="left">[[_count_quer y.quarantined]]</td> </tr> </tbody></table> </template> <script>Polymer({is:"bot -list-summary",behaviors:[SwarmingBehaviors.BotListBehavior],properties:{auth_he aders:{type:Object},columns:{type:Array},count_params:{type:Object},fleet:{type: Object},num_bots:{type:Number},sort:{type:String},verbose:{type:Boolean},busy:{t ype:Boolean,value:!1,notify:!0},_count_query:{type:Object}},observers:["_recount Total(auth_headers.*,count_params.*)"],_computeAlive:function(){return this._cou nt_query.count-this._count_query.dead},_computeIdle:function(){return this._coun t_query.count-this._count_query.busy},_getFilterStr:function(t){return t?"alive" ===t||"dead"===t||"quarantined"===t?"status:"+t:"task:"+t:""},_makeURL:function( t,e){if(!e){var r={s:[this.sort],c:this.columns,v:[this.verbose]};return t&&(r.f =[this._getFilterStr(t)]),window.location.href.split("?")[0]+"?"+sk.query.fromPa ramSet(r)}var o=encodeURIComponent(this._getFilterStr(t));if(window.location.hre f.indexOf(o)===-1)return window.location.href+"&f="+o},_recountTotal:function(){ this.auth_headers&&this.count_params&&this._getJsonAsync("_count_query","/api/sw arming/v1/bots/count","busy",this.auth_headers,this.count_params)}})</script> </ dom-module><dom-module id="bot-list" assetpath="/res/imp/botlist/"> <template> < style include="iron-flex iron-flex-alignment iron-positioning swarming-app-style dynamic-table-style">bot-filters,bot-list-summary{margin-bottom:8px;margin-righ t:10px}.old_version{background-color:#ffd}.bad-device,.quarantined{background-co lor:#fdd}.dead{background-color:#ccc}.alt{background-color:#f8f8f8}.bot-list th> span{padding-right:30px}</style> <url-param name="s" value="{{_sortstr}}" defaul t_value="id:asc"> </url-param> <swarming-app client_id="[[client_id]]" auth_head ers="{{_auth_headers}}" signed_in="{{_signed_in}}" server_details="{{_server_det ails}}" busy="[[_or(_busy1,_busy2,_busy3)]]" name="Swarming Bot List"> <h2 hidde n$="[[_signed_in]]">You must sign in to see anything useful.</h2> <div hidden$=" [[_not(_signed_in)]]"> <div class="horizontal layout"> <bot-filters dimensions=" [[_dimensions]]" primary_map="[[_primary_map]]" primary_arr="[[_primary_arr]]" s pecial_columns="[[_specialColumns]]" columns="{{_columns}}" query_params="{{_que ry_params}}" filter="{{_filter}}" verbose="{{_verbose}}"> </bot-filters> <bot-li st-summary auth_headers="[[_auth_headers]]" columns="[[_columns]]" count_params= "[[_query_params]]" fleet="[[_fleet]]" num_bots="[[_filteredSortedItems.length]] " sort="[[_sortstr]]" verbose="[[_verbose]]" busy="{{_busy3}}"> </bot-list-summa ry> </div> <bot-list-data id="data" auth_headers="[[_auth_headers]]" query_param s="[[_query_params]]" busy="{{_busy1}}" dimensions="{{_dimensions}}" fleet="{{_f leet}}" primary_map="{{_primary_map}}" primary_arr="{{_primary_arr}}"> </bot-lis t-data> <table class="bot-list"> <thead on-sort_change="_sortChange"> <tr> <th> <span>Bot Id</span> <sort-toggle name="id" current="[[_sort]]"> </sort-toggle> < /th> <th hidden$="[[_hide('mp_lease_id', _columns.*)]]"> <span>Machine Provider Lease Id</span> <sort-toggle name="mp_lease_id" current="[[_sort]]"> </sort-togg le> </th> <th hidden$="[[_hide('task', _columns.*)]]"> <span>Current Task</span> <sort-toggle name="task" current="[[_sort]]"> </sort-toggle> </th> <template is ="dom-repeat" items="[[_plainColumns]]" as="c"> <th hidden$="[[_hide(c)]]"> <spa n>[[_header(c)]]</span> <sort-toggle name="[[c]]" current="[[_sort]]"> </sort-to ggle> </th> </template> </tr> </thead> <tbody> <template id="bot_table" is="dom- repeat" items="[[_filteredSortedItems]]" as="bot" initial-count="50"> <tr class$ ="[[_botClass(bot,_server_details.bot_version)]]"> <td> <a class="center" href$= "[[_botLink(bot.bot_id)]]" target="_blank" rel="noopener"> [[bot.bot_id]] </a> < /td> <td hidden$="[[_hide('mp_lease_id', _columns.*)]]"> <a href$="[[_mpLink(bot , _server_details.machine_provider_template)]]"> [[_column('mp_lease_id', bot,_v erbose)]] </a> </td> <td hidden$="[[_hide('task', _columns.*)]]"> <a href$="[[_t askLink(bot.task_id)]]">[[_taskId(bot)]]</a> </td> <template is="dom-repeat" ite ms="[[_plainColumns]]" as="c"> <td hidden$="[[_hide(c)]]"> [[_column(c, bot, _ve rbose)]] </td> </template> </tr> <template is="dom-repeat" items="[[_devices(bot )]]" as="device"> <tr hidden$="[[_hide('android_devices', _columns.*)]]" class$= "[[_deviceClass(device,index)]]"> <td></td> <td hidden$="[[_hide('mp_lease_id', _columns.*)]]"></td> <td hidden$="[[_hide('task', _columns.*)]]"></td> <template is="dom-repeat" items="[[_plainColumns]]" as="c"> <td hidden$="[[_hide(c)]]"> [ [_deviceColumn(c, device, _verbose)]] </td> </template> </tr> </template> </temp late> </tbody> </table> <pageable-data id="page_bots" busy="{{_busy2}}" label="S how more bots" output="{{_items}}" parse="[[_parseBots]]"> </pageable-data> </di v> </swarming-app> </template> <script> (function(){
120 var UNKNOWN = "unknown"; 120 var UNKNOWN = "unknown";
121 // see dynamic-table for more information on specialColumns, headerMap, 121 // see dynamic-table for more information on specialColumns, headerMap,
122 // columnMap, and specialSort 122 // columnMap, and specialSort
123 var specialColumns = ["id", "mp_lease_id", "task"]; 123 var specialColumns = ["id", "mp_lease_id", "task"];
124 124
125 var deviceColumns = ["battery_health", "battery_level", "battery_status", "b attery_temperature", "battery_voltage", "device_temperature"]; 125 var deviceColumns = ["battery_health", "battery_level", "battery_status", "b attery_temperature", "battery_voltage", "device_temperature"];
126 126
127 var headerMap = { 127 var headerMap = {
128 // "id", "task" and other special columns don't go here. They have their 128 // "id", "task" and other special columns don't go here. They have their
129 // headers hard-coded above. 129 // headers hard-coded above.
(...skipping 1230 matching lines...) Expand 10 before | Expand all | Expand 10 after
1360 }; 1360 };
1361 1361
1362 this._getJsonAsync("_other_running", "/api/swarming/v1/tasks/count", " _busyRunningCount", this._auth_headers, taskCountParams); 1362 this._getJsonAsync("_other_running", "/api/swarming/v1/tasks/count", " _busyRunningCount", this._auth_headers, taskCountParams);
1363 // change running to pending 1363 // change running to pending
1364 taskCountParams.state = ["PENDING"]; 1364 taskCountParams.state = ["PENDING"];
1365 this._getJsonAsync("_other_pending", "/api/swarming/v1/tasks/count", " _busyPendingCount", this._auth_headers, taskCountParams); 1365 this._getJsonAsync("_other_pending", "/api/swarming/v1/tasks/count", " _busyPendingCount", this._auth_headers, taskCountParams);
1366 } 1366 }
1367 } 1367 }
1368 }); 1368 });
1369 })(); </script> </dom-module> </div></body></html> 1369 })(); </script> </dom-module> </div></body></html>
OLDNEW
« no previous file with comments | « no previous file | appengine/swarming/ui/res/imp/botlist/bot-filters.html » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698