From 64290d74f09c9df66f116894dc19dad92d908b0c Mon Sep 17 00:00:00 2001 From: Paulus Schoutsen <paulus@paulusschoutsen.nl> Date: Mon, 5 Dec 2016 21:40:34 -0800 Subject: [PATCH] Update frontend --- homeassistant/components/frontend/version.py | 2 +- .../frontend/www_static/frontend.html | 4 ++-- .../frontend/www_static/frontend.html.gz | Bin 130456 -> 130476 bytes .../www_static/home-assistant-polymer | 2 +- .../frontend/www_static/service_worker.js | 2 +- .../frontend/www_static/service_worker.js.gz | Bin 2325 -> 2326 bytes 6 files changed, 5 insertions(+), 5 deletions(-) diff --git a/homeassistant/components/frontend/version.py b/homeassistant/components/frontend/version.py index 837fdd0e1fe..14650b47cb7 100644 --- a/homeassistant/components/frontend/version.py +++ b/homeassistant/components/frontend/version.py @@ -2,7 +2,7 @@ FINGERPRINTS = { "core.js": "5dfb2d3e567fad37af0321d4b29265ed", - "frontend.html": "6a89b74ab2b76c7d28fad2aea9444ec2", + "frontend.html": "d4f164e559944b8abc560d7b46131714", "mdi.html": "46a76f877ac9848899b8ed382427c16f", "micromarkdown-js.html": "93b5ec4016f0bba585521cf4d18dec1a", "panels/ha-panel-dev-event.html": "c2d5ec676be98d4474d19f94d0262c1e", diff --git a/homeassistant/components/frontend/www_static/frontend.html b/homeassistant/components/frontend/www_static/frontend.html index d0a3e75d8db..54b9cc4d5e4 100644 --- a/homeassistant/components/frontend/www_static/frontend.html +++ b/homeassistant/components/frontend/www_static/frontend.html @@ -1,5 +1,5 @@ <html><head><meta charset="UTF-8"></head><body><div hidden="" by-vulcanize=""><script>!function(){function e(){document.body.removeAttribute("unresolved")}window.WebComponents?addEventListener("WebComponentsReady",e):"interactive"===document.readyState||"complete"===document.readyState?e():addEventListener("DOMContentLoaded",e)}(),window.Polymer={Settings:function(){var e=window.Polymer||{};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.wantShadow="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.CustomElements||window.CustomElements.useNative,e.useNativeShadow=e.useShadow&&e.nativeShadow,e.usePolyfillProto=!e.useNativeCustomElements&&!Object.__proto__,e.hasNativeCSSProperties=!navigator.userAgent.match("AppleWebKit/601")&&window.CSS&&CSS.supports&&CSS.supports("box-shadow","0 0 0 var(--foo)"),e.useNativeCSSProperties=e.hasNativeCSSProperties&&e.lazyRegister&&e.useNativeCSSProperties,e}()},function(){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.extends&&(i.extends=e.extends),Polymer.telemetry._registrate(e),document.registerElement(e.is,i),r};var t=function(e){var t=Polymer.Base;return e.extends&&(t=Polymer.Base._getExtendedPrototype(e.extends)),e=Polymer.Base.chainObject(e,t),e.registerCallback(),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.log&&this._regLog(e)},dumpRegistrations:function(){this.registrations.forEach(this._regLog)}},Object.defineProperty(window,"currentImport",{enumerable:!0,configurable:!0,get:function(){return(document._currentScript||document.currentScript).ownerDocument}}),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.RenderStatus._makeReady()})},_afterNextRenderQueue:[],_waitingNextRender:!1,afterNextRender:function(e,t,r){this._watchNextRender(),this._afterNextRenderQueue.push([e,t,r])},hasRendered:function(){return this._ready},_watchNextRender:function(){if(!this._waitingNextRender){this._waitingNextRender=!0;var e=function(){Polymer.RenderStatus._flushNextRender()};this._ready?requestAnimationFrame(e):this.whenReady(e)}},_flushNextRender:function(){var e=this;setTimeout(function(){e._flushRenderCallbacks(e._afterNextRenderQueue),e._afterNextRenderQueue=[],e._waitingNextRender=!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.whenReady(function(){Polymer.RenderStatus._catchFirstRender()}):Polymer.RenderStatus._catchFirstRender(),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.extend(this,e)},registerCallback:function(){"max"===e.lazyRegister?this.beforeRegister&&this.beforeRegister():(this._desugarBehaviors(),this._doBehavior("beforeRegister")),this._registerFeatures(),e.lazyRegister||this.ensureRegisterFinished()},createdCallback:function(){this.__hasRegisterFinished||this._ensureRegisterFinished(this.__proto__),Polymer.telemetry.instanceCount++,this.root=this,this._doBehavior("created"),this._initFeatures()},ensureRegisterFinished:function(){this._ensureRegisterFinished(this)},_ensureRegisterFinished:function(t){t.__hasRegisterFinished===t.is&&t.is||("max"===e.lazyRegister&&(t._desugarBehaviors(),t._doBehaviorOnly("beforeRegister")),t.__hasRegisterFinished=t.is,t._finishRegisterFeatures&&t._finishRegisterFeatures(),t._doBehavior("registered"),e.usePolyfillProto&&t!==this&&t.extend(this,t))},attachedCallback:function(){var e=this;Polymer.RenderStatus.whenReady(function(){e.isAttached=!0,e._doBehavior("attached")})},detachedCallback:function(){var e=this;Polymer.RenderStatus.whenReady(function(){e.isAttached=!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:function(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.getOwnPropertyDescriptor(t,e);i&&Object.defineProperty(r,e,i)},_logger:function(e,t){switch(1===t.length&&Array.isArray(t[0])&&(t=t[0]),e){case"log":case"warn":case"error":console[e].apply(console,t)}},_log:function(){var e=Array.prototype.slice.call(arguments,0);this._logger("log",e)},_warn:function(){var e=Array.prototype.slice.call(arguments,0);this._logger("warn",e)},_error:function(){var e=Array.prototype.slice.call(arguments,0);this._logger("error",e)},_logf:function(){return this._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.chainObject=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(Polymer.Base,HTMLElement.prototype),window.CustomElements?Polymer.instanceof=CustomElements.instanceof:Polymer.instanceof=function(e,t){return e instanceof t},Polymer.isInstance=function(e){return Boolean(e&&e.__isPolymerInstance__)},Polymer.telemetry.instanceCount=0}(),function(){function e(){if(s)for(var e,t=document._currentScript||document.currentScript,r=t&&t.ownerDocument||document,i=r.querySelectorAll("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.toLowerCase()]},o=function(){return document.createElement("dom-module")};o.prototype=Object.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&&!CustomElements.useNative;document.registerElement("dom-module",o)}(),Polymer.Base._addFeature({_prepIs:function(){if(!this.is){var e=(document._currentScript||document.currentScript).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.behaviors.length&&(this.behaviors=this._desugarSomeBehaviors(this.behaviors))},_desugarSomeBehaviors: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.length;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, check 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._behaviorProperties[t]||this.hasOwnProperty(t)||this.copyOwnProperty(t,e,this)},_prepBehaviors:function(){this._prepFlattenedBehaviors(this.behaviors)},_prepFlattenedBehaviors:function(e){for(var t=0,r=e.length;t<r;t++)this._prepBehavior(e[t]);this._prepBehavior(this)},_doBehavior:function(e,t){for(var r=0;r<this.behaviors.length;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._marshalBehavior(this)}}),Polymer.Base._behaviorProperties={hostAttributes:!0,beforeRegister:!0,registered:!0,properties:!0,observers:!0,listeners:!0,created:!0,attached:!0,detached:!0,attributeChanged:!0,ready:!0},Polymer.Base._addFeature({_getExtendedPrototype:function(e){return this._getExtendedNativePrototype(e)},_nativePrototypes:{},_getExtendedNativePrototype:function(e){var t=this._nativePrototypes[e];if(!t){var r=this.getNativePrototype(e);t=this.extend(Object.create(r),Polymer.Base),this._nativePrototypes[e]=t}return t},getNativePrototype:function(e){return Object.getPrototypeOf(document.createElement(e))}}),Polymer.Base._addFeature({_prepConstructor:function(){this._factoryArgs=this.extends?[this.extends,this.is]:[this.is];var e=function(){return this._factory(arguments)};this.hasOwnProperty("extends")&&(e.extends=this.extends),Object.defineProperty(this,"constructor",{value:e,writable:!0,configurable:!0}),e.prototype=this},_factory:function(e){var t=document.createElement.apply(document,this._factoryArgs);return this.factoryImpl&&this.factoryImpl.apply(t,e),t}}),Polymer.nob=Object.create(null),Polymer.Base._addFeature({properties:{},getPropertyInfo:function(e){var t=this._getPropertyInfo(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._propertyInfo={};for(var e=0;e<this.behaviors.length;e++)this._addPropertyInfo(this._propertyInfo,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,attribute:Polymer.CaseMap.camelToDashCase(o)})}}}),Polymer.CaseMap={_caseMap:{},_rx:{dashToCamel:/-[a-z]/g,camelToDash:/([A-Z])/g},dashToCamelCase:function(e){return this._caseMap[e]||(this._caseMap[e]=e.indexOf("-")<0?e:e.replace(this._rx.dashToCamel,function(e){return e[1].toUpperCase()}))},camelToDashCase:function(e){return this._caseMap[e]||(this._caseMap[e]=e.replace(this._rx.camelToDash,"-$1").toLowerCase())}},Polymer.Base._addFeature({_addHostAttributes:function(e){this._aggregatedAttributes||(this._aggregatedAttributes={}),e&&this.mixin(this._aggregatedAttributes,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.serializeValueToAttribute(i,r,this)}},_marshalAttributes:function(){this._takeAttributesToModel(this)},_takeAttributesToModel:function(e){if(this.hasAttributes())for(var t in this._propertyInfo){var r=this._propertyInfo[t];this.hasAttribute(r.attribute)&&this._setAttributeToProperty(e,r.attribute,t,r)}},_setAttributeToProperty: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.getAttribute(t);e[r]=this.deserialize(o,i.type)}},_serializing:!1,reflectPropertyToAttribute:function(e,t,r){this._serializing=!0,r=void 0===r?this[e]:r,this.serializeValueToAttribute(r,t||Polymer.CaseMap.camelToDashCase(e)),this._serializing=!1},serializeValueToAttribute:function(e,t,r){var i=this.serialize(e);r=r||this,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 Object: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;case 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)return e.toString();if(e)try{return JSON.stringify(e)}catch(e){return""}default:return null!=e?e:void 0}}}),Polymer.version="1.7.0",Polymer.Base._addFeature({_registerFeatures:function(){this._prepIs(),this._prepBehaviors(),this._prepConstructor(),this._prepPropertyInfo()},_prepBehavior:function(e){this._addHostAttributes(e.hostAttributes)},_marshalBehavior:function(e){},_initFeatures:function(){this._marshalHostAttributes(),this._marshalBehaviors()}})</script><script>Polymer.Base._addFeature({_prepTemplate:function(){void 0===this._template&&(this._template=Polymer.DomModule.import(this.is,"template")),this._template&&this._template.hasAttribute("is")&&this._warn(this._logf("_prepTemplate","top-level Polymer template must not be a type-extension, found",this._template,"Move inside simple <template>.")),this._template&&!this._template.content&&window.HTMLTemplateElement&&HTMLTemplateElement.decorate&&HTMLTemplateElement.decorate(this._template)},_stampTemplate:function(){this._template&&(this.root=this.instanceTemplate(this._template))},instanceTemplate:function(e){var t=document.importNode(e._content||e.content,!0);return t}}),function(){var e=Polymer.Base.attachedCallback;Polymer.Base._addFeature({_hostStack:[],ready:function(){},_registerHost:function(e){this.dataHost=e=e||Polymer.Base._hostStack[Polymer.Base._hostStack.length-1],e&&e._clients&&e._clients.push(this),this._clients=null,this._clientsReadied=!1},_beginHosting:function(){Polymer.Base._hostStack.push(this),this._clients||(this._clients=[])},_endHosting:function(){Polymer.Base._hostStack.pop()},_tryReady:function(){this._readied=!1,this._canReady()&&this._ready()},_canReady:function(){return!this.dataHost||this.dataHost._clientsReadied},_ready:function(){this._beforeClientsReady(),this._template&&(this._setupRoot(),this._readyClients()),this._clientsReadied=!0,this._clients=null,this._afterClientsReady(),this._readySelf()},_readyClients: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()},_readySelf:function(){this._doBehavior("ready"),this._readied=!0,this._attachedPending&&(this._attachedPending=!1,this.attachedCallback())},_beforeClientsReady:function(){},_afterClientsReady:function(){},_beforeAttached:function(){},attachedCallback:function(){this._readied?(this._beforeAttached(),e.call(this)):this._attachedPending=!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={calcEditDistances: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{var u=a[l-1][h]+1,c=a[l][h-1]+1;a[l][h]=u<c?u:c}return a},spliceOperationsFromEditDistances: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},calcSplices: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.spliceOperationsFromEditDistances(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){for(var i=0;i<o;i++)if(!this.equals(e[i],t[i]))return i;return o},sharedSuffix:function(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.length,t,0,t.length)},equals:function(e,t){return e===t}},new t}(),Polymer.domInnerHTML=function(){function e(e){switch(e){case"&":return"&";case"<":return"<";case">":return">";case'"':return""";case" ":return" "}}function t(t){return t.replace(r,e)}function o(t){return t.replace(d,e)}function i(e){for(var t={},o=0;o<e.length;o++)t[e[o]]=!0;return t}function n(e,i,n){switch(e.nodeType){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.COMMENT_NODE:return"\x3c!--"+e.data+"--\x3e";default:throw console.error(e),new Error("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","noframes","plaintext","noscript"]);return{getInnerHTML:s}}(),function(){"use strict";var e=Element.prototype.insertBefore,t=Element.prototype.appendChild,o=Element.prototype.removeChild;Polymer.TreeApi={arrayCopyChildNodes:function(e){for(var t=[],o=0,i=e.firstChild;i;i=i.nextSibling)t[o++]=i;return t},arrayCopyChildren:function(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 Boolean(e.__dom&&e.__dom.parentNode)},hasChildNodes:function(e){return Boolean(e.__dom&&void 0!==e.__dom.childNodes)},getChildNodes:function(e){return this.hasChildNodes(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.__dom.nextSibling)e.__dom.childNodes.push(t)}return e.__dom.childNodes},getParentNode:function(e){return e.__dom&&void 0!==e.__dom.parentNode?e.__dom.parentNode:e.parentNode},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){return e.__dom&&void 0!==e.__dom.firstChild?this._getFirstElementChild(e):e.firstElementChild},_getFirstElementChild:function(e){for(var t=e.__dom.firstChild;t&&t.nodeType!==Node.ELEMENT_NODE;)t=t.__dom.nextSibling;return t},getLastElementChild:function(e){return e.__dom&&void 0!==e.__dom.lastChild?this._getLastElementChild(e):e.lastElementChild},_getLastElementChild:function(e){for(var t=e.__dom.lastChild;t&&t.nodeType!==Node.ELEMENT_NODE;)t=t.__dom.previousSibling;return t},getNextElementSibling: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.nextSibling;return t},getPreviousElementSibling:function(e){return e.__dom&&void 0!==e.__dom.previousSibling?this._getPreviousElementSibling(e):e.previousElementSibling},_getPreviousElementSibling:function(e){for(var t=e.__dom.previousSibling;t&&t.nodeType!==Node.ELEMENT_NODE;)t=t.__dom.previousSibling;return t},saveChildNodes:function(e){if(!this.hasChildNodes(e)){e.__dom=e.__dom||{},e.__dom.firstChild=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.nextSibling)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.previousSibling=o?o.__dom.previousSibling:t.__dom.lastChild,e.__dom.previousSibling&&(e.__dom.previousSibling.__dom.nextSibling=e),e.__dom.nextSibling=o||null,e.__dom.nextSibling&&(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.firstChild||(t.__dom.firstChild=e)),t.__dom.childNodes=null},recordRemoveChild:function(e,t){e.__dom=e.__dom||{},t.__dom=t.__dom||{},e===t.__dom.firstChild&&(t.__dom.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.previousSibling=e.__dom.nextSibling=void 0,t.__dom.childNodes=null}},Polymer.TreeApi.Composed={getChildNodes:function(e){return Polymer.TreeApi.arrayCopyChildNodes(e)},getParentNode:function(e){return e.parentNode},clearChildNodes:function(e){e.textContent=""},insertBefore:function(t,o,i){return e.call(t,o,i||null)},appendChild:function(e,o){return t.call(e,o)},removeChild:function(e,t){return o.call(e,t)}}}(),Polymer.DomApi=function(){"use strict";var e=Polymer.Settings,t=Polymer.TreeApi,o=function(e){this.node=i?o.wrap(e):e},i=e.hasShadow&&!e.nativeShadow;o.wrap=window.wrap?window.wrap:function(e){return e},o.prototype={flush:function(){Polymer.dom.flush()},deepContains:function(e){if(this.node.contains(e))return!0;for(var t=e,o=e.ownerDocument;t&&t!==o&&t!==this.node;)t=Polymer.dom(t).parentNode||t.host;return t===this.node},queryDistributedElements:function(e){for(var t,i=this.getEffectiveChildNodes(),n=[],s=0,r=i.length;s<r&&(t=i[s]);s++)t.nodeType===Node.ELEMENT_NODE&&o.matchesSelector.call(t,e)&&n.push(t);return n},getEffectiveChildNodes: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)return this.observer||(this.observer=this.node.localName===n?new o.DistributedNodesObserver(this):new o.EffectiveNodesObserver(this)),this.observer.addListener(e)},unobserveNodes:function(e){this.observer&&this.observer.removeListener(e)},notifyObserver: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="content",s=o.factory=function(e){return e=e||document,e.__domApi||(e.__domApi=new o.ctor(e)),e.__domApi};o.hasApi=function(e){return Boolean(e.__domApi)},o.ctor=o,Polymer.dom=function(e,t){return e instanceof Event?Polymer.EventApi.factory(e):o.factory(e,t)};var r=Element.prototype;return o.matchesSelector=r.matches||r.matchesSelector||r.mozMatchesSelector||r.msMatchesSelector||r.oMatchesSelector||r.webkitMatchesSelector,o}(),function(){"use strict";var e=Polymer.Settings,t=Polymer.DomApi,o=t.factory,i=Polymer.TreeApi,n=Polymer.domInnerHTML.getInnerHTML,s=t.CONTENT;if(!e.useShadow){var r=Element.prototype.cloneNode,d=Document.prototype.importNode;Polymer.Base.extend(t.prototype,{_lazyDistribute:function(e){e.shadyRoot&&e.shadyRoot._distributionClean&&(e.shadyRoot._distributionClean=!1,Polymer.dom.addDebouncer(e.debounce("_distribute",e._distributeContent)))},appendChild:function(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.notifyObserver(),e},_addNode:function(e,t){var o=this.getOwnerRoot();if(o){var n=this._maybeAddInsertionPoint(e,this.node);o._invalidInsertionPoints||(o._invalidInsertionPoints=n),this._addNodeToHost(o.host,e)}i.Logical.hasChildNodes(this.node)&&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.firstChild;)i.Composed.removeChild(e,e.firstChild);else{var r=i.Composed.getParentNode(e);r&&i.Composed.removeChild(r,e)}return s},removeChild:function(e){if(i.Logical.getParentNode(e)!==this.node)throw Error("The node to be removed is not a child of this node: "+e);if(!this._removeNode(e)){var t=this.node._isShadyRoot?this.node.host:this.node,o=i.Composed.getParentNode(e);t===o&&i.Composed.removeChild(t,e)}return this.notifyObserver(),e},_removeNode:function(e){var t,n=i.Logical.hasParentNode(e)&&i.Logical.getParentNode(e),s=this._ownerShadyRootForNode(e);return n&&(t=o(e)._maybeDistributeParent(),i.Logical.recordRemoveChild(e,n),s&&this._removeDistributedChildren(s,e)&&(s._invalidInsertionPoints=!0,this._lazyDistribute(s.host))),this._removeOwnerShadyRoot(e),s&&this._removeNodeFromHost(s.host,e),t},replaceChild:function(e,t){return this.insertBefore(e,t),this.removeChild(t),e},_hasCachedOwnerRoot:function(e){return Boolean(void 0!==e._ownerShadyRoot)},getOwnerRoot:function(){return this._ownerShadyRootForNode(this.node)},_ownerShadyRootForNode: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._ownerShadyRoot=t)}return t}},_maybeDistribute:function(e){var t=e.nodeType===Node.DOCUMENT_FRAGMENT_NODE&&!e.__noContent&&o(e).querySelector(s),n=t&&i.Logical.getParentNode(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._nodeNeedsDistribution(this.node);return a&&this._lazyDistribute(this.node),a||r&&!n},_maybeAddInsertionPoint:function(e,t){var n;if(e.nodeType!==Node.DOCUMENT_FRAGMENT_NODE||e.__noContent)e.localName===s&&(i.Logical.saveChildNodes(t),i.Logical.saveChildNodes(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._maybeAddInsertionPoint(r,d),n=n||a;return n},_updateInsertionPoints:function(e){for(var t,n=e.shadyRoot._insertionPoints=o(e.shadyRoot).querySelectorAll(s),r=0;r<n.length;r++)t=n[r],i.Logical.saveChildNodes(t),i.Logical.saveChildNodes(i.Logical.getParentNode(t))},_nodeNeedsDistribution:function(e){return e&&e.shadyRoot&&t.hasInsertionPoint(e.shadyRoot)},_addNodeToHost:function(e,t){e._elementAdd&&e._elementAdd(t)},_removeNodeFromHost:function(e,t){e._elementRemove&&e._elementRemove(t)},_removeDistributedChildren:function(e,t){for(var n,s=e._insertionPoints,r=0;r<s.length;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.removeChild(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._hasCachedOwnerRoot(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:function(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},querySelector: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},querySelectorAll:function(e){return this._query(function(o){return t.matchesSelector.call(o,e)},this.node)},getDestinationInsertionPoints:function(){return this.node._destinationInsertionPoints||[]},getDistributedNodes:function(){return this.node._distributedNodes||[]},_clear:function(){for(;this.childNodes.length;)this.removeChild(this.childNodes[0])},setAttribute:function(e,t){this.node.setAttribute(e,t),this._maybeDistributeParent()},removeAttribute:function(e){this.node.removeAttribute(e),this._maybeDistributeParent()},_maybeDistributeParent:function(){if(this._nodeNeedsDistribution(this.parentNode))return this._lazyDistribute(this.parentNode),!0},cloneNode:function(e){var t=r.call(this.node,!1);if(e)for(var i,n=this.childNodes,s=o(t),d=0;d<n.length;d++)i=o(n[d]).cloneNode(!0),s.appendChild(i);return t},importNode:function(e,t){var n=this.node instanceof Document?this.node:this.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.defineProperties(t.prototype,{activeElement:{get:function(){var e=document.activeElement;if(!e)return null;var t=!!this.node._isShadyRoot;if(this.node!==document){if(!t)return 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 this.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(){return i.Logical.hasChildNodes(this.node)?Array.prototype.filter.call(this.childNodes,function(e){return e.nodeType===Node.ELEMENT_NODE}):i.arrayCopyChildren(this.node)},configurable:!0},parentNode:{get:function(){return i.Logical.getParentNode(this.node)},configurable:!0},firstChild:{get:function(){return i.Logical.getFirstChild(this.node)},configurable:!0},lastChild:{get:function(){return i.Logical.getLastChild(this.node)},configurable:!0},nextSibling:{get:function(){return i.Logical.getNextSibling(this.node)},configurable:!0},previousSibling:{get:function(){return i.Logical.getPreviousSibling(this.node)},configurable:!0},firstElementChild:{get:function(){return i.Logical.getFirstElementChild(this.node)},configurable:!0},lastElementChild:{get:function(){return i.Logical.getLastElementChild(this.node)},configurable:!0},nextElementSibling:{get:function(){return i.Logical.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.childNodes;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===Node.COMMENT_NODE?this.node.textContent=e:(this._clear(),e&&this.appendChild(document.createTextNode(e)))},configurable:!0},innerHTML:{get:function(){var e=this.node.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])}},configurable:!0}}),t.hasInsertionPoint=function(e){return Boolean(e&&e._insertionPoints.length)}}}(),function(){"use strict";var e=Polymer.Settings,t=Polymer.TreeApi,o=Polymer.DomApi;if(e.useShadow){Polymer.Base.extend(o.prototype,{querySelectorAll:function(e){return t.arrayCopy(this.node.querySelectorAll(e))},getOwnerRoot:function(){for(var e=this.node;e;){if(e.nodeType===Node.DOCUMENT_FRAGMENT_NODE&&e.host)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)},getDestinationInsertionPoints:function(){var e=this.node.getDestinationInsertionPoints&&this.node.getDestinationInsertionPoints();return e?t.arrayCopy(e):[]},getDistributedNodes:function(){var e=this.node.getDistributedNodes&&this.node.getDistributedNodes();return e?t.arrayCopy(e):[]}}),Object.defineProperties(o.prototype,{activeElement:{get:function(){var e=o.wrap(this.node),t=e.activeElement;return e.contains(t)?t:null},configurable:!0},childNodes:{get:function(){return t.arrayCopyChildNodes(this.node)},configurable:!0},children:{get:function(){return t.arrayCopyChildren(this.node)},configurable:!0},textContent:{get:function(){return this.node.textContent},set:function(e){return this.node.textContent=e},configurable:!0},innerHTML:{get:function(){return this.node.innerHTML},set:function(e){return this.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=function(e){for(var t=0;t<e.length;t++)r(e[t])},r=function(e){Object.defineProperty(o.prototype,e,{get:function(){return this.node[e]},configurable:!0})};s(["parentNode","firstChild","lastChild","nextSibling","previousSibling","firstElementChild","lastElementChild","nextElementSibling","previousElementSibling"])}}(),Polymer.Base.extend(Polymer.dom,{_flushGuard:0,_FLUSH_MAX:100,_needsTakeRecords:!Polymer.Settings.useNativeCustomElements,_debouncers:[],_staticFlushList:[],_finishDebouncer:null,flush:function(){for(this._flushGuard=0,this._prepareFlush();this._debouncers.length&&this._flushGuard<this._FLUSH_MAX;){for(;this._debouncers.length;)this._debouncers.shift().complete();this._finishDebouncer&&this._finishDebouncer.complete(),this._prepareFlush(),this._flushGuard++}this._flushGuard>=this._FLUSH_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]()},addStaticFlush: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(){Polymer.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.Event.prototype={get rootTarget(){return this.event.path[0]},get localTarget(){return 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(){return 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).getDestinationInsertionPoints();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 this.event._path}};var o=function(t){return t.__eventApi||(t.__eventApi=new e.Event(t)),t.__eventApi};return{factory:o}}(),function(){"use strict";var e=Polymer.DomApi.ctor,t=Polymer.Settings.useShadow;Object.defineProperty(e.prototype,"classList",{get:function(){return this._classList||(this._classList=new e.ClassList(this)),this._classList},configurable:!0}),e.ClassList=function(e){this.domApi=e,this.node=e.node},e.ClassList.prototype={add:function(){this.node.classList.add.apply(this.node.classList,arguments),this._distributeParent()},remove:function(){this.node.classList.remove.apply(this.node.classList,arguments),this._distributeParent()},toggle:function(){this.node.classList.toggle.apply(this.node.classList,arguments),this._distributeParent()},_distributeParent:function(){t||this.domApi._maybeDistributeParent()},contains:function(){return this.node.classList.contains.apply(this.node.classList,arguments)}}}(),function(){"use strict";var e=Polymer.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._listeners.splice(t,1),e._nodes=[]),this._hasListeners()||(this._cleanup(),this._isSetup=!1)},_setup:function(){this._observeContentElements(this.domApi.childNodes)},_cleanup:function(){this._unobserveContentElements(this.domApi.childNodes)},_hasListeners:function(){return Boolean(this._listeners.length)},_scheduleNotify:function(){this._debouncer&&this._debouncer.stop(),this._debouncer=Polymer.Debounce(this._debouncer,this._notify),this._debouncer.context=this,Polymer.dom.addDebouncer(this._debouncer)},notify:function(){this._hasListeners()&&this._scheduleNotify()},_notify:function(){this._beforeCallListeners(),this._callListeners()},_beforeCallListeners:function(){this._updateContentElements()},_updateContentElements:function(){this._observeContentElements(this.domApi.childNodes)},_observeContentElements: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.has(this)||t.__observeNodesMap.set(this,this._observeContent(t)))},_observeContent:function(e){var t=this,o=Polymer.dom(e).observeNodes(function(){t._scheduleNotify()});return o._avoidChangeCalculation=!0,o},_unobserveContentElements:function(e){for(var t,o,i=0;i<e.length&&(t=e[i]);i++)this._isContent(t)&&(o=t.__observeNodesMap.get(this),o&&(Polymer.dom(t).unobserveNodes(o),t.__observeNodesMap.delete(this)))},_isContent:function(e){return"content"===e.localName},_callListeners:function(){for(var e,t=this._listeners,o=this._getEffectiveNodes(),i=0;i<t.length&&(e=t[i]);i++){var n=this._generateListenerInfo(e,o);(n||e._alwaysNotify)&&this._callListener(e,n)}},_getEffectiveNodes:function(){return this.domApi.getEffectiveChildNodes()},_generateListenerInfo:function(e,t){if(e._avoidChangeCalculation)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++)for(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.addedNodes.push(t[a]);return e._nodes=t,n.addedNodes.length||n.removedNodes.length?n:void 0},_callListener:function(e,t){return e.fn.call(this.node,t)},enableShadowAttributeTracking:function(){}},t.useShadow){var o=e.EffectiveNodesObserver.prototype._setup,i=e.EffectiveNodesObserver.prototype._cleanup;Polymer.Base.extend(e.EffectiveNodesObserver.prototype,{_setup:function(){if(!this._observer){var e=this;this._mutationHandler=function(t){t&&t.length&&e._scheduleNotify()},this._observer=new MutationObserver(this._mutationHandler),this._boundFlush=function(){e._flush()},Polymer.dom.addStaticFlush(this._boundFlush),this._observer.observe(this.node,{childList:!0})}o.call(this)},_cleanup:function(){this._observer.disconnect(),this._observer=null,this._mutationHandler=null,Polymer.dom.removeStaticFlush(this._boundFlush),i.call(this)},_flush:function(){this._observer&&this._mutationHandler(this._observer.takeRecords())},enableShadowAttributeTracking:function(){if(this._observer){this._makeContentListenersAlwaysNotify(),this._observer.disconnect(),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&&Polymer.dom(t).observer.enableShadowAttributeTracking()}},_makeContentListenersAlwaysNotify:function(){for(var e,t=0;t<this._listeners.length;t++)e=this._listeners[t],e._alwaysNotify=e._isContentListener}})}}(),function(){"use strict";var e=Polymer.DomApi.ctor,t=Polymer.Settings;e.DistributedNodesObserver=function(t){e.EffectiveNodesObserver.call(this,t)},e.DistributedNodesObserver.prototype=Object.create(e.EffectiveNodesObserver.prototype),Polymer.Base.extend(e.DistributedNodesObserver.prototype,{_setup:function(){},_cleanup:function(){},_beforeCallListeners:function(){},_getEffectiveNodes:function(){return this.domApi.getDistributedNodes()}}),t.useShadow&&Polymer.Base.extend(e.DistributedNodesObserver.prototype,{_setup:function(){if(!this._observer){var e=this.domApi.getOwnerRoot(),t=e&&e.host;if(t){var o=this;this._observer=Polymer.dom(t).observeNodes(function(){o._scheduleNotify()}),this._observer._isContentListener=!0,this._hasAttrSelect()&&Polymer.dom(t).observer.enableShadowAttributeTracking()}}},_hasAttrSelect:function(){var e=this.node.getAttribute("select");return e&&e.match(/[[.]+/)},_cleanup:function(){var e=this.domApi.getOwnerRoot(),t=e&&e.host;t&&Polymer.dom(t).unobserveNodes(this._observer),this._observer=null}})}(),function(){function e(e,t){t._distributedNodes.push(e);var o=e._destinationInsertionPoints;o?o.push(t):e._destinationInsertionPoints=[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"content"==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._insertionPoints.length;o++)t=e._insertionPoints[o],h.hasApi(t)&&Polymer.dom(t).notifyObserver()}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=Polymer.DomApi,u=Polymer.TreeApi;Polymer.Base._addFeature({_prepShady:function(){this._useContent=this._useContent||Boolean(this._template)},_setupShady:function(){this.shadyRoot=null,this.__domApi||(this.__domApi=null),this.__dom||(this.__dom=null),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(this)))},_createLocalRoot:function(){this.shadyRoot=this.root,this.shadyRoot._distributionClean=!1,this.shadyRoot._hasDistributed=!1,this.shadyRoot._isShadyRoot=!0,this.shadyRoot._dirtyRoots=[];var e=this.shadyRoot._insertionPoints=!this._notes||this._notes._hasContent?this.shadyRoot.querySelectorAll("content"):[];u.Logical.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=this},get domHost(){var e=Polymer.dom(this).getOwnerRoot();return e&&e.host},distributeContent:function(e){if(this.shadyRoot){this.shadyRoot._invalidInsertionPoints=this.shadyRoot._invalidInsertionPoints||e;var t=s(this);Polymer.dom(this)._lazyDistribute(t)}},_distributeContent:function(){this._useContent&&!this.shadyRoot._distributionClean&&(this.shadyRoot._invalidInsertionPoints&&(Polymer.dom(this)._updateInsertionPoints(this),this.shadyRoot._invalidInsertionPoints=!1),this._beginDistribute(),this._distributeDirtyRoots(),this._finishDistribute())},_beginDistribute:function(){this._useContent&&h.hasInsertionPoint(this.shadyRoot)&&(this._resetDistribution(),this._distributePool(this.shadyRoot,this._collectPool())); },_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._distributionClean=!0,h.hasInsertionPoint(this.shadyRoot))this._composeTree(),d(this.shadyRoot);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._hasDistributed=!0}},elementMatches:function(e,t){return t=t||this,h.matchesSelector.call(t,e)},_resetDistribution:function(){for(var e=u.Logical.getChildNodes(this),o=0;o<e.length;o++){var i=e[o];i._destinationInsertionPoints&&(i._destinationInsertionPoints=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._distributeInsertionPoint(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]=void 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.addedCount}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:function(){},_elementRemove:function(){}});var c=window.CustomElements&&!CustomElements.useNative}(),Polymer.Settings.useShadow&&Polymer.Base._addFeature({_poolContent:function(){},_beginDistribute:function(){},distributeContent:function(){},_distributeContent:function(){},_finishDistribute:function(){},_createLocalRoot:function(){this.createShadowRoot(),this.shadowRoot.appendChild(this.root),this.root=this.shadowRoot}}),Polymer.Async={_currVal:0,_lastVal:0,_callbacks:[],_twiddleContent:0,_twiddle:document.createTextNode(""),run:function(e,t){return t>0?~setTimeout(e,t):(this._twiddle.textContent=this._twiddleContent++,this._callbacks.push(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;this._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++,this._callbacks.splice(0,t),this._lastVal+=t,this._twiddle.textContent=this._twiddleContent++,e}}this._callbacks.splice(0,e),this._lastVal+=e}},new window.MutationObserver(function(){Polymer.Async._atEndOfMicrotask()}).observe(Polymer.Async._twiddle,{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.context=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.boundComplete,o),this.callback=e},stop:function(){this.finish&&(this.finish(),this.finish=null,this.callback=null)},complete:function(){if(this.finish){var e=this.callback;this.stop(),e.call(this.context)}}},e}(),Polymer.Base._addFeature({_setupDebouncers:function(){this._debouncers={}},debounce:function(e,t,o){return this._debouncers[e]=Polymer.Debounce.call(this,this._debouncers[e],t,o)},isDebouncerActive:function(e){var t=this._debouncers[e];return!(!t||!t.finish)},flushDebouncer:function(e){var t=this._debouncers[e];t&&t.complete()},cancelDebouncer:function(e){var t=this._debouncers[e];t&&t.stop()}}),Polymer.DomModule=document.createElement("dom-module"),Polymer.Base._addFeature({_registerFeatures:function(){this._prepIs(),this._prepBehaviors(),this._prepConstructor(),this._prepTemplate(),this._prepShady(),this._prepPropertyInfo()},_prepBehavior:function(e){this._addHostAttributes(e.hostAttributes)},_initFeatures:function(){this._registerHost(),this._template&&(this._poolContent(),this._beginHosting(),this._stampTemplate(),this._endHosting()),this._marshalHostAttributes(),this._setupDebouncers(),this._marshalBehaviors(),this._tryReady()},_marshalBehavior:function(e){}})</script><script>Polymer.nar=[],Polymer.Annotations={parseAnnotations:function(e){var t=[],n=e._content||e.content;return this._parseNodeAnnotations(n,t,e.hasAttribute("strip-whitespace")),t},_parseNodeAnnotations:function(e,t,n){return e.nodeType===Node.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.exec(e));){t.index>s&&r.push({literal:e.slice(s,t.index)});var i,o,a,l=t[1][0],c=Boolean(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,event: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},_parseTextNodeAnnotation: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}},_parseElementAnnotations: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},_parseChildNodesAnnotations:function(e,t,n,r){if(e.firstChild)for(var s=e.firstChild,i=0;s;){var o=s.nextSibling;if("template"!==s.localName||s.hasAttribute("preserve-content")||this._parseTemplate(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.textContent+=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(var t=e.ownerDocument.createElement("content");e.firstChild;)t.appendChild(e.firstChild);for(var n=e.attributes,r=0;r<n.length;r++){var s=n[r];t.setAttribute(s.name,s.value)}var i=e.getAttribute("name"),o=i?"[slot='"+i+"']":":not([slot])";return t.setAttribute("select",o),e.parentNode.replaceChild(t,e),t},_parseTemplate:function(e,t,n,r){var s=document.createDocumentFragment();s._notes=this.parseAnnotations(e),s.appendChild(e.content),n.push({bindings:Polymer.nar,events:Polymer.nar,templateContent:s,parent:r,index:t})},_parseNodeAttributeAnnotations:function(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.events.push({name:o.slice(3),value:a})):(i=this._parseNodeAttributeAnnotation(e,o,a))?t.bindings.push(i):"id"===o&&(t.id=a)}},_parseNodeAttributeAnnotation:function(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&&"attribute"==i&&e.setAttribute(t,o),"input"===e.localName&&"value"===s&&e.setAttribute(s,""),e.removeAttribute(s);var a=Polymer.CaseMap.dashToCamelCase(t);return"property"===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.findAnnotatedNode(e,t.parent);if(!n)return e;for(var r=n.firstChild,s=0;r;r=r.nextSibling)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="style"===i?e(a,r):n(a,r)))}function n(e,t){if(e&&c.test(e))return e;var n=s(t);return n.href=e,n.href||e}function r(e,t){return i||(i=document.implementation.createHTMLDocument("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={resolveCss:e,resolveAttrs:t,resolveUrl:r}}(),Polymer.Path={root:function(e){var t=e.indexOf(".");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:function(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._prepElement(t)},this._template._content&&this._template._content._notes?this._notes=this._template._content._notes:(this._notes=Polymer.Annotations.parseAnnotations(this._template),this._processAnnotations(this._notes)),Polymer.Annotations.prepElement=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._parseMethod(o.value);a?o.signature=a:o.model=Polymer.Path.root(o.value)}}if(n.templateContent){this._processAnnotations(n.templateContent._notes);var l=n.templateContent._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.concat(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.signature.method]=!0)}else a.model&&(n[a.model]=!0);if(t.templateContent){var p=t.templateContent._parentProps;Polymer.Base.mixin(n,p)}}return n},_prepElement:function(e){Polymer.ResolveUrl.resolveAttrs(e,this._template.ownerDocument)},_findAnnotatedNode:Polymer.Annotations.findAnnotatedNode,_marshalAnnotationReferences:function(){this._template&&(this._marshalIdNodes(),this._marshalAnnotatedNodes(),this._marshalAnnotatedListeners())},_configureAnnotationReferences:function(){for(var e=this._notes,t=this._nodes,n=0;n<e.length;n++){var r=e[n],s=t[n];this._configureTemplateContent(r,s),this._configureCompoundBindings(r,s)}},_configureTemplateContent:function(e,t){e.templateContent&&(t._content=e.templateContent)},_configureCompoundBindings: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.__compoundStorage__={}),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._findAnnotatedNode(this.root,e))},_marshalAnnotatedNodes:function(){if(this._notes&&this._notes.length){for(var e=new Array(this._notes.length),t=0;t<this._notes.length;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._findAnnotatedNode(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._recallEventHandler(this,t,e,n);r||(r=this._createEventHandler(e,t,n)),r._listening||(this._listen(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.__boundListeners=new WeakMap);var o=i.get(n);o||(o={},i.set(n,o));var a=this._boundListenerKey(t,r);o[a]=s},_recallEventHandler:function(e,t,n,r){var s=e.__boundListeners;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:function(e,t,n){e.removeEventListener(t,n)}}),function(){"use strict";function e(e){for(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.mouse.mouseIgnoreJob=Polymer.Debounce(S.mouse.mouseIgnoreJob,t,d)}function n(e){var t=e.type;if(m.indexOf(t)===-1)return!1;if("mousemove"===t){var n=void 0===e.buttons?1:e.buttons;return e instanceof window.MouseEvent&&!v&&(n=y[e.which]||0),Boolean(1&n)}var r=void 0===e.button?0:e.button;return 0===r}function r(e){if("click"===e.type){if(0===e.detail)return!0;var t=C.findOriginalTarget(e),n=t.getBoundingClientRect(),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("mouseup",n)}function o(e){document.removeEventListener("mousemove",e.movefn),document.removeEventListener("mouseup",e.upfn),e.movefn=null,e.upfn=null}var a=Polymer.DomApi.wrap,l="string"==typeof document.head.style.touchAction,c="__polymerGestures",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.sourceCapabilities;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)return;e.preventDefault(),e.stopPropagation()}},S={mouse:{target:null,mouseIgnoreJob:null},touch:{x:0,y:0,id:-1,scrollDecided:!1}},C={gestures:{},recognizers:[],deepTargetFind:function(e,t){for(var n=document.elementFromPoint(e,t),r=n;r&&r.shadowRoot;)r=r.shadowRoot.elementFromPoint(e,t),r&&(n=r);return n},findOriginalTarget: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.touches.length&&(S.touch.id=u.identifier),S.touch.id!==u.identifier)return;l||"touchstart"!==r&&"touchmove"!==r||C.handleTouchAction(e),"touchend"===r&&(S.mouse.target=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.name]&&(n[f.name]=!0,f[r](e))}}}},handleTouchAction:function(e){var t=e.changedTouches[0],n=e.type;if("touchstart"===n)S.touch.x=t.clientX,S.touch.y=t.clientY,S.touch.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.abs(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={_count: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.setTouchAction(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.recognizers.push(e);for(var t=0;t<e.emits.length;t++)this.gestures[e.emits[t]]=e},findRecognizerByEvent:function(e){for(var t,n=0;n<this.recognizers.length;n++){t=this.recognizers[n];for(var r,s=0;s<t.emits.length;s++)if(r=t.emits[s],r===e)return 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.mouseIgnoreJob&&S.mouse.mouseIgnoreJob.complete()}};C.register({name:"downup",deps:["mousedown","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=this,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:function(e){this.fire("down",C.findOriginalTarget(e),e.changedTouches[0],e)},touchend:function(e){this.fire("up",C.findOriginalTarget(e),e.changedTouches[0],e)},fire:function(e,t,n,r){C.fire(t,e,{x:n.clientX,y:n.clientY,sourceEvent:n,preventer:r,prevent:function(e){return C.prevent(e)}})}}),C.register({name:"track",touchAction:"none",deps:["mousedown","touchstart","touchmove","touchend"],flow:{start:["mousedown","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:function(){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(this.info.x-e),r=Math.abs(this.info.y-t);return n>=p||r>=p},mousedown:function(e){if(n(e)){var t=C.findOriginalTarget(e),r=this,s=function(e){var s=e.clientX,i=e.clientY;r.hasMovedEnough(s,i)&&(r.info.state=r.info.started?"mouseup"===e.type?"end":"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=function(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.info.x=t.clientX,this.info.y=t.clientY},touchmove:function(e){var t=C.findOriginalTarget(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}),this.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.info.state="end",this.info.addMove({x:n.clientX,y:n.clientY}),this.fire(t,n,e))},fire: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:["mousedown","click","touchstart","touchend"],flow:{start:["mousedown","touchstart"],end:["click","touchend"]},emits:["tap"],info:{x:NaN,y:NaN,prevent:!1},reset:function(){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.changedTouches[0],e)},touchend:function(e){this.forward(e.changedTouches[0],e)},forward: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,preventer:t}))}});var E={x:"pan-x",y:"pan-y",none:"none",all:"auto"};Polymer.Base._addFeature({_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)},setScrollDirection: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 Polymer.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:function(e,t,n){n&&Polymer.dom(n).removeAttribute(e),t&&Polymer.dom(t).setAttribute(e,"")},getEffectiveChildNodes:function(){return Polymer.dom(this).getEffectiveChildNodes()},getEffectiveChildren:function(){var e=Polymer.dom(this).getEffectiveChildNodes();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).textContent);return n.join("")},queryEffectiveChildren:function(e){var t=Polymer.dom(this).queryDistributedElements(e);return t&&t[0]},queryAllEffectiveChildren:function(e){return Polymer.dom(this).queryDistributedElements(e)},getContentChildNodes:function(e){var t=Polymer.dom(this.root).querySelector(e||"content");return t?Polymer.dom(t).getDistributedNodes():[]},getContentChildren:function(e){return this.getContentChildNodes(e).filter(function(e){return e.nodeType===Node.ELEMENT_NODE})},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._useCache,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:function(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){var n=this;return Polymer.Async.run(function(){e.call(n)},t)},cancelAsync:function(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.indexOf(t),n>=0)return this.splice(e,n,1)}},transform:function(e,t){t=t||this,t.style.webkitTransform=e,t.style.transform=e},translate3d:function(e,t,n,r){r=r||this,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.Base.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.removeEventListener("load",c),t.call(l,e)};a.addEventListener("load",c)}if(n){var h=function(e){return e.target.__firedError=!0,e.target.removeEventListener("error",h),n.call(l,e)};a.addEventListener("error",h)}return o?(o.__firedLoad&&o.dispatchEvent(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()},isLocalDescendant:function(e){return this.root===Polymer.dom(e).getOwnerRoot()}}),!Polymer.Settings.useNativeCustomElements){var e=Polymer.Base.importHref;Polymer.Base.importHref=function(t,n,r,s){CustomElements.ready=!1;var i=function(e){if(CustomElements.upgradeDocumentTree(document),CustomElements.ready=!0,n)return n.call(this,e)};return e.call(this,t,i,r,s)}}}(),Polymer.Bind={prepareModel:function(e){Polymer.Base.mixin(e,this._modelApi)},_modelApi:{_notifyChange:function(e,t,n){n=void 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,"object"==typeof t&&this._clearPath(e),this._propertyChanged&&this._propertyChanged(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.length;o<a&&(i=n[o]);o++)i.fn.call(this,e,this[e],i.effect,r,s)},_clearPath:function(e){for(var t in this.__data__)Polymer.Path.isDescendant(e,t)&&(this.__data__[t]=void 0)}},ensurePropertyEffects:function(e,t){e._propertyEffects||(e._propertyEffects={});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},createBindings: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 this.__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.set=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:function(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];this._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&&"attribute"!=e.kind&&"text"!=e.kind&&!e.isCompound&&"{"===e.parts[0].mode},_annotationEffect: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.reflectPropertyToAttribute(e,n.attribute,t)},_notifyEffect:function(e,t,n,r,s){s||this._notifyChange(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=Polymer.Bind._marshalArgs(this.__data__,n,e,t);s&&r.apply(this,s)}else n.dynamicFn||this._warn(this._logf("_complexObserverEffect","observer method `"+n.method+"` not defined"))},_computeEffect:function(e,t,n){var r=this[n.method];if(r){var s=Polymer.Bind._marshalArgs(this.__data__,n,e,t);if(s){var i=r.apply(this,s);this.__setProperty(n.name,i)}}else n.dynamicFn||this._warn(this._logf("_computeEffect","compute method `"+n.method+"` not defined"))},_annotatedComputationEffect:function(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._applyEffectValue(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.name;if(h.literal?c=h.value:n===u?c=r:(c=e[u],void 0===c&&h.structured&&(c=Polymer.Base._get(u,e))),o&&void 0===c)return;if(h.wildcard){var f=Polymer.Path.isAncestor(n,u);s[a]={path:f?n:u,value:f?r:c,base:c}}else s[a]=c}return s}}),Polymer.Base._addFeature({_addPropertyEffect:function(e,t,n){var r=Polymer.Bind.addPropertyEffect(this,e,t,n);r.pathFn=this["_"+r.kind+"PathEffect"]},_prepEffects:function(){Polymer.Bind.prepareModel(this),this._addAnnotationEffects(this._notes)},_prepBindings:function(){Polymer.Bind.createBindings(this)},_addPropertyEffects:function(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.camelToDashCase(t)+"-changed"}),n.reflectToAttribute){var r=Polymer.CaseMap.camelToDashCase(t);"-"===r[0]?this._warn(this._logf("_addPropertyEffects","Property "+t+" cannot be reflected to attribute "+r+' because "-" is not a valid starting attribute name. Use a lowercase first letter for the property instead.')):this._addPropertyEffect(t,"reflect",{attribute:r})}n.readOnly&&Polymer.Bind.ensurePropertyEffects(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.model,"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)},_addComplexObserverEffect:function(e){var t=this._parseMethod(e);if(!t)throw new Error("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",{method:t.method,args:t.args,trigger:n,dynamicFn:r});r&&this._addPropertyEffect(t.method,"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)},_addAnnotationEffect: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._addAnnotatedComputationEffect(e,r,t):r.literal||("attribute"===e.kind&&"-"===e.name[0]?this._warn(this._logf("_addAnnotationEffect","Cannot set attribute "+e.name+' because "-" is not a valid attribute starting character')):this._addPropertyEffect(r.model,"annotation",{kind:e.kind,index:t,name:e.name,propertyName:e.propertyName,value:r.value,isCompound:e.isCompound,compoundIndex:r.compoundIndex,event:r.event,customEvent:r.customEvent,negate:r.negate}))}},_addAnnotatedComputationEffect:function(e,t,n){var r=t.signature;if(r.static)this.__addAnnotatedComputationEffect("__static__",n,e,t,null);else{for(var s,i=0;i<r.args.length&&(s=r.args[i]);i++)s.literal||this.__addAnnotatedComputationEffect(s.model,n,e,t,s);r.dynamicFn&&this.__addAnnotatedComputationEffect(r.method,n,e,t,null)}},__addAnnotatedComputationEffect:function(e,t,n,r,s){this._addPropertyEffect(e,"annotatedComputation",{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.match(/([^\s]+?)\(([\s\S]*)\)/);if(t){var n={method:t[1],static:!0};if(this.getPropertyInfo(n.method)!==Polymer.nob&&(n.static=!1,n.dynamicFn=!0),t[2].trim()){var r=t[2].replace(/\\,/g,",").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:function(e){var t=e.trim().replace(/,/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}return 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),this._bindListeners&&Polymer.Bind.setupBindListeners(this)},_applyEffectValue:function(e,t){var n=this._nodes[e.index],r=e.name;if(t=this._computeFinalAnnotationValue(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("")}return"attribute"!==r.kind&&("className"===t&&(n=this._scopeElementClass(e,n)),("textContent"===t||"input"==e.localName&&"value"==t)&&(n=void 0==n?"":n)),n},_executeStaticEffects:function(){this._propertyEffects&&this._propertyEffects.__static__&&this._effectEffects("__static__",null,this._propertyEffects.__static__)}}),function(){var e=Polymer.Settings.usePolyfillProto;Polymer.Base._addFeature({_setupConfigure: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:function(e){var t=this._clientsReadied?this:this._config;this._setAttributeToProperty(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._configureInstanceProperties(),this._aboveConfig=this.mixin({},this._config);for(var e={},t=0;t<this.behaviors.length;t++)this._configureProperties(this.behaviors[t].properties,e);this._configureProperties(this.properties,e),this.mixin(e,this._aboveConfig),this._config=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]), delete this[t])},_configureProperties:function(e,t){for(var n in e){var r=e[n];if(void 0!==r.value){var s=r.value;"function"==typeof s&&(s=s.call(this,this._config)),t[n]=s}}},_distributeConfig:function(e){var t=this._propertyEffects;if(t)for(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("annotation"===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._configValue&&(h||!c)){var u=n===s.effect.value?e[n]:this._get(s.effect.value,e);u=this._computeFinalAnnotationValue(a,l,u,s.effect),c&&(u=a.deserialize(this.serialize(u),a._propertyInfo[l].type)),a._configValue(l,u)}}}},_afterClientsReady:function(){this._executeStaticEffects(),this._applyConfig(this._config,this._aboveConfig),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(!Polymer.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._queueHandler([e,t.target,n,r])}},_queueHandler:function(e){this._handlers.push(e)},_flushHandlers: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},_getPathParts: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}return e.toString().split(".")},set:function(e,t,n){var r,s=n||this,i=this._getPathParts(e),o=i[i.length-1];if(i.length>1){for(var a=0;a<i.length-1;a++){var l=i[a];if(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:null}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.setItem(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._getPathParts(e),o=0;o<i.length;o++){if(!s)return;var a=i[o];r&&"#"==a[0]?s=Polymer.Collection.get(r).getItem(a):(s=s[a],n&&r&&parseInt(a,10)==a&&(i[o]=Polymer.Collection.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)},_annotationPathEffect:function(t,n,r){if(e.matches(r.value,!1,t))Polymer.Bind._annotationEffect.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.trigger.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.wildcard,t)&&Polymer.Bind._computeEffect.call(this,t,n,r)},_annotatedComputationPathEffect: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)},unlinkPaths:function(e){this._boundPaths&&delete this._boundPaths[e]},_notifyBoundPaths: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)&&this._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,{path: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+".length",e.length),this.__data__[s]={keySplices:null,indexSplices:null}},_notifySplice: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=Array.prototype.slice.call(arguments,1),s=n.length,i=n.push.apply(n,r);return r.length&&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},splice: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.length),s=Array.prototype.slice.call(arguments,1),i=n.shift.apply(n,s);return r&&this._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:function(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,_complexObserverPathEffect:Polymer.Base._complexObserverPathEffect,_annotatedComputationPathEffect:Polymer.Base._annotatedComputationPathEffect,_computePathEffect:Polymer.Base._computePathEffect,_notifyBoundPaths:Polymer.Base._notifyBoundPaths,_getPathParts:Polymer.Base._getPathParts})}})}(),Polymer.Base._addFeature({resolveUrl:function(e){var t=Polymer.DomModule.import(this.is),n="";if(t){var r=t.getAttribute("assetpath")||"";n=Polymer.ResolveUrl.resolveUrl(r,t.ownerDocument.baseURI)}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.rules.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.substring(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._expandUnicodeEscapes(n),n=n.replace(this._rx.multipleSpaces," "),n=n.substring(n.lastIndexOf(";")+1);var s=e.parsedSelector=e.selector=n.trim();e.atRule=0===s.indexOf(this.AT_START),e.atRule?0===s.indexOf(this.MEDIA_START)?e.type=this.types.MEDIA_RULE:s.match(this._rx.keyframesRule)&&(e.type=this.types.KEYFRAMES_RULE,e.keyframesName=e.selector.split(this._rx.multipleSpaces).pop()):0===s.indexOf(this.VAR_START)?e.type=this.types.MIXIN_RULE:e.type=this.types.STYLE_RULE}var i=e.rules;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,function(){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&&!this._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)},removeCustomPropAssignment:function(e){return e.replace(this._rx.customProp,"").replace(this._rx.mixinProp,"")},removeCustomPropApply:function(e){return e.replace(this._rx.mixinApply,"").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_VARIABLES:Polymer.Settings.useNativeCSSProperties,MODULE_STYLES_SELECTOR:"style, link[rel=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)},forActiveRulesInStyles: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.__cssRules&&e.textContent&&(e.__cssRules=this.parser.parse(e.textContent)),e.__cssRules},isKeyframesSelector:function(e){return e.parent&&e.parent.type===this.ruleTypes.KEYFRAMES_RULE},forEachRuleInStyle:function(e,t,n,r){var s,i,o=this.rulesForStyle(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.ruleTypes.MEDIA_RULE){var i=e.selector.match(this.rx.MEDIA_MATCH);i&&(window.matchMedia(i[1]).matches||(s=!0))}e.type===this.ruleTypes.STYLE_RULE?t(e):n&&e.type===this.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.nextSibling||t.firstChild;return this.__lastHeadApplyNode=e,t.insertBefore(e,r)},createScopeStyle:function(e,t){var n=document.createElement("style");return t&&n.setAttribute("scope",t),n.textContent=e,n},__lastHeadApplyNode:null,applyStylePlaceHolder:function(e){var t=document.createComment(" Shady DOM styles for "+e+" "),n=this.__lastHeadApplyNode?this.__lastHeadApplyNode.nextSibling:null,r=document.head;return r.insertBefore(t,n||r.firstChild),this.__lastHeadApplyNode=t,t},cssFromModules: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=Polymer.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._cssText||""},cssFromElement:function(e){for(var t,n="",r=e.content||e,s=Polymer.TreeApi.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.INCLUDE_ATTR);o&&(n+=this.cssFromModules(o,!0)),t=t.__appliedElement||t,t.parentNode.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)return this.getCssBuildType(t)},getCssBuildType:function(e){return e.getAttribute("css-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},processVariableAndFallback: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).trim();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:/^--/,BRACKETED:/\{[^}]*\}/g,HOST_PREFIX:"(?:^|[^.#[:])",HOST_SUFFIX:"($|[.:[\\s>+~])"},resolveCss:Polymer.ResolveUrl.resolveCss,parser:Polymer.CssParse,ruleTypes:Polymer.CssParse.types}}(),Polymer.StyleTransformer=function(){var e=Polymer.StyleUtil,t=Polymer.Settings,n={dom:function(e,t,n,r){this._transformDom(e,t||"",n,r)},_transformDom: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:function(e,t,n,s){if(n)s?e.removeAttribute(r):e.setAttribute(r,t);else if(t)if(e.classList)s?(e.classList.remove(r),e.classList.remove(t)):(e.classList.add(r),e.classList.add(t));else if(e.getAttribute){var i=e.getAttribute(g);s?i&&e.setAttribute(g,i.replace(r,"").replace(t,"")):e.setAttribute(g,(i?i+" ":"")+r+" "+t)}},elementStyles:function(n,r){var s,i=n._styles,o="",a=n.__cssBuild,l=t.useNativeShadow||"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):this.css(_,n.is,n.extends,r,n._scopeCssViaAttr)+"\n\n"}return o.trim()},css:function(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:""},_calcHostScope:function(e,t){return t?"[is="+e+"]":e},rule:function(e,t,n){this._transformRule(e,this._transformComplexSelector,t,n)},_transformRule:function(e,t,n,r){e.selector=e.transformedSelector=this._transformRuleCss(e,t,n,r)},_transformRuleCss: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._transformCompoundSelector(o,i,t,n);r=r||l.stop,s=s||l.hostContext,i=l.combinator,o=l.value}return 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.indexOf(u)>=0?i=!0:e.indexOf(l)>=0?e=this._transformHostSelector(e,r):0!==s&&(e=n?this._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}},_transformSimpleSelector:function(e,t){var n=e.split(v);return n[0]+=t,n.join(v)},_transformHostSelector: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];return s===t?r:S}return e.replace(l,t)},documentRule:function(e){e.selector=e.parsedSelector,this.normalizeRootSelector(e),t.useNativeShadow||this._transformRule(e,this._transformDocumentSelector)},normalizeRootSelector:function(e){e.selector=e.selector.replace(c,"html")},_transformDocumentSelector:function(e){return e.match(_)?this._transformComplexSelector(e,s):this._transformSimpleSelector(e.trim(),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.StyleExtends=function(){var e=Polymer.StyleUtil;return{hasExtends:function(e){return Boolean(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._extendRule(e,s)}e.cssText=e.cssText.replace(r.rx.EXTEND,"")}),e.toCssText(n,function(e){e.selector.match(r.rx.STRIP)&&(e.cssText="")},!0)},_mapRuleOntoParent:function(e){if(e.parent){for(var t,n=e.parent.map||(e.parent.map={}),r=e.selector.split(","),s=0;s<r.length;s++)t=r[s],n[t.trim()]=e;return n}},_findExtendor:function(e,t){return t.parent&&t.parent.map&&t.parent.map[e]||this._findExtendor(e,t.parent)},_extendRule:function(e,t){e.parent!==t.parent&&this._cloneAndAddRuleToParent(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)},_cloneAndAddRuleToParent:function(e,t){e=Object.create(e),e.parent=t,e.extends&&(e.extends=e.extends.slice()),t.rules.push(e)},rx:{EXTEND:/@extends\(([^)]*)\)\s*?;/gim,STRIP:/%[^,]*$/}}}(),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.slice(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.__currentElementProto;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.join("; ")}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.MIXIN_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,_separator: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:function(e){var t=e.parsedCssText;t=t.replace(f,o),t=t.replace(u,i),e.cssText=t,":root"===e.selector&&(e.selector=":host > *")},_findApplications:function(e){e.cssText=l(e.cssText)},transformRule:function(e){this._findDefinitions(e),this._findApplications(e)},_getInitialValueForProperty:function(e){return this._measureElement||(this._measureElement=document.createElement("meta"),this._measureElement.style.all="initial",document.head.appendChild(this._measureElement)),window.getComputedStyle(this._measureElement).getPropertyValue(e)}};return y._boundTransformRule=y.transformRule.bind(y),y._boundFindDefinitions=y._findDefinitions.bind(y),y._boundFindApplications=y._findApplications.bind(y),y}(),function(){var e=Polymer.Base._prepElement,t=Polymer.Settings.useNativeShadow,n=Polymer.StyleUtil,r=Polymer.StyleTransformer,s=Polymer.StyleExtends,i=Polymer.ApplyShim,o=Polymer.Settings;Polymer.Base._addFeature({_prepElement:function(t){this._encapsulateStyle&&"shady"!==this.__cssBuild&&r.element(t,this.is,this._scopeCssViaAttr),e.call(this,t)},_prepStyles:function(){void 0===this._encapsulateStyle&&(this._encapsulateStyle=!t),t||(this._scopeStyle=n.applyStylePlaceHolder(this.is)),this.__cssBuild=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.cssFromModule(this.is);var l=this._template&&this._template.parentNode;if(!this._template||l&&l.id.toLowerCase()===this.is||(t+=n.cssFromElement(this._template)),t){var c=document.createElement("style");c.textContent=t,s.hasExtends(c.textContent)&&(t=s.transform(c)),e.push(c)}return e},_elementAdd:function(e){this._encapsulateStyle&&(e.__styleScoped?e.__styleScoped=!1:r.dom(e,this.is,this._scopeCssViaAttr))},_elementRemove:function(e){this._encapsulateStyle&&r.dom(e,this.is,this._scopeCssViaAttr,!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("class",r._scopeElementClass(e,t));for(var n,s=e.querySelectorAll("*"),i=0;i<s.length&&(n=s[i]);i++)t=n.getAttribute("class"),n.setAttribute("class",r._scopeElementClass(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}}}})}(),Polymer.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.StyleUtil,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._calcHostScope(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.__notStyleScopeCacheable=t.__notStyleScopeCacheable||s}}),s.collectPropertiesInCssText(e.propertyInfo.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.propertyInfo;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},collectProperties:function(e,t){var n=e.propertyInfo;if(!n){for(var r,s,i,o=this.rx.VAR_ASSIGN,a=e.parsedCssText;r=o.exec(a);)s=(r[2]||r[3]).trim(),"inherit"!==s&&(t[r[1].trim()]=s),i=!0;return i}if(n.properties)return Polymer.Base.mixin(t,n.properties),!0},collectCssText:function(e){return this.collectConsumingCssText(e.parsedCssText)},collectConsumingCssText:function(e){return e.replace(this.rx.BRACKETED,"").replace(this.rx.VAR_ASSIGN,"")},collectPropertiesInCssText:function(e,t){for(var n;n=this.rx.VAR_CONSUMED.exec(e);){var r=n[1];":"!==n[2]&&(t[r]=!0)}},reify:function(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.indexOf(";")>=0)e=this.valueForProperties(e,t);else{var r=this,s=function(e,n,s,i){var 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.processVariableAndFallback(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.lastIndex=0,r=this.rx.MIXIN_MATCH.exec(n))n=this.valueForProperty(t[r[1]],t);else{var o=n.indexOf(":");if(o!==-1){var a=n.substring(o);a=a.trim(),a=this.valueForProperty(a,t)||a,n=n.substring(0,o)+a}}s[i]=n&&n.lastIndexOf(";")===n.length-1?n.slice(0,-1):n||""}return s.join(";")},applyProperties:function(e,t){var n="";e.propertyInfo||this.decorateRule(e),e.propertyInfo.cssText&&(n=this.valueForProperties(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.keyframeNamesToTransform){e.keyframeNamesToTransform=[];for(var i in t)s=t[i],r=s(n),n!==r&&(n=r,e.keyframeNamesToTransform.push(i))}else{for(var o=0;o<e.keyframeNamesToTransform.length;++o)s=t[e.keyframeNamesToTransform[o]],n=s(n);r=n}}e.cssText=r},propertyDataFromStyles:function(r,s){var i={},o=this,a=[];return n.forActiveRulesInStyles(r,function(n){n.propertyInfo||o.decorateRule(n);var r=n.transformedSelector||n.parsedSelector;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.is,e.extends):"html",a=t.parsedSelector,l=this._checkRoot(o,a),c=!l&&0===a.indexOf(":host"),h=e.__cssBuild||n.__cssBuild;if("shady"===h&&(l=a===o+" > *."+o||a.indexOf("html")>-1,c=!l&&0===a.indexOf(o)),l||c){var u=o;c&&(i.useNativeShadow&&!t.transformedSelector&&(t.transformedSelector=r._transformRuleCss(t,r._transformComplexSelector,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.forActiveRulesInStyles(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._elementKeyframeTransforms(e,n);return r.elementStyles(e,function(r){s.applyProperties(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},_keyframesRuleTransformer: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.transformedSelector.replace(e.keyframesName,e.transformedKeyframesName)},_scopeSelector:function(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.transformStyles(e,t,r),l=e._customStyle;return l&&!i.useNativeShadow&&l!==o&&(l._useCount--,l._useCount<=0&&l.parentNode&&l.parentNode.removeChild(l)),i.useNativeShadow?e._customStyle?(e._customStyle.textContent=a,o=e._customStyle):a&&(o=n.applyCss(a,r,e.root,e._scopeStyle)):o?o.parentNode||(s&&a.indexOf("@media")>-1&&(o.textContent=a),n.applyStyle(o,null,e._scopeStyle)):a&&(o=n.applyCss(a,r,null,e._scopeStyle)),o&&(o._useCount=o._useCount||0,e._customStyle!=o&&o._useCount++,e._customStyle=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.__customStyleProperties;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.__customStyleProperties=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._objectsStrictlyEqual(n,r):n===r))return!1;return!Array.isArray(e)||e.length===t.length},_objectsStrictlyEqual:function(e,t){return this._objectsEqual(e,t)&&this._objectsEqual(t,e)}}}(),Polymer.StyleDefaults=function(){var e=Polymer.StyleProperties,t=Polymer.StyleCache,n=Polymer.Settings.useNativeCSSProperties,r={_styles:[],_properties:null,customStyle:{},_styleCache:new t,_element:Polymer.DomApi.wrap(document.documentElement),addStyle:function(e){this._styles.push(e),this._properties=null},get _styleProperties(){return this._properties||(e.decorateStyles(this._styles,this),this._styles._scopeStyleProperties=null,this._properties=e.hostAndRootPropertiesForScope(this).rootProps,e.mixinCustomStyle(this._properties,this.customStyle),e.reify(this._properties)),this._properties},hasStyleProperties:function(){return Boolean(this._properties)},_needsStyleProperties:function(){},_computeStyleProperties:function(){return this._styleProperties},updateStyles:function(t){this._properties=null,t&&Polymer.Base.mixin(this.customStyle,t),this._styleCache.clear();for(var r,s=0;s<this._styles.length;s++)r=this._styles[s],r=r.__importElement||r,r._apply();n&&e.updateNativeStyleProperties(document.documentElement,this.customStyle)}};return r}(),function(){"use strict";var e=Polymer.Base.serializeValueToAttribute,t=Polymer.StyleProperties,n=Polymer.StyleTransformer,r=Polymer.StyleDefaults,s=Polymer.Settings.useNativeShadow,i=Polymer.Settings.useNativeCSSProperties;Polymer.Base._addFeature({_prepStyleProperties:function(){i||(this._ownStylePropertyNames=this._styles&&this._styles.length?t.decorateStyles(this._styles,this):null); -},customStyle:null,getComputedStyleValue:function(e){return!i&&this._styleProperties&&this._styleProperties[e]||getComputedStyle(this).getPropertyValue(e)},_setupStyleProperties:function(){this.customStyle={},this._styleCache=null,this._styleProperties=null,this._scopeSelector=null,this._ownStyleProperties=null,this._customStyle=null},_needsStyleProperties:function(){return Boolean(!i&&this._ownStylePropertyNames&&this._ownStylePropertyNames.length)},_validateApplyShim:function(){if(this.__applyShimInvalid){Polymer.ApplyShim.transform(this._styles,this.__proto__);var e=n.elementStyles(this);if(s){var t=this._template.content.querySelector("style");t&&(t.textContent=e)}else{var r=this._scopeStyle&&this._scopeStyle.nextSibling;r&&(r.textContent=e)}}},_beforeAttached:function(){this._scopeSelector&&!this.__stylePropertiesInvalid||!this._needsStyleProperties()||(this.__stylePropertiesInvalid=!1,this._updateStyleProperties())},_findStyleHost:function(){for(var e,t=this;e=Polymer.dom(t).getOwnerRoot();){if(Polymer.isInstance(e.host))return e.host;t=e.host}return r},_updateStyleProperties:function(){var e,n=this._findStyleHost();n._styleProperties||n._computeStyleProperties(),n._styleCache||(n._styleCache=new Polymer.StyleCache);var r=t.propertyDataFromStyles(n._styles,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),this._computeOwnStyleProperties(),a||(e=o.retrieve(this.is,this._ownStyleProperties,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,_styleProperties:this._styleProperties},i&&(r.key.customStyle={},this.mixin(r.key.customStyle,this.customStyle),n._styleCache.store(this.is,e,r.key,this._styles)),l||o.store(this.is,Object.create(e),this._ownStyleProperties,this._styles))},_computeStyleProperties:function(e){var n=this._findStyleHost();n._styleProperties||n._computeStyleProperties();var r=Object.create(n._styleProperties),s=t.hostAndRootPropertiesForScope(this);this.mixin(r,s.hostProps),e=e||t.propertyDataFromStyles(n._styles,this).properties,this.mixin(r,e),this.mixin(r,s.rootProps),t.mixinCustomStyle(r,this.customStyle),t.reify(r),this._styleProperties=r},_computeOwnStyleProperties:function(){for(var e,t={},n=0;n<this._ownStylePropertyNames.length;n++)e=this._ownStylePropertyNames[n],t[e]=this._styleProperties[e];this._ownStyleProperties=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.style);return s||t.applyElementScopeSelector(this,this._scopeSelector,n,this._scopeCssViaAttr),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._scopeElementClass(r,t))}r=this.shadyRoot&&this.shadyRoot._hasDistributed?Polymer.dom(r):r,e.call(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.updateNativeStyleProperties(this,this.customStyle):(this.isAttached?this._needsStyleProperties()?this._updateStyleProperties():this._styleProperties=null:this.__stylePropertiesInvalid=!0,this._styleCache&&this._styleCache.clear(),this._updateRootStyles())},_updateRootStyles:function(e){e=e||this.root;for(var t,n=Polymer.dom(e)._query(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.updateStyles(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._prepBehaviors(),this._prepPropertyInfo(),this._prepBindings(),this._prepShady()},_prepBehavior:function(e){this._addPropertyEffects(e.properties),this._addComplexObserverEffects(e.observers),this._addHostAttributes(e.hostAttributes)},_initFeatures:function(){this._setupGestures(),this._setupConfigure(),this._setupStyleProperties(),this._setupDebouncers(),this._setupShady(),this._registerHost(),this._template&&(this._validateApplyShim(),this._poolContent(),this._beginHosting(),this._stampTemplate(),this._endHosting(),this._marshalAnnotationReferences()),this._marshalInstanceEffects(),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.StyleTransformer,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.__cssBuild=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.__appliedElement;if(l.useNativeCSSProperties||(this.__needsUpdateStyles=s.hasStyleProperties(),s.addStyle(e)),e.textContent||this.include)this._apply(!0);else{var t=this,n=new MutationObserver(function(){n.disconnect(),t._apply(!0)});n.observe(e,{childList:!0})}}},_updateStyles:function(){Polymer.updateStyles()},_apply:function(e){var t=this.__appliedElement;if(this.include&&(t.textContent=n.cssFromModules(this.include,!0)+t.textContent),t.textContent){var r=this.__cssBuild,s=n.isTargetedBuild(r);if(!l.useNativeCSSProperties||!s){var a=n.rulesForStyle(t);if(s||(n.forEachRule(a,function(e){i.documentRule(e)}),l.useNativeCSSProperties&&!r&&o.transform([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.__needsUpdateStyles=!1,e=a(e,this._updateStyles)):this._applyCustomProperties()},_applyCustomProperties:function(){var e=this.__appliedElement;this._computeStyleProperties();var s=this._styleProperties,i=n.rulesForStyle(e);i&&(e.textContent=n.toCssText(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_",templatize: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._customPrepAnnotations(t,e),this._prepParentProperties(t,e),t._prepEffects(),this._customPrepEffects(t),t._prepBehaviors(),t._prepPropertyInfo(),t._prepBindings(),t._notifyPathUp=this._notifyPathUpImpl,t._scopeElementClass=this._scopeElementClassImpl,t.listen=this._listenImpl,t._showHideChildren=this._showHideChildrenImpl,t.__setPropertyOrig=this.__setProperty,t.__setProperty=this.__setPropertyImpl;var n=this._constructorImpl,r=function(e,t){n.call(this,e,t)};r.prototype=t,t.constructor=r,e._content._ctor=r,this.ctor=r},_getRootDataHost:function(){return this.dataHost&&this.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.__hideTemplateChildren__)&&(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="__polymerTextContent__"),this.__setPropertyOrig(e,t,n,r)},_debounceTemplate:function(e){Polymer.dom.addDebouncer(this.debounce("_debounceTemplate",e))},_flushTemplates:function(){Polymer.dom.flush()},_customPrepEffects:function(e){var t=e._parentProps;for(var n in t)e._addPropertyEffect(n,"function",this._createHostPropEffector(n));for(n in this._instanceProps)e._addPropertyEffect(n,"function",this._createInstancePropEffector(n))},_customPrepAnnotations:function(e,t){e._template=t;var n=t._content;if(!n._notes){var r=e._rootDataHost;r&&(Polymer.Annotations.prepElement=function(){r._prepElement()}),n._notes=Polymer.Annotations.parseAnnotations(t),Polymer.Annotations.prepElement=null,this._processAnnotations(n._notes)}e._notes=n._notes,e._parentProps=n._parentProps},_prepParentProperties:function(e,t){var n=this._parentProps=e._parentProps;if(this._forwardParentProp&&n){var r,s=e._parentPropProto;if(!s){for(r in this._instanceProps)delete n[r];s=e._parentPropProto=Object.create(null),t!=this&&(Polymer.Bind.prepareModel(s),Polymer.Base.prepareModelNotifyPath(s));for(r in n){var i=this._parentPropPrefix+r,o=[{kind:"function",effect:this._createForwardPropEffector(r),fn:Polymer.Bind._functionEffect},{kind:"notify",fn:Polymer.Bind._notifyEffect,effect:{event:Polymer.CaseMap.camelToDashCase(i)+"-changed"}}];Polymer.Bind._createAccessors(s,i,o)}}var a=this;t!=this&&(Polymer.Bind.prepareInstance(t),t._forwardParentProp=function(e,t){a._forwardParentProp(e,t)}),this._extendTemplate(t,s),t._pathEffector=function(e,t,n){return a._pathEffectorImpl(e,t,n)}}},_createForwardPropEffector:function(e){return function(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.dataHost._forwardInstanceProp(this,e,n)}},_extendTemplate:function(e,t){var n=Object.getOwnPropertyNames(t);t._propertySetter&&(e._propertySetter=t._propertySetter);for(var r,s=0;s<n.length&&(r=n[s]);s++){var i=e[r],o=Object.getOwnPropertyDescriptor(t,r);Object.defineProperty(e,r,o),void 0!==i&&e._propertySetter(r,i)}},_showHideChildren:function(e){},_forwardInstancePath:function(e,t,n){},_forwardInstanceProp:function(e,t,n){},_notifyPathUpImpl:function(e,t){var n=this.dataHost,r=Polymer.Path.root(e);n._forwardInstancePath.call(n,this,e,t),r in n._parentProps&&n._templatized._notifyPath(n._parentPropPrefix+e,t)},_pathEffectorImpl:function(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 this._parentProps&&this._forwardParentPath(r,t)}Polymer.Base._pathEffector.call(this._templatized,e,t,n)},_constructorImpl:function(e,t){this._rootDataHost=t._getRootDataHost(),this._setupConfigure(e),this._registerHost(t),this._beginHosting(),this.root=this.instanceTemplate(this._template),this.root.__noContent=!this._notes._hasContent,this.root.__styleScoped=!0,this._endHosting(),this._marshalAnnotatedNodes(),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),this._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)},_scopeElementClassImpl:function(e,t){var n=this._rootDataHost;return n?n._scopeElementClass(e,t):t},stamp:function(e){if(e=e||{},this._parentProps){var t=this._templatized;for(var n in this._parentProps)void 0===e[n]&&(e[n]=t[this._parentPropPrefix+n])}return new this.ctor(e,this)},modelForElement:function(e){for(var t;e;)if(t=e._templateInstance){if(t.dataHost==this)return t;e=t.dataHost}else e=e.parentNode}},Polymer({is:"dom-template",extends:"template",_template:null,behaviors:[Polymer.Templatizer],ready:function(){this.templatize(this)}}),Polymer._collections=new WeakMap,Polymer.Collection=function(e){Polymer._collections.set(e,this),this.userArray=e,this.store=e.slice(),this.initMap()},Polymer.Collection.prototype={constructor:Polymer.Collection,initMap:function(){for(var e=this.omap=new WeakMap,t=this.pmap={},n=this.store,r=0;r<n.length;r++){var s=n[r];s&&"object"==typeof 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.pmap[e],void 0!=t)return"#"+t},getKeys:function(){return Object.keys(this.store).map(function(e){return"#"+e})},_parseKey:function(e){if(e&&"#"==e[0])return e.slice(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.store[e]=t}},getItem:function(e){if(e=this._parseKey(e))return this.store[e]},getItems:function(){var e=[],t=this.store;for(var n in t)e.push(t[n]);return e},_applySplices:function(e){for(var t,n,r={},s=0;s<e.length&&(n=e[s]);s++){n.addedKeys=[];for(var i=0;i<n.removed.length;i++)t=this.getKey(n.removed[i]),r[t]=r[t]?null:-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[{removed:a,added:l}]}},Polymer.Collection.get=function(e){return Polymer._collections.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:Function,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:"_initializeChunking"},targetFramerate:{type:Number,value:20},_targetFrameTime:{type:Number,computed:"_computeFrameTime(targetFramerate)"}},behaviors:[Polymer.Templatizer],observers:["_itemsChanged(items.*)"],created:function(){this._instances=[],this._pool=[],this._limit=1/0;var e=this;this._boundRenderChunk=function(){e._renderChunk()}},detached:function(){this.__isDetached=!0;for(var e=0;e<this._instances.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._instanceProps={__key__:!0},this._instanceProps[this.as]=!0,this._instanceProps[this.indexAs]=!0,this.ctor||this.templatize(this)},_sortChanged:function(e){var t=this._getRootDataHost();this._sortFn=e&&("function"==typeof e?e:function(){return t[e].apply(t,arguments)}),this._needFullRefresh=!0,this.items&&this._debounceTemplate(this._render)},_filterChanged:function(e){var t=this._getRootDataHost();this._filterFn=e&&("function"==typeof e?e:function(){return t[e].apply(t,arguments)}),this._needFullRefresh=!0,this.items&&this._debounceTemplate(this._render)},_computeFrameTime:function(e){return Math.ceil(1e3/e)},_initializeChunking:function(){this.initialCount&&(this._limit=this.initialCount,this._chunkCount=this.initialCount,this._lastChunkTime=performance.now())},_tryRenderChunk:function(){this.items&&this._limit<this.items.length&&this.debounce("renderChunk",this._requestRenderChunk)},_requestRenderChunk:function(){requestAnimationFrame(this._boundRenderChunk)},_renderChunk:function(){var e=performance.now(),t=this._targetFrameTime/(e-this._lastChunkTime);this._chunkCount=Math.round(this._chunkCount*t)||1,this._limit+=this._chunkCount,this._lastChunkTime=e,this._debounceTemplate(this._render)},_observeChanged:function(){this._observePaths=this.observe&&this.observe.replace(".*",".").split(" ")},_itemsChanged:function(e){if("items"==e.path)Array.isArray(this.items)?this.collection=Polymer.Collection.get(this.items):this.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._render);else if("items.splices"==e.path)this._keySplices=this._keySplices.concat(e.value.keySplices),this._indexSplices=this._indexSplices.concat(e.value.indexSplices),this._debounceTemplate(this._render);else{var t=e.path.slice(6);this._forwardItemPath(t,e.value),this._checkObservedPaths(t)}},_checkObservedPaths:function(e){if(this._observePaths){e=e.substring(e.indexOf(".")+1);for(var t=this._observePaths,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._debounceTemplate(this._render))}},render:function(){this._needFullRefresh=!0,this._debounceTemplate(this._render),this._flushTemplates()},_render:function(){this._needFullRefresh?(this._applyFullRefresh(),this._needFullRefresh=!1):this._keySplices.length&&(this._sortFn?this._applySplicesUserSort(this._keySplices):this._filterFn?this._applyFullRefresh():this._applySplicesArrayOrder(this._indexSplices)),this._keySplices=[],this._indexSplices=[];for(var e=this._keyToInstIdx={},t=this._instances.length-1;t>=0;t--){var n=this._instances[t];n.isPlaceholder&&t<this._limit?n=this._insertInstance(t,n.__key__):!n.isPlaceholder&&t>=this._limit&&(n=this._downgradeInstance(t,n.__key__)),e[n.__key__]=t,n.isPlaceholder||n.__setProperty(this.indexAs,t,!0)}this._pool.length=0,this._setRenderedItemCount(this._instances.length),this.fire("dom-change"),this._tryRenderChunk()},_applyFullRefresh:function(){var e,t=this.collection;if(this._sortFn)e=t?t.getKeys():[];else{e=[];var n=this.items;if(n)for(var r=0;r<n.length;r++)e.push(t.getKey(n[r]))}var s=this;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.isPlaceholder&&r<this._limit&&o.__setProperty(this.as,t.getItem(i),!0)):r<this._limit?this._insertInstance(r,i):this._insertPlaceholder(r,i)}for(var a=this._instances.length-1;a>=r;a--)this._detachAndRemoveInstance(a)},_numericSort:function(e,t){return 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];void 0!==c&&this._detachAndRemoveInstance(c)}var h=this;if(l.length){this._filterFn&&(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;else{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++){for(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])}},_detachInstance: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).appendChild(r)}return t}},_attachInstance:function(e,t){var n=this._instances[e];n.isPlaceholder||t.insertBefore(n.root,this)},_detachAndRemoveInstance:function(e){var t=this._detachInstance(e);t&&this._pool.push(t),this._instances.splice(e,1)},_insertPlaceholder: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.collection.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._instances[e+1],s=r&&!r.isPlaceholder?r._children[0]:this,i=Polymer.dom(this).parentNode;return Polymer.dom(i).insertBefore(n.root,s),this._instances[e]=n,n},_downgradeInstance: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:function(e){for(var t=0;t<this._instances.length;t++)this._instances[t]._showHideChildren(e)},_forwardInstanceProp:function(e,t,n){if(t==this.as){var r;r=this._sortFn||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.indexOf(this.as+".")&&this._notifyPath("items."+e.__key__+"."+t.slice(this.as.length+1),n)},_forwardParentProp:function(e,t){for(var n,r=this._instances,s=0;s<r.length&&(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.isPlaceholder||n._notifyPath(e,t,!0)},_forwardItemPath:function(e,t){if(this._keyToInstIdx){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:function(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.selected.length;e++)this.unlinkPaths("selected."+e);else this.unlinkPaths("selected"),this.unlinkPaths("selectedItem");this.multi?this.selected&&!this.selected.length||(this.selected=[],this._selectedColl=Polymer.Collection.get(this.selected)):(this.selected=null,this._selectedColl=null),this.selectedItem=null},isSelected:function(e){return this.multi?void 0!==this._selectedColl.getKey(e):this.selected==e},deselect:function(e){if(this.multi){if(this.isSelected(e)){var t=this._selectedColl.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&&this.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","items."+n),this.linkPaths("selectedItem","items."+n))}}),Polymer({is:"dom-if",extends:"template",_template:null,properties:{if:{type:Boolean,value:!1,observer:"_queueRender"},restamp:{type:Boolean,value:!1,observer:"_queueRender"}},behaviors:[Polymer.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:function(){this.if?(this.ctor||this.templatize(this),this._ensureInstance(),this._showHideChildren()):this.restamp&&this._teardownInstance(),!this.restamp&&this._instance&&this._showHideChildren(),this.if!=this._lastIf&&(this.fire("dom-change"),this._lastIf=this.if)},_ensureInstance:function(){var e=Polymer.dom(this).parentNode;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)}}},_teardownInstance:function(){if(this._instance){var e=this._instance._children;if(e&&e.length)for(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._showHideChildren(e)},_forwardParentProp:function(e,t){this._instance&&this._instance.__setProperty(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._readied||this._readySelf()},_markImportsReady:function(){this._importsReady=!0,this._ensureReady()},_registerFeatures:function(){this._prepConstructor()},_insertChildren:function(){var e=Polymer.dom(Polymer.dom(this).parentNode);e.insertBefore(this.root,this)},_removeChildren:function(){if(this._children)for(var e=0;e<this._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(){},_prepConfigure:function(){var e={};for(var t in this._propertyEffects)e[t]=this[t];var n=this._setupConfigure;this._setupConfigure=function(){n.call(this,e)}},attached:function(){this._importsReady&&this.render()},detached:function(){this._removeChildren()},render:function(){this._ensureReady(),this._children||(this._template=this,this._prepAnnotations(),this._prepEffects(),this._prepBehaviors(),this._prepConfigure(),this._prepBindings(),this._prepPropertyInfo(),Polymer.Base._initFeatures.call(this),this._children=Polymer.TreeApi.arrayCopyChildNodes(this.root)),this._insertChildren(),this.fire("dom-change")}})</script><style>[hidden]{display:none!important}</style><style 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-direction:row;-webkit-flex-direction:row;flex-direction:row};--layout-horizontal-reverse:{@apply(--layout);-ms-flex-direction:row-reverse;-webkit-flex-direction:row-reverse;flex-direction:row-reverse};--layout-vertical:{@apply(--layout);-ms-flex-direction:column;-webkit-flex-direction:column;flex-direction:column};--layout-vertical-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-flex-wrap:wrap-reverse;-webkit-flex-wrap:wrap-reverse;flex-wrap:wrap-reverse};--layout-flex-auto:{-ms-flex:1 1 auto;-webkit-flex:1 1 auto;flex:1 1 auto};--layout-flex-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};--layout-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:flex-start};--layout-center:{-ms-flex-align:center;-webkit-align-items:center;align-items:center};--layout-end:{-ms-flex-align:end;-webkit-align-items:flex-end;align-items:flex-end};--layout-baseline:{-ms-flex-align:baseline;-webkit-align-items: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:center};--layout-end-justified:{-ms-flex-pack:end;-webkit-justify-content:flex-end;justify-content:flex-end};--layout-around-justified:{-ms-flex-pack:distribute;-webkit-justify-content:space-around;justify-content:space-around};--layout-justified:{-ms-flex-pack:justify;-webkit-justify-content:space-between;justify-content:space-between};--layout-center-center:{@apply(--layout-center);@apply(--layout-center-justified)};--layout-self-start:{-ms-align-self:flex-start;-webkit-align-self:flex-start;align-self:flex-start};--layout-self-center:{-ms-align-self:center;-webkit-align-self:center;align-self:center};--layout-self-end:{-ms-align-self:flex-end;-webkit-align-self:flex-end;align-self:flex-end};--layout-self-stretch:{-ms-align-self:stretch;-webkit-align-self:stretch;align-self:stretch};--layout-self-baseline:{-ms-align-self:baseline;-webkit-align-self:baseline;align-self:baseline};--layout-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-content:flex-end};--layout-center-aligned:{-ms-flex-line-pack:center;-ms-align-content:center;-webkit-align-content:center;align-content:center};--layout-between-aligned:{-ms-flex-line-pack:justify;-ms-align-content:space-between;-webkit-align-content:space-between;align-content:space-between};--layout-around-aligned:{-ms-flex-line-pack:distribute;-ms-align-content:space-around;-webkit-align-content:space-around;align-content:space-around};--layout-block:{display: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-fullbleed:{margin:0;height:100vh};--layout-fixed-top:{position:fixed;top:0;left:0;right:0};--layout-fixed-right:{position:fixed;top:0;right:0;bottom:0};--layout-fixed-bottom:{position:fixed;right:0;bottom:0;left:0};--layout-fixed-left:{position:fixed;top:0;bottom:0;left:0};}</style><script>Polymer.PaperSpinnerBehavior={listeners:{animationend:"__reset",webkitAnimationEnd:"__reset"},properties:{active:{type:Boolean,value:!1,reflectToAttribute:!0,observer:"__activeChanged"},alt:{type:String,value:"loading",observer:"__altChanged"},__coolingDown:{type:Boolean,value:!1}},__computeContainerClasses:function(e,t){return[e||t?"active":"",t?"cooldown":""].join(" ")},__activeChanged:function(e,t){this.__setAriaHidden(!e),this.__coolingDown=!e&&t},__altChanged:function(e){e===this.getPropertyInfo("alt").value?this.alt=this.getAttribute("aria-label")||e:(this.__setAriaHidden(""===e),this.setAttribute("aria-label",e))},__setAriaHidden:function(e){var t="aria-hidden";e?this.setAttribute(t,"true"):this.removeAttribute(t)},__reset:function(){this.active=!1,this.__coolingDown=!1}}</script><dom-module id="paper-spinner-styles" assetpath="../bower_components/paper-spinner/"><template><style>:host{display:inline-block;position:relative;width:28px;height:28px;--paper-spinner-container-rotation-duration:1568ms;--paper-spinner-expand-contract-duration:1333ms;--paper-spinner-full-cycle-duration:5332ms;--paper-spinner-cooldown-duration:400ms}#spinnerContainer{width:100%;height:100%;direction:ltr}#spinnerContainer.active{-webkit-animation:container-rotate var(--paper-spinner-container-rotation-duration) linear infinite;animation:container-rotate var(--paper-spinner-container-rotation-duration) linear infinite}@-webkit-keyframes container-rotate{to{-webkit-transform:rotate(360deg)}}@keyframes container-rotate{to{transform:rotate(360deg)}}.spinner-layer{position:absolute;width:100%;height:100%;opacity:0;white-space:nowrap;border-color:var(--paper-spinner-color,--google-blue-500)}.layer-1{border-color:var(--paper-spinner-layer-1-color,--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,--google-yellow-500)}.layer-4{border-color:var(--paper-spinner-layer-4-color,--google-green-500)}.active .spinner-layer{-webkit-animation-name:fill-unfill-rotate;-webkit-animation-duration:var(--paper-spinner-full-cycle-duration);-webkit-animation-timing-function:cubic-bezier(.4,0,.2,1);-webkit-animation-iteration-count:infinite;animation-name:fill-unfill-rotate;animation-duration:var(--paper-spinner-full-cycle-duration);animation-timing-function:cubic-bezier(.4,0,.2,1);animation-iteration-count:infinite;opacity:1}.active .spinner-layer.layer-1{-webkit-animation-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}.active .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:rotate(540deg)}62.5%{-webkit-transform:rotate(675deg)}75%{-webkit-transform:rotate(810deg)}87.5%{-webkit-transform:rotate(945deg)}to{-webkit-transform:rotate(1080deg)}}@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(945deg)}to{transform:rotate(1080deg)}}@-webkit-keyframes layer-1-fade-in-out{0%{opacity:1}25%{opacity:1}26%{opacity:0}89%{opacity:0}90%{opacity:1}to{opacity:1}}@keyframes layer-1-fade-in-out{0%{opacity:1}25%{opacity:1}26%{opacity:0}89%{opacity:0}90%{opacity:1}to{opacity:1}}@-webkit-keyframes layer-2-fade-in-out{0%{opacity:0}15%{opacity:0}25%{opacity:1}50%{opacity:1}51%{opacity:0}to{opacity:0}}@keyframes 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-out{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:hidden;border-color:inherit}.spinner-layer::after{left:45%;width:10%;border-top-style:solid}.circle-clipper::after,.spinner-layer::after{content:'';box-sizing:border-box;position:absolute;top:0;border-width:var(--paper-spinner-stroke-width,3px);border-color:inherit;border-radius:50%}.circle-clipper::after{bottom:0;width:200%;border-style:solid;border-bottom-color:transparent!important}.circle-clipper.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);transform:rotate(-129deg)}.active .circle-clipper::after,.active .gap-patch::after{-webkit-animation-duration:var(--paper-spinner-expand-contract-duration);-webkit-animation-timing-function:cubic-bezier(.4,0,.2,1);-webkit-animation-iteration-count:infinite;animation-duration:var(--paper-spinner-expand-contract-duration);animation-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-transform: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-transform:rotate(-130deg)}50%{-webkit-transform:rotate(5deg)}to{-webkit-transform:rotate(-130deg)}}@keyframes right-spin{0%{transform:rotate(-130deg)}50%{transform:rotate(5deg)}to{transform:rotate(-130deg)}}#spinnerContainer.cooldown{-webkit-animation:container-rotate var(--paper-spinner-container-rotation-duration) linear infinite,fade-out var(--paper-spinner-cooldown-duration) cubic-bezier(.4,0,.2,1);animation:container-rotate var(--paper-spinner-container-rotation-duration) linear 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-out{0%{opacity:1}to{opacity:0}}</style></template></dom-module><dom-module id="paper-spinner" assetpath="../bower_components/paper-spinner/"><template strip-whitespace=""><style include="paper-spinner-styles"></style><div id="spinnerContainer" class-name="[[__computeContainerClasses(active, __coolingDown)]]"><div class="spinner-layer layer-1"><div class="circle-clipper left"></div><div class="circle-clipper right"></div></div><div class="spinner-layer layer-2"><div class="circle-clipper left"></div><div class="circle-clipper right"></div></div><div class="spinner-layer layer-3"><div class="circle-clipper left"></div><div class="circle-clipper right"></div></div><div class="spinner-layer layer-4"><div class="circle-clipper left"></div><div class="circle-clipper right"></div></div></div></template><script>Polymer({is:"paper-spinner",behaviors:[Polymer.PaperSpinnerBehavior]})</script></dom-module><style>@font-face{font-family:Roboto;src:url(/static/fonts/roboto/Roboto-Thin.ttf) format("truetype");font-weight:100;font-style:normal}@font-face{font-family:Roboto;src:url(/static/fonts/roboto/Roboto-ThinItalic.ttf) format("truetype");font-weight:100;font-style:italic}@font-face{font-family:Roboto;src:url(/static/fonts/roboto/Roboto-Light.ttf) format("truetype");font-weight:300;font-style:normal}@font-face{font-family:Roboto;src:url(/static/fonts/roboto/Roboto-LightItalic.ttf) format("truetype");font-weight:300;font-style:italic}@font-face{font-family:Roboto;src:url(/static/fonts/roboto/Roboto-Regular.ttf) format("truetype");font-weight:400;font-style:normal}@font-face{font-family:Roboto;src:url(/static/fonts/roboto/Roboto-Italic.ttf) format("truetype");font-weight:400;font-style:italic}@font-face{font-family:Roboto;src:url(/static/fonts/roboto/Roboto-Medium.ttf) format("truetype");font-weight:500;font-style:normal}@font-face{font-family:Roboto;src:url(/static/fonts/roboto/Roboto-MediumItalic.ttf) format("truetype");font-weight:500;font-style:italic}@font-face{font-family:Roboto;src:url(/static/fonts/roboto/Roboto-Bold.ttf) format("truetype");font-weight:700;font-style:normal}@font-face{font-family:Roboto;src:url(/static/fonts/roboto/Roboto-BoldItalic.ttf) format("truetype");font-weight:700;font-style:italic}@font-face{font-family:Roboto;src:url(/static/fonts/roboto/Roboto-Black.ttf) format("truetype");font-weight:900;font-style:normal}@font-face{font-family:Roboto;src:url(/static/fonts/roboto/Roboto-BlackItalic.ttf) format("truetype");font-weight:900;font-style:italic}@font-face{font-family:"Roboto Mono";src:url(/static/fonts/robotomono/RobotoMono-Thin.ttf) format("truetype");font-weight:100;font-style:normal}@font-face{font-family:"Roboto Mono";src:url(/static/fonts/robotomono/RobotoMono-ThinItalic.ttf) format("truetype");font-weight:100;font-style:italic}@font-face{font-family:"Roboto Mono";src:url(/static/fonts/robotomono/RobotoMono-Light.ttf) format("truetype");font-weight:300;font-style:normal}@font-face{font-family:"Roboto Mono";src:url(/static/fonts/robotomono/RobotoMono-LightItalic.ttf) format("truetype");font-weight:300;font-style:italic}@font-face{font-family:"Roboto Mono";src:url(/static/fonts/robotomono/RobotoMono-Regular.ttf) format("truetype");font-weight:400;font-style:normal}@font-face{font-family:"Roboto Mono";src:url(/static/fonts/robotomono/RobotoMono-Italic.ttf) format("truetype");font-weight:400;font-style:italic}@font-face{font-family:"Roboto Mono";src:url(/static/fonts/robotomono/RobotoMono-Medium.ttf) format("truetype");font-weight:500;font-style:normal}@font-face{font-family:"Roboto Mono";src:url(/static/fonts/robotomono/RobotoMono-MediumItalic.ttf) format("truetype");font-weight:500;font-style:italic}@font-face{font-family:"Roboto Mono";src:url(/static/fonts/robotomono/RobotoMono-Bold.ttf) format("truetype");font-weight:700;font-style:normal}@font-face{font-family:"Roboto Mono";src:url(/static/fonts/robotomono/RobotoMono-BoldItalic.ttf) format("truetype");font-weight:700;font-style:italic}</style><style is="custom-style">:root{--paper-font-common-base:{font-family:Roboto,Noto,sans-serif;-webkit-font-smoothing:antialiased};--paper-font-common-code:{font-family:'Roboto Mono',Consolas,Menlo,monospace;-webkit-font-smoothing:antialiased};--paper-font-common-expensive-kerning:{text-rendering:optimizeLegibility};--paper-font-common-nowrap:{white-space:nowrap;overflow:hidden;text-overflow:ellipsis};--paper-font-display4:{@apply(--paper-font-common-base);@apply(--paper-font-common-nowrap);font-size:112px;font-weight:300;letter-spacing:-.044em;line-height:120px};--paper-font-display3:{@apply(--paper-font-common-base);@apply(--paper-font-common-nowrap);font-size:56px;font-weight:400;letter-spacing:-.026em;line-height:60px};--paper-font-display2:{@apply(--paper-font-common-base);font-size:45px;font-weight:400;letter-spacing:-.018em;line-height:48px};--paper-font-display1:{@apply(--paper-font-common-base);font-size:34px;font-weight:400;letter-spacing:-.01em;line-height:40px};--paper-font-headline:{@apply(--paper-font-common-base);font-size:24px;font-weight:400;letter-spacing:-.012em;line-height:32px};--paper-font-title:{@apply(--paper-font-common-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:16px;font-weight:400;line-height:24px};--paper-font-body2:{@apply(--paper-font-common-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-common-nowrap);font-size:12px;font-weight:400;letter-spacing:0.011em;line-height:20px};--paper-font-menu:{@apply(--paper-font-common-base);@apply(--paper-font-common-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:14px;font-weight:500;letter-spacing:0.018em;line-height:24px;text-transform:uppercase};--paper-font-code2:{@apply(--paper-font-common-code);font-size:14px;font-weight: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="iron-flex" assetpath="../bower_components/iron-flex-layout/"><template><style>.layout.horizontal,.layout.vertical{display:-ms-flexbox;display:-webkit-flex;display:flex}.layout.inline{display:-ms-inline-flexbox;display:-webkit-inline-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.center-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;-webkit-flex-basis:0px;flex-basis:0px}.flex-auto{-ms-flex:1 1 auto;-webkit-flex:1 1 auto;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="../bower_components/iron-flex-layout/"><template><style>.layout.horizontal-reverse,.layout.vertical-reverse{display:-ms-flexbox;display:-webkit-flex;display:flex}.layout.horizontal-reverse{-ms-flex-direction:row-reverse;-webkit-flex-direction:row-reverse;flex-direction:row-reverse}.layout.vertical-reverse{-ms-flex-direction: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="../bower_components/iron-flex-layout/"><template><style>.layout.start{-ms-flex-align:start;-webkit-align-items:flex-start;align-items:flex-start}.layout.center,.layout.center-center{-ms-flex-align:center;-webkit-align-items:center;align-items:center}.layout.end{-ms-flex-align:end;-webkit-align-items:flex-end;align-items:flex-end}.layout.baseline{-ms-flex-align:baseline;-webkit-align-items:baseline;align-items:baseline}.layout.start-justified{-ms-flex-pack:start;-webkit-justify-content:flex-start;justify-content:flex-start}.layout.center-center,.layout.center-justified{-ms-flex-pack:center;-webkit-justify-content:center;justify-content:center}.layout.end-justified{-ms-flex-pack:end;-webkit-justify-content:flex-end;justify-content:flex-end}.layout.around-justified{-ms-flex-pack:distribute;-webkit-justify-content:space-around;justify-content:space-around}.layout.justified{-ms-flex-pack:justify;-webkit-justify-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-align-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-baseline{-ms-align-self:baseline;-webkit-align-self:baseline;align-self:baseline}; .layout.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-content:flex-end}.layout.center-aligned{-ms-flex-line-pack:center;-ms-align-content:center;-webkit-align-content:center;align-content:center}.layout.between-aligned{-ms-flex-line-pack:justify;-ms-align-content:space-between;-webkit-align-content:space-between;align-content:space-between}.layout.around-aligned{-ms-flex-line-pack:distribute;-ms-align-content:space-around;-webkit-align-content:space-around;align-content:space-around}</style></template></dom-module><dom-module id="iron-flex-factors" assetpath="../bower_components/iron-flex-layout/"><template><style>.flex,.flex-1{-ms-flex:1 1 0px;-webkit-flex:1;flex:1;-webkit-flex-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="../bower_components/iron-flex-layout/"><template><style>.block{display:block}[hidden]{display:none!important}.invisible{visibility:hidden!important}.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:fixed}.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></template></dom-module><script>!function(n){"use strict";function t(n,t){for(var e=[],r=0,u=n.length;r<u;r++)e.push(n[r].substr(0,t));return e}function e(n){return function(t,e,r){var u=r[n].indexOf(e.charAt(0).toUpperCase()+e.substr(1).toLowerCase());~u&&(t.month=u)}}function r(n,t){for(n=String(n),t=t||2;n.length<t;)n="0"+n;return n}var u={},o=/d{1,4}|M{1,4}|YY(?:YY)?|S{1,3}|Do|ZZ|([HhMsDm])\1?|[aA]|"[^"]*"|'[^']*'/g,a=/\d\d?/,i=/\d{3}/,s=/\d{4}/,m=/[0-9]*['a-z\u00A0-\u05FF\u0700-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]+|[\u0600-\u06FF\/]+(\s*?[\u0600-\u06FF]+){1,2}/i,d=function(){},f=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],c=["January","February","March","April","May","June","July","August","September","October","November","December"],h=t(c,3),l=t(f,3);u.i18n={dayNamesShort:l,dayNames:f,monthNamesShort:h,monthNames:c,amPm:["am","pm"],DoFn:function(n){return n+["th","st","nd","rd"][n%10>3?0:(n-n%10!==10)*n%10]}};var M={D:function(n){return n.getDate()},DD:function(n){return r(n.getDate())},Do:function(n,t){return t.DoFn(n.getDate())},d:function(n){return n.getDay()},dd:function(n){return r(n.getDay())},ddd:function(n,t){return t.dayNamesShort[n.getDay()]},dddd:function(n,t){return t.dayNames[n.getDay()]},M:function(n){return n.getMonth()+1},MM:function(n){return r(n.getMonth()+1)},MMM:function(n,t){return t.monthNamesShort[n.getMonth()]},MMMM:function(n,t){return t.monthNames[n.getMonth()]},YY:function(n){return String(n.getFullYear()).substr(2)},YYYY:function(n){return n.getFullYear()},h:function(n){return n.getHours()%12||12},hh:function(n){return r(n.getHours()%12||12)},H:function(n){return n.getHours()},HH:function(n){return r(n.getHours())},m:function(n){return n.getMinutes()},mm:function(n){return r(n.getMinutes())},s:function(n){return n.getSeconds()},ss:function(n){return r(n.getSeconds())},S:function(n){return Math.round(n.getMilliseconds()/100)},SS:function(n){return r(Math.round(n.getMilliseconds()/10),2)},SSS:function(n){return r(n.getMilliseconds(),3)},a:function(n,t){return n.getHours()<12?t.amPm[0]:t.amPm[1]},A:function(n,t){return n.getHours()<12?t.amPm[0].toUpperCase():t.amPm[1].toUpperCase()},ZZ:function(n){var t=n.getTimezoneOffset();return(t>0?"-":"+")+r(100*Math.floor(Math.abs(t)/60)+Math.abs(t)%60,4)}},g={D:[a,function(n,t){n.day=t}],Do:[new RegExp(a.source+m.source),function(n,t){n.day=parseInt(t,10)}],M:[a,function(n,t){n.month=t-1}],YY:[a,function(n,t){var e=new Date,r=+(""+e.getFullYear()).substr(0,2);n.year=""+(t>68?r-1:r)+t}],h:[a,function(n,t){n.hour=t}],m:[a,function(n,t){n.minute=t}],s:[a,function(n,t){n.second=t}],YYYY:[s,function(n,t){n.year=t}],S:[/\d/,function(n,t){n.millisecond=100*t}],SS:[/\d{2}/,function(n,t){n.millisecond=10*t}],SSS:[i,function(n,t){n.millisecond=t}],d:[a,d],ddd:[m,d],MMM:[m,e("monthNamesShort")],MMMM:[m,e("monthNames")],a:[m,function(n,t,e){var r=t.toLowerCase();r===e.amPm[0]?n.isPm=!1:r===e.amPm[1]&&(n.isPm=!0)}],ZZ:[/[\+\-]\d\d:?\d\d/,function(n,t){var e,r=(t+"").match(/([\+\-]|\d\d)/gi);r&&(e=+(60*r[1])+parseInt(r[2],10),n.timezoneOffset="+"===r[0]?e:-e)}]};g.dd=g.d,g.dddd=g.ddd,g.DD=g.D,g.mm=g.m,g.hh=g.H=g.HH=g.h,g.MM=g.M,g.ss=g.s,g.A=g.a,u.masks={default:"ddd MMM DD YYYY HH:mm:ss",shortDate:"M/D/YY",mediumDate:"MMM D, YYYY",longDate:"MMMM D, YYYY",fullDate:"dddd, MMMM D, YYYY",shortTime:"HH:mm",mediumTime:"HH:mm:ss",longTime:"HH:mm:ss.SSS"},u.format=function(n,t,e){var r=e||u.i18n;if("number"==typeof n&&(n=new Date(n)),"[object Date]"!==Object.prototype.toString.call(n)||isNaN(n.getTime()))throw new Error("Invalid Date in fecha.format");return t=u.masks[t]||t||u.masks.default,t.replace(o,function(t){return t in M?M[t](n,r):t.slice(1,t.length-1)})},u.parse=function(n,t,e){var r=e||u.i18n;if("string"!=typeof t)throw new Error("Invalid format in fecha.parse");if(t=u.masks[t]||t,n.length>1e3)return!1;var a=!0,i={};if(t.replace(o,function(t){if(g[t]){var e=g[t],u=n.search(e[0]);~u?n.replace(e[0],function(t){return e[1](i,t,r),n=n.substr(u+t.length),t}):a=!1}return g[t]?"":t.slice(1,t.length-1)}),!a)return!1;var s=new Date;i.isPm===!0&&null!=i.hour&&12!==+i.hour?i.hour=+i.hour+12:i.isPm===!1&&12===+i.hour&&(i.hour=0);var m;return null!=i.timezoneOffset?(i.minute=+(i.minute||0)-+i.timezoneOffset,m=new Date(Date.UTC(i.year||s.getFullYear(),i.month||0,i.day||1,i.hour||0,i.minute||0,i.second||0,i.millisecond||0))):m=new Date(i.year||s.getFullYear(),i.month||0,i.day||1,i.hour||0,i.minute||0,i.second||0,i.millisecond||0),m},"undefined"!=typeof module&&module.exports?module.exports=u:"function"==typeof define&&define.amd?define(function(){return u}):n.fecha=u}(this)</script><script>function toLocaleStringSupportsOptions(){try{(new Date).toLocaleString("i")}catch(e){return"RangeError"===e.name}return!1}function toLocaleDateStringSupportsOptions(){try{(new Date).toLocaleDateString("i")}catch(e){return"RangeError"===e.name}return!1}function toLocaleTimeStringSupportsOptions(){try{(new Date).toLocaleTimeString("i")}catch(e){return"RangeError"===e.name}return!1}window.hassUtil=window.hassUtil||{},window.hassUtil.DEFAULT_ICON="mdi:bookmark",window.hassUtil.OFF_STATES=["off","closed","unlocked"],window.hassUtil.DOMAINS_WITH_CARD=["climate","cover","configurator","input_select","input_slider","media_player","scene","script","weblink"],window.hassUtil.DOMAINS_WITH_MORE_INFO=["light","group","sun","climate","configurator","cover","script","media_player","camera","updater","alarm_control_panel","lock","automation"],window.hassUtil.DOMAINS_WITH_NO_HISTORY=["camera","configurator","scene"],window.hassUtil.HIDE_MORE_INFO=["input_select","scene","script","input_slider"],window.hassUtil.attributeClassNames=function(e,t){return e?t.map(function(t){return t in e.attributes?"has-"+t:""}).join(" "):""},window.hassUtil.canToggle=function(e,t){return e.reactor.evaluate(e.serviceGetters.canToggleEntity(t))},window.hassUtil.dynamicContentUpdater=function(e,t,i){var n,a=Polymer.dom(e);a.lastChild&&a.lastChild.tagName===t?n=a.lastChild:(a.lastChild&&a.removeChild(a.lastChild),n=document.createElement(t)),Object.keys(i).forEach(function(e){n[e]=i[e]}),null===n.parentNode&&a.appendChild(n)},window.fecha.masks.haDateTime=window.fecha.masks.shortTime+" "+window.fecha.masks.mediumDate,toLocaleStringSupportsOptions()?window.hassUtil.formatDateTime=function(e){return e.toLocaleString(navigator.language,{year:"numeric",month:"long",day:"numeric",hour:"numeric",minute:"2-digit"})}:window.hassUtil.formatDateTime=function(e){return window.fecha.format(e,"haDateTime")},toLocaleDateStringSupportsOptions()?window.hassUtil.formatDate=function(e){return e.toLocaleDateString(navigator.language,{year:"numeric",month:"long",day:"numeric"})}:window.hassUtil.formatDate=function(e){return window.fecha.format(e,"mediumDate")},toLocaleTimeStringSupportsOptions()?window.hassUtil.formatTime=function(e){return e.toLocaleTimeString(navigator.language,{hour:"numeric",minute:"2-digit"})}:window.hassUtil.formatTime=function(e){return window.fecha.format(e,"shortTime")},window.hassUtil.relativeTime=function(e){var t,i=Math.abs(new Date-e)/1e3,n=new Date>e?"%s ago":"in %s",a=window.hassUtil.relativeTime.tests;for(t=0;t<a.length;t+=2){if(i<a[t])return i=Math.floor(i),n.replace("%s",1===i?"1 "+a[t+1]:i+" "+a[t+1]+"s");i/=a[t]}return i=Math.floor(i),n.replace("%s",1===i?"1 week":i+" weeks")},window.hassUtil.relativeTime.tests=[60,"second",60,"minute",24,"hour",7,"day"],window.hassUtil.stateCardType=function(e,t){return"unavailable"===t.state?"display":window.hassUtil.DOMAINS_WITH_CARD.indexOf(t.domain)!==-1?t.domain:window.hassUtil.canToggle(e,t.entityId)?"toggle":"display"},window.hassUtil.stateMoreInfoType=function(e){return window.hassUtil.DOMAINS_WITH_MORE_INFO.indexOf(e.domain)!==-1?e.domain:window.hassUtil.HIDE_MORE_INFO.indexOf(e.domain)!==-1?"hidden":"default"},window.hassUtil.domainIcon=function(e,t){switch(e){case"alarm_control_panel":return t&&"disarmed"===t?"mdi:bell-outline":"mdi:bell";case"automation":return"mdi:playlist-play";case"binary_sensor":return t&&"off"===t?"mdi:radiobox-blank":"mdi:checkbox-marked-circle";case"camera":return"mdi:video";case"climate":return"mdi:nest-thermostat";case"configurator":return"mdi:settings";case"conversation":return"mdi:text-to-speech";case"cover":return t&&"open"===t?"mdi:window-open":"mdi:window-closed";case"device_tracker":return"mdi:account";case"fan":return"mdi:fan";case"group":return"mdi:google-circles-communities";case"homeassistant":return"mdi:home";case"input_boolean":return"mdi:drawing";case"input_select":return"mdi:format-list-bulleted";case"input_slider":return"mdi:ray-vertex";case"light":return"mdi:lightbulb";case"lock":return t&&"unlocked"===t?"mdi:lock-open":"mdi:lock";case"media_player":return t&&"off"!==t&&"idle"!==t?"mdi:cast-connected":"mdi:cast";case"notify":return"mdi:comment-alert";case"proximity":return"mdi:apple-safari";case"scene":return"mdi:google-pages";case"script":return"mdi:file-document";case"sensor":return"mdi:eye";case"simple_alarm":return"mdi:bell";case"sun":return"mdi:white-balance-sunny";case"switch":return"mdi:flash";case"updater":return"mdi:cloud-upload";case"weblink":return"mdi:open-in-new";default:return console.warn("Unable to find icon for domain "+e+" ("+t+")"),window.hassUtil.DEFAULT_ICON}},window.hassUtil.binarySensorIcon=function(e){var t=e.state&&"off"===e.state;switch(e.attributes.sensor_class){case"connectivity":return t?"mdi:server-network-off":"mdi:server-network";case"light":return t?"mdi:brightness-5":"mdi:brightness-7";case"moisture":return t?"mdi:water-off":"mdi:water";case"motion":return t?"mdi:walk":"mdi:run";case"occupancy":return t?"mdi:home":"mdi:home-outline";case"opening":return t?"mdi:crop-square":"mdi:exit-to-app";case"sound":return t?"mdi:music-note-off":"mdi:music-note";case"vibration":return t?"mdi:crop-portrait":"mdi:vibrate";case"gas":case"power":case"safety":case"smoke":return t?"mdi:verified":"mdi:alert";default:return t?"mdi:radiobox-blank":"mdi:checkbox-marked-circle"}},window.hassUtil.stateIcon=function(e){var t;if(!e)return window.hassUtil.DEFAULT_ICON;if(e.attributes.icon)return e.attributes.icon;if(t=e.attributes.unit_of_measurement,t&&"sensor"===e.domain){if("°C"===t||"°F"===t)return"mdi:thermometer";if("Mice"===t)return"mdi:mouse-variant"}else if("binary_sensor"===e.domain)return window.hassUtil.binarySensorIcon(e);return window.hassUtil.domainIcon(e.domain,e.state)}</script><script>window.hassBehavior={attached:function(){var e=this.hass;if(!e)throw new Error("No hass property found on "+this.nodeName);this.nuclearUnwatchFns=Object.keys(this.properties).reduce(function(t,r){var n;if(!("bindNuclear"in this.properties[r]))return t;if(n=this.properties[r].bindNuclear(e),!n)throw new Error("Undefined getter specified for key "+r+" on "+this.nodeName);return this[r]=e.reactor.evaluate(n),t.concat(e.reactor.observe(n,function(e){this[r]=e}.bind(this)))}.bind(this),[])},detached:function(){for(;this.nuclearUnwatchFns.length;)this.nuclearUnwatchFns.shift()()}}</script><style is="custom-style">:root{--primary-text-color:var(--light-theme-text-color);--primary-background-color:var(--light-theme-background-color);--secondary-text-color:var(--light-theme-secondary-color);--disabled-text-color:var(--light-theme-disabled-color);--divider-color:var(--light-theme-divider-color);--error-color:var(--paper-deep-orange-a700);--primary-color:var(--paper-indigo-500);--light-primary-color:var(--paper-indigo-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-color:#000000;--light-theme-text-color:var(--paper-grey-900);--light-theme-secondary-color:#737373;--light-theme-disabled-color:#9b9b9b;--light-theme-divider-color:#dbdbdb;--dark-theme-background-color:var(--paper-grey-900);--dark-theme-base-color:#ffffff;--dark-theme-text-color:#ffffff;--dark-theme-secondary-color:#bcbcbc;--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><script>!function(){var e={},t={},i=null;Polymer.IronMeta=Polymer({is:"iron-meta",properties:{type:{type:String,value:"default",observer:"_typeChanged"},key:{type:String,observer:"_keyChanged"},value:{type:Object,notify:!0,observer:"_valueChanged"},self:{type:Boolean,observer:"_selfChanged"},list:{type:Array,notify:!0}},hostAttributes:{hidden:!0},factoryImpl:function(e){if(e)for(var t in e)switch(t){case"type":case"key":case"value":this[t]=e[t]}},created:function(){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]=[]),this.list=t[i],this._registerKeyValue(this.key,this.value)},byKey:function(e){return this._metaData&&this._metaData[e]},_resetRegistration:function(e){this._unregisterKey(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){var a=t[e];delete t[e],this.arrayDelete(i,a)}}}),Polymer.IronMeta.getIronMeta=function(){return null===i&&(i=new Polymer.IronMeta),i},Polymer.IronMetaQuery=Polymer({is:"iron-meta-query",properties:{type:{type:String,value:"default",observer:"_typeChanged"},key:{type:String,observer:"_keyChanged"},value:{type:Object,notify:!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._metaData&&this._metaData[e])},_typeChanged:function(i){this._metaData=e[i],this.list=t[i],this.key&&this._keyChanged(this.key)},byKey:function(e){return this._metaData&&this._metaData[e]}})}()</script><script>Polymer.IronValidatableBehaviorMeta=null,Polymer.IronValidatableBehavior={properties:{validator:{type:String},invalid:{notify:!0,reflectToAttribute:!0,type:Boolean,value:!1},_validatorMeta:{type:Object},validatorType:{type:String,value:"validator"},_validator:{type:Object,computed:"__computeValidator(validator)"}},observers:["_invalidChanged(invalid)"],registered:function(){Polymer.IronValidatableBehaviorMeta=new Polymer.IronMeta({type:"validator"})},_invalidChanged:function(){this.invalid?this.setAttribute("aria-invalid","true"):this.removeAttribute("aria-invalid")},hasValidator:function(){return null!=this._validator},validate:function(a){return this.invalid=!this._getValidity(a),!this.invalid},_getValidity:function(a){return!this.hasValidator()||this._validator.validate(a)},__computeValidator:function(){return Polymer.IronValidatableBehaviorMeta&&Polymer.IronValidatableBehaviorMeta.byKey(this.validator)}}</script><script>Polymer.IronFormElementBehavior={properties:{name:{type:String},value:{notify:!0,type:String},required:{type:Boolean,value:!1},_parentForm:{type:Object}},attached:function(){this.fire("iron-form-element-register")},detached:function(){this._parentForm&&this._parentForm.fire("iron-form-element-unregister",{target:this})}}</script><script>Polymer.IronCheckedElementBehaviorImpl={properties:{checked:{type:Boolean,value:!1,reflectToAttribute:!0,notify:!0,observer:"_checkedChanged"},toggles:{type:Boolean,value:!0,reflectToAttribute:!0},value:{type:String,value:"on",observer:"_valueChanged"}},observers:["_requiredChanged(required)"],created:function(){this._hasIronCheckedElementBehavior=!0},_getValidity:function(e){return this.disabled||!this.required||this.checked},_requiredChanged:function(){this.required?this.setAttribute("aria-required","true"):this.removeAttribute("aria-required")},_checkedChanged:function(){this.active=this.checked,this.fire("iron-change")},_valueChanged:function(){void 0!==this.value&&null!==this.value||(this.value="on")}},Polymer.IronCheckedElementBehavior=[Polymer.IronFormElementBehavior,Polymer.IronValidatableBehavior,Polymer.IronCheckedElementBehaviorImpl]</script><script>!function(){"use strict";function e(e,t){var n="";if(e){var i=e.toLowerCase();" "===i||v.test(i)?n="space":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?String(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.hasModifiers||!!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,event:"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(function(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",meta:"metaKey"},u=/[a-z0-9*]/,h=/U\+/,c=/^arrow/,v=/^space(bar)?/,f=/^escape$/;Polymer.IronA11yKeysBehavior={properties:{keyEventTarget:{type:Object,value:function(){return this}},stopKeyboardEventPropagation:{type:Boolean,value:!1},_boundKeyHandlers:{type:Array,value:function(){return[]}},_imperativeKeyBindings:{type:Object,value:function(){return{}}}},observers:["_resetKeyEventListeners(keyEventTarget, _boundKeyHandlers)"],keyBindings:{},registered:function(){this._prepKeyBindings()},attached:function(){this._listenKeyEventListeners()},detached:function(){this._unlistenKeyEventListeners()},addOwnKeyBinding:function(e,t){this._imperativeKeyBindings[e]=t,this._prepKeyBindings(),this._resetKeyEventListeners()},removeOwnKeyBindings:function(){this._imperativeKeyBindings={},this._prepKeyBindings(),this._resetKeyEventListeners()},keyboardEventMatchesKeys:function(e,t){for(var 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:function(){this._keyBindings={},this._collectKeyBindings().forEach(function(e){for(var t in e)this._addKeyBinding(t,e[t])},this);for(var e in this._imperativeKeyBindings)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).forEach(function(e){this._keyBindings[e.event]=this._keyBindings[e.event]||[],this._keyBindings[e.event].push([e,t])},this)},_resetKeyEventListeners:function(){this._unlistenKeyEventListeners(),this.isAttached&&this._listenKeyEventListeners()},_listenKeyEventListeners:function(){this.keyEventTarget&&Object.keys(this._keyBindings).forEach(function(e){var t=this._keyBindings[e],n=this._onKeyBindingEvent.bind(this,t);this._boundKeyHandlers.push([this.keyEventTarget,e,n]),this.keyEventTarget.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(this.stopKeyboardEventPropagation&&t.stopPropagation(),!t.defaultPrevented)for(var n=0;n<e.length;n++){var i=e[n][0],s=e[n][1];if(r(i,t)&&(this._triggerKeyHandler(i,s,t),t.defaultPrevented))return}},_triggerKeyHandler:function(e,t,n){var i=Object.create(e);i.keyboardEvent=n;var r=new CustomEvent(e.event,{detail:i,cancelable:!0});this[t].call(this,r),r.defaultPrevented&&n.preventDefault()}}}()</script><script>Polymer.IronControlState={properties:{focused:{type:Boolean,value:!1,notify:!0,readOnly:!0,reflectToAttribute:!0},disabled:{type:Boolean,value:!1,notify:!0,observer:"_disabledChanged",reflectToAttribute:!0},_oldTabIndex:{type:Number},_boundFocusBlurHandler:{type:Function,value:function(){return this._focusBlurHandler.bind(this)}}},observers:["_changedControlState(focused, disabled)"],ready:function(){this.addEventListener("focus",this._boundFocusBlurHandler,!0),this.addEventListener("blur",this._boundFocusBlurHandler,!0)},_focusBlurHandler:function(e){if(e.target===this)this._setFocused("focus"===e.type);else if(!this.shadowRoot){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._controlStateChanged&&this._controlStateChanged()}}</script><script>Polymer.IronButtonStateImpl={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:{type:Boolean,readOnly:!0,value:!1},receivedFocusFromKeyboard:{type:Boolean,readOnly:!0},ariaActiveAttribute:{type:String,value:"aria-pressed",observer:"_ariaActiveAttributeChanged"}},listeners:{down:"_downHandler",up:"_upHandler",tap:"_tapHandler"},observers:["_detectKeyboardFocus(focused)","_activeChanged(active, ariaActiveAttribute)"],keyBindings:{"enter:keydown":"_asyncClick","space:keydown":"_spaceKeyDownHandler","space:keyup":"_spaceKeyUpHandler"},_mouseEventRe:/^mouse/,_tapHandler:function(){this.toggles?this._userActivate(!this.active):this.active=!1},_detectKeyboardFocus:function(e){this._setReceivedFocusFromKeyboard(!this.pointerDown&&e)},_userActivate:function(e){this.active!==e&&(this.active=e,this.fire("change"))},_downHandler:function(e){this._setPointerDown(!0),this._setPressed(!0),this._setReceivedFocusFromKeyboard(!1)},_upHandler:function(){this._setPointerDown(!1),this._setPressed(!1)},_spaceKeyDownHandler:function(e){var t=e.detail.keyboardEvent,i=Polymer.dom(t).localTarget;this.isLightDescendant(i)||(t.preventDefault(),t.stopImmediatePropagation(),this._setPressed(!0))},_spaceKeyUpHandler:function(e){var t=e.detail.keyboardEvent,i=Polymer.dom(t).localTarget;this.isLightDescendant(i)||(this.pressed&&this._asyncClick(),this._setPressed(!1))},_asyncClick:function(){this.async(function(){this.click()},1)},_pressedChanged:function(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"):this.removeAttribute(this.ariaActiveAttribute),this._changedButtonState()},_controlStateChanged:function(){this.disabled?this._setPressed(!1):this._changedButtonState()},_changedButtonState:function(){this._buttonStateChanged&&this._buttonStateChanged()}},Polymer.IronButtonState=[Polymer.IronA11yKeysBehavior,Polymer.IronButtonStateImpl]</script><dom-module id="paper-ripple" assetpath="../bower_components/paper-ripple/"><template><style>:host{display:block;position:absolute;border-radius:inherit;overflow:hidden;top:0;left:0;right:0;bottom:0;pointer-events:none}:host([animating]){-webkit-transform:translate(0,0);transform:translate3d(0,0,0)}#background,#waves,.wave,.wave-container{pointer-events:none;position:absolute;top:0;left:0;width:100%;height:100%}#background,.wave{opacity:0}#waves,.wave{overflow:hidden}.wave,.wave-container{border-radius:50%}:host(.circle) #background,:host(.circle) #waves{border-radius:50%}:host(.circle) .wave-container{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=Math.max(this.width,this.height)}function i(t){this.element=t,this.color=window.getComputedStyle(t).color,this.wave=document.createElement("div"),this.waveContainer=document.createElement("div"),this.wave.style.backgroundColor=this.color,this.wave.classList.add("wave"),this.waveContainer.classList.add("wave-container"),Polymer.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)},now:window.performance&&window.performance.now?window.performance.now.bind(window.performance):Date.now};t.prototype={get boundingRect(){return this.element.getBoundingClientRect()},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.distance(t,i,this.width,this.height);return Math.max(n,s,o,a)}},i.MAX_RADIUS=300,i.prototype={get recenters(){return this.element.recenters},get center(){return this.element.center},get mouseDownElapsed(){var t;return this.mouseDownStart?(t=e.now()-this.mouseDownStart,this.mouseUpStart&&(t-=this.mouseUpElapsed),t):0},get mouseUpElapsed(){return this.mouseUpStart?e.now()-this.mouseUpStart:0},get mouseDownElapsedSeconds(){return this.mouseDownElapsed/1e3},get mouseUpElapsedSeconds(){return this.mouseUpElapsed/1e3},get mouseInteractionSeconds(){return this.mouseDownElapsedSeconds+this.mouseUpElapsedSeconds},get initialOpacity(){return this.element.initialOpacity},get opacityDecayVelocity(){return this.element.opacityDecayVelocity},get radius(){var t=this.containerMetrics.width*this.containerMetrics.width,e=this.containerMetrics.height*this.containerMetrics.height,n=1.1*Math.min(Math.sqrt(t+e),i.MAX_RADIUS)+5,s=1.1-.2*(n/i.MAX_RADIUS),o=this.mouseInteractionSeconds/s,a=n*(1-Math.pow(80,-o));return Math.abs(a)},get opacity(){return this.mouseUpStart?Math.max(0,this.initialOpacity-this.mouseUpElapsedSeconds*this.opacityDecayVelocity):this.initialOpacity},get outerOpacity(){var t=.3*this.mouseUpElapsedSeconds,i=this.opacity;return Math.max(0,Math.min(t,i))},get isOpacityFullyDecayed(){return this.opacity<.01&&this.radius>=Math.min(this.maxRadius,i.MAX_RADIUS)},get isRestingAtMaxRadius(){return this.opacity>=this.initialOpacity&&this.radius>=Math.min(this.maxRadius,i.MAX_RADIUS)},get isAnimationComplete(){return 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.translationFraction*(this.xEnd-this.xStart):this.xStart},get yNow(){return this.yEnd?this.yStart+this.translationFraction*(this.yEnd-this.yStart):this.yStart},get isMouseDown(){return this.mouseDownStart&&!this.mouseUpStart},resetInteractionState:function(){this.maxRadius=0,this.mouseDownStart=0,this.mouseUpStart=0,this.xStart=0,this.yStart=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.width/2,e=this.yNow-this.containerMetrics.height/2,this.waveContainer.style.webkitTransform="translate("+i+"px, "+e+"px)",this.waveContainer.style.transform="translate3d("+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.resetInteractionState(),this.mouseDownStart=e.now(),this.center?(this.xStart=i,this.yStart=n,this.slideDistance=e.distance(this.xStart,this.yStart,this.xEnd,this.yEnd)):(this.xStart=t?t.detail.x-this.containerMetrics.boundingRect.left:this.containerMetrics.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.slideDistance=e.distance(this.xStart,this.yStart,this.xEnd,this.yEnd)),this.maxRadius=this.containerMetrics.furthestCornerDistanceFrom(this.xStart,this.yStart),this.waveContainer.style.top=(this.containerMetrics.height-this.containerMetrics.size)/2+"px",this.waveContainer.style.left=(this.containerMetrics.width-this.containerMetrics.size)/2+"px",this.waveContainer.style.width=this.containerMetrics.size+"px",this.waveContainer.style.height=this.containerMetrics.size+"px"},upAction:function(t){this.isMouseDown&&(this.mouseUpStart=e.now())},remove:function(){Polymer.dom(this.waveContainer.parentNode).removeChild(this.waveContainer)}},Polymer({is:"paper-ripple",behaviors:[Polymer.IronA11yKeysBehavior],properties:{initialOpacity:{type:Number,value:.25},opacityDecayVelocity:{type:Number,value:.8},recenters:{type:Boolean,value:!1},center:{type:Boolean,value:!1},ripples:{type:Array,value:function(){return[]}},animating:{type:Boolean,readOnly:!0,reflectToAttribute:!0,value:!1},holdDown:{type:Boolean,value:!1,observer:"_holdDownChanged"},noink:{type:Boolean,value:!1},_animating:{type:Boolean},_boundAnimate:{type:Function,value:function(){return this.animate.bind(this)}}},get target(){return this.keyEventTarget},keyBindings:{"enter:keydown":"_onEnterKeydown","space:keydown":"_onSpaceKeydown","space:keyup":"_onSpaceKeyup"},attached:function(){11==this.parentNode.nodeType?this.keyEventTarget=Polymer.dom(this).getOwnerRoot().host:this.keyEventTarget=this.parentNode;var t=this.keyEventTarget;this.listen(t,"up","uiUpAction"),this.listen(t,"down","uiDownAction")},detached:function(){this.unlisten(this.keyEventTarget,"up","uiUpAction"),this.unlisten(this.keyEventTarget,"down","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)},downAction:function(t){if(!(this.holdDown&&this.ripples.length>0)){var i=this.addRipple();i.downAction(t),this._animating||(this._animating=!0,this.animate())}},uiUpAction:function(t){this.noink||this.upAction(t)},upAction:function(t){this.holdDown||(this.ripples.forEach(function(i){i.upAction(t)}),this._animating=!0,this.animate())},onAnimationComplete:function(){this._animating=!1,this.$.background.style.backgroundColor=null,this.fire("transitionend")},addRipple:function(){var t=new i(this);return Polymer.dom(this.$.waves).appendChild(t.waveContainer),this.$.background.style.backgroundColor=t.color,this.ripples.push(t),this._setAnimating(!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))},animate: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.isOpacityFullyDecayed&&!i.isRestingAtMaxRadius&&this.removeRipple(i);this.shouldKeepAnimating||0!==this.ripples.length?window.requestAnimationFrame(this._boundAnimate):this.onAnimationComplete()}},_onEnterKeydown:function(){this.uiDownAction(),this.async(this.uiUpAction,1)},_onSpaceKeydown:function(){this.uiDownAction()},_onSpaceKeyup:function(){this.uiUpAction()},_holdDownChanged:function(t,i){void 0!==i&&(t?this.downAction():this.upAction())}})}()</script><script>Polymer.PaperRippleBehavior={properties:{noink:{type:Boolean,observer:"_noinkChanged"},_rippleContainer:{type:Object}},_buttonStateChanged:function(){this.focused&&this.ensureRipple()},_downHandler:function(e){Polymer.IronButtonStateImpl._downHandler.call(this,e),this.pressed&&this.ensureRipple(e)},ensureRipple:function(e){if(!this.hasRipple()){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 this.ensureRipple(),this._ripple},hasRipple:function(){return Boolean(this._ripple)},_createRipple:function(){return document.createElement("paper-ripple")},_noinkChanged:function(e){this.hasRipple()&&(this._ripple.noink=e)}}</script><script>Polymer.PaperInkyFocusBehaviorImpl={observers:["_focusedChanged(receivedFocusFromKeyboard)"],_focusedChanged:function(e){e&&this.ensureRipple(),this.hasRipple()&&(this._ripple.holdDown=e)},_createRipple:function(){var e=Polymer.PaperRippleBehavior._createRipple();return e.id="ink",e.setAttribute("center",""),e.classList.add("circle"),e}},Polymer.PaperInkyFocusBehavior=[Polymer.IronButtonState,Polymer.IronControlState,Polymer.PaperRippleBehavior,Polymer.PaperInkyFocusBehaviorImpl]</script><script>Polymer.PaperCheckedElementBehaviorImpl={_checkedChanged:function(){Polymer.IronCheckedElementBehaviorImpl._checkedChanged.call(this),this.hasRipple()&&(this.checked?this._ripple.setAttribute("checked",""):this._ripple.removeAttribute("checked"))},_buttonStateChanged:function(){Polymer.PaperRippleBehavior._buttonStateChanged.call(this),this.disabled||this.isAttached&&(this.checked=this.active)}},Polymer.PaperCheckedElementBehavior=[Polymer.PaperInkyFocusBehavior,Polymer.IronCheckedElementBehavior,Polymer.PaperCheckedElementBehaviorImpl]</script><dom-module id="paper-checkbox" assetpath="../bower_components/paper-checkbox/"><template strip-whitespace=""><style>:host{display:inline-block;white-space:nowrap;cursor:pointer;--calculated-paper-checkbox-size:var(--paper-checkbox-size, 18px);--calculated-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}#checkboxContainer{display:inline-block;position:relative;width:var(--calculated-paper-checkbox-size);height:var(--calculated-paper-checkbox-size);min-width:var(--calculated-paper-checkbox-size);margin:var(--paper-checkbox-margin,initial);vertical-align:var(--paper-checkbox-vertical-align,middle);background-color:var(--paper-checkbox-unchecked-background-color,transparent)}#ink{position:absolute;top:calc(0px - (var(--calculated-paper-checkbox-ink-size) - var(--calculated-paper-checkbox-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-checkbox-unchecked-ink-color,var(--primary-text-color));opacity:.6;pointer-events:none}:host-context([dir=rtl]) #ink{right:calc(0px - (var(--calculated-paper-checkbox-ink-size) - var(--calculated-paper-checkbox-size))/ 2);left:auto}#ink[checked]{color:var(--paper-checkbox-checked-ink-color,var(--primary-color))}#checkbox{position:relative;box-sizing:border-box;height:100%;border:solid 2px;border-color: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 #checkmark{-webkit-animation:checkmark-expand 140ms ease-out forwards;animation:checkmark-expand 140ms ease-out forwards}@-webkit-keyframes checkmark-expand{0%{-webkit-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(--paper-checkbox-checked-color,var(--primary-color));border-color:var(--paper-checkbox-checked-color,var(--primary-color))}#checkmark{position:absolute;width:36%;height:70%;border-style:solid;border-top:none;border-left:none;border-right-width:calc(2/15 * var(--calculated-paper-checkbox-size));border-bottom-width:calc(2/15 * var(--calculated-paper-checkbox-size));border-color:var(--paper-checkbox-checkmark-color,#fff);-webkit-transform-origin:97% 86%;transform-origin:97% 86%;box-sizing:content-box}:host-context([dir=rtl]) #checkmark{-webkit-transform-origin:50% 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,var(--primary-text-color));@apply(--paper-checkbox-label)}:host([checked]) #checkboxLabel{color:var(--paper-checkbox-label-checked-color,var(--paper-checkbox-label-color,var(--primary-text-color)));@apply(--paper-checkbox-label-checked)}:host-context([dir=rtl]) #checkboxLabel{padding-right:var(--paper-checkbox-label-spacing,8px);padding-left:0}#checkboxLabel[hidden]{display:none}:host([disabled]) #checkbox{opacity:.5;border-color:var(--paper-checkbox-unchecked-color,var(--primary-text-color))}:host([disabled][checked]) #checkbox{background-color:var(--paper-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="checkboxContainer"><div id="checkbox" class$="[[_computeCheckboxClass(checked, invalid)]]"><div id="checkmark" class$="[[_computeCheckmarkClass(checked)]]"></div></div></div><div id="checkboxLabel"><content></content></div></template><script>Polymer({is:"paper-checkbox",behaviors:[Polymer.PaperCheckedElementBehavior],hostAttributes:{role:"checkbox","aria-checked":!1,tabindex:0},properties:{ariaActiveAttribute:{type:String,value:"aria-checked"}},attached:function(){var e=this.getComputedStyleValue("--calculated-paper-checkbox-ink-size");if("-1px"===e){var t=parseFloat(this.getComputedStyleValue("--calculated-paper-checkbox-size")),a=Math.floor(8/3*t);a%2!==t%2&&a++,this.customStyle["--paper-checkbox-ink-size"]=a+"px",this.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.$.checkboxContainer,Polymer.PaperInkyFocusBehaviorImpl._createRipple.call(this)}})</script></dom-module><script>Polymer.PaperButtonBehaviorImpl={properties:{elevation:{type:Number,reflectToAttribute:!0,readOnly:!0}},observers:["_calculateElevation(focused, disabled, active, pressed, receivedFocusFromKeyboard)","_computeKeyboardClass(receivedFocusFromKeyboard)"],hostAttributes:{role:"button",tabindex:"0",animated:!0},_calculateElevation:function(){var e=1;this.disabled?e=0:this.active||this.pressed?e=4:this.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()},_spaceKeyUpHandler:function(e){Polymer.IronButtonStateImpl._spaceKeyUpHandler.call(this,e),this.hasRipple()&&this._ripple.uiUpAction()}},Polymer.PaperButtonBehavior=[Polymer.IronButtonState,Polymer.IronControlState,Polymer.PaperRippleBehavior,Polymer.PaperButtonBehaviorImpl]</script><style is="custom-style">:root{--shadow-transition:{transition:box-shadow .28s cubic-bezier(.4,0,.2,1)};--shadow-none:{box-shadow: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-shadow: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:{box-shadow:0 6px 10px 0 rgba(0,0,0,.14),0 1px 18px 0 rgba(0,0,0,.12),0 3px 5px -1px 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-elevation-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 9px 46px 8px rgba(0,0,0,.12),0 11px 15px -7px rgba(0,0,0,.4)};}</style><dom-module id="paper-material-shared-styles" assetpath="../bower_components/paper-material/"><template><style>:host{display:block;position:relative}:host([elevation="1"]){@apply(--shadow-elevation-2dp)}:host([elevation="2"]){@apply(--shadow-elevation-4dp)}:host([elevation="3"]){@apply(--shadow-elevation-6dp)}:host([elevation="4"]){@apply(--shadow-elevation-8dp)}:host([elevation="5"]){@apply(--shadow-elevation-16dp)}</style></template></dom-module><dom-module id="paper-button" assetpath="../bower_components/paper-button/"><template strip-whitespace=""><style include="paper-material-shared-styles">:host{@apply(--layout-inline);@apply(--layout-center-center);position:relative;box-sizing:border-box;min-width:5.14em;margin:0 .29em;background:0 0;-webkit-tap-highlight-color:transparent;-webkit-tap-highlight-color:transparent;font:inherit;text-transform:uppercase;outline-width:0;border-radius:3px;-moz-user-select:none;-ms-user-select:none;-webkit-user-select:none;user-select:none;cursor:pointer;z-index:0;padding:.7em .57em;@apply(--paper-font-common-base);@apply(--paper-button)}:host([hidden]){display:none!important}:host([raised].keyboard-focus){font-weight:700;@apply(--paper-button-raised-keyboard-focus)}:host(:not([raised]).keyboard-focus){font-weight:700;@apply(--paper-button-flat-keyboard-focus)}:host([disabled]){background:#eaeaea;color:#a8a8a8;cursor:auto;pointer-events:none;@apply(--paper-button-disabled)}:host([animated]){@apply(--shadow-transition)}paper-ripple{color:var(--paper-button-ink-color)}</style><content></content></template><script>Polymer({is:"paper-button",behaviors:[Polymer.PaperButtonBehavior],properties:{raised:{type:Boolean,reflectToAttribute:!0,value:!1,observer:"_calculateElevation"}},_calculateElevation:function(){this.raised?Polymer.PaperButtonBehaviorImpl._calculateElevation.apply(this):this._setElevation(0)}})</script></dom-module><dom-module id="paper-input-container" assetpath="../bower_components/paper-input/"><template><style>:host{display:block;padding:8px 0;@apply(--paper-input-container)}:host([inline]){display:inline-block}:host([disabled]){pointer-events:none;opacity:.33;@apply(--paper-input-container-disabled)}:host([hidden]){display:none!important}.floated-label-placeholder{@apply(--paper-font-caption)}.underline{position:relative}.focused-line{@apply(--layout-fit);background:var(--paper-input-container-focus-color,--primary-color);height:2px;-webkit-transform-origin:center center;transform-origin:center center;-webkit-transform:scale3d(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(--paper-transition-easing)}.underline.is-invalid .focused-line{background:var(--paper-input-container-invalid-color,--error-color);-webkit-transform:none;transform:none;-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-input-container-underline)}:host([disabled]) .unfocused-line{border-bottom:1px dashed;border-color:var(--paper-input-container-color,--secondary-text-color);background:0 0;@apply(--paper-input-container-underline-disabled)}.label-and-input-container{@apply(--layout-flex-auto);@apply(--layout-relative);width:100%;max-width:100%}.input-content{@apply(--layout-horizontal);@apply(--layout-center);position: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-transform-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-label,.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-is-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(--paper-input-container-focus-color,--primary-color);@apply(--paper-input-container-label-focus)}.input-content.is-invalid ::content .paper-input-label,.input-content.is-invalid ::content label{color:var(--paper-input-container-invalid-color,--error-color)}.input-content.label-is-hidden ::content .paper-input-label,.input-content.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-appearance:none;text-align:inherit;vertical-align:bottom;@apply(--paper-font-subhead);@apply(--paper-input-container-input)}::content [prefix]{@apply(--paper-font-subhead);@apply(--paper-input-prefix);@apply(--layout-flex-none)}::content [suffix]{@apply(--paper-font-subhead);@apply(--paper-input-suffix);@apply(--layout-flex-none)}.input-content ::content input{min-width:0}.input-content ::content textarea{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-color,--primary-color)}</style><template is="dom-if" if="[[!noLabelFloat]]"><div class="floated-label-placeholder" aria-hidden="true"> </div></template><div class$="[[_computeInputContentClass(noLabelFloat,alwaysFloatLabel,focused,invalid,_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,invalid)]]"><div class="unfocused-line"></div><div class="focused-line"></div></div><div class$="[[_computeAddOnContentClass(focused,invalid)]]"><content id="addOnContent" select="[add-on]"></content></div></template></dom-module><script>Polymer({is:"paper-input-container",properties:{noLabelFloat:{type:Boolean,value:!1},alwaysFloatLabel:{type:Boolean,value:!1},attrForValue:{type:String,value:"bind-value"},autoValidate:{type:Boolean,value:!1},invalid:{observer:"_invalidChanged",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:Function,value:function(){return this._onFocus.bind(this)}},_boundOnBlur:{type:Function,value:function(){return this._onBlur.bind(this)}},_boundOnInput:{type:Function,value:function(){return this._onInput.bind(this)}},_boundValueChanged:{type:Function,value:function(){return this._onValueChanged.bind(this)}}},listeners:{"addon-attached":"_onAddonAttached","iron-input-validate":"_onIronInputValidate"},get _valueChangedEvent(){return this.attrForValue+"-changed"},get _propertyForValue(){return Polymer.CaseMap.dashToCamelCase(this.attrForValue)},get _inputElement(){return Polymer.dom(this).querySelector(this._inputSelector)},get _inputElementValue(){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._inputElement):this._handleValue(this._inputElement)},_onAddonAttached:function(t){this._addons||(this._addons=[]);var n=t.target;this._addons.indexOf(n)===-1&&(this._addons.push(n),this.isAttached&&this._handleValue(this._inputElement))},_onFocus:function(){this._setFocused(!0)},_onBlur:function(){this._setFocused(!1),this._handleValueAndAutoValidate(this._inputElement)},_onInput:function(t){this._handleValueAndAutoValidate(t.target)},_onValueChanged:function(t){this._handleValueAndAutoValidate(t.target)},_handleValue:function(t){var n=this._inputElementValue;n||0===n||"number"===t.type&&!t.checkValidity()?this._inputHasContent=!0:this._inputHasContent=!1,this.updateAddons({inputElement:t,value:n,invalid:this.invalid})},_handleValueAndAutoValidate:function(t){if(this.autoValidate){var n;n=t.validate?t.validate(this._inputElementValue):t.checkValidity(),this.invalid=!n}this._handleValue(t)},_onIronInputValidate:function(t){this.invalid=this._inputElement.invalid},_invalidChanged:function(){this._addons&&this.updateAddons({invalid: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},_computeAddOnContentClass:function(t,n){var e="add-on-content";return n?e+=" is-invalid":t&&(e+=" is-highlighted"),e}})</script><script>Polymer.PaperInputAddonBehavior={hostAttributes:{"add-on":""},attached:function(){this.fire("addon-attached")},update:function(t){}}</script><dom-module id="paper-input-error" assetpath="../bower_components/paper-input/"><template><style>:host{display:inline-block;visibility:hidden;color:var(--paper-input-container-invalid-color,--error-color);@apply(--paper-font-caption);@apply(--paper-input-error);position:absolute;left:0;right:0}:host([invalid]){visibility:visible};</style><content></content></template></dom-module><script>Polymer({is:"paper-input-error",behaviors:[Polymer.PaperInputAddonBehavior],properties:{invalid:{readOnly:!0,reflectToAttribute:!0,type:Boolean}},update:function(e){this._setInvalid(e.invalid)}})</script><dom-module id="iron-a11y-announcer" assetpath="../bower_components/iron-a11y-announcer/"><template><style>:host{display:inline-block;position: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||(Polymer.IronA11yAnnouncer.instance=this),document.body.addEventListener("iron-announce",this._onIronAnnounce.bind(this))},announce:function(n){this._text="",this.async(function(){this._text=n},100)},_onIronAnnounce:function(n){n.detail&&n.detail.text&&this.announce(n.detail.text)}}),Polymer.IronA11yAnnouncer.instance=null,Polymer.IronA11yAnnouncer.requestAvailability=function(){Polymer.IronA11yAnnouncer.instance||(Polymer.IronA11yAnnouncer.instance=document.createElement("iron-a11y-announcer")),document.body.appendChild(Polymer.IronA11yAnnouncer.instance)}}()</script></dom-module><script>Polymer({is:"iron-input",extends:"input",behaviors:[Polymer.IronValidatableBehavior],properties:{bindValue:{observer:"_bindValueChanged",type:String},preventInvalidInput:{type:Boolean},allowedPattern:{type:String,observer:"_allowedPatternChanged"},_previousValidInput:{type:String,value:""},_patternAlreadyChecked:{type:Boolean,value:!1}},listeners:{input:"_onInput",keypress:"_onKeypress"},registered:function(){this._canDispatchEventOnDisabled()||(this._origDispatchEvent=this.dispatchEvent,this.dispatchEvent=this._dispatchEventFirefoxIE)},created:function(){Polymer.IronA11yAnnouncer.requestAvailability()},_canDispatchEventOnDisabled:function(){var e=document.createElement("input"),t=!1;e.disabled=!0,e.addEventListener("feature-check-dispatch-event",function(){t=!0});try{e.dispatchEvent(new Event("feature-check-dispatch-event"))}catch(e){}return t},_dispatchEventFirefoxIE:function(){var e=this.disabled;this.disabled=!1,this._origDispatchEvent.apply(this,arguments),this.disabled=e},get _patternRegExp(){var e;if(this.allowedPattern)e=new RegExp(this.allowedPattern);else switch(this.type){case"number":e=/[0-9.,e-]/}return e},ready:function(){this.bindValue=this.value},_bindValueChanged:function(){this.value!==this.bindValue&&(this.value=this.bindValue||0===this.bindValue||this.bindValue===!1?this.bindValue:""),this.fire("bind-value-changed",{value:this.bindValue})},_allowedPatternChanged:function(){this.preventInvalidInput=!!this.allowedPattern},_onInput:function(){if(this.preventInvalidInput&&!this._patternAlreadyChecked){var e=this._checkPatternValidity();e||(this._announceInvalidCharacter("Invalid string of characters not entered."),this.value=this._previousValidInput)}this.bindValue=this.value,this._previousValidInput=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.keyCode>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._patternAlreadyChecked=!0;var i=String.fromCharCode(e.charCode);this._isPrintable(e)&&!t.test(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]))return!1;return!0},validate:function(){var e=this.checkValidity();return e&&(this.required&&""===this.value?e=!1:this.hasValidator()&&(e=Polymer.IronValidatableBehavior.validate.call(this,this.value))),this.invalid=!e,this.fire("iron-input-validate"),e},_announceInvalidCharacter:function(e){this.fire("iron-announce",{text:e})}})</script><dom-module id="login-form" assetpath="layouts/"><template><style is="custom-style" include="iron-flex iron-positioning"></style><style>:host{white-space:nowrap}#passwordDecorator{display:block;margin-bottom:16px}paper-checkbox{margin-right:8px}paper-button{margin-left:72px}.interact{height:125px}#validatebox{margin-top:16px;text-align:center}.validatemessage{margin-top:10px}</style><div class="layout vertical center center-center fit"><img src="/static/icons/favicon-192x192.png" height="192"> <a href="#" id="hideKeyboardOnFocus"></a><div class="interact"><div id="loginform" hidden$="[[showLoading]]"><paper-input-container id="passwordDecorator" invalid="[[isInvalid]]"><label>Password</label><input is="iron-input" type="password" id="passwordInput"><paper-input-error invalid="[[isInvalid]]">[[errorMessage]]</paper-input-error></paper-input-container><div class="layout horizontal center"><paper-checkbox for="" id="rememberLogin">Remember</paper-checkbox><paper-button id="loginButton">Log In</paper-button></div></div><div id="validatebox" hidden$="[[!showLoading]]"><paper-spinner active="true"></paper-spinner><br><div class="validatemessage">Loading data</div></div></div></div></template></dom-module><script>Polymer({is:"login-form",behaviors:[window.hassBehavior],properties:{hass:{type:Object},errorMessage:{type:String,bindNuclear:function(e){return e.authGetters.attemptErrorMessage}},isInvalid:{type:Boolean,bindNuclear:function(e){return e.authGetters.isInvalidAttempt}},isValidating:{type:Boolean,observer:"isValidatingChanged",bindNuclear:function(e){return e.authGetters.isValidating}},loadingResources:{type:Boolean,value:!1},forceShowLoading:{type:Boolean,value:!1},showLoading:{type:Boolean,computed:"computeShowSpinner(forceShowLoading, isValidating)"}},listeners:{keydown:"passwordKeyDown","loginButton.tap":"validatePassword"},observers:["validatingChanged(isValidating, isInvalid)"],attached:function(){window.removeInitMsg()},computeShowSpinner:function(e,i){return e||i},validatingChanged:function(e,i){e||i||(this.$.passwordInput.value="")},isValidatingChanged:function(e){e||this.async(function(){this.$.passwordInput.focus()}.bind(this),10)},passwordKeyDown:function(e){13===e.keyCode?(this.validatePassword(),e.preventDefault()):this.isInvalid&&(this.isInvalid=!1)},validatePassword:function(){this.$.hideKeyboardOnFocus.focus(),window.validateAuth(this.$.passwordInput.value,this.$.rememberLogin.checked)}})</script><script>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.bind(this)}},_mq:{value:null}},attached:function(){this.style.display="none",this.queryChanged()},detached:function(){this._remove()},_add:function(){this._mq&&this._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=window.matchMedia(e),this._add(),this.queryHandler(this._mq))},queryHandler:function(e){this._setQueryMatches(e.matches)}})</script><script>Polymer.IronSelection=function(e){this.selection=[],this.selectCallback=e},Polymer.IronSelection.prototype={get:function(){return this.multi?this.selection.slice():this.selection[0]},clear:function(e){this.selection.slice().forEach(function(t){(!e||e.indexOf(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.isSelected(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)}},select:function(e){this.multi?this.toggle(e):this.get()!==e&&(this.setItemSelected(this.get(),!1),this.setItemSelected(e,!0))},toggle:function(e){this.setItemSelected(e,!this.isSelected(e))}}</script><script>Polymer.IronSelectableBehavior={properties:{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},fallbackSelection:{type:String,value:null},items:{type:Array,readOnly:!0,notify:!0,value:function(){return[]}},_excludedLocalNames:{type:Object,value:function(){return{template:1}}}},observers:["_updateAttrForSelected(attrForSelected)","_updateSelected(selected)","_checkFallback(fallbackSelection)"],created:function(){this._bindFilterItem=this._filterItem.bind(this),this._selection=new Polymer.IronSelection(this._applySelection.bind(this))},attached:function(){this._observer=this._observeItems(this),this._updateItems(),this._shouldUpdateSelection||this._updateSelected(),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:function(e){this.selected=e},selectPrevious:function(){var e=this.items.length,t=(Number(this._valueToIndex(this.selected))-1+e)%e;this.selected=this._indexToValue(t)},selectNext:function(){var e=(Number(this._valueToIndex(this.selected))+1)%this.items.length;this.selected=this._indexToValue(e)},selectIndex:function(e){this.select(this._indexToValue(e))},forceSynchronousItemUpdate:function(){this._updateItems()},get _shouldUpdateSelection(){return null!=this.selected},_checkFallback:function(){this._shouldUpdateSelection&&this._updateSelected()},_addListener: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=Polymer.dom(this).queryDistributedElements(this.selectable||"*");e=Array.prototype.filter.call(e,this._bindFilterItem),this._setItems(e)},_updateAttrForSelected:function(){this._shouldUpdateSelection&&(this.selected=this._indexToValue(this.indexOf(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._selection.get()&&(this.selected=this.fallbackSelection)},_filterItem:function(e){return!this._excludedLocalNames[e.localName]},_valueToItem:function(e){return null==e?null:this.items[this._valueToIndex(e)]},_valueToIndex:function(e){if(!this.attrForSelected)return Number(e);for(var t,i=0;t=this.items[i];i++)if(this._valueForItem(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:function(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.fire("iron-"+(t?"select":"deselect"),{item:e})},_selectionChange:function(){this._setSelectedItem(this._selection.get())},_observeItems:function(e){return Polymer.dom(e).observeNodes(function(e){this._updateItems(),this._shouldUpdateSelection&&this._updateSelected(),this.fire("iron-items-changed",e,{bubbles:!1,cancelable:!1})})},_activateHandler:function(e){for(var t=e.target,i=this.items;t&&t!=this;){var s=i.indexOf(t);if(s>=0){var n=this._indexToValue(s);return void this._itemActivate(n,t)}t=t.parentNode}},_itemActivate:function(e,t){this.fire("iron-activate",{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(selectedValues.splices)"],select:function(e){this.multi?this.selectedValues?this._toggleSelected(e):this.selectedValues=[e]:this.selected=e},multiChanged:function(e){this._selection.multi=e},get _shouldUpdateSelection(){return null!=this.selected||null!=this.selectedValues&&this.selectedValues.length},_updateAttrForSelected:function(){this.multi?this._shouldUpdateSelection&&(this.selectedValues=this.selectedItems.map(function(e){return this._indexToValue(this.indexOf(e))},this).filter(function(e){return null!=e},this)):Polymer.IronSelectableBehavior._updateAttrForSelected.apply(this)},_updateSelected:function(){this.multi?this._selectMulti(this.selectedValues):this._selectSelected(this.selected)},_selectMulti:function(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.fallbackSelection&&this.items.length&&!this._selection.get().length){var s=this._valueToItem(this.fallbackSelection);s&&(this.selectedValues=[this.fallbackSelection])}}else this._selection.clear()},_selectionChange:function(){var e=this._selection.get();this.multi?this._setSelectedItems(e):(this._setSelectedItems([e]),this._setSelectedItem(e))},_toggleSelected:function(e){var t=this.selectedValues.indexOf(e),l=t<0;l?this.push("selectedValues",e):this.splice("selectedValues",t,1)},_valuesToItems:function(e){return null==e?null:e.map(function(e){return this._valueToItem(e)},this)}},Polymer.IronMultiSelectableBehavior=[Polymer.IronSelectableBehavior,Polymer.IronMultiSelectableBehaviorImpl]</script><script>Polymer({is:"iron-selector",behaviors:[Polymer.IronMultiSelectableBehavior]})</script><script>Polymer.IronResizableBehavior={properties:{_parentResizable:{type:Object,observer:"_parentResizableChanged"},_notifyingDescendant:{type:Boolean,value:!1}},listeners:{"iron-request-resize-notifications":"_onIronRequestResizeNotifications"},created:function(){this._interestedResizables=[],this._boundNotifyResize=this.notifyResize.bind(this)},attached:function(){this.fire("iron-request-resize-notifications",null,{node:this,bubbles:!0,cancelable:!0}),this._parentResizable||(window.addEventListener("resize",this._boundNotifyResize),this.notifyResize())},detached:function(){this._parentResizable?this._parentResizable.stopResizeNotificationsFor(this):window.removeEventListener("resize",this._boundNotifyResize),this._parentResizable=null},notifyResize:function(){this.isAttached&&(this._interestedResizables.forEach(function(e){this.resizerShouldNotify(e)&&this._notifyDescendant(e)},this),this._fireResize())},assignParentResizable:function(e){this._parentResizable=e},stopResizeNotificationsFor:function(e){var i=this._interestedResizables.indexOf(e);i>-1&&(this._interestedResizables.splice(i,1),this.unlisten(e,"iron-resize","_onDescendantIronResize"))},resizerShouldNotify:function(e){return!0},_onDescendantIronResize:function(e){return this._notifyingDescendant?void e.stopPropagation():void(Polymer.Settings.useShadow||this._fireResize())},_fireResize:function(){this.fire("iron-resize",null,{node:this,bubbles:!1})},_onIronRequestResizeNotifications:function(e){var i=e.path?e.path[0]:e.target;i!==this&&(this._interestedResizables.indexOf(i)===-1&&(this._interestedResizables.push(i),this.listen(i,"iron-resize","_onDescendantIronResize")),i.assignParentResizable(this),this._notifyDescendant(i),e.stopPropagation())},_parentResizableChanged:function(e){e&&window.removeEventListener("resize",this._boundNotifyResize)},_notifyDescendant:function(e){this.isAttached&&(this._notifyingDescendant=!0,e.notifyResize(),this._notifyingDescendant=!1)}}</script><dom-module id="paper-drawer-panel" assetpath="../bower_components/paper-drawer-panel/"><template><style>:host{display:block;position:absolute;top:0;left:0;width:100%;height:100%;overflow:hidden}iron-selector>#drawer{position:absolute;top:0;left:0;height:100%;background-color:#fff;-moz-box-sizing:border-box;box-sizing:border-box;@apply(--paper-drawer-panel-drawer-container)}.transition>#drawer{transition:-webkit-transform ease-in-out .3s,width ease-in-out .3s,visibility .3s;transition:transform ease-in-out .3s,width ease-in-out .3s,visibility .3s}.left-drawer>#drawer{@apply(--paper-drawer-panel-left-drawer-container)}.right-drawer>#drawer{left:auto;right:0;@apply(--paper-drawer-panel-right-drawer-container)}iron-selector>#main{position:absolute;top:0;right:0;bottom:0;@apply(--paper-drawer-panel-main-container)}.transition>#main{transition:left ease-in-out .3s,padding ease-in-out .3s}.right-drawer>#main{left:0}.right-drawer.transition>#main{transition:right ease-in-out .3s,padding ease-in-out .3s}#main>::content>[main]{height:100%}#drawer>::content>[drawer]{height:100%}#scrim{position:absolute;top:0;right:0;bottom:0;left:0;visibility:hidden;opacity:0;transition:opacity ease-in-out .38s,visibility ease-in-out .38s;background-color:rgba(0,0,0,.3);@apply(--paper-drawer-panel-scrim)}.narrow-layout>#drawer{will-change:transform}.narrow-layout>#drawer.iron-selected{box-shadow:2px 2px 4px rgba(0,0,0,.15)}.right-drawer.narrow-layout>#drawer.iron-selected{box-shadow:-2px 2px 4px rgba(0,0,0,.15)}.narrow-layout>#drawer>::content>[drawer]{border:0}.left-drawer.narrow-layout>#drawer:not(.iron-selected){visibility:hidden;-webkit-transform:translateX(-100%);transform:translateX(-100%)}.right-drawer.narrow-layout>#drawer:not(.iron-selected){left:auto;visibility:hidden;-webkit-transform:translateX(100%);transform:translateX(100%)}.left-drawer.dragging>#drawer:not(.iron-selected),.left-drawer.peeking>#drawer:not(.iron-selected),.right-drawer.dragging>#drawer:not(.iron-selected),.right-drawer.peeking>#drawer:not(.iron-selected){visibility:visible}.narrow-layout>#main{padding:0}.right-drawer.narrow-layout>#main{left:0;right:0}.dragging>#main>#scrim,.narrow-layout>#main:not(.iron-selected)>#scrim{visibility:visible;opacity:var(--paper-drawer-panel-scrim-opacity,1)}.narrow-layout>#main>*{margin:0;min-height:100%;left:0;right:0;-moz-box-sizing:border-box;box-sizing:border-box}iron-selector:not(.narrow-layout) ::content [paper-drawer-toggle]{display:none}</style><iron-media-query id="mq" on-query-matches-changed="_onQueryMatchesChanged" query="[[_computeMediaQuery(forceNarrow, responsiveWidth)]]"></iron-media-query><iron-selector attr-for-selected="id" class$="[[_computeIronSelectorClass(narrow, _transition, dragging, rightDrawer, peeking)]]" activate-event="" selected="[[selected]]"><div id="main" style$="[[_computeMainStyle(narrow, rightDrawer, drawerWidth)]]"><content select="[main]"></content><div id="scrim" on-tap="closeDrawer"></div></div><div id="drawer" style$="[[_computeDrawerStyle(drawerWidth)]]"><content id="drawerContent" select="[drawer]"></content></div></iron-selector></template><script>!function(){"use strict";function e(e){var t=[];for(var i in e)e.hasOwnProperty(i)&&e[i]&&t.push(i);return t.join(" ")}var t=null;Polymer({is:"paper-drawer-panel",behaviors:[Polymer.IronResizableBehavior],properties:{defaultSelected:{type:String,value:"main"},disableEdgeSwipe:{type:Boolean,value:!1},disableSwipe:{type:Boolean,value:!1},dragging:{type:Boolean,value:!1,readOnly:!0,notify:!0},drawerWidth:{type:String,value:"256px"},edgeSwipeSensitivity:{type:Number,value:30},forceNarrow:{type:Boolean,value:!1},hasTransform:{type:Boolean,value:function(){return"transform"in this.style}},hasWillChange:{type:Boolean,value:function(){return"willChange"in this.style}},narrow:{reflectToAttribute:!0,type:Boolean,value:!1,readOnly:!0,notify:!0},peeking:{type:Boolean,value:!1,readOnly:!0,notify:!0},responsiveWidth:{type:String,value:"768px"},rightDrawer:{type:Boolean,value:!1},selected:{reflectToAttribute:!0,notify:!0,type:String,value:null},drawerToggleAttribute:{type:String,value:"paper-drawer-toggle"},drawerFocusSelector:{type:String,value:'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([tabindex="-1"]),iframe:not([tabindex="-1"]),[tabindex]:not([tabindex="-1"]),[contentEditable=true]:not([tabindex="-1"])'},_transition:{type:Boolean,value:!1}},listeners:{tap:"_onTap",track:"_onTrack",down:"_downHandler",up:"_upHandler",transitionend:"_onTransitionEnd"},observers:["_forceNarrowChanged(forceNarrow, defaultSelected)","_toggleFocusListener(selected)"],ready:function(){this._transition=!0,this._boundFocusListener=this._didFocus.bind(this)},togglePanel:function(){this._isMainSelected()?this.openDrawer():this.closeDrawer()},openDrawer:function(){this.selected="drawer"},closeDrawer:function(){this.selected="main"},_onTransitionEnd:function(e){var t=Polymer.dom(e).localTarget;if(t===this&&("left"!==e.propertyName&&"right"!==e.propertyName||this.notifyResize(),"transform"===e.propertyName&&"drawer"===this.selected)){var i=this._getAutoFocusedNode();i&&i.focus()}},_computeIronSelectorClass:function(t,i,r,n,a){return e({dragging:r,"narrow-layout":t,"right-drawer":n,"left-drawer":!n,transition:i,peeking:a})},_computeDrawerStyle:function(e){return"width:"+e+";"},_computeMainStyle:function(e,t,i){var r="";return r+="left:"+(e||t?"0":i)+";",t&&(r+="right:"+(e?"":i)+";"),r},_computeMediaQuery:function(e,t){return e?"":"(max-width: "+t+")"},_computeSwipeOverlayHidden:function(e,t){return!e||t},_onTrack:function(e){if(!t||this===t)switch(e.detail.state){case"start":this._trackStart(e);break;case"track":this._trackX(e);break;case"end":this._trackEnd(e)}},_responsiveChange:function(e){this._setNarrow(e),this.selected=this.narrow?this.defaultSelected:null,this.setScrollDirection(this._swipeAllowed()?"y":"all"),this.fire("paper-responsive-change",{narrow:this.narrow})},_onQueryMatchesChanged:function(e){this._responsiveChange(e.detail.value)},_forceNarrowChanged:function(){this._responsiveChange(this.forceNarrow||this.$.mq.queryMatches)},_swipeAllowed:function(){return this.narrow&&!this.disableSwipe},_isMainSelected:function(){return"main"===this.selected},_startEdgePeek:function(){this.width=this.$.drawer.offsetWidth,this._moveDrawer(this._translateXForDeltaX(this.rightDrawer?-this.edgeSwipeSensitivity:this.edgeSwipeSensitivity)),this._setPeeking(!0)},_stopEdgePeek:function(){this.peeking&&(this._setPeeking(!1),this._moveDrawer(null))},_downHandler:function(e){!this.dragging&&this._isMainSelected()&&this._isEdgeTouch(e)&&!t&&(this._startEdgePeek(),e.preventDefault(),t=this)},_upHandler:function(){this._stopEdgePeek(),t=null},_onTap:function(e){var t=Polymer.dom(e).localTarget,i=t&&this.drawerToggleAttribute&&t.hasAttribute(this.drawerToggleAttribute);i&&this.togglePanel()},_isEdgeTouch:function(e){var t=e.detail.x;return!this.disableEdgeSwipe&&this._swipeAllowed()&&(this.rightDrawer?t>=this.offsetWidth-this.edgeSwipeSensitivity:t<=this.edgeSwipeSensitivity)},_trackStart:function(e){this._swipeAllowed()&&(t=this,this._setDragging(!0),this._isMainSelected()&&this._setDragging(this.peeking||this._isEdgeTouch(e)),this.dragging&&(this.width=this.$.drawer.offsetWidth,this._transition=!1))},_translateXForDeltaX:function(e){var t=this._isMainSelected();return this.rightDrawer?Math.max(0,t?this.width+e:e):Math.min(0,t?e-this.width:e)},_trackX:function(e){if(this.dragging){var t=e.detail.dx;if(this.peeking){if(Math.abs(t)<=this.edgeSwipeSensitivity)return;this._setPeeking(!1)}this._moveDrawer(this._translateXForDeltaX(t))}},_trackEnd:function(e){if(this.dragging){var i=e.detail.dx>0;this._setDragging(!1),this._transition=!0,t=null,this._moveDrawer(null),this.rightDrawer?this[i?"closeDrawer":"openDrawer"]():this[i?"openDrawer":"closeDrawer"]()}},_transformForTranslateX:function(e){return null===e?"":this.hasWillChange?"translateX("+e+"px)":"translate3d("+e+"px, 0, 0)"},_moveDrawer:function(e){this.transform(this._transformForTranslateX(e),this.$.drawer)},_getDrawerContent:function(){return Polymer.dom(this.$.drawerContent).getDistributedNodes()[0]},_getAutoFocusedNode:function(){var e=this._getDrawerContent();return this.drawerFocusSelector?Polymer.dom(e).querySelector(this.drawerFocusSelector)||e:null},_toggleFocusListener:function(e){"drawer"===e?this.addEventListener("focus",this._boundFocusListener,!0):this.removeEventListener("focus",this._boundFocusListener,!0)},_didFocus:function(e){var t=this._getAutoFocusedNode();if(t){var i=Polymer.dom(e).path,r=(i[0],this._getDrawerContent()),n=i.indexOf(r)!==-1;n||(e.stopPropagation(),t.focus())}},_isDrawerClosed:function(e,t){return!e||"drawer"!==t}})}()</script></dom-module><dom-module id="iron-pages" assetpath="../bower_components/iron-pages/"><template><style>:host{display:block}:host>::content>:not(.iron-selected){display:none!important}</style><content></content></template><script>Polymer({is:"iron-pages",behaviors:[Polymer.IronResizableBehavior,Polymer.IronSelectableBehavior],properties:{activateEvent:{type:String,value:null}},observers:["_selectedPageChanged(selected)"],_selectedPageChanged:function(e,a){this.async(this.notifyResize)}})</script></dom-module><dom-module id="iron-icon" assetpath="../bower_components/iron-icon/"><template><style>:host{@apply(--layout-inline);@apply(--layout-center-center);position:relative;vertical-align:middle;fill:var(--iron-icon-fill-color,currentcolor);stroke:var(--iron-icon-stroke-color,none);width:var(--iron-icon-width,24px);height:var(--iron-icon-height,24px);@apply(--iron-icon)}</style></template><script>Polymer({is:"iron-icon",properties:{icon:{type:String},theme:{type:String},src:{type:String},_meta:{value:Polymer.Base.create("iron-meta",{type:"iconset"})}},observers:["_updateIcon(_meta, isAttached)","_updateIcon(theme, isAttached)","_srcChanged(src, isAttached)","_iconChanged(icon, isAttached)"],_DEFAULT_ICONSET:"icons",_iconChanged:function(t){var i=(t||"").split(":");this._iconName=i.pop(),this._iconsetName=i.pop()||this._DEFAULT_ICONSET,this._updateIcon()},_srcChanged:function(t){this._updateIcon()},_usesIconset:function(){return this.icon||!this.src},_updateIcon:function(){this._usesIconset()?(this._img&&this._img.parentNode&&Polymer.dom(this.root).removeChild(this._img),""===this._iconName?this._iconset&&this._iconset.removeIcon(this):this._iconsetName&&this._meta&&(this._iconset=this._meta.byKey(this._iconsetName),this._iconset?(this._iconset.applyIcon(this,this._iconName,this.theme),this.unlisten(window,"iron-iconset-added","_updateIcon")):this.listen(window,"iron-iconset-added","_updateIcon"))):(this._iconset&&this._iconset.removeIcon(this),this._img||(this._img=document.createElement("img"),this._img.style.width="100%",this._img.style.height="100%",this._img.draggable=!1),this._img.src=this.src,Polymer.dom(this.root).appendChild(this._img))}})</script></dom-module><dom-module id="paper-icon-button" assetpath="../bower_components/paper-icon-button/"><template strip-whitespace=""><style>:host{display:inline-block;position:relative;padding:8px;outline:0;-webkit-user-select:none;-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:transparent;-webkit-tap-highlight-color:transparent;box-sizing:border-box!important;@apply(--paper-icon-button)}:host #ink{color:var(--paper-icon-button-ink-color,--primary-text-color);opacity:.6}:host([disabled]){color:var(--paper-icon-button-disabled-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" src="[[src]]" icon="[[icon]]" alt$="[[alt]]"></iron-icon></template><script>Polymer({is:"paper-icon-button",hostAttributes:{role:"button",tabindex:"0"},behaviors:[Polymer.PaperInkyFocusBehavior],properties:{src:{type:String},icon:{type:String},alt:{type:String,observer:"_altChanged"}},_altChanged:function(t,e){var r=this.getAttribute("aria-label");r&&e!=r||this.setAttribute("aria-label",t)}})</script></dom-module><script>Polymer.IronMenuBehaviorImpl={properties:{focusedItem:{observer:"_focusedItemChanged",readOnly:!0,type:Object},attrForItemTitle:{type:String}},_SEARCH_RESET_TIMEOUT_MS:1e3,hostAttributes:{role:"menu",tabindex:"0"},observers:["_updateMultiselectable(multi)"],listeners:{focus:"_onFocus",keydown:"_onKeydown","iron-items-changed":"_onIronItemsChanged"},keyBindings:{up:"_onUpKey",down:"_onDownKey",esc:"_onEscKey","shift+tab:keydown":"_onShiftTabDown"},attached:function(){this._resetTabindices()},select:function(e){this._defaultFocusAsync&&(this.cancelAsync(this._defaultFocusAsync),this._defaultFocusAsync=null);var t=this._valueToItem(e);t&&t.hasAttribute("disabled")||(this._setFocusedItem(t),Polymer.IronMultiSelectableBehaviorImpl.select.apply(this,arguments))},_resetTabindices:function(){var e=this.multi?this.selectedItems&&this.selectedItems[0]:this.selectedItem;this.items.forEach(function(t){t.setAttribute("tabindex",t===e?"0":"-1")},this)},_updateMultiselectable:function(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:String.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,this.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.dom(i).getOwnerRoot()||document;if(this._setFocusedItem(i),Polymer.dom(o).activeElement==i)return}}},_focusNext: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];if(!i.hasAttribute("disabled")){var o=Polymer.dom(i).getOwnerRoot()||document;if(this._setFocusedItem(i),Polymer.dom(o).activeElement==i)return}}},_applySelection:function(e,t){t?e.setAttribute("aria-selected","true"):e.removeAttribute("aria-selected"),Polymer.IronSelectableBehavior._applySelection.apply(this,arguments)},_focusedItemChanged:function(e,t){t&&t.setAttribute("tabindex","-1"),e&&(e.setAttribute("tabindex","0"),e.focus())},_onIronItemsChanged:function(e){e.detail.addedNodes.length&&this._resetTabindices()},_onShiftTabDown:function(e){var t=this.getAttribute("tabindex");Polymer.IronMenuBehaviorImpl._shiftTabPressed=!0,this._setFocusedItem(null),this.setAttribute("tabindex","-1"),this.async(function(){this.setAttribute("tabindex",t),Polymer.IronMenuBehaviorImpl._shiftTabPressed=!1},1)},_onFocus:function(e){if(!Polymer.IronMenuBehaviorImpl._shiftTabPressed){var t=Polymer.dom(e).rootTarget;(t===this||"undefined"==typeof t.tabIndex||this.isLightDescendant(t))&&(this._defaultFocusAsync=this.async(function(){var e=this.multi?this.selectedItems&&this.selectedItems[0]:this.selectedItem;this._setFocusedItem(null),e?this._setFocusedItem(e):this.items[0]&&this._focusNext()}))}},_onUpKey:function(e){this._focusPrevious(),e.detail.keyboardEvent.preventDefault()},_onDownKey:function(e){this._focusNext(),e.detail.keyboardEvent.preventDefault()},_onEscKey:function(e){this.focusedItem.blur()},_onKeydown:function(e){this.keyboardEventMatchesKeys(e,"up down esc")||this._focusWithKeyboardEvent(e),e.stopPropagation()},_activateHandler:function(e){Polymer.IronSelectableBehavior._activateHandler.call(this,e),e.stopPropagation()}},Polymer.IronMenuBehaviorImpl._shiftTabPressed=!1,Polymer.IronMenuBehavior=[Polymer.IronMultiSelectableBehavior,Polymer.IronA11yKeysBehavior,Polymer.IronMenuBehaviorImpl]</script><script>Polymer.IronMenubarBehaviorImpl={hostAttributes:{role:"menubar"},keyBindings:{left:"_onLeftKey",right:"_onRightKey"},_onUpKey:function(e){this.focusedItem.click(),e.detail.keyboardEvent.preventDefault()},_onDownKey:function(e){this.focusedItem.click(),e.detail.keyboardEvent.preventDefault()},get _isRTL(){return"rtl"===window.getComputedStyle(this).direction},_onLeftKey:function(e){this._isRTL?this._focusNext():this._focusPrevious(),e.detail.keyboardEvent.preventDefault()},_onRightKey:function(e){this._isRTL?this._focusPrevious():this._focusNext(),e.detail.keyboardEvent.preventDefault()},_onKeydown:function(e){this.keyboardEventMatchesKeys(e,"up down left right esc")||this._focusWithKeyboardEvent(e)}},Polymer.IronMenubarBehavior=[Polymer.IronMenuBehavior,Polymer.IronMenubarBehaviorImpl]</script><script>Polymer({is:"iron-iconset-svg",properties:{name:{type:String,observer:"_nameChanged"},size:{type:Number,value:24},rtlMirroring:{type:Boolean,value:!1}},attached:function(){this.style.display="none"},getIconNames: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._targetIsRTL(e));if(n){var r=Polymer.dom(e);return r.insertBefore(n,r.childNodes[0]),e._svgIcon=n}return null},removeIcon:function(e){e=e.root||e,e._svgIcon&&(Polymer.dom(e).removeChild(e._svgIcon),e._svgIcon=null)},_targetIsRTL:function(e){return null==this.__targetIsRTL&&(e&&e.nodeType!==Node.ELEMENT_NODE&&(e=e.host),this.__targetIsRTL=e&&"rtl"===window.getComputedStyle(e).direction),this.__targetIsRTL},_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]").forEach(function(t){e[t.id]=t}),e},_cloneIcon:function(e,t){return this._icons=this._icons||this._createIconMap(),this._prepareSvgClone(this._icons[e],this.size,t)},_prepareSvgClone:function(e,t,n){if(e){var r=e.cloneNode(!0),i=document.createElementNS("http://www.w3.org/2000/svg","svg"),o=r.getAttribute("viewBox")||"0 0 "+t+" "+t,s="pointer-events: none; display: block; width: 100%; height: 100%;";return n&&r.hasAttribute("mirror-in-rtl")&&(s+="-webkit-transform:scale(-1,1);transform:scale(-1,1);"),i.setAttribute("viewBox",o),i.setAttribute("preserveAspectRatio","xMidYMid meet"),i.style.cssText=s,i.appendChild(r).removeAttribute("id"),i}return null}})</script><iron-iconset-svg name="paper-tabs" size="24"><svg><defs><g id="chevron-left"><path d="M15.41 7.41L14 6l-6 6 6 6 1.41-1.41L10.83 12z"></path></g><g id="chevron-right"><path d="M10 6L8.59 7.41 13.17 12l-4.58 4.59L10 18l6-6z"></path></g></defs></svg></iron-iconset-svg><dom-module id="paper-tab" assetpath="../bower_components/paper-tabs/"><template><style>:host{@apply(--layout-inline);@apply(--layout-center);@apply(--layout-center-justified);@apply(--layout-flex-auto);position:relative;padding:0 12px;overflow:hidden;cursor:pointer;vertical-align:middle;@apply(--paper-font-common-base);@apply(--paper-tab)}:host(:focus){outline:0}:host([link]){padding:0}.tab-content{height:100%;transform:translateZ(0);-webkit-transform:translateZ(0);transition:opacity .1s cubic-bezier(.4,0,1,1);@apply(--layout-horizontal);@apply(--layout-center-center);@apply(--layout-flex-auto);@apply(--paper-tab-content)}:host(:not(.iron-selected))>.tab-content{opacity:.8;@apply(--paper-tab-content-unselected)}:host(:focus) .tab-content{opacity:1;font-weight:700}paper-ripple{color:var(--paper-tab-ink,--paper-yellow-a100)}.tab-content>::content>a{@apply(--layout-flex-auto);height:100%}</style><div class="tab-content"><content></content></div></template><script>Polymer({is:"paper-tab",behaviors:[Polymer.IronControlState,Polymer.IronButtonState,Polymer.PaperRippleBehavior],properties:{link:{type:Boolean,value:!1,reflectToAttribute:!0}},hostAttributes:{role:"tab"},listeners:{down:"_updateNoink",tap:"_onTap"},attached:function(){this._updateNoink()},get _parentNoink(){var t=Polymer.dom(this).parentNode;return!!t&&!!t.noink},_updateNoink:function(){this.noink=!!this.noink||!!this._parentNoink},_onTap:function(t){if(this.link){var e=this.queryEffectiveChildren("a");if(!e)return;if(t.target===e)return;e.click()}}})</script></dom-module><dom-module id="paper-tabs" assetpath="../bower_components/paper-tabs/"><template><style>:host{@apply(--layout);@apply(--layout-center);height:48px;font-size:14px;font-weight:500;overflow:hidden;-moz-user-select:none;-ms-user-select:none;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;-webkit-tap-highlight-color:transparent;@apply(--paper-tabs)}:host-context([dir=rtl]){@apply(--layout-horizontal-reverse)}#tabsContainer{position:relative;height:100%;white-space:nowrap;overflow:hidden;@apply(--layout-flex-auto)}#tabsContent{height:100%;-moz-flex-basis:auto;-ms-flex-basis:auto;flex-basis:auto}#tabsContent.scrollable{position:absolute;white-space:nowrap}#tabsContent.scrollable.fit-container,#tabsContent:not(.scrollable){@apply(--layout-horizontal)}#tabsContent.scrollable.fit-container{min-width:100%}#tabsContent.scrollable.fit-container>::content>*{-ms-flex:1 0 auto;-webkit-flex:1 0 auto;flex:1 0 auto}.hidden{display:none}.not-visible{opacity:0;cursor:default}paper-icon-button{width:48px;height:48px;padding:12px;margin:0 4px}#selectionBar{position:absolute;height:2px;bottom:0;left:0;right:0;background-color:var(--paper-tabs-selection-bar-color,--paper-yellow-a100);-webkit-transform:scale(0);transform:scale(0);-webkit-transform-origin:left center;transform-origin:left center;transition:-webkit-transform;transition:transform;@apply(--paper-tabs-selection-bar)}#selectionBar.align-bottom{top:0;bottom:auto}#selectionBar.expand{transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,1,1)}#selectionBar.contract{transition-duration:.18s;transition-timing-function:cubic-bezier(0,0,.2,1)}#tabsContent>::content>:not(#selectionBar){height:100%}</style><paper-icon-button icon="paper-tabs:chevron-left" class$="[[_computeScrollButtonClass(_leftHidden, scrollable, hideScrollButtons)]]" on-up="_onScrollButtonUp" on-down="_onLeftScrollButtonDown" tabindex="-1"></paper-icon-button><div id="tabsContainer" on-track="_scroll" on-down="_down"><div id="tabsContent" class$="[[_computeTabsContentClass(scrollable, fitContainer)]]"><div id="selectionBar" class$="[[_computeSelectionBarClass(noBar, alignBottom)]]" on-transitionend="_onBarTransitionEnd"></div><content select="*"></content></div></div><paper-icon-button icon="paper-tabs:chevron-right" class$="[[_computeScrollButtonClass(_rightHidden, scrollable, hideScrollButtons)]]" on-up="_onScrollButtonUp" on-down="_onRightScrollButtonDown" tabindex="-1"></paper-icon-button></template><script>Polymer({is:"paper-tabs",behaviors:[Polymer.IronResizableBehavior,Polymer.IronMenubarBehavior],properties:{noink:{type:Boolean,value:!1,observer:"_noinkChanged"},noBar:{type:Boolean,value:!1},noSlide:{type:Boolean,value:!1},scrollable:{type:Boolean,value:!1},fitContainer:{type:Boolean,value:!1},disableDrag:{type:Boolean,value:!1},hideScrollButtons:{type:Boolean,value:!1},alignBottom:{type:Boolean,value:!1},selectable:{type:String,value:"paper-tab"},autoselect:{type:Boolean,value:!1},autoselectDelay:{type:Number,value:0},_step:{type:Number,value:10},_holdDelay:{type:Number,value:1},_leftHidden:{type:Boolean,value:!1},_rightHidden:{type:Boolean,value:!1},_previousTab:{type:Object}},hostAttributes:{role:"tablist"},listeners:{"iron-resize":"_onTabSizingChanged","iron-items-changed":"_onTabSizingChanged","iron-select":"_onIronSelect","iron-deselect":"_onIronDeselect"},keyBindings:{"left:keyup right:keyup":"_onArrowKeyup"},created:function(){this._holdJob=null,this._pendingActivationItem=void 0,this._pendingActivationTimeout=void 0,this._bindDelayedActivationHandler=this._delayedActivationHandler.bind(this),this.addEventListener("blur",this._onBlurCapture.bind(this),!0)},ready:function(){this.setScrollDirection("y",this.$.tabsContainer)},detached:function(){this._cancelPendingActivation()},_noinkChanged:function(t){var e=Polymer.dom(this).querySelectorAll("paper-tab");e.forEach(t?this._setNoinkAttribute:this._removeNoinkAttribute)},_setNoinkAttribute:function(t){t.setAttribute("noink","")},_removeNoinkAttribute:function(t){t.removeAttribute("noink")},_computeScrollButtonClass:function(t,e,i){return!e||i?"hidden":t?"not-visible":""},_computeTabsContentClass:function(t,e){return t?"scrollable"+(e?" fit-container":""):" fit-container"},_computeSelectionBarClass:function(t,e){return t?"hidden":e?"align-bottom":""},_onTabSizingChanged:function(){this.debounce("_onTabSizingChanged",function(){this._scroll(),this._tabChanged(this.selectedItem)},10)},_onIronSelect:function(t){this._tabChanged(t.detail.item,this._previousTab),this._previousTab=t.detail.item,this.cancelDebouncer("tab-changed")},_onIronDeselect:function(t){this.debounce("tab-changed",function(){this._tabChanged(null,this._previousTab),this._previousTab=null},1)},_activateHandler:function(){this._cancelPendingActivation(),Polymer.IronMenuBehaviorImpl._activateHandler.apply(this,arguments)},_scheduleActivation:function(t,e){this._pendingActivationItem=t,this._pendingActivationTimeout=this.async(this._bindDelayedActivationHandler,e)},_delayedActivationHandler:function(){var t=this._pendingActivationItem;this._pendingActivationItem=void 0,this._pendingActivationTimeout=void 0,t.fire(this.activateEvent,null,{bubbles:!0,cancelable:!0})},_cancelPendingActivation:function(){void 0!==this._pendingActivationTimeout&&(this.cancelAsync(this._pendingActivationTimeout),this._pendingActivationItem=void 0,this._pendingActivationTimeout=void 0)},_onArrowKeyup:function(t){this.autoselect&&this._scheduleActivation(this.focusedItem,this.autoselectDelay)},_onBlurCapture:function(t){t.target===this._pendingActivationItem&&this._cancelPendingActivation()},get _tabContainerScrollSize(){return Math.max(0,this.$.tabsContainer.scrollWidth-this.$.tabsContainer.offsetWidth)},_scroll:function(t,e){if(this.scrollable){var i=e&&-e.ddx||0;this._affectScroll(i)}},_down:function(t){this.async(function(){this._defaultFocusAsync&&(this.cancelAsync(this._defaultFocusAsync),this._defaultFocusAsync=null)},1)},_affectScroll:function(t){this.$.tabsContainer.scrollLeft+=t;var e=this.$.tabsContainer.scrollLeft;this._leftHidden=0===e,this._rightHidden=e===this._tabContainerScrollSize},_onLeftScrollButtonDown:function(){this._scrollToLeft(),this._holdJob=setInterval(this._scrollToLeft.bind(this),this._holdDelay)},_onRightScrollButtonDown:function(){this._scrollToRight(),this._holdJob=setInterval(this._scrollToRight.bind(this),this._holdDelay)},_onScrollButtonUp:function(){clearInterval(this._holdJob),this._holdJob=null},_scrollToLeft:function(){this._affectScroll(-this._step)},_scrollToRight:function(){this._affectScroll(this._step)},_tabChanged:function(t,e){if(!t)return this.$.selectionBar.classList.remove("expand"),this.$.selectionBar.classList.remove("contract"),void this._positionBar(0,0);var i=this.$.tabsContent.getBoundingClientRect(),n=i.width,o=t.getBoundingClientRect(),s=o.left-i.left;if(this._pos={width:this._calcPercent(o.width,n),left:this._calcPercent(s,n)},this.noSlide||null==e)return this.$.selectionBar.classList.remove("expand"),this.$.selectionBar.classList.remove("contract"),void this._positionBar(this._pos.width,this._pos.left);var a=e.getBoundingClientRect(),l=this.items.indexOf(e),c=this.items.indexOf(t),r=5;this.$.selectionBar.classList.add("expand");var h=l<c,d=this._isRTL;d&&(h=!h),h?this._positionBar(this._calcPercent(o.left+o.width-a.left,n)-r,this._left):this._positionBar(this._calcPercent(a.left+a.width-o.left,n)-r,this._calcPercent(s,n)+r),this.scrollable&&this._scrollToSelectedIfNeeded(o.width,s)},_scrollToSelectedIfNeeded:function(t,e){var i=e-this.$.tabsContainer.scrollLeft;i<0?this.$.tabsContainer.scrollLeft+=i:(i+=t-this.$.tabsContainer.offsetWidth,i>0&&(this.$.tabsContainer.scrollLeft+=i))},_calcPercent:function(t,e){return 100*t/e},_positionBar:function(t,e){t=t||0,e=e||0,this._width=t,this._left=e,this.transform("translateX("+e+"%) scaleX("+t/100+")",this.$.selectionBar)},_onBarTransitionEnd:function(t){var e=this.$.selectionBar.classList;e.contains("expand")?(e.remove("expand"),e.add("contract"),this._positionBar(this._pos.width,this._pos.left)):e.contains("contract")&&e.remove("contract")}})</script></dom-module><dom-module id="app-header-layout" assetpath="../bower_components/app-layout/app-header-layout/"><template><style>:host{display:block;position:relative;z-index:0}:host>::content>app-header{@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);@apply(--layout-fit)}:host([fullbleed])>#contentContainer{@apply(--layout-vertical);@apply(--layout-flex)}#contentContainer{position:relative;z-index:0}</style><content id="header" select="app-header"></content><div id="contentContainer"><content></content></div></template><script>Polymer({is:"app-header-layout",behaviors:[Polymer.IronResizableBehavior],properties:{hasScrollingRegion:{type:Boolean,value:!1,reflectToAttribute:!0}},listeners:{"iron-resize":"_resizeHandler","app-header-reset-layout":"resetLayout"},observers:["resetLayout(isAttached, hasScrollingRegion)"],get header(){return Polymer.dom(this.$.header).getDistributedNodes()[0]},resetLayout:function(){this._updateScroller(),this.debounce("_resetLayout",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=document.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.hasScrollingRegion?(n.marginTop=t+"px",n.paddingTop=""):(n.paddingTop=t+"px",n.marginTop="")}},_updateScroller:function(){if(this.isAttached){var e=this.header;e&&(e.scrollTarget=this.hasScrollingRegion?this.$.contentContainer:this.ownerDocument.documentElement)}},_resizeHandler:function(){this.resetLayout()}})</script></dom-module><script>Polymer.IronScrollTargetBehavior={properties:{scrollTarget:{type:HTMLElement,value:function(){return this._defaultScrollTarget}}},observers:["_scrollTargetChanged(scrollTarget, isAttached)"],_shouldHaveListener:!0,_scrollTargetChanged:function(t,l){this._oldScrollTarget&&(this._toggleScrollListener(!1,this._oldScrollTarget),this._oldScrollTarget=null),l&&("document"===t?this.scrollTarget=this._doc:"string"==typeof t?this.scrollTarget=this.domHost?this.domHost.$[t]:Polymer.dom(this.ownerDocument).querySelector("#"+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.ownerDocument.documentElement},get _scrollTop(){return this._isValidScrollTarget()?this.scrollTarget===this._doc?window.pageYOffset:this.scrollTarget.scrollTop:0},get _scrollLeft(){return this._isValidScrollTarget()?this.scrollTarget===this._doc?window.pageXOffset:this.scrollTarget.scrollLeft:0},set _scrollTop(t){this.scrollTarget===this._doc?window.scrollTo(window.pageXOffset,t):this._isValidScrollTarget()&&(this.scrollTarget.scrollTop=t)},set _scrollLeft(t){this.scrollTarget===this._doc?window.scrollTo(t,window.pageYOffset):this._isValidScrollTarget()&&(this.scrollTarget.scrollLeft=t)},scroll:function(t,l){this.scrollTarget===this._doc?window.scrollTo(t,l):this._isValidScrollTarget()&&(this.scrollTarget.scrollLeft=t,this.scrollTarget.scrollTop=l)},get _scrollTargetWidth(){return this._isValidScrollTarget()?this.scrollTarget===this._doc?window.innerWidth:this.scrollTarget.offsetWidth:0},get _scrollTargetHeight(){return this._isValidScrollTarget()?this.scrollTarget===this._doc?window.innerHeight:this.scrollTarget.offsetHeight:0},_isValidScrollTarget:function(){return this.scrollTarget instanceof HTMLElement},_toggleScrollListener:function(t,l){if(this._boundScrollHandler){var e=l===this._doc?window:l;t?e.addEventListener("scroll",this._boundScrollHandler):e.removeEventListener("scroll",this._boundScrollHandler)}},toggleScrollListener:function(t){this._shouldHaveListener=t,this._toggleScrollListener(t,this.scrollTarget)}}</script><script>Polymer.AppLayout=Polymer.AppLayout||{},Polymer.AppLayout._scrollEffects=Polymer.AppLayout._scrollEffects||{},Polymer.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._scrollEffects[o])throw new Error("effect `"+o+"` is already registered.");Polymer.AppLayout._scrollEffects[o]=l},Polymer.AppLayout.scroll=function(o){o=o||{};var l=document.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:function(o,l){e.scrollLeft=o,e.scrollTop=l};if("smooth"===o.behavior)if(r)e.scroll(o);else{var n=Polymer.AppLayout.scrollTimingFunction,a=Date.now(),p=e===l?window.pageYOffset: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)),requestAnimationFrame(o)):i(c,s)}.bind(this);L()}else"silent"===o.behavior?(l.classList.add(t),clearInterval(Polymer.AppLayout._scrollTimer),Polymer.AppLayout._scrollTimer=setTimeout(function(){l.classList.remove(t),Polymer.AppLayout._scrollTimer=null},100),i(c,s)):i(c,s)}</script><script>Polymer.AppScrollEffectsBehavior=[Polymer.IronScrollTargetBehavior,{properties:{effects:{type:String},effectsConfig:{type:Object,value:function(){return{}}},disabled:{type:Boolean,reflectToAttribute:!0,value:!1},threshold:{type:Number,value:0},thresholdTriggered:{type:Boolean,notify:!0,readOnly:!0,reflectToAttribute:!0}},observers:["_effectsChanged(effects, effectsConfig, isAttached)"],_updateScrollState:function(){},isOnScreen:function(){return!1},isContentBelow:function(){return!1},_effectsRunFn:null,_effects:null,get _clampedScrollTop(){return Math.max(0,this._scrollTop)},detached:function(){this._tearDownEffects()},createEffect:function(t,e){var n=Polymer.AppLayout._scrollEffects[t];if(!n)throw new ReferenceError(this._getUndefinedMsg(t));var f=this._boundEffect(n,e||{});return f.setUp(),f},_effectsChanged:function(t,e,n){this._tearDownEffects(),""!==t&&n&&(t.split(" ").forEach(function(t){var n;""!==t&&((n=Polymer.AppLayout._scrollEffects[t])?this._effects.push(this._boundEffect(n,e[t])):console.warn(this._getUndefinedMsg(t)))},this),this._setUpEffect())},_layoutIfDirty:function(){return this.offsetWidth},_boundEffect:function(t,e){e=e||{};var n=parseFloat(e.startsAt||0),f=parseFloat(e.endsAt||1),s=f-n,r=function(){},o=0===n&&1===f?t.run:function(e,f){t.run.call(this,Math.max(0,(e-n)/s),f)};return{setUp:t.setUp?t.setUp.bind(this,e):r,run:t.run?o.bind(this):r,tearDown:t.tearDown?t.tearDown.bind(this):r}},_setUpEffect:function(){this.isAttached&&this._effects&&(this._effectsRunFn=[],this._effects.forEach(function(t){t.setUp()!==!1&&this._effectsRunFn.push(t.run)},this))},_tearDownEffects:function(){this._effects&&this._effects.forEach(function(t){t.tearDown()}),this._effectsRunFn=[],this._effects=[]},_runEffects:function(t,e){this._effectsRunFn&&this._effectsRunFn.forEach(function(n){n(t,e)})},_scrollHandler:function(){if(!this.disabled){var t=this._clampedScrollTop;this._updateScrollState(t),this.threshold>0&&this._setThresholdTriggered(t>=this.threshold)}},_getDOMRef:function(t){console.warn("_getDOMRef","`"+t+"` is undefined")},_getUndefinedMsg:function(t){return"Scroll effect `"+t+"` is undefined. Did you forget to import app-layout/app-scroll-effects/effects/"+t+".html ?"}}]</script><script>Polymer.AppLayout.registerEffect("waterfall",{run:function(){this.shadow=this.isOnScreen()&&this.isContentBelow()}})</script><dom-module id="app-header" assetpath="../bower_components/app-layout/app-header/"><template><style>:host{position:relative;display:block;transition-timing-function:linear;transition-property:-webkit-transform;transition-property:transform}:host::after{position:absolute;right:0;bottom:-5px;left:0;width:100%;height:5px;content:"";transition:opacity .4s;pointer-events:none;opacity:0;box-shadow:inset 0 5px 6px -3px rgba(0,0,0,.4);will-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]{opacity:0}#background{@apply(--layout-fit);overflow:hidden}#backgroundFrontLayer,#backgroundRearLayer{@apply(--layout-fit);height:100%;pointer-events:none;background-size:cover}#backgroundFrontLayer{@apply(--app-header-background-front-layer)}#backgroundRearLayer{opacity:0;@apply(--app-header-background-rear-layer)}#contentContainer{position:relative;width:100%;height:100%}:host([disabled]),:host([disabled]) #backgroundFrontLayer,:host([disabled]) #backgroundRearLayer,:host([disabled]) ::content>[sticky],:host([disabled]) ::content>app-toolbar:first-of-type,:host([disabled])::after,:host-context(.app-layout-silent-scroll),:host-context(.app-layout-silent-scroll) #backgroundFrontLayer,:host-context(.app-layout-silent-scroll) #backgroundRearLayer,:host-context(.app-layout-silent-scroll) ::content>[sticky],:host-context(.app-layout-silent-scroll) ::content>app-toolbar:first-of-type,:host-context(.app-layout-silent-scroll)::after{transition:none!important}</style><div id="contentContainer"><content id="content"></content></div></template><script>Polymer({is:"app-header",behaviors:[Polymer.AppScrollEffectsBehavior,Polymer.IronResizableBehavior],properties:{condenses:{type:Boolean,value:!1},fixed:{type:Boolean,value:!1},reveals:{type:Boolean,value:!1},shadow:{type:Boolean,reflectToAttribute:!0,value:!1}},observers:["resetLayout(isAttached, condenses, fixed)"],listeners:{"iron-resize":"_resizeHandler"},_height:0,_dHeight:0,_stickyElTop:0,_stickyEl:null,_top:0,_progress:0,_wasScrollingDown:!1,_initScrollTop: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;break}t||(t=s)}return t},resetLayout:function(){this.fire("app-header-reset-layout"),this.debounce("_resetLayout",function(){if(0!==this.offsetWidth||0!==this.offsetHeight){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=this._stickyEl?this._stickyEl.offsetTop:0,this._setUpEffect(),e?this._updateScrollState(t,!0):(this._updateScrollState(this._lastScrollTop,!0),this._layoutIfDirty()),this.disabled=i}})},_updateScrollState:function(t,e){if(0!==this._height){var i=0,s=0,o=this._top,r=(this._lastScrollTop,this._maxHeaderTop),h=t-this._lastScrollTop,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&&!this.fixed?Math.max(this._dHeight,s):s,this.style.transitionDuration="0ms"),this.reveals&&!this.disabled&&n<100&&((l-this._initTimestamp>300||this._wasScrollingDown!==a)&&(this._initScrollTop=t,this._initTimestamp=l),t>=r))if(Math.abs(this._initScrollTop-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.transitionDuration=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._wasScrollingDown=a,this._lastTimestamp=l),(e||i!==this._progress||o!==s||0===t)&&(this._progress=i,this._runEffects(i,s),this._transformHeader(s))}},_mayMove:function(){return this.condenses||!this.fixed},willCondense:function(){return this._dHeight>0&&this.condenses},isOnScreen:function(){return 0!==this._height&&this._top<this._height},isContentBelow:function(){return 0===this._top?this._clampedScrollTop>0:this._clampedScrollTop-this._maxHeaderTop>=0},_transformHeader:function(t){this.translate3d(0,-t+"px",0),this._stickyEl&&this.translate3d(0,this.condenses&&t>=this._stickyElTop?Math.min(t,this._dHeight)-this._stickyElTop+"px":0,0,this._stickyEl)},_resizeHandler:function(){this.resetLayout()},_clamp:function(t,e,i){return Math.min(i,Math.max(e,t))},_ensureBgContainers:function(){this._bgContainer||(this._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.createElement("div"),this._bgFront.id="backgroundFrontLayer",this._bgContainer.appendChild(this._bgFront),Polymer.dom(this.root).insertBefore(this._bgContainer,this.$.contentContainer))},_getDOMRef:function(t){switch(t){case"backgroundFrontLayer":return this._ensureBgContainers(),this._bgFront;case"backgroundRearLayer":return this._ensureBgContainers(),this._bgRear;case"background":return this._ensureBgContainers(),this._bgContainer;case"mainTitle":return Polymer.dom(this).querySelector("[main-title]");case"condensedTitle":return Polymer.dom(this).querySelector("[condensed-title]")}return null},getScrollState:function(){return{progress:this._progress,top:this._top}}})</script></dom-module><dom-module id="app-toolbar" assetpath="../bower_components/app-layout/app-toolbar/"><template><style>:host{@apply(--layout-horizontal);@apply(--layout-center);position:relative;height:64px;padding:0 16px;pointer-events:none;font-size:var(--app-toolbar-font-size,20px)}::content>*{pointer-events:auto}::content>paper-icon-button{font-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>[spacer]{margin-left:64px}</style><content></content></template><script>Polymer({is:"app-toolbar"})</script></dom-module><dom-module id="ha-menu-button" assetpath="components/"><template><style>.invisible{visibility:hidden}</style><paper-icon-button icon="mdi:menu" class$="[[computeMenuButtonClass(narrow, showMenu)]]" on-tap="toggleMenu"></paper-icon-button></template></dom-module><script>Polymer({is:"ha-menu-button",properties:{narrow:{type:Boolean,value:!1},showMenu:{type:Boolean,value:!1}},computeMenuButtonClass:function(e,n){return!e&&n?"invisible":""},toggleMenu:function(){this.fire("open-menu")}})</script><dom-module id="ha-label-badge" assetpath="/"><template><style>.badge-container{display:inline-block;text-align:center;vertical-align:top;margin-bottom:16px}.label-badge{position:relative;display:block;margin:0 auto;width:2.5em;text-align:center;height:2.5em;line-height:2.5em;font-size:1.5em;border-radius:50%;border:.1em solid var(--ha-label-badge-color,--default-primary-color);color:#4c4c4c;white-space:nowrap;background-color:#fff;background-size:cover;transition:border .3s ease-in-out}.label-badge .value{font-size:90%;overflow:hidden;text-overflow:ellipsis}.label-badge .value.big{font-size:70%}.label-badge .label{position:absolute;bottom:-1em;left:0;right:0;line-height:1em;font-size:.5em}.label-badge .label span{max-width:80%;display:inline-block;background-color:var(--ha-label-badge-color,--default-primary-color);color:#fff;border-radius:1em;padding:4px 8px;font-weight:500;text-transform:uppercase;overflow:hidden;text-overflow:ellipsis;transition:background-color .3s ease-in-out}.badge-container .title{margin-top:1em;font-size:.9em;width:5em;font-weight:300;overflow:hidden;text-overflow:ellipsis;line-height:normal}iron-image{border-radius:50%}[hidden]{display:none!important}</style><div class="badge-container"><div class="label-badge" id="badge"><div class$="[[computeClasses(value)]]"><iron-icon icon="[[icon]]" hidden$="[[computeHideIcon(icon, value, image)]]"></iron-icon><span hidden$="[[computeHideValue(value, image)]]">[[value]]</span></div><div class="label" hidden$="[[!label]]"><span>[[label]]</span></div></div><div class="title">[[description]]</div></div></template></dom-module><script>Polymer({is:"ha-label-badge",properties:{value:{type:String,value:null},icon:{type:String,value:null},label:{type:String,value:null},description:{type:String},image:{type:String,value:null,observer:"imageChanged"}},computeClasses:function(e){return e&&e.length>4?"value big":"value"},computeHideIcon:function(e,n,l){return!e||n||l},computeHideValue:function(e,n){return!e||n},imageChanged:function(e){this.$.badge.style.backgroundImage=e?"url("+e+")":""}})</script><dom-module id="ha-demo-badge" assetpath="components/"><template><style>:host{--ha-label-badge-color:#dac90d}</style><ha-label-badge icon="mdi:emoticon" label="Demo" description=""></ha-label-badge></template></dom-module><script>Polymer({is:"ha-demo-badge"})</script><dom-module id="ha-state-label-badge" assetpath="components/entity/"><template><style>:host{cursor:pointer}ha-label-badge{--ha-label-badge-color:rgb(223, 76, 30)}.blue{--ha-label-badge-color:#039be5}.green{--ha-label-badge-color:#0DA035}.grey{--ha-label-badge-color:var(--paper-grey-500)}</style><ha-label-badge class$="[[computeClasses(state)]]" value="[[computeValue(state)]]" icon="[[computeIcon(state)]]" image="[[computeImage(state)]]" label="[[computeLabel(state)]]" description="[[computeDescription(state)]]"></ha-label-badge></template></dom-module><script>Polymer({is:"ha-state-label-badge",properties:{hass:{type:Object},state:{type:Object,observer:"stateChanged"}},listeners:{tap:"badgeTap"},badgeTap:function(e){e.stopPropagation(),this.async(function(){this.hass.moreInfoActions.selectEntity(this.state.entityId)},1)},computeClasses:function(e){switch(e.domain){case"binary_sensor":case"updater":return"blue";default:return""}},computeValue:function(e){switch(e.domain){case"binary_sensor":case"device_tracker":case"updater":case"sun":case"alarm_control_panel":return null;case"sensor":default:return"unknown"===e.state?"-":e.state}},computeIcon:function(e){if("unavailable"===e.state)return null;switch(e.domain){case"alarm_control_panel":return"pending"===e.state?"mdi:clock-fast":"armed_away"===e.state?"mdi:nature":"armed_home"===e.state?"mdi:home-variant":"triggered"===e.state?"mdi:alert-circle":window.hassUtil.domainIcon(e.domain,e.state);case"binary_sensor":case"device_tracker":case"updater":return window.hassUtil.stateIcon(e);case"sun":return"above_horizon"===e.state?window.hassUtil.domainIcon(e.domain):"mdi:brightness-3";default:return null}},computeImage:function(e){return e.attributes.entity_picture||null},computeLabel:function(e){if("unavailable"===e.state)return"unavai";switch(e.domain){case"device_tracker":return"not_home"===e.state?"Away":e.state;case"alarm_control_panel":return"pending"===e.state?"pend":"armed_away"===e.state||"armed_home"===e.state?"armed":"triggered"===e.state?"trig":"disarm";default:return e.attributes.unit_of_measurement||null}},computeDescription:function(e){return e.entityDisplay},stateChanged:function(){this.updateStyles()}})</script><dom-module id="ha-badges-card" assetpath="cards/"><template><template is="dom-repeat" items="[[states]]"><ha-state-label-badge hass="[[hass]]" state="[[item]]"></ha-state-label-badge></template></template></dom-module><script>Polymer({is:"ha-badges-card",properties:{hass:{type:Object},states:{type:Array}}})</script><dom-module id="paper-material" assetpath="../bower_components/paper-material/"><template><style include="paper-material-shared-styles"></style><style>:host([animated]){@apply(--shadow-transition)}</style><content></content></template></dom-module><script>Polymer({is:"paper-material",properties:{elevation:{type:Number,reflectToAttribute:!0,value:1},animated:{type:Boolean,reflectToAttribute:!0,value:!1}}})</script><dom-module id="ha-camera-card" assetpath="cards/"><template><style include="paper-material">:host{display:block;position:relative;font-size:0;border-radius:2px;cursor:pointer;min-height:48px;line-height:0}.camera-feed{width:100%;height:auto;border-radius:2px}.caption{@apply(--paper-font-common-nowrap);position:absolute;left:0;right:0;bottom:0;border-bottom-left-radius:2px;border-bottom-right-radius:2px;background-color:rgba(0,0,0,.3);padding:16px;text-transform:capitalize;font-size:16px;font-weight:500;line-height:16px;color:#fff}</style><img src="[[cameraFeedSrc]]" class="camera-feed" hidden$="[[!imageLoaded]]" on-load="imageLoadSuccess" on-error="imageLoadFail" alt="[[stateObj.entityDisplay]]"><div class="caption">[[stateObj.entityDisplay]]<template is="dom-if" if="[[!imageLoaded]]">(Error loading image)</template></div></template></dom-module><script>Polymer({is:"ha-camera-card",UPDATE_INTERVAL:1e4,properties:{hass:{type:Object},stateObj:{type:Object,observer:"updateCameraFeedSrc"},cameraFeedSrc:{type:String},imageLoaded:{type:Boolean,value:!0},elevation:{type:Number,value:1,reflectToAttribute:!0}},listeners:{tap:"cardTapped"},attached:function(){this.timer=setInterval(function(){this.updateCameraFeedSrc(this.stateObj)}.bind(this),this.UPDATE_INTERVAL)},detached:function(){clearInterval(this.timer)},cardTapped:function(){this.async(function(){this.hass.moreInfoActions.selectEntity(this.stateObj.entityId)}.bind(this),1)},updateCameraFeedSrc:function(e){const t=e.attributes,a=(new Date).getTime();this.cameraFeedSrc=t.entity_picture+"&time="+a},imageLoadSuccess:function(){this.imageLoaded=!0},imageLoadFail:function(){this.imageLoaded=!1}})</script><dom-module id="ha-card" assetpath="/"><template><style include="paper-material">:host{display:block;border-radius:2px;transition:all .3s ease-out;background-color:#fff}.header{@apply(--paper-font-headline);@apply(--paper-font-common-expensive-kerning);opacity:var(--dark-primary-opacity);padding:24px 16px 16px;text-transform:capitalize}</style><template is="dom-if" if="[[header]]"><div class="header">[[header]]</div></template><slot></slot></template></dom-module><script>Polymer({is:"ha-card",properties:{header:{type:String},elevation:{type:Number,value:1,reflectToAttribute:!0}}})</script><dom-module id="paper-toggle-button" assetpath="../bower_components/paper-toggle-button/"><template strip-whitespace=""><style>:host{display:inline-block;@apply(--layout-horizontal);@apply(--layout-center);@apply(--paper-font-common-base)}:host([disabled]){pointer-events:none}:host(:focus){outline:0}.toggle-bar{position:absolute;height:100%;width:100%;border-radius:8px;pointer-events:none;opacity:.4;transition:background-color linear .08s;background-color:var(--paper-toggle-button-unchecked-bar-color,#000);@apply(--paper-toggle-button-unchecked-bar)}.toggle-button{position:absolute;top:-3px;left:0;height:20px;width:20px;border-radius:50%;box-shadow:0 1px 5px 0 rgba(0,0,0,.6);transition:-webkit-transform linear .08s,background-color linear .08s;transition:transform linear .08s,background-color linear .08s;will-change:transform;background-color:var(--paper-toggle-button-unchecked-button-color,--paper-grey-50);@apply(--paper-toggle-button-unchecked-button)}.toggle-button.dragging{-webkit-transition:none;transition:none}:host([checked]:not([disabled])) .toggle-bar{opacity:.5;background-color:var(--paper-toggle-button-checked-bar-color,--primary-color);@apply(--paper-toggle-button-checked-bar)}:host([disabled]) .toggle-bar{background-color:#000;opacity:.12}:host([checked]) .toggle-button{-webkit-transform:translate(16px,0);transform:translate(16px,0)}:host([checked]:not([disabled])) .toggle-button{background-color:var(--paper-toggle-button-checked-button-color,--primary-color);@apply(--paper-toggle-button-checked-button)}:host([disabled]) .toggle-button{background-color:#bdbdbd;opacity:1}.toggle-ink{position:absolute;top:-14px;left:-14px;right:auto;bottom:auto;width:48px;height:48px;opacity:.5;pointer-events:none;color:var(--paper-toggle-button-unchecked-ink-color,--primary-text-color)}:host([checked]) .toggle-ink{color:var(--paper-toggle-button-checked-ink-color,--primary-color)}.toggle-container{display:inline-block;position:relative;width:36px;height:14px;margin:4px 1px}.toggle-label{position:relative;display:inline-block;vertical-align:middle;padding-left:var(--paper-toggle-button-label-spacing,8px);pointer-events:none;color:var(--paper-toggle-button-label-color,--primary-text-color)}:host([invalid]) .toggle-bar{background-color:var(--paper-toggle-button-invalid-bar-color,--error-color)}:host([invalid]) .toggle-button{background-color:var(--paper-toggle-button-invalid-button-color,--error-color)}:host([invalid]) .toggle-ink{color:var(--paper-toggle-button-invalid-ink-color,--error-color)}</style><div class="toggle-container"><div id="toggleBar" class="toggle-bar"></div><div id="toggleButton" class="toggle-button"></div></div><div class="toggle-label"><content></content></div></template><script>Polymer({is:"paper-toggle-button",behaviors:[Polymer.PaperCheckedElementBehavior],hostAttributes:{role:"button","aria-pressed":"false",tabindex:0},properties:{},listeners:{track:"_ontrack"},attached:function(){Polymer.RenderStatus.afterNextRender(this,function(){this.setScrollDirection("y")})},_ontrack:function(t){var e=t.detail;"start"===e.state?this._trackStart(e):"track"===e.state?this._trackMove(e):"end"===e.state&&this._trackEnd(e)},_trackStart:function(t){this._width=this.$.toggleBar.offsetWidth/2,this._trackChecked=this.checked,this.$.toggleButton.classList.add("dragging")},_trackMove:function(t){var e=t.dx;this._x=Math.min(this._width,Math.max(0,this._trackChecked?this._width+e:e)),this.translate3d(this._x+"px",0,0,this.$.toggleButton),this._userActivate(this._x>this._width/2)},_trackEnd:function(t){this.$.toggleButton.classList.remove("dragging"),this.transform("",this.$.toggleButton)},_createRipple:function(){this._rippleContainer=this.$.toggleButton;var t=Polymer.PaperRippleBehavior._createRipple();return t.id="ink",t.setAttribute("recenters",""),t.classList.add("circle","toggle-ink"),t}})</script></dom-module><dom-module id="ha-entity-toggle" assetpath="components/entity/"><template><style>:host{white-space:nowrap}paper-icon-button{color:var(--primary-text-color);transition:color .5s}paper-icon-button[state-active]{color:var(--default-primary-color)}paper-toggle-button{cursor:pointer;--paper-toggle-button-label-spacing:0;padding:9px 0}</style><template is="dom-if" if="[[stateObj.attributes.assumed_state]]"><paper-icon-button icon="mdi:flash-off" on-tap="turnOff" state-active$="[[!isOn]]"></paper-icon-button><paper-icon-button icon="mdi:flash" on-tap="turnOn" state-active$="[[isOn]]"></paper-icon-button></template><template is="dom-if" if="[[!stateObj.attributes.assumed_state]]"><paper-toggle-button class="self-center" checked="[[toggleChecked]]" on-change="toggleChanged"></paper-toggle-button></template></template></dom-module><script>Polymer({is:"ha-entity-toggle",properties:{hass:{type:Object},stateObj:{type:Object},toggleChecked:{type:Boolean,value:!1},isOn:{type:Boolean,computed:"computeIsOn(stateObj)",observer:"isOnChanged"}},listeners:{tap:"onTap"},onTap:function(t){t.stopPropagation()},ready:function(){this.forceStateChange()},toggleChanged:function(t){var e=t.target.checked;e&&!this.isOn?this.callService(!0):!e&&this.isOn&&this.callService(!1)},isOnChanged:function(t){this.toggleChecked=t},forceStateChange:function(){this.toggleChecked===this.isOn&&(this.toggleChecked=!this.toggleChecked),this.toggleChecked=this.isOn},turnOn:function(){this.callService(!0)},turnOff:function(){this.callService(!1)},computeIsOn:function(t){return t&&window.hassUtil.OFF_STATES.indexOf(t.state)===-1},callService:function(t){var e,i,n;"lock"===this.stateObj.domain?(e="lock",i=t?"lock":"unlock"):"garage_door"===this.stateObj.domain?(e="garage_door",i=t?"open":"close"):(e="homeassistant",i=t?"turn_on":"turn_off"),n=this.stateObj,this.hass.serviceActions.callService(e,i,{entity_id:this.stateObj.entityId}).then(function(){setTimeout(function(){this.stateObj===n&&this.forceStateChange()}.bind(this),2e3)}.bind(this))}})</script><dom-module id="ha-state-icon" assetpath="/"><template><iron-icon icon="[[computeIcon(stateObj)]]"></iron-icon></template></dom-module><script>Polymer({is:"ha-state-icon",properties:{stateObj:{type:Object}},computeIcon:function(t){return window.hassUtil.stateIcon(t)}})</script><dom-module id="state-badge" assetpath="components/entity/"><template><style>:host{position:relative;display:inline-block;width:40px;color:#44739E;border-radius:50%;height:40px;text-align:center;background-size:cover;line-height:40px}ha-state-icon{transition:color .3s ease-in-out}ha-state-icon[data-domain=binary_sensor][data-state=on],ha-state-icon[data-domain=light][data-state=on],ha-state-icon[data-domain=sun][data-state=above_horizon],ha-state-icon[data-domain=switch][data-state=on]{color:#FDD835}ha-state-icon[data-state=unavailable]{color:var(--disabled-text-color)}</style><ha-state-icon id="icon" state-obj="[[stateObj]]" data-domain$="[[stateObj.domain]]" data-state$="[[stateObj.state]]"></ha-state-icon></template></dom-module><script>Polymer({is:"state-badge",properties:{stateObj:{type:Object,observer:"updateIconColor"}},updateIconColor:function(t){return t.attributes.entity_picture?(this.style.backgroundImage="url("+t.attributes.entity_picture+")",void(this.$.icon.style.display="none")):(this.style.backgroundImage="",this.$.icon.style.display="inline",void("light"===t.domain&&"on"===t.state&&t.attributes.rgb_color&&t.attributes.rgb_color.reduce(function(t,e){return t+e},0)<730?this.$.icon.style.color="rgb("+t.attributes.rgb_color.join(",")+")":this.$.icon.style.color=null))}})</script><script>Polymer({is:"ha-relative-time",properties:{datetime:{type:String,observer:"datetimeChanged"},datetimeObj:{type:Object,observer:"datetimeObjChanged"},parsedDateTime:{type:Object}},created:function(){this.updateRelative=this.updateRelative.bind(this)},attached:function(){this.updateInterval=setInterval(this.updateRelative,6e4)},detached:function(){clearInterval(this.updateInterval)},datetimeChanged:function(e){this.parsedDateTime=e?new Date(e):null,this.updateRelative()},datetimeObjChanged:function(e){this.parsedDateTime=e,this.updateRelative()},updateRelative:function(){var e=Polymer.dom(this);e.innerHTML=this.parsedDateTime?window.hassUtil.relativeTime(this.parsedDateTime):"never"}})</script><dom-module id="state-info" assetpath="components/entity/"><template><style>:host{@apply(--paper-font-body1);min-width:150px;white-space:nowrap}state-badge{float:left}.info{margin-left:56px}.name{@apply(--paper-font-common-nowrap);color:var(--primary-text-color);line-height:40px}.name[in-dialog]{line-height:20px}.time-ago{@apply(--paper-font-common-nowrap);color:var(--secondary-text-color)}</style><div><state-badge state-obj="[[stateObj]]"></state-badge><div class="info"><div class="name" in-dialog$="[[inDialog]]">[[stateObj.entityDisplay]]</div><template is="dom-if" if="[[inDialog]]"><div class="time-ago"><ha-relative-time datetime-obj="[[stateObj.lastChangedAsDate]]"></ha-relative-time></div></template></div></div></template></dom-module><script>Polymer({is:"state-info",properties:{detailed:{type:Boolean,value:!1},stateObj:{type:Object},inDialog:{type:Boolean}}})</script><dom-module id="state-card-climate" assetpath="state-summary/"><template><style is="custom-style" include="iron-flex iron-flex-alignment"></style><style>:host{@apply(--paper-font-body1);line-height:1.5}.state{margin-left:16px;text-align:right}.target{color:var(--primary-text-color)}.current{color:var(--secondary-text-color)}.operation-mode{font-weight:700;text-transform:capitalize}</style><div class="horizontal justified layout"><state-info state-obj="[[stateObj]]" in-dialog="[[inDialog]]"></state-info><div class="state"><div class="target"><span class="operation-mode">[[stateObj.attributes.operation_mode]] </span><span>[[computeTargetTemperature(stateObj)]]</span></div><div class="current"><span>Currently: </span><span>[[stateObj.attributes.current_temperature]]</span> <span></span> <span>[[stateObj.attributes.unit_of_measurement]]</span></div></div></div></template></dom-module><script>Polymer({is:"state-card-climate",properties:{inDialog:{type:Boolean,value:!1},stateObj:{type:Object}},computeTargetTemperature:function(t){var e="";return t.attributes.target_temp_low&&t.attributes.target_temp_high?e=t.attributes.target_temp_low+" - "+t.attributes.target_temp_high+" "+t.attributes.unit_of_measurement:t.attributes.temperature&&(e=t.attributes.temperature+" "+t.attributes.unit_of_measurement),e}})</script><dom-module id="state-card-configurator" assetpath="state-summary/"><template><style is="custom-style" include="iron-flex iron-flex-alignment"></style><style>paper-button{color:var(--default-primary-color);font-weight:500;top:3px;height:37px;margin-right:-.57em}</style><div class="horizontal justified layout"><state-info state-obj="[[stateObj]]" in-dialog="[[inDialog]]"></state-info><paper-button hidden$="[[inDialog]]">[[stateObj.state]]</paper-button></div><template is="dom-if" if="[[stateObj.attributes.description_image]]"><img hidden="" src="[[stateObj.attributes.description_image]]"></template></template></dom-module><script>Polymer({is:"state-card-configurator",properties:{inDialog:{type:Boolean,value:!1},stateObj:{type:Object}}})</script><dom-module id="state-card-cover" assetpath="state-summary/"><template><style is="custom-style" include="iron-flex iron-flex-alignment"></style><style>:host{line-height:1.5}.state{text-align:right;white-space:nowrap;width:127px}</style><div class="horizontal justified layout"><state-info state-obj="[[stateObj]]" in-dialog="[[inDialog]]"></state-info><div class="state"><paper-icon-button icon="mdi:arrow-up" on-tap="onOpenTap" disabled="[[computeIsFullyOpen(stateObj)]]"></paper-icon-button><paper-icon-button icon="mdi:stop" on-tap="onStopTap"></paper-icon-button><paper-icon-button icon="mdi:arrow-down" on-tap="onCloseTap" disabled="[[computeIsFullyClosed(stateObj)]]"></paper-icon-button></div></div></template></dom-module><script>Polymer({is:"state-card-cover",properties:{hass:{type:Object},inDialog:{type:Boolean,value:!1},stateObj:{type:Object}},computeIsFullyOpen:function(t){return void 0!==t.attributes.current_position?100===t.attributes.current_position:"open"===t.state},computeIsFullyClosed:function(t){return void 0!==t.attributes.current_position?0===t.attributes.current_position:"closed"===t.state},onOpenTap:function(){this.hass.serviceActions.callService("cover","open_cover",{entity_id:this.stateObj.entityId})},onCloseTap:function(){this.hass.serviceActions.callService("cover","close_cover",{entity_id:this.stateObj.entityId})},onStopTap:function(){this.hass.serviceActions.callService("cover","stop_cover",{entity_id:this.stateObj.entityId})}})</script><dom-module id="state-card-display" assetpath="state-summary/"><template><style is="custom-style" include="iron-flex iron-flex-alignment"></style><style>.state{@apply(--paper-font-body1);color:var(--primary-text-color);margin-left:16px;text-align:right;line-height:40px}</style><div class="horizontal justified layout"><state-info state-obj="[[stateObj]]" in-dialog="[[inDialog]]"></state-info><div class="state">[[stateObj.stateDisplay]]</div></div></template></dom-module><script>Polymer({is:"state-card-display",properties:{inDialog:{type:Boolean,value:!1},stateObj:{type:Object}}})</script><script>Polymer.PaperInputHelper={},Polymer.PaperInputHelper.NextLabelID=1,Polymer.PaperInputHelper.NextAddonID=1,Polymer.PaperInputBehaviorImpl={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:String},charCounter:{type:Boolean,value:!1},noLabelFloat:{type:Boolean,value:!1},alwaysFloatLabel:{type:Boolean,value:!1},autoValidate:{type:Boolean,value:!1},validator:{type:String},autocomplete:{type:String,value:"off"},autofocus:{type:Boolean,observer:"_autofocusChanged"},inputmode:{type:String},minlength:{type:Number},maxlength:{type:Number},min:{type:String},max:{type:String},step:{type:String},name:{type:String},placeholder:{type:String,value:""},readonly:{type:Boolean,value:!1},size:{type:Number},autocapitalize:{type:String,value:"none"},autocorrect:{type:String,value:"off"},autosave:{type:String},results:{type:Number},accept:{type:String},multiple:{type:Boolean},_ariaDescribedBy:{type:String,value:""},_ariaLabelledBy:{type:String,value:""}},listeners:{"addon-attached":"_onAddonAttached"},keyBindings:{"shift+tab:keydown":"_onShiftTabDown"},hostAttributes:{tabindex:0},get inputElement(){return this.$.input},get _focusableElement(){return this.inputElement},registered:function(){this._typesThatHaveText=["date","datetime","datetime-local","month","time","week","file"]},attached:function(){this._updateAriaLabelledBy(),this.inputElement&&this._typesThatHaveText.indexOf(this.inputElement.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.target;if(t.id)this._ariaDescribedBy=this._appendStringWithSpace(this._ariaDescribedBy,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.focused&&!this._shiftTabPressed&&this._focusableElement.focus()},_onShiftTabDown:function(e){var t=this.getAttribute("tabindex");this._shiftTabPressed=!0,this.setAttribute("tabindex","-1"),this.async(function(){this.setAttribute("tabindex",t),this._shiftTabPressed=!1},1)},_handleAutoValidate:function(){this.autoValidate&&this.validate()},updateValueAndPreserveCaret:function(e){try{var t=this.inputElement.selectionStart;this.value=e,this.inputElement.selectionStart=t,this.inputElement.selectionEnd=t}catch(t){this.value=e}},_computeAlwaysFloatLabel:function(e,t){return t||e},_updateAriaLabelledBy:function(){var e=Polymer.dom(this.root).querySelector("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._ariaLabelledBy=t},_onChange:function(e){this.shadowRoot&&this.fire(e.type,{sourceEvent:e},{node:this,bubbles:e.bubbles,cancelable:e.cancelable})},_autofocusChanged:function(){if(this.autofocus&&this._focusableElement){var e=document.activeElement,t=e instanceof HTMLElement,a=t&&e!==document.body&&e!==document.documentElement;a||this._focusableElement.focus()}}},Polymer.PaperInputBehavior=[Polymer.IronControlState,Polymer.IronA11yKeysBehavior,Polymer.PaperInputBehaviorImpl]</script><dom-module id="paper-input-char-counter" assetpath="../bower_components/paper-input/"><template><style>:host{display:inline-block;float:right;@apply(--paper-font-caption);@apply(--paper-input-char-counter)}:host([hidden]){display:none!important}:host-context([dir=rtl]){float:left}</style><span>[[_charCounterStr]]</span></template></dom-module><script>Polymer({is:"paper-input-char-counter",behaviors:[Polymer.PaperInputAddonBehavior],properties:{_charCounterStr:{type:String,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}}})</script><dom-module id="paper-input" assetpath="../bower_components/paper-input/"><template><style>:host{display:block}:host([focused]){outline:0}:host([hidden]){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{color:var(--paper-input-container-color,--secondary-text-color)}input:-ms-input-placeholder{color:var(--paper-input-container-color,--secondary-text-color)}label{pointer-events:none}</style><paper-input-container no-label-float="[[noLabelFloat]]" always-float-label="[[_computeAlwaysFloatLabel(alwaysFloatLabel,placeholder)]]" auto-validate$="[[autoValidate]]" disabled$="[[disabled]]" invalid="[[invalid]]"><content select="[prefix]"></content><label hidden$="[[!label]]" aria-hidden="true" for="input">[[label]]</label><input is="iron-input" id="input" aria-labelledby$="[[_ariaLabelledBy]]" aria-describedby$="[[_ariaDescribedBy]]" disabled$="[[disabled]]" title$="[[title]]" bind-value="{{value}}" invalid="{{invalid}}" prevent-invalid-input="[[preventInvalidInput]]" allowed-pattern="[[allowedPattern]]" validator="[[validator]]" type$="[[type]]" pattern$="[[pattern]]" required$="[[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]]" autocapitalize$="[[autocapitalize]]" autocorrect$="[[autocorrect]]" on-change="_onChange" tabindex$="[[tabindex]]" autosave$="[[autosave]]" results$="[[results]]" accept$="[[accept]]" multiple$="[[multiple]]"><content select="[suffix]"></content><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.PaperInputBehavior]})</script><script>Polymer.IronFitBehavior={properties:{sizingTarget:{type:Object,value:function(){return this}},fitInto:{type:Object,value:window},noOverlap:{type:Boolean},positionTarget:{type:Element},horizontalAlign:{type:String},verticalAlign:{type:String},dynamicAlign:{type:Boolean},horizontalOffset:{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.getBoundingClientRect().width},get _fitHeight(){var t;return t=this.fitInto===window?this.fitInto.innerHeight:this.fitInto.getBoundingClientRect().height},get _fitLeft(){var t;return t=this.fitInto===window?0:this.fitInto.getBoundingClientRect().left},get _fitTop(){var t;return t=this.fitInto===window?0:this.fitInto.getBoundingClientRect().top},get _defaultPositionTarget(){var t=Polymer.dom(this).parentNode;return t&&t.nodeType===Node.DOCUMENT_FRAGMENT_NODE&&(t=t.host),t},get _localeHorizontalAlign(){if(this._isRTL){if("right"===this.horizontalAlign)return"left";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.autoFitOnAttach&&("none"===window.getComputedStyle(this).display?setTimeout(function(){this.fit()}.bind(this)):this.fit())},fit:function(){this.position(),this.constrain(),this.center()},_discoverInfo:function(){if(!this._fitInfo){var t=window.getComputedStyle(this),i=window.getComputedStyle(this.sizingTarget);this._fitInfo={inlineStyle:{top:this.style.top||"",left:this.style.left||"",position:this.style.position||""},sizerInlineStyle:{maxWidth:this.sizingTarget.style.maxWidth||"",maxHeight:this.sizingTarget.style.maxHeight||"",boxSizing:this.sizingTarget.style.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:parseInt(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.marginBottom,10)||0,left:parseInt(t.marginLeft,10)||0}},this.verticalOffset&&(this._fitInfo.margin.top=this._fitInfo.margin.bottom=this.verticalOffset,this._fitInfo.inlineStyle.marginTop=this.style.marginTop||"",this._fitInfo.inlineStyle.marginBottom=this.style.marginBottom||"",this.style.marginTop=this.style.marginBottom=this.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.marginRight||"",this.style.marginLeft=this.style.marginRight=this.horizontalOffset+"px")}},resetFit:function(){var t=this._fitInfo||{};for(var i in t.sizerInlineStyle)this.sizingTarget.style[i]=t.sizerInlineStyle[i];for(var i in t.inlineStyle)this.style[i]=t.inlineStyle[i];this._fitInfo=null},refit:function(){var t=this.sizingTarget.scrollLeft,i=this.sizingTarget.scrollTop;this.resetFit(),this.fit(),this.sizingTarget.scrollLeft=t,this.sizingTarget.scrollTop=i},position:function(){if(this.horizontalAlign||this.verticalAlign){this._discoverInfo(),this.style.position="fixed",this.sizingTarget.style.boxSizing="border-box",this.style.left="0px",this.style.top="0px";var t=this.getBoundingClientRect(),i=this.__getNormalizedRect(this.positionTarget),e=this.__getNormalizedRect(this.fitInto),n=this._fitInfo.margin,o={width:t.width+n.left+n.right,height:t.height+n.top+n.bottom},h=this.__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.minHeight;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.left="0px"),this.sizingTarget.style.boxSizing="border-box";var i=this.getBoundingClientRect();t.sizedBy.height||this.__sizeDimension(i,t.positionedBy.vertically,"top","bottom","Height"),t.sizedBy.width||this.__sizeDimension(i,t.positionedBy.horizontally,"left","right","Width")}},_sizeDimension:function(t,i,e,n,o){this.__sizeDimension(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];this.sizingTarget.style["max"+o]=l-g-a-p+"px"},center:function(){if(!this.horizontalAlign&&!this.verticalAlign){this._discoverInfo();var t=this._fitInfo.positionedBy;if(!t.vertically||!t.horizontally){this.style.position="fixed",t.vertically||(this.style.top="0px"),t.horizontally||(this.style.left="0px");var i=this.getBoundingClientRect(),e=this.__getNormalizedRect(this.fitInto);if(!t.vertically){var 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"}}}},__getNormalizedRect:function(t){return t===document.documentElement||t===window?{top:0,left:0,width:window.innerWidth,height:window.innerHeight,right:window.innerWidth,bottom: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",horizontalAlign:"left",top:n.top,left:n.left},{verticalAlign:"top",horizontalAlign:"right",top:n.top,left:n.right-e.width},{verticalAlign:"bottom",horizontalAlign:"left",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].top=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.verticalAlign===i&&f.horizontalAlign===t){g=f;break}var p=!(i&&f.verticalAlign!==i||t&&f.horizontalAlign!==t);if(this.dynamicAlign||p){g=g||f,f.croppedArea=this.__getCroppedArea(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="/"><template><style>: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-backdrop-opened)}</style><content></content></template></dom-module><script>!function(){"use strict";Polymer({is:"iron-overlay-backdrop",properties:{opened:{reflectToAttribute:!0,type:Boolean,value:!1,observer:"_openedChanged"}},listeners:{transitionend:"_onTransitionend"},created:function(){this.__openedRaf=null},attached: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:function(){this.opened||this.parentNode!==document.body||Polymer.dom(this.parentNode).removeChild(this)},_onTransitionend:function(e){e&&e.target===this&&this.complete()},_openedChanged:function(e){if(e)this.prepare();else{var t=window.getComputedStyle(this);"0s"!==t.transitionDuration&&0!=t.opacity||this.complete()}this.isAttached&&(this.__openedRaf&&(window.cancelAnimationFrame(this.__openedRaf),this.__openedRaf=null),this.scrollTop=this.scrollTop,this.__openedRaf=window.requestAnimationFrame(function(){this.__openedRaf=null,this.toggleClass("opened",this.opened)}.bind(this)))}})}()</script><script>Polymer.IronOverlayManagerClass=function(){this._overlays=[],this._minimumZ=101,this._backdropElement=null,Polymer.Gestures.add(document,"tap",this._onCaptureClick.bind(this)),document.addEventListener("focus",this._onCaptureFocus.bind(this),!0),document.addEventListener("keydown",this._onCaptureKeyDown.bind(this),!0)},Polymer.IronOverlayManagerClass.prototype={constructor:Polymer.IronOverlayManagerClass,get backdropElement(){return this._backdropElement||(this._backdropElement=document.createElement("iron-overlay-backdrop")),this._backdropElement},get deepActiveElement(){for(var e=document.activeElement||document.body;e.root&&Polymer.dom(e.root).activeElement;)e=Polymer.dom(e.root).activeElement;return e},_bringOverlayAtIndexToFront:function(e){var t=this._overlays[e];if(t){var r=this._overlays.length-1,a=this._overlays[r];if(a&&this._shouldBeBehindOverlay(t,a)&&r--,!(e>=r)){var n=Math.max(this.currentOverlayZ(),this._minimumZ);for(this._getZ(t)<=n&&this._applyOverlayZ(t,n);e<r;)this._overlays[e]=this._overlays[e+1],e++;this._overlays[r]=t}}},addOrRemoveOverlay:function(e){e.opened?this.addOverlay(e):this.removeOverlay(e)},addOverlay:function(e){var t=this._overlays.indexOf(e);if(t>=0)return this._bringOverlayAtIndexToFront(t),void this.trackBackdrop();var r=this._overlays.length,a=this._overlays[r-1],n=Math.max(this._getZ(a),this._minimumZ),o=this._getZ(e);if(a&&this._shouldBeBehindOverlay(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._overlays.splice(r,0,e),this.trackBackdrop()},removeOverlay:function(e){var t=this._overlays.indexOf(e);t!==-1&&(this._overlays.splice(t,1),this.trackBackdrop())},currentOverlay:function(){var e=this._overlays.length-1;return this._overlays[e]},currentOverlayZ:function(){return this._getZ(this.currentOverlay())},ensureMinimumZ:function(e){this._minimumZ=Math.max(this._minimumZ,e)},focusOverlay:function(){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:function(){for(var e=[],t=0;t<this._overlays.length;t++)this._overlays[t].withBackdrop&&e.push(this._overlays[t]);return e},backdropZ:function(){return this._getZ(this._overlayWithBackdrop())-1},_overlayWithBackdrop:function(){for(var e=0;e<this._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||window.getComputedStyle(e).zIndex);r===r&&(t=r)}return t},_setZ:function(e,t){e.style.zIndex=t},_applyOverlayZ:function(e,t){this._setZ(e,t+2)},_overlayInPath:function(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){var t=this.currentOverlay();t&&(Polymer.IronA11yKeysBehavior.keyboardEventMatchesKeys(e,"esc")?t._onCaptureEsc(e):Polymer.IronA11yKeysBehavior.keyboardEventMatchesKeys(e,"tab")&&t._onCaptureTab(e))},_shouldBeBehindOverlay:function(e,t){return!e.alwaysOnTop&&t.alwaysOnTop}},Polymer.IronOverlayManager=new Polymer.IronOverlayManagerClass</script><script>!function(){"use strict";var e=Element.prototype,t=e.matches||e.matchesSelector||e.mozMatchesSelector||e.msMatchesSelector||e.oMatchesSelector||e.webkitMatchesSelector;Polymer.IronFocusablesHelper={getTabbableNodes:function(e){var t=[],r=this._collectTabbableNodes(e,t);return r?this._sortByTabIndex(t):t},isFocusable:function(e){return t.call(e,"input, select, textarea, button, object")?t.call(e,":not([disabled])"):t.call(e,"a[href], area[href], iframe, [tabindex], [contentEditable]")},isTabbable:function(e){return this.isFocusable(e)&&t.call(e,':not([tabindex="-1"])')&&this._isVisible(e)},_normalizedTabIndex:function(e){if(this.isFocusable(e)){var t=e.getAttribute("tabindex")||0;return Number(t)}return-1},_collectTabbableNodes:function(e,t){if(e.nodeType!==Node.ELEMENT_NODE||!this._isVisible(e))return!1;var r=e,a=this._normalizedTabIndex(r),i=a>0;a>=0&&t.push(r);var n;n="content"===r.localName?Polymer.dom(r).getDistributedNodes():Polymer.dom(r.root||r).children;for(var o=0;o<n.length;o++){var s=this._collectTabbableNodes(n[o],t);i=i||s}return i},_isVisible:function(e){var t=e.style;return"hidden"!==t.visibility&&"none"!==t.display&&(t=window.getComputedStyle(e),"hidden"!==t.visibility&&"none"!==t.display)},_sortByTabIndex:function(e){var t=e.length;if(t<2)return e;var r=Math.ceil(t/2),a=this._sortByTabIndex(e.slice(0,r)),i=this._sortByTabIndex(e.slice(r));return this._mergeSortByTabIndex(a,i)},_mergeSortByTabIndex:function(e,t){for(var r=[];e.length>0&&t.length>0;)this._hasLowerTabOrder(e[0],t[0])?r.push(t.shift()):r.push(e.shift());return r.concat(e,t)},_hasLowerTabOrder:function(e,t){var r=Math.max(e.tabIndex,0),a=Math.max(t.tabIndex,0);return 0===r||0===a?a>r:r>a}}}()</script><script>!function(){"use strict";Polymer.IronOverlayBehaviorImpl={properties:{opened:{observer:"_openedChanged",type:Boolean,value:!1,notify:!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},noCancelOnOutsideClick:{type:Boolean,value:!1},closingReason:{type:Object},restoreFocusOnClose:{type:Boolean,value:!1},alwaysOnTop:{type:Boolean},_manager:{type:Object,value:Polymer.IronOverlayManager},_focusedChild:{type:Object}},listeners:{"iron-resize":"_onIronResize"},get backdropElement(){return this._manager.backdropElement},get _focusNode(){return this._focusedChild||Polymer.dom(this).querySelector("[autofocus]")||this},get _focusableNodes(){return Polymer.IronFocusablesHelper.getTabbableNodes(this)},ready:function(){this.__isAnimating=!1,this.__shouldRemoveTabIndex=!1,this.__firstFocusableNode=this.__lastFocusableNode=null,this.__raf=null,this.__restoreFocusNode=null,this._ensureSetup()},attached:function(){this.opened&&this._openedChanged(this.opened),this._observer=Polymer.dom(this).observeNodes(this._onNodesChange)},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){var t=this.fire("iron-overlay-canceled",e,{cancelable:!0});t.defaultPrevented||(this._setCanceled(!0),this.opened=!1)},invalidateTabbables:function(){this.__firstFocusableNode=this.__lastFocusableNode=null},_ensureSetup:function(){this._overlaySetup||(this._overlaySetup=!0,this.style.outline="none",this.style.display="none")},_openedChanged:function(e){e?this.removeAttribute("aria-hidden"):this.setAttribute("aria-hidden","true"),this.isAttached&&(this.__isAnimating=!0,this.__onNextAnimationFrame(this.__openedChanged))},_canceledChanged:function(){this.closingReason=this.closingReason||{},this.closingReason.canceled=this.canceled},_withBackdropChanged:function(){this.withBackdrop&&!this.hasAttribute("tabindex")?(this.setAttribute("tabindex","-1"),this.__shouldRemoveTabIndex=!0):this.__shouldRemoveTabIndex&&(this.removeAttribute("tabindex"),this.__shouldRemoveTabIndex=!1),this.opened&&this.isAttached&&this._manager.trackBackdrop()},_prepareRenderOpened:function(){this.__restoreFocusNode=this._manager.deepActiveElement,this._preparePositioning(),this.refit(),this._finishPositioning(),this.noAutoFocus&&document.activeElement===this._focusNode&&(this._focusNode.blur(),this.__restoreFocusNode.focus())},_renderOpened:function(){this._finishRenderOpened()},_renderClosed:function(){this._finishRenderClosed()},_finishRenderOpened:function(){this.notifyResize(),this.__isAnimating=!1,this.fire("iron-overlay-opened")},_finishRenderClosed:function(){this.style.display="none",this.style.zIndex="",this.notifyResize(),this.__isAnimating=!1,this.fire("iron-overlay-closed",this.closingReason)},_preparePositioning:function(){this.style.transition=this.style.webkitTransition="none",this.style.transform=this.style.webkitTransform="none",this.style.display=""},_finishPositioning:function(){this.style.display="none",this.scrollTop=this.scrollTop,this.style.transition=this.style.webkitTransition="",this.style.transform=this.style.webkitTransform="",this.style.display="",this.scrollTop=this.scrollTop},_applyFocus:function(){if(this.opened)this.noAutoFocus||this._focusNode.focus();else{this._focusNode.blur(),this._focusedChild=null,this.restoreFocusOnClose&&this.__restoreFocusNode&&this.__restoreFocusNode.focus(),this.__restoreFocusNode=null;var e=this._manager.currentOverlay();e&&this!==e&&e._applyFocus()}},_onCaptureClick:function(e){this.noCancelOnOutsideClick||this.cancel(e)},_onCaptureFocus: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:function(e){if(this.withBackdrop){this.__ensureFirstLastFocusables();var t=e.shiftKey,i=t?this.__firstFocusableNode:this.__lastFocusableNode,s=t?this.__lastFocusableNode:this.__firstFocusableNode,o=!1;if(i===s)o=!0;else{var n=this._manager.deepActiveElement;o=n===i||n===this}o&&(e.preventDefault(),this._focusedChild=s,this._applyFocus())}},_onIronResize:function(){this.opened&&!this.__isAnimating&&this.__onNextAnimationFrame(this.refit)},_onNodesChange:function(){this.opened&&!this.__isAnimating&&(this.invalidateTabbables(),this.notifyResize())},__ensureFirstLastFocusables:function(){if(!this.__firstFocusableNode||!this.__lastFocusableNode){var e=this._focusableNodes;this.__firstFocusableNode=e[0],this.__lastFocusableNode=e[e.length-1]}},__openedChanged:function(){this.opened?(this._prepareRenderOpened(),this._manager.addOverlay(this),this._applyFocus(),this._renderOpened()):(this._manager.removeOverlay(this),this._applyFocus(),this._renderClosed())},__onNextAnimationFrame:function(e){this.__raf&&window.cancelAnimationFrame(this.__raf);var t=this;this.__raf=window.requestAnimationFrame(function(){t.__raf=null,e.call(t)})}},Polymer.IronOverlayBehavior=[Polymer.IronFitBehavior,Polymer.IronResizableBehavior,Polymer.IronOverlayBehaviorImpl]}()</script><script>Polymer.NeonAnimatableBehavior={properties:{animationConfig:{type:Object},entryAnimation:{observer:"_entryAnimationChanged",type:String},exitAnimation:{observer:"_exitAnimationChanged",type:String}},_entryAnimationChanged:function(){this.animationConfig=this.animationConfig||{},this.animationConfig.entry=[{name:this.entryAnimation,node:this}]},_exitAnimationChanged:function(){this.animationConfig=this.animationConfig||{},this.animationConfig.exit=[{name:this.exitAnimation,node:this}]},_copyProperties:function(i,n){for(var t in n)i[t]=n[t]},_cloneConfig:function(i){var n={isClone:!0};return this._copyProperties(n,i),n},_getAnimationConfigRecursive:function(i,n,t){if(this.animationConfig){if(this.animationConfig.value&&"function"==typeof this.animationConfig.value)return void this._warn(this._logf("playAnimation","Please put 'animationConfig' inside of your components 'properties' object instead of outside of it."));var o;if(o=i?this.animationConfig[i]:this.animationConfig,Array.isArray(o)||(o=[o]),o)for(var e,a=0;e=o[a];a++)if(e.animatable)e.animatable._getAnimationConfigRecursive(e.type||i,n,t);else if(e.id){var r=n[e.id];r?(r.isClone||(n[e.id]=this._cloneConfig(r),r=n[e.id]),this._copyProperties(r,e)):n[e.id]=e}else t.push(e)}},getAnimationConfig:function(i){var n={},t=[];this._getAnimationConfigRecursive(i,n,t);for(var o in n)t.push(n[o]);return t}}</script><script>Polymer.NeonAnimationRunnerBehaviorImpl={_configureAnimations:function(n){var i=[];if(n.length>0)for(var e,t=0;e=n[t];t++){var o=document.createElement(e.name);if(o.isNeonAnimation){var a=null;try{a=o.configure(e),"function"!=typeof a.cancel&&(a=document.timeline.play(a))}catch(n){a=null,console.warn("Couldnt play","(",e.name,").",n)}a&&i.push({neonAnimation:o,config:e,animation:a})}else console.warn(this.is+":",e.name,"not found!")}return i},_shouldComplete:function(n){for(var i=!0,e=0;e<n.length;e++)if("finished"!=n[e].animation.playState){i=!1;break}return i},_complete:function(n){for(var i=0;i<n.length;i++)n[i].neonAnimation.complete(n[i].config);for(var i=0;i<n.length;i++)n[i].animation.cancel()},playAnimation:function(n,i){var e=this.getAnimationConfig(n);if(e){this._active=this._active||{},this._active[n]&&(this._complete(this._active[n]),delete this._active[n]);var t=this._configureAnimations(e);if(0==t.length)return void this.fire("neon-animation-finish",i,{bubbles:!1});this._active[n]=t;for(var o=0;o<t.length;o++)t[o].animation.onfinish=function(){this._shouldComplete(t)&&(this._complete(t),delete this._active[n],this.fire("neon-animation-finish",i,{bubbles:!1}))}.bind(this)}},cancelAnimation:function(){for(var n in this._animations)this._animations[n].cancel();this._animations={}}},Polymer.NeonAnimationRunnerBehavior=[Polymer.NeonAnimatableBehavior,Polymer.NeonAnimationRunnerBehaviorImpl]</script><script>Polymer.NeonAnimationBehavior={properties:{animationTiming:{type:Object,value:function(){return{duration:500,easing:"cubic-bezier(0.4, 0, 0.2, 1)",fill:"both"}}}},isNeonAnimation:!0,timingFromConfig:function(i){if(i.timing)for(var n in i.timing)this.animationTiming[n]=i.timing[n];return this.animationTiming},setPrefixedProperty:function(i,n,r){for(var t,o={transform:["webkitTransform"],transformOrigin:["mozTransformOrigin","webkitTransformOrigin"]},e=o[n],m=0;t=e[m];m++)i.style[t]=r;i.style[n]=r},complete:function(){}}</script><script>!function(a,b){var c={},d={},e={},f=null;!function(t,e){function i(t){if("number"==typeof t)return t;var e={};for(var i in t)e[i]=t[i];return e}function n(){this._delay=0,this._endDelay=0,this._fill="none",this._iterationStart=0,this._iterations=1,this._duration=0,this._playbackRate=1,this._direction="normal",this._easing="linear",this._easingFunction=E}function r(){return t.isDeprecated("Invalid timing inputs","2016-03-02","TypeError exceptions will be thrown instead.",!0)}function o(e,i,r){var o=new n;return i&&(o.fill="both",o.duration="auto"),"number"!=typeof e||isNaN(e)?void 0!==e&&Object.getOwnPropertyNames(e).forEach(function(i){if("auto"!=e[i]){if(("number"==typeof o[i]||"duration"==i)&&("number"!=typeof e[i]||isNaN(e[i])))return;if("fill"==i&&w.indexOf(e[i])==-1)return;if("direction"==i&&T.indexOf(e[i])==-1)return;if("playbackRate"==i&&1!==e[i]&&t.isDeprecated("AnimationEffectTiming.playbackRate","2014-11-28","Use Animation.playbackRate instead."))return;o[i]=e[i]}}):o.duration=e,o}function a(t){return"number"==typeof t&&(t=isNaN(t)?{duration:0}:{duration:t}),t}function s(e,i){return e=t.numericTimingToObject(e),o(e,i)}function u(t,e,i,n){return t<0||t>1||i<0||i>1?E:function(r){function o(t,e,i){return 3*t*(1-i)*(1-i)*i+3*e*(1-i)*i*i+i*i*i}if(r<=0){var a=0;return t>0?a=e/t:!e&&i>0&&(a=n/i),a*r}if(r>=1){var s=0;return i<1?s=(n-1)/(i-1):1==i&&t<1&&(s=(e-1)/(t-1)),1+s*(r-1)}for(var u=0,c=1;u<c;){var f=(u+c)/2,l=o(t,i,f);if(Math.abs(r-l)<1e-5)return o(e,n,f);l<r?u=f:c=f}return o(e,n,f)}}function c(t,e){return function(i){if(i>=1)return 1;var n=1/t;return i+=e*n,i-i%n}}function f(t){R||(R=document.createElement("div").style),R.animationTimingFunction="",R.animationTimingFunction=t;var e=R.animationTimingFunction;if(""==e&&r())throw new TypeError(t+" is not a valid value for easing");return e}function l(t){if("linear"==t)return E;var e=O.exec(t);if(e)return u.apply(this,e.slice(1).map(Number));var i=k.exec(t);if(i)return c(Number(i[1]),{start:x,middle:A,end:P}[i[2]]);var n=j[t];return n?n:E}function h(t){return Math.abs(m(t)/t.playbackRate)}function m(t){return 0===t.duration||0===t.iterations?0:t.duration*t.iterations}function d(t,e,i){if(null==e)return S;var n=i.delay+t+i.endDelay;return e<Math.min(i.delay,n)?C:e>=Math.min(i.delay+t,n)?D:F}function p(t,e,i,n,r){switch(n){case C:return"backwards"==e||"both"==e?0:null;case F:return i-r;case D:return"forwards"==e||"both"==e?t:null;case S:return null}}function _(t,e,i,n,r){var o=r;return 0===t?e!==C&&(o+=i):o+=n/t,o}function g(t,e,i,n,r,o){var a=t===1/0?e%1:t%1;return 0!==a||i!==D||0===n||0===r&&0!==o||(a=1),a}function b(t,e,i,n){return t===D&&e===1/0?1/0:1===i?Math.floor(n)-1:Math.floor(n)}function v(t,e,i){var n=t;if("normal"!==t&&"reverse"!==t){var r=e;"alternate-reverse"===t&&(r+=1),n="normal",r!==1/0&&r%2!==0&&(n="reverse")}return"normal"===n?i:1-i}function y(t,e,i){var n=d(t,e,i),r=p(t,i.fill,e,n,i.delay);if(null===r)return null;var o=_(i.duration,n,i.iterations,r,i.iterationStart),a=g(o,i.iterationStart,n,i.iterations,r,i.duration),s=b(n,i.iterations,a,o),u=v(i.direction,s,a);return i._easingFunction(u)}var w="backwards|forwards|both|none".split("|"),T="reverse|alternate|alternate-reverse".split("|"),E=function(t){return t};n.prototype={_setMember:function(e,i){this["_"+e]=i,this._effect&&(this._effect._timingInput[e]=i,this._effect._timing=t.normalizeTimingInput(this._effect._timingInput),this._effect.activeDuration=t.calculateActiveDuration(this._effect._timing),this._effect._animation&&this._effect._animation._rebuildUnderlyingAnimation())},get playbackRate(){return this._playbackRate},set delay(t){this._setMember("delay",t)},get delay(){return this._delay},set endDelay(t){this._setMember("endDelay",t)},get endDelay(){return this._endDelay},set fill(t){this._setMember("fill",t)},get fill(){return this._fill},set iterationStart(t){if((isNaN(t)||t<0)&&r())throw new TypeError("iterationStart must be a non-negative number, received: "+timing.iterationStart);this._setMember("iterationStart",t)},get iterationStart(){return this._iterationStart},set duration(t){if("auto"!=t&&(isNaN(t)||t<0)&&r())throw new TypeError("duration must be non-negative or auto, received: "+t);this._setMember("duration",t)},get duration(){return this._duration},set direction(t){this._setMember("direction",t)},get direction(){return this._direction},set easing(t){this._easingFunction=l(f(t)),this._setMember("easing",t)},get easing(){return this._easing},set iterations(t){if((isNaN(t)||t<0)&&r())throw new TypeError("iterations must be non-negative, received: "+t);this._setMember("iterations",t)},get iterations(){return this._iterations}};var x=1,A=.5,P=0,j={ease:u(.25,.1,.25,1),"ease-in":u(.42,0,1,1),"ease-out":u(0,0,.58,1),"ease-in-out":u(.42,0,.58,1),"step-start":c(1,x),"step-middle":c(1,A),"step-end":c(1,P)},R=null,N="\\s*(-?\\d+\\.?\\d*|-?\\.\\d+)\\s*",O=new RegExp("cubic-bezier\\("+N+","+N+","+N+","+N+"\\)"),k=/steps\(\s*(\d+)\s*,\s*(start|middle|end)\s*\)/,S=0,C=1,D=2,F=3;t.cloneTimingInput=i,t.makeTiming=o,t.numericTimingToObject=a,t.normalizeTimingInput=s,t.calculateActiveDuration=h,t.calculateIterationProgress=y,t.calculatePhase=d,t.normalizeEasing=f,t.parseEasingFunction=l}(c,f),function(t,e){function i(t,e){return t in f?f[t][e]||e:e}function n(t){return"display"===t||0===t.lastIndexOf("animation",0)||0===t.lastIndexOf("transition",0)}function r(t,e,r){if(!n(t)){var o=s[t];if(o){u.style[t]=e;for(var a in o){var c=o[a],f=u.style[c];r[c]=i(c,f)}}else r[t]=i(t,e)}}function o(t){var e=[];for(var i in t)if(!(i in["easing","offset","composite"])){var n=t[i];Array.isArray(n)||(n=[n]);for(var r,o=n.length,a=0;a<o;a++)r={},"offset"in t?r.offset=t.offset:1==o?r.offset=1:r.offset=a/(o-1),"easing"in t&&(r.easing=t.easing),"composite"in t&&(r.composite=t.composite),r[i]=n[a],e.push(r)}return e.sort(function(t,e){return t.offset-e.offset}),e}function a(e){function i(){var t=n.length;null==n[t-1].offset&&(n[t-1].offset=1),t>1&&null==n[0].offset&&(n[0].offset=0);for(var e=0,i=n[0].offset,r=1;r<t;r++){var o=n[r].offset;if(null!=o){for(var a=1;a<r-e;a++)n[e+a].offset=i+(o-i)*a/(r-e);e=r,i=o}}}if(null==e)return[];window.Symbol&&Symbol.iterator&&Array.prototype.from&&e[Symbol.iterator]&&(e=Array.from(e)),Array.isArray(e)||(e=o(e));for(var n=e.map(function(e){var i={};for(var n in e){var o=e[n];if("offset"==n){if(null!=o){if(o=Number(o),!isFinite(o))throw new TypeError("Keyframe offsets must be numbers.");if(o<0||o>1)throw new TypeError("Keyframe offsets must be between 0 and 1.")}}else if("composite"==n){if("add"==o||"accumulate"==o)throw{type:DOMException.NOT_SUPPORTED_ERR,name:"NotSupportedError",message:"add compositing is not supported"};if("replace"!=o)throw new TypeError("Invalid composite mode "+o+".")}else o="easing"==n?t.normalizeEasing(o):""+o;r(n,o,i)}return void 0==i.offset&&(i.offset=null),void 0==i.easing&&(i.easing="linear"),i}),a=!0,s=-(1/0),u=0;u<n.length;u++){var c=n[u].offset;if(null!=c){if(c<s)throw new TypeError("Keyframes are not loosely sorted by offset. Sort or specify offsets.");s=c}else a=!1}return n=n.filter(function(t){return t.offset>=0&&t.offset<=1}),a||i(),n}var s={background:["backgroundImage","backgroundPosition","backgroundSize","backgroundRepeat","backgroundAttachment","backgroundOrigin","backgroundClip","backgroundColor"],border:["borderTopColor","borderTopStyle","borderTopWidth","borderRightColor","borderRightStyle","borderRightWidth","borderBottomColor","borderBottomStyle","borderBottomWidth","borderLeftColor","borderLeftStyle","borderLeftWidth"],borderBottom:["borderBottomWidth","borderBottomStyle","borderBottomColor"],borderColor:["borderTopColor","borderRightColor","borderBottomColor","borderLeftColor"],borderLeft:["borderLeftWidth","borderLeftStyle","borderLeftColor"],borderRadius:["borderTopLeftRadius","borderTopRightRadius","borderBottomRightRadius","borderBottomLeftRadius"],borderRight:["borderRightWidth","borderRightStyle","borderRightColor"],borderTop:["borderTopWidth","borderTopStyle","borderTopColor"],borderWidth:["borderTopWidth","borderRightWidth","borderBottomWidth","borderLeftWidth"],flex:["flexGrow","flexShrink","flexBasis"],font:["fontFamily","fontSize","fontStyle","fontVariant","fontWeight","lineHeight"],margin:["marginTop","marginRight","marginBottom","marginLeft"],outline:["outlineColor","outlineStyle","outlineWidth"],padding:["paddingTop","paddingRight","paddingBottom","paddingLeft"]},u=document.createElementNS("http://www.w3.org/1999/xhtml","div"),c={thin:"1px",medium:"3px",thick:"5px"},f={borderBottomWidth:c,borderLeftWidth:c,borderRightWidth:c,borderTopWidth:c,fontSize:{"xx-small":"60%","x-small":"75%",small:"89%",medium:"100%",large:"120%","x-large":"150%","xx-large":"200%"},fontWeight:{normal:"400",bold:"700"},outlineWidth:c,textShadow:{none:"0px 0px 0px transparent"},boxShadow:{none:"0px 0px 0px 0px transparent"}};t.convertToArrayForm=o,t.normalizeKeyframes=a}(c,f),function(t){var e={};t.isDeprecated=function(t,i,n,r){var o=r?"are":"is",a=new Date,s=new Date(i);return s.setMonth(s.getMonth()+3),!(a<s&&(t in e||console.warn("Web Animations: "+t+" "+o+" deprecated and will stop working on "+s.toDateString()+". "+n),e[t]=!0,1))},t.deprecated=function(e,i,n,r){var o=r?"are":"is";if(t.isDeprecated(e,i,n,r))throw new Error(e+" "+o+" no longer supported. "+n)}}(c),function(){if(document.documentElement.animate){var a=document.documentElement.animate([],0),b=!0;if(a&&(b=!1,"play|currentTime|pause|reverse|playbackRate|cancel|finish|startTime|playState".split("|").forEach(function(t){void 0===a[t]&&(b=!0)})),!b)return}!function(t,e,i){function n(t){for(var e={},i=0;i<t.length;i++)for(var n in t[i])if("offset"!=n&&"easing"!=n&&"composite"!=n){var r={offset:t[i].offset,easing:t[i].easing,value:t[i][n]};e[n]=e[n]||[],e[n].push(r)}for(var o in e){var a=e[o];if(0!=a[0].offset||1!=a[a.length-1].offset)throw{type:DOMException.NOT_SUPPORTED_ERR,name:"NotSupportedError",message:"Partial keyframes are not supported"}}return e}function r(i){var n=[];for(var r in i)for(var o=i[r],a=0;a<o.length-1;a++){var s=a,u=a+1,c=o[s].offset,f=o[u].offset,l=c,h=f;0==a&&(l=-(1/0),0==f&&(u=s)),a==o.length-2&&(h=1/0,1==c&&(s=u)),n.push({applyFrom:l,applyTo:h,startOffset:o[s].offset,endOffset:o[u].offset,easingFunction:t.parseEasingFunction(o[s].easing),property:r,interpolation:e.propertyInterpolation(r,o[s].value,o[u].value)})}return n.sort(function(t,e){return t.startOffset-e.startOffset}),n}e.convertEffectInput=function(i){var o=t.normalizeKeyframes(i),a=n(o),s=r(a);return function(t,i){if(null!=i)s.filter(function(t){return i>=t.applyFrom&&i<t.applyTo}).forEach(function(n){var r=i-n.startOffset,o=n.endOffset-n.startOffset,a=0==o?0:n.easingFunction(r/o);e.apply(t,n.property,n.interpolation(a))});else for(var n in a)"offset"!=n&&"easing"!=n&&"composite"!=n&&e.clear(t,n)}}}(c,d,f),function(t,e,i){function n(t){return t.replace(/-(.)/g,function(t,e){return e.toUpperCase()})}function r(t,e,i){s[i]=s[i]||[],s[i].push([t,e])}function o(t,e,i){for(var o=0;o<i.length;o++){var a=i[o];r(t,e,n(a))}}function a(i,r,o){var a=i;/-/.test(i)&&!t.isDeprecated("Hyphenated property names","2016-03-22","Use camelCase instead.",!0)&&(a=n(i)),"initial"!=r&&"initial"!=o||("initial"==r&&(r=u[a]),"initial"==o&&(o=u[a]));for(var c=r==o?[]:s[a],f=0;c&&f<c.length;f++){var l=c[f][0](r),h=c[f][0](o);if(void 0!==l&&void 0!==h){var m=c[f][1](l,h);if(m){var d=e.Interpolation.apply(null,m);return function(t){return 0==t?r:1==t?o:d(t)}}}}return e.Interpolation(!1,!0,function(t){return t?o:r})}var s={};e.addPropertiesHandler=o;var u={backgroundColor:"transparent",backgroundPosition:"0% 0%",borderBottomColor:"currentColor",borderBottomLeftRadius:"0px",borderBottomRightRadius:"0px",borderBottomWidth:"3px",borderLeftColor:"currentColor",borderLeftWidth:"3px",borderRightColor:"currentColor",borderRightWidth:"3px",borderSpacing:"2px",borderTopColor:"currentColor",borderTopLeftRadius:"0px",borderTopRightRadius:"0px",borderTopWidth:"3px",bottom:"auto",clip:"rect(0px, 0px, 0px, 0px)",color:"black",fontSize:"100%",fontWeight:"400",height:"auto",left:"auto",letterSpacing:"normal",lineHeight:"120%",marginBottom:"0px",marginLeft:"0px",marginRight:"0px",marginTop:"0px",maxHeight:"none",maxWidth:"none",minHeight:"0px",minWidth:"0px",opacity:"1.0",outlineColor:"invert",outlineOffset:"0px",outlineWidth:"3px",paddingBottom:"0px",paddingLeft:"0px",paddingRight:"0px",paddingTop:"0px",right:"auto",textIndent:"0px",textShadow:"0px 0px 0px transparent",top:"auto",transform:"",verticalAlign:"0px",visibility:"visible",width:"auto",wordSpacing:"normal",zIndex:"auto"};e.propertyInterpolation=a}(c,d,f),function(t,e,i){function n(e){var i=t.calculateActiveDuration(e),n=function(n){return t.calculateIterationProgress(i,n,e)};return n._totalDuration=e.delay+i+e.endDelay,n}e.KeyframeEffect=function(i,r,o,a){var s,u=n(t.normalizeTimingInput(o)),c=e.convertEffectInput(r),f=function(){c(i,s)};return f._update=function(t){return s=u(t),null!==s},f._clear=function(){c(i,null)},f._hasSameTarget=function(t){return i===t},f._target=i,f._totalDuration=u._totalDuration,f._id=a,f},e.NullEffect=function(t){var e=function(){t&&(t(),t=null)};return e._update=function(){return null},e._totalDuration=0,e._hasSameTarget=function(){return!1},e}}(c,d,f),function(t,e){t.apply=function(e,i,n){e.style[t.propertyName(i)]=n},t.clear=function(e,i){e.style[t.propertyName(i)]=""}}(d,f),function(t){window.Element.prototype.animate=function(e,i){var n="";return i&&i.id&&(n=i.id),t.timeline._play(t.KeyframeEffect(this,e,i,n))}}(d),function(t,e){function i(t,e,n){if("number"==typeof t&&"number"==typeof e)return t*(1-n)+e*n;if("boolean"==typeof t&&"boolean"==typeof e)return n<.5?t:e;if(t.length==e.length){for(var r=[],o=0;o<t.length;o++)r.push(i(t[o],e[o],n));return r}throw"Mismatched interpolation arguments "+t+":"+e}t.Interpolation=function(t,e,n){return function(r){return n(i(t,e,r))}}}(d,f),function(t,e,i){t.sequenceNumber=0;var n=function(t,e,i){this.target=t,this.currentTime=e,this.timelineTime=i,this.type="finish",this.bubbles=!1,this.cancelable=!1,this.currentTarget=t,this.defaultPrevented=!1,this.eventPhase=Event.AT_TARGET,this.timeStamp=Date.now()};e.Animation=function(e){this.id="",e&&e._id&&(this.id=e._id),this._sequenceNumber=t.sequenceNumber++,this._currentTime=0,this._startTime=null,this._paused=!1,this._playbackRate=1,this._inTimeline=!0,this._finishedFlag=!0,this.onfinish=null,this._finishHandlers=[],this._effect=e,this._inEffect=this._effect._update(0),this._idle=!0,this._currentTimePending=!1},e.Animation.prototype={_ensureAlive:function(){this.playbackRate<0&&0===this.currentTime?this._inEffect=this._effect._update(-1):this._inEffect=this._effect._update(this.currentTime),this._inTimeline||!this._inEffect&&this._finishedFlag||(this._inTimeline=!0,e.timeline._animations.push(this))},_tickCurrentTime:function(t,e){t!=this._currentTime&&(this._currentTime=t,this._isFinished&&!e&&(this._currentTime=this._playbackRate>0?this._totalDuration:0),this._ensureAlive())},get currentTime(){return this._idle||this._currentTimePending?null:this._currentTime},set currentTime(t){t=+t,isNaN(t)||(e.restart(),this._paused||null==this._startTime||(this._startTime=this._timeline.currentTime-t/this._playbackRate),this._currentTimePending=!1,this._currentTime!=t&&(this._idle&&(this._idle=!1,this._paused=!0),this._tickCurrentTime(t,!0),e.applyDirtiedAnimation(this)))},get startTime(){return this._startTime},set startTime(t){t=+t,isNaN(t)||this._paused||this._idle||(this._startTime=t,this._tickCurrentTime((this._timeline.currentTime-this._startTime)*this.playbackRate),e.applyDirtiedAnimation(this))},get playbackRate(){return this._playbackRate},set playbackRate(t){if(t!=this._playbackRate){var i=this.currentTime;this._playbackRate=t,this._startTime=null,"paused"!=this.playState&&"idle"!=this.playState&&(this._finishedFlag=!1,this._idle=!1,this._ensureAlive(),e.applyDirtiedAnimation(this)),null!=i&&(this.currentTime=i)}},get _isFinished(){return!this._idle&&(this._playbackRate>0&&this._currentTime>=this._totalDuration||this._playbackRate<0&&this._currentTime<=0)},get _totalDuration(){return this._effect._totalDuration},get playState(){return this._idle?"idle":null==this._startTime&&!this._paused&&0!=this.playbackRate||this._currentTimePending?"pending":this._paused?"paused":this._isFinished?"finished":"running"},_rewind:function(){if(this._playbackRate>=0)this._currentTime=0;else{if(!(this._totalDuration<1/0))throw new DOMException("Unable to rewind negative playback rate animation with infinite duration","InvalidStateError");this._currentTime=this._totalDuration}},play:function(){this._paused=!1,(this._isFinished||this._idle)&&(this._rewind(),this._startTime=null),this._finishedFlag=!1,this._idle=!1,this._ensureAlive(),e.applyDirtiedAnimation(this)},pause:function(){this._isFinished||this._paused||this._idle?this._idle&&(this._rewind(),this._idle=!1):this._currentTimePending=!0,this._startTime=null,this._paused=!0},finish:function(){this._idle||(this.currentTime=this._playbackRate>0?this._totalDuration:0,this._startTime=this._totalDuration-this.currentTime,this._currentTimePending=!1,e.applyDirtiedAnimation(this))},cancel:function(){this._inEffect&&(this._inEffect=!1,this._idle=!0,this._paused=!1,this._isFinished=!0,this._finishedFlag=!0,this._currentTime=0,this._startTime=null,this._effect._update(null),e.applyDirtiedAnimation(this))},reverse:function(){this.playbackRate*=-1,this.play()},addEventListener:function(t,e){"function"==typeof e&&"finish"==t&&this._finishHandlers.push(e)},removeEventListener:function(t,e){if("finish"==t){var i=this._finishHandlers.indexOf(e);i>=0&&this._finishHandlers.splice(i,1)}},_fireEvents:function(t){if(this._isFinished){if(!this._finishedFlag){var e=new n(this,this._currentTime,t),i=this._finishHandlers.concat(this.onfinish?[this.onfinish]:[]);setTimeout(function(){i.forEach(function(t){t.call(e.target,e)})},0),this._finishedFlag=!0}}else this._finishedFlag=!1},_tick:function(t,e){this._idle||this._paused||(null==this._startTime?e&&(this.startTime=t-this._currentTime/this.playbackRate):this._isFinished||this._tickCurrentTime((t-this._startTime)*this.playbackRate)),e&&(this._currentTimePending=!1,this._fireEvents(t))},get _needsTick(){return this.playState in{pending:1,running:1}||!this._finishedFlag},_targetAnimations:function(){var t=this._effect._target;return t._activeAnimations||(t._activeAnimations=[]),t._activeAnimations},_markTarget:function(){var t=this._targetAnimations();t.indexOf(this)===-1&&t.push(this)},_unmarkTarget:function(){var t=this._targetAnimations(),e=t.indexOf(this);e!==-1&&t.splice(e,1)}}}(c,d,f),function(t,e,i){function n(t){var e=c;c=[],t<_.currentTime&&(t=_.currentTime),_._animations.sort(r),_._animations=s(t,!0,_._animations)[0],e.forEach(function(e){e[1](t)}),a(),l=void 0}function r(t,e){return t._sequenceNumber-e._sequenceNumber}function o(){this._animations=[],this.currentTime=window.performance&&performance.now?performance.now():0}function a(){d.forEach(function(t){t()}),d.length=0}function s(t,i,n){p=!0,m=!1;var r=e.timeline;r.currentTime=t,h=!1;var o=[],a=[],s=[],u=[];return n.forEach(function(e){e._tick(t,i),e._inEffect?(a.push(e._effect),e._markTarget()):(o.push(e._effect),e._unmarkTarget()),e._needsTick&&(h=!0);var n=e._inEffect||e._needsTick;e._inTimeline=n,n?s.push(e):u.push(e)}),d.push.apply(d,o),d.push.apply(d,a),h&&requestAnimationFrame(function(){}),p=!1,[s,u]}var u=window.requestAnimationFrame,c=[],f=0;window.requestAnimationFrame=function(t){var e=f++;return 0==c.length&&u(n),c.push([e,t]),e},window.cancelAnimationFrame=function(t){c.forEach(function(e){e[0]==t&&(e[1]=function(){})})},o.prototype={_play:function(i){i._timing=t.normalizeTimingInput(i.timing);var n=new e.Animation(i);return n._idle=!1,n._timeline=this,this._animations.push(n),e.restart(),e.applyDirtiedAnimation(n),n}};var l=void 0,h=!1,m=!1;e.restart=function(){return h||(h=!0,requestAnimationFrame(function(){}),m=!0),m},e.applyDirtiedAnimation=function(t){if(!p){t._markTarget();var i=t._targetAnimations();i.sort(r);var n=s(e.timeline.currentTime,!1,i.slice())[1];n.forEach(function(t){var e=_._animations.indexOf(t);e!==-1&&_._animations.splice(e,1)}),a()}};var d=[],p=!1,_=new o;e.timeline=_}(c,d,f),function(t){function e(t,e){var i=t.exec(e);if(i)return i=t.ignoreCase?i[0].toLowerCase():i[0],[i,e.substr(i.length)]}function i(t,e){e=e.replace(/^\s*/,"");var i=t(e);if(i)return[i[0],i[1].replace(/^\s*/,"")]}function n(t,n,r){t=i.bind(null,t);for(var o=[];;){var a=t(r);if(!a)return[o,r];if(o.push(a[0]),r=a[1],a=e(n,r),!a||""==a[1])return[o,r];r=a[1]}}function r(t,e){for(var i=0,n=0;n<e.length&&(!/\s|,/.test(e[n])||0!=i);n++)if("("==e[n])i++;else if(")"==e[n]&&(i--,0==i&&n++,i<=0))break;var r=t(e.substr(0,n));return void 0==r?void 0:[r,e.substr(n)]}function o(t,e){for(var i=t,n=e;i&&n;)i>n?i%=n:n%=i;return i=t*e/(i+n)}function a(t){return function(e){var i=t(e);return i&&(i[0]=void 0),i}}function s(t,e){return function(i){var n=t(i);return n?n:[e,i]}}function u(e,i){for(var n=[],r=0;r<e.length;r++){var o=t.consumeTrimmed(e[r],i);if(!o||""==o[0])return;void 0!==o[0]&&n.push(o[0]),i=o[1]}if(""==i)return n}function c(t,e,i,n,r){for(var a=[],s=[],u=[],c=o(n.length,r.length),f=0;f<c;f++){var l=e(n[f%n.length],r[f%r.length]);if(!l)return;a.push(l[0]),s.push(l[1]),u.push(l[2])}return[a,s,function(e){var n=e.map(function(t,e){return u[e](t)}).join(i);return t?t(n):n}]}function f(t,e,i){for(var n=[],r=[],o=[],a=0,s=0;s<i.length;s++)if("function"==typeof i[s]){var u=i[s](t[a],e[a++]);n.push(u[0]),r.push(u[1]),o.push(u[2])}else!function(t){n.push(!1),r.push(!1),o.push(function(){return i[t]})}(s);return[n,r,function(t){for(var e="",i=0;i<t.length;i++)e+=o[i](t[i]);return e}]}t.consumeToken=e,t.consumeTrimmed=i,t.consumeRepeated=n,t.consumeParenthesised=r,t.ignore=a,t.optional=s,t.consumeList=u,t.mergeNestedRepeated=c.bind(null,null),t.mergeWrappedNestedRepeated=c,t.mergeList=f}(d),function(t){function e(e){function i(e){var i=t.consumeToken(/^inset/i,e);if(i)return n.inset=!0,i;var i=t.consumeLengthOrPercent(e);if(i)return n.lengths.push(i[0]),i;var i=t.consumeColor(e);return i?(n.color=i[0],i):void 0}var n={inset:!1,lengths:[],color:null},r=t.consumeRepeated(i,/^/,e);if(r&&r[0].length)return[n,r[1]]}function i(i){var n=t.consumeRepeated(e,/^,/,i);if(n&&""==n[1])return n[0]}function n(e,i){for(;e.lengths.length<Math.max(e.lengths.length,i.lengths.length);)e.lengths.push({px:0});for(;i.lengths.length<Math.max(e.lengths.length,i.lengths.length);)i.lengths.push({px:0});if(e.inset==i.inset&&!!e.color==!!i.color){for(var n,r=[],o=[[],0],a=[[],0],s=0;s<e.lengths.length;s++){var u=t.mergeDimensions(e.lengths[s],i.lengths[s],2==s);o[0].push(u[0]),a[0].push(u[1]),r.push(u[2])}if(e.color&&i.color){var c=t.mergeColors(e.color,i.color);o[1]=c[0],a[1]=c[1],n=c[2]}return[o,a,function(t){for(var i=e.inset?"inset ":" ",o=0;o<r.length;o++)i+=r[o](t[0][o])+" ";return n&&(i+=n(t[1])),i}]}}function r(e,i,n,r){function o(t){return{inset:t,color:[0,0,0,0],lengths:[{px:0},{px:0},{px:0},{px:0}]}}for(var a=[],s=[],u=0;u<n.length||u<r.length;u++){var c=n[u]||o(r[u].inset),f=r[u]||o(n[u].inset);a.push(c),s.push(f)}return t.mergeNestedRepeated(e,i,a,s)}var o=r.bind(null,n,", ");t.addPropertiesHandler(i,o,["box-shadow","text-shadow"])}(d),function(t,e){function i(t){return t.toFixed(3).replace(".000","")}function n(t,e,i){return Math.min(e,Math.max(t,i))}function r(t){if(/^\s*[-+]?(\d*\.)?\d+\s*$/.test(t))return Number(t)}function o(t,e){return[t,e,i]}function a(t,e){if(0!=t)return u(0,1/0)(t,e)}function s(t,e){return[t,e,function(t){return Math.round(n(1,1/0,t))}]}function u(t,e){return function(r,o){return[r,o,function(r){return i(n(t,e,r))}]}}function c(t,e){return[t,e,Math.round]}t.clamp=n,t.addPropertiesHandler(r,u(0,1/0),["border-image-width","line-height"]),t.addPropertiesHandler(r,u(0,1),["opacity","shape-image-threshold"]),t.addPropertiesHandler(r,a,["flex-grow","flex-shrink"]),t.addPropertiesHandler(r,s,["orphans","widows"]),t.addPropertiesHandler(r,c,["z-index"]),t.parseNumber=r,t.mergeNumbers=o,t.numberToString=i}(d,f),function(t,e){function i(t,e){if("visible"==t||"visible"==e)return[0,1,function(i){return i<=0?t:i>=1?e:"visible"}]}t.addPropertiesHandler(String,i,["visibility"])}(d),function(t,e){function i(t){t=t.trim(),o.fillStyle="#000",o.fillStyle=t;var e=o.fillStyle;if(o.fillStyle="#fff",o.fillStyle=t,e==o.fillStyle){o.fillRect(0,0,1,1);var i=o.getImageData(0,0,1,1).data;o.clearRect(0,0,1,1);var n=i[3]/255;return[i[0]*n,i[1]*n,i[2]*n,n]}}function n(e,i){return[e,i,function(e){function i(t){return Math.max(0,Math.min(255,t))}if(e[3])for(var n=0;n<3;n++)e[n]=Math.round(i(e[n]/e[3]));return e[3]=t.numberToString(t.clamp(0,1,e[3])),"rgba("+e.join(",")+")"}]}var r=document.createElementNS("http://www.w3.org/1999/xhtml","canvas");r.width=r.height=1;var o=r.getContext("2d");t.addPropertiesHandler(i,n,["background-color","border-bottom-color","border-left-color","border-right-color","border-top-color","color","outline-color","text-decoration-color"]),t.consumeColor=t.consumeParenthesised.bind(null,i),t.mergeColors=n}(d,f),function(a,b){function c(a,b){if(b=b.trim().toLowerCase(),"0"==b&&"px".search(a)>=0)return{px:0};if(/^[^(]*$|^calc/.test(b)){b=b.replace(/calc\(/g,"(");var c={};b=b.replace(a,function(t){return c[t]=null,"U"+t});for(var d="U("+a.source+")",e=b.replace(/[-+]?(\d*\.)?\d+/g,"N").replace(new RegExp("N"+d,"g"),"D").replace(/\s[+-]\s/g,"O").replace(/\s/g,""),f=[/N\*(D)/g,/(N|D)[*\/]N/g,/(N|D)O\1/g,/\((N|D)\)/g],g=0;g<f.length;)f[g].test(e)?(e=e.replace(f[g],"$1"),g=0):g++;if("D"==e){for(var h in c){var i=eval(b.replace(new RegExp("U"+h,"g"),"").replace(new RegExp(d,"g"),"*0"));if(!isFinite(i))return;c[h]=i}return c}}}function d(t,i){return e(t,i,!0)}function e(t,e,i){var n,r=[];for(n in t)r.push(n);for(n in e)r.indexOf(n)<0&&r.push(n);return t=r.map(function(e){return t[e]||0}),e=r.map(function(t){return e[t]||0}),[t,e,function(t){var e=t.map(function(e,n){return 1==t.length&&i&&(e=Math.max(e,0)),a.numberToString(e)+r[n]}).join(" + ");return t.length>1?"calc("+e+")":e}]}var f="px|em|ex|ch|rem|vw|vh|vmin|vmax|cm|mm|in|pt|pc",g=c.bind(null,new RegExp(f,"g")),h=c.bind(null,new RegExp(f+"|%","g")),i=c.bind(null,/deg|rad|grad|turn/g);a.parseLength=g,a.parseLengthOrPercent=h,a.consumeLengthOrPercent=a.consumeParenthesised.bind(null,h),a.parseAngle=i,a.mergeDimensions=e;var j=a.consumeParenthesised.bind(null,g),k=a.consumeRepeated.bind(void 0,j,/^/),l=a.consumeRepeated.bind(void 0,k,/^,/);a.consumeSizePairList=l;var m=function(t){var e=l(t);if(e&&""==e[1])return e[0]},n=a.mergeNestedRepeated.bind(void 0,d," "),o=a.mergeNestedRepeated.bind(void 0,n,",");a.mergeNonNegativeSizePair=n,a.addPropertiesHandler(m,o,["background-size"]),a.addPropertiesHandler(h,d,["border-bottom-width","border-image-width","border-left-width","border-right-width","border-top-width","flex-basis","font-size","height","line-height","max-height","max-width","outline-width","width"]),a.addPropertiesHandler(h,e,["border-bottom-left-radius","border-bottom-right-radius","border-top-left-radius","border-top-right-radius","bottom","left","letter-spacing","margin-bottom","margin-left","margin-right","margin-top","min-height","min-width","outline-offset","padding-bottom","padding-left","padding-right","padding-top","perspective","right","shape-margin","text-indent","top","vertical-align","word-spacing"])}(d,f),function(t,e){function i(e){return t.consumeLengthOrPercent(e)||t.consumeToken(/^auto/,e)}function n(e){var n=t.consumeList([t.ignore(t.consumeToken.bind(null,/^rect/)),t.ignore(t.consumeToken.bind(null,/^\(/)),t.consumeRepeated.bind(null,i,/^,/),t.ignore(t.consumeToken.bind(null,/^\)/))],e);if(n&&4==n[0].length)return n[0]}function r(e,i){return"auto"==e||"auto"==i?[!0,!1,function(n){var r=n?e:i;if("auto"==r)return"auto";var o=t.mergeDimensions(r,r);return o[2](o[0])}]:t.mergeDimensions(e,i)}function o(t){return"rect("+t+")"}var a=t.mergeWrappedNestedRepeated.bind(null,o,r,", ");t.parseBox=n,t.mergeBoxes=a,t.addPropertiesHandler(n,a,["clip"])}(d,f),function(t,e){function i(t){return function(e){var i=0;return t.map(function(t){return t===f?e[i++]:t})}}function n(t){return t}function r(e){if(e=e.toLowerCase().trim(),"none"==e)return[];for(var i,n=/\s*(\w+)\(([^)]*)\)/g,r=[],o=0;i=n.exec(e);){if(i.index!=o)return;o=i.index+i[0].length;var a=i[1],s=m[a];if(!s)return;var u=i[2].split(","),c=s[0];if(c.length<u.length)return;for(var f=[],d=0;d<c.length;d++){var p,_=u[d],g=c[d];if(p=_?{A:function(e){return"0"==e.trim()?h:t.parseAngle(e)},N:t.parseNumber,T:t.parseLengthOrPercent,L:t.parseLength}[g.toUpperCase()](_):{a:h,n:f[0],t:l}[g],void 0===p)return;f.push(p)}if(r.push({t:a,d:f}),n.lastIndex==e.length)return r}}function o(t){return t.toFixed(6).replace(".000000","")}function a(e,i){if(e.decompositionPair!==i){e.decompositionPair=i;var n=t.makeMatrixDecomposition(e)}if(i.decompositionPair!==e){i.decompositionPair=e;var r=t.makeMatrixDecomposition(i)}return null==n[0]||null==r[0]?[[!1],[!0],function(t){return t?i[0].d:e[0].d}]:(n[0].push(0),r[0].push(1),[n,r,function(e){var i=t.quat(n[0][3],r[0][3],e[5]),a=t.composeMatrix(e[0],e[1],e[2],i,e[4]),s=a.map(o).join(",");return s}])}function s(t){return t.replace(/[xy]/,"")}function u(t){return t.replace(/(x|y|z|3d)?$/,"3d")}function c(e,i){var n=t.makeMatrixDecomposition&&!0,r=!1;if(!e.length||!i.length){e.length||(r=!0,e=i,i=[]);for(var o=0;o<e.length;o++){var c=e[o].t,f=e[o].d,l="scale"==c.substr(0,5)?1:0;i.push({t:c,d:f.map(function(t){if("number"==typeof t)return l;var e={};for(var i in t)e[i]=l;return e})})}}var h=function(t,e){return"perspective"==t&&"perspective"==e||("matrix"==t||"matrix3d"==t)&&("matrix"==e||"matrix3d"==e)},d=[],p=[],_=[];if(e.length!=i.length){if(!n)return;var g=a(e,i);d=[g[0]],p=[g[1]],_=[["matrix",[g[2]]]]}else for(var o=0;o<e.length;o++){var c,b=e[o].t,v=i[o].t,y=e[o].d,w=i[o].d,T=m[b],E=m[v];if(h(b,v)){if(!n)return;var g=a([e[o]],[i[o]]);d.push(g[0]),p.push(g[1]),_.push(["matrix",[g[2]]])}else{if(b==v)c=b;else if(T[2]&&E[2]&&s(b)==s(v))c=s(b),y=T[2](y),w=E[2](w);else{if(!T[1]||!E[1]||u(b)!=u(v)){if(!n)return;var g=a(e,i);d=[g[0]],p=[g[1]],_=[["matrix",[g[2]]]];break}c=u(b),y=T[1](y),w=E[1](w)}for(var x=[],A=[],P=[],j=0;j<y.length;j++){var R="number"==typeof y[j]?t.mergeNumbers:t.mergeDimensions,g=R(y[j],w[j]);x[j]=g[0],A[j]=g[1],P.push(g[2])}d.push(x),p.push(A),_.push([c,P])}}if(r){var N=d;d=p,p=N}return[d,p,function(t){return t.map(function(t,e){var i=t.map(function(t,i){return _[e][1][i](t)}).join(",");return"matrix"==_[e][0]&&16==i.split(",").length&&(_[e][0]="matrix3d"),_[e][0]+"("+i+")"}).join(" ")}]}var f=null,l={px:0},h={deg:0},m={matrix:["NNNNNN",[f,f,0,0,f,f,0,0,0,0,1,0,f,f,0,1],n],matrix3d:["NNNNNNNNNNNNNNNN",n],rotate:["A"],rotatex:["A"],rotatey:["A"],rotatez:["A"],rotate3d:["NNNA"],perspective:["L"],scale:["Nn",i([f,f,1]),n],scalex:["N",i([f,1,1]),i([f,1])],scaley:["N",i([1,f,1]),i([1,f])],scalez:["N",i([1,1,f])],scale3d:["NNN",n],skew:["Aa",null,n],skewx:["A",null,i([f,h])],skewy:["A",null,i([h,f])],translate:["Tt",i([f,f,l]),n],translatex:["T",i([f,l,l]),i([f,l])],translatey:["T",i([l,f,l]),i([l,f])],translatez:["L",i([l,l,f])],translate3d:["TTL",n]};t.addPropertiesHandler(r,c,["transform"])}(d,f),function(t,e){function i(t,e){e.concat([t]).forEach(function(e){e in document.documentElement.style&&(n[t]=e)})}var n={};i("transform",["webkitTransform","msTransform"]),i("transformOrigin",["webkitTransformOrigin"]),i("perspective",["webkitPerspective"]),i("perspectiveOrigin",["webkitPerspectiveOrigin"]),t.propertyName=function(t){return n[t]||t}}(d,f)}(),!function(){if(void 0===document.createElement("div").animate([]).oncancel){var t;if(window.performance&&performance.now)var t=function(){return performance.now()};else var t=function(){return Date.now()};var e=function(t,e,i){this.target=t,this.currentTime=e,this.timelineTime=i,this.type="cancel",this.bubbles=!1,this.cancelable=!1, -this.currentTarget=t,this.defaultPrevented=!1,this.eventPhase=Event.AT_TARGET,this.timeStamp=Date.now()},i=window.Element.prototype.animate;window.Element.prototype.animate=function(n,r){var o=i.call(this,n,r);o._cancelHandlers=[],o.oncancel=null;var a=o.cancel;o.cancel=function(){a.call(this);var i=new e(this,null,t()),n=this._cancelHandlers.concat(this.oncancel?[this.oncancel]:[]);setTimeout(function(){n.forEach(function(t){t.call(i.target,i)})},0)};var s=o.addEventListener;o.addEventListener=function(t,e){"function"==typeof e&&"cancel"==t?this._cancelHandlers.push(e):s.call(this,t,e)};var u=o.removeEventListener;return o.removeEventListener=function(t,e){if("cancel"==t){var i=this._cancelHandlers.indexOf(e);i>=0&&this._cancelHandlers.splice(i,1)}else u.call(this,t,e)},o}}}(),function(t){var e=document.documentElement,i=null,n=!1;try{var r=getComputedStyle(e).getPropertyValue("opacity"),o="0"==r?"1":"0";i=e.animate({opacity:[o,o]},{duration:1}),i.currentTime=0,n=getComputedStyle(e).getPropertyValue("opacity")==o}catch(t){}finally{i&&i.cancel()}if(!n){var a=window.Element.prototype.animate;window.Element.prototype.animate=function(e,i){return window.Symbol&&Symbol.iterator&&Array.prototype.from&&e[Symbol.iterator]&&(e=Array.from(e)),Array.isArray(e)||null===e||(e=t.convertToArrayForm(e)),a.call(this,e,i)}}}(c),!function(t,e,i){function n(t){var i=e.timeline;i.currentTime=t,i._discardAnimations(),0==i._animations.length?o=!1:requestAnimationFrame(n)}var r=window.requestAnimationFrame;window.requestAnimationFrame=function(t){return r(function(i){e.timeline._updateAnimationsPromises(),t(i),e.timeline._updateAnimationsPromises()})},e.AnimationTimeline=function(){this._animations=[],this.currentTime=void 0},e.AnimationTimeline.prototype={getAnimations:function(){return this._discardAnimations(),this._animations.slice()},_updateAnimationsPromises:function(){e.animationsWithPromises=e.animationsWithPromises.filter(function(t){return t._updatePromises()})},_discardAnimations:function(){this._updateAnimationsPromises(),this._animations=this._animations.filter(function(t){return"finished"!=t.playState&&"idle"!=t.playState})},_play:function(t){var i=new e.Animation(t,this);return this._animations.push(i),e.restartWebAnimationsNextTick(),i._updatePromises(),i._animation.play(),i._updatePromises(),i},play:function(t){return t&&t.remove(),this._play(t)}};var o=!1;e.restartWebAnimationsNextTick=function(){o||(o=!0,requestAnimationFrame(n))};var a=new e.AnimationTimeline;e.timeline=a;try{Object.defineProperty(window.document,"timeline",{configurable:!0,get:function(){return a}})}catch(t){}try{window.document.timeline=a}catch(t){}}(c,e,f),function(t,e,i){e.animationsWithPromises=[],e.Animation=function(e,i){if(this.id="",e&&e._id&&(this.id=e._id),this.effect=e,e&&(e._animation=this),!i)throw new Error("Animation with null timeline is not supported");this._timeline=i,this._sequenceNumber=t.sequenceNumber++,this._holdTime=0,this._paused=!1,this._isGroup=!1,this._animation=null,this._childAnimations=[],this._callback=null,this._oldPlayState="idle",this._rebuildUnderlyingAnimation(),this._animation.cancel(),this._updatePromises()},e.Animation.prototype={_updatePromises:function(){var t=this._oldPlayState,e=this.playState;return this._readyPromise&&e!==t&&("idle"==e?(this._rejectReadyPromise(),this._readyPromise=void 0):"pending"==t?this._resolveReadyPromise():"pending"==e&&(this._readyPromise=void 0)),this._finishedPromise&&e!==t&&("idle"==e?(this._rejectFinishedPromise(),this._finishedPromise=void 0):"finished"==e?this._resolveFinishedPromise():"finished"==t&&(this._finishedPromise=void 0)),this._oldPlayState=this.playState,this._readyPromise||this._finishedPromise},_rebuildUnderlyingAnimation:function(){this._updatePromises();var t,i,n,r,o=!!this._animation;o&&(t=this.playbackRate,i=this._paused,n=this.startTime,r=this.currentTime,this._animation.cancel(),this._animation._wrapper=null,this._animation=null),(!this.effect||this.effect instanceof window.KeyframeEffect)&&(this._animation=e.newUnderlyingAnimationForKeyframeEffect(this.effect),e.bindAnimationForKeyframeEffect(this)),(this.effect instanceof window.SequenceEffect||this.effect instanceof window.GroupEffect)&&(this._animation=e.newUnderlyingAnimationForGroup(this.effect),e.bindAnimationForGroup(this)),this.effect&&this.effect._onsample&&e.bindAnimationForCustomEffect(this),o&&(1!=t&&(this.playbackRate=t),null!==n?this.startTime=n:null!==r?this.currentTime=r:null!==this._holdTime&&(this.currentTime=this._holdTime),i&&this.pause()),this._updatePromises()},_updateChildren:function(){if(this.effect&&"idle"!=this.playState){var t=this.effect._timing.delay;this._childAnimations.forEach(function(i){this._arrangeChildren(i,t),this.effect instanceof window.SequenceEffect&&(t+=e.groupChildDuration(i.effect))}.bind(this))}},_setExternalAnimation:function(t){if(this.effect&&this._isGroup)for(var e=0;e<this.effect.children.length;e++)this.effect.children[e]._animation=t,this._childAnimations[e]._setExternalAnimation(t)},_constructChildAnimations:function(){if(this.effect&&this._isGroup){var t=this.effect._timing.delay;this._removeChildAnimations(),this.effect.children.forEach(function(i){var n=e.timeline._play(i);this._childAnimations.push(n),n.playbackRate=this.playbackRate,this._paused&&n.pause(),i._animation=this.effect._animation,this._arrangeChildren(n,t),this.effect instanceof window.SequenceEffect&&(t+=e.groupChildDuration(i))}.bind(this))}},_arrangeChildren:function(t,e){null===this.startTime?t.currentTime=this.currentTime-e/this.playbackRate:t.startTime!==this.startTime+e/this.playbackRate&&(t.startTime=this.startTime+e/this.playbackRate)},get timeline(){return this._timeline},get playState(){return this._animation?this._animation.playState:"idle"},get finished(){return window.Promise?(this._finishedPromise||(e.animationsWithPromises.indexOf(this)==-1&&e.animationsWithPromises.push(this),this._finishedPromise=new Promise(function(t,e){this._resolveFinishedPromise=function(){t(this)},this._rejectFinishedPromise=function(){e({type:DOMException.ABORT_ERR,name:"AbortError"})}}.bind(this)),"finished"==this.playState&&this._resolveFinishedPromise()),this._finishedPromise):(console.warn("Animation Promises require JavaScript Promise constructor"),null)},get ready(){return window.Promise?(this._readyPromise||(e.animationsWithPromises.indexOf(this)==-1&&e.animationsWithPromises.push(this),this._readyPromise=new Promise(function(t,e){this._resolveReadyPromise=function(){t(this)},this._rejectReadyPromise=function(){e({type:DOMException.ABORT_ERR,name:"AbortError"})}}.bind(this)),"pending"!==this.playState&&this._resolveReadyPromise()),this._readyPromise):(console.warn("Animation Promises require JavaScript Promise constructor"),null)},get onfinish(){return this._animation.onfinish},set onfinish(t){"function"==typeof t?this._animation.onfinish=function(e){e.target=this,t.call(this,e)}.bind(this):this._animation.onfinish=t},get oncancel(){return this._animation.oncancel},set oncancel(t){"function"==typeof t?this._animation.oncancel=function(e){e.target=this,t.call(this,e)}.bind(this):this._animation.oncancel=t},get currentTime(){this._updatePromises();var t=this._animation.currentTime;return this._updatePromises(),t},set currentTime(t){this._updatePromises(),this._animation.currentTime=isFinite(t)?t:Math.sign(t)*Number.MAX_VALUE,this._register(),this._forEachChild(function(e,i){e.currentTime=t-i}),this._updatePromises()},get startTime(){return this._animation.startTime},set startTime(t){this._updatePromises(),this._animation.startTime=isFinite(t)?t:Math.sign(t)*Number.MAX_VALUE,this._register(),this._forEachChild(function(e,i){e.startTime=t+i}),this._updatePromises()},get playbackRate(){return this._animation.playbackRate},set playbackRate(t){this._updatePromises();var e=this.currentTime;this._animation.playbackRate=t,this._forEachChild(function(e){e.playbackRate=t}),null!==e&&(this.currentTime=e),this._updatePromises()},play:function(){this._updatePromises(),this._paused=!1,this._animation.play(),this._timeline._animations.indexOf(this)==-1&&this._timeline._animations.push(this),this._register(),e.awaitStartTime(this),this._forEachChild(function(t){var e=t.currentTime;t.play(),t.currentTime=e}),this._updatePromises()},pause:function(){this._updatePromises(),this.currentTime&&(this._holdTime=this.currentTime),this._animation.pause(),this._register(),this._forEachChild(function(t){t.pause()}),this._paused=!0,this._updatePromises()},finish:function(){this._updatePromises(),this._animation.finish(),this._register(),this._updatePromises()},cancel:function(){this._updatePromises(),this._animation.cancel(),this._register(),this._removeChildAnimations(),this._updatePromises()},reverse:function(){this._updatePromises();var t=this.currentTime;this._animation.reverse(),this._forEachChild(function(t){t.reverse()}),null!==t&&(this.currentTime=t),this._updatePromises()},addEventListener:function(t,e){var i=e;"function"==typeof e&&(i=function(t){t.target=this,e.call(this,t)}.bind(this),e._wrapper=i),this._animation.addEventListener(t,i)},removeEventListener:function(t,e){this._animation.removeEventListener(t,e&&e._wrapper||e)},_removeChildAnimations:function(){for(;this._childAnimations.length;)this._childAnimations.pop().cancel()},_forEachChild:function(e){var i=0;if(this.effect.children&&this._childAnimations.length<this.effect.children.length&&this._constructChildAnimations(),this._childAnimations.forEach(function(t){e.call(this,t,i),this.effect instanceof window.SequenceEffect&&(i+=t.effect.activeDuration)}.bind(this)),"pending"!=this.playState){var n=this.effect._timing,r=this.currentTime;null!==r&&(r=t.calculateIterationProgress(t.calculateActiveDuration(n),r,n)),(null==r||isNaN(r))&&this._removeChildAnimations()}}},window.Animation=e.Animation}(c,e,f),function(t,e,i){function n(e){this._frames=t.normalizeKeyframes(e)}function r(){for(var t=!1;u.length;){var e=u.shift();e._updateChildren(),t=!0}return t}var o=function(t){if(t._animation=void 0,t instanceof window.SequenceEffect||t instanceof window.GroupEffect)for(var e=0;e<t.children.length;e++)o(t.children[e])};e.removeMulti=function(t){for(var e=[],i=0;i<t.length;i++){var n=t[i];n._parent?(e.indexOf(n._parent)==-1&&e.push(n._parent),n._parent.children.splice(n._parent.children.indexOf(n),1),n._parent=null,o(n)):n._animation&&n._animation.effect==n&&(n._animation.cancel(),n._animation.effect=new KeyframeEffect(null,[]),n._animation._callback&&(n._animation._callback._animation=null),n._animation._rebuildUnderlyingAnimation(),o(n))}for(i=0;i<e.length;i++)e[i]._rebuild()},e.KeyframeEffect=function(e,i,r,o){return this.target=e,this._parent=null,r=t.numericTimingToObject(r),this._timingInput=t.cloneTimingInput(r),this._timing=t.normalizeTimingInput(r),this.timing=t.makeTiming(r,!1,this),this.timing._effect=this,"function"==typeof i?(t.deprecated("Custom KeyframeEffect","2015-06-22","Use KeyframeEffect.onsample instead."),this._normalizedKeyframes=i):this._normalizedKeyframes=new n(i),this._keyframes=i,this.activeDuration=t.calculateActiveDuration(this._timing),this._id=o,this},e.KeyframeEffect.prototype={getFrames:function(){return"function"==typeof this._normalizedKeyframes?this._normalizedKeyframes:this._normalizedKeyframes._frames},set onsample(t){if("function"==typeof this.getFrames())throw new Error("Setting onsample on custom effect KeyframeEffect is not supported.");this._onsample=t,this._animation&&this._animation._rebuildUnderlyingAnimation()},get parent(){return this._parent},clone:function(){if("function"==typeof this.getFrames())throw new Error("Cloning custom effects is not supported.");var e=new KeyframeEffect(this.target,[],t.cloneTimingInput(this._timingInput),this._id);return e._normalizedKeyframes=this._normalizedKeyframes,e._keyframes=this._keyframes,e},remove:function(){e.removeMulti([this])}};var a=Element.prototype.animate;Element.prototype.animate=function(t,i){var n="";return i&&i.id&&(n=i.id),e.timeline._play(new e.KeyframeEffect(this,t,i,n))};var s=document.createElementNS("http://www.w3.org/1999/xhtml","div");e.newUnderlyingAnimationForKeyframeEffect=function(t){if(t){var e=t.target||s,i=t._keyframes;"function"==typeof i&&(i=[]);var n=t._timingInput;n.id=t._id}else var e=s,i=[],n=0;return a.apply(e,[i,n])},e.bindAnimationForKeyframeEffect=function(t){t.effect&&"function"==typeof t.effect._normalizedKeyframes&&e.bindAnimationForCustomEffect(t)};var u=[];e.awaitStartTime=function(t){null===t.startTime&&t._isGroup&&(0==u.length&&requestAnimationFrame(r),u.push(t))};var c=window.getComputedStyle;Object.defineProperty(window,"getComputedStyle",{configurable:!0,enumerable:!0,value:function(){e.timeline._updateAnimationsPromises();var t=c.apply(this,arguments);return r()&&(t=c.apply(this,arguments)),e.timeline._updateAnimationsPromises(),t}}),window.KeyframeEffect=e.KeyframeEffect,window.Element.prototype.getAnimations=function(){return document.timeline.getAnimations().filter(function(t){return null!==t.effect&&t.effect.target==this}.bind(this))}}(c,e,f),function(t,e,i){function n(t){t._registered||(t._registered=!0,a.push(t),s||(s=!0,requestAnimationFrame(r)))}function r(t){var e=a;a=[],e.sort(function(t,e){return t._sequenceNumber-e._sequenceNumber}),e=e.filter(function(t){t();var e=t._animation?t._animation.playState:"idle";return"running"!=e&&"pending"!=e&&(t._registered=!1),t._registered}),a.push.apply(a,e),a.length?(s=!0,requestAnimationFrame(r)):s=!1}var o=(document.createElementNS("http://www.w3.org/1999/xhtml","div"),0);e.bindAnimationForCustomEffect=function(e){var i,r=e.effect.target,a="function"==typeof e.effect.getFrames();i=a?e.effect.getFrames():e.effect._onsample;var s=e.effect.timing,u=null;s=t.normalizeTimingInput(s);var c=function(){var n=c._animation?c._animation.currentTime:null;null!==n&&(n=t.calculateIterationProgress(t.calculateActiveDuration(s),n,s),isNaN(n)&&(n=null)),n!==u&&(a?i(n,r,e.effect):i(n,e.effect,e.effect._animation)),u=n};c._animation=e,c._registered=!1,c._sequenceNumber=o++,e._callback=c,n(c)};var a=[],s=!1;e.Animation.prototype._register=function(){this._callback&&n(this._callback)}}(c,e,f),function(t,e,i){function n(t){return t._timing.delay+t.activeDuration+t._timing.endDelay}function r(e,i,n){this._id=n,this._parent=null,this.children=e||[],this._reparent(this.children),i=t.numericTimingToObject(i),this._timingInput=t.cloneTimingInput(i),this._timing=t.normalizeTimingInput(i,!0),this.timing=t.makeTiming(i,!0,this),this.timing._effect=this,"auto"===this._timing.duration&&(this._timing.duration=this.activeDuration)}window.SequenceEffect=function(){r.apply(this,arguments)},window.GroupEffect=function(){r.apply(this,arguments)},r.prototype={_isAncestor:function(t){for(var e=this;null!==e;){if(e==t)return!0;e=e._parent}return!1},_rebuild:function(){for(var t=this;t;)"auto"===t.timing.duration&&(t._timing.duration=t.activeDuration),t=t._parent;this._animation&&this._animation._rebuildUnderlyingAnimation()},_reparent:function(t){e.removeMulti(t);for(var i=0;i<t.length;i++)t[i]._parent=this},_putChild:function(t,e){for(var i=e?"Cannot append an ancestor or self":"Cannot prepend an ancestor or self",n=0;n<t.length;n++)if(this._isAncestor(t[n]))throw{type:DOMException.HIERARCHY_REQUEST_ERR,name:"HierarchyRequestError",message:i};for(var n=0;n<t.length;n++)e?this.children.push(t[n]):this.children.unshift(t[n]);this._reparent(t),this._rebuild()},append:function(){this._putChild(arguments,!0)},prepend:function(){this._putChild(arguments,!1)},get parent(){return this._parent},get firstChild(){return this.children.length?this.children[0]:null},get lastChild(){return this.children.length?this.children[this.children.length-1]:null},clone:function(){for(var e=t.cloneTimingInput(this._timingInput),i=[],n=0;n<this.children.length;n++)i.push(this.children[n].clone());return this instanceof GroupEffect?new GroupEffect(i,e):new SequenceEffect(i,e)},remove:function(){e.removeMulti([this])}},window.SequenceEffect.prototype=Object.create(r.prototype),Object.defineProperty(window.SequenceEffect.prototype,"activeDuration",{get:function(){var t=0;return this.children.forEach(function(e){t+=n(e)}),Math.max(t,0)}}),window.GroupEffect.prototype=Object.create(r.prototype),Object.defineProperty(window.GroupEffect.prototype,"activeDuration",{get:function(){var t=0;return this.children.forEach(function(e){t=Math.max(t,n(e))}),t}}),e.newUnderlyingAnimationForGroup=function(i){var n,r=null,o=function(e){var i=n._wrapper;if(i&&"pending"!=i.playState&&i.effect)return null==e?void i._removeChildAnimations():0==e&&i.playbackRate<0&&(r||(r=t.normalizeTimingInput(i.effect.timing)),e=t.calculateIterationProgress(t.calculateActiveDuration(r),-1,r),isNaN(e)||null==e)?(i._forEachChild(function(t){t.currentTime=-1}),void i._removeChildAnimations()):void 0},a=new KeyframeEffect(null,[],i._timing,i._id);return a.onsample=o,n=e.timeline._play(a)},e.bindAnimationForGroup=function(t){t._animation._wrapper=t,t._isGroup=!0,e.awaitStartTime(t),t._constructChildAnimations(),t._setExternalAnimation(t)},e.groupChildDuration=n}(c,e,f),b.true=a}({},function(){return this}())</script><script>Polymer({is:"opaque-animation",behaviors:[Polymer.NeonAnimationBehavior],configure:function(e){var i=e.node;return this._effect=new KeyframeEffect(i,[{opacity:"1"},{opacity:"1"}],this.timingFromConfig(e)),i.style.opacity="0",this._effect},complete:function(e){e.node.style.opacity=""}})</script><script>!function(){"use strict";var e={pageX:0,pageY:0},t=null,l=[];Polymer.IronDropdownScrollManager={get currentLockingElement(){return this._lockingElements[this._lockingElements.length-1]},elementIsScrollLocked:function(e){var t=this.currentLockingElement;if(void 0===t)return!1;var l;return!!this._hasCachedLockedElement(e)||!this._hasCachedUnlockedElement(e)&&(l=!!t&&t!==e&&!this._composedTreeContains(t,e),l?this._lockedElementCache.push(e):this._unlockedElementCache.push(e),l)},pushScrollLock:function(e){this._lockingElements.indexOf(e)>=0||(0===this._lockingElements.length&&this._lockScrollInteractions(),this._lockingElements.push(e),this._lockedElementCache=[],this._unlockedElementCache=[])},removeScrollLock:function(e){var t=this._lockingElements.indexOf(e);t!==-1&&(this._lockingElements.splice(t,1),this._lockedElementCache=[],this._unlockedElementCache=[],0===this._lockingElements.length&&this._unlockScrollInteractions())},_lockingElements:[],_lockedElementCache:null,_unlockedElementCache:null,_hasCachedLockedElement:function(e){return this._lockedElementCache.indexOf(e)>-1},_hasCachedUnlockedElement:function(e){return this._unlockedElementCache.indexOf(e)>-1},_composedTreeContains:function(e,t){var l,n,o,r;if(e.contains(t))return!0;for(l=Polymer.dom(e).querySelectorAll("content"),o=0;o<l.length;++o)for(n=Polymer.dom(l[o]).getDistributedNodes(),r=0;r<n.length;++r)if(this._composedTreeContains(n[r],t))return!0;return!1},_scrollInteractionHandler:function(t){if(t.cancelable&&this._shouldPreventScrolling(t)&&t.preventDefault(),t.targetTouches){var l=t.targetTouches[0];e.pageX=l.pageX,e.pageY=l.pageY}},_lockScrollInteractions:function(){this._boundScrollHandler=this._boundScrollHandler||this._scrollInteractionHandler.bind(this),document.addEventListener("wheel",this._boundScrollHandler,!0),document.addEventListener("mousewheel",this._boundScrollHandler,!0),document.addEventListener("DOMMouseScroll",this._boundScrollHandler,!0),document.addEventListener("touchstart",this._boundScrollHandler,!0),document.addEventListener("touchmove",this._boundScrollHandler,!0)},_unlockScrollInteractions:function(){document.removeEventListener("wheel",this._boundScrollHandler,!0),document.removeEventListener("mousewheel",this._boundScrollHandler,!0),document.removeEventListener("DOMMouseScroll",this._boundScrollHandler,!0),document.removeEventListener("touchstart",this._boundScrollHandler,!0),document.removeEventListener("touchmove",this._boundScrollHandler,!0)},_shouldPreventScrolling:function(e){var n=Polymer.dom(e).rootTarget;if("touchmove"!==e.type&&t!==n&&(t=n,l=this._getScrollableNodes(Polymer.dom(e).path)),!l.length)return!0;if("touchstart"===e.type)return!1;var o=this._getScrollInfo(e);return!this._getScrollingNode(l,o.deltaX,o.deltaY)},_getScrollableNodes:function(e){for(var t=[],l=e.indexOf(this.currentLockingElement),n=0;n<=l;n++){var o=e[n];if(11!==o.nodeType){var r=o.style;"scroll"!==r.overflow&&"auto"!==r.overflow&&(r=window.getComputedStyle(o)),"scroll"!==r.overflow&&"auto"!==r.overflow||t.push(o)}}return t},_getScrollingNode:function(e,t,l){if(t||l)for(var n=Math.abs(l)>=Math.abs(t),o=0;o<e.length;o++){var r=e[o],c=!1;if(c=n?l<0?r.scrollTop>0:r.scrollTop<r.scrollHeight-r.clientHeight:t<0?r.scrollLeft>0:r.scrollLeft<r.scrollWidth-r.clientWidth)return r}},_getScrollInfo:function(t){var l={deltaX:t.deltaX,deltaY:t.deltaY};if("deltaX"in t);else if("wheelDeltaX"in t)l.deltaX=-t.wheelDeltaX,l.deltaY=-t.wheelDeltaY;else if("axis"in t)l.deltaX=1===t.axis?t.detail:0,l.deltaY=2===t.axis?t.detail:0;else if(t.targetTouches){var n=t.targetTouches[0];l.deltaX=e.pageX-n.pageX,l.deltaY=e.pageY-n.pageY}return l}}}()</script><dom-module id="iron-dropdown" assetpath="../bower_components/iron-dropdown/"><template><style>:host{position:fixed}#contentWrapper ::content>*{overflow:auto}#contentWrapper.animating ::content>*{overflow:hidden}</style><div id="contentWrapper"><content id="content" select=".dropdown-content"></content></div></template><script>!function(){"use strict";Polymer({is:"iron-dropdown",behaviors:[Polymer.IronControlState,Polymer.IronA11yKeysBehavior,Polymer.IronOverlayBehavior,Polymer.NeonAnimationRunnerBehavior],properties:{horizontalAlign:{type:String,value:"left",reflectToAttribute:!0},verticalAlign:{type:String,value:"top",reflectToAttribute:!0},openAnimationConfig:{type:Object},closeAnimationConfig:{type:Object},focusTarget:{type:Object},noAnimations:{type:Boolean,value:!1},allowOutsideScroll:{type:Boolean,value:!1},_boundOnCaptureScroll:{type:Function,value:function(){return this._onCaptureScroll.bind(this)}}},listeners:{"neon-animation-finish":"_onNeonAnimationFinish"},observers:["_updateOverlayPosition(positionTarget, verticalAlign, horizontalAlign, verticalOffset, horizontalOffset)"],get containedElement(){return Polymer.dom(this.$.content).getDistributedNodes()[0]},get _focusTarget(){return this.focusTarget||this.containedElement},ready:function(){this._scrollTop=0,this._scrollLeft=0,this._refitOnScrollRAF=null},attached:function(){this.sizingTarget&&this.sizingTarget!==this||(this.sizingTarget=this.containedElement)},detached:function(){this.cancelAnimation(),document.removeEventListener("scroll",this._boundOnCaptureScroll),Polymer.IronDropdownScrollManager.removeScrollLock(this)},_openedChanged:function(){this.opened&&this.disabled?this.cancel():(this.cancelAnimation(),this._updateAnimationConfig(),this._saveScrollPosition(),this.opened?(document.addEventListener("scroll",this._boundOnCaptureScroll),!this.allowOutsideScroll&&Polymer.IronDropdownScrollManager.pushScrollLock(this)):(document.removeEventListener("scroll",this._boundOnCaptureScroll),Polymer.IronDropdownScrollManager.removeScrollLock(this)),Polymer.IronOverlayBehaviorImpl._openedChanged.apply(this,arguments))},_renderOpened:function(){!this.noAnimations&&this.animationConfig.open?(this.$.contentWrapper.classList.add("animating"),this.playAnimation("open")):Polymer.IronOverlayBehaviorImpl._renderOpened.apply(this,arguments)},_renderClosed:function(){!this.noAnimations&&this.animationConfig.close?(this.$.contentWrapper.classList.add("animating"),this.playAnimation("close")):Polymer.IronOverlayBehaviorImpl._renderClosed.apply(this,arguments)},_onNeonAnimationFinish:function(){this.$.contentWrapper.classList.remove("animating"),this.opened?this._finishRenderOpened():this._finishRenderClosed()},_onCaptureScroll:function(){this.allowOutsideScroll?(this._refitOnScrollRAF&&window.cancelAnimationFrame(this._refitOnScrollRAF),this._refitOnScrollRAF=window.requestAnimationFrame(this.refit.bind(this))):this._restoreScrollPosition()},_saveScrollPosition:function(){document.scrollingElement?(this._scrollTop=document.scrollingElement.scrollTop,this._scrollLeft=document.scrollingElement.scrollLeft):(this._scrollTop=Math.max(document.documentElement.scrollTop,document.body.scrollTop),this._scrollLeft=Math.max(document.documentElement.scrollLeft,document.body.scrollLeft))},_restoreScrollPosition:function(){document.scrollingElement?(document.scrollingElement.scrollTop=this._scrollTop,document.scrollingElement.scrollLeft=this._scrollLeft):(document.documentElement.scrollTop=this._scrollTop,document.documentElement.scrollLeft=this._scrollLeft,document.body.scrollTop=this._scrollTop,document.body.scrollLeft=this._scrollLeft)},_updateAnimationConfig:function(){for(var o=(this.openAnimationConfig||[]).concat(this.closeAnimationConfig||[]),t=0;t<o.length;t++)o[t].node=this.containedElement;this.animationConfig={open:this.openAnimationConfig,close:this.closeAnimationConfig}},_updateOverlayPosition:function(){this.isAttached&&this.notifyResize()},_applyFocus:function(){var o=this.focusTarget||this.containedElement;o&&this.opened&&!this.noAutoFocus?o.focus():Polymer.IronOverlayBehaviorImpl._applyFocus.apply(this,arguments)}})}()</script></dom-module><script>Polymer({is:"fade-in-animation",behaviors:[Polymer.NeonAnimationBehavior],configure:function(i){var e=i.node;return this._effect=new KeyframeEffect(e,[{opacity:"0"},{opacity:"1"}],this.timingFromConfig(i)),this._effect}})</script><script>Polymer({is:"fade-out-animation",behaviors:[Polymer.NeonAnimationBehavior],configure:function(e){var i=e.node;return this._effect=new KeyframeEffect(i,[{opacity:"1"},{opacity:"0"}],this.timingFromConfig(e)),this._effect}})</script><script>Polymer({is:"paper-menu-grow-height-animation",behaviors:[Polymer.NeonAnimationBehavior],configure:function(e){var i=e.node,t=i.getBoundingClientRect(),n=t.height;return this._effect=new KeyframeEffect(i,[{height:n/2+"px"},{height:n+"px"}],this.timingFromConfig(e)),this._effect}}),Polymer({is:"paper-menu-grow-width-animation",behaviors:[Polymer.NeonAnimationBehavior],configure:function(e){var i=e.node,t=i.getBoundingClientRect(),n=t.width;return this._effect=new KeyframeEffect(i,[{width:n/2+"px"},{width:n+"px"}],this.timingFromConfig(e)),this._effect}}),Polymer({is:"paper-menu-shrink-width-animation",behaviors:[Polymer.NeonAnimationBehavior],configure:function(e){var i=e.node,t=i.getBoundingClientRect(),n=t.width;return this._effect=new KeyframeEffect(i,[{width:n+"px"},{width:n-n/20+"px"}],this.timingFromConfig(e)),this._effect}}),Polymer({is:"paper-menu-shrink-height-animation",behaviors:[Polymer.NeonAnimationBehavior],configure:function(e){var i=e.node,t=i.getBoundingClientRect(),n=t.height;t.top;return this.setPrefixedProperty(i,"transformOrigin","0 0"),this._effect=new KeyframeEffect(i,[{height:n+"px",transform:"translateY(0)"},{height:n/2+"px",transform:"translateY(-20px)"}],this.timingFromConfig(e)),this._effect}})</script><dom-module id="paper-menu-button" assetpath="../bower_components/paper-menu-button/"><template><style>:host{display:inline-block;position:relative;padding:8px;outline:0;@apply(--paper-menu-button)}:host([disabled]){cursor:auto;color:var(--disabled-text-color);@apply(--paper-menu-button-disabled)}iron-dropdown{@apply(--paper-menu-button-dropdown)}.dropdown-content{@apply(--shadow-elevation-2dp);position:relative;border-radius:2px;background-color:var(--paper-menu-button-dropdown-background,--primary-background-color);@apply(--paper-menu-button-content)}:host([vertical-align=top]) .dropdown-content{margin-bottom:20px;margin-top:-10px;top:10px}:host([vertical-align=bottom]) .dropdown-content{bottom:10px;margin-bottom:-10px;margin-top:20px}#trigger{cursor:pointer}</style><div id="trigger" on-tap="toggle"><content select=".dropdown-trigger"></content></div><iron-dropdown id="dropdown" opened="{{opened}}" horizontal-align="[[horizontalAlign]]" vertical-align="[[verticalAlign]]" dynamic-align="[[dynamicAlign]]" horizontal-offset="[[horizontalOffset]]" vertical-offset="[[verticalOffset]]" no-overlap="[[noOverlap]]" open-animation-config="[[openAnimationConfig]]" close-animation-config="[[closeAnimationConfig]]" no-animations="[[noAnimations]]" focus-target="[[_dropdownContent]]" allow-outside-scroll="[[allowOutsideScroll]]" restore-focus-on-close="[[restoreFocusOnClose]]" on-iron-overlay-canceled="__onIronOverlayCanceled"><div class="dropdown-content"><content id="content" select=".dropdown-content"></content></div></iron-dropdown></template><script>!function(){"use strict";var e={ANIMATION_CUBIC_BEZIER:"cubic-bezier(.3,.95,.5,1)",MAX_ANIMATION_TIME_MS:400},n=Polymer({is:"paper-menu-button",behaviors:[Polymer.IronA11yKeysBehavior,Polymer.IronControlState],properties:{opened:{type:Boolean,value:!1,notify:!0,observer:"_openedChanged"},horizontalAlign:{type:String,value:"left",reflectToAttribute:!0},verticalAlign:{type:String,value:"top",reflectToAttribute:!0},dynamicAlign:{type:Boolean},horizontalOffset:{type:Number,value:0,notify:!0},verticalOffset:{type:Number,value:0,notify:!0},noOverlap:{type:Boolean},noAnimations:{type:Boolean,value:!1},ignoreSelect:{type:Boolean,value:!1},closeOnActivate:{type:Boolean,value:!1},openAnimationConfig:{type:Object,value:function(){return[{name:"fade-in-animation",timing:{delay:100,duration:200}},{name:"paper-menu-grow-width-animation",timing:{delay:100,duration:150,easing:e.ANIMATION_CUBIC_BEZIER}},{name:"paper-menu-grow-height-animation",timing:{delay:100,duration:275,easing:e.ANIMATION_CUBIC_BEZIER}}]}},closeAnimationConfig:{type:Object,value:function(){return[{name:"fade-out-animation",timing:{duration:150}},{name:"paper-menu-shrink-width-animation",timing:{delay:100,duration:50,easing:e.ANIMATION_CUBIC_BEZIER}},{name:"paper-menu-shrink-height-animation",timing:{duration:200,easing:"ease-in"}}]}},allowOutsideScroll:{type:Boolean,value:!1},restoreFocusOnClose:{type:Boolean,value:!0},_dropdownContent:{type:Object}},hostAttributes:{role:"group","aria-haspopup":"true"},listeners:{"iron-activate":"_onIronActivate","iron-select":"_onIronSelect"},get contentElement(){return Polymer.dom(this.$.content).getDistributedNodes()[0]},toggle:function(){this.opened?this.close():this.open()},open:function(){this.disabled||this.$.dropdown.open()},close:function(){this.$.dropdown.close()},_onIronSelect:function(e){this.ignoreSelect||this.close()},_onIronActivate:function(e){this.closeOnActivate&&this.close()},_openedChanged:function(e,n){e?(this._dropdownContent=this.contentElement,this.fire("paper-dropdown-open")):null!=n&&this.fire("paper-dropdown-close")},_disabledChanged:function(e){Polymer.IronControlState._disabledChanged.apply(this,arguments),e&&this.opened&&this.close()},__onIronOverlayCanceled:function(e){var n=e.detail,t=(Polymer.dom(n).rootTarget,this.$.trigger),o=Polymer.dom(n).path;o.indexOf(t)>-1&&e.preventDefault()}});Object.keys(e).forEach(function(t){n[t]=e[t]}),Polymer.PaperMenuButton=n}()</script></dom-module><iron-iconset-svg name="paper-dropdown-menu" size="24"><svg><defs><g id="arrow-drop-down"><path d="M7 10l5 5 5-5z"></path></g></defs></svg></iron-iconset-svg><dom-module id="paper-dropdown-menu-shared-styles" assetpath="../bower_components/paper-dropdown-menu/"><template><style>:host{display:inline-block;position:relative;text-align:left;-webkit-tap-highlight-color:transparent;-webkit-tap-highlight-color:transparent;--paper-input-container-input:{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;max-width:100%;box-sizing:border-box;cursor:pointer};@apply(--paper-dropdown-menu)}:host([disabled]){@apply(--paper-dropdown-menu-disabled)}:host([noink]) paper-ripple{display:none}:host([no-label-float]) paper-ripple{top:8px}paper-ripple{top:12px;left:0;bottom:8px;right:0;@apply(--paper-dropdown-menu-ripple)}paper-menu-button{display:block;padding:0;@apply(--paper-dropdown-menu-button)}paper-input{@apply(--paper-dropdown-menu-input)}iron-icon{color:var(--disabled-text-color);@apply(--paper-dropdown-menu-icon)}</style></template></dom-module><dom-module id="paper-dropdown-menu" assetpath="../bower_components/paper-dropdown-menu/"><template><style include="paper-dropdown-menu-shared-styles"></style><span role="button"></span><paper-menu-button id="menuButton" vertical-align="[[verticalAlign]]" horizontal-align="[[horizontalAlign]]" dynamic-align="[[dynamicAlign]]" vertical-offset="[[_computeMenuVerticalOffset(noLabelFloat)]]" disabled="[[disabled]]" no-animations="[[noAnimations]]" on-iron-select="_onIronSelect" on-iron-deselect="_onIronDeselect" opened="{{opened}}" close-on-activate="" allow-outside-scroll="[[allowOutsideScroll]]"><div class="dropdown-trigger"><paper-ripple></paper-ripple><paper-input type="text" invalid="[[invalid]]" readonly="" disabled="[[disabled]]" value="[[selectedItemLabel]]" placeholder="[[placeholder]]" error-message="[[errorMessage]]" always-float-label="[[alwaysFloatLabel]]" no-label-float="[[noLabelFloat]]" label="[[label]]"><iron-icon icon="paper-dropdown-menu:arrow-drop-down" suffix=""></iron-icon></paper-input></div><content id="content" select=".dropdown-content"></content></paper-menu-button></template><script>!function(){"use strict";Polymer({is:"paper-dropdown-menu",behaviors:[Polymer.IronButtonState,Polymer.IronControlState,Polymer.IronFormElementBehavior,Polymer.IronValidatableBehavior],properties:{selectedItemLabel:{type:String,notify:!0,readOnly:!0},selectedItem:{type:Object,notify:!0,readOnly:!0},value:{type:String,notify:!0,readOnly:!0},label:{type:String},placeholder:{type:String},errorMessage:{type:String},opened:{type:Boolean,notify:!0,value:!1,observer:"_openedChanged"},allowOutsideScroll:{type:Boolean,value:!1},noLabelFloat:{type:Boolean,value:!1,reflectToAttribute:!0},alwaysFloatLabel:{type:Boolean,value:!1},noAnimations:{type:Boolean,value:!1},horizontalAlign:{type:String,value:"right"},verticalAlign:{type:String,value:"top"},dynamicAlign:{type:Boolean}},listeners:{tap:"_onTap"},keyBindings:{"up down":"open",esc:"close"},hostAttributes:{role:"combobox","aria-autocomplete":"none","aria-haspopup":"true"},observers:["_selectedItemChanged(selectedItem)"],attached:function(){var e=this.contentElement;e&&e.selectedItem&&this._setSelectedItem(e.selectedItem)},get contentElement(){return Polymer.dom(this.$.content).getDistributedNodes()[0]},open:function(){this.$.menuButton.open()},close:function(){this.$.menuButton.close()},_onIronSelect:function(e){this._setSelectedItem(e.detail.item)},_onIronDeselect:function(e){this._setSelectedItem(null)},_onTap:function(e){Polymer.Gestures.findOriginalTarget(e)===this&&this.open()},_selectedItemChanged:function(e){var t="";t=e?e.label||e.getAttribute("label")||e.textContent.trim():"",this._setValue(t),this._setSelectedItemLabel(t)},_computeMenuVerticalOffset:function(e){return e?-4:8},_getValidity:function(e){return this.disabled||!this.required||this.required&&!!this.value},_openedChanged:function(){var e=this.opened?"true":"false",t=this.contentElement;t&&t.setAttribute("aria-expanded",e)}})}()</script></dom-module><dom-module id="paper-menu-shared-styles" assetpath="../bower_components/paper-menu/"><template><style>.selectable-content>::content>.iron-selected{font-weight:700;@apply(--paper-menu-selected-item)}.selectable-content>::content>[disabled]{color:var(--paper-menu-disabled-color,--disabled-text-color)}.selectable-content>::content>:focus{position:relative;outline:0;@apply(--paper-menu-focused-item)}.selectable-content>::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="../bower_components/paper-menu/"><template><style include="paper-menu-shared-styles"></style><style>:host{display:block;padding:8px 0;background:var(--paper-menu-background-color,--primary-background-color);color:var(--paper-menu-color,--primary-text-color);@apply(--paper-menu)}</style><div class="selectable-content"><content></content></div></template><script>!function(){Polymer({is:"paper-menu",behaviors:[Polymer.IronMenuBehavior]})}()</script></dom-module><script>Polymer.PaperItemBehaviorImpl={hostAttributes:{role:"option",tabindex:"0"}},Polymer.PaperItemBehavior=[Polymer.IronButtonState,Polymer.IronControlState,Polymer.PaperItemBehaviorImpl]</script><dom-module id="paper-item-shared-styles" assetpath="../bower_components/paper-item/"><template><style>.paper-item,:host{display:block;position:relative;min-height:var(--paper-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[hidden],:host([hidden]){display:none!important}.paper-item.iron-selected,:host(.iron-selected){font-weight:var(--paper-item-selected-weight,bold);@apply(--paper-item-selected)}.paper-item[disabled],:host([disabled]){color:var(--paper-item-disabled-color,--disabled-text-color);@apply(--paper-item-disabled)}.paper-item:focus,:host(:focus){position:relative;outline:0;@apply(--paper-item-focused)}.paper-item:focus:before,:host(:focus):before{@apply(--layout-fit);background:currentColor;content:'';opacity:var(--dark-divider-opacity);pointer-events:none;@apply(--paper-item-focused-before)}</style></template></dom-module><dom-module id="paper-item" assetpath="../bower_components/paper-item/"><template><style include="paper-item-shared-styles"></style><style>:host{@apply(--layout-horizontal);@apply(--layout-center);@apply(--paper-font-subhead);@apply(--paper-item)}</style><content></content></template><script>Polymer({is:"paper-item",behaviors:[Polymer.PaperItemBehavior]})</script></dom-module><dom-module id="state-card-input_select" assetpath="state-summary/"><template><style>:host{display:block}state-badge{float:left;margin-top:10px}paper-dropdown-menu{display:block;margin-left:53px}</style><state-badge state-obj="[[stateObj]]"></state-badge><paper-dropdown-menu on-tap="stopPropagation" selected-item-label="{{selectedOption}}" label="[[stateObj.entityDisplay]]"><paper-menu class="dropdown-content" selected="[[computeSelected(stateObj)]]"><template is="dom-repeat" items="[[stateObj.attributes.options]]"><paper-item>[[item]]</paper-item></template></paper-menu></paper-dropdown-menu></template></dom-module><script>Polymer({is:"state-card-input_select",properties:{hass:{type:Object},inDialog:{type:Boolean,value:!1},stateObj:{type:Object},selectedOption:{type:String,observer:"selectedOptionChanged"}},computeSelected:function(t){return t.attributes.options.indexOf(t.state)},selectedOptionChanged:function(t){""!==t&&t!==this.stateObj.state&&this.hass.serviceActions.callService("input_select","select_option",{option:t,entity_id:this.stateObj.entityId})},stopPropagation:function(t){t.stopPropagation()}})</script><script>Polymer.IronRangeBehavior={properties:{value:{type:Number,value:0,notify:!0,reflectToAttribute:!0},min:{type:Number,value:0,notify:!0},max:{type:Number,value:100,notify:!0},step:{type:Number,value:1,notify:!0},ratio:{type:Number,value:0,readOnly:!0,notify:!0}},observers:["_update(value, min, max, step)"],_calcRatio:function(t){return(this._clampValue(t)-this.min)/(this.max-this.min)},_clampValue:function(t){return Math.min(this.max,Math.max(this.min,this._calcStep(t)))},_calcStep:function(t){if(t=parseFloat(t),!this.step)return t;var e=Math.round((t-this.min)/this.step);return this.step<1?e/(1/this.step)+this.min:e*this.step+this.min},_validateValue:function(){var t=this._clampValue(this.value);return this.value=this.oldValue=isNaN(t)?this.oldValue:t,this.value!==t},_update:function(){this._validateValue(),this._setRatio(100*this._calcRatio(this.value))}}</script><dom-module id="paper-progress" assetpath="../bower_components/paper-progress/"><template><style>:host{display:block;width:200px;position:relative;overflow:hidden}:host([hidden]){display:none!important}#progressContainer{@apply(--paper-progress-container);position:relative}#progressContainer,.indeterminate::after{height:var(--paper-progress-height,4px)}#primaryProgress,#secondaryProgress,.indeterminate::after{@apply(--layout-fit)}#progressContainer,.indeterminate::after{background:var(--paper-progress-container-color,--google-grey-300)}:host(.transiting) #primaryProgress,:host(.transiting) #secondaryProgress{-webkit-transition-property:-webkit-transform;transition-property:transform;-webkit-transition-duration:var(--paper-progress-transition-duration,.08s);transition-duration:var(--paper-progress-transition-duration,.08s);-webkit-transition-timing-function:var(--paper-progress-transition-timing-function,ease);transition-timing-function:var(--paper-progress-transition-timing-function,ease);-webkit-transition-delay:var(--paper-progress-transition-delay,0s);transition-delay:var(--paper-progress-transition-delay,0s)}#primaryProgress,#secondaryProgress{@apply(--layout-fit);-webkit-transform-origin:left center;transform-origin:left center;-webkit-transform:scaleX(0);transform:scaleX(0);will-change:transform}#primaryProgress{background:var(--paper-progress-active-color,--google-green-500)}#secondaryProgress{background:var(--paper-progress-secondary-color,--google-green-100)}:host([disabled]) #primaryProgress{background:var(--paper-progress-disabled-active-color,--google-grey-500)}:host([disabled]) #secondaryProgress{background:var(--paper-progress-disabled-secondary-color,--google-grey-300)}:host(:not([disabled])) #primaryProgress.indeterminate{-webkit-transform-origin:right center;transform-origin:right center;-webkit-animation:indeterminate-bar var(--paper-progress-indeterminate-cycle-duration,2s) linear infinite;animation:indeterminate-bar var(--paper-progress-indeterminate-cycle-duration,2s) linear infinite}:host(:not([disabled])) #primaryProgress.indeterminate::after{content:"";-webkit-transform-origin:center center;transform-origin:center center;-webkit-animation:indeterminate-splitter var(--paper-progress-indeterminate-cycle-duration,2s) linear infinite;animation:indeterminate-splitter var(--paper-progress-indeterminate-cycle-duration,2s) linear infinite}@-webkit-keyframes indeterminate-bar{0%{-webkit-transform:scaleX(1) translateX(-100%)}50%{-webkit-transform:scaleX(1) translateX(0)}75%{-webkit-transform:scaleX(1) translateX(0);-webkit-animation-timing-function:cubic-bezier(.28,.62,.37,.91)}100%{-webkit-transform:scaleX(0) translateX(0)}}@-webkit-keyframes indeterminate-splitter{0%{-webkit-transform:scaleX(.75) translateX(-125%)}30%{-webkit-transform:scaleX(.75) translateX(-125%);-webkit-animation-timing-function:cubic-bezier(.42,0,.6,.8)}90%{-webkit-transform:scaleX(.75) translateX(125%)}100%{-webkit-transform:scaleX(.75) translateX(125%)}}@keyframes indeterminate-bar{0%{transform:scaleX(1) translateX(-100%)}50%{transform:scaleX(1) translateX(0)}75%{transform:scaleX(1) translateX(0);animation-timing-function:cubic-bezier(.28,.62,.37,.91)}100%{transform:scaleX(0) translateX(0)}}@keyframes indeterminate-splitter{0%{transform:scaleX(.75) translateX(-125%)}30%{transform:scaleX(.75) translateX(-125%);animation-timing-function:cubic-bezier(.42,0,.6,.8)}90%{transform:scaleX(.75) translateX(125%)}100%{transform:scaleX(.75) translateX(125%)}}</style><div id="progressContainer"><div id="secondaryProgress" hidden$="[[_hideSecondaryProgress(secondaryRatio)]]"></div><div id="primaryProgress"></div></div></template></dom-module><script>Polymer({is:"paper-progress",behaviors:[Polymer.IronRangeBehavior],properties:{secondaryProgress:{type:Number,value:0},secondaryRatio:{type:Number,value:0,readOnly:!0},indeterminate:{type:Boolean,value:!1,observer:"_toggleIndeterminate"},disabled:{type:Boolean,value:!1,reflectToAttribute:!0,observer:"_disabledChanged"}},observers:["_progressChanged(secondaryProgress, value, min, max)"],hostAttributes:{role:"progressbar"},_toggleIndeterminate:function(e){this.toggleClass("indeterminate",e,this.$.primaryProgress)},_transformProgress:function(e,r){var s="scaleX("+r/100+")";e.style.transform=e.style.webkitTransform=s},_mainRatioChanged:function(e){this._transformProgress(this.$.primaryProgress,e)},_progressChanged:function(e,r,s,t){e=this._clampValue(e),r=this._clampValue(r);var a=100*this._calcRatio(e),i=100*this._calcRatio(r);this._setSecondaryRatio(a),this._transformProgress(this.$.secondaryProgress,a),this._transformProgress(this.$.primaryProgress,i),this.secondaryProgress=e,this.setAttribute("aria-valuenow",r),this.setAttribute("aria-valuemin",s),this.setAttribute("aria-valuemax",t)},_disabledChanged:function(e){this.setAttribute("aria-disabled",e?"true":"false")},_hideSecondaryProgress:function(e){return 0===e}})</script><dom-module id="paper-slider" assetpath="../bower_components/paper-slider/"><template strip-whitespace=""><style>:host{@apply(--layout);@apply(--layout-justified);@apply(--layout-center);width:200px;cursor:default;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;--paper-progress-active-color:var(--paper-slider-active-color, --google-blue-700);--paper-progress-secondary-color:var(--paper-slider-secondary-color, --google-blue-300);--paper-progress-disabled-active-color:var(--paper-slider-disabled-active-color, --paper-grey-400);--paper-progress-disabled-secondary-color:var(--paper-slider-disabled-secondary-color, --paper-grey-400)}:host(:focus){outline:0}#sliderContainer{position:relative;width:100%;height:calc(30px + var(--paper-slider-height,2px));margin-left:calc(15px + var(--paper-slider-height,2px)/ 2);margin-right:calc(15px + var(--paper-slider-height,2px)/ 2)}#sliderContainer:focus{outline:0}#sliderContainer.editable{margin-top:12px;margin-bottom:12px}.bar-container{position:absolute;top:0;bottom:0;left:0;right:0;overflow:hidden}.ring>.bar-container{left:calc(5px + var(--paper-slider-height,2px)/ 2);transition:left .18s ease}.ring.expand.dragging>.bar-container{transition:none}.ring.expand:not(.pin)>.bar-container{left:calc(8px + var(--paper-slider-height,2px)/ 2)}#sliderBar{padding:15px 0;width:100%;background-color:var(--paper-slider-bar-color,transparent);--paper-progress-container-color:var(--paper-slider-container-color, --paper-grey-400);--paper-progress-height:var(--paper-slider-height, 2px)}.slider-markers{position:absolute;top:calc(14px + var(--paper-slider-height,2px)/ 2);height:var(--paper-slider-height,2px);left:0;right:-1px;box-sizing:border-box;pointer-events:none;@apply(--layout-horizontal)}.slider-marker{@apply(--layout-flex)}.slider-marker::after,.slider-markers::after{content:"";display:block;margin-left:-1px;width:2px;height:2px;border-radius:50%;background-color:#000}#sliderKnob{position:absolute;left:0;top:0;margin-left:calc(-15px - var(--paper-slider-height,2px)/ 2);width:calc(30px + var(--paper-slider-height,2px));height:calc(30px + var(--paper-slider-height,2px))}.transiting>#sliderKnob{transition:left 80ms ease}#sliderKnob:focus{outline:0}#sliderKnob.dragging{transition:none}.snaps>#sliderKnob.dragging{transition:-webkit-transform 80ms ease;transition:transform 80ms ease}#sliderKnobInner{margin:10px;width:calc(100% - 20px);height:calc(100% - 20px);background-color:var(--paper-slider-knob-color,--google-blue-700);border:2px solid var(--paper-slider-knob-color,--google-blue-700);border-radius:50%;-moz-box-sizing:border-box;box-sizing:border-box;transition-property:-webkit-transform,background-color,border;transition-property:transform,background-color,border;transition-duration:.18s;transition-timing-function:ease}.expand:not(.pin)>#sliderKnob>#sliderKnobInner{-webkit-transform:scale(1.5);transform:scale(1.5)}.ring>#sliderKnob>#sliderKnobInner{background-color:var(--paper-slider-knob-start-color,transparent);border:2px solid var(--paper-slider-knob-start-border-color,--paper-grey-400)}#sliderKnobInner::before{background-color:var(--paper-slider-pin-color,--google-blue-700)}.pin>#sliderKnob>#sliderKnobInner::before{content:"";position:absolute;top:0;left:50%;margin-left:-13px;width:26px;height:26px;border-radius:50% 50% 50% 0;-webkit-transform:rotate(-45deg) scale(0) translate(0);transform:rotate(-45deg) scale(0) translate(0)}#sliderKnobInner::after,#sliderKnobInner::before{transition:-webkit-transform .18s ease,background-color .18s ease;transition:transform .18s ease,background-color .18s ease}.pin.ring>#sliderKnob>#sliderKnobInner::before{background-color:var(--paper-slider-pin-start-color,--paper-grey-400)}.pin.expand>#sliderKnob>#sliderKnobInner::before{-webkit-transform:rotate(-45deg) scale(1) translate(17px,-17px);transform:rotate(-45deg) scale(1) translate(17px,-17px)}.pin>#sliderKnob>#sliderKnobInner::after{content:attr(value);position:absolute;top:0;left:50%;margin-left:-16px;width:32px;height:26px;text-align:center;color:var(--paper-slider-font-color,#fff);font-size:10px;-webkit-transform:scale(0) translate(0);transform:scale(0) translate(0)}.pin.expand>#sliderKnob>#sliderKnobInner::after{-webkit-transform:scale(1) translate(0,-17px);transform:scale(1) translate(0,-17px)}.slider-input{width:50px;overflow:hidden;--paper-input-container-input:{text-align:center};@apply(--paper-slider-input)}#sliderContainer.disabled{pointer-events:none}.disabled>#sliderKnob>#sliderKnobInner{background-color:var(--paper-slider-disabled-knob-color,--paper-grey-400);border:2px solid var(--paper-slider-disabled-knob-color,--paper-grey-400);-webkit-transform:scale3d(.75,.75,1);transform:scale3d(.75,.75,1)}.disabled.ring>#sliderKnob>#sliderKnobInner{background-color:var(--paper-slider-knob-start-color,transparent);border:2px solid var(--paper-slider-knob-start-border-color,--paper-grey-400)}paper-ripple{color:var(--paper-slider-knob-color,--google-blue-700)}</style><div id="sliderContainer" class$="[[_getClassNames(disabled, pin, snaps, immediateValue, min, expand, dragging, transiting, editable)]]"><div class="bar-container"><paper-progress disabled$="[[disabled]]" id="sliderBar" aria-hidden="true" min="[[min]]" max="[[max]]" step="[[step]]" value="[[immediateValue]]" secondary-progress="[[secondaryProgress]]" on-down="_bardown" on-up="_resetKnob" on-track="_onTrack"></paper-progress></div><template is="dom-if" if="[[snaps]]"><div class="slider-markers"><template is="dom-repeat" items="[[markers]]"><div class="slider-marker"></div></template></div></template><div id="sliderKnob" on-down="_knobdown" on-up="_resetKnob" on-track="_onTrack" on-transitionend="_knobTransitionEnd"><div id="sliderKnobInner" value$="[[immediateValue]]"></div></div></div><template is="dom-if" if="[[editable]]"><paper-input id="input" type="number" step="[[step]]" min="[[min]]" max="[[max]]" class="slider-input" disabled$="[[disabled]]" value="[[immediateValue]]" on-change="_changeValue" on-keydown="_inputKeyDown" no-label-float=""></paper-input></template></template><script>Polymer({is:"paper-slider",behaviors:[Polymer.IronA11yKeysBehavior,Polymer.IronFormElementBehavior,Polymer.PaperInkyFocusBehavior,Polymer.IronRangeBehavior],properties:{snaps:{type:Boolean,value:!1,notify:!0},pin:{type:Boolean,value:!1,notify:!0},secondaryProgress:{type:Number,value:0,notify:!0,observer:"_secondaryProgressChanged"},editable:{type:Boolean,value:!1},immediateValue:{type:Number,value:0,readOnly:!0,notify:!0},maxMarkers:{type:Number,value:0,notify:!0},expand:{type:Boolean,value:!1,readOnly:!0},dragging:{type:Boolean,value:!1,readOnly:!0},transiting:{type:Boolean,value:!1,readOnly:!0},markers:{type:Array,readOnly:!0,value:[]}},observers:["_updateKnob(value, min, max, snaps, step)","_valueChanged(value)","_immediateValueChanged(immediateValue)","_updateMarkers(maxMarkers, min, max, snaps)"],hostAttributes:{role:"slider",tabindex:0},keyBindings:{"left down pagedown home":"_decrementKey","right up pageup end":"_incrementKey"},increment:function(){this.value=this._clampValue(this.value+this.step)},decrement:function(){this.value=this._clampValue(this.value-this.step)},_updateKnob:function(t,e,i,s,a){this.setAttribute("aria-valuemin",e),this.setAttribute("aria-valuemax",i),this.setAttribute("aria-valuenow",t),this._positionKnob(this._calcRatio(t))},_valueChanged:function(){this.fire("value-change")},_immediateValueChanged:function(){this.dragging?this.fire("immediate-value-change"):this.value=this.immediateValue},_secondaryProgressChanged:function(){this.secondaryProgress=this._clampValue(this.secondaryProgress)},_expandKnob:function(){this._setExpand(!0)},_resetKnob:function(){this.cancelDebouncer("expandKnob"),this._setExpand(!1)},_positionKnob:function(t){this._setImmediateValue(this._calcStep(this._calcKnobPosition(t))),this._setRatio(this._calcRatio(this.immediateValue)),this.$.sliderKnob.style.left=100*this.ratio+"%",this.dragging&&(this._knobstartx=this.ratio*this._w,this.translate3d(0,0,0,this.$.sliderKnob))},_calcKnobPosition:function(t){return(this.max-this.min)*t+this.min},_onTrack:function(t){switch(t.stopPropagation(),t.detail.state){case"start":this._trackStart(t);break;case"track":this._trackX(t);break;case"end":this._trackEnd()}},_trackStart:function(t){this._w=this.$.sliderBar.offsetWidth,this._x=this.ratio*this._w,this._startx=this._x,this._knobstartx=this._startx,this._minx=-this._startx,this._maxx=this._w-this._startx,this.$.sliderKnob.classList.add("dragging"),this._setDragging(!0)},_trackX:function(t){this.dragging||this._trackStart(t);var e=Math.min(this._maxx,Math.max(this._minx,t.detail.dx));this._x=this._startx+e;var i=this._calcStep(this._calcKnobPosition(this._x/this._w));this._setImmediateValue(i);var s=this._calcRatio(this.immediateValue)*this._w-this._knobstartx;this.translate3d(s+"px",0,0,this.$.sliderKnob)},_trackEnd:function(){var t=this.$.sliderKnob.style;this.$.sliderKnob.classList.remove("dragging"),this._setDragging(!1),this._resetKnob(),this.value=this.immediateValue,t.transform=t.webkitTransform="",this.fire("change")},_knobdown:function(t){this._expandKnob(),t.preventDefault(),this.focus()},_bardown:function(t){this._w=this.$.sliderBar.offsetWidth;var e=this.$.sliderBar.getBoundingClientRect(),i=(t.detail.x-e.left)/this._w,s=this.ratio;this._setTransiting(!0),this._positionKnob(i),this.debounce("expandKnob",this._expandKnob,60),s===this.ratio&&this._setTransiting(!1),this.async(function(){this.fire("change")}),t.preventDefault(),this.focus()},_knobTransitionEnd:function(t){t.target===this.$.sliderKnob&&this._setTransiting(!1)},_updateMarkers:function(t,e,i,s){s||this._setMarkers([]);var a=Math.round((i-e)/this.step);a>t&&(a=t),this._setMarkers(new Array(a))},_mergeClasses:function(t){return Object.keys(t).filter(function(e){return t[e]}).join(" ")},_getClassNames:function(){return this._mergeClasses({disabled:this.disabled,pin:this.pin,snaps:this.snaps,ring:this.immediateValue<=this.min,expand:this.expand,dragging:this.dragging,transiting:this.transiting,editable:this.editable})},_incrementKey:function(t){this.disabled||("end"===t.detail.key?this.value=this.max:this.increment(),this.fire("change"))},_decrementKey:function(t){this.disabled||("home"===t.detail.key?this.value=this.min:this.decrement(),this.fire("change"))},_changeValue:function(t){this.value=t.target.value,this.fire("change")},_inputKeyDown:function(t){t.stopPropagation()},_createRipple:function(){return this._rippleContainer=this.$.sliderKnob,Polymer.PaperInkyFocusBehaviorImpl._createRipple.call(this)},_focusedChanged:function(t){t&&this.ensureRipple(),this.hasRipple()&&(t?this._ripple.style.display="":this._ripple.style.display="none",this._ripple.holdDown=t)}})</script></dom-module><dom-module id="state-card-input_slider" assetpath="state-summary/"><template><style is="custom-style" include="iron-flex iron-flex-alignment"></style><style>paper-slider{margin-left:16px}</style><div class="horizontal justified layout"><state-info state-obj="[[stateObj]]" in-dialog="[[inDialog]]"></state-info><paper-slider min="[[min]]" max="[[max]]" value="{{value}}" step="[[step]]" pin="" on-change="selectedValueChanged" on-tap="stopPropagation"></paper-slider></div></template></dom-module><script>Polymer({is:"state-card-input_slider",properties:{hass:{type:Object},inDialog:{type:Boolean,value:!1},stateObj:{type:Object,observer:"stateObjectChanged"},min:{type:Number},max:{type:Number},step:{type:Number},value:{type:Number}},stateObjectChanged:function(t){this.value=Number(t.state),this.min=Number(t.attributes.min),this.max=Number(t.attributes.max),this.step=Number(t.attributes.step)},selectedValueChanged:function(){this.value!==Number(this.stateObj.state)&&this.hass.serviceActions.callService("input_slider","select_value",{value:this.value,entity_id:this.stateObj.entityId})},stopPropagation:function(t){t.stopPropagation()}})</script><dom-module id="state-card-media_player" assetpath="state-summary/"><template><style is="custom-style" include="iron-flex iron-flex-alignment"></style><style>:host{line-height:1.5}.state{@apply(--paper-font-common-nowrap);@apply(--paper-font-body1);margin-left:16px;text-align:right}.main-text{@apply(--paper-font-common-nowrap);color:var(--primary-text-color);text-transform:capitalize}.main-text[take-height]{line-height:40px}.secondary-text{@apply(--paper-font-common-nowrap);color:var(--secondary-text-color)}</style><div class="horizontal justified layout"><state-info state-obj="[[stateObj]]" in-dialog="[[inDialog]]"></state-info><div class="state"><div class="main-text" take-height$="[[!secondaryText]]">[[computePrimaryText(stateObj, isPlaying)]]</div><div class="secondary-text">[[secondaryText]]</div></div></div></template></dom-module><script>Polymer({PLAYING_STATES:["playing","paused"],is:"state-card-media_player",properties:{inDialog:{type:Boolean,value:!1},stateObj:{type:Object},isPlaying:{type:Boolean,computed:"computeIsPlaying(stateObj)"},secondaryText:{type:String,computed:"computeSecondaryText(stateObj)"}},computeIsPlaying:function(t){return this.PLAYING_STATES.indexOf(t.state)!==-1},computePrimaryText:function(t,e){return e?t.attributes.media_title:t.stateDisplay},computeSecondaryText:function(t){var e;return"music"===t.attributes.media_content_type?t.attributes.media_artist:"tvshow"===t.attributes.media_content_type?(e=t.attributes.media_series_title,t.attributes.media_season&&t.attributes.media_episode&&(e+=" S"+t.attributes.media_season+"E"+t.attributes.media_episode),e):t.attributes.app_name?t.attributes.app_name:""}})</script><dom-module id="state-card-scene" assetpath="state-summary/"><template><style is="custom-style" include="iron-flex iron-flex-alignment"></style><style>paper-button{color:var(--default-primary-color);font-weight:500;top:3px;height:37px;margin-right:-.57em}</style><div class="horizontal justified layout"><state-info state-obj="[[stateObj]]" in-dialog="[[inDialog]]"></state-info><paper-button on-tap="activateScene">ACTIVATE</paper-button></div></template></dom-module><script>Polymer({is:"state-card-scene",properties:{hass:{type:Object},inDialog:{type:Boolean,value:!1},stateObj:{type:Object}},activateScene:function(t){t.stopPropagation(),this.hass.serviceActions.callTurnOn(this.stateObj.entityId)}})</script><dom-module id="state-card-script" assetpath="state-summary/"><template><style is="custom-style" include="iron-flex iron-flex-alignment"></style><style>paper-button{color:var(--default-primary-color);font-weight:500;top:3px;height:37px;margin-right:-.57em}ha-entity-toggle{margin-left:16px}</style><div class="horizontal justified layout"><state-info state-obj="[[stateObj]]" in-dialog="[[inDialog]]"></state-info><template is="dom-if" if="[[stateObj.attributes.can_cancel]]"><ha-entity-toggle state-obj="[[stateObj]]" hass="[[hass]]"></ha-entity-toggle></template><template is="dom-if" if="[[!stateObj.attributes.can_cancel]]"><paper-button on-tap="fireScript">ACTIVATE</paper-button></template></div></template></dom-module><script>Polymer({is:"state-card-script",properties:{inDialog:{type:Boolean,value:!1},stateObj:{type:Object}},fireScript:function(t){t.stopPropagation(),this.hass.serviceActions.callTurnOn(this.stateObj.entityId)}})</script><dom-module id="state-card-toggle" assetpath="state-summary/"><template><style is="custom-style" include="iron-flex iron-flex-alignment"></style><style>ha-entity-toggle{margin-left:16px}</style><div class="horizontal justified layout"><state-info state-obj="[[stateObj]]" in-dialog="[[inDialog]]"></state-info><ha-entity-toggle state-obj="[[stateObj]]" hass="[[hass]]"></ha-entity-toggle></div></template></dom-module><script>Polymer({is:"state-card-toggle",properties:{hass:{type:Object},inDialog:{type:Boolean,value:!1},stateObj:{type:Object}}})</script><dom-module id="state-card-weblink" assetpath="state-summary/"><template><style>:host{display:block}.name{@apply(--paper-font-common-nowrap);@apply(--paper-font-body1);color:var(--primary-color);text-transform:capitalize;line-height:40px;margin-left:16px}</style><state-badge state-obj="[[stateObj]]" in-dialog="[[inDialog]]"></state-badge><a href$="[[stateObj.state]]" target="_blank" class="name" id="link">[[stateObj.entityDisplay]]</a></template></dom-module><script>Polymer({is:"state-card-weblink",properties:{inDialog:{type:Boolean,value:!1},stateObj:{type:Object}},listeners:{tap:"onTap"},onTap:function(t){t.stopPropagation(),t.target!==this.$.link&&window.open(this.stateObj.state,"_blank")}})</script><script>Polymer({is:"state-card-content",properties:{hass:{type:Object},inDialog:{type:Boolean,value:!1},stateObj:{type:Object}},observers:["inputChanged(hass, inDialog, stateObj)"],inputChanged:function(t,e,s){s&&window.hassUtil.dynamicContentUpdater(this,"STATE-CARD-"+window.hassUtil.stateCardType(this.hass,s).toUpperCase(),{hass:t,stateObj:s,inDialog:e})}})</script><dom-module id="ha-entities-card" assetpath="cards/"><template><style is="custom-style" include="iron-flex"></style><style>.states{padding-bottom:16px}.state{padding:4px 16px;cursor:pointer}.header{@apply(--paper-font-headline);line-height:40px;color:var(--primary-text-color);padding:20px 16px 12px;text-transform:capitalize}.header .name{@apply(--paper-font-common-nowrap)}ha-entity-toggle{margin-left:16px}.header-more-info{cursor:pointer}</style><ha-card><div class$="[[computeTitleClass(groupEntity)]]" on-tap="entityTapped"><div class="flex name">[[computeTitle(states, groupEntity)]]</div><template is="dom-if" if="[[showGroupToggle(groupEntity, states)]]"><ha-entity-toggle hass="[[hass]]" state-obj="[[groupEntity]]"></ha-entity-toggle></template></div><div class="states"><template is="dom-repeat" items="[[states]]"><div class="state" on-tap="entityTapped"><state-card-content hass="[[hass]]" class="state-card" state-obj="[[item]]"></state-card-content></div></template></div></ha-card></template></dom-module><script>Polymer({is:"ha-entities-card",properties:{hass:{type:Object},states:{type:Array},groupEntity:{type:Object}},computeTitle:function(t,e){return e?e.entityDisplay:t[0].domain.replace(/_/g," ")},computeTitleClass:function(t){var e="header horizontal layout center ";return t&&(e+="header-more-info"),e},entityTapped:function(t){var e;t.target.classList.contains("paper-toggle-button")||t.target.classList.contains("paper-icon-button")||!t.model&&!this.groupEntity||(t.stopPropagation(),e=t.model?t.model.item.entityId:this.groupEntity.entityId,this.async(function(){this.hass.moreInfoActions.selectEntity(e)}.bind(this),1))},showGroupToggle:function(t,e){var n;return!(!t||!e||"on"!==t.state&&"off"!==t.state)&&(n=e.reduce(function(t,e){return t+window.hassUtil.canToggle(this.hass,e.entityId)},0),n>1)}})</script><dom-module id="ha-introduction-card" assetpath="cards/"><template><style>:host{@apply(--paper-font-body1)}a{color:var(--dark-primary-color)}ul{margin:8px;padding-left:16px}li{margin-bottom:8px}.content{padding:0 16px 16px}.install{display:block;line-height:1.5em;margin-top:8px;margin-bottom:16px}</style><ha-card header="Welcome Home!"><div class="content"><template is="dom-if" if="[[hass.demo]]">To install Home Assistant, run:<br><code class="install">pip3 install homeassistant<br>hass --open-ui</code></template>Here are some resources to get started.<ul><template is="dom-if" if="[[hass.demo]]"><li><a href="https://home-assistant.io/getting-started/">Home Assistant website</a></li><li><a href="https://home-assistant.io/getting-started/">Installation instructions</a></li><li><a href="https://home-assistant.io/getting-started/troubleshooting/">Troubleshooting your installation</a></li></template><li><a href="https://home-assistant.io/getting-started/configuration/" target="_blank">Configuring Home Assistant</a></li><li><a href="https://home-assistant.io/components/" target="_blank">Available components</a></li><li><a href="https://home-assistant.io/getting-started/troubleshooting-configuration/" target="_blank">Troubleshooting your configuration</a></li><li><a href="https://home-assistant.io/help/" target="_blank">Ask community for help</a></li></ul><template is="dom-if" if="[[showHideInstruction]]">To remove this card, edit your config in <code>configuration.yaml</code> and disable the <code>introduction</code> component.</template></div></ha-card></template></dom-module><script>Polymer({is:"ha-introduction-card",properties:{hass:{type:Object},showHideInstruction:{type:Boolean,value:!0}}})</script><dom-module id="ha-media_player-card" assetpath="cards/"><template><style include="paper-material iron-flex iron-flex-alignment iron-positioning">:host{display:block;position:relative;font-size:0;border-radius:2px;overflow:hidden}.banner{position:relative;background-color:#fff;border-top-left-radius:2px;border-top-right-radius:2px}.banner:before{display:block;content:"";width:100%;padding-top:56%;transition:padding-top .8s}.banner.no-cover{background-position:center center;background-image:url(/static/images/card_media_player_bg.png);background-repeat:no-repeat;background-color:var(--primary-color)}.banner.content-type-music:before{padding-top:100%}.banner.no-cover:before{padding-top:88px}.banner>.cover{position:absolute;top:0;left:0;right:0;bottom:0;border-top-left-radius:2px;border-top-right-radius:2px;background-position:center center;background-size:cover;transition:opacity .8s;opacity:1}.banner.is-off>.cover{opacity:0}.banner>.caption{@apply(--paper-font-caption);position:absolute;left:0;right:0;bottom:0;background-color:rgba(0,0,0,var(--dark-secondary-opacity));padding:8px 16px;text-transform:capitalize;font-size:14px;font-weight:500;color:#fff;transition:background-color .5s}.banner.is-off>.caption{background-color:initial}.banner>.caption .title{@apply(--paper-font-common-nowrap);font-size:1.2em;margin:8px 0 4px}.progress{width:100%;--paper-progress-active-color:var(--accent-color);--paper-progress-container-color:#FFF}.controls{position:relative;@apply(--paper-font-body1);padding:8px;border-bottom-left-radius:2px;border-bottom-right-radius:2px;background-color:#fff}.controls paper-icon-button{width:44px;height:44px}paper-icon-button{opacity:var(--dark-primary-opacity)}paper-icon-button[disabled]{opacity:var(--dark-disabled-opacity)}paper-icon-button.primary{width:56px!important;height:56px!important;background-color:var(--primary-color);color:#fff;border-radius:50%;padding:8px;transition:background-color .5s}paper-icon-button.primary[disabled]{background-color:rgba(0,0,0,var(--dark-disabled-opacity))}[invisible]{visibility:hidden!important}</style><div class$="[[computeBannerClasses(playerObj)]]"><div class="cover" id="cover"></div><div class="caption">[[stateObj.entityDisplay]]<div class="title">[[playerObj.primaryText]]</div>[[playerObj.secondaryText]]<br></div></div><paper-progress max="[[stateObj.attributes.media_duration]]" value="[[playbackPosition]]" hidden$="[[computeHideProgress(playerObj)]]" class="progress"></paper-progress><div class="controls layout horizontal justified"><paper-icon-button icon="mdi:power" on-tap="handleTogglePower" invisible$="[[computeHidePowerButton(playerObj)]]" class="self-center secondary"></paper-icon-button><div><paper-icon-button icon="mdi:skip-previous" invisible$="[[!playerObj.supportsPreviousTrack]]" disabled="[[playerObj.isOff]]" on-tap="handlePrevious"></paper-icon-button><paper-icon-button class="primary" icon="[[computePlaybackControlIcon(playerObj)]]" invisible="[[!computePlaybackControlIcon(playerObj)]]" disabled="[[playerObj.isOff]]" on-tap="handlePlaybackControl"></paper-icon-button><paper-icon-button icon="mdi:skip-next" invisible$="[[!playerObj.supportsNextTrack]]" disabled="[[playerObj.isOff]]" on-tap="handleNext"></paper-icon-button></div><paper-icon-button icon="mdi:dots-vertical" on-tap="handleOpenMoreInfo" class="self-center secondary"></paper-icon-button></div></template></dom-module><script>Polymer({is:"ha-media_player-card",properties:{hass:{type:Object},stateObj:{type:Object},playerObj:{type:Object,computed:"computePlayerObj(stateObj)",observer:"playerObjChanged"},playbackControlIcon:{type:String,computed:"computePlaybackControlIcon(playerObj)"},playbackPosition:{type:Number},elevation:{type:Number,value:1,reflectToAttribute:!0}},created:function(){this.updatePlaybackPosition=this.updatePlaybackPosition.bind(this)},playerObjChanged:function(t,e){var o=t.stateObj.attributes.entity_picture;o?this.$.cover.style.backgroundImage="url("+o+")":this.$.cover.style.backgroundImage="",t.isPlaying?(this._positionTracking||(this._positionTracking=setInterval(this.updatePlaybackPosition,1e3)),this.updatePlaybackPosition()):this._positionTracking&&(clearInterval(this._positionTracking),this._positionTracking=null,this.playbackPosition=0)},updatePlaybackPosition:function(t){this.playbackPosition=this.playerObj.currentProgress},computeBannerClasses:function(t){var e="banner";return t.isOff||t.isIdle?e+=" is-off no-cover":t.stateObj.attributes.entity_picture?"music"===t.stateObj.attributes.media_content_type&&(e+=" content-type-music"):e+=" no-cover",e},computeHideProgress:function(t){return!t.showProgress},computeHidePowerButton:function(t){return t.isOff?!t.supportsTurnOn:!t.supportsTurnOff},computePlayerObj:function(t){return t.domainModel(this.hass)},computePlaybackControlIcon:function(t){return t.isPlaying?t.supportsPause?"mdi:pause":"mdi:stop":t.isPaused||t.isOff||t.isIdle?"mdi:play":""},handleNext:function(t){t.stopPropagation(),this.playerObj.nextTrack()},handleOpenMoreInfo:function(t){t.stopPropagation(),this.async(function(){this.hass.moreInfoActions.selectEntity(this.stateObj.entityId)},1)},handlePlaybackControl:function(t){t.stopPropagation(),this.playerObj.mediaPlayPause()},handlePrevious:function(t){t.stopPropagation(),this.playerObj.previousTrack()},handleTogglePower:function(t){t.stopPropagation(),this.playerObj.togglePower()}})</script><dom-module id="ha-persistent_notification-card" assetpath="cards/"><template><style>:host{@apply(--paper-font-body1)}.content{padding:0 16px 16px}paper-button{margin:8px;font-weight:500}</style><ha-card header="[[computeTitle(stateObj)]]"><div id="pnContent" class="content"></div><paper-button on-tap="dismissTap">DISMISS</paper-button></ha-card></template></dom-module><script>Polymer({is:"ha-persistent_notification-card",properties:{hass:{type:Object},stateObj:{type:Object},scriptLoaded:{type:Boolean,value:!1}},observers:["computeContent(stateObj, scriptLoaded)"],computeTitle:function(t){return t.attributes.title||t.entityDisplay},loadScript:function(){var t=function(){this.scriptLoaded=!0}.bind(this),e=function(){console.error("Micromarkdown was not loaded.")};this.importHref("/static/micromarkdown-js.html",t,e)},computeContent:function(t,e){var i="",n="";e&&(i=this.$.pnContent,n=window.micromarkdown.parse(t.state),i.innerHTML=n)},ready:function(){this.loadScript()},dismissTap:function(t){t.preventDefault(),this.hass.entityActions.delete(this.stateObj)}})</script><script>Polymer({is:"ha-card-chooser",properties:{cardData:{type:Object,observer:"cardDataChanged"}},cardDataChanged:function(a){a&&window.hassUtil.dynamicContentUpdater(this,"HA-"+a.cardType.toUpperCase()+"-CARD",a)}})</script><dom-module id="ha-cards" assetpath="components/"><template><style is="custom-style" include="iron-flex iron-flex-factors"></style><style>:host{display:block;padding-top:8px;padding-right:8px}.badges{font-size:85%;text-align:center}.column{max-width:500px;overflow-x:hidden}.zone-card{margin-left:8px;margin-bottom:8px}@media (max-width:500px){:host{padding-right:0}.zone-card{margin-left:0}}@media (max-width:599px){.column{max-width:600px}}</style><div class="main"><template is="dom-if" if="[[cards.badges]]"><div class="badges"><template is="dom-if" if="[[cards.demo]]"><ha-demo-badge></ha-demo-badge></template><ha-badges-card states="[[cards.badges]]" hass="[[hass]]"></ha-badges-card></div></template><div class="horizontal layout center-justified"><template is="dom-repeat" items="[[cards.columns]]" as="column"><div class="column flex-1"><template is="dom-repeat" items="[[column]]" as="card"><div class="zone-card"><ha-card-chooser card-data="[[card]]" hass="[[hass]]"></ha-card-chooser></div></template></div></template></div></div></template></dom-module><script>!function(){"use strict";function t(t){return t in o?o[t]:30}function e(t){return"group"===t.domain?t.attributes.order:t.entityDisplay.toLowerCase()}var n={camera:4,media_player:3,persistent_notification:0},o={configurator:-20,persistent_notification:-15,group:-10,a:-1,updater:0,sun:1,device_tracker:2,alarm_control_panel:3,sensor:5,binary_sensor:6};Polymer({is:"ha-cards",properties:{hass:{type:Object},showIntroduction:{type:Boolean,value:!1},columns:{type:Number,value:2},states:{type:Object},panelVisible:{type:Boolean},viewVisible:{type:Boolean},cards:{type:Object}},observers:["updateCards(columns, states, showIntroduction, panelVisible, viewVisible)"],updateCards:function(t,e,n,o,r){o&&r&&this.debounce("updateCards",function(){this.panelVisible&&this.viewVisible&&(this.cards=this.computeCards(t,e,n))}.bind(this))},computeCards:function(o,r,s){function i(t){return t.filter(function(t){return!(t.entityId in h)})}function a(t){var e=0;for(p=e;p<y.length;p++){if(y[p]<5){e=p;break}y[p]<y[e]&&(e=p)}return y[e]+=t,e}function u(t,e,o){var r,s,i,u;0!==e.length&&(r=[],s=[],i=0,e.forEach(function(t){t.domain in n?(r.push(t),i+=n[t.domain]):(s.push(t),i++)}),i+=s.length>1,u=a(i),s.length>0&&f.columns[u].push({hass:d,cardType:"entities",states:s,groupEntity:o||!1}),r.forEach(function(t){f.columns[u].push({hass:d,cardType:t.domain,stateObj:t})}))}var c,p,d=this.hass,l=r.groupBy(function(t){return t.domain}),h={},f={demo:!1,badges:[],columns:[]},y=[];for(p=0;p<o;p++)f.columns.push([]),y.push(0);return s&&f.columns[a(5)].push({hass:d,cardType:"introduction",showHideInstruction:r.size>0&&!d.demo}),c=this.hass.util.expandGroup,l.keySeq().sortBy(function(e){return t(e)}).forEach(function(n){var o;return"a"===n?void(f.demo=!0):(o=t(n),void(o>=0&&o<10?f.badges.push.apply(f.badges,i(l.get(n)).sortBy(e).toArray()):"group"===n?l.get(n).sortBy(e).forEach(function(t){var e=c(t,r);e.forEach(function(t){h[t.entityId]=!0}),u(t.entityId,e.toArray(),t)}):u(n,i(l.get(n)).sortBy(e).toArray())))}),f.columns=f.columns.filter(function(t){return t.length>0}),f}})}()</script><dom-module id="partial-cards" assetpath="layouts/"><template><style include="iron-flex iron-positioning ha-style">:host{-ms-user-select:none;-webkit-user-select:none;-moz-user-select:none}app-header-layout{background-color:#E5E5E5}paper-tabs{margin-left:12px;--paper-tabs-selection-bar-color:#FFF;text-transform:uppercase}</style><app-header-layout has-scrolling-region="" id="layout"><app-header effects="waterfall" condenses="" fixed=""><app-toolbar><ha-menu-button narrow="[[narrow]]" show-menu="[[showMenu]]"></ha-menu-button><div main-title="">[[computeTitle(views, locationName)]]</div><paper-icon-button icon="mdi:microphone" hidden$="[[!canListen]]" on-tap="handleListenClick"></paper-icon-button></app-toolbar><div sticky="" hidden$="[[!views.length]]"><paper-tabs scrollable="" selected="[[currentView]]" attr-for-selected="data-entity" on-iron-select="handleViewSelected"><paper-tab data-entity="" on-tap="scrollToTop">[[locationName]]</paper-tab><template is="dom-repeat" items="[[views]]"><paper-tab data-entity$="[[item.entityId]]" on-tap="scrollToTop"><template is="dom-if" if="[[item.attributes.icon]]"><iron-icon icon="[[item.attributes.icon]]"></iron-icon></template><template is="dom-if" if="[[!item.attributes.icon]]">[[item.entityDisplay]]</template></paper-tab></template></paper-tabs></div></app-header><iron-pages attr-for-selected="data-view" selected="[[currentView]]" selected-attribute="view-visible"><ha-cards data-view="" show-introduction="[[computeShowIntroduction(currentView, introductionLoaded, states)]]" states="[[states]]" columns="[[_columns]]" hass="[[hass]]" panel-visible="[[panelVisible]]"></ha-cards><template is="dom-repeat" items="[[views]]"><ha-cards data-view$="[[item.entityId]]" show-introduction="[[computeShowIntroduction(currentView, introductionLoaded, states)]]" states="[[states]]" columns="[[_columns]]" hass="[[hass]]" panel-visible="[[panelVisible]]"></ha-cards></template></iron-pages></app-header-layout></template></dom-module><script>Polymer({is:"partial-cards",behaviors:[window.hassBehavior],properties:{hass:{type:Object},narrow:{type:Boolean,value:!1},showMenu:{type:Boolean,value:!1,observer:"handleWindowChange"},panelVisible:{type:Boolean,value:!1},_columns:{type:Number,value:1},canListen:{type:Boolean,bindNuclear:function(e){return[e.voiceGetters.isVoiceSupported,e.configGetters.isComponentLoaded("conversation"),function(e,t){return e&&t}]}},introductionLoaded:{type:Boolean,bindNuclear:function(e){return e.configGetters.isComponentLoaded("introduction")}},locationName:{type:String,bindNuclear:function(e){return e.configGetters.locationName}},currentView:{type:String,bindNuclear:function(e){return[e.viewGetters.currentView,function(e){return e||""}]}},views:{type:Array,bindNuclear:function(e){return[e.viewGetters.views,function(e){return e.valueSeq().sortBy(function(e){return e.attributes.order}).toArray()}]}},states:{type:Object,bindNuclear:function(e){return e.viewGetters.currentViewEntities}}},created:function(){this.handleWindowChange=this.handleWindowChange.bind(this),this.mqls=[300,600,900,1200].map(function(e){var t=window.matchMedia("(min-width: "+e+"px)");return t.addListener(this.handleWindowChange),t}.bind(this))},detached:function(){this.mqls.forEach(function(e){e.removeListener(this.handleWindowChange)})},handleWindowChange:function(){var e=this.mqls.reduce(function(e,t){return e+t.matches},0);this._columns=Math.max(1,e-(!this.narrow&&this.showMenu))},scrollToTop:function(){var e=0,t=this.$.layout.header.scrollTarget,n=function(e,t,n,i){return e/=i,-n*e*(e-2)+t},i=Math.random(),o=200,r=Date.now(),a=t.scrollTop,s=e-a;this._currentAnimationId=i,function c(){var u=Date.now(),l=u-r;l>o?t.scrollTop=e:this._currentAnimationId===i&&(t.scrollTop=n(l,a,s,o),requestAnimationFrame(c.bind(this)))}.call(this)},handleListenClick:function(){this.hass.voiceActions.listen()},handleViewSelected:function(e){var t=e.detail.item.getAttribute("data-entity")||null,n=this.currentView||null;t!==n&&this.async(function(){this.hass.viewActions.selectView(t)}.bind(this),0)},computeTitle:function(e,t){return e.length>0?"Home Assistant":t},computeShowIntroduction:function(e,t,n){return""===e&&(t||0===n.size)}})</script><style is="custom-style">html{font-size:14px;--dark-primary-color:#0288D1;--default-primary-color:#03A9F4;--primary-color:#03A9F4;--light-primary-color:#B3E5FC;--text-primary-color:#ffffff;--accent-color:#FF9800;--primary-background-color:#ffffff;--primary-text-color:#212121;--secondary-text-color:#727272;--disabled-text-color:#bdbdbd;--divider-color:#B6B6B6;--paper-toggle-button-checked-ink-color:#039be5;--paper-toggle-button-checked-button-color:#039be5;--paper-toggle-button-checked-bar-color:#039be5;--paper-slider-knob-color:var(--primary-color);--paper-slider-knob-start-color:var(--primary-color);--paper-slider-pin-color:var(--primary-color);--paper-slider-active-color:var(--primary-color);--paper-slider-secondary-color:var(--light-primary-color);--paper-slider-container-color:var(--divider-color);--google-red-500:#db4437;--google-blue-500:#4285f4;--google-green-500:#0f9d58;--google-yellow-500:#f4b400;--paper-grey-50:#fafafa;--paper-green-400:#66bb6a;--paper-blue-400:#42a5f5;--paper-orange-400:#ffa726;--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-secondary-opacity:0.7;--light-primary-opacity:1.0}</style><dom-module id="ha-style" assetpath="resources/"><template><style>:host{@apply(--paper-font-body1)}app-header,app-toolbar{background-color:var(--primary-color);font-weight:400;color:#fff}app-toolbar ha-menu-button+[main-title]{margin-left:24px}h1{@apply(--paper-font-title)}</style></template></dom-module><dom-module id="partial-panel-resolver" assetpath="layouts/"><template><style include="iron-flex ha-style">[hidden]{display:none!important}.placeholder{height:100%}.layout{height:calc(100% - 64px)}</style><div hidden$="[[resolved]]" class="placeholder"><app-toolbar><ha-menu-button narrow="[[narrow]]" show-menu="[[showMenu]]"></ha-menu-button></app-toolbar><div class="layout horizontal center-center"><template is="dom-if" if="[[!errorLoading]]"><paper-spinner active=""></paper-spinner></template><template is="dom-if" if="[[errorLoading]]">Error loading panel :(</template></div></div><span id="panel" hidden$="[[!resolved]]"></span></template></dom-module><script>Polymer({is:"partial-panel-resolver",behaviors:[window.hassBehavior],properties:{hass:{type:Object,observer:"updateAttributes"},narrow:{type:Boolean,value:!1,observer:"updateAttributes"},showMenu:{type:Boolean,value:!1,observer:"updateAttributes"},resolved:{type:Boolean,value:!1},errorLoading:{type:Boolean,value:!1},panel:{type:Object,bindNuclear:function(e){return e.navigationGetters.activePanel},observer:"panelChanged"}},panelChanged:function(e){return e?(this.resolved=!1,this.errorLoading=!1,void this.importHref(e.get("url"),function(){window.hassUtil.dynamicContentUpdater(this.$.panel,"ha-panel-"+e.get("component_name"),{hass:this.hass,narrow:this.narrow,showMenu:this.showMenu,panel:e.toJS()}),this.resolved=!0}.bind(this),function(){this.errorLoading=!0}.bind(this),!0)):void(this.$.panel.lastChild&&this.$.panel.removeChild(this.$.panel.lastChild))},updateAttributes:function(){var e=Polymer.dom(this.$.panel).lastChild;e&&(e.hass=this.hass,e.narrow=this.narrow,e.showMenu=this.showMenu)}})</script><dom-module id="paper-toast" assetpath="../bower_components/paper-toast/"><template><style>:host{display:block;position:fixed;background-color:var(--paper-toast-background-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 .3s;opacity:0;-webkit-transform:translateY(100px);transform:translateY(100px);@apply(--paper-font-common-base)}:host(.capsule){border-radius:24px}:host(.fit-bottom){width:100%;min-width:0;border-radius:0;margin:0}:host(.paper-toast-open){opacity: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],properties:{fitInto:{type:Object,value:window,observer:"_onFitIntoChanged"},horizontalAlign:{type:String,value:"left"},verticalAlign:{type:String,value:"bottom"},duration:{type:Number,value:3e3},text:{type:String,value:""},noCancelOnOutsideClick:{type:Boolean,value:!0},noAutoFocus:{type:Boolean,value:!0}},listeners:{transitionend:"__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&&(this.opened?this._finishRenderOpened():this._finishRenderClosed())},_openedChanged:function(){null!==this._autoClose&&(this.cancelAsync(this._autoClose),this._autoClose=null),this.opened?(e&&e!==this&&e.close(),e=this,this.fire("iron-announce",{text:this.text}),this._canAutoClose&&(this._autoClose=this.async(this.close,this.duration))):e===this&&(e=null),Polymer.IronOverlayBehaviorImpl._openedChanged.apply(this,arguments)},_renderOpened:function(){this.classList.add("paper-toast-open")},_renderClosed:function(){this.classList.remove("paper-toast-open")},_onFitIntoChanged:function(e){this.positionTarget=e}})}()</script></dom-module><dom-module id="notification-manager" assetpath="managers/"><template><style>paper-toast{z-index:1}</style><paper-toast id="toast" text="{{text}}" no-cancel-on-outside-click="[[neg]]"></paper-toast><paper-toast duration="0" text="Connection lost. Reconnecting…" opened="[[!isStreaming]]"></paper-toast></template></dom-module><script>Polymer({is:"notification-manager",behaviors:[window.hassBehavior],properties:{hass:{type:Object},isStreaming:{type:Boolean,bindNuclear:function(t){return t.streamGetters.isStreamingEvents}},neg:{type:Boolean,value:!1},text:{type:String,bindNuclear:function(t){return t.notificationGetters.lastNotificationMessage},observer:"showNotification"}},showNotification:function(t){t&&this.$.toast.show()}})</script><script>Polymer.PaperDialogBehaviorImpl={hostAttributes:{role:"dialog",tabindex:"-1"},properties:{modal:{type:Boolean,value:!1}},observers:["_modalChanged(modal, _readied)"],listeners:{tap:"_onDialogClick"},ready:function(){this.__prevNoCancelOnOutsideClick=this.noCancelOnOutsideClick,this.__prevNoCancelOnEscKey=this.noCancelOnEscKey,this.__prevWithBackdrop=this.withBackdrop},_modalChanged:function(i,e){e&&(i?(this.__prevNoCancelOnOutsideClick=this.noCancelOnOutsideClick,this.__prevNoCancelOnEscKey=this.noCancelOnEscKey,this.__prevWithBackdrop=this.withBackdrop,this.noCancelOnOutsideClick=!0,this.noCancelOnEscKey=!0,this.withBackdrop=!0):(this.noCancelOnOutsideClick=this.noCancelOnOutsideClick&&this.__prevNoCancelOnOutsideClick,this.noCancelOnEscKey=this.noCancelOnEscKey&&this.__prevNoCancelOnEscKey,this.withBackdrop=this.withBackdrop&&this.__prevWithBackdrop))},_updateClosingReasonConfirmed:function(i){this.closingReason=this.closingReason||{},this.closingReason.confirmed=i},_onDialogClick:function(i){for(var e=Polymer.dom(i).path,o=0;o<e.indexOf(this);o++){var t=e[o];if(t.hasAttribute&&(t.hasAttribute("dialog-dismiss")||t.hasAttribute("dialog-confirm"))){this._updateClosingReasonConfirmed(t.hasAttribute("dialog-confirm")),this.close(),i.stopPropagation();break}}}},Polymer.PaperDialogBehavior=[Polymer.IronOverlayBehavior,Polymer.PaperDialogBehaviorImpl]</script><dom-module id="paper-dialog-shared-styles" assetpath="../bower_components/paper-dialog-behavior/"><template><style>:host{display:block;margin:24px 40px;background:var(--paper-dialog-background-color,--primary-background-color);color:var(--paper-dialog-color,--primary-text-color);@apply(--paper-font-body1);@apply(--shadow-elevation-16dp);@apply(--paper-dialog)}:host>::content>*{margin-top:20px;padding:0 24px}:host>::content>.no-padding{padding:0}:host>::content>:first-child{margin-top:24px}:host>::content>:last-child{margin-bottom:24px}:host>::content h2{position:relative;margin:0;@apply(--paper-font-title);@apply(--paper-dialog-title)}:host>::content .buttons{position:relative;padding:8px 8px 8px 24px;margin:0;color:var(--paper-dialog-button-color,--primary-color);@apply(--layout-horizontal);@apply(--layout-end-justified)}</style></template></dom-module><dom-module id="paper-dialog" assetpath="../bower_components/paper-dialog/"><template><style include="paper-dialog-shared-styles"></style><content></content></template></dom-module><script>!function(){Polymer({is:"paper-dialog",behaviors:[Polymer.PaperDialogBehavior,Polymer.NeonAnimationRunnerBehavior],listeners:{"neon-animation-finish":"_onNeonAnimationFinish"},_renderOpened:function(){this.cancelAnimation(),this.playAnimation("entry")},_renderClosed:function(){this.cancelAnimation(),this.playAnimation("exit")},_onNeonAnimationFinish:function(){this.opened?this._finishRenderOpened():this._finishRenderClosed()}})}()</script><dom-module id="paper-dialog-scrollable" assetpath="../bower_components/paper-dialog-scrollable/"><template><style>:host{display:block;@apply(--layout-relative)}:host(.is-scrolled:not(:first-child))::before{content:'';position:absolute;top:0;left:0;right:0;height:1px;background:var(--divider-color)}:host(.can-scroll:not(.scrolled-to-bottom):not(:last-child))::after{content:'';position:absolute;bottom:0;left:0;right:0;height:1px;background:var(--divider-color)}.scrollable{padding:0 24px;@apply(--layout-scroll);@apply(--paper-dialog-scrollable)}.fit{@apply(--layout-fit)}</style><div id="scrollable" class="scrollable"><content></content></div></template></dom-module><script>Polymer({is:"paper-dialog-scrollable",properties:{dialogElement:{type:Object}},listeners:{"scrollable.scroll":"_scroll"},get scrollTarget(){return this.$.scrollable},ready:function(){this._ensureTarget()},attached:function(){this.classList.add("no-padding"),this._ensureTarget(),requestAnimationFrame(this._scroll.bind(this))},_scroll:function(){this.toggleClass("is-scrolled",this.scrollTarget.scrollTop>0),this.toggleClass("can-scroll",this.scrollTarget.offsetHeight<this.scrollTarget.scrollHeight),this.toggleClass("scrolled-to-bottom",this.scrollTarget.scrollTop+this.scrollTarget.offsetHeight>=this.scrollTarget.scrollHeight)},_ensureTarget:function(){this.dialogElement=this.dialogElement||Polymer.dom(this).parentNode,this.dialogElement&&this.dialogElement.behaviors&&this.dialogElement.behaviors.indexOf(Polymer.PaperDialogBehaviorImpl)>=0?(this.dialogElement.sizingTarget=this.scrollTarget,this.scrollTarget.classList.remove("fit")):this.dialogElement&&this.scrollTarget.classList.add("fit")}})</script><script>!function(){"use strict";Polymer.IronJsonpLibraryBehavior={properties:{libraryLoaded:{type:Boolean,value:!1,notify:!0,readOnly:!0},libraryErrorMessage:{type:String,value:null,notify:!0,readOnly:!0}},observers:["_libraryUrlChanged(libraryUrl)"],_libraryUrlChanged:function(r){this._isReady&&this.libraryUrl&&this._loadLibrary()},_libraryLoadCallback:function(r,i){r?(console.warn("Library load failed:",r.message),this._setLibraryErrorMessage(r.message)):(this._setLibraryErrorMessage(null),this._setLibraryLoaded(!0),this.notifyEvent&&this.fire(this.notifyEvent,i))},_loadLibrary:function(){r.require(this.libraryUrl,this._libraryLoadCallback.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.indexOf(this.callbackMacro)>=0))return void(this.error=new Error("IronJsonpLibraryBehavior a %%callback%% parameter is required in libraryUrl"));t=r+"_loaded",i=i.replace(this.callbackMacro,t)}this.callbackName=t,window[this.callbackName]=this.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")||document.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 load"),this.notifyAll(),this.cleanup()},success:function(){this.loaded=!0,this.result=Array.prototype.slice.call(arguments),this.notifyAll(),this.cleanup()},cleanup:function(){delete window[this.callbackName]},notifyAll:function(){this.notifiers.forEach(function(r){r(this.error,this.result)}.bind(this)),this.notifiers=[]},requestNotify:function(r){this.loaded||this.error?r(this.error,this.result):this.notifiers.push(r)}}}()</script><script>Polymer({is:"iron-jsonp-library",behaviors:[Polymer.IronJsonpLibraryBehavior],properties:{libraryUrl:String,callbackName:String,notifyEvent:String}})</script><script>Polymer({is:"google-legacy-loader",behaviors:[Polymer.IronJsonpLibraryBehavior],properties:{libraryUrl:{type:String,value:"https://www.google.com/jsapi?callback=%%callback%%"},notifyEvent:{type:String,value:"api-load"}},get api(){return google}})</script><style>div.charts-tooltip{z-index:200!important}</style><script>Polymer({is:"state-history-chart-timeline",properties:{data:{type:Object,observer:"dataChanged"},isAttached:{type:Boolean,value:!1,observer:"dataChanged"}},created:function(){this.style.display="block"},attached:function(){this.isAttached=!0},dataChanged:function(){this.drawChart()},drawChart:function(){function t(t,e,n,i){var d=e.replace(/_/g," ");a.addRow([t,d,n,i])}var e,a,n,i,d,l=Polymer.dom(this),o=this.data;if(this.isAttached){for(;l.node.lastChild;)l.node.removeChild(l.node.lastChild);o&&0!==o.length&&(e=new window.google.visualization.Timeline(this),a=new window.google.visualization.DataTable,a.addColumn({type:"string",id:"Entity"}),a.addColumn({type:"string",id:"State"}),a.addColumn({type:"date",id:"Start"}),a.addColumn({type:"date",id:"End"}),n=new Date(o.reduce(function(t,e){return Math.min(t,e[0].lastChangedAsDate)},new Date)),i=new Date(n),i.setDate(i.getDate()+1),i>new Date&&(i=new Date),d=0,o.forEach(function(e){var a,n,l=null,o=null;0!==e.length&&(a=e[0].entityDisplay,e.forEach(function(e){null!==l&&e.state!==l?(n=e.lastChangedAsDate,t(a,l,o,n),l=e.state,o=n):null===l&&(l=e.state,o=e.lastChangedAsDate)}),t(a,l,o,i),d++)}),e.draw(a,{height:55+42*d,timeline:{showRowLabels:o.length>1},hAxis:{format:"H:mm"}}))}}})</script><script>!function(){"use strict";function t(t,e){var a,r=[];for(a=t;a<e;a++)r.push(a);return r}function e(t){var e=parseFloat(t);return!isNaN(e)&&isFinite(e)?e:null}Polymer({is:"state-history-chart-line",properties:{data:{type:Object,observer:"dataChanged"},unit:{type:String},isSingleDevice:{type:Boolean,value:!1},isAttached:{type:Boolean,value:!1,observer:"dataChanged"},chartEngine:{type:Object}},created:function(){this.style.display="block"},attached:function(){this.isAttached=!0},dataChanged:function(){this.drawChart()},drawChart:function(){var a,r,n,i,u,o=this.unit,s=this.data;this.isAttached&&(this.chartEngine||(this.chartEngine=new window.google.visualization.LineChart(this)),0!==s.length&&(a={legend:{position:"top"},interpolateNulls:!0,titlePosition:"none",vAxes:{0:{title:o}},hAxis:{format:"H:mm"},chartArea:{left:"60",width:"95%"},explorer:{actions:["dragToZoom","rightClickToReset","dragToPan"],keepInBounds:!0,axis:"horizontal",maxZoomIn:.1}},this.isSingleDevice&&(a.legend.position="none",a.vAxes[0].title=null,a.chartArea.left=40,a.chartArea.height="80%",a.chartArea.top=5,a.enableInteractivity=!1),r=new Date(Math.min.apply(null,s.map(function(t){return t[0].lastChangedAsDate}))),n=new Date(r),n.setDate(n.getDate()+1),n>new Date&&(n=new Date),i=s.map(function(t){function a(t,e){r&&e&&c.push([t[0]].concat(r.slice(1).map(function(t,a){return e[a]?t:null}))),c.push(t),r=t}var r,i,u,o,s=t[t.length-1],l=s.domain,d=s.entityDisplay,c=[],h=new window.google.visualization.DataTable;return h.addColumn({type:"datetime",id:"Time"}),"thermostat"===l?(i=t.reduce(function(t,e){return t||e.attributes.target_temp_high!==e.attributes.target_temp_low},!1),h.addColumn("number",d+" current temperature"),i?(h.addColumn("number",d+" target temperature high"),h.addColumn("number",d+" target temperature low"),o=[!1,!0,!0],u=function(t){var r=e(t.attributes.current_temperature),n=e(t.attributes.target_temp_high),i=e(t.attributes.target_temp_low);a([t.lastUpdatedAsDate,r,n,i],o)}):(h.addColumn("number",d+" target temperature"),o=[!1,!0],u=function(t){var r=e(t.attributes.current_temperature),n=e(t.attributes.temperature);a([t.lastUpdatedAsDate,r,n],o)}),t.forEach(u)):"climate"===l?(i=t.reduce(function(t,e){return t||e.attributes.target_temp_high!==e.attributes.target_temp_low},!1),h.addColumn("number",d+" current temperature"),i?(h.addColumn("number",d+" target temperature high"),h.addColumn("number",d+" target temperature low"),o=[!1,!0,!0],u=function(t){var r=e(t.attributes.current_temperature),n=e(t.attributes.target_temp_high),i=e(t.attributes.target_temp_low);a([t.lastUpdatedAsDate,r,n,i],o)}):(h.addColumn("number",d+" target temperature"),o=[!1,!0],u=function(t){var r=e(t.attributes.current_temperature),n=e(t.attributes.temperature);a([t.lastUpdatedAsDate,r,n],o)}),t.forEach(u)):(h.addColumn("number",d),o="sensor"!==l&&[!0],t.forEach(function(t){var r=e(t.state);a([t.lastChangedAsDate,r],o)})),a([n].concat(r.slice(1)),!1),h.addRows(c),h}),u=1===i.length?i[0]:i.slice(1).reduce(function(e,a){return window.google.visualization.data.join(e,a,"full",[[0,0]],t(1,e.getNumberOfColumns()),t(1,a.getNumberOfColumns()))},i[0]),this.chartEngine.draw(u,a)))}})}()</script><dom-module id="state-history-charts" assetpath="components/"><template><style>:host{display:block}.loading-container{text-align:center;padding:8px}.loading{height:0;overflow:hidden}</style><google-legacy-loader on-api-load="googleApiLoaded"></google-legacy-loader><div hidden$="[[!isLoading]]" class="loading-container"><paper-spinner active="" alt="Updating history data"></paper-spinner></div><div class$="[[computeContentClasses(isLoading)]]"><template is="dom-if" if="[[computeIsEmpty(stateHistory)]]">No state history found.</template><state-history-chart-timeline data="[[groupedStateHistory.timeline]]" is-single-device="[[isSingleDevice]]"></state-history-chart-timeline><template is="dom-repeat" items="[[groupedStateHistory.line]]"><state-history-chart-line unit="[[item.unit]]" data="[[item.data]]" is-single-device="[[isSingleDevice]]"></state-history-chart-line></template></div></template></dom-module><script>Polymer({is:"state-history-charts",properties:{stateHistory:{type:Object},isLoadingData:{type:Boolean,value:!1},apiLoaded:{type:Boolean,value:!1},isLoading:{type:Boolean,computed:"computeIsLoading(isLoadingData, apiLoaded)"},groupedStateHistory:{type:Object,computed:"computeGroupedStateHistory(isLoading, stateHistory)"},isSingleDevice:{type:Boolean,computed:"computeIsSingleDevice(stateHistory)"}},computeIsSingleDevice:function(t){return t&&1===t.size},computeGroupedStateHistory:function(t,e){var i,o={},n=[];return t||!e?{line:[],timeline:[]}:(e.forEach(function(t){var e,i;t&&0!==t.size&&(e=t.find(function(t){return"unit_of_measurement"in t.attributes}),i=!!e&&e.attributes.unit_of_measurement,i?i in o?o[i].push(t.toArray()):o[i]=[t.toArray()]:n.push(t.toArray()))}),n=n.length>0&&n,i=Object.keys(o).map(function(t){return{unit:t,data:o[t]}}),{line:i,timeline:n})},googleApiLoaded:function(){window.google.load("visualization","1",{packages:["timeline","corechart"],callback:function(){this.apiLoaded=!0}.bind(this)})},computeContentClasses:function(t){return t?"loading":""},computeIsLoading:function(t,e){return t||!e},computeIsEmpty:function(t){return t&&0===t.size}})</script><dom-module id="more-info-automation" assetpath="more-infos/"><template><style>paper-button{color:var(--default-primary-color);font-weight:500;top:3px;height:37px}</style><p>Last triggered:<ha-relative-time datetime="[[stateObj.attributes.last_triggered]]"></ha-relative-time></p><paper-button on-tap="handleTriggerTapped">TRIGGER</paper-button></template></dom-module><script>Polymer({is:"more-info-automation",properties:{hass:{type:Object},stateObj:{type:Object}},handleTriggerTapped:function(){this.hass.serviceActions.callService("automation","trigger",{entity_id:this.stateObj.entityId})}})</script><dom-module id="paper-range-slider" assetpath="../bower_components/paper-range-slider/"><template><style>:host{--paper-range-slider-width:200px;@apply(--layout);@apply(--layout-justified);@apply(--layout-center);--paper-range-slider-lower-color:var(--paper-grey-400);--paper-range-slider-active-color:var(--primary-color);--paper-range-slider-higher-color:var(--paper-grey-400);--paper-range-slider-knob-color:var(--primary-color);--paper-range-slider-pin-color:var(--primary-color);--paper-range-slider-pin-start-color:var(--paper-grey-400);--paper-range-slider-knob-start-color:transparent;--paper-range-slider-knob-start-border-color:var(--paper-grey-400)}#sliderOuterDiv_0{display:inline-block;width:var(--paper-range-slider-width)}#sliderOuterDiv_1{position:relative;height:calc(30px + var(--paper-single-range-slider-height,2px));margin-left:0;margin-right:0;margin-top:0;margin-bottom:0}.sliderKnobMinMax{position:absolute;left:0;top:0;margin-left:calc(-15px - var(--paper-single-range-slider-height,2px)/ 2);width:calc(30px + var(--paper-single-range-slider-height,2px));height:calc(30px + var(--paper-single-range-slider-height,2px))}.divSpanWidth{position:absolute;width:100%;display:block;top:0}#sliderMax{--paper-single-range-slider-bar-color:transparent;--paper-single-range-slider-knob-color:var(--paper-range-slider-knob-color);--paper-single-range-slider-pin-color:var(--paper-range-slider-pin-color);--paper-single-range-slider-active-color:var(--paper-range-slider-active-color);--paper-single-range-slider-secondary-color:var(--paper-range-slider-higher-color);--paper-single-range-slider-pin-start-color:var(--paper-range-slider-pin-start-color);--paper-single-range-slider-knob-start-color:var(--paper-range-slider-knob-start-color);--paper-single-range-slider-knob-start-border-color:var(--paper-range-slider-knob-start-border-color)}#sliderMin{--paper-single-range-slider-active-color:var(--paper-range-slider-lower-color);--paper-single-range-slider-secondary-color:transparent;--paper-single-range-slider-knob-color:var(--paper-range-slider-knob-color);--paper-single-range-slider-pin-color:var(--paper-range-slider-pin-color);--paper-single-range-slider-pin-start-color:var(--paper-range-slider-pin-start-color);--paper-single-range-slider-knob-start-color:var(--paper-range-slider-knob-start-color);--paper-single-range-slider-knob-start-border-color:var(--paper-range-slider-knob-start-border-color)}</style><div id="sliderOuterDiv_0" style=""><div id="sliderOuterDiv_1"><div id="backDiv" class="divSpanWidth" on-down="_backDivDown" on-tap="_backDivTap" on-up="_backDivUp" on-track="_backDivOnTrack" on-transitionend="_backDivTransEnd"><div id="backDivInner_0" style="line-height:200%"><br></div></div><div id="sliderKnobMin" class="sliderKnobMinMax" on-down="_backDivDown" on-up="_backDivUp" on-track="_sliderKnobMinOnTrack"></div><div id="sliderKnobMax" class="sliderKnobMinMax" on-down="_backDivDown" on-up="_backDivUp" on-track="_sliderKnobMaxOnTrack"></div><div class="divSpanWidth" style="pointer-events:none"><paper-single-range-slider id="sliderMax" disabled$="[[disabled]]" on-down="_sliderMaxDown" on-up="_sliderMaxUp" step="[[step]]" min="[[min]]" max="[[max]]" value="[[valueMax]]" secondary-progress="[[max]]" style="width:100%"></paper-single-range-slider></div><div class="divSpanWidth" style="pointer-events:none"><paper-single-range-slider id="sliderMin" disabled$="[[disabled]]" on-down="_sliderMinDown" on-up="_sliderMinUp" noink="" step="[[step]]" min="[[min]]" max="[[max]]" value="[[valueMin]]" style="width:100%"></paper-single-range-slider></div><div id="backDivInner_1" style="line-height:100%"><br></div></div></div></template><script>Polymer({is:"paper-range-slider",behaviors:[Polymer.IronRangeBehavior],properties:{sliderWidth:{type:String,value:"",notify:!0,reflectToAttribute:!0},style:{type:String,value:"",notify:!0,reflectToAttribute:!0},min:{type:Number,value:0,notify:!0,reflectToAttribute:!0},max:{type:Number,value:100,notify:!0,reflectToAttribute:!0},valueMin:{type:Number,value:0,notify:!0,reflectToAttribute:!0},valueMax:{type:Number,value:100,notify:!0,reflectToAttribute:!0},step:{type:Number,value:1,notify:!0,reflectToAttribute:!0},valueDiffMin:{type:Number,value:0,notify:!0,reflectToAttribute:!0},valueDiffMax:{type:Number,value:0,notify:!0,reflectToAttribute:!0},alwaysShowPin:{type:Boolean,value:!1,notify:!0},pin:{type:Boolean,value:!1,notify:!0},snaps:{type:Boolean,value:!1,notify:!0},disabled:{type:Boolean,value:!1,notify:!0},singleSlider:{type:Boolean,value:!1,notify:!0},transDuration:{type:Number,value:250},tapValueExtend:{type:Boolean,value:!0,notify:!0},tapValueReduce:{type:Boolean,value:!1,notify:!0},tapValueMove:{type:Boolean,value:!1,notify:!0}},ready:function(){function i(i){return void 0!=i&&null!=i}i(this._nInitTries)||(this._nInitTries=0);var t=this.$$("#sliderMax").$$("#sliderContainer");if(i(t)&&(t=t.offsetWidth>0),i(t)&&(t=this.$$("#sliderMin").$$("#sliderContainer")),i(t)&&(t=t.offsetWidth>0),i(t))this._renderedReady();else{if(this._nInitTries<1e3){var e=this;setTimeout(function(){e.ready()},10)}else console.error("could not properly initialize the underlying paper-single-range-slider elements ...");this._nInitTries++}},_renderedReady:function(){this.init(),this._setPadding();var i=this;this.$$("#sliderMin").addEventListener("immediate-value-change",function(t){i._setValueMinMax(i._getValuesMinMax(this.immediateValue,null)),i.$.sliderMin._expandKnob(),i.$.sliderMax._expandKnob()}),this.$$("#sliderMax").addEventListener("immediate-value-change",function(t){i._setValueMinMax(i._getValuesMinMax(null,this.immediateValue))}),this.$$("#sliderMin").addEventListener("change",function(t){i._setValueMinMax(i._getValuesMinMax(this.immediateValue,null)),i.alwaysShowPin&&i.$.sliderMin._expandKnob()}),this.$$("#sliderMax").addEventListener("change",function(t){i._setValueMinMax(i._getValuesMinMax(null,this.immediateValue)),i.alwaysShowPin&&i.$.sliderMax._expandKnob()})},_setPadding:function(){var i=document.createElement("div");i.setAttribute("style","position:absolute; top:0px; opacity:0;"),i.innerHTML="invisibleText",document.body.insertBefore(i,document.body.children[0]);var t=i.offsetHeight/2;this.style.paddingTop=t+"px",this.style.paddingBottom=t+"px",i.parentNode.removeChild(i)},_setValueDiff:function(){this._valueDiffMax=Math.max(this.valueDiffMax,0),this._valueDiffMin=Math.max(this.valueDiffMin,0)},_getValuesMinMax:function(i,t){var e=null!=i&&i>=this.min&&i<=this.max,s=null!=t&&t>=this.min&&t<=this.max;if(!e&&!s)return[this.valueMin,this.valueMax];var n=e?i:this.valueMin,a=s?t:this.valueMax;n=Math.min(Math.max(n,this.min),this.max),a=Math.min(Math.max(a,this.min),this.max);var l=a-n;return e?l<this._valueDiffMin?(a=Math.min(this.max,n+this._valueDiffMin),l=a-n,l<this._valueDiffMin&&(n=a-this._valueDiffMin)):l>this._valueDiffMax&&this._valueDiffMax>0&&(a=n+this._valueDiffMax):l<this._valueDiffMin?(n=Math.max(this.min,a-this._valueDiffMin),l=a-n,l<this._valueDiffMin&&(a=n+this._valueDiffMin)):l>this._valueDiffMax&&this._valueDiffMax>0&&(n=a-this._valueDiffMax),[n,a]},_setValueMin:function(i){i=Math.max(i,this.min),this.$$("#sliderMin").value=i,this.valueMin=i},_setValueMax:function(i){i=Math.min(i,this.max),this.$$("#sliderMax").value=i,this.valueMax=i},_setValueMinMax:function(i){this._setValueMin(i[0]),this._setValueMax(i[1]),this._updateSliderKnobMinMax(),this.updateValues()},_setValues:function(i,t){null!=i&&(i<this.min||i>this.max)&&(i=null),null!=t&&(t<this.min||t>this.max)&&(t=null),null!=i&&null!=t&&(i=Math.min(i,t)),this._setValueMinMax(this._getValuesMinMax(i,t))},_updateSliderKnobMinMax:function(){var i=this.$$("#sliderMax").$$("#sliderContainer").offsetWidth,t=i*(this.valueMin-this.min)/(this.max-this.min)+.5*this.$$("#sliderKnobMin").offsetWidth,e=i*(this.valueMax-this.min)/(this.max-this.min)+.5*this.$$("#sliderKnobMax").offsetWidth;this.$$("#sliderKnobMin").style.left=t+"px",this.$$("#sliderKnobMax").style.left=e+"px"},_backDivOnTrack:function(i){switch(i.stopPropagation(),i.detail.state){case"start":this._backDivTrackStart(i);break;case"track":this._backDivTrackDuring(i);break;case"end":this._backDivTrackEnd()}},_backDivTrackStart:function(i){},_backDivTrackDuring:function(i){this._x1_Min=this._x0_Min+i.detail.dx;var t=this._calcStep(this._getRatioPos(this.$$("#sliderMin"),this._x1_Min/this._xWidth));this._x1_Max=this._x0_Max+i.detail.dx;var e=this._calcStep(this._getRatioPos(this.$$("#sliderMax"),this._x1_Max/this._xWidth));t>=this.min&&e<=this.max&&this._setValuesWithCurrentDiff(t,e,!1)},_setValuesWithCurrentDiff:function(i,t,e){var s=this._valueDiffMin,n=this._valueDiffMax;this._valueDiffMin=this.valueMax-this.valueMin,this._valueDiffMax=this.valueMax-this.valueMin,e?this.setValues(i,t):this._setValues(i,t),this._valueDiffMin=s,this._valueDiffMax=n},_backDivTrackEnd:function(){},_sliderKnobMinOnTrack:function(i){this._x1_Min=this._x0_Min+i.detail.dx;var t=this._calcStep(this._getRatioPos(this.$$("#sliderMin"),this._x1_Min/this._xWidth));this._setValues(t,null)},_sliderKnobMaxOnTrack:function(i){this._x1_Max=this._x0_Max+i.detail.dx;var t=this._calcStep(this._getRatioPos(this.$$("#sliderMax"),this._x1_Max/this._xWidth));this._setValues(null,t)},_sliderMinDown:function(){this.$$("#sliderMax")._expandKnob()},_sliderMaxDown:function(i){this.singleSlider?this._setValues(null,this._getEventValue(i)):this.$$("#sliderMin")._expandKnob()},_sliderMinUp:function(){this.alwaysShowPin?this.$$("#sliderMin")._expandKnob():this.$$("#sliderMax")._resetKnob()},_sliderMaxUp:function(){this.alwaysShowPin?this.$$("#sliderMax")._expandKnob():(this.$$("#sliderMin")._resetKnob(),this.singleSlider&&this.$$("#sliderMax")._resetKnob())},_getEventValue:function(i){var t=this.$$("#sliderMax").$$("#sliderContainer").offsetWidth,e=this.$$("#sliderMax").$$("#sliderContainer").getBoundingClientRect(),s=(i.detail.x-e.left)/t,n=this.min+s*(this.max-this.min);return n},_backDivTap:function(i){this._setValueNow=function(i,t){this.tapValueMove?this._setValuesWithCurrentDiff(i,t,!0):this.setValues(i,t)};var t=this._getEventValue(i);if(t>this.valueMin&&t<this.valueMax){if(this.tapValueReduce){var e=t<this.valueMin+(this.valueMax-this.valueMin)/2;e?this._setValueNow(t,null):this._setValueNow(null,t)}}else(this.tapValueExtend||this.tapValueMove)&&(t<this.valueMin&&this._setValueNow(t,null),t>this.valueMax&&this._setValueNow(null,t))},_backDivDown:function(i){this._sliderMinDown(),this._sliderMaxDown(),this._xWidth=this.$$("#sliderMin").$$("#sliderBar").offsetWidth,this._x0_Min=this.$$("#sliderMin").ratio*this._xWidth,this._x0_Max=this.$$("#sliderMax").ratio*this._xWidth},_backDivUp:function(){this._sliderMinUp(),this._sliderMaxUp()},_backDivTransEnd:function(i){},_getRatioPos:function(i,t){return Math.max(i.min,Math.min(i.max,(i.max-i.min)*t+i.min))},init:function(){this.setSingleSlider(this.singleSlider),this.setDisabled(this.disabled),this.alwaysShowPin&&(this.pin=!0),this.$$("#sliderMin").pin=this.pin,this.$$("#sliderMax").pin=this.pin,this.$$("#sliderMin").snaps=this.snaps,this.$$("#sliderMax").snaps=this.snaps,""!=this.sliderWidth&&(this.customStyle["--paper-range-slider-width"]=this.sliderWidth,this.updateStyles()),this.$$("#sliderMin").$$("#sliderBar").$$("#progressContainer").style.background="transparent",this._prevUpdateValues=[this.min,this.max],this._setValueDiff(),this._setValueMinMax(this._getValuesMinMax(this.valueMin,this.valueMax)),this.alwaysShowPin&&(this.$$("#sliderMin")._expandKnob(),this.$$("#sliderMax")._expandKnob())},setValues:function(i,t){this.$$("#sliderMin")._setTransiting(!0),this.$$("#sliderMax")._setTransiting(!0),this._setValues(i,t);var e=this;setTimeout(function(){e.$.sliderMin._setTransiting(!1),e.$.sliderMax._setTransiting(!1)},e.transDuration)},updateValues:function(){this._prevUpdateValues[0]==this.valueMin&&this._prevUpdateValues[1]==this.valueMax||(this._prevUpdateValues=[this.valueMin,this.valueMax],this.async(function(){this.fire("updateValues")}))},setMin:function(i){this.max<i&&(this.max=i),this.min=i,this._prevUpdateValues=[this.min,this.max],this.valueMin<this.min?this._setValues(this.min,null):this._updateSliderKnobMinMax()},setMax:function(i){this.min>i&&(this.min=i),this.max=i,this._prevUpdateValues=[this.min,this.max],this.valueMax>this.max?this._setValues(null,this.max):this._updateSliderKnobMinMax()},setStep:function(i){this.step=i},setValueDiffMin:function(i){this._valueDiffMin=i},setValueDiffMax:function(i){this._valueDiffMax=i},setTapValueExtend:function(i){this.tapValueExtend=i},setTapValueReduce:function(i){this.tapValueReduce=i},setTapValueMove:function(i){this.tapValueMove=i},setDisabled:function(i){this.disabled=i;var t=i?"none":"auto";this.$$("#sliderMax").$$("#sliderKnobInner").style.pointerEvents=t,this.$$("#sliderMin").$$("#sliderKnobInner").style.pointerEvents=t,this.$$("#sliderOuterDiv_1").style.pointerEvents=t,this.$$("#sliderKnobMin").style.pointerEvents=t,this.$$("#sliderKnobMax").style.pointerEvents=t},setSingleSlider:function(i){this.singleSlider=i,i?(this.$$("#backDiv").style.display="none",this.$$("#sliderMax").style.pointerEvents="auto",this.$$("#sliderMax").style.display="",this.$$("#sliderMin").style.display="none",this.$$("#sliderKnobMin").style.pointerEvents="none",this.$$("#sliderKnobMax").style.pointerEvents="none"):(this.$$("#backDiv").style.display="block",this.$$("#sliderMax").style.pointerEvents="none",this.$$("#sliderMax").style.display="",this.$$("#sliderMin").style.display="",this.$$("#sliderKnobMin").style.pointerEvents="auto",this.$$("#sliderKnobMax").style.pointerEvents="auto"),this.$$("#sliderMax").$$("#sliderContainer").style.pointerEvents=this.singleSlider?"auto":"none",this.$$("#sliderMin").$$("#sliderContainer").style.pointerEvents="none"}})</script></dom-module><dom-module id="paper-single-range-slider" assetpath="../bower_components/paper-range-slider/"><template strip-whitespace=""><style>:host{@apply(--layout);@apply(--layout-justified);@apply(--layout-center);width:200px;cursor:default;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;--paper-progress-active-color:var(--paper-single-range-slider-active-color, --google-blue-700);--paper-progress-secondary-color:var(--paper-single-range-slider-secondary-color, --google-blue-300);--paper-progress-disabled-active-color:var(--paper-single-range-slider-disabled-active-color, --paper-grey-400);--paper-progress-disabled-secondary-color:var(--paper-single-range-slider-disabled-secondary-color, --paper-grey-400)}:host(:focus){outline:0}#sliderContainer{position:relative;width:100%;height:calc(30px + var(--paper-single-range-slider-height,2px));margin-left:calc(15px + var(--paper-single-range-slider-height,2px)/ 2);margin-right:calc(15px + var(--paper-single-range-slider-height,2px)/ 2)}#sliderContainer:focus{outline:0}#sliderContainer.editable{margin-top:12px;margin-bottom:12px}.bar-container{position:absolute;top:0;bottom:0;left:0;right:0;overflow:hidden}.ring>.bar-container{left:calc(5px + var(--paper-single-range-slider-height,2px)/ 2);transition:left .18s ease}.ring.expand.dragging>.bar-container{transition:none}.ring.expand:not(.pin)>.bar-container{left:calc(8px + var(--paper-single-range-slider-height,2px)/ 2)}#sliderBar{padding:15px 0;width:100%;background-color:var(--paper-single-range-slider-bar-color,transparent);--paper-progress-container-color:var(--paper-single-range-slider-container-color, --paper-grey-400);--paper-progress-height:var(--paper-single-range-slider-height, 2px)}.slider-markers{position:absolute;top:calc(14px + var(--paper-single-range-slider-height,2px)/ 2);height:var(--paper-single-range-slider-height,2px);left:0;right:-1px;box-sizing:border-box;pointer-events:none;@apply(--layout-horizontal)}.slider-marker{@apply(--layout-flex)}.slider-marker::after,.slider-markers::after{content:"";display:block;margin-left:-1px;width:2px;height:2px;border-radius:50%;background-color:#000}#sliderKnob{position:absolute;left:0;top:0;margin-left:calc(-15px - var(--paper-single-range-slider-height,2px)/ 2);width:calc(30px + var(--paper-single-range-slider-height,2px));height:calc(30px + var(--paper-single-range-slider-height,2px))}.transiting>#sliderKnob{transition:left 80ms ease}#sliderKnob:focus{outline:0}#sliderKnob.dragging{transition:none}.snaps>#sliderKnob.dragging{transition:-webkit-transform 80ms ease;transition:transform 80ms ease}#sliderKnobInner{margin:10px;width:calc(100% - 20px);height:calc(100% - 20px);background-color:var(--paper-single-range-slider-knob-color,--google-blue-700);border:2px solid var(--paper-single-range-slider-knob-color,--google-blue-700);border-radius:50%;-moz-box-sizing:border-box;box-sizing:border-box;transition-property:-webkit-transform,background-color,border;transition-property:transform,background-color,border;transition-duration:.18s;transition-timing-function:ease}.expand:not(.pin)>#sliderKnob>#sliderKnobInner{-webkit-transform:scale(1.5);transform:scale(1.5)}.ring>#sliderKnob>#sliderKnobInner{background-color:var(--paper-single-range-slider-knob-start-color,transparent);border:2px solid var(--paper-single-range-slider-knob-start-border-color,--paper-grey-400)}#sliderKnobInner::before{background-color:var(--paper-single-range-slider-pin-color,--google-blue-700)}.pin>#sliderKnob>#sliderKnobInner::before{content:"";position:absolute;top:0;left:50%;margin-left:-13px;width:26px;height:26px;border-radius:50% 50% 50% 0;-webkit-transform:rotate(-45deg) scale(0) translate(0);transform:rotate(-45deg) scale(0) translate(0)}#sliderKnobInner::after,#sliderKnobInner::before{transition:-webkit-transform .18s ease,background-color .18s ease;transition:transform .18s ease,background-color .18s ease}.pin.ring>#sliderKnob>#sliderKnobInner::before{background-color:var(--paper-single-range-slider-pin-start-color,--paper-grey-400)}.pin.expand>#sliderKnob>#sliderKnobInner::before{-webkit-transform:rotate(-45deg) scale(1) translate(17px,-17px);transform:rotate(-45deg) scale(1) translate(17px,-17px)}.pin>#sliderKnob>#sliderKnobInner::after{content:attr(value);position:absolute;top:0;left:50%;margin-left:-16px;width:32px;height:26px;text-align:center;color:var(--paper-single-range-slider-font-color,#fff);font-size:10px;-webkit-transform:scale(0) translate(0);transform:scale(0) translate(0)}.pin.expand>#sliderKnob>#sliderKnobInner::after{-webkit-transform:scale(1) translate(0,-17px);transform:scale(1) translate(0,-17px)}.slider-input{width:50px;overflow:hidden;--paper-input-container-input:{text-align:center};@apply(--paper-single-range-slider-input)}#sliderContainer.disabled{pointer-events:none}.disabled>#sliderKnob>#sliderKnobInner{background-color:var(--paper-single-range-slider-disabled-knob-color,--paper-grey-400);border:2px solid var(--paper-single-range-slider-disabled-knob-color,--paper-grey-400);-webkit-transform:scale3d(.75,.75,1);transform:scale3d(.75,.75,1)}.disabled.ring>#sliderKnob>#sliderKnobInner{background-color:var(--paper-single-range-slider-knob-start-color,transparent);border:2px solid var(--paper-single-range-slider-knob-start-border-color,--paper-grey-400)}paper-ripple{color:var(--paper-single-range-slider-knob-color,--google-blue-700)}</style><div id="sliderContainer" class$="[[_getClassNames(disabled, pin, snaps, immediateValue, min, expand, dragging, transiting, editable)]]"><div class="bar-container"><paper-progress disabled$="[[disabled]]" id="sliderBar" aria-hidden="true" min="[[min]]" max="[[max]]" step="[[step]]" value="[[immediateValue]]" secondary-progress="[[secondaryProgress]]" on-down="_bardown" on-up="_resetKnob" on-track="_onTrack"></paper-progress></div><template is="dom-if" if="[[snaps]]"><div class="slider-markers"><template is="dom-repeat" items="[[markers]]"><div class="slider-marker"></div></template></div></template><div id="sliderKnob" on-down="_knobdown" on-up="_resetKnob" on-track="_onTrack" on-transitionend="_knobTransitionEnd"><div id="sliderKnobInner" value$="[[immediateValue]]"></div></div></div><template is="dom-if" if="[[editable]]"><paper-input id="input" type="number" step="[[step]]" min="[[min]]" max="[[max]]" class="slider-input" disabled$="[[disabled]]" value="[[immediateValue]]" on-change="_changeValue" on-keydown="_inputKeyDown" no-label-float=""></paper-input></template></template><script>Polymer({is:"paper-single-range-slider",behaviors:[Polymer.IronA11yKeysBehavior,Polymer.IronFormElementBehavior,Polymer.PaperInkyFocusBehavior,Polymer.IronRangeBehavior],properties:{snaps:{type:Boolean,value:!1,notify:!0},pin:{type:Boolean,value:!1,notify:!0},secondaryProgress:{type:Number,value:0,notify:!0,observer:"_secondaryProgressChanged"},editable:{type:Boolean,value:!1},immediateValue:{type:Number,value:0,readOnly:!0,notify:!0},maxMarkers:{type:Number,value:0,notify:!0},expand:{type:Boolean,value:!1,readOnly:!0},dragging:{type:Boolean,value:!1,readOnly:!0},transiting:{type:Boolean,value:!1,readOnly:!0},markers:{type:Array,readOnly:!0,value:[]}},observers:["_updateKnob(value, min, max, snaps, step)","_valueChanged(value)","_immediateValueChanged(immediateValue)","_updateMarkers(maxMarkers, min, max, snaps)"],hostAttributes:{role:"slider",tabindex:0},keyBindings:{"left down pagedown home":"_decrementKey","right up pageup end":"_incrementKey"},increment:function(){this.value=this._clampValue(this.value+this.step)},decrement:function(){this.value=this._clampValue(this.value-this.step)},_updateKnob:function(t,e,i,s,a){this.setAttribute("aria-valuemin",e),this.setAttribute("aria-valuemax",i),this.setAttribute("aria-valuenow",t),this._positionKnob(this._calcRatio(t))},_valueChanged:function(){this.fire("value-change")},_immediateValueChanged:function(){this.dragging?this.fire("immediate-value-change"):this.value=this.immediateValue},_secondaryProgressChanged:function(){this.secondaryProgress=this._clampValue(this.secondaryProgress)},_expandKnob:function(){this._setExpand(!0)},_resetKnob:function(){this.cancelDebouncer("expandKnob"),this._setExpand(!1)},_positionKnob:function(t){this._setImmediateValue(this._calcStep(this._calcKnobPosition(t))),this._setRatio(this._calcRatio(this.immediateValue)),this.$.sliderKnob.style.left=100*this.ratio+"%",this.dragging&&(this._knobstartx=this.ratio*this._w,this.translate3d(0,0,0,this.$.sliderKnob))},_calcKnobPosition:function(t){return(this.max-this.min)*t+this.min},_onTrack:function(t){switch(t.stopPropagation(),t.detail.state){case"start":this._trackStart(t);break;case"track":this._trackX(t);break;case"end":this._trackEnd()}},_trackStart:function(t){this._w=this.$.sliderBar.offsetWidth,this._x=this.ratio*this._w,this._startx=this._x,this._knobstartx=this._startx,this._minx=-this._startx,this._maxx=this._w-this._startx,this.$.sliderKnob.classList.add("dragging"),this._setDragging(!0)},_trackX:function(t){this.dragging||this._trackStart(t);var e=Math.min(this._maxx,Math.max(this._minx,t.detail.dx));this._x=this._startx+e;var i=this._calcStep(this._calcKnobPosition(this._x/this._w));this._setImmediateValue(i);var s=this._calcRatio(this.immediateValue)*this._w-this._knobstartx;this.translate3d(s+"px",0,0,this.$.sliderKnob)},_trackEnd:function(){var t=this.$.sliderKnob.style;this.$.sliderKnob.classList.remove("dragging"),this._setDragging(!1),this._resetKnob(),this.value=this.immediateValue,t.transform=t.webkitTransform="",this.fire("change")},_knobdown:function(t){this._expandKnob(),t.preventDefault(),this.focus()},_bardown:function(t){this._w=this.$.sliderBar.offsetWidth;var e=this.$.sliderBar.getBoundingClientRect(),i=(t.detail.x-e.left)/this._w,s=this.ratio;this._setTransiting(!0),this._positionKnob(i),this.debounce("expandKnob",this._expandKnob,60),s===this.ratio&&this._setTransiting(!1),this.async(function(){this.fire("change")}),t.preventDefault(),this.focus()},_knobTransitionEnd:function(t){t.target===this.$.sliderKnob&&this._setTransiting(!1)},_updateMarkers:function(t,e,i,s){s||this._setMarkers([]);var a=Math.round((i-e)/this.step);a>t&&(a=t),this._setMarkers(new Array(a))},_mergeClasses:function(t){return Object.keys(t).filter(function(e){return t[e]}).join(" ")},_getClassNames:function(){return this._mergeClasses({disabled:this.disabled,pin:this.pin,snaps:this.snaps,ring:this.immediateValue<=this.min,expand:this.expand,dragging:this.dragging,transiting:this.transiting,editable:this.editable})},_incrementKey:function(t){this.disabled||("end"===t.detail.key?this.value=this.max:this.increment(),this.fire("change"))},_decrementKey:function(t){this.disabled||("home"===t.detail.key?this.value=this.min:this.decrement(),this.fire("change"))},_changeValue:function(t){this.value=t.target.value,this.fire("change")},_inputKeyDown:function(t){t.stopPropagation()},_createRipple:function(){return this._rippleContainer=this.$.sliderKnob,Polymer.PaperInkyFocusBehaviorImpl._createRipple.call(this)},_focusedChanged:function(t){t&&this.ensureRipple(),this.hasRipple()&&(t?this._ripple.style.display="":this._ripple.style.display="none",this._ripple.holdDown=t)}})</script></dom-module><dom-module id="more-info-climate" assetpath="more-infos/"><template><style is="custom-style" include="iron-flex"></style><style>:host{color:var(--primary-text-color);--paper-input-container-input:{text-transform:capitalize};}.container-aux_heat,.container-away_mode,.container-fan_list,.container-humidity,.container-operation_list,.container-swing_list,.container-temperature{display:none}.has-aux_heat .container-aux_heat,.has-away_mode .container-away_mode,.has-fan_list .container-fan_list,.has-humidity .container-humidity,.has-operation_list .container-operation_list,.has-swing_list .container-swing_list,.has-temperature .container-temperature{display:block}.container-fan_list iron-icon,.container-operation_list iron-icon,.container-swing_list iron-icon{margin:22px 16px 0 0}paper-dropdown-menu{width:100%}paper-slider{width:100%}.auto paper-slider{--paper-slider-active-color:var(--paper-orange-400);--paper-slider-secondary-color:var(--paper-blue-400)}.heat paper-slider{--paper-slider-active-color:var(--paper-orange-400);--paper-slider-secondary-color:var(--paper-green-400)}.cool paper-slider{--paper-slider-active-color:var(--paper-green-400);--paper-slider-secondary-color:var(--paper-blue-400)}.humidity{--paper-slider-active-color:var(--paper-blue-400);--paper-slider-secondary-color:var(--paper-blue-400)}paper-range-slider{--paper-range-slider-lower-color:var(--paper-orange-400);--paper-range-slider-active-color:var(--paper-green-400);--paper-range-slider-higher-color:var(--paper-blue-400);--paper-range-slider-knob-color:var(--primary-color);--paper-range-slider-pin-color:var(--primary-color);--paper-range-slider-width:100%}.single-row{padding:8px 0}.capitalize{text-transform:capitalize}</style><div class$="[[computeClassNames(stateObj)]]"><div class="container-temperature"><div class$="single-row, [[stateObj.attributes.operation_mode]]"><div hidden$="[[computeTargetTempHidden(stateObj)]]">Target Temperature</div><paper-slider min="[[stateObj.attributes.min_temp]]" max="[[stateObj.attributes.max_temp]]" secondary-progress="[[stateObj.attributes.max_temp]]" pin="" step="0.5" value="[[stateObj.attributes.temperature]]" hidden$="[[computeHideTempSlider(stateObj)]]" on-change="targetTemperatureSliderChanged"></paper-slider><paper-range-slider min="[[stateObj.attributes.min_temp]]" max="[[stateObj.attributes.max_temp]]" pin="" step="0.5" value-min="[[stateObj.attributes.target_temp_low]]" value-max="[[stateObj.attributes.target_temp_high]]" value-diff-min="2" hidden$="[[computeHideTempRangeSlider(stateObj)]]" on-change="targetTemperatureRangeSliderChanged"></paper-range-slider></div></div><div class="container-humidity"><div class="single-row"><div>Target Humidity</div><paper-slider class="humidity" min="[[stateObj.attributes.min_humidity]]" max="[[stateObj.attributes.max_humidity]]" secondary-progress="[[stateObj.attributes.max_humidity]]" step="1" pin="" value="[[stateObj.attributes.humidity]]" on-change="targetHumiditySliderChanged"></paper-slider></div></div><div class="container-operation_list"><div class="controls"><paper-dropdown-menu label-float="" label="Operation"><paper-menu class="dropdown-content" selected="{{operationIndex}}"><template is="dom-repeat" items="[[stateObj.attributes.operation_list]]"><paper-item class="capitalize">[[item]]</paper-item></template></paper-menu></paper-dropdown-menu></div></div><div class="container-fan_list"><paper-dropdown-menu label-float="" label="Fan Mode"><paper-menu class="dropdown-content" selected="{{fanIndex}}"><template is="dom-repeat" items="[[stateObj.attributes.fan_list]]"><paper-item>[[item]]</paper-item></template></paper-menu></paper-dropdown-menu></div><div class="container-swing_list"><paper-dropdown-menu label-float="" label="Swing Mode"><paper-menu class="dropdown-content" selected="{{swingIndex}}"><template is="dom-repeat" items="[[stateObj.attributes.swing_list]]"><paper-item>[[item]]</paper-item></template></paper-menu></paper-dropdown-menu></div><div class="container-away_mode"><div class="center horizontal layout single-row"><div class="flex">Away Mode</div><paper-toggle-button checked="[[awayToggleChecked]]" on-change="awayToggleChanged"></paper-toggle-button></div></div><div class="container-aux_heat"><div class="center horizontal layout single-row"><div class="flex">Aux Heat</div><paper-toggle-button checked="[[auxToggleChecked]]" on-change="auxToggleChanged"></paper-toggle-button></div></div></div></template></dom-module><script>Polymer({is:"more-info-climate",properties:{hass:{type:Object},stateObj:{type:Object,observer:"stateObjChanged"},operationIndex:{type:Number,value:-1,observer:"handleOperationmodeChanged"},fanIndex:{type:Number,value:-1,observer:"handleFanmodeChanged"},swingIndex:{type:Number,value:-1,observer:"handleSwingmodeChanged"},awayToggleChecked:{type:Boolean},auxToggleChecked:{type:Boolean}},stateObjChanged:function(e){this.targetTemperatureSliderValue=e.attributes.temperature,this.awayToggleChecked="on"===e.attributes.away_mode,this.auxheatToggleChecked="on"===e.attributes.aux_heat,e.attributes.fan_list?this.fanIndex=e.attributes.fan_list.indexOf(e.attributes.fan_mode):this.fanIndex=-1,e.attributes.operation_list?this.operationIndex=e.attributes.operation_list.indexOf(e.attributes.operation_mode):this.operationIndex=-1,e.attributes.swing_list?this.swingIndex=e.attributes.swing_list.indexOf(e.attributes.swing_mode):this.swingIndex=-1,this.async(function(){this.fire("iron-resize")}.bind(this),500)},computeTargetTempHidden:function(e){return!e.attributes.temperature&&!e.attributes.target_temp_low&&!e.attributes.target_temp_high},computeHideTempRangeSlider:function(e){return!e.attributes.target_temp_low&&!e.attributes.target_temp_high},computeHideTempSlider:function(e){return!e.attributes.temperature},computeClassNames:function(e){return"more-info-climate "+window.hassUtil.attributeClassNames(e,["away_mode","aux_heat","temperature","humidity","operation_list","fan_list","swing_list"])},targetTemperatureSliderChanged:function(e){var t=e.target.value;t!==this.stateObj.attributes.temperature&&this.callServiceHelper("set_temperature",{temperature:t})},targetTemperatureRangeSliderChanged:function(e){var t=e.currentTarget.valueMin,a=e.currentTarget.valueMax;t===this.stateObj.attributes.target_temp_low&&a===this.stateObj.attributes.target_temp_high||this.callServiceHelper("set_temperature",{target_temp_low:t,target_temp_high:a})},targetHumiditySliderChanged:function(e){var t=e.target.value;t!==this.stateObj.attributes.humidity&&this.callServiceHelper("set_humidity",{humidity:t})},awayToggleChanged:function(e){var t="on"===this.stateObj.attributes.away_mode,a=e.target.checked;t!==a&&this.callServiceHelper("set_away_mode",{away_mode:a})},auxToggleChanged:function(e){var t="on"===this.stateObj.attributes.aux_heat,a=e.target.checked;t!==a&&this.callServiceHelper("set_aux_heat",{aux_heat:a})},handleFanmodeChanged:function(e){var t;""!==e&&e!==-1&&(t=this.stateObj.attributes.fan_list[e],t!==this.stateObj.attributes.fan_mode&&this.callServiceHelper("set_fan_mode",{fan_mode:t}))},handleOperationmodeChanged:function(e){var t;""!==e&&e!==-1&&(t=this.stateObj.attributes.operation_list[e],t!==this.stateObj.attributes.operation_mode&&this.callServiceHelper("set_operation_mode",{operation_mode:t}))},handleSwingmodeChanged:function(e){var t;""!==e&&e!==-1&&(t=this.stateObj.attributes.swing_list[e],t!==this.stateObj.attributes.swing_mode&&this.callServiceHelper("set_swing_mode",{swing_mode:t}))},callServiceHelper:function(e,t){t.entity_id=this.stateObj.entityId,this.hass.serviceActions.callService("climate",e,t).then(function(){this.stateObjChanged(this.stateObj)}.bind(this))}})</script><dom-module id="more-info-cover" assetpath="more-infos/"><template><style is="custom-style" include="iron-flex"></style><style>.current_position,.current_tilt_position{max-height:0;overflow:hidden}.has-current_position .current_position,.has-current_tilt_position .current_tilt_position{max-height:90px}</style><div class$="[[computeClassNames(stateObj)]]"><div class="current_position"><div>Position</div><paper-slider min="0" max="100" value="{{coverPositionSliderValue}}" step="1" pin="" on-change="coverPositionSliderChanged"></paper-slider></div><div class="current_tilt_position"><div>Tilt position</div><paper-icon-button icon="mdi:arrow-top-right" on-tap="onOpenTiltTap" title="Open tilt" disabled="[[computeIsFullyOpenTilt(stateObj)]]"></paper-icon-button><paper-icon-button icon="mdi:stop" on-tap="onStopTiltTap" title="Stop tilt"></paper-icon-button><paper-icon-button icon="mdi:arrow-bottom-left" on-tap="onCloseTiltTap" title="Close tilt" disabled="[[computeIsFullyClosedTilt(stateObj)]]"></paper-icon-button><paper-slider min="0" max="100" value="{{coverTiltPositionSliderValue}}" step="1" pin="" on-change="coverTiltPositionSliderChanged"></paper-slider></div></div></template></dom-module><script>Polymer({is:"more-info-cover",properties:{hass:{type:Object},stateObj:{type:Object,observer:"stateObjChanged"},coverPositionSliderValue:{type:Number},coverTiltPositionSliderValue:{type:Number}},stateObjChanged:function(t){this.coverPositionSliderValue=t.attributes.current_position,this.coverTiltPositionSliderValue=t.attributes.current_tilt_position},computeClassNames:function(t){return window.hassUtil.attributeClassNames(t,["current_position","current_tilt_position"])},coverPositionSliderChanged:function(t){this.hass.serviceActions.callService("cover","set_cover_position",{entity_id:this.stateObj.entityId,position:t.target.value})},coverTiltPositionSliderChanged:function(t){this.hass.serviceActions.callService("cover","set_cover_tilt_position",{entity_id:this.stateObj.entityId,tilt_position:t.target.value})},computeIsFullyOpenTilt:function(t){return 100===t.attributes.current_tilt_position},computeIsFullyClosedTilt:function(t){return 0===t.attributes.current_tilt_position},onOpenTiltTap:function(){this.hass.serviceActions.callService("cover","open_cover_tilt",{entity_id:this.stateObj.entityId})},onCloseTiltTap:function(){this.hass.serviceActions.callService("cover","close_cover_tilt",{entity_id:this.stateObj.entityId})},onStopTiltTap:function(){this.hass.serviceActions.callService("cover","stop_cover",{entity_id:this.stateObj.entityId})}})</script><dom-module id="more-info-default" assetpath="more-infos/"><template><style is="custom-style" include="iron-flex iron-flex-alignment"></style><style>.data-entry .value{max-width:200px}</style><div class="layout vertical"><template is="dom-repeat" items="[[computeDisplayAttributes(stateObj)]]" as="attribute"><div class="data-entry layout justified horizontal"><div class="key">[[formatAttribute(attribute)]]</div><div class="value">[[getAttributeValue(stateObj, attribute)]]</div></div></template></div></template></dom-module><script>!function(){"use strict";var e=["entity_picture","friendly_name","icon","unit_of_measurement","emulated_hue","emulated_hue_name","haaska_hidden","haaska_name","homebridge_hidden","homebridge_name"];Polymer({is:"more-info-default",properties:{stateObj:{type:Object}},computeDisplayAttributes:function(t){return t?Object.keys(t.attributes).filter(function(t){return e.indexOf(t)===-1}):[]},formatAttribute:function(e){return e.replace(/_/g," ")},getAttributeValue:function(e,t){var r=e.attributes[t];return Array.isArray(r)?r.join(", "):r}})}()</script><dom-module id="more-info-group" assetpath="more-infos/"><template><style>.child-card{margin-bottom:8px}.child-card:last-child{margin-bottom:0}</style><div id="groupedControlDetails"></div><template is="dom-repeat" items="[[states]]" as="state"><div class="child-card"><state-card-content state-obj="[[state]]" hass="[[hass]]"></state-card-content></div></template></template></dom-module><script>Polymer({is:"more-info-group",behaviors:[window.hassBehavior],properties:{hass:{type:Object},stateObj:{type:Object},states:{type:Array,bindNuclear:function(t){return[t.moreInfoGetters.currentEntity,t.entityGetters.entityMap,function(t,e){return t?t.attributes.entity_id.map(e.get.bind(e)):[]}]}}},observers:["statesChanged(stateObj, states)"],statesChanged:function(t,e){var s,i,a,n,r=!1;if(e&&e.length>0)for(s=e[0],r=s.set("entityId",t.entityId).set("attributes",Object.assign({},s.attributes)),i=0;i<e.length;i++)a=e[i],a&&a.domain&&r.domain!==a.domain&&(r=!1);r?window.hassUtil.dynamicContentUpdater(this.$.groupedControlDetails,"MORE-INFO-"+window.hassUtil.stateMoreInfoType(r).toUpperCase(),{stateObj:r,hass:this.hass}):(n=Polymer.dom(this.$.groupedControlDetails),n.lastChild&&n.removeChild(n.lastChild))}})</script><dom-module id="more-info-sun" assetpath="more-infos/"><template><style is="custom-style" include="iron-flex iron-flex-alignment"></style><template is="dom-repeat" items="[[computeOrder(risingDate, settingDate)]]"><div class="data-entry layout justified horizontal"><div class="key"><span>[[itemCaption(item)]]</span><ha-relative-time datetime-obj="[[itemDate(item)]]"></ha-relative-time></div><div class="value">[[itemValue(item)]]</div></div></template><div class="data-entry layout justified horizontal"><div class="key">Elevation</div><div class="value">[[stateObj.attributes.elevation]]</div></div></template></dom-module><script>Polymer({is:"more-info-sun",properties:{stateObj:{type:Object},risingDate:{type:Object,computed:"computeRising(stateObj)"},settingDate:{type:Object,computed:"computeSetting(stateObj)"}},computeRising:function(t){return new Date(t.attributes.next_rising)},computeSetting:function(t){return new Date(t.attributes.next_setting)},computeOrder:function(t,e){return t>e?["set","ris"]:["ris","set"]},itemCaption:function(t){return"ris"===t?"Rising ":"Setting "},itemDate:function(t){return"ris"===t?this.risingDate:this.settingDate},itemValue:function(t){return window.hassUtil.formatTime(this.itemDate(t))}})</script><dom-module id="more-info-configurator" assetpath="more-infos/"><template><style is="custom-style" include="iron-flex"></style><style>p{margin:8px 0}p>img{max-width:100%}p.center{text-align:center}p.error{color:#C62828}p.submit{text-align:center;height:41px}paper-spinner{width:14px;height:14px;margin-right:20px}</style><div class="layout vertical"><template is="dom-if" if="[[isConfigurable]]"><p hidden$="[[!stateObj.attributes.description]]">[[stateObj.attributes.description]] <a hidden$="[[!stateObj.attributes.link_url]]" href="[[stateObj.attributes.link_url]]" target="_blank">[[stateObj.attributes.link_name]]</a></p><p class="error" hidden$="[[!stateObj.attributes.errors]]">[[stateObj.attributes.errors]]</p><p class="center" hidden$="[[!stateObj.attributes.description_image]]"><img src="[[stateObj.attributes.description_image]]"></p><template is="dom-repeat" items="[[stateObj.attributes.fields]]"><paper-input-container id="paper-input-fields-{{item.id}}"><label>[[item.name]]</label><input is="iron-input" type="[[item.type]]" id="[[item.id]]" on-change="fieldChanged"></paper-input-container></template><p class="submit"><paper-button raised="" disabled="[[isConfiguring]]" on-tap="submitClicked"><paper-spinner active="[[isConfiguring]]" hidden="[[!isConfiguring]]" alt="Configuring"></paper-spinner>[[submitCaption]]</paper-button></p></template></div></template></dom-module><script>Polymer({is:"more-info-configurator",behaviors:[window.hassBehavior],properties:{stateObj:{type:Object},action:{type:String,value:"display"},isStreaming:{type:Boolean,bindNuclear:function(i){return i.streamGetters.isStreamingEvents}},isConfigurable:{type:Boolean,computed:"computeIsConfigurable(stateObj)"},isConfiguring:{type:Boolean,value:!1},submitCaption:{type:String,computed:"computeSubmitCaption(stateObj)"},fieldInput:{type:Object,value:{}}},computeIsConfigurable:function(i){return"configure"===i.state},computeSubmitCaption:function(i){return i.attributes.submit_caption||"Set configuration"},fieldChanged:function(i){var t=i.target;this.fieldInput[t.id]=t.value},submitClicked:function(){var i={configure_id:this.stateObj.attributes.configure_id,fields:this.fieldInput};this.isConfiguring=!0,this.hass.serviceActions.callService("configurator","configure",i).then(function(){this.isConfiguring=!1,this.isStreaming||this.hass.syncActions.fetchAll()}.bind(this),function(){this.isConfiguring=!1}.bind(this))}})</script><dom-module id="more-info-script" assetpath="more-infos/"><template><style is="custom-style" include="iron-flex iron-flex-alignment"></style><div class="layout vertical"><div class="data-entry layout justified horizontal"><div class="key">Last Action</div><div class="value">[[stateObj.attributes.last_action]]</div></div></div></template></dom-module><script>Polymer({is:"more-info-script",properties:{stateObj:{type:Object}}})</script><dom-module id="ha-labeled-slider" assetpath="components/"><template><style>:host{display:block;padding-bottom:16px}.title{margin-bottom:16px;opacity:var(--dark-primary-opacity)}iron-icon{float:left;margin-top:4px;opacity:var(--dark-secondary-opacity)}.slider-container{margin-left:24px}</style><div class="title">[[caption]]</div><iron-icon icon="[[icon]]"></iron-icon><div class="slider-container"><paper-slider min="[[min]]" max="[[max]]" value="{{value}}"></paper-slider></div></template></dom-module><script>Polymer({is:"ha-labeled-slider",properties:{caption:{type:String},icon:{type:String},min:{type:Number},max:{type:Number},value:{type:Number,notify:!0}}})</script><dom-module id="ha-color-picker" assetpath="components/"><template><style>canvas{cursor:crosshair}</style><canvas width="[[width]]" height="[[height]]"></canvas></template></dom-module><script>Polymer({is:"ha-color-picker",properties:{color:{type:Object},width:{type:Number},height:{type:Number}},listeners:{mousedown:"onMouseDown",mouseup:"onMouseUp",touchstart:"onTouchStart",touchend:"onTouchEnd"},onMouseDown:function(t){this.onMouseMove(t),this.addEventListener("mousemove",this.onMouseMove)},onMouseUp:function(){this.removeEventListener("mousemove",this.onMouseMove)},onTouchStart:function(t){this.onTouchMove(t),this.addEventListener("touchmove",this.onTouchMove)},onTouchEnd:function(){this.removeEventListener("touchmove",this.onTouchMove)},onTouchMove:function(t){this.mouseMoveIsThrottled&&(this.mouseMoveIsThrottled=!1,this.processColorSelect(t.touches[0]),this.async(function(){this.mouseMoveIsThrottled=!0}.bind(this),100))},onMouseMove:function(t){this.mouseMoveIsThrottled&&(this.mouseMoveIsThrottled=!1,this.processColorSelect(t),this.async(function(){this.mouseMoveIsThrottled=!0}.bind(this),100))},processColorSelect:function(t){var o=this.canvas.getBoundingClientRect();t.clientX<o.left||t.clientX>=o.left+o.width||t.clientY<o.top||t.clientY>=o.top+o.height||this.onColorSelect(t.clientX-o.left,t.clientY-o.top)},onColorSelect:function(t,o){var e=this.context.getImageData(t,o,1,1).data;this.setColor({r:e[0],g:e[1],b:e[2]})},setColor:function(t){this.color=t,this.fire("colorselected",{rgb:this.color})},ready:function(){this.setColor=this.setColor.bind(this),this.mouseMoveIsThrottled=!0,this.canvas=this.children[0],this.context=this.canvas.getContext("2d"),this.drawGradient()},drawGradient:function(){var t,o,e,i,s;this.width&&this.height||(t=getComputedStyle(this)),o=this.width||parseInt(t.width,10),e=this.height||parseInt(t.height,10),i=this.context.createLinearGradient(0,0,o,0),i.addColorStop(0,"rgb(255,0,0)"),i.addColorStop(.16,"rgb(255,0,255)"),i.addColorStop(.32,"rgb(0,0,255)"),i.addColorStop(.48,"rgb(0,255,255)"),i.addColorStop(.64,"rgb(0,255,0)"),i.addColorStop(.8,"rgb(255,255,0)"),i.addColorStop(1,"rgb(255,0,0)"),this.context.fillStyle=i,this.context.fillRect(0,0,o,e),s=this.context.createLinearGradient(0,0,0,e),s.addColorStop(0,"rgba(255,255,255,1)"),s.addColorStop(.5,"rgba(255,255,255,0)"),s.addColorStop(.5,"rgba(0,0,0,0)"),s.addColorStop(1,"rgba(0,0,0,1)"),this.context.fillStyle=s,this.context.fillRect(0,0,o,e)}})</script><dom-module id="more-info-light" assetpath="more-infos/"><template><style is="custom-style" include="iron-flex"></style><style>.effect_list{padding-bottom:16px}.brightness,.color_temp,.effect_list,.white_value{max-height:0;overflow:hidden;transition:max-height .5s ease-in}ha-color-picker{display:block;width:250px;max-height:0;overflow:hidden;transition:max-height .2s ease-in}.has-brightness .brightness,.has-color_temp .color_temp,.has-effect_list .effect_list,.has-white_value .white_value{max-height:84px}.has-rgb_color ha-color-picker{max-height:200px}</style><div class$="[[computeClassNames(stateObj)]]"><div class="effect_list"><paper-dropdown-menu label-float="" label="Effect"><paper-menu class="dropdown-content" selected="{{effectIndex}}"><template is="dom-repeat" items="[[stateObj.attributes.effect_list]]"><paper-item>[[item]]</paper-item></template></paper-menu></paper-dropdown-menu></div><div class="brightness"><ha-labeled-slider caption="Brightness" icon="mdi:brightness-5" max="255" value="{{brightnessSliderValue}}" on-change="brightnessSliderChanged"></ha-labeled-slider></div><div class="color_temp"><ha-labeled-slider caption="Color Temperature" icon="mdi:thermometer" min="154" max="500" value="{{ctSliderValue}}" on-change="ctSliderChanged"></ha-labeled-slider></div><div class="white_value"><ha-labeled-slider caption="White Value" icon="mdi:file-word-box" max="255" value="{{wvSliderValue}}" on-change="wvSliderChanged"></ha-labeled-slider></div><ha-color-picker on-colorselected="colorPicked" height="200" width="250"></ha-color-picker></div></template></dom-module><script>Polymer({is:"more-info-light",properties:{hass:{type:Object},stateObj:{type:Object,observer:"stateObjChanged"},effectIndex:{type:Number,value:-1,observer:"effectChanged"},brightnessSliderValue:{type:Number,value:0},ctSliderValue:{type:Number,value:0},wvSliderValue:{type:Number,value:0}},stateObjChanged:function(t){t&&"on"===t.state&&(this.brightnessSliderValue=t.attributes.brightness,this.ctSliderValue=t.attributes.color_temp,this.wvSliderValue=t.attributes.white_value,t.attributes.effect_list?this.effectIndex=t.attributes.effect_list.indexOf(t.attributes.effect):this.effectIndex=-1),this.async(function(){this.fire("iron-resize")}.bind(this),500)},computeClassNames:function(t){return window.hassUtil.attributeClassNames(t,["brightness","rgb_color","color_temp","white_value","effect_list"])},effectChanged:function(t){var e;""!==t&&t!==-1&&(e=this.stateObj.attributes.effect_list[t],e!==this.stateObj.attributes.effect&&this.hass.serviceActions.callService("light","turn_on",{entity_id:this.stateObj.entityId,effect:e}))},brightnessSliderChanged:function(t){var e=parseInt(t.target.value,10);isNaN(e)||(0===e?this.hass.serviceActions.callTurnOff(this.stateObj.entityId):this.hass.serviceActions.callService("light","turn_on",{entity_id:this.stateObj.entityId,brightness:e}))},ctSliderChanged:function(t){var e=parseInt(t.target.value,10);isNaN(e)||this.hass.serviceActions.callService("light","turn_on",{entity_id:this.stateObj.entityId,color_temp:e})},wvSliderChanged:function(t){var e=parseInt(t.target.value,10);isNaN(e)||this.hass.serviceActions.callService("light","turn_on",{entity_id:this.stateObj.entityId,white_value:e})},serviceChangeColor:function(t,e,i){t.serviceActions.callService("light","turn_on",{entity_id:e,rgb_color:[i.r,i.g,i.b]})},colorPicked:function(t){return this.skipColorPicked?void(this.colorChanged=!0):(this.color=t.detail.rgb,this.serviceChangeColor(this.hass,this.stateObj.entityId,this.color),this.colorChanged=!1,this.skipColorPicked=!0,void(this.colorDebounce=setTimeout(function(){this.colorChanged&&this.serviceChangeColor(this.hass,this.stateObj.entityId,this.color),this.skipColorPicked=!1}.bind(this),500)))}})</script><dom-module id="more-info-media_player" assetpath="more-infos/"><template><style is="custom-style" include="iron-flex"></style><style>.media-state{text-transform:capitalize}paper-icon-button[highlight]{color:var(--accent-color)}.volume{margin-bottom:8px;max-height:0;overflow:hidden;transition:max-height .5s ease-in}.has-volume_level .volume{max-height:40px}iron-icon.source-input{padding:7px;margin-top:15px}paper-dropdown-menu.source-input{margin-left:10px}[hidden]{display:none!important}</style><div class$="[[computeClassNames(stateObj)]]"><div class="layout horizontal"><div class="flex"><paper-icon-button icon="mdi:power" highlight$="[[isOff]]" on-tap="handleTogglePower" hidden$="[[computeHidePowerButton(isOff, supportsTurnOn, supportsTurnOff)]]"></paper-icon-button></div><div><template is="dom-if" if="[[computeShowPlaybackControls(isOff, hasMediaControl)]]"><paper-icon-button icon="mdi:skip-previous" on-tap="handlePrevious" hidden$="[[!supportsPreviousTrack]]"></paper-icon-button><paper-icon-button icon="[[computePlaybackControlIcon(stateObj)]]" on-tap="handlePlaybackControl" highlight=""></paper-icon-button><paper-icon-button icon="mdi:skip-next" on-tap="handleNext" hidden$="[[!supportsNextTrack]]"></paper-icon-button></template></div></div><div class="volume_buttons center horizontal layout" hidden$="[[computeHideVolumeButtons(isOff, supportsVolumeButtons)]]"><paper-icon-button on-tap="handleVolumeTap" icon="mdi:volume-off"></paper-icon-button><paper-icon-button id="volumeDown" disabled$="[[isMuted]]" on-mousedown="handleVolumeDown" on-touchstart="handleVolumeDown" icon="mdi:volume-medium"></paper-icon-button><paper-icon-button id="volumeUp" disabled$="[[isMuted]]" on-mousedown="handleVolumeUp" on-touchstart="handleVolumeUp" icon="mdi:volume-high"></paper-icon-button></div><div class="volume center horizontal layout" hidden$="[[!supportsVolumeSet]]"><paper-icon-button on-tap="handleVolumeTap" hidden$="[[supportsVolumeButtons]]" icon="[[computeMuteVolumeIcon(isMuted)]]"></paper-icon-button><paper-slider disabled$="[[isMuted]]" min="0" max="100" value="[[volumeSliderValue]]" on-change="volumeSliderChanged" class="flex"></paper-slider></div><div class="controls layout horizontal justified" hidden$="[[!computeHideSelectSource(isOff, supportsSelectSource)]]"><iron-icon class="source-input" icon="mdi:login-variant"></iron-icon><paper-dropdown-menu class="source-input" label-float="" label="Source"><paper-menu class="dropdown-content" selected="{{sourceIndex}}"><template is="dom-repeat" items="[[stateObj.attributes.source_list]]"><paper-item>[[item]]</paper-item></template></paper-menu></paper-dropdown-menu></div></div></template></dom-module><script>Polymer({is:"more-info-media_player",properties:{hass:{type:Object},stateObj:{type:Object,observer:"stateObjChanged"},isOff:{type:Boolean,value:!1},isPlaying:{type:Boolean,value:!1},isMuted:{type:Boolean,value:!1},source:{type:String,value:""},sourceIndex:{type:Number,value:0,observer:"handleSourceChanged"},volumeSliderValue:{type:Number,value:0},supportsPause:{type:Boolean,value:!1},supportsVolumeSet:{type:Boolean,value:!1},supportsVolumeMute:{type:Boolean,value:!1},supportsPreviousTrack:{type:Boolean,value:!1},supportsNextTrack:{type:Boolean,value:!1},supportsTurnOn:{type:Boolean,value:!1},supportsTurnOff:{type:Boolean,value:!1},supportsVolumeButtons:{type:Boolean,value:!1},supportsSelectSource:{type:Boolean,value:!1},hasMediaControl:{type:Boolean,value:!1}},HAS_MEDIA_STATES:["playing","paused","unknown"],stateObjChanged:function(e){e&&(this.isOff="off"===e.state,this.isPlaying="playing"===e.state,this.hasMediaControl=this.HAS_MEDIA_STATES.indexOf(e.state)!==-1,this.volumeSliderValue=100*e.attributes.volume_level,this.isMuted=e.attributes.is_volume_muted,this.source=e.attributes.source,this.supportsPause=0!==(1&e.attributes.supported_media_commands),this.supportsVolumeSet=0!==(4&e.attributes.supported_media_commands),this.supportsVolumeMute=0!==(8&e.attributes.supported_media_commands),this.supportsPreviousTrack=0!==(16&e.attributes.supported_media_commands),this.supportsNextTrack=0!==(32&e.attributes.supported_media_commands),this.supportsTurnOn=0!==(128&e.attributes.supported_media_commands),this.supportsTurnOff=0!==(256&e.attributes.supported_media_commands),this.supportsVolumeButtons=0!==(1024&e.attributes.supported_media_commands),this.supportsSelectSource=0!==(2048&e.attributes.supported_media_commands),void 0!==e.attributes.source_list&&(this.sourceIndex=e.attributes.source_list.indexOf(this.source))),this.async(function(){this.fire("iron-resize")}.bind(this),500)},computeClassNames:function(e){return window.hassUtil.attributeClassNames(e,["volume_level"])},computeIsOff:function(e){return"off"===e.state},computeMuteVolumeIcon:function(e){return e?"mdi:volume-off":"mdi:volume-high"},computeHideVolumeButtons:function(e,t){return!t||e},computeShowPlaybackControls:function(e,t){return!e&&t},computePlaybackControlIcon:function(){return this.isPlaying?this.supportsPause?"mdi:pause":"mdi:stop":"mdi:play"},computeHidePowerButton:function(e,t,s){return e?!t:!s},computeHideSelectSource:function(e,t){return!e&&t},computeSelectedSource:function(e){return e.attributes.source_list.indexOf(e.attributes.source)},handleTogglePower:function(){this.callService(this.isOff?"turn_on":"turn_off")},handlePrevious:function(){this.callService("media_previous_track")},handlePlaybackControl:function(){this.callService("media_play_pause")},handleNext:function(){this.callService("media_next_track")},handleSourceChanged:function(e){var t;!this.stateObj||void 0===this.stateObj.attributes.source_list||e<0||e>=this.stateObj.attributes.source_list.length||(t=this.stateObj.attributes.source_list[e],t!==this.stateObj.attributes.source&&this.callService("select_source",{source:t}))},handleVolumeTap:function(){this.supportsVolumeMute&&this.callService("volume_mute",{is_volume_muted:!this.isMuted})},handleVolumeUp:function(){var e=this.$.volumeUp;this.handleVolumeWorker("volume_up",e,!0)},handleVolumeDown:function(){var e=this.$.volumeDown;this.handleVolumeWorker("volume_down",e,!0)},handleVolumeWorker:function(e,t,s){(s||void 0!==t&&t.pointerDown)&&(this.callService(e),this.async(function(){this.handleVolumeWorker(e,t,!1)}.bind(this),500))},volumeSliderChanged:function(e){var t=parseFloat(e.target.value),s=t>0?t/100:0;this.callService("volume_set",{volume_level:s})},callService:function(e,t){var s=t||{};s.entity_id=this.stateObj.entityId,this.hass.serviceActions.callService("media_player",e,s)}})</script><dom-module id="more-info-camera" assetpath="more-infos/"><template><style>:host{max-width:640px}.camera-image{width:100%}</style><img class="camera-image" src="[[computeCameraImageUrl(hass, stateObj)]]" on-load="imageLoaded" alt="[[stateObj.entityDisplay]]"></template></dom-module><script>Polymer({is:"more-info-camera",properties:{hass:{type:Object},stateObj:{type:Object}},imageLoaded:function(){this.fire("iron-resize")},computeCameraImageUrl:function(e,t){return e.demo?"/demo/webcam.jpg":t?"/api/camera_proxy_stream/"+t.entityId+"?token="+t.attributes.access_token:"data:image/gif;base64,R0lGODlhAQABAAAAACw="}})</script><dom-module id="more-info-updater" assetpath="more-infos/"><template><style>.link{color:#03A9F4}</style><div><a class="link" href="https://home-assistant.io/getting-started/updating/" target="_blank">Update Instructions</a></div></template></dom-module><script>Polymer({is:"more-info-updater",properties:{stateObj:{type:Object}},computeReleaseNotes:function(t){return t.attributes.release_notes||"https://home-assistant.io/getting-started/updating/"}})</script><dom-module id="more-info-alarm_control_panel" assetpath="more-infos/"><template><style is="custom-style" include="iron-flex"></style><div class="layout horizontal"><paper-input label="code" value="{{enteredCode}}" pattern="[[codeFormat]]" type="password" hidden$="[[!codeInputVisible]]" disabled="[[!codeInputEnabled]]"></paper-input></div><div class="layout horizontal"><paper-button on-tap="handleDisarmTap" hidden$="[[!disarmButtonVisible]]" disabled="[[!codeValid]]">Disarm</paper-button><paper-button on-tap="handleHomeTap" hidden$="[[!armHomeButtonVisible]]" disabled="[[!codeValid]]">Arm Home</paper-button><paper-button on-tap="handleAwayTap" hidden$="[[!armAwayButtonVisible]]" disabled="[[!codeValid]]">Arm Away</paper-button></div></template></dom-module><script>Polymer({is:"more-info-alarm_control_panel",properties:{hass:{type:Object},stateObj:{type:Object,observer:"stateObjChanged"},enteredCode:{type:String,value:""},disarmButtonVisible:{type:Boolean,value:!1},armHomeButtonVisible:{type:Boolean,value:!1},armAwayButtonVisible:{type:Boolean,value:!1},codeInputVisible:{type:Boolean,value:!1},codeInputEnabled:{type:Boolean,value:!1},codeFormat:{type:String,value:""},codeValid:{type:Boolean,computed:"validateCode(enteredCode, codeFormat)"}},validateCode:function(e,t){var a=new RegExp(t);return null===t||a.test(e)},stateObjChanged:function(e){e&&(this.codeFormat=e.attributes.code_format,this.codeInputVisible=null!==this.codeFormat,this.codeInputEnabled="armed_home"===e.state||"armed_away"===e.state||"disarmed"===e.state||"pending"===e.state||"triggered"===e.state,this.disarmButtonVisible="armed_home"===e.state||"armed_away"===e.state||"pending"===e.state||"triggered"===e.state,this.armHomeButtonVisible="disarmed"===e.state,this.armAwayButtonVisible="disarmed"===e.state),this.async(function(){this.fire("iron-resize")}.bind(this),500)},handleDisarmTap:function(){this.callService("alarm_disarm",{code:this.enteredCode})},handleHomeTap:function(){this.callService("alarm_arm_home",{code:this.enteredCode})},handleAwayTap:function(){this.callService("alarm_arm_away",{code:this.enteredCode})},callService:function(e,t){var a=t||{};a.entity_id=this.stateObj.entityId,this.hass.serviceActions.callService("alarm_control_panel",e,a).then(function(){this.enteredCode=""}.bind(this))}})</script><dom-module id="more-info-lock" assetpath="more-infos/"><template><style>paper-input{display:inline-block}</style><div hidden$="[[!stateObj.attributes.code_format]]"><paper-input label="code" value="{{enteredCode}}" pattern="[[stateObj.attributes.code_format]]" type="password"></paper-input><paper-button on-tap="handleUnlockTap" hidden$="[[!isLocked]]">Unlock</paper-button><paper-button on-tap="handleLockTap" hidden$="[[isLocked]]">Lock</paper-button></div></template></dom-module><script>Polymer({is:"more-info-lock",properties:{hass:{type:Object},stateObj:{type:Object,observer:"stateObjChanged"},enteredCode:{type:String,value:""}},handleUnlockTap:function(){this.callService("unlock",{code:this.enteredCode})},handleLockTap:function(){this.callService("lock",{code:this.enteredCode})},stateObjChanged:function(e){e&&(this.isLocked="locked"===e.state),this.async(function(){this.fire("iron-resize")}.bind(this),500)},callService:function(e,t){var i=t||{};i.entity_id=this.stateObj.entityId,this.hass.serviceActions.callService("lock",e,i)}})</script><script>Polymer({is:"more-info-content",properties:{hass:{type:Object},stateObj:{type:Object,observer:"stateObjChanged"}},created:function(){this.style.display="block"},stateObjChanged:function(t){t&&window.hassUtil.dynamicContentUpdater(this,"MORE-INFO-"+window.hassUtil.stateMoreInfoType(t).toUpperCase(),{hass:this.hass,stateObj:t})}})</script><dom-module id="more-info-dialog" assetpath="dialogs/"><template><style>paper-dialog{font-size:14px;width:365px}paper-dialog[data-domain=camera]{width:auto}state-history-charts{position:relative;z-index:1;max-width:365px}state-card-content{margin-bottom:24px;font-size:14px}@media all and (max-width:450px),all and (max-height:500px){paper-dialog{margin:0;width:100%;max-height:calc(100% - 64px);position:fixed!important;bottom:0;left:0;right:0;overflow:scroll}}</style><paper-dialog id="dialog" with-backdrop="" opened="{{dialogOpen}}" data-domain$="[[stateObj.domain]]"><h2><state-card-content state-obj="[[stateObj]]" hass="[[hass]]" in-dialog=""></state-card-content></h2><template is="dom-if" if="[[showHistoryComponent]]"><state-history-charts state-history="[[stateHistory]]" is-loading-data="[[isLoadingHistoryData]]"></state-history-charts></template><paper-dialog-scrollable id="scrollable"><more-info-content state-obj="[[stateObj]]" hass="[[hass]]"></more-info-content></paper-dialog-scrollable></paper-dialog></template></dom-module><script>Polymer({is:"more-info-dialog",behaviors:[window.hassBehavior],properties:{hass:{type:Object},stateObj:{type:Object,bindNuclear:function(t){return t.moreInfoGetters.currentEntity},observer:"stateObjChanged"},stateHistory:{type:Object,bindNuclear:function(t){return[t.moreInfoGetters.currentEntityHistory,function(t){return!!t&&[t]}]}},isLoadingHistoryData:{type:Boolean,computed:"computeIsLoadingHistoryData(delayedDialogOpen, isLoadingEntityHistoryData)"},isLoadingEntityHistoryData:{type:Boolean,bindNuclear:function(t){return t.entityHistoryGetters.isLoadingEntityHistory}},hasHistoryComponent:{type:Boolean,bindNuclear:function(t){return t.configGetters.isComponentLoaded("history")},observer:"fetchHistoryData"},shouldFetchHistory:{type:Boolean,bindNuclear:function(t){return t.moreInfoGetters.isCurrentEntityHistoryStale},observer:"fetchHistoryData"},showHistoryComponent:{type:Boolean,value:!1,computed:"computeShowHistoryComponent(hasHistoryComponent, stateObj)"},dialogOpen:{type:Boolean,value:!1,observer:"dialogOpenChanged"},delayedDialogOpen:{type:Boolean,value:!1}},ready:function(){this.$.scrollable.dialogElement=this.$.dialog},computeIsLoadingHistoryData:function(t,e){return!t||e},computeShowHistoryComponent:function(t,e){return this.hasHistoryComponent&&e&&window.hassUtil.DOMAINS_WITH_NO_HISTORY.indexOf(e.domain)===-1},fetchHistoryData:function(){this.stateObj&&this.hasHistoryComponent&&this.shouldFetchHistory&&this.hass.entityHistoryActions.fetchRecent(this.stateObj.entityId)},stateObjChanged:function(t){return t?void this.async(function(){this.fetchHistoryData(),this.dialogOpen=!0}.bind(this),10):void(this.dialogOpen=!1)},dialogOpenChanged:function(t){t?this.async(function(){this.delayedDialogOpen=!0}.bind(this),10):!t&&this.stateObj&&(this.async(function(){this.hass.moreInfoActions.deselectEntity()}.bind(this),10),this.delayedDialogOpen=!1)}})</script><dom-module id="ha-voice-command-dialog" assetpath="dialogs/"><template><style>iron-icon{margin-right:8px}.content{width:300px;min-height:80px;font-size:18px}.icon{float:left}.text{margin-left:48px;margin-right:24px}.interimTranscript{color:#a9a9a9}@media all and (max-width:450px){paper-dialog{margin:0;width:100%;max-height:calc(100% - 64px);position:fixed!important;bottom:0;left:0;right:0;overflow:scroll}}</style><paper-dialog id="dialog" with-backdrop="" opened="{{dialogOpen}}"><div class="content"><div class="icon"><iron-icon icon="mdi:text-to-speech" hidden$="[[isTransmitting]]"></iron-icon><paper-spinner active$="[[isTransmitting]]" hidden$="[[!isTransmitting]]"></paper-spinner></div><div class="text"><span>{{finalTranscript}}</span> <span class="interimTranscript">[[interimTranscript]]</span> …</div></div></paper-dialog></template></dom-module><script>Polymer({is:"ha-voice-command-dialog",behaviors:[window.hassBehavior],properties:{hass:{type:Object},dialogOpen:{type:Boolean,value:!1,observer:"dialogOpenChanged"},finalTranscript:{type:String,bindNuclear:function(e){return e.voiceGetters.finalTranscript}},interimTranscript:{type:String,bindNuclear:function(e){return e.voiceGetters.extraInterimTranscript}},isTransmitting:{type:Boolean,bindNuclear:function(e){return e.voiceGetters.isTransmitting}},isListening:{type:Boolean,bindNuclear:function(e){return e.voiceGetters.isListening}},showListenInterface:{type:Boolean,computed:"computeShowListenInterface(isListening, isTransmitting)",observer:"showListenInterfaceChanged"}},computeShowListenInterface:function(e,n){return e||n},dialogOpenChanged:function(e){!e&&this.isListening&&this.hass.voiceActions.stop()},showListenInterfaceChanged:function(e){!e&&this.dialogOpen?this.dialogOpen=!1:e&&(this.dialogOpen=!0)}})</script><dom-module id="paper-icon-item" assetpath="../bower_components/paper-item/"><template><style include="paper-item-shared-styles"></style><style>:host{@apply(--layout-horizontal);@apply(--layout-center);@apply(--paper-font-subhead);@apply(--paper-item);@apply(--paper-icon-item)}.content-icon{@apply(--layout-horizontal);@apply(--layout-center);width:var(--paper-item-icon-width,56px);@apply(--paper-item-icon)}</style><div id="contentIcon" class="content-icon"><content select="[item-icon]"></content></div><content></content></template><script>Polymer({is:"paper-icon-item",behaviors:[Polymer.PaperItemBehavior]})</script></dom-module><dom-module id="ha-sidebar" assetpath="components/"><template><style include="iron-flex iron-flex-alignment iron-positioning">:host{--sidebar-text:{opacity:var(--dark-primary-opacity);font-weight:500;font-size:14px};display:block;overflow:auto;-ms-user-select:none;-webkit-user-select:none;-moz-user-select:none}app-toolbar{font-weight:400;opacity:var(--dark-primary-opacity);border-bottom:1px solid #e0e0e0}paper-menu{padding-bottom:0}paper-icon-item{--paper-icon-item:{cursor:pointer};--paper-item-icon:{color:#000;opacity:var(--dark-secondary-opacity)};--paper-item-selected:{color:var(--default-primary-color);background-color:#e8e8e8;opacity:1};}paper-icon-item.iron-selected{--paper-item-icon:{color:var(--default-primary-color);opacity:1};}paper-icon-item .item-text{@apply(--sidebar-text)}paper-icon-item.iron-selected .item-text{opacity:1}paper-icon-item.logout{margin-top:16px}.divider{height:1px;background-color:#000;margin:4px 0;opacity:var(--dark-divider-opacity)}.setting{@apply(--sidebar-text)}.subheader{@apply(--sidebar-text);padding:16px}.dev-tools{padding:0 8px;opacity:var(--dark-secondary-opacity)}</style><app-toolbar><div main-title="">Home Assistant</div><paper-icon-button icon="mdi:chevron-left" hidden$="[[narrow]]" on-tap="toggleMenu"></paper-icon-button></app-toolbar><paper-menu attr-for-selected="data-panel" selected="[[selected]]" on-iron-select="menuSelect"><paper-icon-item on-tap="menuClicked" data-panel="states"><iron-icon item-icon="" icon="mdi:apps"></iron-icon><span class="item-text">States</span></paper-icon-item><template is="dom-repeat" items="[[computePanels(panels)]]"><paper-icon-item on-tap="menuClicked" data-panel$="[[item.url_path]]"><iron-icon item-icon="" icon="[[item.icon]]"></iron-icon><span class="item-text">[[item.title]]</span></paper-icon-item></template><paper-icon-item on-tap="menuClicked" data-panel="logout" class="logout"><iron-icon item-icon="" icon="mdi:exit-to-app"></iron-icon><span class="item-text">Log Out</span></paper-icon-item></paper-menu><div><template is="dom-if" if="[[supportPush]]"><div class="divider"></div><paper-item class="horizontal layout justified"><div class="setting">Push Notifications</div><paper-toggle-button on-change="handlePushChange" checked="{{pushToggleChecked}}"></paper-toggle-button></paper-item></template><div class="divider"></div><div class="subheader">Developer Tools</div><div class="dev-tools layout horizontal justified"><paper-icon-button icon="mdi:remote" data-panel="dev-service" alt="Services" title="Services" on-tap="menuClicked"></paper-icon-button><paper-icon-button icon="mdi:code-tags" data-panel="dev-state" alt="States" title="States" on-tap="menuClicked"></paper-icon-button><paper-icon-button icon="mdi:radio-tower" data-panel="dev-event" alt="Events" title="Events" on-tap="menuClicked"></paper-icon-button><paper-icon-button icon="mdi:file-xml" data-panel="dev-template" alt="Templates" title="Templates" on-tap="menuClicked"></paper-icon-button><paper-icon-button icon="mdi:information-outline" data-panel="dev-info" alt="Info" title="Info" on-tap="menuClicked"></paper-icon-button></div></div></template></dom-module><script>Polymer({is:"ha-sidebar",behaviors:[window.hassBehavior],properties:{hass:{type:Object},menuShown:{type:Boolean},menuSelected:{type:String},narrow:{type:Boolean},selected:{type:String,bindNuclear:function(t){return t.navigationGetters.activePanelName}},panels:{type:Array,bindNuclear:function(t){return[t.navigationGetters.panels,function(t){return t.toJS()}]}},supportPush:{type:Boolean,value:!1,bindNuclear:function(t){return t.pushNotificationGetters.isSupported}},pushToggleChecked:{type:Boolean,bindNuclear:function(t){return t.pushNotificationGetters.isActive}}},created:function(){this._boundUpdateStyles=this.updateStyles.bind(this)},computePanels:function(t){var e={map:1,logbook:2,history:3},n=[];return Object.keys(t).forEach(function(e){t[e].title&&n.push(t[e])}),n.sort(function(t,n){var i=t.component_name in e,o=n.component_name in e;return i&&o?e[t.component_name]-e[n.component_name]:i?-1:o?1:t.title>n.title?1:t.title<n.title?-1:0}),n},menuSelect:function(){this.debounce("updateStyles",this._boundUpdateStyles,1)},menuClicked:function(t){for(var e=t.target,n=5,i=e.getAttribute("data-panel");n&&!i;)e=e.parentElement,i=e.getAttribute("data-panel"),n--;n&&this.selectPanel(i)},toggleMenu:function(){this.fire("close-menu")},selectPanel:function(t){if(t!==this.selected){if("logout"===t)return void this.handleLogOut();this.hass.navigationActions.navigate.apply(null,t.split("/")),this.debounce("updateStyles",this._boundUpdateStyles,1)}},handlePushChange:function(t){t.target.checked?this.hass.pushNotificationActions.subscribePushNotifications().then(function(t){this.pushToggleChecked=t}.bind(this)):this.hass.pushNotificationActions.unsubscribePushNotifications().then(function(t){this.pushToggleChecked=!t}.bind(this))},handleLogOut:function(){this.hass.authActions.logOut()}})</script><dom-module id="home-assistant-main" assetpath="layouts/"><template><notification-manager hass="[[hass]]"></notification-manager><more-info-dialog hass="[[hass]]"></more-info-dialog><ha-voice-command-dialog hass="[[hass]]"></ha-voice-command-dialog><iron-media-query query="(max-width: 870px)" query-matches="{{narrow}}"></iron-media-query><paper-drawer-panel id="drawer" force-narrow="[[computeForceNarrow(narrow, showSidebar)]]" responsive-width="0" disable-swipe="[[isSelectedMap]]" disable-edge-swipe="[[isSelectedMap]]"><ha-sidebar drawer="" narrow="[[narrow]]" hass="[[hass]]"></ha-sidebar><iron-pages main="" attr-for-selected="id" fallback-selection="panel-resolver" selected="[[activePanel]]" selected-attribute="panel-visible"><partial-cards id="states" narrow="[[narrow]]" hass="[[hass]]" show-menu="[[showSidebar]]"></partial-cards><partial-panel-resolver id="panel-resolver" narrow="[[narrow]]" hass="[[hass]]" show-menu="[[showSidebar]]"></partial-panel-resolver></iron-pages></paper-drawer-panel></template></dom-module><script>Polymer({is:"home-assistant-main",behaviors:[window.hassBehavior],properties:{hass:{type:Object},narrow:{type:Boolean,value:!0},activePanel:{type:String,bindNuclear:function(e){return e.navigationGetters.activePanelName},observer:"activePanelChanged"},showSidebar:{type:Boolean,value:!1,bindNuclear:function(e){return e.navigationGetters.showSidebar}}},listeners:{"open-menu":"openMenu","close-menu":"closeMenu"},openMenu:function(){this.narrow?this.$.drawer.openDrawer():this.hass.navigationActions.showSidebar(!0)},closeMenu:function(){this.$.drawer.closeDrawer(),this.showSidebar&&this.hass.navigationActions.showSidebar(!1)},activePanelChanged:function(){this.narrow&&this.$.drawer.closeDrawer()},attached:function(){window.removeInitMsg(),this.hass.startUrlSync()},computeForceNarrow:function(e,n){return e||!n},detached:function(){this.hass.stopUrlSync()}})</script></div><dom-module id="home-assistant"><template><template is="dom-if" if="[[loaded]]"><home-assistant-main hass="[[hass]]"></home-assistant-main></template><template is="dom-if" if="[[!loaded]]"><login-form hass="[[hass]]" force-show-loading="[[computeForceShowLoading(dataLoaded, iconsLoaded)]]"></login-form></template></template></dom-module><script>Polymer({is:"home-assistant",hostAttributes:{icons:null},behaviors:[window.hassBehavior],properties:{hass:{type:Object,value:window.hass},icons:{type:String},dataLoaded:{type:Boolean,bindNuclear:function(o){return o.syncGetters.isDataLoaded}},iconsLoaded:{type:Boolean,value:!1},loaded:{type:Boolean,computed:"computeLoaded(dataLoaded, iconsLoaded)"}},computeLoaded:function(o,t){return o&&t},computeForceShowLoading:function(o,t){return o&&!t},loadIcons:function(){var o=function(){this.iconsLoaded=!0}.bind(this);this.importHref("/static/mdi-"+this.icons+".html",o,function(){this.importHref("/static/mdi.html",o,o)})},ready:function(){this.loadIcons()}})</script></body></html> \ No newline at end of file +},customStyle:null,getComputedStyleValue:function(e){return!i&&this._styleProperties&&this._styleProperties[e]||getComputedStyle(this).getPropertyValue(e)},_setupStyleProperties:function(){this.customStyle={},this._styleCache=null,this._styleProperties=null,this._scopeSelector=null,this._ownStyleProperties=null,this._customStyle=null},_needsStyleProperties:function(){return Boolean(!i&&this._ownStylePropertyNames&&this._ownStylePropertyNames.length)},_validateApplyShim:function(){if(this.__applyShimInvalid){Polymer.ApplyShim.transform(this._styles,this.__proto__);var e=n.elementStyles(this);if(s){var t=this._template.content.querySelector("style");t&&(t.textContent=e)}else{var r=this._scopeStyle&&this._scopeStyle.nextSibling;r&&(r.textContent=e)}}},_beforeAttached:function(){this._scopeSelector&&!this.__stylePropertiesInvalid||!this._needsStyleProperties()||(this.__stylePropertiesInvalid=!1,this._updateStyleProperties())},_findStyleHost:function(){for(var e,t=this;e=Polymer.dom(t).getOwnerRoot();){if(Polymer.isInstance(e.host))return e.host;t=e.host}return r},_updateStyleProperties:function(){var e,n=this._findStyleHost();n._styleProperties||n._computeStyleProperties(),n._styleCache||(n._styleCache=new Polymer.StyleCache);var r=t.propertyDataFromStyles(n._styles,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),this._computeOwnStyleProperties(),a||(e=o.retrieve(this.is,this._ownStyleProperties,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,_styleProperties:this._styleProperties},i&&(r.key.customStyle={},this.mixin(r.key.customStyle,this.customStyle),n._styleCache.store(this.is,e,r.key,this._styles)),l||o.store(this.is,Object.create(e),this._ownStyleProperties,this._styles))},_computeStyleProperties:function(e){var n=this._findStyleHost();n._styleProperties||n._computeStyleProperties();var r=Object.create(n._styleProperties),s=t.hostAndRootPropertiesForScope(this);this.mixin(r,s.hostProps),e=e||t.propertyDataFromStyles(n._styles,this).properties,this.mixin(r,e),this.mixin(r,s.rootProps),t.mixinCustomStyle(r,this.customStyle),t.reify(r),this._styleProperties=r},_computeOwnStyleProperties:function(){for(var e,t={},n=0;n<this._ownStylePropertyNames.length;n++)e=this._ownStylePropertyNames[n],t[e]=this._styleProperties[e];this._ownStyleProperties=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.style);return s||t.applyElementScopeSelector(this,this._scopeSelector,n,this._scopeCssViaAttr),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._scopeElementClass(r,t))}r=this.shadyRoot&&this.shadyRoot._hasDistributed?Polymer.dom(r):r,e.call(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.updateNativeStyleProperties(this,this.customStyle):(this.isAttached?this._needsStyleProperties()?this._updateStyleProperties():this._styleProperties=null:this.__stylePropertiesInvalid=!0,this._styleCache&&this._styleCache.clear(),this._updateRootStyles())},_updateRootStyles:function(e){e=e||this.root;for(var t,n=Polymer.dom(e)._query(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.updateStyles(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._prepBehaviors(),this._prepPropertyInfo(),this._prepBindings(),this._prepShady()},_prepBehavior:function(e){this._addPropertyEffects(e.properties),this._addComplexObserverEffects(e.observers),this._addHostAttributes(e.hostAttributes)},_initFeatures:function(){this._setupGestures(),this._setupConfigure(),this._setupStyleProperties(),this._setupDebouncers(),this._setupShady(),this._registerHost(),this._template&&(this._validateApplyShim(),this._poolContent(),this._beginHosting(),this._stampTemplate(),this._endHosting(),this._marshalAnnotationReferences()),this._marshalInstanceEffects(),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.StyleTransformer,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.__cssBuild=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.__appliedElement;if(l.useNativeCSSProperties||(this.__needsUpdateStyles=s.hasStyleProperties(),s.addStyle(e)),e.textContent||this.include)this._apply(!0);else{var t=this,n=new MutationObserver(function(){n.disconnect(),t._apply(!0)});n.observe(e,{childList:!0})}}},_updateStyles:function(){Polymer.updateStyles()},_apply:function(e){var t=this.__appliedElement;if(this.include&&(t.textContent=n.cssFromModules(this.include,!0)+t.textContent),t.textContent){var r=this.__cssBuild,s=n.isTargetedBuild(r);if(!l.useNativeCSSProperties||!s){var a=n.rulesForStyle(t);if(s||(n.forEachRule(a,function(e){i.documentRule(e)}),l.useNativeCSSProperties&&!r&&o.transform([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.__needsUpdateStyles=!1,e=a(e,this._updateStyles)):this._applyCustomProperties()},_applyCustomProperties:function(){var e=this.__appliedElement;this._computeStyleProperties();var s=this._styleProperties,i=n.rulesForStyle(e);i&&(e.textContent=n.toCssText(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_",templatize: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._customPrepAnnotations(t,e),this._prepParentProperties(t,e),t._prepEffects(),this._customPrepEffects(t),t._prepBehaviors(),t._prepPropertyInfo(),t._prepBindings(),t._notifyPathUp=this._notifyPathUpImpl,t._scopeElementClass=this._scopeElementClassImpl,t.listen=this._listenImpl,t._showHideChildren=this._showHideChildrenImpl,t.__setPropertyOrig=this.__setProperty,t.__setProperty=this.__setPropertyImpl;var n=this._constructorImpl,r=function(e,t){n.call(this,e,t)};r.prototype=t,t.constructor=r,e._content._ctor=r,this.ctor=r},_getRootDataHost:function(){return this.dataHost&&this.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.__hideTemplateChildren__)&&(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="__polymerTextContent__"),this.__setPropertyOrig(e,t,n,r)},_debounceTemplate:function(e){Polymer.dom.addDebouncer(this.debounce("_debounceTemplate",e))},_flushTemplates:function(){Polymer.dom.flush()},_customPrepEffects:function(e){var t=e._parentProps;for(var n in t)e._addPropertyEffect(n,"function",this._createHostPropEffector(n));for(n in this._instanceProps)e._addPropertyEffect(n,"function",this._createInstancePropEffector(n))},_customPrepAnnotations:function(e,t){e._template=t;var n=t._content;if(!n._notes){var r=e._rootDataHost;r&&(Polymer.Annotations.prepElement=function(){r._prepElement()}),n._notes=Polymer.Annotations.parseAnnotations(t),Polymer.Annotations.prepElement=null,this._processAnnotations(n._notes)}e._notes=n._notes,e._parentProps=n._parentProps},_prepParentProperties:function(e,t){var n=this._parentProps=e._parentProps;if(this._forwardParentProp&&n){var r,s=e._parentPropProto;if(!s){for(r in this._instanceProps)delete n[r];s=e._parentPropProto=Object.create(null),t!=this&&(Polymer.Bind.prepareModel(s),Polymer.Base.prepareModelNotifyPath(s));for(r in n){var i=this._parentPropPrefix+r,o=[{kind:"function",effect:this._createForwardPropEffector(r),fn:Polymer.Bind._functionEffect},{kind:"notify",fn:Polymer.Bind._notifyEffect,effect:{event:Polymer.CaseMap.camelToDashCase(i)+"-changed"}}];Polymer.Bind._createAccessors(s,i,o)}}var a=this;t!=this&&(Polymer.Bind.prepareInstance(t),t._forwardParentProp=function(e,t){a._forwardParentProp(e,t)}),this._extendTemplate(t,s),t._pathEffector=function(e,t,n){return a._pathEffectorImpl(e,t,n)}}},_createForwardPropEffector:function(e){return function(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.dataHost._forwardInstanceProp(this,e,n)}},_extendTemplate:function(e,t){var n=Object.getOwnPropertyNames(t);t._propertySetter&&(e._propertySetter=t._propertySetter);for(var r,s=0;s<n.length&&(r=n[s]);s++){var i=e[r],o=Object.getOwnPropertyDescriptor(t,r);Object.defineProperty(e,r,o),void 0!==i&&e._propertySetter(r,i)}},_showHideChildren:function(e){},_forwardInstancePath:function(e,t,n){},_forwardInstanceProp:function(e,t,n){},_notifyPathUpImpl:function(e,t){var n=this.dataHost,r=Polymer.Path.root(e);n._forwardInstancePath.call(n,this,e,t),r in n._parentProps&&n._templatized._notifyPath(n._parentPropPrefix+e,t)},_pathEffectorImpl:function(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 this._parentProps&&this._forwardParentPath(r,t)}Polymer.Base._pathEffector.call(this._templatized,e,t,n)},_constructorImpl:function(e,t){this._rootDataHost=t._getRootDataHost(),this._setupConfigure(e),this._registerHost(t),this._beginHosting(),this.root=this.instanceTemplate(this._template),this.root.__noContent=!this._notes._hasContent,this.root.__styleScoped=!0,this._endHosting(),this._marshalAnnotatedNodes(),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),this._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)},_scopeElementClassImpl:function(e,t){var n=this._rootDataHost;return n?n._scopeElementClass(e,t):t},stamp:function(e){if(e=e||{},this._parentProps){var t=this._templatized;for(var n in this._parentProps)void 0===e[n]&&(e[n]=t[this._parentPropPrefix+n])}return new this.ctor(e,this)},modelForElement:function(e){for(var t;e;)if(t=e._templateInstance){if(t.dataHost==this)return t;e=t.dataHost}else e=e.parentNode}},Polymer({is:"dom-template",extends:"template",_template:null,behaviors:[Polymer.Templatizer],ready:function(){this.templatize(this)}}),Polymer._collections=new WeakMap,Polymer.Collection=function(e){Polymer._collections.set(e,this),this.userArray=e,this.store=e.slice(),this.initMap()},Polymer.Collection.prototype={constructor:Polymer.Collection,initMap:function(){for(var e=this.omap=new WeakMap,t=this.pmap={},n=this.store,r=0;r<n.length;r++){var s=n[r];s&&"object"==typeof 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.pmap[e],void 0!=t)return"#"+t},getKeys:function(){return Object.keys(this.store).map(function(e){return"#"+e})},_parseKey:function(e){if(e&&"#"==e[0])return e.slice(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.store[e]=t}},getItem:function(e){if(e=this._parseKey(e))return this.store[e]},getItems:function(){var e=[],t=this.store;for(var n in t)e.push(t[n]);return e},_applySplices:function(e){for(var t,n,r={},s=0;s<e.length&&(n=e[s]);s++){n.addedKeys=[];for(var i=0;i<n.removed.length;i++)t=this.getKey(n.removed[i]),r[t]=r[t]?null:-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[{removed:a,added:l}]}},Polymer.Collection.get=function(e){return Polymer._collections.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:Function,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:"_initializeChunking"},targetFramerate:{type:Number,value:20},_targetFrameTime:{type:Number,computed:"_computeFrameTime(targetFramerate)"}},behaviors:[Polymer.Templatizer],observers:["_itemsChanged(items.*)"],created:function(){this._instances=[],this._pool=[],this._limit=1/0;var e=this;this._boundRenderChunk=function(){e._renderChunk()}},detached:function(){this.__isDetached=!0;for(var e=0;e<this._instances.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._instanceProps={__key__:!0},this._instanceProps[this.as]=!0,this._instanceProps[this.indexAs]=!0,this.ctor||this.templatize(this)},_sortChanged:function(e){var t=this._getRootDataHost();this._sortFn=e&&("function"==typeof e?e:function(){return t[e].apply(t,arguments)}),this._needFullRefresh=!0,this.items&&this._debounceTemplate(this._render)},_filterChanged:function(e){var t=this._getRootDataHost();this._filterFn=e&&("function"==typeof e?e:function(){return t[e].apply(t,arguments)}),this._needFullRefresh=!0,this.items&&this._debounceTemplate(this._render)},_computeFrameTime:function(e){return Math.ceil(1e3/e)},_initializeChunking:function(){this.initialCount&&(this._limit=this.initialCount,this._chunkCount=this.initialCount,this._lastChunkTime=performance.now())},_tryRenderChunk:function(){this.items&&this._limit<this.items.length&&this.debounce("renderChunk",this._requestRenderChunk)},_requestRenderChunk:function(){requestAnimationFrame(this._boundRenderChunk)},_renderChunk:function(){var e=performance.now(),t=this._targetFrameTime/(e-this._lastChunkTime);this._chunkCount=Math.round(this._chunkCount*t)||1,this._limit+=this._chunkCount,this._lastChunkTime=e,this._debounceTemplate(this._render)},_observeChanged:function(){this._observePaths=this.observe&&this.observe.replace(".*",".").split(" ")},_itemsChanged:function(e){if("items"==e.path)Array.isArray(this.items)?this.collection=Polymer.Collection.get(this.items):this.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._render);else if("items.splices"==e.path)this._keySplices=this._keySplices.concat(e.value.keySplices),this._indexSplices=this._indexSplices.concat(e.value.indexSplices),this._debounceTemplate(this._render);else{var t=e.path.slice(6);this._forwardItemPath(t,e.value),this._checkObservedPaths(t)}},_checkObservedPaths:function(e){if(this._observePaths){e=e.substring(e.indexOf(".")+1);for(var t=this._observePaths,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._debounceTemplate(this._render))}},render:function(){this._needFullRefresh=!0,this._debounceTemplate(this._render),this._flushTemplates()},_render:function(){this._needFullRefresh?(this._applyFullRefresh(),this._needFullRefresh=!1):this._keySplices.length&&(this._sortFn?this._applySplicesUserSort(this._keySplices):this._filterFn?this._applyFullRefresh():this._applySplicesArrayOrder(this._indexSplices)),this._keySplices=[],this._indexSplices=[];for(var e=this._keyToInstIdx={},t=this._instances.length-1;t>=0;t--){var n=this._instances[t];n.isPlaceholder&&t<this._limit?n=this._insertInstance(t,n.__key__):!n.isPlaceholder&&t>=this._limit&&(n=this._downgradeInstance(t,n.__key__)),e[n.__key__]=t,n.isPlaceholder||n.__setProperty(this.indexAs,t,!0)}this._pool.length=0,this._setRenderedItemCount(this._instances.length),this.fire("dom-change"),this._tryRenderChunk()},_applyFullRefresh:function(){var e,t=this.collection;if(this._sortFn)e=t?t.getKeys():[];else{e=[];var n=this.items;if(n)for(var r=0;r<n.length;r++)e.push(t.getKey(n[r]))}var s=this;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.isPlaceholder&&r<this._limit&&o.__setProperty(this.as,t.getItem(i),!0)):r<this._limit?this._insertInstance(r,i):this._insertPlaceholder(r,i)}for(var a=this._instances.length-1;a>=r;a--)this._detachAndRemoveInstance(a)},_numericSort:function(e,t){return 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];void 0!==c&&this._detachAndRemoveInstance(c)}var h=this;if(l.length){this._filterFn&&(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;else{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++){for(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])}},_detachInstance: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).appendChild(r)}return t}},_attachInstance:function(e,t){var n=this._instances[e];n.isPlaceholder||t.insertBefore(n.root,this)},_detachAndRemoveInstance:function(e){var t=this._detachInstance(e);t&&this._pool.push(t),this._instances.splice(e,1)},_insertPlaceholder: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.collection.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._instances[e+1],s=r&&!r.isPlaceholder?r._children[0]:this,i=Polymer.dom(this).parentNode;return Polymer.dom(i).insertBefore(n.root,s),this._instances[e]=n,n},_downgradeInstance: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:function(e){for(var t=0;t<this._instances.length;t++)this._instances[t]._showHideChildren(e)},_forwardInstanceProp:function(e,t,n){if(t==this.as){var r;r=this._sortFn||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.indexOf(this.as+".")&&this._notifyPath("items."+e.__key__+"."+t.slice(this.as.length+1),n)},_forwardParentProp:function(e,t){for(var n,r=this._instances,s=0;s<r.length&&(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.isPlaceholder||n._notifyPath(e,t,!0)},_forwardItemPath:function(e,t){if(this._keyToInstIdx){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:function(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.selected.length;e++)this.unlinkPaths("selected."+e);else this.unlinkPaths("selected"),this.unlinkPaths("selectedItem");this.multi?this.selected&&!this.selected.length||(this.selected=[],this._selectedColl=Polymer.Collection.get(this.selected)):(this.selected=null,this._selectedColl=null),this.selectedItem=null},isSelected:function(e){return this.multi?void 0!==this._selectedColl.getKey(e):this.selected==e},deselect:function(e){if(this.multi){if(this.isSelected(e)){var t=this._selectedColl.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&&this.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","items."+n),this.linkPaths("selectedItem","items."+n))}}),Polymer({is:"dom-if",extends:"template",_template:null,properties:{if:{type:Boolean,value:!1,observer:"_queueRender"},restamp:{type:Boolean,value:!1,observer:"_queueRender"}},behaviors:[Polymer.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:function(){this.if?(this.ctor||this.templatize(this),this._ensureInstance(),this._showHideChildren()):this.restamp&&this._teardownInstance(),!this.restamp&&this._instance&&this._showHideChildren(),this.if!=this._lastIf&&(this.fire("dom-change"),this._lastIf=this.if)},_ensureInstance:function(){var e=Polymer.dom(this).parentNode;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)}}},_teardownInstance:function(){if(this._instance){var e=this._instance._children;if(e&&e.length)for(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._showHideChildren(e)},_forwardParentProp:function(e,t){this._instance&&this._instance.__setProperty(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._readied||this._readySelf()},_markImportsReady:function(){this._importsReady=!0,this._ensureReady()},_registerFeatures:function(){this._prepConstructor()},_insertChildren:function(){var e=Polymer.dom(Polymer.dom(this).parentNode);e.insertBefore(this.root,this)},_removeChildren:function(){if(this._children)for(var e=0;e<this._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(){},_prepConfigure:function(){var e={};for(var t in this._propertyEffects)e[t]=this[t];var n=this._setupConfigure;this._setupConfigure=function(){n.call(this,e)}},attached:function(){this._importsReady&&this.render()},detached:function(){this._removeChildren()},render:function(){this._ensureReady(),this._children||(this._template=this,this._prepAnnotations(),this._prepEffects(),this._prepBehaviors(),this._prepConfigure(),this._prepBindings(),this._prepPropertyInfo(),Polymer.Base._initFeatures.call(this),this._children=Polymer.TreeApi.arrayCopyChildNodes(this.root)),this._insertChildren(),this.fire("dom-change")}})</script><style>[hidden]{display:none!important}</style><style 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-direction:row;-webkit-flex-direction:row;flex-direction:row};--layout-horizontal-reverse:{@apply(--layout);-ms-flex-direction:row-reverse;-webkit-flex-direction:row-reverse;flex-direction:row-reverse};--layout-vertical:{@apply(--layout);-ms-flex-direction:column;-webkit-flex-direction:column;flex-direction:column};--layout-vertical-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-flex-wrap:wrap-reverse;-webkit-flex-wrap:wrap-reverse;flex-wrap:wrap-reverse};--layout-flex-auto:{-ms-flex:1 1 auto;-webkit-flex:1 1 auto;flex:1 1 auto};--layout-flex-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};--layout-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:flex-start};--layout-center:{-ms-flex-align:center;-webkit-align-items:center;align-items:center};--layout-end:{-ms-flex-align:end;-webkit-align-items:flex-end;align-items:flex-end};--layout-baseline:{-ms-flex-align:baseline;-webkit-align-items: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:center};--layout-end-justified:{-ms-flex-pack:end;-webkit-justify-content:flex-end;justify-content:flex-end};--layout-around-justified:{-ms-flex-pack:distribute;-webkit-justify-content:space-around;justify-content:space-around};--layout-justified:{-ms-flex-pack:justify;-webkit-justify-content:space-between;justify-content:space-between};--layout-center-center:{@apply(--layout-center);@apply(--layout-center-justified)};--layout-self-start:{-ms-align-self:flex-start;-webkit-align-self:flex-start;align-self:flex-start};--layout-self-center:{-ms-align-self:center;-webkit-align-self:center;align-self:center};--layout-self-end:{-ms-align-self:flex-end;-webkit-align-self:flex-end;align-self:flex-end};--layout-self-stretch:{-ms-align-self:stretch;-webkit-align-self:stretch;align-self:stretch};--layout-self-baseline:{-ms-align-self:baseline;-webkit-align-self:baseline;align-self:baseline};--layout-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-content:flex-end};--layout-center-aligned:{-ms-flex-line-pack:center;-ms-align-content:center;-webkit-align-content:center;align-content:center};--layout-between-aligned:{-ms-flex-line-pack:justify;-ms-align-content:space-between;-webkit-align-content:space-between;align-content:space-between};--layout-around-aligned:{-ms-flex-line-pack:distribute;-ms-align-content:space-around;-webkit-align-content:space-around;align-content:space-around};--layout-block:{display: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-fullbleed:{margin:0;height:100vh};--layout-fixed-top:{position:fixed;top:0;left:0;right:0};--layout-fixed-right:{position:fixed;top:0;right:0;bottom:0};--layout-fixed-bottom:{position:fixed;right:0;bottom:0;left:0};--layout-fixed-left:{position:fixed;top:0;bottom:0;left:0};}</style><script>Polymer.PaperSpinnerBehavior={listeners:{animationend:"__reset",webkitAnimationEnd:"__reset"},properties:{active:{type:Boolean,value:!1,reflectToAttribute:!0,observer:"__activeChanged"},alt:{type:String,value:"loading",observer:"__altChanged"},__coolingDown:{type:Boolean,value:!1}},__computeContainerClasses:function(e,t){return[e||t?"active":"",t?"cooldown":""].join(" ")},__activeChanged:function(e,t){this.__setAriaHidden(!e),this.__coolingDown=!e&&t},__altChanged:function(e){e===this.getPropertyInfo("alt").value?this.alt=this.getAttribute("aria-label")||e:(this.__setAriaHidden(""===e),this.setAttribute("aria-label",e))},__setAriaHidden:function(e){var t="aria-hidden";e?this.setAttribute(t,"true"):this.removeAttribute(t)},__reset:function(){this.active=!1,this.__coolingDown=!1}}</script><dom-module id="paper-spinner-styles" assetpath="../bower_components/paper-spinner/"><template><style>:host{display:inline-block;position:relative;width:28px;height:28px;--paper-spinner-container-rotation-duration:1568ms;--paper-spinner-expand-contract-duration:1333ms;--paper-spinner-full-cycle-duration:5332ms;--paper-spinner-cooldown-duration:400ms}#spinnerContainer{width:100%;height:100%;direction:ltr}#spinnerContainer.active{-webkit-animation:container-rotate var(--paper-spinner-container-rotation-duration) linear infinite;animation:container-rotate var(--paper-spinner-container-rotation-duration) linear infinite}@-webkit-keyframes container-rotate{to{-webkit-transform:rotate(360deg)}}@keyframes container-rotate{to{transform:rotate(360deg)}}.spinner-layer{position:absolute;width:100%;height:100%;opacity:0;white-space:nowrap;border-color:var(--paper-spinner-color,--google-blue-500)}.layer-1{border-color:var(--paper-spinner-layer-1-color,--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,--google-yellow-500)}.layer-4{border-color:var(--paper-spinner-layer-4-color,--google-green-500)}.active .spinner-layer{-webkit-animation-name:fill-unfill-rotate;-webkit-animation-duration:var(--paper-spinner-full-cycle-duration);-webkit-animation-timing-function:cubic-bezier(.4,0,.2,1);-webkit-animation-iteration-count:infinite;animation-name:fill-unfill-rotate;animation-duration:var(--paper-spinner-full-cycle-duration);animation-timing-function:cubic-bezier(.4,0,.2,1);animation-iteration-count:infinite;opacity:1}.active .spinner-layer.layer-1{-webkit-animation-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}.active .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:rotate(540deg)}62.5%{-webkit-transform:rotate(675deg)}75%{-webkit-transform:rotate(810deg)}87.5%{-webkit-transform:rotate(945deg)}to{-webkit-transform:rotate(1080deg)}}@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(945deg)}to{transform:rotate(1080deg)}}@-webkit-keyframes layer-1-fade-in-out{0%{opacity:1}25%{opacity:1}26%{opacity:0}89%{opacity:0}90%{opacity:1}to{opacity:1}}@keyframes layer-1-fade-in-out{0%{opacity:1}25%{opacity:1}26%{opacity:0}89%{opacity:0}90%{opacity:1}to{opacity:1}}@-webkit-keyframes layer-2-fade-in-out{0%{opacity:0}15%{opacity:0}25%{opacity:1}50%{opacity:1}51%{opacity:0}to{opacity:0}}@keyframes 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-out{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:hidden;border-color:inherit}.spinner-layer::after{left:45%;width:10%;border-top-style:solid}.circle-clipper::after,.spinner-layer::after{content:'';box-sizing:border-box;position:absolute;top:0;border-width:var(--paper-spinner-stroke-width,3px);border-color:inherit;border-radius:50%}.circle-clipper::after{bottom:0;width:200%;border-style:solid;border-bottom-color:transparent!important}.circle-clipper.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);transform:rotate(-129deg)}.active .circle-clipper::after,.active .gap-patch::after{-webkit-animation-duration:var(--paper-spinner-expand-contract-duration);-webkit-animation-timing-function:cubic-bezier(.4,0,.2,1);-webkit-animation-iteration-count:infinite;animation-duration:var(--paper-spinner-expand-contract-duration);animation-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-transform: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-transform:rotate(-130deg)}50%{-webkit-transform:rotate(5deg)}to{-webkit-transform:rotate(-130deg)}}@keyframes right-spin{0%{transform:rotate(-130deg)}50%{transform:rotate(5deg)}to{transform:rotate(-130deg)}}#spinnerContainer.cooldown{-webkit-animation:container-rotate var(--paper-spinner-container-rotation-duration) linear infinite,fade-out var(--paper-spinner-cooldown-duration) cubic-bezier(.4,0,.2,1);animation:container-rotate var(--paper-spinner-container-rotation-duration) linear 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-out{0%{opacity:1}to{opacity:0}}</style></template></dom-module><dom-module id="paper-spinner" assetpath="../bower_components/paper-spinner/"><template strip-whitespace=""><style include="paper-spinner-styles"></style><div id="spinnerContainer" class-name="[[__computeContainerClasses(active, __coolingDown)]]"><div class="spinner-layer layer-1"><div class="circle-clipper left"></div><div class="circle-clipper right"></div></div><div class="spinner-layer layer-2"><div class="circle-clipper left"></div><div class="circle-clipper right"></div></div><div class="spinner-layer layer-3"><div class="circle-clipper left"></div><div class="circle-clipper right"></div></div><div class="spinner-layer layer-4"><div class="circle-clipper left"></div><div class="circle-clipper right"></div></div></div></template><script>Polymer({is:"paper-spinner",behaviors:[Polymer.PaperSpinnerBehavior]})</script></dom-module><style>@font-face{font-family:Roboto;src:url(/static/fonts/roboto/Roboto-Thin.ttf) format("truetype");font-weight:100;font-style:normal}@font-face{font-family:Roboto;src:url(/static/fonts/roboto/Roboto-ThinItalic.ttf) format("truetype");font-weight:100;font-style:italic}@font-face{font-family:Roboto;src:url(/static/fonts/roboto/Roboto-Light.ttf) format("truetype");font-weight:300;font-style:normal}@font-face{font-family:Roboto;src:url(/static/fonts/roboto/Roboto-LightItalic.ttf) format("truetype");font-weight:300;font-style:italic}@font-face{font-family:Roboto;src:url(/static/fonts/roboto/Roboto-Regular.ttf) format("truetype");font-weight:400;font-style:normal}@font-face{font-family:Roboto;src:url(/static/fonts/roboto/Roboto-Italic.ttf) format("truetype");font-weight:400;font-style:italic}@font-face{font-family:Roboto;src:url(/static/fonts/roboto/Roboto-Medium.ttf) format("truetype");font-weight:500;font-style:normal}@font-face{font-family:Roboto;src:url(/static/fonts/roboto/Roboto-MediumItalic.ttf) format("truetype");font-weight:500;font-style:italic}@font-face{font-family:Roboto;src:url(/static/fonts/roboto/Roboto-Bold.ttf) format("truetype");font-weight:700;font-style:normal}@font-face{font-family:Roboto;src:url(/static/fonts/roboto/Roboto-BoldItalic.ttf) format("truetype");font-weight:700;font-style:italic}@font-face{font-family:Roboto;src:url(/static/fonts/roboto/Roboto-Black.ttf) format("truetype");font-weight:900;font-style:normal}@font-face{font-family:Roboto;src:url(/static/fonts/roboto/Roboto-BlackItalic.ttf) format("truetype");font-weight:900;font-style:italic}@font-face{font-family:"Roboto Mono";src:url(/static/fonts/robotomono/RobotoMono-Thin.ttf) format("truetype");font-weight:100;font-style:normal}@font-face{font-family:"Roboto Mono";src:url(/static/fonts/robotomono/RobotoMono-ThinItalic.ttf) format("truetype");font-weight:100;font-style:italic}@font-face{font-family:"Roboto Mono";src:url(/static/fonts/robotomono/RobotoMono-Light.ttf) format("truetype");font-weight:300;font-style:normal}@font-face{font-family:"Roboto Mono";src:url(/static/fonts/robotomono/RobotoMono-LightItalic.ttf) format("truetype");font-weight:300;font-style:italic}@font-face{font-family:"Roboto Mono";src:url(/static/fonts/robotomono/RobotoMono-Regular.ttf) format("truetype");font-weight:400;font-style:normal}@font-face{font-family:"Roboto Mono";src:url(/static/fonts/robotomono/RobotoMono-Italic.ttf) format("truetype");font-weight:400;font-style:italic}@font-face{font-family:"Roboto Mono";src:url(/static/fonts/robotomono/RobotoMono-Medium.ttf) format("truetype");font-weight:500;font-style:normal}@font-face{font-family:"Roboto Mono";src:url(/static/fonts/robotomono/RobotoMono-MediumItalic.ttf) format("truetype");font-weight:500;font-style:italic}@font-face{font-family:"Roboto Mono";src:url(/static/fonts/robotomono/RobotoMono-Bold.ttf) format("truetype");font-weight:700;font-style:normal}@font-face{font-family:"Roboto Mono";src:url(/static/fonts/robotomono/RobotoMono-BoldItalic.ttf) format("truetype");font-weight:700;font-style:italic}</style><style is="custom-style">:root{--paper-font-common-base:{font-family:Roboto,Noto,sans-serif;-webkit-font-smoothing:antialiased};--paper-font-common-code:{font-family:'Roboto Mono',Consolas,Menlo,monospace;-webkit-font-smoothing:antialiased};--paper-font-common-expensive-kerning:{text-rendering:optimizeLegibility};--paper-font-common-nowrap:{white-space:nowrap;overflow:hidden;text-overflow:ellipsis};--paper-font-display4:{@apply(--paper-font-common-base);@apply(--paper-font-common-nowrap);font-size:112px;font-weight:300;letter-spacing:-.044em;line-height:120px};--paper-font-display3:{@apply(--paper-font-common-base);@apply(--paper-font-common-nowrap);font-size:56px;font-weight:400;letter-spacing:-.026em;line-height:60px};--paper-font-display2:{@apply(--paper-font-common-base);font-size:45px;font-weight:400;letter-spacing:-.018em;line-height:48px};--paper-font-display1:{@apply(--paper-font-common-base);font-size:34px;font-weight:400;letter-spacing:-.01em;line-height:40px};--paper-font-headline:{@apply(--paper-font-common-base);font-size:24px;font-weight:400;letter-spacing:-.012em;line-height:32px};--paper-font-title:{@apply(--paper-font-common-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:16px;font-weight:400;line-height:24px};--paper-font-body2:{@apply(--paper-font-common-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-common-nowrap);font-size:12px;font-weight:400;letter-spacing:0.011em;line-height:20px};--paper-font-menu:{@apply(--paper-font-common-base);@apply(--paper-font-common-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:14px;font-weight:500;letter-spacing:0.018em;line-height:24px;text-transform:uppercase};--paper-font-code2:{@apply(--paper-font-common-code);font-size:14px;font-weight: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="iron-flex" assetpath="../bower_components/iron-flex-layout/"><template><style>.layout.horizontal,.layout.vertical{display:-ms-flexbox;display:-webkit-flex;display:flex}.layout.inline{display:-ms-inline-flexbox;display:-webkit-inline-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.center-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;-webkit-flex-basis:0px;flex-basis:0px}.flex-auto{-ms-flex:1 1 auto;-webkit-flex:1 1 auto;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="../bower_components/iron-flex-layout/"><template><style>.layout.horizontal-reverse,.layout.vertical-reverse{display:-ms-flexbox;display:-webkit-flex;display:flex}.layout.horizontal-reverse{-ms-flex-direction:row-reverse;-webkit-flex-direction:row-reverse;flex-direction:row-reverse}.layout.vertical-reverse{-ms-flex-direction: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="../bower_components/iron-flex-layout/"><template><style>.layout.start{-ms-flex-align:start;-webkit-align-items:flex-start;align-items:flex-start}.layout.center,.layout.center-center{-ms-flex-align:center;-webkit-align-items:center;align-items:center}.layout.end{-ms-flex-align:end;-webkit-align-items:flex-end;align-items:flex-end}.layout.baseline{-ms-flex-align:baseline;-webkit-align-items:baseline;align-items:baseline}.layout.start-justified{-ms-flex-pack:start;-webkit-justify-content:flex-start;justify-content:flex-start}.layout.center-center,.layout.center-justified{-ms-flex-pack:center;-webkit-justify-content:center;justify-content:center}.layout.end-justified{-ms-flex-pack:end;-webkit-justify-content:flex-end;justify-content:flex-end}.layout.around-justified{-ms-flex-pack:distribute;-webkit-justify-content:space-around;justify-content:space-around}.layout.justified{-ms-flex-pack:justify;-webkit-justify-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-align-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-baseline{-ms-align-self:baseline;-webkit-align-self:baseline;align-self:baseline}; .layout.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-content:flex-end}.layout.center-aligned{-ms-flex-line-pack:center;-ms-align-content:center;-webkit-align-content:center;align-content:center}.layout.between-aligned{-ms-flex-line-pack:justify;-ms-align-content:space-between;-webkit-align-content:space-between;align-content:space-between}.layout.around-aligned{-ms-flex-line-pack:distribute;-ms-align-content:space-around;-webkit-align-content:space-around;align-content:space-around}</style></template></dom-module><dom-module id="iron-flex-factors" assetpath="../bower_components/iron-flex-layout/"><template><style>.flex,.flex-1{-ms-flex:1 1 0px;-webkit-flex:1;flex:1;-webkit-flex-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="../bower_components/iron-flex-layout/"><template><style>.block{display:block}[hidden]{display:none!important}.invisible{visibility:hidden!important}.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:fixed}.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></template></dom-module><script>!function(n){"use strict";function t(n,t){for(var e=[],r=0,u=n.length;r<u;r++)e.push(n[r].substr(0,t));return e}function e(n){return function(t,e,r){var u=r[n].indexOf(e.charAt(0).toUpperCase()+e.substr(1).toLowerCase());~u&&(t.month=u)}}function r(n,t){for(n=String(n),t=t||2;n.length<t;)n="0"+n;return n}var u={},o=/d{1,4}|M{1,4}|YY(?:YY)?|S{1,3}|Do|ZZ|([HhMsDm])\1?|[aA]|"[^"]*"|'[^']*'/g,a=/\d\d?/,i=/\d{3}/,s=/\d{4}/,m=/[0-9]*['a-z\u00A0-\u05FF\u0700-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]+|[\u0600-\u06FF\/]+(\s*?[\u0600-\u06FF]+){1,2}/i,d=function(){},f=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],c=["January","February","March","April","May","June","July","August","September","October","November","December"],h=t(c,3),l=t(f,3);u.i18n={dayNamesShort:l,dayNames:f,monthNamesShort:h,monthNames:c,amPm:["am","pm"],DoFn:function(n){return n+["th","st","nd","rd"][n%10>3?0:(n-n%10!==10)*n%10]}};var M={D:function(n){return n.getDate()},DD:function(n){return r(n.getDate())},Do:function(n,t){return t.DoFn(n.getDate())},d:function(n){return n.getDay()},dd:function(n){return r(n.getDay())},ddd:function(n,t){return t.dayNamesShort[n.getDay()]},dddd:function(n,t){return t.dayNames[n.getDay()]},M:function(n){return n.getMonth()+1},MM:function(n){return r(n.getMonth()+1)},MMM:function(n,t){return t.monthNamesShort[n.getMonth()]},MMMM:function(n,t){return t.monthNames[n.getMonth()]},YY:function(n){return String(n.getFullYear()).substr(2)},YYYY:function(n){return n.getFullYear()},h:function(n){return n.getHours()%12||12},hh:function(n){return r(n.getHours()%12||12)},H:function(n){return n.getHours()},HH:function(n){return r(n.getHours())},m:function(n){return n.getMinutes()},mm:function(n){return r(n.getMinutes())},s:function(n){return n.getSeconds()},ss:function(n){return r(n.getSeconds())},S:function(n){return Math.round(n.getMilliseconds()/100)},SS:function(n){return r(Math.round(n.getMilliseconds()/10),2)},SSS:function(n){return r(n.getMilliseconds(),3)},a:function(n,t){return n.getHours()<12?t.amPm[0]:t.amPm[1]},A:function(n,t){return n.getHours()<12?t.amPm[0].toUpperCase():t.amPm[1].toUpperCase()},ZZ:function(n){var t=n.getTimezoneOffset();return(t>0?"-":"+")+r(100*Math.floor(Math.abs(t)/60)+Math.abs(t)%60,4)}},g={D:[a,function(n,t){n.day=t}],Do:[new RegExp(a.source+m.source),function(n,t){n.day=parseInt(t,10)}],M:[a,function(n,t){n.month=t-1}],YY:[a,function(n,t){var e=new Date,r=+(""+e.getFullYear()).substr(0,2);n.year=""+(t>68?r-1:r)+t}],h:[a,function(n,t){n.hour=t}],m:[a,function(n,t){n.minute=t}],s:[a,function(n,t){n.second=t}],YYYY:[s,function(n,t){n.year=t}],S:[/\d/,function(n,t){n.millisecond=100*t}],SS:[/\d{2}/,function(n,t){n.millisecond=10*t}],SSS:[i,function(n,t){n.millisecond=t}],d:[a,d],ddd:[m,d],MMM:[m,e("monthNamesShort")],MMMM:[m,e("monthNames")],a:[m,function(n,t,e){var r=t.toLowerCase();r===e.amPm[0]?n.isPm=!1:r===e.amPm[1]&&(n.isPm=!0)}],ZZ:[/[\+\-]\d\d:?\d\d/,function(n,t){var e,r=(t+"").match(/([\+\-]|\d\d)/gi);r&&(e=+(60*r[1])+parseInt(r[2],10),n.timezoneOffset="+"===r[0]?e:-e)}]};g.dd=g.d,g.dddd=g.ddd,g.DD=g.D,g.mm=g.m,g.hh=g.H=g.HH=g.h,g.MM=g.M,g.ss=g.s,g.A=g.a,u.masks={default:"ddd MMM DD YYYY HH:mm:ss",shortDate:"M/D/YY",mediumDate:"MMM D, YYYY",longDate:"MMMM D, YYYY",fullDate:"dddd, MMMM D, YYYY",shortTime:"HH:mm",mediumTime:"HH:mm:ss",longTime:"HH:mm:ss.SSS"},u.format=function(n,t,e){var r=e||u.i18n;if("number"==typeof n&&(n=new Date(n)),"[object Date]"!==Object.prototype.toString.call(n)||isNaN(n.getTime()))throw new Error("Invalid Date in fecha.format");return t=u.masks[t]||t||u.masks.default,t.replace(o,function(t){return t in M?M[t](n,r):t.slice(1,t.length-1)})},u.parse=function(n,t,e){var r=e||u.i18n;if("string"!=typeof t)throw new Error("Invalid format in fecha.parse");if(t=u.masks[t]||t,n.length>1e3)return!1;var a=!0,i={};if(t.replace(o,function(t){if(g[t]){var e=g[t],u=n.search(e[0]);~u?n.replace(e[0],function(t){return e[1](i,t,r),n=n.substr(u+t.length),t}):a=!1}return g[t]?"":t.slice(1,t.length-1)}),!a)return!1;var s=new Date;i.isPm===!0&&null!=i.hour&&12!==+i.hour?i.hour=+i.hour+12:i.isPm===!1&&12===+i.hour&&(i.hour=0);var m;return null!=i.timezoneOffset?(i.minute=+(i.minute||0)-+i.timezoneOffset,m=new Date(Date.UTC(i.year||s.getFullYear(),i.month||0,i.day||1,i.hour||0,i.minute||0,i.second||0,i.millisecond||0))):m=new Date(i.year||s.getFullYear(),i.month||0,i.day||1,i.hour||0,i.minute||0,i.second||0,i.millisecond||0),m},"undefined"!=typeof module&&module.exports?module.exports=u:"function"==typeof define&&define.amd?define(function(){return u}):n.fecha=u}(this)</script><script>function toLocaleStringSupportsOptions(){try{(new Date).toLocaleString("i")}catch(e){return"RangeError"===e.name}return!1}function toLocaleDateStringSupportsOptions(){try{(new Date).toLocaleDateString("i")}catch(e){return"RangeError"===e.name}return!1}function toLocaleTimeStringSupportsOptions(){try{(new Date).toLocaleTimeString("i")}catch(e){return"RangeError"===e.name}return!1}window.hassUtil=window.hassUtil||{},window.hassUtil.DEFAULT_ICON="mdi:bookmark",window.hassUtil.OFF_STATES=["off","closed","unlocked"],window.hassUtil.DOMAINS_WITH_CARD=["climate","cover","configurator","input_select","input_slider","media_player","scene","script","weblink"],window.hassUtil.DOMAINS_WITH_MORE_INFO=["light","group","sun","climate","configurator","cover","script","media_player","camera","updater","alarm_control_panel","lock","automation"],window.hassUtil.DOMAINS_WITH_NO_HISTORY=["camera","configurator","scene"],window.hassUtil.HIDE_MORE_INFO=["input_select","scene","script","input_slider"],window.hassUtil.attributeClassNames=function(e,t){return e?t.map(function(t){return t in e.attributes?"has-"+t:""}).join(" "):""},window.hassUtil.canToggle=function(e,t){return e.reactor.evaluate(e.serviceGetters.canToggleEntity(t))},window.hassUtil.dynamicContentUpdater=function(e,t,i){var n,a=Polymer.dom(e);a.lastChild&&a.lastChild.tagName===t?n=a.lastChild:(a.lastChild&&a.removeChild(a.lastChild),n=document.createElement(t)),Object.keys(i).forEach(function(e){n[e]=i[e]}),null===n.parentNode&&a.appendChild(n)},window.fecha.masks.haDateTime=window.fecha.masks.shortTime+" "+window.fecha.masks.mediumDate,toLocaleStringSupportsOptions()?window.hassUtil.formatDateTime=function(e){return e.toLocaleString(navigator.language,{year:"numeric",month:"long",day:"numeric",hour:"numeric",minute:"2-digit"})}:window.hassUtil.formatDateTime=function(e){return window.fecha.format(e,"haDateTime")},toLocaleDateStringSupportsOptions()?window.hassUtil.formatDate=function(e){return e.toLocaleDateString(navigator.language,{year:"numeric",month:"long",day:"numeric"})}:window.hassUtil.formatDate=function(e){return window.fecha.format(e,"mediumDate")},toLocaleTimeStringSupportsOptions()?window.hassUtil.formatTime=function(e){return e.toLocaleTimeString(navigator.language,{hour:"numeric",minute:"2-digit"})}:window.hassUtil.formatTime=function(e){return window.fecha.format(e,"shortTime")},window.hassUtil.relativeTime=function(e){var t,i=Math.abs(new Date-e)/1e3,n=new Date>e?"%s ago":"in %s",a=window.hassUtil.relativeTime.tests;for(t=0;t<a.length;t+=2){if(i<a[t])return i=Math.floor(i),n.replace("%s",1===i?"1 "+a[t+1]:i+" "+a[t+1]+"s");i/=a[t]}return i=Math.floor(i),n.replace("%s",1===i?"1 week":i+" weeks")},window.hassUtil.relativeTime.tests=[60,"second",60,"minute",24,"hour",7,"day"],window.hassUtil.stateCardType=function(e,t){return"unavailable"===t.state?"display":window.hassUtil.DOMAINS_WITH_CARD.indexOf(t.domain)!==-1?t.domain:window.hassUtil.canToggle(e,t.entityId)&&"hidden"!==t.attributes.control?"toggle":"display"},window.hassUtil.stateMoreInfoType=function(e){return window.hassUtil.DOMAINS_WITH_MORE_INFO.indexOf(e.domain)!==-1?e.domain:window.hassUtil.HIDE_MORE_INFO.indexOf(e.domain)!==-1?"hidden":"default"},window.hassUtil.domainIcon=function(e,t){switch(e){case"alarm_control_panel":return t&&"disarmed"===t?"mdi:bell-outline":"mdi:bell";case"automation":return"mdi:playlist-play";case"binary_sensor":return t&&"off"===t?"mdi:radiobox-blank":"mdi:checkbox-marked-circle";case"camera":return"mdi:video";case"climate":return"mdi:nest-thermostat";case"configurator":return"mdi:settings";case"conversation":return"mdi:text-to-speech";case"cover":return t&&"open"===t?"mdi:window-open":"mdi:window-closed";case"device_tracker":return"mdi:account";case"fan":return"mdi:fan";case"group":return"mdi:google-circles-communities";case"homeassistant":return"mdi:home";case"input_boolean":return"mdi:drawing";case"input_select":return"mdi:format-list-bulleted";case"input_slider":return"mdi:ray-vertex";case"light":return"mdi:lightbulb";case"lock":return t&&"unlocked"===t?"mdi:lock-open":"mdi:lock";case"media_player":return t&&"off"!==t&&"idle"!==t?"mdi:cast-connected":"mdi:cast";case"notify":return"mdi:comment-alert";case"proximity":return"mdi:apple-safari";case"scene":return"mdi:google-pages";case"script":return"mdi:file-document";case"sensor":return"mdi:eye";case"simple_alarm":return"mdi:bell";case"sun":return"mdi:white-balance-sunny";case"switch":return"mdi:flash";case"updater":return"mdi:cloud-upload";case"weblink":return"mdi:open-in-new";default:return console.warn("Unable to find icon for domain "+e+" ("+t+")"),window.hassUtil.DEFAULT_ICON}},window.hassUtil.binarySensorIcon=function(e){var t=e.state&&"off"===e.state;switch(e.attributes.sensor_class){case"connectivity":return t?"mdi:server-network-off":"mdi:server-network";case"light":return t?"mdi:brightness-5":"mdi:brightness-7";case"moisture":return t?"mdi:water-off":"mdi:water";case"motion":return t?"mdi:walk":"mdi:run";case"occupancy":return t?"mdi:home":"mdi:home-outline";case"opening":return t?"mdi:crop-square":"mdi:exit-to-app";case"sound":return t?"mdi:music-note-off":"mdi:music-note";case"vibration":return t?"mdi:crop-portrait":"mdi:vibrate";case"gas":case"power":case"safety":case"smoke":return t?"mdi:verified":"mdi:alert";default:return t?"mdi:radiobox-blank":"mdi:checkbox-marked-circle"}},window.hassUtil.stateIcon=function(e){var t;if(!e)return window.hassUtil.DEFAULT_ICON;if(e.attributes.icon)return e.attributes.icon;if(t=e.attributes.unit_of_measurement,t&&"sensor"===e.domain){if("°C"===t||"°F"===t)return"mdi:thermometer";if("Mice"===t)return"mdi:mouse-variant"}else if("binary_sensor"===e.domain)return window.hassUtil.binarySensorIcon(e);return window.hassUtil.domainIcon(e.domain,e.state)}</script><script>window.hassBehavior={attached:function(){var e=this.hass;if(!e)throw new Error("No hass property found on "+this.nodeName);this.nuclearUnwatchFns=Object.keys(this.properties).reduce(function(t,r){var n;if(!("bindNuclear"in this.properties[r]))return t;if(n=this.properties[r].bindNuclear(e),!n)throw new Error("Undefined getter specified for key "+r+" on "+this.nodeName);return this[r]=e.reactor.evaluate(n),t.concat(e.reactor.observe(n,function(e){this[r]=e}.bind(this)))}.bind(this),[])},detached:function(){for(;this.nuclearUnwatchFns.length;)this.nuclearUnwatchFns.shift()()}}</script><style is="custom-style">:root{--primary-text-color:var(--light-theme-text-color);--primary-background-color:var(--light-theme-background-color);--secondary-text-color:var(--light-theme-secondary-color);--disabled-text-color:var(--light-theme-disabled-color);--divider-color:var(--light-theme-divider-color);--error-color:var(--paper-deep-orange-a700);--primary-color:var(--paper-indigo-500);--light-primary-color:var(--paper-indigo-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-color:#000000;--light-theme-text-color:var(--paper-grey-900);--light-theme-secondary-color:#737373;--light-theme-disabled-color:#9b9b9b;--light-theme-divider-color:#dbdbdb;--dark-theme-background-color:var(--paper-grey-900);--dark-theme-base-color:#ffffff;--dark-theme-text-color:#ffffff;--dark-theme-secondary-color:#bcbcbc;--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><script>!function(){var e={},t={},i=null;Polymer.IronMeta=Polymer({is:"iron-meta",properties:{type:{type:String,value:"default",observer:"_typeChanged"},key:{type:String,observer:"_keyChanged"},value:{type:Object,notify:!0,observer:"_valueChanged"},self:{type:Boolean,observer:"_selfChanged"},list:{type:Array,notify:!0}},hostAttributes:{hidden:!0},factoryImpl:function(e){if(e)for(var t in e)switch(t){case"type":case"key":case"value":this[t]=e[t]}},created:function(){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]=[]),this.list=t[i],this._registerKeyValue(this.key,this.value)},byKey:function(e){return this._metaData&&this._metaData[e]},_resetRegistration:function(e){this._unregisterKey(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){var a=t[e];delete t[e],this.arrayDelete(i,a)}}}),Polymer.IronMeta.getIronMeta=function(){return null===i&&(i=new Polymer.IronMeta),i},Polymer.IronMetaQuery=Polymer({is:"iron-meta-query",properties:{type:{type:String,value:"default",observer:"_typeChanged"},key:{type:String,observer:"_keyChanged"},value:{type:Object,notify:!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._metaData&&this._metaData[e])},_typeChanged:function(i){this._metaData=e[i],this.list=t[i],this.key&&this._keyChanged(this.key)},byKey:function(e){return this._metaData&&this._metaData[e]}})}()</script><script>Polymer.IronValidatableBehaviorMeta=null,Polymer.IronValidatableBehavior={properties:{validator:{type:String},invalid:{notify:!0,reflectToAttribute:!0,type:Boolean,value:!1},_validatorMeta:{type:Object},validatorType:{type:String,value:"validator"},_validator:{type:Object,computed:"__computeValidator(validator)"}},observers:["_invalidChanged(invalid)"],registered:function(){Polymer.IronValidatableBehaviorMeta=new Polymer.IronMeta({type:"validator"})},_invalidChanged:function(){this.invalid?this.setAttribute("aria-invalid","true"):this.removeAttribute("aria-invalid")},hasValidator:function(){return null!=this._validator},validate:function(a){return this.invalid=!this._getValidity(a),!this.invalid},_getValidity:function(a){return!this.hasValidator()||this._validator.validate(a)},__computeValidator:function(){return Polymer.IronValidatableBehaviorMeta&&Polymer.IronValidatableBehaviorMeta.byKey(this.validator)}}</script><script>Polymer.IronFormElementBehavior={properties:{name:{type:String},value:{notify:!0,type:String},required:{type:Boolean,value:!1},_parentForm:{type:Object}},attached:function(){this.fire("iron-form-element-register")},detached:function(){this._parentForm&&this._parentForm.fire("iron-form-element-unregister",{target:this})}}</script><script>Polymer.IronCheckedElementBehaviorImpl={properties:{checked:{type:Boolean,value:!1,reflectToAttribute:!0,notify:!0,observer:"_checkedChanged"},toggles:{type:Boolean,value:!0,reflectToAttribute:!0},value:{type:String,value:"on",observer:"_valueChanged"}},observers:["_requiredChanged(required)"],created:function(){this._hasIronCheckedElementBehavior=!0},_getValidity:function(e){return this.disabled||!this.required||this.checked},_requiredChanged:function(){this.required?this.setAttribute("aria-required","true"):this.removeAttribute("aria-required")},_checkedChanged:function(){this.active=this.checked,this.fire("iron-change")},_valueChanged:function(){void 0!==this.value&&null!==this.value||(this.value="on")}},Polymer.IronCheckedElementBehavior=[Polymer.IronFormElementBehavior,Polymer.IronValidatableBehavior,Polymer.IronCheckedElementBehaviorImpl]</script><script>!function(){"use strict";function e(e,t){var n="";if(e){var i=e.toLowerCase();" "===i||v.test(i)?n="space":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?String(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.hasModifiers||!!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,event:"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(function(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",meta:"metaKey"},u=/[a-z0-9*]/,h=/U\+/,c=/^arrow/,v=/^space(bar)?/,f=/^escape$/;Polymer.IronA11yKeysBehavior={properties:{keyEventTarget:{type:Object,value:function(){return this}},stopKeyboardEventPropagation:{type:Boolean,value:!1},_boundKeyHandlers:{type:Array,value:function(){return[]}},_imperativeKeyBindings:{type:Object,value:function(){return{}}}},observers:["_resetKeyEventListeners(keyEventTarget, _boundKeyHandlers)"],keyBindings:{},registered:function(){this._prepKeyBindings()},attached:function(){this._listenKeyEventListeners()},detached:function(){this._unlistenKeyEventListeners()},addOwnKeyBinding:function(e,t){this._imperativeKeyBindings[e]=t,this._prepKeyBindings(),this._resetKeyEventListeners()},removeOwnKeyBindings:function(){this._imperativeKeyBindings={},this._prepKeyBindings(),this._resetKeyEventListeners()},keyboardEventMatchesKeys:function(e,t){for(var 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:function(){this._keyBindings={},this._collectKeyBindings().forEach(function(e){for(var t in e)this._addKeyBinding(t,e[t])},this);for(var e in this._imperativeKeyBindings)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).forEach(function(e){this._keyBindings[e.event]=this._keyBindings[e.event]||[],this._keyBindings[e.event].push([e,t])},this)},_resetKeyEventListeners:function(){this._unlistenKeyEventListeners(),this.isAttached&&this._listenKeyEventListeners()},_listenKeyEventListeners:function(){this.keyEventTarget&&Object.keys(this._keyBindings).forEach(function(e){var t=this._keyBindings[e],n=this._onKeyBindingEvent.bind(this,t);this._boundKeyHandlers.push([this.keyEventTarget,e,n]),this.keyEventTarget.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(this.stopKeyboardEventPropagation&&t.stopPropagation(),!t.defaultPrevented)for(var n=0;n<e.length;n++){var i=e[n][0],s=e[n][1];if(r(i,t)&&(this._triggerKeyHandler(i,s,t),t.defaultPrevented))return}},_triggerKeyHandler:function(e,t,n){var i=Object.create(e);i.keyboardEvent=n;var r=new CustomEvent(e.event,{detail:i,cancelable:!0});this[t].call(this,r),r.defaultPrevented&&n.preventDefault()}}}()</script><script>Polymer.IronControlState={properties:{focused:{type:Boolean,value:!1,notify:!0,readOnly:!0,reflectToAttribute:!0},disabled:{type:Boolean,value:!1,notify:!0,observer:"_disabledChanged",reflectToAttribute:!0},_oldTabIndex:{type:Number},_boundFocusBlurHandler:{type:Function,value:function(){return this._focusBlurHandler.bind(this)}}},observers:["_changedControlState(focused, disabled)"],ready:function(){this.addEventListener("focus",this._boundFocusBlurHandler,!0),this.addEventListener("blur",this._boundFocusBlurHandler,!0)},_focusBlurHandler:function(e){if(e.target===this)this._setFocused("focus"===e.type);else if(!this.shadowRoot){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._controlStateChanged&&this._controlStateChanged()}}</script><script>Polymer.IronButtonStateImpl={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:{type:Boolean,readOnly:!0,value:!1},receivedFocusFromKeyboard:{type:Boolean,readOnly:!0},ariaActiveAttribute:{type:String,value:"aria-pressed",observer:"_ariaActiveAttributeChanged"}},listeners:{down:"_downHandler",up:"_upHandler",tap:"_tapHandler"},observers:["_detectKeyboardFocus(focused)","_activeChanged(active, ariaActiveAttribute)"],keyBindings:{"enter:keydown":"_asyncClick","space:keydown":"_spaceKeyDownHandler","space:keyup":"_spaceKeyUpHandler"},_mouseEventRe:/^mouse/,_tapHandler:function(){this.toggles?this._userActivate(!this.active):this.active=!1},_detectKeyboardFocus:function(e){this._setReceivedFocusFromKeyboard(!this.pointerDown&&e)},_userActivate:function(e){this.active!==e&&(this.active=e,this.fire("change"))},_downHandler:function(e){this._setPointerDown(!0),this._setPressed(!0),this._setReceivedFocusFromKeyboard(!1)},_upHandler:function(){this._setPointerDown(!1),this._setPressed(!1)},_spaceKeyDownHandler:function(e){var t=e.detail.keyboardEvent,i=Polymer.dom(t).localTarget;this.isLightDescendant(i)||(t.preventDefault(),t.stopImmediatePropagation(),this._setPressed(!0))},_spaceKeyUpHandler:function(e){var t=e.detail.keyboardEvent,i=Polymer.dom(t).localTarget;this.isLightDescendant(i)||(this.pressed&&this._asyncClick(),this._setPressed(!1))},_asyncClick:function(){this.async(function(){this.click()},1)},_pressedChanged:function(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"):this.removeAttribute(this.ariaActiveAttribute),this._changedButtonState()},_controlStateChanged:function(){this.disabled?this._setPressed(!1):this._changedButtonState()},_changedButtonState:function(){this._buttonStateChanged&&this._buttonStateChanged()}},Polymer.IronButtonState=[Polymer.IronA11yKeysBehavior,Polymer.IronButtonStateImpl]</script><dom-module id="paper-ripple" assetpath="../bower_components/paper-ripple/"><template><style>:host{display:block;position:absolute;border-radius:inherit;overflow:hidden;top:0;left:0;right:0;bottom:0;pointer-events:none}:host([animating]){-webkit-transform:translate(0,0);transform:translate3d(0,0,0)}#background,#waves,.wave,.wave-container{pointer-events:none;position:absolute;top:0;left:0;width:100%;height:100%}#background,.wave{opacity:0}#waves,.wave{overflow:hidden}.wave,.wave-container{border-radius:50%}:host(.circle) #background,:host(.circle) #waves{border-radius:50%}:host(.circle) .wave-container{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=Math.max(this.width,this.height)}function i(t){this.element=t,this.color=window.getComputedStyle(t).color,this.wave=document.createElement("div"),this.waveContainer=document.createElement("div"),this.wave.style.backgroundColor=this.color,this.wave.classList.add("wave"),this.waveContainer.classList.add("wave-container"),Polymer.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)},now:window.performance&&window.performance.now?window.performance.now.bind(window.performance):Date.now};t.prototype={get boundingRect(){return this.element.getBoundingClientRect()},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.distance(t,i,this.width,this.height);return Math.max(n,s,o,a)}},i.MAX_RADIUS=300,i.prototype={get recenters(){return this.element.recenters},get center(){return this.element.center},get mouseDownElapsed(){var t;return this.mouseDownStart?(t=e.now()-this.mouseDownStart,this.mouseUpStart&&(t-=this.mouseUpElapsed),t):0},get mouseUpElapsed(){return this.mouseUpStart?e.now()-this.mouseUpStart:0},get mouseDownElapsedSeconds(){return this.mouseDownElapsed/1e3},get mouseUpElapsedSeconds(){return this.mouseUpElapsed/1e3},get mouseInteractionSeconds(){return this.mouseDownElapsedSeconds+this.mouseUpElapsedSeconds},get initialOpacity(){return this.element.initialOpacity},get opacityDecayVelocity(){return this.element.opacityDecayVelocity},get radius(){var t=this.containerMetrics.width*this.containerMetrics.width,e=this.containerMetrics.height*this.containerMetrics.height,n=1.1*Math.min(Math.sqrt(t+e),i.MAX_RADIUS)+5,s=1.1-.2*(n/i.MAX_RADIUS),o=this.mouseInteractionSeconds/s,a=n*(1-Math.pow(80,-o));return Math.abs(a)},get opacity(){return this.mouseUpStart?Math.max(0,this.initialOpacity-this.mouseUpElapsedSeconds*this.opacityDecayVelocity):this.initialOpacity},get outerOpacity(){var t=.3*this.mouseUpElapsedSeconds,i=this.opacity;return Math.max(0,Math.min(t,i))},get isOpacityFullyDecayed(){return this.opacity<.01&&this.radius>=Math.min(this.maxRadius,i.MAX_RADIUS)},get isRestingAtMaxRadius(){return this.opacity>=this.initialOpacity&&this.radius>=Math.min(this.maxRadius,i.MAX_RADIUS)},get isAnimationComplete(){return 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.translationFraction*(this.xEnd-this.xStart):this.xStart},get yNow(){return this.yEnd?this.yStart+this.translationFraction*(this.yEnd-this.yStart):this.yStart},get isMouseDown(){return this.mouseDownStart&&!this.mouseUpStart},resetInteractionState:function(){this.maxRadius=0,this.mouseDownStart=0,this.mouseUpStart=0,this.xStart=0,this.yStart=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.width/2,e=this.yNow-this.containerMetrics.height/2,this.waveContainer.style.webkitTransform="translate("+i+"px, "+e+"px)",this.waveContainer.style.transform="translate3d("+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.resetInteractionState(),this.mouseDownStart=e.now(),this.center?(this.xStart=i,this.yStart=n,this.slideDistance=e.distance(this.xStart,this.yStart,this.xEnd,this.yEnd)):(this.xStart=t?t.detail.x-this.containerMetrics.boundingRect.left:this.containerMetrics.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.slideDistance=e.distance(this.xStart,this.yStart,this.xEnd,this.yEnd)),this.maxRadius=this.containerMetrics.furthestCornerDistanceFrom(this.xStart,this.yStart),this.waveContainer.style.top=(this.containerMetrics.height-this.containerMetrics.size)/2+"px",this.waveContainer.style.left=(this.containerMetrics.width-this.containerMetrics.size)/2+"px",this.waveContainer.style.width=this.containerMetrics.size+"px",this.waveContainer.style.height=this.containerMetrics.size+"px"},upAction:function(t){this.isMouseDown&&(this.mouseUpStart=e.now())},remove:function(){Polymer.dom(this.waveContainer.parentNode).removeChild(this.waveContainer)}},Polymer({is:"paper-ripple",behaviors:[Polymer.IronA11yKeysBehavior],properties:{initialOpacity:{type:Number,value:.25},opacityDecayVelocity:{type:Number,value:.8},recenters:{type:Boolean,value:!1},center:{type:Boolean,value:!1},ripples:{type:Array,value:function(){return[]}},animating:{type:Boolean,readOnly:!0,reflectToAttribute:!0,value:!1},holdDown:{type:Boolean,value:!1,observer:"_holdDownChanged"},noink:{type:Boolean,value:!1},_animating:{type:Boolean},_boundAnimate:{type:Function,value:function(){return this.animate.bind(this)}}},get target(){return this.keyEventTarget},keyBindings:{"enter:keydown":"_onEnterKeydown","space:keydown":"_onSpaceKeydown","space:keyup":"_onSpaceKeyup"},attached:function(){11==this.parentNode.nodeType?this.keyEventTarget=Polymer.dom(this).getOwnerRoot().host:this.keyEventTarget=this.parentNode;var t=this.keyEventTarget;this.listen(t,"up","uiUpAction"),this.listen(t,"down","uiDownAction")},detached:function(){this.unlisten(this.keyEventTarget,"up","uiUpAction"),this.unlisten(this.keyEventTarget,"down","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)},downAction:function(t){if(!(this.holdDown&&this.ripples.length>0)){var i=this.addRipple();i.downAction(t),this._animating||(this._animating=!0,this.animate())}},uiUpAction:function(t){this.noink||this.upAction(t)},upAction:function(t){this.holdDown||(this.ripples.forEach(function(i){i.upAction(t)}),this._animating=!0,this.animate())},onAnimationComplete:function(){this._animating=!1,this.$.background.style.backgroundColor=null,this.fire("transitionend")},addRipple:function(){var t=new i(this);return Polymer.dom(this.$.waves).appendChild(t.waveContainer),this.$.background.style.backgroundColor=t.color,this.ripples.push(t),this._setAnimating(!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))},animate: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.isOpacityFullyDecayed&&!i.isRestingAtMaxRadius&&this.removeRipple(i);this.shouldKeepAnimating||0!==this.ripples.length?window.requestAnimationFrame(this._boundAnimate):this.onAnimationComplete()}},_onEnterKeydown:function(){this.uiDownAction(),this.async(this.uiUpAction,1)},_onSpaceKeydown:function(){this.uiDownAction()},_onSpaceKeyup:function(){this.uiUpAction()},_holdDownChanged:function(t,i){void 0!==i&&(t?this.downAction():this.upAction())}})}()</script><script>Polymer.PaperRippleBehavior={properties:{noink:{type:Boolean,observer:"_noinkChanged"},_rippleContainer:{type:Object}},_buttonStateChanged:function(){this.focused&&this.ensureRipple()},_downHandler:function(e){Polymer.IronButtonStateImpl._downHandler.call(this,e),this.pressed&&this.ensureRipple(e)},ensureRipple:function(e){if(!this.hasRipple()){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 this.ensureRipple(),this._ripple},hasRipple:function(){return Boolean(this._ripple)},_createRipple:function(){return document.createElement("paper-ripple")},_noinkChanged:function(e){this.hasRipple()&&(this._ripple.noink=e)}}</script><script>Polymer.PaperInkyFocusBehaviorImpl={observers:["_focusedChanged(receivedFocusFromKeyboard)"],_focusedChanged:function(e){e&&this.ensureRipple(),this.hasRipple()&&(this._ripple.holdDown=e)},_createRipple:function(){var e=Polymer.PaperRippleBehavior._createRipple();return e.id="ink",e.setAttribute("center",""),e.classList.add("circle"),e}},Polymer.PaperInkyFocusBehavior=[Polymer.IronButtonState,Polymer.IronControlState,Polymer.PaperRippleBehavior,Polymer.PaperInkyFocusBehaviorImpl]</script><script>Polymer.PaperCheckedElementBehaviorImpl={_checkedChanged:function(){Polymer.IronCheckedElementBehaviorImpl._checkedChanged.call(this),this.hasRipple()&&(this.checked?this._ripple.setAttribute("checked",""):this._ripple.removeAttribute("checked"))},_buttonStateChanged:function(){Polymer.PaperRippleBehavior._buttonStateChanged.call(this),this.disabled||this.isAttached&&(this.checked=this.active)}},Polymer.PaperCheckedElementBehavior=[Polymer.PaperInkyFocusBehavior,Polymer.IronCheckedElementBehavior,Polymer.PaperCheckedElementBehaviorImpl]</script><dom-module id="paper-checkbox" assetpath="../bower_components/paper-checkbox/"><template strip-whitespace=""><style>:host{display:inline-block;white-space:nowrap;cursor:pointer;--calculated-paper-checkbox-size:var(--paper-checkbox-size, 18px);--calculated-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}#checkboxContainer{display:inline-block;position:relative;width:var(--calculated-paper-checkbox-size);height:var(--calculated-paper-checkbox-size);min-width:var(--calculated-paper-checkbox-size);margin:var(--paper-checkbox-margin,initial);vertical-align:var(--paper-checkbox-vertical-align,middle);background-color:var(--paper-checkbox-unchecked-background-color,transparent)}#ink{position:absolute;top:calc(0px - (var(--calculated-paper-checkbox-ink-size) - var(--calculated-paper-checkbox-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-checkbox-unchecked-ink-color,var(--primary-text-color));opacity:.6;pointer-events:none}:host-context([dir=rtl]) #ink{right:calc(0px - (var(--calculated-paper-checkbox-ink-size) - var(--calculated-paper-checkbox-size))/ 2);left:auto}#ink[checked]{color:var(--paper-checkbox-checked-ink-color,var(--primary-color))}#checkbox{position:relative;box-sizing:border-box;height:100%;border:solid 2px;border-color: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 #checkmark{-webkit-animation:checkmark-expand 140ms ease-out forwards;animation:checkmark-expand 140ms ease-out forwards}@-webkit-keyframes checkmark-expand{0%{-webkit-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(--paper-checkbox-checked-color,var(--primary-color));border-color:var(--paper-checkbox-checked-color,var(--primary-color))}#checkmark{position:absolute;width:36%;height:70%;border-style:solid;border-top:none;border-left:none;border-right-width:calc(2/15 * var(--calculated-paper-checkbox-size));border-bottom-width:calc(2/15 * var(--calculated-paper-checkbox-size));border-color:var(--paper-checkbox-checkmark-color,#fff);-webkit-transform-origin:97% 86%;transform-origin:97% 86%;box-sizing:content-box}:host-context([dir=rtl]) #checkmark{-webkit-transform-origin:50% 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,var(--primary-text-color));@apply(--paper-checkbox-label)}:host([checked]) #checkboxLabel{color:var(--paper-checkbox-label-checked-color,var(--paper-checkbox-label-color,var(--primary-text-color)));@apply(--paper-checkbox-label-checked)}:host-context([dir=rtl]) #checkboxLabel{padding-right:var(--paper-checkbox-label-spacing,8px);padding-left:0}#checkboxLabel[hidden]{display:none}:host([disabled]) #checkbox{opacity:.5;border-color:var(--paper-checkbox-unchecked-color,var(--primary-text-color))}:host([disabled][checked]) #checkbox{background-color:var(--paper-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="checkboxContainer"><div id="checkbox" class$="[[_computeCheckboxClass(checked, invalid)]]"><div id="checkmark" class$="[[_computeCheckmarkClass(checked)]]"></div></div></div><div id="checkboxLabel"><content></content></div></template><script>Polymer({is:"paper-checkbox",behaviors:[Polymer.PaperCheckedElementBehavior],hostAttributes:{role:"checkbox","aria-checked":!1,tabindex:0},properties:{ariaActiveAttribute:{type:String,value:"aria-checked"}},attached:function(){var e=this.getComputedStyleValue("--calculated-paper-checkbox-ink-size");if("-1px"===e){var t=parseFloat(this.getComputedStyleValue("--calculated-paper-checkbox-size")),a=Math.floor(8/3*t);a%2!==t%2&&a++,this.customStyle["--paper-checkbox-ink-size"]=a+"px",this.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.$.checkboxContainer,Polymer.PaperInkyFocusBehaviorImpl._createRipple.call(this)}})</script></dom-module><script>Polymer.PaperButtonBehaviorImpl={properties:{elevation:{type:Number,reflectToAttribute:!0,readOnly:!0}},observers:["_calculateElevation(focused, disabled, active, pressed, receivedFocusFromKeyboard)","_computeKeyboardClass(receivedFocusFromKeyboard)"],hostAttributes:{role:"button",tabindex:"0",animated:!0},_calculateElevation:function(){var e=1;this.disabled?e=0:this.active||this.pressed?e=4:this.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()},_spaceKeyUpHandler:function(e){Polymer.IronButtonStateImpl._spaceKeyUpHandler.call(this,e),this.hasRipple()&&this._ripple.uiUpAction()}},Polymer.PaperButtonBehavior=[Polymer.IronButtonState,Polymer.IronControlState,Polymer.PaperRippleBehavior,Polymer.PaperButtonBehaviorImpl]</script><style is="custom-style">:root{--shadow-transition:{transition:box-shadow .28s cubic-bezier(.4,0,.2,1)};--shadow-none:{box-shadow: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-shadow: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:{box-shadow:0 6px 10px 0 rgba(0,0,0,.14),0 1px 18px 0 rgba(0,0,0,.12),0 3px 5px -1px 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-elevation-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 9px 46px 8px rgba(0,0,0,.12),0 11px 15px -7px rgba(0,0,0,.4)};}</style><dom-module id="paper-material-shared-styles" assetpath="../bower_components/paper-material/"><template><style>:host{display:block;position:relative}:host([elevation="1"]){@apply(--shadow-elevation-2dp)}:host([elevation="2"]){@apply(--shadow-elevation-4dp)}:host([elevation="3"]){@apply(--shadow-elevation-6dp)}:host([elevation="4"]){@apply(--shadow-elevation-8dp)}:host([elevation="5"]){@apply(--shadow-elevation-16dp)}</style></template></dom-module><dom-module id="paper-button" assetpath="../bower_components/paper-button/"><template strip-whitespace=""><style include="paper-material-shared-styles">:host{@apply(--layout-inline);@apply(--layout-center-center);position:relative;box-sizing:border-box;min-width:5.14em;margin:0 .29em;background:0 0;-webkit-tap-highlight-color:transparent;-webkit-tap-highlight-color:transparent;font:inherit;text-transform:uppercase;outline-width:0;border-radius:3px;-moz-user-select:none;-ms-user-select:none;-webkit-user-select:none;user-select:none;cursor:pointer;z-index:0;padding:.7em .57em;@apply(--paper-font-common-base);@apply(--paper-button)}:host([hidden]){display:none!important}:host([raised].keyboard-focus){font-weight:700;@apply(--paper-button-raised-keyboard-focus)}:host(:not([raised]).keyboard-focus){font-weight:700;@apply(--paper-button-flat-keyboard-focus)}:host([disabled]){background:#eaeaea;color:#a8a8a8;cursor:auto;pointer-events:none;@apply(--paper-button-disabled)}:host([animated]){@apply(--shadow-transition)}paper-ripple{color:var(--paper-button-ink-color)}</style><content></content></template><script>Polymer({is:"paper-button",behaviors:[Polymer.PaperButtonBehavior],properties:{raised:{type:Boolean,reflectToAttribute:!0,value:!1,observer:"_calculateElevation"}},_calculateElevation:function(){this.raised?Polymer.PaperButtonBehaviorImpl._calculateElevation.apply(this):this._setElevation(0)}})</script></dom-module><dom-module id="paper-input-container" assetpath="../bower_components/paper-input/"><template><style>:host{display:block;padding:8px 0;@apply(--paper-input-container)}:host([inline]){display:inline-block}:host([disabled]){pointer-events:none;opacity:.33;@apply(--paper-input-container-disabled)}:host([hidden]){display:none!important}.floated-label-placeholder{@apply(--paper-font-caption)}.underline{position:relative}.focused-line{@apply(--layout-fit);background:var(--paper-input-container-focus-color,--primary-color);height:2px;-webkit-transform-origin:center center;transform-origin:center center;-webkit-transform:scale3d(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(--paper-transition-easing)}.underline.is-invalid .focused-line{background:var(--paper-input-container-invalid-color,--error-color);-webkit-transform:none;transform:none;-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-input-container-underline)}:host([disabled]) .unfocused-line{border-bottom:1px dashed;border-color:var(--paper-input-container-color,--secondary-text-color);background:0 0;@apply(--paper-input-container-underline-disabled)}.label-and-input-container{@apply(--layout-flex-auto);@apply(--layout-relative);width:100%;max-width:100%}.input-content{@apply(--layout-horizontal);@apply(--layout-center);position: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-transform-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-label,.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-is-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(--paper-input-container-focus-color,--primary-color);@apply(--paper-input-container-label-focus)}.input-content.is-invalid ::content .paper-input-label,.input-content.is-invalid ::content label{color:var(--paper-input-container-invalid-color,--error-color)}.input-content.label-is-hidden ::content .paper-input-label,.input-content.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-appearance:none;text-align:inherit;vertical-align:bottom;@apply(--paper-font-subhead);@apply(--paper-input-container-input)}::content [prefix]{@apply(--paper-font-subhead);@apply(--paper-input-prefix);@apply(--layout-flex-none)}::content [suffix]{@apply(--paper-font-subhead);@apply(--paper-input-suffix);@apply(--layout-flex-none)}.input-content ::content input{min-width:0}.input-content ::content textarea{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-color,--primary-color)}</style><template is="dom-if" if="[[!noLabelFloat]]"><div class="floated-label-placeholder" aria-hidden="true"> </div></template><div class$="[[_computeInputContentClass(noLabelFloat,alwaysFloatLabel,focused,invalid,_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,invalid)]]"><div class="unfocused-line"></div><div class="focused-line"></div></div><div class$="[[_computeAddOnContentClass(focused,invalid)]]"><content id="addOnContent" select="[add-on]"></content></div></template></dom-module><script>Polymer({is:"paper-input-container",properties:{noLabelFloat:{type:Boolean,value:!1},alwaysFloatLabel:{type:Boolean,value:!1},attrForValue:{type:String,value:"bind-value"},autoValidate:{type:Boolean,value:!1},invalid:{observer:"_invalidChanged",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:Function,value:function(){return this._onFocus.bind(this)}},_boundOnBlur:{type:Function,value:function(){return this._onBlur.bind(this)}},_boundOnInput:{type:Function,value:function(){return this._onInput.bind(this)}},_boundValueChanged:{type:Function,value:function(){return this._onValueChanged.bind(this)}}},listeners:{"addon-attached":"_onAddonAttached","iron-input-validate":"_onIronInputValidate"},get _valueChangedEvent(){return this.attrForValue+"-changed"},get _propertyForValue(){return Polymer.CaseMap.dashToCamelCase(this.attrForValue)},get _inputElement(){return Polymer.dom(this).querySelector(this._inputSelector)},get _inputElementValue(){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._inputElement):this._handleValue(this._inputElement)},_onAddonAttached:function(t){this._addons||(this._addons=[]);var n=t.target;this._addons.indexOf(n)===-1&&(this._addons.push(n),this.isAttached&&this._handleValue(this._inputElement))},_onFocus:function(){this._setFocused(!0)},_onBlur:function(){this._setFocused(!1),this._handleValueAndAutoValidate(this._inputElement)},_onInput:function(t){this._handleValueAndAutoValidate(t.target)},_onValueChanged:function(t){this._handleValueAndAutoValidate(t.target)},_handleValue:function(t){var n=this._inputElementValue;n||0===n||"number"===t.type&&!t.checkValidity()?this._inputHasContent=!0:this._inputHasContent=!1,this.updateAddons({inputElement:t,value:n,invalid:this.invalid})},_handleValueAndAutoValidate:function(t){if(this.autoValidate){var n;n=t.validate?t.validate(this._inputElementValue):t.checkValidity(),this.invalid=!n}this._handleValue(t)},_onIronInputValidate:function(t){this.invalid=this._inputElement.invalid},_invalidChanged:function(){this._addons&&this.updateAddons({invalid: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},_computeAddOnContentClass:function(t,n){var e="add-on-content";return n?e+=" is-invalid":t&&(e+=" is-highlighted"),e}})</script><script>Polymer.PaperInputAddonBehavior={hostAttributes:{"add-on":""},attached:function(){this.fire("addon-attached")},update:function(t){}}</script><dom-module id="paper-input-error" assetpath="../bower_components/paper-input/"><template><style>:host{display:inline-block;visibility:hidden;color:var(--paper-input-container-invalid-color,--error-color);@apply(--paper-font-caption);@apply(--paper-input-error);position:absolute;left:0;right:0}:host([invalid]){visibility:visible};</style><content></content></template></dom-module><script>Polymer({is:"paper-input-error",behaviors:[Polymer.PaperInputAddonBehavior],properties:{invalid:{readOnly:!0,reflectToAttribute:!0,type:Boolean}},update:function(e){this._setInvalid(e.invalid)}})</script><dom-module id="iron-a11y-announcer" assetpath="../bower_components/iron-a11y-announcer/"><template><style>:host{display:inline-block;position: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||(Polymer.IronA11yAnnouncer.instance=this),document.body.addEventListener("iron-announce",this._onIronAnnounce.bind(this))},announce:function(n){this._text="",this.async(function(){this._text=n},100)},_onIronAnnounce:function(n){n.detail&&n.detail.text&&this.announce(n.detail.text)}}),Polymer.IronA11yAnnouncer.instance=null,Polymer.IronA11yAnnouncer.requestAvailability=function(){Polymer.IronA11yAnnouncer.instance||(Polymer.IronA11yAnnouncer.instance=document.createElement("iron-a11y-announcer")),document.body.appendChild(Polymer.IronA11yAnnouncer.instance)}}()</script></dom-module><script>Polymer({is:"iron-input",extends:"input",behaviors:[Polymer.IronValidatableBehavior],properties:{bindValue:{observer:"_bindValueChanged",type:String},preventInvalidInput:{type:Boolean},allowedPattern:{type:String,observer:"_allowedPatternChanged"},_previousValidInput:{type:String,value:""},_patternAlreadyChecked:{type:Boolean,value:!1}},listeners:{input:"_onInput",keypress:"_onKeypress"},registered:function(){this._canDispatchEventOnDisabled()||(this._origDispatchEvent=this.dispatchEvent,this.dispatchEvent=this._dispatchEventFirefoxIE)},created:function(){Polymer.IronA11yAnnouncer.requestAvailability()},_canDispatchEventOnDisabled:function(){var e=document.createElement("input"),t=!1;e.disabled=!0,e.addEventListener("feature-check-dispatch-event",function(){t=!0});try{e.dispatchEvent(new Event("feature-check-dispatch-event"))}catch(e){}return t},_dispatchEventFirefoxIE:function(){var e=this.disabled;this.disabled=!1,this._origDispatchEvent.apply(this,arguments),this.disabled=e},get _patternRegExp(){var e;if(this.allowedPattern)e=new RegExp(this.allowedPattern);else switch(this.type){case"number":e=/[0-9.,e-]/}return e},ready:function(){this.bindValue=this.value},_bindValueChanged:function(){this.value!==this.bindValue&&(this.value=this.bindValue||0===this.bindValue||this.bindValue===!1?this.bindValue:""),this.fire("bind-value-changed",{value:this.bindValue})},_allowedPatternChanged:function(){this.preventInvalidInput=!!this.allowedPattern},_onInput:function(){if(this.preventInvalidInput&&!this._patternAlreadyChecked){var e=this._checkPatternValidity();e||(this._announceInvalidCharacter("Invalid string of characters not entered."),this.value=this._previousValidInput)}this.bindValue=this.value,this._previousValidInput=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.keyCode>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._patternAlreadyChecked=!0;var i=String.fromCharCode(e.charCode);this._isPrintable(e)&&!t.test(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]))return!1;return!0},validate:function(){var e=this.checkValidity();return e&&(this.required&&""===this.value?e=!1:this.hasValidator()&&(e=Polymer.IronValidatableBehavior.validate.call(this,this.value))),this.invalid=!e,this.fire("iron-input-validate"),e},_announceInvalidCharacter:function(e){this.fire("iron-announce",{text:e})}})</script><dom-module id="login-form" assetpath="layouts/"><template><style is="custom-style" include="iron-flex iron-positioning"></style><style>:host{white-space:nowrap}#passwordDecorator{display:block;margin-bottom:16px}paper-checkbox{margin-right:8px}paper-button{margin-left:72px}.interact{height:125px}#validatebox{margin-top:16px;text-align:center}.validatemessage{margin-top:10px}</style><div class="layout vertical center center-center fit"><img src="/static/icons/favicon-192x192.png" height="192"> <a href="#" id="hideKeyboardOnFocus"></a><div class="interact"><div id="loginform" hidden$="[[showLoading]]"><paper-input-container id="passwordDecorator" invalid="[[isInvalid]]"><label>Password</label><input is="iron-input" type="password" id="passwordInput"><paper-input-error invalid="[[isInvalid]]">[[errorMessage]]</paper-input-error></paper-input-container><div class="layout horizontal center"><paper-checkbox for="" id="rememberLogin">Remember</paper-checkbox><paper-button id="loginButton">Log In</paper-button></div></div><div id="validatebox" hidden$="[[!showLoading]]"><paper-spinner active="true"></paper-spinner><br><div class="validatemessage">Loading data</div></div></div></div></template></dom-module><script>Polymer({is:"login-form",behaviors:[window.hassBehavior],properties:{hass:{type:Object},errorMessage:{type:String,bindNuclear:function(e){return e.authGetters.attemptErrorMessage}},isInvalid:{type:Boolean,bindNuclear:function(e){return e.authGetters.isInvalidAttempt}},isValidating:{type:Boolean,observer:"isValidatingChanged",bindNuclear:function(e){return e.authGetters.isValidating}},loadingResources:{type:Boolean,value:!1},forceShowLoading:{type:Boolean,value:!1},showLoading:{type:Boolean,computed:"computeShowSpinner(forceShowLoading, isValidating)"}},listeners:{keydown:"passwordKeyDown","loginButton.tap":"validatePassword"},observers:["validatingChanged(isValidating, isInvalid)"],attached:function(){window.removeInitMsg()},computeShowSpinner:function(e,i){return e||i},validatingChanged:function(e,i){e||i||(this.$.passwordInput.value="")},isValidatingChanged:function(e){e||this.async(function(){this.$.passwordInput.focus()}.bind(this),10)},passwordKeyDown:function(e){13===e.keyCode?(this.validatePassword(),e.preventDefault()):this.isInvalid&&(this.isInvalid=!1)},validatePassword:function(){this.$.hideKeyboardOnFocus.focus(),window.validateAuth(this.$.passwordInput.value,this.$.rememberLogin.checked)}})</script><script>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.bind(this)}},_mq:{value:null}},attached:function(){this.style.display="none",this.queryChanged()},detached:function(){this._remove()},_add:function(){this._mq&&this._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=window.matchMedia(e),this._add(),this.queryHandler(this._mq))},queryHandler:function(e){this._setQueryMatches(e.matches)}})</script><script>Polymer.IronSelection=function(e){this.selection=[],this.selectCallback=e},Polymer.IronSelection.prototype={get:function(){return this.multi?this.selection.slice():this.selection[0]},clear:function(e){this.selection.slice().forEach(function(t){(!e||e.indexOf(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.isSelected(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)}},select:function(e){this.multi?this.toggle(e):this.get()!==e&&(this.setItemSelected(this.get(),!1),this.setItemSelected(e,!0))},toggle:function(e){this.setItemSelected(e,!this.isSelected(e))}}</script><script>Polymer.IronSelectableBehavior={properties:{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},fallbackSelection:{type:String,value:null},items:{type:Array,readOnly:!0,notify:!0,value:function(){return[]}},_excludedLocalNames:{type:Object,value:function(){return{template:1}}}},observers:["_updateAttrForSelected(attrForSelected)","_updateSelected(selected)","_checkFallback(fallbackSelection)"],created:function(){this._bindFilterItem=this._filterItem.bind(this),this._selection=new Polymer.IronSelection(this._applySelection.bind(this))},attached:function(){this._observer=this._observeItems(this),this._updateItems(),this._shouldUpdateSelection||this._updateSelected(),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:function(e){this.selected=e},selectPrevious:function(){var e=this.items.length,t=(Number(this._valueToIndex(this.selected))-1+e)%e;this.selected=this._indexToValue(t)},selectNext:function(){var e=(Number(this._valueToIndex(this.selected))+1)%this.items.length;this.selected=this._indexToValue(e)},selectIndex:function(e){this.select(this._indexToValue(e))},forceSynchronousItemUpdate:function(){this._updateItems()},get _shouldUpdateSelection(){return null!=this.selected},_checkFallback:function(){this._shouldUpdateSelection&&this._updateSelected()},_addListener: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=Polymer.dom(this).queryDistributedElements(this.selectable||"*");e=Array.prototype.filter.call(e,this._bindFilterItem),this._setItems(e)},_updateAttrForSelected:function(){this._shouldUpdateSelection&&(this.selected=this._indexToValue(this.indexOf(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._selection.get()&&(this.selected=this.fallbackSelection)},_filterItem:function(e){return!this._excludedLocalNames[e.localName]},_valueToItem:function(e){return null==e?null:this.items[this._valueToIndex(e)]},_valueToIndex:function(e){if(!this.attrForSelected)return Number(e);for(var t,i=0;t=this.items[i];i++)if(this._valueForItem(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:function(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.fire("iron-"+(t?"select":"deselect"),{item:e})},_selectionChange:function(){this._setSelectedItem(this._selection.get())},_observeItems:function(e){return Polymer.dom(e).observeNodes(function(e){this._updateItems(),this._shouldUpdateSelection&&this._updateSelected(),this.fire("iron-items-changed",e,{bubbles:!1,cancelable:!1})})},_activateHandler:function(e){for(var t=e.target,i=this.items;t&&t!=this;){var s=i.indexOf(t);if(s>=0){var n=this._indexToValue(s);return void this._itemActivate(n,t)}t=t.parentNode}},_itemActivate:function(e,t){this.fire("iron-activate",{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(selectedValues.splices)"],select:function(e){this.multi?this.selectedValues?this._toggleSelected(e):this.selectedValues=[e]:this.selected=e},multiChanged:function(e){this._selection.multi=e},get _shouldUpdateSelection(){return null!=this.selected||null!=this.selectedValues&&this.selectedValues.length},_updateAttrForSelected:function(){this.multi?this._shouldUpdateSelection&&(this.selectedValues=this.selectedItems.map(function(e){return this._indexToValue(this.indexOf(e))},this).filter(function(e){return null!=e},this)):Polymer.IronSelectableBehavior._updateAttrForSelected.apply(this)},_updateSelected:function(){this.multi?this._selectMulti(this.selectedValues):this._selectSelected(this.selected)},_selectMulti:function(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.fallbackSelection&&this.items.length&&!this._selection.get().length){var s=this._valueToItem(this.fallbackSelection);s&&(this.selectedValues=[this.fallbackSelection])}}else this._selection.clear()},_selectionChange:function(){var e=this._selection.get();this.multi?this._setSelectedItems(e):(this._setSelectedItems([e]),this._setSelectedItem(e))},_toggleSelected:function(e){var t=this.selectedValues.indexOf(e),l=t<0;l?this.push("selectedValues",e):this.splice("selectedValues",t,1)},_valuesToItems:function(e){return null==e?null:e.map(function(e){return this._valueToItem(e)},this)}},Polymer.IronMultiSelectableBehavior=[Polymer.IronSelectableBehavior,Polymer.IronMultiSelectableBehaviorImpl]</script><script>Polymer({is:"iron-selector",behaviors:[Polymer.IronMultiSelectableBehavior]})</script><script>Polymer.IronResizableBehavior={properties:{_parentResizable:{type:Object,observer:"_parentResizableChanged"},_notifyingDescendant:{type:Boolean,value:!1}},listeners:{"iron-request-resize-notifications":"_onIronRequestResizeNotifications"},created:function(){this._interestedResizables=[],this._boundNotifyResize=this.notifyResize.bind(this)},attached:function(){this.fire("iron-request-resize-notifications",null,{node:this,bubbles:!0,cancelable:!0}),this._parentResizable||(window.addEventListener("resize",this._boundNotifyResize),this.notifyResize())},detached:function(){this._parentResizable?this._parentResizable.stopResizeNotificationsFor(this):window.removeEventListener("resize",this._boundNotifyResize),this._parentResizable=null},notifyResize:function(){this.isAttached&&(this._interestedResizables.forEach(function(e){this.resizerShouldNotify(e)&&this._notifyDescendant(e)},this),this._fireResize())},assignParentResizable:function(e){this._parentResizable=e},stopResizeNotificationsFor:function(e){var i=this._interestedResizables.indexOf(e);i>-1&&(this._interestedResizables.splice(i,1),this.unlisten(e,"iron-resize","_onDescendantIronResize"))},resizerShouldNotify:function(e){return!0},_onDescendantIronResize:function(e){return this._notifyingDescendant?void e.stopPropagation():void(Polymer.Settings.useShadow||this._fireResize())},_fireResize:function(){this.fire("iron-resize",null,{node:this,bubbles:!1})},_onIronRequestResizeNotifications:function(e){var i=e.path?e.path[0]:e.target;i!==this&&(this._interestedResizables.indexOf(i)===-1&&(this._interestedResizables.push(i),this.listen(i,"iron-resize","_onDescendantIronResize")),i.assignParentResizable(this),this._notifyDescendant(i),e.stopPropagation())},_parentResizableChanged:function(e){e&&window.removeEventListener("resize",this._boundNotifyResize)},_notifyDescendant:function(e){this.isAttached&&(this._notifyingDescendant=!0,e.notifyResize(),this._notifyingDescendant=!1)}}</script><dom-module id="paper-drawer-panel" assetpath="../bower_components/paper-drawer-panel/"><template><style>:host{display:block;position:absolute;top:0;left:0;width:100%;height:100%;overflow:hidden}iron-selector>#drawer{position:absolute;top:0;left:0;height:100%;background-color:#fff;-moz-box-sizing:border-box;box-sizing:border-box;@apply(--paper-drawer-panel-drawer-container)}.transition>#drawer{transition:-webkit-transform ease-in-out .3s,width ease-in-out .3s,visibility .3s;transition:transform ease-in-out .3s,width ease-in-out .3s,visibility .3s}.left-drawer>#drawer{@apply(--paper-drawer-panel-left-drawer-container)}.right-drawer>#drawer{left:auto;right:0;@apply(--paper-drawer-panel-right-drawer-container)}iron-selector>#main{position:absolute;top:0;right:0;bottom:0;@apply(--paper-drawer-panel-main-container)}.transition>#main{transition:left ease-in-out .3s,padding ease-in-out .3s}.right-drawer>#main{left:0}.right-drawer.transition>#main{transition:right ease-in-out .3s,padding ease-in-out .3s}#main>::content>[main]{height:100%}#drawer>::content>[drawer]{height:100%}#scrim{position:absolute;top:0;right:0;bottom:0;left:0;visibility:hidden;opacity:0;transition:opacity ease-in-out .38s,visibility ease-in-out .38s;background-color:rgba(0,0,0,.3);@apply(--paper-drawer-panel-scrim)}.narrow-layout>#drawer{will-change:transform}.narrow-layout>#drawer.iron-selected{box-shadow:2px 2px 4px rgba(0,0,0,.15)}.right-drawer.narrow-layout>#drawer.iron-selected{box-shadow:-2px 2px 4px rgba(0,0,0,.15)}.narrow-layout>#drawer>::content>[drawer]{border:0}.left-drawer.narrow-layout>#drawer:not(.iron-selected){visibility:hidden;-webkit-transform:translateX(-100%);transform:translateX(-100%)}.right-drawer.narrow-layout>#drawer:not(.iron-selected){left:auto;visibility:hidden;-webkit-transform:translateX(100%);transform:translateX(100%)}.left-drawer.dragging>#drawer:not(.iron-selected),.left-drawer.peeking>#drawer:not(.iron-selected),.right-drawer.dragging>#drawer:not(.iron-selected),.right-drawer.peeking>#drawer:not(.iron-selected){visibility:visible}.narrow-layout>#main{padding:0}.right-drawer.narrow-layout>#main{left:0;right:0}.dragging>#main>#scrim,.narrow-layout>#main:not(.iron-selected)>#scrim{visibility:visible;opacity:var(--paper-drawer-panel-scrim-opacity,1)}.narrow-layout>#main>*{margin:0;min-height:100%;left:0;right:0;-moz-box-sizing:border-box;box-sizing:border-box}iron-selector:not(.narrow-layout) ::content [paper-drawer-toggle]{display:none}</style><iron-media-query id="mq" on-query-matches-changed="_onQueryMatchesChanged" query="[[_computeMediaQuery(forceNarrow, responsiveWidth)]]"></iron-media-query><iron-selector attr-for-selected="id" class$="[[_computeIronSelectorClass(narrow, _transition, dragging, rightDrawer, peeking)]]" activate-event="" selected="[[selected]]"><div id="main" style$="[[_computeMainStyle(narrow, rightDrawer, drawerWidth)]]"><content select="[main]"></content><div id="scrim" on-tap="closeDrawer"></div></div><div id="drawer" style$="[[_computeDrawerStyle(drawerWidth)]]"><content id="drawerContent" select="[drawer]"></content></div></iron-selector></template><script>!function(){"use strict";function e(e){var t=[];for(var i in e)e.hasOwnProperty(i)&&e[i]&&t.push(i);return t.join(" ")}var t=null;Polymer({is:"paper-drawer-panel",behaviors:[Polymer.IronResizableBehavior],properties:{defaultSelected:{type:String,value:"main"},disableEdgeSwipe:{type:Boolean,value:!1},disableSwipe:{type:Boolean,value:!1},dragging:{type:Boolean,value:!1,readOnly:!0,notify:!0},drawerWidth:{type:String,value:"256px"},edgeSwipeSensitivity:{type:Number,value:30},forceNarrow:{type:Boolean,value:!1},hasTransform:{type:Boolean,value:function(){return"transform"in this.style}},hasWillChange:{type:Boolean,value:function(){return"willChange"in this.style}},narrow:{reflectToAttribute:!0,type:Boolean,value:!1,readOnly:!0,notify:!0},peeking:{type:Boolean,value:!1,readOnly:!0,notify:!0},responsiveWidth:{type:String,value:"768px"},rightDrawer:{type:Boolean,value:!1},selected:{reflectToAttribute:!0,notify:!0,type:String,value:null},drawerToggleAttribute:{type:String,value:"paper-drawer-toggle"},drawerFocusSelector:{type:String,value:'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([tabindex="-1"]),iframe:not([tabindex="-1"]),[tabindex]:not([tabindex="-1"]),[contentEditable=true]:not([tabindex="-1"])'},_transition:{type:Boolean,value:!1}},listeners:{tap:"_onTap",track:"_onTrack",down:"_downHandler",up:"_upHandler",transitionend:"_onTransitionEnd"},observers:["_forceNarrowChanged(forceNarrow, defaultSelected)","_toggleFocusListener(selected)"],ready:function(){this._transition=!0,this._boundFocusListener=this._didFocus.bind(this)},togglePanel:function(){this._isMainSelected()?this.openDrawer():this.closeDrawer()},openDrawer:function(){this.selected="drawer"},closeDrawer:function(){this.selected="main"},_onTransitionEnd:function(e){var t=Polymer.dom(e).localTarget;if(t===this&&("left"!==e.propertyName&&"right"!==e.propertyName||this.notifyResize(),"transform"===e.propertyName&&"drawer"===this.selected)){var i=this._getAutoFocusedNode();i&&i.focus()}},_computeIronSelectorClass:function(t,i,r,n,a){return e({dragging:r,"narrow-layout":t,"right-drawer":n,"left-drawer":!n,transition:i,peeking:a})},_computeDrawerStyle:function(e){return"width:"+e+";"},_computeMainStyle:function(e,t,i){var r="";return r+="left:"+(e||t?"0":i)+";",t&&(r+="right:"+(e?"":i)+";"),r},_computeMediaQuery:function(e,t){return e?"":"(max-width: "+t+")"},_computeSwipeOverlayHidden:function(e,t){return!e||t},_onTrack:function(e){if(!t||this===t)switch(e.detail.state){case"start":this._trackStart(e);break;case"track":this._trackX(e);break;case"end":this._trackEnd(e)}},_responsiveChange:function(e){this._setNarrow(e),this.selected=this.narrow?this.defaultSelected:null,this.setScrollDirection(this._swipeAllowed()?"y":"all"),this.fire("paper-responsive-change",{narrow:this.narrow})},_onQueryMatchesChanged:function(e){this._responsiveChange(e.detail.value)},_forceNarrowChanged:function(){this._responsiveChange(this.forceNarrow||this.$.mq.queryMatches)},_swipeAllowed:function(){return this.narrow&&!this.disableSwipe},_isMainSelected:function(){return"main"===this.selected},_startEdgePeek:function(){this.width=this.$.drawer.offsetWidth,this._moveDrawer(this._translateXForDeltaX(this.rightDrawer?-this.edgeSwipeSensitivity:this.edgeSwipeSensitivity)),this._setPeeking(!0)},_stopEdgePeek:function(){this.peeking&&(this._setPeeking(!1),this._moveDrawer(null))},_downHandler:function(e){!this.dragging&&this._isMainSelected()&&this._isEdgeTouch(e)&&!t&&(this._startEdgePeek(),e.preventDefault(),t=this)},_upHandler:function(){this._stopEdgePeek(),t=null},_onTap:function(e){var t=Polymer.dom(e).localTarget,i=t&&this.drawerToggleAttribute&&t.hasAttribute(this.drawerToggleAttribute);i&&this.togglePanel()},_isEdgeTouch:function(e){var t=e.detail.x;return!this.disableEdgeSwipe&&this._swipeAllowed()&&(this.rightDrawer?t>=this.offsetWidth-this.edgeSwipeSensitivity:t<=this.edgeSwipeSensitivity)},_trackStart:function(e){this._swipeAllowed()&&(t=this,this._setDragging(!0),this._isMainSelected()&&this._setDragging(this.peeking||this._isEdgeTouch(e)),this.dragging&&(this.width=this.$.drawer.offsetWidth,this._transition=!1))},_translateXForDeltaX:function(e){var t=this._isMainSelected();return this.rightDrawer?Math.max(0,t?this.width+e:e):Math.min(0,t?e-this.width:e)},_trackX:function(e){if(this.dragging){var t=e.detail.dx;if(this.peeking){if(Math.abs(t)<=this.edgeSwipeSensitivity)return;this._setPeeking(!1)}this._moveDrawer(this._translateXForDeltaX(t))}},_trackEnd:function(e){if(this.dragging){var i=e.detail.dx>0;this._setDragging(!1),this._transition=!0,t=null,this._moveDrawer(null),this.rightDrawer?this[i?"closeDrawer":"openDrawer"]():this[i?"openDrawer":"closeDrawer"]()}},_transformForTranslateX:function(e){return null===e?"":this.hasWillChange?"translateX("+e+"px)":"translate3d("+e+"px, 0, 0)"},_moveDrawer:function(e){this.transform(this._transformForTranslateX(e),this.$.drawer)},_getDrawerContent:function(){return Polymer.dom(this.$.drawerContent).getDistributedNodes()[0]},_getAutoFocusedNode:function(){var e=this._getDrawerContent();return this.drawerFocusSelector?Polymer.dom(e).querySelector(this.drawerFocusSelector)||e:null},_toggleFocusListener:function(e){"drawer"===e?this.addEventListener("focus",this._boundFocusListener,!0):this.removeEventListener("focus",this._boundFocusListener,!0)},_didFocus:function(e){var t=this._getAutoFocusedNode();if(t){var i=Polymer.dom(e).path,r=(i[0],this._getDrawerContent()),n=i.indexOf(r)!==-1;n||(e.stopPropagation(),t.focus())}},_isDrawerClosed:function(e,t){return!e||"drawer"!==t}})}()</script></dom-module><dom-module id="iron-pages" assetpath="../bower_components/iron-pages/"><template><style>:host{display:block}:host>::content>:not(.iron-selected){display:none!important}</style><content></content></template><script>Polymer({is:"iron-pages",behaviors:[Polymer.IronResizableBehavior,Polymer.IronSelectableBehavior],properties:{activateEvent:{type:String,value:null}},observers:["_selectedPageChanged(selected)"],_selectedPageChanged:function(e,a){this.async(this.notifyResize)}})</script></dom-module><dom-module id="iron-icon" assetpath="../bower_components/iron-icon/"><template><style>:host{@apply(--layout-inline);@apply(--layout-center-center);position:relative;vertical-align:middle;fill:var(--iron-icon-fill-color,currentcolor);stroke:var(--iron-icon-stroke-color,none);width:var(--iron-icon-width,24px);height:var(--iron-icon-height,24px);@apply(--iron-icon)}</style></template><script>Polymer({is:"iron-icon",properties:{icon:{type:String},theme:{type:String},src:{type:String},_meta:{value:Polymer.Base.create("iron-meta",{type:"iconset"})}},observers:["_updateIcon(_meta, isAttached)","_updateIcon(theme, isAttached)","_srcChanged(src, isAttached)","_iconChanged(icon, isAttached)"],_DEFAULT_ICONSET:"icons",_iconChanged:function(t){var i=(t||"").split(":");this._iconName=i.pop(),this._iconsetName=i.pop()||this._DEFAULT_ICONSET,this._updateIcon()},_srcChanged:function(t){this._updateIcon()},_usesIconset:function(){return this.icon||!this.src},_updateIcon:function(){this._usesIconset()?(this._img&&this._img.parentNode&&Polymer.dom(this.root).removeChild(this._img),""===this._iconName?this._iconset&&this._iconset.removeIcon(this):this._iconsetName&&this._meta&&(this._iconset=this._meta.byKey(this._iconsetName),this._iconset?(this._iconset.applyIcon(this,this._iconName,this.theme),this.unlisten(window,"iron-iconset-added","_updateIcon")):this.listen(window,"iron-iconset-added","_updateIcon"))):(this._iconset&&this._iconset.removeIcon(this),this._img||(this._img=document.createElement("img"),this._img.style.width="100%",this._img.style.height="100%",this._img.draggable=!1),this._img.src=this.src,Polymer.dom(this.root).appendChild(this._img))}})</script></dom-module><dom-module id="paper-icon-button" assetpath="../bower_components/paper-icon-button/"><template strip-whitespace=""><style>:host{display:inline-block;position:relative;padding:8px;outline:0;-webkit-user-select:none;-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:transparent;-webkit-tap-highlight-color:transparent;box-sizing:border-box!important;@apply(--paper-icon-button)}:host #ink{color:var(--paper-icon-button-ink-color,--primary-text-color);opacity:.6}:host([disabled]){color:var(--paper-icon-button-disabled-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" src="[[src]]" icon="[[icon]]" alt$="[[alt]]"></iron-icon></template><script>Polymer({is:"paper-icon-button",hostAttributes:{role:"button",tabindex:"0"},behaviors:[Polymer.PaperInkyFocusBehavior],properties:{src:{type:String},icon:{type:String},alt:{type:String,observer:"_altChanged"}},_altChanged:function(t,e){var r=this.getAttribute("aria-label");r&&e!=r||this.setAttribute("aria-label",t)}})</script></dom-module><script>Polymer.IronMenuBehaviorImpl={properties:{focusedItem:{observer:"_focusedItemChanged",readOnly:!0,type:Object},attrForItemTitle:{type:String}},_SEARCH_RESET_TIMEOUT_MS:1e3,hostAttributes:{role:"menu",tabindex:"0"},observers:["_updateMultiselectable(multi)"],listeners:{focus:"_onFocus",keydown:"_onKeydown","iron-items-changed":"_onIronItemsChanged"},keyBindings:{up:"_onUpKey",down:"_onDownKey",esc:"_onEscKey","shift+tab:keydown":"_onShiftTabDown"},attached:function(){this._resetTabindices()},select:function(e){this._defaultFocusAsync&&(this.cancelAsync(this._defaultFocusAsync),this._defaultFocusAsync=null);var t=this._valueToItem(e);t&&t.hasAttribute("disabled")||(this._setFocusedItem(t),Polymer.IronMultiSelectableBehaviorImpl.select.apply(this,arguments))},_resetTabindices:function(){var e=this.multi?this.selectedItems&&this.selectedItems[0]:this.selectedItem;this.items.forEach(function(t){t.setAttribute("tabindex",t===e?"0":"-1")},this)},_updateMultiselectable:function(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:String.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,this.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.dom(i).getOwnerRoot()||document;if(this._setFocusedItem(i),Polymer.dom(o).activeElement==i)return}}},_focusNext: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];if(!i.hasAttribute("disabled")){var o=Polymer.dom(i).getOwnerRoot()||document;if(this._setFocusedItem(i),Polymer.dom(o).activeElement==i)return}}},_applySelection:function(e,t){t?e.setAttribute("aria-selected","true"):e.removeAttribute("aria-selected"),Polymer.IronSelectableBehavior._applySelection.apply(this,arguments)},_focusedItemChanged:function(e,t){t&&t.setAttribute("tabindex","-1"),e&&(e.setAttribute("tabindex","0"),e.focus())},_onIronItemsChanged:function(e){e.detail.addedNodes.length&&this._resetTabindices()},_onShiftTabDown:function(e){var t=this.getAttribute("tabindex");Polymer.IronMenuBehaviorImpl._shiftTabPressed=!0,this._setFocusedItem(null),this.setAttribute("tabindex","-1"),this.async(function(){this.setAttribute("tabindex",t),Polymer.IronMenuBehaviorImpl._shiftTabPressed=!1},1)},_onFocus:function(e){if(!Polymer.IronMenuBehaviorImpl._shiftTabPressed){var t=Polymer.dom(e).rootTarget;(t===this||"undefined"==typeof t.tabIndex||this.isLightDescendant(t))&&(this._defaultFocusAsync=this.async(function(){var e=this.multi?this.selectedItems&&this.selectedItems[0]:this.selectedItem;this._setFocusedItem(null),e?this._setFocusedItem(e):this.items[0]&&this._focusNext()}))}},_onUpKey:function(e){this._focusPrevious(),e.detail.keyboardEvent.preventDefault()},_onDownKey:function(e){this._focusNext(),e.detail.keyboardEvent.preventDefault()},_onEscKey:function(e){this.focusedItem.blur()},_onKeydown:function(e){this.keyboardEventMatchesKeys(e,"up down esc")||this._focusWithKeyboardEvent(e),e.stopPropagation()},_activateHandler:function(e){Polymer.IronSelectableBehavior._activateHandler.call(this,e),e.stopPropagation()}},Polymer.IronMenuBehaviorImpl._shiftTabPressed=!1,Polymer.IronMenuBehavior=[Polymer.IronMultiSelectableBehavior,Polymer.IronA11yKeysBehavior,Polymer.IronMenuBehaviorImpl]</script><script>Polymer.IronMenubarBehaviorImpl={hostAttributes:{role:"menubar"},keyBindings:{left:"_onLeftKey",right:"_onRightKey"},_onUpKey:function(e){this.focusedItem.click(),e.detail.keyboardEvent.preventDefault()},_onDownKey:function(e){this.focusedItem.click(),e.detail.keyboardEvent.preventDefault()},get _isRTL(){return"rtl"===window.getComputedStyle(this).direction},_onLeftKey:function(e){this._isRTL?this._focusNext():this._focusPrevious(),e.detail.keyboardEvent.preventDefault()},_onRightKey:function(e){this._isRTL?this._focusPrevious():this._focusNext(),e.detail.keyboardEvent.preventDefault()},_onKeydown:function(e){this.keyboardEventMatchesKeys(e,"up down left right esc")||this._focusWithKeyboardEvent(e)}},Polymer.IronMenubarBehavior=[Polymer.IronMenuBehavior,Polymer.IronMenubarBehaviorImpl]</script><script>Polymer({is:"iron-iconset-svg",properties:{name:{type:String,observer:"_nameChanged"},size:{type:Number,value:24},rtlMirroring:{type:Boolean,value:!1}},attached:function(){this.style.display="none"},getIconNames: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._targetIsRTL(e));if(n){var r=Polymer.dom(e);return r.insertBefore(n,r.childNodes[0]),e._svgIcon=n}return null},removeIcon:function(e){e=e.root||e,e._svgIcon&&(Polymer.dom(e).removeChild(e._svgIcon),e._svgIcon=null)},_targetIsRTL:function(e){return null==this.__targetIsRTL&&(e&&e.nodeType!==Node.ELEMENT_NODE&&(e=e.host),this.__targetIsRTL=e&&"rtl"===window.getComputedStyle(e).direction),this.__targetIsRTL},_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]").forEach(function(t){e[t.id]=t}),e},_cloneIcon:function(e,t){return this._icons=this._icons||this._createIconMap(),this._prepareSvgClone(this._icons[e],this.size,t)},_prepareSvgClone:function(e,t,n){if(e){var r=e.cloneNode(!0),i=document.createElementNS("http://www.w3.org/2000/svg","svg"),o=r.getAttribute("viewBox")||"0 0 "+t+" "+t,s="pointer-events: none; display: block; width: 100%; height: 100%;";return n&&r.hasAttribute("mirror-in-rtl")&&(s+="-webkit-transform:scale(-1,1);transform:scale(-1,1);"),i.setAttribute("viewBox",o),i.setAttribute("preserveAspectRatio","xMidYMid meet"),i.style.cssText=s,i.appendChild(r).removeAttribute("id"),i}return null}})</script><iron-iconset-svg name="paper-tabs" size="24"><svg><defs><g id="chevron-left"><path d="M15.41 7.41L14 6l-6 6 6 6 1.41-1.41L10.83 12z"></path></g><g id="chevron-right"><path d="M10 6L8.59 7.41 13.17 12l-4.58 4.59L10 18l6-6z"></path></g></defs></svg></iron-iconset-svg><dom-module id="paper-tab" assetpath="../bower_components/paper-tabs/"><template><style>:host{@apply(--layout-inline);@apply(--layout-center);@apply(--layout-center-justified);@apply(--layout-flex-auto);position:relative;padding:0 12px;overflow:hidden;cursor:pointer;vertical-align:middle;@apply(--paper-font-common-base);@apply(--paper-tab)}:host(:focus){outline:0}:host([link]){padding:0}.tab-content{height:100%;transform:translateZ(0);-webkit-transform:translateZ(0);transition:opacity .1s cubic-bezier(.4,0,1,1);@apply(--layout-horizontal);@apply(--layout-center-center);@apply(--layout-flex-auto);@apply(--paper-tab-content)}:host(:not(.iron-selected))>.tab-content{opacity:.8;@apply(--paper-tab-content-unselected)}:host(:focus) .tab-content{opacity:1;font-weight:700}paper-ripple{color:var(--paper-tab-ink,--paper-yellow-a100)}.tab-content>::content>a{@apply(--layout-flex-auto);height:100%}</style><div class="tab-content"><content></content></div></template><script>Polymer({is:"paper-tab",behaviors:[Polymer.IronControlState,Polymer.IronButtonState,Polymer.PaperRippleBehavior],properties:{link:{type:Boolean,value:!1,reflectToAttribute:!0}},hostAttributes:{role:"tab"},listeners:{down:"_updateNoink",tap:"_onTap"},attached:function(){this._updateNoink()},get _parentNoink(){var t=Polymer.dom(this).parentNode;return!!t&&!!t.noink},_updateNoink:function(){this.noink=!!this.noink||!!this._parentNoink},_onTap:function(t){if(this.link){var e=this.queryEffectiveChildren("a");if(!e)return;if(t.target===e)return;e.click()}}})</script></dom-module><dom-module id="paper-tabs" assetpath="../bower_components/paper-tabs/"><template><style>:host{@apply(--layout);@apply(--layout-center);height:48px;font-size:14px;font-weight:500;overflow:hidden;-moz-user-select:none;-ms-user-select:none;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;-webkit-tap-highlight-color:transparent;@apply(--paper-tabs)}:host-context([dir=rtl]){@apply(--layout-horizontal-reverse)}#tabsContainer{position:relative;height:100%;white-space:nowrap;overflow:hidden;@apply(--layout-flex-auto)}#tabsContent{height:100%;-moz-flex-basis:auto;-ms-flex-basis:auto;flex-basis:auto}#tabsContent.scrollable{position:absolute;white-space:nowrap}#tabsContent.scrollable.fit-container,#tabsContent:not(.scrollable){@apply(--layout-horizontal)}#tabsContent.scrollable.fit-container{min-width:100%}#tabsContent.scrollable.fit-container>::content>*{-ms-flex:1 0 auto;-webkit-flex:1 0 auto;flex:1 0 auto}.hidden{display:none}.not-visible{opacity:0;cursor:default}paper-icon-button{width:48px;height:48px;padding:12px;margin:0 4px}#selectionBar{position:absolute;height:2px;bottom:0;left:0;right:0;background-color:var(--paper-tabs-selection-bar-color,--paper-yellow-a100);-webkit-transform:scale(0);transform:scale(0);-webkit-transform-origin:left center;transform-origin:left center;transition:-webkit-transform;transition:transform;@apply(--paper-tabs-selection-bar)}#selectionBar.align-bottom{top:0;bottom:auto}#selectionBar.expand{transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,1,1)}#selectionBar.contract{transition-duration:.18s;transition-timing-function:cubic-bezier(0,0,.2,1)}#tabsContent>::content>:not(#selectionBar){height:100%}</style><paper-icon-button icon="paper-tabs:chevron-left" class$="[[_computeScrollButtonClass(_leftHidden, scrollable, hideScrollButtons)]]" on-up="_onScrollButtonUp" on-down="_onLeftScrollButtonDown" tabindex="-1"></paper-icon-button><div id="tabsContainer" on-track="_scroll" on-down="_down"><div id="tabsContent" class$="[[_computeTabsContentClass(scrollable, fitContainer)]]"><div id="selectionBar" class$="[[_computeSelectionBarClass(noBar, alignBottom)]]" on-transitionend="_onBarTransitionEnd"></div><content select="*"></content></div></div><paper-icon-button icon="paper-tabs:chevron-right" class$="[[_computeScrollButtonClass(_rightHidden, scrollable, hideScrollButtons)]]" on-up="_onScrollButtonUp" on-down="_onRightScrollButtonDown" tabindex="-1"></paper-icon-button></template><script>Polymer({is:"paper-tabs",behaviors:[Polymer.IronResizableBehavior,Polymer.IronMenubarBehavior],properties:{noink:{type:Boolean,value:!1,observer:"_noinkChanged"},noBar:{type:Boolean,value:!1},noSlide:{type:Boolean,value:!1},scrollable:{type:Boolean,value:!1},fitContainer:{type:Boolean,value:!1},disableDrag:{type:Boolean,value:!1},hideScrollButtons:{type:Boolean,value:!1},alignBottom:{type:Boolean,value:!1},selectable:{type:String,value:"paper-tab"},autoselect:{type:Boolean,value:!1},autoselectDelay:{type:Number,value:0},_step:{type:Number,value:10},_holdDelay:{type:Number,value:1},_leftHidden:{type:Boolean,value:!1},_rightHidden:{type:Boolean,value:!1},_previousTab:{type:Object}},hostAttributes:{role:"tablist"},listeners:{"iron-resize":"_onTabSizingChanged","iron-items-changed":"_onTabSizingChanged","iron-select":"_onIronSelect","iron-deselect":"_onIronDeselect"},keyBindings:{"left:keyup right:keyup":"_onArrowKeyup"},created:function(){this._holdJob=null,this._pendingActivationItem=void 0,this._pendingActivationTimeout=void 0,this._bindDelayedActivationHandler=this._delayedActivationHandler.bind(this),this.addEventListener("blur",this._onBlurCapture.bind(this),!0)},ready:function(){this.setScrollDirection("y",this.$.tabsContainer)},detached:function(){this._cancelPendingActivation()},_noinkChanged:function(t){var e=Polymer.dom(this).querySelectorAll("paper-tab");e.forEach(t?this._setNoinkAttribute:this._removeNoinkAttribute)},_setNoinkAttribute:function(t){t.setAttribute("noink","")},_removeNoinkAttribute:function(t){t.removeAttribute("noink")},_computeScrollButtonClass:function(t,e,i){return!e||i?"hidden":t?"not-visible":""},_computeTabsContentClass:function(t,e){return t?"scrollable"+(e?" fit-container":""):" fit-container"},_computeSelectionBarClass:function(t,e){return t?"hidden":e?"align-bottom":""},_onTabSizingChanged:function(){this.debounce("_onTabSizingChanged",function(){this._scroll(),this._tabChanged(this.selectedItem)},10)},_onIronSelect:function(t){this._tabChanged(t.detail.item,this._previousTab),this._previousTab=t.detail.item,this.cancelDebouncer("tab-changed")},_onIronDeselect:function(t){this.debounce("tab-changed",function(){this._tabChanged(null,this._previousTab),this._previousTab=null},1)},_activateHandler:function(){this._cancelPendingActivation(),Polymer.IronMenuBehaviorImpl._activateHandler.apply(this,arguments)},_scheduleActivation:function(t,e){this._pendingActivationItem=t,this._pendingActivationTimeout=this.async(this._bindDelayedActivationHandler,e)},_delayedActivationHandler:function(){var t=this._pendingActivationItem;this._pendingActivationItem=void 0,this._pendingActivationTimeout=void 0,t.fire(this.activateEvent,null,{bubbles:!0,cancelable:!0})},_cancelPendingActivation:function(){void 0!==this._pendingActivationTimeout&&(this.cancelAsync(this._pendingActivationTimeout),this._pendingActivationItem=void 0,this._pendingActivationTimeout=void 0)},_onArrowKeyup:function(t){this.autoselect&&this._scheduleActivation(this.focusedItem,this.autoselectDelay)},_onBlurCapture:function(t){t.target===this._pendingActivationItem&&this._cancelPendingActivation()},get _tabContainerScrollSize(){return Math.max(0,this.$.tabsContainer.scrollWidth-this.$.tabsContainer.offsetWidth)},_scroll:function(t,e){if(this.scrollable){var i=e&&-e.ddx||0;this._affectScroll(i)}},_down:function(t){this.async(function(){this._defaultFocusAsync&&(this.cancelAsync(this._defaultFocusAsync),this._defaultFocusAsync=null)},1)},_affectScroll:function(t){this.$.tabsContainer.scrollLeft+=t;var e=this.$.tabsContainer.scrollLeft;this._leftHidden=0===e,this._rightHidden=e===this._tabContainerScrollSize},_onLeftScrollButtonDown:function(){this._scrollToLeft(),this._holdJob=setInterval(this._scrollToLeft.bind(this),this._holdDelay)},_onRightScrollButtonDown:function(){this._scrollToRight(),this._holdJob=setInterval(this._scrollToRight.bind(this),this._holdDelay)},_onScrollButtonUp:function(){clearInterval(this._holdJob),this._holdJob=null},_scrollToLeft:function(){this._affectScroll(-this._step)},_scrollToRight:function(){this._affectScroll(this._step)},_tabChanged:function(t,e){if(!t)return this.$.selectionBar.classList.remove("expand"),this.$.selectionBar.classList.remove("contract"),void this._positionBar(0,0);var i=this.$.tabsContent.getBoundingClientRect(),n=i.width,o=t.getBoundingClientRect(),s=o.left-i.left;if(this._pos={width:this._calcPercent(o.width,n),left:this._calcPercent(s,n)},this.noSlide||null==e)return this.$.selectionBar.classList.remove("expand"),this.$.selectionBar.classList.remove("contract"),void this._positionBar(this._pos.width,this._pos.left);var a=e.getBoundingClientRect(),l=this.items.indexOf(e),c=this.items.indexOf(t),r=5;this.$.selectionBar.classList.add("expand");var h=l<c,d=this._isRTL;d&&(h=!h),h?this._positionBar(this._calcPercent(o.left+o.width-a.left,n)-r,this._left):this._positionBar(this._calcPercent(a.left+a.width-o.left,n)-r,this._calcPercent(s,n)+r),this.scrollable&&this._scrollToSelectedIfNeeded(o.width,s)},_scrollToSelectedIfNeeded:function(t,e){var i=e-this.$.tabsContainer.scrollLeft;i<0?this.$.tabsContainer.scrollLeft+=i:(i+=t-this.$.tabsContainer.offsetWidth,i>0&&(this.$.tabsContainer.scrollLeft+=i))},_calcPercent:function(t,e){return 100*t/e},_positionBar:function(t,e){t=t||0,e=e||0,this._width=t,this._left=e,this.transform("translateX("+e+"%) scaleX("+t/100+")",this.$.selectionBar)},_onBarTransitionEnd:function(t){var e=this.$.selectionBar.classList;e.contains("expand")?(e.remove("expand"),e.add("contract"),this._positionBar(this._pos.width,this._pos.left)):e.contains("contract")&&e.remove("contract")}})</script></dom-module><dom-module id="app-header-layout" assetpath="../bower_components/app-layout/app-header-layout/"><template><style>:host{display:block;position:relative;z-index:0}:host>::content>app-header{@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);@apply(--layout-fit)}:host([fullbleed])>#contentContainer{@apply(--layout-vertical);@apply(--layout-flex)}#contentContainer{position:relative;z-index:0}</style><content id="header" select="app-header"></content><div id="contentContainer"><content></content></div></template><script>Polymer({is:"app-header-layout",behaviors:[Polymer.IronResizableBehavior],properties:{hasScrollingRegion:{type:Boolean,value:!1,reflectToAttribute:!0}},listeners:{"iron-resize":"_resizeHandler","app-header-reset-layout":"resetLayout"},observers:["resetLayout(isAttached, hasScrollingRegion)"],get header(){return Polymer.dom(this.$.header).getDistributedNodes()[0]},resetLayout:function(){this._updateScroller(),this.debounce("_resetLayout",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=document.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.hasScrollingRegion?(n.marginTop=t+"px",n.paddingTop=""):(n.paddingTop=t+"px",n.marginTop="")}},_updateScroller:function(){if(this.isAttached){var e=this.header;e&&(e.scrollTarget=this.hasScrollingRegion?this.$.contentContainer:this.ownerDocument.documentElement)}},_resizeHandler:function(){this.resetLayout()}})</script></dom-module><script>Polymer.IronScrollTargetBehavior={properties:{scrollTarget:{type:HTMLElement,value:function(){return this._defaultScrollTarget}}},observers:["_scrollTargetChanged(scrollTarget, isAttached)"],_shouldHaveListener:!0,_scrollTargetChanged:function(t,l){this._oldScrollTarget&&(this._toggleScrollListener(!1,this._oldScrollTarget),this._oldScrollTarget=null),l&&("document"===t?this.scrollTarget=this._doc:"string"==typeof t?this.scrollTarget=this.domHost?this.domHost.$[t]:Polymer.dom(this.ownerDocument).querySelector("#"+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.ownerDocument.documentElement},get _scrollTop(){return this._isValidScrollTarget()?this.scrollTarget===this._doc?window.pageYOffset:this.scrollTarget.scrollTop:0},get _scrollLeft(){return this._isValidScrollTarget()?this.scrollTarget===this._doc?window.pageXOffset:this.scrollTarget.scrollLeft:0},set _scrollTop(t){this.scrollTarget===this._doc?window.scrollTo(window.pageXOffset,t):this._isValidScrollTarget()&&(this.scrollTarget.scrollTop=t)},set _scrollLeft(t){this.scrollTarget===this._doc?window.scrollTo(t,window.pageYOffset):this._isValidScrollTarget()&&(this.scrollTarget.scrollLeft=t)},scroll:function(t,l){this.scrollTarget===this._doc?window.scrollTo(t,l):this._isValidScrollTarget()&&(this.scrollTarget.scrollLeft=t,this.scrollTarget.scrollTop=l)},get _scrollTargetWidth(){return this._isValidScrollTarget()?this.scrollTarget===this._doc?window.innerWidth:this.scrollTarget.offsetWidth:0},get _scrollTargetHeight(){return this._isValidScrollTarget()?this.scrollTarget===this._doc?window.innerHeight:this.scrollTarget.offsetHeight:0},_isValidScrollTarget:function(){return this.scrollTarget instanceof HTMLElement},_toggleScrollListener:function(t,l){if(this._boundScrollHandler){var e=l===this._doc?window:l;t?e.addEventListener("scroll",this._boundScrollHandler):e.removeEventListener("scroll",this._boundScrollHandler)}},toggleScrollListener:function(t){this._shouldHaveListener=t,this._toggleScrollListener(t,this.scrollTarget)}}</script><script>Polymer.AppLayout=Polymer.AppLayout||{},Polymer.AppLayout._scrollEffects=Polymer.AppLayout._scrollEffects||{},Polymer.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._scrollEffects[o])throw new Error("effect `"+o+"` is already registered.");Polymer.AppLayout._scrollEffects[o]=l},Polymer.AppLayout.scroll=function(o){o=o||{};var l=document.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:function(o,l){e.scrollLeft=o,e.scrollTop=l};if("smooth"===o.behavior)if(r)e.scroll(o);else{var n=Polymer.AppLayout.scrollTimingFunction,a=Date.now(),p=e===l?window.pageYOffset: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)),requestAnimationFrame(o)):i(c,s)}.bind(this);L()}else"silent"===o.behavior?(l.classList.add(t),clearInterval(Polymer.AppLayout._scrollTimer),Polymer.AppLayout._scrollTimer=setTimeout(function(){l.classList.remove(t),Polymer.AppLayout._scrollTimer=null},100),i(c,s)):i(c,s)}</script><script>Polymer.AppScrollEffectsBehavior=[Polymer.IronScrollTargetBehavior,{properties:{effects:{type:String},effectsConfig:{type:Object,value:function(){return{}}},disabled:{type:Boolean,reflectToAttribute:!0,value:!1},threshold:{type:Number,value:0},thresholdTriggered:{type:Boolean,notify:!0,readOnly:!0,reflectToAttribute:!0}},observers:["_effectsChanged(effects, effectsConfig, isAttached)"],_updateScrollState:function(){},isOnScreen:function(){return!1},isContentBelow:function(){return!1},_effectsRunFn:null,_effects:null,get _clampedScrollTop(){return Math.max(0,this._scrollTop)},detached:function(){this._tearDownEffects()},createEffect:function(t,e){var n=Polymer.AppLayout._scrollEffects[t];if(!n)throw new ReferenceError(this._getUndefinedMsg(t));var f=this._boundEffect(n,e||{});return f.setUp(),f},_effectsChanged:function(t,e,n){this._tearDownEffects(),""!==t&&n&&(t.split(" ").forEach(function(t){var n;""!==t&&((n=Polymer.AppLayout._scrollEffects[t])?this._effects.push(this._boundEffect(n,e[t])):console.warn(this._getUndefinedMsg(t)))},this),this._setUpEffect())},_layoutIfDirty:function(){return this.offsetWidth},_boundEffect:function(t,e){e=e||{};var n=parseFloat(e.startsAt||0),f=parseFloat(e.endsAt||1),s=f-n,r=function(){},o=0===n&&1===f?t.run:function(e,f){t.run.call(this,Math.max(0,(e-n)/s),f)};return{setUp:t.setUp?t.setUp.bind(this,e):r,run:t.run?o.bind(this):r,tearDown:t.tearDown?t.tearDown.bind(this):r}},_setUpEffect:function(){this.isAttached&&this._effects&&(this._effectsRunFn=[],this._effects.forEach(function(t){t.setUp()!==!1&&this._effectsRunFn.push(t.run)},this))},_tearDownEffects:function(){this._effects&&this._effects.forEach(function(t){t.tearDown()}),this._effectsRunFn=[],this._effects=[]},_runEffects:function(t,e){this._effectsRunFn&&this._effectsRunFn.forEach(function(n){n(t,e)})},_scrollHandler:function(){if(!this.disabled){var t=this._clampedScrollTop;this._updateScrollState(t),this.threshold>0&&this._setThresholdTriggered(t>=this.threshold)}},_getDOMRef:function(t){console.warn("_getDOMRef","`"+t+"` is undefined")},_getUndefinedMsg:function(t){return"Scroll effect `"+t+"` is undefined. Did you forget to import app-layout/app-scroll-effects/effects/"+t+".html ?"}}]</script><script>Polymer.AppLayout.registerEffect("waterfall",{run:function(){this.shadow=this.isOnScreen()&&this.isContentBelow()}})</script><dom-module id="app-header" assetpath="../bower_components/app-layout/app-header/"><template><style>:host{position:relative;display:block;transition-timing-function:linear;transition-property:-webkit-transform;transition-property:transform}:host::after{position:absolute;right:0;bottom:-5px;left:0;width:100%;height:5px;content:"";transition:opacity .4s;pointer-events:none;opacity:0;box-shadow:inset 0 5px 6px -3px rgba(0,0,0,.4);will-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]{opacity:0}#background{@apply(--layout-fit);overflow:hidden}#backgroundFrontLayer,#backgroundRearLayer{@apply(--layout-fit);height:100%;pointer-events:none;background-size:cover}#backgroundFrontLayer{@apply(--app-header-background-front-layer)}#backgroundRearLayer{opacity:0;@apply(--app-header-background-rear-layer)}#contentContainer{position:relative;width:100%;height:100%}:host([disabled]),:host([disabled]) #backgroundFrontLayer,:host([disabled]) #backgroundRearLayer,:host([disabled]) ::content>[sticky],:host([disabled]) ::content>app-toolbar:first-of-type,:host([disabled])::after,:host-context(.app-layout-silent-scroll),:host-context(.app-layout-silent-scroll) #backgroundFrontLayer,:host-context(.app-layout-silent-scroll) #backgroundRearLayer,:host-context(.app-layout-silent-scroll) ::content>[sticky],:host-context(.app-layout-silent-scroll) ::content>app-toolbar:first-of-type,:host-context(.app-layout-silent-scroll)::after{transition:none!important}</style><div id="contentContainer"><content id="content"></content></div></template><script>Polymer({is:"app-header",behaviors:[Polymer.AppScrollEffectsBehavior,Polymer.IronResizableBehavior],properties:{condenses:{type:Boolean,value:!1},fixed:{type:Boolean,value:!1},reveals:{type:Boolean,value:!1},shadow:{type:Boolean,reflectToAttribute:!0,value:!1}},observers:["resetLayout(isAttached, condenses, fixed)"],listeners:{"iron-resize":"_resizeHandler"},_height:0,_dHeight:0,_stickyElTop:0,_stickyEl:null,_top:0,_progress:0,_wasScrollingDown:!1,_initScrollTop: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;break}t||(t=s)}return t},resetLayout:function(){this.fire("app-header-reset-layout"),this.debounce("_resetLayout",function(){if(0!==this.offsetWidth||0!==this.offsetHeight){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=this._stickyEl?this._stickyEl.offsetTop:0,this._setUpEffect(),e?this._updateScrollState(t,!0):(this._updateScrollState(this._lastScrollTop,!0),this._layoutIfDirty()),this.disabled=i}})},_updateScrollState:function(t,e){if(0!==this._height){var i=0,s=0,o=this._top,r=(this._lastScrollTop,this._maxHeaderTop),h=t-this._lastScrollTop,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&&!this.fixed?Math.max(this._dHeight,s):s,this.style.transitionDuration="0ms"),this.reveals&&!this.disabled&&n<100&&((l-this._initTimestamp>300||this._wasScrollingDown!==a)&&(this._initScrollTop=t,this._initTimestamp=l),t>=r))if(Math.abs(this._initScrollTop-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.transitionDuration=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._wasScrollingDown=a,this._lastTimestamp=l),(e||i!==this._progress||o!==s||0===t)&&(this._progress=i,this._runEffects(i,s),this._transformHeader(s))}},_mayMove:function(){return this.condenses||!this.fixed},willCondense:function(){return this._dHeight>0&&this.condenses},isOnScreen:function(){return 0!==this._height&&this._top<this._height},isContentBelow:function(){return 0===this._top?this._clampedScrollTop>0:this._clampedScrollTop-this._maxHeaderTop>=0},_transformHeader:function(t){this.translate3d(0,-t+"px",0),this._stickyEl&&this.translate3d(0,this.condenses&&t>=this._stickyElTop?Math.min(t,this._dHeight)-this._stickyElTop+"px":0,0,this._stickyEl)},_resizeHandler:function(){this.resetLayout()},_clamp:function(t,e,i){return Math.min(i,Math.max(e,t))},_ensureBgContainers:function(){this._bgContainer||(this._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.createElement("div"),this._bgFront.id="backgroundFrontLayer",this._bgContainer.appendChild(this._bgFront),Polymer.dom(this.root).insertBefore(this._bgContainer,this.$.contentContainer))},_getDOMRef:function(t){switch(t){case"backgroundFrontLayer":return this._ensureBgContainers(),this._bgFront;case"backgroundRearLayer":return this._ensureBgContainers(),this._bgRear;case"background":return this._ensureBgContainers(),this._bgContainer;case"mainTitle":return Polymer.dom(this).querySelector("[main-title]");case"condensedTitle":return Polymer.dom(this).querySelector("[condensed-title]")}return null},getScrollState:function(){return{progress:this._progress,top:this._top}}})</script></dom-module><dom-module id="app-toolbar" assetpath="../bower_components/app-layout/app-toolbar/"><template><style>:host{@apply(--layout-horizontal);@apply(--layout-center);position:relative;height:64px;padding:0 16px;pointer-events:none;font-size:var(--app-toolbar-font-size,20px)}::content>*{pointer-events:auto}::content>paper-icon-button{font-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>[spacer]{margin-left:64px}</style><content></content></template><script>Polymer({is:"app-toolbar"})</script></dom-module><dom-module id="ha-menu-button" assetpath="components/"><template><style>.invisible{visibility:hidden}</style><paper-icon-button icon="mdi:menu" class$="[[computeMenuButtonClass(narrow, showMenu)]]" on-tap="toggleMenu"></paper-icon-button></template></dom-module><script>Polymer({is:"ha-menu-button",properties:{narrow:{type:Boolean,value:!1},showMenu:{type:Boolean,value:!1}},computeMenuButtonClass:function(e,n){return!e&&n?"invisible":""},toggleMenu:function(){this.fire("open-menu")}})</script><dom-module id="ha-label-badge" assetpath="/"><template><style>.badge-container{display:inline-block;text-align:center;vertical-align:top;margin-bottom:16px}.label-badge{position:relative;display:block;margin:0 auto;width:2.5em;text-align:center;height:2.5em;line-height:2.5em;font-size:1.5em;border-radius:50%;border:.1em solid var(--ha-label-badge-color,--default-primary-color);color:#4c4c4c;white-space:nowrap;background-color:#fff;background-size:cover;transition:border .3s ease-in-out}.label-badge .value{font-size:90%;overflow:hidden;text-overflow:ellipsis}.label-badge .value.big{font-size:70%}.label-badge .label{position:absolute;bottom:-1em;left:0;right:0;line-height:1em;font-size:.5em}.label-badge .label span{max-width:80%;display:inline-block;background-color:var(--ha-label-badge-color,--default-primary-color);color:#fff;border-radius:1em;padding:4px 8px;font-weight:500;text-transform:uppercase;overflow:hidden;text-overflow:ellipsis;transition:background-color .3s ease-in-out}.badge-container .title{margin-top:1em;font-size:.9em;width:5em;font-weight:300;overflow:hidden;text-overflow:ellipsis;line-height:normal}iron-image{border-radius:50%}[hidden]{display:none!important}</style><div class="badge-container"><div class="label-badge" id="badge"><div class$="[[computeClasses(value)]]"><iron-icon icon="[[icon]]" hidden$="[[computeHideIcon(icon, value, image)]]"></iron-icon><span hidden$="[[computeHideValue(value, image)]]">[[value]]</span></div><div class="label" hidden$="[[!label]]"><span>[[label]]</span></div></div><div class="title">[[description]]</div></div></template></dom-module><script>Polymer({is:"ha-label-badge",properties:{value:{type:String,value:null},icon:{type:String,value:null},label:{type:String,value:null},description:{type:String},image:{type:String,value:null,observer:"imageChanged"}},computeClasses:function(e){return e&&e.length>4?"value big":"value"},computeHideIcon:function(e,n,l){return!e||n||l},computeHideValue:function(e,n){return!e||n},imageChanged:function(e){this.$.badge.style.backgroundImage=e?"url("+e+")":""}})</script><dom-module id="ha-demo-badge" assetpath="components/"><template><style>:host{--ha-label-badge-color:#dac90d}</style><ha-label-badge icon="mdi:emoticon" label="Demo" description=""></ha-label-badge></template></dom-module><script>Polymer({is:"ha-demo-badge"})</script><dom-module id="ha-state-label-badge" assetpath="components/entity/"><template><style>:host{cursor:pointer}ha-label-badge{--ha-label-badge-color:rgb(223, 76, 30)}.blue{--ha-label-badge-color:#039be5}.green{--ha-label-badge-color:#0DA035}.grey{--ha-label-badge-color:var(--paper-grey-500)}</style><ha-label-badge class$="[[computeClasses(state)]]" value="[[computeValue(state)]]" icon="[[computeIcon(state)]]" image="[[computeImage(state)]]" label="[[computeLabel(state)]]" description="[[computeDescription(state)]]"></ha-label-badge></template></dom-module><script>Polymer({is:"ha-state-label-badge",properties:{hass:{type:Object},state:{type:Object,observer:"stateChanged"}},listeners:{tap:"badgeTap"},badgeTap:function(e){e.stopPropagation(),this.async(function(){this.hass.moreInfoActions.selectEntity(this.state.entityId)},1)},computeClasses:function(e){switch(e.domain){case"binary_sensor":case"updater":return"blue";default:return""}},computeValue:function(e){switch(e.domain){case"binary_sensor":case"device_tracker":case"updater":case"sun":case"alarm_control_panel":return null;case"sensor":default:return"unknown"===e.state?"-":e.state}},computeIcon:function(e){if("unavailable"===e.state)return null;switch(e.domain){case"alarm_control_panel":return"pending"===e.state?"mdi:clock-fast":"armed_away"===e.state?"mdi:nature":"armed_home"===e.state?"mdi:home-variant":"triggered"===e.state?"mdi:alert-circle":window.hassUtil.domainIcon(e.domain,e.state);case"binary_sensor":case"device_tracker":case"updater":return window.hassUtil.stateIcon(e);case"sun":return"above_horizon"===e.state?window.hassUtil.domainIcon(e.domain):"mdi:brightness-3";default:return null}},computeImage:function(e){return e.attributes.entity_picture||null},computeLabel:function(e){if("unavailable"===e.state)return"unavai";switch(e.domain){case"device_tracker":return"not_home"===e.state?"Away":e.state;case"alarm_control_panel":return"pending"===e.state?"pend":"armed_away"===e.state||"armed_home"===e.state?"armed":"triggered"===e.state?"trig":"disarm";default:return e.attributes.unit_of_measurement||null}},computeDescription:function(e){return e.entityDisplay},stateChanged:function(){this.updateStyles()}})</script><dom-module id="ha-badges-card" assetpath="cards/"><template><template is="dom-repeat" items="[[states]]"><ha-state-label-badge hass="[[hass]]" state="[[item]]"></ha-state-label-badge></template></template></dom-module><script>Polymer({is:"ha-badges-card",properties:{hass:{type:Object},states:{type:Array}}})</script><dom-module id="paper-material" assetpath="../bower_components/paper-material/"><template><style include="paper-material-shared-styles"></style><style>:host([animated]){@apply(--shadow-transition)}</style><content></content></template></dom-module><script>Polymer({is:"paper-material",properties:{elevation:{type:Number,reflectToAttribute:!0,value:1},animated:{type:Boolean,reflectToAttribute:!0,value:!1}}})</script><dom-module id="ha-camera-card" assetpath="cards/"><template><style include="paper-material">:host{display:block;position:relative;font-size:0;border-radius:2px;cursor:pointer;min-height:48px;line-height:0}.camera-feed{width:100%;height:auto;border-radius:2px}.caption{@apply(--paper-font-common-nowrap);position:absolute;left:0;right:0;bottom:0;border-bottom-left-radius:2px;border-bottom-right-radius:2px;background-color:rgba(0,0,0,.3);padding:16px;text-transform:capitalize;font-size:16px;font-weight:500;line-height:16px;color:#fff}</style><img src="[[cameraFeedSrc]]" class="camera-feed" hidden$="[[!imageLoaded]]" on-load="imageLoadSuccess" on-error="imageLoadFail" alt="[[stateObj.entityDisplay]]"><div class="caption">[[stateObj.entityDisplay]]<template is="dom-if" if="[[!imageLoaded]]">(Error loading image)</template></div></template></dom-module><script>Polymer({is:"ha-camera-card",UPDATE_INTERVAL:1e4,properties:{hass:{type:Object},stateObj:{type:Object,observer:"updateCameraFeedSrc"},cameraFeedSrc:{type:String},imageLoaded:{type:Boolean,value:!0},elevation:{type:Number,value:1,reflectToAttribute:!0}},listeners:{tap:"cardTapped"},attached:function(){this.timer=setInterval(function(){this.updateCameraFeedSrc(this.stateObj)}.bind(this),this.UPDATE_INTERVAL)},detached:function(){clearInterval(this.timer)},cardTapped:function(){this.async(function(){this.hass.moreInfoActions.selectEntity(this.stateObj.entityId)}.bind(this),1)},updateCameraFeedSrc:function(e){const t=e.attributes,a=(new Date).getTime();this.cameraFeedSrc=t.entity_picture+"&time="+a},imageLoadSuccess:function(){this.imageLoaded=!0},imageLoadFail:function(){this.imageLoaded=!1}})</script><dom-module id="ha-card" assetpath="/"><template><style include="paper-material">:host{display:block;border-radius:2px;transition:all .3s ease-out;background-color:#fff}.header{@apply(--paper-font-headline);@apply(--paper-font-common-expensive-kerning);opacity:var(--dark-primary-opacity);padding:24px 16px 16px;text-transform:capitalize}</style><template is="dom-if" if="[[header]]"><div class="header">[[header]]</div></template><slot></slot></template></dom-module><script>Polymer({is:"ha-card",properties:{header:{type:String},elevation:{type:Number,value:1,reflectToAttribute:!0}}})</script><dom-module id="paper-toggle-button" assetpath="../bower_components/paper-toggle-button/"><template strip-whitespace=""><style>:host{display:inline-block;@apply(--layout-horizontal);@apply(--layout-center);@apply(--paper-font-common-base)}:host([disabled]){pointer-events:none}:host(:focus){outline:0}.toggle-bar{position:absolute;height:100%;width:100%;border-radius:8px;pointer-events:none;opacity:.4;transition:background-color linear .08s;background-color:var(--paper-toggle-button-unchecked-bar-color,#000);@apply(--paper-toggle-button-unchecked-bar)}.toggle-button{position:absolute;top:-3px;left:0;height:20px;width:20px;border-radius:50%;box-shadow:0 1px 5px 0 rgba(0,0,0,.6);transition:-webkit-transform linear .08s,background-color linear .08s;transition:transform linear .08s,background-color linear .08s;will-change:transform;background-color:var(--paper-toggle-button-unchecked-button-color,--paper-grey-50);@apply(--paper-toggle-button-unchecked-button)}.toggle-button.dragging{-webkit-transition:none;transition:none}:host([checked]:not([disabled])) .toggle-bar{opacity:.5;background-color:var(--paper-toggle-button-checked-bar-color,--primary-color);@apply(--paper-toggle-button-checked-bar)}:host([disabled]) .toggle-bar{background-color:#000;opacity:.12}:host([checked]) .toggle-button{-webkit-transform:translate(16px,0);transform:translate(16px,0)}:host([checked]:not([disabled])) .toggle-button{background-color:var(--paper-toggle-button-checked-button-color,--primary-color);@apply(--paper-toggle-button-checked-button)}:host([disabled]) .toggle-button{background-color:#bdbdbd;opacity:1}.toggle-ink{position:absolute;top:-14px;left:-14px;right:auto;bottom:auto;width:48px;height:48px;opacity:.5;pointer-events:none;color:var(--paper-toggle-button-unchecked-ink-color,--primary-text-color)}:host([checked]) .toggle-ink{color:var(--paper-toggle-button-checked-ink-color,--primary-color)}.toggle-container{display:inline-block;position:relative;width:36px;height:14px;margin:4px 1px}.toggle-label{position:relative;display:inline-block;vertical-align:middle;padding-left:var(--paper-toggle-button-label-spacing,8px);pointer-events:none;color:var(--paper-toggle-button-label-color,--primary-text-color)}:host([invalid]) .toggle-bar{background-color:var(--paper-toggle-button-invalid-bar-color,--error-color)}:host([invalid]) .toggle-button{background-color:var(--paper-toggle-button-invalid-button-color,--error-color)}:host([invalid]) .toggle-ink{color:var(--paper-toggle-button-invalid-ink-color,--error-color)}</style><div class="toggle-container"><div id="toggleBar" class="toggle-bar"></div><div id="toggleButton" class="toggle-button"></div></div><div class="toggle-label"><content></content></div></template><script>Polymer({is:"paper-toggle-button",behaviors:[Polymer.PaperCheckedElementBehavior],hostAttributes:{role:"button","aria-pressed":"false",tabindex:0},properties:{},listeners:{track:"_ontrack"},attached:function(){Polymer.RenderStatus.afterNextRender(this,function(){this.setScrollDirection("y")})},_ontrack:function(t){var e=t.detail;"start"===e.state?this._trackStart(e):"track"===e.state?this._trackMove(e):"end"===e.state&&this._trackEnd(e)},_trackStart:function(t){this._width=this.$.toggleBar.offsetWidth/2,this._trackChecked=this.checked,this.$.toggleButton.classList.add("dragging")},_trackMove:function(t){var e=t.dx;this._x=Math.min(this._width,Math.max(0,this._trackChecked?this._width+e:e)),this.translate3d(this._x+"px",0,0,this.$.toggleButton),this._userActivate(this._x>this._width/2)},_trackEnd:function(t){this.$.toggleButton.classList.remove("dragging"),this.transform("",this.$.toggleButton)},_createRipple:function(){this._rippleContainer=this.$.toggleButton;var t=Polymer.PaperRippleBehavior._createRipple();return t.id="ink",t.setAttribute("recenters",""),t.classList.add("circle","toggle-ink"),t}})</script></dom-module><dom-module id="ha-entity-toggle" assetpath="components/entity/"><template><style>:host{white-space:nowrap}paper-icon-button{color:var(--primary-text-color);transition:color .5s}paper-icon-button[state-active]{color:var(--default-primary-color)}paper-toggle-button{cursor:pointer;--paper-toggle-button-label-spacing:0;padding:9px 0}</style><template is="dom-if" if="[[stateObj.attributes.assumed_state]]"><paper-icon-button icon="mdi:flash-off" on-tap="turnOff" state-active$="[[!isOn]]"></paper-icon-button><paper-icon-button icon="mdi:flash" on-tap="turnOn" state-active$="[[isOn]]"></paper-icon-button></template><template is="dom-if" if="[[!stateObj.attributes.assumed_state]]"><paper-toggle-button class="self-center" checked="[[toggleChecked]]" on-change="toggleChanged"></paper-toggle-button></template></template></dom-module><script>Polymer({is:"ha-entity-toggle",properties:{hass:{type:Object},stateObj:{type:Object},toggleChecked:{type:Boolean,value:!1},isOn:{type:Boolean,computed:"computeIsOn(stateObj)",observer:"isOnChanged"}},listeners:{tap:"onTap"},onTap:function(t){t.stopPropagation()},ready:function(){this.forceStateChange()},toggleChanged:function(t){var e=t.target.checked;e&&!this.isOn?this.callService(!0):!e&&this.isOn&&this.callService(!1)},isOnChanged:function(t){this.toggleChecked=t},forceStateChange:function(){this.toggleChecked===this.isOn&&(this.toggleChecked=!this.toggleChecked),this.toggleChecked=this.isOn},turnOn:function(){this.callService(!0)},turnOff:function(){this.callService(!1)},computeIsOn:function(t){return t&&window.hassUtil.OFF_STATES.indexOf(t.state)===-1},callService:function(t){var e,i,n;"lock"===this.stateObj.domain?(e="lock",i=t?"lock":"unlock"):"garage_door"===this.stateObj.domain?(e="garage_door",i=t?"open":"close"):(e="homeassistant",i=t?"turn_on":"turn_off"),n=this.stateObj,this.hass.serviceActions.callService(e,i,{entity_id:this.stateObj.entityId}).then(function(){setTimeout(function(){this.stateObj===n&&this.forceStateChange()}.bind(this),2e3)}.bind(this))}})</script><dom-module id="ha-state-icon" assetpath="/"><template><iron-icon icon="[[computeIcon(stateObj)]]"></iron-icon></template></dom-module><script>Polymer({is:"ha-state-icon",properties:{stateObj:{type:Object}},computeIcon:function(t){return window.hassUtil.stateIcon(t)}})</script><dom-module id="state-badge" assetpath="components/entity/"><template><style>:host{position:relative;display:inline-block;width:40px;color:#44739E;border-radius:50%;height:40px;text-align:center;background-size:cover;line-height:40px}ha-state-icon{transition:color .3s ease-in-out}ha-state-icon[data-domain=binary_sensor][data-state=on],ha-state-icon[data-domain=light][data-state=on],ha-state-icon[data-domain=sun][data-state=above_horizon],ha-state-icon[data-domain=switch][data-state=on]{color:#FDD835}ha-state-icon[data-state=unavailable]{color:var(--disabled-text-color)}</style><ha-state-icon id="icon" state-obj="[[stateObj]]" data-domain$="[[stateObj.domain]]" data-state$="[[stateObj.state]]"></ha-state-icon></template></dom-module><script>Polymer({is:"state-badge",properties:{stateObj:{type:Object,observer:"updateIconColor"}},updateIconColor:function(t){return t.attributes.entity_picture?(this.style.backgroundImage="url("+t.attributes.entity_picture+")",void(this.$.icon.style.display="none")):(this.style.backgroundImage="",this.$.icon.style.display="inline",void("light"===t.domain&&"on"===t.state&&t.attributes.rgb_color&&t.attributes.rgb_color.reduce(function(t,e){return t+e},0)<730?this.$.icon.style.color="rgb("+t.attributes.rgb_color.join(",")+")":this.$.icon.style.color=null))}})</script><script>Polymer({is:"ha-relative-time",properties:{datetime:{type:String,observer:"datetimeChanged"},datetimeObj:{type:Object,observer:"datetimeObjChanged"},parsedDateTime:{type:Object}},created:function(){this.updateRelative=this.updateRelative.bind(this)},attached:function(){this.updateInterval=setInterval(this.updateRelative,6e4)},detached:function(){clearInterval(this.updateInterval)},datetimeChanged:function(e){this.parsedDateTime=e?new Date(e):null,this.updateRelative()},datetimeObjChanged:function(e){this.parsedDateTime=e,this.updateRelative()},updateRelative:function(){var e=Polymer.dom(this);e.innerHTML=this.parsedDateTime?window.hassUtil.relativeTime(this.parsedDateTime):"never"}})</script><dom-module id="state-info" assetpath="components/entity/"><template><style>:host{@apply(--paper-font-body1);min-width:150px;white-space:nowrap}state-badge{float:left}.info{margin-left:56px}.name{@apply(--paper-font-common-nowrap);color:var(--primary-text-color);line-height:40px}.name[in-dialog]{line-height:20px}.time-ago{@apply(--paper-font-common-nowrap);color:var(--secondary-text-color)}</style><div><state-badge state-obj="[[stateObj]]"></state-badge><div class="info"><div class="name" in-dialog$="[[inDialog]]">[[stateObj.entityDisplay]]</div><template is="dom-if" if="[[inDialog]]"><div class="time-ago"><ha-relative-time datetime-obj="[[stateObj.lastChangedAsDate]]"></ha-relative-time></div></template></div></div></template></dom-module><script>Polymer({is:"state-info",properties:{detailed:{type:Boolean,value:!1},stateObj:{type:Object},inDialog:{type:Boolean}}})</script><dom-module id="state-card-climate" assetpath="state-summary/"><template><style is="custom-style" include="iron-flex iron-flex-alignment"></style><style>:host{@apply(--paper-font-body1);line-height:1.5}.state{margin-left:16px;text-align:right}.target{color:var(--primary-text-color)}.current{color:var(--secondary-text-color)}.operation-mode{font-weight:700;text-transform:capitalize}</style><div class="horizontal justified layout"><state-info state-obj="[[stateObj]]" in-dialog="[[inDialog]]"></state-info><div class="state"><div class="target"><span class="operation-mode">[[stateObj.attributes.operation_mode]] </span><span>[[computeTargetTemperature(stateObj)]]</span></div><div class="current"><span>Currently: </span><span>[[stateObj.attributes.current_temperature]]</span> <span></span> <span>[[stateObj.attributes.unit_of_measurement]]</span></div></div></div></template></dom-module><script>Polymer({is:"state-card-climate",properties:{inDialog:{type:Boolean,value:!1},stateObj:{type:Object}},computeTargetTemperature:function(t){var e="";return t.attributes.target_temp_low&&t.attributes.target_temp_high?e=t.attributes.target_temp_low+" - "+t.attributes.target_temp_high+" "+t.attributes.unit_of_measurement:t.attributes.temperature&&(e=t.attributes.temperature+" "+t.attributes.unit_of_measurement),e}})</script><dom-module id="state-card-configurator" assetpath="state-summary/"><template><style is="custom-style" include="iron-flex iron-flex-alignment"></style><style>paper-button{color:var(--default-primary-color);font-weight:500;top:3px;height:37px;margin-right:-.57em}</style><div class="horizontal justified layout"><state-info state-obj="[[stateObj]]" in-dialog="[[inDialog]]"></state-info><paper-button hidden$="[[inDialog]]">[[stateObj.state]]</paper-button></div><template is="dom-if" if="[[stateObj.attributes.description_image]]"><img hidden="" src="[[stateObj.attributes.description_image]]"></template></template></dom-module><script>Polymer({is:"state-card-configurator",properties:{inDialog:{type:Boolean,value:!1},stateObj:{type:Object}}})</script><dom-module id="state-card-cover" assetpath="state-summary/"><template><style is="custom-style" include="iron-flex iron-flex-alignment"></style><style>:host{line-height:1.5}.state{text-align:right;white-space:nowrap;width:127px}</style><div class="horizontal justified layout"><state-info state-obj="[[stateObj]]" in-dialog="[[inDialog]]"></state-info><div class="state"><paper-icon-button icon="mdi:arrow-up" on-tap="onOpenTap" disabled="[[computeIsFullyOpen(stateObj)]]"></paper-icon-button><paper-icon-button icon="mdi:stop" on-tap="onStopTap"></paper-icon-button><paper-icon-button icon="mdi:arrow-down" on-tap="onCloseTap" disabled="[[computeIsFullyClosed(stateObj)]]"></paper-icon-button></div></div></template></dom-module><script>Polymer({is:"state-card-cover",properties:{hass:{type:Object},inDialog:{type:Boolean,value:!1},stateObj:{type:Object}},computeIsFullyOpen:function(t){return void 0!==t.attributes.current_position?100===t.attributes.current_position:"open"===t.state},computeIsFullyClosed:function(t){return void 0!==t.attributes.current_position?0===t.attributes.current_position:"closed"===t.state},onOpenTap:function(){this.hass.serviceActions.callService("cover","open_cover",{entity_id:this.stateObj.entityId})},onCloseTap:function(){this.hass.serviceActions.callService("cover","close_cover",{entity_id:this.stateObj.entityId})},onStopTap:function(){this.hass.serviceActions.callService("cover","stop_cover",{entity_id:this.stateObj.entityId})}})</script><dom-module id="state-card-display" assetpath="state-summary/"><template><style is="custom-style" include="iron-flex iron-flex-alignment"></style><style>.state{@apply(--paper-font-body1);color:var(--primary-text-color);margin-left:16px;text-align:right;line-height:40px}</style><div class="horizontal justified layout"><state-info state-obj="[[stateObj]]" in-dialog="[[inDialog]]"></state-info><div class="state">[[stateObj.stateDisplay]]</div></div></template></dom-module><script>Polymer({is:"state-card-display",properties:{inDialog:{type:Boolean,value:!1},stateObj:{type:Object}}})</script><script>Polymer.PaperInputHelper={},Polymer.PaperInputHelper.NextLabelID=1,Polymer.PaperInputHelper.NextAddonID=1,Polymer.PaperInputBehaviorImpl={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:String},charCounter:{type:Boolean,value:!1},noLabelFloat:{type:Boolean,value:!1},alwaysFloatLabel:{type:Boolean,value:!1},autoValidate:{type:Boolean,value:!1},validator:{type:String},autocomplete:{type:String,value:"off"},autofocus:{type:Boolean,observer:"_autofocusChanged"},inputmode:{type:String},minlength:{type:Number},maxlength:{type:Number},min:{type:String},max:{type:String},step:{type:String},name:{type:String},placeholder:{type:String,value:""},readonly:{type:Boolean,value:!1},size:{type:Number},autocapitalize:{type:String,value:"none"},autocorrect:{type:String,value:"off"},autosave:{type:String},results:{type:Number},accept:{type:String},multiple:{type:Boolean},_ariaDescribedBy:{type:String,value:""},_ariaLabelledBy:{type:String,value:""}},listeners:{"addon-attached":"_onAddonAttached"},keyBindings:{"shift+tab:keydown":"_onShiftTabDown"},hostAttributes:{tabindex:0},get inputElement(){return this.$.input},get _focusableElement(){return this.inputElement},registered:function(){this._typesThatHaveText=["date","datetime","datetime-local","month","time","week","file"]},attached:function(){this._updateAriaLabelledBy(),this.inputElement&&this._typesThatHaveText.indexOf(this.inputElement.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.target;if(t.id)this._ariaDescribedBy=this._appendStringWithSpace(this._ariaDescribedBy,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.focused&&!this._shiftTabPressed&&this._focusableElement.focus()},_onShiftTabDown:function(e){var t=this.getAttribute("tabindex");this._shiftTabPressed=!0,this.setAttribute("tabindex","-1"),this.async(function(){this.setAttribute("tabindex",t),this._shiftTabPressed=!1},1)},_handleAutoValidate:function(){this.autoValidate&&this.validate()},updateValueAndPreserveCaret:function(e){try{var t=this.inputElement.selectionStart;this.value=e,this.inputElement.selectionStart=t,this.inputElement.selectionEnd=t}catch(t){this.value=e}},_computeAlwaysFloatLabel:function(e,t){return t||e},_updateAriaLabelledBy:function(){var e=Polymer.dom(this.root).querySelector("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._ariaLabelledBy=t},_onChange:function(e){this.shadowRoot&&this.fire(e.type,{sourceEvent:e},{node:this,bubbles:e.bubbles,cancelable:e.cancelable})},_autofocusChanged:function(){if(this.autofocus&&this._focusableElement){var e=document.activeElement,t=e instanceof HTMLElement,a=t&&e!==document.body&&e!==document.documentElement;a||this._focusableElement.focus()}}},Polymer.PaperInputBehavior=[Polymer.IronControlState,Polymer.IronA11yKeysBehavior,Polymer.PaperInputBehaviorImpl]</script><dom-module id="paper-input-char-counter" assetpath="../bower_components/paper-input/"><template><style>:host{display:inline-block;float:right;@apply(--paper-font-caption);@apply(--paper-input-char-counter)}:host([hidden]){display:none!important}:host-context([dir=rtl]){float:left}</style><span>[[_charCounterStr]]</span></template></dom-module><script>Polymer({is:"paper-input-char-counter",behaviors:[Polymer.PaperInputAddonBehavior],properties:{_charCounterStr:{type:String,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}}})</script><dom-module id="paper-input" assetpath="../bower_components/paper-input/"><template><style>:host{display:block}:host([focused]){outline:0}:host([hidden]){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{color:var(--paper-input-container-color,--secondary-text-color)}input:-ms-input-placeholder{color:var(--paper-input-container-color,--secondary-text-color)}label{pointer-events:none}</style><paper-input-container no-label-float="[[noLabelFloat]]" always-float-label="[[_computeAlwaysFloatLabel(alwaysFloatLabel,placeholder)]]" auto-validate$="[[autoValidate]]" disabled$="[[disabled]]" invalid="[[invalid]]"><content select="[prefix]"></content><label hidden$="[[!label]]" aria-hidden="true" for="input">[[label]]</label><input is="iron-input" id="input" aria-labelledby$="[[_ariaLabelledBy]]" aria-describedby$="[[_ariaDescribedBy]]" disabled$="[[disabled]]" title$="[[title]]" bind-value="{{value}}" invalid="{{invalid}}" prevent-invalid-input="[[preventInvalidInput]]" allowed-pattern="[[allowedPattern]]" validator="[[validator]]" type$="[[type]]" pattern$="[[pattern]]" required$="[[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]]" autocapitalize$="[[autocapitalize]]" autocorrect$="[[autocorrect]]" on-change="_onChange" tabindex$="[[tabindex]]" autosave$="[[autosave]]" results$="[[results]]" accept$="[[accept]]" multiple$="[[multiple]]"><content select="[suffix]"></content><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.PaperInputBehavior]})</script><script>Polymer.IronFitBehavior={properties:{sizingTarget:{type:Object,value:function(){return this}},fitInto:{type:Object,value:window},noOverlap:{type:Boolean},positionTarget:{type:Element},horizontalAlign:{type:String},verticalAlign:{type:String},dynamicAlign:{type:Boolean},horizontalOffset:{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.getBoundingClientRect().width},get _fitHeight(){var t;return t=this.fitInto===window?this.fitInto.innerHeight:this.fitInto.getBoundingClientRect().height},get _fitLeft(){var t;return t=this.fitInto===window?0:this.fitInto.getBoundingClientRect().left},get _fitTop(){var t;return t=this.fitInto===window?0:this.fitInto.getBoundingClientRect().top},get _defaultPositionTarget(){var t=Polymer.dom(this).parentNode;return t&&t.nodeType===Node.DOCUMENT_FRAGMENT_NODE&&(t=t.host),t},get _localeHorizontalAlign(){if(this._isRTL){if("right"===this.horizontalAlign)return"left";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.autoFitOnAttach&&("none"===window.getComputedStyle(this).display?setTimeout(function(){this.fit()}.bind(this)):this.fit())},fit:function(){this.position(),this.constrain(),this.center()},_discoverInfo:function(){if(!this._fitInfo){var t=window.getComputedStyle(this),i=window.getComputedStyle(this.sizingTarget);this._fitInfo={inlineStyle:{top:this.style.top||"",left:this.style.left||"",position:this.style.position||""},sizerInlineStyle:{maxWidth:this.sizingTarget.style.maxWidth||"",maxHeight:this.sizingTarget.style.maxHeight||"",boxSizing:this.sizingTarget.style.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:parseInt(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.marginBottom,10)||0,left:parseInt(t.marginLeft,10)||0}},this.verticalOffset&&(this._fitInfo.margin.top=this._fitInfo.margin.bottom=this.verticalOffset,this._fitInfo.inlineStyle.marginTop=this.style.marginTop||"",this._fitInfo.inlineStyle.marginBottom=this.style.marginBottom||"",this.style.marginTop=this.style.marginBottom=this.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.marginRight||"",this.style.marginLeft=this.style.marginRight=this.horizontalOffset+"px")}},resetFit:function(){var t=this._fitInfo||{};for(var i in t.sizerInlineStyle)this.sizingTarget.style[i]=t.sizerInlineStyle[i];for(var i in t.inlineStyle)this.style[i]=t.inlineStyle[i];this._fitInfo=null},refit:function(){var t=this.sizingTarget.scrollLeft,i=this.sizingTarget.scrollTop;this.resetFit(),this.fit(),this.sizingTarget.scrollLeft=t,this.sizingTarget.scrollTop=i},position:function(){if(this.horizontalAlign||this.verticalAlign){this._discoverInfo(),this.style.position="fixed",this.sizingTarget.style.boxSizing="border-box",this.style.left="0px",this.style.top="0px";var t=this.getBoundingClientRect(),i=this.__getNormalizedRect(this.positionTarget),e=this.__getNormalizedRect(this.fitInto),n=this._fitInfo.margin,o={width:t.width+n.left+n.right,height:t.height+n.top+n.bottom},h=this.__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.minHeight;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.left="0px"),this.sizingTarget.style.boxSizing="border-box";var i=this.getBoundingClientRect();t.sizedBy.height||this.__sizeDimension(i,t.positionedBy.vertically,"top","bottom","Height"),t.sizedBy.width||this.__sizeDimension(i,t.positionedBy.horizontally,"left","right","Width")}},_sizeDimension:function(t,i,e,n,o){this.__sizeDimension(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];this.sizingTarget.style["max"+o]=l-g-a-p+"px"},center:function(){if(!this.horizontalAlign&&!this.verticalAlign){this._discoverInfo();var t=this._fitInfo.positionedBy;if(!t.vertically||!t.horizontally){this.style.position="fixed",t.vertically||(this.style.top="0px"),t.horizontally||(this.style.left="0px");var i=this.getBoundingClientRect(),e=this.__getNormalizedRect(this.fitInto);if(!t.vertically){var 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"}}}},__getNormalizedRect:function(t){return t===document.documentElement||t===window?{top:0,left:0,width:window.innerWidth,height:window.innerHeight,right:window.innerWidth,bottom: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",horizontalAlign:"left",top:n.top,left:n.left},{verticalAlign:"top",horizontalAlign:"right",top:n.top,left:n.right-e.width},{verticalAlign:"bottom",horizontalAlign:"left",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].top=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.verticalAlign===i&&f.horizontalAlign===t){g=f;break}var p=!(i&&f.verticalAlign!==i||t&&f.horizontalAlign!==t);if(this.dynamicAlign||p){g=g||f,f.croppedArea=this.__getCroppedArea(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="/"><template><style>: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-backdrop-opened)}</style><content></content></template></dom-module><script>!function(){"use strict";Polymer({is:"iron-overlay-backdrop",properties:{opened:{reflectToAttribute:!0,type:Boolean,value:!1,observer:"_openedChanged"}},listeners:{transitionend:"_onTransitionend"},created:function(){this.__openedRaf=null},attached: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:function(){this.opened||this.parentNode!==document.body||Polymer.dom(this.parentNode).removeChild(this)},_onTransitionend:function(e){e&&e.target===this&&this.complete()},_openedChanged:function(e){if(e)this.prepare();else{var t=window.getComputedStyle(this);"0s"!==t.transitionDuration&&0!=t.opacity||this.complete()}this.isAttached&&(this.__openedRaf&&(window.cancelAnimationFrame(this.__openedRaf),this.__openedRaf=null),this.scrollTop=this.scrollTop,this.__openedRaf=window.requestAnimationFrame(function(){this.__openedRaf=null,this.toggleClass("opened",this.opened)}.bind(this)))}})}()</script><script>Polymer.IronOverlayManagerClass=function(){this._overlays=[],this._minimumZ=101,this._backdropElement=null,Polymer.Gestures.add(document,"tap",this._onCaptureClick.bind(this)),document.addEventListener("focus",this._onCaptureFocus.bind(this),!0),document.addEventListener("keydown",this._onCaptureKeyDown.bind(this),!0)},Polymer.IronOverlayManagerClass.prototype={constructor:Polymer.IronOverlayManagerClass,get backdropElement(){return this._backdropElement||(this._backdropElement=document.createElement("iron-overlay-backdrop")),this._backdropElement},get deepActiveElement(){for(var e=document.activeElement||document.body;e.root&&Polymer.dom(e.root).activeElement;)e=Polymer.dom(e.root).activeElement;return e},_bringOverlayAtIndexToFront:function(e){var t=this._overlays[e];if(t){var r=this._overlays.length-1,a=this._overlays[r];if(a&&this._shouldBeBehindOverlay(t,a)&&r--,!(e>=r)){var n=Math.max(this.currentOverlayZ(),this._minimumZ);for(this._getZ(t)<=n&&this._applyOverlayZ(t,n);e<r;)this._overlays[e]=this._overlays[e+1],e++;this._overlays[r]=t}}},addOrRemoveOverlay:function(e){e.opened?this.addOverlay(e):this.removeOverlay(e)},addOverlay:function(e){var t=this._overlays.indexOf(e);if(t>=0)return this._bringOverlayAtIndexToFront(t),void this.trackBackdrop();var r=this._overlays.length,a=this._overlays[r-1],n=Math.max(this._getZ(a),this._minimumZ),o=this._getZ(e);if(a&&this._shouldBeBehindOverlay(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._overlays.splice(r,0,e),this.trackBackdrop()},removeOverlay:function(e){var t=this._overlays.indexOf(e);t!==-1&&(this._overlays.splice(t,1),this.trackBackdrop())},currentOverlay:function(){var e=this._overlays.length-1;return this._overlays[e]},currentOverlayZ:function(){return this._getZ(this.currentOverlay())},ensureMinimumZ:function(e){this._minimumZ=Math.max(this._minimumZ,e)},focusOverlay:function(){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:function(){for(var e=[],t=0;t<this._overlays.length;t++)this._overlays[t].withBackdrop&&e.push(this._overlays[t]);return e},backdropZ:function(){return this._getZ(this._overlayWithBackdrop())-1},_overlayWithBackdrop:function(){for(var e=0;e<this._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||window.getComputedStyle(e).zIndex);r===r&&(t=r)}return t},_setZ:function(e,t){e.style.zIndex=t},_applyOverlayZ:function(e,t){this._setZ(e,t+2)},_overlayInPath:function(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){var t=this.currentOverlay();t&&(Polymer.IronA11yKeysBehavior.keyboardEventMatchesKeys(e,"esc")?t._onCaptureEsc(e):Polymer.IronA11yKeysBehavior.keyboardEventMatchesKeys(e,"tab")&&t._onCaptureTab(e))},_shouldBeBehindOverlay:function(e,t){return!e.alwaysOnTop&&t.alwaysOnTop}},Polymer.IronOverlayManager=new Polymer.IronOverlayManagerClass</script><script>!function(){"use strict";var e=Element.prototype,t=e.matches||e.matchesSelector||e.mozMatchesSelector||e.msMatchesSelector||e.oMatchesSelector||e.webkitMatchesSelector;Polymer.IronFocusablesHelper={getTabbableNodes:function(e){var t=[],r=this._collectTabbableNodes(e,t);return r?this._sortByTabIndex(t):t},isFocusable:function(e){return t.call(e,"input, select, textarea, button, object")?t.call(e,":not([disabled])"):t.call(e,"a[href], area[href], iframe, [tabindex], [contentEditable]")},isTabbable:function(e){return this.isFocusable(e)&&t.call(e,':not([tabindex="-1"])')&&this._isVisible(e)},_normalizedTabIndex:function(e){if(this.isFocusable(e)){var t=e.getAttribute("tabindex")||0;return Number(t)}return-1},_collectTabbableNodes:function(e,t){if(e.nodeType!==Node.ELEMENT_NODE||!this._isVisible(e))return!1;var r=e,a=this._normalizedTabIndex(r),i=a>0;a>=0&&t.push(r);var n;n="content"===r.localName?Polymer.dom(r).getDistributedNodes():Polymer.dom(r.root||r).children;for(var o=0;o<n.length;o++){var s=this._collectTabbableNodes(n[o],t);i=i||s}return i},_isVisible:function(e){var t=e.style;return"hidden"!==t.visibility&&"none"!==t.display&&(t=window.getComputedStyle(e),"hidden"!==t.visibility&&"none"!==t.display)},_sortByTabIndex:function(e){var t=e.length;if(t<2)return e;var r=Math.ceil(t/2),a=this._sortByTabIndex(e.slice(0,r)),i=this._sortByTabIndex(e.slice(r));return this._mergeSortByTabIndex(a,i)},_mergeSortByTabIndex:function(e,t){for(var r=[];e.length>0&&t.length>0;)this._hasLowerTabOrder(e[0],t[0])?r.push(t.shift()):r.push(e.shift());return r.concat(e,t)},_hasLowerTabOrder:function(e,t){var r=Math.max(e.tabIndex,0),a=Math.max(t.tabIndex,0);return 0===r||0===a?a>r:r>a}}}()</script><script>!function(){"use strict";Polymer.IronOverlayBehaviorImpl={properties:{opened:{observer:"_openedChanged",type:Boolean,value:!1,notify:!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},noCancelOnOutsideClick:{type:Boolean,value:!1},closingReason:{type:Object},restoreFocusOnClose:{type:Boolean,value:!1},alwaysOnTop:{type:Boolean},_manager:{type:Object,value:Polymer.IronOverlayManager},_focusedChild:{type:Object}},listeners:{"iron-resize":"_onIronResize"},get backdropElement(){return this._manager.backdropElement},get _focusNode(){return this._focusedChild||Polymer.dom(this).querySelector("[autofocus]")||this},get _focusableNodes(){return Polymer.IronFocusablesHelper.getTabbableNodes(this)},ready:function(){this.__isAnimating=!1,this.__shouldRemoveTabIndex=!1,this.__firstFocusableNode=this.__lastFocusableNode=null,this.__raf=null,this.__restoreFocusNode=null,this._ensureSetup()},attached:function(){this.opened&&this._openedChanged(this.opened),this._observer=Polymer.dom(this).observeNodes(this._onNodesChange)},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){var t=this.fire("iron-overlay-canceled",e,{cancelable:!0});t.defaultPrevented||(this._setCanceled(!0),this.opened=!1)},invalidateTabbables:function(){this.__firstFocusableNode=this.__lastFocusableNode=null},_ensureSetup:function(){this._overlaySetup||(this._overlaySetup=!0,this.style.outline="none",this.style.display="none")},_openedChanged:function(e){e?this.removeAttribute("aria-hidden"):this.setAttribute("aria-hidden","true"),this.isAttached&&(this.__isAnimating=!0,this.__onNextAnimationFrame(this.__openedChanged))},_canceledChanged:function(){this.closingReason=this.closingReason||{},this.closingReason.canceled=this.canceled},_withBackdropChanged:function(){this.withBackdrop&&!this.hasAttribute("tabindex")?(this.setAttribute("tabindex","-1"),this.__shouldRemoveTabIndex=!0):this.__shouldRemoveTabIndex&&(this.removeAttribute("tabindex"),this.__shouldRemoveTabIndex=!1),this.opened&&this.isAttached&&this._manager.trackBackdrop()},_prepareRenderOpened:function(){this.__restoreFocusNode=this._manager.deepActiveElement,this._preparePositioning(),this.refit(),this._finishPositioning(),this.noAutoFocus&&document.activeElement===this._focusNode&&(this._focusNode.blur(),this.__restoreFocusNode.focus())},_renderOpened:function(){this._finishRenderOpened()},_renderClosed:function(){this._finishRenderClosed()},_finishRenderOpened:function(){this.notifyResize(),this.__isAnimating=!1,this.fire("iron-overlay-opened")},_finishRenderClosed:function(){this.style.display="none",this.style.zIndex="",this.notifyResize(),this.__isAnimating=!1,this.fire("iron-overlay-closed",this.closingReason)},_preparePositioning:function(){this.style.transition=this.style.webkitTransition="none",this.style.transform=this.style.webkitTransform="none",this.style.display=""},_finishPositioning:function(){this.style.display="none",this.scrollTop=this.scrollTop,this.style.transition=this.style.webkitTransition="",this.style.transform=this.style.webkitTransform="",this.style.display="",this.scrollTop=this.scrollTop},_applyFocus:function(){if(this.opened)this.noAutoFocus||this._focusNode.focus();else{this._focusNode.blur(),this._focusedChild=null,this.restoreFocusOnClose&&this.__restoreFocusNode&&this.__restoreFocusNode.focus(),this.__restoreFocusNode=null;var e=this._manager.currentOverlay();e&&this!==e&&e._applyFocus()}},_onCaptureClick:function(e){this.noCancelOnOutsideClick||this.cancel(e)},_onCaptureFocus: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:function(e){if(this.withBackdrop){this.__ensureFirstLastFocusables();var t=e.shiftKey,i=t?this.__firstFocusableNode:this.__lastFocusableNode,s=t?this.__lastFocusableNode:this.__firstFocusableNode,o=!1;if(i===s)o=!0;else{var n=this._manager.deepActiveElement;o=n===i||n===this}o&&(e.preventDefault(),this._focusedChild=s,this._applyFocus())}},_onIronResize:function(){this.opened&&!this.__isAnimating&&this.__onNextAnimationFrame(this.refit)},_onNodesChange:function(){this.opened&&!this.__isAnimating&&(this.invalidateTabbables(),this.notifyResize())},__ensureFirstLastFocusables:function(){if(!this.__firstFocusableNode||!this.__lastFocusableNode){var e=this._focusableNodes;this.__firstFocusableNode=e[0],this.__lastFocusableNode=e[e.length-1]}},__openedChanged:function(){this.opened?(this._prepareRenderOpened(),this._manager.addOverlay(this),this._applyFocus(),this._renderOpened()):(this._manager.removeOverlay(this),this._applyFocus(),this._renderClosed())},__onNextAnimationFrame:function(e){this.__raf&&window.cancelAnimationFrame(this.__raf);var t=this;this.__raf=window.requestAnimationFrame(function(){t.__raf=null,e.call(t)})}},Polymer.IronOverlayBehavior=[Polymer.IronFitBehavior,Polymer.IronResizableBehavior,Polymer.IronOverlayBehaviorImpl]}()</script><script>Polymer.NeonAnimatableBehavior={properties:{animationConfig:{type:Object},entryAnimation:{observer:"_entryAnimationChanged",type:String},exitAnimation:{observer:"_exitAnimationChanged",type:String}},_entryAnimationChanged:function(){this.animationConfig=this.animationConfig||{},this.animationConfig.entry=[{name:this.entryAnimation,node:this}]},_exitAnimationChanged:function(){this.animationConfig=this.animationConfig||{},this.animationConfig.exit=[{name:this.exitAnimation,node:this}]},_copyProperties:function(i,n){for(var t in n)i[t]=n[t]},_cloneConfig:function(i){var n={isClone:!0};return this._copyProperties(n,i),n},_getAnimationConfigRecursive:function(i,n,t){if(this.animationConfig){if(this.animationConfig.value&&"function"==typeof this.animationConfig.value)return void this._warn(this._logf("playAnimation","Please put 'animationConfig' inside of your components 'properties' object instead of outside of it."));var o;if(o=i?this.animationConfig[i]:this.animationConfig,Array.isArray(o)||(o=[o]),o)for(var e,a=0;e=o[a];a++)if(e.animatable)e.animatable._getAnimationConfigRecursive(e.type||i,n,t);else if(e.id){var r=n[e.id];r?(r.isClone||(n[e.id]=this._cloneConfig(r),r=n[e.id]),this._copyProperties(r,e)):n[e.id]=e}else t.push(e)}},getAnimationConfig:function(i){var n={},t=[];this._getAnimationConfigRecursive(i,n,t);for(var o in n)t.push(n[o]);return t}}</script><script>Polymer.NeonAnimationRunnerBehaviorImpl={_configureAnimations:function(n){var i=[];if(n.length>0)for(var e,t=0;e=n[t];t++){var o=document.createElement(e.name);if(o.isNeonAnimation){var a=null;try{a=o.configure(e),"function"!=typeof a.cancel&&(a=document.timeline.play(a))}catch(n){a=null,console.warn("Couldnt play","(",e.name,").",n)}a&&i.push({neonAnimation:o,config:e,animation:a})}else console.warn(this.is+":",e.name,"not found!")}return i},_shouldComplete:function(n){for(var i=!0,e=0;e<n.length;e++)if("finished"!=n[e].animation.playState){i=!1;break}return i},_complete:function(n){for(var i=0;i<n.length;i++)n[i].neonAnimation.complete(n[i].config);for(var i=0;i<n.length;i++)n[i].animation.cancel()},playAnimation:function(n,i){var e=this.getAnimationConfig(n);if(e){this._active=this._active||{},this._active[n]&&(this._complete(this._active[n]),delete this._active[n]);var t=this._configureAnimations(e);if(0==t.length)return void this.fire("neon-animation-finish",i,{bubbles:!1});this._active[n]=t;for(var o=0;o<t.length;o++)t[o].animation.onfinish=function(){this._shouldComplete(t)&&(this._complete(t),delete this._active[n],this.fire("neon-animation-finish",i,{bubbles:!1}))}.bind(this)}},cancelAnimation:function(){for(var n in this._animations)this._animations[n].cancel();this._animations={}}},Polymer.NeonAnimationRunnerBehavior=[Polymer.NeonAnimatableBehavior,Polymer.NeonAnimationRunnerBehaviorImpl]</script><script>Polymer.NeonAnimationBehavior={properties:{animationTiming:{type:Object,value:function(){return{duration:500,easing:"cubic-bezier(0.4, 0, 0.2, 1)",fill:"both"}}}},isNeonAnimation:!0,timingFromConfig:function(i){if(i.timing)for(var n in i.timing)this.animationTiming[n]=i.timing[n];return this.animationTiming},setPrefixedProperty:function(i,n,r){for(var t,o={transform:["webkitTransform"],transformOrigin:["mozTransformOrigin","webkitTransformOrigin"]},e=o[n],m=0;t=e[m];m++)i.style[t]=r;i.style[n]=r},complete:function(){}}</script><script>!function(a,b){var c={},d={},e={},f=null;!function(t,e){function i(t){if("number"==typeof t)return t;var e={};for(var i in t)e[i]=t[i];return e}function n(){this._delay=0,this._endDelay=0,this._fill="none",this._iterationStart=0,this._iterations=1,this._duration=0,this._playbackRate=1,this._direction="normal",this._easing="linear",this._easingFunction=E}function r(){return t.isDeprecated("Invalid timing inputs","2016-03-02","TypeError exceptions will be thrown instead.",!0)}function o(e,i,r){var o=new n;return i&&(o.fill="both",o.duration="auto"),"number"!=typeof e||isNaN(e)?void 0!==e&&Object.getOwnPropertyNames(e).forEach(function(i){if("auto"!=e[i]){if(("number"==typeof o[i]||"duration"==i)&&("number"!=typeof e[i]||isNaN(e[i])))return;if("fill"==i&&w.indexOf(e[i])==-1)return;if("direction"==i&&T.indexOf(e[i])==-1)return;if("playbackRate"==i&&1!==e[i]&&t.isDeprecated("AnimationEffectTiming.playbackRate","2014-11-28","Use Animation.playbackRate instead."))return;o[i]=e[i]}}):o.duration=e,o}function a(t){return"number"==typeof t&&(t=isNaN(t)?{duration:0}:{duration:t}),t}function s(e,i){return e=t.numericTimingToObject(e),o(e,i)}function u(t,e,i,n){return t<0||t>1||i<0||i>1?E:function(r){function o(t,e,i){return 3*t*(1-i)*(1-i)*i+3*e*(1-i)*i*i+i*i*i}if(r<=0){var a=0;return t>0?a=e/t:!e&&i>0&&(a=n/i),a*r}if(r>=1){var s=0;return i<1?s=(n-1)/(i-1):1==i&&t<1&&(s=(e-1)/(t-1)),1+s*(r-1)}for(var u=0,c=1;u<c;){var f=(u+c)/2,l=o(t,i,f);if(Math.abs(r-l)<1e-5)return o(e,n,f);l<r?u=f:c=f}return o(e,n,f)}}function c(t,e){return function(i){if(i>=1)return 1;var n=1/t;return i+=e*n,i-i%n}}function f(t){R||(R=document.createElement("div").style),R.animationTimingFunction="",R.animationTimingFunction=t;var e=R.animationTimingFunction;if(""==e&&r())throw new TypeError(t+" is not a valid value for easing");return e}function l(t){if("linear"==t)return E;var e=O.exec(t);if(e)return u.apply(this,e.slice(1).map(Number));var i=k.exec(t);if(i)return c(Number(i[1]),{start:x,middle:A,end:P}[i[2]]);var n=j[t];return n?n:E}function h(t){return Math.abs(m(t)/t.playbackRate)}function m(t){return 0===t.duration||0===t.iterations?0:t.duration*t.iterations}function d(t,e,i){if(null==e)return S;var n=i.delay+t+i.endDelay;return e<Math.min(i.delay,n)?C:e>=Math.min(i.delay+t,n)?D:F}function p(t,e,i,n,r){switch(n){case C:return"backwards"==e||"both"==e?0:null;case F:return i-r;case D:return"forwards"==e||"both"==e?t:null;case S:return null}}function _(t,e,i,n,r){var o=r;return 0===t?e!==C&&(o+=i):o+=n/t,o}function g(t,e,i,n,r,o){var a=t===1/0?e%1:t%1;return 0!==a||i!==D||0===n||0===r&&0!==o||(a=1),a}function b(t,e,i,n){return t===D&&e===1/0?1/0:1===i?Math.floor(n)-1:Math.floor(n)}function v(t,e,i){var n=t;if("normal"!==t&&"reverse"!==t){var r=e;"alternate-reverse"===t&&(r+=1),n="normal",r!==1/0&&r%2!==0&&(n="reverse")}return"normal"===n?i:1-i}function y(t,e,i){var n=d(t,e,i),r=p(t,i.fill,e,n,i.delay);if(null===r)return null;var o=_(i.duration,n,i.iterations,r,i.iterationStart),a=g(o,i.iterationStart,n,i.iterations,r,i.duration),s=b(n,i.iterations,a,o),u=v(i.direction,s,a);return i._easingFunction(u)}var w="backwards|forwards|both|none".split("|"),T="reverse|alternate|alternate-reverse".split("|"),E=function(t){return t};n.prototype={_setMember:function(e,i){this["_"+e]=i,this._effect&&(this._effect._timingInput[e]=i,this._effect._timing=t.normalizeTimingInput(this._effect._timingInput),this._effect.activeDuration=t.calculateActiveDuration(this._effect._timing),this._effect._animation&&this._effect._animation._rebuildUnderlyingAnimation())},get playbackRate(){return this._playbackRate},set delay(t){this._setMember("delay",t)},get delay(){return this._delay},set endDelay(t){this._setMember("endDelay",t)},get endDelay(){return this._endDelay},set fill(t){this._setMember("fill",t)},get fill(){return this._fill},set iterationStart(t){if((isNaN(t)||t<0)&&r())throw new TypeError("iterationStart must be a non-negative number, received: "+timing.iterationStart);this._setMember("iterationStart",t)},get iterationStart(){return this._iterationStart},set duration(t){if("auto"!=t&&(isNaN(t)||t<0)&&r())throw new TypeError("duration must be non-negative or auto, received: "+t);this._setMember("duration",t)},get duration(){return this._duration},set direction(t){this._setMember("direction",t)},get direction(){return this._direction},set easing(t){this._easingFunction=l(f(t)),this._setMember("easing",t)},get easing(){return this._easing},set iterations(t){if((isNaN(t)||t<0)&&r())throw new TypeError("iterations must be non-negative, received: "+t);this._setMember("iterations",t)},get iterations(){return this._iterations}};var x=1,A=.5,P=0,j={ease:u(.25,.1,.25,1),"ease-in":u(.42,0,1,1),"ease-out":u(0,0,.58,1),"ease-in-out":u(.42,0,.58,1),"step-start":c(1,x),"step-middle":c(1,A),"step-end":c(1,P)},R=null,N="\\s*(-?\\d+\\.?\\d*|-?\\.\\d+)\\s*",O=new RegExp("cubic-bezier\\("+N+","+N+","+N+","+N+"\\)"),k=/steps\(\s*(\d+)\s*,\s*(start|middle|end)\s*\)/,S=0,C=1,D=2,F=3;t.cloneTimingInput=i,t.makeTiming=o,t.numericTimingToObject=a,t.normalizeTimingInput=s,t.calculateActiveDuration=h,t.calculateIterationProgress=y,t.calculatePhase=d,t.normalizeEasing=f,t.parseEasingFunction=l}(c,f),function(t,e){function i(t,e){return t in f?f[t][e]||e:e}function n(t){return"display"===t||0===t.lastIndexOf("animation",0)||0===t.lastIndexOf("transition",0)}function r(t,e,r){if(!n(t)){var o=s[t];if(o){u.style[t]=e;for(var a in o){var c=o[a],f=u.style[c];r[c]=i(c,f)}}else r[t]=i(t,e)}}function o(t){var e=[];for(var i in t)if(!(i in["easing","offset","composite"])){var n=t[i];Array.isArray(n)||(n=[n]);for(var r,o=n.length,a=0;a<o;a++)r={},"offset"in t?r.offset=t.offset:1==o?r.offset=1:r.offset=a/(o-1),"easing"in t&&(r.easing=t.easing),"composite"in t&&(r.composite=t.composite),r[i]=n[a],e.push(r)}return e.sort(function(t,e){return t.offset-e.offset}),e}function a(e){function i(){var t=n.length;null==n[t-1].offset&&(n[t-1].offset=1),t>1&&null==n[0].offset&&(n[0].offset=0);for(var e=0,i=n[0].offset,r=1;r<t;r++){var o=n[r].offset;if(null!=o){for(var a=1;a<r-e;a++)n[e+a].offset=i+(o-i)*a/(r-e);e=r,i=o}}}if(null==e)return[];window.Symbol&&Symbol.iterator&&Array.prototype.from&&e[Symbol.iterator]&&(e=Array.from(e)),Array.isArray(e)||(e=o(e));for(var n=e.map(function(e){var i={};for(var n in e){var o=e[n];if("offset"==n){if(null!=o){if(o=Number(o),!isFinite(o))throw new TypeError("Keyframe offsets must be numbers.");if(o<0||o>1)throw new TypeError("Keyframe offsets must be between 0 and 1.")}}else if("composite"==n){if("add"==o||"accumulate"==o)throw{type:DOMException.NOT_SUPPORTED_ERR,name:"NotSupportedError",message:"add compositing is not supported"};if("replace"!=o)throw new TypeError("Invalid composite mode "+o+".")}else o="easing"==n?t.normalizeEasing(o):""+o;r(n,o,i)}return void 0==i.offset&&(i.offset=null),void 0==i.easing&&(i.easing="linear"),i}),a=!0,s=-(1/0),u=0;u<n.length;u++){var c=n[u].offset;if(null!=c){if(c<s)throw new TypeError("Keyframes are not loosely sorted by offset. Sort or specify offsets.");s=c}else a=!1}return n=n.filter(function(t){return t.offset>=0&&t.offset<=1}),a||i(),n}var s={background:["backgroundImage","backgroundPosition","backgroundSize","backgroundRepeat","backgroundAttachment","backgroundOrigin","backgroundClip","backgroundColor"],border:["borderTopColor","borderTopStyle","borderTopWidth","borderRightColor","borderRightStyle","borderRightWidth","borderBottomColor","borderBottomStyle","borderBottomWidth","borderLeftColor","borderLeftStyle","borderLeftWidth"],borderBottom:["borderBottomWidth","borderBottomStyle","borderBottomColor"],borderColor:["borderTopColor","borderRightColor","borderBottomColor","borderLeftColor"],borderLeft:["borderLeftWidth","borderLeftStyle","borderLeftColor"],borderRadius:["borderTopLeftRadius","borderTopRightRadius","borderBottomRightRadius","borderBottomLeftRadius"],borderRight:["borderRightWidth","borderRightStyle","borderRightColor"],borderTop:["borderTopWidth","borderTopStyle","borderTopColor"],borderWidth:["borderTopWidth","borderRightWidth","borderBottomWidth","borderLeftWidth"],flex:["flexGrow","flexShrink","flexBasis"],font:["fontFamily","fontSize","fontStyle","fontVariant","fontWeight","lineHeight"],margin:["marginTop","marginRight","marginBottom","marginLeft"],outline:["outlineColor","outlineStyle","outlineWidth"],padding:["paddingTop","paddingRight","paddingBottom","paddingLeft"]},u=document.createElementNS("http://www.w3.org/1999/xhtml","div"),c={thin:"1px",medium:"3px",thick:"5px"},f={borderBottomWidth:c,borderLeftWidth:c,borderRightWidth:c,borderTopWidth:c,fontSize:{"xx-small":"60%","x-small":"75%",small:"89%",medium:"100%",large:"120%","x-large":"150%","xx-large":"200%"},fontWeight:{normal:"400",bold:"700"},outlineWidth:c,textShadow:{none:"0px 0px 0px transparent"},boxShadow:{none:"0px 0px 0px 0px transparent"}};t.convertToArrayForm=o,t.normalizeKeyframes=a}(c,f),function(t){var e={};t.isDeprecated=function(t,i,n,r){var o=r?"are":"is",a=new Date,s=new Date(i);return s.setMonth(s.getMonth()+3),!(a<s&&(t in e||console.warn("Web Animations: "+t+" "+o+" deprecated and will stop working on "+s.toDateString()+". "+n),e[t]=!0,1))},t.deprecated=function(e,i,n,r){var o=r?"are":"is";if(t.isDeprecated(e,i,n,r))throw new Error(e+" "+o+" no longer supported. "+n)}}(c),function(){if(document.documentElement.animate){var a=document.documentElement.animate([],0),b=!0;if(a&&(b=!1,"play|currentTime|pause|reverse|playbackRate|cancel|finish|startTime|playState".split("|").forEach(function(t){void 0===a[t]&&(b=!0)})),!b)return}!function(t,e,i){function n(t){for(var e={},i=0;i<t.length;i++)for(var n in t[i])if("offset"!=n&&"easing"!=n&&"composite"!=n){var r={offset:t[i].offset,easing:t[i].easing,value:t[i][n]};e[n]=e[n]||[],e[n].push(r)}for(var o in e){var a=e[o];if(0!=a[0].offset||1!=a[a.length-1].offset)throw{type:DOMException.NOT_SUPPORTED_ERR,name:"NotSupportedError",message:"Partial keyframes are not supported"}}return e}function r(i){var n=[];for(var r in i)for(var o=i[r],a=0;a<o.length-1;a++){var s=a,u=a+1,c=o[s].offset,f=o[u].offset,l=c,h=f;0==a&&(l=-(1/0),0==f&&(u=s)),a==o.length-2&&(h=1/0,1==c&&(s=u)),n.push({applyFrom:l,applyTo:h,startOffset:o[s].offset,endOffset:o[u].offset,easingFunction:t.parseEasingFunction(o[s].easing),property:r,interpolation:e.propertyInterpolation(r,o[s].value,o[u].value)})}return n.sort(function(t,e){return t.startOffset-e.startOffset}),n}e.convertEffectInput=function(i){var o=t.normalizeKeyframes(i),a=n(o),s=r(a);return function(t,i){if(null!=i)s.filter(function(t){return i>=t.applyFrom&&i<t.applyTo}).forEach(function(n){var r=i-n.startOffset,o=n.endOffset-n.startOffset,a=0==o?0:n.easingFunction(r/o);e.apply(t,n.property,n.interpolation(a))});else for(var n in a)"offset"!=n&&"easing"!=n&&"composite"!=n&&e.clear(t,n)}}}(c,d,f),function(t,e,i){function n(t){return t.replace(/-(.)/g,function(t,e){return e.toUpperCase()})}function r(t,e,i){s[i]=s[i]||[],s[i].push([t,e])}function o(t,e,i){for(var o=0;o<i.length;o++){var a=i[o];r(t,e,n(a))}}function a(i,r,o){var a=i;/-/.test(i)&&!t.isDeprecated("Hyphenated property names","2016-03-22","Use camelCase instead.",!0)&&(a=n(i)),"initial"!=r&&"initial"!=o||("initial"==r&&(r=u[a]),"initial"==o&&(o=u[a]));for(var c=r==o?[]:s[a],f=0;c&&f<c.length;f++){var l=c[f][0](r),h=c[f][0](o);if(void 0!==l&&void 0!==h){var m=c[f][1](l,h);if(m){var d=e.Interpolation.apply(null,m);return function(t){return 0==t?r:1==t?o:d(t)}}}}return e.Interpolation(!1,!0,function(t){return t?o:r})}var s={};e.addPropertiesHandler=o;var u={backgroundColor:"transparent",backgroundPosition:"0% 0%",borderBottomColor:"currentColor",borderBottomLeftRadius:"0px",borderBottomRightRadius:"0px",borderBottomWidth:"3px",borderLeftColor:"currentColor",borderLeftWidth:"3px",borderRightColor:"currentColor",borderRightWidth:"3px",borderSpacing:"2px",borderTopColor:"currentColor",borderTopLeftRadius:"0px",borderTopRightRadius:"0px",borderTopWidth:"3px",bottom:"auto",clip:"rect(0px, 0px, 0px, 0px)",color:"black",fontSize:"100%",fontWeight:"400",height:"auto",left:"auto",letterSpacing:"normal",lineHeight:"120%",marginBottom:"0px",marginLeft:"0px",marginRight:"0px",marginTop:"0px",maxHeight:"none",maxWidth:"none",minHeight:"0px",minWidth:"0px",opacity:"1.0",outlineColor:"invert",outlineOffset:"0px",outlineWidth:"3px",paddingBottom:"0px",paddingLeft:"0px",paddingRight:"0px",paddingTop:"0px",right:"auto",textIndent:"0px",textShadow:"0px 0px 0px transparent",top:"auto",transform:"",verticalAlign:"0px",visibility:"visible",width:"auto",wordSpacing:"normal",zIndex:"auto"};e.propertyInterpolation=a}(c,d,f),function(t,e,i){function n(e){var i=t.calculateActiveDuration(e),n=function(n){return t.calculateIterationProgress(i,n,e)};return n._totalDuration=e.delay+i+e.endDelay,n}e.KeyframeEffect=function(i,r,o,a){var s,u=n(t.normalizeTimingInput(o)),c=e.convertEffectInput(r),f=function(){c(i,s)};return f._update=function(t){return s=u(t),null!==s},f._clear=function(){c(i,null)},f._hasSameTarget=function(t){return i===t},f._target=i,f._totalDuration=u._totalDuration,f._id=a,f},e.NullEffect=function(t){var e=function(){t&&(t(),t=null)};return e._update=function(){return null},e._totalDuration=0,e._hasSameTarget=function(){return!1},e}}(c,d,f),function(t,e){t.apply=function(e,i,n){e.style[t.propertyName(i)]=n},t.clear=function(e,i){e.style[t.propertyName(i)]=""}}(d,f),function(t){window.Element.prototype.animate=function(e,i){var n="";return i&&i.id&&(n=i.id),t.timeline._play(t.KeyframeEffect(this,e,i,n))}}(d),function(t,e){function i(t,e,n){if("number"==typeof t&&"number"==typeof e)return t*(1-n)+e*n;if("boolean"==typeof t&&"boolean"==typeof e)return n<.5?t:e;if(t.length==e.length){for(var r=[],o=0;o<t.length;o++)r.push(i(t[o],e[o],n));return r}throw"Mismatched interpolation arguments "+t+":"+e}t.Interpolation=function(t,e,n){return function(r){return n(i(t,e,r))}}}(d,f),function(t,e,i){t.sequenceNumber=0;var n=function(t,e,i){this.target=t,this.currentTime=e,this.timelineTime=i,this.type="finish",this.bubbles=!1,this.cancelable=!1,this.currentTarget=t,this.defaultPrevented=!1,this.eventPhase=Event.AT_TARGET,this.timeStamp=Date.now()};e.Animation=function(e){this.id="",e&&e._id&&(this.id=e._id),this._sequenceNumber=t.sequenceNumber++,this._currentTime=0,this._startTime=null,this._paused=!1,this._playbackRate=1,this._inTimeline=!0,this._finishedFlag=!0,this.onfinish=null,this._finishHandlers=[],this._effect=e,this._inEffect=this._effect._update(0),this._idle=!0,this._currentTimePending=!1},e.Animation.prototype={_ensureAlive:function(){this.playbackRate<0&&0===this.currentTime?this._inEffect=this._effect._update(-1):this._inEffect=this._effect._update(this.currentTime),this._inTimeline||!this._inEffect&&this._finishedFlag||(this._inTimeline=!0,e.timeline._animations.push(this))},_tickCurrentTime:function(t,e){t!=this._currentTime&&(this._currentTime=t,this._isFinished&&!e&&(this._currentTime=this._playbackRate>0?this._totalDuration:0),this._ensureAlive())},get currentTime(){return this._idle||this._currentTimePending?null:this._currentTime},set currentTime(t){t=+t,isNaN(t)||(e.restart(),this._paused||null==this._startTime||(this._startTime=this._timeline.currentTime-t/this._playbackRate),this._currentTimePending=!1,this._currentTime!=t&&(this._idle&&(this._idle=!1,this._paused=!0),this._tickCurrentTime(t,!0),e.applyDirtiedAnimation(this)))},get startTime(){return this._startTime},set startTime(t){t=+t,isNaN(t)||this._paused||this._idle||(this._startTime=t,this._tickCurrentTime((this._timeline.currentTime-this._startTime)*this.playbackRate),e.applyDirtiedAnimation(this))},get playbackRate(){return this._playbackRate},set playbackRate(t){if(t!=this._playbackRate){var i=this.currentTime;this._playbackRate=t,this._startTime=null,"paused"!=this.playState&&"idle"!=this.playState&&(this._finishedFlag=!1,this._idle=!1,this._ensureAlive(),e.applyDirtiedAnimation(this)),null!=i&&(this.currentTime=i)}},get _isFinished(){return!this._idle&&(this._playbackRate>0&&this._currentTime>=this._totalDuration||this._playbackRate<0&&this._currentTime<=0)},get _totalDuration(){return this._effect._totalDuration},get playState(){return this._idle?"idle":null==this._startTime&&!this._paused&&0!=this.playbackRate||this._currentTimePending?"pending":this._paused?"paused":this._isFinished?"finished":"running"},_rewind:function(){if(this._playbackRate>=0)this._currentTime=0;else{if(!(this._totalDuration<1/0))throw new DOMException("Unable to rewind negative playback rate animation with infinite duration","InvalidStateError");this._currentTime=this._totalDuration}},play:function(){this._paused=!1,(this._isFinished||this._idle)&&(this._rewind(),this._startTime=null),this._finishedFlag=!1,this._idle=!1,this._ensureAlive(),e.applyDirtiedAnimation(this)},pause:function(){this._isFinished||this._paused||this._idle?this._idle&&(this._rewind(),this._idle=!1):this._currentTimePending=!0,this._startTime=null,this._paused=!0},finish:function(){this._idle||(this.currentTime=this._playbackRate>0?this._totalDuration:0,this._startTime=this._totalDuration-this.currentTime,this._currentTimePending=!1,e.applyDirtiedAnimation(this))},cancel:function(){this._inEffect&&(this._inEffect=!1,this._idle=!0,this._paused=!1,this._isFinished=!0,this._finishedFlag=!0,this._currentTime=0,this._startTime=null,this._effect._update(null),e.applyDirtiedAnimation(this))},reverse:function(){this.playbackRate*=-1,this.play()},addEventListener:function(t,e){"function"==typeof e&&"finish"==t&&this._finishHandlers.push(e)},removeEventListener:function(t,e){if("finish"==t){var i=this._finishHandlers.indexOf(e);i>=0&&this._finishHandlers.splice(i,1)}},_fireEvents:function(t){if(this._isFinished){if(!this._finishedFlag){var e=new n(this,this._currentTime,t),i=this._finishHandlers.concat(this.onfinish?[this.onfinish]:[]);setTimeout(function(){i.forEach(function(t){t.call(e.target,e)})},0),this._finishedFlag=!0}}else this._finishedFlag=!1},_tick:function(t,e){this._idle||this._paused||(null==this._startTime?e&&(this.startTime=t-this._currentTime/this.playbackRate):this._isFinished||this._tickCurrentTime((t-this._startTime)*this.playbackRate)),e&&(this._currentTimePending=!1,this._fireEvents(t))},get _needsTick(){return this.playState in{pending:1,running:1}||!this._finishedFlag},_targetAnimations:function(){var t=this._effect._target;return t._activeAnimations||(t._activeAnimations=[]),t._activeAnimations},_markTarget:function(){var t=this._targetAnimations();t.indexOf(this)===-1&&t.push(this)},_unmarkTarget:function(){var t=this._targetAnimations(),e=t.indexOf(this);e!==-1&&t.splice(e,1)}}}(c,d,f),function(t,e,i){function n(t){var e=c;c=[],t<_.currentTime&&(t=_.currentTime),_._animations.sort(r),_._animations=s(t,!0,_._animations)[0],e.forEach(function(e){e[1](t)}),a(),l=void 0}function r(t,e){return t._sequenceNumber-e._sequenceNumber}function o(){this._animations=[],this.currentTime=window.performance&&performance.now?performance.now():0}function a(){d.forEach(function(t){t()}),d.length=0}function s(t,i,n){p=!0,m=!1;var r=e.timeline;r.currentTime=t,h=!1;var o=[],a=[],s=[],u=[];return n.forEach(function(e){e._tick(t,i),e._inEffect?(a.push(e._effect),e._markTarget()):(o.push(e._effect),e._unmarkTarget()),e._needsTick&&(h=!0);var n=e._inEffect||e._needsTick;e._inTimeline=n,n?s.push(e):u.push(e)}),d.push.apply(d,o),d.push.apply(d,a),h&&requestAnimationFrame(function(){}),p=!1,[s,u]}var u=window.requestAnimationFrame,c=[],f=0;window.requestAnimationFrame=function(t){var e=f++;return 0==c.length&&u(n),c.push([e,t]),e},window.cancelAnimationFrame=function(t){c.forEach(function(e){e[0]==t&&(e[1]=function(){})})},o.prototype={_play:function(i){i._timing=t.normalizeTimingInput(i.timing);var n=new e.Animation(i);return n._idle=!1,n._timeline=this,this._animations.push(n),e.restart(),e.applyDirtiedAnimation(n),n}};var l=void 0,h=!1,m=!1;e.restart=function(){return h||(h=!0,requestAnimationFrame(function(){}),m=!0),m},e.applyDirtiedAnimation=function(t){if(!p){t._markTarget();var i=t._targetAnimations();i.sort(r);var n=s(e.timeline.currentTime,!1,i.slice())[1];n.forEach(function(t){var e=_._animations.indexOf(t);e!==-1&&_._animations.splice(e,1)}),a()}};var d=[],p=!1,_=new o;e.timeline=_}(c,d,f),function(t){function e(t,e){var i=t.exec(e);if(i)return i=t.ignoreCase?i[0].toLowerCase():i[0],[i,e.substr(i.length)]}function i(t,e){e=e.replace(/^\s*/,"");var i=t(e);if(i)return[i[0],i[1].replace(/^\s*/,"")]}function n(t,n,r){t=i.bind(null,t);for(var o=[];;){var a=t(r);if(!a)return[o,r];if(o.push(a[0]),r=a[1],a=e(n,r),!a||""==a[1])return[o,r];r=a[1]}}function r(t,e){for(var i=0,n=0;n<e.length&&(!/\s|,/.test(e[n])||0!=i);n++)if("("==e[n])i++;else if(")"==e[n]&&(i--,0==i&&n++,i<=0))break;var r=t(e.substr(0,n));return void 0==r?void 0:[r,e.substr(n)]}function o(t,e){for(var i=t,n=e;i&&n;)i>n?i%=n:n%=i;return i=t*e/(i+n)}function a(t){return function(e){var i=t(e);return i&&(i[0]=void 0),i}}function s(t,e){return function(i){var n=t(i);return n?n:[e,i]}}function u(e,i){for(var n=[],r=0;r<e.length;r++){var o=t.consumeTrimmed(e[r],i);if(!o||""==o[0])return;void 0!==o[0]&&n.push(o[0]),i=o[1]}if(""==i)return n}function c(t,e,i,n,r){for(var a=[],s=[],u=[],c=o(n.length,r.length),f=0;f<c;f++){var l=e(n[f%n.length],r[f%r.length]);if(!l)return;a.push(l[0]),s.push(l[1]),u.push(l[2])}return[a,s,function(e){var n=e.map(function(t,e){return u[e](t)}).join(i);return t?t(n):n}]}function f(t,e,i){for(var n=[],r=[],o=[],a=0,s=0;s<i.length;s++)if("function"==typeof i[s]){var u=i[s](t[a],e[a++]);n.push(u[0]),r.push(u[1]),o.push(u[2])}else!function(t){n.push(!1),r.push(!1),o.push(function(){return i[t]})}(s);return[n,r,function(t){for(var e="",i=0;i<t.length;i++)e+=o[i](t[i]);return e}]}t.consumeToken=e,t.consumeTrimmed=i,t.consumeRepeated=n,t.consumeParenthesised=r,t.ignore=a,t.optional=s,t.consumeList=u,t.mergeNestedRepeated=c.bind(null,null),t.mergeWrappedNestedRepeated=c,t.mergeList=f}(d),function(t){function e(e){function i(e){var i=t.consumeToken(/^inset/i,e);if(i)return n.inset=!0,i;var i=t.consumeLengthOrPercent(e);if(i)return n.lengths.push(i[0]),i;var i=t.consumeColor(e);return i?(n.color=i[0],i):void 0}var n={inset:!1,lengths:[],color:null},r=t.consumeRepeated(i,/^/,e);if(r&&r[0].length)return[n,r[1]]}function i(i){var n=t.consumeRepeated(e,/^,/,i);if(n&&""==n[1])return n[0]}function n(e,i){for(;e.lengths.length<Math.max(e.lengths.length,i.lengths.length);)e.lengths.push({px:0});for(;i.lengths.length<Math.max(e.lengths.length,i.lengths.length);)i.lengths.push({px:0});if(e.inset==i.inset&&!!e.color==!!i.color){for(var n,r=[],o=[[],0],a=[[],0],s=0;s<e.lengths.length;s++){var u=t.mergeDimensions(e.lengths[s],i.lengths[s],2==s);o[0].push(u[0]),a[0].push(u[1]),r.push(u[2])}if(e.color&&i.color){var c=t.mergeColors(e.color,i.color);o[1]=c[0],a[1]=c[1],n=c[2]}return[o,a,function(t){for(var i=e.inset?"inset ":" ",o=0;o<r.length;o++)i+=r[o](t[0][o])+" ";return n&&(i+=n(t[1])),i}]}}function r(e,i,n,r){function o(t){return{inset:t,color:[0,0,0,0],lengths:[{px:0},{px:0},{px:0},{px:0}]}}for(var a=[],s=[],u=0;u<n.length||u<r.length;u++){var c=n[u]||o(r[u].inset),f=r[u]||o(n[u].inset);a.push(c),s.push(f)}return t.mergeNestedRepeated(e,i,a,s)}var o=r.bind(null,n,", ");t.addPropertiesHandler(i,o,["box-shadow","text-shadow"])}(d),function(t,e){function i(t){return t.toFixed(3).replace(".000","")}function n(t,e,i){return Math.min(e,Math.max(t,i))}function r(t){if(/^\s*[-+]?(\d*\.)?\d+\s*$/.test(t))return Number(t)}function o(t,e){return[t,e,i]}function a(t,e){if(0!=t)return u(0,1/0)(t,e)}function s(t,e){return[t,e,function(t){return Math.round(n(1,1/0,t))}]}function u(t,e){return function(r,o){return[r,o,function(r){return i(n(t,e,r))}]}}function c(t,e){return[t,e,Math.round]}t.clamp=n,t.addPropertiesHandler(r,u(0,1/0),["border-image-width","line-height"]),t.addPropertiesHandler(r,u(0,1),["opacity","shape-image-threshold"]),t.addPropertiesHandler(r,a,["flex-grow","flex-shrink"]),t.addPropertiesHandler(r,s,["orphans","widows"]),t.addPropertiesHandler(r,c,["z-index"]),t.parseNumber=r,t.mergeNumbers=o,t.numberToString=i}(d,f),function(t,e){function i(t,e){if("visible"==t||"visible"==e)return[0,1,function(i){return i<=0?t:i>=1?e:"visible"}]}t.addPropertiesHandler(String,i,["visibility"])}(d),function(t,e){function i(t){t=t.trim(),o.fillStyle="#000",o.fillStyle=t;var e=o.fillStyle;if(o.fillStyle="#fff",o.fillStyle=t,e==o.fillStyle){o.fillRect(0,0,1,1);var i=o.getImageData(0,0,1,1).data;o.clearRect(0,0,1,1);var n=i[3]/255;return[i[0]*n,i[1]*n,i[2]*n,n]}}function n(e,i){return[e,i,function(e){function i(t){return Math.max(0,Math.min(255,t))}if(e[3])for(var n=0;n<3;n++)e[n]=Math.round(i(e[n]/e[3]));return e[3]=t.numberToString(t.clamp(0,1,e[3])),"rgba("+e.join(",")+")"}]}var r=document.createElementNS("http://www.w3.org/1999/xhtml","canvas");r.width=r.height=1;var o=r.getContext("2d");t.addPropertiesHandler(i,n,["background-color","border-bottom-color","border-left-color","border-right-color","border-top-color","color","outline-color","text-decoration-color"]),t.consumeColor=t.consumeParenthesised.bind(null,i),t.mergeColors=n}(d,f),function(a,b){function c(a,b){if(b=b.trim().toLowerCase(),"0"==b&&"px".search(a)>=0)return{px:0};if(/^[^(]*$|^calc/.test(b)){b=b.replace(/calc\(/g,"(");var c={};b=b.replace(a,function(t){return c[t]=null,"U"+t});for(var d="U("+a.source+")",e=b.replace(/[-+]?(\d*\.)?\d+/g,"N").replace(new RegExp("N"+d,"g"),"D").replace(/\s[+-]\s/g,"O").replace(/\s/g,""),f=[/N\*(D)/g,/(N|D)[*\/]N/g,/(N|D)O\1/g,/\((N|D)\)/g],g=0;g<f.length;)f[g].test(e)?(e=e.replace(f[g],"$1"),g=0):g++;if("D"==e){for(var h in c){var i=eval(b.replace(new RegExp("U"+h,"g"),"").replace(new RegExp(d,"g"),"*0"));if(!isFinite(i))return;c[h]=i}return c}}}function d(t,i){return e(t,i,!0)}function e(t,e,i){var n,r=[];for(n in t)r.push(n);for(n in e)r.indexOf(n)<0&&r.push(n);return t=r.map(function(e){return t[e]||0}),e=r.map(function(t){return e[t]||0}),[t,e,function(t){var e=t.map(function(e,n){return 1==t.length&&i&&(e=Math.max(e,0)),a.numberToString(e)+r[n]}).join(" + ");return t.length>1?"calc("+e+")":e}]}var f="px|em|ex|ch|rem|vw|vh|vmin|vmax|cm|mm|in|pt|pc",g=c.bind(null,new RegExp(f,"g")),h=c.bind(null,new RegExp(f+"|%","g")),i=c.bind(null,/deg|rad|grad|turn/g);a.parseLength=g,a.parseLengthOrPercent=h,a.consumeLengthOrPercent=a.consumeParenthesised.bind(null,h),a.parseAngle=i,a.mergeDimensions=e;var j=a.consumeParenthesised.bind(null,g),k=a.consumeRepeated.bind(void 0,j,/^/),l=a.consumeRepeated.bind(void 0,k,/^,/);a.consumeSizePairList=l;var m=function(t){var e=l(t);if(e&&""==e[1])return e[0]},n=a.mergeNestedRepeated.bind(void 0,d," "),o=a.mergeNestedRepeated.bind(void 0,n,",");a.mergeNonNegativeSizePair=n,a.addPropertiesHandler(m,o,["background-size"]),a.addPropertiesHandler(h,d,["border-bottom-width","border-image-width","border-left-width","border-right-width","border-top-width","flex-basis","font-size","height","line-height","max-height","max-width","outline-width","width"]),a.addPropertiesHandler(h,e,["border-bottom-left-radius","border-bottom-right-radius","border-top-left-radius","border-top-right-radius","bottom","left","letter-spacing","margin-bottom","margin-left","margin-right","margin-top","min-height","min-width","outline-offset","padding-bottom","padding-left","padding-right","padding-top","perspective","right","shape-margin","text-indent","top","vertical-align","word-spacing"])}(d,f),function(t,e){function i(e){return t.consumeLengthOrPercent(e)||t.consumeToken(/^auto/,e)}function n(e){var n=t.consumeList([t.ignore(t.consumeToken.bind(null,/^rect/)),t.ignore(t.consumeToken.bind(null,/^\(/)),t.consumeRepeated.bind(null,i,/^,/),t.ignore(t.consumeToken.bind(null,/^\)/))],e);if(n&&4==n[0].length)return n[0]}function r(e,i){return"auto"==e||"auto"==i?[!0,!1,function(n){var r=n?e:i;if("auto"==r)return"auto";var o=t.mergeDimensions(r,r);return o[2](o[0])}]:t.mergeDimensions(e,i)}function o(t){return"rect("+t+")"}var a=t.mergeWrappedNestedRepeated.bind(null,o,r,", ");t.parseBox=n,t.mergeBoxes=a,t.addPropertiesHandler(n,a,["clip"])}(d,f),function(t,e){function i(t){return function(e){var i=0;return t.map(function(t){return t===f?e[i++]:t})}}function n(t){return t}function r(e){if(e=e.toLowerCase().trim(),"none"==e)return[];for(var i,n=/\s*(\w+)\(([^)]*)\)/g,r=[],o=0;i=n.exec(e);){if(i.index!=o)return;o=i.index+i[0].length;var a=i[1],s=m[a];if(!s)return;var u=i[2].split(","),c=s[0];if(c.length<u.length)return;for(var f=[],d=0;d<c.length;d++){var p,_=u[d],g=c[d];if(p=_?{A:function(e){return"0"==e.trim()?h:t.parseAngle(e)},N:t.parseNumber,T:t.parseLengthOrPercent,L:t.parseLength}[g.toUpperCase()](_):{a:h,n:f[0],t:l}[g],void 0===p)return;f.push(p)}if(r.push({t:a,d:f}),n.lastIndex==e.length)return r}}function o(t){return t.toFixed(6).replace(".000000","")}function a(e,i){if(e.decompositionPair!==i){e.decompositionPair=i;var n=t.makeMatrixDecomposition(e)}if(i.decompositionPair!==e){i.decompositionPair=e;var r=t.makeMatrixDecomposition(i)}return null==n[0]||null==r[0]?[[!1],[!0],function(t){return t?i[0].d:e[0].d}]:(n[0].push(0),r[0].push(1),[n,r,function(e){var i=t.quat(n[0][3],r[0][3],e[5]),a=t.composeMatrix(e[0],e[1],e[2],i,e[4]),s=a.map(o).join(",");return s}])}function s(t){return t.replace(/[xy]/,"")}function u(t){return t.replace(/(x|y|z|3d)?$/,"3d")}function c(e,i){var n=t.makeMatrixDecomposition&&!0,r=!1;if(!e.length||!i.length){e.length||(r=!0,e=i,i=[]);for(var o=0;o<e.length;o++){var c=e[o].t,f=e[o].d,l="scale"==c.substr(0,5)?1:0;i.push({t:c,d:f.map(function(t){if("number"==typeof t)return l;var e={};for(var i in t)e[i]=l;return e})})}}var h=function(t,e){return"perspective"==t&&"perspective"==e||("matrix"==t||"matrix3d"==t)&&("matrix"==e||"matrix3d"==e)},d=[],p=[],_=[];if(e.length!=i.length){if(!n)return;var g=a(e,i);d=[g[0]],p=[g[1]],_=[["matrix",[g[2]]]]}else for(var o=0;o<e.length;o++){var c,b=e[o].t,v=i[o].t,y=e[o].d,w=i[o].d,T=m[b],E=m[v];if(h(b,v)){if(!n)return;var g=a([e[o]],[i[o]]);d.push(g[0]),p.push(g[1]),_.push(["matrix",[g[2]]])}else{if(b==v)c=b;else if(T[2]&&E[2]&&s(b)==s(v))c=s(b),y=T[2](y),w=E[2](w);else{if(!T[1]||!E[1]||u(b)!=u(v)){if(!n)return;var g=a(e,i);d=[g[0]],p=[g[1]],_=[["matrix",[g[2]]]];break}c=u(b),y=T[1](y),w=E[1](w)}for(var x=[],A=[],P=[],j=0;j<y.length;j++){var R="number"==typeof y[j]?t.mergeNumbers:t.mergeDimensions,g=R(y[j],w[j]);x[j]=g[0],A[j]=g[1],P.push(g[2])}d.push(x),p.push(A),_.push([c,P])}}if(r){var N=d;d=p,p=N}return[d,p,function(t){return t.map(function(t,e){var i=t.map(function(t,i){return _[e][1][i](t)}).join(",");return"matrix"==_[e][0]&&16==i.split(",").length&&(_[e][0]="matrix3d"),_[e][0]+"("+i+")"}).join(" ")}]}var f=null,l={px:0},h={deg:0},m={matrix:["NNNNNN",[f,f,0,0,f,f,0,0,0,0,1,0,f,f,0,1],n],matrix3d:["NNNNNNNNNNNNNNNN",n],rotate:["A"],rotatex:["A"],rotatey:["A"],rotatez:["A"],rotate3d:["NNNA"],perspective:["L"],scale:["Nn",i([f,f,1]),n],scalex:["N",i([f,1,1]),i([f,1])],scaley:["N",i([1,f,1]),i([1,f])],scalez:["N",i([1,1,f])],scale3d:["NNN",n],skew:["Aa",null,n],skewx:["A",null,i([f,h])],skewy:["A",null,i([h,f])],translate:["Tt",i([f,f,l]),n],translatex:["T",i([f,l,l]),i([f,l])],translatey:["T",i([l,f,l]),i([l,f])],translatez:["L",i([l,l,f])],translate3d:["TTL",n]};t.addPropertiesHandler(r,c,["transform"])}(d,f),function(t,e){function i(t,e){e.concat([t]).forEach(function(e){e in document.documentElement.style&&(n[t]=e)})}var n={};i("transform",["webkitTransform","msTransform"]),i("transformOrigin",["webkitTransformOrigin"]),i("perspective",["webkitPerspective"]),i("perspectiveOrigin",["webkitPerspectiveOrigin"]),t.propertyName=function(t){return n[t]||t}}(d,f)}(),!function(){if(void 0===document.createElement("div").animate([]).oncancel){var t;if(window.performance&&performance.now)var t=function(){return performance.now()};else var t=function(){return Date.now()};var e=function(t,e,i){this.target=t,this.currentTime=e,this.timelineTime=i,this.type="cancel",this.bubbles=!1,this.cancelable=!1, +this.currentTarget=t,this.defaultPrevented=!1,this.eventPhase=Event.AT_TARGET,this.timeStamp=Date.now()},i=window.Element.prototype.animate;window.Element.prototype.animate=function(n,r){var o=i.call(this,n,r);o._cancelHandlers=[],o.oncancel=null;var a=o.cancel;o.cancel=function(){a.call(this);var i=new e(this,null,t()),n=this._cancelHandlers.concat(this.oncancel?[this.oncancel]:[]);setTimeout(function(){n.forEach(function(t){t.call(i.target,i)})},0)};var s=o.addEventListener;o.addEventListener=function(t,e){"function"==typeof e&&"cancel"==t?this._cancelHandlers.push(e):s.call(this,t,e)};var u=o.removeEventListener;return o.removeEventListener=function(t,e){if("cancel"==t){var i=this._cancelHandlers.indexOf(e);i>=0&&this._cancelHandlers.splice(i,1)}else u.call(this,t,e)},o}}}(),function(t){var e=document.documentElement,i=null,n=!1;try{var r=getComputedStyle(e).getPropertyValue("opacity"),o="0"==r?"1":"0";i=e.animate({opacity:[o,o]},{duration:1}),i.currentTime=0,n=getComputedStyle(e).getPropertyValue("opacity")==o}catch(t){}finally{i&&i.cancel()}if(!n){var a=window.Element.prototype.animate;window.Element.prototype.animate=function(e,i){return window.Symbol&&Symbol.iterator&&Array.prototype.from&&e[Symbol.iterator]&&(e=Array.from(e)),Array.isArray(e)||null===e||(e=t.convertToArrayForm(e)),a.call(this,e,i)}}}(c),!function(t,e,i){function n(t){var i=e.timeline;i.currentTime=t,i._discardAnimations(),0==i._animations.length?o=!1:requestAnimationFrame(n)}var r=window.requestAnimationFrame;window.requestAnimationFrame=function(t){return r(function(i){e.timeline._updateAnimationsPromises(),t(i),e.timeline._updateAnimationsPromises()})},e.AnimationTimeline=function(){this._animations=[],this.currentTime=void 0},e.AnimationTimeline.prototype={getAnimations:function(){return this._discardAnimations(),this._animations.slice()},_updateAnimationsPromises:function(){e.animationsWithPromises=e.animationsWithPromises.filter(function(t){return t._updatePromises()})},_discardAnimations:function(){this._updateAnimationsPromises(),this._animations=this._animations.filter(function(t){return"finished"!=t.playState&&"idle"!=t.playState})},_play:function(t){var i=new e.Animation(t,this);return this._animations.push(i),e.restartWebAnimationsNextTick(),i._updatePromises(),i._animation.play(),i._updatePromises(),i},play:function(t){return t&&t.remove(),this._play(t)}};var o=!1;e.restartWebAnimationsNextTick=function(){o||(o=!0,requestAnimationFrame(n))};var a=new e.AnimationTimeline;e.timeline=a;try{Object.defineProperty(window.document,"timeline",{configurable:!0,get:function(){return a}})}catch(t){}try{window.document.timeline=a}catch(t){}}(c,e,f),function(t,e,i){e.animationsWithPromises=[],e.Animation=function(e,i){if(this.id="",e&&e._id&&(this.id=e._id),this.effect=e,e&&(e._animation=this),!i)throw new Error("Animation with null timeline is not supported");this._timeline=i,this._sequenceNumber=t.sequenceNumber++,this._holdTime=0,this._paused=!1,this._isGroup=!1,this._animation=null,this._childAnimations=[],this._callback=null,this._oldPlayState="idle",this._rebuildUnderlyingAnimation(),this._animation.cancel(),this._updatePromises()},e.Animation.prototype={_updatePromises:function(){var t=this._oldPlayState,e=this.playState;return this._readyPromise&&e!==t&&("idle"==e?(this._rejectReadyPromise(),this._readyPromise=void 0):"pending"==t?this._resolveReadyPromise():"pending"==e&&(this._readyPromise=void 0)),this._finishedPromise&&e!==t&&("idle"==e?(this._rejectFinishedPromise(),this._finishedPromise=void 0):"finished"==e?this._resolveFinishedPromise():"finished"==t&&(this._finishedPromise=void 0)),this._oldPlayState=this.playState,this._readyPromise||this._finishedPromise},_rebuildUnderlyingAnimation:function(){this._updatePromises();var t,i,n,r,o=!!this._animation;o&&(t=this.playbackRate,i=this._paused,n=this.startTime,r=this.currentTime,this._animation.cancel(),this._animation._wrapper=null,this._animation=null),(!this.effect||this.effect instanceof window.KeyframeEffect)&&(this._animation=e.newUnderlyingAnimationForKeyframeEffect(this.effect),e.bindAnimationForKeyframeEffect(this)),(this.effect instanceof window.SequenceEffect||this.effect instanceof window.GroupEffect)&&(this._animation=e.newUnderlyingAnimationForGroup(this.effect),e.bindAnimationForGroup(this)),this.effect&&this.effect._onsample&&e.bindAnimationForCustomEffect(this),o&&(1!=t&&(this.playbackRate=t),null!==n?this.startTime=n:null!==r?this.currentTime=r:null!==this._holdTime&&(this.currentTime=this._holdTime),i&&this.pause()),this._updatePromises()},_updateChildren:function(){if(this.effect&&"idle"!=this.playState){var t=this.effect._timing.delay;this._childAnimations.forEach(function(i){this._arrangeChildren(i,t),this.effect instanceof window.SequenceEffect&&(t+=e.groupChildDuration(i.effect))}.bind(this))}},_setExternalAnimation:function(t){if(this.effect&&this._isGroup)for(var e=0;e<this.effect.children.length;e++)this.effect.children[e]._animation=t,this._childAnimations[e]._setExternalAnimation(t)},_constructChildAnimations:function(){if(this.effect&&this._isGroup){var t=this.effect._timing.delay;this._removeChildAnimations(),this.effect.children.forEach(function(i){var n=e.timeline._play(i);this._childAnimations.push(n),n.playbackRate=this.playbackRate,this._paused&&n.pause(),i._animation=this.effect._animation,this._arrangeChildren(n,t),this.effect instanceof window.SequenceEffect&&(t+=e.groupChildDuration(i))}.bind(this))}},_arrangeChildren:function(t,e){null===this.startTime?t.currentTime=this.currentTime-e/this.playbackRate:t.startTime!==this.startTime+e/this.playbackRate&&(t.startTime=this.startTime+e/this.playbackRate)},get timeline(){return this._timeline},get playState(){return this._animation?this._animation.playState:"idle"},get finished(){return window.Promise?(this._finishedPromise||(e.animationsWithPromises.indexOf(this)==-1&&e.animationsWithPromises.push(this),this._finishedPromise=new Promise(function(t,e){this._resolveFinishedPromise=function(){t(this)},this._rejectFinishedPromise=function(){e({type:DOMException.ABORT_ERR,name:"AbortError"})}}.bind(this)),"finished"==this.playState&&this._resolveFinishedPromise()),this._finishedPromise):(console.warn("Animation Promises require JavaScript Promise constructor"),null)},get ready(){return window.Promise?(this._readyPromise||(e.animationsWithPromises.indexOf(this)==-1&&e.animationsWithPromises.push(this),this._readyPromise=new Promise(function(t,e){this._resolveReadyPromise=function(){t(this)},this._rejectReadyPromise=function(){e({type:DOMException.ABORT_ERR,name:"AbortError"})}}.bind(this)),"pending"!==this.playState&&this._resolveReadyPromise()),this._readyPromise):(console.warn("Animation Promises require JavaScript Promise constructor"),null)},get onfinish(){return this._animation.onfinish},set onfinish(t){"function"==typeof t?this._animation.onfinish=function(e){e.target=this,t.call(this,e)}.bind(this):this._animation.onfinish=t},get oncancel(){return this._animation.oncancel},set oncancel(t){"function"==typeof t?this._animation.oncancel=function(e){e.target=this,t.call(this,e)}.bind(this):this._animation.oncancel=t},get currentTime(){this._updatePromises();var t=this._animation.currentTime;return this._updatePromises(),t},set currentTime(t){this._updatePromises(),this._animation.currentTime=isFinite(t)?t:Math.sign(t)*Number.MAX_VALUE,this._register(),this._forEachChild(function(e,i){e.currentTime=t-i}),this._updatePromises()},get startTime(){return this._animation.startTime},set startTime(t){this._updatePromises(),this._animation.startTime=isFinite(t)?t:Math.sign(t)*Number.MAX_VALUE,this._register(),this._forEachChild(function(e,i){e.startTime=t+i}),this._updatePromises()},get playbackRate(){return this._animation.playbackRate},set playbackRate(t){this._updatePromises();var e=this.currentTime;this._animation.playbackRate=t,this._forEachChild(function(e){e.playbackRate=t}),null!==e&&(this.currentTime=e),this._updatePromises()},play:function(){this._updatePromises(),this._paused=!1,this._animation.play(),this._timeline._animations.indexOf(this)==-1&&this._timeline._animations.push(this),this._register(),e.awaitStartTime(this),this._forEachChild(function(t){var e=t.currentTime;t.play(),t.currentTime=e}),this._updatePromises()},pause:function(){this._updatePromises(),this.currentTime&&(this._holdTime=this.currentTime),this._animation.pause(),this._register(),this._forEachChild(function(t){t.pause()}),this._paused=!0,this._updatePromises()},finish:function(){this._updatePromises(),this._animation.finish(),this._register(),this._updatePromises()},cancel:function(){this._updatePromises(),this._animation.cancel(),this._register(),this._removeChildAnimations(),this._updatePromises()},reverse:function(){this._updatePromises();var t=this.currentTime;this._animation.reverse(),this._forEachChild(function(t){t.reverse()}),null!==t&&(this.currentTime=t),this._updatePromises()},addEventListener:function(t,e){var i=e;"function"==typeof e&&(i=function(t){t.target=this,e.call(this,t)}.bind(this),e._wrapper=i),this._animation.addEventListener(t,i)},removeEventListener:function(t,e){this._animation.removeEventListener(t,e&&e._wrapper||e)},_removeChildAnimations:function(){for(;this._childAnimations.length;)this._childAnimations.pop().cancel()},_forEachChild:function(e){var i=0;if(this.effect.children&&this._childAnimations.length<this.effect.children.length&&this._constructChildAnimations(),this._childAnimations.forEach(function(t){e.call(this,t,i),this.effect instanceof window.SequenceEffect&&(i+=t.effect.activeDuration)}.bind(this)),"pending"!=this.playState){var n=this.effect._timing,r=this.currentTime;null!==r&&(r=t.calculateIterationProgress(t.calculateActiveDuration(n),r,n)),(null==r||isNaN(r))&&this._removeChildAnimations()}}},window.Animation=e.Animation}(c,e,f),function(t,e,i){function n(e){this._frames=t.normalizeKeyframes(e)}function r(){for(var t=!1;u.length;){var e=u.shift();e._updateChildren(),t=!0}return t}var o=function(t){if(t._animation=void 0,t instanceof window.SequenceEffect||t instanceof window.GroupEffect)for(var e=0;e<t.children.length;e++)o(t.children[e])};e.removeMulti=function(t){for(var e=[],i=0;i<t.length;i++){var n=t[i];n._parent?(e.indexOf(n._parent)==-1&&e.push(n._parent),n._parent.children.splice(n._parent.children.indexOf(n),1),n._parent=null,o(n)):n._animation&&n._animation.effect==n&&(n._animation.cancel(),n._animation.effect=new KeyframeEffect(null,[]),n._animation._callback&&(n._animation._callback._animation=null),n._animation._rebuildUnderlyingAnimation(),o(n))}for(i=0;i<e.length;i++)e[i]._rebuild()},e.KeyframeEffect=function(e,i,r,o){return this.target=e,this._parent=null,r=t.numericTimingToObject(r),this._timingInput=t.cloneTimingInput(r),this._timing=t.normalizeTimingInput(r),this.timing=t.makeTiming(r,!1,this),this.timing._effect=this,"function"==typeof i?(t.deprecated("Custom KeyframeEffect","2015-06-22","Use KeyframeEffect.onsample instead."),this._normalizedKeyframes=i):this._normalizedKeyframes=new n(i),this._keyframes=i,this.activeDuration=t.calculateActiveDuration(this._timing),this._id=o,this},e.KeyframeEffect.prototype={getFrames:function(){return"function"==typeof this._normalizedKeyframes?this._normalizedKeyframes:this._normalizedKeyframes._frames},set onsample(t){if("function"==typeof this.getFrames())throw new Error("Setting onsample on custom effect KeyframeEffect is not supported.");this._onsample=t,this._animation&&this._animation._rebuildUnderlyingAnimation()},get parent(){return this._parent},clone:function(){if("function"==typeof this.getFrames())throw new Error("Cloning custom effects is not supported.");var e=new KeyframeEffect(this.target,[],t.cloneTimingInput(this._timingInput),this._id);return e._normalizedKeyframes=this._normalizedKeyframes,e._keyframes=this._keyframes,e},remove:function(){e.removeMulti([this])}};var a=Element.prototype.animate;Element.prototype.animate=function(t,i){var n="";return i&&i.id&&(n=i.id),e.timeline._play(new e.KeyframeEffect(this,t,i,n))};var s=document.createElementNS("http://www.w3.org/1999/xhtml","div");e.newUnderlyingAnimationForKeyframeEffect=function(t){if(t){var e=t.target||s,i=t._keyframes;"function"==typeof i&&(i=[]);var n=t._timingInput;n.id=t._id}else var e=s,i=[],n=0;return a.apply(e,[i,n])},e.bindAnimationForKeyframeEffect=function(t){t.effect&&"function"==typeof t.effect._normalizedKeyframes&&e.bindAnimationForCustomEffect(t)};var u=[];e.awaitStartTime=function(t){null===t.startTime&&t._isGroup&&(0==u.length&&requestAnimationFrame(r),u.push(t))};var c=window.getComputedStyle;Object.defineProperty(window,"getComputedStyle",{configurable:!0,enumerable:!0,value:function(){e.timeline._updateAnimationsPromises();var t=c.apply(this,arguments);return r()&&(t=c.apply(this,arguments)),e.timeline._updateAnimationsPromises(),t}}),window.KeyframeEffect=e.KeyframeEffect,window.Element.prototype.getAnimations=function(){return document.timeline.getAnimations().filter(function(t){return null!==t.effect&&t.effect.target==this}.bind(this))}}(c,e,f),function(t,e,i){function n(t){t._registered||(t._registered=!0,a.push(t),s||(s=!0,requestAnimationFrame(r)))}function r(t){var e=a;a=[],e.sort(function(t,e){return t._sequenceNumber-e._sequenceNumber}),e=e.filter(function(t){t();var e=t._animation?t._animation.playState:"idle";return"running"!=e&&"pending"!=e&&(t._registered=!1),t._registered}),a.push.apply(a,e),a.length?(s=!0,requestAnimationFrame(r)):s=!1}var o=(document.createElementNS("http://www.w3.org/1999/xhtml","div"),0);e.bindAnimationForCustomEffect=function(e){var i,r=e.effect.target,a="function"==typeof e.effect.getFrames();i=a?e.effect.getFrames():e.effect._onsample;var s=e.effect.timing,u=null;s=t.normalizeTimingInput(s);var c=function(){var n=c._animation?c._animation.currentTime:null;null!==n&&(n=t.calculateIterationProgress(t.calculateActiveDuration(s),n,s),isNaN(n)&&(n=null)),n!==u&&(a?i(n,r,e.effect):i(n,e.effect,e.effect._animation)),u=n};c._animation=e,c._registered=!1,c._sequenceNumber=o++,e._callback=c,n(c)};var a=[],s=!1;e.Animation.prototype._register=function(){this._callback&&n(this._callback)}}(c,e,f),function(t,e,i){function n(t){return t._timing.delay+t.activeDuration+t._timing.endDelay}function r(e,i,n){this._id=n,this._parent=null,this.children=e||[],this._reparent(this.children),i=t.numericTimingToObject(i),this._timingInput=t.cloneTimingInput(i),this._timing=t.normalizeTimingInput(i,!0),this.timing=t.makeTiming(i,!0,this),this.timing._effect=this,"auto"===this._timing.duration&&(this._timing.duration=this.activeDuration)}window.SequenceEffect=function(){r.apply(this,arguments)},window.GroupEffect=function(){r.apply(this,arguments)},r.prototype={_isAncestor:function(t){for(var e=this;null!==e;){if(e==t)return!0;e=e._parent}return!1},_rebuild:function(){for(var t=this;t;)"auto"===t.timing.duration&&(t._timing.duration=t.activeDuration),t=t._parent;this._animation&&this._animation._rebuildUnderlyingAnimation()},_reparent:function(t){e.removeMulti(t);for(var i=0;i<t.length;i++)t[i]._parent=this},_putChild:function(t,e){for(var i=e?"Cannot append an ancestor or self":"Cannot prepend an ancestor or self",n=0;n<t.length;n++)if(this._isAncestor(t[n]))throw{type:DOMException.HIERARCHY_REQUEST_ERR,name:"HierarchyRequestError",message:i};for(var n=0;n<t.length;n++)e?this.children.push(t[n]):this.children.unshift(t[n]);this._reparent(t),this._rebuild()},append:function(){this._putChild(arguments,!0)},prepend:function(){this._putChild(arguments,!1)},get parent(){return this._parent},get firstChild(){return this.children.length?this.children[0]:null},get lastChild(){return this.children.length?this.children[this.children.length-1]:null},clone:function(){for(var e=t.cloneTimingInput(this._timingInput),i=[],n=0;n<this.children.length;n++)i.push(this.children[n].clone());return this instanceof GroupEffect?new GroupEffect(i,e):new SequenceEffect(i,e)},remove:function(){e.removeMulti([this])}},window.SequenceEffect.prototype=Object.create(r.prototype),Object.defineProperty(window.SequenceEffect.prototype,"activeDuration",{get:function(){var t=0;return this.children.forEach(function(e){t+=n(e)}),Math.max(t,0)}}),window.GroupEffect.prototype=Object.create(r.prototype),Object.defineProperty(window.GroupEffect.prototype,"activeDuration",{get:function(){var t=0;return this.children.forEach(function(e){t=Math.max(t,n(e))}),t}}),e.newUnderlyingAnimationForGroup=function(i){var n,r=null,o=function(e){var i=n._wrapper;if(i&&"pending"!=i.playState&&i.effect)return null==e?void i._removeChildAnimations():0==e&&i.playbackRate<0&&(r||(r=t.normalizeTimingInput(i.effect.timing)),e=t.calculateIterationProgress(t.calculateActiveDuration(r),-1,r),isNaN(e)||null==e)?(i._forEachChild(function(t){t.currentTime=-1}),void i._removeChildAnimations()):void 0},a=new KeyframeEffect(null,[],i._timing,i._id);return a.onsample=o,n=e.timeline._play(a)},e.bindAnimationForGroup=function(t){t._animation._wrapper=t,t._isGroup=!0,e.awaitStartTime(t),t._constructChildAnimations(),t._setExternalAnimation(t)},e.groupChildDuration=n}(c,e,f),b.true=a}({},function(){return this}())</script><script>Polymer({is:"opaque-animation",behaviors:[Polymer.NeonAnimationBehavior],configure:function(e){var i=e.node;return this._effect=new KeyframeEffect(i,[{opacity:"1"},{opacity:"1"}],this.timingFromConfig(e)),i.style.opacity="0",this._effect},complete:function(e){e.node.style.opacity=""}})</script><script>!function(){"use strict";var e={pageX:0,pageY:0},t=null,l=[];Polymer.IronDropdownScrollManager={get currentLockingElement(){return this._lockingElements[this._lockingElements.length-1]},elementIsScrollLocked:function(e){var t=this.currentLockingElement;if(void 0===t)return!1;var l;return!!this._hasCachedLockedElement(e)||!this._hasCachedUnlockedElement(e)&&(l=!!t&&t!==e&&!this._composedTreeContains(t,e),l?this._lockedElementCache.push(e):this._unlockedElementCache.push(e),l)},pushScrollLock:function(e){this._lockingElements.indexOf(e)>=0||(0===this._lockingElements.length&&this._lockScrollInteractions(),this._lockingElements.push(e),this._lockedElementCache=[],this._unlockedElementCache=[])},removeScrollLock:function(e){var t=this._lockingElements.indexOf(e);t!==-1&&(this._lockingElements.splice(t,1),this._lockedElementCache=[],this._unlockedElementCache=[],0===this._lockingElements.length&&this._unlockScrollInteractions())},_lockingElements:[],_lockedElementCache:null,_unlockedElementCache:null,_hasCachedLockedElement:function(e){return this._lockedElementCache.indexOf(e)>-1},_hasCachedUnlockedElement:function(e){return this._unlockedElementCache.indexOf(e)>-1},_composedTreeContains:function(e,t){var l,n,o,r;if(e.contains(t))return!0;for(l=Polymer.dom(e).querySelectorAll("content"),o=0;o<l.length;++o)for(n=Polymer.dom(l[o]).getDistributedNodes(),r=0;r<n.length;++r)if(this._composedTreeContains(n[r],t))return!0;return!1},_scrollInteractionHandler:function(t){if(t.cancelable&&this._shouldPreventScrolling(t)&&t.preventDefault(),t.targetTouches){var l=t.targetTouches[0];e.pageX=l.pageX,e.pageY=l.pageY}},_lockScrollInteractions:function(){this._boundScrollHandler=this._boundScrollHandler||this._scrollInteractionHandler.bind(this),document.addEventListener("wheel",this._boundScrollHandler,!0),document.addEventListener("mousewheel",this._boundScrollHandler,!0),document.addEventListener("DOMMouseScroll",this._boundScrollHandler,!0),document.addEventListener("touchstart",this._boundScrollHandler,!0),document.addEventListener("touchmove",this._boundScrollHandler,!0)},_unlockScrollInteractions:function(){document.removeEventListener("wheel",this._boundScrollHandler,!0),document.removeEventListener("mousewheel",this._boundScrollHandler,!0),document.removeEventListener("DOMMouseScroll",this._boundScrollHandler,!0),document.removeEventListener("touchstart",this._boundScrollHandler,!0),document.removeEventListener("touchmove",this._boundScrollHandler,!0)},_shouldPreventScrolling:function(e){var n=Polymer.dom(e).rootTarget;if("touchmove"!==e.type&&t!==n&&(t=n,l=this._getScrollableNodes(Polymer.dom(e).path)),!l.length)return!0;if("touchstart"===e.type)return!1;var o=this._getScrollInfo(e);return!this._getScrollingNode(l,o.deltaX,o.deltaY)},_getScrollableNodes:function(e){for(var t=[],l=e.indexOf(this.currentLockingElement),n=0;n<=l;n++){var o=e[n];if(11!==o.nodeType){var r=o.style;"scroll"!==r.overflow&&"auto"!==r.overflow&&(r=window.getComputedStyle(o)),"scroll"!==r.overflow&&"auto"!==r.overflow||t.push(o)}}return t},_getScrollingNode:function(e,t,l){if(t||l)for(var n=Math.abs(l)>=Math.abs(t),o=0;o<e.length;o++){var r=e[o],c=!1;if(c=n?l<0?r.scrollTop>0:r.scrollTop<r.scrollHeight-r.clientHeight:t<0?r.scrollLeft>0:r.scrollLeft<r.scrollWidth-r.clientWidth)return r}},_getScrollInfo:function(t){var l={deltaX:t.deltaX,deltaY:t.deltaY};if("deltaX"in t);else if("wheelDeltaX"in t)l.deltaX=-t.wheelDeltaX,l.deltaY=-t.wheelDeltaY;else if("axis"in t)l.deltaX=1===t.axis?t.detail:0,l.deltaY=2===t.axis?t.detail:0;else if(t.targetTouches){var n=t.targetTouches[0];l.deltaX=e.pageX-n.pageX,l.deltaY=e.pageY-n.pageY}return l}}}()</script><dom-module id="iron-dropdown" assetpath="../bower_components/iron-dropdown/"><template><style>:host{position:fixed}#contentWrapper ::content>*{overflow:auto}#contentWrapper.animating ::content>*{overflow:hidden}</style><div id="contentWrapper"><content id="content" select=".dropdown-content"></content></div></template><script>!function(){"use strict";Polymer({is:"iron-dropdown",behaviors:[Polymer.IronControlState,Polymer.IronA11yKeysBehavior,Polymer.IronOverlayBehavior,Polymer.NeonAnimationRunnerBehavior],properties:{horizontalAlign:{type:String,value:"left",reflectToAttribute:!0},verticalAlign:{type:String,value:"top",reflectToAttribute:!0},openAnimationConfig:{type:Object},closeAnimationConfig:{type:Object},focusTarget:{type:Object},noAnimations:{type:Boolean,value:!1},allowOutsideScroll:{type:Boolean,value:!1},_boundOnCaptureScroll:{type:Function,value:function(){return this._onCaptureScroll.bind(this)}}},listeners:{"neon-animation-finish":"_onNeonAnimationFinish"},observers:["_updateOverlayPosition(positionTarget, verticalAlign, horizontalAlign, verticalOffset, horizontalOffset)"],get containedElement(){return Polymer.dom(this.$.content).getDistributedNodes()[0]},get _focusTarget(){return this.focusTarget||this.containedElement},ready:function(){this._scrollTop=0,this._scrollLeft=0,this._refitOnScrollRAF=null},attached:function(){this.sizingTarget&&this.sizingTarget!==this||(this.sizingTarget=this.containedElement)},detached:function(){this.cancelAnimation(),document.removeEventListener("scroll",this._boundOnCaptureScroll),Polymer.IronDropdownScrollManager.removeScrollLock(this)},_openedChanged:function(){this.opened&&this.disabled?this.cancel():(this.cancelAnimation(),this._updateAnimationConfig(),this._saveScrollPosition(),this.opened?(document.addEventListener("scroll",this._boundOnCaptureScroll),!this.allowOutsideScroll&&Polymer.IronDropdownScrollManager.pushScrollLock(this)):(document.removeEventListener("scroll",this._boundOnCaptureScroll),Polymer.IronDropdownScrollManager.removeScrollLock(this)),Polymer.IronOverlayBehaviorImpl._openedChanged.apply(this,arguments))},_renderOpened:function(){!this.noAnimations&&this.animationConfig.open?(this.$.contentWrapper.classList.add("animating"),this.playAnimation("open")):Polymer.IronOverlayBehaviorImpl._renderOpened.apply(this,arguments)},_renderClosed:function(){!this.noAnimations&&this.animationConfig.close?(this.$.contentWrapper.classList.add("animating"),this.playAnimation("close")):Polymer.IronOverlayBehaviorImpl._renderClosed.apply(this,arguments)},_onNeonAnimationFinish:function(){this.$.contentWrapper.classList.remove("animating"),this.opened?this._finishRenderOpened():this._finishRenderClosed()},_onCaptureScroll:function(){this.allowOutsideScroll?(this._refitOnScrollRAF&&window.cancelAnimationFrame(this._refitOnScrollRAF),this._refitOnScrollRAF=window.requestAnimationFrame(this.refit.bind(this))):this._restoreScrollPosition()},_saveScrollPosition:function(){document.scrollingElement?(this._scrollTop=document.scrollingElement.scrollTop,this._scrollLeft=document.scrollingElement.scrollLeft):(this._scrollTop=Math.max(document.documentElement.scrollTop,document.body.scrollTop),this._scrollLeft=Math.max(document.documentElement.scrollLeft,document.body.scrollLeft))},_restoreScrollPosition:function(){document.scrollingElement?(document.scrollingElement.scrollTop=this._scrollTop,document.scrollingElement.scrollLeft=this._scrollLeft):(document.documentElement.scrollTop=this._scrollTop,document.documentElement.scrollLeft=this._scrollLeft,document.body.scrollTop=this._scrollTop,document.body.scrollLeft=this._scrollLeft)},_updateAnimationConfig:function(){for(var o=(this.openAnimationConfig||[]).concat(this.closeAnimationConfig||[]),t=0;t<o.length;t++)o[t].node=this.containedElement;this.animationConfig={open:this.openAnimationConfig,close:this.closeAnimationConfig}},_updateOverlayPosition:function(){this.isAttached&&this.notifyResize()},_applyFocus:function(){var o=this.focusTarget||this.containedElement;o&&this.opened&&!this.noAutoFocus?o.focus():Polymer.IronOverlayBehaviorImpl._applyFocus.apply(this,arguments)}})}()</script></dom-module><script>Polymer({is:"fade-in-animation",behaviors:[Polymer.NeonAnimationBehavior],configure:function(i){var e=i.node;return this._effect=new KeyframeEffect(e,[{opacity:"0"},{opacity:"1"}],this.timingFromConfig(i)),this._effect}})</script><script>Polymer({is:"fade-out-animation",behaviors:[Polymer.NeonAnimationBehavior],configure:function(e){var i=e.node;return this._effect=new KeyframeEffect(i,[{opacity:"1"},{opacity:"0"}],this.timingFromConfig(e)),this._effect}})</script><script>Polymer({is:"paper-menu-grow-height-animation",behaviors:[Polymer.NeonAnimationBehavior],configure:function(e){var i=e.node,t=i.getBoundingClientRect(),n=t.height;return this._effect=new KeyframeEffect(i,[{height:n/2+"px"},{height:n+"px"}],this.timingFromConfig(e)),this._effect}}),Polymer({is:"paper-menu-grow-width-animation",behaviors:[Polymer.NeonAnimationBehavior],configure:function(e){var i=e.node,t=i.getBoundingClientRect(),n=t.width;return this._effect=new KeyframeEffect(i,[{width:n/2+"px"},{width:n+"px"}],this.timingFromConfig(e)),this._effect}}),Polymer({is:"paper-menu-shrink-width-animation",behaviors:[Polymer.NeonAnimationBehavior],configure:function(e){var i=e.node,t=i.getBoundingClientRect(),n=t.width;return this._effect=new KeyframeEffect(i,[{width:n+"px"},{width:n-n/20+"px"}],this.timingFromConfig(e)),this._effect}}),Polymer({is:"paper-menu-shrink-height-animation",behaviors:[Polymer.NeonAnimationBehavior],configure:function(e){var i=e.node,t=i.getBoundingClientRect(),n=t.height;t.top;return this.setPrefixedProperty(i,"transformOrigin","0 0"),this._effect=new KeyframeEffect(i,[{height:n+"px",transform:"translateY(0)"},{height:n/2+"px",transform:"translateY(-20px)"}],this.timingFromConfig(e)),this._effect}})</script><dom-module id="paper-menu-button" assetpath="../bower_components/paper-menu-button/"><template><style>:host{display:inline-block;position:relative;padding:8px;outline:0;@apply(--paper-menu-button)}:host([disabled]){cursor:auto;color:var(--disabled-text-color);@apply(--paper-menu-button-disabled)}iron-dropdown{@apply(--paper-menu-button-dropdown)}.dropdown-content{@apply(--shadow-elevation-2dp);position:relative;border-radius:2px;background-color:var(--paper-menu-button-dropdown-background,--primary-background-color);@apply(--paper-menu-button-content)}:host([vertical-align=top]) .dropdown-content{margin-bottom:20px;margin-top:-10px;top:10px}:host([vertical-align=bottom]) .dropdown-content{bottom:10px;margin-bottom:-10px;margin-top:20px}#trigger{cursor:pointer}</style><div id="trigger" on-tap="toggle"><content select=".dropdown-trigger"></content></div><iron-dropdown id="dropdown" opened="{{opened}}" horizontal-align="[[horizontalAlign]]" vertical-align="[[verticalAlign]]" dynamic-align="[[dynamicAlign]]" horizontal-offset="[[horizontalOffset]]" vertical-offset="[[verticalOffset]]" no-overlap="[[noOverlap]]" open-animation-config="[[openAnimationConfig]]" close-animation-config="[[closeAnimationConfig]]" no-animations="[[noAnimations]]" focus-target="[[_dropdownContent]]" allow-outside-scroll="[[allowOutsideScroll]]" restore-focus-on-close="[[restoreFocusOnClose]]" on-iron-overlay-canceled="__onIronOverlayCanceled"><div class="dropdown-content"><content id="content" select=".dropdown-content"></content></div></iron-dropdown></template><script>!function(){"use strict";var e={ANIMATION_CUBIC_BEZIER:"cubic-bezier(.3,.95,.5,1)",MAX_ANIMATION_TIME_MS:400},n=Polymer({is:"paper-menu-button",behaviors:[Polymer.IronA11yKeysBehavior,Polymer.IronControlState],properties:{opened:{type:Boolean,value:!1,notify:!0,observer:"_openedChanged"},horizontalAlign:{type:String,value:"left",reflectToAttribute:!0},verticalAlign:{type:String,value:"top",reflectToAttribute:!0},dynamicAlign:{type:Boolean},horizontalOffset:{type:Number,value:0,notify:!0},verticalOffset:{type:Number,value:0,notify:!0},noOverlap:{type:Boolean},noAnimations:{type:Boolean,value:!1},ignoreSelect:{type:Boolean,value:!1},closeOnActivate:{type:Boolean,value:!1},openAnimationConfig:{type:Object,value:function(){return[{name:"fade-in-animation",timing:{delay:100,duration:200}},{name:"paper-menu-grow-width-animation",timing:{delay:100,duration:150,easing:e.ANIMATION_CUBIC_BEZIER}},{name:"paper-menu-grow-height-animation",timing:{delay:100,duration:275,easing:e.ANIMATION_CUBIC_BEZIER}}]}},closeAnimationConfig:{type:Object,value:function(){return[{name:"fade-out-animation",timing:{duration:150}},{name:"paper-menu-shrink-width-animation",timing:{delay:100,duration:50,easing:e.ANIMATION_CUBIC_BEZIER}},{name:"paper-menu-shrink-height-animation",timing:{duration:200,easing:"ease-in"}}]}},allowOutsideScroll:{type:Boolean,value:!1},restoreFocusOnClose:{type:Boolean,value:!0},_dropdownContent:{type:Object}},hostAttributes:{role:"group","aria-haspopup":"true"},listeners:{"iron-activate":"_onIronActivate","iron-select":"_onIronSelect"},get contentElement(){return Polymer.dom(this.$.content).getDistributedNodes()[0]},toggle:function(){this.opened?this.close():this.open()},open:function(){this.disabled||this.$.dropdown.open()},close:function(){this.$.dropdown.close()},_onIronSelect:function(e){this.ignoreSelect||this.close()},_onIronActivate:function(e){this.closeOnActivate&&this.close()},_openedChanged:function(e,n){e?(this._dropdownContent=this.contentElement,this.fire("paper-dropdown-open")):null!=n&&this.fire("paper-dropdown-close")},_disabledChanged:function(e){Polymer.IronControlState._disabledChanged.apply(this,arguments),e&&this.opened&&this.close()},__onIronOverlayCanceled:function(e){var n=e.detail,t=(Polymer.dom(n).rootTarget,this.$.trigger),o=Polymer.dom(n).path;o.indexOf(t)>-1&&e.preventDefault()}});Object.keys(e).forEach(function(t){n[t]=e[t]}),Polymer.PaperMenuButton=n}()</script></dom-module><iron-iconset-svg name="paper-dropdown-menu" size="24"><svg><defs><g id="arrow-drop-down"><path d="M7 10l5 5 5-5z"></path></g></defs></svg></iron-iconset-svg><dom-module id="paper-dropdown-menu-shared-styles" assetpath="../bower_components/paper-dropdown-menu/"><template><style>:host{display:inline-block;position:relative;text-align:left;-webkit-tap-highlight-color:transparent;-webkit-tap-highlight-color:transparent;--paper-input-container-input:{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;max-width:100%;box-sizing:border-box;cursor:pointer};@apply(--paper-dropdown-menu)}:host([disabled]){@apply(--paper-dropdown-menu-disabled)}:host([noink]) paper-ripple{display:none}:host([no-label-float]) paper-ripple{top:8px}paper-ripple{top:12px;left:0;bottom:8px;right:0;@apply(--paper-dropdown-menu-ripple)}paper-menu-button{display:block;padding:0;@apply(--paper-dropdown-menu-button)}paper-input{@apply(--paper-dropdown-menu-input)}iron-icon{color:var(--disabled-text-color);@apply(--paper-dropdown-menu-icon)}</style></template></dom-module><dom-module id="paper-dropdown-menu" assetpath="../bower_components/paper-dropdown-menu/"><template><style include="paper-dropdown-menu-shared-styles"></style><span role="button"></span><paper-menu-button id="menuButton" vertical-align="[[verticalAlign]]" horizontal-align="[[horizontalAlign]]" dynamic-align="[[dynamicAlign]]" vertical-offset="[[_computeMenuVerticalOffset(noLabelFloat)]]" disabled="[[disabled]]" no-animations="[[noAnimations]]" on-iron-select="_onIronSelect" on-iron-deselect="_onIronDeselect" opened="{{opened}}" close-on-activate="" allow-outside-scroll="[[allowOutsideScroll]]"><div class="dropdown-trigger"><paper-ripple></paper-ripple><paper-input type="text" invalid="[[invalid]]" readonly="" disabled="[[disabled]]" value="[[selectedItemLabel]]" placeholder="[[placeholder]]" error-message="[[errorMessage]]" always-float-label="[[alwaysFloatLabel]]" no-label-float="[[noLabelFloat]]" label="[[label]]"><iron-icon icon="paper-dropdown-menu:arrow-drop-down" suffix=""></iron-icon></paper-input></div><content id="content" select=".dropdown-content"></content></paper-menu-button></template><script>!function(){"use strict";Polymer({is:"paper-dropdown-menu",behaviors:[Polymer.IronButtonState,Polymer.IronControlState,Polymer.IronFormElementBehavior,Polymer.IronValidatableBehavior],properties:{selectedItemLabel:{type:String,notify:!0,readOnly:!0},selectedItem:{type:Object,notify:!0,readOnly:!0},value:{type:String,notify:!0,readOnly:!0},label:{type:String},placeholder:{type:String},errorMessage:{type:String},opened:{type:Boolean,notify:!0,value:!1,observer:"_openedChanged"},allowOutsideScroll:{type:Boolean,value:!1},noLabelFloat:{type:Boolean,value:!1,reflectToAttribute:!0},alwaysFloatLabel:{type:Boolean,value:!1},noAnimations:{type:Boolean,value:!1},horizontalAlign:{type:String,value:"right"},verticalAlign:{type:String,value:"top"},dynamicAlign:{type:Boolean}},listeners:{tap:"_onTap"},keyBindings:{"up down":"open",esc:"close"},hostAttributes:{role:"combobox","aria-autocomplete":"none","aria-haspopup":"true"},observers:["_selectedItemChanged(selectedItem)"],attached:function(){var e=this.contentElement;e&&e.selectedItem&&this._setSelectedItem(e.selectedItem)},get contentElement(){return Polymer.dom(this.$.content).getDistributedNodes()[0]},open:function(){this.$.menuButton.open()},close:function(){this.$.menuButton.close()},_onIronSelect:function(e){this._setSelectedItem(e.detail.item)},_onIronDeselect:function(e){this._setSelectedItem(null)},_onTap:function(e){Polymer.Gestures.findOriginalTarget(e)===this&&this.open()},_selectedItemChanged:function(e){var t="";t=e?e.label||e.getAttribute("label")||e.textContent.trim():"",this._setValue(t),this._setSelectedItemLabel(t)},_computeMenuVerticalOffset:function(e){return e?-4:8},_getValidity:function(e){return this.disabled||!this.required||this.required&&!!this.value},_openedChanged:function(){var e=this.opened?"true":"false",t=this.contentElement;t&&t.setAttribute("aria-expanded",e)}})}()</script></dom-module><dom-module id="paper-menu-shared-styles" assetpath="../bower_components/paper-menu/"><template><style>.selectable-content>::content>.iron-selected{font-weight:700;@apply(--paper-menu-selected-item)}.selectable-content>::content>[disabled]{color:var(--paper-menu-disabled-color,--disabled-text-color)}.selectable-content>::content>:focus{position:relative;outline:0;@apply(--paper-menu-focused-item)}.selectable-content>::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="../bower_components/paper-menu/"><template><style include="paper-menu-shared-styles"></style><style>:host{display:block;padding:8px 0;background:var(--paper-menu-background-color,--primary-background-color);color:var(--paper-menu-color,--primary-text-color);@apply(--paper-menu)}</style><div class="selectable-content"><content></content></div></template><script>!function(){Polymer({is:"paper-menu",behaviors:[Polymer.IronMenuBehavior]})}()</script></dom-module><script>Polymer.PaperItemBehaviorImpl={hostAttributes:{role:"option",tabindex:"0"}},Polymer.PaperItemBehavior=[Polymer.IronButtonState,Polymer.IronControlState,Polymer.PaperItemBehaviorImpl]</script><dom-module id="paper-item-shared-styles" assetpath="../bower_components/paper-item/"><template><style>.paper-item,:host{display:block;position:relative;min-height:var(--paper-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[hidden],:host([hidden]){display:none!important}.paper-item.iron-selected,:host(.iron-selected){font-weight:var(--paper-item-selected-weight,bold);@apply(--paper-item-selected)}.paper-item[disabled],:host([disabled]){color:var(--paper-item-disabled-color,--disabled-text-color);@apply(--paper-item-disabled)}.paper-item:focus,:host(:focus){position:relative;outline:0;@apply(--paper-item-focused)}.paper-item:focus:before,:host(:focus):before{@apply(--layout-fit);background:currentColor;content:'';opacity:var(--dark-divider-opacity);pointer-events:none;@apply(--paper-item-focused-before)}</style></template></dom-module><dom-module id="paper-item" assetpath="../bower_components/paper-item/"><template><style include="paper-item-shared-styles"></style><style>:host{@apply(--layout-horizontal);@apply(--layout-center);@apply(--paper-font-subhead);@apply(--paper-item)}</style><content></content></template><script>Polymer({is:"paper-item",behaviors:[Polymer.PaperItemBehavior]})</script></dom-module><dom-module id="state-card-input_select" assetpath="state-summary/"><template><style>:host{display:block}state-badge{float:left;margin-top:10px}paper-dropdown-menu{display:block;margin-left:53px}</style><state-badge state-obj="[[stateObj]]"></state-badge><paper-dropdown-menu on-tap="stopPropagation" selected-item-label="{{selectedOption}}" label="[[stateObj.entityDisplay]]"><paper-menu class="dropdown-content" selected="[[computeSelected(stateObj)]]"><template is="dom-repeat" items="[[stateObj.attributes.options]]"><paper-item>[[item]]</paper-item></template></paper-menu></paper-dropdown-menu></template></dom-module><script>Polymer({is:"state-card-input_select",properties:{hass:{type:Object},inDialog:{type:Boolean,value:!1},stateObj:{type:Object},selectedOption:{type:String,observer:"selectedOptionChanged"}},computeSelected:function(t){return t.attributes.options.indexOf(t.state)},selectedOptionChanged:function(t){""!==t&&t!==this.stateObj.state&&this.hass.serviceActions.callService("input_select","select_option",{option:t,entity_id:this.stateObj.entityId})},stopPropagation:function(t){t.stopPropagation()}})</script><script>Polymer.IronRangeBehavior={properties:{value:{type:Number,value:0,notify:!0,reflectToAttribute:!0},min:{type:Number,value:0,notify:!0},max:{type:Number,value:100,notify:!0},step:{type:Number,value:1,notify:!0},ratio:{type:Number,value:0,readOnly:!0,notify:!0}},observers:["_update(value, min, max, step)"],_calcRatio:function(t){return(this._clampValue(t)-this.min)/(this.max-this.min)},_clampValue:function(t){return Math.min(this.max,Math.max(this.min,this._calcStep(t)))},_calcStep:function(t){if(t=parseFloat(t),!this.step)return t;var e=Math.round((t-this.min)/this.step);return this.step<1?e/(1/this.step)+this.min:e*this.step+this.min},_validateValue:function(){var t=this._clampValue(this.value);return this.value=this.oldValue=isNaN(t)?this.oldValue:t,this.value!==t},_update:function(){this._validateValue(),this._setRatio(100*this._calcRatio(this.value))}}</script><dom-module id="paper-progress" assetpath="../bower_components/paper-progress/"><template><style>:host{display:block;width:200px;position:relative;overflow:hidden}:host([hidden]){display:none!important}#progressContainer{@apply(--paper-progress-container);position:relative}#progressContainer,.indeterminate::after{height:var(--paper-progress-height,4px)}#primaryProgress,#secondaryProgress,.indeterminate::after{@apply(--layout-fit)}#progressContainer,.indeterminate::after{background:var(--paper-progress-container-color,--google-grey-300)}:host(.transiting) #primaryProgress,:host(.transiting) #secondaryProgress{-webkit-transition-property:-webkit-transform;transition-property:transform;-webkit-transition-duration:var(--paper-progress-transition-duration,.08s);transition-duration:var(--paper-progress-transition-duration,.08s);-webkit-transition-timing-function:var(--paper-progress-transition-timing-function,ease);transition-timing-function:var(--paper-progress-transition-timing-function,ease);-webkit-transition-delay:var(--paper-progress-transition-delay,0s);transition-delay:var(--paper-progress-transition-delay,0s)}#primaryProgress,#secondaryProgress{@apply(--layout-fit);-webkit-transform-origin:left center;transform-origin:left center;-webkit-transform:scaleX(0);transform:scaleX(0);will-change:transform}#primaryProgress{background:var(--paper-progress-active-color,--google-green-500)}#secondaryProgress{background:var(--paper-progress-secondary-color,--google-green-100)}:host([disabled]) #primaryProgress{background:var(--paper-progress-disabled-active-color,--google-grey-500)}:host([disabled]) #secondaryProgress{background:var(--paper-progress-disabled-secondary-color,--google-grey-300)}:host(:not([disabled])) #primaryProgress.indeterminate{-webkit-transform-origin:right center;transform-origin:right center;-webkit-animation:indeterminate-bar var(--paper-progress-indeterminate-cycle-duration,2s) linear infinite;animation:indeterminate-bar var(--paper-progress-indeterminate-cycle-duration,2s) linear infinite}:host(:not([disabled])) #primaryProgress.indeterminate::after{content:"";-webkit-transform-origin:center center;transform-origin:center center;-webkit-animation:indeterminate-splitter var(--paper-progress-indeterminate-cycle-duration,2s) linear infinite;animation:indeterminate-splitter var(--paper-progress-indeterminate-cycle-duration,2s) linear infinite}@-webkit-keyframes indeterminate-bar{0%{-webkit-transform:scaleX(1) translateX(-100%)}50%{-webkit-transform:scaleX(1) translateX(0)}75%{-webkit-transform:scaleX(1) translateX(0);-webkit-animation-timing-function:cubic-bezier(.28,.62,.37,.91)}100%{-webkit-transform:scaleX(0) translateX(0)}}@-webkit-keyframes indeterminate-splitter{0%{-webkit-transform:scaleX(.75) translateX(-125%)}30%{-webkit-transform:scaleX(.75) translateX(-125%);-webkit-animation-timing-function:cubic-bezier(.42,0,.6,.8)}90%{-webkit-transform:scaleX(.75) translateX(125%)}100%{-webkit-transform:scaleX(.75) translateX(125%)}}@keyframes indeterminate-bar{0%{transform:scaleX(1) translateX(-100%)}50%{transform:scaleX(1) translateX(0)}75%{transform:scaleX(1) translateX(0);animation-timing-function:cubic-bezier(.28,.62,.37,.91)}100%{transform:scaleX(0) translateX(0)}}@keyframes indeterminate-splitter{0%{transform:scaleX(.75) translateX(-125%)}30%{transform:scaleX(.75) translateX(-125%);animation-timing-function:cubic-bezier(.42,0,.6,.8)}90%{transform:scaleX(.75) translateX(125%)}100%{transform:scaleX(.75) translateX(125%)}}</style><div id="progressContainer"><div id="secondaryProgress" hidden$="[[_hideSecondaryProgress(secondaryRatio)]]"></div><div id="primaryProgress"></div></div></template></dom-module><script>Polymer({is:"paper-progress",behaviors:[Polymer.IronRangeBehavior],properties:{secondaryProgress:{type:Number,value:0},secondaryRatio:{type:Number,value:0,readOnly:!0},indeterminate:{type:Boolean,value:!1,observer:"_toggleIndeterminate"},disabled:{type:Boolean,value:!1,reflectToAttribute:!0,observer:"_disabledChanged"}},observers:["_progressChanged(secondaryProgress, value, min, max)"],hostAttributes:{role:"progressbar"},_toggleIndeterminate:function(e){this.toggleClass("indeterminate",e,this.$.primaryProgress)},_transformProgress:function(e,r){var s="scaleX("+r/100+")";e.style.transform=e.style.webkitTransform=s},_mainRatioChanged:function(e){this._transformProgress(this.$.primaryProgress,e)},_progressChanged:function(e,r,s,t){e=this._clampValue(e),r=this._clampValue(r);var a=100*this._calcRatio(e),i=100*this._calcRatio(r);this._setSecondaryRatio(a),this._transformProgress(this.$.secondaryProgress,a),this._transformProgress(this.$.primaryProgress,i),this.secondaryProgress=e,this.setAttribute("aria-valuenow",r),this.setAttribute("aria-valuemin",s),this.setAttribute("aria-valuemax",t)},_disabledChanged:function(e){this.setAttribute("aria-disabled",e?"true":"false")},_hideSecondaryProgress:function(e){return 0===e}})</script><dom-module id="paper-slider" assetpath="../bower_components/paper-slider/"><template strip-whitespace=""><style>:host{@apply(--layout);@apply(--layout-justified);@apply(--layout-center);width:200px;cursor:default;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;--paper-progress-active-color:var(--paper-slider-active-color, --google-blue-700);--paper-progress-secondary-color:var(--paper-slider-secondary-color, --google-blue-300);--paper-progress-disabled-active-color:var(--paper-slider-disabled-active-color, --paper-grey-400);--paper-progress-disabled-secondary-color:var(--paper-slider-disabled-secondary-color, --paper-grey-400)}:host(:focus){outline:0}#sliderContainer{position:relative;width:100%;height:calc(30px + var(--paper-slider-height,2px));margin-left:calc(15px + var(--paper-slider-height,2px)/ 2);margin-right:calc(15px + var(--paper-slider-height,2px)/ 2)}#sliderContainer:focus{outline:0}#sliderContainer.editable{margin-top:12px;margin-bottom:12px}.bar-container{position:absolute;top:0;bottom:0;left:0;right:0;overflow:hidden}.ring>.bar-container{left:calc(5px + var(--paper-slider-height,2px)/ 2);transition:left .18s ease}.ring.expand.dragging>.bar-container{transition:none}.ring.expand:not(.pin)>.bar-container{left:calc(8px + var(--paper-slider-height,2px)/ 2)}#sliderBar{padding:15px 0;width:100%;background-color:var(--paper-slider-bar-color,transparent);--paper-progress-container-color:var(--paper-slider-container-color, --paper-grey-400);--paper-progress-height:var(--paper-slider-height, 2px)}.slider-markers{position:absolute;top:calc(14px + var(--paper-slider-height,2px)/ 2);height:var(--paper-slider-height,2px);left:0;right:-1px;box-sizing:border-box;pointer-events:none;@apply(--layout-horizontal)}.slider-marker{@apply(--layout-flex)}.slider-marker::after,.slider-markers::after{content:"";display:block;margin-left:-1px;width:2px;height:2px;border-radius:50%;background-color:#000}#sliderKnob{position:absolute;left:0;top:0;margin-left:calc(-15px - var(--paper-slider-height,2px)/ 2);width:calc(30px + var(--paper-slider-height,2px));height:calc(30px + var(--paper-slider-height,2px))}.transiting>#sliderKnob{transition:left 80ms ease}#sliderKnob:focus{outline:0}#sliderKnob.dragging{transition:none}.snaps>#sliderKnob.dragging{transition:-webkit-transform 80ms ease;transition:transform 80ms ease}#sliderKnobInner{margin:10px;width:calc(100% - 20px);height:calc(100% - 20px);background-color:var(--paper-slider-knob-color,--google-blue-700);border:2px solid var(--paper-slider-knob-color,--google-blue-700);border-radius:50%;-moz-box-sizing:border-box;box-sizing:border-box;transition-property:-webkit-transform,background-color,border;transition-property:transform,background-color,border;transition-duration:.18s;transition-timing-function:ease}.expand:not(.pin)>#sliderKnob>#sliderKnobInner{-webkit-transform:scale(1.5);transform:scale(1.5)}.ring>#sliderKnob>#sliderKnobInner{background-color:var(--paper-slider-knob-start-color,transparent);border:2px solid var(--paper-slider-knob-start-border-color,--paper-grey-400)}#sliderKnobInner::before{background-color:var(--paper-slider-pin-color,--google-blue-700)}.pin>#sliderKnob>#sliderKnobInner::before{content:"";position:absolute;top:0;left:50%;margin-left:-13px;width:26px;height:26px;border-radius:50% 50% 50% 0;-webkit-transform:rotate(-45deg) scale(0) translate(0);transform:rotate(-45deg) scale(0) translate(0)}#sliderKnobInner::after,#sliderKnobInner::before{transition:-webkit-transform .18s ease,background-color .18s ease;transition:transform .18s ease,background-color .18s ease}.pin.ring>#sliderKnob>#sliderKnobInner::before{background-color:var(--paper-slider-pin-start-color,--paper-grey-400)}.pin.expand>#sliderKnob>#sliderKnobInner::before{-webkit-transform:rotate(-45deg) scale(1) translate(17px,-17px);transform:rotate(-45deg) scale(1) translate(17px,-17px)}.pin>#sliderKnob>#sliderKnobInner::after{content:attr(value);position:absolute;top:0;left:50%;margin-left:-16px;width:32px;height:26px;text-align:center;color:var(--paper-slider-font-color,#fff);font-size:10px;-webkit-transform:scale(0) translate(0);transform:scale(0) translate(0)}.pin.expand>#sliderKnob>#sliderKnobInner::after{-webkit-transform:scale(1) translate(0,-17px);transform:scale(1) translate(0,-17px)}.slider-input{width:50px;overflow:hidden;--paper-input-container-input:{text-align:center};@apply(--paper-slider-input)}#sliderContainer.disabled{pointer-events:none}.disabled>#sliderKnob>#sliderKnobInner{background-color:var(--paper-slider-disabled-knob-color,--paper-grey-400);border:2px solid var(--paper-slider-disabled-knob-color,--paper-grey-400);-webkit-transform:scale3d(.75,.75,1);transform:scale3d(.75,.75,1)}.disabled.ring>#sliderKnob>#sliderKnobInner{background-color:var(--paper-slider-knob-start-color,transparent);border:2px solid var(--paper-slider-knob-start-border-color,--paper-grey-400)}paper-ripple{color:var(--paper-slider-knob-color,--google-blue-700)}</style><div id="sliderContainer" class$="[[_getClassNames(disabled, pin, snaps, immediateValue, min, expand, dragging, transiting, editable)]]"><div class="bar-container"><paper-progress disabled$="[[disabled]]" id="sliderBar" aria-hidden="true" min="[[min]]" max="[[max]]" step="[[step]]" value="[[immediateValue]]" secondary-progress="[[secondaryProgress]]" on-down="_bardown" on-up="_resetKnob" on-track="_onTrack"></paper-progress></div><template is="dom-if" if="[[snaps]]"><div class="slider-markers"><template is="dom-repeat" items="[[markers]]"><div class="slider-marker"></div></template></div></template><div id="sliderKnob" on-down="_knobdown" on-up="_resetKnob" on-track="_onTrack" on-transitionend="_knobTransitionEnd"><div id="sliderKnobInner" value$="[[immediateValue]]"></div></div></div><template is="dom-if" if="[[editable]]"><paper-input id="input" type="number" step="[[step]]" min="[[min]]" max="[[max]]" class="slider-input" disabled$="[[disabled]]" value="[[immediateValue]]" on-change="_changeValue" on-keydown="_inputKeyDown" no-label-float=""></paper-input></template></template><script>Polymer({is:"paper-slider",behaviors:[Polymer.IronA11yKeysBehavior,Polymer.IronFormElementBehavior,Polymer.PaperInkyFocusBehavior,Polymer.IronRangeBehavior],properties:{snaps:{type:Boolean,value:!1,notify:!0},pin:{type:Boolean,value:!1,notify:!0},secondaryProgress:{type:Number,value:0,notify:!0,observer:"_secondaryProgressChanged"},editable:{type:Boolean,value:!1},immediateValue:{type:Number,value:0,readOnly:!0,notify:!0},maxMarkers:{type:Number,value:0,notify:!0},expand:{type:Boolean,value:!1,readOnly:!0},dragging:{type:Boolean,value:!1,readOnly:!0},transiting:{type:Boolean,value:!1,readOnly:!0},markers:{type:Array,readOnly:!0,value:[]}},observers:["_updateKnob(value, min, max, snaps, step)","_valueChanged(value)","_immediateValueChanged(immediateValue)","_updateMarkers(maxMarkers, min, max, snaps)"],hostAttributes:{role:"slider",tabindex:0},keyBindings:{"left down pagedown home":"_decrementKey","right up pageup end":"_incrementKey"},increment:function(){this.value=this._clampValue(this.value+this.step)},decrement:function(){this.value=this._clampValue(this.value-this.step)},_updateKnob:function(t,e,i,s,a){this.setAttribute("aria-valuemin",e),this.setAttribute("aria-valuemax",i),this.setAttribute("aria-valuenow",t),this._positionKnob(this._calcRatio(t))},_valueChanged:function(){this.fire("value-change")},_immediateValueChanged:function(){this.dragging?this.fire("immediate-value-change"):this.value=this.immediateValue},_secondaryProgressChanged:function(){this.secondaryProgress=this._clampValue(this.secondaryProgress)},_expandKnob:function(){this._setExpand(!0)},_resetKnob:function(){this.cancelDebouncer("expandKnob"),this._setExpand(!1)},_positionKnob:function(t){this._setImmediateValue(this._calcStep(this._calcKnobPosition(t))),this._setRatio(this._calcRatio(this.immediateValue)),this.$.sliderKnob.style.left=100*this.ratio+"%",this.dragging&&(this._knobstartx=this.ratio*this._w,this.translate3d(0,0,0,this.$.sliderKnob))},_calcKnobPosition:function(t){return(this.max-this.min)*t+this.min},_onTrack:function(t){switch(t.stopPropagation(),t.detail.state){case"start":this._trackStart(t);break;case"track":this._trackX(t);break;case"end":this._trackEnd()}},_trackStart:function(t){this._w=this.$.sliderBar.offsetWidth,this._x=this.ratio*this._w,this._startx=this._x,this._knobstartx=this._startx,this._minx=-this._startx,this._maxx=this._w-this._startx,this.$.sliderKnob.classList.add("dragging"),this._setDragging(!0)},_trackX:function(t){this.dragging||this._trackStart(t);var e=Math.min(this._maxx,Math.max(this._minx,t.detail.dx));this._x=this._startx+e;var i=this._calcStep(this._calcKnobPosition(this._x/this._w));this._setImmediateValue(i);var s=this._calcRatio(this.immediateValue)*this._w-this._knobstartx;this.translate3d(s+"px",0,0,this.$.sliderKnob)},_trackEnd:function(){var t=this.$.sliderKnob.style;this.$.sliderKnob.classList.remove("dragging"),this._setDragging(!1),this._resetKnob(),this.value=this.immediateValue,t.transform=t.webkitTransform="",this.fire("change")},_knobdown:function(t){this._expandKnob(),t.preventDefault(),this.focus()},_bardown:function(t){this._w=this.$.sliderBar.offsetWidth;var e=this.$.sliderBar.getBoundingClientRect(),i=(t.detail.x-e.left)/this._w,s=this.ratio;this._setTransiting(!0),this._positionKnob(i),this.debounce("expandKnob",this._expandKnob,60),s===this.ratio&&this._setTransiting(!1),this.async(function(){this.fire("change")}),t.preventDefault(),this.focus()},_knobTransitionEnd:function(t){t.target===this.$.sliderKnob&&this._setTransiting(!1)},_updateMarkers:function(t,e,i,s){s||this._setMarkers([]);var a=Math.round((i-e)/this.step);a>t&&(a=t),this._setMarkers(new Array(a))},_mergeClasses:function(t){return Object.keys(t).filter(function(e){return t[e]}).join(" ")},_getClassNames:function(){return this._mergeClasses({disabled:this.disabled,pin:this.pin,snaps:this.snaps,ring:this.immediateValue<=this.min,expand:this.expand,dragging:this.dragging,transiting:this.transiting,editable:this.editable})},_incrementKey:function(t){this.disabled||("end"===t.detail.key?this.value=this.max:this.increment(),this.fire("change"))},_decrementKey:function(t){this.disabled||("home"===t.detail.key?this.value=this.min:this.decrement(),this.fire("change"))},_changeValue:function(t){this.value=t.target.value,this.fire("change")},_inputKeyDown:function(t){t.stopPropagation()},_createRipple:function(){return this._rippleContainer=this.$.sliderKnob,Polymer.PaperInkyFocusBehaviorImpl._createRipple.call(this)},_focusedChanged:function(t){t&&this.ensureRipple(),this.hasRipple()&&(t?this._ripple.style.display="":this._ripple.style.display="none",this._ripple.holdDown=t)}})</script></dom-module><dom-module id="state-card-input_slider" assetpath="state-summary/"><template><style is="custom-style" include="iron-flex iron-flex-alignment"></style><style>paper-slider{margin-left:16px}</style><div class="horizontal justified layout"><state-info state-obj="[[stateObj]]" in-dialog="[[inDialog]]"></state-info><paper-slider min="[[min]]" max="[[max]]" value="{{value}}" step="[[step]]" pin="" on-change="selectedValueChanged" on-tap="stopPropagation"></paper-slider></div></template></dom-module><script>Polymer({is:"state-card-input_slider",properties:{hass:{type:Object},inDialog:{type:Boolean,value:!1},stateObj:{type:Object,observer:"stateObjectChanged"},min:{type:Number},max:{type:Number},step:{type:Number},value:{type:Number}},stateObjectChanged:function(t){this.value=Number(t.state),this.min=Number(t.attributes.min),this.max=Number(t.attributes.max),this.step=Number(t.attributes.step)},selectedValueChanged:function(){this.value!==Number(this.stateObj.state)&&this.hass.serviceActions.callService("input_slider","select_value",{value:this.value,entity_id:this.stateObj.entityId})},stopPropagation:function(t){t.stopPropagation()}})</script><dom-module id="state-card-media_player" assetpath="state-summary/"><template><style is="custom-style" include="iron-flex iron-flex-alignment"></style><style>:host{line-height:1.5}.state{@apply(--paper-font-common-nowrap);@apply(--paper-font-body1);margin-left:16px;text-align:right}.main-text{@apply(--paper-font-common-nowrap);color:var(--primary-text-color);text-transform:capitalize}.main-text[take-height]{line-height:40px}.secondary-text{@apply(--paper-font-common-nowrap);color:var(--secondary-text-color)}</style><div class="horizontal justified layout"><state-info state-obj="[[stateObj]]" in-dialog="[[inDialog]]"></state-info><div class="state"><div class="main-text" take-height$="[[!secondaryText]]">[[computePrimaryText(stateObj, isPlaying)]]</div><div class="secondary-text">[[secondaryText]]</div></div></div></template></dom-module><script>Polymer({PLAYING_STATES:["playing","paused"],is:"state-card-media_player",properties:{inDialog:{type:Boolean,value:!1},stateObj:{type:Object},isPlaying:{type:Boolean,computed:"computeIsPlaying(stateObj)"},secondaryText:{type:String,computed:"computeSecondaryText(stateObj)"}},computeIsPlaying:function(t){return this.PLAYING_STATES.indexOf(t.state)!==-1},computePrimaryText:function(t,e){return e?t.attributes.media_title:t.stateDisplay},computeSecondaryText:function(t){var e;return"music"===t.attributes.media_content_type?t.attributes.media_artist:"tvshow"===t.attributes.media_content_type?(e=t.attributes.media_series_title,t.attributes.media_season&&t.attributes.media_episode&&(e+=" S"+t.attributes.media_season+"E"+t.attributes.media_episode),e):t.attributes.app_name?t.attributes.app_name:""}})</script><dom-module id="state-card-scene" assetpath="state-summary/"><template><style is="custom-style" include="iron-flex iron-flex-alignment"></style><style>paper-button{color:var(--default-primary-color);font-weight:500;top:3px;height:37px;margin-right:-.57em}</style><div class="horizontal justified layout"><state-info state-obj="[[stateObj]]" in-dialog="[[inDialog]]"></state-info><paper-button on-tap="activateScene">ACTIVATE</paper-button></div></template></dom-module><script>Polymer({is:"state-card-scene",properties:{hass:{type:Object},inDialog:{type:Boolean,value:!1},stateObj:{type:Object}},activateScene:function(t){t.stopPropagation(),this.hass.serviceActions.callTurnOn(this.stateObj.entityId)}})</script><dom-module id="state-card-script" assetpath="state-summary/"><template><style is="custom-style" include="iron-flex iron-flex-alignment"></style><style>paper-button{color:var(--default-primary-color);font-weight:500;top:3px;height:37px;margin-right:-.57em}ha-entity-toggle{margin-left:16px}</style><div class="horizontal justified layout"><state-info state-obj="[[stateObj]]" in-dialog="[[inDialog]]"></state-info><template is="dom-if" if="[[stateObj.attributes.can_cancel]]"><ha-entity-toggle state-obj="[[stateObj]]" hass="[[hass]]"></ha-entity-toggle></template><template is="dom-if" if="[[!stateObj.attributes.can_cancel]]"><paper-button on-tap="fireScript">ACTIVATE</paper-button></template></div></template></dom-module><script>Polymer({is:"state-card-script",properties:{inDialog:{type:Boolean,value:!1},stateObj:{type:Object}},fireScript:function(t){t.stopPropagation(),this.hass.serviceActions.callTurnOn(this.stateObj.entityId)}})</script><dom-module id="state-card-toggle" assetpath="state-summary/"><template><style is="custom-style" include="iron-flex iron-flex-alignment"></style><style>ha-entity-toggle{margin-left:16px}</style><div class="horizontal justified layout"><state-info state-obj="[[stateObj]]" in-dialog="[[inDialog]]"></state-info><ha-entity-toggle state-obj="[[stateObj]]" hass="[[hass]]"></ha-entity-toggle></div></template></dom-module><script>Polymer({is:"state-card-toggle",properties:{hass:{type:Object},inDialog:{type:Boolean,value:!1},stateObj:{type:Object}}})</script><dom-module id="state-card-weblink" assetpath="state-summary/"><template><style>:host{display:block}.name{@apply(--paper-font-common-nowrap);@apply(--paper-font-body1);color:var(--primary-color);text-transform:capitalize;line-height:40px;margin-left:16px}</style><state-badge state-obj="[[stateObj]]" in-dialog="[[inDialog]]"></state-badge><a href$="[[stateObj.state]]" target="_blank" class="name" id="link">[[stateObj.entityDisplay]]</a></template></dom-module><script>Polymer({is:"state-card-weblink",properties:{inDialog:{type:Boolean,value:!1},stateObj:{type:Object}},listeners:{tap:"onTap"},onTap:function(t){t.stopPropagation(),t.target!==this.$.link&&window.open(this.stateObj.state,"_blank")}})</script><script>Polymer({is:"state-card-content",properties:{hass:{type:Object},inDialog:{type:Boolean,value:!1},stateObj:{type:Object}},observers:["inputChanged(hass, inDialog, stateObj)"],inputChanged:function(t,e,s){s&&window.hassUtil.dynamicContentUpdater(this,"STATE-CARD-"+window.hassUtil.stateCardType(this.hass,s).toUpperCase(),{hass:t,stateObj:s,inDialog:e})}})</script><dom-module id="ha-entities-card" assetpath="cards/"><template><style is="custom-style" include="iron-flex"></style><style>.states{padding-bottom:16px}.state{padding:4px 16px;cursor:pointer}.header{@apply(--paper-font-headline);line-height:40px;color:var(--primary-text-color);padding:20px 16px 12px;text-transform:capitalize}.header .name{@apply(--paper-font-common-nowrap)}ha-entity-toggle{margin-left:16px}.header-more-info{cursor:pointer}</style><ha-card><div class$="[[computeTitleClass(groupEntity)]]" on-tap="entityTapped"><div class="flex name">[[computeTitle(states, groupEntity)]]</div><template is="dom-if" if="[[showGroupToggle(groupEntity, states)]]"><ha-entity-toggle hass="[[hass]]" state-obj="[[groupEntity]]"></ha-entity-toggle></template></div><div class="states"><template is="dom-repeat" items="[[states]]"><div class="state" on-tap="entityTapped"><state-card-content hass="[[hass]]" class="state-card" state-obj="[[item]]"></state-card-content></div></template></div></ha-card></template></dom-module><script>Polymer({is:"ha-entities-card",properties:{hass:{type:Object},states:{type:Array},groupEntity:{type:Object}},computeTitle:function(t,e){return e?e.entityDisplay:t[0].domain.replace(/_/g," ")},computeTitleClass:function(t){var e="header horizontal layout center ";return t&&(e+="header-more-info"),e},entityTapped:function(t){var e;t.target.classList.contains("paper-toggle-button")||t.target.classList.contains("paper-icon-button")||!t.model&&!this.groupEntity||(t.stopPropagation(),e=t.model?t.model.item.entityId:this.groupEntity.entityId,this.async(function(){this.hass.moreInfoActions.selectEntity(e)}.bind(this),1))},showGroupToggle:function(t,e){var n;return!(!t||!e||"hidden"===t.attributes.control||"on"!==t.state&&"off"!==t.state)&&(n=e.reduce(function(t,e){return t+window.hassUtil.canToggle(this.hass,e.entityId)},0),n>1)}})</script><dom-module id="ha-introduction-card" assetpath="cards/"><template><style>:host{@apply(--paper-font-body1)}a{color:var(--dark-primary-color)}ul{margin:8px;padding-left:16px}li{margin-bottom:8px}.content{padding:0 16px 16px}.install{display:block;line-height:1.5em;margin-top:8px;margin-bottom:16px}</style><ha-card header="Welcome Home!"><div class="content"><template is="dom-if" if="[[hass.demo]]">To install Home Assistant, run:<br><code class="install">pip3 install homeassistant<br>hass --open-ui</code></template>Here are some resources to get started.<ul><template is="dom-if" if="[[hass.demo]]"><li><a href="https://home-assistant.io/getting-started/">Home Assistant website</a></li><li><a href="https://home-assistant.io/getting-started/">Installation instructions</a></li><li><a href="https://home-assistant.io/getting-started/troubleshooting/">Troubleshooting your installation</a></li></template><li><a href="https://home-assistant.io/getting-started/configuration/" target="_blank">Configuring Home Assistant</a></li><li><a href="https://home-assistant.io/components/" target="_blank">Available components</a></li><li><a href="https://home-assistant.io/getting-started/troubleshooting-configuration/" target="_blank">Troubleshooting your configuration</a></li><li><a href="https://home-assistant.io/help/" target="_blank">Ask community for help</a></li></ul><template is="dom-if" if="[[showHideInstruction]]">To remove this card, edit your config in <code>configuration.yaml</code> and disable the <code>introduction</code> component.</template></div></ha-card></template></dom-module><script>Polymer({is:"ha-introduction-card",properties:{hass:{type:Object},showHideInstruction:{type:Boolean,value:!0}}})</script><dom-module id="ha-media_player-card" assetpath="cards/"><template><style include="paper-material iron-flex iron-flex-alignment iron-positioning">:host{display:block;position:relative;font-size:0;border-radius:2px;overflow:hidden}.banner{position:relative;background-color:#fff;border-top-left-radius:2px;border-top-right-radius:2px}.banner:before{display:block;content:"";width:100%;padding-top:56%;transition:padding-top .8s}.banner.no-cover{background-position:center center;background-image:url(/static/images/card_media_player_bg.png);background-repeat:no-repeat;background-color:var(--primary-color)}.banner.content-type-music:before{padding-top:100%}.banner.no-cover:before{padding-top:88px}.banner>.cover{position:absolute;top:0;left:0;right:0;bottom:0;border-top-left-radius:2px;border-top-right-radius:2px;background-position:center center;background-size:cover;transition:opacity .8s;opacity:1}.banner.is-off>.cover{opacity:0}.banner>.caption{@apply(--paper-font-caption);position:absolute;left:0;right:0;bottom:0;background-color:rgba(0,0,0,var(--dark-secondary-opacity));padding:8px 16px;text-transform:capitalize;font-size:14px;font-weight:500;color:#fff;transition:background-color .5s}.banner.is-off>.caption{background-color:initial}.banner>.caption .title{@apply(--paper-font-common-nowrap);font-size:1.2em;margin:8px 0 4px}.progress{width:100%;--paper-progress-active-color:var(--accent-color);--paper-progress-container-color:#FFF}.controls{position:relative;@apply(--paper-font-body1);padding:8px;border-bottom-left-radius:2px;border-bottom-right-radius:2px;background-color:#fff}.controls paper-icon-button{width:44px;height:44px}paper-icon-button{opacity:var(--dark-primary-opacity)}paper-icon-button[disabled]{opacity:var(--dark-disabled-opacity)}paper-icon-button.primary{width:56px!important;height:56px!important;background-color:var(--primary-color);color:#fff;border-radius:50%;padding:8px;transition:background-color .5s}paper-icon-button.primary[disabled]{background-color:rgba(0,0,0,var(--dark-disabled-opacity))}[invisible]{visibility:hidden!important}</style><div class$="[[computeBannerClasses(playerObj)]]"><div class="cover" id="cover"></div><div class="caption">[[stateObj.entityDisplay]]<div class="title">[[playerObj.primaryText]]</div>[[playerObj.secondaryText]]<br></div></div><paper-progress max="[[stateObj.attributes.media_duration]]" value="[[playbackPosition]]" hidden$="[[computeHideProgress(playerObj)]]" class="progress"></paper-progress><div class="controls layout horizontal justified"><paper-icon-button icon="mdi:power" on-tap="handleTogglePower" invisible$="[[computeHidePowerButton(playerObj)]]" class="self-center secondary"></paper-icon-button><div><paper-icon-button icon="mdi:skip-previous" invisible$="[[!playerObj.supportsPreviousTrack]]" disabled="[[playerObj.isOff]]" on-tap="handlePrevious"></paper-icon-button><paper-icon-button class="primary" icon="[[computePlaybackControlIcon(playerObj)]]" invisible="[[!computePlaybackControlIcon(playerObj)]]" disabled="[[playerObj.isOff]]" on-tap="handlePlaybackControl"></paper-icon-button><paper-icon-button icon="mdi:skip-next" invisible$="[[!playerObj.supportsNextTrack]]" disabled="[[playerObj.isOff]]" on-tap="handleNext"></paper-icon-button></div><paper-icon-button icon="mdi:dots-vertical" on-tap="handleOpenMoreInfo" class="self-center secondary"></paper-icon-button></div></template></dom-module><script>Polymer({is:"ha-media_player-card",properties:{hass:{type:Object},stateObj:{type:Object},playerObj:{type:Object,computed:"computePlayerObj(stateObj)",observer:"playerObjChanged"},playbackControlIcon:{type:String,computed:"computePlaybackControlIcon(playerObj)"},playbackPosition:{type:Number},elevation:{type:Number,value:1,reflectToAttribute:!0}},created:function(){this.updatePlaybackPosition=this.updatePlaybackPosition.bind(this)},playerObjChanged:function(t){var e=t.stateObj.attributes.entity_picture;e?this.$.cover.style.backgroundImage="url("+e+")":this.$.cover.style.backgroundImage="",t.isPlaying?(this._positionTracking||(this._positionTracking=setInterval(this.updatePlaybackPosition,1e3)),this.updatePlaybackPosition()):this._positionTracking&&(clearInterval(this._positionTracking),this._positionTracking=null,this.playbackPosition=0)},updatePlaybackPosition:function(){this.playbackPosition=this.playerObj.currentProgress},computeBannerClasses:function(t){var e="banner";return t.isOff||t.isIdle?e+=" is-off no-cover":t.stateObj.attributes.entity_picture?"music"===t.stateObj.attributes.media_content_type&&(e+=" content-type-music"):e+=" no-cover",e},computeHideProgress:function(t){return!t.showProgress},computeHidePowerButton:function(t){return t.isOff?!t.supportsTurnOn:!t.supportsTurnOff},computePlayerObj:function(t){return t.domainModel(this.hass)},computePlaybackControlIcon:function(t){return t.isPlaying?t.supportsPause?"mdi:pause":"mdi:stop":t.isPaused||t.isOff||t.isIdle?"mdi:play":""},handleNext:function(t){t.stopPropagation(),this.playerObj.nextTrack()},handleOpenMoreInfo:function(t){t.stopPropagation(),this.async(function(){this.hass.moreInfoActions.selectEntity(this.stateObj.entityId)},1)},handlePlaybackControl:function(t){t.stopPropagation(),this.playerObj.mediaPlayPause()},handlePrevious:function(t){t.stopPropagation(),this.playerObj.previousTrack()},handleTogglePower:function(t){t.stopPropagation(),this.playerObj.togglePower()}})</script><dom-module id="ha-persistent_notification-card" assetpath="cards/"><template><style>:host{@apply(--paper-font-body1)}.content{padding:0 16px 16px}paper-button{margin:8px;font-weight:500}</style><ha-card header="[[computeTitle(stateObj)]]"><div id="pnContent" class="content"></div><paper-button on-tap="dismissTap">DISMISS</paper-button></ha-card></template></dom-module><script>Polymer({is:"ha-persistent_notification-card",properties:{hass:{type:Object},stateObj:{type:Object},scriptLoaded:{type:Boolean,value:!1}},observers:["computeContent(stateObj, scriptLoaded)"],computeTitle:function(t){return t.attributes.title||t.entityDisplay},loadScript:function(){var t=function(){this.scriptLoaded=!0}.bind(this),e=function(){console.error("Micromarkdown was not loaded.")};this.importHref("/static/micromarkdown-js.html",t,e)},computeContent:function(t,e){var i="",n="";e&&(i=this.$.pnContent,n=window.micromarkdown.parse(t.state),i.innerHTML=n)},ready:function(){this.loadScript()},dismissTap:function(t){t.preventDefault(),this.hass.entityActions.delete(this.stateObj)}})</script><script>Polymer({is:"ha-card-chooser",properties:{cardData:{type:Object,observer:"cardDataChanged"}},cardDataChanged:function(a){a&&window.hassUtil.dynamicContentUpdater(this,"HA-"+a.cardType.toUpperCase()+"-CARD",a)}})</script><dom-module id="ha-cards" assetpath="components/"><template><style is="custom-style" include="iron-flex iron-flex-factors"></style><style>:host{display:block;padding-top:8px;padding-right:8px}.badges{font-size:85%;text-align:center}.column{max-width:500px;overflow-x:hidden}.zone-card{margin-left:8px;margin-bottom:8px}@media (max-width:500px){:host{padding-right:0}.zone-card{margin-left:0}}@media (max-width:599px){.column{max-width:600px}}</style><div class="main"><template is="dom-if" if="[[cards.badges]]"><div class="badges"><template is="dom-if" if="[[cards.demo]]"><ha-demo-badge></ha-demo-badge></template><ha-badges-card states="[[cards.badges]]" hass="[[hass]]"></ha-badges-card></div></template><div class="horizontal layout center-justified"><template is="dom-repeat" items="[[cards.columns]]" as="column"><div class="column flex-1"><template is="dom-repeat" items="[[column]]" as="card"><div class="zone-card"><ha-card-chooser card-data="[[card]]" hass="[[hass]]"></ha-card-chooser></div></template></div></template></div></div></template></dom-module><script>!function(){"use strict";function t(t){return t in o?o[t]:30}function e(t){return"group"===t.domain?t.attributes.order:t.entityDisplay.toLowerCase()}var n={camera:4,media_player:3,persistent_notification:0},o={configurator:-20,persistent_notification:-15,group:-10,a:-1,updater:0,sun:1,device_tracker:2,alarm_control_panel:3,sensor:5,binary_sensor:6};Polymer({is:"ha-cards",properties:{hass:{type:Object},showIntroduction:{type:Boolean,value:!1},columns:{type:Number,value:2},states:{type:Object},panelVisible:{type:Boolean},viewVisible:{type:Boolean},cards:{type:Object}},observers:["updateCards(columns, states, showIntroduction, panelVisible, viewVisible)"],updateCards:function(t,e,n,o,r){o&&r&&this.debounce("updateCards",function(){this.panelVisible&&this.viewVisible&&(this.cards=this.computeCards(t,e,n))}.bind(this))},computeCards:function(o,r,s){function i(t){return t.filter(function(t){return!(t.entityId in h)})}function a(t){var e=0;for(p=e;p<y.length;p++){if(y[p]<5){e=p;break}y[p]<y[e]&&(e=p)}return y[e]+=t,e}function u(t,e,o){var r,s,i,u;0!==e.length&&(r=[],s=[],i=0,e.forEach(function(t){t.domain in n?(r.push(t),i+=n[t.domain]):(s.push(t),i++)}),i+=s.length>1,u=a(i),s.length>0&&f.columns[u].push({hass:d,cardType:"entities",states:s,groupEntity:o||!1}),r.forEach(function(t){f.columns[u].push({hass:d,cardType:t.domain,stateObj:t})}))}var c,p,d=this.hass,l=r.groupBy(function(t){return t.domain}),h={},f={demo:!1,badges:[],columns:[]},y=[];for(p=0;p<o;p++)f.columns.push([]),y.push(0);return s&&f.columns[a(5)].push({hass:d,cardType:"introduction",showHideInstruction:r.size>0&&!d.demo}),c=this.hass.util.expandGroup,l.keySeq().sortBy(function(e){return t(e)}).forEach(function(n){var o;return"a"===n?void(f.demo=!0):(o=t(n),void(o>=0&&o<10?f.badges.push.apply(f.badges,i(l.get(n)).sortBy(e).toArray()):"group"===n?l.get(n).sortBy(e).forEach(function(t){var e=c(t,r);e.forEach(function(t){h[t.entityId]=!0}),u(t.entityId,e.toArray(),t)}):u(n,i(l.get(n)).sortBy(e).toArray())))}),f.columns=f.columns.filter(function(t){return t.length>0}),f}})}()</script><dom-module id="partial-cards" assetpath="layouts/"><template><style include="iron-flex iron-positioning ha-style">:host{-ms-user-select:none;-webkit-user-select:none;-moz-user-select:none}app-header-layout{background-color:#E5E5E5}paper-tabs{margin-left:12px;--paper-tabs-selection-bar-color:#FFF;text-transform:uppercase}</style><app-header-layout has-scrolling-region="" id="layout"><app-header effects="waterfall" condenses="" fixed=""><app-toolbar><ha-menu-button narrow="[[narrow]]" show-menu="[[showMenu]]"></ha-menu-button><div main-title="">[[computeTitle(views, locationName)]]</div><paper-icon-button icon="mdi:microphone" hidden$="[[!canListen]]" on-tap="handleListenClick"></paper-icon-button></app-toolbar><div sticky="" hidden$="[[!views.length]]"><paper-tabs scrollable="" selected="[[currentView]]" attr-for-selected="data-entity" on-iron-select="handleViewSelected"><paper-tab data-entity="" on-tap="scrollToTop">[[locationName]]</paper-tab><template is="dom-repeat" items="[[views]]"><paper-tab data-entity$="[[item.entityId]]" on-tap="scrollToTop"><template is="dom-if" if="[[item.attributes.icon]]"><iron-icon icon="[[item.attributes.icon]]"></iron-icon></template><template is="dom-if" if="[[!item.attributes.icon]]">[[item.entityDisplay]]</template></paper-tab></template></paper-tabs></div></app-header><iron-pages attr-for-selected="data-view" selected="[[currentView]]" selected-attribute="view-visible"><ha-cards data-view="" show-introduction="[[computeShowIntroduction(currentView, introductionLoaded, states)]]" states="[[states]]" columns="[[_columns]]" hass="[[hass]]" panel-visible="[[panelVisible]]"></ha-cards><template is="dom-repeat" items="[[views]]"><ha-cards data-view$="[[item.entityId]]" show-introduction="[[computeShowIntroduction(currentView, introductionLoaded, states)]]" states="[[states]]" columns="[[_columns]]" hass="[[hass]]" panel-visible="[[panelVisible]]"></ha-cards></template></iron-pages></app-header-layout></template></dom-module><script>Polymer({is:"partial-cards",behaviors:[window.hassBehavior],properties:{hass:{type:Object},narrow:{type:Boolean,value:!1},showMenu:{type:Boolean,value:!1,observer:"handleWindowChange"},panelVisible:{type:Boolean,value:!1},_columns:{type:Number,value:1},canListen:{type:Boolean,bindNuclear:function(e){return[e.voiceGetters.isVoiceSupported,e.configGetters.isComponentLoaded("conversation"),function(e,t){return e&&t}]}},introductionLoaded:{type:Boolean,bindNuclear:function(e){return e.configGetters.isComponentLoaded("introduction")}},locationName:{type:String,bindNuclear:function(e){return e.configGetters.locationName}},currentView:{type:String,bindNuclear:function(e){return[e.viewGetters.currentView,function(e){return e||""}]}},views:{type:Array,bindNuclear:function(e){return[e.viewGetters.views,function(e){return e.valueSeq().sortBy(function(e){return e.attributes.order}).toArray()}]}},states:{type:Object,bindNuclear:function(e){return e.viewGetters.currentViewEntities}}},created:function(){this.handleWindowChange=this.handleWindowChange.bind(this),this.mqls=[300,600,900,1200].map(function(e){var t=window.matchMedia("(min-width: "+e+"px)");return t.addListener(this.handleWindowChange),t}.bind(this))},detached:function(){this.mqls.forEach(function(e){e.removeListener(this.handleWindowChange)})},handleWindowChange:function(){var e=this.mqls.reduce(function(e,t){return e+t.matches},0);this._columns=Math.max(1,e-(!this.narrow&&this.showMenu))},scrollToTop:function(){var e=0,t=this.$.layout.header.scrollTarget,n=function(e,t,n,i){return e/=i,-n*e*(e-2)+t},i=Math.random(),o=200,r=Date.now(),a=t.scrollTop,s=e-a;this._currentAnimationId=i,function c(){var u=Date.now(),l=u-r;l>o?t.scrollTop=e:this._currentAnimationId===i&&(t.scrollTop=n(l,a,s,o),requestAnimationFrame(c.bind(this)))}.call(this)},handleListenClick:function(){this.hass.voiceActions.listen()},handleViewSelected:function(e){var t=e.detail.item.getAttribute("data-entity")||null,n=this.currentView||null;t!==n&&this.async(function(){this.hass.viewActions.selectView(t)}.bind(this),0)},computeTitle:function(e,t){return e.length>0?"Home Assistant":t},computeShowIntroduction:function(e,t,n){return""===e&&(t||0===n.size)}})</script><style is="custom-style">html{font-size:14px;--dark-primary-color:#0288D1;--default-primary-color:#03A9F4;--primary-color:#03A9F4;--light-primary-color:#B3E5FC;--text-primary-color:#ffffff;--accent-color:#FF9800;--primary-background-color:#ffffff;--primary-text-color:#212121;--secondary-text-color:#727272;--disabled-text-color:#bdbdbd;--divider-color:#B6B6B6;--paper-toggle-button-checked-ink-color:#039be5;--paper-toggle-button-checked-button-color:#039be5;--paper-toggle-button-checked-bar-color:#039be5;--paper-slider-knob-color:var(--primary-color);--paper-slider-knob-start-color:var(--primary-color);--paper-slider-pin-color:var(--primary-color);--paper-slider-active-color:var(--primary-color);--paper-slider-secondary-color:var(--light-primary-color);--paper-slider-container-color:var(--divider-color);--google-red-500:#db4437;--google-blue-500:#4285f4;--google-green-500:#0f9d58;--google-yellow-500:#f4b400;--paper-grey-50:#fafafa;--paper-green-400:#66bb6a;--paper-blue-400:#42a5f5;--paper-orange-400:#ffa726;--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-secondary-opacity:0.7;--light-primary-opacity:1.0}</style><dom-module id="ha-style" assetpath="resources/"><template><style>:host{@apply(--paper-font-body1)}app-header,app-toolbar{background-color:var(--primary-color);font-weight:400;color:#fff}app-toolbar ha-menu-button+[main-title]{margin-left:24px}h1{@apply(--paper-font-title)}</style></template></dom-module><dom-module id="partial-panel-resolver" assetpath="layouts/"><template><style include="iron-flex ha-style">[hidden]{display:none!important}.placeholder{height:100%}.layout{height:calc(100% - 64px)}</style><div hidden$="[[resolved]]" class="placeholder"><app-toolbar><ha-menu-button narrow="[[narrow]]" show-menu="[[showMenu]]"></ha-menu-button></app-toolbar><div class="layout horizontal center-center"><template is="dom-if" if="[[!errorLoading]]"><paper-spinner active=""></paper-spinner></template><template is="dom-if" if="[[errorLoading]]">Error loading panel :(</template></div></div><span id="panel" hidden$="[[!resolved]]"></span></template></dom-module><script>Polymer({is:"partial-panel-resolver",behaviors:[window.hassBehavior],properties:{hass:{type:Object,observer:"updateAttributes"},narrow:{type:Boolean,value:!1,observer:"updateAttributes"},showMenu:{type:Boolean,value:!1,observer:"updateAttributes"},resolved:{type:Boolean,value:!1},errorLoading:{type:Boolean,value:!1},panel:{type:Object,bindNuclear:function(e){return e.navigationGetters.activePanel},observer:"panelChanged"}},panelChanged:function(e){return e?(this.resolved=!1,this.errorLoading=!1,void this.importHref(e.get("url"),function(){window.hassUtil.dynamicContentUpdater(this.$.panel,"ha-panel-"+e.get("component_name"),{hass:this.hass,narrow:this.narrow,showMenu:this.showMenu,panel:e.toJS()}),this.resolved=!0}.bind(this),function(){this.errorLoading=!0}.bind(this),!0)):void(this.$.panel.lastChild&&this.$.panel.removeChild(this.$.panel.lastChild))},updateAttributes:function(){var e=Polymer.dom(this.$.panel).lastChild;e&&(e.hass=this.hass,e.narrow=this.narrow,e.showMenu=this.showMenu)}})</script><dom-module id="paper-toast" assetpath="../bower_components/paper-toast/"><template><style>:host{display:block;position:fixed;background-color:var(--paper-toast-background-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 .3s;opacity:0;-webkit-transform:translateY(100px);transform:translateY(100px);@apply(--paper-font-common-base)}:host(.capsule){border-radius:24px}:host(.fit-bottom){width:100%;min-width:0;border-radius:0;margin:0}:host(.paper-toast-open){opacity: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],properties:{fitInto:{type:Object,value:window,observer:"_onFitIntoChanged"},horizontalAlign:{type:String,value:"left"},verticalAlign:{type:String,value:"bottom"},duration:{type:Number,value:3e3},text:{type:String,value:""},noCancelOnOutsideClick:{type:Boolean,value:!0},noAutoFocus:{type:Boolean,value:!0}},listeners:{transitionend:"__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&&(this.opened?this._finishRenderOpened():this._finishRenderClosed())},_openedChanged:function(){null!==this._autoClose&&(this.cancelAsync(this._autoClose),this._autoClose=null),this.opened?(e&&e!==this&&e.close(),e=this,this.fire("iron-announce",{text:this.text}),this._canAutoClose&&(this._autoClose=this.async(this.close,this.duration))):e===this&&(e=null),Polymer.IronOverlayBehaviorImpl._openedChanged.apply(this,arguments)},_renderOpened:function(){this.classList.add("paper-toast-open")},_renderClosed:function(){this.classList.remove("paper-toast-open")},_onFitIntoChanged:function(e){this.positionTarget=e}})}()</script></dom-module><dom-module id="notification-manager" assetpath="managers/"><template><style>paper-toast{z-index:1}</style><paper-toast id="toast" text="{{text}}" no-cancel-on-outside-click="[[neg]]"></paper-toast><paper-toast duration="0" text="Connection lost. Reconnecting…" opened="[[!isStreaming]]"></paper-toast></template></dom-module><script>Polymer({is:"notification-manager",behaviors:[window.hassBehavior],properties:{hass:{type:Object},isStreaming:{type:Boolean,bindNuclear:function(t){return t.streamGetters.isStreamingEvents}},neg:{type:Boolean,value:!1},text:{type:String,bindNuclear:function(t){return t.notificationGetters.lastNotificationMessage},observer:"showNotification"}},showNotification:function(t){t&&this.$.toast.show()}})</script><script>Polymer.PaperDialogBehaviorImpl={hostAttributes:{role:"dialog",tabindex:"-1"},properties:{modal:{type:Boolean,value:!1}},observers:["_modalChanged(modal, _readied)"],listeners:{tap:"_onDialogClick"},ready:function(){this.__prevNoCancelOnOutsideClick=this.noCancelOnOutsideClick,this.__prevNoCancelOnEscKey=this.noCancelOnEscKey,this.__prevWithBackdrop=this.withBackdrop},_modalChanged:function(i,e){e&&(i?(this.__prevNoCancelOnOutsideClick=this.noCancelOnOutsideClick,this.__prevNoCancelOnEscKey=this.noCancelOnEscKey,this.__prevWithBackdrop=this.withBackdrop,this.noCancelOnOutsideClick=!0,this.noCancelOnEscKey=!0,this.withBackdrop=!0):(this.noCancelOnOutsideClick=this.noCancelOnOutsideClick&&this.__prevNoCancelOnOutsideClick,this.noCancelOnEscKey=this.noCancelOnEscKey&&this.__prevNoCancelOnEscKey,this.withBackdrop=this.withBackdrop&&this.__prevWithBackdrop))},_updateClosingReasonConfirmed:function(i){this.closingReason=this.closingReason||{},this.closingReason.confirmed=i},_onDialogClick:function(i){for(var e=Polymer.dom(i).path,o=0;o<e.indexOf(this);o++){var t=e[o];if(t.hasAttribute&&(t.hasAttribute("dialog-dismiss")||t.hasAttribute("dialog-confirm"))){this._updateClosingReasonConfirmed(t.hasAttribute("dialog-confirm")),this.close(),i.stopPropagation();break}}}},Polymer.PaperDialogBehavior=[Polymer.IronOverlayBehavior,Polymer.PaperDialogBehaviorImpl]</script><dom-module id="paper-dialog-shared-styles" assetpath="../bower_components/paper-dialog-behavior/"><template><style>:host{display:block;margin:24px 40px;background:var(--paper-dialog-background-color,--primary-background-color);color:var(--paper-dialog-color,--primary-text-color);@apply(--paper-font-body1);@apply(--shadow-elevation-16dp);@apply(--paper-dialog)}:host>::content>*{margin-top:20px;padding:0 24px}:host>::content>.no-padding{padding:0}:host>::content>:first-child{margin-top:24px}:host>::content>:last-child{margin-bottom:24px}:host>::content h2{position:relative;margin:0;@apply(--paper-font-title);@apply(--paper-dialog-title)}:host>::content .buttons{position:relative;padding:8px 8px 8px 24px;margin:0;color:var(--paper-dialog-button-color,--primary-color);@apply(--layout-horizontal);@apply(--layout-end-justified)}</style></template></dom-module><dom-module id="paper-dialog" assetpath="../bower_components/paper-dialog/"><template><style include="paper-dialog-shared-styles"></style><content></content></template></dom-module><script>!function(){Polymer({is:"paper-dialog",behaviors:[Polymer.PaperDialogBehavior,Polymer.NeonAnimationRunnerBehavior],listeners:{"neon-animation-finish":"_onNeonAnimationFinish"},_renderOpened:function(){this.cancelAnimation(),this.playAnimation("entry")},_renderClosed:function(){this.cancelAnimation(),this.playAnimation("exit")},_onNeonAnimationFinish:function(){this.opened?this._finishRenderOpened():this._finishRenderClosed()}})}()</script><dom-module id="paper-dialog-scrollable" assetpath="../bower_components/paper-dialog-scrollable/"><template><style>:host{display:block;@apply(--layout-relative)}:host(.is-scrolled:not(:first-child))::before{content:'';position:absolute;top:0;left:0;right:0;height:1px;background:var(--divider-color)}:host(.can-scroll:not(.scrolled-to-bottom):not(:last-child))::after{content:'';position:absolute;bottom:0;left:0;right:0;height:1px;background:var(--divider-color)}.scrollable{padding:0 24px;@apply(--layout-scroll);@apply(--paper-dialog-scrollable)}.fit{@apply(--layout-fit)}</style><div id="scrollable" class="scrollable"><content></content></div></template></dom-module><script>Polymer({is:"paper-dialog-scrollable",properties:{dialogElement:{type:Object}},listeners:{"scrollable.scroll":"_scroll"},get scrollTarget(){return this.$.scrollable},ready:function(){this._ensureTarget()},attached:function(){this.classList.add("no-padding"),this._ensureTarget(),requestAnimationFrame(this._scroll.bind(this))},_scroll:function(){this.toggleClass("is-scrolled",this.scrollTarget.scrollTop>0),this.toggleClass("can-scroll",this.scrollTarget.offsetHeight<this.scrollTarget.scrollHeight),this.toggleClass("scrolled-to-bottom",this.scrollTarget.scrollTop+this.scrollTarget.offsetHeight>=this.scrollTarget.scrollHeight)},_ensureTarget:function(){this.dialogElement=this.dialogElement||Polymer.dom(this).parentNode,this.dialogElement&&this.dialogElement.behaviors&&this.dialogElement.behaviors.indexOf(Polymer.PaperDialogBehaviorImpl)>=0?(this.dialogElement.sizingTarget=this.scrollTarget,this.scrollTarget.classList.remove("fit")):this.dialogElement&&this.scrollTarget.classList.add("fit")}})</script><script>!function(){"use strict";Polymer.IronJsonpLibraryBehavior={properties:{libraryLoaded:{type:Boolean,value:!1,notify:!0,readOnly:!0},libraryErrorMessage:{type:String,value:null,notify:!0,readOnly:!0}},observers:["_libraryUrlChanged(libraryUrl)"],_libraryUrlChanged:function(r){this._isReady&&this.libraryUrl&&this._loadLibrary()},_libraryLoadCallback:function(r,i){r?(console.warn("Library load failed:",r.message),this._setLibraryErrorMessage(r.message)):(this._setLibraryErrorMessage(null),this._setLibraryLoaded(!0),this.notifyEvent&&this.fire(this.notifyEvent,i))},_loadLibrary:function(){r.require(this.libraryUrl,this._libraryLoadCallback.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.indexOf(this.callbackMacro)>=0))return void(this.error=new Error("IronJsonpLibraryBehavior a %%callback%% parameter is required in libraryUrl"));t=r+"_loaded",i=i.replace(this.callbackMacro,t)}this.callbackName=t,window[this.callbackName]=this.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")||document.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 load"),this.notifyAll(),this.cleanup()},success:function(){this.loaded=!0,this.result=Array.prototype.slice.call(arguments),this.notifyAll(),this.cleanup()},cleanup:function(){delete window[this.callbackName]},notifyAll:function(){this.notifiers.forEach(function(r){r(this.error,this.result)}.bind(this)),this.notifiers=[]},requestNotify:function(r){this.loaded||this.error?r(this.error,this.result):this.notifiers.push(r)}}}()</script><script>Polymer({is:"iron-jsonp-library",behaviors:[Polymer.IronJsonpLibraryBehavior],properties:{libraryUrl:String,callbackName:String,notifyEvent:String}})</script><script>Polymer({is:"google-legacy-loader",behaviors:[Polymer.IronJsonpLibraryBehavior],properties:{libraryUrl:{type:String,value:"https://www.google.com/jsapi?callback=%%callback%%"},notifyEvent:{type:String,value:"api-load"}},get api(){return google}})</script><style>div.charts-tooltip{z-index:200!important}</style><script>Polymer({is:"state-history-chart-timeline",properties:{data:{type:Object,observer:"dataChanged"},isAttached:{type:Boolean,value:!1,observer:"dataChanged"}},created:function(){this.style.display="block"},attached:function(){this.isAttached=!0},dataChanged:function(){this.drawChart()},drawChart:function(){function t(t,e,n,i){var d=e.replace(/_/g," ");a.addRow([t,d,n,i])}var e,a,n,i,d,l=Polymer.dom(this),o=this.data;if(this.isAttached){for(;l.node.lastChild;)l.node.removeChild(l.node.lastChild);o&&0!==o.length&&(e=new window.google.visualization.Timeline(this),a=new window.google.visualization.DataTable,a.addColumn({type:"string",id:"Entity"}),a.addColumn({type:"string",id:"State"}),a.addColumn({type:"date",id:"Start"}),a.addColumn({type:"date",id:"End"}),n=new Date(o.reduce(function(t,e){return Math.min(t,e[0].lastChangedAsDate)},new Date)),i=new Date(n),i.setDate(i.getDate()+1),i>new Date&&(i=new Date),d=0,o.forEach(function(e){var a,n,l=null,o=null;0!==e.length&&(a=e[0].entityDisplay,e.forEach(function(e){null!==l&&e.state!==l?(n=e.lastChangedAsDate,t(a,l,o,n),l=e.state,o=n):null===l&&(l=e.state,o=e.lastChangedAsDate)}),t(a,l,o,i),d++)}),e.draw(a,{height:55+42*d,timeline:{showRowLabels:o.length>1},hAxis:{format:"H:mm"}}))}}})</script><script>!function(){"use strict";function t(t,e){var a,r=[];for(a=t;a<e;a++)r.push(a);return r}function e(t){var e=parseFloat(t);return!isNaN(e)&&isFinite(e)?e:null}Polymer({is:"state-history-chart-line",properties:{data:{type:Object,observer:"dataChanged"},unit:{type:String},isSingleDevice:{type:Boolean,value:!1},isAttached:{type:Boolean,value:!1,observer:"dataChanged"},chartEngine:{type:Object}},created:function(){this.style.display="block"},attached:function(){this.isAttached=!0},dataChanged:function(){this.drawChart()},drawChart:function(){var a,r,n,i,u,o=this.unit,s=this.data;this.isAttached&&(this.chartEngine||(this.chartEngine=new window.google.visualization.LineChart(this)),0!==s.length&&(a={legend:{position:"top"},interpolateNulls:!0,titlePosition:"none",vAxes:{0:{title:o}},hAxis:{format:"H:mm"},chartArea:{left:"60",width:"95%"},explorer:{actions:["dragToZoom","rightClickToReset","dragToPan"],keepInBounds:!0,axis:"horizontal",maxZoomIn:.1}},this.isSingleDevice&&(a.legend.position="none",a.vAxes[0].title=null,a.chartArea.left=40,a.chartArea.height="80%",a.chartArea.top=5,a.enableInteractivity=!1),r=new Date(Math.min.apply(null,s.map(function(t){return t[0].lastChangedAsDate}))),n=new Date(r),n.setDate(n.getDate()+1),n>new Date&&(n=new Date),i=s.map(function(t){function a(t,e){r&&e&&c.push([t[0]].concat(r.slice(1).map(function(t,a){return e[a]?t:null}))),c.push(t),r=t}var r,i,u,o,s=t[t.length-1],l=s.domain,d=s.entityDisplay,c=[],h=new window.google.visualization.DataTable;return h.addColumn({type:"datetime",id:"Time"}),"thermostat"===l?(i=t.reduce(function(t,e){return t||e.attributes.target_temp_high!==e.attributes.target_temp_low},!1),h.addColumn("number",d+" current temperature"),i?(h.addColumn("number",d+" target temperature high"),h.addColumn("number",d+" target temperature low"),o=[!1,!0,!0],u=function(t){var r=e(t.attributes.current_temperature),n=e(t.attributes.target_temp_high),i=e(t.attributes.target_temp_low);a([t.lastUpdatedAsDate,r,n,i],o)}):(h.addColumn("number",d+" target temperature"),o=[!1,!0],u=function(t){var r=e(t.attributes.current_temperature),n=e(t.attributes.temperature);a([t.lastUpdatedAsDate,r,n],o)}),t.forEach(u)):"climate"===l?(i=t.reduce(function(t,e){return t||e.attributes.target_temp_high!==e.attributes.target_temp_low},!1),h.addColumn("number",d+" current temperature"),i?(h.addColumn("number",d+" target temperature high"),h.addColumn("number",d+" target temperature low"),o=[!1,!0,!0],u=function(t){var r=e(t.attributes.current_temperature),n=e(t.attributes.target_temp_high),i=e(t.attributes.target_temp_low);a([t.lastUpdatedAsDate,r,n,i],o)}):(h.addColumn("number",d+" target temperature"),o=[!1,!0],u=function(t){var r=e(t.attributes.current_temperature),n=e(t.attributes.temperature);a([t.lastUpdatedAsDate,r,n],o)}),t.forEach(u)):(h.addColumn("number",d),o="sensor"!==l&&[!0],t.forEach(function(t){var r=e(t.state);a([t.lastChangedAsDate,r],o)})),a([n].concat(r.slice(1)),!1),h.addRows(c),h}),u=1===i.length?i[0]:i.slice(1).reduce(function(e,a){return window.google.visualization.data.join(e,a,"full",[[0,0]],t(1,e.getNumberOfColumns()),t(1,a.getNumberOfColumns()))},i[0]),this.chartEngine.draw(u,a)))}})}()</script><dom-module id="state-history-charts" assetpath="components/"><template><style>:host{display:block}.loading-container{text-align:center;padding:8px}.loading{height:0;overflow:hidden}</style><google-legacy-loader on-api-load="googleApiLoaded"></google-legacy-loader><div hidden$="[[!isLoading]]" class="loading-container"><paper-spinner active="" alt="Updating history data"></paper-spinner></div><div class$="[[computeContentClasses(isLoading)]]"><template is="dom-if" if="[[computeIsEmpty(stateHistory)]]">No state history found.</template><state-history-chart-timeline data="[[groupedStateHistory.timeline]]" is-single-device="[[isSingleDevice]]"></state-history-chart-timeline><template is="dom-repeat" items="[[groupedStateHistory.line]]"><state-history-chart-line unit="[[item.unit]]" data="[[item.data]]" is-single-device="[[isSingleDevice]]"></state-history-chart-line></template></div></template></dom-module><script>Polymer({is:"state-history-charts",properties:{stateHistory:{type:Object},isLoadingData:{type:Boolean,value:!1},apiLoaded:{type:Boolean,value:!1},isLoading:{type:Boolean,computed:"computeIsLoading(isLoadingData, apiLoaded)"},groupedStateHistory:{type:Object,computed:"computeGroupedStateHistory(isLoading, stateHistory)"},isSingleDevice:{type:Boolean,computed:"computeIsSingleDevice(stateHistory)"}},computeIsSingleDevice:function(t){return t&&1===t.size},computeGroupedStateHistory:function(t,e){var i,o={},n=[];return t||!e?{line:[],timeline:[]}:(e.forEach(function(t){var e,i;t&&0!==t.size&&(e=t.find(function(t){return"unit_of_measurement"in t.attributes}),i=!!e&&e.attributes.unit_of_measurement,i?i in o?o[i].push(t.toArray()):o[i]=[t.toArray()]:n.push(t.toArray()))}),n=n.length>0&&n,i=Object.keys(o).map(function(t){return{unit:t,data:o[t]}}),{line:i,timeline:n})},googleApiLoaded:function(){window.google.load("visualization","1",{packages:["timeline","corechart"],callback:function(){this.apiLoaded=!0}.bind(this)})},computeContentClasses:function(t){return t?"loading":""},computeIsLoading:function(t,e){return t||!e},computeIsEmpty:function(t){return t&&0===t.size}})</script><dom-module id="more-info-automation" assetpath="more-infos/"><template><style>paper-button{color:var(--default-primary-color);font-weight:500;top:3px;height:37px}</style><p>Last triggered:<ha-relative-time datetime="[[stateObj.attributes.last_triggered]]"></ha-relative-time></p><paper-button on-tap="handleTriggerTapped">TRIGGER</paper-button></template></dom-module><script>Polymer({is:"more-info-automation",properties:{hass:{type:Object},stateObj:{type:Object}},handleTriggerTapped:function(){this.hass.serviceActions.callService("automation","trigger",{entity_id:this.stateObj.entityId})}})</script><dom-module id="paper-range-slider" assetpath="../bower_components/paper-range-slider/"><template><style>:host{--paper-range-slider-width:200px;@apply(--layout);@apply(--layout-justified);@apply(--layout-center);--paper-range-slider-lower-color:var(--paper-grey-400);--paper-range-slider-active-color:var(--primary-color);--paper-range-slider-higher-color:var(--paper-grey-400);--paper-range-slider-knob-color:var(--primary-color);--paper-range-slider-pin-color:var(--primary-color);--paper-range-slider-pin-start-color:var(--paper-grey-400);--paper-range-slider-knob-start-color:transparent;--paper-range-slider-knob-start-border-color:var(--paper-grey-400)}#sliderOuterDiv_0{display:inline-block;width:var(--paper-range-slider-width)}#sliderOuterDiv_1{position:relative;height:calc(30px + var(--paper-single-range-slider-height,2px));margin-left:0;margin-right:0;margin-top:0;margin-bottom:0}.sliderKnobMinMax{position:absolute;left:0;top:0;margin-left:calc(-15px - var(--paper-single-range-slider-height,2px)/ 2);width:calc(30px + var(--paper-single-range-slider-height,2px));height:calc(30px + var(--paper-single-range-slider-height,2px))}.divSpanWidth{position:absolute;width:100%;display:block;top:0}#sliderMax{--paper-single-range-slider-bar-color:transparent;--paper-single-range-slider-knob-color:var(--paper-range-slider-knob-color);--paper-single-range-slider-pin-color:var(--paper-range-slider-pin-color);--paper-single-range-slider-active-color:var(--paper-range-slider-active-color);--paper-single-range-slider-secondary-color:var(--paper-range-slider-higher-color);--paper-single-range-slider-pin-start-color:var(--paper-range-slider-pin-start-color);--paper-single-range-slider-knob-start-color:var(--paper-range-slider-knob-start-color);--paper-single-range-slider-knob-start-border-color:var(--paper-range-slider-knob-start-border-color)}#sliderMin{--paper-single-range-slider-active-color:var(--paper-range-slider-lower-color);--paper-single-range-slider-secondary-color:transparent;--paper-single-range-slider-knob-color:var(--paper-range-slider-knob-color);--paper-single-range-slider-pin-color:var(--paper-range-slider-pin-color);--paper-single-range-slider-pin-start-color:var(--paper-range-slider-pin-start-color);--paper-single-range-slider-knob-start-color:var(--paper-range-slider-knob-start-color);--paper-single-range-slider-knob-start-border-color:var(--paper-range-slider-knob-start-border-color)}</style><div id="sliderOuterDiv_0" style=""><div id="sliderOuterDiv_1"><div id="backDiv" class="divSpanWidth" on-down="_backDivDown" on-tap="_backDivTap" on-up="_backDivUp" on-track="_backDivOnTrack" on-transitionend="_backDivTransEnd"><div id="backDivInner_0" style="line-height:200%"><br></div></div><div id="sliderKnobMin" class="sliderKnobMinMax" on-down="_backDivDown" on-up="_backDivUp" on-track="_sliderKnobMinOnTrack"></div><div id="sliderKnobMax" class="sliderKnobMinMax" on-down="_backDivDown" on-up="_backDivUp" on-track="_sliderKnobMaxOnTrack"></div><div class="divSpanWidth" style="pointer-events:none"><paper-single-range-slider id="sliderMax" disabled$="[[disabled]]" on-down="_sliderMaxDown" on-up="_sliderMaxUp" step="[[step]]" min="[[min]]" max="[[max]]" value="[[valueMax]]" secondary-progress="[[max]]" style="width:100%"></paper-single-range-slider></div><div class="divSpanWidth" style="pointer-events:none"><paper-single-range-slider id="sliderMin" disabled$="[[disabled]]" on-down="_sliderMinDown" on-up="_sliderMinUp" noink="" step="[[step]]" min="[[min]]" max="[[max]]" value="[[valueMin]]" style="width:100%"></paper-single-range-slider></div><div id="backDivInner_1" style="line-height:100%"><br></div></div></div></template><script>Polymer({is:"paper-range-slider",behaviors:[Polymer.IronRangeBehavior],properties:{sliderWidth:{type:String,value:"",notify:!0,reflectToAttribute:!0},style:{type:String,value:"",notify:!0,reflectToAttribute:!0},min:{type:Number,value:0,notify:!0,reflectToAttribute:!0},max:{type:Number,value:100,notify:!0,reflectToAttribute:!0},valueMin:{type:Number,value:0,notify:!0,reflectToAttribute:!0},valueMax:{type:Number,value:100,notify:!0,reflectToAttribute:!0},step:{type:Number,value:1,notify:!0,reflectToAttribute:!0},valueDiffMin:{type:Number,value:0,notify:!0,reflectToAttribute:!0},valueDiffMax:{type:Number,value:0,notify:!0,reflectToAttribute:!0},alwaysShowPin:{type:Boolean,value:!1,notify:!0},pin:{type:Boolean,value:!1,notify:!0},snaps:{type:Boolean,value:!1,notify:!0},disabled:{type:Boolean,value:!1,notify:!0},singleSlider:{type:Boolean,value:!1,notify:!0},transDuration:{type:Number,value:250},tapValueExtend:{type:Boolean,value:!0,notify:!0},tapValueReduce:{type:Boolean,value:!1,notify:!0},tapValueMove:{type:Boolean,value:!1,notify:!0}},ready:function(){function i(i){return void 0!=i&&null!=i}i(this._nInitTries)||(this._nInitTries=0);var t=this.$$("#sliderMax").$$("#sliderContainer");if(i(t)&&(t=t.offsetWidth>0),i(t)&&(t=this.$$("#sliderMin").$$("#sliderContainer")),i(t)&&(t=t.offsetWidth>0),i(t))this._renderedReady();else{if(this._nInitTries<1e3){var e=this;setTimeout(function(){e.ready()},10)}else console.error("could not properly initialize the underlying paper-single-range-slider elements ...");this._nInitTries++}},_renderedReady:function(){this.init(),this._setPadding();var i=this;this.$$("#sliderMin").addEventListener("immediate-value-change",function(t){i._setValueMinMax(i._getValuesMinMax(this.immediateValue,null)),i.$.sliderMin._expandKnob(),i.$.sliderMax._expandKnob()}),this.$$("#sliderMax").addEventListener("immediate-value-change",function(t){i._setValueMinMax(i._getValuesMinMax(null,this.immediateValue))}),this.$$("#sliderMin").addEventListener("change",function(t){i._setValueMinMax(i._getValuesMinMax(this.immediateValue,null)),i.alwaysShowPin&&i.$.sliderMin._expandKnob()}),this.$$("#sliderMax").addEventListener("change",function(t){i._setValueMinMax(i._getValuesMinMax(null,this.immediateValue)),i.alwaysShowPin&&i.$.sliderMax._expandKnob()})},_setPadding:function(){var i=document.createElement("div");i.setAttribute("style","position:absolute; top:0px; opacity:0;"),i.innerHTML="invisibleText",document.body.insertBefore(i,document.body.children[0]);var t=i.offsetHeight/2;this.style.paddingTop=t+"px",this.style.paddingBottom=t+"px",i.parentNode.removeChild(i)},_setValueDiff:function(){this._valueDiffMax=Math.max(this.valueDiffMax,0),this._valueDiffMin=Math.max(this.valueDiffMin,0)},_getValuesMinMax:function(i,t){var e=null!=i&&i>=this.min&&i<=this.max,s=null!=t&&t>=this.min&&t<=this.max;if(!e&&!s)return[this.valueMin,this.valueMax];var n=e?i:this.valueMin,a=s?t:this.valueMax;n=Math.min(Math.max(n,this.min),this.max),a=Math.min(Math.max(a,this.min),this.max);var l=a-n;return e?l<this._valueDiffMin?(a=Math.min(this.max,n+this._valueDiffMin),l=a-n,l<this._valueDiffMin&&(n=a-this._valueDiffMin)):l>this._valueDiffMax&&this._valueDiffMax>0&&(a=n+this._valueDiffMax):l<this._valueDiffMin?(n=Math.max(this.min,a-this._valueDiffMin),l=a-n,l<this._valueDiffMin&&(a=n+this._valueDiffMin)):l>this._valueDiffMax&&this._valueDiffMax>0&&(n=a-this._valueDiffMax),[n,a]},_setValueMin:function(i){i=Math.max(i,this.min),this.$$("#sliderMin").value=i,this.valueMin=i},_setValueMax:function(i){i=Math.min(i,this.max),this.$$("#sliderMax").value=i,this.valueMax=i},_setValueMinMax:function(i){this._setValueMin(i[0]),this._setValueMax(i[1]),this._updateSliderKnobMinMax(),this.updateValues()},_setValues:function(i,t){null!=i&&(i<this.min||i>this.max)&&(i=null),null!=t&&(t<this.min||t>this.max)&&(t=null),null!=i&&null!=t&&(i=Math.min(i,t)),this._setValueMinMax(this._getValuesMinMax(i,t))},_updateSliderKnobMinMax:function(){var i=this.$$("#sliderMax").$$("#sliderContainer").offsetWidth,t=i*(this.valueMin-this.min)/(this.max-this.min)+.5*this.$$("#sliderKnobMin").offsetWidth,e=i*(this.valueMax-this.min)/(this.max-this.min)+.5*this.$$("#sliderKnobMax").offsetWidth;this.$$("#sliderKnobMin").style.left=t+"px",this.$$("#sliderKnobMax").style.left=e+"px"},_backDivOnTrack:function(i){switch(i.stopPropagation(),i.detail.state){case"start":this._backDivTrackStart(i);break;case"track":this._backDivTrackDuring(i);break;case"end":this._backDivTrackEnd()}},_backDivTrackStart:function(i){},_backDivTrackDuring:function(i){this._x1_Min=this._x0_Min+i.detail.dx;var t=this._calcStep(this._getRatioPos(this.$$("#sliderMin"),this._x1_Min/this._xWidth));this._x1_Max=this._x0_Max+i.detail.dx;var e=this._calcStep(this._getRatioPos(this.$$("#sliderMax"),this._x1_Max/this._xWidth));t>=this.min&&e<=this.max&&this._setValuesWithCurrentDiff(t,e,!1)},_setValuesWithCurrentDiff:function(i,t,e){var s=this._valueDiffMin,n=this._valueDiffMax;this._valueDiffMin=this.valueMax-this.valueMin,this._valueDiffMax=this.valueMax-this.valueMin,e?this.setValues(i,t):this._setValues(i,t),this._valueDiffMin=s,this._valueDiffMax=n},_backDivTrackEnd:function(){},_sliderKnobMinOnTrack:function(i){this._x1_Min=this._x0_Min+i.detail.dx;var t=this._calcStep(this._getRatioPos(this.$$("#sliderMin"),this._x1_Min/this._xWidth));this._setValues(t,null)},_sliderKnobMaxOnTrack:function(i){this._x1_Max=this._x0_Max+i.detail.dx;var t=this._calcStep(this._getRatioPos(this.$$("#sliderMax"),this._x1_Max/this._xWidth));this._setValues(null,t)},_sliderMinDown:function(){this.$$("#sliderMax")._expandKnob()},_sliderMaxDown:function(i){this.singleSlider?this._setValues(null,this._getEventValue(i)):this.$$("#sliderMin")._expandKnob()},_sliderMinUp:function(){this.alwaysShowPin?this.$$("#sliderMin")._expandKnob():this.$$("#sliderMax")._resetKnob()},_sliderMaxUp:function(){this.alwaysShowPin?this.$$("#sliderMax")._expandKnob():(this.$$("#sliderMin")._resetKnob(),this.singleSlider&&this.$$("#sliderMax")._resetKnob())},_getEventValue:function(i){var t=this.$$("#sliderMax").$$("#sliderContainer").offsetWidth,e=this.$$("#sliderMax").$$("#sliderContainer").getBoundingClientRect(),s=(i.detail.x-e.left)/t,n=this.min+s*(this.max-this.min);return n},_backDivTap:function(i){this._setValueNow=function(i,t){this.tapValueMove?this._setValuesWithCurrentDiff(i,t,!0):this.setValues(i,t)};var t=this._getEventValue(i);if(t>this.valueMin&&t<this.valueMax){if(this.tapValueReduce){var e=t<this.valueMin+(this.valueMax-this.valueMin)/2;e?this._setValueNow(t,null):this._setValueNow(null,t)}}else(this.tapValueExtend||this.tapValueMove)&&(t<this.valueMin&&this._setValueNow(t,null),t>this.valueMax&&this._setValueNow(null,t))},_backDivDown:function(i){this._sliderMinDown(),this._sliderMaxDown(),this._xWidth=this.$$("#sliderMin").$$("#sliderBar").offsetWidth,this._x0_Min=this.$$("#sliderMin").ratio*this._xWidth,this._x0_Max=this.$$("#sliderMax").ratio*this._xWidth},_backDivUp:function(){this._sliderMinUp(),this._sliderMaxUp()},_backDivTransEnd:function(i){},_getRatioPos:function(i,t){return Math.max(i.min,Math.min(i.max,(i.max-i.min)*t+i.min))},init:function(){this.setSingleSlider(this.singleSlider),this.setDisabled(this.disabled),this.alwaysShowPin&&(this.pin=!0),this.$$("#sliderMin").pin=this.pin,this.$$("#sliderMax").pin=this.pin,this.$$("#sliderMin").snaps=this.snaps,this.$$("#sliderMax").snaps=this.snaps,""!=this.sliderWidth&&(this.customStyle["--paper-range-slider-width"]=this.sliderWidth,this.updateStyles()),this.$$("#sliderMin").$$("#sliderBar").$$("#progressContainer").style.background="transparent",this._prevUpdateValues=[this.min,this.max],this._setValueDiff(),this._setValueMinMax(this._getValuesMinMax(this.valueMin,this.valueMax)),this.alwaysShowPin&&(this.$$("#sliderMin")._expandKnob(),this.$$("#sliderMax")._expandKnob())},setValues:function(i,t){this.$$("#sliderMin")._setTransiting(!0),this.$$("#sliderMax")._setTransiting(!0),this._setValues(i,t);var e=this;setTimeout(function(){e.$.sliderMin._setTransiting(!1),e.$.sliderMax._setTransiting(!1)},e.transDuration)},updateValues:function(){this._prevUpdateValues[0]==this.valueMin&&this._prevUpdateValues[1]==this.valueMax||(this._prevUpdateValues=[this.valueMin,this.valueMax],this.async(function(){this.fire("updateValues")}))},setMin:function(i){this.max<i&&(this.max=i),this.min=i,this._prevUpdateValues=[this.min,this.max],this.valueMin<this.min?this._setValues(this.min,null):this._updateSliderKnobMinMax()},setMax:function(i){this.min>i&&(this.min=i),this.max=i,this._prevUpdateValues=[this.min,this.max],this.valueMax>this.max?this._setValues(null,this.max):this._updateSliderKnobMinMax()},setStep:function(i){this.step=i},setValueDiffMin:function(i){this._valueDiffMin=i},setValueDiffMax:function(i){this._valueDiffMax=i},setTapValueExtend:function(i){this.tapValueExtend=i},setTapValueReduce:function(i){this.tapValueReduce=i},setTapValueMove:function(i){this.tapValueMove=i},setDisabled:function(i){this.disabled=i;var t=i?"none":"auto";this.$$("#sliderMax").$$("#sliderKnobInner").style.pointerEvents=t,this.$$("#sliderMin").$$("#sliderKnobInner").style.pointerEvents=t,this.$$("#sliderOuterDiv_1").style.pointerEvents=t,this.$$("#sliderKnobMin").style.pointerEvents=t,this.$$("#sliderKnobMax").style.pointerEvents=t},setSingleSlider:function(i){this.singleSlider=i,i?(this.$$("#backDiv").style.display="none",this.$$("#sliderMax").style.pointerEvents="auto",this.$$("#sliderMax").style.display="",this.$$("#sliderMin").style.display="none",this.$$("#sliderKnobMin").style.pointerEvents="none",this.$$("#sliderKnobMax").style.pointerEvents="none"):(this.$$("#backDiv").style.display="block",this.$$("#sliderMax").style.pointerEvents="none",this.$$("#sliderMax").style.display="",this.$$("#sliderMin").style.display="",this.$$("#sliderKnobMin").style.pointerEvents="auto",this.$$("#sliderKnobMax").style.pointerEvents="auto"),this.$$("#sliderMax").$$("#sliderContainer").style.pointerEvents=this.singleSlider?"auto":"none",this.$$("#sliderMin").$$("#sliderContainer").style.pointerEvents="none"}})</script></dom-module><dom-module id="paper-single-range-slider" assetpath="../bower_components/paper-range-slider/"><template strip-whitespace=""><style>:host{@apply(--layout);@apply(--layout-justified);@apply(--layout-center);width:200px;cursor:default;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;--paper-progress-active-color:var(--paper-single-range-slider-active-color, --google-blue-700);--paper-progress-secondary-color:var(--paper-single-range-slider-secondary-color, --google-blue-300);--paper-progress-disabled-active-color:var(--paper-single-range-slider-disabled-active-color, --paper-grey-400);--paper-progress-disabled-secondary-color:var(--paper-single-range-slider-disabled-secondary-color, --paper-grey-400)}:host(:focus){outline:0}#sliderContainer{position:relative;width:100%;height:calc(30px + var(--paper-single-range-slider-height,2px));margin-left:calc(15px + var(--paper-single-range-slider-height,2px)/ 2);margin-right:calc(15px + var(--paper-single-range-slider-height,2px)/ 2)}#sliderContainer:focus{outline:0}#sliderContainer.editable{margin-top:12px;margin-bottom:12px}.bar-container{position:absolute;top:0;bottom:0;left:0;right:0;overflow:hidden}.ring>.bar-container{left:calc(5px + var(--paper-single-range-slider-height,2px)/ 2);transition:left .18s ease}.ring.expand.dragging>.bar-container{transition:none}.ring.expand:not(.pin)>.bar-container{left:calc(8px + var(--paper-single-range-slider-height,2px)/ 2)}#sliderBar{padding:15px 0;width:100%;background-color:var(--paper-single-range-slider-bar-color,transparent);--paper-progress-container-color:var(--paper-single-range-slider-container-color, --paper-grey-400);--paper-progress-height:var(--paper-single-range-slider-height, 2px)}.slider-markers{position:absolute;top:calc(14px + var(--paper-single-range-slider-height,2px)/ 2);height:var(--paper-single-range-slider-height,2px);left:0;right:-1px;box-sizing:border-box;pointer-events:none;@apply(--layout-horizontal)}.slider-marker{@apply(--layout-flex)}.slider-marker::after,.slider-markers::after{content:"";display:block;margin-left:-1px;width:2px;height:2px;border-radius:50%;background-color:#000}#sliderKnob{position:absolute;left:0;top:0;margin-left:calc(-15px - var(--paper-single-range-slider-height,2px)/ 2);width:calc(30px + var(--paper-single-range-slider-height,2px));height:calc(30px + var(--paper-single-range-slider-height,2px))}.transiting>#sliderKnob{transition:left 80ms ease}#sliderKnob:focus{outline:0}#sliderKnob.dragging{transition:none}.snaps>#sliderKnob.dragging{transition:-webkit-transform 80ms ease;transition:transform 80ms ease}#sliderKnobInner{margin:10px;width:calc(100% - 20px);height:calc(100% - 20px);background-color:var(--paper-single-range-slider-knob-color,--google-blue-700);border:2px solid var(--paper-single-range-slider-knob-color,--google-blue-700);border-radius:50%;-moz-box-sizing:border-box;box-sizing:border-box;transition-property:-webkit-transform,background-color,border;transition-property:transform,background-color,border;transition-duration:.18s;transition-timing-function:ease}.expand:not(.pin)>#sliderKnob>#sliderKnobInner{-webkit-transform:scale(1.5);transform:scale(1.5)}.ring>#sliderKnob>#sliderKnobInner{background-color:var(--paper-single-range-slider-knob-start-color,transparent);border:2px solid var(--paper-single-range-slider-knob-start-border-color,--paper-grey-400)}#sliderKnobInner::before{background-color:var(--paper-single-range-slider-pin-color,--google-blue-700)}.pin>#sliderKnob>#sliderKnobInner::before{content:"";position:absolute;top:0;left:50%;margin-left:-13px;width:26px;height:26px;border-radius:50% 50% 50% 0;-webkit-transform:rotate(-45deg) scale(0) translate(0);transform:rotate(-45deg) scale(0) translate(0)}#sliderKnobInner::after,#sliderKnobInner::before{transition:-webkit-transform .18s ease,background-color .18s ease;transition:transform .18s ease,background-color .18s ease}.pin.ring>#sliderKnob>#sliderKnobInner::before{background-color:var(--paper-single-range-slider-pin-start-color,--paper-grey-400)}.pin.expand>#sliderKnob>#sliderKnobInner::before{-webkit-transform:rotate(-45deg) scale(1) translate(17px,-17px);transform:rotate(-45deg) scale(1) translate(17px,-17px)}.pin>#sliderKnob>#sliderKnobInner::after{content:attr(value);position:absolute;top:0;left:50%;margin-left:-16px;width:32px;height:26px;text-align:center;color:var(--paper-single-range-slider-font-color,#fff);font-size:10px;-webkit-transform:scale(0) translate(0);transform:scale(0) translate(0)}.pin.expand>#sliderKnob>#sliderKnobInner::after{-webkit-transform:scale(1) translate(0,-17px);transform:scale(1) translate(0,-17px)}.slider-input{width:50px;overflow:hidden;--paper-input-container-input:{text-align:center};@apply(--paper-single-range-slider-input)}#sliderContainer.disabled{pointer-events:none}.disabled>#sliderKnob>#sliderKnobInner{background-color:var(--paper-single-range-slider-disabled-knob-color,--paper-grey-400);border:2px solid var(--paper-single-range-slider-disabled-knob-color,--paper-grey-400);-webkit-transform:scale3d(.75,.75,1);transform:scale3d(.75,.75,1)}.disabled.ring>#sliderKnob>#sliderKnobInner{background-color:var(--paper-single-range-slider-knob-start-color,transparent);border:2px solid var(--paper-single-range-slider-knob-start-border-color,--paper-grey-400)}paper-ripple{color:var(--paper-single-range-slider-knob-color,--google-blue-700)}</style><div id="sliderContainer" class$="[[_getClassNames(disabled, pin, snaps, immediateValue, min, expand, dragging, transiting, editable)]]"><div class="bar-container"><paper-progress disabled$="[[disabled]]" id="sliderBar" aria-hidden="true" min="[[min]]" max="[[max]]" step="[[step]]" value="[[immediateValue]]" secondary-progress="[[secondaryProgress]]" on-down="_bardown" on-up="_resetKnob" on-track="_onTrack"></paper-progress></div><template is="dom-if" if="[[snaps]]"><div class="slider-markers"><template is="dom-repeat" items="[[markers]]"><div class="slider-marker"></div></template></div></template><div id="sliderKnob" on-down="_knobdown" on-up="_resetKnob" on-track="_onTrack" on-transitionend="_knobTransitionEnd"><div id="sliderKnobInner" value$="[[immediateValue]]"></div></div></div><template is="dom-if" if="[[editable]]"><paper-input id="input" type="number" step="[[step]]" min="[[min]]" max="[[max]]" class="slider-input" disabled$="[[disabled]]" value="[[immediateValue]]" on-change="_changeValue" on-keydown="_inputKeyDown" no-label-float=""></paper-input></template></template><script>Polymer({is:"paper-single-range-slider",behaviors:[Polymer.IronA11yKeysBehavior,Polymer.IronFormElementBehavior,Polymer.PaperInkyFocusBehavior,Polymer.IronRangeBehavior],properties:{snaps:{type:Boolean,value:!1,notify:!0},pin:{type:Boolean,value:!1,notify:!0},secondaryProgress:{type:Number,value:0,notify:!0,observer:"_secondaryProgressChanged"},editable:{type:Boolean,value:!1},immediateValue:{type:Number,value:0,readOnly:!0,notify:!0},maxMarkers:{type:Number,value:0,notify:!0},expand:{type:Boolean,value:!1,readOnly:!0},dragging:{type:Boolean,value:!1,readOnly:!0},transiting:{type:Boolean,value:!1,readOnly:!0},markers:{type:Array,readOnly:!0,value:[]}},observers:["_updateKnob(value, min, max, snaps, step)","_valueChanged(value)","_immediateValueChanged(immediateValue)","_updateMarkers(maxMarkers, min, max, snaps)"],hostAttributes:{role:"slider",tabindex:0},keyBindings:{"left down pagedown home":"_decrementKey","right up pageup end":"_incrementKey"},increment:function(){this.value=this._clampValue(this.value+this.step)},decrement:function(){this.value=this._clampValue(this.value-this.step)},_updateKnob:function(t,e,i,s,a){this.setAttribute("aria-valuemin",e),this.setAttribute("aria-valuemax",i),this.setAttribute("aria-valuenow",t),this._positionKnob(this._calcRatio(t))},_valueChanged:function(){this.fire("value-change")},_immediateValueChanged:function(){this.dragging?this.fire("immediate-value-change"):this.value=this.immediateValue},_secondaryProgressChanged:function(){this.secondaryProgress=this._clampValue(this.secondaryProgress)},_expandKnob:function(){this._setExpand(!0)},_resetKnob:function(){this.cancelDebouncer("expandKnob"),this._setExpand(!1)},_positionKnob:function(t){this._setImmediateValue(this._calcStep(this._calcKnobPosition(t))),this._setRatio(this._calcRatio(this.immediateValue)),this.$.sliderKnob.style.left=100*this.ratio+"%",this.dragging&&(this._knobstartx=this.ratio*this._w,this.translate3d(0,0,0,this.$.sliderKnob))},_calcKnobPosition:function(t){return(this.max-this.min)*t+this.min},_onTrack:function(t){switch(t.stopPropagation(),t.detail.state){case"start":this._trackStart(t);break;case"track":this._trackX(t);break;case"end":this._trackEnd()}},_trackStart:function(t){this._w=this.$.sliderBar.offsetWidth,this._x=this.ratio*this._w,this._startx=this._x,this._knobstartx=this._startx,this._minx=-this._startx,this._maxx=this._w-this._startx,this.$.sliderKnob.classList.add("dragging"),this._setDragging(!0)},_trackX:function(t){this.dragging||this._trackStart(t);var e=Math.min(this._maxx,Math.max(this._minx,t.detail.dx));this._x=this._startx+e;var i=this._calcStep(this._calcKnobPosition(this._x/this._w));this._setImmediateValue(i);var s=this._calcRatio(this.immediateValue)*this._w-this._knobstartx;this.translate3d(s+"px",0,0,this.$.sliderKnob)},_trackEnd:function(){var t=this.$.sliderKnob.style;this.$.sliderKnob.classList.remove("dragging"),this._setDragging(!1),this._resetKnob(),this.value=this.immediateValue,t.transform=t.webkitTransform="",this.fire("change")},_knobdown:function(t){this._expandKnob(),t.preventDefault(),this.focus()},_bardown:function(t){this._w=this.$.sliderBar.offsetWidth;var e=this.$.sliderBar.getBoundingClientRect(),i=(t.detail.x-e.left)/this._w,s=this.ratio;this._setTransiting(!0),this._positionKnob(i),this.debounce("expandKnob",this._expandKnob,60),s===this.ratio&&this._setTransiting(!1),this.async(function(){this.fire("change")}),t.preventDefault(),this.focus()},_knobTransitionEnd:function(t){t.target===this.$.sliderKnob&&this._setTransiting(!1)},_updateMarkers:function(t,e,i,s){s||this._setMarkers([]);var a=Math.round((i-e)/this.step);a>t&&(a=t),this._setMarkers(new Array(a))},_mergeClasses:function(t){return Object.keys(t).filter(function(e){return t[e]}).join(" ")},_getClassNames:function(){return this._mergeClasses({disabled:this.disabled,pin:this.pin,snaps:this.snaps,ring:this.immediateValue<=this.min,expand:this.expand,dragging:this.dragging,transiting:this.transiting,editable:this.editable})},_incrementKey:function(t){this.disabled||("end"===t.detail.key?this.value=this.max:this.increment(),this.fire("change"))},_decrementKey:function(t){this.disabled||("home"===t.detail.key?this.value=this.min:this.decrement(),this.fire("change"))},_changeValue:function(t){this.value=t.target.value,this.fire("change")},_inputKeyDown:function(t){t.stopPropagation()},_createRipple:function(){return this._rippleContainer=this.$.sliderKnob,Polymer.PaperInkyFocusBehaviorImpl._createRipple.call(this)},_focusedChanged:function(t){t&&this.ensureRipple(),this.hasRipple()&&(t?this._ripple.style.display="":this._ripple.style.display="none",this._ripple.holdDown=t)}})</script></dom-module><dom-module id="more-info-climate" assetpath="more-infos/"><template><style is="custom-style" include="iron-flex"></style><style>:host{color:var(--primary-text-color);--paper-input-container-input:{text-transform:capitalize};}.container-aux_heat,.container-away_mode,.container-fan_list,.container-humidity,.container-operation_list,.container-swing_list,.container-temperature{display:none}.has-aux_heat .container-aux_heat,.has-away_mode .container-away_mode,.has-fan_list .container-fan_list,.has-humidity .container-humidity,.has-operation_list .container-operation_list,.has-swing_list .container-swing_list,.has-temperature .container-temperature{display:block}.container-fan_list iron-icon,.container-operation_list iron-icon,.container-swing_list iron-icon{margin:22px 16px 0 0}paper-dropdown-menu{width:100%}paper-slider{width:100%}.auto paper-slider{--paper-slider-active-color:var(--paper-orange-400);--paper-slider-secondary-color:var(--paper-blue-400)}.heat paper-slider{--paper-slider-active-color:var(--paper-orange-400);--paper-slider-secondary-color:var(--paper-green-400)}.cool paper-slider{--paper-slider-active-color:var(--paper-green-400);--paper-slider-secondary-color:var(--paper-blue-400)}.humidity{--paper-slider-active-color:var(--paper-blue-400);--paper-slider-secondary-color:var(--paper-blue-400)}paper-range-slider{--paper-range-slider-lower-color:var(--paper-orange-400);--paper-range-slider-active-color:var(--paper-green-400);--paper-range-slider-higher-color:var(--paper-blue-400);--paper-range-slider-knob-color:var(--primary-color);--paper-range-slider-pin-color:var(--primary-color);--paper-range-slider-width:100%}.single-row{padding:8px 0}.capitalize{text-transform:capitalize}</style><div class$="[[computeClassNames(stateObj)]]"><div class="container-temperature"><div class$="single-row, [[stateObj.attributes.operation_mode]]"><div hidden$="[[computeTargetTempHidden(stateObj)]]">Target Temperature</div><paper-slider min="[[stateObj.attributes.min_temp]]" max="[[stateObj.attributes.max_temp]]" secondary-progress="[[stateObj.attributes.max_temp]]" pin="" step="0.5" value="[[stateObj.attributes.temperature]]" hidden$="[[computeHideTempSlider(stateObj)]]" on-change="targetTemperatureSliderChanged"></paper-slider><paper-range-slider min="[[stateObj.attributes.min_temp]]" max="[[stateObj.attributes.max_temp]]" pin="" step="0.5" value-min="[[stateObj.attributes.target_temp_low]]" value-max="[[stateObj.attributes.target_temp_high]]" value-diff-min="2" hidden$="[[computeHideTempRangeSlider(stateObj)]]" on-change="targetTemperatureRangeSliderChanged"></paper-range-slider></div></div><div class="container-humidity"><div class="single-row"><div>Target Humidity</div><paper-slider class="humidity" min="[[stateObj.attributes.min_humidity]]" max="[[stateObj.attributes.max_humidity]]" secondary-progress="[[stateObj.attributes.max_humidity]]" step="1" pin="" value="[[stateObj.attributes.humidity]]" on-change="targetHumiditySliderChanged"></paper-slider></div></div><div class="container-operation_list"><div class="controls"><paper-dropdown-menu label-float="" label="Operation"><paper-menu class="dropdown-content" selected="{{operationIndex}}"><template is="dom-repeat" items="[[stateObj.attributes.operation_list]]"><paper-item class="capitalize">[[item]]</paper-item></template></paper-menu></paper-dropdown-menu></div></div><div class="container-fan_list"><paper-dropdown-menu label-float="" label="Fan Mode"><paper-menu class="dropdown-content" selected="{{fanIndex}}"><template is="dom-repeat" items="[[stateObj.attributes.fan_list]]"><paper-item>[[item]]</paper-item></template></paper-menu></paper-dropdown-menu></div><div class="container-swing_list"><paper-dropdown-menu label-float="" label="Swing Mode"><paper-menu class="dropdown-content" selected="{{swingIndex}}"><template is="dom-repeat" items="[[stateObj.attributes.swing_list]]"><paper-item>[[item]]</paper-item></template></paper-menu></paper-dropdown-menu></div><div class="container-away_mode"><div class="center horizontal layout single-row"><div class="flex">Away Mode</div><paper-toggle-button checked="[[awayToggleChecked]]" on-change="awayToggleChanged"></paper-toggle-button></div></div><div class="container-aux_heat"><div class="center horizontal layout single-row"><div class="flex">Aux Heat</div><paper-toggle-button checked="[[auxToggleChecked]]" on-change="auxToggleChanged"></paper-toggle-button></div></div></div></template></dom-module><script>Polymer({is:"more-info-climate",properties:{hass:{type:Object},stateObj:{type:Object,observer:"stateObjChanged"},operationIndex:{type:Number,value:-1,observer:"handleOperationmodeChanged"},fanIndex:{type:Number,value:-1,observer:"handleFanmodeChanged"},swingIndex:{type:Number,value:-1,observer:"handleSwingmodeChanged"},awayToggleChecked:{type:Boolean},auxToggleChecked:{type:Boolean}},stateObjChanged:function(e){this.targetTemperatureSliderValue=e.attributes.temperature,this.awayToggleChecked="on"===e.attributes.away_mode,this.auxheatToggleChecked="on"===e.attributes.aux_heat,e.attributes.fan_list?this.fanIndex=e.attributes.fan_list.indexOf(e.attributes.fan_mode):this.fanIndex=-1,e.attributes.operation_list?this.operationIndex=e.attributes.operation_list.indexOf(e.attributes.operation_mode):this.operationIndex=-1,e.attributes.swing_list?this.swingIndex=e.attributes.swing_list.indexOf(e.attributes.swing_mode):this.swingIndex=-1,this.async(function(){this.fire("iron-resize")}.bind(this),500)},computeTargetTempHidden:function(e){return!e.attributes.temperature&&!e.attributes.target_temp_low&&!e.attributes.target_temp_high},computeHideTempRangeSlider:function(e){return!e.attributes.target_temp_low&&!e.attributes.target_temp_high},computeHideTempSlider:function(e){return!e.attributes.temperature},computeClassNames:function(e){return"more-info-climate "+window.hassUtil.attributeClassNames(e,["away_mode","aux_heat","temperature","humidity","operation_list","fan_list","swing_list"])},targetTemperatureSliderChanged:function(e){var t=e.target.value;t!==this.stateObj.attributes.temperature&&this.callServiceHelper("set_temperature",{temperature:t})},targetTemperatureRangeSliderChanged:function(e){var t=e.currentTarget.valueMin,a=e.currentTarget.valueMax;t===this.stateObj.attributes.target_temp_low&&a===this.stateObj.attributes.target_temp_high||this.callServiceHelper("set_temperature",{target_temp_low:t,target_temp_high:a})},targetHumiditySliderChanged:function(e){var t=e.target.value;t!==this.stateObj.attributes.humidity&&this.callServiceHelper("set_humidity",{humidity:t})},awayToggleChanged:function(e){var t="on"===this.stateObj.attributes.away_mode,a=e.target.checked;t!==a&&this.callServiceHelper("set_away_mode",{away_mode:a})},auxToggleChanged:function(e){var t="on"===this.stateObj.attributes.aux_heat,a=e.target.checked;t!==a&&this.callServiceHelper("set_aux_heat",{aux_heat:a})},handleFanmodeChanged:function(e){var t;""!==e&&e!==-1&&(t=this.stateObj.attributes.fan_list[e],t!==this.stateObj.attributes.fan_mode&&this.callServiceHelper("set_fan_mode",{fan_mode:t}))},handleOperationmodeChanged:function(e){var t;""!==e&&e!==-1&&(t=this.stateObj.attributes.operation_list[e],t!==this.stateObj.attributes.operation_mode&&this.callServiceHelper("set_operation_mode",{operation_mode:t}))},handleSwingmodeChanged:function(e){var t;""!==e&&e!==-1&&(t=this.stateObj.attributes.swing_list[e],t!==this.stateObj.attributes.swing_mode&&this.callServiceHelper("set_swing_mode",{swing_mode:t}))},callServiceHelper:function(e,t){t.entity_id=this.stateObj.entityId,this.hass.serviceActions.callService("climate",e,t).then(function(){this.stateObjChanged(this.stateObj)}.bind(this))}})</script><dom-module id="more-info-cover" assetpath="more-infos/"><template><style is="custom-style" include="iron-flex"></style><style>.current_position,.current_tilt_position{max-height:0;overflow:hidden}.has-current_position .current_position,.has-current_tilt_position .current_tilt_position{max-height:90px}</style><div class$="[[computeClassNames(stateObj)]]"><div class="current_position"><div>Position</div><paper-slider min="0" max="100" value="{{coverPositionSliderValue}}" step="1" pin="" on-change="coverPositionSliderChanged"></paper-slider></div><div class="current_tilt_position"><div>Tilt position</div><paper-icon-button icon="mdi:arrow-top-right" on-tap="onOpenTiltTap" title="Open tilt" disabled="[[computeIsFullyOpenTilt(stateObj)]]"></paper-icon-button><paper-icon-button icon="mdi:stop" on-tap="onStopTiltTap" title="Stop tilt"></paper-icon-button><paper-icon-button icon="mdi:arrow-bottom-left" on-tap="onCloseTiltTap" title="Close tilt" disabled="[[computeIsFullyClosedTilt(stateObj)]]"></paper-icon-button><paper-slider min="0" max="100" value="{{coverTiltPositionSliderValue}}" step="1" pin="" on-change="coverTiltPositionSliderChanged"></paper-slider></div></div></template></dom-module><script>Polymer({is:"more-info-cover",properties:{hass:{type:Object},stateObj:{type:Object,observer:"stateObjChanged"},coverPositionSliderValue:{type:Number},coverTiltPositionSliderValue:{type:Number}},stateObjChanged:function(t){this.coverPositionSliderValue=t.attributes.current_position,this.coverTiltPositionSliderValue=t.attributes.current_tilt_position},computeClassNames:function(t){return window.hassUtil.attributeClassNames(t,["current_position","current_tilt_position"])},coverPositionSliderChanged:function(t){this.hass.serviceActions.callService("cover","set_cover_position",{entity_id:this.stateObj.entityId,position:t.target.value})},coverTiltPositionSliderChanged:function(t){this.hass.serviceActions.callService("cover","set_cover_tilt_position",{entity_id:this.stateObj.entityId,tilt_position:t.target.value})},computeIsFullyOpenTilt:function(t){return 100===t.attributes.current_tilt_position},computeIsFullyClosedTilt:function(t){return 0===t.attributes.current_tilt_position},onOpenTiltTap:function(){this.hass.serviceActions.callService("cover","open_cover_tilt",{entity_id:this.stateObj.entityId})},onCloseTiltTap:function(){this.hass.serviceActions.callService("cover","close_cover_tilt",{entity_id:this.stateObj.entityId})},onStopTiltTap:function(){this.hass.serviceActions.callService("cover","stop_cover",{entity_id:this.stateObj.entityId})}})</script><dom-module id="more-info-default" assetpath="more-infos/"><template><style is="custom-style" include="iron-flex iron-flex-alignment"></style><style>.data-entry .value{max-width:200px}</style><div class="layout vertical"><template is="dom-repeat" items="[[computeDisplayAttributes(stateObj)]]" as="attribute"><div class="data-entry layout justified horizontal"><div class="key">[[formatAttribute(attribute)]]</div><div class="value">[[getAttributeValue(stateObj, attribute)]]</div></div></template></div></template></dom-module><script>!function(){"use strict";var e=["entity_picture","friendly_name","icon","unit_of_measurement","emulated_hue","emulated_hue_name","haaska_hidden","haaska_name","homebridge_hidden","homebridge_name"];Polymer({is:"more-info-default",properties:{stateObj:{type:Object}},computeDisplayAttributes:function(t){return t?Object.keys(t.attributes).filter(function(t){return e.indexOf(t)===-1}):[]},formatAttribute:function(e){return e.replace(/_/g," ")},getAttributeValue:function(e,t){var r=e.attributes[t];return Array.isArray(r)?r.join(", "):r}})}()</script><dom-module id="more-info-group" assetpath="more-infos/"><template><style>.child-card{margin-bottom:8px}.child-card:last-child{margin-bottom:0}</style><div id="groupedControlDetails"></div><template is="dom-repeat" items="[[states]]" as="state"><div class="child-card"><state-card-content state-obj="[[state]]" hass="[[hass]]"></state-card-content></div></template></template></dom-module><script>Polymer({is:"more-info-group",behaviors:[window.hassBehavior],properties:{hass:{type:Object},stateObj:{type:Object},states:{type:Array,bindNuclear:function(t){return[t.moreInfoGetters.currentEntity,t.entityGetters.entityMap,function(t,e){return t?t.attributes.entity_id.map(e.get.bind(e)):[]}]}}},observers:["statesChanged(stateObj, states)"],statesChanged:function(t,e){var s,i,a,n,r=!1;if(e&&e.length>0)for(s=e[0],r=s.set("entityId",t.entityId).set("attributes",Object.assign({},s.attributes)),i=0;i<e.length;i++)a=e[i],a&&a.domain&&r.domain!==a.domain&&(r=!1);r?window.hassUtil.dynamicContentUpdater(this.$.groupedControlDetails,"MORE-INFO-"+window.hassUtil.stateMoreInfoType(r).toUpperCase(),{stateObj:r,hass:this.hass}):(n=Polymer.dom(this.$.groupedControlDetails),n.lastChild&&n.removeChild(n.lastChild))}})</script><dom-module id="more-info-sun" assetpath="more-infos/"><template><style is="custom-style" include="iron-flex iron-flex-alignment"></style><template is="dom-repeat" items="[[computeOrder(risingDate, settingDate)]]"><div class="data-entry layout justified horizontal"><div class="key"><span>[[itemCaption(item)]]</span><ha-relative-time datetime-obj="[[itemDate(item)]]"></ha-relative-time></div><div class="value">[[itemValue(item)]]</div></div></template><div class="data-entry layout justified horizontal"><div class="key">Elevation</div><div class="value">[[stateObj.attributes.elevation]]</div></div></template></dom-module><script>Polymer({is:"more-info-sun",properties:{stateObj:{type:Object},risingDate:{type:Object,computed:"computeRising(stateObj)"},settingDate:{type:Object,computed:"computeSetting(stateObj)"}},computeRising:function(t){return new Date(t.attributes.next_rising)},computeSetting:function(t){return new Date(t.attributes.next_setting)},computeOrder:function(t,e){return t>e?["set","ris"]:["ris","set"]},itemCaption:function(t){return"ris"===t?"Rising ":"Setting "},itemDate:function(t){return"ris"===t?this.risingDate:this.settingDate},itemValue:function(t){return window.hassUtil.formatTime(this.itemDate(t))}})</script><dom-module id="more-info-configurator" assetpath="more-infos/"><template><style is="custom-style" include="iron-flex"></style><style>p{margin:8px 0}p>img{max-width:100%}p.center{text-align:center}p.error{color:#C62828}p.submit{text-align:center;height:41px}paper-spinner{width:14px;height:14px;margin-right:20px}</style><div class="layout vertical"><template is="dom-if" if="[[isConfigurable]]"><p hidden$="[[!stateObj.attributes.description]]">[[stateObj.attributes.description]] <a hidden$="[[!stateObj.attributes.link_url]]" href="[[stateObj.attributes.link_url]]" target="_blank">[[stateObj.attributes.link_name]]</a></p><p class="error" hidden$="[[!stateObj.attributes.errors]]">[[stateObj.attributes.errors]]</p><p class="center" hidden$="[[!stateObj.attributes.description_image]]"><img src="[[stateObj.attributes.description_image]]"></p><template is="dom-repeat" items="[[stateObj.attributes.fields]]"><paper-input-container id="paper-input-fields-{{item.id}}"><label>[[item.name]]</label><input is="iron-input" type="[[item.type]]" id="[[item.id]]" on-change="fieldChanged"></paper-input-container></template><p class="submit"><paper-button raised="" disabled="[[isConfiguring]]" on-tap="submitClicked"><paper-spinner active="[[isConfiguring]]" hidden="[[!isConfiguring]]" alt="Configuring"></paper-spinner>[[submitCaption]]</paper-button></p></template></div></template></dom-module><script>Polymer({is:"more-info-configurator",behaviors:[window.hassBehavior],properties:{stateObj:{type:Object},action:{type:String,value:"display"},isStreaming:{type:Boolean,bindNuclear:function(i){return i.streamGetters.isStreamingEvents}},isConfigurable:{type:Boolean,computed:"computeIsConfigurable(stateObj)"},isConfiguring:{type:Boolean,value:!1},submitCaption:{type:String,computed:"computeSubmitCaption(stateObj)"},fieldInput:{type:Object,value:{}}},computeIsConfigurable:function(i){return"configure"===i.state},computeSubmitCaption:function(i){return i.attributes.submit_caption||"Set configuration"},fieldChanged:function(i){var t=i.target;this.fieldInput[t.id]=t.value},submitClicked:function(){var i={configure_id:this.stateObj.attributes.configure_id,fields:this.fieldInput};this.isConfiguring=!0,this.hass.serviceActions.callService("configurator","configure",i).then(function(){this.isConfiguring=!1,this.isStreaming||this.hass.syncActions.fetchAll()}.bind(this),function(){this.isConfiguring=!1}.bind(this))}})</script><dom-module id="more-info-script" assetpath="more-infos/"><template><style is="custom-style" include="iron-flex iron-flex-alignment"></style><div class="layout vertical"><div class="data-entry layout justified horizontal"><div class="key">Last Action</div><div class="value">[[stateObj.attributes.last_action]]</div></div></div></template></dom-module><script>Polymer({is:"more-info-script",properties:{stateObj:{type:Object}}})</script><dom-module id="ha-labeled-slider" assetpath="components/"><template><style>:host{display:block;padding-bottom:16px}.title{margin-bottom:16px;opacity:var(--dark-primary-opacity)}iron-icon{float:left;margin-top:4px;opacity:var(--dark-secondary-opacity)}.slider-container{margin-left:24px}</style><div class="title">[[caption]]</div><iron-icon icon="[[icon]]"></iron-icon><div class="slider-container"><paper-slider min="[[min]]" max="[[max]]" value="{{value}}"></paper-slider></div></template></dom-module><script>Polymer({is:"ha-labeled-slider",properties:{caption:{type:String},icon:{type:String},min:{type:Number},max:{type:Number},value:{type:Number,notify:!0}}})</script><dom-module id="ha-color-picker" assetpath="components/"><template><style>canvas{cursor:crosshair}</style><canvas width="[[width]]" height="[[height]]"></canvas></template></dom-module><script>Polymer({is:"ha-color-picker",properties:{color:{type:Object},width:{type:Number},height:{type:Number}},listeners:{mousedown:"onMouseDown",mouseup:"onMouseUp",touchstart:"onTouchStart",touchend:"onTouchEnd"},onMouseDown:function(t){this.onMouseMove(t),this.addEventListener("mousemove",this.onMouseMove)},onMouseUp:function(){this.removeEventListener("mousemove",this.onMouseMove)},onTouchStart:function(t){this.onTouchMove(t),this.addEventListener("touchmove",this.onTouchMove)},onTouchEnd:function(){this.removeEventListener("touchmove",this.onTouchMove)},onTouchMove:function(t){this.mouseMoveIsThrottled&&(this.mouseMoveIsThrottled=!1,this.processColorSelect(t.touches[0]),this.async(function(){this.mouseMoveIsThrottled=!0}.bind(this),100))},onMouseMove:function(t){this.mouseMoveIsThrottled&&(this.mouseMoveIsThrottled=!1,this.processColorSelect(t),this.async(function(){this.mouseMoveIsThrottled=!0}.bind(this),100))},processColorSelect:function(t){var o=this.canvas.getBoundingClientRect();t.clientX<o.left||t.clientX>=o.left+o.width||t.clientY<o.top||t.clientY>=o.top+o.height||this.onColorSelect(t.clientX-o.left,t.clientY-o.top)},onColorSelect:function(t,o){var e=this.context.getImageData(t,o,1,1).data;this.setColor({r:e[0],g:e[1],b:e[2]})},setColor:function(t){this.color=t,this.fire("colorselected",{rgb:this.color})},ready:function(){this.setColor=this.setColor.bind(this),this.mouseMoveIsThrottled=!0,this.canvas=this.children[0],this.context=this.canvas.getContext("2d"),this.drawGradient()},drawGradient:function(){var t,o,e,i,s;this.width&&this.height||(t=getComputedStyle(this)),o=this.width||parseInt(t.width,10),e=this.height||parseInt(t.height,10),i=this.context.createLinearGradient(0,0,o,0),i.addColorStop(0,"rgb(255,0,0)"),i.addColorStop(.16,"rgb(255,0,255)"),i.addColorStop(.32,"rgb(0,0,255)"),i.addColorStop(.48,"rgb(0,255,255)"),i.addColorStop(.64,"rgb(0,255,0)"),i.addColorStop(.8,"rgb(255,255,0)"),i.addColorStop(1,"rgb(255,0,0)"),this.context.fillStyle=i,this.context.fillRect(0,0,o,e),s=this.context.createLinearGradient(0,0,0,e),s.addColorStop(0,"rgba(255,255,255,1)"),s.addColorStop(.5,"rgba(255,255,255,0)"),s.addColorStop(.5,"rgba(0,0,0,0)"),s.addColorStop(1,"rgba(0,0,0,1)"),this.context.fillStyle=s,this.context.fillRect(0,0,o,e)}})</script><dom-module id="more-info-light" assetpath="more-infos/"><template><style is="custom-style" include="iron-flex"></style><style>.effect_list{padding-bottom:16px}.brightness,.color_temp,.effect_list,.white_value{max-height:0;overflow:hidden;transition:max-height .5s ease-in}ha-color-picker{display:block;width:250px;max-height:0;overflow:hidden;transition:max-height .2s ease-in}.has-brightness .brightness,.has-color_temp .color_temp,.has-effect_list .effect_list,.has-white_value .white_value{max-height:84px}.has-rgb_color ha-color-picker{max-height:200px}</style><div class$="[[computeClassNames(stateObj)]]"><div class="effect_list"><paper-dropdown-menu label-float="" label="Effect"><paper-menu class="dropdown-content" selected="{{effectIndex}}"><template is="dom-repeat" items="[[stateObj.attributes.effect_list]]"><paper-item>[[item]]</paper-item></template></paper-menu></paper-dropdown-menu></div><div class="brightness"><ha-labeled-slider caption="Brightness" icon="mdi:brightness-5" max="255" value="{{brightnessSliderValue}}" on-change="brightnessSliderChanged"></ha-labeled-slider></div><div class="color_temp"><ha-labeled-slider caption="Color Temperature" icon="mdi:thermometer" min="154" max="500" value="{{ctSliderValue}}" on-change="ctSliderChanged"></ha-labeled-slider></div><div class="white_value"><ha-labeled-slider caption="White Value" icon="mdi:file-word-box" max="255" value="{{wvSliderValue}}" on-change="wvSliderChanged"></ha-labeled-slider></div><ha-color-picker on-colorselected="colorPicked" height="200" width="250"></ha-color-picker></div></template></dom-module><script>Polymer({is:"more-info-light",properties:{hass:{type:Object},stateObj:{type:Object,observer:"stateObjChanged"},effectIndex:{type:Number,value:-1,observer:"effectChanged"},brightnessSliderValue:{type:Number,value:0},ctSliderValue:{type:Number,value:0},wvSliderValue:{type:Number,value:0}},stateObjChanged:function(t){t&&"on"===t.state&&(this.brightnessSliderValue=t.attributes.brightness,this.ctSliderValue=t.attributes.color_temp,this.wvSliderValue=t.attributes.white_value,t.attributes.effect_list?this.effectIndex=t.attributes.effect_list.indexOf(t.attributes.effect):this.effectIndex=-1),this.async(function(){this.fire("iron-resize")}.bind(this),500)},computeClassNames:function(t){return window.hassUtil.attributeClassNames(t,["brightness","rgb_color","color_temp","white_value","effect_list"])},effectChanged:function(t){var e;""!==t&&t!==-1&&(e=this.stateObj.attributes.effect_list[t],e!==this.stateObj.attributes.effect&&this.hass.serviceActions.callService("light","turn_on",{entity_id:this.stateObj.entityId,effect:e}))},brightnessSliderChanged:function(t){var e=parseInt(t.target.value,10);isNaN(e)||(0===e?this.hass.serviceActions.callTurnOff(this.stateObj.entityId):this.hass.serviceActions.callService("light","turn_on",{entity_id:this.stateObj.entityId,brightness:e}))},ctSliderChanged:function(t){var e=parseInt(t.target.value,10);isNaN(e)||this.hass.serviceActions.callService("light","turn_on",{entity_id:this.stateObj.entityId,color_temp:e})},wvSliderChanged:function(t){var e=parseInt(t.target.value,10);isNaN(e)||this.hass.serviceActions.callService("light","turn_on",{entity_id:this.stateObj.entityId,white_value:e})},serviceChangeColor:function(t,e,i){t.serviceActions.callService("light","turn_on",{entity_id:e,rgb_color:[i.r,i.g,i.b]})},colorPicked:function(t){return this.skipColorPicked?void(this.colorChanged=!0):(this.color=t.detail.rgb,this.serviceChangeColor(this.hass,this.stateObj.entityId,this.color),this.colorChanged=!1,this.skipColorPicked=!0,void(this.colorDebounce=setTimeout(function(){this.colorChanged&&this.serviceChangeColor(this.hass,this.stateObj.entityId,this.color),this.skipColorPicked=!1}.bind(this),500)))}})</script><dom-module id="more-info-media_player" assetpath="more-infos/"><template><style is="custom-style" include="iron-flex"></style><style>.media-state{text-transform:capitalize}paper-icon-button[highlight]{color:var(--accent-color)}.volume{margin-bottom:8px;max-height:0;overflow:hidden;transition:max-height .5s ease-in}.has-volume_level .volume{max-height:40px}iron-icon.source-input{padding:7px;margin-top:15px}paper-dropdown-menu.source-input{margin-left:10px}[hidden]{display:none!important}</style><div class$="[[computeClassNames(stateObj)]]"><div class="layout horizontal"><div class="flex"><paper-icon-button icon="mdi:power" highlight$="[[isOff]]" on-tap="handleTogglePower" hidden$="[[computeHidePowerButton(isOff, supportsTurnOn, supportsTurnOff)]]"></paper-icon-button></div><div><template is="dom-if" if="[[computeShowPlaybackControls(isOff, hasMediaControl)]]"><paper-icon-button icon="mdi:skip-previous" on-tap="handlePrevious" hidden$="[[!supportsPreviousTrack]]"></paper-icon-button><paper-icon-button icon="[[computePlaybackControlIcon(stateObj)]]" on-tap="handlePlaybackControl" highlight=""></paper-icon-button><paper-icon-button icon="mdi:skip-next" on-tap="handleNext" hidden$="[[!supportsNextTrack]]"></paper-icon-button></template></div></div><div class="volume_buttons center horizontal layout" hidden$="[[computeHideVolumeButtons(isOff, supportsVolumeButtons)]]"><paper-icon-button on-tap="handleVolumeTap" icon="mdi:volume-off"></paper-icon-button><paper-icon-button id="volumeDown" disabled$="[[isMuted]]" on-mousedown="handleVolumeDown" on-touchstart="handleVolumeDown" icon="mdi:volume-medium"></paper-icon-button><paper-icon-button id="volumeUp" disabled$="[[isMuted]]" on-mousedown="handleVolumeUp" on-touchstart="handleVolumeUp" icon="mdi:volume-high"></paper-icon-button></div><div class="volume center horizontal layout" hidden$="[[!supportsVolumeSet]]"><paper-icon-button on-tap="handleVolumeTap" hidden$="[[supportsVolumeButtons]]" icon="[[computeMuteVolumeIcon(isMuted)]]"></paper-icon-button><paper-slider disabled$="[[isMuted]]" min="0" max="100" value="[[volumeSliderValue]]" on-change="volumeSliderChanged" class="flex"></paper-slider></div><div class="controls layout horizontal justified" hidden$="[[!computeHideSelectSource(isOff, supportsSelectSource)]]"><iron-icon class="source-input" icon="mdi:login-variant"></iron-icon><paper-dropdown-menu class="source-input" label-float="" label="Source"><paper-menu class="dropdown-content" selected="{{sourceIndex}}"><template is="dom-repeat" items="[[stateObj.attributes.source_list]]"><paper-item>[[item]]</paper-item></template></paper-menu></paper-dropdown-menu></div></div></template></dom-module><script>Polymer({is:"more-info-media_player",properties:{hass:{type:Object},stateObj:{type:Object,observer:"stateObjChanged"},isOff:{type:Boolean,value:!1},isPlaying:{type:Boolean,value:!1},isMuted:{type:Boolean,value:!1},source:{type:String,value:""},sourceIndex:{type:Number,value:0,observer:"handleSourceChanged"},volumeSliderValue:{type:Number,value:0},supportsPause:{type:Boolean,value:!1},supportsVolumeSet:{type:Boolean,value:!1},supportsVolumeMute:{type:Boolean,value:!1},supportsPreviousTrack:{type:Boolean,value:!1},supportsNextTrack:{type:Boolean,value:!1},supportsTurnOn:{type:Boolean,value:!1},supportsTurnOff:{type:Boolean,value:!1},supportsVolumeButtons:{type:Boolean,value:!1},supportsSelectSource:{type:Boolean,value:!1},hasMediaControl:{type:Boolean,value:!1}},HAS_MEDIA_STATES:["playing","paused","unknown"],stateObjChanged:function(e){e&&(this.isOff="off"===e.state,this.isPlaying="playing"===e.state,this.hasMediaControl=this.HAS_MEDIA_STATES.indexOf(e.state)!==-1,this.volumeSliderValue=100*e.attributes.volume_level,this.isMuted=e.attributes.is_volume_muted,this.source=e.attributes.source,this.supportsPause=0!==(1&e.attributes.supported_media_commands),this.supportsVolumeSet=0!==(4&e.attributes.supported_media_commands),this.supportsVolumeMute=0!==(8&e.attributes.supported_media_commands),this.supportsPreviousTrack=0!==(16&e.attributes.supported_media_commands),this.supportsNextTrack=0!==(32&e.attributes.supported_media_commands),this.supportsTurnOn=0!==(128&e.attributes.supported_media_commands),this.supportsTurnOff=0!==(256&e.attributes.supported_media_commands),this.supportsVolumeButtons=0!==(1024&e.attributes.supported_media_commands),this.supportsSelectSource=0!==(2048&e.attributes.supported_media_commands),void 0!==e.attributes.source_list&&(this.sourceIndex=e.attributes.source_list.indexOf(this.source))),this.async(function(){this.fire("iron-resize")}.bind(this),500)},computeClassNames:function(e){return window.hassUtil.attributeClassNames(e,["volume_level"])},computeIsOff:function(e){return"off"===e.state},computeMuteVolumeIcon:function(e){return e?"mdi:volume-off":"mdi:volume-high"},computeHideVolumeButtons:function(e,t){return!t||e},computeShowPlaybackControls:function(e,t){return!e&&t},computePlaybackControlIcon:function(){return this.isPlaying?this.supportsPause?"mdi:pause":"mdi:stop":"mdi:play"},computeHidePowerButton:function(e,t,s){return e?!t:!s},computeHideSelectSource:function(e,t){return!e&&t},computeSelectedSource:function(e){return e.attributes.source_list.indexOf(e.attributes.source)},handleTogglePower:function(){this.callService(this.isOff?"turn_on":"turn_off")},handlePrevious:function(){this.callService("media_previous_track")},handlePlaybackControl:function(){this.callService("media_play_pause")},handleNext:function(){this.callService("media_next_track")},handleSourceChanged:function(e){var t;!this.stateObj||void 0===this.stateObj.attributes.source_list||e<0||e>=this.stateObj.attributes.source_list.length||(t=this.stateObj.attributes.source_list[e],t!==this.stateObj.attributes.source&&this.callService("select_source",{source:t}))},handleVolumeTap:function(){this.supportsVolumeMute&&this.callService("volume_mute",{is_volume_muted:!this.isMuted})},handleVolumeUp:function(){var e=this.$.volumeUp;this.handleVolumeWorker("volume_up",e,!0)},handleVolumeDown:function(){var e=this.$.volumeDown;this.handleVolumeWorker("volume_down",e,!0)},handleVolumeWorker:function(e,t,s){(s||void 0!==t&&t.pointerDown)&&(this.callService(e),this.async(function(){this.handleVolumeWorker(e,t,!1)}.bind(this),500))},volumeSliderChanged:function(e){var t=parseFloat(e.target.value),s=t>0?t/100:0;this.callService("volume_set",{volume_level:s})},callService:function(e,t){var s=t||{};s.entity_id=this.stateObj.entityId,this.hass.serviceActions.callService("media_player",e,s)}})</script><dom-module id="more-info-camera" assetpath="more-infos/"><template><style>:host{max-width:640px}.camera-image{width:100%}</style><img class="camera-image" src="[[computeCameraImageUrl(hass, stateObj)]]" on-load="imageLoaded" alt="[[stateObj.entityDisplay]]"></template></dom-module><script>Polymer({is:"more-info-camera",properties:{hass:{type:Object},stateObj:{type:Object}},imageLoaded:function(){this.fire("iron-resize")},computeCameraImageUrl:function(e,t){return e.demo?"/demo/webcam.jpg":t?"/api/camera_proxy_stream/"+t.entityId+"?token="+t.attributes.access_token:"data:image/gif;base64,R0lGODlhAQABAAAAACw="}})</script><dom-module id="more-info-updater" assetpath="more-infos/"><template><style>.link{color:#03A9F4}</style><div><a class="link" href="https://home-assistant.io/getting-started/updating/" target="_blank">Update Instructions</a></div></template></dom-module><script>Polymer({is:"more-info-updater",properties:{stateObj:{type:Object}},computeReleaseNotes:function(t){return t.attributes.release_notes||"https://home-assistant.io/getting-started/updating/"}})</script><dom-module id="more-info-alarm_control_panel" assetpath="more-infos/"><template><style is="custom-style" include="iron-flex"></style><div class="layout horizontal"><paper-input label="code" value="{{enteredCode}}" pattern="[[codeFormat]]" type="password" hidden$="[[!codeInputVisible]]" disabled="[[!codeInputEnabled]]"></paper-input></div><div class="layout horizontal"><paper-button on-tap="handleDisarmTap" hidden$="[[!disarmButtonVisible]]" disabled="[[!codeValid]]">Disarm</paper-button><paper-button on-tap="handleHomeTap" hidden$="[[!armHomeButtonVisible]]" disabled="[[!codeValid]]">Arm Home</paper-button><paper-button on-tap="handleAwayTap" hidden$="[[!armAwayButtonVisible]]" disabled="[[!codeValid]]">Arm Away</paper-button></div></template></dom-module><script>Polymer({is:"more-info-alarm_control_panel",properties:{hass:{type:Object},stateObj:{type:Object,observer:"stateObjChanged"},enteredCode:{type:String,value:""},disarmButtonVisible:{type:Boolean,value:!1},armHomeButtonVisible:{type:Boolean,value:!1},armAwayButtonVisible:{type:Boolean,value:!1},codeInputVisible:{type:Boolean,value:!1},codeInputEnabled:{type:Boolean,value:!1},codeFormat:{type:String,value:""},codeValid:{type:Boolean,computed:"validateCode(enteredCode, codeFormat)"}},validateCode:function(e,t){var a=new RegExp(t);return null===t||a.test(e)},stateObjChanged:function(e){e&&(this.codeFormat=e.attributes.code_format,this.codeInputVisible=null!==this.codeFormat,this.codeInputEnabled="armed_home"===e.state||"armed_away"===e.state||"disarmed"===e.state||"pending"===e.state||"triggered"===e.state,this.disarmButtonVisible="armed_home"===e.state||"armed_away"===e.state||"pending"===e.state||"triggered"===e.state,this.armHomeButtonVisible="disarmed"===e.state,this.armAwayButtonVisible="disarmed"===e.state),this.async(function(){this.fire("iron-resize")}.bind(this),500)},handleDisarmTap:function(){this.callService("alarm_disarm",{code:this.enteredCode})},handleHomeTap:function(){this.callService("alarm_arm_home",{code:this.enteredCode})},handleAwayTap:function(){this.callService("alarm_arm_away",{code:this.enteredCode})},callService:function(e,t){var a=t||{};a.entity_id=this.stateObj.entityId,this.hass.serviceActions.callService("alarm_control_panel",e,a).then(function(){this.enteredCode=""}.bind(this))}})</script><dom-module id="more-info-lock" assetpath="more-infos/"><template><style>paper-input{display:inline-block}</style><div hidden$="[[!stateObj.attributes.code_format]]"><paper-input label="code" value="{{enteredCode}}" pattern="[[stateObj.attributes.code_format]]" type="password"></paper-input><paper-button on-tap="handleUnlockTap" hidden$="[[!isLocked]]">Unlock</paper-button><paper-button on-tap="handleLockTap" hidden$="[[isLocked]]">Lock</paper-button></div></template></dom-module><script>Polymer({is:"more-info-lock",properties:{hass:{type:Object},stateObj:{type:Object,observer:"stateObjChanged"},enteredCode:{type:String,value:""}},handleUnlockTap:function(){this.callService("unlock",{code:this.enteredCode})},handleLockTap:function(){this.callService("lock",{code:this.enteredCode})},stateObjChanged:function(e){e&&(this.isLocked="locked"===e.state),this.async(function(){this.fire("iron-resize")}.bind(this),500)},callService:function(e,t){var i=t||{};i.entity_id=this.stateObj.entityId,this.hass.serviceActions.callService("lock",e,i)}})</script><script>Polymer({is:"more-info-content",properties:{hass:{type:Object},stateObj:{type:Object,observer:"stateObjChanged"}},created:function(){this.style.display="block"},stateObjChanged:function(t){t&&window.hassUtil.dynamicContentUpdater(this,"MORE-INFO-"+window.hassUtil.stateMoreInfoType(t).toUpperCase(),{hass:this.hass,stateObj:t})}})</script><dom-module id="more-info-dialog" assetpath="dialogs/"><template><style>paper-dialog{font-size:14px;width:365px}paper-dialog[data-domain=camera]{width:auto}state-history-charts{position:relative;z-index:1;max-width:365px}state-card-content{margin-bottom:24px;font-size:14px}@media all and (max-width:450px),all and (max-height:500px){paper-dialog{margin:0;width:100%;max-height:calc(100% - 64px);position:fixed!important;bottom:0;left:0;right:0;overflow:scroll}}</style><paper-dialog id="dialog" with-backdrop="" opened="{{dialogOpen}}" data-domain$="[[stateObj.domain]]"><h2><state-card-content state-obj="[[stateObj]]" hass="[[hass]]" in-dialog=""></state-card-content></h2><template is="dom-if" if="[[showHistoryComponent]]"><state-history-charts state-history="[[stateHistory]]" is-loading-data="[[isLoadingHistoryData]]"></state-history-charts></template><paper-dialog-scrollable id="scrollable"><more-info-content state-obj="[[stateObj]]" hass="[[hass]]"></more-info-content></paper-dialog-scrollable></paper-dialog></template></dom-module><script>Polymer({is:"more-info-dialog",behaviors:[window.hassBehavior],properties:{hass:{type:Object},stateObj:{type:Object,bindNuclear:function(t){return t.moreInfoGetters.currentEntity},observer:"stateObjChanged"},stateHistory:{type:Object,bindNuclear:function(t){return[t.moreInfoGetters.currentEntityHistory,function(t){return!!t&&[t]}]}},isLoadingHistoryData:{type:Boolean,computed:"computeIsLoadingHistoryData(delayedDialogOpen, isLoadingEntityHistoryData)"},isLoadingEntityHistoryData:{type:Boolean,bindNuclear:function(t){return t.entityHistoryGetters.isLoadingEntityHistory}},hasHistoryComponent:{type:Boolean,bindNuclear:function(t){return t.configGetters.isComponentLoaded("history")},observer:"fetchHistoryData"},shouldFetchHistory:{type:Boolean,bindNuclear:function(t){return t.moreInfoGetters.isCurrentEntityHistoryStale},observer:"fetchHistoryData"},showHistoryComponent:{type:Boolean,value:!1,computed:"computeShowHistoryComponent(hasHistoryComponent, stateObj)"},dialogOpen:{type:Boolean,value:!1,observer:"dialogOpenChanged"},delayedDialogOpen:{type:Boolean,value:!1}},ready:function(){this.$.scrollable.dialogElement=this.$.dialog},computeIsLoadingHistoryData:function(t,e){return!t||e},computeShowHistoryComponent:function(t,e){return this.hasHistoryComponent&&e&&window.hassUtil.DOMAINS_WITH_NO_HISTORY.indexOf(e.domain)===-1},fetchHistoryData:function(){this.stateObj&&this.hasHistoryComponent&&this.shouldFetchHistory&&this.hass.entityHistoryActions.fetchRecent(this.stateObj.entityId)},stateObjChanged:function(t){return t?void this.async(function(){this.fetchHistoryData(),this.dialogOpen=!0}.bind(this),10):void(this.dialogOpen=!1)},dialogOpenChanged:function(t){t?this.async(function(){this.delayedDialogOpen=!0}.bind(this),10):!t&&this.stateObj&&(this.async(function(){this.hass.moreInfoActions.deselectEntity()}.bind(this),10),this.delayedDialogOpen=!1)}})</script><dom-module id="ha-voice-command-dialog" assetpath="dialogs/"><template><style>iron-icon{margin-right:8px}.content{width:300px;min-height:80px;font-size:18px}.icon{float:left}.text{margin-left:48px;margin-right:24px}.interimTranscript{color:#a9a9a9}@media all and (max-width:450px){paper-dialog{margin:0;width:100%;max-height:calc(100% - 64px);position:fixed!important;bottom:0;left:0;right:0;overflow:scroll}}</style><paper-dialog id="dialog" with-backdrop="" opened="{{dialogOpen}}"><div class="content"><div class="icon"><iron-icon icon="mdi:text-to-speech" hidden$="[[isTransmitting]]"></iron-icon><paper-spinner active$="[[isTransmitting]]" hidden$="[[!isTransmitting]]"></paper-spinner></div><div class="text"><span>{{finalTranscript}}</span> <span class="interimTranscript">[[interimTranscript]]</span> …</div></div></paper-dialog></template></dom-module><script>Polymer({is:"ha-voice-command-dialog",behaviors:[window.hassBehavior],properties:{hass:{type:Object},dialogOpen:{type:Boolean,value:!1,observer:"dialogOpenChanged"},finalTranscript:{type:String,bindNuclear:function(e){return e.voiceGetters.finalTranscript}},interimTranscript:{type:String,bindNuclear:function(e){return e.voiceGetters.extraInterimTranscript}},isTransmitting:{type:Boolean,bindNuclear:function(e){return e.voiceGetters.isTransmitting}},isListening:{type:Boolean,bindNuclear:function(e){return e.voiceGetters.isListening}},showListenInterface:{type:Boolean,computed:"computeShowListenInterface(isListening, isTransmitting)",observer:"showListenInterfaceChanged"}},computeShowListenInterface:function(e,n){return e||n},dialogOpenChanged:function(e){!e&&this.isListening&&this.hass.voiceActions.stop()},showListenInterfaceChanged:function(e){!e&&this.dialogOpen?this.dialogOpen=!1:e&&(this.dialogOpen=!0)}})</script><dom-module id="paper-icon-item" assetpath="../bower_components/paper-item/"><template><style include="paper-item-shared-styles"></style><style>:host{@apply(--layout-horizontal);@apply(--layout-center);@apply(--paper-font-subhead);@apply(--paper-item);@apply(--paper-icon-item)}.content-icon{@apply(--layout-horizontal);@apply(--layout-center);width:var(--paper-item-icon-width,56px);@apply(--paper-item-icon)}</style><div id="contentIcon" class="content-icon"><content select="[item-icon]"></content></div><content></content></template><script>Polymer({is:"paper-icon-item",behaviors:[Polymer.PaperItemBehavior]})</script></dom-module><dom-module id="ha-sidebar" assetpath="components/"><template><style include="iron-flex iron-flex-alignment iron-positioning">:host{--sidebar-text:{opacity:var(--dark-primary-opacity);font-weight:500;font-size:14px};display:block;overflow:auto;-ms-user-select:none;-webkit-user-select:none;-moz-user-select:none}app-toolbar{font-weight:400;opacity:var(--dark-primary-opacity);border-bottom:1px solid #e0e0e0}paper-menu{padding-bottom:0}paper-icon-item{--paper-icon-item:{cursor:pointer};--paper-item-icon:{color:#000;opacity:var(--dark-secondary-opacity)};--paper-item-selected:{color:var(--default-primary-color);background-color:#e8e8e8;opacity:1};}paper-icon-item.iron-selected{--paper-item-icon:{color:var(--default-primary-color);opacity:1};}paper-icon-item .item-text{@apply(--sidebar-text)}paper-icon-item.iron-selected .item-text{opacity:1}paper-icon-item.logout{margin-top:16px}.divider{height:1px;background-color:#000;margin:4px 0;opacity:var(--dark-divider-opacity)}.setting{@apply(--sidebar-text)}.subheader{@apply(--sidebar-text);padding:16px}.dev-tools{padding:0 8px;opacity:var(--dark-secondary-opacity)}</style><app-toolbar><div main-title="">Home Assistant</div><paper-icon-button icon="mdi:chevron-left" hidden$="[[narrow]]" on-tap="toggleMenu"></paper-icon-button></app-toolbar><paper-menu attr-for-selected="data-panel" selected="[[selected]]" on-iron-select="menuSelect"><paper-icon-item on-tap="menuClicked" data-panel="states"><iron-icon item-icon="" icon="mdi:apps"></iron-icon><span class="item-text">States</span></paper-icon-item><template is="dom-repeat" items="[[computePanels(panels)]]"><paper-icon-item on-tap="menuClicked" data-panel$="[[item.url_path]]"><iron-icon item-icon="" icon="[[item.icon]]"></iron-icon><span class="item-text">[[item.title]]</span></paper-icon-item></template><paper-icon-item on-tap="menuClicked" data-panel="logout" class="logout"><iron-icon item-icon="" icon="mdi:exit-to-app"></iron-icon><span class="item-text">Log Out</span></paper-icon-item></paper-menu><div><template is="dom-if" if="[[supportPush]]"><div class="divider"></div><paper-item class="horizontal layout justified"><div class="setting">Push Notifications</div><paper-toggle-button on-change="handlePushChange" checked="{{pushToggleChecked}}"></paper-toggle-button></paper-item></template><div class="divider"></div><div class="subheader">Developer Tools</div><div class="dev-tools layout horizontal justified"><paper-icon-button icon="mdi:remote" data-panel="dev-service" alt="Services" title="Services" on-tap="menuClicked"></paper-icon-button><paper-icon-button icon="mdi:code-tags" data-panel="dev-state" alt="States" title="States" on-tap="menuClicked"></paper-icon-button><paper-icon-button icon="mdi:radio-tower" data-panel="dev-event" alt="Events" title="Events" on-tap="menuClicked"></paper-icon-button><paper-icon-button icon="mdi:file-xml" data-panel="dev-template" alt="Templates" title="Templates" on-tap="menuClicked"></paper-icon-button><paper-icon-button icon="mdi:information-outline" data-panel="dev-info" alt="Info" title="Info" on-tap="menuClicked"></paper-icon-button></div></div></template></dom-module><script>Polymer({is:"ha-sidebar",behaviors:[window.hassBehavior],properties:{hass:{type:Object},menuShown:{type:Boolean},menuSelected:{type:String},narrow:{type:Boolean},selected:{type:String,bindNuclear:function(t){return t.navigationGetters.activePanelName}},panels:{type:Array,bindNuclear:function(t){return[t.navigationGetters.panels,function(t){return t.toJS()}]}},supportPush:{type:Boolean,value:!1,bindNuclear:function(t){return t.pushNotificationGetters.isSupported}},pushToggleChecked:{type:Boolean,bindNuclear:function(t){return t.pushNotificationGetters.isActive}}},created:function(){this._boundUpdateStyles=this.updateStyles.bind(this)},computePanels:function(t){var e={map:1,logbook:2,history:3},n=[];return Object.keys(t).forEach(function(e){t[e].title&&n.push(t[e])}),n.sort(function(t,n){var i=t.component_name in e,o=n.component_name in e;return i&&o?e[t.component_name]-e[n.component_name]:i?-1:o?1:t.title>n.title?1:t.title<n.title?-1:0}),n},menuSelect:function(){this.debounce("updateStyles",this._boundUpdateStyles,1)},menuClicked:function(t){for(var e=t.target,n=5,i=e.getAttribute("data-panel");n&&!i;)e=e.parentElement,i=e.getAttribute("data-panel"),n--;n&&this.selectPanel(i)},toggleMenu:function(){this.fire("close-menu")},selectPanel:function(t){if(t!==this.selected){if("logout"===t)return void this.handleLogOut();this.hass.navigationActions.navigate.apply(null,t.split("/")),this.debounce("updateStyles",this._boundUpdateStyles,1)}},handlePushChange:function(t){t.target.checked?this.hass.pushNotificationActions.subscribePushNotifications().then(function(t){this.pushToggleChecked=t}.bind(this)):this.hass.pushNotificationActions.unsubscribePushNotifications().then(function(t){this.pushToggleChecked=!t}.bind(this))},handleLogOut:function(){this.hass.authActions.logOut()}})</script><dom-module id="home-assistant-main" assetpath="layouts/"><template><notification-manager hass="[[hass]]"></notification-manager><more-info-dialog hass="[[hass]]"></more-info-dialog><ha-voice-command-dialog hass="[[hass]]"></ha-voice-command-dialog><iron-media-query query="(max-width: 870px)" query-matches="{{narrow}}"></iron-media-query><paper-drawer-panel id="drawer" force-narrow="[[computeForceNarrow(narrow, showSidebar)]]" responsive-width="0" disable-swipe="[[isSelectedMap]]" disable-edge-swipe="[[isSelectedMap]]"><ha-sidebar drawer="" narrow="[[narrow]]" hass="[[hass]]"></ha-sidebar><iron-pages main="" attr-for-selected="id" fallback-selection="panel-resolver" selected="[[activePanel]]" selected-attribute="panel-visible"><partial-cards id="states" narrow="[[narrow]]" hass="[[hass]]" show-menu="[[showSidebar]]"></partial-cards><partial-panel-resolver id="panel-resolver" narrow="[[narrow]]" hass="[[hass]]" show-menu="[[showSidebar]]"></partial-panel-resolver></iron-pages></paper-drawer-panel></template></dom-module><script>Polymer({is:"home-assistant-main",behaviors:[window.hassBehavior],properties:{hass:{type:Object},narrow:{type:Boolean,value:!0},activePanel:{type:String,bindNuclear:function(e){return e.navigationGetters.activePanelName},observer:"activePanelChanged"},showSidebar:{type:Boolean,value:!1,bindNuclear:function(e){return e.navigationGetters.showSidebar}}},listeners:{"open-menu":"openMenu","close-menu":"closeMenu"},openMenu:function(){this.narrow?this.$.drawer.openDrawer():this.hass.navigationActions.showSidebar(!0)},closeMenu:function(){this.$.drawer.closeDrawer(),this.showSidebar&&this.hass.navigationActions.showSidebar(!1)},activePanelChanged:function(){this.narrow&&this.$.drawer.closeDrawer()},attached:function(){window.removeInitMsg(),this.hass.startUrlSync()},computeForceNarrow:function(e,n){return e||!n},detached:function(){this.hass.stopUrlSync()}})</script></div><dom-module id="home-assistant"><template><template is="dom-if" if="[[loaded]]"><home-assistant-main hass="[[hass]]"></home-assistant-main></template><template is="dom-if" if="[[!loaded]]"><login-form hass="[[hass]]" force-show-loading="[[computeForceShowLoading(dataLoaded, iconsLoaded)]]"></login-form></template></template></dom-module><script>Polymer({is:"home-assistant",hostAttributes:{icons:null},behaviors:[window.hassBehavior],properties:{hass:{type:Object,value:window.hass},icons:{type:String},dataLoaded:{type:Boolean,bindNuclear:function(o){return o.syncGetters.isDataLoaded}},iconsLoaded:{type:Boolean,value:!1},loaded:{type:Boolean,computed:"computeLoaded(dataLoaded, iconsLoaded)"}},computeLoaded:function(o,t){return o&&t},computeForceShowLoading:function(o,t){return o&&!t},loadIcons:function(){var o=function(){this.iconsLoaded=!0}.bind(this);this.importHref("/static/mdi-"+this.icons+".html",o,function(){this.importHref("/static/mdi.html",o,o)})},ready:function(){this.loadIcons()}})</script></body></html> \ No newline at end of file diff --git a/homeassistant/components/frontend/www_static/frontend.html.gz b/homeassistant/components/frontend/www_static/frontend.html.gz index 2e509569ab2ffe7c98d3aa9a446f426cc3d9bf52..3bf5bab1b5944da1c6375064d0b6d982ab667b5d 100644 GIT binary patch delta 62822 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 R9KZLUb@oR?&8gBH3;>JBPW1o) delta 62835 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%0Af6ZNBW|?<dz5Dw!okpK+S=NW@vCXy<RC?#<7u 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�S+3;*jf&GOu@84bV&;0J=`E>t1 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 Y>vfi0-@&`EfA4?p+l-1c!lXGE00D`}F#rGn diff --git a/homeassistant/components/frontend/www_static/home-assistant-polymer b/homeassistant/components/frontend/www_static/home-assistant-polymer index 2652823d35b..4697af1b0d9 160000 --- a/homeassistant/components/frontend/www_static/home-assistant-polymer +++ b/homeassistant/components/frontend/www_static/home-assistant-polymer @@ -1 +1 @@ -Subproject commit 2652823d35b77411988751cc74820dcfc3a0e2ac +Subproject commit 4697af1b0d96e7a21454539888c68189668fa80d diff --git a/homeassistant/components/frontend/www_static/service_worker.js b/homeassistant/components/frontend/www_static/service_worker.js index 25535a72081..b125336669c 100644 --- a/homeassistant/components/frontend/www_static/service_worker.js +++ b/homeassistant/components/frontend/www_static/service_worker.js @@ -1 +1 @@ -"use strict";function setOfCachedUrls(e){return e.keys().then(function(e){return e.map(function(e){return e.url})}).then(function(e){return new Set(e)})}function notificationEventCallback(e,t){firePushCallback({action:t.action,data:t.notification.data,tag:t.notification.tag,type:e},t.notification.data.jwt)}function firePushCallback(e,t){delete e.data.jwt,0===Object.keys(e.data).length&&e.data.constructor===Object&&delete e.data,fetch("/api/notify.html5/callback",{method:"POST",headers:new Headers({"Content-Type":"application/json",Authorization:"Bearer "+t}),body:JSON.stringify(e)})}var precacheConfig=[["/","71255a0807fe2c461c870c5f3aaedc56"],["/frontend/panels/dev-event-c2d5ec676be98d4474d19f94d0262c1e.html","6c55fc819751923ab00c62ae3fbb7222"],["/frontend/panels/dev-info-a9c07bf281fe9791fb15827ec1286825.html","931f9327e368db710fcdf5f7202f2588"],["/frontend/panels/dev-service-b3fe49532c5c03198fafb0c6ed58b76a.html","4194cb43b74108dc6d10354da2fd81fd"],["/frontend/panels/dev-state-65e5f791cc467561719bf591f1386054.html","78158786a6597ef86c3fd6f4985cde92"],["/frontend/panels/dev-template-7d744ab7f7c08b6d6ad42069989de400.html","8a6ee994b1cdb45b081299b8609915ed"],["/frontend/panels/map-1bf6965b24d76db71a1871865cd4a3a2.html","a74c01c2ee68c83c9938af067ec33b81"],["/static/core-5dfb2d3e567fad37af0321d4b29265ed.js","9a50270db7613e3af449f6c773366f4d"],["/static/frontend-6a89b74ab2b76c7d28fad2aea9444ec2.html","db91a94d9dcb88f12188d3d88c1200a2"],["/static/mdi-46a76f877ac9848899b8ed382427c16f.html","a846c4082dd5cffd88ac72cbe943e691"],["static/fonts/roboto/Roboto-Bold.ttf","d329cc8b34667f114a95422aaad1b063"],["static/fonts/roboto/Roboto-Light.ttf","7b5fb88f12bec8143f00e21bc3222124"],["static/fonts/roboto/Roboto-Medium.ttf","fe13e4170719c2fc586501e777bde143"],["static/fonts/roboto/Roboto-Regular.ttf","ac3f799d5bbaf5196fab15ab8de8431c"],["static/icons/favicon-192x192.png","419903b8422586a7e28021bbe9011175"],["static/icons/favicon.ico","04235bda7843ec2fceb1cbe2bc696cf4"],["static/images/card_media_player_bg.png","a34281d1c1835d338a642e90930e61aa"],["static/webcomponents-lite.min.js","b0f32ad3c7749c40d486603f31c9d8b1"]],cacheName="sw-precache-v2--"+(self.registration?self.registration.scope:""),ignoreUrlParametersMatching=[/^utm_/],addDirectoryIndex=function(e,t){var a=new URL(e);return"/"===a.pathname.slice(-1)&&(a.pathname+=t),a.toString()},createCacheKey=function(e,t,a,n){var c=new URL(e);return n&&c.toString().match(n)||(c.search+=(c.search?"&":"")+encodeURIComponent(t)+"="+encodeURIComponent(a)),c.toString()},isPathWhitelisted=function(e,t){if(0===e.length)return!0;var a=new URL(t).pathname;return e.some(function(e){return a.match(e)})},stripIgnoredUrlParameters=function(e,t){var a=new URL(e);return a.search=a.search.slice(1).split("&").map(function(e){return e.split("=")}).filter(function(e){return t.every(function(t){return!t.test(e[0])})}).map(function(e){return e.join("=")}).join("&"),a.toString()},hashParamName="_sw-precache",urlsToCacheKeys=new Map(precacheConfig.map(function(e){var t=e[0],a=e[1],n=new URL(t,self.location),c=createCacheKey(n,hashParamName,a,!1);return[n.toString(),c]}));self.addEventListener("install",function(e){e.waitUntil(caches.open(cacheName).then(function(e){return setOfCachedUrls(e).then(function(t){return Promise.all(Array.from(urlsToCacheKeys.values()).map(function(a){if(!t.has(a))return e.add(new Request(a,{credentials:"same-origin"}))}))})}).then(function(){return self.skipWaiting()}))}),self.addEventListener("activate",function(e){var t=new Set(urlsToCacheKeys.values());e.waitUntil(caches.open(cacheName).then(function(e){return e.keys().then(function(a){return Promise.all(a.map(function(a){if(!t.has(a.url))return e.delete(a)}))})}).then(function(){return self.clients.claim()}))}),self.addEventListener("fetch",function(e){if("GET"===e.request.method){var t,a=stripIgnoredUrlParameters(e.request.url,ignoreUrlParametersMatching);t=urlsToCacheKeys.has(a);var n="index.html";!t&&n&&(a=addDirectoryIndex(a,n),t=urlsToCacheKeys.has(a));var c="/";!t&&c&&"navigate"===e.request.mode&&isPathWhitelisted(["^((?!(static|api|local|service_worker.js|manifest.json)).)*$"],e.request.url)&&(a=new URL(c,self.location).toString(),t=urlsToCacheKeys.has(a)),t&&e.respondWith(caches.open(cacheName).then(function(e){return e.match(urlsToCacheKeys.get(a)).then(function(e){if(e)return e;throw Error("The cached response that was expected is missing.")})}).catch(function(t){return console.warn('Couldn\'t serve response for "%s" from cache: %O',e.request.url,t),fetch(e.request)}))}}),self.addEventListener("push",function(e){var t;e.data&&(t=e.data.json(),e.waitUntil(self.registration.showNotification(t.title,t).then(function(e){firePushCallback({type:"received",tag:t.tag,data:t.data},t.data.jwt)})))}),self.addEventListener("notificationclick",function(e){var t;notificationEventCallback("clicked",e),e.notification.close(),e.notification.data&&e.notification.data.url&&(t=e.notification.data.url,t&&e.waitUntil(clients.matchAll({type:"window"}).then(function(e){var a,n;for(a=0;a<e.length;a++)if(n=e[a],n.url===t&&"focus"in n)return n.focus();if(clients.openWindow)return clients.openWindow(t)})))}),self.addEventListener("notificationclose",function(e){notificationEventCallback("closed",e)}); \ No newline at end of file +"use strict";function setOfCachedUrls(e){return e.keys().then(function(e){return e.map(function(e){return e.url})}).then(function(e){return new Set(e)})}function notificationEventCallback(e,t){firePushCallback({action:t.action,data:t.notification.data,tag:t.notification.tag,type:e},t.notification.data.jwt)}function firePushCallback(e,t){delete e.data.jwt,0===Object.keys(e.data).length&&e.data.constructor===Object&&delete e.data,fetch("/api/notify.html5/callback",{method:"POST",headers:new Headers({"Content-Type":"application/json",Authorization:"Bearer "+t}),body:JSON.stringify(e)})}var precacheConfig=[["/","e14330e71c13caf3a8ad2ec699e46047"],["/frontend/panels/dev-event-c2d5ec676be98d4474d19f94d0262c1e.html","6c55fc819751923ab00c62ae3fbb7222"],["/frontend/panels/dev-info-a9c07bf281fe9791fb15827ec1286825.html","931f9327e368db710fcdf5f7202f2588"],["/frontend/panels/dev-service-b3fe49532c5c03198fafb0c6ed58b76a.html","4194cb43b74108dc6d10354da2fd81fd"],["/frontend/panels/dev-state-65e5f791cc467561719bf591f1386054.html","78158786a6597ef86c3fd6f4985cde92"],["/frontend/panels/dev-template-7d744ab7f7c08b6d6ad42069989de400.html","8a6ee994b1cdb45b081299b8609915ed"],["/frontend/panels/map-1bf6965b24d76db71a1871865cd4a3a2.html","a74c01c2ee68c83c9938af067ec33b81"],["/static/core-5dfb2d3e567fad37af0321d4b29265ed.js","9a50270db7613e3af449f6c773366f4d"],["/static/frontend-d4f164e559944b8abc560d7b46131714.html","fd803353b0ff1844aa4677b8a0f79fea"],["/static/mdi-46a76f877ac9848899b8ed382427c16f.html","a846c4082dd5cffd88ac72cbe943e691"],["static/fonts/roboto/Roboto-Bold.ttf","d329cc8b34667f114a95422aaad1b063"],["static/fonts/roboto/Roboto-Light.ttf","7b5fb88f12bec8143f00e21bc3222124"],["static/fonts/roboto/Roboto-Medium.ttf","fe13e4170719c2fc586501e777bde143"],["static/fonts/roboto/Roboto-Regular.ttf","ac3f799d5bbaf5196fab15ab8de8431c"],["static/icons/favicon-192x192.png","419903b8422586a7e28021bbe9011175"],["static/icons/favicon.ico","04235bda7843ec2fceb1cbe2bc696cf4"],["static/images/card_media_player_bg.png","a34281d1c1835d338a642e90930e61aa"],["static/webcomponents-lite.min.js","b0f32ad3c7749c40d486603f31c9d8b1"]],cacheName="sw-precache-v2--"+(self.registration?self.registration.scope:""),ignoreUrlParametersMatching=[/^utm_/],addDirectoryIndex=function(e,t){var n=new URL(e);return"/"===n.pathname.slice(-1)&&(n.pathname+=t),n.toString()},createCacheKey=function(e,t,n,a){var c=new URL(e);return a&&c.toString().match(a)||(c.search+=(c.search?"&":"")+encodeURIComponent(t)+"="+encodeURIComponent(n)),c.toString()},isPathWhitelisted=function(e,t){if(0===e.length)return!0;var n=new URL(t).pathname;return e.some(function(e){return n.match(e)})},stripIgnoredUrlParameters=function(e,t){var n=new URL(e);return n.search=n.search.slice(1).split("&").map(function(e){return e.split("=")}).filter(function(e){return t.every(function(t){return!t.test(e[0])})}).map(function(e){return e.join("=")}).join("&"),n.toString()},hashParamName="_sw-precache",urlsToCacheKeys=new Map(precacheConfig.map(function(e){var t=e[0],n=e[1],a=new URL(t,self.location),c=createCacheKey(a,hashParamName,n,!1);return[a.toString(),c]}));self.addEventListener("install",function(e){e.waitUntil(caches.open(cacheName).then(function(e){return setOfCachedUrls(e).then(function(t){return Promise.all(Array.from(urlsToCacheKeys.values()).map(function(n){if(!t.has(n))return e.add(new Request(n,{credentials:"same-origin"}))}))})}).then(function(){return self.skipWaiting()}))}),self.addEventListener("activate",function(e){var t=new Set(urlsToCacheKeys.values());e.waitUntil(caches.open(cacheName).then(function(e){return e.keys().then(function(n){return Promise.all(n.map(function(n){if(!t.has(n.url))return e.delete(n)}))})}).then(function(){return self.clients.claim()}))}),self.addEventListener("fetch",function(e){if("GET"===e.request.method){var t,n=stripIgnoredUrlParameters(e.request.url,ignoreUrlParametersMatching);t=urlsToCacheKeys.has(n);var a="index.html";!t&&a&&(n=addDirectoryIndex(n,a),t=urlsToCacheKeys.has(n));var c="/";!t&&c&&"navigate"===e.request.mode&&isPathWhitelisted(["^((?!(static|api|local|service_worker.js|manifest.json)).)*$"],e.request.url)&&(n=new URL(c,self.location).toString(),t=urlsToCacheKeys.has(n)),t&&e.respondWith(caches.open(cacheName).then(function(e){return e.match(urlsToCacheKeys.get(n)).then(function(e){if(e)return e;throw Error("The cached response that was expected is missing.")})}).catch(function(t){return console.warn('Couldn\'t serve response for "%s" from cache: %O',e.request.url,t),fetch(e.request)}))}}),self.addEventListener("push",function(e){var t;e.data&&(t=e.data.json(),e.waitUntil(self.registration.showNotification(t.title,t).then(function(e){firePushCallback({type:"received",tag:t.tag,data:t.data},t.data.jwt)})))}),self.addEventListener("notificationclick",function(e){var t;notificationEventCallback("clicked",e),e.notification.close(),e.notification.data&&e.notification.data.url&&(t=e.notification.data.url,t&&e.waitUntil(clients.matchAll({type:"window"}).then(function(e){var n,a;for(n=0;n<e.length;n++)if(a=e[n],a.url===t&&"focus"in a)return a.focus();if(clients.openWindow)return clients.openWindow(t)})))}),self.addEventListener("notificationclose",function(e){notificationEventCallback("closed",e)}); \ No newline at end of file diff --git a/homeassistant/components/frontend/www_static/service_worker.js.gz b/homeassistant/components/frontend/www_static/service_worker.js.gz index b9dbe57bf2aa476e648362b06fabe66f9b374704..9afdbfd360603b2dd27a5cc8e4b59a7f9f107ba4 100644 GIT binary patch delta 2271 zcmbO#G)<^pzMF%?+}|yNiMcqns4O!%HNHH*C_A-CFRPegX~gg1*{4MRg^Mf;Z<JCL z6N^}rWwdkWOtaj$$;Y3tn_u7DzgdWrNi?i1=Jx;U^Gzz=)1Kb3p6jW^wEOwTxyQ@P z=7w@NUo&YnIp?xoE3<2t)Ru&MFU4cdIo9T#y2ko`7vtuvxK)fS_aCk*-Fx87!Xk6& zZ(=$>K0V}Ly=>3dy#D;P4~jkr^6Wd98XdjrmdLINcm6$p${O;FRp0yI({k~e$FZ*$ zHGW@Rwy(DO?C#p-YA@t#j`AM=|MnE;8|(WYZvOrL<J81EYUz{3rv#imQ)3aMKee=V zVuWX~`EB0A59e9LH%~0SF8Mjt@ZFi+T+h-1)slB^JNR+Ec*3)-R;Bm$|Ne3E<MRWe zCT~}|ewY8dx%%y%723@aeRc~spIdo&`st##FMdQvhxh%jX?2?QX#d^alQS9h>)APa z9}5^MdFt%!vwW<@H1nC|1(PK+KVLoGy6fecpvS7~7vvo0(sN5lwwpB3tDtfk*NK^n zOcr-Nv0ARxbIC*KMSz3tN*^Iz$&;H~o&=t8l{jVcNFZBrlSWtHYfY`#{tCUrJ}){1 zc`K(0>v|ko#G}#~acWV@VzvIxbIE@MmiyFq_OwK4&3&Q6r7Wx3BO89%sW{L>qBDZ| z>|~2cojl2tjL&X$h;~%<NzuHYu}Eck(1nPUDJ?!HLna#dt#~vsEMsYv%jAb_ZkbFO z;eJb&WKLV6qP+70XO&yhv^LJWFHTBS&DuC+x#zsbw3R(uy-d$WDv3VnXGl-jsIzvJ zPwJGS`iU=n+I*I1J?(N+Y@6|vD?=hL#Bd(d6H8GSEk|KNBcZ1|9g08AQ7Jg0nxn0( zR5ELMXUB?DLEYBsI?6h(!kYb+TP_|j)^b)-ZkXaJcG{+2@_J%dV^8uykM#$cLQZU4 zBQ2ro)$MU~!jhTKw9XZj$_To;PI2d0$hB{)*&7?q#q~NaXEi$&pUt`yv)t(PBMa9x zSLWU6Wma}I_0&}1{N=;?*hwvOg^^<*$FXE-CY}t5<DNQBYdM`YEZcMr^D43hFyEiN zFW_j$G8=Ex(?)v5Zjzf7nz|xg7W+&J$$yw&GSwtyVo>Lm6>WtxU4^_mk4<=HD<i%7 z;)}97R~DIl{o!2y-T2p5z0ianw?M7FBF&i{nOz=&PL=a6Xgr#ut#rub-^>-)kLKiE z+hjB`<KPUni3~cCQm+kKIyfYg7f$N<=W|Uu;AqxHv1N?PPM%^(O{YChvusvUnV{Hk z%5468&fg51Lr>1$YSMRe{?naaEf1uuJy%(lG3m`<a!Xb!Un;sSzrNpe{|0{LH&*r^ z@;9tWtNr>+F-^v)h3zAclGvj5jv5b+lam$~G5ulx-fq$*ys)Az>fkQc2ooly#<|8* ztN0fs9ZbKVBxv%grt!juVx8048Rw4X<ns1wmYKEM&N$lHwNWidYN4iO*|RAH`?TK* zwX6|8z3b4s+kK}FDQpxEjc2Q$v7oRew5ij-*hj}Ta#q_$w}hgjEYB{7?|<B|y@oM( z`Cge^kHiweUbl0dx1Cltv!$^Lc^o%5&v%by?V5=lvd2GnN4A=FO+Hb5Z-Gm*$hS6S zex<KI=a21Qf96rmpR3Qk{<gK`y!`wsbm@cRU-FJ^*pqW|<*X>FKYt#Ye!99u-nxFm zya~Ch6HcDp<Mh(8+lS*_N5$cV)!%=mWZB5GxBN<WuUuFD`ZU{yx24IK_CLt-pB?{m z&vgxcQ@$Ss8s#bvkED3ctu{Ab#}kzjWobV%Pkz3o^YKFkOjFm0*8KbM>ZqE*x{rQy zR(`%P{nY20o#}ZO_qoUKJ7YLSbrH`iIlI=fxAhB{UT-||y0=!y?^~nsJ+a9r%eG{{ zX0@@nw6^y3GUoe!+^5514X(zS{Et`?5Y>O8<nx9;(T`1H&&3}r1>O7jvv_aXs~d_T z;;LD784EcJo@A_hXE*cga`hWK7aV2$s`KYn>EbtmvG-psy0zlf{EJ(ve;Pl3yXWu% z{mGx_S{2sFOsl``|5a`0Exum!6}k0$tPBn~r7yeYu>X*JQ);2O<$mo=o8Gb8p6P#C z$F;lWzS@~b>M70tB<~yEn;xHUn}6x#;a#tveY$S8QtQYS&4Rw8g;ze7>oz}_B>t>8 zwd>Mbn+)bP?@!$|>w3)IeE9K+y-RO%@ZK~3x+p`@;p@B4%N~X^UaJ3aXm5L3!NJp_ z4-B8hv8-OlWpIY0dF_H+i;M2p5B*^Lw|SFfz|ZR(bDh?6$8B5g*Zr-(AZDKE)aC;v z^?ZI-*8dc8-hNN|$tw7A^1-|h{RcA78;VOTtF`&<k$=v|U3ShN`5p3>Z$kMO#oDqh zwf+6}z|HxY1!v_My{5H3RrvGtX#FGgfYRfOYv)|xdj4MD-ZC~j`_~WFzk->(N@1ri zo_lidt)sYHvQmE1vhRy8EDyZy@KfY8ljq9$C)NBvq#V~h=)<3Jdh4Bs^1|1=CkHQC z>(?Q}H<v5DZKm&pTKS1WZHJrJy`N{ffA_o1>UsWO%qu4C*{Hj4Po%u>IsMnqtW7+= z)|+$3iQYQ3Dcwm&?EU)sgOZ8-lloM*>$=^`Hr%cIc!m4EjqVTFqL%1=U25>ze*SXX z(|4xZH}|pge^2x~U?#1ecJIpc=IOq{$!xW=4lf8^$+p*3m*>o!*#}kg**_$AHXibK zwLWkp|Ki32FO4J0#B451d=nBreH+*8Q?<Vq#Z6sR|Lc3O@rI1UbNON)zx*}*n&geT ztI-8kKc3#bT)SnW?DcSl+t*_qW!85*T{YMKf`!`OS|&FBn@P377jIqqT>kqgv-8b8 z`)YO<>poIa6<fAtOD)Iehj)F-w?9hQ=3LmwzW1wW&)(9=`<HIWSAQ)kzx~KI?EP+Y zlN;)9z8+t=`gs0?`Z;<1rYvh7SAVzNv?jWMKkoYq+Ygu8(s`dZ-~Xj^|K-uw+paBr zSDdpTyFhQF@0IE2oWG~sjd}8!^BLE*7>kwvwn<)7yLz&-J@V|t&)QFFRtwB#Tvbw{ z8?O6p9^?HK8~$D8>&y?zN*m{_t$i7iKTWo-@PCYj!2Z7lHc}ihcaJ{gxi<R`f7#So J!Ba&T7y!1lXu1FZ delta 2253 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 -- GitLab