@decidables/decidables-elements 0.3.4 → 0.3.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- {"version":3,"file":"decidablesElements.umd.min.js","sources":["../../../node_modules/lit/node_modules/@lit/reactive-element/css-tag.js","../../../node_modules/lit/node_modules/@lit/reactive-element/reactive-element.js","../../../node_modules/lit/node_modules/lit-html/lit-html.js","../../../node_modules/lit/node_modules/lit-element/node_modules/@lit/reactive-element/css-tag.js","../../../node_modules/lit/node_modules/lit-element/node_modules/@lit/reactive-element/reactive-element.js","../../../node_modules/lit/node_modules/lit-element/lit-element.js","../../../node_modules/d3-dispatch/src/dispatch.js","../../../node_modules/d3-selection/src/namespaces.js","../../../node_modules/d3-selection/src/namespace.js","../../../node_modules/d3-selection/src/creator.js","../../../node_modules/d3-selection/src/selector.js","../../../node_modules/d3-selection/src/array.js","../../../node_modules/d3-selection/src/selectorAll.js","../../../node_modules/d3-selection/src/matcher.js","../../../node_modules/d3-selection/src/selection/selectChild.js","../../../node_modules/d3-selection/src/selection/selectChildren.js","../../../node_modules/d3-selection/src/selection/sparse.js","../../../node_modules/d3-selection/src/selection/enter.js","../../../node_modules/d3-selection/src/constant.js","../../../node_modules/d3-selection/src/selection/data.js","../../../node_modules/d3-selection/src/selection/sort.js","../../../node_modules/d3-selection/src/selection/attr.js","../../../node_modules/d3-selection/src/window.js","../../../node_modules/d3-selection/src/selection/style.js","../../../node_modules/d3-selection/src/selection/property.js","../../../node_modules/d3-selection/src/selection/classed.js","../../../node_modules/d3-selection/src/selection/text.js","../../../node_modules/d3-selection/src/selection/html.js","../../../node_modules/d3-selection/src/selection/raise.js","../../../node_modules/d3-selection/src/selection/lower.js","../../../node_modules/d3-selection/src/selection/insert.js","../../../node_modules/d3-selection/src/selection/remove.js","../../../node_modules/d3-selection/src/selection/clone.js","../../../node_modules/d3-selection/src/selection/on.js","../../../node_modules/d3-selection/src/selection/dispatch.js","../../../node_modules/d3-selection/src/selection/index.js","../../../node_modules/d3-selection/src/select.js","../../../node_modules/d3-color/src/define.js","../../../node_modules/d3-color/src/color.js","../../../node_modules/d3-selection/src/selection/select.js","../../../node_modules/d3-selection/src/selection/selectAll.js","../../../node_modules/d3-selection/src/selection/filter.js","../../../node_modules/d3-selection/src/selection/exit.js","../../../node_modules/d3-selection/src/selection/join.js","../../../node_modules/d3-selection/src/selection/merge.js","../../../node_modules/d3-selection/src/selection/order.js","../../../node_modules/d3-selection/src/selection/call.js","../../../node_modules/d3-selection/src/selection/nodes.js","../../../node_modules/d3-selection/src/selection/node.js","../../../node_modules/d3-selection/src/selection/size.js","../../../node_modules/d3-selection/src/selection/empty.js","../../../node_modules/d3-selection/src/selection/each.js","../../../node_modules/d3-selection/src/selection/append.js","../../../node_modules/d3-selection/src/selection/datum.js","../../../node_modules/d3-selection/src/selection/iterator.js","../../../node_modules/d3-interpolate/src/constant.js","../../../node_modules/d3-interpolate/src/color.js","../../../node_modules/d3-interpolate/src/rgb.js","../../../node_modules/d3-interpolate/src/number.js","../../../node_modules/d3-interpolate/src/string.js","../../../node_modules/d3-interpolate/src/transform/decompose.js","../../../node_modules/d3-interpolate/src/transform/parse.js","../../../node_modules/d3-interpolate/src/transform/index.js","../../../node_modules/d3-timer/src/timer.js","../../../node_modules/d3-timer/src/timeout.js","../../../node_modules/d3-transition/src/transition/schedule.js","../../../node_modules/d3-transition/src/transition/tween.js","../../../node_modules/d3-transition/src/transition/interpolate.js","../../../node_modules/d3-transition/src/transition/attr.js","../../../node_modules/d3-transition/src/transition/attrTween.js","../../../node_modules/d3-transition/src/transition/delay.js","../../../node_modules/d3-transition/src/transition/duration.js","../../../node_modules/d3-transition/src/transition/ease.js","../../../node_modules/d3-transition/src/transition/on.js","../../../node_modules/d3-transition/src/transition/selection.js","../../../node_modules/d3-transition/src/transition/style.js","../../../node_modules/d3-transition/src/transition/styleTween.js","../../../node_modules/d3-transition/src/transition/textTween.js","../../../node_modules/d3-transition/src/transition/index.js","../../../node_modules/d3-transition/src/transition/select.js","../../../node_modules/d3-transition/src/transition/selectAll.js","../../../node_modules/d3-transition/src/transition/filter.js","../../../node_modules/d3-transition/src/transition/merge.js","../../../node_modules/d3-transition/src/transition/transition.js","../../../node_modules/d3-transition/src/transition/text.js","../../../node_modules/d3-transition/src/transition/remove.js","../../../node_modules/d3-transition/src/transition/easeVarying.js","../../../node_modules/d3-transition/src/transition/end.js","../../../node_modules/d3-transition/src/selection/transition.js","../../../node_modules/d3-ease/src/cubic.js","../../../node_modules/d3-zoom/src/transform.js","../../../node_modules/d3-transition/src/selection/index.js","../../../node_modules/d3-transition/src/selection/interrupt.js","../../../node_modules/d3-transition/src/interrupt.js","../src/decidables-element.js","../src/button.js","../../../node_modules/lit/node_modules/lit-html/directives/if-defined.js","../src/slider.js","../src/spinner.js","../src/switch.js","../src/toggle.js","../src/toggle-option.js","../src/converter-array.js","../src/converter-set.js"],"sourcesContent":["/**\n * @license\n * Copyright 2019 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\nconst t=window,e=t.ShadowRoot&&(void 0===t.ShadyCSS||t.ShadyCSS.nativeShadow)&&\"adoptedStyleSheets\"in Document.prototype&&\"replace\"in CSSStyleSheet.prototype,s=Symbol(),n=new WeakMap;class o{constructor(t,e,n){if(this._$cssResult$=!0,n!==s)throw Error(\"CSSResult is not constructable. Use `unsafeCSS` or `css` instead.\");this.cssText=t,this.t=e}get styleSheet(){let t=this.o;const s=this.t;if(e&&void 0===t){const e=void 0!==s&&1===s.length;e&&(t=n.get(s)),void 0===t&&((this.o=t=new CSSStyleSheet).replaceSync(this.cssText),e&&n.set(s,t))}return t}toString(){return this.cssText}}const r=t=>new o(\"string\"==typeof t?t:t+\"\",void 0,s),i=(t,...e)=>{const n=1===t.length?t[0]:e.reduce(((e,s,n)=>e+(t=>{if(!0===t._$cssResult$)return t.cssText;if(\"number\"==typeof t)return t;throw Error(\"Value passed to 'css' function must be a 'css' function result: \"+t+\". Use 'unsafeCSS' to pass non-literal values, but take care to ensure page security.\")})(s)+t[n+1]),t[0]);return new o(n,t,s)},S=(s,n)=>{e?s.adoptedStyleSheets=n.map((t=>t instanceof CSSStyleSheet?t:t.styleSheet)):n.forEach((e=>{const n=document.createElement(\"style\"),o=t.litNonce;void 0!==o&&n.setAttribute(\"nonce\",o),n.textContent=e.cssText,s.appendChild(n)}))},c=e?t=>t:t=>t instanceof CSSStyleSheet?(t=>{let e=\"\";for(const s of t.cssRules)e+=s.cssText;return r(e)})(t):t;export{o as CSSResult,S as adoptStyles,i as css,c as getCompatibleStyle,e as supportsAdoptingStyleSheets,r as unsafeCSS};\n//# sourceMappingURL=css-tag.js.map\n","import{getCompatibleStyle as t,adoptStyles as i}from\"./css-tag.js\";export{CSSResult,adoptStyles,css,getCompatibleStyle,supportsAdoptingStyleSheets,unsafeCSS}from\"./css-tag.js\";\n/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */var s;const e=window,r=e.trustedTypes,h=r?r.emptyScript:\"\",o=e.reactiveElementPolyfillSupport,n={toAttribute(t,i){switch(i){case Boolean:t=t?h:null;break;case Object:case Array:t=null==t?t:JSON.stringify(t)}return t},fromAttribute(t,i){let s=t;switch(i){case Boolean:s=null!==t;break;case Number:s=null===t?null:Number(t);break;case Object:case Array:try{s=JSON.parse(t)}catch(t){s=null}}return s}},a=(t,i)=>i!==t&&(i==i||t==t),l={attribute:!0,type:String,converter:n,reflect:!1,hasChanged:a};class d extends HTMLElement{constructor(){super(),this._$Ei=new Map,this.isUpdatePending=!1,this.hasUpdated=!1,this._$El=null,this.u()}static addInitializer(t){var i;this.finalize(),(null!==(i=this.h)&&void 0!==i?i:this.h=[]).push(t)}static get observedAttributes(){this.finalize();const t=[];return this.elementProperties.forEach(((i,s)=>{const e=this._$Ep(s,i);void 0!==e&&(this._$Ev.set(e,s),t.push(e))})),t}static createProperty(t,i=l){if(i.state&&(i.attribute=!1),this.finalize(),this.elementProperties.set(t,i),!i.noAccessor&&!this.prototype.hasOwnProperty(t)){const s=\"symbol\"==typeof t?Symbol():\"__\"+t,e=this.getPropertyDescriptor(t,s,i);void 0!==e&&Object.defineProperty(this.prototype,t,e)}}static getPropertyDescriptor(t,i,s){return{get(){return this[i]},set(e){const r=this[t];this[i]=e,this.requestUpdate(t,r,s)},configurable:!0,enumerable:!0}}static getPropertyOptions(t){return this.elementProperties.get(t)||l}static finalize(){if(this.hasOwnProperty(\"finalized\"))return!1;this.finalized=!0;const t=Object.getPrototypeOf(this);if(t.finalize(),void 0!==t.h&&(this.h=[...t.h]),this.elementProperties=new Map(t.elementProperties),this._$Ev=new Map,this.hasOwnProperty(\"properties\")){const t=this.properties,i=[...Object.getOwnPropertyNames(t),...Object.getOwnPropertySymbols(t)];for(const s of i)this.createProperty(s,t[s])}return this.elementStyles=this.finalizeStyles(this.styles),!0}static finalizeStyles(i){const s=[];if(Array.isArray(i)){const e=new Set(i.flat(1/0).reverse());for(const i of e)s.unshift(t(i))}else void 0!==i&&s.push(t(i));return s}static _$Ep(t,i){const s=i.attribute;return!1===s?void 0:\"string\"==typeof s?s:\"string\"==typeof t?t.toLowerCase():void 0}u(){var t;this._$E_=new Promise((t=>this.enableUpdating=t)),this._$AL=new Map,this._$Eg(),this.requestUpdate(),null===(t=this.constructor.h)||void 0===t||t.forEach((t=>t(this)))}addController(t){var i,s;(null!==(i=this._$ES)&&void 0!==i?i:this._$ES=[]).push(t),void 0!==this.renderRoot&&this.isConnected&&(null===(s=t.hostConnected)||void 0===s||s.call(t))}removeController(t){var i;null===(i=this._$ES)||void 0===i||i.splice(this._$ES.indexOf(t)>>>0,1)}_$Eg(){this.constructor.elementProperties.forEach(((t,i)=>{this.hasOwnProperty(i)&&(this._$Ei.set(i,this[i]),delete this[i])}))}createRenderRoot(){var t;const s=null!==(t=this.shadowRoot)&&void 0!==t?t:this.attachShadow(this.constructor.shadowRootOptions);return i(s,this.constructor.elementStyles),s}connectedCallback(){var t;void 0===this.renderRoot&&(this.renderRoot=this.createRenderRoot()),this.enableUpdating(!0),null===(t=this._$ES)||void 0===t||t.forEach((t=>{var i;return null===(i=t.hostConnected)||void 0===i?void 0:i.call(t)}))}enableUpdating(t){}disconnectedCallback(){var t;null===(t=this._$ES)||void 0===t||t.forEach((t=>{var i;return null===(i=t.hostDisconnected)||void 0===i?void 0:i.call(t)}))}attributeChangedCallback(t,i,s){this._$AK(t,s)}_$EO(t,i,s=l){var e;const r=this.constructor._$Ep(t,s);if(void 0!==r&&!0===s.reflect){const h=(void 0!==(null===(e=s.converter)||void 0===e?void 0:e.toAttribute)?s.converter:n).toAttribute(i,s.type);this._$El=t,null==h?this.removeAttribute(r):this.setAttribute(r,h),this._$El=null}}_$AK(t,i){var s;const e=this.constructor,r=e._$Ev.get(t);if(void 0!==r&&this._$El!==r){const t=e.getPropertyOptions(r),h=\"function\"==typeof t.converter?{fromAttribute:t.converter}:void 0!==(null===(s=t.converter)||void 0===s?void 0:s.fromAttribute)?t.converter:n;this._$El=r,this[r]=h.fromAttribute(i,t.type),this._$El=null}}requestUpdate(t,i,s){let e=!0;void 0!==t&&(((s=s||this.constructor.getPropertyOptions(t)).hasChanged||a)(this[t],i)?(this._$AL.has(t)||this._$AL.set(t,i),!0===s.reflect&&this._$El!==t&&(void 0===this._$EC&&(this._$EC=new Map),this._$EC.set(t,s))):e=!1),!this.isUpdatePending&&e&&(this._$E_=this._$Ej())}async _$Ej(){this.isUpdatePending=!0;try{await this._$E_}catch(t){Promise.reject(t)}const t=this.scheduleUpdate();return null!=t&&await t,!this.isUpdatePending}scheduleUpdate(){return this.performUpdate()}performUpdate(){var t;if(!this.isUpdatePending)return;this.hasUpdated,this._$Ei&&(this._$Ei.forEach(((t,i)=>this[i]=t)),this._$Ei=void 0);let i=!1;const s=this._$AL;try{i=this.shouldUpdate(s),i?(this.willUpdate(s),null===(t=this._$ES)||void 0===t||t.forEach((t=>{var i;return null===(i=t.hostUpdate)||void 0===i?void 0:i.call(t)})),this.update(s)):this._$Ek()}catch(t){throw i=!1,this._$Ek(),t}i&&this._$AE(s)}willUpdate(t){}_$AE(t){var i;null===(i=this._$ES)||void 0===i||i.forEach((t=>{var i;return null===(i=t.hostUpdated)||void 0===i?void 0:i.call(t)})),this.hasUpdated||(this.hasUpdated=!0,this.firstUpdated(t)),this.updated(t)}_$Ek(){this._$AL=new Map,this.isUpdatePending=!1}get updateComplete(){return this.getUpdateComplete()}getUpdateComplete(){return this._$E_}shouldUpdate(t){return!0}update(t){void 0!==this._$EC&&(this._$EC.forEach(((t,i)=>this._$EO(i,this[i],t))),this._$EC=void 0),this._$Ek()}updated(t){}firstUpdated(t){}}d.finalized=!0,d.elementProperties=new Map,d.elementStyles=[],d.shadowRootOptions={mode:\"open\"},null==o||o({ReactiveElement:d}),(null!==(s=e.reactiveElementVersions)&&void 0!==s?s:e.reactiveElementVersions=[]).push(\"1.6.1\");export{d as ReactiveElement,n as defaultConverter,a as notEqual};\n//# sourceMappingURL=reactive-element.js.map\n","/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\nvar t;const i=window,s=i.trustedTypes,e=s?s.createPolicy(\"lit-html\",{createHTML:t=>t}):void 0,o=\"$lit$\",n=`lit$${(Math.random()+\"\").slice(9)}$`,l=\"?\"+n,h=`<${l}>`,r=document,d=()=>r.createComment(\"\"),u=t=>null===t||\"object\"!=typeof t&&\"function\"!=typeof t,c=Array.isArray,v=t=>c(t)||\"function\"==typeof(null==t?void 0:t[Symbol.iterator]),a=\"[ \\t\\n\\f\\r]\",f=/<(?:(!--|\\/[^a-zA-Z])|(\\/?[a-zA-Z][^>\\s]*)|(\\/?$))/g,_=/-->/g,m=/>/g,p=RegExp(`>|${a}(?:([^\\\\s\"'>=/]+)(${a}*=${a}*(?:[^ \\t\\n\\f\\r\"'\\`<>=]|(\"|')|))|$)`,\"g\"),g=/'/g,$=/\"/g,y=/^(?:script|style|textarea|title)$/i,w=t=>(i,...s)=>({_$litType$:t,strings:i,values:s}),x=w(1),b=w(2),T=Symbol.for(\"lit-noChange\"),A=Symbol.for(\"lit-nothing\"),E=new WeakMap,C=r.createTreeWalker(r,129,null,!1),P=(t,i)=>{const s=t.length-1,l=[];let r,d=2===i?\"<svg>\":\"\",u=f;for(let i=0;i<s;i++){const s=t[i];let e,c,v=-1,a=0;for(;a<s.length&&(u.lastIndex=a,c=u.exec(s),null!==c);)a=u.lastIndex,u===f?\"!--\"===c[1]?u=_:void 0!==c[1]?u=m:void 0!==c[2]?(y.test(c[2])&&(r=RegExp(\"</\"+c[2],\"g\")),u=p):void 0!==c[3]&&(u=p):u===p?\">\"===c[0]?(u=null!=r?r:f,v=-1):void 0===c[1]?v=-2:(v=u.lastIndex-c[2].length,e=c[1],u=void 0===c[3]?p:'\"'===c[3]?$:g):u===$||u===g?u=p:u===_||u===m?u=f:(u=p,r=void 0);const w=u===p&&t[i+1].startsWith(\"/>\")?\" \":\"\";d+=u===f?s+h:v>=0?(l.push(e),s.slice(0,v)+o+s.slice(v)+n+w):s+n+(-2===v?(l.push(void 0),i):w)}const c=d+(t[s]||\"<?>\")+(2===i?\"</svg>\":\"\");if(!Array.isArray(t)||!t.hasOwnProperty(\"raw\"))throw Error(\"invalid template strings array\");return[void 0!==e?e.createHTML(c):c,l]};class V{constructor({strings:t,_$litType$:i},e){let h;this.parts=[];let r=0,u=0;const c=t.length-1,v=this.parts,[a,f]=P(t,i);if(this.el=V.createElement(a,e),C.currentNode=this.el.content,2===i){const t=this.el.content,i=t.firstChild;i.remove(),t.append(...i.childNodes)}for(;null!==(h=C.nextNode())&&v.length<c;){if(1===h.nodeType){if(h.hasAttributes()){const t=[];for(const i of h.getAttributeNames())if(i.endsWith(o)||i.startsWith(n)){const s=f[u++];if(t.push(i),void 0!==s){const t=h.getAttribute(s.toLowerCase()+o).split(n),i=/([.?@])?(.*)/.exec(s);v.push({type:1,index:r,name:i[2],strings:t,ctor:\".\"===i[1]?k:\"?\"===i[1]?I:\"@\"===i[1]?L:R})}else v.push({type:6,index:r})}for(const i of t)h.removeAttribute(i)}if(y.test(h.tagName)){const t=h.textContent.split(n),i=t.length-1;if(i>0){h.textContent=s?s.emptyScript:\"\";for(let s=0;s<i;s++)h.append(t[s],d()),C.nextNode(),v.push({type:2,index:++r});h.append(t[i],d())}}}else if(8===h.nodeType)if(h.data===l)v.push({type:2,index:r});else{let t=-1;for(;-1!==(t=h.data.indexOf(n,t+1));)v.push({type:7,index:r}),t+=n.length-1}r++}}static createElement(t,i){const s=r.createElement(\"template\");return s.innerHTML=t,s}}function N(t,i,s=t,e){var o,n,l,h;if(i===T)return i;let r=void 0!==e?null===(o=s._$Co)||void 0===o?void 0:o[e]:s._$Cl;const d=u(i)?void 0:i._$litDirective$;return(null==r?void 0:r.constructor)!==d&&(null===(n=null==r?void 0:r._$AO)||void 0===n||n.call(r,!1),void 0===d?r=void 0:(r=new d(t),r._$AT(t,s,e)),void 0!==e?(null!==(l=(h=s)._$Co)&&void 0!==l?l:h._$Co=[])[e]=r:s._$Cl=r),void 0!==r&&(i=N(t,r._$AS(t,i.values),r,e)),i}class S{constructor(t,i){this.u=[],this._$AN=void 0,this._$AD=t,this._$AM=i}get parentNode(){return this._$AM.parentNode}get _$AU(){return this._$AM._$AU}v(t){var i;const{el:{content:s},parts:e}=this._$AD,o=(null!==(i=null==t?void 0:t.creationScope)&&void 0!==i?i:r).importNode(s,!0);C.currentNode=o;let n=C.nextNode(),l=0,h=0,d=e[0];for(;void 0!==d;){if(l===d.index){let i;2===d.type?i=new M(n,n.nextSibling,this,t):1===d.type?i=new d.ctor(n,d.name,d.strings,this,t):6===d.type&&(i=new z(n,this,t)),this.u.push(i),d=e[++h]}l!==(null==d?void 0:d.index)&&(n=C.nextNode(),l++)}return o}p(t){let i=0;for(const s of this.u)void 0!==s&&(void 0!==s.strings?(s._$AI(t,s,i),i+=s.strings.length-2):s._$AI(t[i])),i++}}class M{constructor(t,i,s,e){var o;this.type=2,this._$AH=A,this._$AN=void 0,this._$AA=t,this._$AB=i,this._$AM=s,this.options=e,this._$Cm=null===(o=null==e?void 0:e.isConnected)||void 0===o||o}get _$AU(){var t,i;return null!==(i=null===(t=this._$AM)||void 0===t?void 0:t._$AU)&&void 0!==i?i:this._$Cm}get parentNode(){let t=this._$AA.parentNode;const i=this._$AM;return void 0!==i&&11===(null==t?void 0:t.nodeType)&&(t=i.parentNode),t}get startNode(){return this._$AA}get endNode(){return this._$AB}_$AI(t,i=this){t=N(this,t,i),u(t)?t===A||null==t||\"\"===t?(this._$AH!==A&&this._$AR(),this._$AH=A):t!==this._$AH&&t!==T&&this.g(t):void 0!==t._$litType$?this.$(t):void 0!==t.nodeType?this.T(t):v(t)?this.k(t):this.g(t)}S(t){return this._$AA.parentNode.insertBefore(t,this._$AB)}T(t){this._$AH!==t&&(this._$AR(),this._$AH=this.S(t))}g(t){this._$AH!==A&&u(this._$AH)?this._$AA.nextSibling.data=t:this.T(r.createTextNode(t)),this._$AH=t}$(t){var i;const{values:s,_$litType$:e}=t,o=\"number\"==typeof e?this._$AC(t):(void 0===e.el&&(e.el=V.createElement(e.h,this.options)),e);if((null===(i=this._$AH)||void 0===i?void 0:i._$AD)===o)this._$AH.p(s);else{const t=new S(o,this),i=t.v(this.options);t.p(s),this.T(i),this._$AH=t}}_$AC(t){let i=E.get(t.strings);return void 0===i&&E.set(t.strings,i=new V(t)),i}k(t){c(this._$AH)||(this._$AH=[],this._$AR());const i=this._$AH;let s,e=0;for(const o of t)e===i.length?i.push(s=new M(this.S(d()),this.S(d()),this,this.options)):s=i[e],s._$AI(o),e++;e<i.length&&(this._$AR(s&&s._$AB.nextSibling,e),i.length=e)}_$AR(t=this._$AA.nextSibling,i){var s;for(null===(s=this._$AP)||void 0===s||s.call(this,!1,!0,i);t&&t!==this._$AB;){const i=t.nextSibling;t.remove(),t=i}}setConnected(t){var i;void 0===this._$AM&&(this._$Cm=t,null===(i=this._$AP)||void 0===i||i.call(this,t))}}class R{constructor(t,i,s,e,o){this.type=1,this._$AH=A,this._$AN=void 0,this.element=t,this.name=i,this._$AM=e,this.options=o,s.length>2||\"\"!==s[0]||\"\"!==s[1]?(this._$AH=Array(s.length-1).fill(new String),this.strings=s):this._$AH=A}get tagName(){return this.element.tagName}get _$AU(){return this._$AM._$AU}_$AI(t,i=this,s,e){const o=this.strings;let n=!1;if(void 0===o)t=N(this,t,i,0),n=!u(t)||t!==this._$AH&&t!==T,n&&(this._$AH=t);else{const e=t;let l,h;for(t=o[0],l=0;l<o.length-1;l++)h=N(this,e[s+l],i,l),h===T&&(h=this._$AH[l]),n||(n=!u(h)||h!==this._$AH[l]),h===A?t=A:t!==A&&(t+=(null!=h?h:\"\")+o[l+1]),this._$AH[l]=h}n&&!e&&this.j(t)}j(t){t===A?this.element.removeAttribute(this.name):this.element.setAttribute(this.name,null!=t?t:\"\")}}class k extends R{constructor(){super(...arguments),this.type=3}j(t){this.element[this.name]=t===A?void 0:t}}const H=s?s.emptyScript:\"\";class I extends R{constructor(){super(...arguments),this.type=4}j(t){t&&t!==A?this.element.setAttribute(this.name,H):this.element.removeAttribute(this.name)}}class L extends R{constructor(t,i,s,e,o){super(t,i,s,e,o),this.type=5}_$AI(t,i=this){var s;if((t=null!==(s=N(this,t,i,0))&&void 0!==s?s:A)===T)return;const e=this._$AH,o=t===A&&e!==A||t.capture!==e.capture||t.once!==e.once||t.passive!==e.passive,n=t!==A&&(e===A||o);o&&this.element.removeEventListener(this.name,this,e),n&&this.element.addEventListener(this.name,this,t),this._$AH=t}handleEvent(t){var i,s;\"function\"==typeof this._$AH?this._$AH.call(null!==(s=null===(i=this.options)||void 0===i?void 0:i.host)&&void 0!==s?s:this.element,t):this._$AH.handleEvent(t)}}class z{constructor(t,i,s){this.element=t,this.type=6,this._$AN=void 0,this._$AM=i,this.options=s}get _$AU(){return this._$AM._$AU}_$AI(t){N(this,t)}}const Z={P:o,A:n,M:l,C:1,L:P,D:S,R:v,V:N,I:M,H:R,N:I,U:L,F:k,B:z},j=i.litHtmlPolyfillSupport;null==j||j(V,M),(null!==(t=i.litHtmlVersions)&&void 0!==t?t:i.litHtmlVersions=[]).push(\"2.7.0\");const B=(t,i,s)=>{var e,o;const n=null!==(e=null==s?void 0:s.renderBefore)&&void 0!==e?e:i;let l=n._$litPart$;if(void 0===l){const t=null!==(o=null==s?void 0:s.renderBefore)&&void 0!==o?o:null;n._$litPart$=l=new M(i.insertBefore(d(),t),t,void 0,null!=s?s:{})}return l._$AI(t),l};export{Z as _$LH,x as html,T as noChange,A as nothing,B as render,b as svg};\n//# sourceMappingURL=lit-html.js.map\n","/**\n * @license\n * Copyright 2019 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\nconst t=window.ShadowRoot&&(void 0===window.ShadyCSS||window.ShadyCSS.nativeShadow)&&\"adoptedStyleSheets\"in Document.prototype&&\"replace\"in CSSStyleSheet.prototype,e=Symbol(),n=new Map;class s{constructor(t,n){if(this._$cssResult$=!0,n!==e)throw Error(\"CSSResult is not constructable. Use `unsafeCSS` or `css` instead.\");this.cssText=t}get styleSheet(){let e=n.get(this.cssText);return t&&void 0===e&&(n.set(this.cssText,e=new CSSStyleSheet),e.replaceSync(this.cssText)),e}toString(){return this.cssText}}const o=t=>new s(\"string\"==typeof t?t:t+\"\",e),r=(t,...n)=>{const o=1===t.length?t[0]:n.reduce(((e,n,s)=>e+(t=>{if(!0===t._$cssResult$)return t.cssText;if(\"number\"==typeof t)return t;throw Error(\"Value passed to 'css' function must be a 'css' function result: \"+t+\". Use 'unsafeCSS' to pass non-literal values, but take care to ensure page security.\")})(n)+t[s+1]),t[0]);return new s(o,e)},i=(e,n)=>{t?e.adoptedStyleSheets=n.map((t=>t instanceof CSSStyleSheet?t:t.styleSheet)):n.forEach((t=>{const n=document.createElement(\"style\"),s=window.litNonce;void 0!==s&&n.setAttribute(\"nonce\",s),n.textContent=t.cssText,e.appendChild(n)}))},S=t?t=>t:t=>t instanceof CSSStyleSheet?(t=>{let e=\"\";for(const n of t.cssRules)e+=n.cssText;return o(e)})(t):t;export{s as CSSResult,i as adoptStyles,r as css,S as getCompatibleStyle,t as supportsAdoptingStyleSheets,o as unsafeCSS};\n//# sourceMappingURL=css-tag.js.map\n","import{getCompatibleStyle as t,adoptStyles as i}from\"./css-tag.js\";export{CSSResult,adoptStyles,css,getCompatibleStyle,supportsAdoptingStyleSheets,unsafeCSS}from\"./css-tag.js\";\n/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */var s;const e=window.trustedTypes,r=e?e.emptyScript:\"\",h=window.reactiveElementPolyfillSupport,o={toAttribute(t,i){switch(i){case Boolean:t=t?r:null;break;case Object:case Array:t=null==t?t:JSON.stringify(t)}return t},fromAttribute(t,i){let s=t;switch(i){case Boolean:s=null!==t;break;case Number:s=null===t?null:Number(t);break;case Object:case Array:try{s=JSON.parse(t)}catch(t){s=null}}return s}},n=(t,i)=>i!==t&&(i==i||t==t),l={attribute:!0,type:String,converter:o,reflect:!1,hasChanged:n};class a extends HTMLElement{constructor(){super(),this._$Et=new Map,this.isUpdatePending=!1,this.hasUpdated=!1,this._$Ei=null,this.o()}static addInitializer(t){var i;null!==(i=this.l)&&void 0!==i||(this.l=[]),this.l.push(t)}static get observedAttributes(){this.finalize();const t=[];return this.elementProperties.forEach(((i,s)=>{const e=this._$Eh(s,i);void 0!==e&&(this._$Eu.set(e,s),t.push(e))})),t}static createProperty(t,i=l){if(i.state&&(i.attribute=!1),this.finalize(),this.elementProperties.set(t,i),!i.noAccessor&&!this.prototype.hasOwnProperty(t)){const s=\"symbol\"==typeof t?Symbol():\"__\"+t,e=this.getPropertyDescriptor(t,s,i);void 0!==e&&Object.defineProperty(this.prototype,t,e)}}static getPropertyDescriptor(t,i,s){return{get(){return this[i]},set(e){const r=this[t];this[i]=e,this.requestUpdate(t,r,s)},configurable:!0,enumerable:!0}}static getPropertyOptions(t){return this.elementProperties.get(t)||l}static finalize(){if(this.hasOwnProperty(\"finalized\"))return!1;this.finalized=!0;const t=Object.getPrototypeOf(this);if(t.finalize(),this.elementProperties=new Map(t.elementProperties),this._$Eu=new Map,this.hasOwnProperty(\"properties\")){const t=this.properties,i=[...Object.getOwnPropertyNames(t),...Object.getOwnPropertySymbols(t)];for(const s of i)this.createProperty(s,t[s])}return this.elementStyles=this.finalizeStyles(this.styles),!0}static finalizeStyles(i){const s=[];if(Array.isArray(i)){const e=new Set(i.flat(1/0).reverse());for(const i of e)s.unshift(t(i))}else void 0!==i&&s.push(t(i));return s}static _$Eh(t,i){const s=i.attribute;return!1===s?void 0:\"string\"==typeof s?s:\"string\"==typeof t?t.toLowerCase():void 0}o(){var t;this._$Ep=new Promise((t=>this.enableUpdating=t)),this._$AL=new Map,this._$Em(),this.requestUpdate(),null===(t=this.constructor.l)||void 0===t||t.forEach((t=>t(this)))}addController(t){var i,s;(null!==(i=this._$Eg)&&void 0!==i?i:this._$Eg=[]).push(t),void 0!==this.renderRoot&&this.isConnected&&(null===(s=t.hostConnected)||void 0===s||s.call(t))}removeController(t){var i;null===(i=this._$Eg)||void 0===i||i.splice(this._$Eg.indexOf(t)>>>0,1)}_$Em(){this.constructor.elementProperties.forEach(((t,i)=>{this.hasOwnProperty(i)&&(this._$Et.set(i,this[i]),delete this[i])}))}createRenderRoot(){var t;const s=null!==(t=this.shadowRoot)&&void 0!==t?t:this.attachShadow(this.constructor.shadowRootOptions);return i(s,this.constructor.elementStyles),s}connectedCallback(){var t;void 0===this.renderRoot&&(this.renderRoot=this.createRenderRoot()),this.enableUpdating(!0),null===(t=this._$Eg)||void 0===t||t.forEach((t=>{var i;return null===(i=t.hostConnected)||void 0===i?void 0:i.call(t)}))}enableUpdating(t){}disconnectedCallback(){var t;null===(t=this._$Eg)||void 0===t||t.forEach((t=>{var i;return null===(i=t.hostDisconnected)||void 0===i?void 0:i.call(t)}))}attributeChangedCallback(t,i,s){this._$AK(t,s)}_$ES(t,i,s=l){var e,r;const h=this.constructor._$Eh(t,s);if(void 0!==h&&!0===s.reflect){const n=(null!==(r=null===(e=s.converter)||void 0===e?void 0:e.toAttribute)&&void 0!==r?r:o.toAttribute)(i,s.type);this._$Ei=t,null==n?this.removeAttribute(h):this.setAttribute(h,n),this._$Ei=null}}_$AK(t,i){var s,e,r;const h=this.constructor,n=h._$Eu.get(t);if(void 0!==n&&this._$Ei!==n){const t=h.getPropertyOptions(n),l=t.converter,a=null!==(r=null!==(e=null===(s=l)||void 0===s?void 0:s.fromAttribute)&&void 0!==e?e:\"function\"==typeof l?l:null)&&void 0!==r?r:o.fromAttribute;this._$Ei=n,this[n]=a(i,t.type),this._$Ei=null}}requestUpdate(t,i,s){let e=!0;void 0!==t&&(((s=s||this.constructor.getPropertyOptions(t)).hasChanged||n)(this[t],i)?(this._$AL.has(t)||this._$AL.set(t,i),!0===s.reflect&&this._$Ei!==t&&(void 0===this._$EC&&(this._$EC=new Map),this._$EC.set(t,s))):e=!1),!this.isUpdatePending&&e&&(this._$Ep=this._$E_())}async _$E_(){this.isUpdatePending=!0;try{await this._$Ep}catch(t){Promise.reject(t)}const t=this.scheduleUpdate();return null!=t&&await t,!this.isUpdatePending}scheduleUpdate(){return this.performUpdate()}performUpdate(){var t;if(!this.isUpdatePending)return;this.hasUpdated,this._$Et&&(this._$Et.forEach(((t,i)=>this[i]=t)),this._$Et=void 0);let i=!1;const s=this._$AL;try{i=this.shouldUpdate(s),i?(this.willUpdate(s),null===(t=this._$Eg)||void 0===t||t.forEach((t=>{var i;return null===(i=t.hostUpdate)||void 0===i?void 0:i.call(t)})),this.update(s)):this._$EU()}catch(t){throw i=!1,this._$EU(),t}i&&this._$AE(s)}willUpdate(t){}_$AE(t){var i;null===(i=this._$Eg)||void 0===i||i.forEach((t=>{var i;return null===(i=t.hostUpdated)||void 0===i?void 0:i.call(t)})),this.hasUpdated||(this.hasUpdated=!0,this.firstUpdated(t)),this.updated(t)}_$EU(){this._$AL=new Map,this.isUpdatePending=!1}get updateComplete(){return this.getUpdateComplete()}getUpdateComplete(){return this._$Ep}shouldUpdate(t){return!0}update(t){void 0!==this._$EC&&(this._$EC.forEach(((t,i)=>this._$ES(i,this[i],t))),this._$EC=void 0),this._$EU()}updated(t){}firstUpdated(t){}}a.finalized=!0,a.elementProperties=new Map,a.elementStyles=[],a.shadowRootOptions={mode:\"open\"},null==h||h({ReactiveElement:a}),(null!==(s=globalThis.reactiveElementVersions)&&void 0!==s?s:globalThis.reactiveElementVersions=[]).push(\"1.3.1\");export{a as ReactiveElement,o as defaultConverter,n as notEqual};\n//# sourceMappingURL=reactive-element.js.map\n","import{ReactiveElement as t}from\"@lit/reactive-element\";export*from\"@lit/reactive-element\";import{render as e,noChange as i}from\"lit-html\";export*from\"lit-html\";\n/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */var l,o;const r=t;class s extends t{constructor(){super(...arguments),this.renderOptions={host:this},this._$Do=void 0}createRenderRoot(){var t,e;const i=super.createRenderRoot();return null!==(t=(e=this.renderOptions).renderBefore)&&void 0!==t||(e.renderBefore=i.firstChild),i}update(t){const i=this.render();this.hasUpdated||(this.renderOptions.isConnected=this.isConnected),super.update(t),this._$Do=e(i,this.renderRoot,this.renderOptions)}connectedCallback(){var t;super.connectedCallback(),null===(t=this._$Do)||void 0===t||t.setConnected(!0)}disconnectedCallback(){var t;super.disconnectedCallback(),null===(t=this._$Do)||void 0===t||t.setConnected(!1)}render(){return i}}s.finalized=!0,s._$litElement$=!0,null===(l=globalThis.litElementHydrateSupport)||void 0===l||l.call(globalThis,{LitElement:s});const n=globalThis.litElementPolyfillSupport;null==n||n({LitElement:s});const h={_$AK:(t,e,i)=>{t._$AK(e,i)},_$AL:t=>t._$AL};(null!==(o=globalThis.litElementVersions)&&void 0!==o?o:globalThis.litElementVersions=[]).push(\"3.3.0\");export{s as LitElement,r as UpdatingElement,h as _$LE};\n//# sourceMappingURL=lit-element.js.map\n","var noop = {value: () => {}};\n\nfunction dispatch() {\n for (var i = 0, n = arguments.length, _ = {}, t; i < n; ++i) {\n if (!(t = arguments[i] + \"\") || (t in _) || /[\\s.]/.test(t)) throw new Error(\"illegal type: \" + t);\n _[t] = [];\n }\n return new Dispatch(_);\n}\n\nfunction Dispatch(_) {\n this._ = _;\n}\n\nfunction parseTypenames(typenames, types) {\n return typenames.trim().split(/^|\\s+/).map(function(t) {\n var name = \"\", i = t.indexOf(\".\");\n if (i >= 0) name = t.slice(i + 1), t = t.slice(0, i);\n if (t && !types.hasOwnProperty(t)) throw new Error(\"unknown type: \" + t);\n return {type: t, name: name};\n });\n}\n\nDispatch.prototype = dispatch.prototype = {\n constructor: Dispatch,\n on: function(typename, callback) {\n var _ = this._,\n T = parseTypenames(typename + \"\", _),\n t,\n i = -1,\n n = T.length;\n\n // If no callback was specified, return the callback of the given type and name.\n if (arguments.length < 2) {\n while (++i < n) if ((t = (typename = T[i]).type) && (t = get(_[t], typename.name))) return t;\n return;\n }\n\n // If a type was specified, set the callback for the given type and name.\n // Otherwise, if a null callback was specified, remove callbacks of the given name.\n if (callback != null && typeof callback !== \"function\") throw new Error(\"invalid callback: \" + callback);\n while (++i < n) {\n if (t = (typename = T[i]).type) _[t] = set(_[t], typename.name, callback);\n else if (callback == null) for (t in _) _[t] = set(_[t], typename.name, null);\n }\n\n return this;\n },\n copy: function() {\n var copy = {}, _ = this._;\n for (var t in _) copy[t] = _[t].slice();\n return new Dispatch(copy);\n },\n call: function(type, that) {\n if ((n = arguments.length - 2) > 0) for (var args = new Array(n), i = 0, n, t; i < n; ++i) args[i] = arguments[i + 2];\n if (!this._.hasOwnProperty(type)) throw new Error(\"unknown type: \" + type);\n for (t = this._[type], i = 0, n = t.length; i < n; ++i) t[i].value.apply(that, args);\n },\n apply: function(type, that, args) {\n if (!this._.hasOwnProperty(type)) throw new Error(\"unknown type: \" + type);\n for (var t = this._[type], i = 0, n = t.length; i < n; ++i) t[i].value.apply(that, args);\n }\n};\n\nfunction get(type, name) {\n for (var i = 0, n = type.length, c; i < n; ++i) {\n if ((c = type[i]).name === name) {\n return c.value;\n }\n }\n}\n\nfunction set(type, name, callback) {\n for (var i = 0, n = type.length; i < n; ++i) {\n if (type[i].name === name) {\n type[i] = noop, type = type.slice(0, i).concat(type.slice(i + 1));\n break;\n }\n }\n if (callback != null) type.push({name: name, value: callback});\n return type;\n}\n\nexport default dispatch;\n","export var xhtml = \"http://www.w3.org/1999/xhtml\";\n\nexport default {\n svg: \"http://www.w3.org/2000/svg\",\n xhtml: xhtml,\n xlink: \"http://www.w3.org/1999/xlink\",\n xml: \"http://www.w3.org/XML/1998/namespace\",\n xmlns: \"http://www.w3.org/2000/xmlns/\"\n};\n","import namespaces from \"./namespaces.js\";\n\nexport default function(name) {\n var prefix = name += \"\", i = prefix.indexOf(\":\");\n if (i >= 0 && (prefix = name.slice(0, i)) !== \"xmlns\") name = name.slice(i + 1);\n return namespaces.hasOwnProperty(prefix) ? {space: namespaces[prefix], local: name} : name; // eslint-disable-line no-prototype-builtins\n}\n","import namespace from \"./namespace.js\";\nimport {xhtml} from \"./namespaces.js\";\n\nfunction creatorInherit(name) {\n return function() {\n var document = this.ownerDocument,\n uri = this.namespaceURI;\n return uri === xhtml && document.documentElement.namespaceURI === xhtml\n ? document.createElement(name)\n : document.createElementNS(uri, name);\n };\n}\n\nfunction creatorFixed(fullname) {\n return function() {\n return this.ownerDocument.createElementNS(fullname.space, fullname.local);\n };\n}\n\nexport default function(name) {\n var fullname = namespace(name);\n return (fullname.local\n ? creatorFixed\n : creatorInherit)(fullname);\n}\n","function none() {}\n\nexport default function(selector) {\n return selector == null ? none : function() {\n return this.querySelector(selector);\n };\n}\n","// Given something array like (or null), returns something that is strictly an\n// array. This is used to ensure that array-like objects passed to d3.selectAll\n// or selection.selectAll are converted into proper arrays when creating a\n// selection; we don’t ever want to create a selection backed by a live\n// HTMLCollection or NodeList. However, note that selection.selectAll will use a\n// static NodeList as a group, since it safely derived from querySelectorAll.\nexport default function array(x) {\n return x == null ? [] : Array.isArray(x) ? x : Array.from(x);\n}\n","function empty() {\n return [];\n}\n\nexport default function(selector) {\n return selector == null ? empty : function() {\n return this.querySelectorAll(selector);\n };\n}\n","export default function(selector) {\n return function() {\n return this.matches(selector);\n };\n}\n\nexport function childMatcher(selector) {\n return function(node) {\n return node.matches(selector);\n };\n}\n\n","import {childMatcher} from \"../matcher.js\";\n\nvar find = Array.prototype.find;\n\nfunction childFind(match) {\n return function() {\n return find.call(this.children, match);\n };\n}\n\nfunction childFirst() {\n return this.firstElementChild;\n}\n\nexport default function(match) {\n return this.select(match == null ? childFirst\n : childFind(typeof match === \"function\" ? match : childMatcher(match)));\n}\n","import {childMatcher} from \"../matcher.js\";\n\nvar filter = Array.prototype.filter;\n\nfunction children() {\n return Array.from(this.children);\n}\n\nfunction childrenFilter(match) {\n return function() {\n return filter.call(this.children, match);\n };\n}\n\nexport default function(match) {\n return this.selectAll(match == null ? children\n : childrenFilter(typeof match === \"function\" ? match : childMatcher(match)));\n}\n","export default function(update) {\n return new Array(update.length);\n}\n","import sparse from \"./sparse.js\";\nimport {Selection} from \"./index.js\";\n\nexport default function() {\n return new Selection(this._enter || this._groups.map(sparse), this._parents);\n}\n\nexport function EnterNode(parent, datum) {\n this.ownerDocument = parent.ownerDocument;\n this.namespaceURI = parent.namespaceURI;\n this._next = null;\n this._parent = parent;\n this.__data__ = datum;\n}\n\nEnterNode.prototype = {\n constructor: EnterNode,\n appendChild: function(child) { return this._parent.insertBefore(child, this._next); },\n insertBefore: function(child, next) { return this._parent.insertBefore(child, next); },\n querySelector: function(selector) { return this._parent.querySelector(selector); },\n querySelectorAll: function(selector) { return this._parent.querySelectorAll(selector); }\n};\n","export default function(x) {\n return function() {\n return x;\n };\n}\n","import {Selection} from \"./index.js\";\nimport {EnterNode} from \"./enter.js\";\nimport constant from \"../constant.js\";\n\nfunction bindIndex(parent, group, enter, update, exit, data) {\n var i = 0,\n node,\n groupLength = group.length,\n dataLength = data.length;\n\n // Put any non-null nodes that fit into update.\n // Put any null nodes into enter.\n // Put any remaining data into enter.\n for (; i < dataLength; ++i) {\n if (node = group[i]) {\n node.__data__ = data[i];\n update[i] = node;\n } else {\n enter[i] = new EnterNode(parent, data[i]);\n }\n }\n\n // Put any non-null nodes that don’t fit into exit.\n for (; i < groupLength; ++i) {\n if (node = group[i]) {\n exit[i] = node;\n }\n }\n}\n\nfunction bindKey(parent, group, enter, update, exit, data, key) {\n var i,\n node,\n nodeByKeyValue = new Map,\n groupLength = group.length,\n dataLength = data.length,\n keyValues = new Array(groupLength),\n keyValue;\n\n // Compute the key for each node.\n // If multiple nodes have the same key, the duplicates are added to exit.\n for (i = 0; i < groupLength; ++i) {\n if (node = group[i]) {\n keyValues[i] = keyValue = key.call(node, node.__data__, i, group) + \"\";\n if (nodeByKeyValue.has(keyValue)) {\n exit[i] = node;\n } else {\n nodeByKeyValue.set(keyValue, node);\n }\n }\n }\n\n // Compute the key for each datum.\n // If there a node associated with this key, join and add it to update.\n // If there is not (or the key is a duplicate), add it to enter.\n for (i = 0; i < dataLength; ++i) {\n keyValue = key.call(parent, data[i], i, data) + \"\";\n if (node = nodeByKeyValue.get(keyValue)) {\n update[i] = node;\n node.__data__ = data[i];\n nodeByKeyValue.delete(keyValue);\n } else {\n enter[i] = new EnterNode(parent, data[i]);\n }\n }\n\n // Add any remaining nodes that were not bound to data to exit.\n for (i = 0; i < groupLength; ++i) {\n if ((node = group[i]) && (nodeByKeyValue.get(keyValues[i]) === node)) {\n exit[i] = node;\n }\n }\n}\n\nfunction datum(node) {\n return node.__data__;\n}\n\nexport default function(value, key) {\n if (!arguments.length) return Array.from(this, datum);\n\n var bind = key ? bindKey : bindIndex,\n parents = this._parents,\n groups = this._groups;\n\n if (typeof value !== \"function\") value = constant(value);\n\n for (var m = groups.length, update = new Array(m), enter = new Array(m), exit = new Array(m), j = 0; j < m; ++j) {\n var parent = parents[j],\n group = groups[j],\n groupLength = group.length,\n data = arraylike(value.call(parent, parent && parent.__data__, j, parents)),\n dataLength = data.length,\n enterGroup = enter[j] = new Array(dataLength),\n updateGroup = update[j] = new Array(dataLength),\n exitGroup = exit[j] = new Array(groupLength);\n\n bind(parent, group, enterGroup, updateGroup, exitGroup, data, key);\n\n // Now connect the enter nodes to their following update node, such that\n // appendChild can insert the materialized enter node before this node,\n // rather than at the end of the parent node.\n for (var i0 = 0, i1 = 0, previous, next; i0 < dataLength; ++i0) {\n if (previous = enterGroup[i0]) {\n if (i0 >= i1) i1 = i0 + 1;\n while (!(next = updateGroup[i1]) && ++i1 < dataLength);\n previous._next = next || null;\n }\n }\n }\n\n update = new Selection(update, parents);\n update._enter = enter;\n update._exit = exit;\n return update;\n}\n\n// Given some data, this returns an array-like view of it: an object that\n// exposes a length property and allows numeric indexing. Note that unlike\n// selectAll, this isn’t worried about “live” collections because the resulting\n// array will only be used briefly while data is being bound. (It is possible to\n// cause the data to change while iterating by using a key function, but please\n// don’t; we’d rather avoid a gratuitous copy.)\nfunction arraylike(data) {\n return typeof data === \"object\" && \"length\" in data\n ? data // Array, TypedArray, NodeList, array-like\n : Array.from(data); // Map, Set, iterable, string, or anything else\n}\n","import {Selection} from \"./index.js\";\n\nexport default function(compare) {\n if (!compare) compare = ascending;\n\n function compareNode(a, b) {\n return a && b ? compare(a.__data__, b.__data__) : !a - !b;\n }\n\n for (var groups = this._groups, m = groups.length, sortgroups = new Array(m), j = 0; j < m; ++j) {\n for (var group = groups[j], n = group.length, sortgroup = sortgroups[j] = new Array(n), node, i = 0; i < n; ++i) {\n if (node = group[i]) {\n sortgroup[i] = node;\n }\n }\n sortgroup.sort(compareNode);\n }\n\n return new Selection(sortgroups, this._parents).order();\n}\n\nfunction ascending(a, b) {\n return a < b ? -1 : a > b ? 1 : a >= b ? 0 : NaN;\n}\n","import namespace from \"../namespace.js\";\n\nfunction attrRemove(name) {\n return function() {\n this.removeAttribute(name);\n };\n}\n\nfunction attrRemoveNS(fullname) {\n return function() {\n this.removeAttributeNS(fullname.space, fullname.local);\n };\n}\n\nfunction attrConstant(name, value) {\n return function() {\n this.setAttribute(name, value);\n };\n}\n\nfunction attrConstantNS(fullname, value) {\n return function() {\n this.setAttributeNS(fullname.space, fullname.local, value);\n };\n}\n\nfunction attrFunction(name, value) {\n return function() {\n var v = value.apply(this, arguments);\n if (v == null) this.removeAttribute(name);\n else this.setAttribute(name, v);\n };\n}\n\nfunction attrFunctionNS(fullname, value) {\n return function() {\n var v = value.apply(this, arguments);\n if (v == null) this.removeAttributeNS(fullname.space, fullname.local);\n else this.setAttributeNS(fullname.space, fullname.local, v);\n };\n}\n\nexport default function(name, value) {\n var fullname = namespace(name);\n\n if (arguments.length < 2) {\n var node = this.node();\n return fullname.local\n ? node.getAttributeNS(fullname.space, fullname.local)\n : node.getAttribute(fullname);\n }\n\n return this.each((value == null\n ? (fullname.local ? attrRemoveNS : attrRemove) : (typeof value === \"function\"\n ? (fullname.local ? attrFunctionNS : attrFunction)\n : (fullname.local ? attrConstantNS : attrConstant)))(fullname, value));\n}\n","export default function(node) {\n return (node.ownerDocument && node.ownerDocument.defaultView) // node is a Node\n || (node.document && node) // node is a Window\n || node.defaultView; // node is a Document\n}\n","import defaultView from \"../window.js\";\n\nfunction styleRemove(name) {\n return function() {\n this.style.removeProperty(name);\n };\n}\n\nfunction styleConstant(name, value, priority) {\n return function() {\n this.style.setProperty(name, value, priority);\n };\n}\n\nfunction styleFunction(name, value, priority) {\n return function() {\n var v = value.apply(this, arguments);\n if (v == null) this.style.removeProperty(name);\n else this.style.setProperty(name, v, priority);\n };\n}\n\nexport default function(name, value, priority) {\n return arguments.length > 1\n ? this.each((value == null\n ? styleRemove : typeof value === \"function\"\n ? styleFunction\n : styleConstant)(name, value, priority == null ? \"\" : priority))\n : styleValue(this.node(), name);\n}\n\nexport function styleValue(node, name) {\n return node.style.getPropertyValue(name)\n || defaultView(node).getComputedStyle(node, null).getPropertyValue(name);\n}\n","function propertyRemove(name) {\n return function() {\n delete this[name];\n };\n}\n\nfunction propertyConstant(name, value) {\n return function() {\n this[name] = value;\n };\n}\n\nfunction propertyFunction(name, value) {\n return function() {\n var v = value.apply(this, arguments);\n if (v == null) delete this[name];\n else this[name] = v;\n };\n}\n\nexport default function(name, value) {\n return arguments.length > 1\n ? this.each((value == null\n ? propertyRemove : typeof value === \"function\"\n ? propertyFunction\n : propertyConstant)(name, value))\n : this.node()[name];\n}\n","function classArray(string) {\n return string.trim().split(/^|\\s+/);\n}\n\nfunction classList(node) {\n return node.classList || new ClassList(node);\n}\n\nfunction ClassList(node) {\n this._node = node;\n this._names = classArray(node.getAttribute(\"class\") || \"\");\n}\n\nClassList.prototype = {\n add: function(name) {\n var i = this._names.indexOf(name);\n if (i < 0) {\n this._names.push(name);\n this._node.setAttribute(\"class\", this._names.join(\" \"));\n }\n },\n remove: function(name) {\n var i = this._names.indexOf(name);\n if (i >= 0) {\n this._names.splice(i, 1);\n this._node.setAttribute(\"class\", this._names.join(\" \"));\n }\n },\n contains: function(name) {\n return this._names.indexOf(name) >= 0;\n }\n};\n\nfunction classedAdd(node, names) {\n var list = classList(node), i = -1, n = names.length;\n while (++i < n) list.add(names[i]);\n}\n\nfunction classedRemove(node, names) {\n var list = classList(node), i = -1, n = names.length;\n while (++i < n) list.remove(names[i]);\n}\n\nfunction classedTrue(names) {\n return function() {\n classedAdd(this, names);\n };\n}\n\nfunction classedFalse(names) {\n return function() {\n classedRemove(this, names);\n };\n}\n\nfunction classedFunction(names, value) {\n return function() {\n (value.apply(this, arguments) ? classedAdd : classedRemove)(this, names);\n };\n}\n\nexport default function(name, value) {\n var names = classArray(name + \"\");\n\n if (arguments.length < 2) {\n var list = classList(this.node()), i = -1, n = names.length;\n while (++i < n) if (!list.contains(names[i])) return false;\n return true;\n }\n\n return this.each((typeof value === \"function\"\n ? classedFunction : value\n ? classedTrue\n : classedFalse)(names, value));\n}\n","function textRemove() {\n this.textContent = \"\";\n}\n\nfunction textConstant(value) {\n return function() {\n this.textContent = value;\n };\n}\n\nfunction textFunction(value) {\n return function() {\n var v = value.apply(this, arguments);\n this.textContent = v == null ? \"\" : v;\n };\n}\n\nexport default function(value) {\n return arguments.length\n ? this.each(value == null\n ? textRemove : (typeof value === \"function\"\n ? textFunction\n : textConstant)(value))\n : this.node().textContent;\n}\n","function htmlRemove() {\n this.innerHTML = \"\";\n}\n\nfunction htmlConstant(value) {\n return function() {\n this.innerHTML = value;\n };\n}\n\nfunction htmlFunction(value) {\n return function() {\n var v = value.apply(this, arguments);\n this.innerHTML = v == null ? \"\" : v;\n };\n}\n\nexport default function(value) {\n return arguments.length\n ? this.each(value == null\n ? htmlRemove : (typeof value === \"function\"\n ? htmlFunction\n : htmlConstant)(value))\n : this.node().innerHTML;\n}\n","function raise() {\n if (this.nextSibling) this.parentNode.appendChild(this);\n}\n\nexport default function() {\n return this.each(raise);\n}\n","function lower() {\n if (this.previousSibling) this.parentNode.insertBefore(this, this.parentNode.firstChild);\n}\n\nexport default function() {\n return this.each(lower);\n}\n","import creator from \"../creator.js\";\nimport selector from \"../selector.js\";\n\nfunction constantNull() {\n return null;\n}\n\nexport default function(name, before) {\n var create = typeof name === \"function\" ? name : creator(name),\n select = before == null ? constantNull : typeof before === \"function\" ? before : selector(before);\n return this.select(function() {\n return this.insertBefore(create.apply(this, arguments), select.apply(this, arguments) || null);\n });\n}\n","function remove() {\n var parent = this.parentNode;\n if (parent) parent.removeChild(this);\n}\n\nexport default function() {\n return this.each(remove);\n}\n","function selection_cloneShallow() {\n var clone = this.cloneNode(false), parent = this.parentNode;\n return parent ? parent.insertBefore(clone, this.nextSibling) : clone;\n}\n\nfunction selection_cloneDeep() {\n var clone = this.cloneNode(true), parent = this.parentNode;\n return parent ? parent.insertBefore(clone, this.nextSibling) : clone;\n}\n\nexport default function(deep) {\n return this.select(deep ? selection_cloneDeep : selection_cloneShallow);\n}\n","function contextListener(listener) {\n return function(event) {\n listener.call(this, event, this.__data__);\n };\n}\n\nfunction parseTypenames(typenames) {\n return typenames.trim().split(/^|\\s+/).map(function(t) {\n var name = \"\", i = t.indexOf(\".\");\n if (i >= 0) name = t.slice(i + 1), t = t.slice(0, i);\n return {type: t, name: name};\n });\n}\n\nfunction onRemove(typename) {\n return function() {\n var on = this.__on;\n if (!on) return;\n for (var j = 0, i = -1, m = on.length, o; j < m; ++j) {\n if (o = on[j], (!typename.type || o.type === typename.type) && o.name === typename.name) {\n this.removeEventListener(o.type, o.listener, o.options);\n } else {\n on[++i] = o;\n }\n }\n if (++i) on.length = i;\n else delete this.__on;\n };\n}\n\nfunction onAdd(typename, value, options) {\n return function() {\n var on = this.__on, o, listener = contextListener(value);\n if (on) for (var j = 0, m = on.length; j < m; ++j) {\n if ((o = on[j]).type === typename.type && o.name === typename.name) {\n this.removeEventListener(o.type, o.listener, o.options);\n this.addEventListener(o.type, o.listener = listener, o.options = options);\n o.value = value;\n return;\n }\n }\n this.addEventListener(typename.type, listener, options);\n o = {type: typename.type, name: typename.name, value: value, listener: listener, options: options};\n if (!on) this.__on = [o];\n else on.push(o);\n };\n}\n\nexport default function(typename, value, options) {\n var typenames = parseTypenames(typename + \"\"), i, n = typenames.length, t;\n\n if (arguments.length < 2) {\n var on = this.node().__on;\n if (on) for (var j = 0, m = on.length, o; j < m; ++j) {\n for (i = 0, o = on[j]; i < n; ++i) {\n if ((t = typenames[i]).type === o.type && t.name === o.name) {\n return o.value;\n }\n }\n }\n return;\n }\n\n on = value ? onAdd : onRemove;\n for (i = 0; i < n; ++i) this.each(on(typenames[i], value, options));\n return this;\n}\n","import defaultView from \"../window.js\";\n\nfunction dispatchEvent(node, type, params) {\n var window = defaultView(node),\n event = window.CustomEvent;\n\n if (typeof event === \"function\") {\n event = new event(type, params);\n } else {\n event = window.document.createEvent(\"Event\");\n if (params) event.initEvent(type, params.bubbles, params.cancelable), event.detail = params.detail;\n else event.initEvent(type, false, false);\n }\n\n node.dispatchEvent(event);\n}\n\nfunction dispatchConstant(type, params) {\n return function() {\n return dispatchEvent(this, type, params);\n };\n}\n\nfunction dispatchFunction(type, params) {\n return function() {\n return dispatchEvent(this, type, params.apply(this, arguments));\n };\n}\n\nexport default function(type, params) {\n return this.each((typeof params === \"function\"\n ? dispatchFunction\n : dispatchConstant)(type, params));\n}\n","import selection_select from \"./select.js\";\nimport selection_selectAll from \"./selectAll.js\";\nimport selection_selectChild from \"./selectChild.js\";\nimport selection_selectChildren from \"./selectChildren.js\";\nimport selection_filter from \"./filter.js\";\nimport selection_data from \"./data.js\";\nimport selection_enter from \"./enter.js\";\nimport selection_exit from \"./exit.js\";\nimport selection_join from \"./join.js\";\nimport selection_merge from \"./merge.js\";\nimport selection_order from \"./order.js\";\nimport selection_sort from \"./sort.js\";\nimport selection_call from \"./call.js\";\nimport selection_nodes from \"./nodes.js\";\nimport selection_node from \"./node.js\";\nimport selection_size from \"./size.js\";\nimport selection_empty from \"./empty.js\";\nimport selection_each from \"./each.js\";\nimport selection_attr from \"./attr.js\";\nimport selection_style from \"./style.js\";\nimport selection_property from \"./property.js\";\nimport selection_classed from \"./classed.js\";\nimport selection_text from \"./text.js\";\nimport selection_html from \"./html.js\";\nimport selection_raise from \"./raise.js\";\nimport selection_lower from \"./lower.js\";\nimport selection_append from \"./append.js\";\nimport selection_insert from \"./insert.js\";\nimport selection_remove from \"./remove.js\";\nimport selection_clone from \"./clone.js\";\nimport selection_datum from \"./datum.js\";\nimport selection_on from \"./on.js\";\nimport selection_dispatch from \"./dispatch.js\";\nimport selection_iterator from \"./iterator.js\";\n\nexport var root = [null];\n\nexport function Selection(groups, parents) {\n this._groups = groups;\n this._parents = parents;\n}\n\nfunction selection() {\n return new Selection([[document.documentElement]], root);\n}\n\nfunction selection_selection() {\n return this;\n}\n\nSelection.prototype = selection.prototype = {\n constructor: Selection,\n select: selection_select,\n selectAll: selection_selectAll,\n selectChild: selection_selectChild,\n selectChildren: selection_selectChildren,\n filter: selection_filter,\n data: selection_data,\n enter: selection_enter,\n exit: selection_exit,\n join: selection_join,\n merge: selection_merge,\n selection: selection_selection,\n order: selection_order,\n sort: selection_sort,\n call: selection_call,\n nodes: selection_nodes,\n node: selection_node,\n size: selection_size,\n empty: selection_empty,\n each: selection_each,\n attr: selection_attr,\n style: selection_style,\n property: selection_property,\n classed: selection_classed,\n text: selection_text,\n html: selection_html,\n raise: selection_raise,\n lower: selection_lower,\n append: selection_append,\n insert: selection_insert,\n remove: selection_remove,\n clone: selection_clone,\n datum: selection_datum,\n on: selection_on,\n dispatch: selection_dispatch,\n [Symbol.iterator]: selection_iterator\n};\n\nexport default selection;\n","import {Selection, root} from \"./selection/index.js\";\n\nexport default function(selector) {\n return typeof selector === \"string\"\n ? new Selection([[document.querySelector(selector)]], [document.documentElement])\n : new Selection([[selector]], root);\n}\n","export default function(constructor, factory, prototype) {\n constructor.prototype = factory.prototype = prototype;\n prototype.constructor = constructor;\n}\n\nexport function extend(parent, definition) {\n var prototype = Object.create(parent.prototype);\n for (var key in definition) prototype[key] = definition[key];\n return prototype;\n}\n","import define, {extend} from \"./define.js\";\n\nexport function Color() {}\n\nexport var darker = 0.7;\nexport var brighter = 1 / darker;\n\nvar reI = \"\\\\s*([+-]?\\\\d+)\\\\s*\",\n reN = \"\\\\s*([+-]?\\\\d*\\\\.?\\\\d+(?:[eE][+-]?\\\\d+)?)\\\\s*\",\n reP = \"\\\\s*([+-]?\\\\d*\\\\.?\\\\d+(?:[eE][+-]?\\\\d+)?)%\\\\s*\",\n reHex = /^#([0-9a-f]{3,8})$/,\n reRgbInteger = new RegExp(\"^rgb\\\\(\" + [reI, reI, reI] + \"\\\\)$\"),\n reRgbPercent = new RegExp(\"^rgb\\\\(\" + [reP, reP, reP] + \"\\\\)$\"),\n reRgbaInteger = new RegExp(\"^rgba\\\\(\" + [reI, reI, reI, reN] + \"\\\\)$\"),\n reRgbaPercent = new RegExp(\"^rgba\\\\(\" + [reP, reP, reP, reN] + \"\\\\)$\"),\n reHslPercent = new RegExp(\"^hsl\\\\(\" + [reN, reP, reP] + \"\\\\)$\"),\n reHslaPercent = new RegExp(\"^hsla\\\\(\" + [reN, reP, reP, reN] + \"\\\\)$\");\n\nvar named = {\n aliceblue: 0xf0f8ff,\n antiquewhite: 0xfaebd7,\n aqua: 0x00ffff,\n aquamarine: 0x7fffd4,\n azure: 0xf0ffff,\n beige: 0xf5f5dc,\n bisque: 0xffe4c4,\n black: 0x000000,\n blanchedalmond: 0xffebcd,\n blue: 0x0000ff,\n blueviolet: 0x8a2be2,\n brown: 0xa52a2a,\n burlywood: 0xdeb887,\n cadetblue: 0x5f9ea0,\n chartreuse: 0x7fff00,\n chocolate: 0xd2691e,\n coral: 0xff7f50,\n cornflowerblue: 0x6495ed,\n cornsilk: 0xfff8dc,\n crimson: 0xdc143c,\n cyan: 0x00ffff,\n darkblue: 0x00008b,\n darkcyan: 0x008b8b,\n darkgoldenrod: 0xb8860b,\n darkgray: 0xa9a9a9,\n darkgreen: 0x006400,\n darkgrey: 0xa9a9a9,\n darkkhaki: 0xbdb76b,\n darkmagenta: 0x8b008b,\n darkolivegreen: 0x556b2f,\n darkorange: 0xff8c00,\n darkorchid: 0x9932cc,\n darkred: 0x8b0000,\n darksalmon: 0xe9967a,\n darkseagreen: 0x8fbc8f,\n darkslateblue: 0x483d8b,\n darkslategray: 0x2f4f4f,\n darkslategrey: 0x2f4f4f,\n darkturquoise: 0x00ced1,\n darkviolet: 0x9400d3,\n deeppink: 0xff1493,\n deepskyblue: 0x00bfff,\n dimgray: 0x696969,\n dimgrey: 0x696969,\n dodgerblue: 0x1e90ff,\n firebrick: 0xb22222,\n floralwhite: 0xfffaf0,\n forestgreen: 0x228b22,\n fuchsia: 0xff00ff,\n gainsboro: 0xdcdcdc,\n ghostwhite: 0xf8f8ff,\n gold: 0xffd700,\n goldenrod: 0xdaa520,\n gray: 0x808080,\n green: 0x008000,\n greenyellow: 0xadff2f,\n grey: 0x808080,\n honeydew: 0xf0fff0,\n hotpink: 0xff69b4,\n indianred: 0xcd5c5c,\n indigo: 0x4b0082,\n ivory: 0xfffff0,\n khaki: 0xf0e68c,\n lavender: 0xe6e6fa,\n lavenderblush: 0xfff0f5,\n lawngreen: 0x7cfc00,\n lemonchiffon: 0xfffacd,\n lightblue: 0xadd8e6,\n lightcoral: 0xf08080,\n lightcyan: 0xe0ffff,\n lightgoldenrodyellow: 0xfafad2,\n lightgray: 0xd3d3d3,\n lightgreen: 0x90ee90,\n lightgrey: 0xd3d3d3,\n lightpink: 0xffb6c1,\n lightsalmon: 0xffa07a,\n lightseagreen: 0x20b2aa,\n lightskyblue: 0x87cefa,\n lightslategray: 0x778899,\n lightslategrey: 0x778899,\n lightsteelblue: 0xb0c4de,\n lightyellow: 0xffffe0,\n lime: 0x00ff00,\n limegreen: 0x32cd32,\n linen: 0xfaf0e6,\n magenta: 0xff00ff,\n maroon: 0x800000,\n mediumaquamarine: 0x66cdaa,\n mediumblue: 0x0000cd,\n mediumorchid: 0xba55d3,\n mediumpurple: 0x9370db,\n mediumseagreen: 0x3cb371,\n mediumslateblue: 0x7b68ee,\n mediumspringgreen: 0x00fa9a,\n mediumturquoise: 0x48d1cc,\n mediumvioletred: 0xc71585,\n midnightblue: 0x191970,\n mintcream: 0xf5fffa,\n mistyrose: 0xffe4e1,\n moccasin: 0xffe4b5,\n navajowhite: 0xffdead,\n navy: 0x000080,\n oldlace: 0xfdf5e6,\n olive: 0x808000,\n olivedrab: 0x6b8e23,\n orange: 0xffa500,\n orangered: 0xff4500,\n orchid: 0xda70d6,\n palegoldenrod: 0xeee8aa,\n palegreen: 0x98fb98,\n paleturquoise: 0xafeeee,\n palevioletred: 0xdb7093,\n papayawhip: 0xffefd5,\n peachpuff: 0xffdab9,\n peru: 0xcd853f,\n pink: 0xffc0cb,\n plum: 0xdda0dd,\n powderblue: 0xb0e0e6,\n purple: 0x800080,\n rebeccapurple: 0x663399,\n red: 0xff0000,\n rosybrown: 0xbc8f8f,\n royalblue: 0x4169e1,\n saddlebrown: 0x8b4513,\n salmon: 0xfa8072,\n sandybrown: 0xf4a460,\n seagreen: 0x2e8b57,\n seashell: 0xfff5ee,\n sienna: 0xa0522d,\n silver: 0xc0c0c0,\n skyblue: 0x87ceeb,\n slateblue: 0x6a5acd,\n slategray: 0x708090,\n slategrey: 0x708090,\n snow: 0xfffafa,\n springgreen: 0x00ff7f,\n steelblue: 0x4682b4,\n tan: 0xd2b48c,\n teal: 0x008080,\n thistle: 0xd8bfd8,\n tomato: 0xff6347,\n turquoise: 0x40e0d0,\n violet: 0xee82ee,\n wheat: 0xf5deb3,\n white: 0xffffff,\n whitesmoke: 0xf5f5f5,\n yellow: 0xffff00,\n yellowgreen: 0x9acd32\n};\n\ndefine(Color, color, {\n copy: function(channels) {\n return Object.assign(new this.constructor, this, channels);\n },\n displayable: function() {\n return this.rgb().displayable();\n },\n hex: color_formatHex, // Deprecated! Use color.formatHex.\n formatHex: color_formatHex,\n formatHsl: color_formatHsl,\n formatRgb: color_formatRgb,\n toString: color_formatRgb\n});\n\nfunction color_formatHex() {\n return this.rgb().formatHex();\n}\n\nfunction color_formatHsl() {\n return hslConvert(this).formatHsl();\n}\n\nfunction color_formatRgb() {\n return this.rgb().formatRgb();\n}\n\nexport default function color(format) {\n var m, l;\n format = (format + \"\").trim().toLowerCase();\n return (m = reHex.exec(format)) ? (l = m[1].length, m = parseInt(m[1], 16), l === 6 ? rgbn(m) // #ff0000\n : l === 3 ? new Rgb((m >> 8 & 0xf) | (m >> 4 & 0xf0), (m >> 4 & 0xf) | (m & 0xf0), ((m & 0xf) << 4) | (m & 0xf), 1) // #f00\n : l === 8 ? rgba(m >> 24 & 0xff, m >> 16 & 0xff, m >> 8 & 0xff, (m & 0xff) / 0xff) // #ff000000\n : l === 4 ? rgba((m >> 12 & 0xf) | (m >> 8 & 0xf0), (m >> 8 & 0xf) | (m >> 4 & 0xf0), (m >> 4 & 0xf) | (m & 0xf0), (((m & 0xf) << 4) | (m & 0xf)) / 0xff) // #f000\n : null) // invalid hex\n : (m = reRgbInteger.exec(format)) ? new Rgb(m[1], m[2], m[3], 1) // rgb(255, 0, 0)\n : (m = reRgbPercent.exec(format)) ? new Rgb(m[1] * 255 / 100, m[2] * 255 / 100, m[3] * 255 / 100, 1) // rgb(100%, 0%, 0%)\n : (m = reRgbaInteger.exec(format)) ? rgba(m[1], m[2], m[3], m[4]) // rgba(255, 0, 0, 1)\n : (m = reRgbaPercent.exec(format)) ? rgba(m[1] * 255 / 100, m[2] * 255 / 100, m[3] * 255 / 100, m[4]) // rgb(100%, 0%, 0%, 1)\n : (m = reHslPercent.exec(format)) ? hsla(m[1], m[2] / 100, m[3] / 100, 1) // hsl(120, 50%, 50%)\n : (m = reHslaPercent.exec(format)) ? hsla(m[1], m[2] / 100, m[3] / 100, m[4]) // hsla(120, 50%, 50%, 1)\n : named.hasOwnProperty(format) ? rgbn(named[format]) // eslint-disable-line no-prototype-builtins\n : format === \"transparent\" ? new Rgb(NaN, NaN, NaN, 0)\n : null;\n}\n\nfunction rgbn(n) {\n return new Rgb(n >> 16 & 0xff, n >> 8 & 0xff, n & 0xff, 1);\n}\n\nfunction rgba(r, g, b, a) {\n if (a <= 0) r = g = b = NaN;\n return new Rgb(r, g, b, a);\n}\n\nexport function rgbConvert(o) {\n if (!(o instanceof Color)) o = color(o);\n if (!o) return new Rgb;\n o = o.rgb();\n return new Rgb(o.r, o.g, o.b, o.opacity);\n}\n\nexport function rgb(r, g, b, opacity) {\n return arguments.length === 1 ? rgbConvert(r) : new Rgb(r, g, b, opacity == null ? 1 : opacity);\n}\n\nexport function Rgb(r, g, b, opacity) {\n this.r = +r;\n this.g = +g;\n this.b = +b;\n this.opacity = +opacity;\n}\n\ndefine(Rgb, rgb, extend(Color, {\n brighter: function(k) {\n k = k == null ? brighter : Math.pow(brighter, k);\n return new Rgb(this.r * k, this.g * k, this.b * k, this.opacity);\n },\n darker: function(k) {\n k = k == null ? darker : Math.pow(darker, k);\n return new Rgb(this.r * k, this.g * k, this.b * k, this.opacity);\n },\n rgb: function() {\n return this;\n },\n displayable: function() {\n return (-0.5 <= this.r && this.r < 255.5)\n && (-0.5 <= this.g && this.g < 255.5)\n && (-0.5 <= this.b && this.b < 255.5)\n && (0 <= this.opacity && this.opacity <= 1);\n },\n hex: rgb_formatHex, // Deprecated! Use color.formatHex.\n formatHex: rgb_formatHex,\n formatRgb: rgb_formatRgb,\n toString: rgb_formatRgb\n}));\n\nfunction rgb_formatHex() {\n return \"#\" + hex(this.r) + hex(this.g) + hex(this.b);\n}\n\nfunction rgb_formatRgb() {\n var a = this.opacity; a = isNaN(a) ? 1 : Math.max(0, Math.min(1, a));\n return (a === 1 ? \"rgb(\" : \"rgba(\")\n + Math.max(0, Math.min(255, Math.round(this.r) || 0)) + \", \"\n + Math.max(0, Math.min(255, Math.round(this.g) || 0)) + \", \"\n + Math.max(0, Math.min(255, Math.round(this.b) || 0))\n + (a === 1 ? \")\" : \", \" + a + \")\");\n}\n\nfunction hex(value) {\n value = Math.max(0, Math.min(255, Math.round(value) || 0));\n return (value < 16 ? \"0\" : \"\") + value.toString(16);\n}\n\nfunction hsla(h, s, l, a) {\n if (a <= 0) h = s = l = NaN;\n else if (l <= 0 || l >= 1) h = s = NaN;\n else if (s <= 0) h = NaN;\n return new Hsl(h, s, l, a);\n}\n\nexport function hslConvert(o) {\n if (o instanceof Hsl) return new Hsl(o.h, o.s, o.l, o.opacity);\n if (!(o instanceof Color)) o = color(o);\n if (!o) return new Hsl;\n if (o instanceof Hsl) return o;\n o = o.rgb();\n var r = o.r / 255,\n g = o.g / 255,\n b = o.b / 255,\n min = Math.min(r, g, b),\n max = Math.max(r, g, b),\n h = NaN,\n s = max - min,\n l = (max + min) / 2;\n if (s) {\n if (r === max) h = (g - b) / s + (g < b) * 6;\n else if (g === max) h = (b - r) / s + 2;\n else h = (r - g) / s + 4;\n s /= l < 0.5 ? max + min : 2 - max - min;\n h *= 60;\n } else {\n s = l > 0 && l < 1 ? 0 : h;\n }\n return new Hsl(h, s, l, o.opacity);\n}\n\nexport function hsl(h, s, l, opacity) {\n return arguments.length === 1 ? hslConvert(h) : new Hsl(h, s, l, opacity == null ? 1 : opacity);\n}\n\nfunction Hsl(h, s, l, opacity) {\n this.h = +h;\n this.s = +s;\n this.l = +l;\n this.opacity = +opacity;\n}\n\ndefine(Hsl, hsl, extend(Color, {\n brighter: function(k) {\n k = k == null ? brighter : Math.pow(brighter, k);\n return new Hsl(this.h, this.s, this.l * k, this.opacity);\n },\n darker: function(k) {\n k = k == null ? darker : Math.pow(darker, k);\n return new Hsl(this.h, this.s, this.l * k, this.opacity);\n },\n rgb: function() {\n var h = this.h % 360 + (this.h < 0) * 360,\n s = isNaN(h) || isNaN(this.s) ? 0 : this.s,\n l = this.l,\n m2 = l + (l < 0.5 ? l : 1 - l) * s,\n m1 = 2 * l - m2;\n return new Rgb(\n hsl2rgb(h >= 240 ? h - 240 : h + 120, m1, m2),\n hsl2rgb(h, m1, m2),\n hsl2rgb(h < 120 ? h + 240 : h - 120, m1, m2),\n this.opacity\n );\n },\n displayable: function() {\n return (0 <= this.s && this.s <= 1 || isNaN(this.s))\n && (0 <= this.l && this.l <= 1)\n && (0 <= this.opacity && this.opacity <= 1);\n },\n formatHsl: function() {\n var a = this.opacity; a = isNaN(a) ? 1 : Math.max(0, Math.min(1, a));\n return (a === 1 ? \"hsl(\" : \"hsla(\")\n + (this.h || 0) + \", \"\n + (this.s || 0) * 100 + \"%, \"\n + (this.l || 0) * 100 + \"%\"\n + (a === 1 ? \")\" : \", \" + a + \")\");\n }\n}));\n\n/* From FvD 13.37, CSS Color Module Level 3 */\nfunction hsl2rgb(h, m1, m2) {\n return (h < 60 ? m1 + (m2 - m1) * h / 60\n : h < 180 ? m2\n : h < 240 ? m1 + (m2 - m1) * (240 - h) / 60\n : m1) * 255;\n}\n","import {Selection} from \"./index.js\";\nimport selector from \"../selector.js\";\n\nexport default function(select) {\n if (typeof select !== \"function\") select = selector(select);\n\n for (var groups = this._groups, m = groups.length, subgroups = new Array(m), j = 0; j < m; ++j) {\n for (var group = groups[j], n = group.length, subgroup = subgroups[j] = new Array(n), node, subnode, i = 0; i < n; ++i) {\n if ((node = group[i]) && (subnode = select.call(node, node.__data__, i, group))) {\n if (\"__data__\" in node) subnode.__data__ = node.__data__;\n subgroup[i] = subnode;\n }\n }\n }\n\n return new Selection(subgroups, this._parents);\n}\n","import {Selection} from \"./index.js\";\nimport array from \"../array.js\";\nimport selectorAll from \"../selectorAll.js\";\n\nfunction arrayAll(select) {\n return function() {\n return array(select.apply(this, arguments));\n };\n}\n\nexport default function(select) {\n if (typeof select === \"function\") select = arrayAll(select);\n else select = selectorAll(select);\n\n for (var groups = this._groups, m = groups.length, subgroups = [], parents = [], j = 0; j < m; ++j) {\n for (var group = groups[j], n = group.length, node, i = 0; i < n; ++i) {\n if (node = group[i]) {\n subgroups.push(select.call(node, node.__data__, i, group));\n parents.push(node);\n }\n }\n }\n\n return new Selection(subgroups, parents);\n}\n","import {Selection} from \"./index.js\";\nimport matcher from \"../matcher.js\";\n\nexport default function(match) {\n if (typeof match !== \"function\") match = matcher(match);\n\n for (var groups = this._groups, m = groups.length, subgroups = new Array(m), j = 0; j < m; ++j) {\n for (var group = groups[j], n = group.length, subgroup = subgroups[j] = [], node, i = 0; i < n; ++i) {\n if ((node = group[i]) && match.call(node, node.__data__, i, group)) {\n subgroup.push(node);\n }\n }\n }\n\n return new Selection(subgroups, this._parents);\n}\n","import sparse from \"./sparse.js\";\nimport {Selection} from \"./index.js\";\n\nexport default function() {\n return new Selection(this._exit || this._groups.map(sparse), this._parents);\n}\n","export default function(onenter, onupdate, onexit) {\n var enter = this.enter(), update = this, exit = this.exit();\n if (typeof onenter === \"function\") {\n enter = onenter(enter);\n if (enter) enter = enter.selection();\n } else {\n enter = enter.append(onenter + \"\");\n }\n if (onupdate != null) {\n update = onupdate(update);\n if (update) update = update.selection();\n }\n if (onexit == null) exit.remove(); else onexit(exit);\n return enter && update ? enter.merge(update).order() : update;\n}\n","import {Selection} from \"./index.js\";\n\nexport default function(context) {\n var selection = context.selection ? context.selection() : context;\n\n for (var groups0 = this._groups, groups1 = selection._groups, m0 = groups0.length, m1 = groups1.length, m = Math.min(m0, m1), merges = new Array(m0), j = 0; j < m; ++j) {\n for (var group0 = groups0[j], group1 = groups1[j], n = group0.length, merge = merges[j] = new Array(n), node, i = 0; i < n; ++i) {\n if (node = group0[i] || group1[i]) {\n merge[i] = node;\n }\n }\n }\n\n for (; j < m0; ++j) {\n merges[j] = groups0[j];\n }\n\n return new Selection(merges, this._parents);\n}\n","export default function() {\n\n for (var groups = this._groups, j = -1, m = groups.length; ++j < m;) {\n for (var group = groups[j], i = group.length - 1, next = group[i], node; --i >= 0;) {\n if (node = group[i]) {\n if (next && node.compareDocumentPosition(next) ^ 4) next.parentNode.insertBefore(node, next);\n next = node;\n }\n }\n }\n\n return this;\n}\n","export default function() {\n var callback = arguments[0];\n arguments[0] = this;\n callback.apply(null, arguments);\n return this;\n}\n","export default function() {\n return Array.from(this);\n}\n","export default function() {\n\n for (var groups = this._groups, j = 0, m = groups.length; j < m; ++j) {\n for (var group = groups[j], i = 0, n = group.length; i < n; ++i) {\n var node = group[i];\n if (node) return node;\n }\n }\n\n return null;\n}\n","export default function() {\n let size = 0;\n for (const node of this) ++size; // eslint-disable-line no-unused-vars\n return size;\n}\n","export default function() {\n return !this.node();\n}\n","export default function(callback) {\n\n for (var groups = this._groups, j = 0, m = groups.length; j < m; ++j) {\n for (var group = groups[j], i = 0, n = group.length, node; i < n; ++i) {\n if (node = group[i]) callback.call(node, node.__data__, i, group);\n }\n }\n\n return this;\n}\n","import creator from \"../creator.js\";\n\nexport default function(name) {\n var create = typeof name === \"function\" ? name : creator(name);\n return this.select(function() {\n return this.appendChild(create.apply(this, arguments));\n });\n}\n","export default function(value) {\n return arguments.length\n ? this.property(\"__data__\", value)\n : this.node().__data__;\n}\n","export default function*() {\n for (var groups = this._groups, j = 0, m = groups.length; j < m; ++j) {\n for (var group = groups[j], i = 0, n = group.length, node; i < n; ++i) {\n if (node = group[i]) yield node;\n }\n }\n}\n","export default x => () => x;\n","import constant from \"./constant.js\";\n\nfunction linear(a, d) {\n return function(t) {\n return a + t * d;\n };\n}\n\nfunction exponential(a, b, y) {\n return a = Math.pow(a, y), b = Math.pow(b, y) - a, y = 1 / y, function(t) {\n return Math.pow(a + t * b, y);\n };\n}\n\nexport function hue(a, b) {\n var d = b - a;\n return d ? linear(a, d > 180 || d < -180 ? d - 360 * Math.round(d / 360) : d) : constant(isNaN(a) ? b : a);\n}\n\nexport function gamma(y) {\n return (y = +y) === 1 ? nogamma : function(a, b) {\n return b - a ? exponential(a, b, y) : constant(isNaN(a) ? b : a);\n };\n}\n\nexport default function nogamma(a, b) {\n var d = b - a;\n return d ? linear(a, d) : constant(isNaN(a) ? b : a);\n}\n","import {rgb as colorRgb} from \"d3-color\";\nimport basis from \"./basis.js\";\nimport basisClosed from \"./basisClosed.js\";\nimport nogamma, {gamma} from \"./color.js\";\n\nexport default (function rgbGamma(y) {\n var color = gamma(y);\n\n function rgb(start, end) {\n var r = color((start = colorRgb(start)).r, (end = colorRgb(end)).r),\n g = color(start.g, end.g),\n b = color(start.b, end.b),\n opacity = nogamma(start.opacity, end.opacity);\n return function(t) {\n start.r = r(t);\n start.g = g(t);\n start.b = b(t);\n start.opacity = opacity(t);\n return start + \"\";\n };\n }\n\n rgb.gamma = rgbGamma;\n\n return rgb;\n})(1);\n\nfunction rgbSpline(spline) {\n return function(colors) {\n var n = colors.length,\n r = new Array(n),\n g = new Array(n),\n b = new Array(n),\n i, color;\n for (i = 0; i < n; ++i) {\n color = colorRgb(colors[i]);\n r[i] = color.r || 0;\n g[i] = color.g || 0;\n b[i] = color.b || 0;\n }\n r = spline(r);\n g = spline(g);\n b = spline(b);\n color.opacity = 1;\n return function(t) {\n color.r = r(t);\n color.g = g(t);\n color.b = b(t);\n return color + \"\";\n };\n };\n}\n\nexport var rgbBasis = rgbSpline(basis);\nexport var rgbBasisClosed = rgbSpline(basisClosed);\n","export default function(a, b) {\n return a = +a, b = +b, function(t) {\n return a * (1 - t) + b * t;\n };\n}\n","import number from \"./number.js\";\n\nvar reA = /[-+]?(?:\\d+\\.?\\d*|\\.?\\d+)(?:[eE][-+]?\\d+)?/g,\n reB = new RegExp(reA.source, \"g\");\n\nfunction zero(b) {\n return function() {\n return b;\n };\n}\n\nfunction one(b) {\n return function(t) {\n return b(t) + \"\";\n };\n}\n\nexport default function(a, b) {\n var bi = reA.lastIndex = reB.lastIndex = 0, // scan index for next number in b\n am, // current match in a\n bm, // current match in b\n bs, // string preceding current number in b, if any\n i = -1, // index in s\n s = [], // string constants and placeholders\n q = []; // number interpolators\n\n // Coerce inputs to strings.\n a = a + \"\", b = b + \"\";\n\n // Interpolate pairs of numbers in a & b.\n while ((am = reA.exec(a))\n && (bm = reB.exec(b))) {\n if ((bs = bm.index) > bi) { // a string precedes the next number in b\n bs = b.slice(bi, bs);\n if (s[i]) s[i] += bs; // coalesce with previous string\n else s[++i] = bs;\n }\n if ((am = am[0]) === (bm = bm[0])) { // numbers in a & b match\n if (s[i]) s[i] += bm; // coalesce with previous string\n else s[++i] = bm;\n } else { // interpolate non-matching numbers\n s[++i] = null;\n q.push({i: i, x: number(am, bm)});\n }\n bi = reB.lastIndex;\n }\n\n // Add remains of b.\n if (bi < b.length) {\n bs = b.slice(bi);\n if (s[i]) s[i] += bs; // coalesce with previous string\n else s[++i] = bs;\n }\n\n // Special optimization for only a single match.\n // Otherwise, interpolate each of the numbers and rejoin the string.\n return s.length < 2 ? (q[0]\n ? one(q[0].x)\n : zero(b))\n : (b = q.length, function(t) {\n for (var i = 0, o; i < b; ++i) s[(o = q[i]).i] = o.x(t);\n return s.join(\"\");\n });\n}\n","var degrees = 180 / Math.PI;\n\nexport var identity = {\n translateX: 0,\n translateY: 0,\n rotate: 0,\n skewX: 0,\n scaleX: 1,\n scaleY: 1\n};\n\nexport default function(a, b, c, d, e, f) {\n var scaleX, scaleY, skewX;\n if (scaleX = Math.sqrt(a * a + b * b)) a /= scaleX, b /= scaleX;\n if (skewX = a * c + b * d) c -= a * skewX, d -= b * skewX;\n if (scaleY = Math.sqrt(c * c + d * d)) c /= scaleY, d /= scaleY, skewX /= scaleY;\n if (a * d < b * c) a = -a, b = -b, skewX = -skewX, scaleX = -scaleX;\n return {\n translateX: e,\n translateY: f,\n rotate: Math.atan2(b, a) * degrees,\n skewX: Math.atan(skewX) * degrees,\n scaleX: scaleX,\n scaleY: scaleY\n };\n}\n","import decompose, {identity} from \"./decompose.js\";\n\nvar svgNode;\n\n/* eslint-disable no-undef */\nexport function parseCss(value) {\n const m = new (typeof DOMMatrix === \"function\" ? DOMMatrix : WebKitCSSMatrix)(value + \"\");\n return m.isIdentity ? identity : decompose(m.a, m.b, m.c, m.d, m.e, m.f);\n}\n\nexport function parseSvg(value) {\n if (value == null) return identity;\n if (!svgNode) svgNode = document.createElementNS(\"http://www.w3.org/2000/svg\", \"g\");\n svgNode.setAttribute(\"transform\", value);\n if (!(value = svgNode.transform.baseVal.consolidate())) return identity;\n value = value.matrix;\n return decompose(value.a, value.b, value.c, value.d, value.e, value.f);\n}\n","import number from \"../number.js\";\nimport {parseCss, parseSvg} from \"./parse.js\";\n\nfunction interpolateTransform(parse, pxComma, pxParen, degParen) {\n\n function pop(s) {\n return s.length ? s.pop() + \" \" : \"\";\n }\n\n function translate(xa, ya, xb, yb, s, q) {\n if (xa !== xb || ya !== yb) {\n var i = s.push(\"translate(\", null, pxComma, null, pxParen);\n q.push({i: i - 4, x: number(xa, xb)}, {i: i - 2, x: number(ya, yb)});\n } else if (xb || yb) {\n s.push(\"translate(\" + xb + pxComma + yb + pxParen);\n }\n }\n\n function rotate(a, b, s, q) {\n if (a !== b) {\n if (a - b > 180) b += 360; else if (b - a > 180) a += 360; // shortest path\n q.push({i: s.push(pop(s) + \"rotate(\", null, degParen) - 2, x: number(a, b)});\n } else if (b) {\n s.push(pop(s) + \"rotate(\" + b + degParen);\n }\n }\n\n function skewX(a, b, s, q) {\n if (a !== b) {\n q.push({i: s.push(pop(s) + \"skewX(\", null, degParen) - 2, x: number(a, b)});\n } else if (b) {\n s.push(pop(s) + \"skewX(\" + b + degParen);\n }\n }\n\n function scale(xa, ya, xb, yb, s, q) {\n if (xa !== xb || ya !== yb) {\n var i = s.push(pop(s) + \"scale(\", null, \",\", null, \")\");\n q.push({i: i - 4, x: number(xa, xb)}, {i: i - 2, x: number(ya, yb)});\n } else if (xb !== 1 || yb !== 1) {\n s.push(pop(s) + \"scale(\" + xb + \",\" + yb + \")\");\n }\n }\n\n return function(a, b) {\n var s = [], // string constants and placeholders\n q = []; // number interpolators\n a = parse(a), b = parse(b);\n translate(a.translateX, a.translateY, b.translateX, b.translateY, s, q);\n rotate(a.rotate, b.rotate, s, q);\n skewX(a.skewX, b.skewX, s, q);\n scale(a.scaleX, a.scaleY, b.scaleX, b.scaleY, s, q);\n a = b = null; // gc\n return function(t) {\n var i = -1, n = q.length, o;\n while (++i < n) s[(o = q[i]).i] = o.x(t);\n return s.join(\"\");\n };\n };\n}\n\nexport var interpolateTransformCss = interpolateTransform(parseCss, \"px, \", \"px)\", \"deg)\");\nexport var interpolateTransformSvg = interpolateTransform(parseSvg, \", \", \")\", \")\");\n","var frame = 0, // is an animation frame pending?\n timeout = 0, // is a timeout pending?\n interval = 0, // are any timers active?\n pokeDelay = 1000, // how frequently we check for clock skew\n taskHead,\n taskTail,\n clockLast = 0,\n clockNow = 0,\n clockSkew = 0,\n clock = typeof performance === \"object\" && performance.now ? performance : Date,\n setFrame = typeof window === \"object\" && window.requestAnimationFrame ? window.requestAnimationFrame.bind(window) : function(f) { setTimeout(f, 17); };\n\nexport function now() {\n return clockNow || (setFrame(clearNow), clockNow = clock.now() + clockSkew);\n}\n\nfunction clearNow() {\n clockNow = 0;\n}\n\nexport function Timer() {\n this._call =\n this._time =\n this._next = null;\n}\n\nTimer.prototype = timer.prototype = {\n constructor: Timer,\n restart: function(callback, delay, time) {\n if (typeof callback !== \"function\") throw new TypeError(\"callback is not a function\");\n time = (time == null ? now() : +time) + (delay == null ? 0 : +delay);\n if (!this._next && taskTail !== this) {\n if (taskTail) taskTail._next = this;\n else taskHead = this;\n taskTail = this;\n }\n this._call = callback;\n this._time = time;\n sleep();\n },\n stop: function() {\n if (this._call) {\n this._call = null;\n this._time = Infinity;\n sleep();\n }\n }\n};\n\nexport function timer(callback, delay, time) {\n var t = new Timer;\n t.restart(callback, delay, time);\n return t;\n}\n\nexport function timerFlush() {\n now(); // Get the current time, if not already set.\n ++frame; // Pretend we’ve set an alarm, if we haven’t already.\n var t = taskHead, e;\n while (t) {\n if ((e = clockNow - t._time) >= 0) t._call.call(undefined, e);\n t = t._next;\n }\n --frame;\n}\n\nfunction wake() {\n clockNow = (clockLast = clock.now()) + clockSkew;\n frame = timeout = 0;\n try {\n timerFlush();\n } finally {\n frame = 0;\n nap();\n clockNow = 0;\n }\n}\n\nfunction poke() {\n var now = clock.now(), delay = now - clockLast;\n if (delay > pokeDelay) clockSkew -= delay, clockLast = now;\n}\n\nfunction nap() {\n var t0, t1 = taskHead, t2, time = Infinity;\n while (t1) {\n if (t1._call) {\n if (time > t1._time) time = t1._time;\n t0 = t1, t1 = t1._next;\n } else {\n t2 = t1._next, t1._next = null;\n t1 = t0 ? t0._next = t2 : taskHead = t2;\n }\n }\n taskTail = t0;\n sleep(time);\n}\n\nfunction sleep(time) {\n if (frame) return; // Soonest alarm already set, or will be.\n if (timeout) timeout = clearTimeout(timeout);\n var delay = time - clockNow; // Strictly less than if we recomputed clockNow.\n if (delay > 24) {\n if (time < Infinity) timeout = setTimeout(wake, time - clock.now() - clockSkew);\n if (interval) interval = clearInterval(interval);\n } else {\n if (!interval) clockLast = clock.now(), interval = setInterval(poke, pokeDelay);\n frame = 1, setFrame(wake);\n }\n}\n","import {Timer} from \"./timer.js\";\n\nexport default function(callback, delay, time) {\n var t = new Timer;\n delay = delay == null ? 0 : +delay;\n t.restart(elapsed => {\n t.stop();\n callback(elapsed + delay);\n }, delay, time);\n return t;\n}\n","import {dispatch} from \"d3-dispatch\";\nimport {timer, timeout} from \"d3-timer\";\n\nvar emptyOn = dispatch(\"start\", \"end\", \"cancel\", \"interrupt\");\nvar emptyTween = [];\n\nexport var CREATED = 0;\nexport var SCHEDULED = 1;\nexport var STARTING = 2;\nexport var STARTED = 3;\nexport var RUNNING = 4;\nexport var ENDING = 5;\nexport var ENDED = 6;\n\nexport default function(node, name, id, index, group, timing) {\n var schedules = node.__transition;\n if (!schedules) node.__transition = {};\n else if (id in schedules) return;\n create(node, id, {\n name: name,\n index: index, // For context during callback.\n group: group, // For context during callback.\n on: emptyOn,\n tween: emptyTween,\n time: timing.time,\n delay: timing.delay,\n duration: timing.duration,\n ease: timing.ease,\n timer: null,\n state: CREATED\n });\n}\n\nexport function init(node, id) {\n var schedule = get(node, id);\n if (schedule.state > CREATED) throw new Error(\"too late; already scheduled\");\n return schedule;\n}\n\nexport function set(node, id) {\n var schedule = get(node, id);\n if (schedule.state > STARTED) throw new Error(\"too late; already running\");\n return schedule;\n}\n\nexport function get(node, id) {\n var schedule = node.__transition;\n if (!schedule || !(schedule = schedule[id])) throw new Error(\"transition not found\");\n return schedule;\n}\n\nfunction create(node, id, self) {\n var schedules = node.__transition,\n tween;\n\n // Initialize the self timer when the transition is created.\n // Note the actual delay is not known until the first callback!\n schedules[id] = self;\n self.timer = timer(schedule, 0, self.time);\n\n function schedule(elapsed) {\n self.state = SCHEDULED;\n self.timer.restart(start, self.delay, self.time);\n\n // If the elapsed delay is less than our first sleep, start immediately.\n if (self.delay <= elapsed) start(elapsed - self.delay);\n }\n\n function start(elapsed) {\n var i, j, n, o;\n\n // If the state is not SCHEDULED, then we previously errored on start.\n if (self.state !== SCHEDULED) return stop();\n\n for (i in schedules) {\n o = schedules[i];\n if (o.name !== self.name) continue;\n\n // While this element already has a starting transition during this frame,\n // defer starting an interrupting transition until that transition has a\n // chance to tick (and possibly end); see d3/d3-transition#54!\n if (o.state === STARTED) return timeout(start);\n\n // Interrupt the active transition, if any.\n if (o.state === RUNNING) {\n o.state = ENDED;\n o.timer.stop();\n o.on.call(\"interrupt\", node, node.__data__, o.index, o.group);\n delete schedules[i];\n }\n\n // Cancel any pre-empted transitions.\n else if (+i < id) {\n o.state = ENDED;\n o.timer.stop();\n o.on.call(\"cancel\", node, node.__data__, o.index, o.group);\n delete schedules[i];\n }\n }\n\n // Defer the first tick to end of the current frame; see d3/d3#1576.\n // Note the transition may be canceled after start and before the first tick!\n // Note this must be scheduled before the start event; see d3/d3-transition#16!\n // Assuming this is successful, subsequent callbacks go straight to tick.\n timeout(function() {\n if (self.state === STARTED) {\n self.state = RUNNING;\n self.timer.restart(tick, self.delay, self.time);\n tick(elapsed);\n }\n });\n\n // Dispatch the start event.\n // Note this must be done before the tween are initialized.\n self.state = STARTING;\n self.on.call(\"start\", node, node.__data__, self.index, self.group);\n if (self.state !== STARTING) return; // interrupted\n self.state = STARTED;\n\n // Initialize the tween, deleting null tween.\n tween = new Array(n = self.tween.length);\n for (i = 0, j = -1; i < n; ++i) {\n if (o = self.tween[i].value.call(node, node.__data__, self.index, self.group)) {\n tween[++j] = o;\n }\n }\n tween.length = j + 1;\n }\n\n function tick(elapsed) {\n var t = elapsed < self.duration ? self.ease.call(null, elapsed / self.duration) : (self.timer.restart(stop), self.state = ENDING, 1),\n i = -1,\n n = tween.length;\n\n while (++i < n) {\n tween[i].call(node, t);\n }\n\n // Dispatch the end event.\n if (self.state === ENDING) {\n self.on.call(\"end\", node, node.__data__, self.index, self.group);\n stop();\n }\n }\n\n function stop() {\n self.state = ENDED;\n self.timer.stop();\n delete schedules[id];\n for (var i in schedules) return; // eslint-disable-line no-unused-vars\n delete node.__transition;\n }\n}\n","import {get, set} from \"./schedule.js\";\n\nfunction tweenRemove(id, name) {\n var tween0, tween1;\n return function() {\n var schedule = set(this, id),\n tween = schedule.tween;\n\n // If this node shared tween with the previous node,\n // just assign the updated shared tween and we’re done!\n // Otherwise, copy-on-write.\n if (tween !== tween0) {\n tween1 = tween0 = tween;\n for (var i = 0, n = tween1.length; i < n; ++i) {\n if (tween1[i].name === name) {\n tween1 = tween1.slice();\n tween1.splice(i, 1);\n break;\n }\n }\n }\n\n schedule.tween = tween1;\n };\n}\n\nfunction tweenFunction(id, name, value) {\n var tween0, tween1;\n if (typeof value !== \"function\") throw new Error;\n return function() {\n var schedule = set(this, id),\n tween = schedule.tween;\n\n // If this node shared tween with the previous node,\n // just assign the updated shared tween and we’re done!\n // Otherwise, copy-on-write.\n if (tween !== tween0) {\n tween1 = (tween0 = tween).slice();\n for (var t = {name: name, value: value}, i = 0, n = tween1.length; i < n; ++i) {\n if (tween1[i].name === name) {\n tween1[i] = t;\n break;\n }\n }\n if (i === n) tween1.push(t);\n }\n\n schedule.tween = tween1;\n };\n}\n\nexport default function(name, value) {\n var id = this._id;\n\n name += \"\";\n\n if (arguments.length < 2) {\n var tween = get(this.node(), id).tween;\n for (var i = 0, n = tween.length, t; i < n; ++i) {\n if ((t = tween[i]).name === name) {\n return t.value;\n }\n }\n return null;\n }\n\n return this.each((value == null ? tweenRemove : tweenFunction)(id, name, value));\n}\n\nexport function tweenValue(transition, name, value) {\n var id = transition._id;\n\n transition.each(function() {\n var schedule = set(this, id);\n (schedule.value || (schedule.value = {}))[name] = value.apply(this, arguments);\n });\n\n return function(node) {\n return get(node, id).value[name];\n };\n}\n","import {color} from \"d3-color\";\nimport {interpolateNumber, interpolateRgb, interpolateString} from \"d3-interpolate\";\n\nexport default function(a, b) {\n var c;\n return (typeof b === \"number\" ? interpolateNumber\n : b instanceof color ? interpolateRgb\n : (c = color(b)) ? (b = c, interpolateRgb)\n : interpolateString)(a, b);\n}\n","import {interpolateTransformSvg as interpolateTransform} from \"d3-interpolate\";\nimport {namespace} from \"d3-selection\";\nimport {tweenValue} from \"./tween.js\";\nimport interpolate from \"./interpolate.js\";\n\nfunction attrRemove(name) {\n return function() {\n this.removeAttribute(name);\n };\n}\n\nfunction attrRemoveNS(fullname) {\n return function() {\n this.removeAttributeNS(fullname.space, fullname.local);\n };\n}\n\nfunction attrConstant(name, interpolate, value1) {\n var string00,\n string1 = value1 + \"\",\n interpolate0;\n return function() {\n var string0 = this.getAttribute(name);\n return string0 === string1 ? null\n : string0 === string00 ? interpolate0\n : interpolate0 = interpolate(string00 = string0, value1);\n };\n}\n\nfunction attrConstantNS(fullname, interpolate, value1) {\n var string00,\n string1 = value1 + \"\",\n interpolate0;\n return function() {\n var string0 = this.getAttributeNS(fullname.space, fullname.local);\n return string0 === string1 ? null\n : string0 === string00 ? interpolate0\n : interpolate0 = interpolate(string00 = string0, value1);\n };\n}\n\nfunction attrFunction(name, interpolate, value) {\n var string00,\n string10,\n interpolate0;\n return function() {\n var string0, value1 = value(this), string1;\n if (value1 == null) return void this.removeAttribute(name);\n string0 = this.getAttribute(name);\n string1 = value1 + \"\";\n return string0 === string1 ? null\n : string0 === string00 && string1 === string10 ? interpolate0\n : (string10 = string1, interpolate0 = interpolate(string00 = string0, value1));\n };\n}\n\nfunction attrFunctionNS(fullname, interpolate, value) {\n var string00,\n string10,\n interpolate0;\n return function() {\n var string0, value1 = value(this), string1;\n if (value1 == null) return void this.removeAttributeNS(fullname.space, fullname.local);\n string0 = this.getAttributeNS(fullname.space, fullname.local);\n string1 = value1 + \"\";\n return string0 === string1 ? null\n : string0 === string00 && string1 === string10 ? interpolate0\n : (string10 = string1, interpolate0 = interpolate(string00 = string0, value1));\n };\n}\n\nexport default function(name, value) {\n var fullname = namespace(name), i = fullname === \"transform\" ? interpolateTransform : interpolate;\n return this.attrTween(name, typeof value === \"function\"\n ? (fullname.local ? attrFunctionNS : attrFunction)(fullname, i, tweenValue(this, \"attr.\" + name, value))\n : value == null ? (fullname.local ? attrRemoveNS : attrRemove)(fullname)\n : (fullname.local ? attrConstantNS : attrConstant)(fullname, i, value));\n}\n","import {namespace} from \"d3-selection\";\n\nfunction attrInterpolate(name, i) {\n return function(t) {\n this.setAttribute(name, i.call(this, t));\n };\n}\n\nfunction attrInterpolateNS(fullname, i) {\n return function(t) {\n this.setAttributeNS(fullname.space, fullname.local, i.call(this, t));\n };\n}\n\nfunction attrTweenNS(fullname, value) {\n var t0, i0;\n function tween() {\n var i = value.apply(this, arguments);\n if (i !== i0) t0 = (i0 = i) && attrInterpolateNS(fullname, i);\n return t0;\n }\n tween._value = value;\n return tween;\n}\n\nfunction attrTween(name, value) {\n var t0, i0;\n function tween() {\n var i = value.apply(this, arguments);\n if (i !== i0) t0 = (i0 = i) && attrInterpolate(name, i);\n return t0;\n }\n tween._value = value;\n return tween;\n}\n\nexport default function(name, value) {\n var key = \"attr.\" + name;\n if (arguments.length < 2) return (key = this.tween(key)) && key._value;\n if (value == null) return this.tween(key, null);\n if (typeof value !== \"function\") throw new Error;\n var fullname = namespace(name);\n return this.tween(key, (fullname.local ? attrTweenNS : attrTween)(fullname, value));\n}\n","import {get, init} from \"./schedule.js\";\n\nfunction delayFunction(id, value) {\n return function() {\n init(this, id).delay = +value.apply(this, arguments);\n };\n}\n\nfunction delayConstant(id, value) {\n return value = +value, function() {\n init(this, id).delay = value;\n };\n}\n\nexport default function(value) {\n var id = this._id;\n\n return arguments.length\n ? this.each((typeof value === \"function\"\n ? delayFunction\n : delayConstant)(id, value))\n : get(this.node(), id).delay;\n}\n","import {get, set} from \"./schedule.js\";\n\nfunction durationFunction(id, value) {\n return function() {\n set(this, id).duration = +value.apply(this, arguments);\n };\n}\n\nfunction durationConstant(id, value) {\n return value = +value, function() {\n set(this, id).duration = value;\n };\n}\n\nexport default function(value) {\n var id = this._id;\n\n return arguments.length\n ? this.each((typeof value === \"function\"\n ? durationFunction\n : durationConstant)(id, value))\n : get(this.node(), id).duration;\n}\n","import {get, set} from \"./schedule.js\";\n\nfunction easeConstant(id, value) {\n if (typeof value !== \"function\") throw new Error;\n return function() {\n set(this, id).ease = value;\n };\n}\n\nexport default function(value) {\n var id = this._id;\n\n return arguments.length\n ? this.each(easeConstant(id, value))\n : get(this.node(), id).ease;\n}\n","import {get, set, init} from \"./schedule.js\";\n\nfunction start(name) {\n return (name + \"\").trim().split(/^|\\s+/).every(function(t) {\n var i = t.indexOf(\".\");\n if (i >= 0) t = t.slice(0, i);\n return !t || t === \"start\";\n });\n}\n\nfunction onFunction(id, name, listener) {\n var on0, on1, sit = start(name) ? init : set;\n return function() {\n var schedule = sit(this, id),\n on = schedule.on;\n\n // If this node shared a dispatch with the previous node,\n // just assign the updated shared dispatch and we’re done!\n // Otherwise, copy-on-write.\n if (on !== on0) (on1 = (on0 = on).copy()).on(name, listener);\n\n schedule.on = on1;\n };\n}\n\nexport default function(name, listener) {\n var id = this._id;\n\n return arguments.length < 2\n ? get(this.node(), id).on.on(name)\n : this.each(onFunction(id, name, listener));\n}\n","import {selection} from \"d3-selection\";\n\nvar Selection = selection.prototype.constructor;\n\nexport default function() {\n return new Selection(this._groups, this._parents);\n}\n","import {interpolateTransformCss as interpolateTransform} from \"d3-interpolate\";\nimport {style} from \"d3-selection\";\nimport {set} from \"./schedule.js\";\nimport {tweenValue} from \"./tween.js\";\nimport interpolate from \"./interpolate.js\";\n\nfunction styleNull(name, interpolate) {\n var string00,\n string10,\n interpolate0;\n return function() {\n var string0 = style(this, name),\n string1 = (this.style.removeProperty(name), style(this, name));\n return string0 === string1 ? null\n : string0 === string00 && string1 === string10 ? interpolate0\n : interpolate0 = interpolate(string00 = string0, string10 = string1);\n };\n}\n\nfunction styleRemove(name) {\n return function() {\n this.style.removeProperty(name);\n };\n}\n\nfunction styleConstant(name, interpolate, value1) {\n var string00,\n string1 = value1 + \"\",\n interpolate0;\n return function() {\n var string0 = style(this, name);\n return string0 === string1 ? null\n : string0 === string00 ? interpolate0\n : interpolate0 = interpolate(string00 = string0, value1);\n };\n}\n\nfunction styleFunction(name, interpolate, value) {\n var string00,\n string10,\n interpolate0;\n return function() {\n var string0 = style(this, name),\n value1 = value(this),\n string1 = value1 + \"\";\n if (value1 == null) string1 = value1 = (this.style.removeProperty(name), style(this, name));\n return string0 === string1 ? null\n : string0 === string00 && string1 === string10 ? interpolate0\n : (string10 = string1, interpolate0 = interpolate(string00 = string0, value1));\n };\n}\n\nfunction styleMaybeRemove(id, name) {\n var on0, on1, listener0, key = \"style.\" + name, event = \"end.\" + key, remove;\n return function() {\n var schedule = set(this, id),\n on = schedule.on,\n listener = schedule.value[key] == null ? remove || (remove = styleRemove(name)) : undefined;\n\n // If this node shared a dispatch with the previous node,\n // just assign the updated shared dispatch and we’re done!\n // Otherwise, copy-on-write.\n if (on !== on0 || listener0 !== listener) (on1 = (on0 = on).copy()).on(event, listener0 = listener);\n\n schedule.on = on1;\n };\n}\n\nexport default function(name, value, priority) {\n var i = (name += \"\") === \"transform\" ? interpolateTransform : interpolate;\n return value == null ? this\n .styleTween(name, styleNull(name, i))\n .on(\"end.style.\" + name, styleRemove(name))\n : typeof value === \"function\" ? this\n .styleTween(name, styleFunction(name, i, tweenValue(this, \"style.\" + name, value)))\n .each(styleMaybeRemove(this._id, name))\n : this\n .styleTween(name, styleConstant(name, i, value), priority)\n .on(\"end.style.\" + name, null);\n}\n","function styleInterpolate(name, i, priority) {\n return function(t) {\n this.style.setProperty(name, i.call(this, t), priority);\n };\n}\n\nfunction styleTween(name, value, priority) {\n var t, i0;\n function tween() {\n var i = value.apply(this, arguments);\n if (i !== i0) t = (i0 = i) && styleInterpolate(name, i, priority);\n return t;\n }\n tween._value = value;\n return tween;\n}\n\nexport default function(name, value, priority) {\n var key = \"style.\" + (name += \"\");\n if (arguments.length < 2) return (key = this.tween(key)) && key._value;\n if (value == null) return this.tween(key, null);\n if (typeof value !== \"function\") throw new Error;\n return this.tween(key, styleTween(name, value, priority == null ? \"\" : priority));\n}\n","function textInterpolate(i) {\n return function(t) {\n this.textContent = i.call(this, t);\n };\n}\n\nfunction textTween(value) {\n var t0, i0;\n function tween() {\n var i = value.apply(this, arguments);\n if (i !== i0) t0 = (i0 = i) && textInterpolate(i);\n return t0;\n }\n tween._value = value;\n return tween;\n}\n\nexport default function(value) {\n var key = \"text\";\n if (arguments.length < 1) return (key = this.tween(key)) && key._value;\n if (value == null) return this.tween(key, null);\n if (typeof value !== \"function\") throw new Error;\n return this.tween(key, textTween(value));\n}\n","import {selection} from \"d3-selection\";\nimport transition_attr from \"./attr.js\";\nimport transition_attrTween from \"./attrTween.js\";\nimport transition_delay from \"./delay.js\";\nimport transition_duration from \"./duration.js\";\nimport transition_ease from \"./ease.js\";\nimport transition_easeVarying from \"./easeVarying.js\";\nimport transition_filter from \"./filter.js\";\nimport transition_merge from \"./merge.js\";\nimport transition_on from \"./on.js\";\nimport transition_remove from \"./remove.js\";\nimport transition_select from \"./select.js\";\nimport transition_selectAll from \"./selectAll.js\";\nimport transition_selection from \"./selection.js\";\nimport transition_style from \"./style.js\";\nimport transition_styleTween from \"./styleTween.js\";\nimport transition_text from \"./text.js\";\nimport transition_textTween from \"./textTween.js\";\nimport transition_transition from \"./transition.js\";\nimport transition_tween from \"./tween.js\";\nimport transition_end from \"./end.js\";\n\nvar id = 0;\n\nexport function Transition(groups, parents, name, id) {\n this._groups = groups;\n this._parents = parents;\n this._name = name;\n this._id = id;\n}\n\nexport default function transition(name) {\n return selection().transition(name);\n}\n\nexport function newId() {\n return ++id;\n}\n\nvar selection_prototype = selection.prototype;\n\nTransition.prototype = transition.prototype = {\n constructor: Transition,\n select: transition_select,\n selectAll: transition_selectAll,\n selectChild: selection_prototype.selectChild,\n selectChildren: selection_prototype.selectChildren,\n filter: transition_filter,\n merge: transition_merge,\n selection: transition_selection,\n transition: transition_transition,\n call: selection_prototype.call,\n nodes: selection_prototype.nodes,\n node: selection_prototype.node,\n size: selection_prototype.size,\n empty: selection_prototype.empty,\n each: selection_prototype.each,\n on: transition_on,\n attr: transition_attr,\n attrTween: transition_attrTween,\n style: transition_style,\n styleTween: transition_styleTween,\n text: transition_text,\n textTween: transition_textTween,\n remove: transition_remove,\n tween: transition_tween,\n delay: transition_delay,\n duration: transition_duration,\n ease: transition_ease,\n easeVarying: transition_easeVarying,\n end: transition_end,\n [Symbol.iterator]: selection_prototype[Symbol.iterator]\n};\n","import {selector} from \"d3-selection\";\nimport {Transition} from \"./index.js\";\nimport schedule, {get} from \"./schedule.js\";\n\nexport default function(select) {\n var name = this._name,\n id = this._id;\n\n if (typeof select !== \"function\") select = selector(select);\n\n for (var groups = this._groups, m = groups.length, subgroups = new Array(m), j = 0; j < m; ++j) {\n for (var group = groups[j], n = group.length, subgroup = subgroups[j] = new Array(n), node, subnode, i = 0; i < n; ++i) {\n if ((node = group[i]) && (subnode = select.call(node, node.__data__, i, group))) {\n if (\"__data__\" in node) subnode.__data__ = node.__data__;\n subgroup[i] = subnode;\n schedule(subgroup[i], name, id, i, subgroup, get(node, id));\n }\n }\n }\n\n return new Transition(subgroups, this._parents, name, id);\n}\n","import {selectorAll} from \"d3-selection\";\nimport {Transition} from \"./index.js\";\nimport schedule, {get} from \"./schedule.js\";\n\nexport default function(select) {\n var name = this._name,\n id = this._id;\n\n if (typeof select !== \"function\") select = selectorAll(select);\n\n for (var groups = this._groups, m = groups.length, subgroups = [], parents = [], j = 0; j < m; ++j) {\n for (var group = groups[j], n = group.length, node, i = 0; i < n; ++i) {\n if (node = group[i]) {\n for (var children = select.call(node, node.__data__, i, group), child, inherit = get(node, id), k = 0, l = children.length; k < l; ++k) {\n if (child = children[k]) {\n schedule(child, name, id, k, children, inherit);\n }\n }\n subgroups.push(children);\n parents.push(node);\n }\n }\n }\n\n return new Transition(subgroups, parents, name, id);\n}\n","import {matcher} from \"d3-selection\";\nimport {Transition} from \"./index.js\";\n\nexport default function(match) {\n if (typeof match !== \"function\") match = matcher(match);\n\n for (var groups = this._groups, m = groups.length, subgroups = new Array(m), j = 0; j < m; ++j) {\n for (var group = groups[j], n = group.length, subgroup = subgroups[j] = [], node, i = 0; i < n; ++i) {\n if ((node = group[i]) && match.call(node, node.__data__, i, group)) {\n subgroup.push(node);\n }\n }\n }\n\n return new Transition(subgroups, this._parents, this._name, this._id);\n}\n","import {Transition} from \"./index.js\";\n\nexport default function(transition) {\n if (transition._id !== this._id) throw new Error;\n\n for (var groups0 = this._groups, groups1 = transition._groups, m0 = groups0.length, m1 = groups1.length, m = Math.min(m0, m1), merges = new Array(m0), j = 0; j < m; ++j) {\n for (var group0 = groups0[j], group1 = groups1[j], n = group0.length, merge = merges[j] = new Array(n), node, i = 0; i < n; ++i) {\n if (node = group0[i] || group1[i]) {\n merge[i] = node;\n }\n }\n }\n\n for (; j < m0; ++j) {\n merges[j] = groups0[j];\n }\n\n return new Transition(merges, this._parents, this._name, this._id);\n}\n","import {Transition, newId} from \"./index.js\";\nimport schedule, {get} from \"./schedule.js\";\n\nexport default function() {\n var name = this._name,\n id0 = this._id,\n id1 = newId();\n\n for (var groups = this._groups, m = groups.length, j = 0; j < m; ++j) {\n for (var group = groups[j], n = group.length, node, i = 0; i < n; ++i) {\n if (node = group[i]) {\n var inherit = get(node, id0);\n schedule(node, name, id1, i, group, {\n time: inherit.time + inherit.delay + inherit.duration,\n delay: 0,\n duration: inherit.duration,\n ease: inherit.ease\n });\n }\n }\n }\n\n return new Transition(groups, this._parents, name, id1);\n}\n","import {tweenValue} from \"./tween.js\";\n\nfunction textConstant(value) {\n return function() {\n this.textContent = value;\n };\n}\n\nfunction textFunction(value) {\n return function() {\n var value1 = value(this);\n this.textContent = value1 == null ? \"\" : value1;\n };\n}\n\nexport default function(value) {\n return this.tween(\"text\", typeof value === \"function\"\n ? textFunction(tweenValue(this, \"text\", value))\n : textConstant(value == null ? \"\" : value + \"\"));\n}\n","function removeFunction(id) {\n return function() {\n var parent = this.parentNode;\n for (var i in this.__transition) if (+i !== id) return;\n if (parent) parent.removeChild(this);\n };\n}\n\nexport default function() {\n return this.on(\"end.remove\", removeFunction(this._id));\n}\n","import {set} from \"./schedule.js\";\n\nfunction easeVarying(id, value) {\n return function() {\n var v = value.apply(this, arguments);\n if (typeof v !== \"function\") throw new Error;\n set(this, id).ease = v;\n };\n}\n\nexport default function(value) {\n if (typeof value !== \"function\") throw new Error;\n return this.each(easeVarying(this._id, value));\n}\n","import {set} from \"./schedule.js\";\n\nexport default function() {\n var on0, on1, that = this, id = that._id, size = that.size();\n return new Promise(function(resolve, reject) {\n var cancel = {value: reject},\n end = {value: function() { if (--size === 0) resolve(); }};\n\n that.each(function() {\n var schedule = set(this, id),\n on = schedule.on;\n\n // If this node shared a dispatch with the previous node,\n // just assign the updated shared dispatch and we’re done!\n // Otherwise, copy-on-write.\n if (on !== on0) {\n on1 = (on0 = on).copy();\n on1._.cancel.push(cancel);\n on1._.interrupt.push(cancel);\n on1._.end.push(end);\n }\n\n schedule.on = on1;\n });\n\n // The selection was empty, resolve end immediately\n if (size === 0) resolve();\n });\n}\n","import {Transition, newId} from \"../transition/index.js\";\nimport schedule from \"../transition/schedule.js\";\nimport {easeCubicInOut} from \"d3-ease\";\nimport {now} from \"d3-timer\";\n\nvar defaultTiming = {\n time: null, // Set on use.\n delay: 0,\n duration: 250,\n ease: easeCubicInOut\n};\n\nfunction inherit(node, id) {\n var timing;\n while (!(timing = node.__transition) || !(timing = timing[id])) {\n if (!(node = node.parentNode)) {\n throw new Error(`transition ${id} not found`);\n }\n }\n return timing;\n}\n\nexport default function(name) {\n var id,\n timing;\n\n if (name instanceof Transition) {\n id = name._id, name = name._name;\n } else {\n id = newId(), (timing = defaultTiming).time = now(), name = name == null ? null : name + \"\";\n }\n\n for (var groups = this._groups, m = groups.length, j = 0; j < m; ++j) {\n for (var group = groups[j], n = group.length, node, i = 0; i < n; ++i) {\n if (node = group[i]) {\n schedule(node, name, id, i, group, timing || inherit(node, id));\n }\n }\n }\n\n return new Transition(groups, this._parents, name, id);\n}\n","export function cubicIn(t) {\n return t * t * t;\n}\n\nexport function cubicOut(t) {\n return --t * t * t + 1;\n}\n\nexport function cubicInOut(t) {\n return ((t *= 2) <= 1 ? t * t * t : (t -= 2) * t * t + 2) / 2;\n}\n","export function Transform(k, x, y) {\n this.k = k;\n this.x = x;\n this.y = y;\n}\n\nTransform.prototype = {\n constructor: Transform,\n scale: function(k) {\n return k === 1 ? this : new Transform(this.k * k, this.x, this.y);\n },\n translate: function(x, y) {\n return x === 0 & y === 0 ? this : new Transform(this.k, this.x + this.k * x, this.y + this.k * y);\n },\n apply: function(point) {\n return [point[0] * this.k + this.x, point[1] * this.k + this.y];\n },\n applyX: function(x) {\n return x * this.k + this.x;\n },\n applyY: function(y) {\n return y * this.k + this.y;\n },\n invert: function(location) {\n return [(location[0] - this.x) / this.k, (location[1] - this.y) / this.k];\n },\n invertX: function(x) {\n return (x - this.x) / this.k;\n },\n invertY: function(y) {\n return (y - this.y) / this.k;\n },\n rescaleX: function(x) {\n return x.copy().domain(x.range().map(this.invertX, this).map(x.invert, x));\n },\n rescaleY: function(y) {\n return y.copy().domain(y.range().map(this.invertY, this).map(y.invert, y));\n },\n toString: function() {\n return \"translate(\" + this.x + \",\" + this.y + \") scale(\" + this.k + \")\";\n }\n};\n\nexport var identity = new Transform(1, 0, 0);\n\ntransform.prototype = Transform.prototype;\n\nexport default function transform(node) {\n while (!node.__zoom) if (!(node = node.parentNode)) return identity;\n return node.__zoom;\n}\n","import {selection} from \"d3-selection\";\nimport selection_interrupt from \"./interrupt.js\";\nimport selection_transition from \"./transition.js\";\n\nselection.prototype.interrupt = selection_interrupt;\nselection.prototype.transition = selection_transition;\n","import interrupt from \"../interrupt.js\";\n\nexport default function(name) {\n return this.each(function() {\n interrupt(this, name);\n });\n}\n","import {STARTING, ENDING, ENDED} from \"./transition/schedule.js\";\n\nexport default function(node, name) {\n var schedules = node.__transition,\n schedule,\n active,\n empty = true,\n i;\n\n if (!schedules) return;\n\n name = name == null ? null : name + \"\";\n\n for (i in schedules) {\n if ((schedule = schedules[i]).name !== name) { empty = false; continue; }\n active = schedule.state > STARTING && schedule.state < ENDING;\n schedule.state = ENDED;\n schedule.timer.stop();\n schedule.on.call(active ? \"interrupt\" : \"cancel\", node, node.__data__, schedule.index, schedule.group);\n delete schedules[i];\n }\n\n if (empty) delete node.__transition;\n}\n","\nimport {\n LitElement,\n css,\n svg,\n unsafeCSS,\n} from 'lit';\nimport * as d3 from 'd3';\n\n/*\n DecidablesElement Base Class - Not intended for instantiation!\n <decidables-element>\n*/\nexport default class DecidablesElement extends LitElement {\n getComputedStyleValue(property) {\n return getComputedStyle(this).getPropertyValue(property).trim();\n }\n\n firstUpdated(changedProperties) {\n super.firstUpdated(changedProperties);\n\n // Use focus highlighting if keyboard is used at all\n d3.select(this.renderRoot.host)\n .classed('keyboard', true)\n .on('mousemove.keyboard touchstart.keyboard', (event) => {\n const element = event.currentTarget;\n d3.select(element.renderRoot.host)\n .classed('keyboard', false)\n .on('mousemove.keyboard touchstart.keyboard', null);\n })\n .on('keydown.keyboard', (event) => {\n const element = event.currentTarget;\n d3.select(element.renderRoot.host)\n .classed('keyboard', true)\n .on('keydown.keyboard mousemove.keyboard touchstart.keyboard', null);\n });\n }\n\n static get greys() {\n const grey = '#999999';\n const greys = {};\n greys.white = '#ffffff';\n greys.light75 = d3.interpolateRgb(grey, '#ffffff')(0.75);\n greys.light50 = d3.interpolateRgb(grey, '#ffffff')(0.5);\n greys.light25 = d3.interpolateRgb(grey, '#ffffff')(0.25);\n greys.grey = grey;\n greys.dark25 = d3.interpolateRgb(grey, '#000000')(0.25);\n greys.dark50 = d3.interpolateRgb(grey, '#000000')(0.5);\n greys.dark75 = d3.interpolateRgb(grey, '#000000')(0.75);\n greys.black = '#000000';\n return greys;\n }\n\n static get shadows() {\n // Material Design elevation styles\n // References:\n // https://github.com/material-components/material-components-web/tree/master/packages/mdc-elevation\n // https://codepen.io/hanger/pen/yOGvQp\n /* eslint-disable key-spacing, object-curly-newline */\n return {\n elevations: [0, 2, 4, 8, 16],\n baselineColor: '#000000',\n baselineColorString: '0, 0, 0',\n inverseBaselineColor: '#FFFFFF',\n inverseBaselineColorString: '255, 255, 255',\n opacityUmbra: 0.2,\n opacityPenumbra: 0.14,\n opacityAmbient: 0.12,\n opacityBoost: 0.2,\n mapUmbra: {// $mdc-elevation-umbra-map\n 0: {x: 0, y: 0, b: 0, s: 0}, // offset-x, offset-y, blur-radius, spread-radius\n 2: {x: 0, y: 3, b: 1, s: -2},\n 4: {x: 0, y: 2, b: 4, s: -1},\n 8: {x: 0, y: 5, b: 5, s: -3},\n 16: {x: 0, y: 8, b: 10, s: -5},\n },\n mapPenumbra: {// $mdc-elevation-penumbra-map\n 0: {x: 0, y: 0, b: 0, s: 0}, // offset-x, offset-y, blur-radius, spread-radius\n 2: {x: 0, y: 2, b: 2, s: 0},\n 4: {x: 0, y: 4, b: 5, s: 0},\n 8: {x: 0, y: 8, b: 10, s: 1},\n 16: {x: 0, y: 16, b: 24, s: 2},\n },\n mapAmbient: {// $mdc-elevation-ambient-map\n 0: {x: 0, y: 0, b: 0, s: 0}, // offset-x, offset-y, blur-radius, spread-radius\n 2: {x: 0, y: 1, b: 5, s: 0},\n 4: {x: 0, y: 1, b: 10, s: 0},\n 8: {x: 0, y: 3, b: 14, s: 2},\n 16: {x: 0, y: 6, b: 30, s: 5},\n },\n };\n /* eslint-enable key-spacing, object-curly-newline */\n }\n\n static cssBoxShadow(elevation, rotate = false, inverse = false) {\n const umbraO = this.shadows.opacityUmbra + this.shadows.opacityBoost;\n const penumbraO = this.shadows.opacityPenumbra + this.shadows.opacityBoost;\n const ambientO = this.shadows.opacityAmbient + this.shadows.opacityBoost;\n\n const umbraC = (inverse)\n ? `rgba(${this.shadows.inverseBaselineColorString}, ${umbraO})`\n : `rgba(${this.shadows.baselineColorString}, ${umbraO})`;\n const penumbraC = (inverse)\n ? `rgba(${this.shadows.inverseBaselineColorString}, ${penumbraO})`\n : `rgba(${this.shadows.baselineColorString}, ${penumbraO})`;\n const ambientC = (inverse)\n ? `rgba(${this.shadows.inverseBaselineColorString}, ${ambientO})`\n : `rgba(${this.shadows.baselineColorString}, ${ambientO})`;\n\n const umbraM = this.shadows.mapUmbra[elevation];\n const penumbraM = this.shadows.mapPenumbra[elevation];\n const ambientM = this.shadows.mapAmbient[elevation];\n\n const umbraS = (rotate)\n ? `${-umbraM.y}px ${umbraM.y / 2}px ${umbraM.b}px ${umbraM.s}px`\n : `${umbraM.y / 2}px ${umbraM.y}px ${umbraM.b}px ${umbraM.s}px`;\n const penumbraS = (rotate)\n ? `${-penumbraM.y}px ${penumbraM.y / 2}px ${penumbraM.b}px ${penumbraM.s}px`\n : `${penumbraM.y / 2}px ${penumbraM.y}px ${penumbraM.b}px ${penumbraM.s}px`;\n const ambientS = (rotate)\n ? `${-ambientM.y}px ${ambientM.y / 2}px ${ambientM.b}px ${ambientM.s}px`\n : `${ambientM.y / 2}px ${ambientM.y}px ${ambientM.b}px ${ambientM.s}px`;\n\n return `${umbraS} ${umbraC}, ${penumbraS} ${penumbraC}, ${ambientS} ${ambientC}`;\n }\n\n static get svgFilters() {\n const shadows = DecidablesElement.shadows; /* eslint-disable-line prefer-destructuring */\n\n const filters = shadows.elevations.map((z) => {\n return svg`\n <filter id=${`shadow-${z}`} x=\"-250%\" y=\"-250%\" width=\"600%\" height=\"600%\">\n <feComponentTransfer in=\"SourceAlpha\" result=\"solid\">\n <feFuncA type=\"table\" tableValues=\"0 1 1\"/>\n </feComponentTransfer>\n <feOffset in=\"solid\" result=\"offU\" dx=${shadows.mapUmbra[z].y / 2} dy=${shadows.mapUmbra[z].y} />\n <feOffset in=\"solid\" result=\"offP\" dx=${shadows.mapPenumbra[z].y / 2} dy=${shadows.mapPenumbra[z].y} />\n <feOffset in=\"solid\" result=\"offA\" dx=${shadows.mapAmbient[z].y / 2} dy=${shadows.mapAmbient[z].y} />\n ${(shadows.mapUmbra[z].s === 0)\n ? svg``\n : svg`<feMorphology in=\"offU\" result=\"spreadU\" operator=${(shadows.mapUmbra[z].s > 0) ? 'dilate' : 'erode'} radius=${Math.abs(shadows.mapUmbra[z].s)} />`\n }\n ${(shadows.mapPenumbra[z].s === 0)\n ? svg``\n : svg`<feMorphology in=\"offP\" result=\"spreadP\" operator=${(shadows.mapPenumbra[z].s > 0) ? 'dilate' : 'erode'} radius=${Math.abs(shadows.mapPenumbra[z].s)} />`\n }\n ${(shadows.mapAmbient[z].s === 0)\n ? svg``\n : svg`<feMorphology in=\"offA\" result=\"spreadA\" operator=${(shadows.mapAmbient[z].s > 0) ? 'dilate' : 'erode'} radius=${Math.abs(shadows.mapAmbient[z].s)} />`\n }\n <feGaussianBlur in=${(shadows.mapUmbra[z].s === 0) ? 'offU' : 'spreadU'} result=\"blurU\" stdDeviation=${shadows.mapUmbra[z].b / 2} />\n <feGaussianBlur in=${(shadows.mapPenumbra[z].s === 0) ? 'offP' : 'spreadP'} result=\"blurP\" stdDeviation=${shadows.mapPenumbra[z].b / 2} />\n <feGaussianBlur in=${(shadows.mapAmbient[z].s === 0) ? 'offA' : 'spreadA'} result=\"blurA\" stdDeviation=${shadows.mapAmbient[z].b / 2} />\n <feFlood in=\"SourceGraphic\" result=\"opU\" flood-color=${shadows.baselineColor} flood-opacity=${shadows.opacityUmbra + shadows.opacityBoost} />\n <feFlood in=\"SourceGraphic\" result=\"opP\" flood-color=${shadows.baselineColor} flood-opacity=${shadows.opacityPenumbra + shadows.opacityBoost} />\n <feFlood in=\"SourceGraphic\" result=\"opA\" flood-color=${shadows.baselineColor} flood-opacity=${shadows.opacityAmbient + shadows.opacityBoost} />\n <feComposite in=\"opU\" in2=\"blurU\" result=\"shU\" operator=\"in\" />\n <feComposite in=\"opP\" in2=\"blurP\" result=\"shP\" operator=\"in\" />\n <feComposite in=\"opA\" in2=\"blurA\" result=\"shA\" operator=\"in\" />\n <feMorphology in=\"solid\" result=\"smaller\" operator=\"erode\" radius=\"1\" />\n <feComposite in=\"shU\" in2=\"smaller\" result=\"finalU\" operator=\"out\" />\n <feComposite in=\"shP\" in2=\"smaller\" result=\"finalP\" operator=\"out\" />\n <feComposite in=\"shA\" in2=\"smaller\" result=\"finalA\" operator=\"out\" />\n <feMerge>\n <feMergeNode in=\"finalU\" />\n <feMergeNode in=\"finalP\" />\n <feMergeNode in=\"finalA\" />\n <feMergeNode in=\"SourceGraphic\" />\n </feMerge>\n </filter>`;\n });\n\n return svg`\n <svg class=\"defs\">\n <defs>\n ${filters}\n </defs>\n </svg>\n `;\n }\n\n static get styles() {\n return css`\n :host {\n ---shadow-0: var(--shadow-0, ${unsafeCSS(this.cssBoxShadow(0))});\n ---shadow-2: var(--shadow-2, ${unsafeCSS(this.cssBoxShadow(2))});\n ---shadow-4: var(--shadow-4, ${unsafeCSS(this.cssBoxShadow(4))});\n ---shadow-8: var(--shadow-8, ${unsafeCSS(this.cssBoxShadow(8))});\n\n ---color-background: var(--color-background, ${unsafeCSS(this.greys.white)});\n ---color-border: var(--color-border, ${unsafeCSS(this.greys.light75)});\n ---color-text: var(--color-text, ${unsafeCSS(this.greys.dark75)});\n ---color-text-inverse: var(--color-text-inverse, ${unsafeCSS(this.greys.white)});\n ---color-link: var(--color-link, ${unsafeCSS(this.greys.dark25)});\n ---color-element-background: var(--color-element-background, ${unsafeCSS(this.greys.light75)});\n ---color-element-disabled: var(--color-element-disabled, ${unsafeCSS(this.greys.light50)});\n ---color-element-enabled: var(--color-element-enabled, ${unsafeCSS(this.greys.dark25)});\n ---color-element-selected: var(--color-element-selected, ${unsafeCSS(this.greys.grey)});\n ---color-element-border: var(--color-element-border, ${unsafeCSS(this.greys.dark50)});\n ---color-element-emphasis: var(--color-element-emphasis, ${unsafeCSS(this.greys.dark75)});\n\n ---font-family-base: var(--font-family-base, \"Source Sans\", sans-serif);\n ---font-family-math: var(--font-family-math, \"Source Serif\", serif);\n\n ---border: var(--border, 1px solid var(---color-border));\n ---border-radius: var(--border-radius, 0.25rem);\n ---transition-duration: var(--transition-duration, 500ms);\n\n font-family: var(---font-family-base);\n }\n\n :host,\n :host *,\n :host *::before,\n :host *::after {\n box-sizing: border-box;\n }\n\n .math-greek {\n font-family: var(---font-family-math);\n font-style: normal;\n }\n\n .math-num {\n font-family: var(---font-family-base);\n font-style: normal;\n }\n\n .math-var {\n font-family: var(---font-family-math);\n font-style: italic;\n }\n\n .defs {\n display: block;\n\n width: 0;\n height: 0;\n }\n `;\n }\n}\n","\nimport {html, css} from 'lit';\n\nimport DecidablesElement from './decidables-element';\n\nexport default class DecidablesButton extends DecidablesElement {\n static get properties() {\n return {\n disabled: {\n attribute: 'disabled',\n type: Boolean,\n reflect: true,\n },\n };\n }\n\n constructor() {\n super();\n\n // Attributes\n this.disabled = false;\n }\n\n static get styles() {\n return [\n super.styles,\n css`\n :host {\n margin: 0.25rem;\n }\n\n button {\n width: 100%;\n height: 100%;\n padding: 0.375rem 0.75rem;\n\n font-family: var(---font-family-base);\n font-size: 1.125rem;\n line-height: 1.5;\n color: var(---color-text-inverse);\n\n border: 0;\n border-radius: var(---border-radius);\n outline: none;\n }\n\n button:disabled {\n background-color: var(--decidables-button-background-color, var(---color-element-disabled));\n outline: none;\n box-shadow: none;\n }\n\n button:enabled {\n cursor: pointer;\n\n background-color: var(--decidables-button-background-color, var(---color-element-enabled));\n outline: none;\n box-shadow: var(---shadow-2);\n }\n\n button:enabled:hover {\n outline: none;\n box-shadow: var(---shadow-4);\n }\n\n button:enabled:active {\n outline: none;\n box-shadow: var(---shadow-8);\n }\n\n :host(.keyboard) button:enabled:focus {\n outline: none;\n box-shadow: var(---shadow-4);\n }\n\n :host(.keyboard) button:enabled:focus:active {\n outline: none;\n box-shadow: var(---shadow-8);\n }\n `,\n ];\n }\n\n render() {\n return html`\n <button ?disabled=${this.disabled}>\n <slot></slot>\n </button>\n `;\n }\n}\n\ncustomElements.define('decidables-button', DecidablesButton);\n","import{nothing as t}from\"../lit-html.js\";\n/**\n * @license\n * Copyright 2018 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */const l=l=>null!=l?l:t;export{l as ifDefined};\n//# sourceMappingURL=if-defined.js.map\n","\nimport {ifDefined} from 'lit/directives/if-defined.js'; /* eslint-disable-line import/extensions */\nimport {html, css, unsafeCSS} from 'lit';\n\nimport DecidablesElement from './decidables-element';\n\nexport default class DecidablesSlider extends DecidablesElement {\n static get properties() {\n return {\n disabled: {\n attribute: 'disabled',\n type: Boolean,\n reflect: true,\n },\n max: {\n attribute: 'max',\n type: Number,\n reflect: true,\n },\n min: {\n attribute: 'min',\n type: Number,\n reflect: true,\n },\n step: {\n attribute: 'step',\n type: Number,\n reflect: true,\n },\n value: {\n attribute: 'value',\n type: Number,\n reflect: true,\n },\n };\n }\n\n constructor() {\n super();\n\n // Attributes\n this.disabled = false;\n this.max = undefined;\n this.min = undefined;\n this.step = undefined;\n this.value = undefined;\n }\n\n changed(event) {\n this.value = event.target.value;\n this.dispatchEvent(new CustomEvent('change', {\n detail: {\n value: this.value,\n },\n bubbles: true,\n }));\n }\n\n inputted(event) {\n this.value = event.target.value;\n }\n\n static get styles() {\n return [\n super.styles,\n css`\n :host {\n ---shadow-2-rotate: var(--shadow-2-rotate, ${unsafeCSS(this.cssBoxShadow(2, true, false))});\n ---shadow-4-rotate: var(--shadow-4-rotate, ${unsafeCSS(this.cssBoxShadow(4, true, false))});\n ---shadow-8-rotate: var(--shadow-8-rotate, ${unsafeCSS(this.cssBoxShadow(8, true, false))});\n\n display: flex;\n\n flex-direction: column;\n\n align-items: center;\n justify-content: center;\n }\n\n label {\n margin: 0.25rem 0.25rem 0;\n }\n\n .range {\n display: inline-block;\n\n width: 3.5rem;\n height: 4.75rem;\n margin: 0 0.25rem 0.25rem;\n }\n\n decidables-spinner {\n --decidables-spinner-input-width: 3.5rem;\n\n margin: 0 0.25rem 0.25rem;\n }\n\n /* Adapted from http://danielstern.ca/range.css/#/ */\n /* Overall */\n input[type=range] {\n width: 4.75rem;\n height: 3.5rem;\n padding: 0;\n margin: 0;\n\n background-color: unset;\n\n transform: rotate(-90deg);\n transform-origin: 2.375rem 2.375rem;\n\n /* stylelint-disable-next-line property-no-vendor-prefix */\n -webkit-appearance: none;\n }\n\n input[type=range]:enabled {\n cursor: ns-resize;\n }\n\n input[type=range]:focus {\n outline: none;\n }\n\n /* stylelint-disable-next-line no-descending-specificity */ /* stylelint ERROR */\n input[type=range]::-ms-tooltip {\n display: none;\n }\n\n /* Track */\n /* stylelint-disable-next-line no-descending-specificity */ /* stylelint ERROR */\n input[type=range]::-webkit-slider-runnable-track {\n width: 100%;\n height: 4px;\n\n background: var(---color-element-disabled);\n border: 0;\n border-radius: 2px;\n box-shadow: none;\n }\n\n input[type=range]:focus::-webkit-slider-runnable-track {\n background: var(---color-element-disabled);\n }\n\n /* stylelint-disable-next-line no-descending-specificity */ /* stylelint ERROR */\n input[type=range]::-moz-range-track {\n width: 100%;\n height: 4px;\n\n background: var(---color-element-disabled);\n border: 0;\n border-radius: 2px;\n box-shadow: none;\n }\n\n /* stylelint-disable-next-line no-descending-specificity */ /* stylelint ERROR */\n input[type=range]::-ms-track {\n width: 100%;\n height: 4px;\n\n color: transparent;\n\n background: transparent;\n border-color: transparent;\n }\n\n /* stylelint-disable-next-line no-descending-specificity */ /* stylelint ERROR */\n input[type=range]::-ms-fill-lower {\n background: #cccccc;\n /* background: var(---color-element-disabled); */\n border: 0;\n border-radius: 2px;\n box-shadow: none;\n }\n\n /* stylelint-disable-next-line no-descending-specificity */ /* stylelint ERROR */\n input[type=range]::-ms-fill-upper {\n background: #cccccc;\n /* background: var(---color-element-disabled); */\n border: 0;\n border-radius: 2px;\n box-shadow: none;\n }\n\n /* stylelint-disable-next-line no-descending-specificity */ /* stylelint ERROR */\n input[type=range]:focus::-ms-fill-lower {\n background: var(---color-element-disabled);\n }\n\n /* stylelint-disable-next-line no-descending-specificity */ /* stylelint ERROR */\n input[type=range]:focus::-ms-fill-upper {\n background: var(---color-element-disabled);\n }\n\n /* Thumb */\n /* stylelint-disable-next-line no-descending-specificity */ /* stylelint ERROR */\n input[type=range]::-webkit-slider-thumb {\n width: 10px;\n height: 20px;\n margin-top: -8px;\n\n border: 0;\n border-radius: 4px;\n\n /* stylelint-disable-next-line property-no-vendor-prefix */\n -webkit-appearance: none;\n }\n\n input[type=range]:disabled::-webkit-slider-thumb {\n background: var(---color-element-disabled);\n box-shadow: none;\n }\n\n input[type=range]:enabled::-webkit-slider-thumb {\n background: var(---color-element-enabled);\n box-shadow: var(---shadow-2-rotate);\n }\n\n input[type=range]:enabled:hover::-webkit-slider-thumb {\n box-shadow: var(---shadow-4-rotate);\n }\n\n input[type=range]:enabled:active::-webkit-slider-thumb {\n box-shadow: var(---shadow-8-rotate);\n }\n\n :host(.keyboard) input[type=range]:enabled:focus::-webkit-slider-thumb {\n box-shadow: var(---shadow-4-rotate);\n }\n\n :host(.keyboard) input[type=range]:focus:active::-webkit-slider-thumb {\n box-shadow: var(---shadow-8-rotate);\n }\n\n /* stylelint-disable-next-line no-descending-specificity */ /* stylelint ERROR */\n input[type=range]::-moz-range-thumb {\n width: 10px;\n height: 20px;\n\n border: 0;\n border-radius: 4px;\n }\n\n /* stylelint-disable-next-line no-descending-specificity */ /* stylelint ERROR */\n input[type=range]:disabled::-moz-range-thumb {\n background: var(---color-element-disabled);\n box-shadow: none;\n }\n\n /* stylelint-disable-next-line no-descending-specificity */ /* stylelint ERROR */\n input[type=range]:enabled::-moz-range-thumb {\n background: var(---color-element-enabled);\n box-shadow: var(---shadow-2-rotate);\n }\n\n /* stylelint-disable-next-line no-descending-specificity */ /* stylelint ERROR */\n input[type=range]:enabled:hover::-moz-range-thumb {\n box-shadow: var(---shadow-4-rotate);\n }\n\n /* stylelint-disable-next-line no-descending-specificity */ /* stylelint ERROR */\n input[type=range]:enabled:active::-moz-range-thumb {\n box-shadow: var(---shadow-8-rotate);\n }\n\n :host(.keyboard) input[type=range]:enabled:focus::-moz-range-thumb {\n box-shadow: var(---shadow-4-rotate);\n }\n\n :host(.keyboard) input[type=range]:enabled:focus:active::-moz-range-thumb {\n box-shadow: var(---shadow-8-rotate);\n }\n\n /* stylelint-disable-next-line no-descending-specificity */ /* stylelint ERROR */\n input[type=range]::-ms-thumb {\n width: 10px;\n height: 20px;\n margin-top: 0;\n\n background: #999999;\n /* background: var(---color-element-enabled); */\n border: 0;\n border-radius: 4px;\n box-shadow: var(---shadow-2-rotate);\n }\n\n /* stylelint-disable-next-line no-descending-specificity */ /* stylelint ERROR */\n input[type=range]:disabled::-ms-thumb {\n background: var(---color-element-disabled);\n box-shadow: none;\n }\n\n /* stylelint-disable-next-line no-descending-specificity */ /* stylelint ERROR */\n input[type=range]:enabled::-ms-thumb {\n background: var(---color-element-enabled);\n box-shadow: var(---shadow-2-rotate);\n }\n\n /* stylelint-disable-next-line no-descending-specificity */ /* stylelint ERROR */\n input[type=range]:enabled:hover::-ms-thumb {\n box-shadow: var(---shadow-4-rotate);\n }\n\n /* stylelint-disable-next-line no-descending-specificity */ /* stylelint ERROR */\n input[type=range]:enabled:active::-ms-thumb {\n box-shadow: var(---shadow-8-rotate);\n }\n\n /* stylelint-disable-next-line no-descending-specificity */ /* stylelint ERROR */\n :host(.keyboard) input[type=range]:enabled:focus::-ms-thumb {\n box-shadow: var(---shadow-4-rotate);\n }\n\n :host(.keyboard) input[type=range]:enabled:focus:active::-ms-thumb {\n box-shadow: var(---shadow-8-rotate);\n }\n `,\n ];\n }\n\n render() {\n return html`\n <label for=\"slider\">\n <slot></slot>\n </label>\n <div class=\"range\">\n <input type=\"range\" id=\"slider\" min=${ifDefined(this.min)} max=${ifDefined(this.max)} step=${ifDefined(this.step)} .value=${this.value} @change=${this.changed.bind(this)} @input=${this.inputted.bind(this)}>\n </div>\n <decidables-spinner min=${ifDefined(this.min)} max=${ifDefined(this.max)} step=${ifDefined(this.step)} .value=${this.value} @input=${this.inputted.bind(this)}></decidables-spinner>\n `;\n }\n}\n\ncustomElements.define('decidables-slider', DecidablesSlider);\n","\nimport {ifDefined} from 'lit/directives/if-defined.js'; /* eslint-disable-line import/extensions */\nimport {html, css} from 'lit';\n\nimport DecidablesElement from './decidables-element';\n\nexport default class DecidablesSpinner extends DecidablesElement {\n static get properties() {\n return {\n disabled: {\n attribute: 'disabled',\n type: Boolean,\n reflect: true,\n },\n max: {\n attribute: 'max',\n type: Number,\n reflect: true,\n },\n min: {\n attribute: 'min',\n type: Number,\n reflect: true,\n },\n step: {\n attribute: 'step',\n type: Number,\n reflect: true,\n },\n value: {\n attribute: 'value',\n type: Number,\n reflect: true,\n },\n };\n }\n\n constructor() {\n super();\n\n // Attributes\n this.disabled = false;\n this.max = undefined;\n this.min = undefined;\n this.step = undefined;\n this.value = undefined;\n }\n\n inputted(event) {\n this.value = event.target.value;\n }\n\n static get styles() {\n return [\n super.styles,\n css`\n :host {\n ---decidables-spinner-font-size: var(--decidables-spinner-font-size, 1.125rem);\n ---decidables-spinner-input-width: var(--decidables-spinner-input-width, 4rem);\n ---decidables-spinner-prefix: var(--decidables-spinner-prefix, \"\");\n\n display: block;\n }\n\n label {\n position: relative;\n display: flex;\n\n flex-direction: column;\n\n align-items: center;\n\n margin: 0;\n\n font-size: 0.75rem;\n }\n\n label::before {\n position: absolute;\n bottom: 1px;\n left: calc(50% - var(---decidables-spinner-input-width) / 2 + 0.25rem);\n\n font-size: var(---decidables-spinner-font-size);\n line-height: normal;\n\n content: var(---decidables-spinner-prefix);\n }\n\n input[type=number] {\n width: var(---decidables-spinner-input-width);\n\n font-family: var(---font-family-base);\n font-size: var(---decidables-spinner-font-size);\n color: inherit;\n text-align: right;\n\n background: none;\n border: 0;\n border-radius: 0;\n outline: none;\n box-shadow: var(---shadow-2);\n\n -webkit-appearance: none; /* stylelint-disable-line property-no-vendor-prefix */\n }\n\n input[type=number]:hover {\n box-shadow: var(---shadow-4);\n }\n\n input[type=number]:focus,\n input[type=number]:active {\n box-shadow: var(---shadow-8);\n }\n\n input[type=number]:disabled {\n color: var(---color-text);\n\n border: 0;\n box-shadow: none;\n\n /* HACK: Use correct text color in Safari */\n -webkit-opacity: 1;\n /* HACK: Hide spinners in disabled input for Firefox and Safari */\n -moz-appearance: textfield; /* stylelint-disable-line property-no-vendor-prefix */\n /* HACK: Use correct text color in Safari */\n -webkit-text-fill-color: var(---color-text);\n }\n\n /* HACK: Hide spinners in disabled input for Firefox and Safari */\n input[type=number]:disabled::-webkit-outer-spin-button,\n input[type=number]:disabled::-webkit-inner-spin-button {\n margin: 0;\n -webkit-appearance: none; /* stylelint-disable-line property-no-vendor-prefix */\n }\n `,\n ];\n }\n\n render() {\n return html`\n <label>\n <slot></slot>\n <input ?disabled=${this.disabled} type=\"number\" min=${ifDefined(this.min)} max=${ifDefined(this.max)} step=${ifDefined(this.step)} .value=${this.value} @input=${this.inputted.bind(this)}>\n </label>\n `;\n }\n}\n\ncustomElements.define('decidables-spinner', DecidablesSpinner);\n","\nimport {html, css} from 'lit';\n\nimport DecidablesElement from './decidables-element';\n\nexport default class DecidablesSwitch extends DecidablesElement {\n static get properties() {\n return {\n checked: {\n attribute: 'checked',\n type: Boolean,\n reflect: true,\n },\n disabled: {\n attribute: 'disabled',\n type: Boolean,\n reflect: true,\n },\n };\n }\n\n constructor() {\n super();\n\n // Attributes\n this.checked = false;\n this.disabled = false;\n }\n\n changed(event) {\n this.checked = event.target.checked;\n this.dispatchEvent(new CustomEvent('change', {\n detail: {\n checked: this.checked,\n },\n bubbles: true,\n }));\n }\n\n static get styles() {\n return [\n super.styles,\n css`\n :host {\n display: flex;\n\n flex-direction: column;\n\n align-items: center;\n justify-content: center;\n }\n\n /* Adapted from https://codepen.io/guuslieben/pen/YyPRVP */\n input[type=checkbox] {\n /* visuallyhidden: https://github.com/h5bp/html5-boilerplate/blob/master/dist/doc/css.md */\n position: absolute;\n\n width: 1px;\n height: 1px;\n padding: 0;\n margin: -1px;\n overflow: hidden;\n clip: rect(0 0 0 0);\n\n white-space: nowrap;\n\n border: 0;\n clip-path: inset(100%); /* May cause a performance issue: https://github.com/h5bp/html5-boilerplate/issues/2021 */\n }\n\n input[type=checkbox] + label {\n order: 1;\n\n margin: 0 0.25rem 0.25rem;\n\n font-weight: 400;\n }\n\n input[type=checkbox] + label + label {\n position: relative;\n\n min-width: 24px;\n padding: 0 0 36px;\n margin: 0.25rem 0.25rem 0;\n\n font-weight: 400;\n\n outline: none;\n }\n\n input[type=checkbox] + label + label::before,\n input[type=checkbox] + label + label::after {\n position: absolute;\n\n left: 50%;\n\n margin: 0;\n\n content: \"\";\n\n outline: 0;\n\n transition: all var(---transition-duration) ease;\n transform: translate(-50%, 0);\n }\n\n input[type=checkbox] + label + label::before {\n bottom: 1px;\n\n width: 8px;\n height: 34px;\n\n background-color: var(---color-element-disabled);\n border-radius: 4px;\n }\n\n input[type=checkbox] + label + label::after {\n bottom: 0;\n\n width: 18px;\n height: 18px;\n\n background-color: var(---color-element-enabled);\n border-radius: 50%;\n box-shadow: var(---shadow-2);\n }\n\n input[type=checkbox]:checked + label + label::after {\n transform: translate(-50%, -100%);\n }\n\n input[type=checkbox]:disabled + label + label::after {\n background-color: var(---color-element-disabled);\n box-shadow: none;\n }\n\n input[type=checkbox]:enabled + label,\n input[type=checkbox]:enabled + label + label {\n cursor: pointer;\n }\n\n input[type=checkbox]:enabled + label:hover + label::after,\n input[type=checkbox]:enabled + label + label:hover::after {\n box-shadow: var(---shadow-4);\n }\n\n input[type=checkbox]:enabled + label:active + label::after,\n input[type=checkbox]:enabled + label + label:active::after {\n box-shadow: var(---shadow-8);\n }\n\n /* stylelint-disable-next-line selector-max-compound-selectors */\n :host(.keyboard) input[type=checkbox]:enabled:focus + label + label::after {\n box-shadow: var(---shadow-4);\n }\n\n /* stylelint-disable-next-line selector-max-compound-selectors */\n :host(.keyboard) input[type=checkbox]:enabled:focus + label + label:active::after,\n :host(.keyboard) input[type=checkbox]:enabled:focus:active + label + label::after {\n box-shadow: var(---shadow-8);\n }\n `,\n ];\n }\n\n render() {\n return html`\n <input type=\"checkbox\" id=\"switch\" ?checked=${this.checked} ?disabled=${this.disabled} @change=${this.changed.bind(this)}>\n <label for=\"switch\">\n <slot name=\"off-label\"></slot>\n </label>\n <label for=\"switch\">\n <slot></slot>\n </label>\n `;\n }\n}\n\ncustomElements.define('decidables-switch', DecidablesSwitch);\n","\nimport {html, css} from 'lit';\n\nimport DecidablesElement from './decidables-element';\n\nexport default class DecidablesToggle extends DecidablesElement {\n static get properties() {\n return {\n disabled: {\n attribute: 'disabled',\n type: Boolean,\n reflect: true,\n },\n };\n }\n\n constructor() {\n super();\n\n // Attributes\n this.disabled = false;\n }\n\n static get styles() {\n return [\n super.styles,\n css`\n fieldset {\n display: flex;\n\n flex-direction: column;\n\n align-items: stretch;\n justify-content: center;\n\n margin: 0.25rem;\n\n border: 0;\n }\n\n legend {\n text-align: center;\n }\n `,\n ];\n }\n\n render() {\n return html`\n <fieldset ?disabled=${this.disabled}>\n <legend><slot name=\"label\"></slot></legend>\n <slot></slot>\n </fieldset>\n `;\n }\n}\n\ncustomElements.define('decidables-toggle', DecidablesToggle);\n","\nimport {html, css} from 'lit';\n\nimport DecidablesElement from './decidables-element';\n\nexport default class DecidablesToggleOption extends DecidablesElement {\n static get properties() {\n return {\n checked: {\n attribute: 'checked',\n type: Boolean,\n reflect: true,\n },\n disabled: {\n attribute: 'disabled',\n type: Boolean,\n reflect: true,\n },\n name: {\n attribute: 'name',\n type: String,\n reflect: true,\n },\n value: {\n attribute: 'value',\n type: String,\n reflect: true,\n },\n };\n }\n\n constructor() {\n super();\n\n // Attributes\n this.checked = false;\n this.disabled = false;\n this.name = undefined;\n this.value = undefined;\n }\n\n changed(event) {\n this.checked = event.target.checked;\n this.dispatchEvent(new CustomEvent('change', {\n detail: {\n checked: this.checked,\n value: this.value,\n },\n bubbles: true,\n }));\n }\n\n static get styles() {\n return [\n super.styles,\n css`\n :host {\n display: flex;\n }\n\n input[type=radio] {\n /* visuallyhidden: https://github.com/h5bp/html5-boilerplate/blob/master/dist/doc/css.md */\n position: absolute;\n\n width: 1px;\n height: 1px;\n padding: 0;\n margin: -1px;\n overflow: hidden;\n clip: rect(0 0 0 0);\n\n white-space: nowrap;\n\n border: 0;\n clip-path: inset(100%); /* May cause a performance issue: https://github.com/h5bp/html5-boilerplate/issues/2021 */\n }\n\n input[type=radio] + label {\n width: 100%;\n padding: 0.375rem 0.75rem;\n\n font-family: var(---font-family-base);\n font-size: 1.125rem;\n line-height: 1.5;\n color: var(---color-text-inverse);\n text-align: center;\n\n cursor: pointer;\n\n background-color: var(---color-element-enabled);\n border: 0;\n border-radius: 0;\n outline: none;\n\n box-shadow: var(---shadow-2);\n }\n\n input[type=radio]:checked + label {\n background-color: var(---color-element-selected);\n outline: none;\n box-shadow: var(---shadow-2);\n }\n\n input[type=radio] + label:hover {\n z-index: 1;\n\n outline: none;\n box-shadow: var(---shadow-4);\n }\n\n input[type=radio] + label:active {\n z-index: 2;\n\n outline: none;\n box-shadow: var(---shadow-8);\n }\n\n :host(:first-of-type) input[type=radio] + label {\n border-top-left-radius: 0.25rem;\n border-top-right-radius: 0.25rem;\n }\n\n :host(:last-of-type) input[type=radio] + label {\n border-bottom-right-radius: 0.25rem;\n border-bottom-left-radius: 0.25rem;\n }\n\n :host(.keyboard) input[type=radio]:focus + label {\n z-index: 1;\n\n outline: none;\n box-shadow: var(---shadow-4);\n }\n\n :host(.keyboard) input[type=radio]:focus:checked + label {\n z-index: 1;\n\n background-color: var(---color-element-selected);\n outline: none;\n box-shadow: var(---shadow-4);\n }\n\n :host(.keyboard) input[type=radio]:focus + label:active {\n z-index: 2;\n\n outline: none;\n box-shadow: var(---shadow-8);\n }\n `,\n ];\n }\n\n render() {\n return html`\n <input type=\"radio\" id=\"toggle-option\" name=${this.name} value=${this.value} .checked=${this.checked} @change=${this.changed.bind(this)}>\n <label for=\"toggle-option\">\n <slot></slot>\n </label>\n `;\n }\n}\n\ncustomElements.define('decidables-toggle-option', DecidablesToggleOption);\n","\n/*\n Attribute: Space-separated sequence of numbers\n Property: Array of numbers\n*/\nconst DecidablesConverterArray = {\n fromAttribute: (value) => {\n return value.split(/\\s+/).map((item) => { return Number.parseFloat(item); });\n },\n toAttribute: (value) => {\n return (value.length) ? value.map((item) => { return item.toFixed(3); }).join(' ') : null;\n },\n};\n\nexport default DecidablesConverterArray;\n","\n/*\n Attribute: Space-separated sequence of strings\n Property: Set of strings\n*/\nconst DecidablesConverterSet = {\n fromAttribute: (value) => {\n return new Set(value.split(/\\s+/));\n },\n toAttribute: (value) => {\n return (value.size) ? [...value].join(' ') : null;\n },\n};\n\nexport default DecidablesConverterSet;\n"],"names":["t","window","e","ShadowRoot","ShadyCSS","nativeShadow","Document","prototype","CSSStyleSheet","s","Symbol","n","WeakMap","r","constructor","this","_$cssResult$","Error","cssText","styleSheet","o","length","get","replaceSync","set","toString","c","cssRules","trustedTypes","h","emptyScript","reactiveElementPolyfillSupport","toAttribute","i","Boolean","Object","Array","JSON","stringify","fromAttribute","Number","parse","a","notEqual","l","attribute","type","String","converter","reflect","hasChanged","HTMLElement","super","_$Ei","Map","isUpdatePending","hasUpdated","_$El","u","static","finalize","push","observedAttributes","elementProperties","forEach","_$Ep","_$Ev","state","noAccessor","hasOwnProperty","getPropertyDescriptor","defineProperty","requestUpdate","configurable","enumerable","finalized","getPrototypeOf","properties","getOwnPropertyNames","getOwnPropertySymbols","createProperty","elementStyles","finalizeStyles","styles","isArray","Set","flat","reverse","unshift","toLowerCase","_$E_","Promise","enableUpdating","_$AL","_$Eg","addController","_$ES","renderRoot","isConnected","hostConnected","call","removeController","splice","indexOf","createRenderRoot","shadowRoot","attachShadow","shadowRootOptions","adoptStyles","adoptedStyleSheets","map","document","createElement","litNonce","setAttribute","textContent","appendChild","connectedCallback","disconnectedCallback","hostDisconnected","attributeChangedCallback","_$AK","_$EO","removeAttribute","getPropertyOptions","has","_$EC","_$Ej","async","reject","scheduleUpdate","performUpdate","shouldUpdate","willUpdate","hostUpdate","update","_$Ek","_$AE","hostUpdated","firstUpdated","updated","updateComplete","getUpdateComplete","d$1","d","mode","ReactiveElement","reactiveElementVersions","createPolicy","createHTML","Math","random","slice","createMarker","createComment","f","_","m","p","RegExp","g","$","y","w","_$litType$","strings","values","x","b","T","for","A","E","C","createTreeWalker","P","getTemplateHtml","v","lastIndex","exec","test","startsWith","V","parts","el","currentNode","content","firstChild","remove","append","childNodes","nextNode","nodeType","hasAttributes","getAttributeNames","endsWith","getAttribute","split","index","name","ctor","k","I","L","R","tagName","data","innerHTML","N","_$Co","_$Cl","_$litDirective$","_$AO","_$AT","_$AS","M","_$AH","_$AN","_$AA","_$AB","_$AM","options","_$Cm","_$AU","parentNode","startNode","endNode","_$AI","_$AR","iterator","S","insertBefore","nextSibling","createTextNode","_$AC","_$AD","creationScope","importNode","z","_$AP","setConnected","element","fill","j","arguments","H","capture","once","passive","removeEventListener","addEventListener","handleEvent","host","litHtmlPolyfillSupport","litHtmlVersions","s$2","css","reduce","_$Et","_$Eh","_$Eu","_$Em","_$EU","globalThis","renderOptions","_$Do","renderBefore","render","_$litPart$","_$litElement$","litElementHydrateSupport","LitElement","litElementPolyfillSupport","litElementVersions","noop","value","dispatch","Dispatch","parseTypenames","typenames","types","trim","callback","concat","on","typename","copy","that","args","apply","xhtml","namespaces","svg","xlink","xml","xmlns","namespace","prefix","space","local","creatorInherit","ownerDocument","uri","namespaceURI","documentElement","createElementNS","creatorFixed","fullname","creator","none","selector","querySelector","array","from","empty","selectorAll","querySelectorAll","matcher","matches","childMatcher","node","find","childFirst","firstElementChild","filter","children","sparse","EnterNode","parent","datum","_next","_parent","__data__","constant$1","bindIndex","group","enter","exit","groupLength","dataLength","bindKey","key","keyValue","nodeByKeyValue","keyValues","delete","arraylike","ascending","NaN","attrRemove","attrRemoveNS","removeAttributeNS","attrConstant","attrConstantNS","setAttributeNS","attrFunction","attrFunctionNS","defaultView","styleRemove","style","removeProperty","styleConstant","priority","setProperty","styleFunction","styleValue","getPropertyValue","getComputedStyle","propertyRemove","propertyConstant","propertyFunction","classArray","string","classList","ClassList","_node","_names","classedAdd","names","list","add","classedRemove","classedTrue","classedFalse","classedFunction","textRemove","textConstant","textFunction","htmlRemove","htmlConstant","htmlFunction","raise","lower","previousSibling","constantNull","removeChild","selection_cloneShallow","clone","cloneNode","selection_cloneDeep","onRemove","__on","listener","onAdd","event","contextListener","dispatchEvent","params","CustomEvent","createEvent","initEvent","bubbles","cancelable","detail","dispatchConstant","dispatchFunction","child","next","join","contains","root","Selection","groups","parents","_groups","_parents","selection","select","define","factory","extend","definition","create","Color","subgroups","subnode","subgroup","selectAll","arrayAll","selectChild","match","childFind","selectChildren","childrenFilter","bind","constant","enterGroup","updateGroup","exitGroup","previous","i0","i1","_enter","_exit","onenter","onupdate","onexit","merge","order","context","groups0","groups1","m0","m1","min","merges","group0","group1","compareDocumentPosition","sort","compare","compareNode","sortgroups","sortgroup","nodes","size","each","attr","getAttributeNS","property","classed","text","html","insert","before","deep","darker","brighter","reI","reN","reP","reHex","reRgbInteger","reRgbPercent","reRgbaInteger","reRgbaPercent","reHslPercent","reHslaPercent","named","aliceblue","antiquewhite","aqua","aquamarine","azure","beige","bisque","black","blanchedalmond","blue","blueviolet","brown","burlywood","cadetblue","chartreuse","chocolate","coral","cornflowerblue","cornsilk","crimson","cyan","darkblue","darkcyan","darkgoldenrod","darkgray","darkgreen","darkgrey","darkkhaki","darkmagenta","darkolivegreen","darkorange","darkorchid","darkred","darksalmon","darkseagreen","darkslateblue","darkslategray","darkslategrey","darkturquoise","darkviolet","deeppink","deepskyblue","dimgray","dimgrey","dodgerblue","firebrick","floralwhite","forestgreen","fuchsia","gainsboro","ghostwhite","gold","goldenrod","gray","green","greenyellow","grey","honeydew","hotpink","indianred","indigo","ivory","khaki","lavender","lavenderblush","lawngreen","lemonchiffon","lightblue","lightcoral","lightcyan","lightgoldenrodyellow","lightgray","lightgreen","lightgrey","lightpink","lightsalmon","lightseagreen","lightskyblue","lightslategray","lightslategrey","lightsteelblue","lightyellow","lime","limegreen","linen","magenta","maroon","mediumaquamarine","mediumblue","mediumorchid","mediumpurple","mediumseagreen","mediumslateblue","mediumspringgreen","mediumturquoise","mediumvioletred","midnightblue","mintcream","mistyrose","moccasin","navajowhite","navy","oldlace","olive","olivedrab","orange","orangered","orchid","palegoldenrod","palegreen","paleturquoise","palevioletred","papayawhip","peachpuff","peru","pink","plum","powderblue","purple","rebeccapurple","red","rosybrown","royalblue","saddlebrown","salmon","sandybrown","seagreen","seashell","sienna","silver","skyblue","slateblue","slategray","slategrey","snow","springgreen","steelblue","tan","teal","thistle","tomato","turquoise","violet","wheat","white","whitesmoke","yellow","yellowgreen","color_formatHex","rgb","formatHex","color_formatRgb","formatRgb","color","format","parseInt","rgbn","Rgb","rgba","hsla","rgbConvert","opacity","rgb_formatHex","hex","rgb_formatRgb","isNaN","max","round","Hsl","hslConvert","hsl2rgb","m2","channels","assign","displayable","formatHsl","pow","gamma","nogamma","exponential","linear","interpolateRgb","rgbGamma","start","end","colorRgb","interpolateNumber","reA","reB","source","interpolateString","am","bm","bs","bi","q","number","one","zero","svgNode","degrees","PI","identity","translateX","translateY","rotate","skewX","scaleX","scaleY","decompose","sqrt","atan2","atan","interpolateTransform","pxComma","pxParen","degParen","pop","xa","ya","xb","yb","translate","scale","taskHead","taskTail","interpolateTransformCss","DOMMatrix","WebKitCSSMatrix","isIdentity","interpolateTransformSvg","transform","baseVal","consolidate","matrix","frame","timeout","interval","clockLast","clockNow","clockSkew","clock","performance","now","Date","setFrame","requestAnimationFrame","setTimeout","clearNow","Timer","_call","_time","timer","delay","time","restart","wake","undefined","timerFlush","t0","t2","t1","Infinity","sleep","nap","poke","clearTimeout","clearInterval","setInterval","elapsed","stop","TypeError","emptyOn","emptyTween","schedule","id","timing","schedules","__transition","self","tween","tick","duration","ease","init","tweenRemove","tween0","tween1","tweenFunction","tweenValue","transition","_id","interpolate","value1","string00","interpolate0","string1","string0","string10","attrInterpolate","attrInterpolateNS","attrTweenNS","_value","attrTween","delayFunction","delayConstant","durationFunction","durationConstant","easeConstant","onFunction","on0","on1","sit","every","styleInterpolate","styleTween","textInterpolate","textTween","Transition","_name","newId","selection_prototype","inherit","id0","id1","styleNull","listener0","styleMaybeRemove","removeFunction","easeVarying","resolve","cancel","interrupt","defaultTiming","Transform","active","point","applyX","applyY","invert","location","invertX","invertY","rescaleX","domain","range","rescaleY","DecidablesElement","getComputedStyleValue","changedProperties","d3","currentTarget","greys","light75","light50","light25","dark25","dark50","dark75","shadows","elevations","baselineColor","baselineColorString","inverseBaselineColor","inverseBaselineColorString","opacityUmbra","opacityPenumbra","opacityAmbient","opacityBoost","mapUmbra","mapPenumbra","mapAmbient","elevation","inverse","umbraO","penumbraO","ambientO","umbraC","penumbraC","ambientC","umbraM","penumbraM","ambientM","svgFilters","filters","abs","unsafeCSS","cssBoxShadow","DecidablesButton","disabled","customElements","DecidablesSlider","step","changed","target","inputted","ifDefined","DecidablesSpinner","DecidablesSwitch","checked","DecidablesToggle","DecidablesToggleOption","DecidablesConverterArray","item","parseFloat","toFixed","DecidablesConverterSet"],"mappings":"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","x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,96]}
1
+ {"version":3,"file":"decidablesElements.umd.min.js","sources":["../../../node_modules/lit/node_modules/@lit/reactive-element/css-tag.js","../../../node_modules/lit/node_modules/@lit/reactive-element/reactive-element.js","../../../node_modules/lit/node_modules/lit-html/lit-html.js","../../../node_modules/lit/node_modules/lit-element/node_modules/@lit/reactive-element/css-tag.js","../../../node_modules/lit/node_modules/lit-element/node_modules/@lit/reactive-element/reactive-element.js","../../../node_modules/lit/node_modules/lit-element/node_modules/lit-html/lit-html.js","../../../node_modules/lit/node_modules/lit-element/lit-element.js","../../../node_modules/d3-dispatch/src/dispatch.js","../../../node_modules/d3-selection/src/namespaces.js","../../../node_modules/d3-selection/src/namespace.js","../../../node_modules/d3-selection/src/creator.js","../../../node_modules/d3-selection/src/selector.js","../../../node_modules/d3-selection/src/selectorAll.js","../../../node_modules/d3-selection/src/selection/selectAll.js","../../../node_modules/d3-selection/src/array.js","../../../node_modules/d3-selection/src/matcher.js","../../../node_modules/d3-selection/src/selection/selectChild.js","../../../node_modules/d3-selection/src/selection/selectChildren.js","../../../node_modules/d3-selection/src/selection/sparse.js","../../../node_modules/d3-selection/src/selection/enter.js","../../../node_modules/d3-selection/src/selection/data.js","../../../node_modules/d3-selection/src/selection/sort.js","../../../node_modules/d3-selection/src/selection/attr.js","../../../node_modules/d3-selection/src/window.js","../../../node_modules/d3-selection/src/selection/style.js","../../../node_modules/d3-selection/src/selection/property.js","../../../node_modules/d3-selection/src/selection/classed.js","../../../node_modules/d3-selection/src/selection/text.js","../../../node_modules/d3-selection/src/selection/html.js","../../../node_modules/d3-selection/src/selection/raise.js","../../../node_modules/d3-selection/src/selection/lower.js","../../../node_modules/d3-selection/src/selection/insert.js","../../../node_modules/d3-selection/src/selection/remove.js","../../../node_modules/d3-selection/src/selection/clone.js","../../../node_modules/d3-selection/src/selection/on.js","../../../node_modules/d3-selection/src/selection/dispatch.js","../../../node_modules/d3-selection/src/selection/index.js","../../../node_modules/d3-selection/src/select.js","../../../node_modules/d3-color/src/define.js","../../../node_modules/d3-color/src/color.js","../../../node_modules/d3-selection/src/selection/select.js","../../../node_modules/d3-selection/src/selection/filter.js","../../../node_modules/d3-selection/src/constant.js","../../../node_modules/d3-selection/src/selection/exit.js","../../../node_modules/d3-selection/src/selection/join.js","../../../node_modules/d3-selection/src/selection/merge.js","../../../node_modules/d3-selection/src/selection/order.js","../../../node_modules/d3-selection/src/selection/call.js","../../../node_modules/d3-selection/src/selection/nodes.js","../../../node_modules/d3-selection/src/selection/node.js","../../../node_modules/d3-selection/src/selection/size.js","../../../node_modules/d3-selection/src/selection/empty.js","../../../node_modules/d3-selection/src/selection/each.js","../../../node_modules/d3-selection/src/selection/append.js","../../../node_modules/d3-selection/src/selection/datum.js","../../../node_modules/d3-selection/src/selection/iterator.js","../../../node_modules/d3-interpolate/src/constant.js","../../../node_modules/d3-interpolate/src/color.js","../../../node_modules/d3-interpolate/src/rgb.js","../../../node_modules/d3-interpolate/src/number.js","../../../node_modules/d3-interpolate/src/string.js","../../../node_modules/d3-interpolate/src/transform/decompose.js","../../../node_modules/d3-interpolate/src/transform/parse.js","../../../node_modules/d3-interpolate/src/transform/index.js","../../../node_modules/d3-timer/src/timer.js","../../../node_modules/d3-timer/src/timeout.js","../../../node_modules/d3-transition/src/transition/schedule.js","../../../node_modules/d3-transition/src/transition/tween.js","../../../node_modules/d3-transition/src/transition/interpolate.js","../../../node_modules/d3-transition/src/transition/attr.js","../../../node_modules/d3-transition/src/transition/attrTween.js","../../../node_modules/d3-transition/src/transition/delay.js","../../../node_modules/d3-transition/src/transition/duration.js","../../../node_modules/d3-transition/src/transition/selection.js","../../../node_modules/d3-transition/src/transition/style.js","../../../node_modules/d3-transition/src/transition/index.js","../../../node_modules/d3-transition/src/transition/select.js","../../../node_modules/d3-transition/src/transition/selectAll.js","../../../node_modules/d3-transition/src/transition/filter.js","../../../node_modules/d3-transition/src/transition/merge.js","../../../node_modules/d3-transition/src/transition/transition.js","../../../node_modules/d3-transition/src/transition/on.js","../../../node_modules/d3-transition/src/transition/styleTween.js","../../../node_modules/d3-transition/src/transition/text.js","../../../node_modules/d3-transition/src/transition/textTween.js","../../../node_modules/d3-transition/src/transition/remove.js","../../../node_modules/d3-transition/src/transition/ease.js","../../../node_modules/d3-transition/src/transition/easeVarying.js","../../../node_modules/d3-transition/src/transition/end.js","../../../node_modules/d3-transition/src/selection/transition.js","../../../node_modules/d3-ease/src/cubic.js","../../../node_modules/d3-zoom/src/transform.js","../../../node_modules/d3-transition/src/selection/index.js","../../../node_modules/d3-transition/src/selection/interrupt.js","../../../node_modules/d3-transition/src/interrupt.js","../src/decidables-element.js","../src/button.js","../../../node_modules/lit/node_modules/lit-html/directives/if-defined.js","../src/slider.js","../src/spinner.js","../src/switch.js","../src/toggle.js","../src/toggle-option.js","../src/converter-array.js","../src/converter-set.js"],"sourcesContent":["/**\n * @license\n * Copyright 2019 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\nconst t=window,e=t.ShadowRoot&&(void 0===t.ShadyCSS||t.ShadyCSS.nativeShadow)&&\"adoptedStyleSheets\"in Document.prototype&&\"replace\"in CSSStyleSheet.prototype,s=Symbol(),n=new WeakMap;class o{constructor(t,e,n){if(this._$cssResult$=!0,n!==s)throw Error(\"CSSResult is not constructable. Use `unsafeCSS` or `css` instead.\");this.cssText=t,this.t=e}get styleSheet(){let t=this.o;const s=this.t;if(e&&void 0===t){const e=void 0!==s&&1===s.length;e&&(t=n.get(s)),void 0===t&&((this.o=t=new CSSStyleSheet).replaceSync(this.cssText),e&&n.set(s,t))}return t}toString(){return this.cssText}}const r=t=>new o(\"string\"==typeof t?t:t+\"\",void 0,s),i=(t,...e)=>{const n=1===t.length?t[0]:e.reduce(((e,s,n)=>e+(t=>{if(!0===t._$cssResult$)return t.cssText;if(\"number\"==typeof t)return t;throw Error(\"Value passed to 'css' function must be a 'css' function result: \"+t+\". Use 'unsafeCSS' to pass non-literal values, but take care to ensure page security.\")})(s)+t[n+1]),t[0]);return new o(n,t,s)},S=(s,n)=>{e?s.adoptedStyleSheets=n.map((t=>t instanceof CSSStyleSheet?t:t.styleSheet)):n.forEach((e=>{const n=document.createElement(\"style\"),o=t.litNonce;void 0!==o&&n.setAttribute(\"nonce\",o),n.textContent=e.cssText,s.appendChild(n)}))},c=e?t=>t:t=>t instanceof CSSStyleSheet?(t=>{let e=\"\";for(const s of t.cssRules)e+=s.cssText;return r(e)})(t):t;export{o as CSSResult,S as adoptStyles,i as css,c as getCompatibleStyle,e as supportsAdoptingStyleSheets,r as unsafeCSS};\n//# sourceMappingURL=css-tag.js.map\n","import{getCompatibleStyle as t,adoptStyles as i}from\"./css-tag.js\";export{CSSResult,adoptStyles,css,getCompatibleStyle,supportsAdoptingStyleSheets,unsafeCSS}from\"./css-tag.js\";\n/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */var s;const e=window,r=e.trustedTypes,h=r?r.emptyScript:\"\",o=e.reactiveElementPolyfillSupport,n={toAttribute(t,i){switch(i){case Boolean:t=t?h:null;break;case Object:case Array:t=null==t?t:JSON.stringify(t)}return t},fromAttribute(t,i){let s=t;switch(i){case Boolean:s=null!==t;break;case Number:s=null===t?null:Number(t);break;case Object:case Array:try{s=JSON.parse(t)}catch(t){s=null}}return s}},a=(t,i)=>i!==t&&(i==i||t==t),l={attribute:!0,type:String,converter:n,reflect:!1,hasChanged:a};class d extends HTMLElement{constructor(){super(),this._$Ei=new Map,this.isUpdatePending=!1,this.hasUpdated=!1,this._$El=null,this.u()}static addInitializer(t){var i;this.finalize(),(null!==(i=this.h)&&void 0!==i?i:this.h=[]).push(t)}static get observedAttributes(){this.finalize();const t=[];return this.elementProperties.forEach(((i,s)=>{const e=this._$Ep(s,i);void 0!==e&&(this._$Ev.set(e,s),t.push(e))})),t}static createProperty(t,i=l){if(i.state&&(i.attribute=!1),this.finalize(),this.elementProperties.set(t,i),!i.noAccessor&&!this.prototype.hasOwnProperty(t)){const s=\"symbol\"==typeof t?Symbol():\"__\"+t,e=this.getPropertyDescriptor(t,s,i);void 0!==e&&Object.defineProperty(this.prototype,t,e)}}static getPropertyDescriptor(t,i,s){return{get(){return this[i]},set(e){const r=this[t];this[i]=e,this.requestUpdate(t,r,s)},configurable:!0,enumerable:!0}}static getPropertyOptions(t){return this.elementProperties.get(t)||l}static finalize(){if(this.hasOwnProperty(\"finalized\"))return!1;this.finalized=!0;const t=Object.getPrototypeOf(this);if(t.finalize(),void 0!==t.h&&(this.h=[...t.h]),this.elementProperties=new Map(t.elementProperties),this._$Ev=new Map,this.hasOwnProperty(\"properties\")){const t=this.properties,i=[...Object.getOwnPropertyNames(t),...Object.getOwnPropertySymbols(t)];for(const s of i)this.createProperty(s,t[s])}return this.elementStyles=this.finalizeStyles(this.styles),!0}static finalizeStyles(i){const s=[];if(Array.isArray(i)){const e=new Set(i.flat(1/0).reverse());for(const i of e)s.unshift(t(i))}else void 0!==i&&s.push(t(i));return s}static _$Ep(t,i){const s=i.attribute;return!1===s?void 0:\"string\"==typeof s?s:\"string\"==typeof t?t.toLowerCase():void 0}u(){var t;this._$E_=new Promise((t=>this.enableUpdating=t)),this._$AL=new Map,this._$Eg(),this.requestUpdate(),null===(t=this.constructor.h)||void 0===t||t.forEach((t=>t(this)))}addController(t){var i,s;(null!==(i=this._$ES)&&void 0!==i?i:this._$ES=[]).push(t),void 0!==this.renderRoot&&this.isConnected&&(null===(s=t.hostConnected)||void 0===s||s.call(t))}removeController(t){var i;null===(i=this._$ES)||void 0===i||i.splice(this._$ES.indexOf(t)>>>0,1)}_$Eg(){this.constructor.elementProperties.forEach(((t,i)=>{this.hasOwnProperty(i)&&(this._$Ei.set(i,this[i]),delete this[i])}))}createRenderRoot(){var t;const s=null!==(t=this.shadowRoot)&&void 0!==t?t:this.attachShadow(this.constructor.shadowRootOptions);return i(s,this.constructor.elementStyles),s}connectedCallback(){var t;void 0===this.renderRoot&&(this.renderRoot=this.createRenderRoot()),this.enableUpdating(!0),null===(t=this._$ES)||void 0===t||t.forEach((t=>{var i;return null===(i=t.hostConnected)||void 0===i?void 0:i.call(t)}))}enableUpdating(t){}disconnectedCallback(){var t;null===(t=this._$ES)||void 0===t||t.forEach((t=>{var i;return null===(i=t.hostDisconnected)||void 0===i?void 0:i.call(t)}))}attributeChangedCallback(t,i,s){this._$AK(t,s)}_$EO(t,i,s=l){var e;const r=this.constructor._$Ep(t,s);if(void 0!==r&&!0===s.reflect){const h=(void 0!==(null===(e=s.converter)||void 0===e?void 0:e.toAttribute)?s.converter:n).toAttribute(i,s.type);this._$El=t,null==h?this.removeAttribute(r):this.setAttribute(r,h),this._$El=null}}_$AK(t,i){var s;const e=this.constructor,r=e._$Ev.get(t);if(void 0!==r&&this._$El!==r){const t=e.getPropertyOptions(r),h=\"function\"==typeof t.converter?{fromAttribute:t.converter}:void 0!==(null===(s=t.converter)||void 0===s?void 0:s.fromAttribute)?t.converter:n;this._$El=r,this[r]=h.fromAttribute(i,t.type),this._$El=null}}requestUpdate(t,i,s){let e=!0;void 0!==t&&(((s=s||this.constructor.getPropertyOptions(t)).hasChanged||a)(this[t],i)?(this._$AL.has(t)||this._$AL.set(t,i),!0===s.reflect&&this._$El!==t&&(void 0===this._$EC&&(this._$EC=new Map),this._$EC.set(t,s))):e=!1),!this.isUpdatePending&&e&&(this._$E_=this._$Ej())}async _$Ej(){this.isUpdatePending=!0;try{await this._$E_}catch(t){Promise.reject(t)}const t=this.scheduleUpdate();return null!=t&&await t,!this.isUpdatePending}scheduleUpdate(){return this.performUpdate()}performUpdate(){var t;if(!this.isUpdatePending)return;this.hasUpdated,this._$Ei&&(this._$Ei.forEach(((t,i)=>this[i]=t)),this._$Ei=void 0);let i=!1;const s=this._$AL;try{i=this.shouldUpdate(s),i?(this.willUpdate(s),null===(t=this._$ES)||void 0===t||t.forEach((t=>{var i;return null===(i=t.hostUpdate)||void 0===i?void 0:i.call(t)})),this.update(s)):this._$Ek()}catch(t){throw i=!1,this._$Ek(),t}i&&this._$AE(s)}willUpdate(t){}_$AE(t){var i;null===(i=this._$ES)||void 0===i||i.forEach((t=>{var i;return null===(i=t.hostUpdated)||void 0===i?void 0:i.call(t)})),this.hasUpdated||(this.hasUpdated=!0,this.firstUpdated(t)),this.updated(t)}_$Ek(){this._$AL=new Map,this.isUpdatePending=!1}get updateComplete(){return this.getUpdateComplete()}getUpdateComplete(){return this._$E_}shouldUpdate(t){return!0}update(t){void 0!==this._$EC&&(this._$EC.forEach(((t,i)=>this._$EO(i,this[i],t))),this._$EC=void 0),this._$Ek()}updated(t){}firstUpdated(t){}}d.finalized=!0,d.elementProperties=new Map,d.elementStyles=[],d.shadowRootOptions={mode:\"open\"},null==o||o({ReactiveElement:d}),(null!==(s=e.reactiveElementVersions)&&void 0!==s?s:e.reactiveElementVersions=[]).push(\"1.6.1\");export{d as ReactiveElement,n as defaultConverter,a as notEqual};\n//# sourceMappingURL=reactive-element.js.map\n","/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\nvar t;const i=window,s=i.trustedTypes,e=s?s.createPolicy(\"lit-html\",{createHTML:t=>t}):void 0,o=\"$lit$\",n=`lit$${(Math.random()+\"\").slice(9)}$`,l=\"?\"+n,h=`<${l}>`,r=document,u=()=>r.createComment(\"\"),d=t=>null===t||\"object\"!=typeof t&&\"function\"!=typeof t,c=Array.isArray,v=t=>c(t)||\"function\"==typeof(null==t?void 0:t[Symbol.iterator]),a=\"[ \\t\\n\\f\\r]\",f=/<(?:(!--|\\/[^a-zA-Z])|(\\/?[a-zA-Z][^>\\s]*)|(\\/?$))/g,_=/-->/g,m=/>/g,p=RegExp(`>|${a}(?:([^\\\\s\"'>=/]+)(${a}*=${a}*(?:[^ \\t\\n\\f\\r\"'\\`<>=]|(\"|')|))|$)`,\"g\"),g=/'/g,$=/\"/g,y=/^(?:script|style|textarea|title)$/i,w=t=>(i,...s)=>({_$litType$:t,strings:i,values:s}),x=w(1),b=w(2),T=Symbol.for(\"lit-noChange\"),A=Symbol.for(\"lit-nothing\"),E=new WeakMap,C=r.createTreeWalker(r,129,null,!1);function P(t,i){if(!Array.isArray(t)||!t.hasOwnProperty(\"raw\"))throw Error(\"invalid template strings array\");return void 0!==e?e.createHTML(i):i}const V=(t,i)=>{const s=t.length-1,e=[];let l,r=2===i?\"<svg>\":\"\",u=f;for(let i=0;i<s;i++){const s=t[i];let d,c,v=-1,a=0;for(;a<s.length&&(u.lastIndex=a,c=u.exec(s),null!==c);)a=u.lastIndex,u===f?\"!--\"===c[1]?u=_:void 0!==c[1]?u=m:void 0!==c[2]?(y.test(c[2])&&(l=RegExp(\"</\"+c[2],\"g\")),u=p):void 0!==c[3]&&(u=p):u===p?\">\"===c[0]?(u=null!=l?l:f,v=-1):void 0===c[1]?v=-2:(v=u.lastIndex-c[2].length,d=c[1],u=void 0===c[3]?p:'\"'===c[3]?$:g):u===$||u===g?u=p:u===_||u===m?u=f:(u=p,l=void 0);const w=u===p&&t[i+1].startsWith(\"/>\")?\" \":\"\";r+=u===f?s+h:v>=0?(e.push(d),s.slice(0,v)+o+s.slice(v)+n+w):s+n+(-2===v?(e.push(void 0),i):w)}return[P(t,r+(t[s]||\"<?>\")+(2===i?\"</svg>\":\"\")),e]};class N{constructor({strings:t,_$litType$:i},e){let h;this.parts=[];let r=0,d=0;const c=t.length-1,v=this.parts,[a,f]=V(t,i);if(this.el=N.createElement(a,e),C.currentNode=this.el.content,2===i){const t=this.el.content,i=t.firstChild;i.remove(),t.append(...i.childNodes)}for(;null!==(h=C.nextNode())&&v.length<c;){if(1===h.nodeType){if(h.hasAttributes()){const t=[];for(const i of h.getAttributeNames())if(i.endsWith(o)||i.startsWith(n)){const s=f[d++];if(t.push(i),void 0!==s){const t=h.getAttribute(s.toLowerCase()+o).split(n),i=/([.?@])?(.*)/.exec(s);v.push({type:1,index:r,name:i[2],strings:t,ctor:\".\"===i[1]?H:\"?\"===i[1]?L:\"@\"===i[1]?z:k})}else v.push({type:6,index:r})}for(const i of t)h.removeAttribute(i)}if(y.test(h.tagName)){const t=h.textContent.split(n),i=t.length-1;if(i>0){h.textContent=s?s.emptyScript:\"\";for(let s=0;s<i;s++)h.append(t[s],u()),C.nextNode(),v.push({type:2,index:++r});h.append(t[i],u())}}}else if(8===h.nodeType)if(h.data===l)v.push({type:2,index:r});else{let t=-1;for(;-1!==(t=h.data.indexOf(n,t+1));)v.push({type:7,index:r}),t+=n.length-1}r++}}static createElement(t,i){const s=r.createElement(\"template\");return s.innerHTML=t,s}}function S(t,i,s=t,e){var o,n,l,h;if(i===T)return i;let r=void 0!==e?null===(o=s._$Co)||void 0===o?void 0:o[e]:s._$Cl;const u=d(i)?void 0:i._$litDirective$;return(null==r?void 0:r.constructor)!==u&&(null===(n=null==r?void 0:r._$AO)||void 0===n||n.call(r,!1),void 0===u?r=void 0:(r=new u(t),r._$AT(t,s,e)),void 0!==e?(null!==(l=(h=s)._$Co)&&void 0!==l?l:h._$Co=[])[e]=r:s._$Cl=r),void 0!==r&&(i=S(t,r._$AS(t,i.values),r,e)),i}class M{constructor(t,i){this._$AV=[],this._$AN=void 0,this._$AD=t,this._$AM=i}get parentNode(){return this._$AM.parentNode}get _$AU(){return this._$AM._$AU}u(t){var i;const{el:{content:s},parts:e}=this._$AD,o=(null!==(i=null==t?void 0:t.creationScope)&&void 0!==i?i:r).importNode(s,!0);C.currentNode=o;let n=C.nextNode(),l=0,h=0,u=e[0];for(;void 0!==u;){if(l===u.index){let i;2===u.type?i=new R(n,n.nextSibling,this,t):1===u.type?i=new u.ctor(n,u.name,u.strings,this,t):6===u.type&&(i=new Z(n,this,t)),this._$AV.push(i),u=e[++h]}l!==(null==u?void 0:u.index)&&(n=C.nextNode(),l++)}return C.currentNode=r,o}v(t){let i=0;for(const s of this._$AV)void 0!==s&&(void 0!==s.strings?(s._$AI(t,s,i),i+=s.strings.length-2):s._$AI(t[i])),i++}}class R{constructor(t,i,s,e){var o;this.type=2,this._$AH=A,this._$AN=void 0,this._$AA=t,this._$AB=i,this._$AM=s,this.options=e,this._$Cp=null===(o=null==e?void 0:e.isConnected)||void 0===o||o}get _$AU(){var t,i;return null!==(i=null===(t=this._$AM)||void 0===t?void 0:t._$AU)&&void 0!==i?i:this._$Cp}get parentNode(){let t=this._$AA.parentNode;const i=this._$AM;return void 0!==i&&11===(null==t?void 0:t.nodeType)&&(t=i.parentNode),t}get startNode(){return this._$AA}get endNode(){return this._$AB}_$AI(t,i=this){t=S(this,t,i),d(t)?t===A||null==t||\"\"===t?(this._$AH!==A&&this._$AR(),this._$AH=A):t!==this._$AH&&t!==T&&this._(t):void 0!==t._$litType$?this.g(t):void 0!==t.nodeType?this.$(t):v(t)?this.T(t):this._(t)}k(t){return this._$AA.parentNode.insertBefore(t,this._$AB)}$(t){this._$AH!==t&&(this._$AR(),this._$AH=this.k(t))}_(t){this._$AH!==A&&d(this._$AH)?this._$AA.nextSibling.data=t:this.$(r.createTextNode(t)),this._$AH=t}g(t){var i;const{values:s,_$litType$:e}=t,o=\"number\"==typeof e?this._$AC(t):(void 0===e.el&&(e.el=N.createElement(P(e.h,e.h[0]),this.options)),e);if((null===(i=this._$AH)||void 0===i?void 0:i._$AD)===o)this._$AH.v(s);else{const t=new M(o,this),i=t.u(this.options);t.v(s),this.$(i),this._$AH=t}}_$AC(t){let i=E.get(t.strings);return void 0===i&&E.set(t.strings,i=new N(t)),i}T(t){c(this._$AH)||(this._$AH=[],this._$AR());const i=this._$AH;let s,e=0;for(const o of t)e===i.length?i.push(s=new R(this.k(u()),this.k(u()),this,this.options)):s=i[e],s._$AI(o),e++;e<i.length&&(this._$AR(s&&s._$AB.nextSibling,e),i.length=e)}_$AR(t=this._$AA.nextSibling,i){var s;for(null===(s=this._$AP)||void 0===s||s.call(this,!1,!0,i);t&&t!==this._$AB;){const i=t.nextSibling;t.remove(),t=i}}setConnected(t){var i;void 0===this._$AM&&(this._$Cp=t,null===(i=this._$AP)||void 0===i||i.call(this,t))}}class k{constructor(t,i,s,e,o){this.type=1,this._$AH=A,this._$AN=void 0,this.element=t,this.name=i,this._$AM=e,this.options=o,s.length>2||\"\"!==s[0]||\"\"!==s[1]?(this._$AH=Array(s.length-1).fill(new String),this.strings=s):this._$AH=A}get tagName(){return this.element.tagName}get _$AU(){return this._$AM._$AU}_$AI(t,i=this,s,e){const o=this.strings;let n=!1;if(void 0===o)t=S(this,t,i,0),n=!d(t)||t!==this._$AH&&t!==T,n&&(this._$AH=t);else{const e=t;let l,h;for(t=o[0],l=0;l<o.length-1;l++)h=S(this,e[s+l],i,l),h===T&&(h=this._$AH[l]),n||(n=!d(h)||h!==this._$AH[l]),h===A?t=A:t!==A&&(t+=(null!=h?h:\"\")+o[l+1]),this._$AH[l]=h}n&&!e&&this.j(t)}j(t){t===A?this.element.removeAttribute(this.name):this.element.setAttribute(this.name,null!=t?t:\"\")}}class H extends k{constructor(){super(...arguments),this.type=3}j(t){this.element[this.name]=t===A?void 0:t}}const I=s?s.emptyScript:\"\";class L extends k{constructor(){super(...arguments),this.type=4}j(t){t&&t!==A?this.element.setAttribute(this.name,I):this.element.removeAttribute(this.name)}}class z extends k{constructor(t,i,s,e,o){super(t,i,s,e,o),this.type=5}_$AI(t,i=this){var s;if((t=null!==(s=S(this,t,i,0))&&void 0!==s?s:A)===T)return;const e=this._$AH,o=t===A&&e!==A||t.capture!==e.capture||t.once!==e.once||t.passive!==e.passive,n=t!==A&&(e===A||o);o&&this.element.removeEventListener(this.name,this,e),n&&this.element.addEventListener(this.name,this,t),this._$AH=t}handleEvent(t){var i,s;\"function\"==typeof this._$AH?this._$AH.call(null!==(s=null===(i=this.options)||void 0===i?void 0:i.host)&&void 0!==s?s:this.element,t):this._$AH.handleEvent(t)}}class Z{constructor(t,i,s){this.element=t,this.type=6,this._$AN=void 0,this._$AM=i,this.options=s}get _$AU(){return this._$AM._$AU}_$AI(t){S(this,t)}}const j={O:o,P:n,A:l,C:1,M:V,L:M,R:v,D:S,I:R,V:k,H:L,N:z,U:H,F:Z},B=i.litHtmlPolyfillSupport;null==B||B(N,R),(null!==(t=i.litHtmlVersions)&&void 0!==t?t:i.litHtmlVersions=[]).push(\"2.8.0\");const D=(t,i,s)=>{var e,o;const n=null!==(e=null==s?void 0:s.renderBefore)&&void 0!==e?e:i;let l=n._$litPart$;if(void 0===l){const t=null!==(o=null==s?void 0:s.renderBefore)&&void 0!==o?o:null;n._$litPart$=l=new R(i.insertBefore(u(),t),t,void 0,null!=s?s:{})}return l._$AI(t),l};export{j as _$LH,x as html,T as noChange,A as nothing,D as render,b as svg};\n//# sourceMappingURL=lit-html.js.map\n","/**\n * @license\n * Copyright 2019 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\nconst t=window.ShadowRoot&&(void 0===window.ShadyCSS||window.ShadyCSS.nativeShadow)&&\"adoptedStyleSheets\"in Document.prototype&&\"replace\"in CSSStyleSheet.prototype,e=Symbol(),n=new Map;class s{constructor(t,n){if(this._$cssResult$=!0,n!==e)throw Error(\"CSSResult is not constructable. Use `unsafeCSS` or `css` instead.\");this.cssText=t}get styleSheet(){let e=n.get(this.cssText);return t&&void 0===e&&(n.set(this.cssText,e=new CSSStyleSheet),e.replaceSync(this.cssText)),e}toString(){return this.cssText}}const o=t=>new s(\"string\"==typeof t?t:t+\"\",e),r=(t,...n)=>{const o=1===t.length?t[0]:n.reduce(((e,n,s)=>e+(t=>{if(!0===t._$cssResult$)return t.cssText;if(\"number\"==typeof t)return t;throw Error(\"Value passed to 'css' function must be a 'css' function result: \"+t+\". Use 'unsafeCSS' to pass non-literal values, but take care to ensure page security.\")})(n)+t[s+1]),t[0]);return new s(o,e)},i=(e,n)=>{t?e.adoptedStyleSheets=n.map((t=>t instanceof CSSStyleSheet?t:t.styleSheet)):n.forEach((t=>{const n=document.createElement(\"style\"),s=window.litNonce;void 0!==s&&n.setAttribute(\"nonce\",s),n.textContent=t.cssText,e.appendChild(n)}))},S=t?t=>t:t=>t instanceof CSSStyleSheet?(t=>{let e=\"\";for(const n of t.cssRules)e+=n.cssText;return o(e)})(t):t;export{s as CSSResult,i as adoptStyles,r as css,S as getCompatibleStyle,t as supportsAdoptingStyleSheets,o as unsafeCSS};\n//# sourceMappingURL=css-tag.js.map\n","import{getCompatibleStyle as t,adoptStyles as i}from\"./css-tag.js\";export{CSSResult,adoptStyles,css,getCompatibleStyle,supportsAdoptingStyleSheets,unsafeCSS}from\"./css-tag.js\";\n/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */var s;const e=window.trustedTypes,r=e?e.emptyScript:\"\",h=window.reactiveElementPolyfillSupport,o={toAttribute(t,i){switch(i){case Boolean:t=t?r:null;break;case Object:case Array:t=null==t?t:JSON.stringify(t)}return t},fromAttribute(t,i){let s=t;switch(i){case Boolean:s=null!==t;break;case Number:s=null===t?null:Number(t);break;case Object:case Array:try{s=JSON.parse(t)}catch(t){s=null}}return s}},n=(t,i)=>i!==t&&(i==i||t==t),l={attribute:!0,type:String,converter:o,reflect:!1,hasChanged:n};class a extends HTMLElement{constructor(){super(),this._$Et=new Map,this.isUpdatePending=!1,this.hasUpdated=!1,this._$Ei=null,this.o()}static addInitializer(t){var i;null!==(i=this.l)&&void 0!==i||(this.l=[]),this.l.push(t)}static get observedAttributes(){this.finalize();const t=[];return this.elementProperties.forEach(((i,s)=>{const e=this._$Eh(s,i);void 0!==e&&(this._$Eu.set(e,s),t.push(e))})),t}static createProperty(t,i=l){if(i.state&&(i.attribute=!1),this.finalize(),this.elementProperties.set(t,i),!i.noAccessor&&!this.prototype.hasOwnProperty(t)){const s=\"symbol\"==typeof t?Symbol():\"__\"+t,e=this.getPropertyDescriptor(t,s,i);void 0!==e&&Object.defineProperty(this.prototype,t,e)}}static getPropertyDescriptor(t,i,s){return{get(){return this[i]},set(e){const r=this[t];this[i]=e,this.requestUpdate(t,r,s)},configurable:!0,enumerable:!0}}static getPropertyOptions(t){return this.elementProperties.get(t)||l}static finalize(){if(this.hasOwnProperty(\"finalized\"))return!1;this.finalized=!0;const t=Object.getPrototypeOf(this);if(t.finalize(),this.elementProperties=new Map(t.elementProperties),this._$Eu=new Map,this.hasOwnProperty(\"properties\")){const t=this.properties,i=[...Object.getOwnPropertyNames(t),...Object.getOwnPropertySymbols(t)];for(const s of i)this.createProperty(s,t[s])}return this.elementStyles=this.finalizeStyles(this.styles),!0}static finalizeStyles(i){const s=[];if(Array.isArray(i)){const e=new Set(i.flat(1/0).reverse());for(const i of e)s.unshift(t(i))}else void 0!==i&&s.push(t(i));return s}static _$Eh(t,i){const s=i.attribute;return!1===s?void 0:\"string\"==typeof s?s:\"string\"==typeof t?t.toLowerCase():void 0}o(){var t;this._$Ep=new Promise((t=>this.enableUpdating=t)),this._$AL=new Map,this._$Em(),this.requestUpdate(),null===(t=this.constructor.l)||void 0===t||t.forEach((t=>t(this)))}addController(t){var i,s;(null!==(i=this._$Eg)&&void 0!==i?i:this._$Eg=[]).push(t),void 0!==this.renderRoot&&this.isConnected&&(null===(s=t.hostConnected)||void 0===s||s.call(t))}removeController(t){var i;null===(i=this._$Eg)||void 0===i||i.splice(this._$Eg.indexOf(t)>>>0,1)}_$Em(){this.constructor.elementProperties.forEach(((t,i)=>{this.hasOwnProperty(i)&&(this._$Et.set(i,this[i]),delete this[i])}))}createRenderRoot(){var t;const s=null!==(t=this.shadowRoot)&&void 0!==t?t:this.attachShadow(this.constructor.shadowRootOptions);return i(s,this.constructor.elementStyles),s}connectedCallback(){var t;void 0===this.renderRoot&&(this.renderRoot=this.createRenderRoot()),this.enableUpdating(!0),null===(t=this._$Eg)||void 0===t||t.forEach((t=>{var i;return null===(i=t.hostConnected)||void 0===i?void 0:i.call(t)}))}enableUpdating(t){}disconnectedCallback(){var t;null===(t=this._$Eg)||void 0===t||t.forEach((t=>{var i;return null===(i=t.hostDisconnected)||void 0===i?void 0:i.call(t)}))}attributeChangedCallback(t,i,s){this._$AK(t,s)}_$ES(t,i,s=l){var e,r;const h=this.constructor._$Eh(t,s);if(void 0!==h&&!0===s.reflect){const n=(null!==(r=null===(e=s.converter)||void 0===e?void 0:e.toAttribute)&&void 0!==r?r:o.toAttribute)(i,s.type);this._$Ei=t,null==n?this.removeAttribute(h):this.setAttribute(h,n),this._$Ei=null}}_$AK(t,i){var s,e,r;const h=this.constructor,n=h._$Eu.get(t);if(void 0!==n&&this._$Ei!==n){const t=h.getPropertyOptions(n),l=t.converter,a=null!==(r=null!==(e=null===(s=l)||void 0===s?void 0:s.fromAttribute)&&void 0!==e?e:\"function\"==typeof l?l:null)&&void 0!==r?r:o.fromAttribute;this._$Ei=n,this[n]=a(i,t.type),this._$Ei=null}}requestUpdate(t,i,s){let e=!0;void 0!==t&&(((s=s||this.constructor.getPropertyOptions(t)).hasChanged||n)(this[t],i)?(this._$AL.has(t)||this._$AL.set(t,i),!0===s.reflect&&this._$Ei!==t&&(void 0===this._$EC&&(this._$EC=new Map),this._$EC.set(t,s))):e=!1),!this.isUpdatePending&&e&&(this._$Ep=this._$E_())}async _$E_(){this.isUpdatePending=!0;try{await this._$Ep}catch(t){Promise.reject(t)}const t=this.scheduleUpdate();return null!=t&&await t,!this.isUpdatePending}scheduleUpdate(){return this.performUpdate()}performUpdate(){var t;if(!this.isUpdatePending)return;this.hasUpdated,this._$Et&&(this._$Et.forEach(((t,i)=>this[i]=t)),this._$Et=void 0);let i=!1;const s=this._$AL;try{i=this.shouldUpdate(s),i?(this.willUpdate(s),null===(t=this._$Eg)||void 0===t||t.forEach((t=>{var i;return null===(i=t.hostUpdate)||void 0===i?void 0:i.call(t)})),this.update(s)):this._$EU()}catch(t){throw i=!1,this._$EU(),t}i&&this._$AE(s)}willUpdate(t){}_$AE(t){var i;null===(i=this._$Eg)||void 0===i||i.forEach((t=>{var i;return null===(i=t.hostUpdated)||void 0===i?void 0:i.call(t)})),this.hasUpdated||(this.hasUpdated=!0,this.firstUpdated(t)),this.updated(t)}_$EU(){this._$AL=new Map,this.isUpdatePending=!1}get updateComplete(){return this.getUpdateComplete()}getUpdateComplete(){return this._$Ep}shouldUpdate(t){return!0}update(t){void 0!==this._$EC&&(this._$EC.forEach(((t,i)=>this._$ES(i,this[i],t))),this._$EC=void 0),this._$EU()}updated(t){}firstUpdated(t){}}a.finalized=!0,a.elementProperties=new Map,a.elementStyles=[],a.shadowRootOptions={mode:\"open\"},null==h||h({ReactiveElement:a}),(null!==(s=globalThis.reactiveElementVersions)&&void 0!==s?s:globalThis.reactiveElementVersions=[]).push(\"1.3.1\");export{a as ReactiveElement,o as defaultConverter,n as notEqual};\n//# sourceMappingURL=reactive-element.js.map\n","/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\nvar t;const i=window,s=i.trustedTypes,e=s?s.createPolicy(\"lit-html\",{createHTML:t=>t}):void 0,o=\"$lit$\",n=`lit$${(Math.random()+\"\").slice(9)}$`,l=\"?\"+n,h=`<${l}>`,r=document,d=()=>r.createComment(\"\"),u=t=>null===t||\"object\"!=typeof t&&\"function\"!=typeof t,c=Array.isArray,v=t=>c(t)||\"function\"==typeof(null==t?void 0:t[Symbol.iterator]),a=\"[ \\t\\n\\f\\r]\",f=/<(?:(!--|\\/[^a-zA-Z])|(\\/?[a-zA-Z][^>\\s]*)|(\\/?$))/g,_=/-->/g,m=/>/g,p=RegExp(`>|${a}(?:([^\\\\s\"'>=/]+)(${a}*=${a}*(?:[^ \\t\\n\\f\\r\"'\\`<>=]|(\"|')|))|$)`,\"g\"),g=/'/g,$=/\"/g,y=/^(?:script|style|textarea|title)$/i,w=t=>(i,...s)=>({_$litType$:t,strings:i,values:s}),x=w(1),b=w(2),T=Symbol.for(\"lit-noChange\"),A=Symbol.for(\"lit-nothing\"),E=new WeakMap,C=r.createTreeWalker(r,129,null,!1),P=(t,i)=>{const s=t.length-1,l=[];let r,d=2===i?\"<svg>\":\"\",u=f;for(let i=0;i<s;i++){const s=t[i];let e,c,v=-1,a=0;for(;a<s.length&&(u.lastIndex=a,c=u.exec(s),null!==c);)a=u.lastIndex,u===f?\"!--\"===c[1]?u=_:void 0!==c[1]?u=m:void 0!==c[2]?(y.test(c[2])&&(r=RegExp(\"</\"+c[2],\"g\")),u=p):void 0!==c[3]&&(u=p):u===p?\">\"===c[0]?(u=null!=r?r:f,v=-1):void 0===c[1]?v=-2:(v=u.lastIndex-c[2].length,e=c[1],u=void 0===c[3]?p:'\"'===c[3]?$:g):u===$||u===g?u=p:u===_||u===m?u=f:(u=p,r=void 0);const w=u===p&&t[i+1].startsWith(\"/>\")?\" \":\"\";d+=u===f?s+h:v>=0?(l.push(e),s.slice(0,v)+o+s.slice(v)+n+w):s+n+(-2===v?(l.push(void 0),i):w)}const c=d+(t[s]||\"<?>\")+(2===i?\"</svg>\":\"\");if(!Array.isArray(t)||!t.hasOwnProperty(\"raw\"))throw Error(\"invalid template strings array\");return[void 0!==e?e.createHTML(c):c,l]};class V{constructor({strings:t,_$litType$:i},e){let h;this.parts=[];let r=0,u=0;const c=t.length-1,v=this.parts,[a,f]=P(t,i);if(this.el=V.createElement(a,e),C.currentNode=this.el.content,2===i){const t=this.el.content,i=t.firstChild;i.remove(),t.append(...i.childNodes)}for(;null!==(h=C.nextNode())&&v.length<c;){if(1===h.nodeType){if(h.hasAttributes()){const t=[];for(const i of h.getAttributeNames())if(i.endsWith(o)||i.startsWith(n)){const s=f[u++];if(t.push(i),void 0!==s){const t=h.getAttribute(s.toLowerCase()+o).split(n),i=/([.?@])?(.*)/.exec(s);v.push({type:1,index:r,name:i[2],strings:t,ctor:\".\"===i[1]?k:\"?\"===i[1]?I:\"@\"===i[1]?L:R})}else v.push({type:6,index:r})}for(const i of t)h.removeAttribute(i)}if(y.test(h.tagName)){const t=h.textContent.split(n),i=t.length-1;if(i>0){h.textContent=s?s.emptyScript:\"\";for(let s=0;s<i;s++)h.append(t[s],d()),C.nextNode(),v.push({type:2,index:++r});h.append(t[i],d())}}}else if(8===h.nodeType)if(h.data===l)v.push({type:2,index:r});else{let t=-1;for(;-1!==(t=h.data.indexOf(n,t+1));)v.push({type:7,index:r}),t+=n.length-1}r++}}static createElement(t,i){const s=r.createElement(\"template\");return s.innerHTML=t,s}}function N(t,i,s=t,e){var o,n,l,h;if(i===T)return i;let r=void 0!==e?null===(o=s._$Co)||void 0===o?void 0:o[e]:s._$Cl;const d=u(i)?void 0:i._$litDirective$;return(null==r?void 0:r.constructor)!==d&&(null===(n=null==r?void 0:r._$AO)||void 0===n||n.call(r,!1),void 0===d?r=void 0:(r=new d(t),r._$AT(t,s,e)),void 0!==e?(null!==(l=(h=s)._$Co)&&void 0!==l?l:h._$Co=[])[e]=r:s._$Cl=r),void 0!==r&&(i=N(t,r._$AS(t,i.values),r,e)),i}class S{constructor(t,i){this.u=[],this._$AN=void 0,this._$AD=t,this._$AM=i}get parentNode(){return this._$AM.parentNode}get _$AU(){return this._$AM._$AU}v(t){var i;const{el:{content:s},parts:e}=this._$AD,o=(null!==(i=null==t?void 0:t.creationScope)&&void 0!==i?i:r).importNode(s,!0);C.currentNode=o;let n=C.nextNode(),l=0,h=0,d=e[0];for(;void 0!==d;){if(l===d.index){let i;2===d.type?i=new M(n,n.nextSibling,this,t):1===d.type?i=new d.ctor(n,d.name,d.strings,this,t):6===d.type&&(i=new z(n,this,t)),this.u.push(i),d=e[++h]}l!==(null==d?void 0:d.index)&&(n=C.nextNode(),l++)}return o}p(t){let i=0;for(const s of this.u)void 0!==s&&(void 0!==s.strings?(s._$AI(t,s,i),i+=s.strings.length-2):s._$AI(t[i])),i++}}class M{constructor(t,i,s,e){var o;this.type=2,this._$AH=A,this._$AN=void 0,this._$AA=t,this._$AB=i,this._$AM=s,this.options=e,this._$Cm=null===(o=null==e?void 0:e.isConnected)||void 0===o||o}get _$AU(){var t,i;return null!==(i=null===(t=this._$AM)||void 0===t?void 0:t._$AU)&&void 0!==i?i:this._$Cm}get parentNode(){let t=this._$AA.parentNode;const i=this._$AM;return void 0!==i&&11===(null==t?void 0:t.nodeType)&&(t=i.parentNode),t}get startNode(){return this._$AA}get endNode(){return this._$AB}_$AI(t,i=this){t=N(this,t,i),u(t)?t===A||null==t||\"\"===t?(this._$AH!==A&&this._$AR(),this._$AH=A):t!==this._$AH&&t!==T&&this.g(t):void 0!==t._$litType$?this.$(t):void 0!==t.nodeType?this.T(t):v(t)?this.k(t):this.g(t)}S(t){return this._$AA.parentNode.insertBefore(t,this._$AB)}T(t){this._$AH!==t&&(this._$AR(),this._$AH=this.S(t))}g(t){this._$AH!==A&&u(this._$AH)?this._$AA.nextSibling.data=t:this.T(r.createTextNode(t)),this._$AH=t}$(t){var i;const{values:s,_$litType$:e}=t,o=\"number\"==typeof e?this._$AC(t):(void 0===e.el&&(e.el=V.createElement(e.h,this.options)),e);if((null===(i=this._$AH)||void 0===i?void 0:i._$AD)===o)this._$AH.p(s);else{const t=new S(o,this),i=t.v(this.options);t.p(s),this.T(i),this._$AH=t}}_$AC(t){let i=E.get(t.strings);return void 0===i&&E.set(t.strings,i=new V(t)),i}k(t){c(this._$AH)||(this._$AH=[],this._$AR());const i=this._$AH;let s,e=0;for(const o of t)e===i.length?i.push(s=new M(this.S(d()),this.S(d()),this,this.options)):s=i[e],s._$AI(o),e++;e<i.length&&(this._$AR(s&&s._$AB.nextSibling,e),i.length=e)}_$AR(t=this._$AA.nextSibling,i){var s;for(null===(s=this._$AP)||void 0===s||s.call(this,!1,!0,i);t&&t!==this._$AB;){const i=t.nextSibling;t.remove(),t=i}}setConnected(t){var i;void 0===this._$AM&&(this._$Cm=t,null===(i=this._$AP)||void 0===i||i.call(this,t))}}class R{constructor(t,i,s,e,o){this.type=1,this._$AH=A,this._$AN=void 0,this.element=t,this.name=i,this._$AM=e,this.options=o,s.length>2||\"\"!==s[0]||\"\"!==s[1]?(this._$AH=Array(s.length-1).fill(new String),this.strings=s):this._$AH=A}get tagName(){return this.element.tagName}get _$AU(){return this._$AM._$AU}_$AI(t,i=this,s,e){const o=this.strings;let n=!1;if(void 0===o)t=N(this,t,i,0),n=!u(t)||t!==this._$AH&&t!==T,n&&(this._$AH=t);else{const e=t;let l,h;for(t=o[0],l=0;l<o.length-1;l++)h=N(this,e[s+l],i,l),h===T&&(h=this._$AH[l]),n||(n=!u(h)||h!==this._$AH[l]),h===A?t=A:t!==A&&(t+=(null!=h?h:\"\")+o[l+1]),this._$AH[l]=h}n&&!e&&this.j(t)}j(t){t===A?this.element.removeAttribute(this.name):this.element.setAttribute(this.name,null!=t?t:\"\")}}class k extends R{constructor(){super(...arguments),this.type=3}j(t){this.element[this.name]=t===A?void 0:t}}const H=s?s.emptyScript:\"\";class I extends R{constructor(){super(...arguments),this.type=4}j(t){t&&t!==A?this.element.setAttribute(this.name,H):this.element.removeAttribute(this.name)}}class L extends R{constructor(t,i,s,e,o){super(t,i,s,e,o),this.type=5}_$AI(t,i=this){var s;if((t=null!==(s=N(this,t,i,0))&&void 0!==s?s:A)===T)return;const e=this._$AH,o=t===A&&e!==A||t.capture!==e.capture||t.once!==e.once||t.passive!==e.passive,n=t!==A&&(e===A||o);o&&this.element.removeEventListener(this.name,this,e),n&&this.element.addEventListener(this.name,this,t),this._$AH=t}handleEvent(t){var i,s;\"function\"==typeof this._$AH?this._$AH.call(null!==(s=null===(i=this.options)||void 0===i?void 0:i.host)&&void 0!==s?s:this.element,t):this._$AH.handleEvent(t)}}class z{constructor(t,i,s){this.element=t,this.type=6,this._$AN=void 0,this._$AM=i,this.options=s}get _$AU(){return this._$AM._$AU}_$AI(t){N(this,t)}}const Z={P:o,A:n,M:l,C:1,L:P,D:S,R:v,V:N,I:M,H:R,N:I,U:L,F:k,B:z},j=i.litHtmlPolyfillSupport;null==j||j(V,M),(null!==(t=i.litHtmlVersions)&&void 0!==t?t:i.litHtmlVersions=[]).push(\"2.7.0\");const B=(t,i,s)=>{var e,o;const n=null!==(e=null==s?void 0:s.renderBefore)&&void 0!==e?e:i;let l=n._$litPart$;if(void 0===l){const t=null!==(o=null==s?void 0:s.renderBefore)&&void 0!==o?o:null;n._$litPart$=l=new M(i.insertBefore(d(),t),t,void 0,null!=s?s:{})}return l._$AI(t),l};export{Z as _$LH,x as html,T as noChange,A as nothing,B as render,b as svg};\n//# sourceMappingURL=lit-html.js.map\n","import{ReactiveElement as t}from\"@lit/reactive-element\";export*from\"@lit/reactive-element\";import{render as e,noChange as i}from\"lit-html\";export*from\"lit-html\";\n/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */var l,o;const r=t;class s extends t{constructor(){super(...arguments),this.renderOptions={host:this},this._$Do=void 0}createRenderRoot(){var t,e;const i=super.createRenderRoot();return null!==(t=(e=this.renderOptions).renderBefore)&&void 0!==t||(e.renderBefore=i.firstChild),i}update(t){const i=this.render();this.hasUpdated||(this.renderOptions.isConnected=this.isConnected),super.update(t),this._$Do=e(i,this.renderRoot,this.renderOptions)}connectedCallback(){var t;super.connectedCallback(),null===(t=this._$Do)||void 0===t||t.setConnected(!0)}disconnectedCallback(){var t;super.disconnectedCallback(),null===(t=this._$Do)||void 0===t||t.setConnected(!1)}render(){return i}}s.finalized=!0,s._$litElement$=!0,null===(l=globalThis.litElementHydrateSupport)||void 0===l||l.call(globalThis,{LitElement:s});const n=globalThis.litElementPolyfillSupport;null==n||n({LitElement:s});const h={_$AK:(t,e,i)=>{t._$AK(e,i)},_$AL:t=>t._$AL};(null!==(o=globalThis.litElementVersions)&&void 0!==o?o:globalThis.litElementVersions=[]).push(\"3.3.0\");export{s as LitElement,r as UpdatingElement,h as _$LE};\n//# sourceMappingURL=lit-element.js.map\n","var noop = {value: () => {}};\n\nfunction dispatch() {\n for (var i = 0, n = arguments.length, _ = {}, t; i < n; ++i) {\n if (!(t = arguments[i] + \"\") || (t in _) || /[\\s.]/.test(t)) throw new Error(\"illegal type: \" + t);\n _[t] = [];\n }\n return new Dispatch(_);\n}\n\nfunction Dispatch(_) {\n this._ = _;\n}\n\nfunction parseTypenames(typenames, types) {\n return typenames.trim().split(/^|\\s+/).map(function(t) {\n var name = \"\", i = t.indexOf(\".\");\n if (i >= 0) name = t.slice(i + 1), t = t.slice(0, i);\n if (t && !types.hasOwnProperty(t)) throw new Error(\"unknown type: \" + t);\n return {type: t, name: name};\n });\n}\n\nDispatch.prototype = dispatch.prototype = {\n constructor: Dispatch,\n on: function(typename, callback) {\n var _ = this._,\n T = parseTypenames(typename + \"\", _),\n t,\n i = -1,\n n = T.length;\n\n // If no callback was specified, return the callback of the given type and name.\n if (arguments.length < 2) {\n while (++i < n) if ((t = (typename = T[i]).type) && (t = get(_[t], typename.name))) return t;\n return;\n }\n\n // If a type was specified, set the callback for the given type and name.\n // Otherwise, if a null callback was specified, remove callbacks of the given name.\n if (callback != null && typeof callback !== \"function\") throw new Error(\"invalid callback: \" + callback);\n while (++i < n) {\n if (t = (typename = T[i]).type) _[t] = set(_[t], typename.name, callback);\n else if (callback == null) for (t in _) _[t] = set(_[t], typename.name, null);\n }\n\n return this;\n },\n copy: function() {\n var copy = {}, _ = this._;\n for (var t in _) copy[t] = _[t].slice();\n return new Dispatch(copy);\n },\n call: function(type, that) {\n if ((n = arguments.length - 2) > 0) for (var args = new Array(n), i = 0, n, t; i < n; ++i) args[i] = arguments[i + 2];\n if (!this._.hasOwnProperty(type)) throw new Error(\"unknown type: \" + type);\n for (t = this._[type], i = 0, n = t.length; i < n; ++i) t[i].value.apply(that, args);\n },\n apply: function(type, that, args) {\n if (!this._.hasOwnProperty(type)) throw new Error(\"unknown type: \" + type);\n for (var t = this._[type], i = 0, n = t.length; i < n; ++i) t[i].value.apply(that, args);\n }\n};\n\nfunction get(type, name) {\n for (var i = 0, n = type.length, c; i < n; ++i) {\n if ((c = type[i]).name === name) {\n return c.value;\n }\n }\n}\n\nfunction set(type, name, callback) {\n for (var i = 0, n = type.length; i < n; ++i) {\n if (type[i].name === name) {\n type[i] = noop, type = type.slice(0, i).concat(type.slice(i + 1));\n break;\n }\n }\n if (callback != null) type.push({name: name, value: callback});\n return type;\n}\n\nexport default dispatch;\n","export var xhtml = \"http://www.w3.org/1999/xhtml\";\n\nexport default {\n svg: \"http://www.w3.org/2000/svg\",\n xhtml: xhtml,\n xlink: \"http://www.w3.org/1999/xlink\",\n xml: \"http://www.w3.org/XML/1998/namespace\",\n xmlns: \"http://www.w3.org/2000/xmlns/\"\n};\n","import namespaces from \"./namespaces.js\";\n\nexport default function(name) {\n var prefix = name += \"\", i = prefix.indexOf(\":\");\n if (i >= 0 && (prefix = name.slice(0, i)) !== \"xmlns\") name = name.slice(i + 1);\n return namespaces.hasOwnProperty(prefix) ? {space: namespaces[prefix], local: name} : name; // eslint-disable-line no-prototype-builtins\n}\n","import namespace from \"./namespace.js\";\nimport {xhtml} from \"./namespaces.js\";\n\nfunction creatorInherit(name) {\n return function() {\n var document = this.ownerDocument,\n uri = this.namespaceURI;\n return uri === xhtml && document.documentElement.namespaceURI === xhtml\n ? document.createElement(name)\n : document.createElementNS(uri, name);\n };\n}\n\nfunction creatorFixed(fullname) {\n return function() {\n return this.ownerDocument.createElementNS(fullname.space, fullname.local);\n };\n}\n\nexport default function(name) {\n var fullname = namespace(name);\n return (fullname.local\n ? creatorFixed\n : creatorInherit)(fullname);\n}\n","function none() {}\n\nexport default function(selector) {\n return selector == null ? none : function() {\n return this.querySelector(selector);\n };\n}\n","function empty() {\n return [];\n}\n\nexport default function(selector) {\n return selector == null ? empty : function() {\n return this.querySelectorAll(selector);\n };\n}\n","import {Selection} from \"./index.js\";\nimport array from \"../array.js\";\nimport selectorAll from \"../selectorAll.js\";\n\nfunction arrayAll(select) {\n return function() {\n return array(select.apply(this, arguments));\n };\n}\n\nexport default function(select) {\n if (typeof select === \"function\") select = arrayAll(select);\n else select = selectorAll(select);\n\n for (var groups = this._groups, m = groups.length, subgroups = [], parents = [], j = 0; j < m; ++j) {\n for (var group = groups[j], n = group.length, node, i = 0; i < n; ++i) {\n if (node = group[i]) {\n subgroups.push(select.call(node, node.__data__, i, group));\n parents.push(node);\n }\n }\n }\n\n return new Selection(subgroups, parents);\n}\n","// Given something array like (or null), returns something that is strictly an\n// array. This is used to ensure that array-like objects passed to d3.selectAll\n// or selection.selectAll are converted into proper arrays when creating a\n// selection; we don’t ever want to create a selection backed by a live\n// HTMLCollection or NodeList. However, note that selection.selectAll will use a\n// static NodeList as a group, since it safely derived from querySelectorAll.\nexport default function array(x) {\n return x == null ? [] : Array.isArray(x) ? x : Array.from(x);\n}\n","export default function(selector) {\n return function() {\n return this.matches(selector);\n };\n}\n\nexport function childMatcher(selector) {\n return function(node) {\n return node.matches(selector);\n };\n}\n\n","import {childMatcher} from \"../matcher.js\";\n\nvar find = Array.prototype.find;\n\nfunction childFind(match) {\n return function() {\n return find.call(this.children, match);\n };\n}\n\nfunction childFirst() {\n return this.firstElementChild;\n}\n\nexport default function(match) {\n return this.select(match == null ? childFirst\n : childFind(typeof match === \"function\" ? match : childMatcher(match)));\n}\n","import {childMatcher} from \"../matcher.js\";\n\nvar filter = Array.prototype.filter;\n\nfunction children() {\n return Array.from(this.children);\n}\n\nfunction childrenFilter(match) {\n return function() {\n return filter.call(this.children, match);\n };\n}\n\nexport default function(match) {\n return this.selectAll(match == null ? children\n : childrenFilter(typeof match === \"function\" ? match : childMatcher(match)));\n}\n","export default function(update) {\n return new Array(update.length);\n}\n","import sparse from \"./sparse.js\";\nimport {Selection} from \"./index.js\";\n\nexport default function() {\n return new Selection(this._enter || this._groups.map(sparse), this._parents);\n}\n\nexport function EnterNode(parent, datum) {\n this.ownerDocument = parent.ownerDocument;\n this.namespaceURI = parent.namespaceURI;\n this._next = null;\n this._parent = parent;\n this.__data__ = datum;\n}\n\nEnterNode.prototype = {\n constructor: EnterNode,\n appendChild: function(child) { return this._parent.insertBefore(child, this._next); },\n insertBefore: function(child, next) { return this._parent.insertBefore(child, next); },\n querySelector: function(selector) { return this._parent.querySelector(selector); },\n querySelectorAll: function(selector) { return this._parent.querySelectorAll(selector); }\n};\n","import {Selection} from \"./index.js\";\nimport {EnterNode} from \"./enter.js\";\nimport constant from \"../constant.js\";\n\nfunction bindIndex(parent, group, enter, update, exit, data) {\n var i = 0,\n node,\n groupLength = group.length,\n dataLength = data.length;\n\n // Put any non-null nodes that fit into update.\n // Put any null nodes into enter.\n // Put any remaining data into enter.\n for (; i < dataLength; ++i) {\n if (node = group[i]) {\n node.__data__ = data[i];\n update[i] = node;\n } else {\n enter[i] = new EnterNode(parent, data[i]);\n }\n }\n\n // Put any non-null nodes that don’t fit into exit.\n for (; i < groupLength; ++i) {\n if (node = group[i]) {\n exit[i] = node;\n }\n }\n}\n\nfunction bindKey(parent, group, enter, update, exit, data, key) {\n var i,\n node,\n nodeByKeyValue = new Map,\n groupLength = group.length,\n dataLength = data.length,\n keyValues = new Array(groupLength),\n keyValue;\n\n // Compute the key for each node.\n // If multiple nodes have the same key, the duplicates are added to exit.\n for (i = 0; i < groupLength; ++i) {\n if (node = group[i]) {\n keyValues[i] = keyValue = key.call(node, node.__data__, i, group) + \"\";\n if (nodeByKeyValue.has(keyValue)) {\n exit[i] = node;\n } else {\n nodeByKeyValue.set(keyValue, node);\n }\n }\n }\n\n // Compute the key for each datum.\n // If there a node associated with this key, join and add it to update.\n // If there is not (or the key is a duplicate), add it to enter.\n for (i = 0; i < dataLength; ++i) {\n keyValue = key.call(parent, data[i], i, data) + \"\";\n if (node = nodeByKeyValue.get(keyValue)) {\n update[i] = node;\n node.__data__ = data[i];\n nodeByKeyValue.delete(keyValue);\n } else {\n enter[i] = new EnterNode(parent, data[i]);\n }\n }\n\n // Add any remaining nodes that were not bound to data to exit.\n for (i = 0; i < groupLength; ++i) {\n if ((node = group[i]) && (nodeByKeyValue.get(keyValues[i]) === node)) {\n exit[i] = node;\n }\n }\n}\n\nfunction datum(node) {\n return node.__data__;\n}\n\nexport default function(value, key) {\n if (!arguments.length) return Array.from(this, datum);\n\n var bind = key ? bindKey : bindIndex,\n parents = this._parents,\n groups = this._groups;\n\n if (typeof value !== \"function\") value = constant(value);\n\n for (var m = groups.length, update = new Array(m), enter = new Array(m), exit = new Array(m), j = 0; j < m; ++j) {\n var parent = parents[j],\n group = groups[j],\n groupLength = group.length,\n data = arraylike(value.call(parent, parent && parent.__data__, j, parents)),\n dataLength = data.length,\n enterGroup = enter[j] = new Array(dataLength),\n updateGroup = update[j] = new Array(dataLength),\n exitGroup = exit[j] = new Array(groupLength);\n\n bind(parent, group, enterGroup, updateGroup, exitGroup, data, key);\n\n // Now connect the enter nodes to their following update node, such that\n // appendChild can insert the materialized enter node before this node,\n // rather than at the end of the parent node.\n for (var i0 = 0, i1 = 0, previous, next; i0 < dataLength; ++i0) {\n if (previous = enterGroup[i0]) {\n if (i0 >= i1) i1 = i0 + 1;\n while (!(next = updateGroup[i1]) && ++i1 < dataLength);\n previous._next = next || null;\n }\n }\n }\n\n update = new Selection(update, parents);\n update._enter = enter;\n update._exit = exit;\n return update;\n}\n\n// Given some data, this returns an array-like view of it: an object that\n// exposes a length property and allows numeric indexing. Note that unlike\n// selectAll, this isn’t worried about “live” collections because the resulting\n// array will only be used briefly while data is being bound. (It is possible to\n// cause the data to change while iterating by using a key function, but please\n// don’t; we’d rather avoid a gratuitous copy.)\nfunction arraylike(data) {\n return typeof data === \"object\" && \"length\" in data\n ? data // Array, TypedArray, NodeList, array-like\n : Array.from(data); // Map, Set, iterable, string, or anything else\n}\n","import {Selection} from \"./index.js\";\n\nexport default function(compare) {\n if (!compare) compare = ascending;\n\n function compareNode(a, b) {\n return a && b ? compare(a.__data__, b.__data__) : !a - !b;\n }\n\n for (var groups = this._groups, m = groups.length, sortgroups = new Array(m), j = 0; j < m; ++j) {\n for (var group = groups[j], n = group.length, sortgroup = sortgroups[j] = new Array(n), node, i = 0; i < n; ++i) {\n if (node = group[i]) {\n sortgroup[i] = node;\n }\n }\n sortgroup.sort(compareNode);\n }\n\n return new Selection(sortgroups, this._parents).order();\n}\n\nfunction ascending(a, b) {\n return a < b ? -1 : a > b ? 1 : a >= b ? 0 : NaN;\n}\n","import namespace from \"../namespace.js\";\n\nfunction attrRemove(name) {\n return function() {\n this.removeAttribute(name);\n };\n}\n\nfunction attrRemoveNS(fullname) {\n return function() {\n this.removeAttributeNS(fullname.space, fullname.local);\n };\n}\n\nfunction attrConstant(name, value) {\n return function() {\n this.setAttribute(name, value);\n };\n}\n\nfunction attrConstantNS(fullname, value) {\n return function() {\n this.setAttributeNS(fullname.space, fullname.local, value);\n };\n}\n\nfunction attrFunction(name, value) {\n return function() {\n var v = value.apply(this, arguments);\n if (v == null) this.removeAttribute(name);\n else this.setAttribute(name, v);\n };\n}\n\nfunction attrFunctionNS(fullname, value) {\n return function() {\n var v = value.apply(this, arguments);\n if (v == null) this.removeAttributeNS(fullname.space, fullname.local);\n else this.setAttributeNS(fullname.space, fullname.local, v);\n };\n}\n\nexport default function(name, value) {\n var fullname = namespace(name);\n\n if (arguments.length < 2) {\n var node = this.node();\n return fullname.local\n ? node.getAttributeNS(fullname.space, fullname.local)\n : node.getAttribute(fullname);\n }\n\n return this.each((value == null\n ? (fullname.local ? attrRemoveNS : attrRemove) : (typeof value === \"function\"\n ? (fullname.local ? attrFunctionNS : attrFunction)\n : (fullname.local ? attrConstantNS : attrConstant)))(fullname, value));\n}\n","export default function(node) {\n return (node.ownerDocument && node.ownerDocument.defaultView) // node is a Node\n || (node.document && node) // node is a Window\n || node.defaultView; // node is a Document\n}\n","import defaultView from \"../window.js\";\n\nfunction styleRemove(name) {\n return function() {\n this.style.removeProperty(name);\n };\n}\n\nfunction styleConstant(name, value, priority) {\n return function() {\n this.style.setProperty(name, value, priority);\n };\n}\n\nfunction styleFunction(name, value, priority) {\n return function() {\n var v = value.apply(this, arguments);\n if (v == null) this.style.removeProperty(name);\n else this.style.setProperty(name, v, priority);\n };\n}\n\nexport default function(name, value, priority) {\n return arguments.length > 1\n ? this.each((value == null\n ? styleRemove : typeof value === \"function\"\n ? styleFunction\n : styleConstant)(name, value, priority == null ? \"\" : priority))\n : styleValue(this.node(), name);\n}\n\nexport function styleValue(node, name) {\n return node.style.getPropertyValue(name)\n || defaultView(node).getComputedStyle(node, null).getPropertyValue(name);\n}\n","function propertyRemove(name) {\n return function() {\n delete this[name];\n };\n}\n\nfunction propertyConstant(name, value) {\n return function() {\n this[name] = value;\n };\n}\n\nfunction propertyFunction(name, value) {\n return function() {\n var v = value.apply(this, arguments);\n if (v == null) delete this[name];\n else this[name] = v;\n };\n}\n\nexport default function(name, value) {\n return arguments.length > 1\n ? this.each((value == null\n ? propertyRemove : typeof value === \"function\"\n ? propertyFunction\n : propertyConstant)(name, value))\n : this.node()[name];\n}\n","function classArray(string) {\n return string.trim().split(/^|\\s+/);\n}\n\nfunction classList(node) {\n return node.classList || new ClassList(node);\n}\n\nfunction ClassList(node) {\n this._node = node;\n this._names = classArray(node.getAttribute(\"class\") || \"\");\n}\n\nClassList.prototype = {\n add: function(name) {\n var i = this._names.indexOf(name);\n if (i < 0) {\n this._names.push(name);\n this._node.setAttribute(\"class\", this._names.join(\" \"));\n }\n },\n remove: function(name) {\n var i = this._names.indexOf(name);\n if (i >= 0) {\n this._names.splice(i, 1);\n this._node.setAttribute(\"class\", this._names.join(\" \"));\n }\n },\n contains: function(name) {\n return this._names.indexOf(name) >= 0;\n }\n};\n\nfunction classedAdd(node, names) {\n var list = classList(node), i = -1, n = names.length;\n while (++i < n) list.add(names[i]);\n}\n\nfunction classedRemove(node, names) {\n var list = classList(node), i = -1, n = names.length;\n while (++i < n) list.remove(names[i]);\n}\n\nfunction classedTrue(names) {\n return function() {\n classedAdd(this, names);\n };\n}\n\nfunction classedFalse(names) {\n return function() {\n classedRemove(this, names);\n };\n}\n\nfunction classedFunction(names, value) {\n return function() {\n (value.apply(this, arguments) ? classedAdd : classedRemove)(this, names);\n };\n}\n\nexport default function(name, value) {\n var names = classArray(name + \"\");\n\n if (arguments.length < 2) {\n var list = classList(this.node()), i = -1, n = names.length;\n while (++i < n) if (!list.contains(names[i])) return false;\n return true;\n }\n\n return this.each((typeof value === \"function\"\n ? classedFunction : value\n ? classedTrue\n : classedFalse)(names, value));\n}\n","function textRemove() {\n this.textContent = \"\";\n}\n\nfunction textConstant(value) {\n return function() {\n this.textContent = value;\n };\n}\n\nfunction textFunction(value) {\n return function() {\n var v = value.apply(this, arguments);\n this.textContent = v == null ? \"\" : v;\n };\n}\n\nexport default function(value) {\n return arguments.length\n ? this.each(value == null\n ? textRemove : (typeof value === \"function\"\n ? textFunction\n : textConstant)(value))\n : this.node().textContent;\n}\n","function htmlRemove() {\n this.innerHTML = \"\";\n}\n\nfunction htmlConstant(value) {\n return function() {\n this.innerHTML = value;\n };\n}\n\nfunction htmlFunction(value) {\n return function() {\n var v = value.apply(this, arguments);\n this.innerHTML = v == null ? \"\" : v;\n };\n}\n\nexport default function(value) {\n return arguments.length\n ? this.each(value == null\n ? htmlRemove : (typeof value === \"function\"\n ? htmlFunction\n : htmlConstant)(value))\n : this.node().innerHTML;\n}\n","function raise() {\n if (this.nextSibling) this.parentNode.appendChild(this);\n}\n\nexport default function() {\n return this.each(raise);\n}\n","function lower() {\n if (this.previousSibling) this.parentNode.insertBefore(this, this.parentNode.firstChild);\n}\n\nexport default function() {\n return this.each(lower);\n}\n","import creator from \"../creator.js\";\nimport selector from \"../selector.js\";\n\nfunction constantNull() {\n return null;\n}\n\nexport default function(name, before) {\n var create = typeof name === \"function\" ? name : creator(name),\n select = before == null ? constantNull : typeof before === \"function\" ? before : selector(before);\n return this.select(function() {\n return this.insertBefore(create.apply(this, arguments), select.apply(this, arguments) || null);\n });\n}\n","function remove() {\n var parent = this.parentNode;\n if (parent) parent.removeChild(this);\n}\n\nexport default function() {\n return this.each(remove);\n}\n","function selection_cloneShallow() {\n var clone = this.cloneNode(false), parent = this.parentNode;\n return parent ? parent.insertBefore(clone, this.nextSibling) : clone;\n}\n\nfunction selection_cloneDeep() {\n var clone = this.cloneNode(true), parent = this.parentNode;\n return parent ? parent.insertBefore(clone, this.nextSibling) : clone;\n}\n\nexport default function(deep) {\n return this.select(deep ? selection_cloneDeep : selection_cloneShallow);\n}\n","function contextListener(listener) {\n return function(event) {\n listener.call(this, event, this.__data__);\n };\n}\n\nfunction parseTypenames(typenames) {\n return typenames.trim().split(/^|\\s+/).map(function(t) {\n var name = \"\", i = t.indexOf(\".\");\n if (i >= 0) name = t.slice(i + 1), t = t.slice(0, i);\n return {type: t, name: name};\n });\n}\n\nfunction onRemove(typename) {\n return function() {\n var on = this.__on;\n if (!on) return;\n for (var j = 0, i = -1, m = on.length, o; j < m; ++j) {\n if (o = on[j], (!typename.type || o.type === typename.type) && o.name === typename.name) {\n this.removeEventListener(o.type, o.listener, o.options);\n } else {\n on[++i] = o;\n }\n }\n if (++i) on.length = i;\n else delete this.__on;\n };\n}\n\nfunction onAdd(typename, value, options) {\n return function() {\n var on = this.__on, o, listener = contextListener(value);\n if (on) for (var j = 0, m = on.length; j < m; ++j) {\n if ((o = on[j]).type === typename.type && o.name === typename.name) {\n this.removeEventListener(o.type, o.listener, o.options);\n this.addEventListener(o.type, o.listener = listener, o.options = options);\n o.value = value;\n return;\n }\n }\n this.addEventListener(typename.type, listener, options);\n o = {type: typename.type, name: typename.name, value: value, listener: listener, options: options};\n if (!on) this.__on = [o];\n else on.push(o);\n };\n}\n\nexport default function(typename, value, options) {\n var typenames = parseTypenames(typename + \"\"), i, n = typenames.length, t;\n\n if (arguments.length < 2) {\n var on = this.node().__on;\n if (on) for (var j = 0, m = on.length, o; j < m; ++j) {\n for (i = 0, o = on[j]; i < n; ++i) {\n if ((t = typenames[i]).type === o.type && t.name === o.name) {\n return o.value;\n }\n }\n }\n return;\n }\n\n on = value ? onAdd : onRemove;\n for (i = 0; i < n; ++i) this.each(on(typenames[i], value, options));\n return this;\n}\n","import defaultView from \"../window.js\";\n\nfunction dispatchEvent(node, type, params) {\n var window = defaultView(node),\n event = window.CustomEvent;\n\n if (typeof event === \"function\") {\n event = new event(type, params);\n } else {\n event = window.document.createEvent(\"Event\");\n if (params) event.initEvent(type, params.bubbles, params.cancelable), event.detail = params.detail;\n else event.initEvent(type, false, false);\n }\n\n node.dispatchEvent(event);\n}\n\nfunction dispatchConstant(type, params) {\n return function() {\n return dispatchEvent(this, type, params);\n };\n}\n\nfunction dispatchFunction(type, params) {\n return function() {\n return dispatchEvent(this, type, params.apply(this, arguments));\n };\n}\n\nexport default function(type, params) {\n return this.each((typeof params === \"function\"\n ? dispatchFunction\n : dispatchConstant)(type, params));\n}\n","import selection_select from \"./select.js\";\nimport selection_selectAll from \"./selectAll.js\";\nimport selection_selectChild from \"./selectChild.js\";\nimport selection_selectChildren from \"./selectChildren.js\";\nimport selection_filter from \"./filter.js\";\nimport selection_data from \"./data.js\";\nimport selection_enter from \"./enter.js\";\nimport selection_exit from \"./exit.js\";\nimport selection_join from \"./join.js\";\nimport selection_merge from \"./merge.js\";\nimport selection_order from \"./order.js\";\nimport selection_sort from \"./sort.js\";\nimport selection_call from \"./call.js\";\nimport selection_nodes from \"./nodes.js\";\nimport selection_node from \"./node.js\";\nimport selection_size from \"./size.js\";\nimport selection_empty from \"./empty.js\";\nimport selection_each from \"./each.js\";\nimport selection_attr from \"./attr.js\";\nimport selection_style from \"./style.js\";\nimport selection_property from \"./property.js\";\nimport selection_classed from \"./classed.js\";\nimport selection_text from \"./text.js\";\nimport selection_html from \"./html.js\";\nimport selection_raise from \"./raise.js\";\nimport selection_lower from \"./lower.js\";\nimport selection_append from \"./append.js\";\nimport selection_insert from \"./insert.js\";\nimport selection_remove from \"./remove.js\";\nimport selection_clone from \"./clone.js\";\nimport selection_datum from \"./datum.js\";\nimport selection_on from \"./on.js\";\nimport selection_dispatch from \"./dispatch.js\";\nimport selection_iterator from \"./iterator.js\";\n\nexport var root = [null];\n\nexport function Selection(groups, parents) {\n this._groups = groups;\n this._parents = parents;\n}\n\nfunction selection() {\n return new Selection([[document.documentElement]], root);\n}\n\nfunction selection_selection() {\n return this;\n}\n\nSelection.prototype = selection.prototype = {\n constructor: Selection,\n select: selection_select,\n selectAll: selection_selectAll,\n selectChild: selection_selectChild,\n selectChildren: selection_selectChildren,\n filter: selection_filter,\n data: selection_data,\n enter: selection_enter,\n exit: selection_exit,\n join: selection_join,\n merge: selection_merge,\n selection: selection_selection,\n order: selection_order,\n sort: selection_sort,\n call: selection_call,\n nodes: selection_nodes,\n node: selection_node,\n size: selection_size,\n empty: selection_empty,\n each: selection_each,\n attr: selection_attr,\n style: selection_style,\n property: selection_property,\n classed: selection_classed,\n text: selection_text,\n html: selection_html,\n raise: selection_raise,\n lower: selection_lower,\n append: selection_append,\n insert: selection_insert,\n remove: selection_remove,\n clone: selection_clone,\n datum: selection_datum,\n on: selection_on,\n dispatch: selection_dispatch,\n [Symbol.iterator]: selection_iterator\n};\n\nexport default selection;\n","import {Selection, root} from \"./selection/index.js\";\n\nexport default function(selector) {\n return typeof selector === \"string\"\n ? new Selection([[document.querySelector(selector)]], [document.documentElement])\n : new Selection([[selector]], root);\n}\n","export default function(constructor, factory, prototype) {\n constructor.prototype = factory.prototype = prototype;\n prototype.constructor = constructor;\n}\n\nexport function extend(parent, definition) {\n var prototype = Object.create(parent.prototype);\n for (var key in definition) prototype[key] = definition[key];\n return prototype;\n}\n","import define, {extend} from \"./define.js\";\n\nexport function Color() {}\n\nexport var darker = 0.7;\nexport var brighter = 1 / darker;\n\nvar reI = \"\\\\s*([+-]?\\\\d+)\\\\s*\",\n reN = \"\\\\s*([+-]?\\\\d*\\\\.?\\\\d+(?:[eE][+-]?\\\\d+)?)\\\\s*\",\n reP = \"\\\\s*([+-]?\\\\d*\\\\.?\\\\d+(?:[eE][+-]?\\\\d+)?)%\\\\s*\",\n reHex = /^#([0-9a-f]{3,8})$/,\n reRgbInteger = new RegExp(\"^rgb\\\\(\" + [reI, reI, reI] + \"\\\\)$\"),\n reRgbPercent = new RegExp(\"^rgb\\\\(\" + [reP, reP, reP] + \"\\\\)$\"),\n reRgbaInteger = new RegExp(\"^rgba\\\\(\" + [reI, reI, reI, reN] + \"\\\\)$\"),\n reRgbaPercent = new RegExp(\"^rgba\\\\(\" + [reP, reP, reP, reN] + \"\\\\)$\"),\n reHslPercent = new RegExp(\"^hsl\\\\(\" + [reN, reP, reP] + \"\\\\)$\"),\n reHslaPercent = new RegExp(\"^hsla\\\\(\" + [reN, reP, reP, reN] + \"\\\\)$\");\n\nvar named = {\n aliceblue: 0xf0f8ff,\n antiquewhite: 0xfaebd7,\n aqua: 0x00ffff,\n aquamarine: 0x7fffd4,\n azure: 0xf0ffff,\n beige: 0xf5f5dc,\n bisque: 0xffe4c4,\n black: 0x000000,\n blanchedalmond: 0xffebcd,\n blue: 0x0000ff,\n blueviolet: 0x8a2be2,\n brown: 0xa52a2a,\n burlywood: 0xdeb887,\n cadetblue: 0x5f9ea0,\n chartreuse: 0x7fff00,\n chocolate: 0xd2691e,\n coral: 0xff7f50,\n cornflowerblue: 0x6495ed,\n cornsilk: 0xfff8dc,\n crimson: 0xdc143c,\n cyan: 0x00ffff,\n darkblue: 0x00008b,\n darkcyan: 0x008b8b,\n darkgoldenrod: 0xb8860b,\n darkgray: 0xa9a9a9,\n darkgreen: 0x006400,\n darkgrey: 0xa9a9a9,\n darkkhaki: 0xbdb76b,\n darkmagenta: 0x8b008b,\n darkolivegreen: 0x556b2f,\n darkorange: 0xff8c00,\n darkorchid: 0x9932cc,\n darkred: 0x8b0000,\n darksalmon: 0xe9967a,\n darkseagreen: 0x8fbc8f,\n darkslateblue: 0x483d8b,\n darkslategray: 0x2f4f4f,\n darkslategrey: 0x2f4f4f,\n darkturquoise: 0x00ced1,\n darkviolet: 0x9400d3,\n deeppink: 0xff1493,\n deepskyblue: 0x00bfff,\n dimgray: 0x696969,\n dimgrey: 0x696969,\n dodgerblue: 0x1e90ff,\n firebrick: 0xb22222,\n floralwhite: 0xfffaf0,\n forestgreen: 0x228b22,\n fuchsia: 0xff00ff,\n gainsboro: 0xdcdcdc,\n ghostwhite: 0xf8f8ff,\n gold: 0xffd700,\n goldenrod: 0xdaa520,\n gray: 0x808080,\n green: 0x008000,\n greenyellow: 0xadff2f,\n grey: 0x808080,\n honeydew: 0xf0fff0,\n hotpink: 0xff69b4,\n indianred: 0xcd5c5c,\n indigo: 0x4b0082,\n ivory: 0xfffff0,\n khaki: 0xf0e68c,\n lavender: 0xe6e6fa,\n lavenderblush: 0xfff0f5,\n lawngreen: 0x7cfc00,\n lemonchiffon: 0xfffacd,\n lightblue: 0xadd8e6,\n lightcoral: 0xf08080,\n lightcyan: 0xe0ffff,\n lightgoldenrodyellow: 0xfafad2,\n lightgray: 0xd3d3d3,\n lightgreen: 0x90ee90,\n lightgrey: 0xd3d3d3,\n lightpink: 0xffb6c1,\n lightsalmon: 0xffa07a,\n lightseagreen: 0x20b2aa,\n lightskyblue: 0x87cefa,\n lightslategray: 0x778899,\n lightslategrey: 0x778899,\n lightsteelblue: 0xb0c4de,\n lightyellow: 0xffffe0,\n lime: 0x00ff00,\n limegreen: 0x32cd32,\n linen: 0xfaf0e6,\n magenta: 0xff00ff,\n maroon: 0x800000,\n mediumaquamarine: 0x66cdaa,\n mediumblue: 0x0000cd,\n mediumorchid: 0xba55d3,\n mediumpurple: 0x9370db,\n mediumseagreen: 0x3cb371,\n mediumslateblue: 0x7b68ee,\n mediumspringgreen: 0x00fa9a,\n mediumturquoise: 0x48d1cc,\n mediumvioletred: 0xc71585,\n midnightblue: 0x191970,\n mintcream: 0xf5fffa,\n mistyrose: 0xffe4e1,\n moccasin: 0xffe4b5,\n navajowhite: 0xffdead,\n navy: 0x000080,\n oldlace: 0xfdf5e6,\n olive: 0x808000,\n olivedrab: 0x6b8e23,\n orange: 0xffa500,\n orangered: 0xff4500,\n orchid: 0xda70d6,\n palegoldenrod: 0xeee8aa,\n palegreen: 0x98fb98,\n paleturquoise: 0xafeeee,\n palevioletred: 0xdb7093,\n papayawhip: 0xffefd5,\n peachpuff: 0xffdab9,\n peru: 0xcd853f,\n pink: 0xffc0cb,\n plum: 0xdda0dd,\n powderblue: 0xb0e0e6,\n purple: 0x800080,\n rebeccapurple: 0x663399,\n red: 0xff0000,\n rosybrown: 0xbc8f8f,\n royalblue: 0x4169e1,\n saddlebrown: 0x8b4513,\n salmon: 0xfa8072,\n sandybrown: 0xf4a460,\n seagreen: 0x2e8b57,\n seashell: 0xfff5ee,\n sienna: 0xa0522d,\n silver: 0xc0c0c0,\n skyblue: 0x87ceeb,\n slateblue: 0x6a5acd,\n slategray: 0x708090,\n slategrey: 0x708090,\n snow: 0xfffafa,\n springgreen: 0x00ff7f,\n steelblue: 0x4682b4,\n tan: 0xd2b48c,\n teal: 0x008080,\n thistle: 0xd8bfd8,\n tomato: 0xff6347,\n turquoise: 0x40e0d0,\n violet: 0xee82ee,\n wheat: 0xf5deb3,\n white: 0xffffff,\n whitesmoke: 0xf5f5f5,\n yellow: 0xffff00,\n yellowgreen: 0x9acd32\n};\n\ndefine(Color, color, {\n copy: function(channels) {\n return Object.assign(new this.constructor, this, channels);\n },\n displayable: function() {\n return this.rgb().displayable();\n },\n hex: color_formatHex, // Deprecated! Use color.formatHex.\n formatHex: color_formatHex,\n formatHsl: color_formatHsl,\n formatRgb: color_formatRgb,\n toString: color_formatRgb\n});\n\nfunction color_formatHex() {\n return this.rgb().formatHex();\n}\n\nfunction color_formatHsl() {\n return hslConvert(this).formatHsl();\n}\n\nfunction color_formatRgb() {\n return this.rgb().formatRgb();\n}\n\nexport default function color(format) {\n var m, l;\n format = (format + \"\").trim().toLowerCase();\n return (m = reHex.exec(format)) ? (l = m[1].length, m = parseInt(m[1], 16), l === 6 ? rgbn(m) // #ff0000\n : l === 3 ? new Rgb((m >> 8 & 0xf) | (m >> 4 & 0xf0), (m >> 4 & 0xf) | (m & 0xf0), ((m & 0xf) << 4) | (m & 0xf), 1) // #f00\n : l === 8 ? rgba(m >> 24 & 0xff, m >> 16 & 0xff, m >> 8 & 0xff, (m & 0xff) / 0xff) // #ff000000\n : l === 4 ? rgba((m >> 12 & 0xf) | (m >> 8 & 0xf0), (m >> 8 & 0xf) | (m >> 4 & 0xf0), (m >> 4 & 0xf) | (m & 0xf0), (((m & 0xf) << 4) | (m & 0xf)) / 0xff) // #f000\n : null) // invalid hex\n : (m = reRgbInteger.exec(format)) ? new Rgb(m[1], m[2], m[3], 1) // rgb(255, 0, 0)\n : (m = reRgbPercent.exec(format)) ? new Rgb(m[1] * 255 / 100, m[2] * 255 / 100, m[3] * 255 / 100, 1) // rgb(100%, 0%, 0%)\n : (m = reRgbaInteger.exec(format)) ? rgba(m[1], m[2], m[3], m[4]) // rgba(255, 0, 0, 1)\n : (m = reRgbaPercent.exec(format)) ? rgba(m[1] * 255 / 100, m[2] * 255 / 100, m[3] * 255 / 100, m[4]) // rgb(100%, 0%, 0%, 1)\n : (m = reHslPercent.exec(format)) ? hsla(m[1], m[2] / 100, m[3] / 100, 1) // hsl(120, 50%, 50%)\n : (m = reHslaPercent.exec(format)) ? hsla(m[1], m[2] / 100, m[3] / 100, m[4]) // hsla(120, 50%, 50%, 1)\n : named.hasOwnProperty(format) ? rgbn(named[format]) // eslint-disable-line no-prototype-builtins\n : format === \"transparent\" ? new Rgb(NaN, NaN, NaN, 0)\n : null;\n}\n\nfunction rgbn(n) {\n return new Rgb(n >> 16 & 0xff, n >> 8 & 0xff, n & 0xff, 1);\n}\n\nfunction rgba(r, g, b, a) {\n if (a <= 0) r = g = b = NaN;\n return new Rgb(r, g, b, a);\n}\n\nexport function rgbConvert(o) {\n if (!(o instanceof Color)) o = color(o);\n if (!o) return new Rgb;\n o = o.rgb();\n return new Rgb(o.r, o.g, o.b, o.opacity);\n}\n\nexport function rgb(r, g, b, opacity) {\n return arguments.length === 1 ? rgbConvert(r) : new Rgb(r, g, b, opacity == null ? 1 : opacity);\n}\n\nexport function Rgb(r, g, b, opacity) {\n this.r = +r;\n this.g = +g;\n this.b = +b;\n this.opacity = +opacity;\n}\n\ndefine(Rgb, rgb, extend(Color, {\n brighter: function(k) {\n k = k == null ? brighter : Math.pow(brighter, k);\n return new Rgb(this.r * k, this.g * k, this.b * k, this.opacity);\n },\n darker: function(k) {\n k = k == null ? darker : Math.pow(darker, k);\n return new Rgb(this.r * k, this.g * k, this.b * k, this.opacity);\n },\n rgb: function() {\n return this;\n },\n displayable: function() {\n return (-0.5 <= this.r && this.r < 255.5)\n && (-0.5 <= this.g && this.g < 255.5)\n && (-0.5 <= this.b && this.b < 255.5)\n && (0 <= this.opacity && this.opacity <= 1);\n },\n hex: rgb_formatHex, // Deprecated! Use color.formatHex.\n formatHex: rgb_formatHex,\n formatRgb: rgb_formatRgb,\n toString: rgb_formatRgb\n}));\n\nfunction rgb_formatHex() {\n return \"#\" + hex(this.r) + hex(this.g) + hex(this.b);\n}\n\nfunction rgb_formatRgb() {\n var a = this.opacity; a = isNaN(a) ? 1 : Math.max(0, Math.min(1, a));\n return (a === 1 ? \"rgb(\" : \"rgba(\")\n + Math.max(0, Math.min(255, Math.round(this.r) || 0)) + \", \"\n + Math.max(0, Math.min(255, Math.round(this.g) || 0)) + \", \"\n + Math.max(0, Math.min(255, Math.round(this.b) || 0))\n + (a === 1 ? \")\" : \", \" + a + \")\");\n}\n\nfunction hex(value) {\n value = Math.max(0, Math.min(255, Math.round(value) || 0));\n return (value < 16 ? \"0\" : \"\") + value.toString(16);\n}\n\nfunction hsla(h, s, l, a) {\n if (a <= 0) h = s = l = NaN;\n else if (l <= 0 || l >= 1) h = s = NaN;\n else if (s <= 0) h = NaN;\n return new Hsl(h, s, l, a);\n}\n\nexport function hslConvert(o) {\n if (o instanceof Hsl) return new Hsl(o.h, o.s, o.l, o.opacity);\n if (!(o instanceof Color)) o = color(o);\n if (!o) return new Hsl;\n if (o instanceof Hsl) return o;\n o = o.rgb();\n var r = o.r / 255,\n g = o.g / 255,\n b = o.b / 255,\n min = Math.min(r, g, b),\n max = Math.max(r, g, b),\n h = NaN,\n s = max - min,\n l = (max + min) / 2;\n if (s) {\n if (r === max) h = (g - b) / s + (g < b) * 6;\n else if (g === max) h = (b - r) / s + 2;\n else h = (r - g) / s + 4;\n s /= l < 0.5 ? max + min : 2 - max - min;\n h *= 60;\n } else {\n s = l > 0 && l < 1 ? 0 : h;\n }\n return new Hsl(h, s, l, o.opacity);\n}\n\nexport function hsl(h, s, l, opacity) {\n return arguments.length === 1 ? hslConvert(h) : new Hsl(h, s, l, opacity == null ? 1 : opacity);\n}\n\nfunction Hsl(h, s, l, opacity) {\n this.h = +h;\n this.s = +s;\n this.l = +l;\n this.opacity = +opacity;\n}\n\ndefine(Hsl, hsl, extend(Color, {\n brighter: function(k) {\n k = k == null ? brighter : Math.pow(brighter, k);\n return new Hsl(this.h, this.s, this.l * k, this.opacity);\n },\n darker: function(k) {\n k = k == null ? darker : Math.pow(darker, k);\n return new Hsl(this.h, this.s, this.l * k, this.opacity);\n },\n rgb: function() {\n var h = this.h % 360 + (this.h < 0) * 360,\n s = isNaN(h) || isNaN(this.s) ? 0 : this.s,\n l = this.l,\n m2 = l + (l < 0.5 ? l : 1 - l) * s,\n m1 = 2 * l - m2;\n return new Rgb(\n hsl2rgb(h >= 240 ? h - 240 : h + 120, m1, m2),\n hsl2rgb(h, m1, m2),\n hsl2rgb(h < 120 ? h + 240 : h - 120, m1, m2),\n this.opacity\n );\n },\n displayable: function() {\n return (0 <= this.s && this.s <= 1 || isNaN(this.s))\n && (0 <= this.l && this.l <= 1)\n && (0 <= this.opacity && this.opacity <= 1);\n },\n formatHsl: function() {\n var a = this.opacity; a = isNaN(a) ? 1 : Math.max(0, Math.min(1, a));\n return (a === 1 ? \"hsl(\" : \"hsla(\")\n + (this.h || 0) + \", \"\n + (this.s || 0) * 100 + \"%, \"\n + (this.l || 0) * 100 + \"%\"\n + (a === 1 ? \")\" : \", \" + a + \")\");\n }\n}));\n\n/* From FvD 13.37, CSS Color Module Level 3 */\nfunction hsl2rgb(h, m1, m2) {\n return (h < 60 ? m1 + (m2 - m1) * h / 60\n : h < 180 ? m2\n : h < 240 ? m1 + (m2 - m1) * (240 - h) / 60\n : m1) * 255;\n}\n","import {Selection} from \"./index.js\";\nimport selector from \"../selector.js\";\n\nexport default function(select) {\n if (typeof select !== \"function\") select = selector(select);\n\n for (var groups = this._groups, m = groups.length, subgroups = new Array(m), j = 0; j < m; ++j) {\n for (var group = groups[j], n = group.length, subgroup = subgroups[j] = new Array(n), node, subnode, i = 0; i < n; ++i) {\n if ((node = group[i]) && (subnode = select.call(node, node.__data__, i, group))) {\n if (\"__data__\" in node) subnode.__data__ = node.__data__;\n subgroup[i] = subnode;\n }\n }\n }\n\n return new Selection(subgroups, this._parents);\n}\n","import {Selection} from \"./index.js\";\nimport matcher from \"../matcher.js\";\n\nexport default function(match) {\n if (typeof match !== \"function\") match = matcher(match);\n\n for (var groups = this._groups, m = groups.length, subgroups = new Array(m), j = 0; j < m; ++j) {\n for (var group = groups[j], n = group.length, subgroup = subgroups[j] = [], node, i = 0; i < n; ++i) {\n if ((node = group[i]) && match.call(node, node.__data__, i, group)) {\n subgroup.push(node);\n }\n }\n }\n\n return new Selection(subgroups, this._parents);\n}\n","export default function(x) {\n return function() {\n return x;\n };\n}\n","import sparse from \"./sparse.js\";\nimport {Selection} from \"./index.js\";\n\nexport default function() {\n return new Selection(this._exit || this._groups.map(sparse), this._parents);\n}\n","export default function(onenter, onupdate, onexit) {\n var enter = this.enter(), update = this, exit = this.exit();\n if (typeof onenter === \"function\") {\n enter = onenter(enter);\n if (enter) enter = enter.selection();\n } else {\n enter = enter.append(onenter + \"\");\n }\n if (onupdate != null) {\n update = onupdate(update);\n if (update) update = update.selection();\n }\n if (onexit == null) exit.remove(); else onexit(exit);\n return enter && update ? enter.merge(update).order() : update;\n}\n","import {Selection} from \"./index.js\";\n\nexport default function(context) {\n var selection = context.selection ? context.selection() : context;\n\n for (var groups0 = this._groups, groups1 = selection._groups, m0 = groups0.length, m1 = groups1.length, m = Math.min(m0, m1), merges = new Array(m0), j = 0; j < m; ++j) {\n for (var group0 = groups0[j], group1 = groups1[j], n = group0.length, merge = merges[j] = new Array(n), node, i = 0; i < n; ++i) {\n if (node = group0[i] || group1[i]) {\n merge[i] = node;\n }\n }\n }\n\n for (; j < m0; ++j) {\n merges[j] = groups0[j];\n }\n\n return new Selection(merges, this._parents);\n}\n","export default function() {\n\n for (var groups = this._groups, j = -1, m = groups.length; ++j < m;) {\n for (var group = groups[j], i = group.length - 1, next = group[i], node; --i >= 0;) {\n if (node = group[i]) {\n if (next && node.compareDocumentPosition(next) ^ 4) next.parentNode.insertBefore(node, next);\n next = node;\n }\n }\n }\n\n return this;\n}\n","export default function() {\n var callback = arguments[0];\n arguments[0] = this;\n callback.apply(null, arguments);\n return this;\n}\n","export default function() {\n return Array.from(this);\n}\n","export default function() {\n\n for (var groups = this._groups, j = 0, m = groups.length; j < m; ++j) {\n for (var group = groups[j], i = 0, n = group.length; i < n; ++i) {\n var node = group[i];\n if (node) return node;\n }\n }\n\n return null;\n}\n","export default function() {\n let size = 0;\n for (const node of this) ++size; // eslint-disable-line no-unused-vars\n return size;\n}\n","export default function() {\n return !this.node();\n}\n","export default function(callback) {\n\n for (var groups = this._groups, j = 0, m = groups.length; j < m; ++j) {\n for (var group = groups[j], i = 0, n = group.length, node; i < n; ++i) {\n if (node = group[i]) callback.call(node, node.__data__, i, group);\n }\n }\n\n return this;\n}\n","import creator from \"../creator.js\";\n\nexport default function(name) {\n var create = typeof name === \"function\" ? name : creator(name);\n return this.select(function() {\n return this.appendChild(create.apply(this, arguments));\n });\n}\n","export default function(value) {\n return arguments.length\n ? this.property(\"__data__\", value)\n : this.node().__data__;\n}\n","export default function*() {\n for (var groups = this._groups, j = 0, m = groups.length; j < m; ++j) {\n for (var group = groups[j], i = 0, n = group.length, node; i < n; ++i) {\n if (node = group[i]) yield node;\n }\n }\n}\n","export default x => () => x;\n","import constant from \"./constant.js\";\n\nfunction linear(a, d) {\n return function(t) {\n return a + t * d;\n };\n}\n\nfunction exponential(a, b, y) {\n return a = Math.pow(a, y), b = Math.pow(b, y) - a, y = 1 / y, function(t) {\n return Math.pow(a + t * b, y);\n };\n}\n\nexport function hue(a, b) {\n var d = b - a;\n return d ? linear(a, d > 180 || d < -180 ? d - 360 * Math.round(d / 360) : d) : constant(isNaN(a) ? b : a);\n}\n\nexport function gamma(y) {\n return (y = +y) === 1 ? nogamma : function(a, b) {\n return b - a ? exponential(a, b, y) : constant(isNaN(a) ? b : a);\n };\n}\n\nexport default function nogamma(a, b) {\n var d = b - a;\n return d ? linear(a, d) : constant(isNaN(a) ? b : a);\n}\n","import {rgb as colorRgb} from \"d3-color\";\nimport basis from \"./basis.js\";\nimport basisClosed from \"./basisClosed.js\";\nimport nogamma, {gamma} from \"./color.js\";\n\nexport default (function rgbGamma(y) {\n var color = gamma(y);\n\n function rgb(start, end) {\n var r = color((start = colorRgb(start)).r, (end = colorRgb(end)).r),\n g = color(start.g, end.g),\n b = color(start.b, end.b),\n opacity = nogamma(start.opacity, end.opacity);\n return function(t) {\n start.r = r(t);\n start.g = g(t);\n start.b = b(t);\n start.opacity = opacity(t);\n return start + \"\";\n };\n }\n\n rgb.gamma = rgbGamma;\n\n return rgb;\n})(1);\n\nfunction rgbSpline(spline) {\n return function(colors) {\n var n = colors.length,\n r = new Array(n),\n g = new Array(n),\n b = new Array(n),\n i, color;\n for (i = 0; i < n; ++i) {\n color = colorRgb(colors[i]);\n r[i] = color.r || 0;\n g[i] = color.g || 0;\n b[i] = color.b || 0;\n }\n r = spline(r);\n g = spline(g);\n b = spline(b);\n color.opacity = 1;\n return function(t) {\n color.r = r(t);\n color.g = g(t);\n color.b = b(t);\n return color + \"\";\n };\n };\n}\n\nexport var rgbBasis = rgbSpline(basis);\nexport var rgbBasisClosed = rgbSpline(basisClosed);\n","export default function(a, b) {\n return a = +a, b = +b, function(t) {\n return a * (1 - t) + b * t;\n };\n}\n","import number from \"./number.js\";\n\nvar reA = /[-+]?(?:\\d+\\.?\\d*|\\.?\\d+)(?:[eE][-+]?\\d+)?/g,\n reB = new RegExp(reA.source, \"g\");\n\nfunction zero(b) {\n return function() {\n return b;\n };\n}\n\nfunction one(b) {\n return function(t) {\n return b(t) + \"\";\n };\n}\n\nexport default function(a, b) {\n var bi = reA.lastIndex = reB.lastIndex = 0, // scan index for next number in b\n am, // current match in a\n bm, // current match in b\n bs, // string preceding current number in b, if any\n i = -1, // index in s\n s = [], // string constants and placeholders\n q = []; // number interpolators\n\n // Coerce inputs to strings.\n a = a + \"\", b = b + \"\";\n\n // Interpolate pairs of numbers in a & b.\n while ((am = reA.exec(a))\n && (bm = reB.exec(b))) {\n if ((bs = bm.index) > bi) { // a string precedes the next number in b\n bs = b.slice(bi, bs);\n if (s[i]) s[i] += bs; // coalesce with previous string\n else s[++i] = bs;\n }\n if ((am = am[0]) === (bm = bm[0])) { // numbers in a & b match\n if (s[i]) s[i] += bm; // coalesce with previous string\n else s[++i] = bm;\n } else { // interpolate non-matching numbers\n s[++i] = null;\n q.push({i: i, x: number(am, bm)});\n }\n bi = reB.lastIndex;\n }\n\n // Add remains of b.\n if (bi < b.length) {\n bs = b.slice(bi);\n if (s[i]) s[i] += bs; // coalesce with previous string\n else s[++i] = bs;\n }\n\n // Special optimization for only a single match.\n // Otherwise, interpolate each of the numbers and rejoin the string.\n return s.length < 2 ? (q[0]\n ? one(q[0].x)\n : zero(b))\n : (b = q.length, function(t) {\n for (var i = 0, o; i < b; ++i) s[(o = q[i]).i] = o.x(t);\n return s.join(\"\");\n });\n}\n","var degrees = 180 / Math.PI;\n\nexport var identity = {\n translateX: 0,\n translateY: 0,\n rotate: 0,\n skewX: 0,\n scaleX: 1,\n scaleY: 1\n};\n\nexport default function(a, b, c, d, e, f) {\n var scaleX, scaleY, skewX;\n if (scaleX = Math.sqrt(a * a + b * b)) a /= scaleX, b /= scaleX;\n if (skewX = a * c + b * d) c -= a * skewX, d -= b * skewX;\n if (scaleY = Math.sqrt(c * c + d * d)) c /= scaleY, d /= scaleY, skewX /= scaleY;\n if (a * d < b * c) a = -a, b = -b, skewX = -skewX, scaleX = -scaleX;\n return {\n translateX: e,\n translateY: f,\n rotate: Math.atan2(b, a) * degrees,\n skewX: Math.atan(skewX) * degrees,\n scaleX: scaleX,\n scaleY: scaleY\n };\n}\n","import decompose, {identity} from \"./decompose.js\";\n\nvar svgNode;\n\n/* eslint-disable no-undef */\nexport function parseCss(value) {\n const m = new (typeof DOMMatrix === \"function\" ? DOMMatrix : WebKitCSSMatrix)(value + \"\");\n return m.isIdentity ? identity : decompose(m.a, m.b, m.c, m.d, m.e, m.f);\n}\n\nexport function parseSvg(value) {\n if (value == null) return identity;\n if (!svgNode) svgNode = document.createElementNS(\"http://www.w3.org/2000/svg\", \"g\");\n svgNode.setAttribute(\"transform\", value);\n if (!(value = svgNode.transform.baseVal.consolidate())) return identity;\n value = value.matrix;\n return decompose(value.a, value.b, value.c, value.d, value.e, value.f);\n}\n","import number from \"../number.js\";\nimport {parseCss, parseSvg} from \"./parse.js\";\n\nfunction interpolateTransform(parse, pxComma, pxParen, degParen) {\n\n function pop(s) {\n return s.length ? s.pop() + \" \" : \"\";\n }\n\n function translate(xa, ya, xb, yb, s, q) {\n if (xa !== xb || ya !== yb) {\n var i = s.push(\"translate(\", null, pxComma, null, pxParen);\n q.push({i: i - 4, x: number(xa, xb)}, {i: i - 2, x: number(ya, yb)});\n } else if (xb || yb) {\n s.push(\"translate(\" + xb + pxComma + yb + pxParen);\n }\n }\n\n function rotate(a, b, s, q) {\n if (a !== b) {\n if (a - b > 180) b += 360; else if (b - a > 180) a += 360; // shortest path\n q.push({i: s.push(pop(s) + \"rotate(\", null, degParen) - 2, x: number(a, b)});\n } else if (b) {\n s.push(pop(s) + \"rotate(\" + b + degParen);\n }\n }\n\n function skewX(a, b, s, q) {\n if (a !== b) {\n q.push({i: s.push(pop(s) + \"skewX(\", null, degParen) - 2, x: number(a, b)});\n } else if (b) {\n s.push(pop(s) + \"skewX(\" + b + degParen);\n }\n }\n\n function scale(xa, ya, xb, yb, s, q) {\n if (xa !== xb || ya !== yb) {\n var i = s.push(pop(s) + \"scale(\", null, \",\", null, \")\");\n q.push({i: i - 4, x: number(xa, xb)}, {i: i - 2, x: number(ya, yb)});\n } else if (xb !== 1 || yb !== 1) {\n s.push(pop(s) + \"scale(\" + xb + \",\" + yb + \")\");\n }\n }\n\n return function(a, b) {\n var s = [], // string constants and placeholders\n q = []; // number interpolators\n a = parse(a), b = parse(b);\n translate(a.translateX, a.translateY, b.translateX, b.translateY, s, q);\n rotate(a.rotate, b.rotate, s, q);\n skewX(a.skewX, b.skewX, s, q);\n scale(a.scaleX, a.scaleY, b.scaleX, b.scaleY, s, q);\n a = b = null; // gc\n return function(t) {\n var i = -1, n = q.length, o;\n while (++i < n) s[(o = q[i]).i] = o.x(t);\n return s.join(\"\");\n };\n };\n}\n\nexport var interpolateTransformCss = interpolateTransform(parseCss, \"px, \", \"px)\", \"deg)\");\nexport var interpolateTransformSvg = interpolateTransform(parseSvg, \", \", \")\", \")\");\n","var frame = 0, // is an animation frame pending?\n timeout = 0, // is a timeout pending?\n interval = 0, // are any timers active?\n pokeDelay = 1000, // how frequently we check for clock skew\n taskHead,\n taskTail,\n clockLast = 0,\n clockNow = 0,\n clockSkew = 0,\n clock = typeof performance === \"object\" && performance.now ? performance : Date,\n setFrame = typeof window === \"object\" && window.requestAnimationFrame ? window.requestAnimationFrame.bind(window) : function(f) { setTimeout(f, 17); };\n\nexport function now() {\n return clockNow || (setFrame(clearNow), clockNow = clock.now() + clockSkew);\n}\n\nfunction clearNow() {\n clockNow = 0;\n}\n\nexport function Timer() {\n this._call =\n this._time =\n this._next = null;\n}\n\nTimer.prototype = timer.prototype = {\n constructor: Timer,\n restart: function(callback, delay, time) {\n if (typeof callback !== \"function\") throw new TypeError(\"callback is not a function\");\n time = (time == null ? now() : +time) + (delay == null ? 0 : +delay);\n if (!this._next && taskTail !== this) {\n if (taskTail) taskTail._next = this;\n else taskHead = this;\n taskTail = this;\n }\n this._call = callback;\n this._time = time;\n sleep();\n },\n stop: function() {\n if (this._call) {\n this._call = null;\n this._time = Infinity;\n sleep();\n }\n }\n};\n\nexport function timer(callback, delay, time) {\n var t = new Timer;\n t.restart(callback, delay, time);\n return t;\n}\n\nexport function timerFlush() {\n now(); // Get the current time, if not already set.\n ++frame; // Pretend we’ve set an alarm, if we haven’t already.\n var t = taskHead, e;\n while (t) {\n if ((e = clockNow - t._time) >= 0) t._call.call(undefined, e);\n t = t._next;\n }\n --frame;\n}\n\nfunction wake() {\n clockNow = (clockLast = clock.now()) + clockSkew;\n frame = timeout = 0;\n try {\n timerFlush();\n } finally {\n frame = 0;\n nap();\n clockNow = 0;\n }\n}\n\nfunction poke() {\n var now = clock.now(), delay = now - clockLast;\n if (delay > pokeDelay) clockSkew -= delay, clockLast = now;\n}\n\nfunction nap() {\n var t0, t1 = taskHead, t2, time = Infinity;\n while (t1) {\n if (t1._call) {\n if (time > t1._time) time = t1._time;\n t0 = t1, t1 = t1._next;\n } else {\n t2 = t1._next, t1._next = null;\n t1 = t0 ? t0._next = t2 : taskHead = t2;\n }\n }\n taskTail = t0;\n sleep(time);\n}\n\nfunction sleep(time) {\n if (frame) return; // Soonest alarm already set, or will be.\n if (timeout) timeout = clearTimeout(timeout);\n var delay = time - clockNow; // Strictly less than if we recomputed clockNow.\n if (delay > 24) {\n if (time < Infinity) timeout = setTimeout(wake, time - clock.now() - clockSkew);\n if (interval) interval = clearInterval(interval);\n } else {\n if (!interval) clockLast = clock.now(), interval = setInterval(poke, pokeDelay);\n frame = 1, setFrame(wake);\n }\n}\n","import {Timer} from \"./timer.js\";\n\nexport default function(callback, delay, time) {\n var t = new Timer;\n delay = delay == null ? 0 : +delay;\n t.restart(elapsed => {\n t.stop();\n callback(elapsed + delay);\n }, delay, time);\n return t;\n}\n","import {dispatch} from \"d3-dispatch\";\nimport {timer, timeout} from \"d3-timer\";\n\nvar emptyOn = dispatch(\"start\", \"end\", \"cancel\", \"interrupt\");\nvar emptyTween = [];\n\nexport var CREATED = 0;\nexport var SCHEDULED = 1;\nexport var STARTING = 2;\nexport var STARTED = 3;\nexport var RUNNING = 4;\nexport var ENDING = 5;\nexport var ENDED = 6;\n\nexport default function(node, name, id, index, group, timing) {\n var schedules = node.__transition;\n if (!schedules) node.__transition = {};\n else if (id in schedules) return;\n create(node, id, {\n name: name,\n index: index, // For context during callback.\n group: group, // For context during callback.\n on: emptyOn,\n tween: emptyTween,\n time: timing.time,\n delay: timing.delay,\n duration: timing.duration,\n ease: timing.ease,\n timer: null,\n state: CREATED\n });\n}\n\nexport function init(node, id) {\n var schedule = get(node, id);\n if (schedule.state > CREATED) throw new Error(\"too late; already scheduled\");\n return schedule;\n}\n\nexport function set(node, id) {\n var schedule = get(node, id);\n if (schedule.state > STARTED) throw new Error(\"too late; already running\");\n return schedule;\n}\n\nexport function get(node, id) {\n var schedule = node.__transition;\n if (!schedule || !(schedule = schedule[id])) throw new Error(\"transition not found\");\n return schedule;\n}\n\nfunction create(node, id, self) {\n var schedules = node.__transition,\n tween;\n\n // Initialize the self timer when the transition is created.\n // Note the actual delay is not known until the first callback!\n schedules[id] = self;\n self.timer = timer(schedule, 0, self.time);\n\n function schedule(elapsed) {\n self.state = SCHEDULED;\n self.timer.restart(start, self.delay, self.time);\n\n // If the elapsed delay is less than our first sleep, start immediately.\n if (self.delay <= elapsed) start(elapsed - self.delay);\n }\n\n function start(elapsed) {\n var i, j, n, o;\n\n // If the state is not SCHEDULED, then we previously errored on start.\n if (self.state !== SCHEDULED) return stop();\n\n for (i in schedules) {\n o = schedules[i];\n if (o.name !== self.name) continue;\n\n // While this element already has a starting transition during this frame,\n // defer starting an interrupting transition until that transition has a\n // chance to tick (and possibly end); see d3/d3-transition#54!\n if (o.state === STARTED) return timeout(start);\n\n // Interrupt the active transition, if any.\n if (o.state === RUNNING) {\n o.state = ENDED;\n o.timer.stop();\n o.on.call(\"interrupt\", node, node.__data__, o.index, o.group);\n delete schedules[i];\n }\n\n // Cancel any pre-empted transitions.\n else if (+i < id) {\n o.state = ENDED;\n o.timer.stop();\n o.on.call(\"cancel\", node, node.__data__, o.index, o.group);\n delete schedules[i];\n }\n }\n\n // Defer the first tick to end of the current frame; see d3/d3#1576.\n // Note the transition may be canceled after start and before the first tick!\n // Note this must be scheduled before the start event; see d3/d3-transition#16!\n // Assuming this is successful, subsequent callbacks go straight to tick.\n timeout(function() {\n if (self.state === STARTED) {\n self.state = RUNNING;\n self.timer.restart(tick, self.delay, self.time);\n tick(elapsed);\n }\n });\n\n // Dispatch the start event.\n // Note this must be done before the tween are initialized.\n self.state = STARTING;\n self.on.call(\"start\", node, node.__data__, self.index, self.group);\n if (self.state !== STARTING) return; // interrupted\n self.state = STARTED;\n\n // Initialize the tween, deleting null tween.\n tween = new Array(n = self.tween.length);\n for (i = 0, j = -1; i < n; ++i) {\n if (o = self.tween[i].value.call(node, node.__data__, self.index, self.group)) {\n tween[++j] = o;\n }\n }\n tween.length = j + 1;\n }\n\n function tick(elapsed) {\n var t = elapsed < self.duration ? self.ease.call(null, elapsed / self.duration) : (self.timer.restart(stop), self.state = ENDING, 1),\n i = -1,\n n = tween.length;\n\n while (++i < n) {\n tween[i].call(node, t);\n }\n\n // Dispatch the end event.\n if (self.state === ENDING) {\n self.on.call(\"end\", node, node.__data__, self.index, self.group);\n stop();\n }\n }\n\n function stop() {\n self.state = ENDED;\n self.timer.stop();\n delete schedules[id];\n for (var i in schedules) return; // eslint-disable-line no-unused-vars\n delete node.__transition;\n }\n}\n","import {get, set} from \"./schedule.js\";\n\nfunction tweenRemove(id, name) {\n var tween0, tween1;\n return function() {\n var schedule = set(this, id),\n tween = schedule.tween;\n\n // If this node shared tween with the previous node,\n // just assign the updated shared tween and we’re done!\n // Otherwise, copy-on-write.\n if (tween !== tween0) {\n tween1 = tween0 = tween;\n for (var i = 0, n = tween1.length; i < n; ++i) {\n if (tween1[i].name === name) {\n tween1 = tween1.slice();\n tween1.splice(i, 1);\n break;\n }\n }\n }\n\n schedule.tween = tween1;\n };\n}\n\nfunction tweenFunction(id, name, value) {\n var tween0, tween1;\n if (typeof value !== \"function\") throw new Error;\n return function() {\n var schedule = set(this, id),\n tween = schedule.tween;\n\n // If this node shared tween with the previous node,\n // just assign the updated shared tween and we’re done!\n // Otherwise, copy-on-write.\n if (tween !== tween0) {\n tween1 = (tween0 = tween).slice();\n for (var t = {name: name, value: value}, i = 0, n = tween1.length; i < n; ++i) {\n if (tween1[i].name === name) {\n tween1[i] = t;\n break;\n }\n }\n if (i === n) tween1.push(t);\n }\n\n schedule.tween = tween1;\n };\n}\n\nexport default function(name, value) {\n var id = this._id;\n\n name += \"\";\n\n if (arguments.length < 2) {\n var tween = get(this.node(), id).tween;\n for (var i = 0, n = tween.length, t; i < n; ++i) {\n if ((t = tween[i]).name === name) {\n return t.value;\n }\n }\n return null;\n }\n\n return this.each((value == null ? tweenRemove : tweenFunction)(id, name, value));\n}\n\nexport function tweenValue(transition, name, value) {\n var id = transition._id;\n\n transition.each(function() {\n var schedule = set(this, id);\n (schedule.value || (schedule.value = {}))[name] = value.apply(this, arguments);\n });\n\n return function(node) {\n return get(node, id).value[name];\n };\n}\n","import {color} from \"d3-color\";\nimport {interpolateNumber, interpolateRgb, interpolateString} from \"d3-interpolate\";\n\nexport default function(a, b) {\n var c;\n return (typeof b === \"number\" ? interpolateNumber\n : b instanceof color ? interpolateRgb\n : (c = color(b)) ? (b = c, interpolateRgb)\n : interpolateString)(a, b);\n}\n","import {interpolateTransformSvg as interpolateTransform} from \"d3-interpolate\";\nimport {namespace} from \"d3-selection\";\nimport {tweenValue} from \"./tween.js\";\nimport interpolate from \"./interpolate.js\";\n\nfunction attrRemove(name) {\n return function() {\n this.removeAttribute(name);\n };\n}\n\nfunction attrRemoveNS(fullname) {\n return function() {\n this.removeAttributeNS(fullname.space, fullname.local);\n };\n}\n\nfunction attrConstant(name, interpolate, value1) {\n var string00,\n string1 = value1 + \"\",\n interpolate0;\n return function() {\n var string0 = this.getAttribute(name);\n return string0 === string1 ? null\n : string0 === string00 ? interpolate0\n : interpolate0 = interpolate(string00 = string0, value1);\n };\n}\n\nfunction attrConstantNS(fullname, interpolate, value1) {\n var string00,\n string1 = value1 + \"\",\n interpolate0;\n return function() {\n var string0 = this.getAttributeNS(fullname.space, fullname.local);\n return string0 === string1 ? null\n : string0 === string00 ? interpolate0\n : interpolate0 = interpolate(string00 = string0, value1);\n };\n}\n\nfunction attrFunction(name, interpolate, value) {\n var string00,\n string10,\n interpolate0;\n return function() {\n var string0, value1 = value(this), string1;\n if (value1 == null) return void this.removeAttribute(name);\n string0 = this.getAttribute(name);\n string1 = value1 + \"\";\n return string0 === string1 ? null\n : string0 === string00 && string1 === string10 ? interpolate0\n : (string10 = string1, interpolate0 = interpolate(string00 = string0, value1));\n };\n}\n\nfunction attrFunctionNS(fullname, interpolate, value) {\n var string00,\n string10,\n interpolate0;\n return function() {\n var string0, value1 = value(this), string1;\n if (value1 == null) return void this.removeAttributeNS(fullname.space, fullname.local);\n string0 = this.getAttributeNS(fullname.space, fullname.local);\n string1 = value1 + \"\";\n return string0 === string1 ? null\n : string0 === string00 && string1 === string10 ? interpolate0\n : (string10 = string1, interpolate0 = interpolate(string00 = string0, value1));\n };\n}\n\nexport default function(name, value) {\n var fullname = namespace(name), i = fullname === \"transform\" ? interpolateTransform : interpolate;\n return this.attrTween(name, typeof value === \"function\"\n ? (fullname.local ? attrFunctionNS : attrFunction)(fullname, i, tweenValue(this, \"attr.\" + name, value))\n : value == null ? (fullname.local ? attrRemoveNS : attrRemove)(fullname)\n : (fullname.local ? attrConstantNS : attrConstant)(fullname, i, value));\n}\n","import {namespace} from \"d3-selection\";\n\nfunction attrInterpolate(name, i) {\n return function(t) {\n this.setAttribute(name, i.call(this, t));\n };\n}\n\nfunction attrInterpolateNS(fullname, i) {\n return function(t) {\n this.setAttributeNS(fullname.space, fullname.local, i.call(this, t));\n };\n}\n\nfunction attrTweenNS(fullname, value) {\n var t0, i0;\n function tween() {\n var i = value.apply(this, arguments);\n if (i !== i0) t0 = (i0 = i) && attrInterpolateNS(fullname, i);\n return t0;\n }\n tween._value = value;\n return tween;\n}\n\nfunction attrTween(name, value) {\n var t0, i0;\n function tween() {\n var i = value.apply(this, arguments);\n if (i !== i0) t0 = (i0 = i) && attrInterpolate(name, i);\n return t0;\n }\n tween._value = value;\n return tween;\n}\n\nexport default function(name, value) {\n var key = \"attr.\" + name;\n if (arguments.length < 2) return (key = this.tween(key)) && key._value;\n if (value == null) return this.tween(key, null);\n if (typeof value !== \"function\") throw new Error;\n var fullname = namespace(name);\n return this.tween(key, (fullname.local ? attrTweenNS : attrTween)(fullname, value));\n}\n","import {get, init} from \"./schedule.js\";\n\nfunction delayFunction(id, value) {\n return function() {\n init(this, id).delay = +value.apply(this, arguments);\n };\n}\n\nfunction delayConstant(id, value) {\n return value = +value, function() {\n init(this, id).delay = value;\n };\n}\n\nexport default function(value) {\n var id = this._id;\n\n return arguments.length\n ? this.each((typeof value === \"function\"\n ? delayFunction\n : delayConstant)(id, value))\n : get(this.node(), id).delay;\n}\n","import {get, set} from \"./schedule.js\";\n\nfunction durationFunction(id, value) {\n return function() {\n set(this, id).duration = +value.apply(this, arguments);\n };\n}\n\nfunction durationConstant(id, value) {\n return value = +value, function() {\n set(this, id).duration = value;\n };\n}\n\nexport default function(value) {\n var id = this._id;\n\n return arguments.length\n ? this.each((typeof value === \"function\"\n ? durationFunction\n : durationConstant)(id, value))\n : get(this.node(), id).duration;\n}\n","import {selection} from \"d3-selection\";\n\nvar Selection = selection.prototype.constructor;\n\nexport default function() {\n return new Selection(this._groups, this._parents);\n}\n","import {interpolateTransformCss as interpolateTransform} from \"d3-interpolate\";\nimport {style} from \"d3-selection\";\nimport {set} from \"./schedule.js\";\nimport {tweenValue} from \"./tween.js\";\nimport interpolate from \"./interpolate.js\";\n\nfunction styleNull(name, interpolate) {\n var string00,\n string10,\n interpolate0;\n return function() {\n var string0 = style(this, name),\n string1 = (this.style.removeProperty(name), style(this, name));\n return string0 === string1 ? null\n : string0 === string00 && string1 === string10 ? interpolate0\n : interpolate0 = interpolate(string00 = string0, string10 = string1);\n };\n}\n\nfunction styleRemove(name) {\n return function() {\n this.style.removeProperty(name);\n };\n}\n\nfunction styleConstant(name, interpolate, value1) {\n var string00,\n string1 = value1 + \"\",\n interpolate0;\n return function() {\n var string0 = style(this, name);\n return string0 === string1 ? null\n : string0 === string00 ? interpolate0\n : interpolate0 = interpolate(string00 = string0, value1);\n };\n}\n\nfunction styleFunction(name, interpolate, value) {\n var string00,\n string10,\n interpolate0;\n return function() {\n var string0 = style(this, name),\n value1 = value(this),\n string1 = value1 + \"\";\n if (value1 == null) string1 = value1 = (this.style.removeProperty(name), style(this, name));\n return string0 === string1 ? null\n : string0 === string00 && string1 === string10 ? interpolate0\n : (string10 = string1, interpolate0 = interpolate(string00 = string0, value1));\n };\n}\n\nfunction styleMaybeRemove(id, name) {\n var on0, on1, listener0, key = \"style.\" + name, event = \"end.\" + key, remove;\n return function() {\n var schedule = set(this, id),\n on = schedule.on,\n listener = schedule.value[key] == null ? remove || (remove = styleRemove(name)) : undefined;\n\n // If this node shared a dispatch with the previous node,\n // just assign the updated shared dispatch and we’re done!\n // Otherwise, copy-on-write.\n if (on !== on0 || listener0 !== listener) (on1 = (on0 = on).copy()).on(event, listener0 = listener);\n\n schedule.on = on1;\n };\n}\n\nexport default function(name, value, priority) {\n var i = (name += \"\") === \"transform\" ? interpolateTransform : interpolate;\n return value == null ? this\n .styleTween(name, styleNull(name, i))\n .on(\"end.style.\" + name, styleRemove(name))\n : typeof value === \"function\" ? this\n .styleTween(name, styleFunction(name, i, tweenValue(this, \"style.\" + name, value)))\n .each(styleMaybeRemove(this._id, name))\n : this\n .styleTween(name, styleConstant(name, i, value), priority)\n .on(\"end.style.\" + name, null);\n}\n","import {selection} from \"d3-selection\";\nimport transition_attr from \"./attr.js\";\nimport transition_attrTween from \"./attrTween.js\";\nimport transition_delay from \"./delay.js\";\nimport transition_duration from \"./duration.js\";\nimport transition_ease from \"./ease.js\";\nimport transition_easeVarying from \"./easeVarying.js\";\nimport transition_filter from \"./filter.js\";\nimport transition_merge from \"./merge.js\";\nimport transition_on from \"./on.js\";\nimport transition_remove from \"./remove.js\";\nimport transition_select from \"./select.js\";\nimport transition_selectAll from \"./selectAll.js\";\nimport transition_selection from \"./selection.js\";\nimport transition_style from \"./style.js\";\nimport transition_styleTween from \"./styleTween.js\";\nimport transition_text from \"./text.js\";\nimport transition_textTween from \"./textTween.js\";\nimport transition_transition from \"./transition.js\";\nimport transition_tween from \"./tween.js\";\nimport transition_end from \"./end.js\";\n\nvar id = 0;\n\nexport function Transition(groups, parents, name, id) {\n this._groups = groups;\n this._parents = parents;\n this._name = name;\n this._id = id;\n}\n\nexport default function transition(name) {\n return selection().transition(name);\n}\n\nexport function newId() {\n return ++id;\n}\n\nvar selection_prototype = selection.prototype;\n\nTransition.prototype = transition.prototype = {\n constructor: Transition,\n select: transition_select,\n selectAll: transition_selectAll,\n selectChild: selection_prototype.selectChild,\n selectChildren: selection_prototype.selectChildren,\n filter: transition_filter,\n merge: transition_merge,\n selection: transition_selection,\n transition: transition_transition,\n call: selection_prototype.call,\n nodes: selection_prototype.nodes,\n node: selection_prototype.node,\n size: selection_prototype.size,\n empty: selection_prototype.empty,\n each: selection_prototype.each,\n on: transition_on,\n attr: transition_attr,\n attrTween: transition_attrTween,\n style: transition_style,\n styleTween: transition_styleTween,\n text: transition_text,\n textTween: transition_textTween,\n remove: transition_remove,\n tween: transition_tween,\n delay: transition_delay,\n duration: transition_duration,\n ease: transition_ease,\n easeVarying: transition_easeVarying,\n end: transition_end,\n [Symbol.iterator]: selection_prototype[Symbol.iterator]\n};\n","import {selector} from \"d3-selection\";\nimport {Transition} from \"./index.js\";\nimport schedule, {get} from \"./schedule.js\";\n\nexport default function(select) {\n var name = this._name,\n id = this._id;\n\n if (typeof select !== \"function\") select = selector(select);\n\n for (var groups = this._groups, m = groups.length, subgroups = new Array(m), j = 0; j < m; ++j) {\n for (var group = groups[j], n = group.length, subgroup = subgroups[j] = new Array(n), node, subnode, i = 0; i < n; ++i) {\n if ((node = group[i]) && (subnode = select.call(node, node.__data__, i, group))) {\n if (\"__data__\" in node) subnode.__data__ = node.__data__;\n subgroup[i] = subnode;\n schedule(subgroup[i], name, id, i, subgroup, get(node, id));\n }\n }\n }\n\n return new Transition(subgroups, this._parents, name, id);\n}\n","import {selectorAll} from \"d3-selection\";\nimport {Transition} from \"./index.js\";\nimport schedule, {get} from \"./schedule.js\";\n\nexport default function(select) {\n var name = this._name,\n id = this._id;\n\n if (typeof select !== \"function\") select = selectorAll(select);\n\n for (var groups = this._groups, m = groups.length, subgroups = [], parents = [], j = 0; j < m; ++j) {\n for (var group = groups[j], n = group.length, node, i = 0; i < n; ++i) {\n if (node = group[i]) {\n for (var children = select.call(node, node.__data__, i, group), child, inherit = get(node, id), k = 0, l = children.length; k < l; ++k) {\n if (child = children[k]) {\n schedule(child, name, id, k, children, inherit);\n }\n }\n subgroups.push(children);\n parents.push(node);\n }\n }\n }\n\n return new Transition(subgroups, parents, name, id);\n}\n","import {matcher} from \"d3-selection\";\nimport {Transition} from \"./index.js\";\n\nexport default function(match) {\n if (typeof match !== \"function\") match = matcher(match);\n\n for (var groups = this._groups, m = groups.length, subgroups = new Array(m), j = 0; j < m; ++j) {\n for (var group = groups[j], n = group.length, subgroup = subgroups[j] = [], node, i = 0; i < n; ++i) {\n if ((node = group[i]) && match.call(node, node.__data__, i, group)) {\n subgroup.push(node);\n }\n }\n }\n\n return new Transition(subgroups, this._parents, this._name, this._id);\n}\n","import {Transition} from \"./index.js\";\n\nexport default function(transition) {\n if (transition._id !== this._id) throw new Error;\n\n for (var groups0 = this._groups, groups1 = transition._groups, m0 = groups0.length, m1 = groups1.length, m = Math.min(m0, m1), merges = new Array(m0), j = 0; j < m; ++j) {\n for (var group0 = groups0[j], group1 = groups1[j], n = group0.length, merge = merges[j] = new Array(n), node, i = 0; i < n; ++i) {\n if (node = group0[i] || group1[i]) {\n merge[i] = node;\n }\n }\n }\n\n for (; j < m0; ++j) {\n merges[j] = groups0[j];\n }\n\n return new Transition(merges, this._parents, this._name, this._id);\n}\n","import {Transition, newId} from \"./index.js\";\nimport schedule, {get} from \"./schedule.js\";\n\nexport default function() {\n var name = this._name,\n id0 = this._id,\n id1 = newId();\n\n for (var groups = this._groups, m = groups.length, j = 0; j < m; ++j) {\n for (var group = groups[j], n = group.length, node, i = 0; i < n; ++i) {\n if (node = group[i]) {\n var inherit = get(node, id0);\n schedule(node, name, id1, i, group, {\n time: inherit.time + inherit.delay + inherit.duration,\n delay: 0,\n duration: inherit.duration,\n ease: inherit.ease\n });\n }\n }\n }\n\n return new Transition(groups, this._parents, name, id1);\n}\n","import {get, set, init} from \"./schedule.js\";\n\nfunction start(name) {\n return (name + \"\").trim().split(/^|\\s+/).every(function(t) {\n var i = t.indexOf(\".\");\n if (i >= 0) t = t.slice(0, i);\n return !t || t === \"start\";\n });\n}\n\nfunction onFunction(id, name, listener) {\n var on0, on1, sit = start(name) ? init : set;\n return function() {\n var schedule = sit(this, id),\n on = schedule.on;\n\n // If this node shared a dispatch with the previous node,\n // just assign the updated shared dispatch and we’re done!\n // Otherwise, copy-on-write.\n if (on !== on0) (on1 = (on0 = on).copy()).on(name, listener);\n\n schedule.on = on1;\n };\n}\n\nexport default function(name, listener) {\n var id = this._id;\n\n return arguments.length < 2\n ? get(this.node(), id).on.on(name)\n : this.each(onFunction(id, name, listener));\n}\n","function styleInterpolate(name, i, priority) {\n return function(t) {\n this.style.setProperty(name, i.call(this, t), priority);\n };\n}\n\nfunction styleTween(name, value, priority) {\n var t, i0;\n function tween() {\n var i = value.apply(this, arguments);\n if (i !== i0) t = (i0 = i) && styleInterpolate(name, i, priority);\n return t;\n }\n tween._value = value;\n return tween;\n}\n\nexport default function(name, value, priority) {\n var key = \"style.\" + (name += \"\");\n if (arguments.length < 2) return (key = this.tween(key)) && key._value;\n if (value == null) return this.tween(key, null);\n if (typeof value !== \"function\") throw new Error;\n return this.tween(key, styleTween(name, value, priority == null ? \"\" : priority));\n}\n","import {tweenValue} from \"./tween.js\";\n\nfunction textConstant(value) {\n return function() {\n this.textContent = value;\n };\n}\n\nfunction textFunction(value) {\n return function() {\n var value1 = value(this);\n this.textContent = value1 == null ? \"\" : value1;\n };\n}\n\nexport default function(value) {\n return this.tween(\"text\", typeof value === \"function\"\n ? textFunction(tweenValue(this, \"text\", value))\n : textConstant(value == null ? \"\" : value + \"\"));\n}\n","function textInterpolate(i) {\n return function(t) {\n this.textContent = i.call(this, t);\n };\n}\n\nfunction textTween(value) {\n var t0, i0;\n function tween() {\n var i = value.apply(this, arguments);\n if (i !== i0) t0 = (i0 = i) && textInterpolate(i);\n return t0;\n }\n tween._value = value;\n return tween;\n}\n\nexport default function(value) {\n var key = \"text\";\n if (arguments.length < 1) return (key = this.tween(key)) && key._value;\n if (value == null) return this.tween(key, null);\n if (typeof value !== \"function\") throw new Error;\n return this.tween(key, textTween(value));\n}\n","function removeFunction(id) {\n return function() {\n var parent = this.parentNode;\n for (var i in this.__transition) if (+i !== id) return;\n if (parent) parent.removeChild(this);\n };\n}\n\nexport default function() {\n return this.on(\"end.remove\", removeFunction(this._id));\n}\n","import {get, set} from \"./schedule.js\";\n\nfunction easeConstant(id, value) {\n if (typeof value !== \"function\") throw new Error;\n return function() {\n set(this, id).ease = value;\n };\n}\n\nexport default function(value) {\n var id = this._id;\n\n return arguments.length\n ? this.each(easeConstant(id, value))\n : get(this.node(), id).ease;\n}\n","import {set} from \"./schedule.js\";\n\nfunction easeVarying(id, value) {\n return function() {\n var v = value.apply(this, arguments);\n if (typeof v !== \"function\") throw new Error;\n set(this, id).ease = v;\n };\n}\n\nexport default function(value) {\n if (typeof value !== \"function\") throw new Error;\n return this.each(easeVarying(this._id, value));\n}\n","import {set} from \"./schedule.js\";\n\nexport default function() {\n var on0, on1, that = this, id = that._id, size = that.size();\n return new Promise(function(resolve, reject) {\n var cancel = {value: reject},\n end = {value: function() { if (--size === 0) resolve(); }};\n\n that.each(function() {\n var schedule = set(this, id),\n on = schedule.on;\n\n // If this node shared a dispatch with the previous node,\n // just assign the updated shared dispatch and we’re done!\n // Otherwise, copy-on-write.\n if (on !== on0) {\n on1 = (on0 = on).copy();\n on1._.cancel.push(cancel);\n on1._.interrupt.push(cancel);\n on1._.end.push(end);\n }\n\n schedule.on = on1;\n });\n\n // The selection was empty, resolve end immediately\n if (size === 0) resolve();\n });\n}\n","import {Transition, newId} from \"../transition/index.js\";\nimport schedule from \"../transition/schedule.js\";\nimport {easeCubicInOut} from \"d3-ease\";\nimport {now} from \"d3-timer\";\n\nvar defaultTiming = {\n time: null, // Set on use.\n delay: 0,\n duration: 250,\n ease: easeCubicInOut\n};\n\nfunction inherit(node, id) {\n var timing;\n while (!(timing = node.__transition) || !(timing = timing[id])) {\n if (!(node = node.parentNode)) {\n throw new Error(`transition ${id} not found`);\n }\n }\n return timing;\n}\n\nexport default function(name) {\n var id,\n timing;\n\n if (name instanceof Transition) {\n id = name._id, name = name._name;\n } else {\n id = newId(), (timing = defaultTiming).time = now(), name = name == null ? null : name + \"\";\n }\n\n for (var groups = this._groups, m = groups.length, j = 0; j < m; ++j) {\n for (var group = groups[j], n = group.length, node, i = 0; i < n; ++i) {\n if (node = group[i]) {\n schedule(node, name, id, i, group, timing || inherit(node, id));\n }\n }\n }\n\n return new Transition(groups, this._parents, name, id);\n}\n","export function cubicIn(t) {\n return t * t * t;\n}\n\nexport function cubicOut(t) {\n return --t * t * t + 1;\n}\n\nexport function cubicInOut(t) {\n return ((t *= 2) <= 1 ? t * t * t : (t -= 2) * t * t + 2) / 2;\n}\n","export function Transform(k, x, y) {\n this.k = k;\n this.x = x;\n this.y = y;\n}\n\nTransform.prototype = {\n constructor: Transform,\n scale: function(k) {\n return k === 1 ? this : new Transform(this.k * k, this.x, this.y);\n },\n translate: function(x, y) {\n return x === 0 & y === 0 ? this : new Transform(this.k, this.x + this.k * x, this.y + this.k * y);\n },\n apply: function(point) {\n return [point[0] * this.k + this.x, point[1] * this.k + this.y];\n },\n applyX: function(x) {\n return x * this.k + this.x;\n },\n applyY: function(y) {\n return y * this.k + this.y;\n },\n invert: function(location) {\n return [(location[0] - this.x) / this.k, (location[1] - this.y) / this.k];\n },\n invertX: function(x) {\n return (x - this.x) / this.k;\n },\n invertY: function(y) {\n return (y - this.y) / this.k;\n },\n rescaleX: function(x) {\n return x.copy().domain(x.range().map(this.invertX, this).map(x.invert, x));\n },\n rescaleY: function(y) {\n return y.copy().domain(y.range().map(this.invertY, this).map(y.invert, y));\n },\n toString: function() {\n return \"translate(\" + this.x + \",\" + this.y + \") scale(\" + this.k + \")\";\n }\n};\n\nexport var identity = new Transform(1, 0, 0);\n\ntransform.prototype = Transform.prototype;\n\nexport default function transform(node) {\n while (!node.__zoom) if (!(node = node.parentNode)) return identity;\n return node.__zoom;\n}\n","import {selection} from \"d3-selection\";\nimport selection_interrupt from \"./interrupt.js\";\nimport selection_transition from \"./transition.js\";\n\nselection.prototype.interrupt = selection_interrupt;\nselection.prototype.transition = selection_transition;\n","import interrupt from \"../interrupt.js\";\n\nexport default function(name) {\n return this.each(function() {\n interrupt(this, name);\n });\n}\n","import {STARTING, ENDING, ENDED} from \"./transition/schedule.js\";\n\nexport default function(node, name) {\n var schedules = node.__transition,\n schedule,\n active,\n empty = true,\n i;\n\n if (!schedules) return;\n\n name = name == null ? null : name + \"\";\n\n for (i in schedules) {\n if ((schedule = schedules[i]).name !== name) { empty = false; continue; }\n active = schedule.state > STARTING && schedule.state < ENDING;\n schedule.state = ENDED;\n schedule.timer.stop();\n schedule.on.call(active ? \"interrupt\" : \"cancel\", node, node.__data__, schedule.index, schedule.group);\n delete schedules[i];\n }\n\n if (empty) delete node.__transition;\n}\n","\nimport {\n LitElement,\n css,\n svg,\n unsafeCSS,\n} from 'lit';\nimport * as d3 from 'd3';\n\n/*\n DecidablesElement Base Class - Not intended for instantiation!\n <decidables-element>\n*/\nexport default class DecidablesElement extends LitElement {\n getComputedStyleValue(property) {\n return getComputedStyle(this).getPropertyValue(property).trim();\n }\n\n firstUpdated(changedProperties) {\n super.firstUpdated(changedProperties);\n\n // Use focus highlighting if keyboard is used at all\n d3.select(this.renderRoot.host)\n .classed('keyboard', true)\n .on('mousemove.keyboard touchstart.keyboard', (event) => {\n const element = event.currentTarget;\n d3.select(element.renderRoot.host)\n .classed('keyboard', false)\n .on('mousemove.keyboard touchstart.keyboard', null);\n })\n .on('keydown.keyboard', (event) => {\n const element = event.currentTarget;\n d3.select(element.renderRoot.host)\n .classed('keyboard', true)\n .on('keydown.keyboard mousemove.keyboard touchstart.keyboard', null);\n });\n }\n\n static get greys() {\n const grey = '#999999';\n const greys = {};\n greys.white = '#ffffff';\n greys.light75 = d3.interpolateRgb(grey, '#ffffff')(0.75);\n greys.light50 = d3.interpolateRgb(grey, '#ffffff')(0.5);\n greys.light25 = d3.interpolateRgb(grey, '#ffffff')(0.25);\n greys.grey = grey;\n greys.dark25 = d3.interpolateRgb(grey, '#000000')(0.25);\n greys.dark50 = d3.interpolateRgb(grey, '#000000')(0.5);\n greys.dark75 = d3.interpolateRgb(grey, '#000000')(0.75);\n greys.black = '#000000';\n return greys;\n }\n\n static get shadows() {\n // Material Design elevation styles\n // References:\n // https://github.com/material-components/material-components-web/tree/master/packages/mdc-elevation\n // https://codepen.io/hanger/pen/yOGvQp\n /* eslint-disable key-spacing, object-curly-newline */\n return {\n elevations: [0, 2, 4, 8, 16],\n baselineColor: '#000000',\n baselineColorString: '0, 0, 0',\n inverseBaselineColor: '#FFFFFF',\n inverseBaselineColorString: '255, 255, 255',\n opacityUmbra: 0.2,\n opacityPenumbra: 0.14,\n opacityAmbient: 0.12,\n opacityBoost: 0.2,\n mapUmbra: {// $mdc-elevation-umbra-map\n 0: {x: 0, y: 0, b: 0, s: 0}, // offset-x, offset-y, blur-radius, spread-radius\n 2: {x: 0, y: 3, b: 1, s: -2},\n 4: {x: 0, y: 2, b: 4, s: -1},\n 8: {x: 0, y: 5, b: 5, s: -3},\n 16: {x: 0, y: 8, b: 10, s: -5},\n },\n mapPenumbra: {// $mdc-elevation-penumbra-map\n 0: {x: 0, y: 0, b: 0, s: 0}, // offset-x, offset-y, blur-radius, spread-radius\n 2: {x: 0, y: 2, b: 2, s: 0},\n 4: {x: 0, y: 4, b: 5, s: 0},\n 8: {x: 0, y: 8, b: 10, s: 1},\n 16: {x: 0, y: 16, b: 24, s: 2},\n },\n mapAmbient: {// $mdc-elevation-ambient-map\n 0: {x: 0, y: 0, b: 0, s: 0}, // offset-x, offset-y, blur-radius, spread-radius\n 2: {x: 0, y: 1, b: 5, s: 0},\n 4: {x: 0, y: 1, b: 10, s: 0},\n 8: {x: 0, y: 3, b: 14, s: 2},\n 16: {x: 0, y: 6, b: 30, s: 5},\n },\n };\n /* eslint-enable key-spacing, object-curly-newline */\n }\n\n static cssBoxShadow(elevation, rotate = false, inverse = false) {\n const umbraO = this.shadows.opacityUmbra + this.shadows.opacityBoost;\n const penumbraO = this.shadows.opacityPenumbra + this.shadows.opacityBoost;\n const ambientO = this.shadows.opacityAmbient + this.shadows.opacityBoost;\n\n const umbraC = (inverse)\n ? `rgba(${this.shadows.inverseBaselineColorString}, ${umbraO})`\n : `rgba(${this.shadows.baselineColorString}, ${umbraO})`;\n const penumbraC = (inverse)\n ? `rgba(${this.shadows.inverseBaselineColorString}, ${penumbraO})`\n : `rgba(${this.shadows.baselineColorString}, ${penumbraO})`;\n const ambientC = (inverse)\n ? `rgba(${this.shadows.inverseBaselineColorString}, ${ambientO})`\n : `rgba(${this.shadows.baselineColorString}, ${ambientO})`;\n\n const umbraM = this.shadows.mapUmbra[elevation];\n const penumbraM = this.shadows.mapPenumbra[elevation];\n const ambientM = this.shadows.mapAmbient[elevation];\n\n const umbraS = (rotate)\n ? `${-umbraM.y}px ${umbraM.y / 2}px ${umbraM.b}px ${umbraM.s}px`\n : `${umbraM.y / 2}px ${umbraM.y}px ${umbraM.b}px ${umbraM.s}px`;\n const penumbraS = (rotate)\n ? `${-penumbraM.y}px ${penumbraM.y / 2}px ${penumbraM.b}px ${penumbraM.s}px`\n : `${penumbraM.y / 2}px ${penumbraM.y}px ${penumbraM.b}px ${penumbraM.s}px`;\n const ambientS = (rotate)\n ? `${-ambientM.y}px ${ambientM.y / 2}px ${ambientM.b}px ${ambientM.s}px`\n : `${ambientM.y / 2}px ${ambientM.y}px ${ambientM.b}px ${ambientM.s}px`;\n\n return `${umbraS} ${umbraC}, ${penumbraS} ${penumbraC}, ${ambientS} ${ambientC}`;\n }\n\n static get svgFilters() {\n const shadows = DecidablesElement.shadows; /* eslint-disable-line prefer-destructuring */\n\n const filters = shadows.elevations.map((z) => {\n return svg`\n <filter id=${`shadow-${z}`} x=\"-250%\" y=\"-250%\" width=\"600%\" height=\"600%\">\n <feComponentTransfer in=\"SourceAlpha\" result=\"solid\">\n <feFuncA type=\"table\" tableValues=\"0 1 1\"/>\n </feComponentTransfer>\n <feOffset in=\"solid\" result=\"offU\" dx=${shadows.mapUmbra[z].y / 2} dy=${shadows.mapUmbra[z].y} />\n <feOffset in=\"solid\" result=\"offP\" dx=${shadows.mapPenumbra[z].y / 2} dy=${shadows.mapPenumbra[z].y} />\n <feOffset in=\"solid\" result=\"offA\" dx=${shadows.mapAmbient[z].y / 2} dy=${shadows.mapAmbient[z].y} />\n ${(shadows.mapUmbra[z].s === 0)\n ? svg``\n : svg`<feMorphology in=\"offU\" result=\"spreadU\" operator=${(shadows.mapUmbra[z].s > 0) ? 'dilate' : 'erode'} radius=${Math.abs(shadows.mapUmbra[z].s)} />`\n }\n ${(shadows.mapPenumbra[z].s === 0)\n ? svg``\n : svg`<feMorphology in=\"offP\" result=\"spreadP\" operator=${(shadows.mapPenumbra[z].s > 0) ? 'dilate' : 'erode'} radius=${Math.abs(shadows.mapPenumbra[z].s)} />`\n }\n ${(shadows.mapAmbient[z].s === 0)\n ? svg``\n : svg`<feMorphology in=\"offA\" result=\"spreadA\" operator=${(shadows.mapAmbient[z].s > 0) ? 'dilate' : 'erode'} radius=${Math.abs(shadows.mapAmbient[z].s)} />`\n }\n <feGaussianBlur in=${(shadows.mapUmbra[z].s === 0) ? 'offU' : 'spreadU'} result=\"blurU\" stdDeviation=${shadows.mapUmbra[z].b / 2} />\n <feGaussianBlur in=${(shadows.mapPenumbra[z].s === 0) ? 'offP' : 'spreadP'} result=\"blurP\" stdDeviation=${shadows.mapPenumbra[z].b / 2} />\n <feGaussianBlur in=${(shadows.mapAmbient[z].s === 0) ? 'offA' : 'spreadA'} result=\"blurA\" stdDeviation=${shadows.mapAmbient[z].b / 2} />\n <feFlood in=\"SourceGraphic\" result=\"opU\" flood-color=${shadows.baselineColor} flood-opacity=${shadows.opacityUmbra + shadows.opacityBoost} />\n <feFlood in=\"SourceGraphic\" result=\"opP\" flood-color=${shadows.baselineColor} flood-opacity=${shadows.opacityPenumbra + shadows.opacityBoost} />\n <feFlood in=\"SourceGraphic\" result=\"opA\" flood-color=${shadows.baselineColor} flood-opacity=${shadows.opacityAmbient + shadows.opacityBoost} />\n <feComposite in=\"opU\" in2=\"blurU\" result=\"shU\" operator=\"in\" />\n <feComposite in=\"opP\" in2=\"blurP\" result=\"shP\" operator=\"in\" />\n <feComposite in=\"opA\" in2=\"blurA\" result=\"shA\" operator=\"in\" />\n <feMorphology in=\"solid\" result=\"smaller\" operator=\"erode\" radius=\"1\" />\n <feComposite in=\"shU\" in2=\"smaller\" result=\"finalU\" operator=\"out\" />\n <feComposite in=\"shP\" in2=\"smaller\" result=\"finalP\" operator=\"out\" />\n <feComposite in=\"shA\" in2=\"smaller\" result=\"finalA\" operator=\"out\" />\n <feMerge>\n <feMergeNode in=\"finalU\" />\n <feMergeNode in=\"finalP\" />\n <feMergeNode in=\"finalA\" />\n <feMergeNode in=\"SourceGraphic\" />\n </feMerge>\n </filter>`;\n });\n\n return svg`\n <svg class=\"defs\">\n <defs>\n ${filters}\n </defs>\n </svg>\n `;\n }\n\n static get styles() {\n return css`\n :host {\n ---shadow-0: var(--shadow-0, ${unsafeCSS(this.cssBoxShadow(0))});\n ---shadow-2: var(--shadow-2, ${unsafeCSS(this.cssBoxShadow(2))});\n ---shadow-4: var(--shadow-4, ${unsafeCSS(this.cssBoxShadow(4))});\n ---shadow-8: var(--shadow-8, ${unsafeCSS(this.cssBoxShadow(8))});\n\n ---color-background: var(--color-background, ${unsafeCSS(this.greys.white)});\n ---color-border: var(--color-border, ${unsafeCSS(this.greys.light75)});\n ---color-text: var(--color-text, ${unsafeCSS(this.greys.dark75)});\n ---color-text-inverse: var(--color-text-inverse, ${unsafeCSS(this.greys.white)});\n ---color-link: var(--color-link, ${unsafeCSS(this.greys.dark25)});\n ---color-element-background: var(--color-element-background, ${unsafeCSS(this.greys.light75)});\n ---color-element-disabled: var(--color-element-disabled, ${unsafeCSS(this.greys.light50)});\n ---color-element-enabled: var(--color-element-enabled, ${unsafeCSS(this.greys.dark25)});\n ---color-element-selected: var(--color-element-selected, ${unsafeCSS(this.greys.grey)});\n ---color-element-border: var(--color-element-border, ${unsafeCSS(this.greys.dark50)});\n ---color-element-emphasis: var(--color-element-emphasis, ${unsafeCSS(this.greys.dark75)});\n\n ---font-family-base: var(--font-family-base, \"Source Sans\", sans-serif);\n ---font-family-math: var(--font-family-math, \"Source Serif\", serif);\n\n ---border: var(--border, 1px solid var(---color-border));\n ---border-radius: var(--border-radius, 0.25rem);\n ---transition-duration: var(--transition-duration, 500ms);\n\n font-family: var(---font-family-base);\n }\n\n :host,\n :host *,\n :host *::before,\n :host *::after {\n box-sizing: border-box;\n }\n\n .math-greek {\n font-family: var(---font-family-math);\n font-style: normal;\n }\n\n .math-num {\n font-family: var(---font-family-base);\n font-style: normal;\n }\n\n .math-var {\n font-family: var(---font-family-math);\n font-style: italic;\n }\n\n .defs {\n display: block;\n\n width: 0;\n height: 0;\n }\n `;\n }\n}\n","\nimport {html, css} from 'lit';\n\nimport DecidablesElement from './decidables-element';\n\nexport default class DecidablesButton extends DecidablesElement {\n static get properties() {\n return {\n disabled: {\n attribute: 'disabled',\n type: Boolean,\n reflect: true,\n },\n };\n }\n\n constructor() {\n super();\n\n // Attributes\n this.disabled = false;\n }\n\n static get styles() {\n return [\n super.styles,\n css`\n :host {\n margin: 0.25rem;\n }\n\n button {\n width: 100%;\n height: 100%;\n padding: 0.375rem 0.75rem;\n\n font-family: var(---font-family-base);\n font-size: 1.125rem;\n line-height: 1.5;\n color: var(---color-text-inverse);\n\n border: 0;\n border-radius: var(---border-radius);\n outline: none;\n }\n\n button:disabled {\n background-color: var(--decidables-button-background-color, var(---color-element-disabled));\n outline: none;\n box-shadow: none;\n }\n\n button:enabled {\n cursor: pointer;\n\n background-color: var(--decidables-button-background-color, var(---color-element-enabled));\n outline: none;\n box-shadow: var(---shadow-2);\n }\n\n button:enabled:hover {\n outline: none;\n box-shadow: var(---shadow-4);\n }\n\n button:enabled:active {\n outline: none;\n box-shadow: var(---shadow-8);\n }\n\n :host(.keyboard) button:enabled:focus {\n outline: none;\n box-shadow: var(---shadow-4);\n }\n\n :host(.keyboard) button:enabled:focus:active {\n outline: none;\n box-shadow: var(---shadow-8);\n }\n `,\n ];\n }\n\n render() {\n return html`\n <button ?disabled=${this.disabled}>\n <slot></slot>\n </button>\n `;\n }\n}\n\ncustomElements.define('decidables-button', DecidablesButton);\n","import{nothing as t}from\"../lit-html.js\";\n/**\n * @license\n * Copyright 2018 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */const l=l=>null!=l?l:t;export{l as ifDefined};\n//# sourceMappingURL=if-defined.js.map\n","\nimport {ifDefined} from 'lit/directives/if-defined.js'; /* eslint-disable-line import/extensions */\nimport {html, css, unsafeCSS} from 'lit';\n\nimport DecidablesElement from './decidables-element';\n\nexport default class DecidablesSlider extends DecidablesElement {\n static get properties() {\n return {\n disabled: {\n attribute: 'disabled',\n type: Boolean,\n reflect: true,\n },\n max: {\n attribute: 'max',\n type: Number,\n reflect: true,\n },\n min: {\n attribute: 'min',\n type: Number,\n reflect: true,\n },\n step: {\n attribute: 'step',\n type: Number,\n reflect: true,\n },\n value: {\n attribute: 'value',\n type: Number,\n reflect: true,\n },\n };\n }\n\n constructor() {\n super();\n\n // Attributes\n this.disabled = false;\n this.max = undefined;\n this.min = undefined;\n this.step = undefined;\n this.value = undefined;\n }\n\n changed(event) {\n this.value = event.target.value;\n this.dispatchEvent(new CustomEvent('change', {\n detail: {\n value: this.value,\n },\n bubbles: true,\n }));\n }\n\n inputted(event) {\n this.value = event.target.value;\n }\n\n static get styles() {\n return [\n super.styles,\n css`\n :host {\n ---shadow-2-rotate: var(--shadow-2-rotate, ${unsafeCSS(this.cssBoxShadow(2, true, false))});\n ---shadow-4-rotate: var(--shadow-4-rotate, ${unsafeCSS(this.cssBoxShadow(4, true, false))});\n ---shadow-8-rotate: var(--shadow-8-rotate, ${unsafeCSS(this.cssBoxShadow(8, true, false))});\n\n display: flex;\n\n flex-direction: column;\n\n align-items: center;\n justify-content: center;\n }\n\n label {\n margin: 0.25rem 0.25rem 0;\n }\n\n .range {\n display: inline-block;\n\n width: 3.5rem;\n height: 4.75rem;\n margin: 0 0.25rem 0.25rem;\n }\n\n decidables-spinner {\n --decidables-spinner-input-width: 3.5rem;\n\n margin: 0 0.25rem 0.25rem;\n }\n\n /* Adapted from http://danielstern.ca/range.css/#/ */\n /* Overall */\n input[type=range] {\n width: 4.75rem;\n height: 3.5rem;\n padding: 0;\n margin: 0;\n\n background-color: unset;\n\n transform: rotate(-90deg);\n transform-origin: 2.375rem 2.375rem;\n\n /* stylelint-disable-next-line property-no-vendor-prefix */\n -webkit-appearance: none;\n }\n\n input[type=range]:enabled {\n cursor: ns-resize;\n }\n\n input[type=range]:focus {\n outline: none;\n }\n\n /* stylelint-disable-next-line no-descending-specificity */ /* stylelint ERROR */\n input[type=range]::-ms-tooltip {\n display: none;\n }\n\n /* Track */\n /* stylelint-disable-next-line no-descending-specificity */ /* stylelint ERROR */\n input[type=range]::-webkit-slider-runnable-track {\n width: 100%;\n height: 4px;\n\n background: var(---color-element-disabled);\n border: 0;\n border-radius: 2px;\n box-shadow: none;\n }\n\n input[type=range]:focus::-webkit-slider-runnable-track {\n background: var(---color-element-disabled);\n }\n\n /* stylelint-disable-next-line no-descending-specificity */ /* stylelint ERROR */\n input[type=range]::-moz-range-track {\n width: 100%;\n height: 4px;\n\n background: var(---color-element-disabled);\n border: 0;\n border-radius: 2px;\n box-shadow: none;\n }\n\n /* stylelint-disable-next-line no-descending-specificity */ /* stylelint ERROR */\n input[type=range]::-ms-track {\n width: 100%;\n height: 4px;\n\n color: transparent;\n\n background: transparent;\n border-color: transparent;\n }\n\n /* stylelint-disable-next-line no-descending-specificity */ /* stylelint ERROR */\n input[type=range]::-ms-fill-lower {\n background: #cccccc;\n /* background: var(---color-element-disabled); */\n border: 0;\n border-radius: 2px;\n box-shadow: none;\n }\n\n /* stylelint-disable-next-line no-descending-specificity */ /* stylelint ERROR */\n input[type=range]::-ms-fill-upper {\n background: #cccccc;\n /* background: var(---color-element-disabled); */\n border: 0;\n border-radius: 2px;\n box-shadow: none;\n }\n\n /* stylelint-disable-next-line no-descending-specificity */ /* stylelint ERROR */\n input[type=range]:focus::-ms-fill-lower {\n background: var(---color-element-disabled);\n }\n\n /* stylelint-disable-next-line no-descending-specificity */ /* stylelint ERROR */\n input[type=range]:focus::-ms-fill-upper {\n background: var(---color-element-disabled);\n }\n\n /* Thumb */\n /* stylelint-disable-next-line no-descending-specificity */ /* stylelint ERROR */\n input[type=range]::-webkit-slider-thumb {\n width: 10px;\n height: 20px;\n margin-top: -8px;\n\n border: 0;\n border-radius: 4px;\n\n /* stylelint-disable-next-line property-no-vendor-prefix */\n -webkit-appearance: none;\n }\n\n input[type=range]:disabled::-webkit-slider-thumb {\n background: var(---color-element-disabled);\n box-shadow: none;\n }\n\n input[type=range]:enabled::-webkit-slider-thumb {\n background: var(---color-element-enabled);\n box-shadow: var(---shadow-2-rotate);\n }\n\n input[type=range]:enabled:hover::-webkit-slider-thumb {\n box-shadow: var(---shadow-4-rotate);\n }\n\n input[type=range]:enabled:active::-webkit-slider-thumb {\n box-shadow: var(---shadow-8-rotate);\n }\n\n :host(.keyboard) input[type=range]:enabled:focus::-webkit-slider-thumb {\n box-shadow: var(---shadow-4-rotate);\n }\n\n :host(.keyboard) input[type=range]:focus:active::-webkit-slider-thumb {\n box-shadow: var(---shadow-8-rotate);\n }\n\n /* stylelint-disable-next-line no-descending-specificity */ /* stylelint ERROR */\n input[type=range]::-moz-range-thumb {\n width: 10px;\n height: 20px;\n\n border: 0;\n border-radius: 4px;\n }\n\n /* stylelint-disable-next-line no-descending-specificity */ /* stylelint ERROR */\n input[type=range]:disabled::-moz-range-thumb {\n background: var(---color-element-disabled);\n box-shadow: none;\n }\n\n /* stylelint-disable-next-line no-descending-specificity */ /* stylelint ERROR */\n input[type=range]:enabled::-moz-range-thumb {\n background: var(---color-element-enabled);\n box-shadow: var(---shadow-2-rotate);\n }\n\n /* stylelint-disable-next-line no-descending-specificity */ /* stylelint ERROR */\n input[type=range]:enabled:hover::-moz-range-thumb {\n box-shadow: var(---shadow-4-rotate);\n }\n\n /* stylelint-disable-next-line no-descending-specificity */ /* stylelint ERROR */\n input[type=range]:enabled:active::-moz-range-thumb {\n box-shadow: var(---shadow-8-rotate);\n }\n\n :host(.keyboard) input[type=range]:enabled:focus::-moz-range-thumb {\n box-shadow: var(---shadow-4-rotate);\n }\n\n :host(.keyboard) input[type=range]:enabled:focus:active::-moz-range-thumb {\n box-shadow: var(---shadow-8-rotate);\n }\n\n /* stylelint-disable-next-line no-descending-specificity */ /* stylelint ERROR */\n input[type=range]::-ms-thumb {\n width: 10px;\n height: 20px;\n margin-top: 0;\n\n background: #999999;\n /* background: var(---color-element-enabled); */\n border: 0;\n border-radius: 4px;\n box-shadow: var(---shadow-2-rotate);\n }\n\n /* stylelint-disable-next-line no-descending-specificity */ /* stylelint ERROR */\n input[type=range]:disabled::-ms-thumb {\n background: var(---color-element-disabled);\n box-shadow: none;\n }\n\n /* stylelint-disable-next-line no-descending-specificity */ /* stylelint ERROR */\n input[type=range]:enabled::-ms-thumb {\n background: var(---color-element-enabled);\n box-shadow: var(---shadow-2-rotate);\n }\n\n /* stylelint-disable-next-line no-descending-specificity */ /* stylelint ERROR */\n input[type=range]:enabled:hover::-ms-thumb {\n box-shadow: var(---shadow-4-rotate);\n }\n\n /* stylelint-disable-next-line no-descending-specificity */ /* stylelint ERROR */\n input[type=range]:enabled:active::-ms-thumb {\n box-shadow: var(---shadow-8-rotate);\n }\n\n /* stylelint-disable-next-line no-descending-specificity */ /* stylelint ERROR */\n :host(.keyboard) input[type=range]:enabled:focus::-ms-thumb {\n box-shadow: var(---shadow-4-rotate);\n }\n\n :host(.keyboard) input[type=range]:enabled:focus:active::-ms-thumb {\n box-shadow: var(---shadow-8-rotate);\n }\n `,\n ];\n }\n\n render() {\n return html`\n <label for=\"slider\">\n <slot></slot>\n </label>\n <div class=\"range\">\n <input type=\"range\" id=\"slider\" min=${ifDefined(this.min)} max=${ifDefined(this.max)} step=${ifDefined(this.step)} .value=${this.value} @change=${this.changed.bind(this)} @input=${this.inputted.bind(this)}>\n </div>\n <decidables-spinner min=${ifDefined(this.min)} max=${ifDefined(this.max)} step=${ifDefined(this.step)} .value=${this.value} @input=${this.inputted.bind(this)}></decidables-spinner>\n `;\n }\n}\n\ncustomElements.define('decidables-slider', DecidablesSlider);\n","\nimport {ifDefined} from 'lit/directives/if-defined.js'; /* eslint-disable-line import/extensions */\nimport {html, css} from 'lit';\n\nimport DecidablesElement from './decidables-element';\n\nexport default class DecidablesSpinner extends DecidablesElement {\n static get properties() {\n return {\n disabled: {\n attribute: 'disabled',\n type: Boolean,\n reflect: true,\n },\n max: {\n attribute: 'max',\n type: Number,\n reflect: true,\n },\n min: {\n attribute: 'min',\n type: Number,\n reflect: true,\n },\n step: {\n attribute: 'step',\n type: Number,\n reflect: true,\n },\n value: {\n attribute: 'value',\n type: Number,\n reflect: true,\n },\n };\n }\n\n constructor() {\n super();\n\n // Attributes\n this.disabled = false;\n this.max = undefined;\n this.min = undefined;\n this.step = undefined;\n this.value = undefined;\n }\n\n inputted(event) {\n this.value = event.target.value;\n }\n\n static get styles() {\n return [\n super.styles,\n css`\n :host {\n ---decidables-spinner-font-size: var(--decidables-spinner-font-size, 1.125rem);\n ---decidables-spinner-input-width: var(--decidables-spinner-input-width, 4rem);\n ---decidables-spinner-prefix: var(--decidables-spinner-prefix, \"\");\n\n display: block;\n }\n\n label {\n position: relative;\n display: flex;\n\n flex-direction: column;\n\n align-items: center;\n\n margin: 0;\n\n font-size: 0.75rem;\n }\n\n label::before {\n position: absolute;\n bottom: 1px;\n left: calc(50% - var(---decidables-spinner-input-width) / 2 + 0.25rem);\n\n font-size: var(---decidables-spinner-font-size);\n line-height: normal;\n\n content: var(---decidables-spinner-prefix);\n }\n\n input[type=number] {\n width: var(---decidables-spinner-input-width);\n\n font-family: var(---font-family-base);\n font-size: var(---decidables-spinner-font-size);\n color: inherit;\n text-align: right;\n\n background: none;\n border: 0;\n border-radius: 0;\n outline: none;\n box-shadow: var(---shadow-2);\n\n -webkit-appearance: none; /* stylelint-disable-line property-no-vendor-prefix */\n }\n\n input[type=number]:hover {\n box-shadow: var(---shadow-4);\n }\n\n input[type=number]:focus,\n input[type=number]:active {\n box-shadow: var(---shadow-8);\n }\n\n input[type=number]:disabled {\n color: var(---color-text);\n\n border: 0;\n box-shadow: none;\n\n /* HACK: Use correct text color in Safari */\n -webkit-opacity: 1;\n /* HACK: Hide spinners in disabled input for Firefox and Safari */\n -moz-appearance: textfield; /* stylelint-disable-line property-no-vendor-prefix */\n /* HACK: Use correct text color in Safari */\n -webkit-text-fill-color: var(---color-text);\n }\n\n /* HACK: Hide spinners in disabled input for Firefox and Safari */\n input[type=number]:disabled::-webkit-outer-spin-button,\n input[type=number]:disabled::-webkit-inner-spin-button {\n margin: 0;\n -webkit-appearance: none; /* stylelint-disable-line property-no-vendor-prefix */\n }\n `,\n ];\n }\n\n render() {\n return html`\n <label>\n <slot></slot>\n <input ?disabled=${this.disabled} type=\"number\" min=${ifDefined(this.min)} max=${ifDefined(this.max)} step=${ifDefined(this.step)} .value=${this.value} @input=${this.inputted.bind(this)}>\n </label>\n `;\n }\n}\n\ncustomElements.define('decidables-spinner', DecidablesSpinner);\n","\nimport {html, css} from 'lit';\n\nimport DecidablesElement from './decidables-element';\n\nexport default class DecidablesSwitch extends DecidablesElement {\n static get properties() {\n return {\n checked: {\n attribute: 'checked',\n type: Boolean,\n reflect: true,\n },\n disabled: {\n attribute: 'disabled',\n type: Boolean,\n reflect: true,\n },\n };\n }\n\n constructor() {\n super();\n\n // Attributes\n this.checked = false;\n this.disabled = false;\n }\n\n changed(event) {\n this.checked = event.target.checked;\n this.dispatchEvent(new CustomEvent('change', {\n detail: {\n checked: this.checked,\n },\n bubbles: true,\n }));\n }\n\n static get styles() {\n return [\n super.styles,\n css`\n :host {\n display: flex;\n\n flex-direction: column;\n\n align-items: center;\n justify-content: center;\n }\n\n /* Adapted from https://codepen.io/guuslieben/pen/YyPRVP */\n input[type=checkbox] {\n /* visuallyhidden: https://github.com/h5bp/html5-boilerplate/blob/master/dist/doc/css.md */\n position: absolute;\n\n width: 1px;\n height: 1px;\n padding: 0;\n margin: -1px;\n overflow: hidden;\n clip: rect(0 0 0 0);\n\n white-space: nowrap;\n\n border: 0;\n clip-path: inset(100%); /* May cause a performance issue: https://github.com/h5bp/html5-boilerplate/issues/2021 */\n }\n\n input[type=checkbox] + label {\n order: 1;\n\n margin: 0 0.25rem 0.25rem;\n\n font-weight: 400;\n }\n\n input[type=checkbox] + label + label {\n position: relative;\n\n min-width: 24px;\n padding: 0 0 36px;\n margin: 0.25rem 0.25rem 0;\n\n font-weight: 400;\n\n outline: none;\n }\n\n input[type=checkbox] + label + label::before,\n input[type=checkbox] + label + label::after {\n position: absolute;\n\n left: 50%;\n\n margin: 0;\n\n content: \"\";\n\n outline: 0;\n\n transition: all var(---transition-duration) ease;\n transform: translate(-50%, 0);\n }\n\n input[type=checkbox] + label + label::before {\n bottom: 1px;\n\n width: 8px;\n height: 34px;\n\n background-color: var(---color-element-disabled);\n border-radius: 4px;\n }\n\n input[type=checkbox] + label + label::after {\n bottom: 0;\n\n width: 18px;\n height: 18px;\n\n background-color: var(---color-element-enabled);\n border-radius: 50%;\n box-shadow: var(---shadow-2);\n }\n\n input[type=checkbox]:checked + label + label::after {\n transform: translate(-50%, -100%);\n }\n\n input[type=checkbox]:disabled + label + label::after {\n background-color: var(---color-element-disabled);\n box-shadow: none;\n }\n\n input[type=checkbox]:enabled + label,\n input[type=checkbox]:enabled + label + label {\n cursor: pointer;\n }\n\n input[type=checkbox]:enabled + label:hover + label::after,\n input[type=checkbox]:enabled + label + label:hover::after {\n box-shadow: var(---shadow-4);\n }\n\n input[type=checkbox]:enabled + label:active + label::after,\n input[type=checkbox]:enabled + label + label:active::after {\n box-shadow: var(---shadow-8);\n }\n\n /* stylelint-disable-next-line selector-max-compound-selectors */\n :host(.keyboard) input[type=checkbox]:enabled:focus + label + label::after {\n box-shadow: var(---shadow-4);\n }\n\n /* stylelint-disable-next-line selector-max-compound-selectors */\n :host(.keyboard) input[type=checkbox]:enabled:focus + label + label:active::after,\n :host(.keyboard) input[type=checkbox]:enabled:focus:active + label + label::after {\n box-shadow: var(---shadow-8);\n }\n `,\n ];\n }\n\n render() {\n return html`\n <input type=\"checkbox\" id=\"switch\" ?checked=${this.checked} ?disabled=${this.disabled} @change=${this.changed.bind(this)}>\n <label for=\"switch\">\n <slot name=\"off-label\"></slot>\n </label>\n <label for=\"switch\">\n <slot></slot>\n </label>\n `;\n }\n}\n\ncustomElements.define('decidables-switch', DecidablesSwitch);\n","\nimport {html, css} from 'lit';\n\nimport DecidablesElement from './decidables-element';\n\nexport default class DecidablesToggle extends DecidablesElement {\n static get properties() {\n return {\n disabled: {\n attribute: 'disabled',\n type: Boolean,\n reflect: true,\n },\n };\n }\n\n constructor() {\n super();\n\n // Attributes\n this.disabled = false;\n }\n\n static get styles() {\n return [\n super.styles,\n css`\n fieldset {\n display: flex;\n\n flex-direction: column;\n\n align-items: stretch;\n justify-content: center;\n\n margin: 0.25rem;\n\n border: 0;\n }\n\n legend {\n text-align: center;\n }\n `,\n ];\n }\n\n render() {\n return html`\n <fieldset ?disabled=${this.disabled}>\n <legend><slot name=\"label\"></slot></legend>\n <slot></slot>\n </fieldset>\n `;\n }\n}\n\ncustomElements.define('decidables-toggle', DecidablesToggle);\n","\nimport {html, css} from 'lit';\n\nimport DecidablesElement from './decidables-element';\n\nexport default class DecidablesToggleOption extends DecidablesElement {\n static get properties() {\n return {\n checked: {\n attribute: 'checked',\n type: Boolean,\n reflect: true,\n },\n disabled: {\n attribute: 'disabled',\n type: Boolean,\n reflect: true,\n },\n name: {\n attribute: 'name',\n type: String,\n reflect: true,\n },\n value: {\n attribute: 'value',\n type: String,\n reflect: true,\n },\n };\n }\n\n constructor() {\n super();\n\n // Attributes\n this.checked = false;\n this.disabled = false;\n this.name = undefined;\n this.value = undefined;\n }\n\n changed(event) {\n this.checked = event.target.checked;\n this.dispatchEvent(new CustomEvent('change', {\n detail: {\n checked: this.checked,\n value: this.value,\n },\n bubbles: true,\n }));\n }\n\n static get styles() {\n return [\n super.styles,\n css`\n :host {\n display: flex;\n }\n\n input[type=radio] {\n /* visuallyhidden: https://github.com/h5bp/html5-boilerplate/blob/master/dist/doc/css.md */\n position: absolute;\n\n width: 1px;\n height: 1px;\n padding: 0;\n margin: -1px;\n overflow: hidden;\n clip: rect(0 0 0 0);\n\n white-space: nowrap;\n\n border: 0;\n clip-path: inset(100%); /* May cause a performance issue: https://github.com/h5bp/html5-boilerplate/issues/2021 */\n }\n\n input[type=radio] + label {\n width: 100%;\n padding: 0.375rem 0.75rem;\n\n font-family: var(---font-family-base);\n font-size: 1.125rem;\n line-height: 1.5;\n color: var(---color-text-inverse);\n text-align: center;\n\n cursor: pointer;\n\n background-color: var(---color-element-enabled);\n border: 0;\n border-radius: 0;\n outline: none;\n\n box-shadow: var(---shadow-2);\n }\n\n input[type=radio]:checked + label {\n background-color: var(---color-element-selected);\n outline: none;\n box-shadow: var(---shadow-2);\n }\n\n input[type=radio] + label:hover {\n z-index: 1;\n\n outline: none;\n box-shadow: var(---shadow-4);\n }\n\n input[type=radio] + label:active {\n z-index: 2;\n\n outline: none;\n box-shadow: var(---shadow-8);\n }\n\n :host(:first-of-type) input[type=radio] + label {\n border-top-left-radius: 0.25rem;\n border-top-right-radius: 0.25rem;\n }\n\n :host(:last-of-type) input[type=radio] + label {\n border-bottom-right-radius: 0.25rem;\n border-bottom-left-radius: 0.25rem;\n }\n\n :host(.keyboard) input[type=radio]:focus + label {\n z-index: 1;\n\n outline: none;\n box-shadow: var(---shadow-4);\n }\n\n :host(.keyboard) input[type=radio]:focus:checked + label {\n z-index: 1;\n\n background-color: var(---color-element-selected);\n outline: none;\n box-shadow: var(---shadow-4);\n }\n\n :host(.keyboard) input[type=radio]:focus + label:active {\n z-index: 2;\n\n outline: none;\n box-shadow: var(---shadow-8);\n }\n `,\n ];\n }\n\n render() {\n return html`\n <input type=\"radio\" id=\"toggle-option\" name=${this.name} value=${this.value} .checked=${this.checked} @change=${this.changed.bind(this)}>\n <label for=\"toggle-option\">\n <slot></slot>\n </label>\n `;\n }\n}\n\ncustomElements.define('decidables-toggle-option', DecidablesToggleOption);\n","\n/*\n Attribute: Space-separated sequence of numbers\n Property: Array of numbers\n*/\nconst DecidablesConverterArray = {\n fromAttribute: (value) => {\n return value.split(/\\s+/).map((item) => { return Number.parseFloat(item); });\n },\n toAttribute: (value) => {\n return (value.length) ? value.map((item) => { return item.toFixed(3); }).join(' ') : null;\n },\n};\n\nexport default DecidablesConverterArray;\n","\n/*\n Attribute: Space-separated sequence of strings\n Property: Set of strings\n*/\nconst DecidablesConverterSet = {\n fromAttribute: (value) => {\n return new Set(value.split(/\\s+/));\n },\n toAttribute: (value) => {\n return (value.size) ? [...value].join(' ') : null;\n },\n};\n\nexport default DecidablesConverterSet;\n"],"names":["t","window","e","ShadowRoot","ShadyCSS","nativeShadow","Document","prototype","CSSStyleSheet","s","Symbol","n","WeakMap","o$6","constructor","this","_$cssResult$","Error","cssText","styleSheet","o","length","get","replaceSync","set","toString","r","c","cssRules","trustedTypes","h","emptyScript","reactiveElementPolyfillSupport","toAttribute","i","Boolean","Object","Array","JSON","stringify","fromAttribute","Number","parse","a","notEqual","l","attribute","type","String","converter","reflect","hasChanged","HTMLElement","super","_$Ei","Map","isUpdatePending","hasUpdated","_$El","u","addInitializer","finalize","push","observedAttributes","elementProperties","forEach","_$Ep","_$Ev","createProperty","state","noAccessor","hasOwnProperty","getPropertyDescriptor","defineProperty","requestUpdate","configurable","enumerable","getPropertyOptions","finalized","getPrototypeOf","properties","getOwnPropertyNames","getOwnPropertySymbols","elementStyles","finalizeStyles","styles","isArray","Set","flat","reverse","unshift","toLowerCase","_$E_","Promise","enableUpdating","_$AL","_$Eg","addController","_$ES","renderRoot","isConnected","hostConnected","call","removeController","splice","indexOf","createRenderRoot","shadowRoot","attachShadow","shadowRootOptions","adoptStyles","adoptedStyleSheets","map","document","createElement","litNonce","setAttribute","textContent","appendChild","connectedCallback","disconnectedCallback","hostDisconnected","attributeChangedCallback","_$AK","_$EO","removeAttribute","has","_$EC","_$Ej","reject","scheduleUpdate","performUpdate","shouldUpdate","willUpdate","hostUpdate","update","_$Ek","_$AE","hostUpdated","firstUpdated","updated","updateComplete","getUpdateComplete","d$2","d","mode","ReactiveElement","reactiveElementVersions","createPolicy","createHTML","Math","random","slice","createMarker","createComment","f","_","m","p","RegExp","g","$","y","T","for","A","E","C","createTreeWalker","P","N$1","N","strings","_$litType$","parts","v","getTemplateHtml","lastIndex","exec","test","w","startsWith","V","el","currentNode","content","firstChild","remove","append","childNodes","nextNode","nodeType","hasAttributes","getAttributeNames","endsWith","getAttribute","split","index","name","ctor","H","L","z","k","tagName","data","innerHTML","S","_$Co","_$Cl","_$litDirective$","_$AO","_$AT","_$AS","values","M$1","_$AV","_$AN","_$AD","_$AM","parentNode","_$AU","creationScope","importNode","R","nextSibling","Z","_$AI","R$1","_$AH","_$AA","_$AB","options","_$Cp","startNode","endNode","_$AR","iterator","insertBefore","createTextNode","_$AC","M","_$AP","setConnected","k$1","element","fill","j","arguments","I","capture","once","passive","removeEventListener","addEventListener","handleEvent","host","B","litHtmlPolyfillSupport","litHtmlVersions","s$3","css","reduce","_$Et","_$Eh","_$Eu","_$Em","_$EU","a$1","globalThis","x","b","_$Cm","renderOptions","_$Do","renderBefore","render","_$litPart$","_$litElement$","litElementHydrateSupport","LitElement","litElementPolyfillSupport","litElementVersions","noop","value","dispatch","Dispatch","callback","concat","on","typename","types","trim","copy","that","args","apply","xhtml","namespaces","svg","xlink","xml","xmlns","namespace","prefix","space","local","creatorInherit","ownerDocument","uri","namespaceURI","documentElement","createElementNS","creatorFixed","fullname","creator","none","selector","querySelector","empty","selectorAll","querySelectorAll","arrayAll","select","from","array","matcher","matches","childMatcher","node","find","childFirst","firstElementChild","filter","children","sparse","EnterNode","parent","datum","_next","_parent","__data__","bindIndex","group","enter","exit","groupLength","dataLength","bindKey","key","keyValue","nodeByKeyValue","keyValues","delete","arraylike","ascending","NaN","attrRemove","attrRemoveNS","removeAttributeNS","attrConstant","attrConstantNS","setAttributeNS","attrFunction","attrFunctionNS","defaultView","styleRemove","style","removeProperty","styleConstant","priority","setProperty","styleFunction","styleValue","getPropertyValue","getComputedStyle","propertyRemove","propertyConstant","propertyFunction","classArray","string","classList","ClassList","_node","_names","classedAdd","names","list","add","classedRemove","classedTrue","classedFalse","classedFunction","textRemove","textConstant","textFunction","htmlRemove","htmlConstant","htmlFunction","raise","lower","previousSibling","constantNull","removeChild","selection_cloneShallow","clone","cloneNode","selection_cloneDeep","onRemove","__on","listener","onAdd","event","contextListener","dispatchEvent","params","CustomEvent","createEvent","initEvent","bubbles","cancelable","detail","dispatchConstant","dispatchFunction","child","next","join","contains","root","Selection","groups","parents","_groups","_parents","selection","define","factory","extend","definition","create","Color","subgroups","subnode","subgroup","selectAll","selectChild","match","childFind","selectChildren","childrenFilter","bind","constant","enterGroup","updateGroup","previous","i0","i1","_enter","_exit","onenter","onupdate","onexit","merge","order","context","groups0","groups1","m0","m1","min","merges","group0","group1","compareDocumentPosition","sort","compare","compareNode","sortgroups","sortgroup","nodes","size","each","attr","getAttributeNS","property","classed","text","html","insert","before","deep","typenames","parseTypenames","darker","brighter","reI","reN","reP","reHex","reRgbInteger","reRgbPercent","reRgbaInteger","reRgbaPercent","reHslPercent","reHslaPercent","named","aliceblue","antiquewhite","aqua","aquamarine","azure","beige","bisque","black","blanchedalmond","blue","blueviolet","brown","burlywood","cadetblue","chartreuse","chocolate","coral","cornflowerblue","cornsilk","crimson","cyan","darkblue","darkcyan","darkgoldenrod","darkgray","darkgreen","darkgrey","darkkhaki","darkmagenta","darkolivegreen","darkorange","darkorchid","darkred","darksalmon","darkseagreen","darkslateblue","darkslategray","darkslategrey","darkturquoise","darkviolet","deeppink","deepskyblue","dimgray","dimgrey","dodgerblue","firebrick","floralwhite","forestgreen","fuchsia","gainsboro","ghostwhite","gold","goldenrod","gray","green","greenyellow","grey","honeydew","hotpink","indianred","indigo","ivory","khaki","lavender","lavenderblush","lawngreen","lemonchiffon","lightblue","lightcoral","lightcyan","lightgoldenrodyellow","lightgray","lightgreen","lightgrey","lightpink","lightsalmon","lightseagreen","lightskyblue","lightslategray","lightslategrey","lightsteelblue","lightyellow","lime","limegreen","linen","magenta","maroon","mediumaquamarine","mediumblue","mediumorchid","mediumpurple","mediumseagreen","mediumslateblue","mediumspringgreen","mediumturquoise","mediumvioletred","midnightblue","mintcream","mistyrose","moccasin","navajowhite","navy","oldlace","olive","olivedrab","orange","orangered","orchid","palegoldenrod","palegreen","paleturquoise","palevioletred","papayawhip","peachpuff","peru","pink","plum","powderblue","purple","rebeccapurple","red","rosybrown","royalblue","saddlebrown","salmon","sandybrown","seagreen","seashell","sienna","silver","skyblue","slateblue","slategray","slategrey","snow","springgreen","steelblue","tan","teal","thistle","tomato","turquoise","violet","wheat","white","whitesmoke","yellow","yellowgreen","color_formatHex","rgb","formatHex","color_formatRgb","formatRgb","color","format","parseInt","rgbn","Rgb","rgba","hsla","opacity","rgbConvert","rgb_formatHex","hex","rgb_formatRgb","isNaN","max","round","Hsl","hslConvert","hsl2rgb","m2","channels","assign","displayable","formatHsl","pow","gamma","nogamma","exponential","linear","interpolateRgb","rgbGamma","start","end","colorRgb","interpolateNumber","reA","reB","source","interpolateString","am","bm","bs","bi","q","number","one","zero","svgNode","degrees","PI","identity","translateX","translateY","rotate","skewX","scaleX","scaleY","decompose","sqrt","atan2","atan","interpolateTransform","pxComma","pxParen","degParen","pop","xa","ya","xb","yb","translate","scale","taskHead","taskTail","interpolateTransformCss","DOMMatrix","WebKitCSSMatrix","isIdentity","interpolateTransformSvg","transform","baseVal","consolidate","matrix","frame","timeout","interval","pokeDelay","clockLast","clockNow","clockSkew","clock","performance","now","Date","setFrame","requestAnimationFrame","setTimeout","clearNow","Timer","_call","_time","timer","delay","time","restart","wake","undefined","timerFlush","t0","t2","t1","Infinity","sleep","nap","poke","clearTimeout","clearInterval","setInterval","elapsed","stop","TypeError","emptyOn","emptyTween","CREATED","SCHEDULED","STARTING","STARTED","RUNNING","ENDING","ENDED","schedule","id","timing","schedules","__transition","self","tween","tick","duration","ease","init","tweenRemove","tween0","tween1","tweenFunction","tweenValue","transition","_id","interpolate","value1","string00","interpolate0","string1","string0","string10","attrTweenNS","attrInterpolateNS","_value","attrTween","attrInterpolate","delayFunction","delayConstant","durationFunction","durationConstant","Transition","_name","newId","selection_prototype","inherit","id0","id1","on0","on1","sit","every","onFunction","styleTween","styleNull","listener0","styleMaybeRemove","styleInterpolate","textTween","textInterpolate","removeFunction","easeConstant","easeVarying","resolve","cancel","interrupt","defaultTiming","Transform","active","point","applyX","applyY","invert","location","invertX","invertY","rescaleX","domain","range","rescaleY","DecidablesElement","getComputedStyleValue","changedProperties","d3","currentTarget","greys","light75","light50","light25","dark25","dark50","dark75","shadows","elevations","baselineColor","baselineColorString","inverseBaselineColor","inverseBaselineColorString","opacityUmbra","opacityPenumbra","opacityAmbient","opacityBoost","mapUmbra","mapPenumbra","mapAmbient","cssBoxShadow","elevation","inverse","umbraO","penumbraO","ambientO","umbraC","penumbraC","ambientC","umbraM","penumbraM","ambientM","svgFilters","filters","abs","unsafeCSS","DecidablesButton","disabled","customElements","DecidablesSlider","step","changed","target","inputted","ifDefined","DecidablesSpinner","DecidablesSwitch","checked","DecidablesToggle","DecidablesToggleOption","DecidablesConverterArray","item","parseFloat","toFixed","DecidablesConverterSet"],"mappings":"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","x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,97]}