function t(t,e,n,s){var r,i=arguments.length,o=i<3?e:null===s?s=Object.getOwnPropertyDescriptor(e,n):s;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)o=Reflect.decorate(t,e,n,s);else for(var a=t.length-1;a>=0;a--)(r=t[a])&&(o=(i<3?r(o):i>3?r(e,n,o):r(e,n))||o);return i>3&&o&&Object.defineProperty(e,n,o),o
/**
 * @license
 * Copyright 2019 Google LLC
 * SPDX-License-Identifier: BSD-3-Clause
 */}const e=window,n=e.ShadowRoot&&(void 0===e.ShadyCSS||e.ShadyCSS.nativeShadow)&&"adoptedStyleSheets"in Document.prototype&&"replace"in CSSStyleSheet.prototype,s=Symbol(),r=new WeakMap;class i{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 e=this.t;if(n&&void 0===t){const n=void 0!==e&&1===e.length;n&&(t=r.get(e)),void 0===t&&((this.o=t=new CSSStyleSheet).replaceSync(this.cssText),n&&r.set(e,t))}return t}toString(){return this.cssText}}const o=(t,...e)=>{const n=1===t.length?t[0]:e.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 i(n,t,s)},a=(t,s)=>{n?t.adoptedStyleSheets=s.map(t=>t instanceof CSSStyleSheet?t:t.styleSheet):s.forEach(n=>{const s=document.createElement("style"),r=e.litNonce;void 0!==r&&s.setAttribute("nonce",r),s.textContent=n.cssText,t.appendChild(s)})},l=n?t=>t:t=>t instanceof CSSStyleSheet?(t=>{let e="";for(const n of t.cssRules)e+=n.cssText;return(t=>new i("string"==typeof t?t:t+"",void 0,s))(e)})(t):t
