nextcloud-server/dist/dav-settings-personal-avail...

23 lines
137 KiB
JavaScript

import{q as qe,r as R,D as Y,o as E,b as v,h as V,A as Ot,C as me,c as ie,E as ae,t as j,a0 as Ne,F as wt,j as ke,s as je,x as Dt,M as pe,z as _t,w as q,u as S,a9 as Nt,aa as Mt,n as et,d as Se,ab as xt,_ as Ze,a2 as It,e as Te,v as ye,G as Re,f as _,l as Je,Z as tt,$ as st,U as kt,a6 as Bt,a7 as Pt,ac as Lt,a as zt,N as at,g as Vt}from"./NcSettingsSection-DFav6ob5-DwBgvX10.chunk.mjs";import{u as Ht,q as We,_ as jt,N as Rt,t as Wt,v as Pe,w as Ft,x as Gt,y as Kt,z as qt,A as Et,B as Zt,j as $e,e as Fe,s as Me,g as Jt,C as $t,m as Xt}from"./check-JUc8IOXP.chunk.mjs";import{l as K}from"./logger-CTnaoMpD.chunk.mjs";import{I as Qt,a as e0,l as t0}from"./TrashCanOutline-C-NZ7KHV.chunk.mjs";const s0=8,it=32,a0={name:"NcListItemIcon",components:{NcAvatar:Rt,NcHighlight:jt,NcIconSvgWrapper:We},mixins:[Ht],props:{name:{type:String,required:!0},subname:{type:String,default:""},icon:{type:String,default:""},iconSvg:{type:String,default:""},iconName:{type:String,default:""},search:{type:String,default:""},avatarSize:{type:Number,default:it},noMargin:{type:Boolean,default:!1},displayName:{type:String,default:null},isNoUser:{type:Boolean,default:!1},id:{type:String,default:null}},setup(){return{margin:s0,defaultSize:it}},computed:{hasIcon(){return this.icon!==""},hasIconSvg(){return this.iconSvg!==""},isValidSubname(){return this.subname?.trim?.()!==""},isSizeBigEnough(){return this.avatarSize>=26},cssVars(){const a=this.noMargin?0:this.margin;return{"--height":this.avatarSize+2*a+"px","--margin":this.margin+"px"}},searchParts(){const a=/^([^<]*)<([^>]+)>?$/,e=this.search.match(a);return this.isNoUser||!e?[this.search,this.search]:[e[1].trim(),e[2]]}},beforeMount(){!this.isNoUser&&!this.subname&&this.fetchUserStatus(this.user)}},i0=["id"],r0={class:"option__details"},n0={key:1},o0=["aria-label"];function l0(a,e,t,s,i,r){const o=R("NcAvatar"),n=R("NcHighlight"),l=R("NcIconSvgWrapper");return E(),Y("span",{id:t.id,class:Ne(["option",{"option--compact":t.avatarSize<s.defaultSize}]),style:wt(r.cssVars)},[v(o,me(a.$attrs,{"disable-menu":!0,"disable-tooltip":!0,"display-name":t.displayName||t.name,"is-no-user":t.isNoUser,size:t.avatarSize,class:"option__avatar"}),null,16,["display-name","is-no-user","size"]),V("div",r0,[v(n,{class:"option__lineone",text:t.name,search:r.searchParts[0]},null,8,["text","search"]),r.isValidSubname&&r.isSizeBigEnough?(E(),ie(n,{key:0,class:"option__linetwo",text:t.subname,search:r.searchParts[1]},null,8,["text","search"])):a.hasStatus?(E(),Y("span",n0,[V("span",null,j(a.userStatus.icon),1),V("span",null,j(a.userStatus.message),1)])):ae("",!0)]),Ot(a.$slots,"default",{},()=>[r.hasIconSvg?(E(),ie(l,{key:0,class:"option__icon",svg:t.iconSvg,name:t.iconName},null,8,["svg","name"])):r.hasIcon?(E(),Y("span",{key:1,class:Ne(["icon option__icon",t.icon]),"aria-label":t.iconName},null,10,o0)):ae("",!0)],!0)],14,i0)}const rt=qe(a0,[["render",l0],["__scopeId","data-v-1355c4c1"]]),u0=ke({__name:"NcSelectUsers",props:je({ariaLabelClearSelected:{},ariaLabelListbox:{},ariaLabelDeselectOption:{type:Function},disabled:{type:Boolean},inputId:{},inputLabel:{},labelOutside:{type:Boolean},keepOpen:{type:Boolean},loading:{type:Boolean},multiple:{type:Boolean},noWrap:{type:Boolean},options:{},placeholder:{},required:{type:Boolean}},{modelValue:{},modelModifiers:{}}),emits:je(["search"],["update:modelValue"]),setup(a,{emit:e}){const t=Dt(a,"modelValue"),s=e,i=pe("");_t(i,()=>s("search",i.value));const r=Number.parseInt(window.getComputedStyle(document.body).getPropertyValue("--default-clickable-area")),o=Number.parseInt(window.getComputedStyle(document.body).getPropertyValue("--default-grid-baseline")),n=r-2*o;function l(u,c,d){const m=/[^<]*<([^>]+)/,p=d.match(m),y=u.subname?.toLocaleLowerCase()??"";return p&&y.indexOf(p[1].toLocaleLowerCase())>-1||`${c} ${u.subname}`.toLocaleLowerCase().indexOf(d.toLocaleLowerCase())>-1}return(u,c)=>(E(),ie(S(Wt),me({modelValue:t.value,"onUpdate:modelValue":c[0]||(c[0]=d=>t.value=d),class:"nc-select-users"},u.$props,{"filter-by":l,label:"displayName",onSearch:c[1]||(c[1]=d=>i.value=d)}),{option:q(d=>[v(S(rt),me(d,{"avatar-size":32,name:d.displayName,search:i.value}),null,16,["name","search"])]),"selected-option":q(d=>[v(S(rt),me(d,{"avatar-size":n,name:d.displayName,"no-margin":"",search:i.value}),null,16,["name","search"])]),_:1},16,["modelValue"]))}}),d0=qe(u0,[["__scopeId","data-v-4fbb6472"]]),c0={class:"textarea__main-wrapper"},h0=["id","aria-describedby","disabled","placeholder","value"],m0=["for"],f0=["id"],p0=ke({inheritAttrs:!1,__name:"NcTextArea",props:je({disabled:{type:Boolean},error:{type:Boolean},helperText:{default:void 0},id:{default:()=>xt()},inputClass:{default:""},label:{default:void 0},labelOutside:{type:Boolean},placeholder:{default:void 0},resize:{default:"both"},success:{type:Boolean}},{modelValue:{required:!0},modelModifiers:{}}),emits:["update:modelValue"],setup(a,{expose:e}){const t=Dt(a,"modelValue"),s=a;e({focus:u,select:c});const i=Nt("input"),r=Mt(),o=et(()=>s.placeholder||(Pe?s.label:void 0));_t(()=>s.labelOutside,()=>{!s.labelOutside&&!s.label&&Kt.warn("[NcTextArea] You need to add a label to the NcInputField component. Either use the prop label or use an external one, as per the example in the documentation.")});const n=et(()=>{const d=[];return s.helperText&&d.push(`${s.id}-helper-text`),typeof r["aria-describedby"]=="string"&&d.push(r["aria-describedby"]),d.join(" ")||void 0});function l(d){const{value:m}=d.target;t.value=m}function u(d){i.value.focus(d)}function c(){i.value.select()}return(d,m)=>(E(),Y("div",{class:Ne(["textarea",[d.$attrs.class,{"textarea--disabled":d.disabled,"textarea--legacy":S(Pe)}]])},[V("div",c0,[V("textarea",me({...d.$attrs,class:void 0},{id:d.id,ref:"input","aria-describedby":n.value,"aria-live":"polite",class:["textarea__input",[d.inputClass,{"textarea__input--label-outside":d.labelOutside,"textarea__input--legacy":S(Pe),"textarea__input--success":d.success,"textarea__input--error":d.error}]],disabled:d.disabled,placeholder:o.value,style:{resize:d.resize},value:t.value,onInput:l}),null,16,h0),d.labelOutside?ae("",!0):(E(),Y("label",{key:0,class:"textarea__label",for:d.id},j(d.label),9,m0))]),d.helperText?(E(),Y("p",{key:0,id:`${d.id}-helper-text`,class:Ne(["textarea__helper-text-message",{"textarea__helper-text-message--error":d.error,"textarea__helper-text-message--success":d.success}])},[d.success?(E(),ie(We,{key:0,class:"textarea__helper-text-message__icon",path:S(Ft)},null,8,["path"])):d.error?(E(),ie(We,{key:1,class:"textarea__helper-text-message__icon",path:S(Gt)},null,8,["path"])):ae("",!0),Se(" "+j(d.helperText),1)],10,f0)):ae("",!0)],2))}}),T0=qe(p0,[["__scopeId","data-v-d7a7d046"]]);var Ge;(function(a){a[a.User=0]="User",a[a.Group=1]="Group",a[a.Link=3]="Link",a[a.Email=4]="Email",a[a.Remote=6]="Remote",a[a.Team=7]="Team",a[a.Guest=8]="Guest",a[a.RemoteGroup=9]="RemoteGroup",a[a.Room=10]="Room",a[a.Deck=12]="Deck",a[a.FederatedGroup=14]="FederatedGroup",a[a.ScienceMesh=15]="ScienceMesh"})(Ge||(Ge={}));function nt(a){const e=a.getFullYear(),t=(a.getMonth()+1).toString().padStart(2,"0"),s=a.getDate().toString().padStart(2,"0");return`${e}-${t}-${s}`}const y0={name:"AbsenceForm",components:{NcButton:$e,NcTextField:Zt,NcTextArea:T0,NcDateTimePickerNative:Et,NcSelectUsers:d0},setup(){return{t:_}},data(){const{firstDay:a,lastDay:e,status:t,message:s,replacementUserId:i,replacementUserDisplayName:r}=Je("dav","absence",{});return{loading:!1,status:t??"",message:s??"",firstDay:a?new Date(a):new Date,lastDay:e?new Date(e):null,replacementUserId:i,replacementUser:i?{user:i,displayName:r}:null,searchLoading:!1,options:[]}},computed:{valid(){const a=new Date(this.firstDay?.getTime()),e=new Date(this.lastDay?.getTime());return a?.setHours(0,0,0,0),e?.setHours(0,0,0,0),!!this.firstDay&&!!this.lastDay&&!!this.status&&!!this.message&&e>=a}},methods:{resetForm(){this.status="",this.message="",this.firstDay=new Date,this.lastDay=null},formatForMultiselect(a){return{user:a.uuid||a.value.shareWith,displayName:a.name||a.label,subtitle:a.dsc|""}},async asyncFind(a){this.searchLoading=!0,await this.debounceGetSuggestions(a.trim())},async getSuggestions(a){const e=[Ge.User];let t=null;try{t=await Te.get(ye("apps/files_sharing/api/v1/sharees"),{params:{format:"json",itemType:"file",search:a,shareType:e}})}catch(d){K.error("Error fetching suggestions",{error:d});return}const s=t.data.ocs.data,i=t.data.ocs.data.exact;s.exact=[];const r=i.users,o=s.users;K.info("AbsenceForm raw suggestions",{rawExactSuggestions:r,rawSuggestions:o});const n=r.map(d=>this.formatForMultiselect(d)),l=o.map(d=>this.formatForMultiselect(d)),u=n.concat(l),c=u.reduce((d,m)=>(m.displayName&&(d[m.displayName]||(d[m.displayName]=0),d[m.displayName]++),d),{});this.options=u.map(d=>c[d.displayName]>1&&!d.desc?{...d,desc:d.shareWithDisplayNameUnique}:d),this.searchLoading=!1,K.info("AbsenseForm suggestions",{options:this.options})},debounceGetSuggestions:qt(function(...a){this.getSuggestions(...a)},300),async saveForm(){if(this.valid){this.loading=!0;try{await Te.post(ye("/apps/dav/api/v1/outOfOffice/{userId}",{userId:Re().uid}),{firstDay:nt(this.firstDay),lastDay:nt(this.lastDay),status:this.status,message:this.message,replacementUserId:this.replacementUser?.user??null}),Fe(_("dav","Absence saved"))}catch(a){Me(_("dav","Failed to save your absence settings")),K.error("Could not save absence",{error:a})}finally{this.loading=!1}}},async clearAbsence(){this.loading=!0;try{await Te.delete(ye("/apps/dav/api/v1/outOfOffice/{userId}",{userId:Re().uid})),this.resetForm(),Fe(_("dav","Absence cleared"))}catch(a){Me(_("dav","Failed to clear your absence settings")),K.error("Could not clear absence",{error:a})}finally{this.loading=!1}}}},S0={class:"absence__dates"},A0={for:"replacement-search-input"},g0={class:"absence__buttons"};function D0(a,e,t,s,i,r){const o=R("NcDateTimePickerNative"),n=R("NcSelectUsers"),l=R("NcTextField"),u=R("NcTextArea"),c=R("NcButton");return E(),Y("form",{class:"absence",onSubmit:e[5]||(e[5]=It((...d)=>r.saveForm&&r.saveForm(...d),["prevent"]))},[V("div",S0,[v(o,{id:"absence-first-day",modelValue:i.firstDay,"onUpdate:modelValue":e[0]||(e[0]=d=>i.firstDay=d),label:s.t("dav","First day"),class:"absence__dates__picker",required:!0},null,8,["modelValue","label"]),v(o,{id:"absence-last-day",modelValue:i.lastDay,"onUpdate:modelValue":e[1]||(e[1]=d=>i.lastDay=d),label:s.t("dav","Last day (inclusive)"),class:"absence__dates__picker",required:!0},null,8,["modelValue","label"])]),V("label",A0,j(s.t("dav","Out of office replacement (optional)")),1),v(n,{modelValue:i.replacementUser,"onUpdate:modelValue":e[2]||(e[2]=d=>i.replacementUser=d),"input-id":"replacement-search-input",loading:i.searchLoading,placeholder:s.t("dav","Name of the replacement"),options:i.options,onSearch:r.asyncFind},null,8,["modelValue","loading","placeholder","options","onSearch"]),v(l,{modelValue:i.status,"onUpdate:modelValue":e[3]||(e[3]=d=>i.status=d),label:s.t("dav","Short absence status"),required:!0},null,8,["modelValue","label"]),v(u,{modelValue:i.message,"onUpdate:modelValue":e[4]||(e[4]=d=>i.message=d),label:s.t("dav","Long absence Message"),required:!0},null,8,["modelValue","label"]),V("div",g0,[v(c,{disabled:i.loading||!r.valid,variant:"primary",type:"submit"},{default:q(()=>[Se(j(s.t("dav","Save")),1)]),_:1},8,["disabled"]),v(c,{disabled:i.loading||!r.valid,variant:"error",onClick:r.clearAbsence},{default:q(()=>[Se(j(s.t("dav","Disable absence")),1)]),_:1},8,["disabled","onClick"])])],32)}const _0=Ze(y0,[["render",D0],["__scopeId","data-v-95f1c6f1"]]),E0={name:"PlusIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},b0=["aria-hidden","aria-label"],U0=["fill","width","height"],C0={d:"M19,13H13V19H11V13H5V11H11V5H13V11H19V13Z"},v0={key:0};function Y0(a,e,t,s,i,r){return E(),Y("span",me(a.$attrs,{"aria-hidden":t.title?null:"true","aria-label":t.title,class:"material-design-icon plus-icon",role:"img",onClick:e[0]||(e[0]=o=>a.$emit("click",o))}),[(E(),Y("svg",{fill:t.fillColor,class:"material-design-icon__svg",width:t.size,height:t.size,viewBox:"0 0 24 24"},[V("path",C0,[t.title?(E(),Y("title",v0,j(t.title),1)):ae("",!0)])],8,U0))],16,b0)}const O0=Ze(E0,[["render",Y0]]);var ne={},he={},ot;function w0(){return ot||(ot=1,Object.defineProperty(he,"__esModule",{value:!0}),he.zonesMap=he.defaultStart=void 0,he.defaultStart="19700101T000000",he.zonesMap=new Map([["Africa/Abidjan",{s:{f:"+0000",n:"GMT"}}],["Africa/Accra",{s:{f:"+0000",n:"GMT"}}],["Africa/Addis_Ababa",{s:{f:"+0300",n:"EAT"}}],["Africa/Algiers",{s:{f:"+0100",n:"CET"}}],["Africa/Asmara",{s:{f:"+0300",n:"EAT"}}],["Africa/Bamako",{s:{f:"+0000",n:"GMT"}}],["Africa/Bangui",{s:{f:"+0100",n:"WAT"}}],["Africa/Banjul",{s:{f:"+0000",n:"GMT"}}],["Africa/Bissau",{s:{f:"+0000",n:"GMT"}}],["Africa/Blantyre",{s:{f:"+0200",n:"CAT"}}],["Africa/Brazzaville",{s:{f:"+0100",n:"WAT"}}],["Africa/Bujumbura",{s:{f:"+0200",n:"CAT"}}],["Africa/Cairo",{s:{f:"+0200",n:"EET"}}],["Africa/Casablanca",{s:{f:"+0100",n:"+01"}}],["Africa/Ceuta",{s:{f:"+0200",t:"+0100",n:"CET",s:"19701025T030000",r:{m:10,d:"-1SU"}},d:{f:"+0100",t:"+0200",n:"CEST",s:"19700329T020000",r:{m:3,d:"-1SU"}}}],["Africa/Conakry",{s:{f:"+0000",n:"GMT"}}],["Africa/Dakar",{s:{f:"+0000",n:"GMT"}}],["Africa/Dar_es_Salaam",{s:{f:"+0300",n:"EAT"}}],["Africa/Djibouti",{s:{f:"+0300",n:"EAT"}}],["Africa/Douala",{s:{f:"+0100",n:"WAT"}}],["Africa/El_Aaiun",{s:{f:"+0100",n:"+01"}}],["Africa/Freetown",{s:{f:"+0000",n:"GMT"}}],["Africa/Gaborone",{s:{f:"+0200",n:"CAT"}}],["Africa/Harare",{s:{f:"+0200",n:"CAT"}}],["Africa/Johannesburg",{s:{f:"+0200",n:"SAST"}}],["Africa/Juba",{s:{f:"+0300",n:"EAT"}}],["Africa/Kampala",{s:{f:"+0300",n:"EAT"}}],["Africa/Khartoum",{s:{f:"+0200",n:"CAT"}}],["Africa/Kigali",{s:{f:"+0200",n:"CAT"}}],["Africa/Kinshasa",{s:{f:"+0100",n:"WAT"}}],["Africa/Lagos",{s:{f:"+0100",n:"WAT"}}],["Africa/Libreville",{s:{f:"+0100",n:"WAT"}}],["Africa/Lome",{s:{f:"+0000",n:"GMT"}}],["Africa/Luanda",{s:{f:"+0100",n:"WAT"}}],["Africa/Lubumbashi",{s:{f:"+0200",n:"CAT"}}],["Africa/Lusaka",{s:{f:"+0200",n:"CAT"}}],["Africa/Malabo",{s:{f:"+0100",n:"WAT"}}],["Africa/Maputo",{s:{f:"+0200",n:"CAT"}}],["Africa/Maseru",{s:{f:"+0200",n:"SAST"}}],["Africa/Mbabane",{s:{f:"+0200",n:"SAST"}}],["Africa/Mogadishu",{s:{f:"+0300",n:"EAT"}}],["Africa/Monrovia",{s:{f:"+0000",n:"GMT"}}],["Africa/Nairobi",{s:{f:"+0300",n:"EAT"}}],["Africa/Ndjamena",{s:{f:"+0100",n:"WAT"}}],["Africa/Niamey",{s:{f:"+0100",n:"WAT"}}],["Africa/Nouakchott",{s:{f:"+0000",n:"GMT"}}],["Africa/Ouagadougou",{s:{f:"+0000",n:"GMT"}}],["Africa/Porto-Novo",{s:{f:"+0100",n:"WAT"}}],["Africa/Sao_Tome",{s:{f:"+0100",n:"WAT"}}],["Africa/Tripoli",{s:{f:"+0200",n:"EET"}}],["Africa/Tunis",{s:{f:"+0100",n:"CET"}}],["Africa/Windhoek",{s:{f:"+0200",n:"CAT"}}],["America/Adak",{s:{f:"-0900",t:"-1000",n:"HST",s:"19701101T020000",r:{m:11,d:"1SU"}},d:{f:"-1000",t:"-0900",n:"HDT",s:"19700308T020000",r:{m:3,d:"2SU"}}}],["America/Anchorage",{s:{f:"-0800",t:"-0900",n:"AKST",s:"19701101T020000",r:{m:11,d:"1SU"}},d:{f:"-0900",t:"-0800",n:"AKDT",s:"19700308T020000",r:{m:3,d:"2SU"}}}],["America/Anguilla",{s:{f:"-0400",n:"AST"}}],["America/Antigua",{s:{f:"-0400",n:"AST"}}],["America/Araguaina",{s:{f:"-0300",n:"-03"}}],["America/Argentina/Buenos_Aires",{s:{f:"-0300",n:"-03"}}],["America/Argentina/Catamarca",{s:{f:"-0300",n:"-03"}}],["America/Argentina/Cordoba",{s:{f:"-0300",n:"-03"}}],["America/Argentina/Jujuy",{s:{f:"-0300",n:"-03"}}],["America/Argentina/La_Rioja",{s:{f:"-0300",n:"-03"}}],["America/Argentina/Mendoza",{s:{f:"-0300",n:"-03"}}],["America/Argentina/Rio_Gallegos",{s:{f:"-0300",n:"-03"}}],["America/Argentina/Salta",{s:{f:"-0300",n:"-03"}}],["America/Argentina/San_Juan",{s:{f:"-0300",n:"-03"}}],["America/Argentina/San_Luis",{s:{f:"-0300",n:"-03"}}],["America/Argentina/Tucuman",{s:{f:"-0300",n:"-03"}}],["America/Argentina/Ushuaia",{s:{f:"-0300",n:"-03"}}],["America/Aruba",{s:{f:"-0400",n:"AST"}}],["America/Asuncion",{s:{f:"-0300",t:"-0400",n:"-04",s:"19700322T000000",r:{m:3,d:"4SU"}},d:{f:"-0400",t:"-0300",n:"-03",s:"19701004T000000",r:{m:10,d:"1SU"}}}],["America/Atikokan",{s:{f:"-0500",n:"EST"}}],["America/Bahia_Banderas",{s:{f:"-0500",t:"-0600",n:"CST",s:"19701025T020000",r:{m:10,d:"-1SU"}},d:{f:"-0600",t:"-0500",n:"CDT",s:"19700405T020000",r:{m:4,d:"1SU"}}}],["America/Bahia",{s:{f:"-0300",n:"-03"}}],["America/Barbados",{s:{f:"-0400",n:"AST"}}],["America/Belem",{s:{f:"-0300",n:"-03"}}],["America/Belize",{s:{f:"-0600",n:"CST"}}],["America/Blanc-Sablon",{s:{f:"-0400",n:"AST"}}],["America/Boa_Vista",{s:{f:"-0400",n:"-04"}}],["America/Bogota",{s:{f:"-0500",n:"-05"}}],["America/Boise",{s:{f:"-0600",t:"-0700",n:"MST",s:"19701101T020000",r:{m:11,d:"1SU"}},d:{f:"-0700",t:"-0600",n:"MDT",s:"19700308T020000",r:{m:3,d:"2SU"}}}],["America/Cambridge_Bay",{s:{f:"-0600",t:"-0700",n:"MST",s:"19701101T020000",r:{m:11,d:"1SU"}},d:{f:"-0700",t:"-0600",n:"MDT",s:"19700308T020000",r:{m:3,d:"2SU"}}}],["America/Campo_Grande",{s:{f:"-0400",n:"-04",s:"19700215T000000",r:{m:2,d:"3SU"}},d:{f:"-0400",t:"-0300",n:"-03",s:"19701101T000000",r:{m:11,d:"1SU"}}}],["America/Cancun",{s:{f:"-0500",n:"EST"}}],["America/Caracas",{s:{f:"-0400",n:"-04"}}],["America/Cayenne",{s:{f:"-0300",n:"-03"}}],["America/Cayman",{s:{f:"-0500",n:"EST"}}],["America/Chicago",{s:{f:"-0500",t:"-0600",n:"CST",s:"19701101T020000",r:{m:11,d:"1SU"}},d:{f:"-0600",t:"-0500",n:"CDT",s:"19700308T020000",r:{m:3,d:"2SU"}}}],["America/Chihuahua",{s:{f:"-0600",t:"-0700",n:"MST",s:"19701025T020000",r:{m:10,d:"-1SU"}},d:{f:"-0700",t:"-0600",n:"MDT",s:"19700405T020000",r:{m:4,d:"1SU"}}}],["America/Costa_Rica",{s:{f:"-0600",n:"CST"}}],["America/Creston",{s:{f:"-0700",n:"MST"}}],["America/Cuiaba",{s:{f:"-0400",n:"-04",s:"19700215T000000",r:{m:2,d:"3SU"}},d:{f:"-0400",t:"-0300",n:"-03",s:"19701101T000000",r:{m:11,d:"1SU"}}}],["America/Curacao",{s:{f:"-0400",n:"AST"}}],["America/Danmarkshavn",{s:{f:"+0000",n:"GMT"}}],["America/Dawson_Creek",{s:{f:"-0700",n:"MST"}}],["America/Dawson",{s:{f:"-0700",t:"-0800",n:"PST",s:"19701101T020000",r:{m:11,d:"1SU"}},d:{f:"-0800",t:"-0700",n:"PDT",s:"19700308T020000",r:{m:3,d:"2SU"}}}],["America/Denver",{s:{f:"-0600",t:"-0700",n:"MST",s:"19701101T020000",r:{m:11,d:"1SU"}},d:{f:"-0700",t:"-0600",n:"MDT",s:"19700308T020000",r:{m:3,d:"2SU"}}}],["America/Detroit",{s:{f:"-0400",t:"-0500",n:"EST",s:"19701101T020000",r:{m:11,d:"1SU"}},d:{f:"-0500",t:"-0400",n:"EDT",s:"19700308T020000",r:{m:3,d:"2SU"}}}],["America/Dominica",{s:{f:"-0400",n:"AST"}}],["America/Edmonton",{s:{f:"-0600",t:"-0700",n:"MST",s:"19701101T020000",r:{m:11,d:"1SU"}},d:{f:"-0700",t:"-0600",n:"MDT",s:"19700308T020000",r:{m:3,d:"2SU"}}}],["America/Eirunepe",{s:{f:"-0500",n:"-05"}}],["America/El_Salvador",{s:{f:"-0600",n:"CST"}}],["America/Fort_Nelson",{s:{f:"-0700",n:"MST"}}],["America/Fortaleza",{s:{f:"-0300",n:"-03"}}],["America/Glace_Bay",{s:{f:"-0300",t:"-0400",n:"AST",s:"19701101T020000",r:{m:11,d:"1SU"}},d:{f:"-0400",t:"-0300",n:"ADT",s:"19700308T020000",r:{m:3,d:"2SU"}}}],["America/Godthab",{s:{f:"-0200",t:"-0300",n:"-03",s:"19701024T230000",r:{m:10,d:"-1SA"}},d:{f:"-0300",t:"-0200",n:"-02",s:"19700328T220000",r:{m:3,d:"-1SA"}}}],["America/Goose_Bay",{s:{f:"-0300",t:"-0400",n:"AST",s:"19701101T020000",r:{m:11,d:"1SU"}},d:{f:"-0400",t:"-0300",n:"ADT",s:"19700308T020000",r:{m:3,d:"2SU"}}}],["America/Grand_Turk",{s:{f:"-0400",t:"-0500",n:"EST",s:"19701101T020000",r:{m:11,d:"1SU"}},d:{f:"-0500",t:"-0400",n:"EDT",s:"19700308T020000",r:{m:3,d:"2SU"}}}],["America/Grenada",{s:{f:"-0400",n:"AST"}}],["America/Guadeloupe",{s:{f:"-0400",n:"AST"}}],["America/Guatemala",{s:{f:"-0600",n:"CST"}}],["America/Guayaquil",{s:{f:"-0500",n:"-05"}}],["America/Guyana",{s:{f:"-0400",n:"-04"}}],["America/Halifax",{s:{f:"-0300",t:"-0400",n:"AST",s:"19701101T020000",r:{m:11,d:"1SU"}},d:{f:"-0400",t:"-0300",n:"ADT",s:"19700308T020000",r:{m:3,d:"2SU"}}}],["America/Havana",{s:{f:"-0400",t:"-0500",n:"CST",s:"19701101T010000",r:{m:11,d:"1SU"}},d:{f:"-0500",t:"-0400",n:"CDT",s:"19700308T000000",r:{m:3,d:"2SU"}}}],["America/Hermosillo",{s:{f:"-0700",n:"MST"}}],["America/Indiana/Indianapolis",{s:{f:"-0400",t:"-0500",n:"EST",s:"19701101T020000",r:{m:11,d:"1SU"}},d:{f:"-0500",t:"-0400",n:"EDT",s:"19700308T020000",r:{m:3,d:"2SU"}}}],["America/Indiana/Knox",{s:{f:"-0500",t:"-0600",n:"CST",s:"19701101T020000",r:{m:11,d:"1SU"}},d:{f:"-0600",t:"-0500",n:"CDT",s:"19700308T020000",r:{m:3,d:"2SU"}}}],["America/Indiana/Marengo",{s:{f:"-0400",t:"-0500",n:"EST",s:"19701101T020000",r:{m:11,d:"1SU"}},d:{f:"-0500",t:"-0400",n:"EDT",s:"19700308T020000",r:{m:3,d:"2SU"}}}],["America/Indiana/Petersburg",{s:{f:"-0400",t:"-0500",n:"EST",s:"19701101T020000",r:{m:11,d:"1SU"}},d:{f:"-0500",t:"-0400",n:"EDT",s:"19700308T020000",r:{m:3,d:"2SU"}}}],["America/Indiana/Tell_City",{s:{f:"-0500",t:"-0600",n:"CST",s:"19701101T020000",r:{m:11,d:"1SU"}},d:{f:"-0600",t:"-0500",n:"CDT",s:"19700308T020000",r:{m:3,d:"2SU"}}}],["America/Indiana/Vevay",{s:{f:"-0400",t:"-0500",n:"EST",s:"19701101T020000",r:{m:11,d:"1SU"}},d:{f:"-0500",t:"-0400",n:"EDT",s:"19700308T020000",r:{m:3,d:"2SU"}}}],["America/Indiana/Vincennes",{s:{f:"-0400",t:"-0500",n:"EST",s:"19701101T020000",r:{m:11,d:"1SU"}},d:{f:"-0500",t:"-0400",n:"EDT",s:"19700308T020000",r:{m:3,d:"2SU"}}}],["America/Indiana/Winamac",{s:{f:"-0400",t:"-0500",n:"EST",s:"19701101T020000",r:{m:11,d:"1SU"}},d:{f:"-0500",t:"-0400",n:"EDT",s:"19700308T020000",r:{m:3,d:"2SU"}}}],["America/Inuvik",{s:{f:"-0600",t:"-0700",n:"MST",s:"19701101T020000",r:{m:11,d:"1SU"}},d:{f:"-0700",t:"-0600",n:"MDT",s:"19700308T020000",r:{m:3,d:"2SU"}}}],["America/Iqaluit",{s:{f:"-0400",t:"-0500",n:"EST",s:"19701101T020000",r:{m:11,d:"1SU"}},d:{f:"-0500",t:"-0400",n:"EDT",s:"19700308T020000",r:{m:3,d:"2SU"}}}],["America/Jamaica",{s:{f:"-0500",n:"EST"}}],["America/Juneau",{s:{f:"-0800",t:"-0900",n:"AKST",s:"19701101T020000",r:{m:11,d:"1SU"}},d:{f:"-0900",t:"-0800",n:"AKDT",s:"19700308T020000",r:{m:3,d:"2SU"}}}],["America/Kentucky/Louisville",{s:{f:"-0400",t:"-0500",n:"EST",s:"19701101T020000",r:{m:11,d:"1SU"}},d:{f:"-0500",t:"-0400",n:"EDT",s:"19700308T020000",r:{m:3,d:"2SU"}}}],["America/Kentucky/Monticello",{s:{f:"-0400",t:"-0500",n:"EST",s:"19701101T020000",r:{m:11,d:"1SU"}},d:{f:"-0500",t:"-0400",n:"EDT",s:"19700308T020000",r:{m:3,d:"2SU"}}}],["America/Kralendijk",{s:{f:"-0400",n:"AST"}}],["America/La_Paz",{s:{f:"-0400",n:"-04"}}],["America/Lima",{s:{f:"-0500",n:"-05"}}],["America/Los_Angeles",{s:{f:"-0700",t:"-0800",n:"PST",s:"19701101T020000",r:{m:11,d:"1SU"}},d:{f:"-0800",t:"-0700",n:"PDT",s:"19700308T020000",r:{m:3,d:"2SU"}}}],["America/Lower_Princes",{s:{f:"-0400",n:"AST"}}],["America/Maceio",{s:{f:"-0300",n:"-03"}}],["America/Managua",{s:{f:"-0600",n:"CST"}}],["America/Manaus",{s:{f:"-0400",n:"-04"}}],["America/Marigot",{s:{f:"-0400",n:"AST"}}],["America/Martinique",{s:{f:"-0400",n:"AST"}}],["America/Matamoros",{s:{f:"-0500",t:"-0600",n:"CST",s:"19701101T020000",r:{m:11,d:"1SU"}},d:{f:"-0600",t:"-0500",n:"CDT",s:"19700308T020000",r:{m:3,d:"2SU"}}}],["America/Mazatlan",{s:{f:"-0600",t:"-0700",n:"MST",s:"19701025T020000",r:{m:10,d:"-1SU"}},d:{f:"-0700",t:"-0600",n:"MDT",s:"19700405T020000",r:{m:4,d:"1SU"}}}],["America/Menominee",{s:{f:"-0500",t:"-0600",n:"CST",s:"19701101T020000",r:{m:11,d:"1SU"}},d:{f:"-0600",t:"-0500",n:"CDT",s:"19700308T020000",r:{m:3,d:"2SU"}}}],["America/Merida",{s:{f:"-0500",t:"-0600",n:"CST",s:"19701025T020000",r:{m:10,d:"-1SU"}},d:{f:"-0600",t:"-0500",n:"CDT",s:"19700405T020000",r:{m:4,d:"1SU"}}}],["America/Metlakatla",{s:{f:"-0800",t:"-0900",n:"AKST",s:"19701101T020000",r:{m:11,d:"1SU"}},d:{f:"-0900",t:"-0800",n:"AKDT",s:"19700308T020000",r:{m:3,d:"2SU"}}}],["America/Mexico_City",{s:{f:"-0500",t:"-0600",n:"CST",s:"19701025T020000",r:{m:10,d:"-1SU"}},d:{f:"-0600",t:"-0500",n:"CDT",s:"19700405T020000",r:{m:4,d:"1SU"}}}],["America/Miquelon",{s:{f:"-0200",t:"-0300",n:"-03",s:"19701101T020000",r:{m:11,d:"1SU"}},d:{f:"-0300",t:"-0200",n:"-02",s:"19700308T020000",r:{m:3,d:"2SU"}}}],["America/Moncton",{s:{f:"-0300",t:"-0400",n:"AST",s:"19701101T020000",r:{m:11,d:"1SU"}},d:{f:"-0400",t:"-0300",n:"ADT",s:"19700308T020000",r:{m:3,d:"2SU"}}}],["America/Monterrey",{s:{f:"-0500",t:"-0600",n:"CST",s:"19701025T020000",r:{m:10,d:"-1SU"}},d:{f:"-0600",t:"-0500",n:"CDT",s:"19700405T020000",r:{m:4,d:"1SU"}}}],["America/Montevideo",{s:{f:"-0300",n:"-03"}}],["America/Montserrat",{s:{f:"-0400",n:"AST"}}],["America/Nassau",{s:{f:"-0400",t:"-0500",n:"EST",s:"19701101T020000",r:{m:11,d:"1SU"}},d:{f:"-0500",t:"-0400",n:"EDT",s:"19700308T020000",r:{m:3,d:"2SU"}}}],["America/New_York",{s:{f:"-0400",t:"-0500",n:"EST",s:"19701101T020000",r:{m:11,d:"1SU"}},d:{f:"-0500",t:"-0400",n:"EDT",s:"19700308T020000",r:{m:3,d:"2SU"}}}],["America/Nipigon",{s:{f:"-0400",t:"-0500",n:"EST",s:"19701101T020000",r:{m:11,d:"1SU"}},d:{f:"-0500",t:"-0400",n:"EDT",s:"19700308T020000",r:{m:3,d:"2SU"}}}],["America/Nome",{s:{f:"-0800",t:"-0900",n:"AKST",s:"19701101T020000",r:{m:11,d:"1SU"}},d:{f:"-0900",t:"-0800",n:"AKDT",s:"19700308T020000",r:{m:3,d:"2SU"}}}],["America/Noronha",{s:{f:"-0200",n:"-02"}}],["America/North_Dakota/Beulah",{s:{f:"-0500",t:"-0600",n:"CST",s:"19701101T020000",r:{m:11,d:"1SU"}},d:{f:"-0600",t:"-0500",n:"CDT",s:"19700308T020000",r:{m:3,d:"2SU"}}}],["America/North_Dakota/Center",{s:{f:"-0500",t:"-0600",n:"CST",s:"19701101T020000",r:{m:11,d:"1SU"}},d:{f:"-0600",t:"-0500",n:"CDT",s:"19700308T020000",r:{m:3,d:"2SU"}}}],["America/North_Dakota/New_Salem",{s:{f:"-0500",t:"-0600",n:"CST",s:"19701101T020000",r:{m:11,d:"1SU"}},d:{f:"-0600",t:"-0500",n:"CDT",s:"19700308T020000",r:{m:3,d:"2SU"}}}],["America/Ojinaga",{s:{f:"-0600",t:"-0700",n:"MST",s:"19701101T020000",r:{m:11,d:"1SU"}},d:{f:"-0700",t:"-0600",n:"MDT",s:"19700308T020000",r:{m:3,d:"2SU"}}}],["America/Panama",{s:{f:"-0500",n:"EST"}}],["America/Pangnirtung",{s:{f:"-0400",t:"-0500",n:"EST",s:"19701101T020000",r:{m:11,d:"1SU"}},d:{f:"-0500",t:"-0400",n:"EDT",s:"19700308T020000",r:{m:3,d:"2SU"}}}],["America/Paramaribo",{s:{f:"-0300",n:"-03"}}],["America/Phoenix",{s:{f:"-0700",n:"MST"}}],["America/Port_of_Spain",{s:{f:"-0400",n:"AST"}}],["America/Port-au-Prince",{s:{f:"-0400",t:"-0500",n:"EST",s:"19701101T020000",r:{m:11,d:"1SU"}},d:{f:"-0500",t:"-0400",n:"EDT",s:"19700308T020000",r:{m:3,d:"2SU"}}}],["America/Porto_Velho",{s:{f:"-0400",n:"-04"}}],["America/Puerto_Rico",{s:{f:"-0400",n:"AST"}}],["America/Punta_Arenas",{s:{f:"-0300",n:"-03"}}],["America/Rainy_River",{s:{f:"-0500",t:"-0600",n:"CST",s:"19701101T020000",r:{m:11,d:"1SU"}},d:{f:"-0600",t:"-0500",n:"CDT",s:"19700308T020000",r:{m:3,d:"2SU"}}}],["America/Rankin_Inlet",{s:{f:"-0500",t:"-0600",n:"CST",s:"19701101T020000",r:{m:11,d:"1SU"}},d:{f:"-0600",t:"-0500",n:"CDT",s:"19700308T020000",r:{m:3,d:"2SU"}}}],["America/Recife",{s:{f:"-0300",n:"-03"}}],["America/Regina",{s:{f:"-0600",n:"CST"}}],["America/Resolute",{s:{f:"-0500",t:"-0600",n:"CST",s:"19701101T020000",r:{m:11,d:"1SU"}},d:{f:"-0600",t:"-0500",n:"CDT",s:"19700308T020000",r:{m:3,d:"2SU"}}}],["America/Rio_Branco",{s:{f:"-0500",n:"-05"}}],["America/Santarem",{s:{f:"-0300",n:"-03"}}],["America/Santiago",{s:{f:"-0300",t:"-0400",n:"-04",s:"19700405T000000",r:{m:4,d:"1SU"}},d:{f:"-0400",t:"-0300",n:"-03",s:"19700906T000000",r:{m:9,d:"1SU"}}}],["America/Santo_Domingo",{s:{f:"-0400",n:"AST"}}],["America/Sao_Paulo",{s:{f:"-0300",n:"-03",s:"19700215T000000",r:{m:2,d:"3SU"}},d:{f:"-0300",t:"-0200",n:"-02",s:"19701101T000000",r:{m:11,d:"1SU"}}}],["America/Scoresbysund",{s:{f:"+0000",t:"-0100",n:"-01",s:"19701025T010000",r:{m:10,d:"-1SU"}},d:{f:"-0100",t:"+0000",n:"+00",s:"19700329T000000",r:{m:3,d:"-1SU"}}}],["America/Sitka",{s:{f:"-0800",t:"-0900",n:"AKST",s:"19701101T020000",r:{m:11,d:"1SU"}},d:{f:"-0900",t:"-0800",n:"AKDT",s:"19700308T020000",r:{m:3,d:"2SU"}}}],["America/St_Barthelemy",{s:{f:"-0400",n:"AST"}}],["America/St_Johns",{s:{f:"-0230",t:"-0330",n:"NST",s:"19701101T020000",r:{m:11,d:"1SU"}},d:{f:"-0330",t:"-0230",n:"NDT",s:"19700308T020000",r:{m:3,d:"2SU"}}}],["America/St_Kitts",{s:{f:"-0400",n:"AST"}}],["America/St_Lucia",{s:{f:"-0400",n:"AST"}}],["America/St_Thomas",{s:{f:"-0400",n:"AST"}}],["America/St_Vincent",{s:{f:"-0400",n:"AST"}}],["America/Swift_Current",{s:{f:"-0600",n:"CST"}}],["America/Tegucigalpa",{s:{f:"-0600",n:"CST"}}],["America/Thule",{s:{f:"-0300",t:"-0400",n:"AST",s:"19701101T020000",r:{m:11,d:"1SU"}},d:{f:"-0400",t:"-0300",n:"ADT",s:"19700308T020000",r:{m:3,d:"2SU"}}}],["America/Thunder_Bay",{s:{f:"-0400",t:"-0500",n:"EST",s:"19701101T020000",r:{m:11,d:"1SU"}},d:{f:"-0500",t:"-0400",n:"EDT",s:"19700308T020000",r:{m:3,d:"2SU"}}}],["America/Tijuana",{s:{f:"-0700",t:"-0800",n:"PST",s:"19701101T020000",r:{m:11,d:"1SU"}},d:{f:"-0800",t:"-0700",n:"PDT",s:"19700308T020000",r:{m:3,d:"2SU"}}}],["America/Toronto",{s:{f:"-0400",t:"-0500",n:"EST",s:"19701101T020000",r:{m:11,d:"1SU"}},d:{f:"-0500",t:"-0400",n:"EDT",s:"19700308T020000",r:{m:3,d:"2SU"}}}],["America/Tortola",{s:{f:"-0400",n:"AST"}}],["America/Vancouver",{s:{f:"-0700",t:"-0800",n:"PST",s:"19701101T020000",r:{m:11,d:"1SU"}},d:{f:"-0800",t:"-0700",n:"PDT",s:"19700308T020000",r:{m:3,d:"2SU"}}}],["America/Whitehorse",{s:{f:"-0700",t:"-0800",n:"PST",s:"19701101T020000",r:{m:11,d:"1SU"}},d:{f:"-0800",t:"-0700",n:"PDT",s:"19700308T020000",r:{m:3,d:"2SU"}}}],["America/Winnipeg",{s:{f:"-0500",t:"-0600",n:"CST",s:"19701101T020000",r:{m:11,d:"1SU"}},d:{f:"-0600",t:"-0500",n:"CDT",s:"19700308T020000",r:{m:3,d:"2SU"}}}],["America/Yakutat",{s:{f:"-0800",t:"-0900",n:"AKST",s:"19701101T020000",r:{m:11,d:"1SU"}},d:{f:"-0900",t:"-0800",n:"AKDT",s:"19700308T020000",r:{m:3,d:"2SU"}}}],["America/Yellowknife",{s:{f:"-0600",t:"-0700",n:"MST",s:"19701101T020000",r:{m:11,d:"1SU"}},d:{f:"-0700",t:"-0600",n:"MDT",s:"19700308T020000",r:{m:3,d:"2SU"}}}],["Antarctica/Casey",{s:{f:"+0800",n:"+08"}}],["Antarctica/Davis",{s:{f:"+0700",n:"+07"}}],["Antarctica/DumontDUrville",{s:{f:"+1000",n:"+10"}}],["Antarctica/Macquarie",{s:{f:"+1100",n:"+11"}}],["Antarctica/Mawson",{s:{f:"+0500",n:"+05"}}],["Antarctica/McMurdo",{s:{f:"+1300",t:"+1200",n:"NZST",s:"19700405T030000",r:{m:4,d:"1SU"}},d:{f:"+1200",t:"+1300",n:"NZDT",s:"19700927T020000",r:{m:9,d:"-1SU"}}}],["Antarctica/Palmer",{s:{f:"-0300",n:"-03"}}],["Antarctica/Rothera",{s:{f:"-0300",n:"-03"}}],["Antarctica/Syowa",{s:{f:"+0300",n:"+03"}}],["Antarctica/Troll",{s:{f:"+0200",t:"+0000",n:"+00",s:"19701025T030000",r:{m:10,d:"-1SU"}},d:{f:"+0000",t:"+0200",n:"+02",s:"19700329T010000",r:{m:3,d:"-1SU"}}}],["Antarctica/Vostok",{s:{f:"+0600",n:"+06"}}],["Arctic/Longyearbyen",{s:{f:"+0200",t:"+0100",n:"CET",s:"19701025T030000",r:{m:10,d:"-1SU"}},d:{f:"+0100",t:"+0200",n:"CEST",s:"19700329T020000",r:{m:3,d:"-1SU"}}}],["Asia/Aden",{s:{f:"+0300",n:"+03"}}],["Asia/Almaty",{s:{f:"+0600",n:"+06"}}],["Asia/Amman",{s:{f:"+0300",t:"+0200",n:"EET",s:"19701030T010000",r:{m:10,d:"-1FR"}},d:{f:"+0200",t:"+0300",n:"EEST",s:"19700326T235959",r:{m:3,d:"-1TH"}}}],["Asia/Anadyr",{s:{f:"+1200",n:"+12"}}],["Asia/Aqtau",{s:{f:"+0500",n:"+05"}}],["Asia/Aqtobe",{s:{f:"+0500",n:"+05"}}],["Asia/Ashgabat",{s:{f:"+0500",n:"+05"}}],["Asia/Atyrau",{s:{f:"+0500",n:"+05"}}],["Asia/Baghdad",{s:{f:"+0300",n:"+03"}}],["Asia/Bahrain",{s:{f:"+0300",n:"+03"}}],["Asia/Baku",{s:{f:"+0400",n:"+04"}}],["Asia/Bangkok",{s:{f:"+0700",n:"+07"}}],["Asia/Barnaul",{s:{f:"+0700",n:"+07"}}],["Asia/Beirut",{s:{f:"+0300",t:"+0200",n:"EET",s:"19701025T000000",r:{m:10,d:"-1SU"}},d:{f:"+0200",t:"+0300",n:"EEST",s:"19700329T000000",r:{m:3,d:"-1SU"}}}],["Asia/Bishkek",{s:{f:"+0600",n:"+06"}}],["Asia/Brunei",{s:{f:"+0800",n:"+08"}}],["Asia/Chita",{s:{f:"+0900",n:"+09"}}],["Asia/Choibalsan",{s:{f:"+0800",n:"+08"}}],["Asia/Colombo",{s:{f:"+0530",n:"+0530"}}],["Asia/Damascus",{s:{f:"+0300",t:"+0200",n:"EET",s:"19701030T000000",r:{m:10,d:"-1FR"}},d:{f:"+0200",t:"+0300",n:"EEST",s:"19700327T000000",r:{m:3,d:"-1FR"}}}],["Asia/Dhaka",{s:{f:"+0600",n:"+06"}}],["Asia/Dili",{s:{f:"+0900",n:"+09"}}],["Asia/Dubai",{s:{f:"+0400",n:"+04"}}],["Asia/Dushanbe",{s:{f:"+0500",n:"+05"}}],["Asia/Famagusta",{s:{f:"+0300",t:"+0200",n:"EET",s:"19701025T040000",r:{m:10,d:"-1SU"}},d:{f:"+0200",t:"+0300",n:"EEST",s:"19700329T030000",r:{m:3,d:"-1SU"}}}],["Asia/Gaza",{s:{f:"+0300",t:"+0200",n:"EET",s:"19701031T010000",r:{m:10,d:"-1SA"}},d:{f:"+0200",t:"+0300",n:"EEST",s:"19700328T010000",r:{m:3,d:"4SA"}}}],["Asia/Hebron",{s:{f:"+0300",t:"+0200",n:"EET",s:"19701031T010000",r:{m:10,d:"-1SA"}},d:{f:"+0200",t:"+0300",n:"EEST",s:"19700328T010000",r:{m:3,d:"4SA"}}}],["Asia/Ho_Chi_Minh",{s:{f:"+0700",n:"+07"}}],["Asia/Hong_Kong",{s:{f:"+0800",n:"HKT"}}],["Asia/Hovd",{s:{f:"+0700",n:"+07"}}],["Asia/Irkutsk",{s:{f:"+0800",n:"+08"}}],["Asia/Istanbul",{s:{f:"+0300",n:"+03"}}],["Asia/Jakarta",{s:{f:"+0700",n:"WIB"}}],["Asia/Jayapura",{s:{f:"+0900",n:"WIT"}}],["Asia/Jerusalem",{s:{f:"+0300",t:"+0200",n:"IST",s:"19701025T020000",r:{m:10,d:"-1SU"}},d:{f:"+0200",t:"+0300",n:"IDT",s:"19700327T020000",r:{m:3,d:"-1FR"}}}],["Asia/Kabul",{s:{f:"+0430",n:"+0430"}}],["Asia/Kamchatka",{s:{f:"+1200",n:"+12"}}],["Asia/Karachi",{s:{f:"+0500",n:"PKT"}}],["Asia/Kathmandu",{s:{f:"+0545",n:"+0545"}}],["Asia/Khandyga",{s:{f:"+0900",n:"+09"}}],["Asia/Kolkata",{s:{f:"+0530",n:"IST"}}],["Asia/Krasnoyarsk",{s:{f:"+0700",n:"+07"}}],["Asia/Kuala_Lumpur",{s:{f:"+0800",n:"+08"}}],["Asia/Kuching",{s:{f:"+0800",n:"+08"}}],["Asia/Kuwait",{s:{f:"+0300",n:"+03"}}],["Asia/Macau",{s:{f:"+0800",n:"CST"}}],["Asia/Magadan",{s:{f:"+1100",n:"+11"}}],["Asia/Makassar",{s:{f:"+0800",n:"WITA"}}],["Asia/Manila",{s:{f:"+0800",n:"PST"}}],["Asia/Muscat",{s:{f:"+0400",n:"+04"}}],["Asia/Nicosia",{s:{f:"+0300",t:"+0200",n:"EET",s:"19701025T040000",r:{m:10,d:"-1SU"}},d:{f:"+0200",t:"+0300",n:"EEST",s:"19700329T030000",r:{m:3,d:"-1SU"}}}],["Asia/Novokuznetsk",{s:{f:"+0700",n:"+07"}}],["Asia/Novosibirsk",{s:{f:"+0700",n:"+07"}}],["Asia/Omsk",{s:{f:"+0600",n:"+06"}}],["Asia/Oral",{s:{f:"+0500",n:"+05"}}],["Asia/Phnom_Penh",{s:{f:"+0700",n:"+07"}}],["Asia/Pontianak",{s:{f:"+0700",n:"WIB"}}],["Asia/Pyongyang",{s:{f:"+0900",n:"KST"}}],["Asia/Qatar",{s:{f:"+0300",n:"+03"}}],["Asia/Qyzylorda",{s:{f:"+0600",n:"+06"}}],["Asia/Riyadh",{s:{f:"+0300",n:"+03"}}],["Asia/Sakhalin",{s:{f:"+1100",n:"+11"}}],["Asia/Samarkand",{s:{f:"+0500",n:"+05"}}],["Asia/Seoul",{s:{f:"+0900",n:"KST"}}],["Asia/Shanghai",{s:{f:"+0800",n:"CST"}}],["Asia/Singapore",{s:{f:"+0800",n:"+08"}}],["Asia/Srednekolymsk",{s:{f:"+1100",n:"+11"}}],["Asia/Taipei",{s:{f:"+0800",n:"CST"}}],["Asia/Tashkent",{s:{f:"+0500",n:"+05"}}],["Asia/Tbilisi",{s:{f:"+0400",n:"+04"}}],["Asia/Tehran",{s:{f:"+0430",t:"+0330",n:"+0330",s:"19700921T000000",r:{m:9,d:"3SU"}},d:{f:"+0330",t:"+0430",n:"+0430",s:"19700321T000000",r:{m:3,d:"3SU"}}}],["Asia/Thimphu",{s:{f:"+0600",n:"+06"}}],["Asia/Tokyo",{s:{f:"+0900",n:"JST"}}],["Asia/Tomsk",{s:{f:"+0700",n:"+07"}}],["Asia/Ulaanbaatar",{s:{f:"+0800",n:"+08"}}],["Asia/Urumqi",{s:{f:"+0600",n:"+06"}}],["Asia/Ust-Nera",{s:{f:"+1000",n:"+10"}}],["Asia/Vientiane",{s:{f:"+0700",n:"+07"}}],["Asia/Vladivostok",{s:{f:"+1000",n:"+10"}}],["Asia/Yakutsk",{s:{f:"+0900",n:"+09"}}],["Asia/Yangon",{s:{f:"+0630",n:"+0630"}}],["Asia/Yekaterinburg",{s:{f:"+0500",n:"+05"}}],["Asia/Yerevan",{s:{f:"+0400",n:"+04"}}],["Atlantic/Azores",{s:{f:"+0000",t:"-0100",n:"-01",s:"19701025T010000",r:{m:10,d:"-1SU"}},d:{f:"-0100",t:"+0000",n:"+00",s:"19700329T000000",r:{m:3,d:"-1SU"}}}],["Atlantic/Bermuda",{s:{f:"-0300",t:"-0400",n:"AST",s:"19701101T020000",r:{m:11,d:"1SU"}},d:{f:"-0400",t:"-0300",n:"ADT",s:"19700308T020000",r:{m:3,d:"2SU"}}}],["Atlantic/Canary",{s:{f:"+0100",t:"+0000",n:"WET",s:"19701025T020000",r:{m:10,d:"-1SU"}},d:{f:"+0000",t:"+0100",n:"WEST",s:"19700329T010000",r:{m:3,d:"-1SU"}}}],["Atlantic/Cape_Verde",{s:{f:"-0100",n:"-01"}}],["Atlantic/Faroe",{s:{f:"+0100",t:"+0000",n:"WET",s:"19701025T020000",r:{m:10,d:"-1SU"}},d:{f:"+0000",t:"+0100",n:"WEST",s:"19700329T010000",r:{m:3,d:"-1SU"}}}],["Atlantic/Madeira",{s:{f:"+0100",t:"+0000",n:"WET",s:"19701025T020000",r:{m:10,d:"-1SU"}},d:{f:"+0000",t:"+0100",n:"WEST",s:"19700329T010000",r:{m:3,d:"-1SU"}}}],["Atlantic/Reykjavik",{s:{f:"+0000",n:"GMT"}}],["Atlantic/South_Georgia",{s:{f:"-0200",n:"-02"}}],["Atlantic/St_Helena",{s:{f:"+0000",n:"GMT"}}],["Atlantic/Stanley",{s:{f:"-0300",n:"-03"}}],["Australia/Adelaide",{s:{f:"+1030",t:"+0930",n:"ACST",s:"19700405T030000",r:{m:4,d:"1SU"}},d:{f:"+0930",t:"+1030",n:"ACDT",s:"19701004T020000",r:{m:10,d:"1SU"}}}],["Australia/Brisbane",{s:{f:"+1000",n:"AEST"}}],["Australia/Broken_Hill",{s:{f:"+1030",t:"+0930",n:"ACST",s:"19700405T030000",r:{m:4,d:"1SU"}},d:{f:"+0930",t:"+1030",n:"ACDT",s:"19701004T020000",r:{m:10,d:"1SU"}}}],["Australia/Currie",{s:{f:"+1100",t:"+1000",n:"AEST",s:"19700405T030000",r:{m:4,d:"1SU"}},d:{f:"+1000",t:"+1100",n:"AEDT",s:"19701004T020000",r:{m:10,d:"1SU"}}}],["Australia/Darwin",{s:{f:"+0930",n:"ACST"}}],["Australia/Eucla",{s:{f:"+0845",n:"+0845"}}],["Australia/Hobart",{s:{f:"+1100",t:"+1000",n:"AEST",s:"19700405T030000",r:{m:4,d:"1SU"}},d:{f:"+1000",t:"+1100",n:"AEDT",s:"19701004T020000",r:{m:10,d:"1SU"}}}],["Australia/Lindeman",{s:{f:"+1000",n:"AEST"}}],["Australia/Lord_Howe",{s:{f:"+1100",t:"+1030",n:"+1030",s:"19700405T020000",r:{m:4,d:"1SU"}},d:{f:"+1030",t:"+1100",n:"+11",s:"19701004T020000",r:{m:10,d:"1SU"}}}],["Australia/Melbourne",{s:{f:"+1100",t:"+1000",n:"AEST",s:"19700405T030000",r:{m:4,d:"1SU"}},d:{f:"+1000",t:"+1100",n:"AEDT",s:"19701004T020000",r:{m:10,d:"1SU"}}}],["Australia/Perth",{s:{f:"+0800",n:"AWST"}}],["Australia/Sydney",{s:{f:"+1100",t:"+1000",n:"AEST",s:"19700405T030000",r:{m:4,d:"1SU"}},d:{f:"+1000",t:"+1100",n:"AEDT",s:"19701004T020000",r:{m:10,d:"1SU"}}}],["Etc/GMT-0",{s:{f:"+0000",n:"GMT"}}],["Etc/GMT-1",{s:{f:"-0100",n:"-01"}}],["Etc/GMT-10",{s:{f:"-1000",n:"-10"}}],["Etc/GMT-11",{s:{f:"-1100",n:"-11"}}],["Etc/GMT-12",{s:{f:"-1200",n:"-12"}}],["Etc/GMT-2",{s:{f:"-0200",n:"-02"}}],["Etc/GMT-3",{s:{f:"-0300",n:"-03"}}],["Etc/GMT-4",{s:{f:"-0400",n:"-04"}}],["Etc/GMT-5",{s:{f:"-0500",n:"-05"}}],["Etc/GMT-6",{s:{f:"-0600",n:"-06"}}],["Etc/GMT-7",{s:{f:"-0700",n:"-07"}}],["Etc/GMT-8",{s:{f:"-0800",n:"-08"}}],["Etc/GMT-9",{s:{f:"-0900",n:"-09"}}],["Etc/GMT",{s:{f:"+0000",n:"GMT"}}],["Etc/GMT+0",{s:{f:"+0000",n:"GMT"}}],["Etc/GMT+1",{s:{f:"+0100",n:"+01"}}],["Etc/GMT+10",{s:{f:"+1000",n:"+10"}}],["Etc/GMT+11",{s:{f:"+1100",n:"+11"}}],["Etc/GMT+12",{s:{f:"+1200",n:"+12"}}],["Etc/GMT+13",{s:{f:"+1300",n:"+13"}}],["Etc/GMT+14",{s:{f:"+1400",n:"+14"}}],["Etc/GMT+2",{s:{f:"+0200",n:"+02"}}],["Etc/GMT+3",{s:{f:"+0300",n:"+03"}}],["Etc/GMT+4",{s:{f:"+0400",n:"+04"}}],["Etc/GMT+5",{s:{f:"+0500",n:"+05"}}],["Etc/GMT+6",{s:{f:"+0600",n:"+06"}}],["Etc/GMT+7",{s:{f:"+0700",n:"+07"}}],["Etc/GMT+8",{s:{f:"+0800",n:"+08"}}],["Etc/GMT+9",{s:{f:"+0900",n:"+09"}}],["Etc/GMT0",{s:{f:"+0000",n:"GMT"}}],["Etc/Greenwich",{s:{f:"+0000",n:"GMT"}}],["Etc/UCT",{s:{f:"+0000",n:"UCT"}}],["Etc/Universal",{s:{f:"+0000",n:"UTC"}}],["Etc/UTC",{s:{f:"+0000",n:"UTC"}}],["Etc/Zulu",{s:{f:"+0000",n:"UTC"}}],["Europe/Amsterdam",{s:{f:"+0200",t:"+0100",n:"CET",s:"19701025T030000",r:{m:10,d:"-1SU"}},d:{f:"+0100",t:"+0200",n:"CEST",s:"19700329T020000",r:{m:3,d:"-1SU"}}}],["Europe/Andorra",{s:{f:"+0200",t:"+0100",n:"CET",s:"19701025T030000",r:{m:10,d:"-1SU"}},d:{f:"+0100",t:"+0200",n:"CEST",s:"19700329T020000",r:{m:3,d:"-1SU"}}}],["Europe/Astrakhan",{s:{f:"+0400",n:"+04"}}],["Europe/Athens",{s:{f:"+0300",t:"+0200",n:"EET",s:"19701025T040000",r:{m:10,d:"-1SU"}},d:{f:"+0200",t:"+0300",n:"EEST",s:"19700329T030000",r:{m:3,d:"-1SU"}}}],["Europe/Belgrade",{s:{f:"+0200",t:"+0100",n:"CET",s:"19701025T030000",r:{m:10,d:"-1SU"}},d:{f:"+0100",t:"+0200",n:"CEST",s:"19700329T020000",r:{m:3,d:"-1SU"}}}],["Europe/Berlin",{s:{f:"+0200",t:"+0100",n:"CET",s:"19701025T030000",r:{m:10,d:"-1SU"}},d:{f:"+0100",t:"+0200",n:"CEST",s:"19700329T020000",r:{m:3,d:"-1SU"}}}],["Europe/Bratislava",{s:{f:"+0200",t:"+0100",n:"CET",s:"19701025T030000",r:{m:10,d:"-1SU"}},d:{f:"+0100",t:"+0200",n:"CEST",s:"19700329T020000",r:{m:3,d:"-1SU"}}}],["Europe/Brussels",{s:{f:"+0200",t:"+0100",n:"CET",s:"19701025T030000",r:{m:10,d:"-1SU"}},d:{f:"+0100",t:"+0200",n:"CEST",s:"19700329T020000",r:{m:3,d:"-1SU"}}}],["Europe/Bucharest",{s:{f:"+0300",t:"+0200",n:"EET",s:"19701025T040000",r:{m:10,d:"-1SU"}},d:{f:"+0200",t:"+0300",n:"EEST",s:"19700329T030000",r:{m:3,d:"-1SU"}}}],["Europe/Budapest",{s:{f:"+0200",t:"+0100",n:"CET",s:"19701025T030000",r:{m:10,d:"-1SU"}},d:{f:"+0100",t:"+0200",n:"CEST",s:"19700329T020000",r:{m:3,d:"-1SU"}}}],["Europe/Busingen",{s:{f:"+0200",t:"+0100",n:"CET",s:"19701025T030000",r:{m:10,d:"-1SU"}},d:{f:"+0100",t:"+0200",n:"CEST",s:"19700329T020000",r:{m:3,d:"-1SU"}}}],["Europe/Chisinau",{s:{f:"+0300",t:"+0200",n:"EET",s:"19701025T030000",r:{m:10,d:"-1SU"}},d:{f:"+0200",t:"+0300",n:"EEST",s:"19700329T020000",r:{m:3,d:"-1SU"}}}],["Europe/Copenhagen",{s:{f:"+0200",t:"+0100",n:"CET",s:"19701025T030000",r:{m:10,d:"-1SU"}},d:{f:"+0100",t:"+0200",n:"CEST",s:"19700329T020000",r:{m:3,d:"-1SU"}}}],["Europe/Dublin",{s:{f:"+0100",t:"+0000",n:"GMT",s:"19701025T020000",r:{m:10,d:"-1SU"}},d:{f:"+0000",t:"+0100",n:"IST",s:"19700329T010000",r:{m:3,d:"-1SU"}}}],["Europe/Gibraltar",{s:{f:"+0200",t:"+0100",n:"CET",s:"19701025T030000",r:{m:10,d:"-1SU"}},d:{f:"+0100",t:"+0200",n:"CEST",s:"19700329T020000",r:{m:3,d:"-1SU"}}}],["Europe/Guernsey",{s:{f:"+0100",t:"+0000",n:"GMT",s:"19701025T020000",r:{m:10,d:"-1SU"}},d:{f:"+0000",t:"+0100",n:"BST",s:"19700329T010000",r:{m:3,d:"-1SU"}}}],["Europe/Helsinki",{s:{f:"+0300",t:"+0200",n:"EET",s:"19701025T040000",r:{m:10,d:"-1SU"}},d:{f:"+0200",t:"+0300",n:"EEST",s:"19700329T030000",r:{m:3,d:"-1SU"}}}],["Europe/Isle_of_Man",{s:{f:"+0100",t:"+0000",n:"GMT",s:"19701025T020000",r:{m:10,d:"-1SU"}},d:{f:"+0000",t:"+0100",n:"BST",s:"19700329T010000",r:{m:3,d:"-1SU"}}}],["Europe/Istanbul",{s:{f:"+0300",n:"+03"}}],["Europe/Jersey",{s:{f:"+0100",t:"+0000",n:"GMT",s:"19701025T020000",r:{m:10,d:"-1SU"}},d:{f:"+0000",t:"+0100",n:"BST",s:"19700329T010000",r:{m:3,d:"-1SU"}}}],["Europe/Kaliningrad",{s:{f:"+0200",n:"EET"}}],["Europe/Kiev",{s:{f:"+0300",t:"+0200",n:"EET",s:"19701025T040000",r:{m:10,d:"-1SU"}},d:{f:"+0200",t:"+0300",n:"EEST",s:"19700329T030000",r:{m:3,d:"-1SU"}}}],["Europe/Kirov",{s:{f:"+0300",n:"+03"}}],["Europe/Lisbon",{s:{f:"+0100",t:"+0000",n:"WET",s:"19701025T020000",r:{m:10,d:"-1SU"}},d:{f:"+0000",t:"+0100",n:"WEST",s:"19700329T010000",r:{m:3,d:"-1SU"}}}],["Europe/Ljubljana",{s:{f:"+0200",t:"+0100",n:"CET",s:"19701025T030000",r:{m:10,d:"-1SU"}},d:{f:"+0100",t:"+0200",n:"CEST",s:"19700329T020000",r:{m:3,d:"-1SU"}}}],["Europe/London",{s:{f:"+0100",t:"+0000",n:"GMT",s:"19701025T020000",r:{m:10,d:"-1SU"}},d:{f:"+0000",t:"+0100",n:"BST",s:"19700329T010000",r:{m:3,d:"-1SU"}}}],["Europe/Luxembourg",{s:{f:"+0200",t:"+0100",n:"CET",s:"19701025T030000",r:{m:10,d:"-1SU"}},d:{f:"+0100",t:"+0200",n:"CEST",s:"19700329T020000",r:{m:3,d:"-1SU"}}}],["Europe/Madrid",{s:{f:"+0200",t:"+0100",n:"CET",s:"19701025T030000",r:{m:10,d:"-1SU"}},d:{f:"+0100",t:"+0200",n:"CEST",s:"19700329T020000",r:{m:3,d:"-1SU"}}}],["Europe/Malta",{s:{f:"+0200",t:"+0100",n:"CET",s:"19701025T030000",r:{m:10,d:"-1SU"}},d:{f:"+0100",t:"+0200",n:"CEST",s:"19700329T020000",r:{m:3,d:"-1SU"}}}],["Europe/Mariehamn",{s:{f:"+0300",t:"+0200",n:"EET",s:"19701025T040000",r:{m:10,d:"-1SU"}},d:{f:"+0200",t:"+0300",n:"EEST",s:"19700329T030000",r:{m:3,d:"-1SU"}}}],["Europe/Minsk",{s:{f:"+0300",n:"+03"}}],["Europe/Monaco",{s:{f:"+0200",t:"+0100",n:"CET",s:"19701025T030000",r:{m:10,d:"-1SU"}},d:{f:"+0100",t:"+0200",n:"CEST",s:"19700329T020000",r:{m:3,d:"-1SU"}}}],["Europe/Moscow",{s:{f:"+0300",n:"MSK"}}],["Europe/Nicosia",{s:{f:"+0300",t:"+0200",n:"EET",s:"19701025T040000",r:{m:10,d:"-1SU"}},d:{f:"+0200",t:"+0300",n:"EEST",s:"19700329T030000",r:{m:3,d:"-1SU"}}}],["Europe/Oslo",{s:{f:"+0200",t:"+0100",n:"CET",s:"19701025T030000",r:{m:10,d:"-1SU"}},d:{f:"+0100",t:"+0200",n:"CEST",s:"19700329T020000",r:{m:3,d:"-1SU"}}}],["Europe/Paris",{s:{f:"+0200",t:"+0100",n:"CET",s:"19701025T030000",r:{m:10,d:"-1SU"}},d:{f:"+0100",t:"+0200",n:"CEST",s:"19700329T020000",r:{m:3,d:"-1SU"}}}],["Europe/Podgorica",{s:{f:"+0200",t:"+0100",n:"CET",s:"19701025T030000",r:{m:10,d:"-1SU"}},d:{f:"+0100",t:"+0200",n:"CEST",s:"19700329T020000",r:{m:3,d:"-1SU"}}}],["Europe/Prague",{s:{f:"+0200",t:"+0100",n:"CET",s:"19701025T030000",r:{m:10,d:"-1SU"}},d:{f:"+0100",t:"+0200",n:"CEST",s:"19700329T020000",r:{m:3,d:"-1SU"}}}],["Europe/Riga",{s:{f:"+0300",t:"+0200",n:"EET",s:"19701025T040000",r:{m:10,d:"-1SU"}},d:{f:"+0200",t:"+0300",n:"EEST",s:"19700329T030000",r:{m:3,d:"-1SU"}}}],["Europe/Rome",{s:{f:"+0200",t:"+0100",n:"CET",s:"19701025T030000",r:{m:10,d:"-1SU"}},d:{f:"+0100",t:"+0200",n:"CEST",s:"19700329T020000",r:{m:3,d:"-1SU"}}}],["Europe/Samara",{s:{f:"+0400",n:"+04"}}],["Europe/San_Marino",{s:{f:"+0200",t:"+0100",n:"CET",s:"19701025T030000",r:{m:10,d:"-1SU"}},d:{f:"+0100",t:"+0200",n:"CEST",s:"19700329T020000",r:{m:3,d:"-1SU"}}}],["Europe/Sarajevo",{s:{f:"+0200",t:"+0100",n:"CET",s:"19701025T030000",r:{m:10,d:"-1SU"}},d:{f:"+0100",t:"+0200",n:"CEST",s:"19700329T020000",r:{m:3,d:"-1SU"}}}],["Europe/Saratov",{s:{f:"+0400",n:"+04"}}],["Europe/Simferopol",{s:{f:"+0300",n:"MSK"}}],["Europe/Skopje",{s:{f:"+0200",t:"+0100",n:"CET",s:"19701025T030000",r:{m:10,d:"-1SU"}},d:{f:"+0100",t:"+0200",n:"CEST",s:"19700329T020000",r:{m:3,d:"-1SU"}}}],["Europe/Sofia",{s:{f:"+0300",t:"+0200",n:"EET",s:"19701025T040000",r:{m:10,d:"-1SU"}},d:{f:"+0200",t:"+0300",n:"EEST",s:"19700329T030000",r:{m:3,d:"-1SU"}}}],["Europe/Stockholm",{s:{f:"+0200",t:"+0100",n:"CET",s:"19701025T030000",r:{m:10,d:"-1SU"}},d:{f:"+0100",t:"+0200",n:"CEST",s:"19700329T020000",r:{m:3,d:"-1SU"}}}],["Europe/Tallinn",{s:{f:"+0300",t:"+0200",n:"EET",s:"19701025T040000",r:{m:10,d:"-1SU"}},d:{f:"+0200",t:"+0300",n:"EEST",s:"19700329T030000",r:{m:3,d:"-1SU"}}}],["Europe/Tirane",{s:{f:"+0200",t:"+0100",n:"CET",s:"19701025T030000",r:{m:10,d:"-1SU"}},d:{f:"+0100",t:"+0200",n:"CEST",s:"19700329T020000",r:{m:3,d:"-1SU"}}}],["Europe/Ulyanovsk",{s:{f:"+0400",n:"+04"}}],["Europe/Uzhgorod",{s:{f:"+0300",t:"+0200",n:"EET",s:"19701025T040000",r:{m:10,d:"-1SU"}},d:{f:"+0200",t:"+0300",n:"EEST",s:"19700329T030000",r:{m:3,d:"-1SU"}}}],["Europe/Vaduz",{s:{f:"+0200",t:"+0100",n:"CET",s:"19701025T030000",r:{m:10,d:"-1SU"}},d:{f:"+0100",t:"+0200",n:"CEST",s:"19700329T020000",r:{m:3,d:"-1SU"}}}],["Europe/Vatican",{s:{f:"+0200",t:"+0100",n:"CET",s:"19701025T030000",r:{m:10,d:"-1SU"}},d:{f:"+0100",t:"+0200",n:"CEST",s:"19700329T020000",r:{m:3,d:"-1SU"}}}],["Europe/Vienna",{s:{f:"+0200",t:"+0100",n:"CET",s:"19701025T030000",r:{m:10,d:"-1SU"}},d:{f:"+0100",t:"+0200",n:"CEST",s:"19700329T020000",r:{m:3,d:"-1SU"}}}],["Europe/Vilnius",{s:{f:"+0300",t:"+0200",n:"EET",s:"19701025T040000",r:{m:10,d:"-1SU"}},d:{f:"+0200",t:"+0300",n:"EEST",s:"19700329T030000",r:{m:3,d:"-1SU"}}}],["Europe/Volgograd",{s:{f:"+0400",n:"+04"}}],["Europe/Warsaw",{s:{f:"+0200",t:"+0100",n:"CET",s:"19701025T030000",r:{m:10,d:"-1SU"}},d:{f:"+0100",t:"+0200",n:"CEST",s:"19700329T020000",r:{m:3,d:"-1SU"}}}],["Europe/Zagreb",{s:{f:"+0200",t:"+0100",n:"CET",s:"19701025T030000",r:{m:10,d:"-1SU"}},d:{f:"+0100",t:"+0200",n:"CEST",s:"19700329T020000",r:{m:3,d:"-1SU"}}}],["Europe/Zaporozhye",{s:{f:"+0300",t:"+0200",n:"EET",s:"19701025T040000",r:{m:10,d:"-1SU"}},d:{f:"+0200",t:"+0300",n:"EEST",s:"19700329T030000",r:{m:3,d:"-1SU"}}}],["Europe/Zurich",{s:{f:"+0200",t:"+0100",n:"CET",s:"19701025T030000",r:{m:10,d:"-1SU"}},d:{f:"+0100",t:"+0200",n:"CEST",s:"19700329T020000",r:{m:3,d:"-1SU"}}}],["Indian/Antananarivo",{s:{f:"+0300",n:"EAT"}}],["Indian/Chagos",{s:{f:"+0600",n:"+06"}}],["Indian/Christmas",{s:{f:"+0700",n:"+07"}}],["Indian/Cocos",{s:{f:"+0630",n:"+0630"}}],["Indian/Comoro",{s:{f:"+0300",n:"EAT"}}],["Indian/Kerguelen",{s:{f:"+0500",n:"+05"}}],["Indian/Mahe",{s:{f:"+0400",n:"+04"}}],["Indian/Maldives",{s:{f:"+0500",n:"+05"}}],["Indian/Mauritius",{s:{f:"+0400",n:"+04"}}],["Indian/Mayotte",{s:{f:"+0300",n:"EAT"}}],["Indian/Reunion",{s:{f:"+0400",n:"+04"}}],["Pacific/Apia",{s:{f:"+1400",t:"+1300",n:"+13",s:"19700405T040000",r:{m:4,d:"1SU"}},d:{f:"+1300",t:"+1400",n:"+14",s:"19700927T030000",r:{m:9,d:"-1SU"}}}],["Pacific/Auckland",{s:{f:"+1300",t:"+1200",n:"NZST",s:"19700405T030000",r:{m:4,d:"1SU"}},d:{f:"+1200",t:"+1300",n:"NZDT",s:"19700927T020000",r:{m:9,d:"-1SU"}}}],["Pacific/Bougainville",{s:{f:"+1100",n:"+11"}}],["Pacific/Chatham",{s:{f:"+1345",t:"+1245",n:"+1245",s:"19700405T034500",r:{m:4,d:"1SU"}},d:{f:"+1245",t:"+1345",n:"+1345",s:"19700927T024500",r:{m:9,d:"-1SU"}}}],["Pacific/Chuuk",{s:{f:"+1000",n:"+10"}}],["Pacific/Easter",{s:{f:"-0500",t:"-0600",n:"-06",s:"19700404T220000",r:{m:4,d:"1SA"}},d:{f:"-0600",t:"-0500",n:"-05",s:"19700905T220000",r:{m:9,d:"1SA"}}}],["Pacific/Efate",{s:{f:"+1100",n:"+11"}}],["Pacific/Enderbury",{s:{f:"+1300",n:"+13"}}],["Pacific/Fakaofo",{s:{f:"+1300",n:"+13"}}],["Pacific/Fiji",{s:{f:"+1300",t:"+1200",n:"+12",s:"19700118T030000",r:{m:1,d:"-2SU"}},d:{f:"+1200",t:"+1300",n:"+13",s:"19701101T020000",r:{m:11,d:"1SU"}}}],["Pacific/Funafuti",{s:{f:"+1200",n:"+12"}}],["Pacific/Galapagos",{s:{f:"-0600",n:"-06"}}],["Pacific/Gambier",{s:{f:"-0900",n:"-09"}}],["Pacific/Guadalcanal",{s:{f:"+1100",n:"+11"}}],["Pacific/Guam",{s:{f:"+1000",n:"ChST"}}],["Pacific/Honolulu",{s:{f:"-1000",n:"HST"}}],["Pacific/Kiritimati",{s:{f:"+1400",n:"+14"}}],["Pacific/Kosrae",{s:{f:"+1100",n:"+11"}}],["Pacific/Kwajalein",{s:{f:"+1200",n:"+12"}}],["Pacific/Majuro",{s:{f:"+1200",n:"+12"}}],["Pacific/Marquesas",{s:{f:"-0930",n:"-0930"}}],["Pacific/Midway",{s:{f:"-1100",n:"SST"}}],["Pacific/Nauru",{s:{f:"+1200",n:"+12"}}],["Pacific/Niue",{s:{f:"-1100",n:"-11"}}],["Pacific/Norfolk",{s:{f:"+1100",n:"+11"}}],["Pacific/Noumea",{s:{f:"+1100",n:"+11"}}],["Pacific/Pago_Pago",{s:{f:"-1100",n:"SST"}}],["Pacific/Palau",{s:{f:"+0900",n:"+09"}}],["Pacific/Pitcairn",{s:{f:"-0800",n:"-08"}}],["Pacific/Pohnpei",{s:{f:"+1100",n:"+11"}}],["Pacific/Port_Moresby",{s:{f:"+1000",n:"+10"}}],["Pacific/Rarotonga",{s:{f:"-1000",n:"-10"}}],["Pacific/Saipan",{s:{f:"+1000",n:"ChST"}}],["Pacific/Tahiti",{s:{f:"-1000",n:"-10"}}],["Pacific/Tarawa",{s:{f:"+1200",n:"+12"}}],["Pacific/Tongatapu",{s:{f:"+1300",n:"+13"}}],["Pacific/Wake",{s:{f:"+1200",n:"+12"}}],["Pacific/Wallis",{s:{f:"+1200",n:"+12"}}]])),he}var lt;function N0(){if(lt)return ne;lt=1,Object.defineProperty(ne,"__esModule",{value:!0}),ne.getZoneString=ne.getZoneLines=void 0;const a=w0();function e(i){const{n:r,f:o,t:n,r:l,s:u}=i;return[`TZNAME:${r}`,`TZOFFSETFROM:${o}`,`TZOFFSETTO:${n||o}`,`DTSTART:${u||a.defaultStart}`,...l?[`RRULE:FREQ=${l.f||"YEARLY"};BYMONTH=${l.m};BYDAY=${l.d}`]:[]]}function t(i,r=!0){const o=a.zonesMap.get(i);if(o){const{s:n,d:l}=o;return[...r?["BEGIN:VTIMEZONE"]:[],`TZID:${i}`,"BEGIN:STANDARD",...e(n),"END:STANDARD",...l?["BEGIN:DAYLIGHT",...e(l),"END:DAYLIGHT"]:[],...r?["END:VTIMEZONE"]:[]]}}ne.getZoneLines=t;function s(i,r=!0){return t(i,r)?.join(`\r
`)}return ne.getZoneString=s,ne}var M0=N0();class Be{static fromString(e){return new Be(e)}constructor(e){this.value=e}icaltype="binary";decodeValue(){return this._b64_decode(this.value)}setEncodedValue(e){this.value=this._b64_encode(e)}_b64_encode(e){let t="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",s,i,r,o,n,l,u,c,d=0,m=0,p="",y=[];if(!e)return e;do s=e.charCodeAt(d++),i=e.charCodeAt(d++),r=e.charCodeAt(d++),c=s<<16|i<<8|r,o=c>>18&63,n=c>>12&63,l=c>>6&63,u=c&63,y[m++]=t.charAt(o)+t.charAt(n)+t.charAt(l)+t.charAt(u);while(d<e.length);p=y.join("");let f=e.length%3;return(f?p.slice(0,f-3):p)+"===".slice(f||3)}_b64_decode(e){let t="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",s,i,r,o,n,l,u,c,d=0,m=0,p="",y=[];if(!e)return e;e+="";do o=t.indexOf(e.charAt(d++)),n=t.indexOf(e.charAt(d++)),l=t.indexOf(e.charAt(d++)),u=t.indexOf(e.charAt(d++)),c=o<<18|n<<12|l<<6|u,s=c>>16&255,i=c>>8&255,r=c&255,l==64?y[m++]=String.fromCharCode(s):u==64?y[m++]=String.fromCharCode(s,i):y[m++]=String.fromCharCode(s,i,r);while(d<e.length);return p=y.join(""),p}toString(){return this.value}}const x0=/([PDWHMTS]{1,1})/,I0=["weeks","days","hours","minutes","seconds","isNegative"];class x{static fromSeconds(e){return new x().fromSeconds(e)}static isValueString(e){return e[0]==="P"||e[1]==="P"}static fromString(e){let t=0,s=Object.create(null),i=0;for(;(t=e.search(x0))!==-1;){let r=e[t],o=e.slice(0,Math.max(0,t));e=e.slice(t+1),i+=k0(r,o,s)}if(i<2)throw new Error('invalid duration value: Not enough duration components in "'+e+'"');return new x(s)}static fromData(e){return new x(e)}constructor(e){this.wrappedJSObject=this,this.fromData(e)}weeks=0;days=0;hours=0;minutes=0;seconds=0;isNegative=!1;icalclass="icalduration";icaltype="duration";clone(){return x.fromData(this)}toSeconds(){let e=this.seconds+60*this.minutes+3600*this.hours+86400*this.days+604800*this.weeks;return this.isNegative?-e:e}fromSeconds(e){let t=Math.abs(e);return this.isNegative=e<0,this.days=O(t/86400),this.days%7==0?(this.weeks=this.days/7,this.days=0):this.weeks=0,t-=(this.days+7*this.weeks)*86400,this.hours=O(t/3600),t-=this.hours*3600,this.minutes=O(t/60),t-=this.minutes*60,this.seconds=t,this}fromData(e){for(let t of I0)e&&t in e?this[t]=e[t]:this[t]=0}reset(){this.isNegative=!1,this.weeks=0,this.days=0,this.hours=0,this.minutes=0,this.seconds=0}compare(e){let t=this.toSeconds(),s=e.toSeconds();return(t>s)-(t<s)}normalize(){this.fromSeconds(this.toSeconds())}toString(){if(this.toSeconds()==0)return"PT0S";{let e="";this.isNegative&&(e+="-"),e+="P";let t=!1;return this.weeks?this.days||this.hours||this.minutes||this.seconds?e+=this.weeks*7+this.days+"D":(e+=this.weeks+"W",t=!0):this.days&&(e+=this.days+"D"),t||(this.hours||this.minutes||this.seconds)&&(e+="T",this.hours&&(e+=this.hours+"H"),this.minutes&&(e+=this.minutes+"M"),this.seconds&&(e+=this.seconds+"S")),e}}toICALString(){return this.toString()}}function k0(a,e,t){let s;switch(a){case"P":e&&e==="-"?t.isNegative=!0:t.isNegative=!1;break;case"D":s="days";break;case"W":s="weeks";break;case"H":s="hours";break;case"M":s="minutes";break;case"S":s="seconds";break;default:return 0}if(s){if(!e&&e!==0)throw new Error('invalid duration value: Missing number before "'+a+'"');let i=parseInt(e,10);if(Ae(i))throw new Error('invalid duration value: Invalid number "'+e+'" before "'+a+'"');t[s]=i}return 1}class J{static fromString(e,t){let s=e.split("/");if(s.length!==2)throw new Error('Invalid string value: "'+e+'" must contain a "/" char.');let i={start:h.fromDateTimeString(s[0],t)},r=s[1];return x.isValueString(r)?i.duration=x.fromString(r):i.end=h.fromDateTimeString(r,t),new J(i)}static fromData(e){return new J(e)}static fromJSON(e,t,s){function i(r,o){return s?h.fromString(r,o):h.fromDateTimeString(r,o)}return x.isValueString(e[1])?J.fromData({start:i(e[0],t),duration:x.fromString(e[1])}):J.fromData({start:i(e[0],t),end:i(e[1],t)})}constructor(e){if(this.wrappedJSObject=this,e&&"start"in e){if(e.start&&!(e.start instanceof h))throw new TypeError(".start must be an instance of ICAL.Time");this.start=e.start}if(e&&e.end&&e.duration)throw new Error("cannot accept both end and duration");if(e&&"end"in e){if(e.end&&!(e.end instanceof h))throw new TypeError(".end must be an instance of ICAL.Time");this.end=e.end}if(e&&"duration"in e){if(e.duration&&!(e.duration instanceof x))throw new TypeError(".duration must be an instance of ICAL.Duration");this.duration=e.duration}}start=null;end=null;duration=null;icalclass="icalperiod";icaltype="period";clone(){return J.fromData({start:this.start?this.start.clone():null,end:this.end?this.end.clone():null,duration:this.duration?this.duration.clone():null})}getDuration(){return this.duration?this.duration:this.end.subtractDate(this.start)}getEnd(){if(this.end)return this.end;{let e=this.start.clone();return e.addDuration(this.duration),e}}compare(e){return e.compare(this.start)<0?1:e.compare(this.getEnd())>0?-1:0}toString(){return this.start+"/"+(this.end||this.duration)}toJSON(){return[this.start.toString(),(this.end||this.duration).toString()]}toICALString(){return this.start.toICALString()+"/"+(this.end||this.duration).toICALString()}}class h{static _dowCache={};static _wnCache={};static daysInMonth(e,t){let s=[0,31,28,31,30,31,30,31,31,30,31,30,31],i=30;return e<1||e>12||(i=s[e],e==2&&(i+=h.isLeapYear(t))),i}static isLeapYear(e){return e<=1752?e%4==0:e%4==0&&e%100!=0||e%400==0}static fromDayOfYear(e,t){let s=t,i=e,r=new h;r.auto_normalize=!1;let o=h.isLeapYear(s)?1:0;if(i<1)return s--,o=h.isLeapYear(s)?1:0,i+=h.daysInYearPassedMonth[o][12],h.fromDayOfYear(i,s);if(i>h.daysInYearPassedMonth[o][12])return o=h.isLeapYear(s)?1:0,i-=h.daysInYearPassedMonth[o][12],s++,h.fromDayOfYear(i,s);r.year=s,r.isDate=!0;for(let n=11;n>=0;n--)if(i>h.daysInYearPassedMonth[o][n]){r.month=n+1,r.day=i-h.daysInYearPassedMonth[o][n];break}return r.auto_normalize=!0,r}static fromStringv2(e){return new h({year:parseInt(e.slice(0,4),10),month:parseInt(e.slice(5,7),10),day:parseInt(e.slice(8,10),10),isDate:!0})}static fromDateString(e){return new h({year:N(e.slice(0,4)),month:N(e.slice(5,7)),day:N(e.slice(8,10)),isDate:!0})}static fromDateTimeString(e,t){if(e.length<19)throw new Error('invalid date-time value: "'+e+'"');let s,i;e.slice(-1)==="Z"?s=T.utcTimezone:t&&(i=t.getParameter("tzid"),t.parent&&(t.parent.name==="standard"||t.parent.name==="daylight"?s=T.localTimezone:i&&(s=t.parent.getTimeZoneByID(i))));const r={year:N(e.slice(0,4)),month:N(e.slice(5,7)),day:N(e.slice(8,10)),hour:N(e.slice(11,13)),minute:N(e.slice(14,16)),second:N(e.slice(17,19))};return i&&!s&&(r.timezone=i),new h(r,s)}static fromString(e,t){return e.length>10?h.fromDateTimeString(e,t):h.fromDateString(e)}static fromJSDate(e,t){return new h().fromJSDate(e,t)}static fromData=function(e,t){return new h().fromData(e,t)};static now(){return h.fromJSDate(new Date,!1)}static weekOneStarts(e,t){let s=h.fromData({year:e,month:1,day:1,isDate:!0}),i=s.dayOfWeek(),r=t||h.DEFAULT_WEEK_START;return i>h.THURSDAY&&(s.day+=7),r>h.THURSDAY&&(s.day-=7),s.day-=i-r,s}static getDominicalLetter(e){let t="GFEDCBA",s=(e+(e/4|0)+(e/400|0)-(e/100|0)-1)%7;return h.isLeapYear(e)?t[(s+6)%7]+t[s]:t[s]}static#e=null;static get epochTime(){return this.#e||(this.#e=h.fromData({year:1970,month:1,day:1,hour:0,minute:0,second:0,isDate:!1,timezone:"Z"})),this.#e}static _cmp_attr(e,t,s){return e[s]>t[s]?1:e[s]<t[s]?-1:0}static daysInYearPassedMonth=[[0,31,59,90,120,151,181,212,243,273,304,334,365],[0,31,60,91,121,152,182,213,244,274,305,335,366]];static SUNDAY=1;static MONDAY=2;static TUESDAY=3;static WEDNESDAY=4;static THURSDAY=5;static FRIDAY=6;static SATURDAY=7;static DEFAULT_WEEK_START=2;constructor(e,t){this.wrappedJSObject=this,this._time=Object.create(null),this._time.year=0,this._time.month=1,this._time.day=1,this._time.hour=0,this._time.minute=0,this._time.second=0,this._time.isDate=!1,this.fromData(e,t)}icalclass="icaltime";_cachedUnixTime=null;get icaltype(){return this.isDate?"date":"date-time"}zone=null;_pendingNormalization=!1;get year(){return this._getTimeAttr("year")}set year(e){this._setTimeAttr("year",e)}get month(){return this._getTimeAttr("month")}set month(e){this._setTimeAttr("month",e)}get day(){return this._getTimeAttr("day")}set day(e){this._setTimeAttr("day",e)}get hour(){return this._getTimeAttr("hour")}set hour(e){this._setTimeAttr("hour",e)}get minute(){return this._getTimeAttr("minute")}set minute(e){this._setTimeAttr("minute",e)}get second(){return this._getTimeAttr("second")}set second(e){this._setTimeAttr("second",e)}get isDate(){return this._getTimeAttr("isDate")}set isDate(e){this._setTimeAttr("isDate",e)}_getTimeAttr(e){return this._pendingNormalization&&(this._normalize(),this._pendingNormalization=!1),this._time[e]}_setTimeAttr(e,t){e==="isDate"&&t&&!this._time.isDate&&this.adjust(0,0,0,0),this._cachedUnixTime=null,this._pendingNormalization=!0,this._time[e]=t}clone(){return new h(this._time,this.zone)}reset(){this.fromData(h.epochTime),this.zone=T.utcTimezone}resetTo(e,t,s,i,r,o,n){this.fromData({year:e,month:t,day:s,hour:i,minute:r,second:o,zone:n})}fromJSDate(e,t){return e?t?(this.zone=T.utcTimezone,this.year=e.getUTCFullYear(),this.month=e.getUTCMonth()+1,this.day=e.getUTCDate(),this.hour=e.getUTCHours(),this.minute=e.getUTCMinutes(),this.second=e.getUTCSeconds()):(this.zone=T.localTimezone,this.year=e.getFullYear(),this.month=e.getMonth()+1,this.day=e.getDate(),this.hour=e.getHours(),this.minute=e.getMinutes(),this.second=e.getSeconds()):this.reset(),this._cachedUnixTime=null,this}fromData(e,t){if(e)for(let[s,i]of Object.entries(e))s!=="icaltype"&&(this[s]=i);if(t&&(this.zone=t),e&&!("isDate"in e)?this.isDate=!("hour"in e):e&&"isDate"in e&&(this.isDate=e.isDate),e&&"timezone"in e){let s=xe.get(e.timezone);this.zone=s||T.localTimezone}return e&&"zone"in e&&(this.zone=e.zone),this.zone||(this.zone=T.localTimezone),this._cachedUnixTime=null,this}dayOfWeek(e){let t=e||h.SUNDAY,s=(this.year<<12)+(this.month<<8)+(this.day<<3)+t;if(s in h._dowCache)return h._dowCache[s];let i=this.day,r=this.month+(this.month<3?12:0),o=this.year-(this.month<3?1:0),n=i+o+O((r+1)*26/10)+O(o/4);return n+=O(o/100)*6+O(o/400),n=(n+7-t)%7+1,h._dowCache[s]=n,n}dayOfYear(){let e=h.isLeapYear(this.year)?1:0;return h.daysInYearPassedMonth[e][this.month-1]+this.day}startOfWeek(e){let t=e||h.SUNDAY,s=this.clone();return s.day-=(this.dayOfWeek()+7-t)%7,s.isDate=!0,s.hour=0,s.minute=0,s.second=0,s}endOfWeek(e){let t=e||h.SUNDAY,s=this.clone();return s.day+=(7-this.dayOfWeek()+t-h.SUNDAY)%7,s.isDate=!0,s.hour=0,s.minute=0,s.second=0,s}startOfMonth(){let e=this.clone();return e.day=1,e.isDate=!0,e.hour=0,e.minute=0,e.second=0,e}endOfMonth(){let e=this.clone();return e.day=h.daysInMonth(e.month,e.year),e.isDate=!0,e.hour=0,e.minute=0,e.second=0,e}startOfYear(){let e=this.clone();return e.day=1,e.month=1,e.isDate=!0,e.hour=0,e.minute=0,e.second=0,e}endOfYear(){let e=this.clone();return e.day=31,e.month=12,e.isDate=!0,e.hour=0,e.minute=0,e.second=0,e}startDoyWeek(e){let t=e||h.SUNDAY,s=this.dayOfWeek()-t;return s<0&&(s+=7),this.dayOfYear()-s}getDominicalLetter(){return h.getDominicalLetter(this.year)}nthWeekDay(e,t){let s=h.daysInMonth(this.month,this.year),i,r=t,o=0,n=this.clone();if(r>=0){n.day=1,r!=0&&r--,o=n.day;let l=n.dayOfWeek(),u=e-l;u<0&&(u+=7),o+=u,o-=e,i=e}else{n.day=s;let l=n.dayOfWeek();r++,i=l-e,i<0&&(i+=7),i=s-i}return i+=r*7,o+i}isNthWeekDay(e,t){let s=this.dayOfWeek();return t===0&&s===e||this.nthWeekDay(e,t)===this.day}weekNumber(e){let t=(this.year<<12)+(this.month<<8)+(this.day<<3)+e;if(t in h._wnCache)return h._wnCache[t];let s,i=this.clone();i.isDate=!0;let r=this.year;i.month==12&&i.day>25?(s=h.weekOneStarts(r+1,e),i.compare(s)<0?s=h.weekOneStarts(r,e):r++):(s=h.weekOneStarts(r,e),i.compare(s)<0&&(s=h.weekOneStarts(--r,e)));let o=i.subtractDate(s).toSeconds()/86400,n=O(o/7)+1;return h._wnCache[t]=n,n}addDuration(e){let t=e.isNegative?-1:1,s=this.second,i=this.minute,r=this.hour,o=this.day;s+=t*e.seconds,i+=t*e.minutes,r+=t*e.hours,o+=t*e.days,o+=t*7*e.weeks,this.second=s,this.minute=i,this.hour=r,this.day=o,this._cachedUnixTime=null}subtractDate(e){let t=this.toUnixTime()+this.utcOffset(),s=e.toUnixTime()+e.utcOffset();return x.fromSeconds(t-s)}subtractDateTz(e){let t=this.toUnixTime(),s=e.toUnixTime();return x.fromSeconds(t-s)}compare(e){if(e instanceof J)return-1*e.compare(this);{let t=this.toUnixTime(),s=e.toUnixTime();return t>s?1:s>t?-1:0}}compareDateOnlyTz(e,t){let s=this.convertToZone(t),i=e.convertToZone(t),r=0;return(r=h._cmp_attr(s,i,"year"))!=0||(r=h._cmp_attr(s,i,"month"))!=0||(r=h._cmp_attr(s,i,"day"))!=0,r}convertToZone(e){let t=this.clone(),s=this.zone.tzid==e.tzid;return!this.isDate&&!s&&T.convert_time(t,this.zone,e),t.zone=e,t}utcOffset(){return this.zone==T.localTimezone||this.zone==T.utcTimezone?0:this.zone.utcOffset(this)}toICALString(){let e=this.toString();return e.length>10?U.icalendar.value["date-time"].toICAL(e):U.icalendar.value.date.toICAL(e)}toString(){let e=this.year+"-"+P(this.month)+"-"+P(this.day);return this.isDate||(e+="T"+P(this.hour)+":"+P(this.minute)+":"+P(this.second),this.zone===T.utcTimezone&&(e+="Z")),e}toJSDate(){return this.zone==T.localTimezone?this.isDate?new Date(this.year,this.month-1,this.day):new Date(this.year,this.month-1,this.day,this.hour,this.minute,this.second,0):new Date(this.toUnixTime()*1e3)}_normalize(){return this._time.isDate&&(this._time.hour=0,this._time.minute=0,this._time.second=0),this.adjust(0,0,0,0),this}adjust(e,t,s,i,r){let o,n,l=0,u=0,c,d,m,p,y,f=r||this._time;if(f.isDate||(c=f.second+i,f.second=c%60,o=O(c/60),f.second<0&&(f.second+=60,o--),d=f.minute+s+o,f.minute=d%60,n=O(d/60),f.minute<0&&(f.minute+=60,n--),m=f.hour+t+n,f.hour=m%24,l=O(m/24),f.hour<0&&(f.hour+=24,l--)),f.month>12?u=O((f.month-1)/12):f.month<1&&(u=O(f.month/12)-1),f.year+=u,f.month-=12*u,p=f.day+e+l,p>0)for(;y=h.daysInMonth(f.month,f.year),!(p<=y);)f.month++,f.month>12&&(f.year++,f.month=1),p-=y;else for(;p<=0;)f.month==1?(f.year--,f.month=12):f.month--,p+=h.daysInMonth(f.month,f.year);return f.day=p,this._cachedUnixTime=null,this}fromUnixTime(e){this.zone=T.utcTimezone;let t=new Date(e*1e3);this.year=t.getUTCFullYear(),this.month=t.getUTCMonth()+1,this.day=t.getUTCDate(),this._time.isDate?(this.hour=0,this.minute=0,this.second=0):(this.hour=t.getUTCHours(),this.minute=t.getUTCMinutes(),this.second=t.getUTCSeconds()),this._cachedUnixTime=null}toUnixTime(){if(this._cachedUnixTime!==null)return this._cachedUnixTime;let e=this.utcOffset(),t=Date.UTC(this.year,this.month-1,this.day,this.hour,this.minute,this.second-e);return this._cachedUnixTime=t/1e3,this._cachedUnixTime}toJSON(){let e=["year","month","day","hour","minute","second","isDate"],t=Object.create(null),s=0,i=e.length,r;for(;s<i;s++)r=e[s],t[r]=this[r];return this.zone&&(t.timezone=this.zone.tzid),t}}const B0=/[^ \t]/,_e=":",Le=";",P0="=",L0="unknown",z0="text",V0={"^'":'"',"^n":`
`,"^^":"^"};function D(a){let e={},t=e.component=[];if(e.stack=[t],D._eachLine(a,function(s,i){D._handleContentLine(i,e)}),e.stack.length>1)throw new oe("invalid ical body. component began but did not end");return e=null,t.length==1?t[0]:t}D.property=function(a,e){let t={component:[[],[]],designSet:e||U.defaultSet};return D._handleContentLine(a,t),t.component[1][0]},D.component=function(a){return D(a)};class oe extends Error{name=this.constructor.name}D.ParserError=oe,D._handleContentLine=function(a,e){let t=a.indexOf(_e),s=a.indexOf(Le),i,r,o,n,l={};s!==-1&&t!==-1&&s>t&&(s=-1);let u;if(s!==-1){if(o=a.slice(0,Math.max(0,s)).toLowerCase(),u=D._parseParameters(a.slice(Math.max(0,s)),0,e.designSet),u[2]==-1)throw new oe("Invalid parameters in '"+a+"'");l=u[0];let C;if(typeof u[1]=="string"?C=u[1].length:C=u[1].reduce((fe,re)=>fe+re.length,0),i=C+u[2]+s,(r=a.slice(Math.max(0,i)).indexOf(_e))!==-1)n=a.slice(Math.max(0,i+r+1));else throw new oe("Missing parameter value in '"+a+"'")}else if(t!==-1){if(o=a.slice(0,Math.max(0,t)).toLowerCase(),n=a.slice(Math.max(0,t+1)),o==="begin"){let C=[n.toLowerCase(),[],[]];e.stack.length===1?e.component.push(C):e.component[2].push(C),e.stack.push(e.component),e.component=C,e.designSet||(e.designSet=U.getDesignSet(e.component[0]));return}else if(o==="end"){e.component=e.stack.pop();return}}else throw new oe('invalid line (no token ";" or ":") "'+a+'"');let c,d=!1,m=!1,p,y,f;e.designSet.propertyGroups&&o.indexOf(".")!==-1?(y=o.split("."),l.group=y[0],f=y[1]):f=o,f in e.designSet.property&&(p=e.designSet.property[f],"multiValue"in p&&(d=p.multiValue),"structuredValue"in p&&(m=p.structuredValue),n&&"detectType"in p&&(c=p.detectType(n))),c||("value"in l?c=l.value.toLowerCase():p?c=p.defaultType:c=L0),delete l.value;let g;d&&m?(n=D._parseMultiValue(n,m,c,[],d,e.designSet,m),g=[f,l,c,n]):d?(g=[f,l,c],D._parseMultiValue(n,d,c,g,null,e.designSet,!1)):m?(n=D._parseMultiValue(n,m,c,[],null,e.designSet,m),g=[f,l,c,n]):(n=D._parseValue(n,c,e.designSet,!1),g=[f,l,c,n]),e.component[0]==="vcard"&&e.component[1].length===0&&!(o==="version"&&n==="4.0")&&(e.designSet=U.getDesignSet("vcard3")),e.component[1].push(g)},D._parseValue=function(a,e,t,s){return e in t.value&&"fromICAL"in t.value[e]?t.value[e].fromICAL(a,s):a},D._parseParameters=function(a,e,t){let s=e,i=0,r=P0,o={},n,l,u,c=-1,d,m,p;for(;i!==!1&&(i=a.indexOf(r,i+1))!==-1;){if(n=a.slice(s+1,i),n.length==0)throw new oe("Empty parameter name in '"+a+"'");if(l=n.toLowerCase(),p=!1,m=!1,l in t.param&&t.param[l].valueType?d=t.param[l].valueType:d=z0,l in t.param&&(m=t.param[l].multiValue,t.param[l].multiValueSeparateDQuote&&(p=D._rfc6868Escape('"'+m+'"'))),a[i+1]==='"'){if(c=i+2,i=a.indexOf('"',c),m&&i!=-1){let g=!0;for(;g;)a[i+1]==m&&a[i+2]=='"'?i=a.indexOf('"',i+3):g=!1}if(i===-1)throw new oe('invalid line (no matching double quote) "'+a+'"');u=a.slice(c,i),s=a.indexOf(Le,i);let f=a.indexOf(_e,i);(s===-1||f!==-1&&s>f)&&(i=!1)}else{c=i+1;let f=a.indexOf(Le,c),g=a.indexOf(_e,c);g!==-1&&f>g?(f=g,i=!1):f===-1?(g===-1?f=a.length:f=g,i=!1):(s=f,i=f),u=a.slice(c,f)}const y=u.length;if(u=D._rfc6868Escape(u),c+=y-u.length,m){let f=p||m;u=D._parseMultiValue(u,f,d,[],null,t)}else u=D._parseValue(u,d,t);m&&l in o?Array.isArray(o[l])?o[l].push(u):o[l]=[o[l],u]:o[l]=u}return[o,u,c]},D._rfc6868Escape=function(a){return a.replace(/\^['n^]/g,function(e){return V0[e]})},D._parseMultiValue=function(a,e,t,s,i,r,o){let n=0,l=0,u;if(e.length===0)return a;for(;(n=bt(a,e,l))!==-1;)u=a.slice(l,n),i?u=D._parseMultiValue(u,i,t,[],null,r,o):u=D._parseValue(u,t,r,o),s.push(u),l=n+e.length;return u=a.slice(l),i?u=D._parseMultiValue(u,i,t,[],null,r,o):u=D._parseValue(u,t,r,o),s.push(u),s.length==1?s[0]:s},D._eachLine=function(a,e){let t=a.length,s=a.search(B0),i=s,r,o,n;do i=a.indexOf(`
`,s)+1,i>1&&a[i-2]==="\r"?n=2:n=1,i===0&&(i=t,n=0),o=a[s],o===" "||o===" "?r+=a.slice(s+1,i-n):(r&&e(null,r),r=a.slice(s,i-n)),s=i;while(i!==t);r=r.trim(),r.length&&e(null,r)};const H0=["tzid","location","tznames","latitude","longitude"];class T{static _compare_change_fn(e,t){return e.year<t.year?-1:e.year>t.year?1:e.month<t.month?-1:e.month>t.month?1:e.day<t.day?-1:e.day>t.day?1:e.hour<t.hour?-1:e.hour>t.hour?1:e.minute<t.minute?-1:e.minute>t.minute?1:e.second<t.second?-1:e.second>t.second?1:0}static convert_time(e,t,s){if(e.isDate||t.tzid==s.tzid||t==T.localTimezone||s==T.localTimezone)return e.zone=s,e;let i=t.utcOffset(e);return e.adjust(0,0,0,-i),i=s.utcOffset(e),e.adjust(0,0,0,i),null}static fromData(e){return new T().fromData(e)}static#e=null;static get utcTimezone(){return this.#e||(this.#e=T.fromData({tzid:"UTC"})),this.#e}static#t=null;static get localTimezone(){return this.#t||(this.#t=T.fromData({tzid:"floating"})),this.#t}static adjust_change(e,t,s,i,r){return h.prototype.adjust.call(e,t,s,i,r,e)}static _minimumExpansionYear=-1;static EXTRA_COVERAGE=5;constructor(e){this.wrappedJSObject=this,this.fromData(e)}tzid="";location="";tznames="";latitude=0;longitude=0;component=null;expandedUntilYear=0;icalclass="icaltimezone";fromData(e){if(this.expandedUntilYear=0,this.changes=[],e instanceof H)this.component=e;else{if(e&&"component"in e)if(typeof e.component=="string"){let t=D(e.component);this.component=new H(t)}else e.component instanceof H?this.component=e.component:this.component=null;for(let t of H0)e&&t in e&&(this[t]=e[t])}return this.component instanceof H&&!this.tzid&&(this.tzid=this.component.getFirstPropertyValue("tzid")),this}utcOffset(e){if(this==T.utcTimezone||this==T.localTimezone||(this._ensureCoverage(e.year),!this.changes.length))return 0;let t={year:e.year,month:e.month,day:e.day,hour:e.hour,minute:e.minute,second:e.second},s=this._findNearbyChange(t),i=-1,r=1;for(;;){let n=de(this.changes[s],!0);if(n.utcOffset<n.prevUtcOffset?T.adjust_change(n,0,0,0,n.utcOffset):T.adjust_change(n,0,0,0,n.prevUtcOffset),T._compare_change_fn(t,n)>=0?i=s:r=-1,r==-1&&i!=-1)break;if(s+=r,s<0)return 0;if(s>=this.changes.length)break}let o=this.changes[i];if(o.utcOffset-o.prevUtcOffset<0&&i>0){let n=de(o,!0);if(T.adjust_change(n,0,0,0,n.prevUtcOffset),T._compare_change_fn(t,n)<0){let l=this.changes[i-1],u=!1;o.is_daylight!=u&&l.is_daylight==u&&(o=l)}}return o.utcOffset}_findNearbyChange(e){let t=le(this.changes,e,T._compare_change_fn);return t>=this.changes.length?this.changes.length-1:t}_ensureCoverage(e){if(T._minimumExpansionYear==-1){let s=h.now();T._minimumExpansionYear=s.year}let t=e;if(t<T._minimumExpansionYear&&(t=T._minimumExpansionYear),t+=T.EXTRA_COVERAGE,!this.changes.length||this.expandedUntilYear<e){let s=this.component.getAllSubcomponents(),i=s.length,r=0;for(;r<i;r++)this._expandComponent(s[r],t,this.changes);this.changes.sort(T._compare_change_fn),this.expandedUntilYear=t}}_expandComponent(e,t,s){if(!e.hasProperty("dtstart")||!e.hasProperty("tzoffsetto")||!e.hasProperty("tzoffsetfrom"))return null;let i=e.getFirstProperty("dtstart").getFirstValue(),r;function o(l){return l.factor*(l.hours*3600+l.minutes*60)}function n(){let l={};return l.is_daylight=e.name=="daylight",l.utcOffset=o(e.getFirstProperty("tzoffsetto").getFirstValue()),l.prevUtcOffset=o(e.getFirstProperty("tzoffsetfrom").getFirstValue()),l}if(!e.hasProperty("rrule")&&!e.hasProperty("rdate"))r=n(),r.year=i.year,r.month=i.month,r.day=i.day,r.hour=i.hour,r.minute=i.minute,r.second=i.second,T.adjust_change(r,0,0,0,-r.prevUtcOffset),s.push(r);else{let l=e.getAllProperties("rdate");for(let c of l){let d=c.getFirstValue();r=n(),r.year=d.year,r.month=d.month,r.day=d.day,d.isDate?(r.hour=i.hour,r.minute=i.minute,r.second=i.second,i.zone!=T.utcTimezone&&T.adjust_change(r,0,0,0,-r.prevUtcOffset)):(r.hour=d.hour,r.minute=d.minute,r.second=d.second,d.zone!=T.utcTimezone&&T.adjust_change(r,0,0,0,-r.prevUtcOffset)),s.push(r)}let u=e.getFirstProperty("rrule");if(u){u=u.getFirstValue(),r=n(),u.until&&u.until.zone==T.utcTimezone&&(u.until.adjust(0,0,0,r.prevUtcOffset),u.until.zone=T.localTimezone);let c=u.iterator(i),d;for(;(d=c.next())&&(r=n(),!(d.year>t||!d));)r.year=d.year,r.month=d.month,r.day=d.day,r.hour=d.hour,r.minute=d.minute,r.second=d.second,r.isDate=d.isDate,T.adjust_change(r,0,0,0,-r.prevUtcOffset),s.push(r)}}return s}toString(){return this.tznames?this.tznames:this.tzid}}let I=null;const xe={get count(){return I===null?0:Object.keys(I).length},reset:function(){I=Object.create(null);let a=T.utcTimezone;I.Z=a,I.UTC=a,I.GMT=a},_hard_reset:function(){I=null},has:function(a){return I===null?!1:!!I[a]},get:function(a){return I===null&&this.reset(),I[a]},register:function(a,e){if(I===null&&this.reset(),typeof a=="string"&&e instanceof T&&([a,e]=[e,a]),e||(a instanceof T?e=a.tzid:a.name==="vtimezone"&&(a=new T(a),e=a.tzid)),!e)throw new TypeError("Neither a timezone nor a name was passed");if(a instanceof T)I[e]=a;else throw new TypeError("timezone must be ICAL.Timezone or ICAL.Component")},remove:function(a){return I===null?null:delete I[a]}};function j0(a){let e,t,s,i,r;if(!a||a.name!=="vcalendar")return a;for(e=a.getAllSubcomponents(),t=[],s={},r=0;r<e.length;r++)if(e[r].name==="vtimezone"){let o=e[r].getFirstProperty("tzid").getFirstValue();s[o]=e[r]}else t=t.concat(e[r].getAllProperties());for(i={},r=0;r<t.length;r++){let o=t[r].getParameter("tzid");o&&(i[o]=!0)}for(let[o,n]of Object.entries(s))i[o]||a.removeSubcomponent(n);for(let o of Object.keys(i))!s[o]&&xe.has(o)&&a.addSubcomponent(xe.get(o).component);return a}function Ae(a){return typeof a=="number"&&isNaN(a)}function N(a){let e=parseInt(a,10);if(Ae(e))throw new Error('Could not extract integer from "'+a+'"');return e}function $(a,e){if(!(typeof a>"u"))return a instanceof e?a:new e(a)}function bt(a,e,t){for(;(t=a.indexOf(e,t))!==-1;)if(t>0&&a[t-1]==="\\")t+=1;else return t;return-1}function le(a,e,t){if(!a.length)return 0;let s=0,i=a.length-1,r,o;for(;s<=i;)if(r=s+Math.floor((i-s)/2),o=t(e,a[r]),o<0)i=r-1;else if(o>0)s=r+1;else break;return o<0?r:o>0?r+1:r}function de(a,e){if(!a||typeof a!="object")return a;if(a instanceof Date)return new Date(a.getTime());if("clone"in a)return a.clone();if(Array.isArray(a)){let t=[];for(let s=0;s<a.length;s++)t.push(e?de(a[s],!0):a[s]);return t}else{let t={};for(let[s,i]of Object.entries(a))e?t[s]=de(i,!0):t[s]=i;return t}}function Ut(a){let e="",t=a||"",s=0,i=0;for(;t.length;){let r=t.codePointAt(s);r<128?++i:r<2048?i+=2:r<65536?i+=3:i+=4,i<z.foldLength+1?s+=r>65535?2:1:(e+=z.newLineChar+" "+t.slice(0,Math.max(0,s)),t=t.slice(Math.max(0,s)),s=i=0)}return e.slice(z.newLineChar.length+1)}function P(a){switch(typeof a!="string"&&(typeof a=="number"&&(a=parseInt(a)),a=String(a)),a.length){case 0:return"00";case 1:return"0"+a;default:return a}}function O(a){return a<0?Math.ceil(a):Math.floor(a)}function ce(a,e){for(let t in a){let s=Object.getOwnPropertyDescriptor(a,t);s&&!Object.getOwnPropertyDescriptor(e,t)&&Object.defineProperty(e,t,s)}return e}var R0=Object.freeze({__proto__:null,binsearchInsert:le,clone:de,extend:ce,foldline:Ut,formatClassType:$,isStrictlyNaN:Ae,pad2:P,strictParseInt:N,trunc:O,unescapedIndexOf:bt,updateTimezones:j0});class W{static fromString(e){let t={};return t.factor=e[0]==="+"?1:-1,t.hours=N(e.slice(1,3)),t.minutes=N(e.slice(4,6)),new W(t)}static fromSeconds(e){let t=new W;return t.fromSeconds(e),t}constructor(e){this.fromData(e)}hours=0;minutes=0;factor=1;icaltype="utc-offset";clone(){return W.fromSeconds(this.toSeconds())}fromData(e){if(e)for(let[t,s]of Object.entries(e))this[t]=s;this._normalize()}fromSeconds(e){let t=Math.abs(e);return this.factor=e<0?-1:1,this.hours=O(t/3600),t-=this.hours*3600,this.minutes=O(t/60),this}toSeconds(){return this.factor*(60*this.minutes+3600*this.hours)}compare(e){let t=this.toSeconds(),s=e.toSeconds();return(t>s)-(s>t)}_normalize(){let e=this.toSeconds(),t=this.factor;for(;e<-43200;)e+=97200;for(;e>50400;)e-=97200;this.fromSeconds(e),e==0&&(this.factor=t)}toICALString(){return U.icalendar.value["utc-offset"].toICAL(this.toString())}toString(){return(this.factor==1?"+":"-")+P(this.hours)+":"+P(this.minutes)}}class se extends h{static fromDateAndOrTimeString(e,t){function s(f,g,C){return f?N(f.slice(g,g+C)):null}let i=e.split("T"),r=i[0],o=i[1],n=o?U.vcard.value.time._splitZone(o):[],l=n[0],u=n[1],c=r?r.length:0,d=u?u.length:0,m=r&&r[0]=="-"&&r[1]=="-",p=u&&u[0]=="-",y={year:m?null:s(r,0,4),month:m&&(c==4||c==7)?s(r,2,2):c==7||c==10?s(r,5,2):null,day:c==5?s(r,3,2):c==7&&m?s(r,5,2):c==10?s(r,8,2):null,hour:p?null:s(u,0,2),minute:p&&d==3?s(u,1,2):d>4?p?s(u,1,2):s(u,3,2):null,second:d==4?s(u,2,2):d==6?s(u,4,2):d==8?s(u,6,2):null};return l=="Z"?l=T.utcTimezone:l&&l[3]==":"?l=W.fromString(l):l=null,new se(y,l,t)}constructor(e,t,s){super(e,t),this.icaltype=s||"date-and-or-time"}icalclass="vcardtime";icaltype="date-and-or-time";clone(){return new se(this._time,this.zone,this.icaltype)}_normalize(){return this}utcOffset(){return this.zone instanceof W?this.zone.toSeconds():h.prototype.utcOffset.apply(this,arguments)}toICALString(){return U.vcard.value[this.icaltype].toICAL(this.toString())}toString(){let e=this.year,t=this.month,s=this.day,i=this.hour,r=this.minute,o=this.second,n=e!==null,l=t!==null,u=s!==null,c=i!==null,d=r!==null,m=o!==null,p=(n?P(e)+(l||u?"-":""):l||u?"--":"")+(l?P(t):"")+(u?"-"+P(s):""),y=(c?P(i):"-")+(c&&d?":":"")+(d?P(r):"")+(!c&&!d?"-":"")+(d&&m?":":"")+(m?P(o):""),f;switch(this.zone===T.utcTimezone?f="Z":this.zone instanceof W?f=this.zone.toString():this.zone===T.localTimezone?f="":this.zone instanceof T?f=W.fromSeconds(this.zone.utcOffset(this)).toString():f="",this.icaltype){case"time":return y+f;case"date-and-or-time":case"date-time":return p+(y=="--"?"":"T"+y+f);case"date":return p}return null}}class G{static _indexMap={BYSECOND:0,BYMINUTE:1,BYHOUR:2,BYDAY:3,BYMONTHDAY:4,BYYEARDAY:5,BYWEEKNO:6,BYMONTH:7,BYSETPOS:8};static _expandMap={SECONDLY:[1,1,1,1,1,1,1,1],MINUTELY:[2,1,1,1,1,1,1,1],HOURLY:[2,2,1,1,1,1,1,1],DAILY:[2,2,2,1,1,1,1,1],WEEKLY:[2,2,2,2,3,3,1,1],MONTHLY:[2,2,2,2,2,3,3,1],YEARLY:[2,2,2,2,2,2,2,2]};static UNKNOWN=0;static CONTRACT=1;static EXPAND=2;static ILLEGAL=3;constructor(e){this.fromData(e)}completed=!1;rule=null;dtstart=null;last=null;occurrence_number=0;by_indices=null;initialized=!1;by_data=null;days=null;days_index=0;fromData(e){if(this.rule=$(e.rule,M),!this.rule)throw new Error("iterator requires a (ICAL.Recur) rule");if(this.dtstart=$(e.dtstart,h),!this.dtstart)throw new Error("iterator requires a (ICAL.Time) dtstart");if(e.by_data?this.by_data=e.by_data:this.by_data=de(this.rule.parts,!0),e.occurrence_number&&(this.occurrence_number=e.occurrence_number),this.days=e.days||[],e.last&&(this.last=$(e.last,h)),this.by_indices=e.by_indices,this.by_indices||(this.by_indices={BYSECOND:0,BYMINUTE:0,BYHOUR:0,BYDAY:0,BYMONTH:0,BYWEEKNO:0,BYMONTHDAY:0}),this.initialized=e.initialized||!1,!this.initialized)try{this.init()}catch(t){if(t instanceof Ee)this.completed=!0;else throw t}}init(){this.initialized=!0,this.last=this.dtstart.clone();let e=this.by_data;if("BYDAY"in e&&this.sort_byday_rules(e.BYDAY),"BYYEARDAY"in e&&("BYMONTH"in e||"BYWEEKNO"in e||"BYMONTHDAY"in e))throw new Error("Invalid BYYEARDAY rule");if("BYWEEKNO"in e&&"BYMONTHDAY"in e)throw new Error("BYWEEKNO does not fit to BYMONTHDAY");if(this.rule.freq=="MONTHLY"&&("BYYEARDAY"in e||"BYWEEKNO"in e))throw new Error("For MONTHLY recurrences neither BYYEARDAY nor BYWEEKNO may appear");if(this.rule.freq=="WEEKLY"&&("BYYEARDAY"in e||"BYMONTHDAY"in e))throw new Error("For WEEKLY recurrences neither BYMONTHDAY nor BYYEARDAY may appear");if(this.rule.freq!="YEARLY"&&"BYYEARDAY"in e)throw new Error("BYYEARDAY may only appear in YEARLY rules");if(this.last.second=this.setup_defaults("BYSECOND","SECONDLY",this.dtstart.second),this.last.minute=this.setup_defaults("BYMINUTE","MINUTELY",this.dtstart.minute),this.last.hour=this.setup_defaults("BYHOUR","HOURLY",this.dtstart.hour),this.last.day=this.setup_defaults("BYMONTHDAY","DAILY",this.dtstart.day),this.last.month=this.setup_defaults("BYMONTH","MONTHLY",this.dtstart.month),this.rule.freq=="WEEKLY")if("BYDAY"in e){let[,t]=this.ruleDayOfWeek(e.BYDAY[0],this.rule.wkst),s=t-this.last.dayOfWeek(this.rule.wkst);(this.last.dayOfWeek(this.rule.wkst)<t&&s>=0||s<0)&&(this.last.day+=s)}else{let t=M.numericDayToIcalDay(this.dtstart.dayOfWeek());e.BYDAY=[t]}if(this.rule.freq=="YEARLY"){const t=this.rule.until?this.rule.until.year:2e4;for(;this.last.year<=t&&(this.expand_year_days(this.last.year),!(this.days.length>0));)this.increment_year(this.rule.interval);if(this.days.length==0)throw new Ee;if(!this._nextByYearDay()&&!this.next_year()&&!this.next_year()&&!this.next_year())throw new Ee}if(this.rule.freq=="MONTHLY"){if(this.has_by_data("BYDAY")){let t=null,s=this.last.clone(),i=h.daysInMonth(this.last.month,this.last.year);for(let r of this.by_data.BYDAY){this.last=s.clone();let[o,n]=this.ruleDayOfWeek(r),l=this.last.nthWeekDay(n,o);if(o>=6||o<=-6)throw new Error("Malformed values in BYDAY part");if(l>i||l<=0){if(t&&t.month==s.month)continue;for(;l>i||l<=0;)this.increment_month(),i=h.daysInMonth(this.last.month,this.last.year),l=this.last.nthWeekDay(n,o)}this.last.day=l,(!t||this.last.compare(t)<0)&&(t=this.last.clone())}if(this.last=t.clone(),this.has_by_data("BYMONTHDAY")&&this._byDayAndMonthDay(!0),this.last.day>i||this.last.day==0)throw new Error("Malformed values in BYDAY part")}else if(this.has_by_data("BYMONTHDAY")){this.last.day=1;let t=this.normalizeByMonthDayRules(this.last.year,this.last.month,this.rule.parts.BYMONTHDAY).filter(s=>s>=this.last.day);if(t.length)this.last.day=t[0],this.by_data.BYMONTHDAY=t;else if(!this.next_month()&&!this.next_month()&&!this.next_month())throw new Ee}}}next(e=!1){let t=this.last?this.last.clone():null;if((this.rule.count&&this.occurrence_number>=this.rule.count||this.rule.until&&this.last.compare(this.rule.until)>0)&&(this.completed=!0),this.completed)return null;if(this.occurrence_number==0&&this.last.compare(this.dtstart)>=0)return this.occurrence_number++,this.last;let s,i=0;do switch(s=1,this.rule.freq){case"SECONDLY":this.next_second();break;case"MINUTELY":this.next_minute();break;case"HOURLY":this.next_hour();break;case"DAILY":this.next_day();break;case"WEEKLY":this.next_week();break;case"MONTHLY":if(s=this.next_month(),s)i=0;else if(++i==336)return this.completed=!0,null;break;case"YEARLY":if(s=this.next_year(),s)i=0;else if(++i==28)return this.completed=!0,null;break;default:return null}while(!this.check_contracting_rules()||this.last.compare(this.dtstart)<0||!s);if(this.last.compare(t)==0){if(e)throw new Error("Same occurrence found twice, protecting you from death by recursion");this.next(!0)}return this.rule.until&&this.last.compare(this.rule.until)>0?(this.completed=!0,null):(this.occurrence_number++,this.last)}next_second(){return this.next_generic("BYSECOND","SECONDLY","second","minute")}increment_second(e){return this.increment_generic(e,"second",60,"minute")}next_minute(){return this.next_generic("BYMINUTE","MINUTELY","minute","hour","next_second")}increment_minute(e){return this.increment_generic(e,"minute",60,"hour")}next_hour(){return this.next_generic("BYHOUR","HOURLY","hour","monthday","next_minute")}increment_hour(e){this.increment_generic(e,"hour",24,"monthday")}next_day(){let e=this.rule.freq=="DAILY";return this.next_hour()==0||(e?this.increment_monthday(this.rule.interval):this.increment_monthday(1)),0}next_week(){let e=0;if(this.next_weekday_by_week()==0)return e;if(this.has_by_data("BYWEEKNO")){this.by_indices.BYWEEKNO++,this.by_indices.BYWEEKNO==this.by_data.BYWEEKNO.length&&(this.by_indices.BYWEEKNO=0,e=1),this.last.month=1,this.last.day=1;let t=this.by_data.BYWEEKNO[this.by_indices.BYWEEKNO];this.last.day+=7*t,e&&this.increment_year(1)}else this.increment_monthday(7*this.rule.interval);return e}normalizeByMonthDayRules(e,t,s){let i=h.daysInMonth(t,e),r=[],o=0,n=s.length,l;for(;o<n;o++){if(l=parseInt(s[o],10),isNaN(l))throw new Error("Invalid BYMONTHDAY value");if(!(Math.abs(l)>i)){if(l<0)l=i+(l+1);else if(l===0)continue;r.indexOf(l)===-1&&r.push(l)}}return r.sort(function(u,c){return u-c})}_byDayAndMonthDay(e){let t,s=this.by_data.BYDAY,i,r=0,o,n=s.length,l=0,u,c=this,d=this.last.day;function m(){for(u=h.daysInMonth(c.last.month,c.last.year),t=c.normalizeByMonthDayRules(c.last.year,c.last.month,c.by_data.BYMONTHDAY),o=t.length;t[r]<=d&&!(e&&t[r]==d)&&r<o-1;)r++}function p(){d=0,c.increment_month(),r=0,m()}m(),e&&(d-=1);let y=48;for(;!l&&y;){if(y--,i=d+1,i>u){p();continue}let f=t[r++];if(f>=i)d=f;else{p();continue}for(let g=0;g<n;g++){let C=this.ruleDayOfWeek(s[g]),fe=C[0],re=C[1];if(this.last.day=d,this.last.isNthWeekDay(re,fe)){l=1;break}}if(!l&&r===o){p();continue}}if(y<=0)throw new Error("Malformed values in BYDAY combined with BYMONTHDAY parts");return l}next_month(){let e=1;if(this.next_hour()==0)return e;if(this.has_by_data("BYDAY")&&this.has_by_data("BYMONTHDAY"))e=this._byDayAndMonthDay();else if(this.has_by_data("BYDAY")){let t=h.daysInMonth(this.last.month,this.last.year),s=0,i=0;if(this.has_by_data("BYSETPOS")){let o=this.last.day;for(let n=1;n<=t;n++)this.last.day=n,this.is_day_in_byday(this.last)&&(i++,n<=o&&s++);this.last.day=o}e=0;let r;for(r=this.last.day+1;r<=t;r++)if(this.last.day=r,this.is_day_in_byday(this.last)&&(!this.has_by_data("BYSETPOS")||this.check_set_position(++s)||this.check_set_position(s-i-1))){e=1;break}r>t&&(this.last.day=1,this.increment_month(),this.is_day_in_byday(this.last)?(!this.has_by_data("BYSETPOS")||this.check_set_position(1))&&(e=1):e=0)}else if(this.has_by_data("BYMONTHDAY")){if(this.by_indices.BYMONTHDAY++,this.by_indices.BYMONTHDAY>=this.by_data.BYMONTHDAY.length&&(this.by_indices.BYMONTHDAY=0,this.increment_month(),this.by_indices.BYMONTHDAY>=this.by_data.BYMONTHDAY.length))return 0;let t=h.daysInMonth(this.last.month,this.last.year),s=this.by_data.BYMONTHDAY[this.by_indices.BYMONTHDAY];s<0&&(s=t+s+1),s>t?(this.last.day=1,e=this.is_day_in_byday(this.last)):this.last.day=s}else{this.increment_month();let t=h.daysInMonth(this.last.month,this.last.year);this.by_data.BYMONTHDAY[0]>t?e=0:this.last.day=this.by_data.BYMONTHDAY[0]}return e}next_weekday_by_week(){let e=0;if(this.next_hour()==0)return e;if(!this.has_by_data("BYDAY"))return 1;for(;;){let t=new h;this.by_indices.BYDAY++,this.by_indices.BYDAY==Object.keys(this.by_data.BYDAY).length&&(this.by_indices.BYDAY=0,e=1);let s=this.by_data.BYDAY[this.by_indices.BYDAY],i=this.ruleDayOfWeek(s)[1];i-=this.rule.wkst,i<0&&(i+=7),t.year=this.last.year,t.month=this.last.month,t.day=this.last.day;let r=t.startDoyWeek(this.rule.wkst);if(i+r<1&&!e)continue;let o=h.fromDayOfYear(r+i,this.last.year);return this.last.year=o.year,this.last.month=o.month,this.last.day=o.day,e}}next_year(){return this.next_hour()==0||(this.days.length==0||++this.days_index==this.days.length)&&(this.days_index=0,this.increment_year(this.rule.interval),this.has_by_data("BYMONTHDAY")&&(this.by_data.BYMONTHDAY=this.normalizeByMonthDayRules(this.last.year,this.last.month,this.rule.parts.BYMONTHDAY)),this.expand_year_days(this.last.year),this.days.length==0)?0:this._nextByYearDay()}_nextByYearDay(){let e=this.days[this.days_index],t=this.last.year;if(Math.abs(e)==366&&!h.isLeapYear(this.last.year))return 0;e<1&&(e+=1,t+=1);let s=h.fromDayOfYear(e,t);return this.last.day=s.day,this.last.month=s.month,1}ruleDayOfWeek(e,t){let s=e.match(/([+-]?[0-9])?(MO|TU|WE|TH|FR|SA|SU)/);if(s){let i=parseInt(s[1]||0,10);return e=M.icalDayToNumericDay(s[2],t),[i,e]}else return[0,0]}next_generic(e,t,s,i,r){let o=e in this.by_data,n=this.rule.freq==t,l=0;if(r&&this[r]()==0)return l;if(o){this.by_indices[e]++;let u=this.by_data[e];this.by_indices[e]==u.length&&(this.by_indices[e]=0,l=1),this.last[s]=u[this.by_indices[e]]}else n&&this["increment_"+s](this.rule.interval);return o&&l&&n&&this["increment_"+i](1),l}increment_monthday(e){for(let t=0;t<e;t++){let s=h.daysInMonth(this.last.month,this.last.year);this.last.day++,this.last.day>s&&(this.last.day-=s,this.increment_month())}}increment_month(){if(this.last.day=1,this.has_by_data("BYMONTH"))this.by_indices.BYMONTH++,this.by_indices.BYMONTH==this.by_data.BYMONTH.length&&(this.by_indices.BYMONTH=0,this.increment_year(1)),this.last.month=this.by_data.BYMONTH[this.by_indices.BYMONTH];else{this.rule.freq=="MONTHLY"?this.last.month+=this.rule.interval:this.last.month++,this.last.month--;let e=O(this.last.month/12);this.last.month%=12,this.last.month++,e!=0&&this.increment_year(e)}this.has_by_data("BYMONTHDAY")&&(this.by_data.BYMONTHDAY=this.normalizeByMonthDayRules(this.last.year,this.last.month,this.rule.parts.BYMONTHDAY))}increment_year(e){this.last.day=1,this.last.year+=e}increment_generic(e,t,s,i){this.last[t]+=e;let r=O(this.last[t]/s);this.last[t]%=s,r!=0&&this["increment_"+i](r)}has_by_data(e){return e in this.rule.parts}expand_year_days(e){let t=new h;this.days=[];let s={},i=["BYDAY","BYWEEKNO","BYMONTHDAY","BYMONTH","BYYEARDAY"];for(let n of i)n in this.rule.parts&&(s[n]=this.rule.parts[n]);if("BYMONTH"in s&&"BYWEEKNO"in s){let n=1,l={};t.year=e,t.isDate=!0;for(let u=0;u<this.by_data.BYMONTH.length;u++){let c=this.by_data.BYMONTH[u];t.month=c,t.day=1;let d=t.weekNumber(this.rule.wkst);t.day=h.daysInMonth(c,e);let m=t.weekNumber(this.rule.wkst);for(u=d;u<m;u++)l[u]=1}for(let u=0;u<this.by_data.BYWEEKNO.length&&n;u++)this.by_data.BYWEEKNO[u]<52?n&=l[u]:n=0;n?delete s.BYMONTH:delete s.BYWEEKNO}let r=Object.keys(s).length;if(r==0){let n=this.dtstart.clone();n.year=this.last.year,this.days.push(n.dayOfYear())}else if(r==1&&"BYMONTH"in s)for(let n of this.by_data.BYMONTH){let l=this.dtstart.clone();l.year=e,l.month=n,l.isDate=!0,this.days.push(l.dayOfYear())}else if(r==1&&"BYMONTHDAY"in s)for(let n of this.by_data.BYMONTHDAY){let l=this.dtstart.clone();if(n<0){let u=h.daysInMonth(l.month,e);n=n+u+1}l.day=n,l.year=e,l.isDate=!0,this.days.push(l.dayOfYear())}else if(r==2&&"BYMONTHDAY"in s&&"BYMONTH"in s)for(let n of this.by_data.BYMONTH){let l=h.daysInMonth(n,e);for(let u of this.by_data.BYMONTHDAY)u<0&&(u=u+l+1),t.day=u,t.month=n,t.year=e,t.isDate=!0,this.days.push(t.dayOfYear())}else if(!(r==1&&"BYWEEKNO"in s)&&!(r==2&&"BYWEEKNO"in s&&"BYMONTHDAY"in s)){if(r==1&&"BYDAY"in s)this.days=this.days.concat(this.expand_by_day(e));else if(r==2&&"BYDAY"in s&&"BYMONTH"in s){for(let n of this.by_data.BYMONTH){let l=h.daysInMonth(n,e);t.year=e,t.month=n,t.day=1,t.isDate=!0;let u=t.dayOfWeek(),c=t.dayOfYear()-1;t.day=l;let d=t.dayOfWeek();if(this.has_by_data("BYSETPOS")){let m=[];for(let p=1;p<=l;p++)t.day=p,this.is_day_in_byday(t)&&m.push(p);for(let p=0;p<m.length;p++)(this.check_set_position(p+1)||this.check_set_position(p-m.length))&&this.days.push(c+m[p])}else for(let m of this.by_data.BYDAY){let p=this.ruleDayOfWeek(m),y=p[0],f=p[1],g,C=(f+7-u)%7+1,fe=l-(d+7-f)%7;if(y==0)for(let re=C;re<=l;re+=7)this.days.push(c+re);else y>0?(g=C+(y-1)*7,g<=l&&this.days.push(c+g)):(g=fe+(y+1)*7,g>0&&this.days.push(c+g))}}this.days.sort(function(n,l){return n-l})}else if(r==2&&"BYDAY"in s&&"BYMONTHDAY"in s){let n=this.expand_by_day(e);for(let l of n){let u=h.fromDayOfYear(l,e);this.by_data.BYMONTHDAY.indexOf(u.day)>=0&&this.days.push(l)}}else if(r==3&&"BYDAY"in s&&"BYMONTHDAY"in s&&"BYMONTH"in s){let n=this.expand_by_day(e);for(let l of n){let u=h.fromDayOfYear(l,e);this.by_data.BYMONTH.indexOf(u.month)>=0&&this.by_data.BYMONTHDAY.indexOf(u.day)>=0&&this.days.push(l)}}else if(r==2&&"BYDAY"in s&&"BYWEEKNO"in s){let n=this.expand_by_day(e);for(let l of n){let u=h.fromDayOfYear(l,e).weekNumber(this.rule.wkst);this.by_data.BYWEEKNO.indexOf(u)&&this.days.push(l)}}else if(!(r==3&&"BYDAY"in s&&"BYWEEKNO"in s&&"BYMONTHDAY"in s))if(r==1&&"BYYEARDAY"in s)this.days=this.days.concat(this.by_data.BYYEARDAY);else if(r==2&&"BYYEARDAY"in s&&"BYDAY"in s){let n=h.isLeapYear(e)?366:365,l=new Set(this.expand_by_day(e));for(let u of this.by_data.BYYEARDAY)u<0&&(u+=n+1),l.has(u)&&this.days.push(u)}else this.days=[]}let o=h.isLeapYear(e)?366:365;return this.days.sort((n,l)=>(n<0&&(n+=o+1),l<0&&(l+=o+1),n-l)),0}expand_by_day(e){let t=[],s=this.last.clone();s.year=e,s.month=1,s.day=1,s.isDate=!0;let i=s.dayOfWeek();s.month=12,s.day=31,s.isDate=!0;let r=s.dayOfWeek(),o=s.dayOfYear();for(let n of this.by_data.BYDAY){let l=this.ruleDayOfWeek(n),u=l[0],c=l[1];if(u==0){let d=(c+7-i)%7+1;for(let m=d;m<=o;m+=7)t.push(m)}else if(u>0){let d;c>=i?d=c-i+1:d=c-i+8,t.push(d+(u-1)*7)}else{let d;u=-u,c<=r?d=o-r+c:d=o-r+c-7,t.push(d-(u-1)*7)}}return t}is_day_in_byday(e){if(this.by_data.BYDAY)for(let t of this.by_data.BYDAY){let s=this.ruleDayOfWeek(t),i=s[0],r=s[1],o=e.dayOfWeek();if(i==0&&r==o||e.nthWeekDay(r,i)==e.day)return 1}return 0}check_set_position(e){return this.has_by_data("BYSETPOS")?this.by_data.BYSETPOS.indexOf(e)!==-1:!1}sort_byday_rules(e){for(let t=0;t<e.length;t++)for(let s=0;s<t;s++){let i=this.ruleDayOfWeek(e[s],this.rule.wkst)[1],r=this.ruleDayOfWeek(e[t],this.rule.wkst)[1];if(i>r){let o=e[t];e[t]=e[s],e[s]=o}}}check_contract_restriction(e,t){let s=G._indexMap[e],i=G._expandMap[this.rule.freq][s],r=!1;if(e in this.by_data&&i==G.CONTRACT){let o=this.by_data[e];for(let n of o)if(n==t){r=!0;break}}else r=!0;return r}check_contracting_rules(){let e=this.last.dayOfWeek(),t=this.last.weekNumber(this.rule.wkst),s=this.last.dayOfYear();return this.check_contract_restriction("BYSECOND",this.last.second)&&this.check_contract_restriction("BYMINUTE",this.last.minute)&&this.check_contract_restriction("BYHOUR",this.last.hour)&&this.check_contract_restriction("BYDAY",M.numericDayToIcalDay(e))&&this.check_contract_restriction("BYWEEKNO",t)&&this.check_contract_restriction("BYMONTHDAY",this.last.day)&&this.check_contract_restriction("BYMONTH",this.last.month)&&this.check_contract_restriction("BYYEARDAY",s)}setup_defaults(e,t,s){let i=G._indexMap[e];return G._expandMap[this.rule.freq][i]!=G.CONTRACT&&(e in this.by_data||(this.by_data[e]=[s]),this.rule.freq!=t)?this.by_data[e][0]:s}toJSON(){let e=Object.create(null);return e.initialized=this.initialized,e.rule=this.rule.toJSON(),e.dtstart=this.dtstart.toJSON(),e.by_data=this.by_data,e.days=this.days,e.last=this.last.toJSON(),e.by_indices=this.by_indices,e.occurrence_number=this.occurrence_number,e}}class Ee extends Error{constructor(){super("Recurrence rule has no valid occurrences")}}const W0=/^(SU|MO|TU|WE|TH|FR|SA)$/,F0=/^([+-])?(5[0-3]|[1-4][0-9]|[1-9])?(SU|MO|TU|WE|TH|FR|SA)$/,Ct={SU:h.SUNDAY,MO:h.MONDAY,TU:h.TUESDAY,WE:h.WEDNESDAY,TH:h.THURSDAY,FR:h.FRIDAY,SA:h.SATURDAY},G0=Object.fromEntries(Object.entries(Ct).map(a=>a.reverse())),ut=["SECONDLY","MINUTELY","HOURLY","DAILY","WEEKLY","MONTHLY","YEARLY"];class M{static fromString(e){let t=this._stringToData(e,!1);return new M(t)}static fromData(e){return new M(e)}static _stringToData(e,t){let s=Object.create(null),i=e.split(";"),r=i.length;for(let o=0;o<r;o++){let n=i[o].split("="),l=n[0].toUpperCase(),u=n[0].toLowerCase(),c=t?u:l,d=n[1];if(l in Ve){let m=d.split(","),p=new Set;for(let y of m)p.add(Ve[l](y));m=[...p],s[c]=m.length==1?m[0]:m}else l in ze?ze[l](d,s,t):s[u]=d}return s}static icalDayToNumericDay(e,t){let s=t||h.SUNDAY;return(Ct[e]-s+7)%7+1}static numericDayToIcalDay(e,t){let s=t||h.SUNDAY,i=e+s-h.SUNDAY;return i>7&&(i-=7),G0[i]}constructor(e){this.wrappedJSObject=this,this.parts={},e&&typeof e=="object"&&this.fromData(e)}parts=null;interval=1;wkst=h.MONDAY;until=null;count=null;freq=null;icalclass="icalrecur";icaltype="recur";iterator(e){return new G({rule:this,dtstart:e})}clone(){return new M(this.toJSON())}isFinite(){return!!(this.count||this.until)}isByCount(){return!!(this.count&&!this.until)}addComponent(e,t){let s=e.toUpperCase();s in this.parts?this.parts[s].push(t):this.parts[s]=[t]}setComponent(e,t){this.parts[e.toUpperCase()]=t.slice()}getComponent(e){let t=e.toUpperCase();return t in this.parts?this.parts[t].slice():[]}getNextOccurrence(e,t){let s=this.iterator(e),i;do i=s.next();while(i&&i.compare(t)<=0);return i&&t.zone&&(i.zone=t.zone),i}fromData(e){for(let t in e){let s=t.toUpperCase();s in Ve?Array.isArray(e[t])?this.parts[s]=e[t]:this.parts[s]=[e[t]]:this[t]=e[t]}this.interval&&typeof this.interval!="number"&&ze.INTERVAL(this.interval,this),this.wkst&&typeof this.wkst!="number"&&(this.wkst=M.icalDayToNumericDay(this.wkst)),this.until&&!(this.until instanceof h)&&(this.until=h.fromString(this.until))}toJSON(){let e=Object.create(null);e.freq=this.freq,this.count&&(e.count=this.count),this.interval>1&&(e.interval=this.interval);for(let[t,s]of Object.entries(this.parts))Array.isArray(s)&&s.length==1?e[t.toLowerCase()]=s[0]:e[t.toLowerCase()]=de(s);return this.until&&(e.until=this.until.toString()),"wkst"in this&&this.wkst!==h.DEFAULT_WEEK_START&&(e.wkst=M.numericDayToIcalDay(this.wkst)),e}toString(){let e="FREQ="+this.freq;this.count&&(e+=";COUNT="+this.count),this.interval>1&&(e+=";INTERVAL="+this.interval);for(let[t,s]of Object.entries(this.parts))e+=";"+t+"="+s;return this.until&&(e+=";UNTIL="+this.until.toICALString()),"wkst"in this&&this.wkst!==h.DEFAULT_WEEK_START&&(e+=";WKST="+M.numericDayToIcalDay(this.wkst)),e}}function X(a,e,t,s){let i=s;if(s[0]==="+"&&(i=s.slice(1)),i=N(i),e!==void 0&&s<e)throw new Error(a+': invalid value "'+s+'" must be > '+e);if(t!==void 0&&s>t)throw new Error(a+': invalid value "'+s+'" must be < '+e);return i}const ze={FREQ:function(a,e,t){if(ut.indexOf(a)!==-1)e.freq=a;else throw new Error('invalid frequency "'+a+'" expected: "'+ut.join(", ")+'"')},COUNT:function(a,e,t){e.count=N(a)},INTERVAL:function(a,e,t){e.interval=N(a),e.interval<1&&(e.interval=1)},UNTIL:function(a,e,t){a.length>10?e.until=U.icalendar.value["date-time"].fromICAL(a):e.until=U.icalendar.value.date.fromICAL(a),t||(e.until=h.fromString(e.until))},WKST:function(a,e,t){if(W0.test(a))e.wkst=M.icalDayToNumericDay(a);else throw new Error('invalid WKST value "'+a+'"')}},Ve={BYSECOND:X.bind(void 0,"BYSECOND",0,60),BYMINUTE:X.bind(void 0,"BYMINUTE",0,59),BYHOUR:X.bind(void 0,"BYHOUR",0,23),BYDAY:function(a){if(F0.test(a))return a;throw new Error('invalid BYDAY value "'+a+'"')},BYMONTHDAY:X.bind(void 0,"BYMONTHDAY",-31,31),BYYEARDAY:X.bind(void 0,"BYYEARDAY",-366,366),BYWEEKNO:X.bind(void 0,"BYWEEKNO",-53,53),BYMONTH:X.bind(void 0,"BYMONTH",1,12),BYSETPOS:X.bind(void 0,"BYSETPOS",-366,366)},K0=/\\\\|\\;|\\,|\\[Nn]/g,q0=/\\|;|,|\n/g,dt=/\\\\|\\,|\\[Nn]/g,ct=/\\|,|\n/g;function Ke(a,e){return{matches:/.*/,fromICAL:function(t,s){return J0(t,a,s)},toICAL:function(t,s){let i=e;return s&&(i=new RegExp(i.source+"|"+s,i.flags)),t.replace(i,function(r){switch(r){case"\\":return"\\\\";case";":return"\\;";case",":return"\\,";case`
`:return"\\n";default:return r}})}}}const A={defaultType:"text"},ge={defaultType:"text",multiValue:","},Ie={defaultType:"text",structuredValue:";"},be={defaultType:"integer"},Ue={defaultType:"date-time",allowedTypes:["date-time","date"]},Ce={defaultType:"date-time"},B={defaultType:"uri"},ht={defaultType:"utc-offset"},mt={defaultType:"recur"},ft={defaultType:"date-and-or-time",allowedTypes:["date-time","date","text"]};function Z0(a){switch(a){case"\\\\":return"\\";case"\\;":return";";case"\\,":return",";case"\\n":case"\\N":return`
`;default:return a}}function J0(a,e,t){return a.indexOf("\\")===-1?a:(t&&(e=new RegExp(e.source+"|\\\\"+t,e.flags)),a.replace(e,Z0))}let Xe={categories:ge,url:B,version:A,uid:A},Qe={boolean:{values:["TRUE","FALSE"],fromICAL:function(a){switch(a){case"TRUE":return!0;case"FALSE":return!1;default:return!1}},toICAL:function(a){return a?"TRUE":"FALSE"}},float:{matches:/^[+-]?\d+\.\d+$/,fromICAL:function(a){let e=parseFloat(a);return Ae(e)?0:e},toICAL:function(a){return String(a)}},integer:{fromICAL:function(a){let e=parseInt(a);return Ae(e)?0:e},toICAL:function(a){return String(a)}},"utc-offset":{toICAL:function(a){return a.length<7?a.slice(0,3)+a.slice(4,6):a.slice(0,3)+a.slice(4,6)+a.slice(7,9)},fromICAL:function(a){return a.length<6?a.slice(0,3)+":"+a.slice(3,5):a.slice(0,3)+":"+a.slice(3,5)+":"+a.slice(5,7)},decorate:function(a){return W.fromString(a)},undecorate:function(a){return a.toString()}}},$0={cutype:{values:["INDIVIDUAL","GROUP","RESOURCE","ROOM","UNKNOWN"],allowXName:!0,allowIanaToken:!0},"delegated-from":{valueType:"cal-address",multiValue:",",multiValueSeparateDQuote:!0},"delegated-to":{valueType:"cal-address",multiValue:",",multiValueSeparateDQuote:!0},encoding:{values:["8BIT","BASE64"]},fbtype:{values:["FREE","BUSY","BUSY-UNAVAILABLE","BUSY-TENTATIVE"],allowXName:!0,allowIanaToken:!0},member:{valueType:"cal-address",multiValue:",",multiValueSeparateDQuote:!0},partstat:{values:["NEEDS-ACTION","ACCEPTED","DECLINED","TENTATIVE","DELEGATED","COMPLETED","IN-PROCESS"],allowXName:!0,allowIanaToken:!0},range:{values:["THISANDFUTURE"]},related:{values:["START","END"]},reltype:{values:["PARENT","CHILD","SIBLING"],allowXName:!0,allowIanaToken:!0},role:{values:["REQ-PARTICIPANT","CHAIR","OPT-PARTICIPANT","NON-PARTICIPANT"],allowXName:!0,allowIanaToken:!0},rsvp:{values:["TRUE","FALSE"]},"sent-by":{valueType:"cal-address"},tzid:{matches:/^\//},value:{values:["binary","boolean","cal-address","date","date-time","duration","float","integer","period","recur","text","time","uri","utc-offset"],allowXName:!0,allowIanaToken:!0}};const k=ce(Qe,{text:Ke(K0,q0),uri:{},binary:{decorate:function(a){return Be.fromString(a)},undecorate:function(a){return a.toString()}},"cal-address":{},date:{decorate:function(a,e){return h.fromDateString(a,e)},undecorate:function(a){return a.toString()},fromICAL:function(a){return a.slice(0,4)+"-"+a.slice(4,6)+"-"+a.slice(6,8)},toICAL:function(a){let e=a.length;return e==10?a.slice(0,4)+a.slice(5,7)+a.slice(8,10):e>=19?k["date-time"].toICAL(a):a}},"date-time":{fromICAL:function(a){{let e=a.slice(0,4)+"-"+a.slice(4,6)+"-"+a.slice(6,8)+"T"+a.slice(9,11)+":"+a.slice(11,13)+":"+a.slice(13,15);return a[15]&&a[15]==="Z"&&(e+="Z"),e}},toICAL:function(a){if(a.length>=19){let e=a.slice(0,4)+a.slice(5,7)+a.slice(8,13)+a.slice(14,16)+a.slice(17,19);return a[19]&&a[19]==="Z"&&(e+="Z"),e}else return a},decorate:function(a,e){return h.fromDateTimeString(a,e)},undecorate:function(a){return a.toString()}},duration:{decorate:function(a){return x.fromString(a)},undecorate:function(a){return a.toString()}},period:{fromICAL:function(a){let e=a.split("/");return e[0]=k["date-time"].fromICAL(e[0]),x.isValueString(e[1])||(e[1]=k["date-time"].fromICAL(e[1])),e},toICAL:function(a){return a=a.slice(),a[0]=k["date-time"].toICAL(a[0]),x.isValueString(a[1])||(a[1]=k["date-time"].toICAL(a[1])),a.join("/")},decorate:function(a,e){return J.fromJSON(a,e,!1)},undecorate:function(a){return a.toJSON()}},recur:{fromICAL:function(a){return M._stringToData(a,!0)},toICAL:function(a){let e="";for(let[t,s]of Object.entries(a))t=="until"?s.length>10?s=k["date-time"].toICAL(s):s=k.date.toICAL(s):t=="wkst"?typeof s=="number"&&(s=M.numericDayToIcalDay(s)):Array.isArray(s)&&(s=s.join(",")),e+=t.toUpperCase()+"="+s+";";return e.slice(0,Math.max(0,e.length-1))},decorate:function(a){return M.fromData(a)},undecorate:function(a){return a.toJSON()}},time:{fromICAL:function(a){if(a.length<6)return a;let e=a.slice(0,2)+":"+a.slice(2,4)+":"+a.slice(4,6);return a[6]==="Z"&&(e+="Z"),e},toICAL:function(a){if(a.length<8)return a;let e=a.slice(0,2)+a.slice(3,5)+a.slice(6,8);return a[8]==="Z"&&(e+="Z"),e}}});let X0=ce(Xe,{action:A,attach:{defaultType:"uri"},attendee:{defaultType:"cal-address"},calscale:A,class:A,comment:A,completed:Ce,contact:A,created:Ce,description:A,dtend:Ue,dtstamp:Ce,dtstart:Ue,due:Ue,duration:{defaultType:"duration"},exdate:{defaultType:"date-time",allowedTypes:["date-time","date"],multiValue:","},exrule:mt,freebusy:{defaultType:"period",multiValue:","},geo:{defaultType:"float",structuredValue:";"},"last-modified":Ce,location:A,method:A,organizer:{defaultType:"cal-address"},"percent-complete":be,priority:be,prodid:A,"related-to":A,repeat:be,rdate:{defaultType:"date-time",allowedTypes:["date-time","date","period"],multiValue:",",detectType:function(a){return a.indexOf("/")!==-1?"period":a.indexOf("T")===-1?"date":"date-time"}},"recurrence-id":Ue,resources:ge,"request-status":Ie,rrule:mt,sequence:be,status:A,summary:A,transp:A,trigger:{defaultType:"duration",allowedTypes:["duration","date-time"]},tzoffsetfrom:ht,tzoffsetto:ht,tzurl:B,tzid:A,tzname:A});const L=ce(Qe,{text:Ke(dt,ct),uri:Ke(dt,ct),date:{decorate:function(a){return se.fromDateAndOrTimeString(a,"date")},undecorate:function(a){return a.toString()},fromICAL:function(a){return a.length==8?k.date.fromICAL(a):a[0]=="-"&&a.length==6?a.slice(0,4)+"-"+a.slice(4):a},toICAL:function(a){return a.length==10?k.date.toICAL(a):a[0]=="-"&&a.length==7?a.slice(0,4)+a.slice(5):a}},time:{decorate:function(a){return se.fromDateAndOrTimeString("T"+a,"time")},undecorate:function(a){return a.toString()},fromICAL:function(a){let e=L.time._splitZone(a,!0),t=e[0],s=e[1];return s.length==6?s=s.slice(0,2)+":"+s.slice(2,4)+":"+s.slice(4,6):s.length==4&&s[0]!="-"?s=s.slice(0,2)+":"+s.slice(2,4):s.length==5&&(s=s.slice(0,3)+":"+s.slice(3,5)),t.length==5&&(t[0]=="-"||t[0]=="+")&&(t=t.slice(0,3)+":"+t.slice(3)),s+t},toICAL:function(a){let e=L.time._splitZone(a),t=e[0],s=e[1];return s.length==8?s=s.slice(0,2)+s.slice(3,5)+s.slice(6,8):s.length==5&&s[0]!="-"?s=s.slice(0,2)+s.slice(3,5):s.length==6&&(s=s.slice(0,3)+s.slice(4,6)),t.length==6&&(t[0]=="-"||t[0]=="+")&&(t=t.slice(0,3)+t.slice(4)),s+t},_splitZone:function(a,e){let t=a.length-1,s=a.length-(e?5:6),i=a[s],r,o;return a[t]=="Z"?(r=a[t],o=a.slice(0,Math.max(0,t))):a.length>6&&(i=="-"||i=="+")?(r=a.slice(s),o=a.slice(0,Math.max(0,s))):(r="",o=a),[r,o]}},"date-time":{decorate:function(a){return se.fromDateAndOrTimeString(a,"date-time")},undecorate:function(a){return a.toString()},fromICAL:function(a){return L["date-and-or-time"].fromICAL(a)},toICAL:function(a){return L["date-and-or-time"].toICAL(a)}},"date-and-or-time":{decorate:function(a){return se.fromDateAndOrTimeString(a,"date-and-or-time")},undecorate:function(a){return a.toString()},fromICAL:function(a){let e=a.split("T");return(e[0]?L.date.fromICAL(e[0]):"")+(e[1]?"T"+L.time.fromICAL(e[1]):"")},toICAL:function(a){let e=a.split("T");return L.date.toICAL(e[0])+(e[1]?"T"+L.time.toICAL(e[1]):"")}},timestamp:k["date-time"],"language-tag":{matches:/^[a-zA-Z0-9-]+$/},"phone-number":{fromICAL:function(a){return Array.from(a).filter(function(e){return e==="\\"?void 0:e}).join("")},toICAL:function(a){return Array.from(a).map(function(e){return e===","||e===";"?"\\"+e:e}).join("")}}});let Q0={type:{valueType:"text",multiValue:","},value:{values:["text","uri","date","time","date-time","date-and-or-time","timestamp","boolean","integer","float","utc-offset","language-tag"],allowXName:!0,allowIanaToken:!0}},es=ce(Xe,{adr:{defaultType:"text",structuredValue:";",multiValue:","},anniversary:ft,bday:ft,caladruri:B,caluri:B,clientpidmap:Ie,email:A,fburl:B,fn:A,gender:Ie,geo:B,impp:B,key:B,kind:A,lang:{defaultType:"language-tag"},logo:B,member:B,n:{defaultType:"text",structuredValue:";",multiValue:","},nickname:ge,note:A,org:{defaultType:"text",structuredValue:";"},photo:B,related:B,rev:{defaultType:"timestamp"},role:A,sound:B,source:B,tel:{defaultType:"uri",allowedTypes:["uri","text"]},title:A,tz:{defaultType:"text",allowedTypes:["text","utc-offset","uri"]},xml:A}),ts=ce(Qe,{binary:k.binary,date:L.date,"date-time":L["date-time"],"phone-number":L["phone-number"],uri:k.uri,text:L.text,time:k.time,vcard:k.text,"utc-offset":{toICAL:function(a){return a.slice(0,7)},fromICAL:function(a){return a.slice(0,7)},decorate:function(a){return W.fromString(a)},undecorate:function(a){return a.toString()}}}),ss={type:{valueType:"text",multiValue:","},value:{values:["text","uri","date","date-time","phone-number","time","boolean","integer","float","utc-offset","vcard","binary"],allowXName:!0,allowIanaToken:!0}},as=ce(Xe,{fn:A,n:{defaultType:"text",structuredValue:";",multiValue:","},nickname:ge,photo:{defaultType:"binary",allowedTypes:["binary","uri"]},bday:{defaultType:"date-time",allowedTypes:["date-time","date"],detectType:function(a){return a.indexOf("T")===-1?"date":"date-time"}},adr:{defaultType:"text",structuredValue:";",multiValue:","},label:A,tel:{defaultType:"phone-number"},email:A,mailer:A,tz:{defaultType:"utc-offset",allowedTypes:["utc-offset","text"]},geo:{defaultType:"float",structuredValue:";"},title:A,role:A,logo:{defaultType:"binary",allowedTypes:["binary","uri"]},agent:{defaultType:"vcard",allowedTypes:["vcard","text","uri"]},org:Ie,note:ge,prodid:A,rev:{defaultType:"date-time",allowedTypes:["date-time","date"],detectType:function(a){return a.indexOf("T")===-1?"date":"date-time"}},"sort-string":A,sound:{defaultType:"binary",allowedTypes:["binary","uri"]},class:A,key:{defaultType:"binary",allowedTypes:["binary","text"]}}),Z={name:"ical",value:k,param:$0,property:X0,propertyGroups:!1},pt={name:"vcard4",value:L,param:Q0,property:es,propertyGroups:!0},Tt={name:"vcard3",value:ts,param:ss,property:as,propertyGroups:!0};const U={strict:!0,defaultSet:Z,defaultType:"unknown",components:{vcard:pt,vcard3:Tt,vevent:Z,vtodo:Z,vjournal:Z,valarm:Z,vtimezone:Z,daylight:Z,standard:Z},icalendar:Z,vcard:pt,vcard3:Tt,getDesignSet:function(a){return a&&a in U.components?U.components[a]:U.defaultSet}},we=`\r
`,yt="unknown",is={'"':"^'","\n":"^n","^":"^^"};function b(a){typeof a[0]=="string"&&(a=[a]);let e=0,t=a.length,s="";for(;e<t;e++)s+=b.component(a[e])+we;return s}b.component=function(a,e){let t=a[0].toUpperCase(),s="BEGIN:"+t+we,i=a[1],r=0,o=i.length,n=a[0];for(n==="vcard"&&a[1].length>0&&!(a[1][0][0]==="version"&&a[1][0][3]==="4.0")&&(n="vcard3"),e=e||U.getDesignSet(n);r<o;r++)s+=b.property(i[r],e)+we;let l=a[2]||[],u=0,c=l.length;for(;u<c;u++)s+=b.component(l[u],e)+we;return s+="END:"+t,s},b.property=function(a,e,t){let s=a[0].toUpperCase(),i=a[0],r=a[1];e||(e=U.defaultSet);let o=r.group,n;e.propertyGroups&&o?n=o.toUpperCase()+"."+s:n=s;for(let[p,y]of Object.entries(r)){if(e.propertyGroups&&p=="group")continue;let f=e.param[p],g=f&&f.multiValue;g&&Array.isArray(y)?(y=y.map(function(C){return C=b._rfc6868Unescape(C),C=b.paramPropertyValue(C,f.multiValueSeparateDQuote),C}),y=b.multiValue(y,g,"unknown",null,e)):(y=b._rfc6868Unescape(y),y=b.paramPropertyValue(y)),n+=";"+p.toUpperCase()+"="+y}if(a.length===3)return n+":";let l=a[2],u,c=!1,d=!1,m=!1;return i in e.property?(u=e.property[i],"multiValue"in u&&(c=u.multiValue),"structuredValue"in u&&Array.isArray(a[3])&&(d=u.structuredValue),"defaultType"in u?l===u.defaultType&&(m=!0):l===yt&&(m=!0)):l===yt&&(m=!0),m||(n+=";VALUE="+l.toUpperCase()),n+=":",c&&d?n+=b.multiValue(a[3],d,l,c,e,d):c?n+=b.multiValue(a.slice(3),c,l,null,e,!1):d?n+=b.multiValue(a[3],d,l,null,e,d):n+=b.value(a[3],l,e,!1),t?n:Ut(n)},b.paramPropertyValue=function(a,e){return!e&&a.indexOf(",")===-1&&a.indexOf(":")===-1&&a.indexOf(";")===-1?a:'"'+a+'"'},b.multiValue=function(a,e,t,s,i,r){let o="",n=a.length,l=0;for(;l<n;l++)s&&Array.isArray(a[l])?o+=b.multiValue(a[l],s,t,null,i,r):o+=b.value(a[l],t,i,r),l!==n-1&&(o+=e);return o},b.value=function(a,e,t,s){return e in t.value&&"toICAL"in t.value[e]?t.value[e].toICAL(a,s):a},b._rfc6868Unescape=function(a){return a.replace(/[\n^"]/g,function(e){return is[e]})};const St=0,ve=1,Ye=2,Q=3;class ue{static fromString(e,t){return new ue(D.property(e,t))}constructor(e,t){this._parent=t||null,typeof e=="string"?(this.jCal=[e,{},U.defaultType],this.jCal[Ye]=this.getDefaultType()):this.jCal=e,this._updateType()}get type(){return this.jCal[Ye]}get name(){return this.jCal[St]}get parent(){return this._parent}set parent(e){let t=!this._parent||e&&e._designSet!=this._parent._designSet;this._parent=e,this.type==U.defaultType&&t&&(this.jCal[Ye]=this.getDefaultType(),this._updateType())}get _designSet(){return this.parent?this.parent._designSet:U.defaultSet}_updateType(){let e=this._designSet;this.type in e.value&&("decorate"in e.value[this.type]?this.isDecorated=!0:this.isDecorated=!1,this.name in e.property&&(this.isMultiValue="multiValue"in e.property[this.name],this.isStructuredValue="structuredValue"in e.property[this.name]))}_hydrateValue(e){return this._values&&this._values[e]?this._values[e]:this.jCal.length<=Q+e?null:this.isDecorated?(this._values||(this._values=[]),this._values[e]=this._decorate(this.jCal[Q+e])):this.jCal[Q+e]}_decorate(e){return this._designSet.value[this.type].decorate(e,this)}_undecorate(e){return this._designSet.value[this.type].undecorate(e,this)}_setDecoratedValue(e,t){this._values||(this._values=[]),typeof e=="object"&&"icaltype"in e?(this.jCal[Q+t]=this._undecorate(e),this._values[t]=e):(this.jCal[Q+t]=e,this._values[t]=this._decorate(e))}getParameter(e){if(e in this.jCal[ve])return this.jCal[ve][e]}getFirstParameter(e){let t=this.getParameter(e);return Array.isArray(t)?t[0]:t}setParameter(e,t){let s=e.toLowerCase();typeof t=="string"&&s in this._designSet.param&&"multiValue"in this._designSet.param[s]&&(t=[t]),this.jCal[ve][e]=t}removeParameter(e){delete this.jCal[ve][e]}getDefaultType(){let e=this.jCal[St],t=this._designSet;if(e in t.property){let s=t.property[e];if("defaultType"in s)return s.defaultType}return U.defaultType}resetType(e){this.removeAllValues(),this.jCal[Ye]=e,this._updateType()}getFirstValue(){return this._hydrateValue(0)}getValues(){let e=this.jCal.length-Q;if(e<1)return[];let t=0,s=[];for(;t<e;t++)s[t]=this._hydrateValue(t);return s}removeAllValues(){this._values&&(this._values.length=0),this.jCal.length=3}setValues(e){if(!this.isMultiValue)throw new Error(this.name+`: does not not support mulitValue.
override isMultiValue`);let t=e.length,s=0;if(this.removeAllValues(),t>0&&typeof e[0]=="object"&&"icaltype"in e[0]&&this.resetType(e[0].icaltype),this.isDecorated)for(;s<t;s++)this._setDecoratedValue(e[s],s);else for(;s<t;s++)this.jCal[Q+s]=e[s]}setValue(e){this.removeAllValues(),typeof e=="object"&&"icaltype"in e&&this.resetType(e.icaltype),this.isDecorated?this._setDecoratedValue(e,0):this.jCal[Q]=e}toJSON(){return this.jCal}toICALString(){return b.property(this.jCal,this._designSet,!0)}}const ee=0,F=1,te=2,rs=0,ns=3;class H{static fromString(e){return new H(D.component(e))}constructor(e,t){typeof e=="string"&&(e=[e,[],[]]),this.jCal=e,this.parent=t||null,!this.parent&&this.name==="vcalendar"&&(this._timezoneCache=new Map)}_hydratedPropertyCount=0;_hydratedComponentCount=0;_timezoneCache=null;_components=null;_properties=null;get name(){return this.jCal[ee]}get _designSet(){let e=this.parent&&this.parent._designSet;if(!e&&this.name=="vcard"){let t=this.jCal[F]?.[0];if(t&&t[rs]=="version"&&t[ns]=="3.0")return U.getDesignSet("vcard3")}return e||U.getDesignSet(this.name)}_hydrateComponent(e){if(this._components||(this._components=[],this._hydratedComponentCount=0),this._components[e])return this._components[e];let t=new H(this.jCal[te][e],this);return this._hydratedComponentCount++,this._components[e]=t}_hydrateProperty(e){if(this._properties||(this._properties=[],this._hydratedPropertyCount=0),this._properties[e])return this._properties[e];let t=new ue(this.jCal[F][e],this);return this._hydratedPropertyCount++,this._properties[e]=t}getFirstSubcomponent(e){if(e){let t=0,s=this.jCal[te],i=s.length;for(;t<i;t++)if(s[t][ee]===e)return this._hydrateComponent(t)}else if(this.jCal[te].length)return this._hydrateComponent(0);return null}getAllSubcomponents(e){let t=this.jCal[te].length,s=0;if(e){let i=this.jCal[te],r=[];for(;s<t;s++)e===i[s][ee]&&r.push(this._hydrateComponent(s));return r}else{if(!this._components||this._hydratedComponentCount!==t)for(;s<t;s++)this._hydrateComponent(s);return this._components||[]}}hasProperty(e){let t=this.jCal[F],s=t.length,i=0;for(;i<s;i++)if(t[i][ee]===e)return!0;return!1}getFirstProperty(e){if(e){let t=0,s=this.jCal[F],i=s.length;for(;t<i;t++)if(s[t][ee]===e)return this._hydrateProperty(t)}else if(this.jCal[F].length)return this._hydrateProperty(0);return null}getFirstPropertyValue(e){let t=this.getFirstProperty(e);return t?t.getFirstValue():null}getAllProperties(e){let t=this.jCal[F].length,s=0;if(e){let i=this.jCal[F],r=[];for(;s<t;s++)e===i[s][ee]&&r.push(this._hydrateProperty(s));return r}else{if(!this._properties||this._hydratedPropertyCount!==t)for(;s<t;s++)this._hydrateProperty(s);return this._properties||[]}}_removeObjectByIndex(e,t,s){if(t=t||[],t[s]){let i=t[s];"parent"in i&&(i.parent=null)}t.splice(s,1),this.jCal[e].splice(s,1)}_removeObject(e,t,s){let i=0,r=this.jCal[e],o=r.length,n=this[t];if(typeof s=="string"){for(;i<o;i++)if(r[i][ee]===s)return this._removeObjectByIndex(e,n,i),!0}else if(n){for(;i<o;i++)if(n[i]&&n[i]===s)return this._removeObjectByIndex(e,n,i),!0}return!1}_removeAllObjects(e,t,s){let i=this[t],r=this.jCal[e],o=r.length-1;for(;o>=0;o--)(!s||r[o][ee]===s)&&this._removeObjectByIndex(e,i,o)}addSubcomponent(e){this._components||(this._components=[],this._hydratedComponentCount=0),e.parent&&e.parent.removeSubcomponent(e);let t=this.jCal[te].push(e.jCal);return this._components[t-1]=e,this._hydratedComponentCount++,e.parent=this,e}removeSubcomponent(e){let t=this._removeObject(te,"_components",e);return t&&this._hydratedComponentCount--,t}removeAllSubcomponents(e){let t=this._removeAllObjects(te,"_components",e);return this._hydratedComponentCount=0,t}addProperty(e){if(!(e instanceof ue))throw new TypeError("must be instance of ICAL.Property");this._properties||(this._properties=[],this._hydratedPropertyCount=0),e.parent&&e.parent.removeProperty(e);let t=this.jCal[F].push(e.jCal);return this._properties[t-1]=e,this._hydratedPropertyCount++,e.parent=this,e}addPropertyWithValue(e,t){let s=new ue(e);return s.setValue(t),this.addProperty(s),s}updatePropertyWithValue(e,t){let s=this.getFirstProperty(e);return s?s.setValue(t):s=this.addPropertyWithValue(e,t),s}removeProperty(e){let t=this._removeObject(F,"_properties",e);return t&&this._hydratedPropertyCount--,t}removeAllProperties(e){let t=this._removeAllObjects(F,"_properties",e);return this._hydratedPropertyCount=0,t}toJSON(){return this.jCal}toString(){return b.component(this.jCal,this._designSet)}getTimeZoneByID(e){if(this.parent)return this.parent.getTimeZoneByID(e);if(!this._timezoneCache)return null;if(this._timezoneCache.has(e))return this._timezoneCache.get(e);const t=this.getAllSubcomponents("vtimezone");for(const s of t)if(s.getFirstProperty("tzid").getFirstValue()===e){const i=new T({component:s,tzid:e});return this._timezoneCache.set(e,i),i}return null}}class vt{constructor(e){this.ruleDates=[],this.exDates=[],this.fromData(e)}complete=!1;ruleIterators=null;ruleDates=null;exDates=null;ruleDateInc=0;exDateInc=0;exDate=null;ruleDate=null;dtstart=null;last=null;fromData(e){let t=$(e.dtstart,h);if(t)this.dtstart=t;else throw new Error(".dtstart (ICAL.Time) must be given");if(e.component)this._init(e.component);else{if(this.last=$(e.last,h)||t.clone(),!e.ruleIterators)throw new Error(".ruleIterators or .component must be given");this.ruleIterators=e.ruleIterators.map(function(s){return $(s,G)}),this.ruleDateInc=e.ruleDateInc,this.exDateInc=e.exDateInc,e.ruleDates&&(this.ruleDates=e.ruleDates.map(s=>$(s,h)),this.ruleDate=this.ruleDates[this.ruleDateInc]),e.exDates&&(this.exDates=e.exDates.map(s=>$(s,h)),this.exDate=this.exDates[this.exDateInc]),typeof e.complete<"u"&&(this.complete=e.complete)}}_compare_special(e,t){return!e.isDate&&t.isDate?new h({year:e.year,month:e.month,day:e.day}).compare(t):e.compare(t)}next(){let e,t,s,i=500,r=0;for(;;){if(r++>i)throw new Error("max tries have occurred, rule may be impossible to fulfill.");if(t=this.ruleDate,e=this._nextRecurrenceIter(this.last),!t&&!e){this.complete=!0;break}if((!t||e&&t.compare(e.last)>0)&&(t=e.last.clone(),e.next()),this.ruleDate===t&&this._nextRuleDay(),this.last=t,this.exDate&&(s=this._compare_special(this.last,this.exDate),s>0&&this._nextExDay(),s===0)){this._nextExDay();continue}return this.last}}toJSON(){function e(s){return s.toJSON()}let t=Object.create(null);return t.ruleIterators=this.ruleIterators.map(e),this.ruleDates&&(t.ruleDates=this.ruleDates.map(e)),this.exDates&&(t.exDates=this.exDates.map(e)),t.ruleDateInc=this.ruleDateInc,t.exDateInc=this.exDateInc,t.last=this.last.toJSON(),t.dtstart=this.dtstart.toJSON(),t.complete=this.complete,t}_extractDates(e,t){let s=[],i=e.getAllProperties(t);for(let r=0,o=i.length;r<o;r++)for(let n of i[r].getValues()){let l=le(s,n,(u,c)=>u.compare(c));s.splice(l,0,n)}return s}_init(e){if(this.ruleIterators=[],this.last=this.dtstart.clone(),!e.hasProperty("rdate")&&!e.hasProperty("rrule")&&!e.hasProperty("recurrence-id")){this.ruleDate=this.last.clone(),this.complete=!0;return}if(e.hasProperty("rdate")&&(this.ruleDates=this._extractDates(e,"rdate"),this.ruleDates[0]&&this.ruleDates[0].compare(this.dtstart)<0?(this.ruleDateInc=0,this.last=this.ruleDates[0].clone()):this.ruleDateInc=le(this.ruleDates,this.last,(t,s)=>t.compare(s)),this.ruleDate=this.ruleDates[this.ruleDateInc]),e.hasProperty("rrule")){let t=e.getAllProperties("rrule"),s=0,i=t.length,r,o;for(;s<i;s++)r=t[s].getFirstValue(),o=r.iterator(this.dtstart),this.ruleIterators.push(o),o.next()}e.hasProperty("exdate")&&(this.exDates=this._extractDates(e,"exdate"),this.exDateInc=le(this.exDates,this.last,this._compare_special),this.exDate=this.exDates[this.exDateInc])}_nextExDay(){this.exDate=this.exDates[++this.exDateInc]}_nextRuleDay(){this.ruleDate=this.ruleDates[++this.ruleDateInc]}_nextRecurrenceIter(){let e=this.ruleIterators;if(e.length===0)return null;let t=e.length,s,i,r=0,o;for(;r<t;r++){if(s=e[r],i=s.last,s.completed){t--,r!==0&&r--,e.splice(r,1);continue}(!o||o.last.compare(i)>0)&&(o=s)}return o}}class De{constructor(e,t){e instanceof H||(t=e,e=null),e?this.component=e:this.component=new H("vevent"),this._rangeExceptionCache=Object.create(null),this.exceptions=Object.create(null),this.rangeExceptions=[],t&&t.strictExceptions&&(this.strictExceptions=t.strictExceptions),t&&t.exceptions?t.exceptions.forEach(this.relateException,this):this.component.parent&&!this.isRecurrenceException()&&this.component.parent.getAllSubcomponents("vevent").forEach(function(s){s.hasProperty("recurrence-id")&&this.relateException(s)},this)}static THISANDFUTURE="THISANDFUTURE";exceptions=null;strictExceptions=!1;relateException(e){if(this.isRecurrenceException())throw new Error("cannot relate exception to exceptions");if(e instanceof H&&(e=new De(e)),this.strictExceptions&&e.uid!==this.uid)throw new Error("attempted to relate unrelated exception");let t=e.recurrenceId.toString();if(this.exceptions[t]=e,e.modifiesFuture()){let s=[e.recurrenceId.toUnixTime(),t],i=le(this.rangeExceptions,s,At);this.rangeExceptions.splice(i,0,s)}}modifiesFuture(){return this.component.hasProperty("recurrence-id")?this.component.getFirstProperty("recurrence-id").getParameter("range")===De.THISANDFUTURE:!1}findRangeException(e){if(!this.rangeExceptions.length)return null;let t=e.toUnixTime(),s=le(this.rangeExceptions,[t],At);if(s-=1,s<0)return null;let i=this.rangeExceptions[s];return t<i[0]?null:i[1]}getOccurrenceDetails(e){let t=e.toString(),s=e.convertToZone(T.utcTimezone).toString(),i,r={recurrenceId:e};if(t in this.exceptions)i=r.item=this.exceptions[t],r.startDate=i.startDate,r.endDate=i.endDate,r.item=i;else if(s in this.exceptions)i=this.exceptions[s],r.startDate=i.startDate,r.endDate=i.endDate,r.item=i;else{let o=this.findRangeException(e),n;if(o){let l=this.exceptions[o];r.item=l;let u=this._rangeExceptionCache[o];if(!u){let d=l.recurrenceId.clone(),m=l.startDate.clone();d.zone=m.zone,u=m.subtractDate(d),this._rangeExceptionCache[o]=u}let c=e.clone();c.zone=l.startDate.zone,c.addDuration(u),n=c.clone(),n.addDuration(l.duration),r.startDate=c,r.endDate=n}else n=e.clone(),n.addDuration(this.duration),r.endDate=n,r.startDate=e,r.item=this}return r}iterator(e){return new vt({component:this.component,dtstart:e||this.startDate})}isRecurring(){let e=this.component;return e.hasProperty("rrule")||e.hasProperty("rdate")}isRecurrenceException(){return this.component.hasProperty("recurrence-id")}getRecurrenceTypes(){let e=this.component.getAllProperties("rrule"),t=0,s=e.length,i=Object.create(null);for(;t<s;t++){let r=e[t].getFirstValue();i[r.freq]=!0}return i}get uid(){return this._firstProp("uid")}set uid(e){this._setProp("uid",e)}get startDate(){return this._firstProp("dtstart")}set startDate(e){this._setTime("dtstart",e)}get endDate(){let e=this._firstProp("dtend");if(!e){let t=this._firstProp("duration");e=this.startDate.clone(),t?e.addDuration(t):e.isDate&&(e.day+=1)}return e}set endDate(e){this.component.hasProperty("duration")&&this.component.removeProperty("duration"),this._setTime("dtend",e)}get duration(){return this._firstProp("duration")||this.endDate.subtractDateTz(this.startDate)}set duration(e){this.component.hasProperty("dtend")&&this.component.removeProperty("dtend"),this._setProp("duration",e)}get location(){return this._firstProp("location")}set location(e){this._setProp("location",e)}get attendees(){return this.component.getAllProperties("attendee")}get summary(){return this._firstProp("summary")}set summary(e){this._setProp("summary",e)}get description(){return this._firstProp("description")}set description(e){this._setProp("description",e)}get color(){return this._firstProp("color")}set color(e){this._setProp("color",e)}get organizer(){return this._firstProp("organizer")}set organizer(e){this._setProp("organizer",e)}get sequence(){return this._firstProp("sequence")}set sequence(e){this._setProp("sequence",e)}get recurrenceId(){return this._firstProp("recurrence-id")}set recurrenceId(e){this._setTime("recurrence-id",e)}_setTime(e,t){let s=this.component.getFirstProperty(e);s||(s=new ue(e),this.component.addProperty(s)),t.zone===T.localTimezone||t.zone===T.utcTimezone?s.removeParameter("tzid"):s.setParameter("tzid",t.zone.tzid),s.setValue(t)}_setProp(e,t){this.component.updatePropertyWithValue(e,t)}_firstProp(e){return this.component.getFirstPropertyValue(e)}toString(){return this.component.toString()}}function At(a,e){return a[0]>e[0]?1:e[0]>a[0]?-1:0}class os{constructor(e){typeof e>"u"&&(e={});for(let[t,s]of Object.entries(e))this[t]=s}parseEvent=!0;parseTimezone=!0;oncomplete=function(){};onerror=function(e){};ontimezone=function(e){};onevent=function(e){};process(e){typeof e=="string"&&(e=D(e)),e instanceof H||(e=new H(e));let t=e.getAllSubcomponents(),s=0,i=t.length,r;for(;s<i;s++)switch(r=t[s],r.name){case"vtimezone":if(this.parseTimezone){let o=r.getFirstPropertyValue("tzid");o&&this.ontimezone(new T({tzid:o,component:r}))}break;case"vevent":this.parseEvent&&this.onevent(new De(r));break;default:continue}this.oncomplete()}}var z={foldLength:75,debug:!1,newLineChar:`\r
`,Binary:Be,Component:H,ComponentParser:os,Duration:x,Event:De,Period:J,Property:ue,Recur:M,RecurExpansion:vt,RecurIterator:G,Time:h,Timezone:T,TimezoneService:xe,UtcOffset:W,VCardTime:se,parse:D,stringify:b,design:U,helpers:R0};const w=[];for(let a=0;a<256;++a)w.push((a+256).toString(16).slice(1));function ls(a,e=0){return(w[a[e+0]]+w[a[e+1]]+w[a[e+2]]+w[a[e+3]]+"-"+w[a[e+4]]+w[a[e+5]]+"-"+w[a[e+6]]+w[a[e+7]]+"-"+w[a[e+8]]+w[a[e+9]]+"-"+w[a[e+10]]+w[a[e+11]]+w[a[e+12]]+w[a[e+13]]+w[a[e+14]]+w[a[e+15]]).toLowerCase()}let He;const us=new Uint8Array(16);function ds(){if(!He){if(typeof crypto>"u"||!crypto.getRandomValues)throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");He=crypto.getRandomValues.bind(crypto)}return He(us)}const cs=typeof crypto<"u"&&crypto.randomUUID&&crypto.randomUUID.bind(crypto),gt={randomUUID:cs};function hs(a,e,t){a=a||{};const s=a.random??a.rng?.()??ds();if(s.length<16)throw new Error("Random bytes length must be >= 16");return s[6]=s[6]&15|64,s[8]=s[8]&63|128,ls(s)}function ms(a,e,t){return gt.randomUUID&&!a?gt.randomUUID():hs(a)}const fs=(a,e)=>{const t=a.__vccOpts||a;for(const[s,i]of e)t[s]=i;return t},ps={name:"CalendarAvailability",components:{NcDateTimePickerNative:Et,NcButton:$e,IconAdd:O0,IconDelete:Qt},props:{slots:{type:Object,required:!0},loading:{type:Boolean,default:!1},l10nTo:{type:String,required:!0},l10nDeleteSlot:{type:String,required:!0},l10nEmptyDay:{type:String,required:!0},l10nAddSlot:{type:String,required:!0},l10nWeekDayListLabel:{type:String,default:"Weekdays"},l10nMonday:{type:String,required:!0},l10nTuesday:{type:String,required:!0},l10nWednesday:{type:String,required:!0},l10nThursday:{type:String,required:!0},l10nFriday:{type:String,required:!0},l10nSaturday:{type:String,required:!0},l10nSunday:{type:String,required:!0},l10nStartPickerLabel:{type:Function,default:a=>`Pick a start time for ${a}`},l10nEndPickerLabel:{type:Function,default:a=>`Pick a end time for ${a}`}},data(){return{internalSlots:this.slotsToInternalData(this.slots)}},watch:{slots(){this.internalSlots=this.slotsToInternalData(this.slots)}},methods:{timeStampSlotsToDateObjectSlots(a){return a.map(e=>({start:new Date(e.start*1e3),end:new Date(e.end*1e3)}))},slotsToInternalData(){const a=[{id:"MO",displayName:this.l10nMonday,slots:this.timeStampSlotsToDateObjectSlots(this.slots.MO)},{id:"TU",displayName:this.l10nTuesday,slots:this.timeStampSlotsToDateObjectSlots(this.slots.TU)},{id:"WE",displayName:this.l10nWednesday,slots:this.timeStampSlotsToDateObjectSlots(this.slots.WE)},{id:"TH",displayName:this.l10nThursday,slots:this.timeStampSlotsToDateObjectSlots(this.slots.TH)},{id:"FR",displayName:this.l10nFriday,slots:this.timeStampSlotsToDateObjectSlots(this.slots.FR)},{id:"SA",displayName:this.l10nSaturday,slots:this.timeStampSlotsToDateObjectSlots(this.slots.SA)}],e={id:"SU",displayName:this.l10nSunday,slots:this.timeStampSlotsToDateObjectSlots(this.slots.SU)};return $t()===1?[...a,e]:[e,...a]},internalDataToSlots(){const a={};return this.internalSlots.forEach(({id:e,slots:t})=>{a[e]=t.map(s=>({start:Math.round(s.start.getTime()/1e3),end:Math.round(s.end.getTime()/1e3)}))}),a},addSlot(a){const e=new Date;e.setHours(9,0,0,0);const t=new Date;t.setHours(17,0,0,0),a.slots.push({start:e,end:t}),this.onChangeSlots()},removeSlot(a,e){a.slots.splice(e,1),this.onChangeSlots()},onChangeSlots(){this.$emit("update:slots",this.internalDataToSlots())}}},Ts=["aria-label"],ys={class:"label-weekday"},Ss=["id"],As={class:"availability-slot-group"},gs={class:"to-text"},Ds={key:0,class:"empty-content"};function _s(a,e,t,s,i,r){const o=R("NcDateTimePickerNative"),n=R("IconDelete"),l=R("NcButton"),u=R("IconAdd");return E(),Y("ul",{class:"week-day-container","aria-label":t.l10nWeekDayListLabel},[(E(!0),Y(tt,null,st(i.internalSlots,c=>(E(),Y("li",{key:`day-label-${c.id}`,class:"day-container"},[V("div",ys,[V("span",{id:c.displayName+"-label"},j(c.displayName),9,Ss)]),(E(),Y("div",{key:`day-slots-${c.id}`,class:"availability-slots"},[V("div",As,[(E(!0),Y(tt,null,st(c.slots,(d,m)=>(E(),Y("div",{key:`slot-${c.id}-${m}`,class:"availability-slot"},[v(o,{id:`start-${c.id}-${m}`,modelValue:d.start,"onUpdate:modelValue":p=>d.start=p,type:"time",label:t.l10nStartPickerLabel?.(c.displayName),"hide-label":!0,class:"start-date",onChange:r.onChangeSlots},null,8,["id","modelValue","onUpdate:modelValue","label","onChange"]),V("span",gs,j(t.l10nTo),1),v(o,{id:`end-${c.id}-${m}`,modelValue:d.end,"onUpdate:modelValue":p=>d.end=p,type:"time",label:t.l10nEndPickerLabel?.(c.displayName),"hide-label":!0,class:"end-date",onChange:r.onChangeSlots},null,8,["id","modelValue","onUpdate:modelValue","label","onChange"]),(E(),ie(l,{key:`slot-${c.id}-${m}-btn`,type:"tertiary",class:"button","aria-label":t.l10nDeleteSlot,title:t.l10nDeleteSlot,onClick:p=>r.removeSlot(c,m)},{icon:q(()=>[v(n,{size:20})]),_:2},1032,["aria-label","title","onClick"]))]))),128))]),c.slots.length===0?(E(),Y("span",Ds,j(t.l10nEmptyDay),1)):ae("",!0)])),(E(),ie(l,{key:`add-slot-${c.id}`,disabled:t.loading,class:"add-another button",title:t.l10nAddSlot,"aria-label":t.l10nAddSlot,onClick:d=>r.addSlot(c)},{icon:q(()=>[v(u,{size:20})]),_:2},1032,["disabled","title","aria-label","onClick"]))]))),128))],8,Ts)}const Es=fs(ps,[["render",_s],["__scopeId","data-v-3ef03e87"]]),bs=Jt().detectUser().setApp("@nextcloud/calendar-availability-vue").build();function Us(){return{MO:[],TU:[],WE:[],TH:[],FR:[],SA:[],SU:[]}}function Cs(a){const e=z.parse(a),t=new z.Component(e),s=t.getFirstSubcomponent("vavailability");let i;const r=t.getFirstSubcomponent("vtimezone");r&&(i=r.getFirstProperty("tzid").getFirstValue());const o=s.getAllSubcomponents("available"),n=Us();return o.forEach(l=>{const u=l.getFirstProperty("dtstart").getFirstValue(),c=l.getFirstProperty("dtend").getFirstValue(),d=l.getFirstProperty("rrule"),m=new Date;m.setHours(u.hour,u.minute,0,0);const p=new Date;if(p.setHours(c.hour,c.minute,0,0),d.getFirstValue().freq!=="WEEKLY"){bs.warn("rrule not supported",{rrule:d.toICALString()});return}d.getFirstValue().getComponent("BYDAY").forEach(y=>{n[y].push({start:m.getTime()/1e3,end:p.getTime()/1e3})})}),{slots:n,timezoneId:i}}function vs(a,e){const t=new z.Component("vcalendar");t.addPropertyWithValue("prodid","Nextcloud DAV app");const s=M0.getZoneString(e);if(s){const o=new z.Component(z.parse(s));t.addSubcomponent(o)}else{const o=new z.Component("vtimezone");o.addPropertyWithValue("tzid",e),t.addSubcomponent(o)}const i=new z.Component("vavailability"),r=a.reduce((o,n)=>{const l=new Date(n.start*1e3),u=new Date(n.end*1e3),c=[l.getHours(),l.getMinutes(),u.getHours(),u.getMinutes()].join("-");return{...o,[c]:[...o[c]??[],n]}},{});return Object.keys(r).map(o=>{const n=r[o],l=n[0].start,u=n[0].end,c=n.map(m=>m.day).filter((m,p,y)=>y.indexOf(m)===p),d=new z.Component("available");return d.addPropertyWithValue("dtstart",z.Time.fromJSDate(new Date(l*1e3),!1)).setParameter("tzid",e),d.addPropertyWithValue("dtend",z.Time.fromJSDate(new Date(u*1e3),!1)).setParameter("tzid",e),d.addPropertyWithValue("uid",ms()),d.addPropertyWithValue("rrule",{freq:"WEEKLY",byday:c}),d}).map(i.addSubcomponent.bind(i)),t.addSubcomponent(i),t.toString()}let Oe;function Yt(){if(!Oe){const a=kt(`dav/calendars/${Re().uid}`);Oe=e0(a);const e=t=>{Oe.setHeaders({"X-Requested-With":"XMLHttpRequest",requesttoken:t??""})};Pt(e),e(Bt())}return Oe}function Ys(){return{MO:[],TU:[],WE:[],TH:[],FR:[],SA:[],SU:[]}}async function Os(){const a=await Yt().customRequest("inbox",{method:"PROPFIND",data:`<?xml version="1.0"?>
<x0:propfind xmlns:x0="DAV:">
<x0:prop>
<x1:calendar-availability xmlns:x1="urn:ietf:params:xml:ns:caldav"/>
</x0:prop>
</x0:propfind>`}),e=await t0(await a.text());if(!e)return;const t=e?.multistatus?.response[0]?.propstat?.prop["calendar-availability"];if(t)return Cs(t)}async function ws(a,e){const t=[...Object.keys(a).flatMap(i=>a[i].map(r=>({...r,day:i})))],s=vs(t,e);K.debug("New availability ical created",{vavailability:s}),await Yt().customRequest("inbox",{method:"PROPPATCH",data:`<?xml version="1.0"?>
<x0:propertyupdate xmlns:x0="DAV:">
<x0:set>
<x0:prop>
<x1:calendar-availability xmlns:x1="urn:ietf:params:xml:ns:caldav">${s}</x1:calendar-availability>
</x0:prop>
</x0:set>
</x0:propertyupdate>`})}async function Ns(){await Te.post(ye("/apps/provisioning_api/api/v1/config/users/{appId}/{configKey}",{appId:"dav",configKey:"user_status_automation"}),{configValue:"yes"})}async function Ms(){await Te.delete(ye("/apps/provisioning_api/api/v1/config/users/{appId}/{configKey}",{appId:"dav",configKey:"user_status_automation"}))}const xs=ke({__name:"AvailabilityForm",setup(a){const e=Xt().core.user?.timezone??Intl.DateTimeFormat().resolvedOptions().timeZone,t=pe(!0),s=pe(!1),i=pe(Ys()),r=pe(Je("dav","user_status_automation")==="yes");Lt(async()=>{try{const n=await Os();n?(i.value=n.slots,K.debug("availability loaded",{slots:i.value})):K.debug("no availability is set")}catch(n){K.error("could not load existing availability",{error:n}),Me(_("dav","Failed to load availability"))}finally{t.value=!1}});async function o(){s.value=!0;try{await ws(i.value,e),r.value?await Ns():await Ms(),Fe(_("dav","Saved availability"))}catch(n){K.error("could not save availability",{error:n}),Me(_("dav","Failed to save availability"))}finally{s.value=!1}}return(n,l)=>(E(),Y("div",null,[v(S(Es),{slots:i.value,"onUpdate:slots":l[0]||(l[0]=u=>i.value=u),loading:t.value,"l10n-to":S(_)("dav","to"),"l10n-delete-slot":S(_)("dav","Delete slot"),"l10n-empty-day":S(_)("dav","No working hours set"),"l10n-add-slot":S(_)("dav","Add slot"),"l10n-week-day-list-label":S(_)("dav","Weekdays"),"l10n-monday":S(_)("dav","Monday"),"l10n-tuesday":S(_)("dav","Tuesday"),"l10n-wednesday":S(_)("dav","Wednesday"),"l10n-thursday":S(_)("dav","Thursday"),"l10n-friday":S(_)("dav","Friday"),"l10n-saturday":S(_)("dav","Saturday"),"l10n-sunday":S(_)("dav","Sunday"),"l10n-start-picker-label":u=>S(_)("dav","Pick a start time for {dayName}",{dayName:u}),"l10n-end-picker-label":u=>S(_)("dav","Pick a end time for {dayName}",{dayName:u})},null,8,["slots","loading","l10n-to","l10n-delete-slot","l10n-empty-day","l10n-add-slot","l10n-week-day-list-label","l10n-monday","l10n-tuesday","l10n-wednesday","l10n-thursday","l10n-friday","l10n-saturday","l10n-sunday","l10n-start-picker-label","l10n-end-picker-label"]),v(S(zt),{modelValue:r.value,"onUpdate:modelValue":l[1]||(l[1]=u=>r.value=u)},{default:q(()=>[Se(j(S(_)("dav",'Automatically set user status to "Do not disturb" outside of availability to mute all notifications.')),1)]),_:1},8,["modelValue"]),v(S($e),{disabled:t.value||s.value,variant:"primary",onClick:o},{default:q(()=>[Se(j(S(_)("dav","Save")),1)]),_:1},8,["disabled"])]))}}),Is=Ze(xs,[["__scopeId","data-v-ed655058"]]),ks=ke({__name:"UserAvailability",setup(a){const e=Je("dav","hide_absence_settings",!0);return(t,s)=>(E(),Y("div",null,[v(S(at),{id:"availability",name:S(_)("dav","Availability"),description:S(_)("dav","If you configure your working hours, other people will see when you are out of office when they book a meeting.")},{default:q(()=>[v(Is)]),_:1},8,["name","description"]),S(e)?ae("",!0):(E(),ie(S(at),{key:0,id:"absence",name:S(_)("dav","Absence"),description:S(_)("dav","Configure your next absence period.")},{default:q(()=>[v(_0)]),_:1},8,["name","description"]))]))}}),Bs=Vt(ks);Bs.mount("#settings-personal-availability");
//# sourceMappingURL=dav-settings-personal-availability.mjs.map