/**
 * @license
 * Copyright 2017 Google LLC
 * SPDX-License-Identifier: BSD-3-Clause
 */;var u;const c=window,h=c.trustedTypes,d=h?h.emptyScript:"",m=c.reactiveElementPolyfillSupport,f={toAttribute(t,e){switch(e){case Boolean:t=t?d:null;break;case Object:case Array:t=null==t?t:JSON.stringify(t)}return t},fromAttribute(t,e){let n=t;switch(e){case Boolean:n=null!==t;break;case Number:n=null===t?null:Number(t);break;case Object:case Array:try{n=JSON.parse(t)}catch(t){n=null}}return n}},y=(t,e)=>e!==t&&(e==e||t==t),p={attribute:!0,type:String,converter:f,reflect:!1,hasChanged:y};class g extends HTMLElement{constructor(){super(),this._$Ei=new Map,this.isUpdatePending=!1,this.hasUpdated=!1,this._$El=null,this.u()}static addInitializer(t){var e;this.finalize(),(null!==(e=this.h)&&void 0!==e?e:this.h=[]).push(t)}static get observedAttributes(){this.finalize();const t=[];return this.elementProperties.forEach((e,n)=>{const s=this._$Ep(n,e);void 0!==s&&(this._$Ev.set(s,n),t.push(s))}),t}static createProperty(t,e=p){if(e.state&&(e.attribute=!1),this.finalize(),this.elementProperties.set(t,e),!e.noAccessor&&!this.prototype.hasOwnProperty(t)){const n="symbol"==typeof t?Symbol():"__"+t,s=this.getPropertyDescriptor(t,n,e);void 0!==s&&Object.defineProperty(this.prototype,t,s)}}static getPropertyDescriptor(t,e,n){return{get(){return this[e]},set(s){const r=this[t];this[e]=s,this.requestUpdate(t,r,n)},configurable:!0,enumerable:!0}}static getPropertyOptions(t){return this.elementProperties.get(t)||p}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,e=[...Object.getOwnPropertyNames(t),...Object.getOwnPropertySymbols(t)];for(const n of e)this.createProperty(n,t[n])}return this.elementStyles=this.finalizeStyles(this.styles),!0}static finalizeStyles(t){const e=[];if(Array.isArray(t)){const n=new Set(t.flat(1/0).reverse());for(const t of n)e.unshift(l(t))}else void 0!==t&&e.push(l(t));return e}static _$Ep(t,e){const n=e.attribute;return!1===n?void 0:"string"==typeof n?n:"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 e,n;(null!==(e=this._$ES)&&void 0!==e?e:this._$ES=[]).push(t),void 0!==this.renderRoot&&this.isConnected&&(null===(n=t.hostConnected)||void 0===n||n.call(t))}removeController(t){var e;null===(e=this._$ES)||void 0===e||e.splice(this._$ES.indexOf(t)>>>0,1)}_$Eg(){this.constructor.elementProperties.forEach((t,e)=>{this.hasOwnProperty(e)&&(this._$Ei.set(e,this[e]),delete this[e])})}createRenderRoot(){var t;const e=null!==(t=this.shadowRoot)&&void 0!==t?t:this.attachShadow(this.constructor.shadowRootOptions);return a(e,this.constructor.elementStyles),e}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 e;return null===(e=t.hostConnected)||void 0===e?void 0:e.call(t)})}enableUpdating(t){}disconnectedCallback(){var t;null===(t=this._$ES)||void 0===t||t.forEach(t=>{var e;return null===(e=t.hostDisconnected)||void 0===e?void 0:e.call(t)})}attributeChangedCallback(t,e,n){this._$AK(t,n)}_$EO(t,e,n=p){var s;const r=this.constructor._$Ep(t,n);if(void 0!==r&&!0===n.reflect){const i=(void 0!==(null===(s=n.converter)||void 0===s?void 0:s.toAttribute)?n.converter:f).toAttribute(e,n.type);this._$El=t,null==i?this.removeAttribute(r):this.setAttribute(r,i),this._$El=null}}_$AK(t,e){var n;const s=this.constructor,r=s._$Ev.get(t);if(void 0!==r&&this._$El!==r){const t=s.getPropertyOptions(r),i="function"==typeof t.converter?{fromAttribute:t.converter}:void 0!==(null===(n=t.converter)||void 0===n?void 0:n.fromAttribute)?t.converter:f;this._$El=r,this[r]=i.fromAttribute(e,t.type),this._$El=null}}requestUpdate(t,e,n){let s=!0;void 0!==t&&(((n=n||this.constructor.getPropertyOptions(t)).hasChanged||y)(this[t],e)?(this._$AL.has(t)||this._$AL.set(t,e),!0===n.reflect&&this._$El!==t&&(void 0===this._$EC&&(this._$EC=new Map),this._$EC.set(t,n))):s=!1),!this.isUpdatePending&&s&&(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,e)=>this[e]=t),this._$Ei=void 0);let e=!1;const n=this._$AL;try{e=this.shouldUpdate(n),e?(this.willUpdate(n),null===(t=this._$ES)||void 0===t||t.forEach(t=>{var e;return null===(e=t.hostUpdate)||void 0===e?void 0:e.call(t)}),this.update(n)):this._$Ek()}catch(t){throw e=!1,this._$Ek(),t}e&&this._$AE(n)}willUpdate(t){}_$AE(t){var e;null===(e=this._$ES)||void 0===e||e.forEach(t=>{var e;return null===(e=t.hostUpdated)||void 0===e?void 0:e.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,e)=>this._$EO(e,this[e],t)),this._$EC=void 0),this._$Ek()}updated(t){}firstUpdated(t){}}
/**
 * @license
 * Copyright 2017 Google LLC
 * SPDX-License-Identifier: BSD-3-Clause
 */
var v;g.finalized=!0,g.elementProperties=new Map,g.elementStyles=[],g.shadowRootOptions={mode:"open"},null==m||m({ReactiveElement:g}),(null!==(u=c.reactiveElementVersions)&&void 0!==u?u:c.reactiveElementVersions=[]).push("1.6.1");const w=window,S=w.trustedTypes,b=S?S.createPolicy("lit-html",{createHTML:t=>t}):void 0,$=`lit$${(Math.random()+"").slice(9)}$`,_="?"+$,T=`<${_}>`,O=document,k=()=>O.createComment(""),E=t=>null===t||"object"!=typeof t&&"function"!=typeof t,N=Array.isArray,M="[ \t\n\f\r]",A=/<(?:(!--|\/[^a-zA-Z])|(\/?[a-zA-Z][^>\s]*)|(\/?$))/g,C=/-->/g,x=/>/g,D=RegExp(`>|${M}(?:([^\\s"'>=/]+)(${M}*=${M}*(?:[^ \t\n\f\r"'\`<>=]|("|')|))|$)`,"g"),I=/'/g,V=/"/g,L=/^(?:script|style|textarea|title)$/i,F=(t=>(e,...n)=>({_$litType$:t,strings:e,values:n}))(1),Z=Symbol.for("lit-noChange"),z=Symbol.for("lit-nothing"),U=new WeakMap,j=O.createTreeWalker(O,129,null,!1),H=(t,e)=>{const n=t.length-1,s=[];let r,i=2===e?"<svg>":"",o=A;for(let e=0;e<n;e++){const n=t[e];let a,l,u=-1,c=0;for(;c<n.length&&(o.lastIndex=c,l=o.exec(n),null!==l);)c=o.lastIndex,o===A?"!--"===l[1]?o=C:void 0!==l[1]?o=x:void 0!==l[2]?(L.test(l[2])&&(r=RegExp("</"+l[2],"g")),o=D):void 0!==l[3]&&(o=D):o===D?">"===l[0]?(o=null!=r?r:A,u=-1):void 0===l[1]?u=-2:(u=o.lastIndex-l[2].length,a=l[1],o=void 0===l[3]?D:'"'===l[3]?V:I):o===V||o===I?o=D:o===C||o===x?o=A:(o=D,r=void 0);const h=o===D&&t[e+1].startsWith("/>")?" ":"";i+=o===A?n+T:u>=0?(s.push(a),n.slice(0,u)+"$lit$"+n.slice(u)+$+h):n+$+(-2===u?(s.push(void 0),e):h)}const a=i+(t[n]||"<?>")+(2===e?"</svg>":"");if(!Array.isArray(t)||!t.hasOwnProperty("raw"))throw Error("invalid template strings array");return[void 0!==b?b.createHTML(a):a,s]};class P{constructor({strings:t,_$litType$:e},n){let s;this.parts=[];let r=0,i=0;const o=t.length-1,a=this.parts,[l,u]=H(t,e);if(this.el=P.createElement(l,n),j.currentNode=this.el.content,2===e){const t=this.el.content,e=t.firstChild;e.remove(),t.append(...e.childNodes)}for(;null!==(s=j.nextNode())&&a.length<o;){if(1===s.nodeType){if(s.hasAttributes()){const t=[];for(const e of s.getAttributeNames())if(e.endsWith("$lit$")||e.startsWith($)){const n=u[i++];if(t.push(e),void 0!==n){const t=s.getAttribute(n.toLowerCase()+"$lit$").split($),e=/([.?@])?(.*)/.exec(n);a.push({type:1,index:r,name:e[2],strings:t,ctor:"."===e[1]?Y:"?"===e[1]?B:"@"===e[1]?Q:J})}else a.push({type:6,index:r})}for(const e of t)s.removeAttribute(e)}if(L.test(s.tagName)){const t=s.textContent.split($),e=t.length-1;if(e>0){s.textContent=S?S.emptyScript:"";for(let n=0;n<e;n++)s.append(t[n],k()),j.nextNode(),a.push({type:2,index:++r});s.append(t[e],k())}}}else if(8===s.nodeType)if(s.data===_)a.push({type:2,index:r});else{let t=-1;for(;-1!==(t=s.data.indexOf($,t+1));)a.push({type:7,index:r}),t+=$.length-1}r++}}static createElement(t,e){const n=O.createElement("template");return n.innerHTML=t,n}}function R(t,e,n=t,s){var r,i,o,a;if(e===Z)return e;let l=void 0!==s?null===(r=n._$Co)||void 0===r?void 0:r[s]:n._$Cl;const u=E(e)?void 0:e._$litDirective$;return(null==l?void 0:l.constructor)!==u&&(null===(i=null==l?void 0:l._$AO)||void 0===i||i.call(l,!1),void 0===u?l=void 0:(l=new u(t),l._$AT(t,n,s)),void 0!==s?(null!==(o=(a=n)._$Co)&&void 0!==o?o:a._$Co=[])[s]=l:n._$Cl=l),void 0!==l&&(e=R(t,l._$AS(t,e.values),l,s)),e}class q{constructor(t,e){this._$AV=[],this._$AN=void 0,this._$AD=t,this._$AM=e}get parentNode(){return this._$AM.parentNode}get _$AU(){return this._$AM._$AU}u(t){var e;const{el:{content:n},parts:s}=this._$AD,r=(null!==(e=null==t?void 0:t.creationScope)&&void 0!==e?e:O).importNode(n,!0);j.currentNode=r;let i=j.nextNode(),o=0,a=0,l=s[0];for(;void 0!==l;){if(o===l.index){let e;2===l.type?e=new W(i,i.nextSibling,this,t):1===l.type?e=new l.ctor(i,l.name,l.strings,this,t):6===l.type&&(e=new K(i,this,t)),this._$AV.push(e),l=s[++a]}o!==(null==l?void 0:l.index)&&(i=j.nextNode(),o++)}return r}v(t){let e=0;for(const n of this._$AV)void 0!==n&&(void 0!==n.strings?(n._$AI(t,n,e),e+=n.strings.length-2):n._$AI(t[e])),e++}}class W{constructor(t,e,n,s){var r;this.type=2,this._$AH=z,this._$AN=void 0,this._$AA=t,this._$AB=e,this._$AM=n,this.options=s,this._$Cp=null===(r=null==s?void 0:s.isConnected)||void 0===r||r}get _$AU(){var t,e;return null!==(e=null===(t=this._$AM)||void 0===t?void 0:t._$AU)&&void 0!==e?e:this._$Cp}get parentNode(){let t=this._$AA.parentNode;const e=this._$AM;return void 0!==e&&11===(null==t?void 0:t.nodeType)&&(t=e.parentNode),t}get startNode(){return this._$AA}get endNode(){return this._$AB}_$AI(t,e=this){t=R(this,t,e),E(t)?t===z||null==t||""===t?(this._$AH!==z&&this._$AR(),this._$AH=z):t!==this._$AH&&t!==Z&&this._(t):void 0!==t._$litType$?this.g(t):void 0!==t.nodeType?this.$(t):(t=>N(t)||"function"==typeof(null==t?void 0:t[Symbol.iterator]))(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!==z&&E(this._$AH)?this._$AA.nextSibling.data=t:this.$(O.createTextNode(t)),this._$AH=t}g(t){var e;const{values:n,_$litType$:s}=t,r="number"==typeof s?this._$AC(t):(void 0===s.el&&(s.el=P.createElement(s.h,this.options)),s);if((null===(e=this._$AH)||void 0===e?void 0:e._$AD)===r)this._$AH.v(n);else{const t=new q(r,this),e=t.u(this.options);t.v(n),this.$(e),this._$AH=t}}_$AC(t){let e=U.get(t.strings);return void 0===e&&U.set(t.strings,e=new P(t)),e}T(t){N(this._$AH)||(this._$AH=[],this._$AR());const e=this._$AH;let n,s=0;for(const r of t)s===e.length?e.push(n=new W(this.k(k()),this.k(k()),this,this.options)):n=e[s],n._$AI(r),s++;s<e.length&&(this._$AR(n&&n._$AB.nextSibling,s),e.length=s)}_$AR(t=this._$AA.nextSibling,e){var n;for(null===(n=this._$AP)||void 0===n||n.call(this,!1,!0,e);t&&t!==this._$AB;){const e=t.nextSibling;t.remove(),t=e}}setConnected(t){var e;void 0===this._$AM&&(this._$Cp=t,null===(e=this._$AP)||void 0===e||e.call(this,t))}}class J{constructor(t,e,n,s,r){this.type=1,this._$AH=z,this._$AN=void 0,this.element=t,this.name=e,this._$AM=s,this.options=r,n.length>2||""!==n[0]||""!==n[1]?(this._$AH=Array(n.length-1).fill(new String),this.strings=n):this._$AH=z}get tagName(){return this.element.tagName}get _$AU(){return this._$AM._$AU}_$AI(t,e=this,n,s){const r=this.strings;let i=!1;if(void 0===r)t=R(this,t,e,0),i=!E(t)||t!==this._$AH&&t!==Z,i&&(this._$AH=t);else{const s=t;let o,a;for(t=r[0],o=0;o<r.length-1;o++)a=R(this,s[n+o],e,o),a===Z&&(a=this._$AH[o]),i||(i=!E(a)||a!==this._$AH[o]),a===z?t=z:t!==z&&(t+=(null!=a?a:"")+r[o+1]),this._$AH[o]=a}i&&!s&&this.j(t)}j(t){t===z?this.element.removeAttribute(this.name):this.element.setAttribute(this.name,null!=t?t:"")}}class Y extends J{constructor(){super(...arguments),this.type=3}j(t){this.element[this.name]=t===z?void 0:t}}const G=S?S.emptyScript:"";class B extends J{constructor(){super(...arguments),this.type=4}j(t){t&&t!==z?this.element.setAttribute(this.name,G):this.element.removeAttribute(this.name)}}class Q extends J{constructor(t,e,n,s,r){super(t,e,n,s,r),this.type=5}_$AI(t,e=this){var n;if((t=null!==(n=R(this,t,e,0))&&void 0!==n?n:z)===Z)return;const s=this._$AH,r=t===z&&s!==z||t.capture!==s.capture||t.once!==s.once||t.passive!==s.passive,i=t!==z&&(s===z||r);r&&this.element.removeEventListener(this.name,this,s),i&&this.element.addEventListener(this.name,this,t),this._$AH=t}handleEvent(t){var e,n;"function"==typeof this._$AH?this._$AH.call(null!==(n=null===(e=this.options)||void 0===e?void 0:e.host)&&void 0!==n?n:this.element,t):this._$AH.handleEvent(t)}}class K{constructor(t,e,n){this.element=t,this.type=6,this._$AN=void 0,this._$AM=e,this.options=n}get _$AU(){return this._$AM._$AU}_$AI(t){R(this,t)}}const X=w.litHtmlPolyfillSupport;null==X||X(P,W),(null!==(v=w.litHtmlVersions)&&void 0!==v?v:w.litHtmlVersions=[]).push("2.7.2");
/**
 * @license
 * Copyright 2017 Google LLC
 * SPDX-License-Identifier: BSD-3-Clause
 */
var tt,et;class nt extends g{constructor(){super(...arguments),this.renderOptions={host:this},this._$Do=void 0}createRenderRoot(){var t,e;const n=super.createRenderRoot();return null!==(t=(e=this.renderOptions).renderBefore)&&void 0!==t||(e.renderBefore=n.firstChild),n}update(t){const e=this.render();this.hasUpdated||(this.renderOptions.isConnected=this.isConnected),super.update(t),this._$Do=((t,e,n)=>{var s,r;const i=null!==(s=null==n?void 0:n.renderBefore)&&void 0!==s?s:e;let o=i._$litPart$;if(void 0===o){const t=null!==(r=null==n?void 0:n.renderBefore)&&void 0!==r?r:null;i._$litPart$=o=new W(e.insertBefore(k(),t),t,void 0,null!=n?n:{})}return o._$AI(t),o})(e,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 Z}}nt.finalized=!0,nt._$litElement$=!0,null===(tt=globalThis.litElementHydrateSupport)||void 0===tt||tt.call(globalThis,{LitElement:nt});const st=globalThis.litElementPolyfillSupport;null==st||st({LitElement:nt}),(null!==(et=globalThis.litElementVersions)&&void 0!==et?et:globalThis.litElementVersions=[]).push("3.3.1");
/**
 * @license
 * Copyright 2017 Google LLC
 * SPDX-License-Identifier: BSD-3-Clause
 */
const rt=(t,e)=>"method"===e.kind&&e.descriptor&&!("value"in e.descriptor)?{...e,finisher(n){n.createProperty(e.key,t)}}:{kind:"field",key:Symbol(),placement:"own",descriptor:{},originalKey:e.key,initializer(){"function"==typeof e.initializer&&(this[e.key]=e.initializer.call(this))},finisher(n){n.createProperty(e.key,t)}};
/**
 * @license
 * Copyright 2017 Google LLC
 * SPDX-License-Identifier: BSD-3-Clause
 */function it(t){return(e,n)=>void 0!==n?((t,e,n)=>{e.constructor.createProperty(n,t)})(t,e,n):rt(t,e)
/**
 * @license
 * Copyright 2017 Google LLC
 * SPDX-License-Identifier: BSD-3-Clause
 */}function ot(t){return it({...t,state:!0})}
/**
 * @license
 * Copyright 2021 Google LLC
 * SPDX-License-Identifier: BSD-3-Clause
 */var at;null===(at=window.HTMLSlotElement)||void 0===at||at.prototype.assignedElements;class lt extends Error{}class ut extends lt{constructor(t){super("Invalid DateTime: "+t.toMessage())}}class ct extends lt{constructor(t){super("Invalid Interval: "+t.toMessage())}}class ht extends lt{constructor(t){super("Invalid Duration: "+t.toMessage())}}class dt extends lt{}class mt extends lt{constructor(t){super("Invalid unit "+t)}}class ft extends lt{}class yt extends lt{constructor(){super("Zone is an abstract class")}}const pt="numeric",gt="short",vt="long",wt={year:pt,month:pt,day:pt},St={year:pt,month:gt,day:pt},bt={year:pt,month:gt,day:pt,weekday:gt},$t={year:pt,month:vt,day:pt},_t={year:pt,month:vt,day:pt,weekday:vt},Tt={hour:pt,minute:pt},Ot={hour:pt,minute:pt,second:pt},kt={hour:pt,minute:pt,second:pt,timeZoneName:gt},Et={hour:pt,minute:pt,second:pt,timeZoneName:vt},Nt={hour:pt,minute:pt,hourCycle:"h23"},Mt={hour:pt,minute:pt,second:pt,hourCycle:"h23"},At={hour:pt,minute:pt,second:pt,hourCycle:"h23",timeZoneName:gt},Ct={hour:pt,minute:pt,second:pt,hourCycle:"h23",timeZoneName:vt},xt={year:pt,month:pt,day:pt,hour:pt,minute:pt},Dt={year:pt,month:pt,day:pt,hour:pt,minute:pt,second:pt},It={year:pt,month:gt,day:pt,hour:pt,minute:pt},Vt={year:pt,month:gt,day:pt,hour:pt,minute:pt,second:pt},Lt={year:pt,month:gt,day:pt,weekday:gt,hour:pt,minute:pt},Ft={year:pt,month:vt,day:pt,hour:pt,minute:pt,timeZoneName:gt},Zt={year:pt,month:vt,day:pt,hour:pt,minute:pt,second:pt,timeZoneName:gt},zt={year:pt,month:vt,day:pt,weekday:vt,hour:pt,minute:pt,timeZoneName:vt},Ut={year:pt,month:vt,day:pt,weekday:vt,hour:pt,minute:pt,second:pt,timeZoneName:vt};class jt{get type(){throw new yt}get name(){throw new yt}get ianaName(){return this.name}get isUniversal(){throw new yt}offsetName(t,e){throw new yt}formatOffset(t,e){throw new yt}offset(t){throw new yt}equals(t){throw new yt}get isValid(){throw new yt}}let Ht=null;class Pt extends jt{static get instance(){return null===Ht&&(Ht=new Pt),Ht}get type(){return"system"}get name(){return(new Intl.DateTimeFormat).resolvedOptions().timeZone}get isUniversal(){return!1}offsetName(t,{format:e,locale:n}){return Ve(t,e,n)}formatOffset(t,e){return ze(this.offset(t),e)}offset(t){return-new Date(t).getTimezoneOffset()}equals(t){return"system"===t.type}get isValid(){return!0}}let Rt={};const qt={year:0,month:1,day:2,era:3,hour:4,minute:5,second:6};let Wt={};class Jt extends jt{static create(t){return Wt[t]||(Wt[t]=new Jt(t)),Wt[t]}static resetCache(){Wt={},Rt={}}static isValidSpecifier(t){return this.isValidZone(t)}static isValidZone(t){if(!t)return!1;try{return new Intl.DateTimeFormat("en-US",{timeZone:t}).format(),!0}catch(t){return!1}}constructor(t){super(),this.zoneName=t,this.valid=Jt.isValidZone(t)}get type(){return"iana"}get name(){return this.zoneName}get isUniversal(){return!1}offsetName(t,{format:e,locale:n}){return Ve(t,e,n,this.name)}formatOffset(t,e){return ze(this.offset(t),e)}offset(t){const e=new Date(t);if(isNaN(e))return NaN;const n=(s=this.name,Rt[s]||(Rt[s]=new Intl.DateTimeFormat("en-US",{hour12:!1,timeZone:s,year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit",second:"2-digit",era:"short"})),Rt[s]);var s;let[r,i,o,a,l,u,c]=n.formatToParts?function(t,e){const n=t.formatToParts(e),s=[];for(let t=0;t<n.length;t++){const{type:e,value:r}=n[t],i=qt[e];"era"===e?s[i]=r:ge(i)||(s[i]=parseInt(r,10))}return s}(n,e):function(t,e){const n=t.format(e).replace(/\u200E/g,""),s=/(\d+)\/(\d+)\/(\d+) (AD|BC),? (\d+):(\d+):(\d+)/.exec(n),[,r,i,o,a,l,u,c]=s;return[o,r,i,a,l,u,c]}(n,e);"BC"===a&&(r=1-Math.abs(r));let h=+e;const d=h%1e3;return h-=d>=0?d:1e3+d,(xe({year:r,month:i,day:o,hour:24===l?0:l,minute:u,second:c,millisecond:0})-h)/6e4}equals(t){return"iana"===t.type&&t.name===this.name}get isValid(){return this.valid}}let Yt={};let Gt={};function Bt(t,e={}){const n=JSON.stringify([t,e]);let s=Gt[n];return s||(s=new Intl.DateTimeFormat(t,e),Gt[n]=s),s}let Qt={};let Kt={};let Xt=null;function te(t,e,n,s,r){const i=t.listingMode(n);return"error"===i?null:"en"===i?s(e):r(e)}class ee{constructor(t,e,n){this.padTo=n.padTo||0,this.floor=n.floor||!1;const{padTo:s,floor:r,...i}=n;if(!e||Object.keys(i).length>0){const e={useGrouping:!1,...n};n.padTo>0&&(e.minimumIntegerDigits=n.padTo),this.inf=function(t,e={}){const n=JSON.stringify([t,e]);let s=Qt[n];return s||(s=new Intl.NumberFormat(t,e),Qt[n]=s),s}(t,e)}}format(t){if(this.inf){const e=this.floor?Math.floor(t):t;return this.inf.format(e)}return Te(this.floor?Math.floor(t):Ne(t,3),this.padTo)}}class ne{constructor(t,e,n){this.opts=n,this.originalZone=void 0;let s=void 0;if(this.opts.timeZone)this.dt=t;else if("fixed"===t.zone.type){const e=t.offset/60*-1,n=e>=0?"Etc/GMT+"+e:"Etc/GMT"+e;0!==t.offset&&Jt.create(n).valid?(s=n,this.dt=t):(s="UTC",this.dt=0===t.offset?t:t.setZone("UTC").plus({minutes:t.offset}),this.originalZone=t.zone)}else"system"===t.zone.type?this.dt=t:"iana"===t.zone.type?(this.dt=t,s=t.zone.name):(s="UTC",this.dt=t.setZone("UTC").plus({minutes:t.offset}),this.originalZone=t.zone);const r={...this.opts};r.timeZone=r.timeZone||s,this.dtf=Bt(e,r)}format(){return this.originalZone?this.formatToParts().map(({value:t})=>t).join(""):this.dtf.format(this.dt.toJSDate())}formatToParts(){const t=this.dtf.formatToParts(this.dt.toJSDate());return this.originalZone?t.map(t=>{if("timeZoneName"===t.type){const e=this.originalZone.offsetName(this.dt.ts,{locale:this.dt.locale,format:this.opts.timeZoneName});return{...t,value:e}}return t}):t}resolvedOptions(){return this.dtf.resolvedOptions()}}class se{constructor(t,e,n){this.opts={style:"long",...n},!e&&Se()&&(this.rtf=function(t,e={}){const{base:n,...s}=e,r=JSON.stringify([t,s]);let i=Kt[r];return i||(i=new Intl.RelativeTimeFormat(t,e),Kt[r]=i),i}(t,n))}format(t,e){return this.rtf?this.rtf.format(t,e):function(t,e,n="always",s=!1){const r={years:["year","yr."],quarters:["quarter","qtr."],months:["month","mo."],weeks:["week","wk."],days:["day","day","days"],hours:["hour","hr."],minutes:["minute","min."],seconds:["second","sec."]},i=-1===["hours","minutes","seconds"].indexOf(t);if("auto"===n&&i){const n="days"===t;switch(e){case 1:return n?"tomorrow":"next "+r[t][0];case-1:return n?"yesterday":"last "+r[t][0];case 0:return n?"today":"this "+r[t][0]}}const o=Object.is(e,-0)||e<0,a=Math.abs(e),l=1===a,u=r[t],c=s?l?u[1]:u[2]||u[1]:l?r[t][0]:t;return o?`${a} ${c} ago`:`in ${a} ${c}`}(e,t,this.opts.numeric,"long"!==this.opts.style)}formatToParts(t,e){return this.rtf?this.rtf.formatToParts(t,e):[]}}class re{static fromOpts(t){return re.create(t.locale,t.numberingSystem,t.outputCalendar,t.defaultToEN)}static create(t,e,n,s=!1){const r=t||pe.defaultLocale,i=r||(s?"en-US":Xt||(Xt=(new Intl.DateTimeFormat).resolvedOptions().locale,Xt)),o=e||pe.defaultNumberingSystem,a=n||pe.defaultOutputCalendar;return new re(i,o,a,r)}static resetCache(){Xt=null,Gt={},Qt={},Kt={}}static fromObject({locale:t,numberingSystem:e,outputCalendar:n}={}){return re.create(t,e,n)}constructor(t,e,n,s){const[r,i,o]=function(t){const e=t.indexOf("-x-");-1!==e&&(t=t.substring(0,e));const n=t.indexOf("-u-");if(-1===n)return[t];{let e,s;try{e=Bt(t).resolvedOptions(),s=t}catch(r){const i=t.substring(0,n);e=Bt(i).resolvedOptions(),s=i}const{numberingSystem:r,calendar:i}=e;return[s,r,i]}}(t);this.locale=r,this.numberingSystem=e||i||null,this.outputCalendar=n||o||null,this.intl=function(t,e,n){return n||e?(t.includes("-u-")||(t+="-u"),n&&(t+="-ca-"+n),e&&(t+="-nu-"+e),t):t}(this.locale,this.numberingSystem,this.outputCalendar),this.weekdaysCache={format:{},standalone:{}},this.monthsCache={format:{},standalone:{}},this.meridiemCache=null,this.eraCache={},this.specifiedLocale=s,this.fastNumbersCached=null}get fastNumbers(){var t;return null==this.fastNumbersCached&&(this.fastNumbersCached=(!(t=this).numberingSystem||"latn"===t.numberingSystem)&&("latn"===t.numberingSystem||!t.locale||t.locale.startsWith("en")||"latn"===new Intl.DateTimeFormat(t.intl).resolvedOptions().numberingSystem)),this.fastNumbersCached}listingMode(){const t=this.isEnglish(),e=!(null!==this.numberingSystem&&"latn"!==this.numberingSystem||null!==this.outputCalendar&&"gregory"!==this.outputCalendar);return t&&e?"en":"intl"}clone(t){return t&&0!==Object.getOwnPropertyNames(t).length?re.create(t.locale||this.specifiedLocale,t.numberingSystem||this.numberingSystem,t.outputCalendar||this.outputCalendar,t.defaultToEN||!1):this}redefaultToEN(t={}){return this.clone({...t,defaultToEN:!0})}redefaultToSystem(t={}){return this.clone({...t,defaultToEN:!1})}months(t,e=!1,n=!0){return te(this,t,n,Re,()=>{const n=e?{month:t,day:"numeric"}:{month:t},s=e?"format":"standalone";return this.monthsCache[s][t]||(this.monthsCache[s][t]=function(t){const e=[];for(let n=1;n<=12;n++){const s=er.utc(2016,n,1);e.push(t(s))}return e}(t=>this.extract(t,n,"month"))),this.monthsCache[s][t]})}weekdays(t,e=!1,n=!0){return te(this,t,n,Ye,()=>{const n=e?{weekday:t,year:"numeric",month:"long",day:"numeric"}:{weekday:t},s=e?"format":"standalone";return this.weekdaysCache[s][t]||(this.weekdaysCache[s][t]=function(t){const e=[];for(let n=1;n<=7;n++){const s=er.utc(2016,11,13+n);e.push(t(s))}return e}(t=>this.extract(t,n,"weekday"))),this.weekdaysCache[s][t]})}meridiems(t=!0){return te(this,void 0,t,()=>Ge,()=>{if(!this.meridiemCache){const t={hour:"numeric",hourCycle:"h12"};this.meridiemCache=[er.utc(2016,11,13,9),er.utc(2016,11,13,19)].map(e=>this.extract(e,t,"dayperiod"))}return this.meridiemCache})}eras(t,e=!0){return te(this,t,e,Xe,()=>{const e={era:t};return this.eraCache[t]||(this.eraCache[t]=[er.utc(-40,1,1),er.utc(2017,1,1)].map(t=>this.extract(t,e,"era"))),this.eraCache[t]})}extract(t,e,n){const s=this.dtFormatter(t,e).formatToParts().find(t=>t.type.toLowerCase()===n);return s?s.value:null}numberFormatter(t={}){return new ee(this.intl,t.forceSimple||this.fastNumbers,t)}dtFormatter(t,e={}){return new ne(t,this.intl,e)}relFormatter(t={}){return new se(this.intl,this.isEnglish(),t)}listFormatter(t={}){return function(t,e={}){const n=JSON.stringify([t,e]);let s=Yt[n];return s||(s=new Intl.ListFormat(t,e),Yt[n]=s),s}(this.intl,t)}isEnglish(){return"en"===this.locale||"en-us"===this.locale.toLowerCase()||new Intl.DateTimeFormat(this.intl).resolvedOptions().locale.startsWith("en-us")}equals(t){return this.locale===t.locale&&this.numberingSystem===t.numberingSystem&&this.outputCalendar===t.outputCalendar}}let ie=null;class oe extends jt{static get utcInstance(){return null===ie&&(ie=new oe(0)),ie}static instance(t){return 0===t?oe.utcInstance:new oe(t)}static parseSpecifier(t){if(t){const e=t.match(/^utc(?:([+-]\d{1,2})(?::(\d{2}))?)?$/i);if(e)return new oe(Le(e[1],e[2]))}return null}constructor(t){super(),this.fixed=t}get type(){return"fixed"}get name(){return 0===this.fixed?"UTC":"UTC"+ze(this.fixed,"narrow")}get ianaName(){return 0===this.fixed?"Etc/UTC":"Etc/GMT"+ze(-this.fixed,"narrow")}offsetName(){return this.name}formatOffset(t,e){return ze(this.fixed,e)}get isUniversal(){return!0}offset(){return this.fixed}equals(t){return"fixed"===t.type&&t.fixed===this.fixed}get isValid(){return!0}}class ae extends jt{constructor(t){super(),this.zoneName=t}get type(){return"invalid"}get name(){return this.zoneName}get isUniversal(){return!1}offsetName(){return null}formatOffset(){return""}offset(){return NaN}equals(){return!1}get isValid(){return!1}}function le(t,e){if(ge(t)||null===t)return e;if(t instanceof jt)return t;if(function(t){return"string"==typeof t}(t)){const n=t.toLowerCase();return"default"===n?e:"local"===n||"system"===n?Pt.instance:"utc"===n||"gmt"===n?oe.utcInstance:oe.parseSpecifier(n)||Jt.create(t)}return ve(t)?oe.instance(t):"object"==typeof t&&t.offset&&"number"==typeof t.offset?t:new ae(t)}let ue,ce=()=>Date.now(),he="system",de=null,me=null,fe=null,ye=60;class pe{static get now(){return ce}static set now(t){ce=t}static set defaultZone(t){he=t}static get defaultZone(){return le(he,Pt.instance)}static get defaultLocale(){return de}static set defaultLocale(t){de=t}static get defaultNumberingSystem(){return me}static set defaultNumberingSystem(t){me=t}static get defaultOutputCalendar(){return fe}static set defaultOutputCalendar(t){fe=t}static get twoDigitCutoffYear(){return ye}static set twoDigitCutoffYear(t){ye=t%100}static get throwOnInvalid(){return ue}static set throwOnInvalid(t){ue=t}static resetCaches(){re.resetCache(),Jt.resetCache()}}function ge(t){return void 0===t}function ve(t){return"number"==typeof t}function we(t){return"number"==typeof t&&t%1==0}function Se(){try{return"undefined"!=typeof Intl&&!!Intl.RelativeTimeFormat}catch(t){return!1}}function be(t,e,n){if(0!==t.length)return t.reduce((t,s)=>{const r=[e(s),s];return t&&n(t[0],r[0])===t[0]?t:r},null)[1]}function $e(t,e){return Object.prototype.hasOwnProperty.call(t,e)}function _e(t,e,n){return we(t)&&t>=e&&t<=n}function Te(t,e=2){let n;return n=t<0?"-"+(""+-t).padStart(e,"0"):(""+t).padStart(e,"0"),n}function Oe(t){return ge(t)||null===t||""===t?void 0:parseInt(t,10)}function ke(t){return ge(t)||null===t||""===t?void 0:parseFloat(t)}function Ee(t){if(!ge(t)&&null!==t&&""!==t){const e=1e3*parseFloat("0."+t);return Math.floor(e)}}function Ne(t,e,n=!1){const s=10**e;return(n?Math.trunc:Math.round)(t*s)/s}function Me(t){return t%4==0&&(t%100!=0||t%400==0)}function Ae(t){return Me(t)?366:365}function Ce(t,e){const n=function(t,e){return t-e*Math.floor(t/e)}(e-1,12)+1;return 2===n?Me(t+(e-n)/12)?29:28:[31,null,31,30,31,30,31,31,30,31,30,31][n-1]}function xe(t){let e=Date.UTC(t.year,t.month-1,t.day,t.hour,t.minute,t.second,t.millisecond);return t.year<100&&t.year>=0&&(e=new Date(e),e.setUTCFullYear(t.year,t.month-1,t.day)),+e}function De(t){const e=(t+Math.floor(t/4)-Math.floor(t/100)+Math.floor(t/400))%7,n=t-1,s=(n+Math.floor(n/4)-Math.floor(n/100)+Math.floor(n/400))%7;return 4===e||3===s?53:52}function Ie(t){return t>99?t:t>pe.twoDigitCutoffYear?1900+t:2e3+t}function Ve(t,e,n,s=null){const r=new Date(t),i={hourCycle:"h23",year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit"};s&&(i.timeZone=s);const o={timeZoneName:e,...i},a=new Intl.DateTimeFormat(n,o).formatToParts(r).find(t=>"timezonename"===t.type.toLowerCase());return a?a.value:null}function Le(t,e){let n=parseInt(t,10);Number.isNaN(n)&&(n=0);const s=parseInt(e,10)||0;return 60*n+(n<0||Object.is(n,-0)?-s:s)}function Fe(t){const e=Number(t);if("boolean"==typeof t||""===t||Number.isNaN(e))throw new ft("Invalid unit value "+t);return e}function Ze(t,e){const n={};for(const s in t)if($e(t,s)){const r=t[s];if(null==r)continue;n[e(s)]=Fe(r)}return n}function ze(t,e){const n=Math.trunc(Math.abs(t/60)),s=Math.trunc(Math.abs(t%60)),r=t>=0?"+":"-";switch(e){case"short":return`${r}${Te(n,2)}:${Te(s,2)}`;case"narrow":return`${r}${n}${s>0?":"+s:""}`;case"techie":return`${r}${Te(n,2)}${Te(s,2)}`;default:throw new RangeError(`Value format ${e} is out of range for property format`)}}function Ue(t){return function(t,e){return e.reduce((e,n)=>(e[n]=t[n],e),{})}(t,["hour","minute","second","millisecond"])}const je=["January","February","March","April","May","June","July","August","September","October","November","December"],He=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],Pe=["J","F","M","A","M","J","J","A","S","O","N","D"];function Re(t){switch(t){case"narrow":return[...Pe];case"short":return[...He];case"long":return[...je];case"numeric":return["1","2","3","4","5","6","7","8","9","10","11","12"];case"2-digit":return["01","02","03","04","05","06","07","08","09","10","11","12"];default:return null}}const qe=["Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","Sunday"],We=["Mon","Tue","Wed","Thu","Fri","Sat","Sun"],Je=["M","T","W","T","F","S","S"];function Ye(t){switch(t){case"narrow":return[...Je];case"short":return[...We];case"long":return[...qe];case"numeric":return["1","2","3","4","5","6","7"];default:return null}}const Ge=["AM","PM"],Be=["Before Christ","Anno Domini"],Qe=["BC","AD"],Ke=["B","A"];function Xe(t){switch(t){case"narrow":return[...Ke];case"short":return[...Qe];case"long":return[...Be];default:return null}}function tn(t,e){let n="";for(const s of t)s.literal?n+=s.val:n+=e(s.val);return n}const en={D:wt,DD:St,DDD:$t,DDDD:_t,t:Tt,tt:Ot,ttt:kt,tttt:Et,T:Nt,TT:Mt,TTT:At,TTTT:Ct,f:xt,ff:It,fff:Ft,ffff:zt,F:Dt,FF:Vt,FFF:Zt,FFFF:Ut};class nn{static create(t,e={}){return new nn(t,e)}static parseFormat(t){let e=null,n="",s=!1;const r=[];for(let i=0;i<t.length;i++){const o=t.charAt(i);"'"===o?(n.length>0&&r.push({literal:s||/^\s+$/.test(n),val:n}),e=null,n="",s=!s):s||o===e?n+=o:(n.length>0&&r.push({literal:/^\s+$/.test(n),val:n}),n=o,e=o)}return n.length>0&&r.push({literal:s||/^\s+$/.test(n),val:n}),r}static macroTokenToFormatOpts(t){return en[t]}constructor(t,e){this.opts=e,this.loc=t,this.systemLoc=null}formatWithSystemDefault(t,e){null===this.systemLoc&&(this.systemLoc=this.loc.redefaultToSystem());return this.systemLoc.dtFormatter(t,{...this.opts,...e}).format()}formatDateTime(t,e={}){return this.loc.dtFormatter(t,{...this.opts,...e}).format()}formatDateTimeParts(t,e={}){return this.loc.dtFormatter(t,{...this.opts,...e}).formatToParts()}formatInterval(t,e={}){return this.loc.dtFormatter(t.start,{...this.opts,...e}).dtf.formatRange(t.start.toJSDate(),t.end.toJSDate())}resolvedOptions(t,e={}){return this.loc.dtFormatter(t,{...this.opts,...e}).resolvedOptions()}num(t,e=0){if(this.opts.forceSimple)return Te(t,e);const n={...this.opts};return e>0&&(n.padTo=e),this.loc.numberFormatter(n).format(t)}formatDateTimeFromString(t,e){const n="en"===this.loc.listingMode(),s=this.loc.outputCalendar&&"gregory"!==this.loc.outputCalendar,r=(e,n)=>this.loc.extract(t,e,n),i=e=>t.isOffsetFixed&&0===t.offset&&e.allowZ?"Z":t.isValid?t.zone.formatOffset(t.ts,e.format):"",o=()=>n?function(t){return Ge[t.hour<12?0:1]}(t):r({hour:"numeric",hourCycle:"h12"},"dayperiod"),a=(e,s)=>n?function(t,e){return Re(e)[t.month-1]}(t,e):r(s?{month:e}:{month:e,day:"numeric"},"month"),l=(e,s)=>n?function(t,e){return Ye(e)[t.weekday-1]}(t,e):r(s?{weekday:e}:{weekday:e,month:"long",day:"numeric"},"weekday"),u=e=>{const n=nn.macroTokenToFormatOpts(e);return n?this.formatWithSystemDefault(t,n):e},c=e=>n?function(t,e){return Xe(e)[t.year<0?0:1]}(t,e):r({era:e},"era");return tn(nn.parseFormat(e),e=>{switch(e){case"S":return this.num(t.millisecond);case"u":case"SSS":return this.num(t.millisecond,3);case"s":return this.num(t.second);case"ss":return this.num(t.second,2);case"uu":return this.num(Math.floor(t.millisecond/10),2);case"uuu":return this.num(Math.floor(t.millisecond/100));case"m":return this.num(t.minute);case"mm":return this.num(t.minute,2);case"h":return this.num(t.hour%12==0?12:t.hour%12);case"hh":return this.num(t.hour%12==0?12:t.hour%12,2);case"H":return this.num(t.hour);case"HH":return this.num(t.hour,2);case"Z":return i({format:"narrow",allowZ:this.opts.allowZ});case"ZZ":return i({format:"short",allowZ:this.opts.allowZ});case"ZZZ":return i({format:"techie",allowZ:this.opts.allowZ});case"ZZZZ":return t.zone.offsetName(t.ts,{format:"short",locale:this.loc.locale});case"ZZZZZ":return t.zone.offsetName(t.ts,{format:"long",locale:this.loc.locale});case"z":return t.zoneName;case"a":return o();case"d":return s?r({day:"numeric"},"day"):this.num(t.day);case"dd":return s?r({day:"2-digit"},"day"):this.num(t.day,2);case"c":return this.num(t.weekday);case"ccc":return l("short",!0);case"cccc":return l("long",!0);case"ccccc":return l("narrow",!0);case"E":return this.num(t.weekday);case"EEE":return l("short",!1);case"EEEE":return l("long",!1);case"EEEEE":return l("narrow",!1);case"L":return s?r({month:"numeric",day:"numeric"},"month"):this.num(t.month);case"LL":return s?r({month:"2-digit",day:"numeric"},"month"):this.num(t.month,2);case"LLL":return a("short",!0);case"LLLL":return a("long",!0);case"LLLLL":return a("narrow",!0);case"M":return s?r({month:"numeric"},"month"):this.num(t.month);case"MM":return s?r({month:"2-digit"},"month"):this.num(t.month,2);case"MMM":return a("short",!1);case"MMMM":return a("long",!1);case"MMMMM":return a("narrow",!1);case"y":return s?r({year:"numeric"},"year"):this.num(t.year);case"yy":return s?r({year:"2-digit"},"year"):this.num(t.year.toString().slice(-2),2);case"yyyy":return s?r({year:"numeric"},"year"):this.num(t.year,4);case"yyyyyy":return s?r({year:"numeric"},"year"):this.num(t.year,6);case"G":return c("short");case"GG":return c("long");case"GGGGG":return c("narrow");case"kk":return this.num(t.weekYear.toString().slice(-2),2);case"kkkk":return this.num(t.weekYear,4);case"W":return this.num(t.weekNumber);case"WW":return this.num(t.weekNumber,2);case"o":return this.num(t.ordinal);case"ooo":return this.num(t.ordinal,3);case"q":return this.num(t.quarter);case"qq":return this.num(t.quarter,2);case"X":return this.num(Math.floor(t.ts/1e3));case"x":return this.num(t.ts);default:return u(e)}})}formatDurationFromString(t,e){const n=t=>{switch(t[0]){case"S":return"millisecond";case"s":return"second";case"m":return"minute";case"h":return"hour";case"d":return"day";case"w":return"week";case"M":return"month";case"y":return"year";default:return null}},s=nn.parseFormat(e),r=s.reduce((t,{literal:e,val:n})=>e?t:t.concat(n),[]);return tn(s,(t=>e=>{const s=n(e);return s?this.num(t.get(s),e.length):e})(t.shiftTo(...r.map(n).filter(t=>t))))}}class sn{constructor(t,e){this.reason=t,this.explanation=e}toMessage(){return this.explanation?`${this.reason}: ${this.explanation}`:this.reason}}const rn=/[A-Za-z_+-]{1,256}(?::?\/[A-Za-z0-9_+-]{1,256}(?:\/[A-Za-z0-9_+-]{1,256})?)?/;function on(...t){const e=t.reduce((t,e)=>t+e.source,"");return RegExp(`^${e}$`)}function an(...t){return e=>t.reduce(([t,n,s],r)=>{const[i,o,a]=r(e,s);return[{...t,...i},o||n,a]},[{},null,1]).slice(0,2)}function ln(t,...e){if(null==t)return[null,null];for(const[n,s]of e){const e=n.exec(t);if(e)return s(e)}return[null,null]}function un(...t){return(e,n)=>{const s={};let r;for(r=0;r<t.length;r++)s[t[r]]=Oe(e[n+r]);return[s,null,n+r]}}const cn=/(?:(Z)|([+-]\d\d)(?::?(\d\d))?)/,hn=/(\d\d)(?::?(\d\d)(?::?(\d\d)(?:[.,](\d{1,30}))?)?)?/,dn=RegExp(`${hn.source}${`(?:${cn.source}?(?:\\[(${rn.source})\\])?)?`}`),mn=RegExp(`(?:T${dn.source})?`),fn=un("weekYear","weekNumber","weekDay"),yn=un("year","ordinal"),pn=RegExp(`${hn.source} ?(?:${cn.source}|(${rn.source}))?`),gn=RegExp(`(?: ${pn.source})?`);function vn(t,e,n){const s=t[e];return ge(s)?n:Oe(s)}function wn(t,e){return[{hours:vn(t,e,0),minutes:vn(t,e+1,0),seconds:vn(t,e+2,0),milliseconds:Ee(t[e+3])},null,e+4]}function Sn(t,e){const n=!t[e]&&!t[e+1],s=Le(t[e+1],t[e+2]);return[{},n?null:oe.instance(s),e+3]}function bn(t,e){return[{},t[e]?Jt.create(t[e]):null,e+1]}const $n=RegExp(`^T?${hn.source}$`),_n=/^-?P(?:(?:(-?\d{1,20}(?:\.\d{1,20})?)Y)?(?:(-?\d{1,20}(?:\.\d{1,20})?)M)?(?:(-?\d{1,20}(?:\.\d{1,20})?)W)?(?:(-?\d{1,20}(?:\.\d{1,20})?)D)?(?:T(?:(-?\d{1,20}(?:\.\d{1,20})?)H)?(?:(-?\d{1,20}(?:\.\d{1,20})?)M)?(?:(-?\d{1,20})(?:[.,](-?\d{1,20}))?S)?)?)$/;function Tn(t){const[e,n,s,r,i,o,a,l,u]=t,c="-"===e[0],h=l&&"-"===l[0],d=(t,e=!1)=>void 0!==t&&(e||t&&c)?-t:t;return[{years:d(ke(n)),months:d(ke(s)),weeks:d(ke(r)),days:d(ke(i)),hours:d(ke(o)),minutes:d(ke(a)),seconds:d(ke(l),"-0"===l),milliseconds:d(Ee(u),h)}]}const On={GMT:0,EDT:-240,EST:-300,CDT:-300,CST:-360,MDT:-360,MST:-420,PDT:-420,PST:-480};function kn(t,e,n,s,r,i,o){const a={year:2===e.length?Ie(Oe(e)):Oe(e),month:He.indexOf(n)+1,day:Oe(s),hour:Oe(r),minute:Oe(i)};return o&&(a.second=Oe(o)),t&&(a.weekday=t.length>3?qe.indexOf(t)+1:We.indexOf(t)+1),a}const En=/^(?:(Mon|Tue|Wed|Thu|Fri|Sat|Sun),\s)?(\d{1,2})\s(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\s(\d{2,4})\s(\d\d):(\d\d)(?::(\d\d))?\s(?:(UT|GMT|[ECMP][SD]T)|([Zz])|(?:([+-]\d\d)(\d\d)))$/;function Nn(t){const[,e,n,s,r,i,o,a,l,u,c,h]=t,d=kn(e,r,s,n,i,o,a);let m;return m=l?On[l]:u?0:Le(c,h),[d,new oe(m)]}const Mn=/^(Mon|Tue|Wed|Thu|Fri|Sat|Sun), (\d\d) (Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) (\d{4}) (\d\d):(\d\d):(\d\d) GMT$/,An=/^(Monday|Tuesday|Wednesday|Thursday|Friday|Saturday|Sunday), (\d\d)-(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)-(\d\d) (\d\d):(\d\d):(\d\d) GMT$/,Cn=/^(Mon|Tue|Wed|Thu|Fri|Sat|Sun) (Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) ( \d|\d\d) (\d\d):(\d\d):(\d\d) (\d{4})$/;function xn(t){const[,e,n,s,r,i,o,a]=t;return[kn(e,r,s,n,i,o,a),oe.utcInstance]}function Dn(t){const[,e,n,s,r,i,o,a]=t;return[kn(e,a,n,s,r,i,o),oe.utcInstance]}const In=on(/([+-]\d{6}|\d{4})(?:-?(\d\d)(?:-?(\d\d))?)?/,mn),Vn=on(/(\d{4})-?W(\d\d)(?:-?(\d))?/,mn),Ln=on(/(\d{4})-?(\d{3})/,mn),Fn=on(dn),Zn=an((function(t,e){return[{year:vn(t,e),month:vn(t,e+1,1),day:vn(t,e+2,1)},null,e+3]}),wn,Sn,bn),zn=an(fn,wn,Sn,bn),Un=an(yn,wn,Sn,bn),jn=an(wn,Sn,bn);const Hn=an(wn);const Pn=on(/(\d{4})-(\d\d)-(\d\d)/,gn),Rn=on(pn),qn=an(wn,Sn,bn);const Wn={weeks:{days:7,hours:168,minutes:10080,seconds:604800,milliseconds:6048e5},days:{hours:24,minutes:1440,seconds:86400,milliseconds:864e5},hours:{minutes:60,seconds:3600,milliseconds:36e5},minutes:{seconds:60,milliseconds:6e4},seconds:{milliseconds:1e3}},Jn={years:{quarters:4,months:12,weeks:52,days:365,hours:8760,minutes:525600,seconds:31536e3,milliseconds:31536e6},quarters:{months:3,weeks:13,days:91,hours:2184,minutes:131040,seconds:7862400,milliseconds:78624e5},months:{weeks:4,days:30,hours:720,minutes:43200,seconds:2592e3,milliseconds:2592e6},...Wn},Yn={years:{quarters:4,months:12,weeks:52.1775,days:365.2425,hours:8765.82,minutes:525949.2,seconds:525949.2*60,milliseconds:525949.2*60*1e3},quarters:{months:3,weeks:13.044375,days:91.310625,hours:2191.455,minutes:131487.3,seconds:525949.2*60/4,milliseconds:7889237999.999999},months:{weeks:30.436875/7,days:30.436875,hours:730.485,minutes:43829.1,seconds:2629746,milliseconds:2629746e3},...Wn},Gn=["years","quarters","months","weeks","days","hours","minutes","seconds","milliseconds"],Bn=Gn.slice(0).reverse();function Qn(t,e,n=!1){const s={values:n?e.values:{...t.values,...e.values||{}},loc:t.loc.clone(e.loc),conversionAccuracy:e.conversionAccuracy||t.conversionAccuracy,matrix:e.matrix||t.matrix};return new Xn(s)}function Kn(t,e,n,s,r){const i=t[r][n],o=e[n]/i,a=!(Math.sign(o)===Math.sign(s[r]))&&0!==s[r]&&Math.abs(o)<=1?function(t){return t<0?Math.floor(t):Math.ceil(t)}(o):Math.trunc(o);s[r]+=a,e[n]-=a*i}class Xn{constructor(t){const e="longterm"===t.conversionAccuracy||!1;let n=e?Yn:Jn;t.matrix&&(n=t.matrix),this.values=t.values,this.loc=t.loc||re.create(),this.conversionAccuracy=e?"longterm":"casual",this.invalid=t.invalid||null,this.matrix=n,this.isLuxonDuration=!0}static fromMillis(t,e){return Xn.fromObject({milliseconds:t},e)}static fromObject(t,e={}){if(null==t||"object"!=typeof t)throw new ft("Duration.fromObject: argument expected to be an object, got "+(null===t?"null":typeof t));return new Xn({values:Ze(t,Xn.normalizeUnit),loc:re.fromObject(e),conversionAccuracy:e.conversionAccuracy,matrix:e.matrix})}static fromDurationLike(t){if(ve(t))return Xn.fromMillis(t);if(Xn.isDuration(t))return t;if("object"==typeof t)return Xn.fromObject(t);throw new ft(`Unknown duration argument ${t} of type ${typeof t}`)}static fromISO(t,e){const[n]=function(t){return ln(t,[_n,Tn])}(t);return n?Xn.fromObject(n,e):Xn.invalid("unparsable",`the input "${t}" can't be parsed as ISO 8601`)}static fromISOTime(t,e){const[n]=function(t){return ln(t,[$n,Hn])}(t);return n?Xn.fromObject(n,e):Xn.invalid("unparsable",`the input "${t}" can't be parsed as ISO 8601`)}static invalid(t,e=null){if(!t)throw new ft("need to specify a reason the Duration is invalid");const n=t instanceof sn?t:new sn(t,e);if(pe.throwOnInvalid)throw new ht(n);return new Xn({invalid:n})}static normalizeUnit(t){const e={year:"years",years:"years",quarter:"quarters",quarters:"quarters",month:"months",months:"months",week:"weeks",weeks:"weeks",day:"days",days:"days",hour:"hours",hours:"hours",minute:"minutes",minutes:"minutes",second:"seconds",seconds:"seconds",millisecond:"milliseconds",milliseconds:"milliseconds"}[t?t.toLowerCase():t];if(!e)throw new mt(t);return e}static isDuration(t){return t&&t.isLuxonDuration||!1}get locale(){return this.isValid?this.loc.locale:null}get numberingSystem(){return this.isValid?this.loc.numberingSystem:null}toFormat(t,e={}){const n={...e,floor:!1!==e.round&&!1!==e.floor};return this.isValid?nn.create(this.loc,n).formatDurationFromString(this,t):"Invalid Duration"}toHuman(t={}){const e=Gn.map(e=>{const n=this.values[e];return ge(n)?null:this.loc.numberFormatter({style:"unit",unitDisplay:"long",...t,unit:e.slice(0,-1)}).format(n)}).filter(t=>t);return this.loc.listFormatter({type:"conjunction",style:t.listStyle||"narrow",...t}).format(e)}toObject(){return this.isValid?{...this.values}:{}}toISO(){if(!this.isValid)return null;let t="P";return 0!==this.years&&(t+=this.years+"Y"),0===this.months&&0===this.quarters||(t+=this.months+3*this.quarters+"M"),0!==this.weeks&&(t+=this.weeks+"W"),0!==this.days&&(t+=this.days+"D"),0===this.hours&&0===this.minutes&&0===this.seconds&&0===this.milliseconds||(t+="T"),0!==this.hours&&(t+=this.hours+"H"),0!==this.minutes&&(t+=this.minutes+"M"),0===this.seconds&&0===this.milliseconds||(t+=Ne(this.seconds+this.milliseconds/1e3,3)+"S"),"P"===t&&(t+="T0S"),t}toISOTime(t={}){if(!this.isValid)return null;const e=this.toMillis();if(e<0||e>=864e5)return null;t={suppressMilliseconds:!1,suppressSeconds:!1,includePrefix:!1,format:"extended",...t};const n=this.shiftTo("hours","minutes","seconds","milliseconds");let s="basic"===t.format?"hhmm":"hh:mm";t.suppressSeconds&&0===n.seconds&&0===n.milliseconds||(s+="basic"===t.format?"ss":":ss",t.suppressMilliseconds&&0===n.milliseconds||(s+=".SSS"));let r=n.toFormat(s);return t.includePrefix&&(r="T"+r),r}toJSON(){return this.toISO()}toString(){return this.toISO()}toMillis(){return this.as("milliseconds")}valueOf(){return this.toMillis()}plus(t){if(!this.isValid)return this;const e=Xn.fromDurationLike(t),n={};for(const t of Gn)($e(e.values,t)||$e(this.values,t))&&(n[t]=e.get(t)+this.get(t));return Qn(this,{values:n},!0)}minus(t){if(!this.isValid)return this;const e=Xn.fromDurationLike(t);return this.plus(e.negate())}mapUnits(t){if(!this.isValid)return this;const e={};for(const n of Object.keys(this.values))e[n]=Fe(t(this.values[n],n));return Qn(this,{values:e},!0)}get(t){return this[Xn.normalizeUnit(t)]}set(t){if(!this.isValid)return this;return Qn(this,{values:{...this.values,...Ze(t,Xn.normalizeUnit)}})}reconfigure({locale:t,numberingSystem:e,conversionAccuracy:n,matrix:s}={}){return Qn(this,{loc:this.loc.clone({locale:t,numberingSystem:e}),matrix:s,conversionAccuracy:n})}as(t){return this.isValid?this.shiftTo(t).get(t):NaN}normalize(){if(!this.isValid)return this;const t=this.toObject();return function(t,e){Bn.reduce((n,s)=>ge(e[s])?n:(n&&Kn(t,e,n,e,s),s),null)}(this.matrix,t),Qn(this,{values:t},!0)}rescale(){if(!this.isValid)return this;return Qn(this,{values:function(t){const e={};for(const[n,s]of Object.entries(t))0!==s&&(e[n]=s);return e}(this.normalize().shiftToAll().toObject())},!0)}shiftTo(...t){if(!this.isValid)return this;if(0===t.length)return this;t=t.map(t=>Xn.normalizeUnit(t));const e={},n={},s=this.toObject();let r;for(const i of Gn)if(t.indexOf(i)>=0){r=i;let t=0;for(const e in n)t+=this.matrix[e][i]*n[e],n[e]=0;ve(s[i])&&(t+=s[i]);const o=Math.trunc(t);e[i]=o,n[i]=(1e3*t-1e3*o)/1e3;for(const t in s)Gn.indexOf(t)>Gn.indexOf(i)&&Kn(this.matrix,s,t,e,i)}else ve(s[i])&&(n[i]=s[i]);for(const t in n)0!==n[t]&&(e[r]+=t===r?n[t]:n[t]/this.matrix[r][t]);return Qn(this,{values:e},!0).normalize()}shiftToAll(){return this.isValid?this.shiftTo("years","months","weeks","days","hours","minutes","seconds","milliseconds"):this}negate(){if(!this.isValid)return this;const t={};for(const e of Object.keys(this.values))t[e]=0===this.values[e]?0:-this.values[e];return Qn(this,{values:t},!0)}get years(){return this.isValid?this.values.years||0:NaN}get quarters(){return this.isValid?this.values.quarters||0:NaN}get months(){return this.isValid?this.values.months||0:NaN}get weeks(){return this.isValid?this.values.weeks||0:NaN}get days(){return this.isValid?this.values.days||0:NaN}get hours(){return this.isValid?this.values.hours||0:NaN}get minutes(){return this.isValid?this.values.minutes||0:NaN}get seconds(){return this.isValid?this.values.seconds||0:NaN}get milliseconds(){return this.isValid?this.values.milliseconds||0:NaN}get isValid(){return null===this.invalid}get invalidReason(){return this.invalid?this.invalid.reason:null}get invalidExplanation(){return this.invalid?this.invalid.explanation:null}equals(t){if(!this.isValid||!t.isValid)return!1;if(!this.loc.equals(t.loc))return!1;for(const s of Gn)if(e=this.values[s],n=t.values[s],!(void 0===e||0===e?void 0===n||0===n:e===n))return!1;var e,n;return!0}}const ts="Invalid Interval";class es{constructor(t){this.s=t.start,this.e=t.end,this.invalid=t.invalid||null,this.isLuxonInterval=!0}static invalid(t,e=null){if(!t)throw new ft("need to specify a reason the Interval is invalid");const n=t instanceof sn?t:new sn(t,e);if(pe.throwOnInvalid)throw new ct(n);return new es({invalid:n})}static fromDateTimes(t,e){const n=nr(t),s=nr(e),r=function(t,e){return t&&t.isValid?e&&e.isValid?e<t?es.invalid("end before start",`The end of an interval must be after its start, but you had start=${t.toISO()} and end=${e.toISO()}`):null:es.invalid("missing or invalid end"):es.invalid("missing or invalid start")}(n,s);return null==r?new es({start:n,end:s}):r}static after(t,e){const n=Xn.fromDurationLike(e),s=nr(t);return es.fromDateTimes(s,s.plus(n))}static before(t,e){const n=Xn.fromDurationLike(e),s=nr(t);return es.fromDateTimes(s.minus(n),s)}static fromISO(t,e){const[n,s]=(t||"").split("/",2);if(n&&s){let t,r,i,o;try{t=er.fromISO(n,e),r=t.isValid}catch(s){r=!1}try{i=er.fromISO(s,e),o=i.isValid}catch(s){o=!1}if(r&&o)return es.fromDateTimes(t,i);if(r){const n=Xn.fromISO(s,e);if(n.isValid)return es.after(t,n)}else if(o){const t=Xn.fromISO(n,e);if(t.isValid)return es.before(i,t)}}return es.invalid("unparsable",`the input "${t}" can't be parsed as ISO 8601`)}static isInterval(t){return t&&t.isLuxonInterval||!1}get start(){return this.isValid?this.s:null}get end(){return this.isValid?this.e:null}get isValid(){return null===this.invalidReason}get invalidReason(){return this.invalid?this.invalid.reason:null}get invalidExplanation(){return this.invalid?this.invalid.explanation:null}length(t="milliseconds"){return this.isValid?this.toDuration(t).get(t):NaN}count(t="milliseconds"){if(!this.isValid)return NaN;const e=this.start.startOf(t),n=this.end.startOf(t);return Math.floor(n.diff(e,t).get(t))+(n.valueOf()!==this.end.valueOf())}hasSame(t){return!!this.isValid&&(this.isEmpty()||this.e.minus(1).hasSame(this.s,t))}isEmpty(){return this.s.valueOf()===this.e.valueOf()}isAfter(t){return!!this.isValid&&this.s>t}isBefore(t){return!!this.isValid&&this.e<=t}contains(t){return!!this.isValid&&(this.s<=t&&this.e>t)}set({start:t,end:e}={}){return this.isValid?es.fromDateTimes(t||this.s,e||this.e):this}splitAt(...t){if(!this.isValid)return[];const e=t.map(nr).filter(t=>this.contains(t)).sort(),n=[];let{s:s}=this,r=0;for(;s<this.e;){const t=e[r]||this.e,i=+t>+this.e?this.e:t;n.push(es.fromDateTimes(s,i)),s=i,r+=1}return n}splitBy(t){const e=Xn.fromDurationLike(t);if(!this.isValid||!e.isValid||0===e.as("milliseconds"))return[];let n,{s:s}=this,r=1;const i=[];for(;s<this.e;){const t=this.start.plus(e.mapUnits(t=>t*r));n=+t>+this.e?this.e:t,i.push(es.fromDateTimes(s,n)),s=n,r+=1}return i}divideEqually(t){return this.isValid?this.splitBy(this.length()/t).slice(0,t):[]}overlaps(t){return this.e>t.s&&this.s<t.e}abutsStart(t){return!!this.isValid&&+this.e==+t.s}abutsEnd(t){return!!this.isValid&&+t.e==+this.s}engulfs(t){return!!this.isValid&&(this.s<=t.s&&this.e>=t.e)}equals(t){return!(!this.isValid||!t.isValid)&&(this.s.equals(t.s)&&this.e.equals(t.e))}intersection(t){if(!this.isValid)return this;const e=this.s>t.s?this.s:t.s,n=this.e<t.e?this.e:t.e;return e>=n?null:es.fromDateTimes(e,n)}union(t){if(!this.isValid)return this;const e=this.s<t.s?this.s:t.s,n=this.e>t.e?this.e:t.e;return es.fromDateTimes(e,n)}static merge(t){const[e,n]=t.sort((t,e)=>t.s-e.s).reduce(([t,e],n)=>e?e.overlaps(n)||e.abutsStart(n)?[t,e.union(n)]:[t.concat([e]),n]:[t,n],[[],null]);return n&&e.push(n),e}static xor(t){let e=null,n=0;const s=[],r=t.map(t=>[{time:t.s,type:"s"},{time:t.e,type:"e"}]),i=Array.prototype.concat(...r).sort((t,e)=>t.time-e.time);for(const t of i)n+="s"===t.type?1:-1,1===n?e=t.time:(e&&+e!=+t.time&&s.push(es.fromDateTimes(e,t.time)),e=null);return es.merge(s)}difference(...t){return es.xor([this].concat(t)).map(t=>this.intersection(t)).filter(t=>t&&!t.isEmpty())}toString(){return this.isValid?`[${this.s.toISO()} – ${this.e.toISO()})`:ts}toLocaleString(t=wt,e={}){return this.isValid?nn.create(this.s.loc.clone(e),t).formatInterval(this):ts}toISO(t){return this.isValid?`${this.s.toISO(t)}/${this.e.toISO(t)}`:ts}toISODate(){return this.isValid?`${this.s.toISODate()}/${this.e.toISODate()}`:ts}toISOTime(t){return this.isValid?`${this.s.toISOTime(t)}/${this.e.toISOTime(t)}`:ts}toFormat(t,{separator:e=" – "}={}){return this.isValid?`${this.s.toFormat(t)}${e}${this.e.toFormat(t)}`:ts}toDuration(t,e){return this.isValid?this.e.diff(this.s,t,e):Xn.invalid(this.invalidReason)}mapEndpoints(t){return es.fromDateTimes(t(this.s),t(this.e))}}class ns{static hasDST(t=pe.defaultZone){const e=er.now().setZone(t).set({month:12});return!t.isUniversal&&e.offset!==e.set({month:6}).offset}static isValidIANAZone(t){return Jt.isValidZone(t)}static normalizeZone(t){return le(t,pe.defaultZone)}static months(t="long",{locale:e=null,numberingSystem:n=null,locObj:s=null,outputCalendar:r="gregory"}={}){return(s||re.create(e,n,r)).months(t)}static monthsFormat(t="long",{locale:e=null,numberingSystem:n=null,locObj:s=null,outputCalendar:r="gregory"}={}){return(s||re.create(e,n,r)).months(t,!0)}static weekdays(t="long",{locale:e=null,numberingSystem:n=null,locObj:s=null}={}){return(s||re.create(e,n,null)).weekdays(t)}static weekdaysFormat(t="long",{locale:e=null,numberingSystem:n=null,locObj:s=null}={}){return(s||re.create(e,n,null)).weekdays(t,!0)}static meridiems({locale:t=null}={}){return re.create(t).meridiems()}static eras(t="short",{locale:e=null}={}){return re.create(e,null,"gregory").eras(t)}static features(){return{relative:Se()}}}function ss(t,e){const n=t=>t.toUTC(0,{keepLocalTime:!0}).startOf("day").valueOf(),s=n(e)-n(t);return Math.floor(Xn.fromMillis(s).as("days"))}function rs(t,e,n,s){let[r,i,o,a]=function(t,e,n){const s=[["years",(t,e)=>e.year-t.year],["quarters",(t,e)=>e.quarter-t.quarter+4*(e.year-t.year)],["months",(t,e)=>e.month-t.month+12*(e.year-t.year)],["weeks",(t,e)=>{const n=ss(t,e);return(n-n%7)/7}],["days",ss]],r={},i=t;let o,a;for(const[l,u]of s)n.indexOf(l)>=0&&(o=l,r[l]=u(t,e),a=i.plus(r),a>e?(r[l]--,t=i.plus(r)):t=a);return[t,r,a,o]}(t,e,n);const l=e-r,u=n.filter(t=>["hours","minutes","seconds","milliseconds"].indexOf(t)>=0);0===u.length&&(o<e&&(o=r.plus({[a]:1})),o!==r&&(i[a]=(i[a]||0)+l/(o-r)));const c=Xn.fromObject(i,s);return u.length>0?Xn.fromMillis(l,s).shiftTo(...u).plus(c):c}const is={arab:"[٠-٩]",arabext:"[۰-۹]",bali:"[᭐-᭙]",beng:"[০-৯]",deva:"[०-९]",fullwide:"[０-９]",gujr:"[૦-૯]",hanidec:"[〇|一|二|三|四|五|六|七|八|九]",khmr:"[០-៩]",knda:"[೦-೯]",laoo:"[໐-໙]",limb:"[᥆-᥏]",mlym:"[൦-൯]",mong:"[᠐-᠙]",mymr:"[၀-၉]",orya:"[୦-୯]",tamldec:"[௦-௯]",telu:"[౦-౯]",thai:"[๐-๙]",tibt:"[༠-༩]",latn:"\\d"},os={arab:[1632,1641],arabext:[1776,1785],bali:[6992,7001],beng:[2534,2543],deva:[2406,2415],fullwide:[65296,65303],gujr:[2790,2799],khmr:[6112,6121],knda:[3302,3311],laoo:[3792,3801],limb:[6470,6479],mlym:[3430,3439],mong:[6160,6169],mymr:[4160,4169],orya:[2918,2927],tamldec:[3046,3055],telu:[3174,3183],thai:[3664,3673],tibt:[3872,3881]},as=is.hanidec.replace(/[\[|\]]/g,"").split("");function ls({numberingSystem:t},e=""){return new RegExp(`${is[t||"latn"]}${e}`)}function us(t,e=(t=>t)){return{regex:t,deser:([t])=>e(function(t){let e=parseInt(t,10);if(isNaN(e)){e="";for(let n=0;n<t.length;n++){const s=t.charCodeAt(n);if(-1!==t[n].search(is.hanidec))e+=as.indexOf(t[n]);else for(const t in os){const[n,r]=os[t];s>=n&&s<=r&&(e+=s-n)}}return parseInt(e,10)}return e}(t))}}const cs=`[ ${String.fromCharCode(160)}]`,hs=new RegExp(cs,"g");function ds(t){return t.replace(/\./g,"\\.?").replace(hs,cs)}function ms(t){return t.replace(/\./g,"").replace(hs," ").toLowerCase()}function fs(t,e){return null===t?null:{regex:RegExp(t.map(ds).join("|")),deser:([n])=>t.findIndex(t=>ms(n)===ms(t))+e}}function ys(t,e){return{regex:t,deser:([,t,e])=>Le(t,e),groups:e}}function ps(t){return{regex:t,deser:([t])=>t}}const gs={year:{"2-digit":"yy",numeric:"yyyyy"},month:{numeric:"M","2-digit":"MM",short:"MMM",long:"MMMM"},day:{numeric:"d","2-digit":"dd"},weekday:{short:"EEE",long:"EEEE"},dayperiod:"a",dayPeriod:"a",hour:{numeric:"h","2-digit":"hh"},minute:{numeric:"m","2-digit":"mm"},second:{numeric:"s","2-digit":"ss"},timeZoneName:{long:"ZZZZZ",short:"ZZZ"}};let vs=null;function ws(t,e){return Array.prototype.concat(...t.map(t=>function(t,e){if(t.literal)return t;const n=bs(nn.macroTokenToFormatOpts(t.val),e);return null==n||n.includes(void 0)?t:n}(t,e)))}function Ss(t,e,n){const s=ws(nn.parseFormat(n),t),r=s.map(e=>function(t,e){const n=ls(e),s=ls(e,"{2}"),r=ls(e,"{3}"),i=ls(e,"{4}"),o=ls(e,"{6}"),a=ls(e,"{1,2}"),l=ls(e,"{1,3}"),u=ls(e,"{1,6}"),c=ls(e,"{1,9}"),h=ls(e,"{2,4}"),d=ls(e,"{4,6}"),m=t=>{return{regex:RegExp((e=t.val,e.replace(/[\-\[\]{}()*+?.,\\\^$|#\s]/g,"\\$&"))),deser:([t])=>t,literal:!0};var e},f=(f=>{if(t.literal)return m(f);switch(f.val){case"G":return fs(e.eras("short",!1),0);case"GG":return fs(e.eras("long",!1),0);case"y":return us(u);case"yy":return us(h,Ie);case"yyyy":return us(i);case"yyyyy":return us(d);case"yyyyyy":return us(o);case"M":return us(a);case"MM":return us(s);case"MMM":return fs(e.months("short",!0,!1),1);case"MMMM":return fs(e.months("long",!0,!1),1);case"L":return us(a);case"LL":return us(s);case"LLL":return fs(e.months("short",!1,!1),1);case"LLLL":return fs(e.months("long",!1,!1),1);case"d":return us(a);case"dd":return us(s);case"o":return us(l);case"ooo":return us(r);case"HH":return us(s);case"H":return us(a);case"hh":return us(s);case"h":return us(a);case"mm":return us(s);case"m":case"q":return us(a);case"qq":return us(s);case"s":return us(a);case"ss":return us(s);case"S":return us(l);case"SSS":return us(r);case"u":return ps(c);case"uu":return ps(a);case"uuu":return us(n);case"a":return fs(e.meridiems(),0);case"kkkk":return us(i);case"kk":return us(h,Ie);case"W":return us(a);case"WW":return us(s);case"E":case"c":return us(n);case"EEE":return fs(e.weekdays("short",!1,!1),1);case"EEEE":return fs(e.weekdays("long",!1,!1),1);case"ccc":return fs(e.weekdays("short",!0,!1),1);case"cccc":return fs(e.weekdays("long",!0,!1),1);case"Z":case"ZZ":return ys(new RegExp(`([+-]${a.source})(?::(${s.source}))?`),2);case"ZZZ":return ys(new RegExp(`([+-]${a.source})(${s.source})?`),2);case"z":return ps(/[a-z_+-/]{1,256}?/i);case" ":return ps(/[^\S\n\r]/);default:return m(f)}})(t)||{invalidReason:"missing Intl.DateTimeFormat.formatToParts support"};return f.token=t,f}(e,t)),i=r.find(t=>t.invalidReason);if(i)return{input:e,tokens:s,invalidReason:i.invalidReason};{const[t,n]=function(t){return[`^${t.map(t=>t.regex).reduce((t,e)=>`${t}(${e.source})`,"")}$`,t]}(r),i=RegExp(t,"i"),[o,a]=function(t,e,n){const s=t.match(e);if(s){const t={};let e=1;for(const r in n)if($e(n,r)){const i=n[r],o=i.groups?i.groups+1:1;!i.literal&&i.token&&(t[i.token.val[0]]=i.deser(s.slice(e,e+o))),e+=o}return[s,t]}return[s,{}]}(e,i,n),[l,u,c]=a?function(t){let e,n=null;return ge(t.z)||(n=Jt.create(t.z)),ge(t.Z)||(n||(n=new oe(t.Z)),e=t.Z),ge(t.q)||(t.M=3*(t.q-1)+1),ge(t.h)||(t.h<12&&1===t.a?t.h+=12:12===t.h&&0===t.a&&(t.h=0)),0===t.G&&t.y&&(t.y=-t.y),ge(t.u)||(t.S=Ee(t.u)),[Object.keys(t).reduce((e,n)=>{const s=(t=>{switch(t){case"S":return"millisecond";case"s":return"second";case"m":return"minute";case"h":case"H":return"hour";case"d":return"day";case"o":return"ordinal";case"L":case"M":return"month";case"y":return"year";case"E":case"c":return"weekday";case"W":return"weekNumber";case"k":return"weekYear";case"q":return"quarter";default:return null}})(n);return s&&(e[s]=t[n]),e},{}),n,e]}(a):[null,null,void 0];if($e(a,"a")&&$e(a,"H"))throw new dt("Can't include meridiem when specifying 24-hour format");return{input:e,tokens:s,regex:i,rawMatches:o,matches:a,result:l,zone:u,specificOffset:c}}}function bs(t,e){if(!t)return null;return nn.create(e,t).formatDateTimeParts((vs||(vs=er.fromMillis(1555555555555)),vs)).map(e=>function(t,e){const{type:n,value:s}=t;if("literal"===n){const t=/^\s+$/.test(s);return{literal:!t,val:t?" ":s}}const r=e[n];let i=gs[n];if("object"==typeof i&&(i=i[r]),i)return{literal:!1,val:i}}(e,t))}const $s=[0,31,59,90,120,151,181,212,243,273,304,334],_s=[0,31,60,91,121,152,182,213,244,274,305,335];function Ts(t,e){return new sn("unit out of range",`you specified ${e} (of type ${typeof e}) as a ${t}, which is invalid`)}function Os(t,e,n){const s=new Date(Date.UTC(t,e-1,n));t<100&&t>=0&&s.setUTCFullYear(s.getUTCFullYear()-1900);const r=s.getUTCDay();return 0===r?7:r}function ks(t,e,n){return n+(Me(t)?_s:$s)[e-1]}function Es(t,e){const n=Me(t)?_s:$s,s=n.findIndex(t=>t<e);return{month:s+1,day:e-n[s]}}function Ns(t){const{year:e,month:n,day:s}=t,r=ks(e,n,s),i=Os(e,n,s);let o,a=Math.floor((r-i+10)/7);return a<1?(o=e-1,a=De(o)):a>De(e)?(o=e+1,a=1):o=e,{weekYear:o,weekNumber:a,weekday:i,...Ue(t)}}function Ms(t){const{weekYear:e,weekNumber:n,weekday:s}=t,r=Os(e,1,4),i=Ae(e);let o,a=7*n+s-r-3;a<1?(o=e-1,a+=Ae(o)):a>i?(o=e+1,a-=Ae(e)):o=e;const{month:l,day:u}=Es(o,a);return{year:o,month:l,day:u,...Ue(t)}}function As(t){const{year:e,month:n,day:s}=t;return{year:e,ordinal:ks(e,n,s),...Ue(t)}}function Cs(t){const{year:e,ordinal:n}=t,{month:s,day:r}=Es(e,n);return{year:e,month:s,day:r,...Ue(t)}}function xs(t){const e=we(t.year),n=_e(t.month,1,12),s=_e(t.day,1,Ce(t.year,t.month));return e?n?!s&&Ts("day",t.day):Ts("month",t.month):Ts("year",t.year)}function Ds(t){const{hour:e,minute:n,second:s,millisecond:r}=t,i=_e(e,0,23)||24===e&&0===n&&0===s&&0===r,o=_e(n,0,59),a=_e(s,0,59),l=_e(r,0,999);return i?o?a?!l&&Ts("millisecond",r):Ts("second",s):Ts("minute",n):Ts("hour",e)}function Is(t){return new sn("unsupported zone",`the zone "${t.name}" is not supported`)}function Vs(t){return null===t.weekData&&(t.weekData=Ns(t.c)),t.weekData}function Ls(t,e){const n={ts:t.ts,zone:t.zone,c:t.c,o:t.o,loc:t.loc,invalid:t.invalid};return new er({...n,...e,old:n})}function Fs(t,e,n){let s=t-60*e*1e3;const r=n.offset(s);if(e===r)return[s,e];s-=60*(r-e)*1e3;const i=n.offset(s);return r===i?[s,r]:[t-60*Math.min(r,i)*1e3,Math.max(r,i)]}function Zs(t,e){const n=new Date(t+=60*e*1e3);return{year:n.getUTCFullYear(),month:n.getUTCMonth()+1,day:n.getUTCDate(),hour:n.getUTCHours(),minute:n.getUTCMinutes(),second:n.getUTCSeconds(),millisecond:n.getUTCMilliseconds()}}function zs(t,e,n){return Fs(xe(t),e,n)}function Us(t,e){const n=t.o,s=t.c.year+Math.trunc(e.years),r=t.c.month+Math.trunc(e.months)+3*Math.trunc(e.quarters),i={...t.c,year:s,month:r,day:Math.min(t.c.day,Ce(s,r))+Math.trunc(e.days)+7*Math.trunc(e.weeks)},o=Xn.fromObject({years:e.years-Math.trunc(e.years),quarters:e.quarters-Math.trunc(e.quarters),months:e.months-Math.trunc(e.months),weeks:e.weeks-Math.trunc(e.weeks),days:e.days-Math.trunc(e.days),hours:e.hours,minutes:e.minutes,seconds:e.seconds,milliseconds:e.milliseconds}).as("milliseconds"),a=xe(i);let[l,u]=Fs(a,n,t.zone);return 0!==o&&(l+=o,u=t.zone.offset(l)),{ts:l,o:u}}function js(t,e,n,s,r,i){const{setZone:o,zone:a}=n;if(t&&0!==Object.keys(t).length||e){const s=e||a,r=er.fromObject(t,{...n,zone:s,specificOffset:i});return o?r:r.setZone(a)}return er.invalid(new sn("unparsable",`the input "${r}" can't be parsed as ${s}`))}function Hs(t,e,n=!0){return t.isValid?nn.create(re.create("en-US"),{allowZ:n,forceSimple:!0}).formatDateTimeFromString(t,e):null}function Ps(t,e){const n=t.c.year>9999||t.c.year<0;let s="";return n&&t.c.year>=0&&(s+="+"),s+=Te(t.c.year,n?6:4),e?(s+="-",s+=Te(t.c.month),s+="-",s+=Te(t.c.day)):(s+=Te(t.c.month),s+=Te(t.c.day)),s}function Rs(t,e,n,s,r,i){let o=Te(t.c.hour);return e?(o+=":",o+=Te(t.c.minute),0===t.c.second&&n||(o+=":")):o+=Te(t.c.minute),0===t.c.second&&n||(o+=Te(t.c.second),0===t.c.millisecond&&s||(o+=".",o+=Te(t.c.millisecond,3))),r&&(t.isOffsetFixed&&0===t.offset&&!i?o+="Z":t.o<0?(o+="-",o+=Te(Math.trunc(-t.o/60)),o+=":",o+=Te(Math.trunc(-t.o%60))):(o+="+",o+=Te(Math.trunc(t.o/60)),o+=":",o+=Te(Math.trunc(t.o%60)))),i&&(o+="["+t.zone.ianaName+"]"),o}const qs={month:1,day:1,hour:0,minute:0,second:0,millisecond:0},Ws={weekNumber:1,weekday:1,hour:0,minute:0,second:0,millisecond:0},Js={ordinal:1,hour:0,minute:0,second:0,millisecond:0},Ys=["year","month","day","hour","minute","second","millisecond"],Gs=["weekYear","weekNumber","weekday","hour","minute","second","millisecond"],Bs=["year","ordinal","hour","minute","second","millisecond"];function Qs(t){const e={year:"year",years:"year",month:"month",months:"month",day:"day",days:"day",hour:"hour",hours:"hour",minute:"minute",minutes:"minute",quarter:"quarter",quarters:"quarter",second:"second",seconds:"second",millisecond:"millisecond",milliseconds:"millisecond",weekday:"weekday",weekdays:"weekday",weeknumber:"weekNumber",weeksnumber:"weekNumber",weeknumbers:"weekNumber",weekyear:"weekYear",weekyears:"weekYear",ordinal:"ordinal"}[t.toLowerCase()];if(!e)throw new mt(t);return e}function Ks(t,e){const n=le(e.zone,pe.defaultZone),s=re.fromObject(e),r=pe.now();let i,o;if(ge(t.year))i=r;else{for(const e of Ys)ge(t[e])&&(t[e]=qs[e]);const e=xs(t)||Ds(t);if(e)return er.invalid(e);const s=n.offset(r);[i,o]=zs(t,s,n)}return new er({ts:i,zone:n,loc:s,o:o})}function Xs(t,e,n){const s=!!ge(n.round)||n.round,r=(t,r)=>{t=Ne(t,s||n.calendary?0:2,!0);return e.loc.clone(n).relFormatter(n).format(t,r)},i=s=>n.calendary?e.hasSame(t,s)?0:e.startOf(s).diff(t.startOf(s),s).get(s):e.diff(t,s).get(s);if(n.unit)return r(i(n.unit),n.unit);for(const t of n.units){const e=i(t);if(Math.abs(e)>=1)return r(e,t)}return r(t>e?-0:0,n.units[n.units.length-1])}function tr(t){let e,n={};return t.length>0&&"object"==typeof t[t.length-1]?(n=t[t.length-1],e=Array.from(t).slice(0,t.length-1)):e=Array.from(t),[n,e]}class er{constructor(t){const e=t.zone||pe.defaultZone;let n=t.invalid||(Number.isNaN(t.ts)?new sn("invalid input"):null)||(e.isValid?null:Is(e));this.ts=ge(t.ts)?pe.now():t.ts;let s=null,r=null;if(!n){if(t.old&&t.old.ts===this.ts&&t.old.zone.equals(e))[s,r]=[t.old.c,t.old.o];else{const t=e.offset(this.ts);s=Zs(this.ts,t),n=Number.isNaN(s.year)?new sn("invalid input"):null,s=n?null:s,r=n?null:t}}this._zone=e,this.loc=t.loc||re.create(),this.invalid=n,this.weekData=null,this.c=s,this.o=r,this.isLuxonDateTime=!0}static now(){return new er({})}static local(){const[t,e]=tr(arguments),[n,s,r,i,o,a,l]=e;return Ks({year:n,month:s,day:r,hour:i,minute:o,second:a,millisecond:l},t)}static utc(){const[t,e]=tr(arguments),[n,s,r,i,o,a,l]=e;return t.zone=oe.utcInstance,Ks({year:n,month:s,day:r,hour:i,minute:o,second:a,millisecond:l},t)}static fromJSDate(t,e={}){const n=function(t){return"[object Date]"===Object.prototype.toString.call(t)}(t)?t.valueOf():NaN;if(Number.isNaN(n))return er.invalid("invalid input");const s=le(e.zone,pe.defaultZone);return s.isValid?new er({ts:n,zone:s,loc:re.fromObject(e)}):er.invalid(Is(s))}static fromMillis(t,e={}){if(ve(t))return t<-864e13||t>864e13?er.invalid("Timestamp out of range"):new er({ts:t,zone:le(e.zone,pe.defaultZone),loc:re.fromObject(e)});throw new ft(`fromMillis requires a numerical input, but received a ${typeof t} with value ${t}`)}static fromSeconds(t,e={}){if(ve(t))return new er({ts:1e3*t,zone:le(e.zone,pe.defaultZone),loc:re.fromObject(e)});throw new ft("fromSeconds requires a numerical input")}static fromObject(t,e={}){t=t||{};const n=le(e.zone,pe.defaultZone);if(!n.isValid)return er.invalid(Is(n));const s=pe.now(),r=ge(e.specificOffset)?n.offset(s):e.specificOffset,i=Ze(t,Qs),o=!ge(i.ordinal),a=!ge(i.year),l=!ge(i.month)||!ge(i.day),u=a||l,c=i.weekYear||i.weekNumber,h=re.fromObject(e);if((u||o)&&c)throw new dt("Can't mix weekYear/weekNumber units with year/month/day or ordinals");if(l&&o)throw new dt("Can't mix ordinal dates with month/day");const d=c||i.weekday&&!u;let m,f,y=Zs(s,r);d?(m=Gs,f=Ws,y=Ns(y)):o?(m=Bs,f=Js,y=As(y)):(m=Ys,f=qs);let p=!1;for(const t of m){ge(i[t])?i[t]=p?f[t]:y[t]:p=!0}const g=(d?function(t){const e=we(t.weekYear),n=_e(t.weekNumber,1,De(t.weekYear)),s=_e(t.weekday,1,7);return e?n?!s&&Ts("weekday",t.weekday):Ts("week",t.week):Ts("weekYear",t.weekYear)}(i):o?function(t){const e=we(t.year),n=_e(t.ordinal,1,Ae(t.year));return e?!n&&Ts("ordinal",t.ordinal):Ts("year",t.year)}(i):xs(i))||Ds(i);if(g)return er.invalid(g);const v=d?Ms(i):o?Cs(i):i,[w,S]=zs(v,r,n),b=new er({ts:w,zone:n,o:S,loc:h});return i.weekday&&u&&t.weekday!==b.weekday?er.invalid("mismatched weekday",`you can't specify both a weekday of ${i.weekday} and a date of ${b.toISO()}`):b}static fromISO(t,e={}){const[n,s]=function(t){return ln(t,[In,Zn],[Vn,zn],[Ln,Un],[Fn,jn])}(t);return js(n,s,e,"ISO 8601",t)}static fromRFC2822(t,e={}){const[n,s]=function(t){return ln(function(t){return t.replace(/\([^()]*\)|[\n\t]/g," ").replace(/(\s\s+)/g," ").trim()}(t),[En,Nn])}(t);return js(n,s,e,"RFC 2822",t)}static fromHTTP(t,e={}){const[n,s]=function(t){return ln(t,[Mn,xn],[An,xn],[Cn,Dn])}(t);return js(n,s,e,"HTTP",e)}static fromFormat(t,e,n={}){if(ge(t)||ge(e))throw new ft("fromFormat requires an input string and a format");const{locale:s=null,numberingSystem:r=null}=n,i=re.fromOpts({locale:s,numberingSystem:r,defaultToEN:!0}),[o,a,l,u]=function(t,e,n){const{result:s,zone:r,specificOffset:i,invalidReason:o}=Ss(t,e,n);return[s,r,i,o]}(i,t,e);return u?er.invalid(u):js(o,a,n,"format "+e,t,l)}static fromString(t,e,n={}){return er.fromFormat(t,e,n)}static fromSQL(t,e={}){const[n,s]=function(t){return ln(t,[Pn,Zn],[Rn,qn])}(t);return js(n,s,e,"SQL",t)}static invalid(t,e=null){if(!t)throw new ft("need to specify a reason the DateTime is invalid");const n=t instanceof sn?t:new sn(t,e);if(pe.throwOnInvalid)throw new ut(n);return new er({invalid:n})}static isDateTime(t){return t&&t.isLuxonDateTime||!1}static parseFormatForOpts(t,e={}){const n=bs(t,re.fromObject(e));return n?n.map(t=>t?t.val:null).join(""):null}static expandFormat(t,e={}){return ws(nn.parseFormat(t),re.fromObject(e)).map(t=>t.val).join("")}get(t){return this[t]}get isValid(){return null===this.invalid}get invalidReason(){return this.invalid?this.invalid.reason:null}get invalidExplanation(){return this.invalid?this.invalid.explanation:null}get locale(){return this.isValid?this.loc.locale:null}get numberingSystem(){return this.isValid?this.loc.numberingSystem:null}get outputCalendar(){return this.isValid?this.loc.outputCalendar:null}get zone(){return this._zone}get zoneName(){return this.isValid?this.zone.name:null}get year(){return this.isValid?this.c.year:NaN}get quarter(){return this.isValid?Math.ceil(this.c.month/3):NaN}get month(){return this.isValid?this.c.month:NaN}get day(){return this.isValid?this.c.day:NaN}get hour(){return this.isValid?this.c.hour:NaN}get minute(){return this.isValid?this.c.minute:NaN}get second(){return this.isValid?this.c.second:NaN}get millisecond(){return this.isValid?this.c.millisecond:NaN}get weekYear(){return this.isValid?Vs(this).weekYear:NaN}get weekNumber(){return this.isValid?Vs(this).weekNumber:NaN}get weekday(){return this.isValid?Vs(this).weekday:NaN}get ordinal(){return this.isValid?As(this.c).ordinal:NaN}get monthShort(){return this.isValid?ns.months("short",{locObj:this.loc})[this.month-1]:null}get monthLong(){return this.isValid?ns.months("long",{locObj:this.loc})[this.month-1]:null}get weekdayShort(){return this.isValid?ns.weekdays("short",{locObj:this.loc})[this.weekday-1]:null}get weekdayLong(){return this.isValid?ns.weekdays("long",{locObj:this.loc})[this.weekday-1]:null}get offset(){return this.isValid?+this.o:NaN}get offsetNameShort(){return this.isValid?this.zone.offsetName(this.ts,{format:"short",locale:this.locale}):null}get offsetNameLong(){return this.isValid?this.zone.offsetName(this.ts,{format:"long",locale:this.locale}):null}get isOffsetFixed(){return this.isValid?this.zone.isUniversal:null}get isInDST(){return!this.isOffsetFixed&&(this.offset>this.set({month:1,day:1}).offset||this.offset>this.set({month:5}).offset)}get isInLeapYear(){return Me(this.year)}get daysInMonth(){return Ce(this.year,this.month)}get daysInYear(){return this.isValid?Ae(this.year):NaN}get weeksInWeekYear(){return this.isValid?De(this.weekYear):NaN}resolvedLocaleOptions(t={}){const{locale:e,numberingSystem:n,calendar:s}=nn.create(this.loc.clone(t),t).resolvedOptions(this);return{locale:e,numberingSystem:n,outputCalendar:s}}toUTC(t=0,e={}){return this.setZone(oe.instance(t),e)}toLocal(){return this.setZone(pe.defaultZone)}setZone(t,{keepLocalTime:e=!1,keepCalendarTime:n=!1}={}){if((t=le(t,pe.defaultZone)).equals(this.zone))return this;if(t.isValid){let s=this.ts;if(e||n){const e=t.offset(this.ts),n=this.toObject();[s]=zs(n,e,t)}return Ls(this,{ts:s,zone:t})}return er.invalid(Is(t))}reconfigure({locale:t,numberingSystem:e,outputCalendar:n}={}){return Ls(this,{loc:this.loc.clone({locale:t,numberingSystem:e,outputCalendar:n})})}setLocale(t){return this.reconfigure({locale:t})}set(t){if(!this.isValid)return this;const e=Ze(t,Qs),n=!ge(e.weekYear)||!ge(e.weekNumber)||!ge(e.weekday),s=!ge(e.ordinal),r=!ge(e.year),i=!ge(e.month)||!ge(e.day),o=r||i,a=e.weekYear||e.weekNumber;if((o||s)&&a)throw new dt("Can't mix weekYear/weekNumber units with year/month/day or ordinals");if(i&&s)throw new dt("Can't mix ordinal dates with month/day");let l;n?l=Ms({...Ns(this.c),...e}):ge(e.ordinal)?(l={...this.toObject(),...e},ge(e.day)&&(l.day=Math.min(Ce(l.year,l.month),l.day))):l=Cs({...As(this.c),...e});const[u,c]=zs(l,this.o,this.zone);return Ls(this,{ts:u,o:c})}plus(t){if(!this.isValid)return this;return Ls(this,Us(this,Xn.fromDurationLike(t)))}minus(t){if(!this.isValid)return this;return Ls(this,Us(this,Xn.fromDurationLike(t).negate()))}startOf(t){if(!this.isValid)return this;const e={},n=Xn.normalizeUnit(t);switch(n){case"years":e.month=1;case"quarters":case"months":e.day=1;case"weeks":case"days":e.hour=0;case"hours":e.minute=0;case"minutes":e.second=0;case"seconds":e.millisecond=0}if("weeks"===n&&(e.weekday=1),"quarters"===n){const t=Math.ceil(this.month/3);e.month=3*(t-1)+1}return this.set(e)}endOf(t){return this.isValid?this.plus({[t]:1}).startOf(t).minus(1):this}toFormat(t,e={}){return this.isValid?nn.create(this.loc.redefaultToEN(e)).formatDateTimeFromString(this,t):"Invalid DateTime"}toLocaleString(t=wt,e={}){return this.isValid?nn.create(this.loc.clone(e),t).formatDateTime(this):"Invalid DateTime"}toLocaleParts(t={}){return this.isValid?nn.create(this.loc.clone(t),t).formatDateTimeParts(this):[]}toISO({format:t="extended",suppressSeconds:e=!1,suppressMilliseconds:n=!1,includeOffset:s=!0,extendedZone:r=!1}={}){if(!this.isValid)return null;const i="extended"===t;let o=Ps(this,i);return o+="T",o+=Rs(this,i,e,n,s,r),o}toISODate({format:t="extended"}={}){return this.isValid?Ps(this,"extended"===t):null}toISOWeekDate(){return Hs(this,"kkkk-'W'WW-c")}toISOTime({suppressMilliseconds:t=!1,suppressSeconds:e=!1,includeOffset:n=!0,includePrefix:s=!1,extendedZone:r=!1,format:i="extended"}={}){if(!this.isValid)return null;return(s?"T":"")+Rs(this,"extended"===i,e,t,n,r)}toRFC2822(){return Hs(this,"EEE, dd LLL yyyy HH:mm:ss ZZZ",!1)}toHTTP(){return Hs(this.toUTC(),"EEE, dd LLL yyyy HH:mm:ss 'GMT'")}toSQLDate(){return this.isValid?Ps(this,!0):null}toSQLTime({includeOffset:t=!0,includeZone:e=!1,includeOffsetSpace:n=!0}={}){let s="HH:mm:ss.SSS";return(e||t)&&(n&&(s+=" "),e?s+="z":t&&(s+="ZZ")),Hs(this,s,!0)}toSQL(t={}){return this.isValid?`${this.toSQLDate()} ${this.toSQLTime(t)}`:null}toString(){return this.isValid?this.toISO():"Invalid DateTime"}valueOf(){return this.toMillis()}toMillis(){return this.isValid?this.ts:NaN}toSeconds(){return this.isValid?this.ts/1e3:NaN}toUnixInteger(){return this.isValid?Math.floor(this.ts/1e3):NaN}toJSON(){return this.toISO()}toBSON(){return this.toJSDate()}toObject(t={}){if(!this.isValid)return{};const e={...this.c};return t.includeConfig&&(e.outputCalendar=this.outputCalendar,e.numberingSystem=this.loc.numberingSystem,e.locale=this.loc.locale),e}toJSDate(){return new Date(this.isValid?this.ts:NaN)}diff(t,e="milliseconds",n={}){if(!this.isValid||!t.isValid)return Xn.invalid("created by diffing an invalid DateTime");const s={locale:this.locale,numberingSystem:this.numberingSystem,...n},r=(a=e,Array.isArray(a)?a:[a]).map(Xn.normalizeUnit),i=t.valueOf()>this.valueOf(),o=rs(i?this:t,i?t:this,r,s);var a;return i?o.negate():o}diffNow(t="milliseconds",e={}){return this.diff(er.now(),t,e)}until(t){return this.isValid?es.fromDateTimes(this,t):this}hasSame(t,e){if(!this.isValid)return!1;const n=t.valueOf(),s=this.setZone(t.zone,{keepLocalTime:!0});return s.startOf(e)<=n&&n<=s.endOf(e)}equals(t){return this.isValid&&t.isValid&&this.valueOf()===t.valueOf()&&this.zone.equals(t.zone)&&this.loc.equals(t.loc)}toRelative(t={}){if(!this.isValid)return null;const e=t.base||er.fromObject({},{zone:this.zone}),n=t.padding?this<e?-t.padding:t.padding:0;let s=["years","months","days","hours","minutes","seconds"],r=t.unit;return Array.isArray(t.unit)&&(s=t.unit,r=void 0),Xs(e,this.plus(n),{...t,numeric:"always",units:s,unit:r})}toRelativeCalendar(t={}){return this.isValid?Xs(t.base||er.fromObject({},{zone:this.zone}),this,{...t,numeric:"auto",units:["years","months","days"],calendary:!0}):null}static min(...t){if(!t.every(er.isDateTime))throw new ft("min requires all arguments be DateTimes");return be(t,t=>t.valueOf(),Math.min)}static max(...t){if(!t.every(er.isDateTime))throw new ft("max requires all arguments be DateTimes");return be(t,t=>t.valueOf(),Math.max)}static fromFormatExplain(t,e,n={}){const{locale:s=null,numberingSystem:r=null}=n;return Ss(re.fromOpts({locale:s,numberingSystem:r,defaultToEN:!0}),t,e)}static fromStringExplain(t,e,n={}){return er.fromFormatExplain(t,e,n)}static get DATE_SHORT(){return wt}static get DATE_MED(){return St}static get DATE_MED_WITH_WEEKDAY(){return bt}static get DATE_FULL(){return $t}static get DATE_HUGE(){return _t}static get TIME_SIMPLE(){return Tt}static get TIME_WITH_SECONDS(){return Ot}static get TIME_WITH_SHORT_OFFSET(){return kt}static get TIME_WITH_LONG_OFFSET(){return Et}static get TIME_24_SIMPLE(){return Nt}static get TIME_24_WITH_SECONDS(){return Mt}static get TIME_24_WITH_SHORT_OFFSET(){return At}static get TIME_24_WITH_LONG_OFFSET(){return Ct}static get DATETIME_SHORT(){return xt}static get DATETIME_SHORT_WITH_SECONDS(){return Dt}static get DATETIME_MED(){return It}static get DATETIME_MED_WITH_SECONDS(){return Vt}static get DATETIME_MED_WITH_WEEKDAY(){return Lt}static get DATETIME_FULL(){return Ft}static get DATETIME_FULL_WITH_SECONDS(){return Zt}static get DATETIME_HUGE(){return zt}static get DATETIME_HUGE_WITH_SECONDS(){return Ut}}function nr(t){if(er.isDateTime(t))return t;if(t&&t.valueOf&&ve(t.valueOf()))return er.fromJSDate(t);if(t&&"object"==typeof t)return er.fromObject(t);throw new ft(`Unknown datetime argument: ${t}, of type ${typeof t}`)}const sr="1.2.4";console.info(`%c  Digital-Clock \n%c  Version ${sr}    `,"color: orange; font-weight: bold; background: black","color: white; font-weight: bold; background: dimgray"),window.customCards=window.customCards||[],window.customCards.push({type:"digital-clock",name:"DigitalClock",description:"A digital clock component"});let rr=class extends nt{constructor(){super(...arguments),this._firstLine="",this._secondLine="",this._interval=1e3}setConfig(t){var e;this._config=Object.assign({},t),this._config.timeFormat&&(this._config.firstLineFormat=this._config.timeFormat),this._config.dateFormat&&(this._config.secondLineFormat=this._config.dateFormat),this._config.interval!==this._interval&&(this._interval=null!==(e=this._config.interval)&&void 0!==e?e:1e3)}shouldUpdate(t){return t.has("_firstLine")||t.has("_secondLine")||t.has("_config")||t.has("hass")}async getCardSize(){return 3}updated(t){super.updated(t),t.has("_interval")&&(this._stopInterval(),this._startInterval()),t.has("_config")&&this._updateDateTime()}connectedCallback(){super.connectedCallback(),this._startInterval()}_startInterval(){this._intervalId||(this._intervalId=window.setInterval(this._updateDateTime.bind(this),this._interval))}_stopInterval(){this._intervalId&&(window.clearInterval(this._intervalId),this._intervalId=void 0)}async _updateDateTime(){var t,e,n,s,r,i,o,a,l,u,c,h,d,m;const f=null!==(e=null===(t=this._config)||void 0===t?void 0:t.timeZone)&&void 0!==e?e:null===(s=null===(n=this.hass)||void 0===n?void 0:n.config)||void 0===s?void 0:s.time_zone,y=null!==(i=null===(r=this._config)||void 0===r?void 0:r.locale)&&void 0!==i?i:null===(a=null===(o=this.hass)||void 0===o?void 0:o.locale)||void 0===a?void 0:a.language;let p,g,v=er.local();f&&(v=v.setZone(f)),y&&(v=v.setLocale(y)),p="string"==typeof(null===(l=this._config)||void 0===l?void 0:l.firstLineFormat)?v.toFormat(this._config.firstLineFormat):v.toLocaleString(null!==(c=null===(u=this._config)||void 0===u?void 0:u.firstLineFormat)&&void 0!==c?c:{hour:"2-digit",minute:"2-digit"}),g="string"==typeof(null===(h=this._config)||void 0===h?void 0:h.secondLineFormat)?v.toFormat(this._config.secondLineFormat):v.toLocaleString(null!==(m=null===(d=this._config)||void 0===d?void 0:d.secondLineFormat)&&void 0!==m?m:{weekday:"short",day:"2-digit",month:"short"}),p!==this._firstLine&&(this._firstLine=p),g!==this._secondLine&&(this._secondLine=g)}disconnectedCallback(){this._stopInterval(),super.disconnectedCallback()}render(){return F`
            <ha-card>
                <span class="first-line">${this._firstLine}</span>
                <span class="second-line">${this._secondLine}</span>
            </ha-card>
        `}static get styles(){return o`
          ha-card {
            text-align: center;
            font-weight: bold;
            padding: 8px 0;
          }

          ha-card > span {
            display: block;
          }

          .first-line {
            font-size: 2.8em;
            line-height: 1em;
          }

          .second-line {
            font-size: 1.6em;
            line-height: 1em;
          }
        `}};t([it({attribute:!1})],rr.prototype,"hass",void 0),t([ot()],rr.prototype,"_firstLine",void 0),t([ot()],rr.prototype,"_secondLine",void 0),t([ot()],rr.prototype,"_config",void 0),t([ot()],rr.prototype,"_interval",void 0),rr=t([(t=>e=>"function"==typeof e?((t,e)=>(customElements.define(t,e),e))(t,e):((t,e)=>{const{kind:n,elements:s}=e;return{kind:n,elements:s,finisher(e){customElements.define(t,e)}}})(t,e))("digital-clock")],rr);export{rr as DigitalClock};
