jcal-zmanim 1.4.0 → 1.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- {"version":3,"sources":["c:\\repos_git\\jcal-zmanim\\dist\\index.cjs"],"names":["__defProp","Object","defineProperty","__getOwnPropDesc","getOwnPropertyDescriptor","__getOwnPropNames","getOwnPropertyNames","__hasOwnProp","prototype","hasOwnProperty","__export","target","all","name","get","enumerable","__copyProps","to","from","except","desc","key","call","__toCommonJS","mod","value","src_exports","Dafyomi","DaysOfWeek","DaysOfWeekEng","DaysOfWeekHeb","JewishMonthsEng","JewishMonthsHeb","JewishMonthsNames","Location","Locations","Molad","PirkeiAvos","SecularMonthsEng","Sedra","Utils","ZmanTypeIds","ZmanTypes","Zmanim","ZmanimUtils","closestDistanceMatch","closestNameMatch","findLocation","getNotifications","getZmanType","jDate","module","exports","_Sedra","jd","israel2","Month","Day","sedras","sedraList","sedraArray","sedraOrder","getSedraOrder","Year","absDate","Abs","index","weekNum","getDayOnOrBefore","firstSatInYear","length","indexLast","i","toString","map","s","eng","join","toStringHeb","heb","day_of_week","date","year","lastCalculatedYear","israel","longCheshvon","isLongCheshvan","shortKislev","isShortKislev","roshHashana","absJd","roshHashanaDOW","Math","abs","yearType","sArray","isJdLeapY","shabbos_short","shabbos_long","mon_short","mon_long","thu_normal_Israel","thu_normal","thu_long","shabbos_short_leap","shabbos_long_leap","mon_short_leap_Israel","mon_short_leap","mon_long_leap_Israel","mon_long_leap","thu_short_leap","thu_long_leap","retobj","_PirkeiAvos","getPrakim","getDayOfWeek","jMonth","jDay","_get1stPerek","_ellul","jYear","pes1","shb1","cShb","toInt","prk","prakim","day1","day1DOW","shabbos1Day","shabbos1Date","_Dafyomi","getDaf","jdate","absoluteDate","dafcnt","cno","dno","osday","nsday","total","count","j","blatt","absSd","Date","masechtaList","daf","masechet","d","toJewishNumber","_yearCache","JS_START_DATE_ABS","MS_PER_DAY","JS_START_OFFSET","getTimezoneOffset","_jDate","arg","month","day","NaN","arguments","fromAbs","isValidDate","Array","isArray","isString","isNumber","argObj","absolute","ymd","getDate","sdFromAbs","DayOfWeek","addDays","days","addMonths","months","miy","monthsJYear","daysJMonth","addYears","years","addSecularMonths","secDate","valueOf","setMonth","getMonth","addSecularYears","setFullYear","getFullYear","diffDays","diffMonths","diffFullMonths","diffYears","diff","diffFullYears","hideDayOfWeek","dontCapitalize","toSuffixed","monthName","toShortstring","showDow","showYear","getDayOfOmer","dayOfOmer","first","isYomTovOrCholHamoed","isYomTov","includes","isErevYomTov","has","hasCandleLighting","dow","hasEiruvTavshilin","getCandleLighting","location","nullIfNoCandles","getSedra","getPirkeiAvos","getSunriseSunset","ignoreElevation","getSunTimes","getChatzos","getShaaZmanis","offset","getDafYomi","getDafyomiHeb","toJDate","now","absDay","ms","numFullDays","floor","dayInYear","m","tDays","daysSinceStart","cached","find","y","elapsed","parts","hours","conjDay","conjParts","altDay","push","daysJYear","_Zmanim","considerElevation","String","sunrise","sunset","zenithDeg","zenithMin","lonHour","longitude","latitude","cosLat","sinLat","cosZen","sinDec","cosDec","xmRise","xmSet","xlRise","xlSet","aRise","aSet","ahrRise","ahrSet","hRise","hSet","tRise","tSet","utRise","utSet","dayOfYear","earthRadius","zenithAtElevation","degToDec","radToDeg","acos","Elevation","cos","Longitude","Latitude","sin","M","L","atan","tan","sqrt","adj","timeAdj","UTCOffset","hour","getChatzosFromSuntimes","sunTimes","rise","set","isNaN","minute","chatz","totalSeconds","addSeconds","getShaaZmanisFromSunTimes","addMinutes","getShaaZmanisMga","minutes","getCandleLightingFromSunTimes","getCandleLightingFromSunset","CandleLighting","isLeap","isSecularLeapYear","yearDay","deg","min","x","rad","time","minFloat","sec","round","isDST","fixTime","second","__DEV__","process","env","NODE_ENV","freeze","SUNDAY","MONDAY","TUESDAY","WEDNESDAY","THURSDAY","FRIDAY","SHABBOS","NISSAN","IYAR","SIVAN","TAMUZ","AV","ELLUL","TISHREI","CHESHVAN","KISLEV","TEVES","SHVAT","ADAR","ADAR_SHEINI","_Utils","number","n","retval","jsd","jhd","jtd","slice","toStringDate","getDay","toShortStringDate","monthFirst","dayNum","monthNum","num","t","suffix","getSdDOW","result","seconds","timeDiff","earlierTime","laterTime","showNegative","earlySec","laterSec","sign","totalMinutes","timeFromDate","sdate","getHours","getMinutes","getSeconds","isTimeAfter","beforeTime","afterTime","getTimeIntervalTextStringHeb","trunc","getTimeIntervalTextString","getOmerNusach","nusach","weeks","txt","jsnum","jtnum","getTimeString","army","roundUp","ceil","currUtcOffset","jan","jul","max","isDateDST","Israel","isIsrael_DST","isUSA_DST","firstDOW","targetDate","lastFriday","lastSunday","getSdNowInIsrael","israelTimeOffset","setHours","addDaysToSdate","isSameSdate","sdate1","sdate2","toDateString","isSameJdate","jdate1","jdate2","isSameJMonth","isSameSMonth","isAfterSunset","shkia","nowAtLocation","setDate","float","bothDates","thing","Number","o","arr","setDefault","paramValue","defValue","range","start","end","startNumber","endNumber","v","log","optionalItems","console","warn","error","_Location","nameHeb","utcOffset","elevation","candleLighting","Name","NameHebrew","getCandles","clone","special","names","loclc","toLowerCase","city","sp","spi","indexOf","getJerusalem","getLakewood","import_closest_match","require","locations_default","il","tz","el","lat","lon","cl","l","sort","a","b","justNames","split","distancePointToPoint","point1","point2","radlat1","PI","radlat2","theta","radtheta","dist","point","curr","val","distance","nameOrCoordinates","exactNameMatch","cityOnlyNameMatch","exactCoordinateMatch","ChatzosLayla","Alos90","Alos72","TalisTefillin","NetzAtElevation","NetzMishor","szksMga","szksGra","sztMga","sztGra","chatzosDay","minGed","minKet","plag","shkiaAtSeaLevel","shkiaElevation","tzais45","tzais50","tzais72","rabbeinuTamZmanios","rabbeinuTamZmaniosMga","SofZmanEatingChometz","SofZmanBurnChometz","id","idOrName","zt","_Molad","getMolad","totalMonths","partsElapsed","hoursElapsed","monthAdj","chalakim","getString","molad","zmanim","isNight","str","getStringHeb","replace","WhichDaysFlags","YOMTOV","_ZmanimUtils","getZmanTimes","zmanTypes","mem","zmanTimesCache","z","zmanTimes","whichDay","getWhichDays","suntimesMishor","sunriseMishor","sunsetMishor","mishorNeg90","chatzos","shaaZmanis","shaaZmanisMga","suntimes","zmanType","whichDaysFlags","getBasicShulZmanim","chatzosHayom","chatzosHalayla","alos","getAllZmanim","dayNotes","tefillahNotes","showEnglish","dayInfo","showGaonShirShelYom","english","showGaonShir","showDafYomi","isAfterChatzosHayom","isAfterChatzosHalayla","isAfterAlos","isAfterShkia","isDaytime","isNightTime","isNotBeinHasmashos","isMorning","isAfternoon","isLeapYear","noTachnun","getShabbosNotifications","getWeekDayNotifications","getAroundTheYearNotifications","addTefillahNote","addDayNote","dayOfSefirah","Set","sedra","nextMonth","hasOwnKriyasHatorah","noLaminatzeach","showVsainTalUmatarInChul","startVsainTalUmatar","startedSelichos","daysToRH","dowRH","isYerushalayim","englishOrDefaultText","hebrewText","note"],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,IAAIA,YAAYC,OAAOC,cAAc;AACrC,IAAIC,mBAAmBF,OAAOG,wBAAwB;AACtD,IAAIC,oBAAoBJ,OAAOK,mBAAmB;AAClD,IAAIC,eAAeN,OAAOO,SAAS,CAACC,cAAc;AAClD,IAAIC,WAAW,SAACC,QAAQC;IACtB,IAAK,IAAIC,QAAQD,IACfZ,UAAUW,QAAQE,MAAM;QAAEC,KAAKF,GAAG,CAACC,KAAK;QAAEE,YAAY;IAAK;AAC/D;AACA,IAAIC,cAAc,SAACC,IAAIC,MAAMC,QAAQC;IACnC,IAAIF,QAAQ,CAAA,OAAOA,qCAAP,SAAOA,KAAG,MAAM,YAAY,OAAOA,SAAS,YAAY;YAC7D,kCAAA,2BAAA;;;gBAAA,IAAIG,MAAJ;gBACH,IAAI,CAACd,aAAae,IAAI,CAACL,IAAII,QAAQA,QAAQF,QACzCnB,UAAUiB,IAAII,KAAK;oBAAEP,KAAK;+BAAMI,IAAI,CAACG,IAAI;;oBAAEN,YAAY,CAAEK,CAAAA,OAAOjB,iBAAiBe,MAAMG,IAAG,KAAMD,KAAKL,UAAU;gBAAC;;YAFpH,QAAK,YAAWV,kBAAkBa,0BAA7B,SAAA,6BAAA,QAAA,yBAAA;;YAAA;YAAA;;;qBAAA,6BAAA;oBAAA;;;oBAAA;0BAAA;;;;IAGP;IACA,OAAOD;AACT;AACA,IAAIM,eAAe,SAACC;WAAQR,YAAYhB,UAAU,CAAC,GAAG,cAAc;QAAEyB,OAAO;IAAK,IAAID;;AAEtF,eAAe;AACf,IAAIE,cAAc,CAAC;AACnBhB,SAASgB,aAAa;IACpBC,SAAS;eAAMA;;IACfC,YAAY;eAAMA;;IAClBC,eAAe;eAAMA;;IACrBC,eAAe;eAAMA;;IACrBC,iBAAiB;eAAMA;;IACvBC,iBAAiB;eAAMA;;IACvBC,mBAAmB;eAAMA;;IACzBC,UAAU;eAAMA;;IAChBC,WAAW;eAAMA;;IACjBC,OAAO;eAAMA;;IACbC,YAAY;eAAMA;;IAClBC,kBAAkB;eAAMA;;IACxBC,OAAO;eAAMA;;IACbC,OAAO;eAAMA;;IACbC,aAAa;eAAMA;;IACnBC,WAAW;eAAMA;;IACjBC,QAAQ;eAAMA;;IACdC,aAAa;eAAMA;;IACnBC,sBAAsB;eAAMA;;IAC5BC,kBAAkB;eAAMA;;IACxBC,cAAc;eAAMA;;IACpBC,kBAAkB;eAAMA;;IACxBC,aAAa;eAAMA;;IACnBC,OAAO;eAAMA;;AACf;AACAC,OAAOC,OAAO,GAAG7B,aAAaG;AAE9B,oBAAoB;AACpB,IAAI2B,uBAAS;aAAMA,OAKLC,EAAE,EAAEC,OAAO;gCALNF;QAMf,IAAIC,GAAGE,KAAK,KAAK,KAAKF,GAAGG,GAAG,IAAI,MAAMH,GAAGG,GAAG,GAAIF,CAAAA,UAAU,KAAK,EAAC,GAAI;YAClE,IAAI,CAACG,MAAM,GAAG;gBAACL,OAAOM,SAAS,CAAC,GAAG;aAAC;YACpC;QACF;QACA,IAAIC,aAAa,EAAE,EAAEC,aAAaR,OAAOS,aAAa,CAACR,GAAGS,IAAI,EAAER,UAAUS,UAAUV,GAAGW,GAAG,EAAEC,OAAOC;QACnGH,UAAUX,OAAOe,gBAAgB,CAAC,GAAGJ,UAAU;QAC/CG,UAAU,AAACH,CAAAA,UAAUH,WAAWQ,cAAa,AAAC,IAAI;QAClD,IAAIR,WAAWD,UAAU,IAAIO,WAAWN,WAAWD,UAAU,CAACU,MAAM,EAAE;YACpE,IAAMC,YAAYV,WAAWD,UAAU,CAACC,WAAWD,UAAU,CAACU,MAAM,GAAG,EAAE;YACzE,IAAIC,YAAY,GAAG;gBACjBL,QAAQ,CAACK,YAAY;YACvB,OAAO;gBACLL,QAAQK,YAAY;YACtB;QACF,OAAO;YACLL,QAAQL,WAAWD,UAAU,GAAGC,WAAWD,UAAU,CAACO,QAAQ,GAAG,CAAC;QACpE;QACA,IAAID,SAAS,GAAG;YACdN,aAAa;gBAACP,OAAOM,SAAS,CAACO,MAAM;aAAC;QACxC,OAAO;YACL,IAAMM,IAAI,CAACN;YACXN,aAAa;gBAACP,OAAOM,SAAS,CAACa,EAAE;gBAAEnB,OAAOM,SAAS,CAACa,IAAI,EAAE;aAAC;QAC7D;QACA,IAAI,CAACd,MAAM,GAAGE;;;;YAEhB;;GAEC,GACDa,KAAAA;mBAAAA,SAAAA;gBACE,OAAO,IAAI,CAACf,MAAM,CAACgB,GAAG,CAAC,SAACC;2BAAMA,EAAEC,GAAG;mBAAEC,IAAI,CAAC;YAC5C;;;YACA;;GAEC,GACDC,KAAAA;mBAAAA,SAAAA;gBACE,OAAO,IAAI,CAACpB,MAAM,CAACgB,GAAG,CAAC,SAACC;2BAAMA,EAAEI,GAAG;mBAAEF,IAAI,CAAC;YAC5C;;;;YACOT,KAAAA;mBAAP,SAAOA,iBAAiBY,WAAW,EAAEC,IAAI;gBACvC,OAAOA,OAAO,AAACA,CAAAA,OAAOD,WAAU,IAAK;YACvC;;;YACOlB,KAAAA;mBAAP,SAAOA,cAAcoB,IAAI,EAAE3B,OAAO;gBAChC,IAAIF,OAAO8B,kBAAkB,IAAI,QAAQ9B,OAAO8B,kBAAkB,CAACD,IAAI,KAAKA,QAAQ7B,OAAO8B,kBAAkB,CAACC,MAAM,KAAK7B,SAAS;oBAChI,OAAOF,OAAO8B,kBAAkB;gBAClC;gBACA,IAAME,eAAenC,MAAMoC,cAAc,CAACJ,OAAOK,cAAcrC,MAAMsC,aAAa,CAACN,OAAOO,cAAcvC,MAAMwC,KAAK,CAACR,MAAM,GAAG,IAAIS,iBAAiBC,KAAKC,GAAG,CAACJ,cAAc,IAAIpB,iBAAiBhB,OAAOe,gBAAgB,CAAC,GAAGqB,cAAc;gBACvO,IAAIK,UAAUC;gBACd,IAAIV,gBAAgB,CAACE,aACnBO,WAAW;qBACR,IAAI,CAACT,gBAAgBE,aACxBO,WAAW;qBAEXA,WAAW;gBACb,IAAI,CAAC5C,MAAM8C,SAAS,CAACd,OAAO;oBAC1B,OAAQS;wBACN,KAAK;4BACH,IAAIG,aAAa,cAAc;gCAC7BC,SAAS1C,OAAO4C,aAAa;4BAC/B,OAAO,IAAIH,aAAa,YAAY;gCAClCC,SAAS1C,OAAO6C,YAAY;4BAC9B;4BACA;wBACF,KAAK;4BACH,IAAIJ,aAAa,cAAc;gCAC7BC,SAAS1C,OAAO8C,SAAS;4BAC3B,OAAO,IAAIL,aAAa,YAAY;gCAClCC,SAASxC,UAAUF,OAAO8C,SAAS,GAAG9C,OAAO+C,QAAQ;4BACvD;4BACA;wBACF,KAAK;4BACH,IAAIN,aAAa,WAAW;gCAC1BC,SAASxC,UAAUF,OAAO8C,SAAS,GAAG9C,OAAO+C,QAAQ;4BACvD;4BACA;wBACF,KAAK;4BACH,IAAIN,aAAa,WAAW;gCAC1BC,SAASxC,UAAUF,OAAOgD,iBAAiB,GAAGhD,OAAOiD,UAAU;4BACjE,OAAO,IAAIR,aAAa,YAAY;gCAClCC,SAAS1C,OAAOkD,QAAQ;4BAC1B;4BACA;wBACF;4BACE,MAAM;oBACV;gBACF,OAAO;oBACL,OAAQZ;wBACN,KAAK;4BACH,IAAIG,aAAa,cAAc;gCAC7BC,SAAS1C,OAAOmD,kBAAkB;4BACpC,OAAO,IAAIV,aAAa,YAAY;gCAClCC,SAASxC,UAAUF,OAAOmD,kBAAkB,GAAGnD,OAAOoD,iBAAiB;4BACzE;4BACA;wBACF,KAAK;4BACH,IAAIX,aAAa,cAAc;gCAC7BC,SAASxC,UAAUF,OAAOqD,qBAAqB,GAAGrD,OAAOsD,cAAc;4BACzE,OAAO,IAAIb,aAAa,YAAY;gCAClCC,SAASxC,UAAUF,OAAOuD,oBAAoB,GAAGvD,OAAOwD,aAAa;4BACvE;4BACA;wBACF,KAAK;4BACH,IAAIf,aAAa,WAAW;gCAC1BC,SAASxC,UAAUF,OAAOuD,oBAAoB,GAAGvD,OAAOwD,aAAa;4BACvE;4BACA;wBACF,KAAK;4BACH,IAAIf,aAAa,cAAc;gCAC7BC,SAAS1C,OAAOyD,cAAc;4BAChC,OAAO,IAAIhB,aAAa,YAAY;gCAClCC,SAAS1C,OAAO0D,aAAa;4BAC/B;4BACA;wBACF;4BACE,MAAM;oBACV;gBACF;gBACA,IAAMC,SAAS;oBACb3C,gBAAAA;oBACAT,YAAYmC;oBACZb,MAAAA;oBACAE,QAAQ7B;gBACV;gBACAF,OAAO8B,kBAAkB,GAAG6B;gBAC5B,OAAOA;YACT;;;;;AAEF3D,OAAO8B,kBAAkB,GAAG;AAC5B9B,OAAOM,SAAS,GAAG;IAAC;QAAEiB,KAAK;QAAYG,KAAK;IAAuC;IAAG;QAAEH,KAAK;QAASG,KAAK;IAAe;IAAG;QAAEH,KAAK;QAAcG,KAAK;IAA4B;IAAG;QAAEH,KAAK;QAAUG,KAAK;IAA2B;IAAG;QAAEH,KAAK;QAAeG,KAAK;IAAwC;IAAG;QAAEH,KAAK;QAAUG,KAAK;IAAuC;IAAG;QAAEH,KAAK;QAAYG,KAAK;IAA2B;IAAG;QAAEH,KAAK;QAAcG,KAAK;IAAiC;IAAG;QAAEH,KAAK;QAAaG,KAAK;IAA2B;IAAG;QAAEH,KAAK;QAAWG,KAAK;IAAqB;IAAG;QAAEH,KAAK;QAAYG,KAAK;IAA2B;IAAG;QAAEH,KAAK;QAAWG,KAAK;IAA2B;IAAG;QAAEH,KAAK;QAAUG,KAAK;IAA2B;IAAG;QAAEH,KAAK;QAAUG,KAAK;IAA2B;IAAG;QAAEH,KAAK;QAAMG,KAAK;IAAe;IAAG;QAAEH,KAAK;QAAaG,KAAK;IAA2B;IAAG;QAAEH,KAAK;QAASG,KAAK;IAA2B;IAAG;QAAEH,KAAK;QAAaG,KAAK;IAAuC;IAAG;QAAEH,KAAK;QAAWG,KAAK;IAAiC;IAAG;QAAEH,KAAK;QAAYG,KAAK;IAA2B;IAAG;QAAEH,KAAK;QAAWG,KAAK;IAAkC;IAAG;QAAEH,KAAK;QAAYG,KAAK;IAAiC;IAAG;QAAEH,KAAK;QAAWG,KAAK;IAAiC;IAAG;QAAEH,KAAK;QAAWG,KAAK;IAAiC;IAAG;QAAEH,KAAK;QAAQG,KAAK;IAAe;IAAG;QAAEH,KAAK;QAAUG,KAAK;IAAiC;IAAG;QAAEH,KAAK;QAAUG,KAAK;IAAiC;IAAG;QAAEH,KAAK;QAAWG,KAAK;IAAiC;IAAG;QAAEH,KAAK;QAAcG,KAAK;IAA8C;IAAG;QAAEH,KAAK;QAAYG,KAAK;IAAuC;IAAG;QAAEH,KAAK;QAAQG,KAAK;IAA2B;IAAG;QAAEH,KAAK;QAASG,KAAK;IAAqB;IAAG;QAAEH,KAAK;QAAcG,KAAK;IAAuC;IAAG;QAAEH,KAAK;QAAYG,KAAK;IAAiC;IAAG;QAAEH,KAAK;QAASG,KAAK;IAAqB;IAAG;QAAEH,KAAK;QAAgBG,KAAK;IAAuC;IAAG;QAAEH,KAAK;QAAWG,KAAK;IAAqB;IAAG;QAAEH,KAAK;QAAUG,KAAK;IAAqB;IAAG;QAAEH,KAAK;QAAUG,KAAK;IAAqB;IAAG;QAAEH,KAAK;QAASG,KAAK;IAAqB;IAAG;QAAEH,KAAK;QAAWG,KAAK;IAAiC;IAAG;QAAEH,KAAK;QAASG,KAAK;IAA2B;IAAG;QAAEH,KAAK;QAASG,KAAK;IAA2B;IAAG;QAAEH,KAAK;QAAWG,KAAK;IAAiC;IAAG;QAAEH,KAAK;QAAeG,KAAK;IAAuC;IAAG;QAAEH,KAAK;QAASG,KAAK;IAAqB;IAAG;QAAEH,KAAK;QAASG,KAAK;IAAqB;IAAG;QAAEH,KAAK;QAAWG,KAAK;IAAuC;IAAG;QAAEH,KAAK;QAAcG,KAAK;IAAkC;IAAG;QAAEH,KAAK;QAAWG,KAAK;IAAkC;IAAG;QAAEH,KAAK;QAAYG,KAAK;IAAiC;IAAG;QAAEH,KAAK;QAAaG,KAAK;IAA2B;IAAG;QAAEH,KAAK;QAAYG,KAAK;IAAuC;IAAG;QAAEH,KAAK;QAAkBG,KAAK;IAA0D;CAAE;AAC//F1B,OAAO4C,aAAa,GAAG;IAAC;IAAI;IAAI;IAAI;IAAI;IAAG;IAAG;IAAG;IAAG;IAAG;IAAG;IAAG;IAAG;IAAG;IAAG;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI,CAAC;IAAI;IAAI;IAAI;IAAI;IAAI,CAAC;IAAI,CAAC;IAAI;IAAI,CAAC;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI,CAAC;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;CAAG;AAC9N5C,OAAO6C,YAAY,GAAG;IAAC;IAAI;IAAI;IAAI;IAAI;IAAG;IAAG;IAAG;IAAG;IAAG;IAAG;IAAG;IAAG;IAAG;IAAG;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI,CAAC;IAAI;IAAI;IAAI;IAAI;IAAI,CAAC;IAAI,CAAC;IAAI;IAAI,CAAC;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI,CAAC;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI,CAAC;CAAG;AAC9N7C,OAAO8C,SAAS,GAAG;IAAC;IAAI;IAAI;IAAI;IAAG;IAAG;IAAG;IAAG;IAAG;IAAG;IAAG;IAAG;IAAG;IAAG;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI,CAAC;IAAI;IAAI;IAAI;IAAI;IAAI,CAAC;IAAI,CAAC;IAAI;IAAI,CAAC;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI,CAAC;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI,CAAC;CAAG;AACvN9C,OAAO+C,QAAQ,GAAG;IAAC;IAAI;IAAI;IAAI;IAAG;IAAG;IAAG;IAAG;IAAG;IAAG;IAAG;IAAG;IAAG;IAAG;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI,CAAC;IAAI;IAAI;IAAI;IAAI;IAAI,CAAC;IAAI,CAAC;IAAI;IAAI,CAAC;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI,CAAC;IAAI;IAAI,CAAC;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI,CAAC;CAAG;AACvN/C,OAAOiD,UAAU,GAAG;IAAC;IAAI;IAAI;IAAI;IAAG;IAAG;IAAG;IAAG;IAAG;IAAG;IAAG;IAAG;IAAG;IAAG;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI,CAAC;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI,CAAC;IAAI,CAAC;IAAI;IAAI,CAAC;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI,CAAC;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;CAAG;AAC3NjD,OAAOgD,iBAAiB,GAAG;IAAC;IAAI;IAAI;IAAI;IAAG;IAAG;IAAG;IAAG;IAAG;IAAG;IAAG;IAAG;IAAG;IAAG;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI,CAAC;IAAI;IAAI;IAAI;IAAI;IAAI,CAAC;IAAI,CAAC;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI,CAAC;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;CAAG;AACjOhD,OAAOkD,QAAQ,GAAG;IAAC;IAAI;IAAI;IAAI;IAAG;IAAG;IAAG;IAAG;IAAG;IAAG;IAAG;IAAG;IAAG;IAAG;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI,CAAC;IAAI,CAAC;IAAI;IAAI,CAAC;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI,CAAC;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;CAAG;AACxNlD,OAAOmD,kBAAkB,GAAG;IAAC;IAAI;IAAI;IAAI;IAAI;IAAG;IAAG;IAAG;IAAG;IAAG;IAAG;IAAG;IAAG;IAAG;IAAG;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI,CAAC;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI,CAAC;CAAG;AAChPnD,OAAOoD,iBAAiB,GAAG;IAAC;IAAI;IAAI;IAAI;IAAI;IAAG;IAAG;IAAG;IAAG;IAAG;IAAG;IAAG;IAAG;IAAG;IAAG;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI,CAAC;IAAI;IAAI,CAAC;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI,CAAC;CAAG;AAChPpD,OAAOsD,cAAc,GAAG;IAAC;IAAI;IAAI;IAAI;IAAG;IAAG;IAAG;IAAG;IAAG;IAAG;IAAG;IAAG;IAAG;IAAG;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI,CAAC;IAAI;IAAI,CAAC;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI,CAAC;CAAG;AACzOtD,OAAOqD,qBAAqB,GAAG;IAAC;IAAI;IAAI;IAAI;IAAG;IAAG;IAAG;IAAG;IAAG;IAAG;IAAG;IAAG;IAAG;IAAG;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI,CAAC;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI,CAAC;CAAG;AAC/OrD,OAAOwD,aAAa,GAAG;IAAC;IAAI;IAAI;IAAI;IAAG;IAAG;IAAG;IAAG;IAAG;IAAG;IAAG;IAAG;IAAG;IAAG;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI,CAAC;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;CAAG;AAC1OxD,OAAOuD,oBAAoB,GAAG;IAAC;IAAI;IAAI;IAAI;IAAG;IAAG;IAAG;IAAG;IAAG;IAAG;IAAG;IAAG;IAAG;IAAG;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;CAAG;AAChPvD,OAAOyD,cAAc,GAAG;IAAC;IAAI;IAAI;IAAI;IAAG;IAAG;IAAG;IAAG;IAAG;IAAG;IAAG;IAAG;IAAG;IAAG;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;CAAG;AAC1OzD,OAAO0D,aAAa,GAAG;IAAC;IAAI;IAAI;IAAI;IAAG;IAAG;IAAG;IAAG;IAAG;IAAG;IAAG;IAAG;IAAG;IAAG;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI;IAAI,CAAC;CAAG;AAC1O,IAAIxE,QAAQc;AAEZ,yBAAyB;AACzB,IAAI4D,4BAAc;aAAMA;gCAAAA;;;;YACfC,KAAAA;mBAAP,SAAOA,UAAU5D,EAAE,EAAEC,OAAO;gBAC1B,IAAID,GAAG6D,YAAY,OAAO,GAAG;oBAC3B,OAAO,EAAE;gBACX;gBACA,IAAMC,SAAS9D,GAAGE,KAAK,EAAE6D,OAAO/D,GAAGG,GAAG;gBACtC,IAAI2D,WAAW,KAAKC,OAAQ9D,CAAAA,UAAU,KAAK,EAAC,KAAM,gGAAgG;gBAClJ6D,SAAS,KAAKA,SAAS,KAAK,CAAEA,CAAAA,WAAW,KAAKC,SAAS,KAAK,CAAC9D,WAAW6D,WAAW,KAAKC,SAAS,CAAA,KAAM,CAAED,CAAAA,WAAW,KAAKC,SAAS,CAAA,GAAI;oBACpI,OAAO;wBAACJ,YAAYK,YAAY,CAAChE,IAAIC;qBAAS;gBAChD,OAAO,IAAI6D,WAAW,GAAG;oBACvB,OAAOH,YAAYM,MAAM,CAACjE,IAAIC;gBAChC,OAAO;oBACL,OAAO,EAAE;gBACX;YACF;;;;;AAEF0D,YAAYK,YAAY,GAAG,SAAShE,EAAE,EAAEC,OAAO;IAC7C,IAAMiE,QAAQlE,GAAGS,IAAI,EAAEqD,SAAS9D,GAAGE,KAAK,EAAE6D,OAAO/D,GAAGG,GAAG,EAAEgE,OAAO,IAAIvE,MAAMsE,OAAO,GAAG,KAAKE,OAAO,AAACnE,CAAAA,UAAU,IAAI,CAAA,IAAM,CAAA,IAAIkE,KAAKN,YAAY,EAAC,GAAIQ,OAAOP,WAAW,KAAKC,SAASK,OAAO,KAAK,IAAIlF,MAAMoF,KAAK,CAAC,AAACtE,CAAAA,GAAGW,GAAG,GAAIwD,CAAAA,KAAKxD,GAAG,GAAGyD,IAAG,CAAC,IAAK,KAAK;IAC/O,IAAIG,MAAMF,OAAO;IACjB,IAAIE,QAAQ,GAAGA,MAAM;IACrB,IAAI,CAACtE,WAAWkE,KAAKN,YAAY,OAAO,KAAMC,CAAAA,SAAS,KAAKA,WAAW,KAAKC,OAAO,CAAA,GAAI;QACrFQ,MAAMA,QAAQ,IAAI,IAAIA,MAAM;IAC9B;IACA,IAAIJ,KAAKN,YAAY,OAAO,KAAMC,CAAAA,SAAS,KAAKA,WAAW,KAAKC,OAAO,CAAA,GAAI;QACzEQ,MAAMA,QAAQ,IAAI,IAAIA,MAAM;IAC9B;IACA,OAAOA;AACT;AACAZ,YAAYM,MAAM,GAAG,SAASjE,EAAE,EAAEC,OAAO;IACvC,IAAIuE;IACJ,IAAMN,QAAQlE,GAAGS,IAAI,EAAEsD,OAAO/D,GAAGG,GAAG,EAAEsE,OAAO,IAAI7E,MAAMsE,OAAO,GAAG,GAAGlE,GAAGW,GAAG,GAAGX,GAAGG,GAAG,GAAG,IAAIuE,UAAUD,KAAKZ,YAAY,IAAIc,cAAcD,YAAY,IAAI,IAAI,IAAI,AAACA,CAAAA,UAAU,CAAA,IAAK,IAAI,GAAGE,eAAe,IAAIhF,MAAMsE,OAAO,GAAGS,aAAaF,KAAK9D,GAAG,GAAGgE,cAAc,IAAIN,OAAON,SAASY,cAAc,IAAIzF,MAAMoF,KAAK,CAAC,AAACP,CAAAA,OAAOY,WAAU,IAAK,KAAK;IAC7U,OAAQhB,YAAYK,YAAY,CAACY,cAAc3E;QAC7C,KAAK;YACH,OAAQoE;gBACN,KAAK;oBACHG,SAAS;wBAAC;qBAAE;oBACZ;gBACF,KAAK;oBACHA,SAAS;wBAAC;qBAAE;oBACZ;gBACF,KAAK;oBACHA,SAAS;wBAAC;wBAAG;qBAAE;oBACf;gBACF,KAAK;oBACHA,SAAS;wBAAC;wBAAG;qBAAE;oBACf;YACJ;YACA;QACF,KAAK;YACH,OAAQH;gBACN,KAAK;oBACHG,SAAS;wBAAC;qBAAE;oBACZ;gBACF,KAAK;oBACHA,SAAS;wBAAC;qBAAE;oBACZ;gBACF,KAAK;oBACHA,SAAS;wBAAC;qBAAE;oBACZ;gBACF,KAAK;oBACHA,SAAS;wBAAC;wBAAG;qBAAE;oBACf;YACJ;YACA;QACF,KAAK;YACH,OAAQH;gBACN,KAAK;oBACHG,SAAS;wBAAC;qBAAE;oBACZ;gBACF,KAAK;oBACHA,SAAS;wBAAC;qBAAE;oBACZ;gBACF,KAAK;oBACHA,SAAS;wBAAC;qBAAE;oBACZ;gBACF,KAAK;oBACHA,SAAS;wBAAC;qBAAE;oBACZ;YACJ;YACA;QACF,KAAK;YACH,OAAQH;gBACN,KAAK;oBACHG,SAAS;wBAAC;wBAAG;qBAAE;oBACf;gBACF,KAAK;oBACHA,SAAS;wBAAC;wBAAG;qBAAE;oBACf;gBACF,KAAK;oBACHA,SAAS;wBAAC;wBAAG;qBAAE;oBACf;gBACF,KAAK;oBACHA,SAAS;wBAAC;wBAAG;wBAAG;qBAAE;oBAClB;YACJ;YACA;QACF,KAAK;YACH,OAAQH;gBACN,KAAK;oBACHG,SAAS;wBAAC;wBAAG;qBAAE;oBACf;gBACF,KAAK;oBACHA,SAAS;wBAAC;wBAAG;qBAAE;oBACf;gBACF,KAAK;oBACHA,SAAS;wBAAC;wBAAG;qBAAE;oBACf;gBACF,KAAK;oBACHA,SAAS;wBAAC;wBAAG;qBAAE;oBACf;YACJ;YACA;QACF,KAAK;YACH,OAAQH;gBACN,KAAK;oBACHG,SAAS;wBAAC;qBAAE;oBACZ;gBACF,KAAK;oBACHA,SAAS;wBAAC;wBAAG;qBAAE;oBACf;gBACF,KAAK;oBACHA,SAAS;wBAAC;wBAAG;qBAAE;oBACf;gBACF,KAAK;oBACHA,SAAS;wBAAC;wBAAG;qBAAE;oBACf;YACJ;YACA;IACJ;IACA,OAAOA,UAAU,EAAE;AACrB;AACA,IAAIzF,aAAa4E;AAEjB,sBAAsB;AACtB,IAAIkB,yBAAW;aAAMA;gCAAAA;;;;YACZC,KAAAA;mBAAP,SAAOA,OAAOC,KAAK;gBACjB,IAAMC,eAAeD,MAAMpE,GAAG;gBAC9B,IAAIsE,SAAS,IAAIC,KAAKC,KAAKC,OAAOC,OAAOC,OAAOC,OAAOC,GAAGC;gBAC1DL,QAAQxF,MAAM8F,KAAK,CAAC,IAAIC,KAAK,MAAM,GAAG;gBACtCN,QAAQzF,MAAM8F,KAAK,CAAC,IAAIC,KAAK,MAAM,GAAG;gBACtC,IAAIX,eAAeI,OACjB,OAAO;gBACT,IAAIJ,gBAAgBK,OAAO;oBACzBH,MAAM,IAAIhG,MAAMoF,KAAK,CAAC,AAACU,CAAAA,eAAeK,KAAI,IAAK;oBAC/CF,MAAM,AAACH,CAAAA,eAAeK,KAAI,IAAK;gBACjC,OAAO;oBACLH,MAAM,IAAIhG,MAAMoF,KAAK,CAAC,AAACU,CAAAA,eAAeI,KAAI,IAAK;oBAC/CD,MAAMjG,MAAMoF,KAAK,CAAC,AAACU,CAAAA,eAAeI,KAAI,IAAK;gBAC7C;gBACAE,QAAQG,QAAQ;gBAChBF,QAAQ,CAAC;gBACT,IAAIL,OAAO,GACTL,SAASe,YAAY,CAAC,EAAE,CAACC,GAAG,GAAG;qBAE/BhB,SAASe,YAAY,CAAC,EAAE,CAACC,GAAG,GAAG;gBACjCL,IAAI;gBACJ,MAAOA,IAAIP,OAAQ;oBACjBM;oBACAD,QAAQA,QAAQT,SAASe,YAAY,CAACJ,EAAE,CAACK,GAAG,GAAG;oBAC/C,IAAIV,MAAMG,OAAO;wBACfG,QAAQZ,SAASe,YAAY,CAACJ,EAAE,CAACK,GAAG,GAAG,IAAKP,CAAAA,QAAQH,GAAE;wBACtD,OAAQI;4BACN,KAAK;gCACHE,QAAQA,QAAQ;gCAChB;4BACF,KAAK;gCACHA,QAAQA,QAAQ;gCAChB;4BACF,KAAK;gCACHA,QAAQA,QAAQ;gCAChB;4BACF;gCACE;wBACJ;wBACAD,IAAI,IAAIP;oBACV;oBACAO;gBACF;gBACA,OAAO;oBACLM,UAAUjB,SAASe,YAAY,CAACL,MAAM;oBACtCM,KAAKJ;gBACP;YACF;;;YAEOtE,KAAAA;mBADP,AACA,yFADyF;YACzF,SAAOA,SAASnB,EAAE;gBAChB,IAAM+F,IAAIlB,SAASC,MAAM,CAAC9E;gBAC1B,IAAI+F,MAAM,MAAM;oBACd,OAAOA,EAAED,QAAQ,CAACxE,GAAG,GAAG,WAAWyE,EAAEF,GAAG,CAAC1E,QAAQ;gBACnD;YACF;;;YAEOK,KAAAA;mBADP,AACA,qFADqF;YACrF,SAAOA,YAAYxB,EAAE;gBACnB,IAAM+F,IAAIlB,SAASC,MAAM,CAAC9E;gBAC1B,IAAI+F,MAAM,MAAM;oBACd,OAAOA,EAAED,QAAQ,CAACrE,GAAG,GAAG,mBAAmBvC,MAAM8G,cAAc,CAACD,EAAEF,GAAG;gBACvE;YACF;;;;;AAEFhB,SAASe,YAAY,GAAG;IACtB;QAAEtE,KAAK;QAAYG,KAAK;QAAkCoE,KAAK;IAAG;IAClE;QAAEvE,KAAK;QAAWG,KAAK;QAAsBoE,KAAK;IAAI;IACtD;QAAEvE,KAAK;QAAUG,KAAK;QAAwCoE,KAAK;IAAI;IACvE;QAAEvE,KAAK;QAAYG,KAAK;QAAkCoE,KAAK;IAAI;IACnE;QAAEvE,KAAK;QAAYG,KAAK;QAAkCoE,KAAK;IAAG;IAClE;QAAEvE,KAAK;QAAQG,KAAK;QAA4BoE,KAAK;IAAG;IACxD;QAAEvE,KAAK;QAAUG,KAAK;QAA4BoE,KAAK;IAAG;IAC1D;QAAEvE,KAAK;QAAWG,KAAK;QAA4BoE,KAAK;IAAG;IAC3D;QAAEvE,KAAK;QAAgBG,KAAK;QAA+CoE,KAAK;IAAG;IACnF;QAAEvE,KAAK;QAAUG,KAAK;QAAkCoE,KAAK;IAAG;IAChE;QAAEvE,KAAK;QAAYG,KAAK;QAAkCoE,KAAK;IAAG;IAClE;QAAEvE,KAAK;QAAcG,KAAK;QAA+CoE,KAAK;IAAG;IACjF;QAAEvE,KAAK;QAAYG,KAAK;QAAkCoE,KAAK;IAAG;IAClE;QAAEvE,KAAK;QAAWG,KAAK;QAAkCoE,KAAK;IAAI;IAClE;QAAEvE,KAAK;QAAWG,KAAK;QAAwCoE,KAAK;IAAI;IACxE;QAAEvE,KAAK;QAAWG,KAAK;QAAkCoE,KAAK;IAAG;IACjE;QAAEvE,KAAK;QAASG,KAAK;QAA4BoE,KAAK;IAAG;IACzD;QAAEvE,KAAK;QAASG,KAAK;QAA4BoE,KAAK;IAAG;IACzD;QAAEvE,KAAK;QAASG,KAAK;QAAkCoE,KAAK;IAAG;IAC/D;QAAEvE,KAAK;QAAaG,KAAK;QAAwCoE,KAAK;IAAG;IACzE;QAAEvE,KAAK;QAAcG,KAAK;QAAyCoE,KAAK;IAAI;IAC5E;QAAEvE,KAAK;QAAeG,KAAK;QAAqDoE,KAAK;IAAI;IACzF;QAAEvE,KAAK;QAAcG,KAAK;QAA+CoE,KAAK;IAAI;IAClF;QAAEvE,KAAK;QAAaG,KAAK;QAA8CoE,KAAK;IAAI;IAChF;QAAEvE,KAAK;QAAUG,KAAK;QAA4BoE,KAAK;IAAG;IAC1D;QAAEvE,KAAK;QAAWG,KAAK;QAAwCoE,KAAK;IAAG;IACvE;QAAEvE,KAAK;QAAgBG,KAAK;QAAqDoE,KAAK;IAAG;IACzF;QAAEvE,KAAK;QAAWG,KAAK;QAAwCoE,KAAK;IAAG;IACvE;QAAEvE,KAAK;QAAYG,KAAK;QAAkCoE,KAAK;IAAI;IACnE;QAAEvE,KAAK;QAAYG,KAAK;QAAkCoE,KAAK;IAAI;IACnE;QAAEvE,KAAK;QAAWG,KAAK;QAAkCoE,KAAK;IAAI;IAClE;QAAEvE,KAAK;QAAYG,KAAK;QAAwCoE,KAAK;IAAG;IACxE;QAAEvE,KAAK;QAAWG,KAAK;QAAkCoE,KAAK;IAAG;IACjE;QAAEvE,KAAK;QAAWG,KAAK;QAAkCoE,KAAK;IAAG;IACjE;QAAEvE,KAAK;QAAWG,KAAK;QAAwCoE,KAAK;IAAG;IACvE;QAAEvE,KAAK;QAAUG,KAAK;QAAkCoE,KAAK;IAAG;IAChE;QAAEvE,KAAK;QAAUG,KAAK;QAA4BoE,KAAK;IAAE;IACzD;QAAEvE,KAAK;QAASG,KAAK;QAA4BoE,KAAK;IAAG;IACzD;QAAEvE,KAAK;QAASG,KAAK;QAA4BoE,KAAK;IAAE;IACxD;QAAEvE,KAAK;QAAUG,KAAK;QAAsBoE,KAAK;IAAG;CACrD;AACD,IAAIxH,UAAUwG;AAEd,oBAAoB;AACpB,IAAIoB,aAAa,EAAE;AACnB,IAAIC,oBAAoB;AACxB,IAAIC,aAAa;AACjB,IAAIC,kBAAkB,AAAC,aAAa,GAAG,IAAIT,KAAK,GAAIU,iBAAiB;AACrE,IAAIzG,sBAAQ;aAAM0G,OAmBJC,GAAG,EAAEC,KAAK,EAAEC,GAAG,EAAElE,GAAG;gCAnBhB+D;QAoBd,IAAI,CAACnG,GAAG,GAAGuG;QACX,IAAI,CAACxG,KAAK,GAAGwG;QACb,IAAI,CAACjG,IAAI,GAAGiG;QACZ,IAAI,CAAC/F,GAAG,GAAG+F;QACX,IAAIC,UAAU3F,MAAM,KAAK,GAAG;YAC1B,IAAI,CAAC4F,OAAO,CAACN,OAAOZ,KAAK,CAAC,aAAa,GAAG,IAAIC;QAChD,OAAO,IAAIY,AAAG,YAAHA,KAAeZ,OAAM;YAC9B,IAAIzG,MAAM2H,WAAW,CAACN,MAAM;gBAC1B,IAAI,CAACK,OAAO,CAACN,OAAOZ,KAAK,CAACa;YAC5B,OAAO;gBACL,MAAM;YACR;QACF,OAAO,IAAIO,MAAMC,OAAO,CAACR,QAAQA,IAAIvF,MAAM,IAAI,GAAG;YAChD,IAAI,CAACb,GAAG,GAAGoG,GAAG,CAAC,EAAE;YACjB,IAAI,CAACrG,KAAK,GAAGqG,GAAG,CAAC,EAAE;YACnB,IAAI,CAAC9F,IAAI,GAAG8F,GAAG,CAAC,EAAE;YAClB,IAAI,CAAC5F,GAAG,GAAG4F,IAAIvF,MAAM,GAAG,KAAKuF,GAAG,CAAC,EAAE,IAAID,OAAOlE,KAAK,CAAC,IAAI,CAAC3B,IAAI,EAAE,IAAI,CAACP,KAAK,EAAE,IAAI,CAACC,GAAG;QACrF,OAAO,IAAIoG,OAAOrH,MAAM8H,QAAQ,CAACT,MAAM;YACrC,IAAMR,IAAI,IAAIJ,KAAKY;YACnB,IAAIrH,MAAM2H,WAAW,CAACd,IAAI;gBACxB,IAAI,CAACa,OAAO,CAACN,OAAOZ,KAAK,CAACK;YAC5B,OAAO;gBACL,MAAM,0CAA0CQ,MAAM;YACxD;QACF,OAAO,IAAIrH,MAAM+H,QAAQ,CAACV,MAAM;YAC9B,IAAII,UAAU3F,MAAM,KAAK,GAAG;gBAC1B,IAAI,CAAC4F,OAAO,CAACL;YACf,OAAO;gBACL,IAAI,CAAC9F,IAAI,GAAG8F;gBACZ,IAAI,CAACrG,KAAK,GAAGsG,SAAS;gBACtB,IAAI,CAACrG,GAAG,GAAGsG,OAAO;gBAClB,IAAI,CAAC9F,GAAG,GAAG4B,OAAO+D,OAAOlE,KAAK,CAAC,IAAI,CAAC3B,IAAI,EAAE,IAAI,CAACP,KAAK,EAAE,IAAI,CAACC,GAAG;YAChE;QACF,OAAO,IAAI,CAAA,OAAOoG,oCAAP,SAAOA,IAAE,MAAM,UAAU;YAClC,IAAMW,SAASX;YACf,IAAIrH,MAAM+H,QAAQ,CAACC,OAAOtF,IAAI,GAAG;gBAC/B,IAAI,CAACzB,GAAG,GAAG+G,OAAOT,GAAG,IAAI;gBACzB,IAAI,CAACvG,KAAK,GAAGgH,OAAOV,KAAK,IAAI;gBAC7B,IAAI,CAAC/F,IAAI,GAAGyG,OAAOtF,IAAI;gBACvB,IAAI,CAACjB,GAAG,GAAGuG,OAAO3E,GAAG,IAAI+D,OAAOlE,KAAK,CAAC,IAAI,CAAC3B,IAAI,EAAE,IAAI,CAACP,KAAK,EAAE,IAAI,CAACC,GAAG;YACvE;QACF;;;;YAEF,4DAA4D,GAC5DyG,KAAAA;mBAAAA,SAAAA,QAAQO,QAAQ;gBACd,IAAMC,MAAMd,OAAOM,OAAO,CAACO;gBAC3B,IAAI,CAAC1G,IAAI,GAAG2G,IAAIxF,IAAI;gBACpB,IAAI,CAAC1B,KAAK,GAAGkH,IAAIZ,KAAK;gBACtB,IAAI,CAACrG,GAAG,GAAGiH,IAAIX,GAAG;gBAClB,IAAI,CAAC9F,GAAG,GAAGwG;YACb;;;YACA;uDACqD,GACrDE,KAAAA;mBAAAA,SAAAA;gBACE,OAAOf,OAAOgB,SAAS,CAAC,IAAI,CAAC3G,GAAG;YAClC;;;YACA;;GAEC,GACDkD,KAAAA;mBAAAA,SAAAA;gBACE,OAAOvB,KAAKC,GAAG,CAAC,IAAI,CAAC5B,GAAG,GAAG;YAC7B;;;YAII4G,KAAAA;iBAHJ,AAGA;;GADC,GACD;gBACE,OAAO,IAAI,CAAC1D,YAAY;YAC1B;;;YACA,uGAAuG,GACvG2D,KAAAA;mBAAAA,SAAAA,QAAQC,IAAI;gBACV,OAAO,IAAInB,OAAO,IAAI,CAAC3F,GAAG,GAAG8G;YAC/B;;;YACA;;;;;;GAMC,GACDC,KAAAA;mBAAAA,SAAAA,UAAUC,MAAM;gBACd,IAAI/F,OAAO,IAAI,CAACnB,IAAI,EAAE+F,QAAQ,IAAI,CAACtG,KAAK,EAAEuG,MAAM,IAAI,CAACtG,GAAG,EAAEyH,MAAMtB,OAAOuB,WAAW,CAACjG;gBACnF,IAAK,IAAIV,IAAI,GAAGA,IAAIoB,KAAKC,GAAG,CAACoF,SAASzG,IAAK;oBACzC,IAAIyG,SAAS,GAAG;wBACdnB,SAAS;wBACT,IAAIA,QAAQoB,KAAK;4BACfpB,QAAQ;wBACV;wBACA,IAAIA,UAAU,GAAG;4BACf5E,QAAQ;4BACRgG,MAAMtB,OAAOuB,WAAW,CAACjG;wBAC3B;oBACF,OAAO,IAAI+F,SAAS,GAAG;wBACrBnB,SAAS;wBACT,IAAIA,UAAU,GAAG;4BACfA,QAAQoB;wBACV;wBACA,IAAIpB,UAAU,GAAG;4BACf5E,QAAQ;4BACRgG,MAAMtB,OAAOuB,WAAW,CAACjG;wBAC3B;oBACF;gBACF;gBACA,IAAI6E,QAAQ,MAAMH,OAAOwB,UAAU,CAAClG,MAAM4E,WAAW,IAAI;oBACvDC,MAAM;gBACR;gBACA,OAAO,IAAIH,OAAO1E,MAAM4E,OAAOC;YACjC;;;YACA;;;;;;GAMC,GACDsB,KAAAA;mBAAAA,SAAAA,SAASC,KAAK;gBACZ,IAAIpG,OAAO,IAAI,CAACnB,IAAI,GAAGuH,OAAOxB,QAAQ,IAAI,CAACtG,KAAK,EAAEuG,MAAM,IAAI,CAACtG,GAAG;gBAChE,IAAIqG,UAAU,MAAM,CAACF,OAAO5D,SAAS,CAACd,OAAO;oBAC3C4E,QAAQ;gBACV,OAAO,IAAIA,UAAU,KAAKC,QAAQ,MAAM,CAACH,OAAOtE,cAAc,CAACJ,OAAO;oBACpE4E,QAAQ;oBACRC,MAAM;gBACR,OAAO,IAAID,UAAU,KAAKC,QAAQ,MAAMH,OAAOpE,aAAa,CAACN,OAAO;oBAClE4E,QAAQ;oBACRC,MAAM;gBACR;gBACA,IAAIA,QAAQ,MAAMH,OAAOwB,UAAU,CAAClG,MAAM4E,WAAW,IAAI;oBACvDC,MAAM;gBACR;gBACA,OAAO,IAAIH,OAAO1E,MAAM4E,OAAOC;YACjC;;;YACAwB,KAAAA;mBAAAA,SAAAA,iBAAiBN,MAAM;gBACrB,IAAMO,UAAU,IAAIvC,KAAK,IAAI,CAAC0B,OAAO,GAAGc,OAAO;gBAC/CD,QAAQE,QAAQ,CAACF,QAAQG,QAAQ,KAAKV;gBACtC,OAAO,IAAIrB,OAAO4B;YACpB;;;YACAI,KAAAA;mBAAAA,SAAAA,gBAAgBN,KAAK;gBACnB,IAAME,UAAU,IAAIvC,KAAK,IAAI,CAAC0B,OAAO,GAAGc,OAAO;gBAC/CD,QAAQK,WAAW,CAACL,QAAQM,WAAW,KAAKR;gBAC5C,OAAO,IAAI1B,OAAO4B;YACpB;;;YACA;;;;KAIG,GACHO,KAAAA;mBAAAA,SAAAA,SAASzI,EAAE;gBACT,OAAOA,GAAGW,GAAG,GAAG,IAAI,CAACA,GAAG;YAC1B;;;YACA;;;;;;;;KAQG,GACH+H,KAAAA;mBAAAA,SAAAA,WAAW1I,EAAE;gBACX,IAAIwG,QAAQxG,GAAGE,KAAK,EAAE0B,OAAO5B,GAAGS,IAAI,EAAEkH,SAAS;gBAC/C,MAAO,CAAE/F,CAAAA,SAAS,IAAI,CAACnB,IAAI,IAAI+F,UAAU,IAAI,CAACtG,KAAI,AAAC,EAAG;oBACpD,IAAI,IAAI,CAACS,GAAG,GAAGX,GAAGW,GAAG,EAAE;wBACrBgH;wBACAnB;wBACA,IAAIA,QAAQF,OAAOuB,WAAW,CAACjG,OAAO;4BACpC4E,QAAQ;wBACV,OAAO,IAAIA,UAAU,GAAG;4BACtB5E;wBACF;oBACF,OAAO;wBACL+F;wBACAnB;wBACA,IAAIA,QAAQ,GAAG;4BACbA,QAAQF,OAAOuB,WAAW,CAACjG;wBAC7B,OAAO,IAAI4E,UAAU,GAAG;4BACtB5E;wBACF;oBACF;gBACF;gBACA,OAAO+F;YACT;;;YACA;;;KAGG,GACHgB,KAAAA;mBAAAA,SAAAA,eAAe3I,EAAE;gBACf,IAAI2H,SAAS,IAAI,CAACe,UAAU,CAAC1I;gBAC7B,IAAI2H,UAAU,KAAK,IAAI,CAACxH,GAAG,GAAGH,GAAGG,GAAG,EAAE;oBACpCwH;gBACF,OAAO,IAAIA,SAAS,KAAK,IAAI,CAACxH,GAAG,GAAGH,GAAGG,GAAG,EAAE;oBAC1CwH;gBACF;gBACA,OAAOA;YACT;;;YACA;;;;;;;sBAOoB,GACpBiB,KAAAA;mBAAAA,SAAAA,UAAU5I,EAAE;gBACV,IAAI6I,OAAO7I,GAAGS,IAAI,GAAG,IAAI,CAACA,IAAI;gBAC9B,IAAI,IAAI,CAACP,KAAK,GAAGF,GAAGE,KAAK,IAAI,IAAI,CAACA,KAAK,KAAKF,GAAGE,KAAK,IAAI,IAAI,CAACC,GAAG,GAAGH,GAAGG,GAAG,EAAE;oBACzE0I;gBACF;gBACA,OAAOA;YACT;;;YACA;;sBAEoB,GACpBC,KAAAA;mBAAAA,SAAAA,cAAc9I,EAAE;gBACd,IAAI6I,OAAO7I,GAAGS,IAAI,GAAG,IAAI,CAACA,IAAI;gBAC9B,IAAIoI,QAAQ,KAAM,CAAA,IAAI,CAAC3I,KAAK,GAAGF,GAAGE,KAAK,IAAI,IAAI,CAACA,KAAK,KAAKF,GAAGE,KAAK,IAAI,IAAI,CAACC,GAAG,GAAGH,GAAGG,GAAE,AAAC,GAAG;oBACxF0I;gBACF,OAAO,IAAIA,OAAO,KAAM,CAAA,IAAI,CAAC3I,KAAK,GAAGF,GAAGE,KAAK,IAAI,IAAI,CAACA,KAAK,KAAKF,GAAGE,KAAK,IAAI,IAAI,CAACC,GAAG,GAAGH,GAAGG,GAAE,AAAC,GAAG;oBAC9F0I;gBACF;gBACA,OAAOA;YACT;;;YACA;;;;GAIC,GACD1H,KAAAA;mBAAAA,SAAAA,SAAS4H,aAAa,EAAEC,cAAc;gBACpC,OAAO,AAACD,CAAAA,gBAAgBC,iBAAiB,MAAM,MAAMzK,aAAa,CAAC,IAAI,CAACsF,YAAY,GAAG,GAAG,KAAI,IAAK,QAAQ3E,MAAM+J,UAAU,CAAC,IAAI,CAAC9I,GAAG,IAAI,SAAS,IAAI,CAAC+I,SAAS;YACjK;;;YACA;;;GAGC,GACDC,KAAAA;mBAAAA,SAAAA,cAAcC,OAAO;gBACnB,OAAO,AAACA,CAAAA,UAAU7K,aAAa,CAAC,IAAI,CAACsF,YAAY,GAAG,GAAG,MAAM,EAAC,IAAKpF,eAAe,CAAC,IAAI,CAACyB,KAAK,CAAC,GAAG,MAAM,IAAI,CAACC,GAAG,CAACgB,QAAQ,KAAK,OAAO,IAAI,CAACV,IAAI,CAACU,QAAQ;YACxJ;;;YACA;;;GAGC,GACD+H,KAAAA;mBAAAA,SAAAA;oBAAUG,WAAAA,iEAAW;gBACnB,OAAO5K,eAAe,CAAC,IAAI,CAACyB,KAAK,CAAC,GAAI,CAAA,IAAI,CAACA,KAAK,KAAK,MAAMoG,OAAO5D,SAAS,CAAC,IAAI,CAACjC,IAAI,IAAI,aAAa,GAAE,IAAM4I,CAAAA,WAAW,IAAI,CAAC5I,IAAI,CAACU,QAAQ,KAAK,EAAC;YACnJ;;;YACA;;;GAGC,GACDK,KAAAA;mBAAAA,SAAAA,YAAYuH,aAAa;gBACvB,OAAO,AAAC,CAAA,CAACA,gBAAgBvK,aAAa,CAAC,IAAI,CAACqF,YAAY,GAAG,GAAG,MAAM,EAAC,IAAK3E,MAAM8G,cAAc,CAAC,IAAI,CAAC7F,GAAG,IAAI,MAAMzB,eAAe,CAAC,IAAI,CAACwB,KAAK,CAAC,GAAI,CAAA,IAAI,CAACA,KAAK,KAAK,MAAMoG,OAAO5D,SAAS,CAAC,IAAI,CAACjC,IAAI,IAAI,qCAAqC,GAAE,IAAKvB,MAAM8G,cAAc,CAAC,IAAI,CAACvF,IAAI,GAAG;YAClR;;;YACA,yGAAyG,GACzG6I,KAAAA;mBAAAA,SAAAA;gBACE,IAAIC,YAAY;gBAChB,IAAI,IAAI,CAACrJ,KAAK,KAAK,KAAK,IAAI,CAACC,GAAG,GAAG,MAAM,IAAI,CAACD,KAAK,KAAK,KAAK,IAAI,CAACA,KAAK,KAAK,KAAK,IAAI,CAACC,GAAG,GAAG,GAAG;oBAC7F,IAAMqJ,QAAQ,IAAIlD,OAAO,IAAI,CAAC7F,IAAI,EAAE,GAAG;oBACvC8I,YAAYC,MAAMf,QAAQ,CAAC,IAAI;gBACjC;gBACA,OAAOc;YACT;;;YACA;;;GAGC,GACDE,KAAAA;mBAAAA,SAAAA,qBAAqBxJ,OAAO;gBAC1B,OAAO,IAAI,CAACyJ,QAAQ,CAACzJ,YAAY,IAAI,CAACC,KAAK,KAAK,KAAK;oBAAC;oBAAI;oBAAI;oBAAI;oBAAI;iBAAG,CAACyJ,QAAQ,CAAC,IAAI,CAACxJ,GAAG,KAAK,IAAI,CAACD,KAAK,KAAK,KAAK;oBAAC;oBAAI;oBAAI;oBAAI;oBAAI;oBAAI;iBAAG,CAACyJ,QAAQ,CAAC,IAAI,CAACxJ,GAAG;YAChK;;;YACA;;;GAGC,GACDuJ,KAAAA;mBAAAA,SAAAA,SAASzJ,OAAO;gBACd,IAAMwG,MAAM,IAAI,CAACtG,GAAG;gBACpB,OAAQ,IAAI,CAACD,KAAK;oBAChB,KAAK;wBACH,IAAIuG,QAAQ,MAAMA,QAAQ,IAAI,OAAO;wBACrC,IAAI,CAACxG,WAAYwG,CAAAA,QAAQ,MAAMA,QAAQ,EAAC,GAAI,OAAO;wBACnD;oBACF,KAAK;wBACH,IAAIA,QAAQ,KAAK,CAACxG,WAAWwG,QAAQ,GAAG,OAAO;wBAC/C;oBACF,KAAK;wBACH,IAAI;4BAAC;4BAAG;4BAAG;4BAAI;4BAAI;yBAAG,CAACkD,QAAQ,CAAClD,MAAM;4BACpC,OAAO;wBACT;wBACA,IAAI,CAACxG,WAAYwG,CAAAA,QAAQ,MAAMA,QAAQ,EAAC,GAAI,OAAO;wBACnD;gBACJ;gBACA,OAAO;YACT;;;YACA,2EAA2E,GAC3EmD,KAAAA;mBAAAA,SAAAA;gBACE,OAAO,IAAI,CAAC1J,KAAK,KAAK,KAAKhB,MAAM2K,GAAG,CAAC,IAAI,CAAC1J,GAAG,EAAE,IAAI,OAAO,IAAI,CAACD,KAAK,KAAK,KAAK,IAAI,CAACC,GAAG,KAAK,KAAK,IAAI,CAACD,KAAK,KAAK,KAAK,IAAI,CAACC,GAAG,KAAK,MAAM,IAAI,CAACD,KAAK,KAAK,KAAKhB,MAAM2K,GAAG,CAAC,IAAI,CAAC1J,GAAG,EAAE,GAAG,IAAI;YACxL;;;YACA,mEAAmE,GACnE2J,KAAAA;mBAAAA,SAAAA;gBACE,IAAMC,MAAM,IAAI,CAAClG,YAAY;gBAC7B,IAAIkG,QAAQ,GAAG;oBACb,OAAO;gBACT,OAAO,IAAIA,QAAQ,GAAG;oBACpB,OAAO;gBACT;gBACA,OAAO,IAAI,CAACH,YAAY;YAC1B;;;YACA,6EAA6E,GAC7EI,KAAAA;mBAAAA,SAAAA,kBAAkB/J,OAAO;gBACvB,IAAI8J,MAAM,IAAI,CAAClG,YAAY;gBAC3B,OACE,kDAAkD;gBAClD;oBAAC;oBAAG;iBAAE,CAAC8F,QAAQ,CAACI,QAAQ,sBAAsB;gBAC9C,IAAI,CAACH,YAAY,MAAM,mEAAmE;gBACzFG,CAAAA,QAAQ,KAAKA,QAAQ,KAAM,CAAA,CAAC9J,WAAW,IAAI,CAACC,KAAK,KAAK,CAAA,CAAC,KAAM,uCAAuC;gBACrG,IAAI,CAACC,GAAG,KAAK;YAEjB;;;YACA,2FAA2F,GAC3F8J,KAAAA;mBAAAA,SAAAA,kBAAkBC,QAAQ,EAAEC,eAAe;gBACzC,IAAI,CAACD,UAAU;oBACb,MAAM;gBACR;gBACA,IAAI,IAAI,CAACJ,iBAAiB,IAAI;oBAC5B,OAAOzK,OAAO4K,iBAAiB,CAAC,IAAI,EAAEC;gBACxC,OAAO,IAAIC,iBAAiB;oBAC1B,OAAO;gBACT,OAAO;oBACL,MAAM,2BAA2B,IAAI,CAAChJ,QAAQ;gBAChD;YACF;;;YACA,yDAAyD,GACzDiJ,KAAAA;mBAAAA,SAAAA,SAASnK,OAAO;gBACd,OAAO,IAAIhB,MAAM,IAAI,EAAEgB;YACzB;;;YACA,6DAA6D,GAC7DoK,KAAAA;mBAAAA,SAAAA,cAAcpK,OAAO;gBACnB,OAAOlB,WAAW6E,SAAS,CAAC,IAAI,EAAE3D;YACpC;;;YACA;;oFAEkF,GAClFqK,KAAAA;mBAAAA,SAAAA,iBAAiBJ,QAAQ,EAAEK,eAAe;gBACxC,IAAI,CAACL,UAAU;oBACb,MAAM;gBACR;gBACA,OAAO7K,OAAOmL,WAAW,CAAC,IAAI,EAAEN,UAAU,CAACK;YAC7C;;;YACA;;yCAEuC,GACvCE,KAAAA;mBAAAA,SAAAA,WAAWP,QAAQ;gBACjB,IAAI,CAACA,UAAU;oBACb,MAAM;gBACR;gBACA,OAAO7K,OAAOoL,UAAU,CAAC,IAAI,EAAEP;YACjC;;;YACA,yGAAyG,GACzGQ,KAAAA;mBAAAA,SAAAA,cAAcR,QAAQ,EAAES,MAAM;gBAC5B,IAAI,CAACT,UAAU;oBACb,MAAM;gBACR;gBACA,OAAO7K,OAAOqL,aAAa,CAAC,IAAI,EAAER,UAAUS;YAC9C;;;YACA,gEAAgE,GAChEC,KAAAA;mBAAAA,SAAAA;gBACE,OAAOvM,QAAQ8C,QAAQ,CAAC,IAAI,KAAK;YACnC;;;YACA,yDAAyD,GACzD0J,KAAAA;mBAAAA,SAAAA;gBACE,OAAOxM,QAAQmD,WAAW,CAAC,IAAI,KAAK;YACtC;;;;YAqBOsJ,KAAAA;mBApBP,AAoBA;;;;;;;;;;;;;;;;;;;kHADgH,GAChH,SAAOA,QAAQvE,GAAG,EAAEC,KAAK,EAAEC,GAAG,EAAElE,GAAG;gBACjC,IAAIoE,UAAU3F,MAAM,KAAK,GAAG;oBAC1B,OAAO,IAAIsF;gBACb,OAAO,IAAIpH,MAAM+H,QAAQ,CAACV,QAAQI,UAAU3F,MAAM,KAAK,GAAG;oBACxD,OAAO,IAAIsF,OAAOC,KAAK,GAAG;gBAC5B,OAAO;oBACL,OAAO,IAAID,OAAOC,KAAKC,OAAOC,KAAKlE;gBACrC;YACF;;;YACOwI,KAAAA;mBAAP,SAAOA;gBACL,OAAO,IAAIzE;YACb;;;YAEOM,KAAAA;mBADP,AACA,wEADwE,GACxE,SAAOA,QAAQoE,MAAM;gBACnB,IAAIpJ,OAAO,OAAO1C,MAAMoF,KAAK,CAAC0G,SAAUA,CAAAA,SAAS,IAAI,MAAM,GAAE,IAAKxE,OAAOC;gBACzE,MAAOuE,UAAU1E,OAAOlE,KAAK,CAACR,OAAO,GAAG,GAAG,GAAI;oBAC7CA;gBACF;gBACA4E,QAAQwE,SAAS1E,OAAOlE,KAAK,CAACR,MAAM,GAAG,KAAK,IAAI;gBAChD,MAAOoJ,SAAS1E,OAAOlE,KAAK,CAACR,MAAM4E,OAAOF,OAAOwB,UAAU,CAAClG,MAAM4E,QAAS;oBACzEA;gBACF;gBACAC,MAAMuE,SAAS1E,OAAOlE,KAAK,CAACR,MAAM4E,OAAO,KAAK;gBAC9C,OAAO;oBAAE5E,MAAAA;oBAAM4E,OAAAA;oBAAOC,KAAAA;gBAAI;YAC5B;;;YAKOf,KAAAA;mBAJP,AAIA;;;GADC,GACD,SAAOA,MAAM/D,IAAI;gBACf,IAAMsJ,KAAKtJ,KAAKwG,OAAO,KAAKxG,KAAK0E,iBAAiB,KAAK,KAAK6E,cAAc5I,KAAK6I,KAAK,CAACF,KAAK9E;gBAC1F,OAAOD,oBAAoBgF;YAC7B;;;YAEO9I,KAAAA;mBADP,AACA,yDADyD,GACzD,SAAOA,MAAMR,IAAI,EAAE4E,KAAK,EAAEC,GAAG;gBAC3B,IAAI2E,YAAY3E;gBAChB,IAAID,QAAQ,GAAG;oBACb,IAAI6E,IAAI;oBACR,MAAOA,KAAK/E,OAAOuB,WAAW,CAACjG,MAAO;wBACpCwJ,aAAa9E,OAAOwB,UAAU,CAAClG,MAAMyJ;wBACrCA;oBACF;oBACAA,IAAI;oBACJ,MAAOA,IAAI7E,MAAO;wBAChB4E,aAAa9E,OAAOwB,UAAU,CAAClG,MAAMyJ;wBACrCA;oBACF;gBACF,OAAO;oBACL,IAAIA,KAAI;oBACR,MAAOA,KAAI7E,MAAO;wBAChB4E,aAAa9E,OAAOwB,UAAU,CAAClG,MAAMyJ;wBACrCA;oBACF;gBACF;gBACA,OAAOD,YAAa9E,CAAAA,OAAOgF,KAAK,CAAC1J,QAAQ,CAAC,OAAM;YAClD;;;YAIO0F,KAAAA;mBAHP,AAGA;;GADC,GACD,SAAOA,UAAU/E,GAAG;gBAClB,IAAMoI,SAASvE,kBAAkB,IAAI,IAAI,GAAGmF,iBAAiBhJ,MAAM2D,oBAAoByE;gBACvF,OAAO,IAAIhF,KAAK4F,iBAAiBpF;YACnC;;;YAEO2B,KAAAA;mBADP,AACA,+EAD+E,GAC/E,SAAOA,WAAWlG,IAAI,EAAE4E,KAAK;gBAC3B,OAAQA;oBACN,0DAA0D;oBAC1D,KAAK;oBACL,KAAK;oBACL,KAAK;oBACL,KAAK;oBACL,KAAK;wBACH,OAAO;oBACT,kEAAkE;oBAClE,KAAK;oBACL,KAAK;oBACL,KAAK;oBACL,KAAK;oBACL,KAAK;wBACH,OAAO;oBACT,uDAAuD;oBACvD,KAAK;wBACH,OAAOF,OAAOtE,cAAc,CAACJ,QAAQ,KAAK;oBAC5C,qDAAqD;oBACrD,KAAK;wBACH,OAAO0E,OAAOpE,aAAa,CAACN,QAAQ,KAAK;oBAC3C,4CAA4C;oBAC5C,KAAK;wBACH,OAAO0E,OAAO5D,SAAS,CAACd,QAAQ,KAAK;gBACzC;gBACA,OAAO;YACT;;;YAEO0J,KAAAA;mBADP,AACA,gFADgF,GAChF,SAAOA,MAAM1J,IAAI;gBACf,IAAM4J,SAASvF,WAAWwF,IAAI,CAAC,SAACC;2BAAM,CAAC,CAACA,KAAKA,EAAE9J,IAAI,KAAKA;;gBACxD,IAAI4J,QAAQ;oBACV,OAAOA,OAAOG,OAAO;gBACvB;gBACA,IAAMhE,SAASzI,MAAMoF,KAAK,CACxB,MAAMpF,MAAMoF,KAAK,CAAC,AAAC1C,CAAAA,OAAO,CAAA,IAAK,MAAM,yBAAyB;gBAC9D,KAAM,CAAA,AAACA,CAAAA,OAAO,CAAA,IAAK,EAAC,IAAK,AACzB,gCADyD;gBACxD,CAAA,IAAK,CAAA,AAACA,CAAAA,OAAO,CAAA,IAAK,EAAC,IAAK,CAAA,IAAK,KAC7BgK,QAAQ,MAAM,MAAOjE,CAAAA,SAAS,IAAG,GAAIkE,QAAQ,IAAI,KAAKlE,SAAS,MAAMzI,MAAMoF,KAAK,CAACqD,SAAS,QAAQzI,MAAMoF,KAAK,CAACsH,QAAQ,OAAOE,UAAU5M,MAAMoF,KAAK,CAAC,IAAI,KAAKqD,SAASkE,QAAQ,KAAKE,YAAY,OAAQF,CAAAA,QAAQ,EAAC,IAAKD,QAAQ;gBAC/N,IAAII;gBACJ,IAAID,aAAa,SAASD,UAAU,MAAM,KAAKC,aAAa,QAAQ,CAACzF,OAAO5D,SAAS,CAACd,SAASkK,UAAU,MAAM,KAAKC,aAAa,SAASzF,OAAO5D,SAAS,CAACd,OAAO,IAAI;oBACpKoK,SAASF,UAAU;gBACrB,OAAO;oBACLE,SAASF;gBACX;gBACA,IAAI5M,MAAM2K,GAAG,CAACmC,SAAS,GAAG,GAAG,GAAG,IAAI;oBAClCA,UAAU;gBACZ;gBACA/F,WAAWgG,IAAI,CAAC;oBAAErK,MAAAA;oBAAM+J,SAASK;gBAAO;gBACxC,OAAOA;YACT;;;YAEOE,KAAAA;mBADP,AACA,2CAD2C,GAC3C,SAAOA,UAAUtK,IAAI;gBACnB,OAAO0E,OAAOgF,KAAK,CAAC1J,OAAO,KAAK0E,OAAOgF,KAAK,CAAC1J;YAC/C;;;YAEOI,KAAAA;mBADP,AACA,wDADwD,GACxD,SAAOA,eAAeJ,IAAI;gBACxB,OAAO0E,OAAO4F,SAAS,CAACtK,QAAQ,OAAO;YACzC;;;YAEOM,KAAAA;mBADP,AACA,sDADsD,GACtD,SAAOA,cAAcN,IAAI;gBACvB,OAAO0E,OAAO4F,SAAS,CAACtK,QAAQ,OAAO;YACzC;;;YAEOc,KAAAA;mBADP,AACA,6CAD6C,GAC7C,SAAOA,UAAUd,IAAI;gBACnB,OAAO,AAAC,CAAA,IAAIA,OAAO,CAAA,IAAK,KAAK;YAC/B;;;YAEOiG,KAAAA;mBADP,AACA,mCADmC,GACnC,SAAOA,YAAYjG,IAAI;gBACrB,OAAO0E,OAAO5D,SAAS,CAACd,QAAQ,KAAK;YACvC;;;;;AAGF,qBAAqB;AACrB,IAAIvC,uBAAS;aAAM8M;gCAAAA;;;;YAUV3B,KAAAA;mBATP,AASA;;;;;;;;GADC,GACD,SAAOA,YAAY7I,IAAI,EAAEuI,QAAQ;oBAAEkC,oBAAAA,iEAAoB;gBACrD,IAAIzK,AAAI,YAAJA,MAAgB/B,QAAO;oBACzB+B,OAAOA,KAAK0F,OAAO;gBACrB,OAAO,IAAI1F,AAAI,YAAJA,MAAgB0K,SAAQ;oBACjC1K,OAAO,IAAIgE,KAAKhE;gBAClB;gBACA,IAAI,CAACzC,MAAM2H,WAAW,CAAClF,OAAO;oBAC5B,MAAM;gBACR;gBACA,IAAI2K,SAASC,QAAQC,YAAY,IAAIC,YAAY,IAAIC,UAAU,GAAGC,YAAY,GAAGC,WAAW,GAAGC,SAAS,GAAGC,SAAS,GAAGC,SAAS,GAAGC,SAAS,GAAGC,SAAS,GAAGC,SAAS,GAAGC,QAAQ,GAAGC,SAAS,GAAGC,QAAQ,GAAGC,QAAQ,GAAGC,OAAO,GAAGC,UAAU,GAAGC,SAAS,GAAGC,QAAQ,GAAGC,OAAO,GAAGC,QAAQ,GAAGC,OAAO,GAAGC,SAAS,GAAGC,QAAQ;gBACrT,IAAMtH,MAAM0F,QAAQ6B,SAAS,CAACrM,OAAOsM,cAAc,SAASC,oBAAoB/B,QAAQgC,QAAQ,CAAC3B,WAAWC,aAAaN,QAAQiC,QAAQ,CAAC9L,KAAK+L,IAAI,CAACJ,cAAeA,CAAAA,cAAe7B,CAAAA,oBAAoBlC,SAASoE,SAAS,GAAG,CAAA,CAAC;gBAC5N9B,YAAYlK,KAAK6I,KAAK,CAAC+C;gBACvBzB,YAAY,AAACyB,CAAAA,oBAAoB1B,SAAQ,IAAK;gBAC9CO,SAASzK,KAAKiM,GAAG,CAAC,UAAUpC,QAAQgC,QAAQ,CAAC3B,WAAWC;gBACxDE,YAAYzC,SAASsE,SAAS;gBAC9B9B,UAAUC,YAAY;gBACtBC,WAAW1C,SAASuE,QAAQ;gBAC5B5B,SAASvK,KAAKiM,GAAG,CAAC,UAAU3B;gBAC5BE,SAASxK,KAAKoM,GAAG,CAAC,UAAU9B;gBAC5BgB,QAAQnH,MAAM,AAAC,CAAA,IAAIiG,OAAM,IAAK;gBAC9BmB,OAAOpH,MAAM,AAAC,CAAA,KAAKiG,OAAM,IAAK;gBAC9BQ,SAASf,QAAQwC,CAAC,CAACf;gBACnBR,SAASjB,QAAQyC,CAAC,CAAC1B;gBACnBC,QAAQhB,QAAQwC,CAAC,CAACd;gBAClBR,QAAQlB,QAAQyC,CAAC,CAACzB;gBAClBG,QAAQ,WAAWhL,KAAKuM,IAAI,CAAC,UAAUvM,KAAKwM,GAAG,CAAC,UAAU1B;gBAC1DG,OAAO,WAAWjL,KAAKuM,IAAI,CAAC,UAAUvM,KAAKwM,GAAG,CAAC,UAAUzB;gBACzD,IAAI/K,KAAKC,GAAG,CAAC+K,QAAQ,MAAMF,UAAU,IAAI;oBACvCE,SAAS;gBACX;gBACA,IAAIA,QAAQ,KAAK;oBACfA,SAAS;gBACX;gBACA,IAAIhL,KAAKC,GAAG,CAACgL,OAAO,MAAMF,SAAS,IAAI;oBACrCE,QAAQ;gBACV;gBACA,IAAIA,OAAO,KAAK;oBACdA,QAAQ;gBACV;gBACAC,UAAUF,QAAQ;gBAClBN,SAAS,UAAU1K,KAAKoM,GAAG,CAAC,UAAUtB;gBACtCH,SAAS3K,KAAKyM,IAAI,CAAC,IAAI/B,SAASA;gBAChCU,QAAQ,AAACX,CAAAA,SAASC,SAASF,MAAK,IAAMG,CAAAA,SAASJ,MAAK;gBACpDY,SAASF,OAAO;gBAChBP,SAAS,UAAU1K,KAAKoM,GAAG,CAAC,UAAUrB;gBACtCJ,SAAS3K,KAAKyM,IAAI,CAAC,IAAI/B,SAASA;gBAChCW,OAAO,AAACZ,CAAAA,SAASC,SAASF,MAAK,IAAMG,CAAAA,SAASJ,MAAK;gBACnD,IAAIvK,KAAKC,GAAG,CAACmL,UAAU,GAAG;oBACxBA,QAAQ,WAAWpL,KAAK+L,IAAI,CAACX;oBAC7BI,SAAS,AAAC,CAAA,MAAMJ,KAAI,IAAK,KAAKF,UAAUrB,QAAQ6C,GAAG,CAACpB,SAASlB;oBAC7DJ,UAAUH,QAAQ8C,OAAO,CAACnB,SAAS5D,SAASgF,SAAS,EAAEvN,MAAMuI;oBAC7D,IAAIoC,QAAQ6C,IAAI,GAAG,IAAI;wBACrB7C,QAAQ6C,IAAI,IAAI;oBAClB;gBACF;gBACA,IAAI7M,KAAKC,GAAG,CAACoL,SAAS,GAAG;oBACvBA,OAAO,WAAWrL,KAAK+L,IAAI,CAACV;oBAC5BI,QAAQL,QAAQ,KAAKD,SAAStB,QAAQ6C,GAAG,CAACnB,QAAQnB;oBAClDH,SAASJ,QAAQ8C,OAAO,CAAClB,QAAQ7D,SAASgF,SAAS,EAAEvN,MAAMuI;oBAC3D,IAAIqC,OAAO4C,IAAI,GAAG,KAAK5C,OAAO4C,IAAI,GAAG,IAAI;wBACvC5C,OAAO4C,IAAI,IAAI;oBACjB;gBACF;gBACA,OAAO;oBAAE7C,SAAAA;oBAASC,QAAAA;gBAAO;YAC3B;;;YAKO9B,KAAAA;mBAJP,AAIA;;;GADC,GACD,SAAOA,WAAW9I,IAAI,EAAEuI,QAAQ;gBAC9B,OAAOiC,QAAQiD,sBAAsB,CACnCjD,QAAQ3B,WAAW,CAAC7I,MAAMuI,UAAU;YAExC;;;YAIOkF,KAAAA;mBAHP,AAGA;;GADC,GACD,SAAOA,uBAAuBC,QAAQ;gBACpC,IAAMC,OAAOD,SAAS/C,OAAO,EAAEiD,MAAMF,SAAS9C,MAAM;gBACpD,IAAI+C,SAAS,KAAK,KAAKE,MAAMF,KAAKH,IAAI,KAAKI,QAAQ,KAAK,KAAKC,MAAMD,IAAIJ,IAAI,GAAG;oBAC5E,OAAO;wBAAEA,MAAMzI;wBAAK+I,QAAQ/I;oBAAI;gBAClC;gBACA,IAAMgJ,QAAQxQ,MAAMoF,KAAK,CAAC,AAACpF,CAAAA,MAAMyQ,YAAY,CAACJ,OAAOrQ,MAAMyQ,YAAY,CAACL,KAAI,IAAK;gBACjF,OAAOpQ,MAAM0Q,UAAU,CAACN,MAAMI;YAChC;;;YAMOhF,KAAAA;mBALP,AAKA;;;;GADC,GACD,SAAOA,cAAc/I,IAAI,EAAEuI,QAAQ,EAAES,MAAM;gBACzC,OAAOwB,QAAQ0D,yBAAyB,CACtC1D,QAAQ3B,WAAW,CAAC7I,MAAMuI,UAAU,QACpCS;YAEJ;;;YAKOkF,KAAAA;mBAJP,AAIA;;;GADC,GACD,SAAOA,0BAA0BR,QAAQ,EAAE1E,MAAM;gBAC/C,IAAI,CAAC0E,YAAY,CAACA,SAAS/C,OAAO,IAAI,CAAC+C,SAAS9C,MAAM,EAAE;oBACtD,OAAO;gBACT;gBACA,IAAI+C,OAAOD,SAAS/C,OAAO,EAAEiD,MAAMF,SAAS9C,MAAM;gBAClD,IAAI,CAAC+C,QAAQE,MAAMF,KAAKH,IAAI,KAAK,CAACI,OAAOC,MAAMD,IAAIJ,IAAI,GAAG;oBACxD,OAAOzI;gBACT;gBACA,IAAIiE,QAAQ;oBACV2E,OAAOpQ,MAAM4Q,UAAU,CAACR,MAAM,CAAC3E;oBAC/B4E,MAAMrQ,MAAM4Q,UAAU,CAACP,KAAK5E;gBAC9B;gBACA,OAAO,AAACzL,CAAAA,MAAMyQ,YAAY,CAACJ,OAAOrQ,MAAMyQ,YAAY,CAACL,KAAI,IAAK;YAChE;;;YAKOS,KAAAA;mBAJP,AAIA;;;GADC,GACD,SAAOA,iBAAiBV,QAAQ,EAAEpP,OAAO;gBACvC,IAAM+P,UAAU/P,UAAU,KAAK;gBAC/B,IAAIqP,OAAOD,SAAS/C,OAAO,IAAIpN,MAAM4Q,UAAU,CAACT,SAAS/C,OAAO,EAAE,CAAC0D,UAAUT,MAAMF,SAAS9C,MAAM,IAAIrN,MAAM4Q,UAAU,CAACT,SAAS9C,MAAM,EAAEyD;gBACxI,IAAI,CAACV,QAAQE,MAAMF,KAAKH,IAAI,KAAK,CAACI,OAAOC,MAAMD,IAAIJ,IAAI,GAAG;oBACxD,OAAOzI;gBACT;gBACA,OAAO,AAACxH,CAAAA,MAAMyQ,YAAY,CAACJ,OAAOrQ,MAAMyQ,YAAY,CAACL,KAAI,IAAK;YAChE;;;YAKOrF,KAAAA;mBAJP,AAIA;;;GADC,GACD,SAAOA,kBAAkBtI,IAAI,EAAEuI,QAAQ;gBACrC,OAAOiC,QAAQ8D,6BAA6B,CAC1C9D,QAAQ3B,WAAW,CAAC7I,MAAMuI,WAC1BA;YAEJ;;;YAKO+F,KAAAA;mBAJP,AAIA;;;GADC,GACD,SAAOA,8BAA8BZ,QAAQ,EAAEnF,QAAQ;gBACrD,OAAOmF,SAAS9C,MAAM,IAAIJ,QAAQ+D,2BAA2B,CAACb,SAAS9C,MAAM,EAAErC;YACjF;;;YAKOgG,KAAAA;mBAJP,AAIA;;;GADC,GACD,SAAOA,4BAA4B3D,MAAM,EAAErC,QAAQ;gBACjD,OAAOhL,MAAM4Q,UAAU,CAACvD,QAAQ,CAAErC,CAAAA,SAASiG,cAAc,IAAI,CAAA;YAC/D;;;YAIOnC,KAAAA;mBAHP,AAGA;;GADC,GACD,SAAOA,UAAUrM,IAAI;gBACnB,IAAM6E,QAAQ7E,KAAK0G,QAAQ,IAAI+H,SAAS;2BAAMlR,MAAMmR,iBAAiB,CAAC1O,KAAK6G,WAAW;mBAAK8H,UAAU;oBAAC;oBAAG;oBAAG;oBAAI;oBAAI;oBAAI;oBAAK;oBAAK;oBAAK;oBAAK;oBAAK;oBAAK;oBAAK;iBAAI;gBAC/J,OAAOA,OAAO,CAAC9J,QAAQ,EAAE,GAAG7E,KAAK0F,OAAO,KAAMb,CAAAA,QAAQ,KAAK4J,WAAW,IAAI,CAAA;YAC5E;;;YAKOjC,KAAAA;mBAJP,AAIA;;;GADC,GACD,SAAOA,SAASoC,GAAG,EAAEC,GAAG;gBACtB,OAAOD,MAAMC,MAAM;YACrB;;;YAIO7B,KAAAA;mBAHP,AAGA;;GADC,GACD,SAAOA,EAAE8B,CAAC;gBACR,OAAO,SAASA,IAAI;YACtB;;;YAIO7B,KAAAA;mBAHP,AAGA;;GADC,GACD,SAAOA,EAAE6B,CAAC;gBACR,OAAOA,IAAI,QAAQnO,KAAKoM,GAAG,CAAC,UAAU+B,KAAK,OAAOnO,KAAKoM,GAAG,CAAC,IAAI,UAAU+B,KAAK;YAChF;;;YAIOzB,KAAAA;mBAHP,AAGA;;GADC,GACD,SAAOA,IAAIyB,CAAC;gBACV,OAAO,CAAC,UAAUA,IAAI;YACxB;;;YAIOrC,KAAAA;mBAHP,AAGA;;GADC,GACD,SAAOA,SAASsC,GAAG;gBACjB,OAAO,WAAWA;YACpB;;;YAMOzB,KAAAA;mBALP,AAKA;;;;GADC,GACD,SAAOA,QAAQ0B,IAAI,EAAEhP,IAAI,EAAEuI,QAAQ;gBACjC,IAAIyG,OAAO,GAAG;oBACZA,QAAQ;gBACV;gBACA,IAAIxB,OAAOjQ,MAAMoF,KAAK,CAACqM;gBACvB,IAAMC,WAAW,AAACD,CAAAA,OAAOxB,IAAG,IAAK,KAAK,KAAKqB,MAAMtR,MAAMoF,KAAK,CAACsM,WAAWC,MAAMvO,KAAKwO,KAAK,CAAC,KAAMF,CAAAA,WAAWJ,GAAE;gBAC5G,IAAItR,MAAM6R,KAAK,CAAC7G,UAAUvI,OAAO;oBAC/BwN;gBACF;gBACA,OAAOjQ,MAAM8R,OAAO,CAAC;oBAAE7B,MAAAA;oBAAMM,QAAQe;oBAAKS,QAAQJ;gBAAI;YACxD;;;;;AAGF,eAAe;AACf,IAAIK,UAAUC,QAAQC,GAAG,CAACC,QAAQ,KAAK;AACvC,IAAI/S,aAAa3B,OAAO2U,MAAM,CAAC;IAC7BC,QAAQ;IACRC,QAAQ;IACRC,SAAS;IACTC,WAAW;IACXC,UAAU;IACVC,QAAQ;IACRC,SAAS;AACX;AACA,IAAIlT,oBAAoBhC,OAAO2U,MAAM,CAAC;IACpCQ,QAAQ;IACRC,MAAM;IACNC,OAAO;IACPC,OAAO;IACPC,IAAI;IACJC,OAAO;IACPC,SAAS;IACTC,UAAU;IACVC,QAAQ;IACRC,OAAO;IACPC,OAAO;IACPC,MAAM;IACNC,aAAa;AACf;AACA,IAAIjU,kBAAkB;IACpB;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;CACD;AACD,IAAIC,kBAAkB;IACpB;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;CACD;AACD,IAAIM,mBAAmB;IACrB;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;CACD;AACD,IAAIT,gBAAgB;IAClB;IACA;IACA;IACA;IACA;IACA;IACA;CACD;AACD,IAAIC,gBAAgB;IAClB;IACA;IACA;IACA;IACA;IACA;IACA;CACD;AACD,IAAImU,uBAAS;aAAMA;gCAAAA;;;;YAMV3M,KAAAA;mBALP,AAKA;;;;GADC,GACD,SAAOA,eAAe4M,MAAM;gBAC1B,IAAIA,SAAS,GAAG;oBACd,MAAM;gBACR;gBACA,IAAIA,SAAS,MAAM;oBACjB,MAAM;gBACR;gBACA,IAAIC,IAAID,QAAQE,SAAS;gBACzB,IAAID,KAAK,KAAK;oBACZC,UAAUH,OAAOI,GAAG,CAACJ,OAAOrO,KAAK,CAAC,AAACuO,CAAAA,IAAIA,IAAI,GAAE,IAAK,OAAO,EAAE,GAAG;oBAC9DA,IAAIA,IAAI;gBACV;gBACA,MAAOA,KAAK,IAAK;oBACfC,UAAU;oBACVD,KAAK;gBACP;gBACA,IAAIA,KAAK,KAAK;oBACZC,UAAUH,OAAOK,GAAG,CAACL,OAAOrO,KAAK,CAAC,AAACuO,CAAAA,IAAIA,IAAI,GAAE,IAAK,OAAO,EAAE;oBAC3DA,IAAIA,IAAI;gBACV;gBACA,IAAIA,KAAK,IAAI;oBACXC,UAAU;gBACZ,OAAO,IAAID,KAAK,IAAI;oBAClBC,UAAU;gBACZ,OAAO;oBACL,IAAID,IAAI,GAAG;wBACTC,UAAUH,OAAOM,GAAG,CAACN,OAAOrO,KAAK,CAAC,AAACuO,CAAAA,IAAIA,IAAI,EAAC,IAAK,MAAM,EAAE;oBAC3D;oBACA,IAAIA,IAAI,KAAK,GAAG;wBACdC,UAAUH,OAAOI,GAAG,CAACF,IAAI,KAAK,EAAE;oBAClC;gBACF;gBACA,IAAID,SAAS,OAAOA,SAAS,MAAM,IAAI;oBACrCE,SAAS,MAAMA;gBACjB,OAAO,IAAIA,OAAO9R,MAAM,GAAG,GAAG;oBAC5B8R,SAASA,OAAOI,KAAK,CAAC,GAAG,CAAC,KAAK,MAAMJ,MAAM,CAACA,OAAO9R,MAAM,GAAG,EAAE;gBAChE;gBACA,OAAO8R;YACT;;;YAOOK,KAAAA;mBANP,AAMA;;;;;GADC,GACD,SAAOA,aAAaxR,IAAI,EAAEoH,aAAa,EAAEC,cAAc;gBACrD,IAAI,CAACrH,MAAM;gBACX,OAAO,AAACoH,CAAAA,gBAAgBC,iBAAiB,MAAM,MAAMzK,aAAa,CAACoD,KAAKyR,MAAM,GAAG,GAAG,KAAI,IAAK,QAAQT,OAAO1J,UAAU,CAACtH,KAAK0F,OAAO,MAAM,SAASrI,gBAAgB,CAAC2C,KAAK0G,QAAQ,GAAG,GAAG,MAAM1G,KAAK6G,WAAW,GAAGrH,QAAQ;YACzN;;;YAMOkS,KAAAA;mBALP,AAKA;;;;GADC,GACD,SAAOA,kBAAkB1R,IAAI,EAAE2R,UAAU;gBACvC,IAAI,CAAC3R,MAAM;gBACX,IAAM4R,SAAS5R,KAAK0F,OAAO,IAAImM,WAAW7R,KAAK0G,QAAQ,KAAK;gBAC5D,OAAO,AAACiL,CAAAA,aAAa,AAAC,GAAcC,OAAZC,UAAS,KAAU,OAAPD,UAAW,AAAC,GAA2BA,OAAzBA,SAAS,KAAK,MAAM,IAAeC,OAAVD,QAAO,KAA8BC,OAA3BA,WAAW,KAAK,MAAM,IAAc,OAATA,SAAS,IAAK,MAAM7R,KAAK6G,WAAW,GAAGrH,QAAQ;YACjK;;;YAKO8H,KAAAA;mBAJP,AAIA;;;GADC,GACD,SAAOA,WAAWwK,GAAG;gBACnB,IAAMC,IAAID,IAAItS,QAAQ;gBACtB,IAAIwS,SAAS;gBACb,IAAID,EAAE1S,MAAM,KAAK,KAAK0S,CAAC,CAACA,EAAE1S,MAAM,GAAG,EAAE,KAAK,KAAK;oBAC7C,OAAQ0S,CAAC,CAACA,EAAE1S,MAAM,GAAG,EAAE;wBACrB,KAAK;4BACH2S,SAAS;4BACT;wBACF,KAAK;4BACHA,SAAS;4BACT;wBACF,KAAK;4BACHA,SAAS;4BACT;oBACJ;gBACF;gBACA,OAAOD,IAAIC;YACb;;;YAKOtD,KAAAA;mBAJP,AAIA;;;GADC,GACD,SAAOA,kBAAkBzO,IAAI;gBAC3B,OAAO,CAAEA,CAAAA,OAAO,GAAE,KAAM,CAAC,CAAEA,CAAAA,OAAO,GAAE,KAAM,CAAEA,CAAAA,OAAO,CAAA;YACrD;;;YASOgS,KAAAA;mBARP,AAQA;;;;;;;GADC,GACD,SAAOA,SAAShS,IAAI,EAAE4E,KAAK,EAAEC,GAAG;gBAC9B,OAAO,IAAId,KAAK/D,MAAM4E,QAAQ,GAAGC,KAAK2M,MAAM;YAC9C;;;YAOOpC,KAAAA;mBANP,AAMA;;;;;GADC,GACD,SAAOA,QAAQL,IAAI;gBACjB,IAAMkD,SAAS;oBACb1E,MAAMwB,KAAKxB,IAAI;oBACfM,QAAQkB,KAAKlB,MAAM;oBACnBwB,QAAQN,KAAKM,MAAM,IAAI;gBACzB;gBACA,MAAO4C,OAAO5C,MAAM,IAAI,GAAI;oBAC1B4C,OAAOpE,MAAM,IAAI;oBACjBoE,OAAO5C,MAAM,IAAI;gBACnB;gBACA,MAAO4C,OAAO5C,MAAM,GAAG,EAAG;oBACxB4C,OAAOpE,MAAM,IAAI;oBACjBoE,OAAO5C,MAAM,IAAI;gBACnB;gBACA,MAAO4C,OAAOpE,MAAM,GAAG,EAAG;oBACxBoE,OAAOpE,MAAM,IAAI;oBACjBoE,OAAO1E,IAAI;gBACb;gBACA,MAAO0E,OAAOpE,MAAM,IAAI,GAAI;oBAC1BoE,OAAOpE,MAAM,IAAI;oBACjBoE,OAAO1E,IAAI;gBACb;gBACA,IAAI0E,OAAO1E,IAAI,GAAG,GAAG;oBACnB0E,OAAO1E,IAAI,GAAG,KAAK0E,OAAO1E,IAAI,GAAG;gBACnC;gBACA,IAAI0E,OAAO1E,IAAI,GAAG,IAAI;oBACpB0E,OAAO1E,IAAI,GAAG0E,OAAO1E,IAAI,GAAG;gBAC9B;gBACA,OAAO0E;YACT;;;YAQO/D,KAAAA;mBAPP,AAOA;;;;;;GADC,GACD,SAAOA,WAAWa,IAAI,EAAEX,OAAO;gBAC7B,IAAI,CAACW,MAAM,OAAOA;gBAClB,OAAOA,QAAQgC,OAAO3B,OAAO,CAAC;oBAC5B7B,MAAMwB,KAAKxB,IAAI;oBACfM,QAAQkB,KAAKlB,MAAM,GAAIO,CAAAA,WAAW,CAAA;oBAClCiB,QAAQN,KAAKM,MAAM;gBACrB;YACF;;;YAQOrB,KAAAA;mBAPP,AAOA;;;;;;GADC,GACD,SAAOA,WAAWe,IAAI,EAAEmD,OAAO;gBAC7B,OAAOnB,OAAO3B,OAAO,CAAC;oBACpB7B,MAAMwB,KAAKxB,IAAI;oBACfM,QAAQkB,KAAKlB,MAAM;oBACnBwB,QAAQ,AAACN,CAAAA,KAAKM,MAAM,IAAI,CAAA,IAAK6C;gBAC/B;YACF;;;YAWOC,KAAAA;mBAVP,AAUA;;;;;;;;;GADC,GACD,SAAOA,SAASC,WAAW,EAAEC,SAAS;oBAAEC,eAAAA,iEAAe;gBACrD,IAAMC,WAAWxB,OAAOhD,YAAY,CAACqE,cAAcI,WAAWzB,OAAOhD,YAAY,CAACsE,YAAYtD,OAAOgC,OAAO3B,OAAO,CAAC;oBAClH7B,MAAM;oBACNM,QAAQ;oBACRwB,QAAQkD,YAAYC,WAAWA,WAAWD,WAAWD,eAAeC,WAAWC,WAAW,QAAQD,WAAWC;gBAC/G;gBACA,OAAO,wCACFzD;oBACH0D,MAAMF,YAAYC,YAAY,CAACF,eAAe,IAAI,CAAC;;YAEvD;;;YAKOI,KAAAA;mBAJP,AAIA;;;GADC,GACD,SAAOA,aAAa3D,IAAI;gBACtB,OAAOA,OAAOA,KAAKxB,IAAI,GAAG,KAAKwB,KAAKlB,MAAM,GAAG;YAC/C;;;YAKOE,KAAAA;mBAJP,AAIA;;;GADC,GACD,SAAOA,aAAagB,IAAI;gBACtB,OAAOA,OAAOgC,OAAO2B,YAAY,CAAC3D,QAAQ,KAAMA,CAAAA,KAAKM,MAAM,IAAI,CAAA,IAAK;YACtE;;;YAMOsD,KAAAA;mBALP,AAKA;;;;GADC,GACD,SAAOA,aAAaC,KAAK;gBACvB,OAAO;oBACLrF,MAAMqF,MAAMC,QAAQ;oBACpBhF,QAAQ+E,MAAME,UAAU;oBACxBzD,QAAQuD,MAAMG,UAAU;gBAC1B;YACF;;;YAMOC,KAAAA;mBALP,AAKA;;;;GADC,GACD,SAAOA,YAAYC,UAAU,EAAEC,SAAS;gBACtC,IAAI,CAACD,cAAc,CAACC,WAAW,OAAO;gBACtC,OAAOnC,OAAOhD,YAAY,CAACmF,cAAcnC,OAAOhD,YAAY,CAACkF;YAC/D;;;YAKOE,KAAAA;mBAJP,AAIA;;;GADC,GACD,SAAOA,6BAA6BpE,IAAI;gBACtC,IAAI+C,IAAI;gBACR,IAAI/C,KAAKxB,IAAI,GAAG,GAAG;oBACjBuE,KAAK,AAAC,GAA0B/C,OAAxBA,KAAKxB,IAAI,CAAChO,QAAQ,IAAG,KAAuE,OAApEwP,KAAKxB,IAAI,KAAK,IAAI,uBAAuB;gBAC3E;gBACA,IAAIwB,KAAKlB,MAAM,GAAG,GAAG;oBACnB,IAAIiE,EAAE1S,MAAM,EAAE;wBACZ0S,KAAK;oBACP;oBACAA,KAAK,AAAC,GAA4B/C,OAA1BA,KAAKlB,MAAM,CAACtO,QAAQ,IAAG,KAAyE,OAAtEwP,KAAKlB,MAAM,KAAK,IAAI,uBAAuB;gBAC/E;gBACA,IAAI,AAACkB,CAAAA,KAAKM,MAAM,IAAI,CAAA,IAAK,GAAG;oBAC1B,IAAIyC,EAAE1S,MAAM,EAAE;wBACZ0S,KAAK;oBACP;oBACAA,KAAK,AAAC,GAA6C/C,OAA3CrO,KAAK0S,KAAK,CAACrE,KAAKM,MAAM,IAAI,GAAG9P,QAAQ,IAAG,KAA2F,OAAxFwP,KAAKM,MAAM,KAAK,IAAI,mCAAmC;gBAC5G;gBACA,OAAOyC;YACT;;;YAKOuB,KAAAA;mBAJP,AAIA;;;GADC,GACD,SAAOA,0BAA0BtE,IAAI;gBACnC,IAAI+C,IAAI;gBACR,IAAI/C,KAAKxB,IAAI,GAAG,GAAG;oBACjBuE,KAAK,AAAC,GAA0B/C,OAAxBA,KAAKxB,IAAI,CAAChO,QAAQ,IAAG,KAAsC,OAAnCwP,KAAKxB,IAAI,KAAK,IAAI,SAAS;gBAC7D;gBACA,IAAIwB,KAAKlB,MAAM,GAAG,GAAG;oBACnB,IAAIiE,EAAE1S,MAAM,EAAE;wBACZ0S,KAAK;oBACP;oBACAA,KAAK,AAAC,GAA4B/C,OAA1BA,KAAKlB,MAAM,CAACtO,QAAQ,IAAG,KAA4C,OAAzCwP,KAAKlB,MAAM,KAAK,IAAI,WAAW;gBACnE;gBACA,IAAI,AAACkB,CAAAA,KAAKM,MAAM,IAAI,CAAA,IAAK,GAAG;oBAC1B,IAAIyC,EAAE1S,MAAM,EAAE;wBACZ0S,KAAK;oBACP;oBACAA,KAAK,AAAC,GAA6C/C,OAA3CrO,KAAK0S,KAAK,CAACrE,KAAKM,MAAM,IAAI,GAAG9P,QAAQ,IAAG,KAA4C,OAAzCwP,KAAKM,MAAM,KAAK,IAAI,WAAW;gBACpF;gBACA,OAAOyC;YACT;;;YAMOwB,KAAAA;mBALP,AAKA;;;;GADC,GACD,SAAOA,cAAc3L,SAAS,EAAE4L,MAAM;gBACpC,IAAMC,QAAQzC,OAAOrO,KAAK,CAACiF,YAAY,IAAI9B,OAAO8B,YAAY;gBAC9D,IAAI8L,MAAM;gBACV,IAAI9L,cAAc,GAAG;oBACnB8L,OAAO;gBACT,OAAO;oBACL,IAAI9L,cAAc,GAAG;wBACnB8L,OAAO;oBACT,OAAO;wBACL,IAAI9L,cAAc,IAAI;4BACpB8L,OAAO;wBACT,OAAO;4BACLA,OAAO1C,OAAO2C,KAAK,CAAC3C,OAAOrO,KAAK,CAACiF,YAAY,IAAI,GAAG;4BACpD,IAAIA,YAAY,IAAI;gCAClB,IAAIA,YAAY,MAAMA,YAAY,KAAK,GAAG;oCACxC8L,OAAO;gCACT;gCACAA,OAAO1C,OAAO4C,KAAK,CAAC5C,OAAOrO,KAAK,CAACiF,YAAY,IAAI,GAAG;4BACtD;wBACF;oBACF;oBACA8L,OAAO,AAAC9L,CAAAA,aAAa,KAAK,uBAAuB,0BAAyB,IAAK;oBAC/E,IAAI4L,WAAW,WAAW;wBACxBE,OAAO;oBACT;oBACA,IAAI9L,aAAa,GAAG;wBAClB8L,OAAO;wBACP,IAAID,UAAU,GAAG;4BACfC,OAAO;wBACT,OAAO,IAAID,UAAU,GAAG;4BACtBC,OAAO;wBACT,OAAO,IAAID,QAAQ,GAAG;4BACpBC,OAAO1C,OAAO2C,KAAK,CAAC3C,OAAOrO,KAAK,CAAC8Q,OAAO,GAAG;wBAC7C;wBACA,IAAI3N,SAAS,GAAG;4BACd4N,OAAO;wBACT,OAAO,IAAI5N,SAAS,GAAG;4BACrB4N,OAAO;wBACT,OAAO,IAAI5N,OAAO,GAAG;4BACnB4N,OAAO,WAAW1C,OAAO2C,KAAK,CAAC7N,KAAK,GAAG;wBACzC;oBACF;gBACF;gBACA,IAAI0N,WAAW,UAAU;oBACvBE,OAAO;gBACT,OAAO,IAAIF,WAAW,YAAY;oBAChCE,OAAO;gBACT;gBACA,OAAOA;YACT;;;YAQOG,KAAAA;mBAPP,AAOA;;;;;;GADC,GACD,SAAOA,cAAc7E,IAAI,EAAE0D,IAAI,EAAEoB,IAAI,EAAEC,OAAO;gBAC5C,IAAM5E,QAAQ4E,UAAUpT,KAAKqT,IAAI,GAAGrT,KAAK6I,KAAK;gBAC9CwF,OAAO;oBACLxB,MAAM2B,MAAMH,KAAKxB,IAAI;oBACrBM,QAAQqB,MAAMH,KAAKlB,MAAM;oBACzBwB,QAAQH,MAAMH,KAAKM,MAAM,IAAI;gBAC/B;gBACA,IAAIwE,MAAM;oBACR,OAAO,AAACpB,CAAAA,QAAQA,OAAO,IAAI,MAAM,EAAC,IAAM1D,CAAAA,KAAKxB,IAAI,CAAChO,QAAQ,KAAK,MAAOwP,CAAAA,KAAKlB,MAAM,GAAG,KAAK,MAAMkB,KAAKlB,MAAM,CAACtO,QAAQ,KAAKwP,KAAKlB,MAAM,CAACtO,QAAQ,EAAC,IAAK,MAAO,CAAA,AAACwP,CAAAA,KAAKM,MAAM,IAAI,CAAA,IAAK,KAAK,MAAM,AAACN,CAAAA,KAAKM,MAAM,IAAI,CAAA,EAAG9P,QAAQ,KAAK,AAACwP,CAAAA,KAAKM,MAAM,IAAI,CAAA,EAAG9P,QAAQ,EAAC,CAAC;gBACxP,OAAO;oBACL,OAAO,AAACkT,CAAAA,QAAQA,OAAO,IAAI,MAAM,EAAC,IAAK,AAAC1D,CAAAA,KAAKxB,IAAI,IAAI,KAAKwB,KAAKxB,IAAI,IAAI,IAAI,KAAKwB,KAAKxB,IAAI,GAAGwB,KAAKxB,IAAI,GAAG,EAAC,EAAGhO,QAAQ,KAAK,MAAOwP,CAAAA,KAAKlB,MAAM,GAAG,KAAK,MAAMkB,KAAKlB,MAAM,CAACtO,QAAQ,KAAKwP,KAAKlB,MAAM,CAACtO,QAAQ,EAAC,IAAK,MAAO,CAAA,AAACwP,CAAAA,KAAKM,MAAM,IAAI,CAAA,IAAK,KAAK,MAAM,AAACN,CAAAA,KAAKM,MAAM,IAAI,CAAA,EAAG9P,QAAQ,KAAK,AAACwP,CAAAA,KAAKM,MAAM,IAAI,CAAA,EAAG9P,QAAQ,EAAC,IAAMwP,CAAAA,KAAKxB,IAAI,GAAG,KAAK,QAAQ,KAAI;gBACpV;YACF;;;YAKOyG,KAAAA;mBAJP,AAIA;;;GADC,GACD,SAAOA;gBACL,IAAMjU,OAAO,aAAa,GAAG,IAAIgE,QAAQkQ,MAAM,IAAIlQ,KAAKhE,KAAK6G,WAAW,IAAI,GAAG,IAAIsN,MAAM,IAAInQ,KAAKhE,KAAK6G,WAAW,IAAI,GAAG;gBACzH,OAAO,CAACmK,OAAOrO,KAAK,CAClBhC,KAAKyT,GAAG,CAACF,IAAIxP,iBAAiB,IAAIyP,IAAIzP,iBAAiB,MAAM;YAEjE;;;YAEO2P,KAAAA;mBADP,AACA,mEADmE,GACnE,SAAOA,UAAUrU,IAAI;gBACnB,OAAO,CAACgR,OAAOrO,KAAK,CAAC3C,KAAK0E,iBAAiB,KAAK,QAAQsM,OAAOiD,aAAa;YAC9E;;;YAMO7E,KAAAA;mBALP,AAKA;;;;GADC,GACD,SAAOA,MAAM7G,QAAQ,EAAEvI,IAAI;gBACzB,IAAIuI,SAASgF,SAAS,KAAKyD,OAAOiD,aAAa,IAAI;oBACjD,OAAOjD,OAAOqD,SAAS,CAACrU;gBAC1B,OAAO,IAAIuI,SAAS+L,MAAM,EAAE;oBAC1B,OAAOtD,OAAOuD,YAAY,CAACvU;gBAC7B,OAAO;oBACL,OAAOgR,OAAOwD,SAAS,CAACxU;gBAC1B;YACF;;;YAKOwU,KAAAA;mBAJP,AAIA;;;GADC,GACD,SAAOA,UAAUxU,IAAI;gBACnB,IAAMC,OAAOD,KAAK6G,WAAW,IAAIhC,QAAQ7E,KAAK0G,QAAQ,KAAK,GAAG5B,MAAM9E,KAAK0F,OAAO,IAAI8H,OAAOxN,KAAK8S,QAAQ;gBACxG,IAAIjO,QAAQ,KAAKA,SAAS,IAAI;oBAC5B,OAAO;gBACT,OAAO,IAAIA,QAAQ,KAAKA,QAAQ,IAAI;oBAClC,OAAO;gBACT,OAAO,IAAIA,UAAU,GAAG;oBACtB,IAAM4P,WAAWzD,OAAOiB,QAAQ,CAAChS,MAAM,GAAG,IAAIyU,aAAaD,YAAY,IAAI,IAAI,IAAI,AAACA,CAAAA,WAAW,CAAA,IAAK,IAAI;oBACxG,OAAO3P,MAAM4P,cAAc5P,QAAQ4P,cAAclH,QAAQ;gBAC3D,OAAO;oBACL,IAAMiH,YAAWzD,OAAOiB,QAAQ,CAAChS,MAAM,IAAI,IAAIyU,cAAaD,cAAa,IAAI,IAAI,IAAI,AAACA,CAAAA,YAAW,CAAA,IAAK,IAAI;oBAC1G,OAAO3P,MAAM4P,eAAc5P,QAAQ4P,eAAclH,OAAO;gBAC1D;YACF;;;YAMO+G,KAAAA;mBALP,AAKA,EALE;YACF;;;GAGC,GACD,SAAOA,aAAavU,IAAI;gBACtB,IAAMC,OAAOD,KAAK6G,WAAW,IAAIhC,QAAQ7E,KAAK0G,QAAQ,KAAK,GAAG5B,MAAM9E,KAAK0F,OAAO,IAAI8H,OAAOxN,KAAK8S,QAAQ;gBACxG,IAAIjO,QAAQ,MAAMA,QAAQ,GAAG;oBAC3B,OAAO;gBACT,OAAO,IAAIA,QAAQ,KAAKA,QAAQ,IAAI;oBAClC,OAAO;gBACT,OAAO,IAAIA,UAAU,GAAG;oBACtB,IAAM8P,aAAa,KAAK3D,OAAOiB,QAAQ,CAAChS,MAAM,GAAG,MAAM;oBACvD,OAAO6E,MAAM6P,cAAc7P,QAAQ6P,cAAcnH,QAAQ;gBAC3D,OAAO;oBACL,IAAMoH,aAAa,KAAK5D,OAAOiB,QAAQ,CAAChS,MAAM,IAAI;oBAClD,OAAO6E,MAAM8P,cAAc9P,QAAQ8P,cAAcpH,OAAO;gBAC1D;YACF;;;YAEOqH,KAAAA;mBADP,AACA,iGADiG,GACjG,SAAOA;gBACL,IAAMzL,MAAM,aAAa,GAAG,IAAIpF,QAAQ8Q,mBAAmB,IAAI,CAAC9D,OAAOiD,aAAa;gBACpF7K,IAAI2L,QAAQ,CAAC3L,IAAI0J,QAAQ,KAAKgC;gBAC9B,OAAO1L;YACT;;;YAMO4L,KAAAA;mBALP,AAKA;;;;GADC,GACD,SAAOA,eAAenC,KAAK,EAAE/M,IAAI;gBAC/B,OAAO,IAAI9B,KAAK6O,MAAMrM,OAAO,KAAK,QAAQV;YAC5C;;;YAMOmP,KAAAA;mBALP,AAKA;;;;GADC,GACD,SAAOA,YAAYC,MAAM,EAAEC,MAAM;gBAC/B,OAAOD,UAAUC,UAAUD,OAAOE,YAAY,OAAOD,OAAOC,YAAY;YAC1E;;;YAMOC,KAAAA;mBALP,AAKA;;;;GADC,GACD,SAAOA,YAAYC,MAAM,EAAEC,MAAM;gBAC/B,OAAOD,UAAUC,UAAUD,OAAOtW,GAAG,IAAIuW,OAAOvW,GAAG,IAAIsW,OAAOtW,GAAG,KAAKuW,OAAOvW,GAAG;YAClF;;;YAMOwW,KAAAA;mBALP,AAKA;;;;GADC,GACD,SAAOA,aAAaF,MAAM,EAAEC,MAAM;gBAChC,OAAOD,OAAO/W,KAAK,KAAKgX,OAAOhX,KAAK,IAAI+W,OAAOxW,IAAI,KAAKyW,OAAOzW,IAAI;YACrE;;;YAMO2W,KAAAA;mBALP,AAKA;;;;GADC,GACD,SAAOA,aAAaP,MAAM,EAAEC,MAAM;gBAChC,OAAOD,OAAOxO,QAAQ,OAAOyO,OAAOzO,QAAQ,MAAMwO,OAAOrO,WAAW,OAAOsO,OAAOtO,WAAW;YAC/F;;;YAMO6O,KAAAA;mBALP,AAKA;;;;GADC,GACD,SAAOA,cAAc7C,KAAK,EAAEtK,QAAQ;gBAClC,IAAMoN,QAAQjY,OAAOmL,WAAW,CAACgK,OAAOtK,UAAUqC,MAAM,EAAExB,MAAM4H,OAAO4B,YAAY,CAACC;gBACpF,OAAO8C,SAAS3E,OAAOiC,WAAW,CAAC0C,OAAOvM;YAC5C;;;YAKOwM,KAAAA;mBAJP,AAIA;;;GADC,GACD,SAAOA,cAAcrN,QAAQ;gBAC3B,IAAIsK,QAAQ,aAAa,GAAG,IAAI7O;gBAChC,IAAIgN,OAAO0E,aAAa,CAAC7C,OAAOtK,WAAW;oBACzCsK,MAAMgD,OAAO,CAAChD,MAAMnN,OAAO,KAAK;gBAClC;gBACA,OAAO,IAAIzH,MAAM4U;YACnB;;;YASOlQ,KAAAA;mBARP,AAQA;;;;;;;GADC,GACD,SAAOA,MAAMmT,KAAK;gBAChB,OAAOA,QAAQ;YACjB;;;YAMOC,KAAAA;mBALP,AAKA;;;;EADA,GACA,SAAOA,UAAU/V,IAAI;gBACnB,IAAMoD,QAAQpD,AAAI,YAAJA,MAAgBgE,QAAO,IAAI/F,MAAM+B,QAAQA;gBACvD,IAAM6S,QAAQ7S,AAAI,YAAJA,MAAgBgE,QAAOhE,OAAOoD,MAAMsC,OAAO;gBACzD,OAAO;oBAAEmN,OAAAA;oBAAOzP,OAAAA;gBAAM;YACxB;;;YAEOiC,KAAAA;mBADP,AACA,0EAD0E,GAC1E,SAAOA,SAAS2Q,KAAK;gBACnB,OAAO,OAAOA,UAAU,YAAYA,AAAK,YAALA,OAAiBtL;YACvD;;;YAEOpF,KAAAA;mBADP,AACA,4EAD4E,GAC5E,SAAOA,SAAS0Q,KAAK;gBACnB,OAAO,OAAOA,UAAU,YAAYA,AAAK,YAALA,OAAiBC;YACvD;;;YAEO/Q,KAAAA;mBADP,AACA,qEADqE,GACrE,SAAOA,YAAY8Q,KAAK;gBACtB,OAAOA,AAAK,YAALA,OAAiBhS,SAAQ,CAAC6J,MAAMmI,MAAMxP,OAAO;YACtD;;;YAIO0B,KAAAA;mBAHP,AAGA;;6HAD2H,GAC3H,SAAOA,IAAIgO,CAAC;gBAAE,IAAA,IAAA,OAAA,UAAA,QAAA,AAAGC,MAAH,UAAA,OAAA,IAAA,OAAA,QAAA,OAAA,GAAA,OAAA,MAAA;oBAAGA,IAAH,OAAA,KAAA,SAAA,CAAA,KAAM;;gBAClB,IAAIA,IAAI9W,MAAM,KAAK,KAAM8F,CAAAA,MAAMC,OAAO,CAAC+Q,GAAG,CAAC,EAAE,KAAKnF,OAAO3L,QAAQ,CAAC8Q,GAAG,CAAC,EAAE,CAAA,GAAI;oBAC1E,OAAOA,GAAG,CAAC,EAAE,CAACnO,QAAQ,CAACkO;gBACzB,OAAO;oBACL,OAAOC,IAAInO,QAAQ,CAACkO;gBACtB;YACF;;;YASOE,KAAAA;mBARP,AAQA;;;;;;;GADC,GACD,SAAOA,WAAWC,UAAU,EAAEC,QAAQ;gBACpC,IAAI,OAAOD,eAAe,eAAeA,eAAe,QAAQxI,MAAMwI,aAAa;oBACjF,OAAOC;gBACT,OAAO;oBACL,OAAOD;gBACT;YACF;;;YASOE,KAAAA;mBARP,AAQA;;;;;;;GADC,GACD,SAAOA,MAAMC,KAAK,EAAEC,GAAG;gBACrB,IAAMC,cAAc,OAAOD,QAAQ,cAAc,IAAID,OAAOG,YAAY,OAAOF,QAAQ,cAAcD,QAAQC;gBAC7G,OAAOtR,MAAMlJ,IAAI,CAAC;oBAAEoD,QAAQsX,YAAYD,cAAc;gBAAE,GAAG,SAACE,GAAGrX;2BAAMmX,cAAcnX;;YACrF;;;YAKOsX,KAAAA;mBAJP,AAIA;;;GADC,GACD,SAAOA,IAAInD,GAAG;gBAAE,IAAA,IAAA,OAAA,UAAA,QAAA,AAAGoD,gBAAH,UAAA,OAAA,IAAA,OAAA,QAAA,OAAA,GAAA,OAAA,MAAA;oBAAGA,cAAH,OAAA,KAAA,SAAA,CAAA,KAAgB;;gBAC9B,IAAIvH,SAAS;wBACXwH;oBAAAA,CAAAA,WAAAA,SAAQF,GAAG,OAAXE,UAAAA;wBAAYrD;qBAAsB,CAAlCqD,OAAiB,qBAAGD;gBACtB;YACF;;;YAKOE,KAAAA;mBAJP,AAIA;;;GADC,GACD,SAAOA,KAAKtD,GAAG;gBAAE,IAAA,IAAA,OAAA,UAAA,QAAA,AAAGoD,gBAAH,UAAA,OAAA,IAAA,OAAA,QAAA,OAAA,GAAA,OAAA,MAAA;oBAAGA,cAAH,OAAA,KAAA,SAAA,CAAA,KAAgB;;gBAC/B,IAAIvH,SAAS;wBACXwH;oBAAAA,CAAAA,WAAAA,SAAQC,IAAI,OAAZD,UAAAA;wBAAarD;qBAAsB,CAAnCqD,OAAkB,qBAAGD;gBACvB;YACF;;;YAKOG,KAAAA;mBAJP,AAIA;;;GADC,GACD,SAAOA,MAAMvD,GAAG;gBAAE,IAAA,IAAA,OAAA,UAAA,QAAA,AAAGoD,gBAAH,UAAA,OAAA,IAAA,OAAA,QAAA,OAAA,GAAA,OAAA,MAAA;oBAAGA,cAAH,OAAA,KAAA,SAAA,CAAA,KAAgB;;gBAChC,IAAIvH,SAAS;wBACXwH;oBAAAA,CAAAA,WAAAA,SAAQE,KAAK,OAAbF,UAAAA;wBAAcrD;qBAAsB,CAApCqD,OAAmB,qBAAGD;gBACxB;YACF;;;;;AAEF9F,OAAOI,GAAG,GAAG;IAAC;IAAU;IAAU;IAAU;IAAU;IAAU;IAAU;IAAU;IAAU;CAAS;AACvGJ,OAAOM,GAAG,GAAG;IAAC;IAAU;IAAU;IAAU;IAAU;IAAU;IAAU;IAAU;IAAU;CAAS;AACvGN,OAAOK,GAAG,GAAG;IAAC;IAAU;IAAU;IAAU;CAAS;AACrDL,OAAO2C,KAAK,GAAG;IACb;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;CACD;AACD3C,OAAO4C,KAAK,GAAG;IAAC;IAAI;IAAsB;IAAkC;IAAwC;CAAuC;AAC3J,IAAIrW,QAAQyT;AAEZ,uBAAuB;AACvB,IAAI/T,yBAAW;aAAMia,UAYPtb,IAAI,EAAEub,OAAO,EAAE7Y,OAAO,EAAE2M,QAAQ,EAAED,SAAS,EAAEoM,SAAS,EAAEC,SAAS,EAAEC,cAAc;gCAZ1EJ;QAajB,IAAI,OAAO5Y,YAAY,eAAeA,YAAY,MAAM;YACtDA,UAAU2M,WAAW,SAASA,WAAW,MAAMD,YAAY,CAAC,SAASA,YAAY,CAAC;QACpF;QACA,IAAI1M,SAAS;YACX8Y,YAAY;QACd,OAAO,IAAI,OAAOA,cAAc,eAAeA,cAAc,MAAM;YACjEA,YAAY,CAACzW,KAAKwO,KAAK,CAACnE,YAAY;QACtC;QACA,IAAI,CAACuM,IAAI,GAAG3b,QAAQ;QACpB,IAAI,CAAC4b,UAAU,GAAGL;QAClB,IAAI,CAAC7C,MAAM,GAAG,CAAC,CAAChW;QAChB,IAAI,CAACwO,QAAQ,GAAG7B;QAChB,IAAI,CAAC4B,SAAS,GAAG7B;QACjB,IAAI,CAACuC,SAAS,GAAG6J,aAAa;QAC9B,IAAI,CAACzK,SAAS,GAAG0K,aAAa;QAC9B,IAAI,CAAC7I,cAAc,GAAG8I,kBAAkBJ,UAAUO,UAAU,CAAC,IAAI;;;;YAE5DC,KAAAA;mBAAP,SAAOA,MAAMnP,QAAQ;gBACnB,OAAO,IAAI2O,UACT3O,SAASgP,IAAI,EACbhP,SAASiP,UAAU,EACnBjP,SAAS+L,MAAM,EACf/L,SAASuE,QAAQ,EACjBvE,SAASsE,SAAS,EAClBtE,SAASgF,SAAS,EAClBhF,SAASoE,SAAS,EAClBpE,SAASiG,cAAc,IAAI;YAE/B;;;YACOiJ,KAAAA;mBAAP,SAAOA,WAAWlP,QAAQ;gBACxB,IAAIA,SAASiG,cAAc,EAAE;oBAC3B,OAAOjG,SAASiG,cAAc;gBAChC,OAAO,IAAI,CAACjG,SAAS+L,MAAM,EAAE;oBAC3B,OAAO;gBACT,OAAO;oBACL,IAAMqD,UAAU;wBACd;4BAAEC,OAAO;gCAAC;gCAAa;gCAAU;gCAAU;gCAAS;gCAAS;gCAAgB;gCAA8C;gCAA+C;6BAAwC;4BAAE/I,KAAK;wBAAG;wBAC5N;4BAAE+I,OAAO;gCAAC;gCAAS;gCAAU;gCAAe;gCAAa;gCAA4B;6BAAwC;4BAAE/I,KAAK;wBAAG;qBACxI,EAAEgJ,QAAQtP,SAASgP,IAAI,CAACO,WAAW,IAAIC,OAAOJ,QAAQ7N,IAAI,CAAC,SAACkO;wBAC3D,OAAOA,GAAGJ,KAAK,CAAC9N,IAAI,CAAC,SAACmO;4BACpB,OAAOJ,MAAMK,OAAO,CAACD,OAAO,CAAC;wBAC/B;oBACF;oBACA,OAAOF,OAAOA,KAAKlJ,GAAG,GAAG;gBAC3B;YACF;;;YAEOsJ,KAAAA;mBADP,AACA,mCADmC,GACnC,SAAOA;gBACL,OAAO,IAAIjB,UAAU,aAAa,8CAA8C,MAAM,OAAO,CAAC,OAAO,GAAG,KAAK;YAC/G;;;YAEOkB,KAAAA;mBADP,AACA,oCADoC,GACpC,SAAOA;gBACL,OAAO,IAAIlB,UAAU,eAAe,KAAK,GAAG,OAAO,MAAM,OAAO,CAAC,GAAG,GAAG;YACzE;;;;;AAGF,mBAAmB;AACnB,IAAImB,uBAAuBC,QAAQ;AAEnC,qBAAqB;AACrB,IAAIC,oBAAoB;IAAC;QAAE3c,MAAM;QAAUkE,KAAK;QAAwC0Y,IAAI;QAAMC,IAAI;QAAGC,IAAI;QAAKC,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAASkE,KAAK;QAA4B0Y,IAAI;QAAMC,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAQkE,KAAK;QAA4B0Y,IAAI;QAAMC,IAAI;QAAGC,IAAI;QAAKC,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAUkE,KAAK;QAAkC0Y,IAAI;QAAMC,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAYkE,KAAK;QAAwC0Y,IAAI;QAAMC,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAiBkE,KAAK;QAA+C0Y,IAAI;QAAMC,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAYkE,KAAK;QAAyC0Y,IAAI;QAAMC,IAAI;QAAGC,IAAI;QAAKC,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAekE,KAAK;QAAyC0Y,IAAI;QAAMC,IAAI;QAAGC,IAAI;QAAGC,KAAK;QAAMC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAgBkE,KAAK;QAAyC0Y,IAAI;QAAMC,IAAI;QAAGC,IAAI;QAAKC,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAgBkE,KAAK;QAAqD0Y,IAAI;QAAMC,IAAI;QAAGC,IAAI;QAAKC,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAakE,KAAK;QAAyC0Y,IAAI;QAAMC,IAAI;QAAGC,IAAI;QAAIC,KAAK;QAAOC,KAAK,CAAC;QAAOC,IAAI;IAAG;IAAG;QAAEjd,MAAM;QAAakE,KAAK;QAA8C0Y,IAAI;QAAMC,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAWkE,KAAK;QAA6B0Y,IAAI;QAAMC,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAckE,KAAK;QAA+C0Y,IAAI;QAAMC,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAakE,KAAK;QAAwC0Y,IAAI;QAAMC,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAUkE,KAAK;QAAwC0Y,IAAI;QAAMC,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAckE,KAAK;QAAwC0Y,IAAI;QAAMC,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAmBkE,KAAK;QAA2D0Y,IAAI;QAAMC,IAAI;QAAGC,IAAI;QAAKC,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAUkE,KAAK;QAAkC0Y,IAAI;QAAMC,IAAI;QAAGC,IAAI;QAAKC,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAUkE,KAAK;QAA4B0Y,IAAI;QAAMC,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAASkE,KAAK;QAAkC0Y,IAAI;QAAMC,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAWkE,KAAK;QAAwC0Y,IAAI;QAAMC,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAASkE,KAAK;QAA4B0Y,IAAI;QAAMC,IAAI;QAAGC,IAAI;QAAKC,KAAK;QAAMC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAiBkE,KAAK;QAA+C0Y,IAAI;QAAMC,IAAI;QAAGC,IAAI;QAAIC,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAYkE,KAAK;QAAkC0Y,IAAI;QAAMC,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAckE,KAAK;QAA+C0Y,IAAI;QAAMC,IAAI;QAAGC,IAAI;QAAKC,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAYkE,KAAK;QAAkC0Y,IAAI;QAAMC,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAakE,KAAK;QAA8C0Y,IAAI;QAAMC,IAAI;QAAGC,IAAI;QAAKC,KAAK;QAAOC,KAAK,CAAC;QAAOC,IAAI;IAAG;IAAG;QAAEjd,MAAM;QAAekE,KAAK;QAAyC0Y,IAAI;QAAMC,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAiBkE,KAAK;QAA2D0Y,IAAI;QAAMC,IAAI;QAAGC,IAAI;QAAKC,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAckE,KAAK;QAA2D0Y,IAAI;QAAMC,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAWkE,KAAK;QAAwC0Y,IAAI;QAAMC,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAOkE,KAAK;QAAsB0Y,IAAI;QAAMC,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAkBkE,KAAK;QAAqD0Y,IAAI;QAAMC,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAASkE,KAAK;QAAkC0Y,IAAI;QAAMC,IAAI;QAAGC,IAAI;QAAKC,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAakE,KAAK;QAAwC0Y,IAAI;QAAMC,IAAI;QAAGC,IAAI;QAAKC,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAkBkE,KAAK;QAAiE0Y,IAAI;QAAMC,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAiBkE,KAAK;QAAqD0Y,IAAI;QAAMC,IAAI;QAAGC,IAAI;QAAKC,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAYkE,KAAK;QAA4B0Y,IAAI;QAAMC,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAYkE,KAAK;QAAkC0Y,IAAI;QAAMC,IAAI;QAAGC,IAAI;QAAIC,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAckE,KAAK;QAAqD0Y,IAAI;QAAMC,IAAI;QAAGC,IAAI;QAAKC,KAAK;QAAMC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAUkE,KAAK;QAAsB0Y,IAAI;QAAMC,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAWkE,KAAK;QAAwC0Y,IAAI;QAAMC,IAAI;QAAGC,IAAI;QAAKC,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAWkE,KAAK;QAAkC0Y,IAAI;QAAMC,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAakE,KAAK;QAA+C0Y,IAAI;QAAMC,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAQkE,KAAK;QAAsB0Y,IAAI;QAAMC,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAOkE,KAAK;QAAsB0Y,IAAI;QAAMC,IAAI;QAAGC,IAAI;QAAKC,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAASkE,KAAK;QAAkC0Y,IAAI;QAAMC,IAAI;QAAGC,IAAI;QAAIC,KAAK;QAAMC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAgBkE,KAAK;QAAqD0Y,IAAI;QAAMC,IAAI;QAAGC,IAAI;QAAGC,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAQkE,KAAK;QAAsB0Y,IAAI;QAAMC,IAAI;QAAGC,IAAI;QAAKC,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAgBkE,KAAK;QAA+C0Y,IAAI;QAAMC,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAiBkE,KAAK;QAAqD0Y,IAAI;QAAMC,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;QAAOC,IAAI;IAAG;IAAG;QAAEjd,MAAM;QAASkE,KAAK;QAAsB0Y,IAAI;QAAMC,IAAI;QAAGC,IAAI;QAAKC,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAWkE,KAAK;QAAwC0Y,IAAI;QAAMC,IAAI;QAAGC,IAAI;QAAKC,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAakE,KAAK;QAA8C0Y,IAAI;QAAMC,IAAI;QAAGC,IAAI;QAAIC,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAekE,KAAK;QAAqD0Y,IAAI;QAAMC,IAAI;QAAGC,IAAI;QAAKC,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAckE,KAAK;QAAyC0Y,IAAI;QAAMC,IAAI;QAAGC,IAAI;QAAKC,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAgBkE,KAAK;QAA2D0Y,IAAI;QAAMC,IAAI;QAAGC,IAAI;QAAIC,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAckE,KAAK;QAAyC0Y,IAAI;QAAMC,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAkBkE,KAAK;QAA2D0Y,IAAI;QAAMC,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAiBkE,KAAK;QAA6E0Y,IAAI;QAAMC,IAAI;QAAGC,IAAI;QAAKC,KAAK;QAAOC,KAAK,CAAC;QAAOC,IAAI;IAAG;IAAG;QAAEjd,MAAM;QAAiBkE,KAAK;QAA2D0Y,IAAI;QAAMC,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAgBkE,KAAK;QAA+C0Y,IAAI;QAAMC,IAAI;QAAGC,IAAI;QAAIC,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAakE,KAAK;QAA+C0Y,IAAI;QAAMC,IAAI;QAAGC,IAAI;QAAKC,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAmBkE,KAAK;QAAiE0Y,IAAI;QAAMC,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAWkE,KAAK;QAAwC0Y,IAAI;QAAMC,IAAI;QAAGC,IAAI;QAAIC,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAASkE,KAAK;QAA4B0Y,IAAI;QAAMC,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAkBkE,KAAK;QAAqD0Y,IAAI;QAAMC,IAAI;QAAGC,IAAI;QAAIC,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAmBkE,KAAK;QAAiE0Y,IAAI;QAAMC,IAAI;QAAGC,IAAI;QAAKC,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAYkE,KAAK;QAAkC0Y,IAAI;QAAMC,IAAI;QAAGC,IAAI;QAAIC,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAckE,KAAK;QAA+C0Y,IAAI;QAAMC,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAUkE,KAAK;QAAsB0Y,IAAI;QAAMC,IAAI;QAAGC,IAAI;QAAKC,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAYkE,KAAK;QAAwC0Y,IAAI;QAAMC,IAAI;QAAGC,IAAI;QAAKC,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAWkE,KAAK;QAAkC0Y,IAAI;QAAMC,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAYkE,KAAK;QAAyC0Y,IAAI;QAAMC,IAAI;QAAGC,IAAI;QAAIC,KAAK;QAAOC,KAAK,CAAC;QAAOC,IAAI;IAAG;IAAG;QAAEjd,MAAM;QAAWkE,KAAK;QAA4B0Y,IAAI;QAAMC,IAAI;QAAGC,IAAI;QAAKC,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAYkE,KAAK;QAA4B0Y,IAAI;QAAMC,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAckE,KAAK;QAAwC0Y,IAAI;QAAMC,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAASkE,KAAK;QAA4B0Y,IAAI;QAAMC,IAAI;QAAGC,IAAI;QAAKC,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAWkE,KAAK;QAAkC0Y,IAAI;QAAMC,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAckE,KAAK;QAAoD0Y,IAAI;QAAMC,IAAI;QAAGC,IAAI;QAAKC,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAWkE,KAAK;QAAyE0Y,IAAI;QAAMC,IAAI;QAAGC,IAAI;QAAIC,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAa6c,IAAI;QAAIC,IAAI;QAAIC,KAAK,CAAC;QAAOC,KAAK,CAAC;IAAO;IAAG;QAAEhd,MAAM;QAAW6c,IAAI;QAAIE,KAAK,CAAC;QAAOC,KAAK,CAAC;IAAO;IAAG;QAAEhd,MAAM;QAAc6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAU6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAY6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAW6c,IAAI,CAAC;QAAGC,IAAI;QAAKC,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAY6c,IAAI,CAAC;QAAGC,IAAI;QAAIC,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAa6c,IAAI;QAAGC,IAAI;QAAKC,KAAK;QAAOC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAW6c,IAAI;QAAGE,KAAK;QAAOC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAU6c,IAAI,CAAC;QAAGE,KAAK;QAAMC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAY6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAY6c,IAAI;QAAGC,IAAI;QAAKC,KAAK;QAAMC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAY6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAO;IAAG;QAAEhd,MAAM;QAAU6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAO;IAAG;QAAEhd,MAAM;QAAY6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAa6c,IAAI,CAAC;QAAGE,KAAK,CAAC;QAAMC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAU6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAgB6c,IAAI;QAAGC,IAAI;QAAMC,KAAK,CAAC;QAAMC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAc6c,IAAI,CAAC;QAAGC,IAAI;QAAIC,KAAK,CAAC;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAmB6c,IAAI,CAAC;QAAGE,KAAK;QAAMC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAe6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAa6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAU6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAoB6c,IAAI,CAAC;QAAGE,KAAK,CAAC;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAa6c,IAAI,CAAC;QAAGC,IAAI;QAAKC,KAAK,CAAC;QAAMC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAc6c,IAAI;QAAGE,KAAK;QAAOC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAW6c,IAAI;QAAGE,KAAK;QAAMC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAuB6c,IAAI,CAAC;QAAGE,KAAK,CAAC;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAc6c,IAAI,CAAC;QAAGE,KAAK;QAAMC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAgB6c,IAAI,CAAC;QAAGC,IAAI;QAAKC,KAAK;QAAOC,KAAK;IAAO;IAAG;QAAEhd,MAAM;QAAW6c,IAAI,CAAC;QAAGE,KAAK,CAAC;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAU6c,IAAI,CAAC;QAAGE,KAAK;QAAMC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAS6c,IAAI;QAAGE,KAAK,CAAC;QAAIC,KAAK,CAAC;IAAO;IAAG;QAAEhd,MAAM;QAAU6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAO;IAAG;QAAEhd,MAAM;QAAoB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAe6c,IAAI;QAAGE,KAAK;QAAGC,KAAK;IAAE;IAAG;QAAEhd,MAAM;QAAc6c,IAAI;QAAGE,KAAK,CAAC;QAAIC,KAAK;IAAE;IAAG;QAAEhd,MAAM;QAAc6c,IAAI;QAAGE,KAAK;QAAIC,KAAK;IAAE;IAAG;QAAEhd,MAAM;QAAsB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAY6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAiB6c,IAAI,CAAC;QAAGE,KAAK,CAAC;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAW6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAO;IAAG;QAAEhd,MAAM;QAAW6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAU6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAQ6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAS6c,IAAI;QAAGE,KAAK;QAAOC,KAAK;IAAI;IAAG;QAAEhd,MAAM;QAAiB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAU6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAO6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAa6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAS6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAa6c,IAAI;QAAGE,KAAK;QAAOC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAY6c,IAAI;QAAGE,KAAK;QAAOC,KAAK;IAAI;IAAG;QAAEhd,MAAM;QAAU6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAU6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAU6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAG;IAAG;QAAEhd,MAAM;QAAU6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAqB6c,IAAI;QAAGE,KAAK;QAAMC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAS6c,IAAI;QAAGC,IAAI;QAAKC,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAU6c,IAAI;QAAGC,IAAI;QAAIC,KAAK;QAAMC,KAAK;IAAI;IAAG;QAAEhd,MAAM;QAAc6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAa6c,IAAI;QAAGE,KAAK;QAAOC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAS6c,IAAI;QAAGE,KAAK;QAAMC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAkB6c,IAAI;QAAGC,IAAI;QAAMC,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAU6c,IAAI;QAAGE,KAAK;QAAMC,KAAK;IAAI;IAAG;QAAEhd,MAAM;QAAqB6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAU6c,IAAI;QAAGC,IAAI;QAAKC,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAU6c,IAAI;QAAGC,IAAI;QAAKC,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAS6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAU6c,IAAI;QAAGE,KAAK;QAAMC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAc6c,IAAI;QAAGE,KAAK;QAAMC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAU6c,IAAI;QAAGE,KAAK;QAAMC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAa6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAa6c,IAAI;QAAGE,KAAK;QAAMC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAc6c,IAAI;QAAGE,KAAK;QAAOC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAe6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAO6c,IAAI;QAAGE,KAAK;QAAOC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAU6c,IAAI;QAAGC,IAAI;QAAKC,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAa6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAsB6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAU6c,IAAI;QAAGC,IAAI;QAAKC,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAc6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAc6c,IAAI;QAAGE,KAAK;QAAOC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAQ6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAS6c,IAAI;QAAGC,IAAI;QAAIC,KAAK;QAAMC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAS6c,IAAI;QAAGE,KAAK;QAAOC,KAAK;IAAI;IAAG;QAAEhd,MAAM;QAAS6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAQ6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAY6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAQ6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAY6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAmB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAW6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAI;IAAG;QAAEhd,MAAM;QAAmB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAe6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAA0B6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAG;IAAG;QAAEhd,MAAM;QAAe6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAU6c,IAAI,CAAC;QAAGC,IAAI;QAAMC,KAAK;QAAOC,KAAK;IAAO;IAAG;QAAEhd,MAAM;QAAW6c,IAAI,CAAC;QAAGC,IAAI;QAAIC,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAa6c,IAAI,CAAC;QAAGC,IAAI;QAAGC,KAAK;QAAMC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAiB6c,IAAI,CAAC;QAAGE,KAAK;QAAMC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAe6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAO;IAAG;QAAEhd,MAAM;QAAe6c,IAAI,CAAC;QAAGE,KAAK;QAAMC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAiB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAa6c,IAAI,CAAC;QAAGE,KAAK;QAAMC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAS6c,IAAI,CAAC;QAAGC,IAAI;QAAGC,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAe6c,IAAI,CAAC;QAAGC,IAAI;QAAGC,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAa6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAe6c,IAAI,CAAC;QAAGC,IAAI;QAAKC,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAc6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAe6c,IAAI,CAAC;QAAGC,IAAI;QAAGC,KAAK;QAAIC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAiB6c,IAAI,CAAC;QAAGE,KAAK;QAAMC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAY6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAO;IAAG;QAAEhd,MAAM;QAAa6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAO;IAAG;QAAEhd,MAAM;QAAe6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAc6c,IAAI,CAAC;QAAGE,KAAK;QAAMC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAgB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAiB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAe6c,IAAI,CAAC;QAAGC,IAAI;QAAKC,KAAK;QAAMC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAkB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAQ6c,IAAI,CAAC;QAAGE,KAAK;QAAMC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAY6c,IAAI,CAAC;QAAGE,KAAK;QAAMC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAY6c,IAAI,CAAC;QAAIE,KAAK;QAAOC,KAAK;IAAO;IAAG;QAAEhd,MAAM;QAAqB6c,IAAI,CAAC;QAAGE,KAAK,CAAC;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAW6c,IAAI;QAAGE,KAAK,CAAC;QAAMC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAU6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAkB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAkB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAkB6c,IAAI,CAAC;QAAGE,KAAK,CAAC;QAAMC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAuB6c,IAAI;QAAGE,KAAK,CAAC;QAAMC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAmB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAsB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAQ6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAa6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAgB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAiB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAG;IAAG;QAAEhd,MAAM;QAAU6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAY6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAW6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAU6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAY6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAgB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAa6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAiB6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAmB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAiB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAiB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAkB6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAmB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAgB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAI;IAAG;QAAEhd,MAAM;QAAiB6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAgB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAe6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAc6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAe6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAS6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAW6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAW6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAW6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAU6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAY6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAc6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAe6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAc6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAS6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAY6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAY6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAQ6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAa6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAS6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAe6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAU6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAG;IAAG;QAAEhd,MAAM;QAAY6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAU6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAW6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAU6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAc6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAa6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAU6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAc6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAI;IAAG;QAAEhd,MAAM;QAAU6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAY6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAU6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAiB6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAiB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAe6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAe6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAW6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAY6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAU6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAa6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAQ6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAI;IAAG;QAAEhd,MAAM;QAAe6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAgB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAU6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAe6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAQ6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAS6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAY6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAW6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAU6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAa6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAU6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAY6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAW6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAY6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAiB6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAe6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAU6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAc6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAkB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAkB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAmB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAY6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAS6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAiB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAa6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAgB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAU6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAiB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAe6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAW6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAU6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAY6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAa6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAc6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAW6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAsB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAc6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAO6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAkB6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAkB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAa6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAI;IAAG;QAAEhd,MAAM;QAAU6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAQ6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAgB6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAW6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAW6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAW6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAW6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAc6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAa6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAgB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAe6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAa6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAS6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAY6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAW6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAU6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAsB6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAc6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAU6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAiB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAa6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAA0B6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAe6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAe6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAa6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAa6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAyB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAgB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAa6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAa6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAa6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAI;IAAG;QAAEhd,MAAM;QAAW6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAa6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAY6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAkB6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAc6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAW6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAW6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAkB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAc6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAY6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAc6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAW6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAa6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAc6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAa6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAS6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAe6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAA2B6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAa6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAU6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAc6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAe6c,IAAI;QAAGE,KAAK;QAAIC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAa6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAc6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAa6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAe6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAS6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAQ6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAc6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAU6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAgB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAgB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAS6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAc6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAO6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAa6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAQ6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAa6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAQ6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAY6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAQ6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAa6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAS6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAc6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAa6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAQ6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAU6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAY6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAQ6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAW6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAI;IAAG;QAAEhd,MAAM;QAAc6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAI;IAAG;QAAEhd,MAAM;QAAa6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAI;IAAG;QAAEhd,MAAM;QAAW6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAU6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAY6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAI;IAAG;QAAEhd,MAAM;QAAa6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAY6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAa6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAa6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAU6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAI;IAAG;QAAEhd,MAAM;QAAc6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAa6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAW6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAW6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAU6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAW6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAU6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAQ6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAa6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAY6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAG;IAAG;QAAEhd,MAAM;QAAsB6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAG;IAAG;QAAEhd,MAAM;QAAc6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAO;IAAG;QAAEhd,MAAM;QAAW6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAO;IAAG;QAAEhd,MAAM;QAAQ6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAU6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAkB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAa6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAU6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAiB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAY6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAQ6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAS6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAc6c,IAAI;QAAGE,KAAK;QAAMC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAY6c,IAAI;QAAGE,KAAK;QAAMC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAW6c,IAAI;QAAGE,KAAK;QAAOC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAa6c,IAAI;QAAGE,KAAK;QAAOC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAa6c,IAAI;QAAGE,KAAK;QAAOC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAW6c,IAAI;QAAGE,KAAK;QAAOC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAa6c,IAAI;QAAGE,KAAK;QAAOC,KAAK;IAAI;IAAG;QAAEhd,MAAM;QAAW6c,IAAI;QAAGE,KAAK;QAAOC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAU6c,IAAI;QAAGE,KAAK;QAAOC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAU6c,IAAI;QAAGE,KAAK;QAAOC,KAAK;IAAI;IAAG;QAAEhd,MAAM;QAAqB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAiB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAyB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAc6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAW6c,IAAI,CAAC;QAAGE,KAAK;QAAMC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAuB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAgB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAyB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAwB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAW6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAkB6c,IAAI,CAAC;QAAGE,KAAK;QAAMC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAwB6c,IAAI,CAAC;QAAGE,KAAK;QAAMC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAgB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAG;IAAG;QAAEhd,MAAM;QAAc6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAsB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAO;IAAG;QAAEhd,MAAM;QAAe6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAkB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAiB6c,IAAI,CAAC;QAAIE,KAAK;QAAOC,KAAK;IAAO;IAAG;QAAEhd,MAAM;QAAsB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAO;IAAG;QAAEhd,MAAM;QAAwB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAe6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAyB6c,IAAI,CAAC;QAAGE,KAAK,CAAC;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAA2B6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAe6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAoB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAO;IAAG;QAAEhd,MAAM;QAAwB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAsB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAuB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAa6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAmB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAwB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAA0B6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAU6c,IAAI,CAAC;QAAGE,KAAK;QAAMC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAc6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAqB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAyB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAiB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAyB6c,IAAI,CAAC;QAAGE,KAAK;QAAMC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAA0B6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAgB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAsB6c,IAAI,CAAC;QAAGE,KAAK;QAAMC,KAAK;IAAG;IAAG;QAAEhd,MAAM;QAAqB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAsB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAmB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAe6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAA8B6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAoB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAO;IAAG;QAAEhd,MAAM;QAA4B6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAG;IAAG;QAAEhd,MAAM;QAAwB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAuB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAkB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAwB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAO;IAAG;QAAEhd,MAAM;QAAmB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAiB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAyB6c,IAAI,CAAC;QAAGE,KAAK;QAAMC,KAAK;IAAO;IAAG;QAAEhd,MAAM;QAAe6c,IAAI,CAAC;QAAGE,KAAK;QAAMC,KAAK;IAAO;IAAG;QAAEhd,MAAM;QAAiB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAA2B6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAgB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAa6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAa6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAmB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAU6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAO;IAAG;QAAEhd,MAAM;QAAkB6c,IAAI,CAAC;QAAGE,KAAK;QAAMC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAe6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAoB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAO;IAAG;QAAEhd,MAAM;QAAU6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAQ6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAW6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAW6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAW6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAS6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAW6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAW6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAS6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAW6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAU6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAU6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAU6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAS6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAW6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAQ6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAO6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAS6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAW6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAW6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAS6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAW6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAU6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAG;IAAG;QAAEhd,MAAM;QAAgB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK;IAAE;IAAG;QAAEhd,MAAM;QAAY6c,IAAI;QAAGE,KAAK;QAAOC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAa6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAY6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAE;IAAG;QAAEhd,MAAM;QAAY6c,IAAI;QAAGE,KAAK;QAAOC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAW6c,IAAI;QAAGE,KAAK;QAAOC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAgB6c,IAAI;QAAGE,KAAK;QAAMC,KAAK;IAAI;IAAG;QAAEhd,MAAM;QAAY6c,IAAI;QAAGE,KAAK;QAAOC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAY6c,IAAI;QAAGE,KAAK;QAAOC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAY6c,IAAI;QAAGE,KAAK;QAAOC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAS6c,IAAI;QAAGE,KAAK;QAAOC,KAAK;IAAI;IAAG;QAAEhd,MAAM;QAAS6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAS6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAU6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAG;IAAG;QAAEhd,MAAM;QAAY6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAW6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAS6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAU6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAS6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAY6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAS6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAoB6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAa6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAc6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAS6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAe6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAQ6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAY6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAG;IAAG;QAAEhd,MAAM;QAAa6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAQ6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAa6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAY6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAS6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAa6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAW6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAQ6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAS6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAS6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAY6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAU6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAQ6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAa6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAW6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAU6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAQ6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAU6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAgB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAW6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAa6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAsB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAW6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAa6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAe6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAY6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAU6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAY6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAY6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAW6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAW6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAW6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAU6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAQ6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAW6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAkB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAc6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAW6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAU6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAY6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAU6c,IAAI;QAAGE,KAAK;QAAIC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAU6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAW6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAY6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAY6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAa6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAU6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAS6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAU6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAU6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAY6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAa6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAmB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAmB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAS6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAO;IAAG;QAAEhd,MAAM;QAAY6c,IAAI,CAAC;QAAGE,KAAK,CAAC;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAa6c,IAAI,CAAC;QAAGE,KAAK,CAAC;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAgB6c,IAAI,CAAC;QAAGE,KAAK,CAAC;QAAMC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAsB6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAO;IAAG;QAAEhd,MAAM;QAAa6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAO;IAAG;QAAEhd,MAAM;QAAoB6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAO;IAAG;QAAEhd,MAAM;QAAY6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAO;IAAG;QAAEhd,MAAM;QAAY6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAO;IAAG;QAAEhd,MAAM;QAAW6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAO;IAAG;QAAEhd,MAAM;QAAqB6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAqB6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAS6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAY6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAS6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAqB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAU6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAA6B6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAO;IAAG;QAAEhd,MAAM;QAAgB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAO;IAAG;QAAEhd,MAAM;QAAY6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAQ6c,IAAI,CAAC;QAAGE,KAAK,CAAC;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAU6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAY6c,IAAI;QAAIE,KAAK,CAAC;QAAOC,KAAK,CAAC;IAAO;IAAG;QAAEhd,MAAM;QAAY6c,IAAI;QAAIE,KAAK,CAAC;QAAOC,KAAK,CAAC;IAAO;IAAG;QAAEhd,MAAM;QAAU6c,IAAI;QAAIE,KAAK,CAAC;QAAOC,KAAK,CAAC;IAAO;IAAG;QAAEhd,MAAM;QAAuB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAA0B6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAU6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAa6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAO;IAAG;QAAEhd,MAAM;QAAU6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAW6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAa6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAW6c,IAAI;QAAGE,KAAK;QAAIC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAU6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAsB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAW6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAQ6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAS6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAc6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAU6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAiB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAQ6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAW6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAW6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAa6c,IAAI;QAAGE,KAAK;QAAOC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAe6c,IAAI;QAAGE,KAAK;QAAOC,KAAK;IAAI;IAAG;QAAEhd,MAAM;QAAY6c,IAAI;QAAGE,KAAK;QAAOC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAa6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAY6c,IAAI;QAAGE,KAAK;QAAOC,KAAK;IAAI;IAAG;QAAEhd,MAAM;QAAW6c,IAAI;QAAGE,KAAK;QAAOC,KAAK;IAAI;IAAG;QAAEhd,MAAM;QAAc6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAU6c,IAAI;QAAGE,KAAK;QAAOC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAW6c,IAAI;QAAGE,KAAK;QAAOC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAa6c,IAAI;QAAGE,KAAK;QAAOC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAU6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAa6c,IAAI;QAAGE,KAAK;QAAIC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAmB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAQ6c,IAAI;QAAGE,KAAK;QAAOC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAa6c,IAAI;QAAGE,KAAK;QAAOC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAS6c,IAAI;QAAGE,KAAK;QAAOC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAa6c,IAAI;QAAGE,KAAK;QAAMC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAW6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAI;IAAG;QAAEhd,MAAM;QAAc6c,IAAI;QAAGE,KAAK;QAAOC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAU6c,IAAI;QAAGE,KAAK;QAAOC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAY6c,IAAI;QAAGE,KAAK;QAAOC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAc6c,IAAI;QAAGE,KAAK;QAAMC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAY6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAW6c,IAAI;QAAGE,KAAK;QAAOC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAa6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAI;IAAG;QAAEhd,MAAM;QAAgB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAY6c,IAAI;QAAGE,KAAK;QAAOC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAmB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAa6c,IAAI;QAAGE,KAAK;QAAOC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAW6c,IAAI;QAAGE,KAAK;QAAOC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAQ6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAmB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAiB6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAU6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAW6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAY6c,IAAI;QAAGE,KAAK;QAAOC,KAAK;IAAI;IAAG;QAAEhd,MAAM;QAAW6c,IAAI;QAAGE,KAAK;QAAOC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAW6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAW6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAI;IAAG;QAAEhd,MAAM;QAAY6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAY6c,IAAI;QAAGE,KAAK;QAAOC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAY6c,IAAI;QAAGE,KAAK;QAAOC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAkB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAI;IAAG;QAAEhd,MAAM;QAAoB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAc6c,IAAI;QAAGE,KAAK;QAAMC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAQ6c,IAAI;QAAGE,KAAK;QAAOC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAoB6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAU6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAc6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAa6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAqB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAqB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAoB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAU6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAS6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAmB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAU6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAY6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAY6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAe6c,IAAI;QAAGE,KAAK;QAAOC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAoB6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAY6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAS6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAW6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAQ6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAiB6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAU6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAI;IAAG;QAAEhd,MAAM;QAAQ6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAe6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAA2B6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAS6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAI;IAAG;QAAEhd,MAAM;QAAY6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAoB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAmB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAI;IAAG;QAAEhd,MAAM;QAAa6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAS6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAS6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAoB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAQ6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAY6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAS6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAU6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAmB6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAU6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAc6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAA4B6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAc6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAA0B6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAqB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAiB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAO;IAAG;QAAEhd,MAAM;QAAiB6c,IAAI,CAAC;QAAGE,KAAK;QAAMC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAe6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAiB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAkB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAyB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAyB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAuB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAuB6c,IAAI;QAAGE,KAAK,CAAC;QAAMC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAiB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAU6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAuB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAqB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAW6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAA0B6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAO;IAAG;QAAEhd,MAAM;QAAkB6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAkB6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAI;IAAG;QAAEhd,MAAM;QAAiB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAO;IAAG;QAAEhd,MAAM;QAAa6c,IAAI;QAAGE,KAAK,CAAC;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAkB6c,IAAI,CAAC;QAAGE,KAAK;QAAMC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAc6c,IAAI,CAAC;QAAGE,KAAK;QAAMC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAe6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAe6c,IAAI,CAAC;QAAGE,KAAK;QAAMC,KAAK;IAAO;IAAG;QAAEhd,MAAM;QAAkB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAmB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAmB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAoB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAkB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAoB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAe6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAe6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAkB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAW6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAoB6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAiB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAkB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAO;IAAG;QAAEhd,MAAM;QAAe6c,IAAI;QAAGE,KAAK;QAAIC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAiB6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAmB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAmB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAY6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAQ6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAa6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAQ6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAe6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAc6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAqB6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAiB6c,IAAI,CAAC;QAAGE,KAAK;QAAMC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAA0B6c,IAAI;QAAGE,KAAK,CAAC;QAAMC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAmB6c,IAAI,CAAC;QAAGE,KAAK;QAAMC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAwB6c,IAAI,CAAC;QAAGE,KAAK;QAAMC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAsB6c,IAAI;QAAGE,KAAK;QAAGC,KAAK;IAAE;IAAG;QAAEhd,MAAM;QAAc6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAa6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAU6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAkB6c,IAAI;QAAGE,KAAK;QAAIC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAe6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAkB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAkB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAc6c,IAAI,CAAC;QAAIE,KAAK;QAAMC,KAAK;IAAO;IAAG;QAAEhd,MAAM;QAAY6c,IAAI,CAAC;QAAIE,KAAK;QAAMC,KAAK;IAAO;IAAG;QAAEhd,MAAM;QAAW6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAE;IAAG;QAAEhd,MAAM;QAAU6c,IAAI;QAAGE,KAAK,CAAC;QAAKC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAiB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAO;IAAG;QAAEhd,MAAM;QAAsB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAS6c,IAAI;QAAGE,KAAK,CAAC;QAAOC,KAAK,CAAC;IAAO;IAAG;QAAEhd,MAAM;QAAc6c,IAAI;QAAGE,KAAK;QAAKC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAe6c,IAAI;QAAGE,KAAK;QAAMC,KAAK;IAAI;IAAG;QAAEhd,MAAM;QAAa6c,IAAI;QAAGE,KAAK,CAAC;QAAMC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAmB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAO;IAAG;QAAEhd,MAAM;QAAgB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAO;IAAG;QAAEhd,MAAM;QAAc6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAO;IAAG;QAAEhd,MAAM;QAAc6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAO;IAAG;QAAEhd,MAAM;QAAkB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAO;IAAG;QAAEhd,MAAM;QAAe6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAO;IAAG;QAAEhd,MAAM;QAAgB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAO;IAAG;QAAEhd,MAAM;QAAsB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAO;IAAG;QAAEhd,MAAM;QAAgB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAO;IAAG;QAAEhd,MAAM;QAAqB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAkB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAO;IAAG;QAAEhd,MAAM;QAAgB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAO;IAAG;QAAEhd,MAAM;QAAW6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAW6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAO;IAAG;QAAEhd,MAAM;QAAa6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAO;IAAG;QAAEhd,MAAM;QAAc6c,IAAI,CAAC;QAAGE,KAAK;QAAMC,KAAK;IAAO;IAAG;QAAEhd,MAAM;QAAmC6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAO;IAAG;QAAEhd,MAAM;QAA8B6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAO;IAAG;QAAEhd,MAAM;QAAW6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAa6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAe6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAW6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAW6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAa6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAe6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAO;IAAG;QAAEhd,MAAM;QAAkB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAc6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAa6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAc6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAU6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAY6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAY6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAa6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAmB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAe6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAa6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAU6c,IAAI,CAAC;QAAGE,KAAK;QAAMC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAgB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAiB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAkB6c,IAAI,CAAC;QAAGE,KAAK;QAAMC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAW6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAe6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAW6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAQ6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAY6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAS6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAc6c,IAAI,CAAC;QAAGE,KAAK;QAAMC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAiB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAU6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAO;IAAG;QAAEhd,MAAM;QAAc6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAO;IAAG;QAAEhd,MAAM;QAAa6c,IAAI,CAAC;QAAGE,KAAK;QAAMC,KAAK;IAAO;IAAG;QAAEhd,MAAM;QAAU6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAO;IAAG;QAAEhd,MAAM;QAAa6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAO;IAAG;QAAEhd,MAAM;QAAU6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAa6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAkB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAO;IAAG;QAAEhd,MAAM;QAAU6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAO;IAAG;QAAEhd,MAAM;QAAe6c,IAAI;QAAGE,KAAK,CAAC;QAAMC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAc6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAW6c,IAAI;QAAGE,KAAK;QAAMC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAwB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAS6c,IAAI,CAAC;QAAGE,KAAK,CAAC;QAAMC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAqB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAmB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAgB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAiB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAsB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAgB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAmB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAqB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAc6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAU6c,IAAI;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAoB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAqB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAkB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAqB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAS6c,IAAI;QAAGE,KAAK;QAAMC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAW6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAQ6c,IAAI;QAAIE,KAAK;QAAOC,KAAK;IAAO;IAAG;QAAEhd,MAAM;QAAS6c,IAAI;QAAIE,KAAK;QAAOC,KAAK;IAAO;IAAG;QAAEhd,MAAM;QAAsB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAa6c,IAAI;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAgB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAoB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAO;IAAG;QAAEhd,MAAM;QAAmB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAG;IAAG;QAAEhd,MAAM;QAAiB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAe6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAc6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAgB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAmB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAc6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAuB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAsB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAiB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAsB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAmB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAuB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAwB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAoB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAiB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAe6c,IAAI,CAAC;QAAGE,KAAK;QAAMC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAiB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAkB6c,IAAI,CAAC;QAAGE,KAAK;QAAMC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAgB6c,IAAI,CAAC;QAAGE,KAAK;QAAMC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAA0B6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAO;IAAG;QAAEhd,MAAM;QAAsB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAuB6c,IAAI,CAAC;QAAGE,KAAK;QAAMC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAe6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAqB6c,IAAI,CAAC;QAAGE,KAAK;QAAIC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAiB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAe6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAU6c,IAAI;QAAGE,KAAK,CAAC;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAY6c,IAAI;QAAGE,KAAK;QAAKC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAW6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAA0B6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAyB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAgB6c,IAAI;QAAGE,KAAK,CAAC;QAAMC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAkB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAiB6c,IAAI,CAAC;QAAGE,KAAK;QAAMC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAY6c,IAAI;QAAGE,KAAK,CAAC;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAU6c,IAAI;QAAGE,KAAK;QAAMC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAgB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAiB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAkB6c,IAAI,CAAC;QAAGE,KAAK;QAAMC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAe6c,IAAI,CAAC;QAAGE,KAAK;QAAMC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAgB6c,IAAI,CAAC;QAAGE,KAAK;QAAMC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAc6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAkB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAkB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAiB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAc6c,IAAI;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAoB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAgB6c,IAAI,CAAC;QAAGE,KAAK;QAAMC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAa6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAoB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAe6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAiB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAe6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAe6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAqB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAwB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAwB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAuB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAuB6c,IAAI,CAAC;QAAGE,KAAK;QAAMC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAyB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAwB6c,IAAI,CAAC;QAAGE,KAAK;QAAMC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAwB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAsB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAoB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAyB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAwB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAuB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAyB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAqB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAkB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAO;IAAG;QAAEhd,MAAM;QAAwB6c,IAAI,CAAC;QAAGE,KAAK;QAAMC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAmB6c,IAAI,CAAC;QAAGE,KAAK;QAAMC,KAAK;IAAO;IAAG;QAAEhd,MAAM;QAAS6c,IAAI;QAAGE,KAAK;QAAOC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAU6c,IAAI;QAAGE,KAAK,CAAC;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAY6c,IAAI;QAAGE,KAAK,CAAC;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAqB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAmB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAO;IAAG;QAAEhd,MAAM;QAAY6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAO;IAAG;QAAEhd,MAAM;QAA0B6c,IAAI,CAAC;QAAGE,KAAK;QAAMC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAA6B6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAA6B6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAqB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAc6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAmB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAgB6c,IAAI,CAAC;QAAGE,KAAK;QAAMC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAe6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAmB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAO;IAAG;QAAEhd,MAAM;QAAc6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAO;IAAG;QAAEhd,MAAM;QAAgB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAO;IAAG;QAAEhd,MAAM;QAAc6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAkB6c,IAAI,CAAC;QAAGE,KAAK;QAAMC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAe6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAqB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAoB6c,IAAI,CAAC;QAAGE,KAAK;QAAMC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAiB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAmB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAgB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAY6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAa6c,IAAI,CAAC;QAAGE,KAAK;QAAMC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAoB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAe6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAY6c,IAAI;QAAIE,KAAK,CAAC;QAAOC,KAAK,CAAC;IAAO;IAAG;QAAEhd,MAAM;QAAU6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAS6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAiB6c,IAAI,CAAC;QAAGE,KAAK;QAAMC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAc6c,IAAI,CAAC;QAAGE,KAAK;QAAIC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAkB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAkB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAqB6c,IAAI,CAAC;QAAGE,KAAK;QAAMC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAsB6c,IAAI,CAAC;QAAGE,KAAK;QAAMC,KAAK;IAAO;IAAG;QAAEhd,MAAM;QAAoB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAoB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAa6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAc6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAgB6c,IAAI,CAAC;QAAGE,KAAK;QAAMC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAY6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAc6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAmB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAoB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAc6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAkB6c,IAAI,CAAC;QAAGE,KAAK;QAAMC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAkB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAkB6c,IAAI,CAAC;QAAGE,KAAK;QAAMC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAiB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAmB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAG;IAAG;QAAEhd,MAAM;QAAqB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAoB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAO;IAAG;QAAEhd,MAAM;QAAyB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAA2B6c,IAAI,CAAC;QAAGE,KAAK;QAAMC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAsB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAA4B6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAA2B6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAA2B6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAyB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAA0B6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAA8B6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAsB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAU6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAI;IAAG;QAAEhd,MAAM;QAAU6c,IAAI;QAAGE,KAAK,CAAC;QAAMC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAS6c,IAAI;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAa6c,IAAI;QAAGE,KAAK;QAAGC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAgB6c,IAAI,CAAC;QAAGE,KAAK;QAAIC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAkB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAmB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAwB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAO;IAAG;QAAEhd,MAAM;QAA4B6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAO;IAAG;QAAEhd,MAAM;QAA6B6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAY6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAc6c,IAAI;QAAGE,KAAK,CAAC;QAAMC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAA2B6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAyB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAe6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAgB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAO;IAAG;QAAEhd,MAAM;QAAc6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAgB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAmB6c,IAAI,CAAC;QAAGE,KAAK;QAAMC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAsB6c,IAAI,CAAC;QAAGE,KAAK;QAAMC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAe6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAO;IAAG;QAAEhd,MAAM;QAAgB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAiB6c,IAAI,CAAC;QAAGE,KAAK;QAAMC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAc6c,IAAI,CAAC;QAAGE,KAAK;QAAMC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAe6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAO;IAAG;QAAEhd,MAAM;QAAgB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAmB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAkB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAO;IAAG;QAAEhd,MAAM;QAAiB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAY6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAS6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAQ6c,IAAI;QAAGE,KAAK;QAAKC,KAAK,CAAC;IAAI;IAAG;QAAEhd,MAAM;QAAS6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAW6c,IAAI;QAAGE,KAAK;QAAKC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAe6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAO;IAAG;QAAEhd,MAAM;QAAe6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAO;IAAG;QAAEhd,MAAM;QAAe6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAO;IAAG;QAAEhd,MAAM;QAAmB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAkB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAS6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAO;IAAG;QAAEhd,MAAM;QAAqB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAwB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAsB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAsB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAkB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAO;IAAG;QAAEhd,MAAM;QAAe6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAO;IAAG;QAAEhd,MAAM;QAAc6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAO;IAAG;QAAEhd,MAAM;QAAmB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAO;IAAG;QAAEhd,MAAM;QAAc6c,IAAI,CAAC;QAAGE,KAAK;QAAMC,KAAK;IAAO;IAAG;QAAEhd,MAAM;QAAY6c,IAAI;QAAGE,KAAK;QAAMC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAA6B6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAA6B6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAA2B6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAyB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAwB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAsB6c,IAAI,CAAC;QAAGE,KAAK;QAAMC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAqB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAwB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAuB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAqB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAO;IAAG;QAAEhd,MAAM;QAAqB6c,IAAI,CAAC;QAAGE,KAAK;QAAMC,KAAK;IAAO;IAAG;QAAEhd,MAAM;QAAU6c,IAAI;QAAGE,KAAK,CAAC;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAY6c,IAAI;QAAGE,KAAK,CAAC;QAAMC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAU6c,IAAI;QAAGE,KAAK,CAAC;QAAMC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAa6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAY6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAO;IAAG;QAAEhd,MAAM;QAAe6c,IAAI;QAAIE,KAAK;QAAOC,KAAK,CAAC;IAAO;IAAG;QAAEhd,MAAM;QAAuB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAkB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAmB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAuB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAA2B6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAuB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAyB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAQ6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAA0B6c,IAAI;QAAIE,KAAK,CAAC;QAAOC,KAAK,CAAC;IAAO;IAAG;QAAEhd,MAAM;QAAiB6c,IAAI;QAAGE,KAAK,CAAC;QAAMC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAqB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAA6B6c,IAAI,CAAC;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAqB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAO;IAAG;QAAEhd,MAAM;QAAkB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAuB6c,IAAI,CAAC;QAAGE,KAAK,CAAC;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAA2B6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAO;IAAG;QAAEhd,MAAM;QAAiB6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAO;IAAG;QAAEhd,MAAM;QAAkB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAqB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAwB6c,IAAI;QAAGE,KAAK,CAAC;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAA2B6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAW6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAkB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAA0B6c,IAAI;QAAGE,KAAK;QAAKC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAsB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAkB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAsB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAO;IAAG;QAAEhd,MAAM;QAAsB6c,IAAI;QAAGE,KAAK,CAAC;QAAMC,KAAK,CAAC;IAAO;IAAG;QAAEhd,MAAM;QAAmB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAsB6c,IAAI;QAAIE,KAAK;QAAOC,KAAK,CAAC;IAAO;IAAG;QAAEhd,MAAM;QAAmB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAsB6c,IAAI,CAAC;QAAGE,KAAK,CAAC;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAwB6c,IAAI,CAAC;QAAGE,KAAK,CAAC;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAqB6c,IAAI;QAAGE,KAAK;QAAMC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAgB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAsB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAU6c,IAAI,CAAC;QAAGE,KAAK,CAAC;QAAMC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAwB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAsB6c,IAAI;QAAGE,KAAK,CAAC;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAuB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAmB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAI;IAAG;QAAEhd,MAAM;QAAmB6c,IAAI;QAAGE,KAAK,CAAC;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAkB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAyB6c,IAAI;QAAIE,KAAK,CAAC;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAoB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAmB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAgB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAO;IAAG;QAAEhd,MAAM;QAAuB6c,IAAI,CAAC;QAAGE,KAAK;QAAMC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAA0B6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAO;IAAG;QAAEhd,MAAM;QAAyB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAyB6c,IAAI;QAAGE,KAAK,CAAC;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAiC6c,IAAI;QAAIE,KAAK,CAAC;QAAMC,KAAK,CAAC;IAAI;IAAG;QAAEhd,MAAM;QAAoB6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAA0B6c,IAAI;QAAGE,KAAK,CAAC;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAA6B6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAqC6c,IAAI,CAAC;QAAGE,KAAK;QAAMC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAe6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAmB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAqB6c,IAAI,CAAC;QAAIE,KAAK,CAAC;QAAMC,KAAK;IAAO;IAAG;QAAEhd,MAAM;QAAyB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAyB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAkB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAmB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAmB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAO;IAAG;QAAEhd,MAAM;QAAwB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAwB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAmB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAO;IAAG;QAAEhd,MAAM;QAA2B6c,IAAI;QAAIE,KAAK,CAAC;QAAMC,KAAK,CAAC;IAAO;IAAG;QAAEhd,MAAM;QAAoB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAc6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAW6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAqB6c,IAAI;QAAGE,KAAK;QAAIC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAkB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAoB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAkB6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAqB6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAsB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAmB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAiB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAkB6c,IAAI;QAAGE,KAAK;QAAIC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAmB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAwB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAkC6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAuB6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAA2B6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAgC6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAS6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAgB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAU6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAc6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAc6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAa6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAQ6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAa6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAQ6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAa6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAa6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAiB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAa6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAA0B6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAY6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAe6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAgB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAA0B6c,IAAI;QAAGE,KAAK;QAAOC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAgB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAe6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAkB6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAI;IAAG;QAAEhd,MAAM;QAAkB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAoB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAoB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAqB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAkB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAqB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAkB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAE;IAAG;QAAEhd,MAAM;QAAmB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAkB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAmB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAI;IAAG;QAAEhd,MAAM;QAAqB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAoC6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAqB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAI;IAAG;QAAEhd,MAAM;QAAmB6c,IAAI;QAAGE,KAAK;QAAIC,KAAK,CAAC;IAAI;IAAG;QAAEhd,MAAM;QAAoB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAqB6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAI;IAAG;QAAEhd,MAAM;QAAqB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAiB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAqB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAI;IAAG;QAAEhd,MAAM;QAAqB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAuB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAI;IAAG;QAAEhd,MAAM;QAAmB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAe6c,IAAI;QAAGE,KAAK;QAAMC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAqB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAsB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAoB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAiB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAkB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAkB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAuB6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAI;IAAG;QAAEhd,MAAM;QAAqB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAyB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAI;IAAG;QAAEhd,MAAM;QAAsB6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAoC6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAyB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAsB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAyB6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAmB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAiB6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAoB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAkB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAsB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAgB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAI;IAAG;QAAEhd,MAAM;QAAkB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAmB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAI;IAAG;QAAEhd,MAAM;QAAwB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAsB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAkB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAiB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAqB6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAoB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAsB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAmC6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAA2B6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAoB6c,IAAI;QAAGE,KAAK;QAAIC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAoB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAoB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAqB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAuB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAA0B6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAqB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAsB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAmB6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAuB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAoB6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAqB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAuB6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAoB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAK;IAAG;QAAEhd,MAAM;QAAa6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAc6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAgB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAA6B6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAW6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAQ6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAY6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAc6c,IAAI;QAAGE,KAAK;QAAMC,KAAK,CAAC;IAAM;IAAG;QAAEhd,MAAM;QAAiB6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAa6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;IAAG;QAAEhd,MAAM;QAAuB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAuB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAM;IAAG;QAAEhd,MAAM;QAAiB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAO;IAAG;QAAEhd,MAAM;QAAiB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAO;IAAG;QAAEhd,MAAM;QAAiB6c,IAAI,CAAC;QAAGE,KAAK;QAAOC,KAAK;IAAO;IAAG;QAAEhd,MAAM;QAAY6c,IAAI;QAAGE,KAAK;QAAOC,KAAK,CAAC;IAAK;CAAE;AAE915E,mBAAmB;AACnB,IAAI1b,YAAYqb,kBAAkB9Y,GAAG,CAAC,SAACqZ;WAAM,IAAI7b,SAAS6b,EAAEld,IAAI,EAAEkd,EAAEhZ,GAAG,EAAE,CAAC,CAACgZ,EAAEN,EAAE,EAAEM,EAAEH,GAAG,EAAEG,EAAEF,GAAG,EAAEE,EAAEL,EAAE,EAAEK,EAAEJ,EAAE,IAAI,GAAGI,EAAED,EAAE;;AACpH3b,UAAU6b,IAAI,CAAC,SAASC,CAAC,EAAEC,CAAC;IAC1B,OAAOD,EAAEzB,IAAI,GAAG0B,EAAE1B,IAAI,GAAG,IAAI0B,EAAE1B,IAAI,GAAGyB,EAAEzB,IAAI,GAAG,CAAC,IAAI;AACtD;AACA,IAAI2B,YAAY,EAAE;AAClB,IAAK,IAAI3Z,IAAI,GAAGA,IAAIrC,UAAUmC,MAAM,GAAG,GAAGE,IAAK;IAC7C,IAAMuZ,IAAI5b,SAAS,CAACqC,EAAE;IACtB2Z,UAAU5O,IAAI,CAAC;QACb1O,MAAMkd,EAAEvB,IAAI,CAAC4B,KAAK,CAAC,KAAK,EAAE,CAAC,EAAE,CAACrB,WAAW;QACzC7Y,OAAOM;IACT;IACA,IAAI,CAAC,CAACuZ,EAAEtB,UAAU,EAAE;QAClB0B,UAAU5O,IAAI,CAAC;YACb1O,MAAMkd,EAAEtB,UAAU;YAClBvY,OAAOM;QACT;IACF;AACF;AACA,SAAS6Z,qBAAqBC,MAAM,EAAEC,MAAM;IAC1C,IAAID,OAAOpO,QAAQ,IAAIqO,OAAOrO,QAAQ,IAAIoO,OAAOrO,SAAS,IAAIsO,OAAOtO,SAAS,EAAE;QAC9E,OAAO;IACT,OAAO;QACL,IAAIuO,UAAU5Y,KAAK6Y,EAAE,GAAGH,OAAOpO,QAAQ,GAAG;QAC1C,IAAIwO,UAAU9Y,KAAK6Y,EAAE,GAAGF,OAAOrO,QAAQ,GAAG;QAC1C,IAAIyO,QAAQL,OAAOrO,SAAS,GAAGsO,OAAOtO,SAAS;QAC/C,IAAI2O,WAAWhZ,KAAK6Y,EAAE,GAAGE,QAAQ;QACjC,IAAIE,OAAOjZ,KAAKoM,GAAG,CAACwM,WAAW5Y,KAAKoM,GAAG,CAAC0M,WAAW9Y,KAAKiM,GAAG,CAAC2M,WAAW5Y,KAAKiM,GAAG,CAAC6M,WAAW9Y,KAAKiM,GAAG,CAAC+M;QACpG,IAAIC,OAAO,GAAG;YACZA,OAAO;QACT;QACAA,OAAOjZ,KAAK+L,IAAI,CAACkN;QACjBA,OAAOA,OAAO,MAAMjZ,KAAK6Y,EAAE;QAC3BI,OAAOA,OAAO,KAAK;QACnBA,OAAOA,OAAO;QACd,OAAOA;IACT;AACF;AACA,SAAShc,qBAAqBic,KAAK;IACjC,IAAIC,OAAO;QAAEF,MAAM;IAAI;QAClB,kCAAA,2BAAA;;QAAL,QAAK,YAAgB1c,8BAAhB,SAAA,6BAAA,QAAA,yBAAA,iCAA2B;YAA3B,IAAIqL,WAAJ;YACH,IAAMqR,OAAOR,qBAAqBS,OAAO;gBAAE5O,UAAU1C,SAASuE,QAAQ;gBAAE9B,WAAWzC,SAASsE,SAAS;YAAC;YACtG,IAAI+M,OAAOE,KAAKF,IAAI,EAAE;gBACpBE,OAAO;oBAAEF,MAAAA;oBAAMrR,UAAAA;gBAAS;YAC1B;QACF;;QALK;QAAA;;;iBAAA,6BAAA;gBAAA;;;gBAAA;sBAAA;;;;IAML,OAAOuR,KAAKvR,QAAQ;AACtB;AACA,SAAS1K,iBAAiBkc,GAAG;IAC3B,IAAID,OAAO;QAAEF,MAAM;IAAI;QAClB,kCAAA,2BAAA;;QAAL,QAAK,YAAgBV,8BAAhB,SAAA,6BAAA,QAAA,yBAAA,iCAA2B;YAA3B,IAAI3Q,WAAJ;YACH,IAAMqR,OAAO,AAAC,CAAA,GAAGvB,qBAAqB2B,QAAO,AAAC,EAAED,IAAIjC,WAAW,IAAIvP,SAAS3M,IAAI;YAChF,IAAIge,OAAOE,KAAKF,IAAI,EAAE;gBACpBE,OAAO;oBAAEF,MAAAA;oBAAMrR,UAAAA;gBAAS;YAC1B;QACF;;QALK;QAAA;;;iBAAA,6BAAA;gBAAA;;;gBAAA;sBAAA;;;;IAML,OAAOuR,KAAKvR,QAAQ,GAAGrL,SAAS,CAAC4c,KAAKvR,QAAQ,CAACtJ,KAAK,CAAC,GAAG,KAAK;AAC/D;AACA,SAASnB,aAAamc,iBAAiB;IACrC,IAAI,OAAOA,sBAAsB,UAAU;QACzC,IAAMC,iBAAiBhd,UAAU4M,IAAI,CAAC,SAACgP;mBAAMA,EAAEvB,IAAI,CAACO,WAAW,OAAOmC,kBAAkBnC,WAAW,MAAMgB,EAAEtB,UAAU,KAAKyC;;QAC1H,IAAI,CAAC,CAACC,gBAAgB;YACpB,OAAOA;QACT;QACA,IAAMC,oBAAoBjB,UAAUpP,IAAI,CAAC,SAACgP;mBAAMA,EAAEld,IAAI,KAAKqe,kBAAkBnC,WAAW;;QACxF,IAAI,CAAC,CAACqC,mBAAmB;YACvB,OAAOjd,SAAS,CAACid,kBAAkBlb,KAAK,CAAC;QAC3C;QACA,OAAOpB,iBAAiBoc,kBAAkBnC,WAAW;IACvD,OAAO;QACL,IAAMsC,uBAAuBld,UAAU4M,IAAI,CAAC,SAACgP;mBAAMA,EAAEhM,QAAQ,KAAKmN,kBAAkBhP,QAAQ,IAAI6N,EAAEjM,SAAS,KAAKoN,kBAAkBjP,SAAS;;QAC3I,IAAI,CAAC,CAACoP,sBAAsB;YAC1B,OAAOA;QACT;QACA,OAAOxc,qBAAqBqc;IAC9B;AACF;AAEA,mBAAmB;AACnB,IAAIzc,cAAcxC,OAAO2U,MAAM,CAAC;IAC9B0K,cAAc;IACdC,QAAQ;IACRC,QAAQ;IACRC,eAAe;IACfC,iBAAiB;IACjBC,YAAY;IACZC,SAAS;IACTC,SAAS;IACTC,QAAQ;IACRC,QAAQ;IACRC,YAAY;IACZC,QAAQ;IACRC,QAAQ;IACRC,MAAM;IACNC,iBAAiB;IACjBC,gBAAgB;IAChBC,SAAS;IACTC,SAAS;IACTC,SAAS;IACTC,oBAAoB;IACpBC,uBAAuB;IACvBnE,gBAAgB;IAChBoE,sBAAsB;IACtBC,oBAAoB;AACtB;AACA,IAAIle,YAAY;IACd;QACEme,IAAIpe,YAAY6c,YAAY;QAC5Ble,MAAM;QACNwD,KAAK;QACLG,KAAK;IACP;IACA;QACE8b,IAAIpe,YAAY8c,MAAM;QACtBne,MAAM;QACNwD,KAAK;QACLG,KAAK;IACP;IACA;QACE8b,IAAIpe,YAAY+c,MAAM;QACtBpe,MAAM;QACNwD,KAAK;QACLG,KAAK;IACP;IACA;QACE8b,IAAIpe,YAAYgd,aAAa;QAC7Bre,MAAM;QACNwD,KAAK;QACLG,KAAK;IACP;IACA;QACE8b,IAAIpe,YAAYid,eAAe;QAC/Bte,MAAM;QACNwD,KAAK;QACLG,KAAK;IACP;IACA;QACE8b,IAAIpe,YAAYkd,UAAU;QAC1Bve,MAAM;QACNwD,KAAK;QACLG,KAAK;IACP;IACA;QACE8b,IAAIpe,YAAYmd,OAAO;QACvBxe,MAAM;QACNwD,KAAK;QACLG,KAAK;IACP;IACA;QACE8b,IAAIpe,YAAYod,OAAO;QACvBze,MAAM;QACNwD,KAAK;QACLG,KAAK;IACP;IACA;QACE8b,IAAIpe,YAAYqd,MAAM;QACtB1e,MAAM;QACNwD,KAAK;QACLG,KAAK;IACP;IACA;QACE8b,IAAIpe,YAAYsd,MAAM;QACtB3e,MAAM;QACNwD,KAAK;QACLG,KAAK;IACP;IACA;QACE8b,IAAIpe,YAAYud,UAAU;QAC1B5e,MAAM;QACNwD,KAAK;QACLG,KAAK;IACP;IACA;QACE8b,IAAIpe,YAAYwd,MAAM;QACtB7e,MAAM;QACNwD,KAAK;QACLG,KAAK;IACP;IACA;QACE8b,IAAIpe,YAAYyd,MAAM;QACtB9e,MAAM;QACNwD,KAAK;QACLG,KAAK;IACP;IACA;QACE8b,IAAIpe,YAAY0d,IAAI;QACpB/e,MAAM;QACNwD,KAAK;QACLG,KAAK;IACP;IACA;QACE8b,IAAIpe,YAAY2d,eAAe;QAC/Bhf,MAAM;QACNwD,KAAK;QACLG,KAAK;IACP;IACA;QACE8b,IAAIpe,YAAY4d,cAAc;QAC9Bjf,MAAM;QACNwD,KAAK;QACLG,KAAK;IACP;IACA;QACE8b,IAAIpe,YAAY6d,OAAO;QACvBlf,MAAM;QACNwD,KAAK;QACLG,KAAK;IACP;IACA;QACE8b,IAAIpe,YAAY8d,OAAO;QACvBnf,MAAM;QACNwD,KAAK;QACLG,KAAK;IACP;IACA;QACE8b,IAAIpe,YAAY+d,OAAO;QACvBpf,MAAM;QACNwD,KAAK;QACLG,KAAK;IACP;IACA;QACE8b,IAAIpe,YAAYge,kBAAkB;QAClCrf,MAAM;QACNwD,KAAK;QACLG,KAAK;IACP;IACA;QACE8b,IAAIpe,YAAYie,qBAAqB;QACrCtf,MAAM;QACNwD,KAAK;QACLG,KAAK;IACP;IACA;QACE8b,IAAIpe,YAAY8Z,cAAc;QAC9Bnb,MAAM;QACNwD,KAAK;QACLG,KAAK;IACP;IACA;QACE8b,IAAIpe,YAAYke,oBAAoB;QACpCvf,MAAM;QACNwD,KAAK;QACLG,KAAK;IACP;IACA;QACE8b,IAAIpe,YAAYme,kBAAkB;QAClCxf,MAAM;QACNwD,KAAK;QACLG,KAAK;IACP;CACD;AACD,SAAS9B,YAAY6d,QAAQ;IAC3B,OAAOpe,UAAUqM,IAAI,CAAC,SAACgS;eAAOA,GAAGF,EAAE,KAAKC,YAAYC,GAAGnc,GAAG,KAAKkc,YAAYC,GAAGhc,GAAG,KAAK+b,YAAYC,GAAG3f,IAAI,KAAK0f;;AAChH;AAEA,oBAAoB;AACpB,IAAI1e,sBAAQ;aAAM4e;gCAAAA;;;;YAMTC,KAAAA;mBALP,AAKA;;;;GADC,GACD,SAAOA,SAASnX,KAAK,EAAE5E,IAAI;gBACzB,IAAIgc,aAAaC,cAAcC,cAAclS,OAAOmS,WAAWvX,QAAQ;gBACvE,IAAIuX,WAAW,GAAG;oBAChBA,YAAYne,MAAMiI,WAAW,CAACjG;gBAChC;gBACAgc,cAAc1e,MAAMoF,KAAK,CAACyZ,WAAW,MAAM7e,MAAMoF,KAAK,CAAC,AAAC1C,CAAAA,OAAO,CAAA,IAAK,MAAM,KAAM,CAAA,AAACA,CAAAA,OAAO,CAAA,IAAK,EAAC,IAAK,AAAC,CAAA,AAACA,CAAAA,OAAO,CAAA,IAAK,KAAK,IAAI,CAAA,IAAK;gBAC/Hic,eAAe,MAAM,MAAOD,CAAAA,cAAc,IAAG;gBAC7CE,eAAe,IAAI,KAAKF,cAAc,MAAM1e,MAAMoF,KAAK,CAACsZ,cAAc,QAAQ1e,MAAMoF,KAAK,CAACuZ,eAAe,QAAQ;gBACjHjS,QAAQ1M,MAAMoF,KAAK,CAACuZ,eAAe,OAAO,OAAQC,CAAAA,eAAe,EAAC;gBAClE,OAAO;oBACLle,OAAO,IAAIA,MAAM,IAAI,KAAKV,MAAMoF,KAAK,CAACsZ,eAAe1e,MAAMoF,KAAK,CAACwZ,eAAe;oBAChFnN,MAAM;wBAAExB,MAAMjQ,MAAMoF,KAAK,CAACwZ,gBAAgB;wBAAIrO,QAAQvQ,MAAMoF,KAAK,CAACsH,QAAQ,OAAO;wBAAKqF,QAAQ;oBAAE;oBAChG+M,UAAUpS,QAAQ;gBACpB;YACF;;;YAQOqS,KAAAA;mBAPP,AAOA;;;;;;GADC,GACD,SAAOA,UAAUrc,IAAI,EAAE4E,KAAK;gBAC1B,IAAM0X,QAAQR,OAAOC,QAAQ,CAACnX,OAAO5E,OAAOuc,SAASD,MAAMte,KAAK,CAAC0K,gBAAgB,CAAC1L,SAASkb,YAAY,KAAKsE,UAAUlf,MAAM0V,WAAW,CAACuJ,OAAO5R,MAAM,EAAE2R,MAAMvN,IAAI,GAAG5G,MAAMmU,MAAMte,KAAK,CAACiE,YAAY;gBAClM,IAAIwa,MAAM;gBACV,IAAI,CAACF,OAAO5R,MAAM,IAAIiD,MAAM2O,OAAO5R,MAAM,CAAC4C,IAAI,GAAG;oBAC/CkP,OAAO9f,aAAa,CAACwL,IAAI;gBAC3B,OAAO,IAAIA,QAAQ,KAAKqU,SAAS;oBAC/BC,OAAO;gBACT,OAAO,IAAItU,QAAQ,KAAKqU,SAAS;oBAC/BC,OAAO;gBACT,OAAO;oBACLA,OAAO9f,aAAa,CAACwL,IAAI,GAAIqU,CAAAA,UAAU,WAAW,EAAC;gBACrD;gBACAC,OAAO,MAAMnf,MAAMsW,aAAa,CAAC0I,MAAMvN,IAAI,IAAI,UAAUuN,MAAMF,QAAQ,CAAC7c,QAAQ,KAAK;gBACrF,OAAOkd;YACT;;;YAQOC,KAAAA;mBAPP,AAOA;;;;;;GADC,GACD,SAAOA,aAAa1c,IAAI,EAAE4E,KAAK;gBAC7B,IAAM0X,QAAQR,OAAOC,QAAQ,CAACnX,OAAO5E,OAAOuc,SAASD,MAAMte,KAAK,CAAC0K,gBAAgB,CAAC1L,SAASkb,YAAY,KAAKsE,UAAUlf,MAAM0V,WAAW,CAACuJ,OAAO5R,MAAM,EAAE2R,MAAMvN,IAAI,KAAKzR,MAAM0V,WAAW,CAACsJ,MAAMvN,IAAI,EAAEwN,OAAO7R,OAAO,GAAGvC,MAAMmU,MAAMte,KAAK,CAACiE,YAAY;gBACnP,IAAIwa,MAAM;gBACV,IAAItU,QAAQ,GAAG;oBACbsU,OAAOD,UAAU,uDAAuD;gBAC1E,OAAO,IAAIrU,QAAQ,GAAG;oBACpBsU,OAAOD,UAAU,2CAA2C;gBAC9D,OAAO;oBACLC,OAAO,AAACD,CAAAA,UAAU,uBAAuB,oBAAmB,IAAK5f,aAAa,CAACuL,IAAI,CAACwU,OAAO,CAAC,sBAAsB;gBACpH;gBACAF,OAAO,MAAMnf,MAAMsW,aAAa,CAAC0I,MAAMvN,IAAI,EAAE,GAAG,QAAQ,MAAMuN,MAAMF,QAAQ,CAAC7c,QAAQ,KAAK;gBAC1F,OAAOkd;YACT;;;;;AAGF,0BAA0B;AAC1B,IAAIG,iBAAiB7hB,OAAO2U,MAAM,CAAC;IACjCC,QAAQ;IACRC,QAAQ;IACRC,SAAS;IACTC,WAAW;IACXC,UAAU;IACVC,QAAQ;IACRC,SAAS;IACT4M,QAAQ;AACV;AACA,IAAIC,6BAAe;aAAMA;gCAAAA;;;;YAShBC,KAAAA;mBARP,AAQA;;;;;;;GADC,GACD,SAAOA,aAAaC,SAAS,EAAEjd,IAAI,EAAEoD,KAAK,EAAEmF,QAAQ;gBAClD,IAAM2U,MAAMH,aAAaI,cAAc,CAACrT,IAAI,CAC1C,SAACsT;2BAAM7f,MAAM0X,WAAW,CAACmI,EAAEpd,IAAI,EAAEA,SAASod,EAAE7U,QAAQ,CAACgP,IAAI,KAAKhP,SAASgP,IAAI;oBAC1E8F,YAAY,EAAE,EAAEC,WAAWP,aAAaQ,YAAY,CAACvd,MAAMoD,OAAOmF;gBACrE,IAAIoC,SAASC,QAAQ4S,gBAAgBC,eAAeC,cAAcC,aAAaC,SAASC,YAAYC;gBACpG,IAAIZ,KAAK;oBACPvS,UAAUuS,IAAIvS,OAAO;oBACrBC,SAASsS,IAAItS,MAAM;oBACnB4S,iBAAiBN,IAAIM,cAAc;oBACnCC,gBAAgBP,IAAIO,aAAa;oBACjCC,eAAeR,IAAIQ,YAAY;oBAC/BC,cAAcT,IAAIS,WAAW;oBAC7BC,UAAUV,IAAIU,OAAO;oBACrBC,aAAaX,IAAIW,UAAU;oBAC3BC,gBAAgBZ,IAAIY,aAAa;gBACnC,OAAO;oBACL,IAAMC,WAAWrgB,OAAOmL,WAAW,CAAC7I,MAAMuI,UAAU;oBACpDoC,UAAUoT,SAASpT,OAAO;oBAC1BC,SAASmT,SAASnT,MAAM;oBACxB4S,iBAAiB9f,OAAOmL,WAAW,CAAC7I,MAAMuI,UAAU;oBACpDkV,gBAAgBD,eAAe7S,OAAO;oBACtC+S,eAAeF,eAAe5S,MAAM;oBACpC+S,cAAcpgB,MAAM4Q,UAAU,CAACsP,eAAe,CAAC;oBAC/CG,UAAUH,iBAAiBC,gBAAgBhgB,OAAO+P,sBAAsB,CAAC+P;oBACzEK,aAAaJ,iBAAiBC,gBAAgBhgB,OAAOwQ,yBAAyB,CAACsP;oBAC/EM,gBAAgBL,iBAAiBC,gBAAgBhgB,OAAO0Q,gBAAgB,CAACoP,gBAAgB;oBACzFT,aAAaI,cAAc,CAAC7S,IAAI,CAAC;wBAC/BtK,MAAAA;wBACAuI,UAAAA;wBACAoC,SAAAA;wBACAC,QAAAA;wBACA4S,gBAAAA;wBACAC,eAAAA;wBACAC,cAAAA;wBACAC,aAAAA;wBACAC,SAAAA;wBACAC,YAAAA;wBACAC,eAAAA;oBACF;gBACF;oBACK,kCAAA,2BAAA;;oBAAL,QAAK,YAAgBb,8BAAhB,SAAA,6BAAA,QAAA,yBAAA,iCAA2B;wBAA3B,IAAIe,WAAJ;wBACH,IAAMhV,SAASgV,SAAShV,MAAM,IAAK,CAAA,CAACgV,SAASC,cAAc,IAAID,SAASC,cAAc,GAAGX,QAAO,IAAKU,SAAShV,MAAM,GAAG;wBACvH,OAAQgV,SAASpC,EAAE;4BACjB,KAAKpe,YAAY6c,YAAY;gCAC3BgD,UAAU/S,IAAI,CAAC;oCACb0T,UAAAA;oCACAhP,MAAMzR,MAAM4Q,UAAU,CAACyP,SAAS,MAAM5U;gCACxC;gCACA;4BACF,KAAKxL,YAAY8c,MAAM;gCACrB+C,UAAU/S,IAAI,CAAC;oCACb0T,UAAAA;oCACAhP,MAAMhG,SAASzL,MAAM4Q,UAAU,CAACwP,aAAa3U,UAAU2U;gCACzD;gCACA;4BACF,KAAKngB,YAAY+c,MAAM;gCACrB8C,UAAU/S,IAAI,CAAC;oCACb0T,UAAAA;oCACAhP,MAAMzR,MAAM4Q,UAAU,CAACsP,eAAe,CAAC,KAAKzU;gCAC9C;gCACA;4BACF,KAAKxL,YAAYgd,aAAa;gCAC5B6C,UAAU/S,IAAI,CAAC;oCACb0T,UAAAA;oCACAhP,MAAMzR,MAAM4Q,UAAU,CAACsP,eAAe,CAAC,KAAKzU;gCAC9C;gCACA;4BACF,KAAKxL,YAAYid,eAAe;gCAC9B4C,UAAU/S,IAAI,CAAC;oCACb0T,UAAAA;oCACAhP,MAAMhG,SAASzL,MAAM4Q,UAAU,CAACxD,SAAS3B,UAAU2B;gCACrD;gCACA;4BACF,KAAKnN,YAAYkd,UAAU;gCACzB2C,UAAU/S,IAAI,CAAC;oCACb0T,UAAAA;oCACAhP,MAAMhG,SAASzL,MAAM4Q,UAAU,CAACsP,eAAezU,UAAUyU;gCAC3D;gCACA;4BACF,KAAKjgB,YAAYmd,OAAO;gCACtB,IAAImD,eACFT,UAAU/S,IAAI,CAAC;oCACb0T,UAAAA;oCACAhP,MAAMzR,MAAM4Q,UAAU,CACpBwP,aACAhd,KAAK6I,KAAK,CAACsU,gBAAgB,KAAK9U;gCAEpC;gCACF;4BACF,KAAKxL,YAAYod,OAAO;gCACtB,IAAIiD,YACFR,UAAU/S,IAAI,CAAC;oCACb0T,UAAAA;oCACAhP,MAAMzR,MAAM4Q,UAAU,CACpBsP,eACA9c,KAAK6I,KAAK,CAACqU,aAAa,KAAK7U;gCAEjC;gCACF;4BACF,KAAKxL,YAAYqd,MAAM;gCACrB,IAAIiD,eACFT,UAAU/S,IAAI,CAAC;oCACb0T,UAAAA;oCACAhP,MAAMzR,MAAM4Q,UAAU,CACpBwP,aACAhd,KAAK6I,KAAK,CAACsU,gBAAgB,KAAK9U;gCAEpC;gCACF;4BACF,KAAKxL,YAAYsd,MAAM;gCACrB,IAAI+C,YACFR,UAAU/S,IAAI,CAAC;oCACb0T,UAAAA;oCACAhP,MAAMzR,MAAM4Q,UAAU,CACpBsP,eACA9c,KAAK6I,KAAK,CAACqU,aAAa,KAAK7U;gCAEjC;gCACF;4BACF,KAAKxL,YAAYud,UAAU;gCACzBsC,UAAU/S,IAAI,CAAC;oCACb0T,UAAAA;oCACAhP,MAAMhG,SAASzL,MAAM4Q,UAAU,CAACyP,SAAS5U,UAAU4U;gCACrD;gCACA;4BACF,KAAKpgB,YAAYwd,MAAM;gCACrB,IAAI6C,YACFR,UAAU/S,IAAI,CAAC;oCACb0T,UAAAA;oCACAhP,MAAMzR,MAAM4Q,UAAU,CACpByP,SACAC,aAAa,MAAM7U;gCAEvB;gCACF;4BACF,KAAKxL,YAAYyd,MAAM;gCACrB,IAAI4C,YACFR,UAAU/S,IAAI,CAAC;oCACb0T,UAAAA;oCACAhP,MAAMzR,MAAM4Q,UAAU,CACpBsP,eACAI,aAAa,MAAM7U;gCAEvB;gCACF;4BACF,KAAKxL,YAAY0d,IAAI;gCACnB,IAAI2C,YACFR,UAAU/S,IAAI,CAAC;oCACb0T,UAAAA;oCACAhP,MAAMzR,MAAM4Q,UAAU,CACpBsP,eACAI,aAAa,QAAQ7U;gCAEzB;gCACF;4BACF,KAAKxL,YAAY2d,eAAe;gCAC9BkC,UAAU/S,IAAI,CAAC;oCACb0T,UAAAA;oCACAhP,MAAMhG,SAASzL,MAAM4Q,UAAU,CAACuP,cAAc1U,UAAU0U;gCAC1D;gCACA;4BACF,KAAKlgB,YAAY4d,cAAc;gCAC7BiC,UAAU/S,IAAI,CAAC;oCACb0T,UAAAA;oCACAhP,MAAMhG,SAASzL,MAAM4Q,UAAU,CAACvD,QAAQ5B,UAAU4B;gCACpD;gCACA;4BACF,KAAKpN,YAAY6d,OAAO;gCACtBgC,UAAU/S,IAAI,CAAC;oCACb0T,UAAAA;oCACAhP,MAAMzR,MAAM4Q,UAAU,CAACvD,QAAQ,KAAK5B;gCACtC;gCACA;4BACF,KAAKxL,YAAY8d,OAAO;gCACtB+B,UAAU/S,IAAI,CAAC;oCACb0T,UAAAA;oCACAhP,MAAMzR,MAAM4Q,UAAU,CAACvD,QAAQ,KAAK5B;gCACtC;gCACA;4BACF,KAAKxL,YAAY+d,OAAO;gCACtB8B,UAAU/S,IAAI,CAAC;oCACb0T,UAAAA;oCACAhP,MAAMzR,MAAM4Q,UAAU,CAACvD,QAAQ,KAAK5B;gCACtC;gCACA;4BACF,KAAKxL,YAAYge,kBAAkB;gCACjC,IAAIqC,YACFR,UAAU/S,IAAI,CAAC;oCACb0T,UAAAA;oCACAhP,MAAMzR,MAAM4Q,UAAU,CACpBvD,QACAiT,aAAa,MAAM7U;gCAEvB;gCACF;4BACF,KAAKxL,YAAYie,qBAAqB;gCACpC,IAAIqC,eACFT,UAAU/S,IAAI,CAAC;oCACb0T,UAAAA;oCACAhP,MAAMzR,MAAM4Q,UAAU,CACpBvD,QACAkT,gBAAgB,MAAM9U;gCAE1B;gCACF;4BACF,KAAKxL,YAAY8Z,cAAc;gCAC7B,IAAI1M,UAAUxH,MAAM+E,iBAAiB,IAAI;oCACvCkV,UAAU/S,IAAI,CAAC;wCACb0T,UAAAA;wCACAhP,MAAMzR,MAAM4Q,UAAU,CACpBzQ,OAAO6Q,2BAA2B,CAChC3D,QACArC,WAEFS;oCAEJ;gCACF;gCACA;4BACF,KAAKxL,YAAYke,oBAAoB;gCACnC,IAAIoC,iBAAiB1a,MAAM7E,KAAK,KAAK,KAAK6E,MAAM5E,GAAG,KAAK,MAAMjB,MAAM0V,WAAW,CAACtI,SAASpN,MAAMqV,YAAY,CAAC5S,QAAQ;oCAClHqd,UAAU/S,IAAI,CAAC;wCACb0T,UAAAA;wCACAhP,MAAMzR,MAAM4Q,UAAU,CACpBxD,SACA,CAAC,KAAK3B,SAAS8U,gBAAgB;oCAEnC;gCACF;gCACA;4BACF,KAAKtgB,YAAYme,kBAAkB;gCACjC,IAAImC,iBAAiB1a,MAAM7E,KAAK,KAAK,KAAM6E,CAAAA,MAAM5E,GAAG,KAAK,MAAM4E,MAAMwC,SAAS,KAAKjJ,WAAWsT,MAAM,IAAI7M,MAAM5E,GAAG,KAAK,EAAC,KAAMjB,MAAM0V,WAAW,CAACtI,SAASpN,MAAMqV,YAAY,CAAC5S,QAAQ;oCACjLqd,UAAU/S,IAAI,CAAC;wCACb0T,UAAAA;wCACAhP,MAAMzR,MAAM4Q,UAAU,CACpBxD,SACA,CAAC,KAAK3B,SAAS8U,gBAAgB;oCAEnC;gCACF;gCACA;wBACJ;oBACF;;oBA1MK;oBAAA;;;6BAAA,6BAAA;4BAAA;;;4BAAA;kCAAA;;;;gBA2ML,OAAOT;YACT;;;YAOOE,KAAAA;mBANP,AAMA;;;;;GADC,GACD,SAAOA,aAAavd,IAAI,EAAEoD,KAAK,EAAEmF,QAAQ;gBACvC,IAAInF,MAAM2E,QAAQ,CAAC,CAAC,CAACQ,SAAS+L,MAAM,GAAG;oBACrC,OAAOuI,eAAeC,MAAM;gBAC9B;gBACA,OAAQ9c,KAAKyR,MAAM;oBACjB,KAAK9U,WAAWiT,MAAM;wBACpB,OAAOiN,eAAejN,MAAM;oBAC9B,KAAKjT,WAAWkT,MAAM;wBACpB,OAAOgN,eAAehN,MAAM;oBAC9B,KAAKlT,WAAWmT,OAAO;wBACrB,OAAO+M,eAAe/M,OAAO;oBAC/B,KAAKnT,WAAWoT,SAAS;wBACvB,OAAO8M,eAAe9M,SAAS;oBACjC,KAAKpT,WAAWqT,QAAQ;wBACtB,OAAO6M,eAAe7M,QAAQ;oBAChC,KAAKrT,WAAWsT,MAAM;wBACpB,OAAO4M,eAAe5M,MAAM;oBAC9B,KAAKtT,WAAWuT,OAAO;wBACrB,OAAO2M,eAAe3M,OAAO;gBACjC;gBACA,OAAO;YACT;;;YAOOgO,KAAAA;mBANP,AAMA;;;;;GADC,GACD,SAAOA,mBAAmBle,IAAI,EAAEuI,QAAQ;gBACtC,IAAyBhL,mBAAAA,MAAMwY,SAAS,CAAC/V,OAAjC6S,QAAiBtV,iBAAjBsV,OAAOzP,QAAU7F,iBAAV6F;gBACf,IAAMoZ,SAASO,aAAaC,YAAY,CACtC;oBACEhf,YAAYR,YAAYud,UAAU;oBAClC,eAAe;oBACf/c,YAAYR,YAAY8c,MAAM;oBAC9B,QAAQ;oBACRtc,YAAYR,YAAY4d,cAAc;oBACtC,iBAAiB;oBACjBpd,YAAYR,YAAY8Z,cAAc;iBAEvC,EACDzE,OACAzP,OACAmF;gBAEF,OAAO;oBACL4V,cAAc3B,MAAM,CAAC,EAAE,CAACxN,IAAI;oBAC5BoP,gBAAgB7gB,MAAM4Q,UAAU,CAACqO,MAAM,CAAC,EAAE,CAACxN,IAAI,EAAE;oBACjDqP,MAAM7B,MAAM,CAAC,EAAE,CAACxN,IAAI;oBACpB2G,OAAO6G,MAAM,CAAC,EAAE,CAACxN,IAAI;gBACvB;YACF;;;YAOOsP,KAAAA;mBANP,AAMA;;;;;EADA,GACA,SAAOA,aAAate,IAAI,EAAEuI,QAAQ;gBAChC,IAAyBhL,mBAAAA,MAAMwY,SAAS,CAAC/V,OAAjC6S,QAAiBtV,iBAAjBsV,OAAOzP,QAAU7F,iBAAV6F;gBACf,OAAO2Z,aAAaC,YAAY,CAACvf,WAAWoV,OAAOzP,OAAOmF;YAC5D;;;;;AAEFwU,aAAaI,cAAc,GAAG,EAAE;AAChC,IAAIxf,cAAcof;AAElB,uBAAuB;AACvB,IAAIwB,WAAW,EAAE;AACjB,IAAIC,gBAAgB,EAAE;AACtB,IAAIC,cAAc;AAClB,IAAIC;AACJ,IAAIC,sBAAsB;AAC1B,IAAIxe,SAAS;AACb,SAASpC,iBAAiBiC,IAAI,EAAEgP,IAAI,EAAEzG,QAAQ,EAAEqW,OAAO,EAAEC,YAAY,EAAEC,WAAW;IAChF,IAAyBvhB,mBAAAA,MAAMwY,SAAS,CAAC/V,OAAjC6S,QAAiBtV,iBAAjBsV,OAAOzP,QAAU7F,iBAAV6F;IACfmb,SAASlf,MAAM,GAAG;IAClBmf,cAAcnf,MAAM,GAAG;IACvB,IAAMwF,QAAQzB,MAAM7E,KAAK,EAAEuG,MAAM1B,MAAM5E,GAAG,EAAE4J,MAAMhF,MAAMwC,SAAS,EAAkDjI,kCAAAA,YAAYugB,kBAAkB,CAACle,MAAMuI,WAAnF4V,eAA8CxgB,gCAA9CwgB,cAAcC,iBAAgCzgB,gCAAhCygB,gBAAgBC,OAAgB1gB,gCAAhB0gB,MAAM1I,QAAUhY,gCAAVgY,OAA0DoJ,sBAAsBxhB,MAAM0V,WAAW,CAACkL,cAAcnP,OAAOgQ,wBAAwB,OAAOZ,mBAAmB,eAAgB7gB,CAAAA,MAAM0V,WAAW,CAACmL,gBAAgBpP,SAASoP,eAAe5Q,IAAI,GAAG,MAAMwB,KAAKxB,IAAI,GAAG,EAAC,GAAIyR,cAAc1hB,MAAM0V,WAAW,CAACoL,MAAMrP,OAAOkQ,eAAe3hB,MAAM0V,WAAW,CAAC0C,OAAO3G,OAAOmQ,YAAYF,eAAe,CAACC,cAAcE,cAAc,CAACD,WAAWE,qBAAqB,CAACH,gBAAgB3hB,MAAM0V,WAAW,CAAC1V,MAAM4Q,UAAU,CAACwH,OAAO,KAAK3G,OAAOsQ,YAAYH,aAAa,CAACJ,qBAAqBQ,cAAcJ,aAAaJ,qBAAqBhX,WAAW3E,MAAM0E,oBAAoB,CAACS,SAAS+L,MAAM,GAAGkL,aAAavhB,MAAM8C,SAAS,CAACqC,MAAMtE,IAAI,GAAG2gB,YAAYF,eAAgBnX,CAAAA,QAAQzL,WAAWsT,MAAM,IAAInL,QAAQ,EAAC;IACz3B4Z,UAAU;QACRtb,OAAAA;QACAyP,OAAAA;QACAhO,OAAAA;QACAC,KAAAA;QACAsD,KAAAA;QACA2W,qBAAAA;QACAC,uBAAAA;QACAC,aAAAA;QACAC,cAAAA;QACAC,WAAAA;QACAC,aAAAA;QACAE,WAAAA;QACAC,aAAAA;QACAxX,UAAAA;QACAyX,YAAAA;QACAC,WAAAA;QACAlX,UAAAA;IACF;IACAkW,cAAcG;IACdze,SAASoI,SAAS+L,MAAM;IACxBqK,sBAAsB,OAAOE,iBAAiB,cAAc1e,SAAS,CAAC,CAAC0e;IACvE,IAAIzW,QAAQzL,WAAWuT,OAAO,EAAE;QAC9BwP;IACF,OAAO;QACLC;IACF;IACAC;IACA,IAAIlB,QAAQe,SAAS,IAAIN,aAAa,CAACpX,UAAU;QAC/C,IAAIK,QAAQzL,WAAWuT,OAAO,EAAE;YAC9B2P,gBAAgB,cAAc;QAChC,OAAO,IAAIN,aAAa;YACtBM,gBAAgB,iBAAiB;QACnC,OAAO,IAAI,CAAEhb,CAAAA,UAAU7H,kBAAkBmT,MAAM,IAAIrL,MAAM,MAAMD,UAAU7H,kBAAkBoT,IAAI,IAAIvL,UAAU7H,kBAAkBqT,KAAK,IAAIvL,MAAM,CAAA,GAAI;YAChJ+a,gBAAgB,oBAAoB;QACtC;IACF;IACA,IAAIf,gBAAgB,OAAO;QACzBgB,WAAW1c,MAAM6F,UAAU,IAAI7F,MAAM8F,aAAa;IACpD;IACA,IAAImW,sBAAuBxa,CAAAA,UAAU7H,kBAAkBmT,MAAM,IAAIrL,MAAM,MAAMD,UAAU7H,kBAAkBoT,IAAI,IAAIvL,UAAU7H,kBAAkBqT,KAAK,IAAIvL,MAAM,CAAA,GAAI;QAC9J,IAAMib,eAAe3c,MAAMuE,YAAY;QACvC,IAAIoY,eAAe,GAAG;YACpBF,gBAAgBtiB,MAAMgW,aAAa,CAACwM,cAAc;QACpD;IACF;IACA,OAAO;QACLxB,UAAW,qBAAG,IAAIyB,IAAIzB;QACtBC,eAAgB,qBAAG,IAAIwB,IAAIxB;IAC7B;AACF;AACA,SAASkB;IACP,IAAQ7a,QAA+E6Z,QAA/E7Z,OAAOC,MAAwE4Z,QAAxE5Z,KAAK0a,aAAmEd,QAAnEc,YAAYF,YAAuDZ,QAAvDY,WAAWvX,WAA4C2W,QAA5C3W,UAAU3E,QAAkCsb,QAAlCtb,OAAO+b,YAA2BT,QAA3BS,WAAWI,cAAgBb,QAAhBa;IACvE,IAAI1a,UAAU7H,kBAAkBmT,MAAM,IAAIrL,MAAM,KAAKA,MAAM,IAAI;QAC7Dgb,WAAW,mBAAmB;IAChC,OAAO,IAAIjb,UAAU7H,kBAAkByT,OAAO,IAAI3L,MAAM,KAAKA,MAAM,IAAI;QACrEgb,WAAW,iBAAiB;IAC9B,OAAO,IAAIjb,UAAU7H,kBAAkBuT,EAAE,IAAIzL,MAAM,KAAKA,MAAM,IAAI;QAChEgb,WAAW,kBAAkB;IAC/B,OAAO,IAAIjb,UAAW2a,CAAAA,aAAaxiB,kBAAkB8T,IAAI,GAAG9T,kBAAkB6T,KAAI,AAAC,KAAK/L,MAAM,MAAMD,UAAW2a,CAAAA,aAAaxiB,kBAAkB+T,WAAW,GAAG/T,kBAAkB8T,IAAG,AAAC,KAAKhM,QAAQ,GAAG;QAChMgb,WAAW,mBAAmB;IAChC,OAAO,IAAIjb,UAAW2a,CAAAA,aAAaxiB,kBAAkB+T,WAAW,GAAG/T,kBAAkB8T,IAAG,AAAC,KAAKhM,MAAM,KAAKA,MAAM,IAAI;QACjHgb,WAAW,kBAAkB;IAC/B,OAAO,IAAIjb,UAAW2a,CAAAA,aAAaxiB,kBAAkB+T,WAAW,GAAG/T,kBAAkB8T,IAAG,AAAC,KAAKhM,MAAM,MAAMA,MAAM,IAAI;QAClHgb,WAAW,iBAAiB;IAC9B,OAAO,IAAIjb,UAAW2a,CAAAA,aAAaxiB,kBAAkB+T,WAAW,GAAG/T,kBAAkB8T,IAAG,AAAC,KAAKhM,MAAM,MAAMA,MAAM,MAAMD,UAAU7H,kBAAkBmT,MAAM,IAAIrL,QAAQ,GAAG;QACrKgb,WAAW,qBAAqB;IAClC;IACA,IAAIR,aAAa,CAACvX,UAAU;QAC1B,IAAMkY,QAAQ7c,MAAMqF,QAAQ,CAACtI;QAC7B,IAAI8f,MAAMxhB,MAAM,CAACY,MAAM,GAAG,GAAG;YAC3BwgB,gBACE,AAAC,0BAA0C,OAAjBI,MAAMzgB,QAAQ,KACxC,AAAC,aAAmE,OAApBygB,MAAMpgB,WAAW;QAErE;QACA,IAAIgF,UAAU7H,kBAAkBwT,KAAK,IAAI1L,MAAM,MAAMA,MAAM,IAAI;YAC7D,IAAMob,YAAY9c,MAAM2C,SAAS,CAAC;YAClC8Z,gBACE,uBAAuB1iB,MAAMmf,SAAS,CAAC4D,UAAUphB,IAAI,EAAEohB,UAAU3hB,KAAK,GACtE,mEAAmEpB,MAAMwf,YAAY,CAACuD,UAAUphB,IAAI,EAAEohB,UAAU3hB,KAAK;YAEvHshB,gBAAgB,oBAAoB;YACpC,IAAIhb,UAAU7H,kBAAkBmT,MAAM,IAAItL,UAAU7H,kBAAkBoT,IAAI,EAAE;gBAC1EyP,gBAAgB,oBAAoB;YACtC;QACF;IACF;IACA,IAAIhb,UAAU7H,kBAAkByT,OAAO,IAAK3L,CAAAA,QAAQ,KAAKA,QAAQ,EAAC,GAAI;QACpEgb,WAAW,gBAAgB;QAC3BD,gBAAgB,kBAAkB;QAClC,IAAIlB,uBAAuBQ,WAAW;YACpCU,gBAAgB,iBAAiB;QACnC;QACA,IAAIV,aAAata,UAAU7H,kBAAkB4T,KAAK,IAAI,CAAE/L,CAAAA,UAAU7H,kBAAkB2T,MAAM,IAAI7L,QAAQ,EAAC,GAAI;YACzG+a,gBAAgB,iBAAiB;QACnC;QACAA,gBAAgB,oBAAoB;IACtC,OAAO,IAAI9X,UAAU;QACnB8X,gBAAgB,oBAAoB;QACpC,IAAIlB,uBAAuBQ,WAAW;YACpCU,gBAAgB;QAClB;IACF;IACA,IAAIN,eAAe,CAAE1a,CAAAA,UAAU7H,kBAAkByT,OAAO,IAAI3L,QAAQ,EAAC,GAAI;QACvE,IAAMmb,SAAQ7c,MAAMyC,OAAO,CAAC,GAAG4C,QAAQ,CAACtI;QACxC0f,gBACE,mCAAmCI,OAAMxhB,MAAM,CAAC,EAAE,CAACkB,GAAG,EACtD,iFAAiFsgB,OAAMxhB,MAAM,CAAC,EAAE,CAACqB,GAAG;IAExG;IACA,IAAIyf,eAAgB1a,CAAAA,UAAU7H,kBAAkBmT,MAAM,IAAIrL,MAAM,MAAMD,SAAS7H,kBAAkBwT,KAAK,IAAI,CAAE3L,CAAAA,UAAU7H,kBAAkBuT,EAAE,IAAI;QAAC;QAAG;KAAE,CAACvI,QAAQ,CAAClD,IAAG,CAAC,GAAI;QACpK,IAAMjC,SAASzF,WAAW6E,SAAS,CAACmB,OAAOjD;QAC3C,IAAI0C,OAAOxD,MAAM,GAAG,GAAG;YACrBygB,WACE,mBAAmBjd,OAAOpD,GAAG,CAAC,SAACC;uBAAM,AAAC,SAAgC,OAAxBnC,MAAM8G,cAAc,CAAC3E;eAAME,IAAI,CAAC,UAC9E,yDAAyDiD,OAAOpD,GAAG,CAAC,SAACC;uBAAM,AAAC,OAA6C,OAAxBnC,MAAM8G,cAAc,CAAC3E;eAAME,IAAI,CAAC;QAErI;IACF;AACF;AACA,SAAS+f;IACP,IACEP,cAUEV,QAVFU,aACAhX,MASEsW,QATFtW,KACAL,WAQE2W,QARF3W,UACAlD,QAOE6Z,QAPF7Z,OACAC,MAME4Z,QANF5Z,KACAwa,YAKEZ,QALFY,WACAlc,QAIEsb,QAJFtb,OACAmF,WAGEmW,QAHFnW,UACA4W,YAEET,QAFFS,WACAI,cACEb,QADFa;IAEF,IAAIH,eAAehX,QAAQzL,WAAWiT,MAAM,EAAE;QAC5CiQ,gBACEhb,UAAU7H,kBAAkBmT,MAAM,IAAIrL,QAAQ,MAAMD,UAAU7H,kBAAkBqT,KAAK,IAAIvL,QAAQ,IAAI,2DAA2D;QAElK,IAAID,UAAU7H,kBAAkBwT,KAAK,IAAI1L,MAAM,MAAMD,UAAU7H,kBAAkByT,OAAO,IAAI3L,MAAM,KAAKA,MAAM,MAAMD,UAAU7H,kBAAkBmT,MAAM,IAAIrL,MAAM,KAAKA,MAAM,MAAMD,UAAU7H,kBAAkBqT,KAAK,IAAIvL,MAAM,GAAG;YAC5N+a,gBAAgB,gBAAgB;QAClC;IACF,OAAO,IAAIT,eAAgBva,CAAAA,UAAU7H,kBAAkBmT,MAAM,IAAKrL,CAAAA,QAAQ,MAAMA,QAAQ,EAAC,KAAMD,UAAU7H,kBAAkBqT,KAAK,IAAIvL,QAAQ,KAAKD,UAAU7H,kBAAkByT,OAAO,IAAI;QAAC;QAAG;QAAI;QAAI;KAAG,CAACzI,QAAQ,CAAClD,IAAG,GAAI;QACtN+a,gBAAgB,kBAAkB;IACpC;IACA,IAAIP,aAAa,CAACvX,YAAaK,CAAAA,QAAQzL,WAAWkT,MAAM,IAAIzH,QAAQzL,WAAWqT,QAAO,AAAC,KAAK,CAACmQ,oBAAoB/c,OAAOmF,WAAW;QACjI,IAAM0X,QAAQ7c,MAAMqF,QAAQ,CAACtI;QAC7B,IAAI8f,MAAMxhB,MAAM,CAACY,MAAM,GAAG,GAAG;YAC3BwgB,gBACE,AAAC,0BAA6C,OAApBI,MAAMxhB,MAAM,CAAC,EAAE,CAACkB,GAAG,GAC7C,AAAC,aAAmE,OAApBsgB,MAAMxhB,MAAM,CAAC,EAAE,CAACqB,GAAG;QAEvE;IACF;IACA,IAAI+E,UAAU7H,kBAAkByT,OAAO,IAAI3L,QAAQ,KAAKA,QAAQ,IAAI;QAClE4Z,QAAQe,SAAS,GAAG;QACpBK,WAAW,gBAAgB;QAC3BD,gBAAgB,kBAAkB;QAClC,IAAIlB,uBAAuBQ,WAAW;YACpCU,gBAAgB,iBAAiB;QACnC;QACA,IAAIV,aAAata,UAAU7H,kBAAkB4T,KAAK,IAAI,CAAE/L,CAAAA,UAAU7H,kBAAkB2T,MAAM,IAAI7L,QAAQ,EAAC,GAAI;YACzG+a,gBAAgB,iBAAiB;YACjC,IAAIP,aAAalX,QAAQzL,WAAWuT,OAAO,EAAE;gBAC3CkQ;YACF;QACF;IACF,OAAO,IAAIvb,UAAU7H,kBAAkBwT,KAAK,IAAKpI,CAAAA,MAAMzL,WAAWsT,MAAM,IAAInL,QAAQ,MAAMsD,QAAQzL,WAAWqT,QAAQ,IAAIlL,QAAQ,EAAC,KAAMya,aAAa;QACnJM,gBAAgB,qBAAqB;IACvC;IACA,IAAIzc,MAAMiF,iBAAiB,CAAClI,SAAS;QACnC2f,WAAW,kBAAkB;IAC/B;AACF;AACA,SAASF;IACP,IACE/a,QAYE6Z,QAZF7Z,OACAC,MAWE4Z,QAXF5Z,KACAsa,cAUEV,QAVFU,aACAhX,MASEsW,QATFtW,KACAmX,cAQEb,QARFa,aACAJ,YAOET,QAPFS,WACAG,YAMEZ,QANFY,WACAN,wBAKEN,QALFM,uBACA5b,QAIEsb,QAJFtb,OACAyP,QAGE6L,QAHF7L,OACA2M,aAEEd,QAFFc,YACAjX,WACEmW,QADFnW;IAEF,IAAI8X,2BAA2B;IAC/B,IAAI,CAAC9X,SAAS+L,MAAM,IAAIzB,MAAMnM,QAAQ,OAAO,MAAMmM,MAAMnN,OAAO,KAAK,GAAG;QACtE,IAAM4a,sBAAsBld,MAAMtE,IAAI,GAAG,MAAM,IAAI,IAAI;QACvDuhB,2BAA2BxN,MAAMnN,OAAO,MAAM4a,uBAAuBzN,MAAMnN,OAAO,MAAM4a,sBAAsB;IAChH;IACA,OAAQzb;QACN,KAAK7H,kBAAkBmT,MAAM;YAC3BuO,QAAQe,SAAS,GAAG;YACpB,IAAI3a,MAAM,IAAI;gBACZ+a,gBAAgB,eAAe;YACjC;YACA,IAAIzX,QAAQzL,WAAWuT,OAAO,IAAIpL,MAAM,MAAMA,QAAQ,IAAI;gBACxD+a,gBAAgB,iBAAiB;YACnC;YACA,IAAIP,aAAalX,QAAQzL,WAAWuT,OAAO,IAAI;gBAAC;gBAAI;gBAAI;gBAAI;gBAAI;gBAAI;aAAG,CAAClI,QAAQ,CAAClD,MAAM;gBACrF+a,gBAAgB,qBAAqB;gBACrC,IAAIzX,QAAQzL,WAAWuT,OAAO,EAAE;oBAC9BkQ;gBACF;YACF;YACA,IAAItb,QAAQ,IAAI;gBACdgb,WAAW,uBAAuB;gBAClCD,gBAAgB,eAAe;gBAC/B,IAAIN,aAAa;oBACfM,gBAAgB,eAAe;gBACjC;gBACA,IAAIlB,uBAAuBQ,aAAa/W,QAAQzL,WAAWuT,OAAO,EAAE;oBAClE2P,gBAAgB;gBAClB;gBACAA,gBAAgB,kBAAkB;YACpC,OAAO,IAAI/a,QAAQ,MAAM,CAAC3E,QAAQ;gBAChC2f,WAAW,wBAAwB;gBACnCD,gBAAgB,eAAe;gBAC/BA,gBAAgB,eAAe;gBAC/B,IAAIlB,uBAAuBQ,aAAa/W,QAAQzL,WAAWuT,OAAO,EAAE;oBAClE2P,gBAAgB;gBAClB;gBACAA,gBAAgB,kBAAkB;YACpC,OAAO,IAAI;gBAAC;gBAAI;gBAAI;gBAAI;gBAAI;gBAAI;aAAG,CAAC7X,QAAQ,CAAClD,MAAM;gBACjD,IAAIA,QAAQ,IAAI;oBACdgb,WAAW,sBAAsB;oBACjC,IAAIX,WAAW;wBACb,IAAIhf,QAAQ;4BACV0f,gBAAgB,UAAU;wBAC5B;wBACA,IAAIlB,uBAAuBvW,QAAQzL,WAAWuT,OAAO,EAAE;4BACrD2P,gBAAiB;wBACnB;oBACF;gBACF,OAAO;oBACLC,WAAW,uBAAuB;oBAClCD,gBAAgB,kBAAkB;oBAClC,IAAIP,aAAalX,QAAQzL,WAAWuT,OAAO,EAAEkQ;oBAC7C,IAAIzB,uBAAuBQ,aAAa/W,QAAQzL,WAAWuT,OAAO,EAAE;wBAClE,OAAQpL;4BACN,KAAK;gCACH,IAAIsD,QAAQzL,WAAWiT,MAAM,EAAE;oCAC7BiQ,gBAAgB;gCAClB,OAAO;oCACLA,gBAAgB;gCAClB;gCACA;4BACF,KAAK;gCACH,IAAIzX,QAAQzL,WAAWkT,MAAM,EAAE;oCAC7BgQ,gBAAgB;gCAClB,OAAO;oCACLA,gBAAgB;gCAClB;gCACA;4BACF,KAAK;gCACH,IAAIzX,QAAQzL,WAAWmT,OAAO,IAAI1H,QAAQzL,WAAWiT,MAAM,EAAE;oCAC3DiQ,gBAAgB;gCAClB,OAAO;oCACLA,gBAAiB;gCACnB;gCACA;4BACF,KAAK;gCACH,IAAIzX,QAAQzL,WAAWqT,QAAQ,EAAE;oCAC/B6P,gBAAgB;gCAClB,OAAO;oCACLA,gBAAiB;gCACnB;gCACA;4BACF,KAAK;gCACH,IAAIzX,QAAQzL,WAAWsT,MAAM,EAAE;oCAC7B4P,gBAAgB;gCAClB,OAAO;oCACLA,gBAAgB;gCAClB;gCACA;wBACJ;oBACF;gBACF;gBACA,IAAIV,WAAWU,gBAAgB,eAAe;gBAC9CA,gBAAgB,kBAAkB;YACpC;YACA,IAAI/a,QAAQ,IAAI;gBACd,IAAI3E,QAAQ;oBACV2f,WAAW,aAAa;gBAC1B,OAAO;oBACLA,WAAW,uBAAuB;oBAClC,IAAIX,WAAW;wBACbU,gBAAgB,UAAU;wBAC1BA,gBAAgB,eAAe;oBACjC;oBACAA,gBAAgB,kBAAkB;gBACpC;gBACA,IAAIzX,QAAQzL,WAAWuT,OAAO,IAAIoP,WAAW;oBAC3Cc;gBACF;YACF;YACA,IAAIhY,QAAQzL,WAAWuT,OAAO,IAAK,CAAA;gBAAC;gBAAI;gBAAI;gBAAI;gBAAI;gBAAI;gBAAI;aAAG,CAAClI,QAAQ,CAAClD,QAAQ,CAAC3E,UAAU2E,QAAQ,EAAC,GAAI;gBACvG+a,gBAAgB,iBAAiB;YACnC;YACA;QACF,KAAK7iB,kBAAkBoT,IAAI;YACzB,IAAItL,OAAO,IAAI;gBACb+a,gBAAgB,eAAe;gBAC/B,IAAIzX,QAAQzL,WAAWuT,OAAO,EAAE;oBAC9B2P,gBAAgB,iBAAiB;gBACnC;YACF;YACA,IAAI/a,QAAQ,MAAMA,QAAQ,MAAMya,eAAeza,QAAQ,MAAMA,QAAQ,MAAMya,aAAa;gBACtFb,QAAQe,SAAS,GAAG;gBACpB,IAAI3a,QAAQ,IAAI;oBACdgb,WAAW,iBAAiB;gBAC9B;YACF;YACA,IAAIR,aAAclX,CAAAA,QAAQzL,WAAWkT,MAAM,IAAI/K,MAAM,KAAKA,MAAM,MAAMsD,QAAQzL,WAAWqT,QAAQ,IAAIlL,MAAM,KAAKA,MAAM,MAAMsD,QAAQzL,WAAWkT,MAAM,IAAI/K,MAAM,MAAMA,MAAM,MAAMA,QAAQ,EAAC,GAAI;gBAC5L+a,gBAAgB,UAAU;gBAC1BA,gBAAgB,kBAAkB;YACpC;YACA;QACF,KAAK7iB,kBAAkBqT,KAAK;YAC1B,IAAIvL,MAAM,IAAI;gBACZ4Z,QAAQe,SAAS,GAAG;YACtB;YACA,IAAI3a,QAAQ,GAAG;gBACbgb,WAAW,WAAW;gBACtB,IAAIX,WAAW;oBACbU,gBAAgB,eAAe;oBAC/BA,gBAAgB,eAAe;oBAC/BA,gBAAgB,WAAW;oBAC3B,IAAI1f,QAAQ0f,gBAAgB,UAAU;oBACtC,IAAIlB,qBAAqB;wBACvBkB,gBAAgB;oBAClB;gBACF;gBACAA,gBAAgB,kBAAkB;YACpC,OAAO,IAAI/a,QAAQ,GAAG;gBACpB,IAAI3E,QAAQ;oBACV2f,WAAW,cAAc;oBACzB,IAAIR,aAAalX,QAAQzL,WAAWuT,OAAO,EAAE;wBAC3CkQ;oBACF;gBACF,OAAO;oBACLN,WAAW,sBAAsB;oBACjC,IAAIX,WAAW;wBACbU,gBAAgB,eAAe;wBAC/BA,gBAAgB,UAAU;oBAC5B;oBACAA,gBAAgB,kBAAkB;gBACpC;YACF;YACA;QACF,KAAK7iB,kBAAkBsT,KAAK;YAC1B,IAAI6O,aAAcra,CAAAA,QAAQ,MAAMnI,WAAWuT,OAAO,KAAK,KAAKpL,QAAQ,MAAMsD,QAAQzL,WAAWiT,MAAK,AAAC,GAAG;gBACpG,IAAIuP,WAAW;oBACbW,WAAW,sBAAsB;oBACjCD,gBAAgB,kBAAkB;oBAClCA,gBAAgB,UAAU;gBAC5B;gBACA,IAAIP,WAAW;oBACbO,gBAAgB,YAAY;gBAC9B;YACF;YACA;QACF,KAAK7iB,kBAAkBuT,EAAE;YACvB,IAAIgP,eAAeza,QAAQ,KAAKsD,QAAQzL,WAAWsT,MAAM,EAAE;gBACzDyO,QAAQe,SAAS,GAAG;YACtB,OAAO,IAAI3a,QAAQ,KAAKsD,QAAQzL,WAAWuT,OAAO,IAAIpL,QAAQ,MAAMsD,QAAQzL,WAAWiT,MAAM,EAAE;gBAC7FkQ,WAAW,aAAa;gBACxB,IAAIX,WAAW;oBACbU,gBAAgB,SAAS;oBACzBA,gBAAgB,UAAU;oBAC1B,IAAIP,aAAalX,QAAQzL,WAAWuT,OAAO,EAAE;wBAC3CkQ;oBACF;gBACF,OAAO;oBACLP,gBAAgB,iBAAiB;oBACjC,IAAIT,eAAehX,QAAQzL,WAAWiT,MAAM,EAAE;wBAC5CiQ,gBAAgB,gBAAgB;oBAClC;gBACF;gBACAnB,QAAQe,SAAS,GAAG;YACtB,OAAO,IAAIF,eAAeza,QAAQ,IAAI;gBACpC4Z,QAAQe,SAAS,GAAG;YACtB,OAAO,IAAI3a,QAAQ,IAAI;gBACrBgb,WAAW,WAAW;gBACtBpB,QAAQe,SAAS,GAAG;YACtB;YACA;QACF,KAAKziB,kBAAkBwT,KAAK;YAC1BqP,gBAAgB,sBAAsB;YACtC,IAAI/a,MAAM,MAAMsD,QAAQzL,WAAWuT,OAAO,IAAK8O,CAAAA,yBAAyBM,SAAQ,GAAI;gBAClF,IAAIiB,kBAAkBzb,OAAO;gBAC7B,IAAIA,MAAM,IAAI;oBACZ,IAAM0b,WAAW,KAAK1b,KAAK2b,QAAQ,AAACD,CAAAA,WAAWpY,GAAE,IAAK;oBACtD,OAAQqY;wBACN,KAAK9jB,WAAWkT,MAAM;4BACpB0Q,kBAAkBzb,OAAO;4BACzB;wBACF,KAAKnI,WAAWmT,OAAO;4BACrByQ,kBAAkBzb,OAAO;4BACzB;wBACF,KAAKnI,WAAWuT,OAAO;4BACrBqQ,kBAAkBzb,OAAO;4BACzB;oBACJ;gBACF;gBACA,IAAIyb,iBAAiB;oBACnBV,gBAAgB,YAAY;gBAC9B;YACF;YACA,IAAI/a,QAAQ,IAAI;gBACd4Z,QAAQe,SAAS,GAAG;YACtB;YACA;QACF,KAAKziB,kBAAkByT,OAAO;YAC5B,IAAI3L,MAAM,IAAI;gBACZ+a,gBAAgB,qBAAqB;gBACrC,IAAIzX,QAAQzL,WAAWuT,OAAO,IAAIpL,QAAQ,GAAG;oBAC3C+a,gBAAgB,kBAAkB;gBACpC;YACF;YACA,IAAI/a,MAAM,KAAKA,MAAM,MAAMsD,QAAQzL,WAAWuT,OAAO,EAAE;gBACrD2P,gBAAgB,YAAY;gBAC5BA,gBAAgB,sBAAsB;YACxC;YACA,IAAIzX,QAAQzL,WAAWuT,OAAO,IAAIpL,MAAM,KAAKA,MAAM,IAAI;gBACrDgb,WAAW,iBAAiB;YAC9B;YACA,IAAIhb,OAAO,IAAI;gBACb4Z,QAAQe,SAAS,GAAG;YACtB;YACA,OAAQ3a;gBACN,KAAK;oBACHgb,WAAW,gBAAgB;oBAC3B,IAAI1X,QAAQzL,WAAWuT,OAAO,IAAIiP,WAAW;wBAC3CU,gBAAgB,iBAAiB;wBACjC,IAAIlB,qBAAqB;4BACvBkB,gBAAgB;wBAClB;wBACA,IAAIN,aAAa;4BACfO,WAAW,YAAY;wBACzB;oBACF;oBACAD,gBAAgB,kBAAkB;oBAClC;gBACF,KAAK;oBACHC,WAAW,gBAAgB;oBAC3B,IAAIX,WAAW;wBACbU,gBAAgB,iBAAiB;wBACjC,IAAIlB,qBAAqB;4BACvBkB,gBAAgB;wBAClB;wBACA,IAAIzX,QAAQzL,WAAWiT,MAAM,IAAI2P,aAAa;4BAC5CO,WAAW,YAAY;wBACzB;oBACF;oBACAD,gBAAgB,kBAAkB;oBAClC;gBACF,KAAK;oBACH,IAAIzX,QAAQzL,WAAWuT,OAAO,EAAE;wBAC9B,IAAIiP,WAAW;4BACbW,WAAW,wBAAwB;4BACnCD,gBAAgB,UAAU;wBAC5B;wBACA,IAAIb,yBAAyBM,WAAW;4BACtCO,gBAAgB,YAAY;wBAC9B;wBACAA,gBAAgB,sBAAsB;oBACxC;oBACA;gBACF,KAAK;oBACH,IAAIzX,QAAQzL,WAAWiT,MAAM,EAAE;wBAC7B,IAAIuP,WAAW;4BACbW,WAAW,wBAAwB;4BACnCD,gBAAgB,UAAU;wBAC5B;wBACA,IAAIb,yBAAyBM,WAAW;4BACtCO,gBAAgB,YAAY;wBAC9B;wBACAA,gBAAgB,sBAAsB;oBACxC,OAAO,IAAIzX,QAAQzL,WAAWuT,OAAO,EAAE;wBACrC2P,gBAAgB,sBAAsB;wBACtC,IAAIb,yBAAyBM,WAAW;4BACtCO,gBAAgB,YAAY;wBAC9B;oBACF;oBACA;gBACF,KAAK;oBACHC,WAAW,mBAAmB;oBAC9B,IAAIR,WAAW;wBACbO,gBAAgB,qBAAqB;wBACrC,IAAIzX,QAAQzL,WAAWuT,OAAO,EAAE;4BAC9BkQ;wBACF;wBACA,IAAIhY,QAAQzL,WAAWsT,MAAM,EAAE;4BAC7B4P,gBAAgB,kBAAkB;wBACpC;oBACF,OAAO,IAAIN,aAAa;wBACtBM,gBAAgB,UAAU;oBAC5B;oBACA,IAAIV,aAAa/W,QAAQzL,WAAWsT,MAAM,EAAE;wBAC1C4P,gBAAgB,qBAAqB;oBACvC;oBACAnB,QAAQe,SAAS,GAAG;oBACpB;gBACF,KAAK;oBACHK,WAAW,cAAc;oBACzBA,WAAW;oBACX,IAAIX,WAAW;wBACbU,gBAAgB,UAAU;wBAC1B,IAAIlB,uBAAuBvW,QAAQzL,WAAWuT,OAAO,EAAE;4BACrD2P,gBAAgB;wBAClB;oBACF;oBACA,IAAIN,aAAa;wBACfM,gBAAgB;oBAClB;oBACA;gBACF,KAAK;oBACH,IAAIT,aAAa;wBACfU,WAAW;oBACb;gBACF,KAAK;oBACHA,WAAW,uBAAuB;oBAClCD,gBAAgB,kBAAkB;oBAClC,IAAIV,WAAW;wBACbU,gBAAgB,eAAe;wBAC/B,IAAIzX,QAAQzL,WAAWuT,OAAO,EAAE;4BAC9B2P,gBAAgB,gEAAgE;4BAChFA,gBAAgB,YAAY;4BAC5B,IAAIlB,qBAAqB;gCACvBkB,gBAAgB;4BAClB;wBACF,OAAO;4BACLA,gBAAgB,gEAAgE;wBAClF;oBACF;oBACA;gBACF,KAAK;gBACL,KAAK;gBACL,KAAK;gBACL,KAAK;gBACL,KAAK;oBACHA,gBAAgB,kBAAkB;oBAClC,IAAI/a,QAAQ,MAAM,CAAC3E,QAAQ;wBACzB2f,WAAW,wBAAwB;oBACrC,OAAO,IAAI,CAAC3f,QAAQ;wBAClB2f,WAAW,sBAAsB;wBACjCD,gBAAgB,kBAAkB;oBACpC;oBACA,IAAIV,WAAW;wBACbU,gBAAgB,eAAe;wBAC/B,OAAQ/a;4BACN,KAAK;gCACH+a,gBACE,kDAAmDzX,CAAAA,QAAQzL,WAAWiT,MAAM,GAAG,sDAAsD,6CAA4C;gCAEnL,IAAI+O,uBAAuBvW,QAAQzL,WAAWuT,OAAO,EAAE;oCACrD2P,gBAAiB;gCACnB;gCACA;4BACF,KAAK;gCACHA,gBACE,AAACpB,CAAAA,cAAc,aAAa,4CAA2C,IAAK,QAASrW,CAAAA,QAAQzL,WAAWuT,OAAO,GAAG,sDAAsD,yDAAwD;gCAElO,IAAIyO,uBAAuBvW,QAAQzL,WAAWuT,OAAO,EAAE;oCACrD2P,gBAAgB;gCAClB;gCACA;4BACF,KAAK;gCACH,IAAIzX,QAAQzL,WAAWiT,MAAM,EAAE;oCAC7BiQ,gBAAgB,AAACpB,CAAAA,cAAc,aAAa,4CAA2C,IAAK;oCAC5F,IAAIE,qBAAqB;wCACvBkB,gBAAgB;oCAClB;gCACF,OAAO;oCACL,IAAIzX,QAAQzL,WAAWmT,OAAO,EAAE;wCAC9B+P,gBAAgB,AAACpB,CAAAA,cAAc,aAAa,4CAA2C,IAAK;oCAC9F,OAAO,IAAIrW,QAAQzL,WAAWqT,QAAQ,EAAE;wCACtC6P,gBACE,AAACpB,CAAAA,cAAc,aAAa,4CAA2C,IAAK;oCAEhF,OAAO,IAAIrW,QAAQzL,WAAWsT,MAAM,EAAE;wCACpC4P,gBAAgB,AAACpB,CAAAA,cAAc,aAAa,4CAA2C,IAAK;oCAC9F;oCACA,IAAIE,uBAAuBvW,QAAQzL,WAAWuT,OAAO,EAAE;wCACrD2P,gBAAgB;oCAClB;gCACF;gCACA;4BACF,KAAK;gCACHA,gBACE,AAACpB,CAAAA,cAAc,aAAa,4CAA2C,IAAK,QAASrW,CAAAA,QAAQzL,WAAWuT,OAAO,GAAG,sDAAsD,0DAAyD;gCAEnO,IAAIyO,uBAAuBvW,QAAQzL,WAAWuT,OAAO,EAAE;oCACrD,IAAI9H,QAAQzL,WAAWkT,MAAM,EAAE;wCAC7BgQ,gBAAgB;oCAClB,OAAO;wCACLA,gBAAgB;oCAClB;gCACF;gCACA;4BACF,KAAK;gCACHA,gBACE,AAACpB,CAAAA,cAAc,aAAa,4CAA2C,IAAK,QAASrW,CAAAA,QAAQzL,WAAWuT,OAAO,GAAG,sDAAsD,+DAA8D;gCAExO,IAAIyO,uBAAuBvW,QAAQzL,WAAWuT,OAAO,EAAE;oCACrD,IAAI9H,QAAQzL,WAAWqT,QAAQ,EAAE;wCAC/B6P,gBAAgB;oCAClB,OAAO;wCACLA,gBAAgB;oCAClB;gCACF;gCACA;wBACJ;oBACF;oBACA;gBACF,KAAK;oBACHC,WAAW,gBAAgB;oBAC3BD,gBAAgB,kBAAkB;oBAClC,IAAIT,aAAa;wBACfS,gBAAgB,iBAAiB;oBACnC,OAAO;wBACLA,gBAAgB,YAAY;wBAC5BA,gBAAgB,eAAe;wBAC/B,IAAIlB,qBAAqB;4BACvB,IAAIvW,QAAQzL,WAAWsT,MAAM,EAAE;gCAC7B4P,gBAAgB;4BAClB,OAAO;gCACLA,gBAAgB;4BAClB;wBACF;oBACF;oBACA;gBACF,KAAK;oBACHC,WAAW,kBAAkB;oBAC7BD,gBAAgB,kBAAkB;oBAClC,IAAI1f,QAAQ;wBACV2f,WAAW,iBAAiB;wBAC5BD,gBAAgB,WAAW;oBAC7B;oBACA,IAAIV,WAAW;wBACbU,gBAAgB,eAAe;wBAC/BA,gBAAgB,UAAU;wBAC1BA,gBAAgB,kBAAkB;wBAClCA,gBAAgB;wBAChB,IAAIlB,uBAAuBvW,QAAQzL,WAAWuT,OAAO,EAAE;4BACrD2P,gBAAgB;wBAClB;oBACF;oBACA;YACJ;YACA,IAAI/a,QAAQ,IAAI;gBACd,IAAI,CAAC3E,QAAQ;oBACX2f,WAAW,iBAAiB;oBAC5BD,gBAAgB,kBAAkB;oBAClCA,gBAAgB,WAAW;oBAC3BA,gBAAgB,eAAe;gBACjC,OAAO;oBACLC,WAAW,cAAc;oBACzB,IAAIV,aAAa;wBACfU,WAAW,oFAAoF;oBACjG,OAAO,IAAI1X,QAAQzL,WAAWuT,OAAO,IAAIoP,WAAW;wBAClDc;oBACF;gBACF;YACF,OAAO,IAAIhY,QAAQzL,WAAWuT,OAAO,IAAI;gBAAC;gBAAI;gBAAI;gBAAI;gBAAI;aAAG,CAAClI,QAAQ,CAAClD,MAAM;gBAC3E+a,gBAAgB,mBAAmB;YACrC;YACA,IAAI/a,MAAM,IAAI;gBACZ+a,gBAAgB,sBAAsB;YACxC,OAAO,IAAI/a,MAAM,IAAI;gBACnB+a,gBAAgB,mCAAmC;YACrD;YACA;QACF,KAAK7iB,kBAAkB0T,QAAQ;YAC7B,IAAIyO,aAAc/W,CAAAA,QAAQzL,WAAWkT,MAAM,IAAI/K,MAAM,KAAKA,MAAM,MAAMsD,QAAQzL,WAAWqT,QAAQ,IAAIlL,MAAM,KAAKA,MAAM,MAAMsD,QAAQzL,WAAWkT,MAAM,IAAI/K,MAAM,MAAMA,MAAM,EAAC,GAAI;gBAC9K+a,gBAAgB,UAAU;gBAC1BA,gBAAgB,kBAAkB;YACpC;YACA,IAAI/a,OAAO,IAAI;gBACb+a,gBAAgB,mCAAmC;YACrD;YACA,IAAI,AAACtX,CAAAA,SAAS+L,MAAM,IAAIxP,OAAO,KAAK,CAACyD,SAAS+L,MAAM,IAAI+L,wBAAuB,KAAMjY,QAAQzL,WAAWuT,OAAO,EAAE;gBAC/G2P,gBAAgB,sBAAsB;YACxC;YACA;QACF,KAAK7iB,kBAAkB2T,MAAM;YAC3B,IAAI,AAACpI,CAAAA,SAAS+L,MAAM,IAAIxP,OAAO,KAAK,CAACyD,SAAS+L,MAAM,IAAI+L,wBAAuB,KAAMjY,QAAQzL,WAAWuT,OAAO,EAAE;gBAC/G2P,gBAAgB,sBAAsB;YACxC,OAAO,IAAI/a,QAAQ,MAAMsD,QAAQzL,WAAWuT,OAAO,IAAIqP,aAAa;gBAClEb,QAAQe,SAAS,GAAG;YACtB,OAAO,IAAI3a,OAAO,IAAI;gBACpB4Z,QAAQe,SAAS,GAAG;gBACpBK,WAAW,YAAY;gBACvBD,gBAAgB,eAAe;gBAC/B,IAAIV,WAAW;oBACbU,gBAAgB,eAAe;oBAC/B,IAAIP,aAAalX,QAAQzL,WAAWuT,OAAO,EAAEkQ;oBAC7C,IAAIzB,uBAAuB7Z,QAAQ,MAAMsD,QAAQzL,WAAWuT,OAAO,EAAE;wBACnE2P,gBAAgB;oBAClB;gBACF;YACF;YACA;QACF,KAAK7iB,kBAAkB4T,KAAK;YAC1B,IAAI,CAACrI,SAAS+L,MAAM,IAAI+L,4BAA4BjY,QAAQzL,WAAWuT,OAAO,EAAE;gBAC9E2P,gBAAgB,sBAAsB;YACxC;YACA,IAAI/a,OAAQ7G,CAAAA,MAAMsC,aAAa,CAAC6C,MAAMtE,IAAI,IAAI,IAAI,CAAA,GAAI;gBACpD4f,QAAQe,SAAS,GAAG;gBACpBK,WAAW,YAAY;gBACvBD,gBAAgB,eAAe;gBAC/B,IAAIV,WAAW;oBACbU,gBAAgB,eAAe;oBAC/B,IAAIP,aAAalX,QAAQzL,WAAWuT,OAAO,EAAE;wBAC3CkQ;wBACA,IAAItb,QAAQ,KAAK6Z,qBAAqB;4BACpCkB,gBAAgB;wBAClB;oBACF;gBACF;YACF,OAAO,IAAI/a,QAAQ,MAAMqa,WAAW;gBAClCW,WAAW,yBAAyB;gBACpC,IAAIR,WAAW;oBACbO,gBAAgB,YAAY;gBAC9B;gBACAA,gBAAgB,kBAAkB;gBAClCA,gBAAgB,UAAU;YAC5B;YACA;QACF,KAAK7iB,kBAAkB6T,KAAK;YAC1B,IAAI/L,QAAQ,MAAMya,aAAab,QAAQe,SAAS,GAAG;YACnD,IAAI3a,QAAQ,IAAI;gBACd4Z,QAAQe,SAAS,GAAG;gBACpBK,WAAW,cAAc;YAC3B;YACA;QACF,KAAK9iB,kBAAkB8T,IAAI;QAC3B,KAAK9T,kBAAkB+T,WAAW;YAChC,IAAIlM,UAAU7H,kBAAkB8T,IAAI,IAAI0O,YAAY;gBAClD,IAAI1a,QAAQ,MAAMya,aAAab,QAAQe,SAAS,GAAG;gBACnD,IAAI;oBAAC;oBAAI;iBAAG,CAACzX,QAAQ,CAAClD,MAAM;oBAC1Bgb,WACEhb,QAAQ,KAAK2Z,cAAc,gBAAgB,sDAAsDA,cAAc,wBAAwB;oBAEzI,IAAIU,WAAW;wBACbT,QAAQe,SAAS,GAAG;wBACpB,IAAIH,aAAalX,QAAQzL,WAAWuT,OAAO,EAAE;4BAC3CkQ;wBACF;oBACF;gBACF;YACF,OAAO;gBACL,IAAIjB,aAAcra,CAAAA,QAAQ,MAAMsD,QAAQzL,WAAWqT,QAAQ,IAAIlL,QAAQ,MAAMsD,QAAQzL,WAAWuT,OAAM,AAAC,GAAG;oBACxG,IAAIoP,WAAW;wBACbQ,WAAW,0BAA0B;wBACrCD,gBAAgB,YAAY;oBAC9B;oBACAA,gBAAgB,kBAAkB;oBAClCA,gBAAgB,UAAU;gBAC5B,OAAO;oBACL,IAAMa,iBAAiBnY,SAASgP,IAAI,KAAK,eAAehP,SAASiP,UAAU,KAAK;oBAChF,IAAI1S,QAAQ,IAAI;wBACd4Z,QAAQe,SAAS,GAAG;wBACpB,IAAIH,aAAalX,QAAQzL,WAAWuT,OAAO,EAAE;4BAC3CkQ;wBACF;wBACA,IAAI,CAACM,kBAAkBtY,QAAQzL,WAAWsT,MAAM,EAAE;4BAChD6P,WAAW,kBAAkB;4BAC7B,IAAI,CAACY,gBAAgB;gCACnBZ,WAAW,SAAS;gCACpBD,gBAAgB,eAAe;gCAC/B,IAAIlB,qBAAqB;oCACvBkB,gBAAgB;gCAClB;4BACF,OAAO;gCACLC,WAAW,qBAAqB;4BAClC;wBACF,OAAO;4BACLA,WAAW,kBAAkB;wBAC/B;oBACF,OAAO,IAAIhb,QAAQ,IAAI;wBACrB4Z,QAAQe,SAAS,GAAG;wBACpB,IAAIH,aAAalX,QAAQzL,WAAWuT,OAAO,EAAE;4BAC3CkQ;wBACF;wBACA,IAAIM,gBAAgB;4BAClBZ,WAAW,SAAS;4BACpBD,gBAAgB,eAAe;4BAC/B,IAAIzX,QAAQzL,WAAWuT,OAAO,EAAE;gCAC9B4P,WAAW,kBAAkB;4BAC/B;4BACA,IAAInB,uBAAuBQ,aAAa/W,QAAQzL,WAAWuT,OAAO,EAAE;gCAClE2P,gBAAgB;4BAClB;wBACF,OAAO,IAAI;4BACT;4BACA;4BACA;4BACA;4BACA;4BACA;4BACA;4BACA;4BACA;yBACD,CAAC7X,QAAQ,CAACO,SAASgP,IAAI,GAAG;4BACzBuI,WAAW,mBAAmB;4BAC9B,IAAI1X,QAAQzL,WAAWuT,OAAO,EAAE;gCAC9B4P,WAAW,oBAAoB;4BACjC;wBACF,OAAO;4BACLA,WAAW,iBAAiB;wBAC9B;oBACF,OAAO,IAAIhb,QAAQ,MAAM4b,kBAAkBtY,QAAQzL,WAAWiT,MAAM,EAAE;wBACpEkQ,WAAW,mCAAmC;oBAChD;gBACF;YACF;YACA;IACJ;AACF;AACA,SAASM;IACPP,gBAAgB,mBAAmB;AACrC;AACA,SAASC,WAAWa,oBAAoB,EAAEC,UAAU;IAClD,IAAMC,OAAOpC,eAAe,CAACmC,aAAaD,uBAAuBC;IACjE,IAAI,CAACrC,SAASvW,QAAQ,CAAC6Y,OAAO;QAC5BtC,SAASjU,IAAI,CAACuW;IAChB;AACF;AACA,SAAShB,gBAAgBc,oBAAoB,EAAEC,UAAU;IACvD,IAAMC,OAAOpC,eAAe,CAACmC,aAAaD,uBAAuBC;IACjE,IAAI,CAACpC,cAAcxW,QAAQ,CAAC6Y,OAAO;QACjCrC,cAAclU,IAAI,CAACuW;IACrB;AACF;AACA,SAASV,oBAAoB/c,KAAK,EAAEmF,QAAQ;IAC1C,IAAQhK,QAA0B6E,MAA1B7E,OAAOC,MAAmB4E,MAAnB5E,KAAKoH,YAAcxC,MAAdwC;IACpB,IAAIpH,QAAQ,KAAKA,QAAQ,IAAI;QAC3B,OAAO;IACT;IACA,OAAQD;QACN,KAAK;YACH,OAAOC,MAAM,MAAMA,MAAM;QAC3B,KAAK;YACH,OAAOA,QAAQ,MAAMoH,cAAc,KAAKpH,QAAQ;QAClD,KAAK;YACH,OAAOA,QAAQ,KAAKoH,cAAc,KAAKpH,QAAQ;QACjD,KAAK;YACH,OAAO;gBAAC;gBAAG;gBAAI;gBAAI;gBAAI;gBAAI;gBAAI;aAAG,CAACwJ,QAAQ,CAACxJ,QAAQoH,cAAc,KAAKpH,QAAQ;QACjF,KAAK;YACH,OAAOA,OAAO;QAChB,KAAK;YACH,OAAOA,QAAQ,MAAMA,MAAM,KAAKA,QAAQ,KAAKP,MAAMsC,aAAa,CAAC6C,MAAMtE,IAAI;QAC7E,KAAK;QACL,KAAK;YACH,OAAOP,UAAWN,CAAAA,MAAM8C,SAAS,CAACqC,MAAMtE,IAAI,IAAI9B,kBAAkB+T,WAAW,GAAG/T,kBAAkB8T,IAAG,AAAC,KAAMtS,CAAAA,QAAQ,MAAMA,QAAS+J,CAAAA,SAASgP,IAAI,KAAK,+CAA+C,KAAK,EAAC,CAAC;QAC7M;YACE,OAAO;IACX;AACF;AACA,6DAA6D;AAC7D,KAAMrZ,CAAAA,OAAOC,OAAO,GAAG;IACrBzB,SAAAA;IACAC,YAAAA;IACAC,eAAAA;IACAC,eAAAA;IACAC,iBAAAA;IACAC,iBAAAA;IACAC,mBAAAA;IACAC,UAAAA;IACAC,WAAAA;IACAC,OAAAA;IACAC,YAAAA;IACAC,kBAAAA;IACAC,OAAAA;IACAC,OAAAA;IACAC,aAAAA;IACAC,WAAAA;IACAC,QAAAA;IACAC,aAAAA;IACAC,sBAAAA;IACAC,kBAAAA;IACAC,cAAAA;IACAC,kBAAAA;IACAC,aAAAA;IACAC,OAAAA;AACF,CAAA","sourcesContent":["\"use strict\";\nvar __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\n\n// src/index.ts\nvar src_exports = {};\n__export(src_exports, {\n Dafyomi: () => Dafyomi,\n DaysOfWeek: () => DaysOfWeek,\n DaysOfWeekEng: () => DaysOfWeekEng,\n DaysOfWeekHeb: () => DaysOfWeekHeb,\n JewishMonthsEng: () => JewishMonthsEng,\n JewishMonthsHeb: () => JewishMonthsHeb,\n JewishMonthsNames: () => JewishMonthsNames,\n Location: () => Location,\n Locations: () => Locations,\n Molad: () => Molad,\n PirkeiAvos: () => PirkeiAvos,\n SecularMonthsEng: () => SecularMonthsEng,\n Sedra: () => Sedra,\n Utils: () => Utils,\n ZmanTypeIds: () => ZmanTypeIds,\n ZmanTypes: () => ZmanTypes,\n Zmanim: () => Zmanim,\n ZmanimUtils: () => ZmanimUtils,\n closestDistanceMatch: () => closestDistanceMatch,\n closestNameMatch: () => closestNameMatch,\n findLocation: () => findLocation,\n getNotifications: () => getNotifications,\n getZmanType: () => getZmanType,\n jDate: () => jDate\n});\nmodule.exports = __toCommonJS(src_exports);\n\n// src/JCal/Sedra.ts\nvar _Sedra = class _Sedra {\n /**\n * @param {jDate} jd\n * @param {boolean} israel\n */\n constructor(jd, israel2) {\n if (jd.Month === 7 && jd.Day >= 15 && jd.Day < (israel2 ? 23 : 24)) {\n this.sedras = [_Sedra.sedraList[53]];\n return;\n }\n let sedraArray = [], sedraOrder = _Sedra.getSedraOrder(jd.Year, israel2), absDate = jd.Abs, index, weekNum;\n absDate = _Sedra.getDayOnOrBefore(6, absDate + 6);\n weekNum = (absDate - sedraOrder.firstSatInYear) / 7;\n if (sedraOrder.sedraArray && weekNum >= sedraOrder.sedraArray.length) {\n const indexLast = sedraOrder.sedraArray[sedraOrder.sedraArray.length - 1];\n if (indexLast < 0) {\n index = -indexLast + 2;\n } else {\n index = indexLast + 1;\n }\n } else {\n index = sedraOrder.sedraArray ? sedraOrder.sedraArray[weekNum] : -1;\n }\n if (index >= 0) {\n sedraArray = [_Sedra.sedraList[index]];\n } else {\n const i = -index;\n sedraArray = [_Sedra.sedraList[i], _Sedra.sedraList[i + 1]];\n }\n this.sedras = sedraArray;\n }\n /**\n * Gets the sedra/s as a string. If there are two, they are seperated by a \" - \"\n */\n toString() {\n return this.sedras.map((s) => s.eng).join(\" - \");\n }\n /**\n * Gets the sedra/s as a string. If there are two, they are seperated by a \" - \"\n */\n toStringHeb() {\n return this.sedras.map((s) => s.heb).join(\" - \");\n }\n static getDayOnOrBefore(day_of_week, date) {\n return date - (date - day_of_week) % 7;\n }\n static getSedraOrder(year, israel2) {\n if (_Sedra.lastCalculatedYear != null && _Sedra.lastCalculatedYear.year === year && _Sedra.lastCalculatedYear.israel === israel2) {\n return _Sedra.lastCalculatedYear;\n }\n const longCheshvon = jDate.isLongCheshvan(year), shortKislev = jDate.isShortKislev(year), roshHashana = jDate.absJd(year, 7, 1), roshHashanaDOW = Math.abs(roshHashana % 7), firstSatInYear = _Sedra.getDayOnOrBefore(6, roshHashana + 6);\n let yearType, sArray;\n if (longCheshvon && !shortKislev)\n yearType = \"complete\";\n else if (!longCheshvon && shortKislev)\n yearType = \"incomplete\";\n else\n yearType = \"regular\";\n if (!jDate.isJdLeapY(year)) {\n switch (roshHashanaDOW) {\n case 6:\n if (yearType === \"incomplete\") {\n sArray = _Sedra.shabbos_short;\n } else if (yearType === \"complete\") {\n sArray = _Sedra.shabbos_long;\n }\n break;\n case 1:\n if (yearType === \"incomplete\") {\n sArray = _Sedra.mon_short;\n } else if (yearType === \"complete\") {\n sArray = israel2 ? _Sedra.mon_short : _Sedra.mon_long;\n }\n break;\n case 2:\n if (yearType === \"regular\") {\n sArray = israel2 ? _Sedra.mon_short : _Sedra.mon_long;\n }\n break;\n case 4:\n if (yearType === \"regular\") {\n sArray = israel2 ? _Sedra.thu_normal_Israel : _Sedra.thu_normal;\n } else if (yearType === \"complete\") {\n sArray = _Sedra.thu_long;\n }\n break;\n default:\n throw \"improper sedra year type calculated.\";\n }\n } else {\n switch (roshHashanaDOW) {\n case 6:\n if (yearType === \"incomplete\") {\n sArray = _Sedra.shabbos_short_leap;\n } else if (yearType === \"complete\") {\n sArray = israel2 ? _Sedra.shabbos_short_leap : _Sedra.shabbos_long_leap;\n }\n break;\n case 1:\n if (yearType === \"incomplete\") {\n sArray = israel2 ? _Sedra.mon_short_leap_Israel : _Sedra.mon_short_leap;\n } else if (yearType === \"complete\") {\n sArray = israel2 ? _Sedra.mon_long_leap_Israel : _Sedra.mon_long_leap;\n }\n break;\n case 2:\n if (yearType === \"regular\") {\n sArray = israel2 ? _Sedra.mon_long_leap_Israel : _Sedra.mon_long_leap;\n }\n break;\n case 4:\n if (yearType === \"incomplete\") {\n sArray = _Sedra.thu_short_leap;\n } else if (yearType === \"complete\") {\n sArray = _Sedra.thu_long_leap;\n }\n break;\n default:\n throw \"improper sedra year type calculated.\";\n }\n }\n const retobj = {\n firstSatInYear,\n sedraArray: sArray,\n year,\n israel: israel2\n };\n _Sedra.lastCalculatedYear = retobj;\n return retobj;\n }\n};\n_Sedra.lastCalculatedYear = null;\n_Sedra.sedraList = [{ eng: \"Bereshis\", heb: \"\\u05D1\\u05E8\\u05D0\\u05E9\\u05D9\\u05EA\" }, { eng: \"Noach\", heb: \"\\u05E0\\u05D7\" }, { eng: \"Lech-Lecha\", heb: \"\\u05DC\\u05DA \\u05DC\\u05DA\" }, { eng: \"Vayera\", heb: \"\\u05D5\\u05D9\\u05E8\\u05D0\" }, { eng: \"Chayei Sara\", heb: \"\\u05D7\\u05D9\\u05D9 \\u05E9\\u05E8\\u05D4\" }, { eng: \"Toldos\", heb: \"\\u05EA\\u05D5\\u05DC\\u05D3\\u05D5\\u05EA\" }, { eng: \"Vayetzei\", heb: \"\\u05D5\\u05D9\\u05E6\\u05D0\" }, { eng: \"Vayishlach\", heb: \"\\u05D5\\u05D9\\u05E9\\u05DC\\u05D7\" }, { eng: \"Vayeishev\", heb: \"\\u05D5\\u05D9\\u05E9\\u05D1\" }, { eng: \"Mikeitz\", heb: \"\\u05DE\\u05E7\\u05E5\" }, { eng: \"Vayigash\", heb: \"\\u05D5\\u05D9\\u05D2\\u05E9\" }, { eng: \"Vayechi\", heb: \"\\u05D5\\u05D9\\u05D7\\u05D9\" }, { eng: \"Shemos\", heb: \"\\u05E9\\u05DE\\u05D5\\u05EA\" }, { eng: \"Va'era\", heb: \"\\u05D5\\u05D0\\u05E8\\u05D0\" }, { eng: \"Bo\", heb: \"\\u05D1\\u05D0\" }, { eng: \"Beshalach\", heb: \"\\u05D1\\u05E9\\u05DC\\u05D7\" }, { eng: \"Yisro\", heb: \"\\u05D9\\u05EA\\u05E8\\u05D5\" }, { eng: \"Mishpatim\", heb: \"\\u05DE\\u05E9\\u05E4\\u05D8\\u05D9\\u05DD\" }, { eng: \"Terumah\", heb: \"\\u05EA\\u05E8\\u05D5\\u05DE\\u05D4\" }, { eng: \"Tetzaveh\", heb: \"\\u05EA\\u05E6\\u05D5\\u05D4\" }, { eng: \"Ki Sisa\", heb: \"\\u05DB\\u05D9 \\u05EA\\u05E9\\u05D0\" }, { eng: \"Vayakhel\", heb: \"\\u05D5\\u05D9\\u05E7\\u05D4\\u05DC\" }, { eng: \"Pekudei\", heb: \"\\u05E4\\u05E7\\u05D5\\u05D3\\u05D9\" }, { eng: \"Vayikra\", heb: \"\\u05D5\\u05D9\\u05E7\\u05E8\\u05D0\" }, { eng: \"Tzav\", heb: \"\\u05E6\\u05D5\" }, { eng: \"Shmini\", heb: \"\\u05E9\\u05DE\\u05D9\\u05E0\\u05D9\" }, { eng: \"Tazria\", heb: \"\\u05EA\\u05D6\\u05E8\\u05D9\\u05E2\" }, { eng: \"Metzora\", heb: \"\\u05DE\\u05E6\\u05D5\\u05E8\\u05E2\" }, { eng: \"Achrei Mos\", heb: \"\\u05D0\\u05D7\\u05E8\\u05D9 \\u05DE\\u05D5\\u05EA\" }, { eng: \"Kedoshim\", heb: \"\\u05E7\\u05D3\\u05D5\\u05E9\\u05D9\\u05DD\" }, { eng: \"Emor\", heb: \"\\u05D0\\u05DE\\u05D5\\u05E8\" }, { eng: \"Behar\", heb: \"\\u05D1\\u05D4\\u05E8\" }, { eng: \"Bechukosai\", heb: \"\\u05D1\\u05D7\\u05E7\\u05D5\\u05EA\\u05D9\" }, { eng: \"Bamidbar\", heb: \"\\u05D1\\u05DE\\u05D3\\u05D1\\u05E8\" }, { eng: \"Nasso\", heb: \"\\u05E0\\u05E9\\u05D0\" }, { eng: \"Beha'aloscha\", heb: \"\\u05D1\\u05D4\\u05E2\\u05DC\\u05EA\\u05DA\" }, { eng: \"Sh'lach\", heb: \"\\u05E9\\u05DC\\u05D7\" }, { eng: \"Korach\", heb: \"\\u05E7\\u05E8\\u05D7\" }, { eng: \"Chukas\", heb: \"\\u05D7\\u05E7\\u05EA\" }, { eng: \"Balak\", heb: \"\\u05D1\\u05DC\\u05E7\" }, { eng: \"Pinchas\", heb: \"\\u05E4\\u05D9\\u05E0\\u05D7\\u05E1\" }, { eng: \"Matos\", heb: \"\\u05DE\\u05D8\\u05D5\\u05EA\" }, { eng: \"Masei\", heb: \"\\u05DE\\u05E1\\u05E2\\u05D9\" }, { eng: \"Devarim\", heb: \"\\u05D3\\u05D1\\u05E8\\u05D9\\u05DD\" }, { eng: \"Va'eschanan\", heb: \"\\u05D5\\u05D0\\u05EA\\u05D7\\u05E0\\u05DF\" }, { eng: \"Eikev\", heb: \"\\u05E2\\u05E7\\u05D1\" }, { eng: \"Re'eh\", heb: \"\\u05E8\\u05D0\\u05D4\" }, { eng: \"Shoftim\", heb: \"\\u05E9\\u05D5\\u05E4\\u05D8\\u05D9\\u05DD\" }, { eng: \"Ki Seitzei\", heb: \"\\u05DB\\u05D9 \\u05EA\\u05E6\\u05D0\" }, { eng: \"Ki Savo\", heb: \"\\u05DB\\u05D9 \\u05EA\\u05D1\\u05D0\" }, { eng: \"Nitzavim\", heb: \"\\u05E0\\u05E6\\u05D1\\u05D9\\u05DD\" }, { eng: \"Vayeilech\", heb: \"\\u05D5\\u05D9\\u05DC\\u05DA\" }, { eng: \"Ha'Azinu\", heb: \"\\u05D4\\u05D0\\u05D6\\u05D9\\u05E0\\u05D5\" }, { eng: \"Vezos Habracha\", heb: \"\\u05D5\\u05D6\\u05D0\\u05EA \\u05D4\\u05D1\\u05E8\\u05DB\\u05D4\" }];\n_Sedra.shabbos_short = [52, 52, 53, 53, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, -21, 23, 24, 25, 25, -26, -28, 30, -31, 33, 34, 35, 36, 37, 38, 39, 40, -41, 43, 44, 45, 46, 47, 48, 49, 50];\n_Sedra.shabbos_long = [52, 52, 53, 53, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, -21, 23, 24, 25, 25, -26, -28, 30, -31, 33, 34, 35, 36, 37, 38, 39, 40, -41, 43, 44, 45, 46, 47, 48, 49, -50];\n_Sedra.mon_short = [51, 52, 53, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, -21, 23, 24, 25, 25, -26, -28, 30, -31, 33, 34, 35, 36, 37, 38, 39, 40, -41, 43, 44, 45, 46, 47, 48, 49, -50];\n_Sedra.mon_long = [51, 52, 53, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, -21, 23, 24, 25, 25, -26, -28, 30, -31, 33, 34, 34, 35, 36, 37, -38, 40, -41, 43, 44, 45, 46, 47, 48, 49, -50];\n_Sedra.thu_normal = [52, 53, 53, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, -21, 23, 24, 25, 25, 25, -26, -28, 30, -31, 33, 34, 35, 36, 37, 38, 39, 40, -41, 43, 44, 45, 46, 47, 48, 49, 50];\n_Sedra.thu_normal_Israel = [52, 53, 53, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, -21, 23, 24, 25, 25, -26, -28, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, -41, 43, 44, 45, 46, 47, 48, 49, 50];\n_Sedra.thu_long = [52, 53, 53, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 25, -26, -28, 30, -31, 33, 34, 35, 36, 37, 38, 39, 40, -41, 43, 44, 45, 46, 47, 48, 49, 50];\n_Sedra.shabbos_short_leap = [52, 52, 53, 53, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, -41, 43, 44, 45, 46, 47, 48, 49, -50];\n_Sedra.shabbos_long_leap = [52, 52, 53, 53, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 28, 29, 30, 31, 32, 33, 34, 34, 35, 36, 37, -38, 40, -41, 43, 44, 45, 46, 47, 48, 49, -50];\n_Sedra.mon_short_leap = [51, 52, 53, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 28, 29, 30, 31, 32, 33, 34, 34, 35, 36, 37, -38, 40, -41, 43, 44, 45, 46, 47, 48, 49, -50];\n_Sedra.mon_short_leap_Israel = [51, 52, 53, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, -41, 43, 44, 45, 46, 47, 48, 49, -50];\n_Sedra.mon_long_leap = [51, 52, 53, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 28, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, -41, 43, 44, 45, 46, 47, 48, 49, 50];\n_Sedra.mon_long_leap_Israel = [51, 52, 53, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50];\n_Sedra.thu_short_leap = [52, 53, 53, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50];\n_Sedra.thu_long_leap = [52, 53, 53, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, -50];\nvar Sedra = _Sedra;\n\n// src/JCal/PirkeiAvos.ts\nvar _PirkeiAvos = class _PirkeiAvos {\n static getPrakim(jd, israel2) {\n if (jd.getDayOfWeek() !== 6) {\n return [];\n }\n const jMonth = jd.Month, jDay = jd.Day;\n if (jMonth === 1 && jDay > (israel2 ? 21 : 22) || //All Shabbosim through Iyar, Sivan, Tamuz, Av - besides for the day/s of Shavuos and Tisha B'Av\n jMonth > 1 && jMonth < 6 && !(jMonth === 3 && jDay === 6 || !israel2 && jMonth === 3 && jDay === 7) && !(jMonth === 5 && jDay === 9)) {\n return [_PirkeiAvos._get1stPerek(jd, israel2)];\n } else if (jMonth === 6) {\n return _PirkeiAvos._ellul(jd, israel2);\n } else {\n return [];\n }\n }\n};\n_PirkeiAvos._get1stPerek = function(jd, israel2) {\n const jYear = jd.Year, jMonth = jd.Month, jDay = jd.Day, pes1 = new jDate(jYear, 1, 15), shb1 = (israel2 ? 7 : 8) + (6 - pes1.getDayOfWeek()), cShb = jMonth === 1 && jDay === shb1 + 15 ? 1 : Utils.toInt((jd.Abs - (pes1.Abs + shb1)) / 7) + 1;\n let prk = cShb % 6;\n if (prk === 0) prk = 6;\n if (!israel2 && pes1.getDayOfWeek() === 4 && (jMonth > 3 || jMonth === 3 && jDay > 6)) {\n prk = prk === 1 ? 6 : prk - 1;\n }\n if (pes1.getDayOfWeek() === 6 && (jMonth > 5 || jMonth === 5 && jDay > 9)) {\n prk = prk === 1 ? 6 : prk - 1;\n }\n return prk;\n};\n_PirkeiAvos._ellul = function(jd, israel2) {\n let prakim;\n const jYear = jd.Year, jDay = jd.Day, day1 = new jDate(jYear, 6, 1, jd.Abs - jd.Day + 1), day1DOW = day1.getDayOfWeek(), shabbos1Day = day1DOW === 6 ? 1 : 6 - (day1DOW + 6) % 6 + 1, shabbos1Date = new jDate(jYear, 6, shabbos1Day, day1.Abs + shabbos1Day - 1), cShb = jDay === shabbos1Day ? 1 : Utils.toInt((jDay - shabbos1Day) / 7) + 1;\n switch (_PirkeiAvos._get1stPerek(shabbos1Date, israel2)) {\n case 1:\n switch (cShb) {\n case 1:\n prakim = [1];\n break;\n case 2:\n prakim = [2];\n break;\n case 3:\n prakim = [3, 4];\n break;\n case 4:\n prakim = [5, 6];\n break;\n }\n break;\n case 2:\n switch (cShb) {\n case 1:\n prakim = [2];\n break;\n case 2:\n prakim = [3];\n break;\n case 3:\n prakim = [4];\n break;\n case 4:\n prakim = [5, 6];\n break;\n }\n break;\n case 3:\n switch (cShb) {\n case 1:\n prakim = [3];\n break;\n case 2:\n prakim = [4];\n break;\n case 3:\n prakim = [5];\n break;\n case 4:\n prakim = [6];\n break;\n }\n break;\n case 4:\n switch (cShb) {\n case 1:\n prakim = [4, 5];\n break;\n case 2:\n prakim = [6, 1];\n break;\n case 3:\n prakim = [2, 3];\n break;\n case 4:\n prakim = [4, 5, 6];\n break;\n }\n break;\n case 5:\n switch (cShb) {\n case 1:\n prakim = [5, 6];\n break;\n case 2:\n prakim = [1, 2];\n break;\n case 3:\n prakim = [3, 4];\n break;\n case 4:\n prakim = [5, 6];\n break;\n }\n break;\n case 6:\n switch (cShb) {\n case 1:\n prakim = [6];\n break;\n case 2:\n prakim = [1, 2];\n break;\n case 3:\n prakim = [3, 4];\n break;\n case 4:\n prakim = [5, 6];\n break;\n }\n break;\n }\n return prakim || [];\n};\nvar PirkeiAvos = _PirkeiAvos;\n\n// src/JCal/Dafyomi.ts\nvar _Dafyomi = class _Dafyomi {\n static getDaf(jdate) {\n const absoluteDate = jdate.Abs;\n let dafcnt = 40, cno, dno, osday, nsday, total, count, j, blatt;\n osday = jDate.absSd(new Date(1923, 8, 11));\n nsday = jDate.absSd(new Date(1975, 5, 24));\n if (absoluteDate < osday)\n return null;\n if (absoluteDate >= nsday) {\n cno = 8 + Utils.toInt((absoluteDate - nsday) / 2711);\n dno = (absoluteDate - nsday) % 2711;\n } else {\n cno = 1 + Utils.toInt((absoluteDate - osday) / 2702);\n dno = Utils.toInt((absoluteDate - osday) / 2702);\n }\n total = blatt = 0;\n count = -1;\n if (cno <= 7)\n _Dafyomi.masechtaList[4].daf = 13;\n else\n _Dafyomi.masechtaList[4].daf = 22;\n j = 0;\n while (j < dafcnt) {\n count++;\n total = total + _Dafyomi.masechtaList[j].daf - 1;\n if (dno < total) {\n blatt = _Dafyomi.masechtaList[j].daf + 1 - (total - dno);\n switch (count) {\n case 36:\n blatt = blatt + 21;\n break;\n case 37:\n blatt = blatt + 24;\n break;\n case 38:\n blatt = blatt + 33;\n break;\n default:\n break;\n }\n j = 1 + dafcnt;\n }\n j++;\n }\n return {\n masechet: _Dafyomi.masechtaList[count],\n daf: blatt\n };\n }\n // Returns the name of the Masechta and daf number in English, For example: Sukkah, Daf 3\n static toString(jd) {\n const d = _Dafyomi.getDaf(jd);\n if (d !== null) {\n return d.masechet.eng + \", Daf \" + d.daf.toString();\n }\n }\n //Returns the name of the Masechta and daf number in Hebrew. For example: 'סוכה דף כ.\n static toStringHeb(jd) {\n const d = _Dafyomi.getDaf(jd);\n if (d !== null) {\n return d.masechet.heb + \" \\u05D3\\u05E3 \" + Utils.toJewishNumber(d.daf);\n }\n }\n};\n_Dafyomi.masechtaList = [\n { eng: \"Berachos\", heb: \"\\u05D1\\u05E8\\u05DB\\u05D5\\u05EA\", daf: 64 },\n { eng: \"Shabbos\", heb: \"\\u05E9\\u05D1\\u05EA\", daf: 157 },\n { eng: \"Eruvin\", heb: \"\\u05E2\\u05E8\\u05D5\\u05D1\\u05D9\\u05DF\", daf: 105 },\n { eng: \"Pesachim\", heb: \"\\u05E4\\u05E1\\u05D7\\u05D9\\u05DD\", daf: 121 },\n { eng: \"Shekalim\", heb: \"\\u05E9\\u05E7\\u05DC\\u05D9\\u05DD\", daf: 22 },\n { eng: \"Yoma\", heb: \"\\u05D9\\u05D5\\u05DE\\u05D0\", daf: 88 },\n { eng: \"Sukkah\", heb: \"\\u05E1\\u05D5\\u05DB\\u05D4\", daf: 56 },\n { eng: \"Beitzah\", heb: \"\\u05D1\\u05D9\\u05E6\\u05D4\", daf: 40 },\n { eng: \"Rosh Hashana\", heb: \"\\u05E8\\u05D0\\u05E9 \\u05D4\\u05E9\\u05E0\\u05D4\", daf: 35 },\n { eng: \"Taanis\", heb: \"\\u05EA\\u05E2\\u05E0\\u05D9\\u05EA\", daf: 31 },\n { eng: \"Megillah\", heb: \"\\u05DE\\u05D2\\u05D9\\u05DC\\u05D4\", daf: 32 },\n { eng: \"Moed Katan\", heb: \"\\u05DE\\u05D5\\u05E2\\u05D3 \\u05E7\\u05D8\\u05DF\", daf: 29 },\n { eng: \"Chagigah\", heb: \"\\u05D7\\u05D2\\u05D9\\u05D2\\u05D4\", daf: 27 },\n { eng: \"Yevamos\", heb: \"\\u05D9\\u05D1\\u05DE\\u05D5\\u05EA\", daf: 122 },\n { eng: \"Kesubos\", heb: \"\\u05DB\\u05EA\\u05D5\\u05D1\\u05D5\\u05EA\", daf: 112 },\n { eng: \"Nedarim\", heb: \"\\u05E0\\u05D3\\u05E8\\u05D9\\u05DD\", daf: 91 },\n { eng: \"Nazir\", heb: \"\\u05E0\\u05D6\\u05D9\\u05E8\", daf: 66 },\n { eng: \"Sotah\", heb: \"\\u05E1\\u05D5\\u05D8\\u05D4\", daf: 49 },\n { eng: \"Gitin\", heb: \"\\u05D2\\u05D9\\u05D8\\u05D9\\u05DF\", daf: 90 },\n { eng: \"Kiddushin\", heb: \"\\u05E7\\u05D3\\u05D5\\u05E9\\u05D9\\u05DF\", daf: 82 },\n { eng: \"Baba Kamma\", heb: \"\\u05D1\\u05D1\\u05D0 \\u05E7\\u05DE\\u05D0\", daf: 119 },\n { eng: \"Baba Metzia\", heb: \"\\u05D1\\u05D1\\u05D0 \\u05DE\\u05E6\\u05D9\\u05E2\\u05D0\", daf: 119 },\n { eng: \"Baba Basra\", heb: \"\\u05D1\\u05D1\\u05D0 \\u05D1\\u05EA\\u05E8\\u05D0\", daf: 176 },\n { eng: \"Sanhedrin\", heb: \"\\u05E1\\u05E0\\u05D4\\u05D3\\u05E8\\u05D9\\u05DF\", daf: 113 },\n { eng: \"Makkot\", heb: \"\\u05DE\\u05DB\\u05D5\\u05EA\", daf: 24 },\n { eng: \"Shevuot\", heb: \"\\u05E9\\u05D1\\u05D5\\u05E2\\u05D5\\u05EA\", daf: 49 },\n { eng: \"Avodah Zarah\", heb: \"\\u05E2\\u05D1\\u05D5\\u05D3\\u05D4 \\u05D6\\u05E8\\u05D4\", daf: 76 },\n { eng: \"Horayot\", heb: \"\\u05D4\\u05D5\\u05E8\\u05D9\\u05D5\\u05EA\", daf: 14 },\n { eng: \"Zevachim\", heb: \"\\u05D6\\u05D1\\u05D7\\u05D9\\u05DD\", daf: 120 },\n { eng: \"Menachos\", heb: \"\\u05DE\\u05E0\\u05D7\\u05D5\\u05EA\", daf: 110 },\n { eng: \"Chullin\", heb: \"\\u05D7\\u05D5\\u05DC\\u05D9\\u05DF\", daf: 142 },\n { eng: \"Bechoros\", heb: \"\\u05D1\\u05DB\\u05D5\\u05E8\\u05D5\\u05EA\", daf: 61 },\n { eng: \"Arachin\", heb: \"\\u05E2\\u05E8\\u05DB\\u05D9\\u05DF\", daf: 34 },\n { eng: \"Temurah\", heb: \"\\u05EA\\u05DE\\u05D5\\u05E8\\u05D4\", daf: 34 },\n { eng: \"Kerisos\", heb: \"\\u05DB\\u05E8\\u05D9\\u05EA\\u05D5\\u05EA\", daf: 28 },\n { eng: \"Meilah\", heb: \"\\u05DE\\u05E2\\u05D9\\u05DC\\u05D4\", daf: 22 },\n { eng: \"Kinnim\", heb: \"\\u05E7\\u05E0\\u05D9\\u05DD\", daf: 4 },\n { eng: \"Tamid\", heb: \"\\u05EA\\u05DE\\u05D9\\u05D3\", daf: 10 },\n { eng: \"Midos\", heb: \"\\u05DE\\u05D3\\u05D5\\u05EA\", daf: 4 },\n { eng: \"Niddah\", heb: \"\\u05E0\\u05D3\\u05D4\", daf: 73 }\n];\nvar Dafyomi = _Dafyomi;\n\n// src/JCal/jDate.ts\nvar _yearCache = [];\nvar JS_START_DATE_ABS = 719163;\nvar MS_PER_DAY = 864e5;\nvar JS_START_OFFSET = (/* @__PURE__ */ new Date(0)).getTimezoneOffset();\nvar jDate = class _jDate {\n /**\n * Create a new Jdate.\n * new jDate() - Sets the Jewish Date for the current system date\n * new jDate(javascriptDateObject) - Sets to the Jewish date on the given Gregorian date\n * new jDate(\"January 1 2045\") - Accepts any valid javascript Date string (uses javascripts new Date(string))\n * new jDate(jewishYear, jewishMonth, jewishDay) - Months start at 1. Nissan is month 1 Adar Sheini is 13.\n * new jDate(jewishYear, jewishMonth) - Same as above, with Day defaulting to 1\n * new jDate( { year: 5776, month: 4, day: 5 } ) - same as new jDate(jewishYear, jewishMonth, jewishDay)\n * new jDate( { year: 5776, month: 4 } ) - same as new jDate(jewishYear, jewishMonth)\n * new jDate( { year: 5776 } ) - sets to the first day of Rosh Hashana on the given year\n * new jDate(absoluteDate) - The number of days elapsed since the theoretical date Sunday, December 31, 0001 BCE\n * new jDate(jewishYear, jewishMonth, jewishDay, absoluteDate) - Most efficient constructor. Needs no calculations at all.\n * new jDate( { year: 5776, month: 4, day: 5, abs: 122548708 } ) - same as new jDate(jewishYear, jewishMonth, jewishDay, absoluteDate)\n * @param {number | Date | string | {year:number,month:number,day:number} | [number, number, number, number]} [arg] The full Jewish year number OR Javascript Date object or string OR object or array of year, month, day\n * @param {number} [month] The month of the Jewish date. Nissan is 1.\n * @param {number} [day] The day of the month\n * @param {number} [abs] The number of days that have passed since 12/31/0001\n */\n constructor(arg, month, day, abs) {\n this.Day = NaN;\n this.Month = NaN;\n this.Year = NaN;\n this.Abs = NaN;\n if (arguments.length === 0) {\n this.fromAbs(_jDate.absSd(/* @__PURE__ */ new Date()));\n } else if (arg instanceof Date) {\n if (Utils.isValidDate(arg)) {\n this.fromAbs(_jDate.absSd(arg));\n } else {\n throw \"jDate constructor: The given Date is not a valid javascript Date\";\n }\n } else if (Array.isArray(arg) && arg.length >= 3) {\n this.Day = arg[0];\n this.Month = arg[1];\n this.Year = arg[2];\n this.Abs = arg.length > 3 && arg[3] || _jDate.absJd(this.Year, this.Month, this.Day);\n } else if (arg && Utils.isString(arg)) {\n const d = new Date(arg);\n if (Utils.isValidDate(d)) {\n this.fromAbs(_jDate.absSd(d));\n } else {\n throw 'jDate constructor: The given string \"' + arg + '\" cannot be parsed into a Date';\n }\n } else if (Utils.isNumber(arg)) {\n if (arguments.length === 1) {\n this.fromAbs(arg);\n } else {\n this.Year = arg;\n this.Month = month || 7;\n this.Day = day || 1;\n this.Abs = abs || _jDate.absJd(this.Year, this.Month, this.Day);\n }\n } else if (typeof arg === \"object\") {\n const argObj = arg;\n if (Utils.isNumber(argObj.year)) {\n this.Day = argObj.day || 1;\n this.Month = argObj.month || 7;\n this.Year = argObj.year;\n this.Abs = argObj.abs || _jDate.absJd(this.Year, this.Month, this.Day);\n }\n }\n }\n /**Sets the current Jewish date from the given absolute date*/\n fromAbs(absolute) {\n const ymd = _jDate.fromAbs(absolute);\n this.Year = ymd.year;\n this.Month = ymd.month;\n this.Day = ymd.day;\n this.Abs = absolute;\n }\n /**Returns a valid javascript Date object that represents the Gregorian date\n that starts at midnight of the current Jewish date.*/\n getDate() {\n return _jDate.sdFromAbs(this.Abs);\n }\n /**\n * @returns {number} The day of the week for the current Jewish date. Sunday is 0 and Shabbos is 6.\n */\n getDayOfWeek() {\n return Math.abs(this.Abs % 7);\n }\n /**\n * @returns {number} The day of the week for the current Jewish date. Sunday is 0 and Shabbos is 6\n */\n get DayOfWeek() {\n return this.getDayOfWeek();\n }\n /**Returns a new Jewish date represented by adding the given number of days to the current Jewish date.*/\n addDays(days) {\n return new _jDate(this.Abs + days);\n }\n /**\n * Returns a new Jewish date represented by adding the given number of\n * Jewish Months to the current Jewish date.\n * If the current Day is 30 and the new month only has 29 days,\n * the 29th day of the month is returned.\n * @param {number} months\n */\n addMonths(months) {\n let year = this.Year, month = this.Month, day = this.Day, miy = _jDate.monthsJYear(year);\n for (let i = 0; i < Math.abs(months); i++) {\n if (months > 0) {\n month += 1;\n if (month > miy) {\n month = 1;\n }\n if (month === 7) {\n year += 1;\n miy = _jDate.monthsJYear(year);\n }\n } else if (months < 0) {\n month -= 1;\n if (month === 0) {\n month = miy;\n }\n if (month === 6) {\n year -= 1;\n miy = _jDate.monthsJYear(year);\n }\n }\n }\n if (day === 30 && _jDate.daysJMonth(year, month) === 29) {\n day = 29;\n }\n return new _jDate(year, month, day);\n }\n /**\n * Returns a new Jewish date represented by adding the\n * given number of Jewish Years to the current Jewish date.\n * If the current Day is 30 and the new dates month only has 29 days,\n * the 29th day of the month is returned.\n * @param {number} years\n */\n addYears(years) {\n let year = this.Year + years, month = this.Month, day = this.Day;\n if (month === 13 && !_jDate.isJdLeapY(year)) {\n month = 12;\n } else if (month === 8 && day === 30 && !_jDate.isLongCheshvan(year)) {\n month = 9;\n day = 1;\n } else if (month === 9 && day === 30 && _jDate.isShortKislev(year)) {\n month = 10;\n day = 1;\n }\n if (day === 30 && _jDate.daysJMonth(year, month) === 29) {\n day = 29;\n }\n return new _jDate(year, month, day);\n }\n addSecularMonths(months) {\n const secDate = new Date(this.getDate().valueOf());\n secDate.setMonth(secDate.getMonth() + months);\n return new _jDate(secDate);\n }\n addSecularYears(years) {\n const secDate = new Date(this.getDate().valueOf());\n secDate.setFullYear(secDate.getFullYear() + years);\n return new _jDate(secDate);\n }\n /**Gets the number of days separating this Jewish Date and the given one.\n *\n * If the given date is before this one, the number will be negative.\n * @param {jDate} jd\n * */\n diffDays(jd) {\n return jd.Abs - this.Abs;\n }\n /**Gets the number of months separating this Jewish Date and the given one.\n *\n * Ignores the Day property:\n *\n * jDate.toJDate(5777, 6, 29).diffMonths(jDate.toJDate(5778, 7, 1)) will return 1 even though they are a day apart.\n *\n * If the given date is before this one, the number will be negative.\n * @param {jDate} jd\n * */\n diffMonths(jd) {\n let month = jd.Month, year = jd.Year, months = 0;\n while (!(year === this.Year && month === this.Month)) {\n if (this.Abs > jd.Abs) {\n months--;\n month++;\n if (month > _jDate.monthsJYear(year)) {\n month = 1;\n } else if (month === 7) {\n year++;\n }\n } else {\n months++;\n month--;\n if (month < 1) {\n month = _jDate.monthsJYear(year);\n } else if (month === 6) {\n year--;\n }\n }\n }\n return months;\n }\n /**Gets the number of full months separating this Jewish Date and the given one.\n * If the given date is before this one, the number will be negative.\n * @param {jDate} jd\n * */\n diffFullMonths(jd) {\n let months = this.diffMonths(jd);\n if (months >= 0 && this.Day > jd.Day) {\n months--;\n } else if (months < 0 && this.Day < jd.Day) {\n months++;\n }\n return months;\n }\n /**Gets the number of years separating this Jewish Date and the given one.\n *\n * Ignores the Day and Month properties:\n *\n * jDate.toJDate(5777, 6, 29).diffYears(jDate.toJDate(5778, 7, 1)) will return 1 even though they are a day apart.\n *\n * If the given date is before this one, the number will be negative.\n * @param {jDate} jd*/\n diffYears(jd) {\n let diff = jd.Year - this.Year;\n if (this.Month < jd.Month || this.Month === jd.Month && this.Day < jd.Day) {\n diff--;\n }\n return diff;\n }\n /**Gets the number of full years separating this Jewish Date and the given one.\n * If the given date is before this one, the number will be negative.\n * @param {jDate} jd*/\n diffFullYears(jd) {\n let diff = jd.Year - this.Year;\n if (diff >= 0 && (this.Month > jd.Month || this.Month === jd.Month && this.Day > jd.Day)) {\n diff--;\n } else if (diff < 0 && (this.Month < jd.Month || this.Month === jd.Month && this.Day < jd.Day)) {\n diff++;\n }\n return diff;\n }\n /**\n * Returns the current Jewish date in the format: Thursday, the 3rd of Kislev 5776.\n * @param {boolean} hideDayOfWeek\n * @param {boolean} dontCapitalize\n */\n toString(hideDayOfWeek, dontCapitalize) {\n return (hideDayOfWeek ? dontCapitalize ? \"t\" : \"T\" : DaysOfWeekEng[this.getDayOfWeek()] + \", t\") + \"he \" + Utils.toSuffixed(this.Day) + \" of \" + this.monthName();\n }\n /**\n * Returns the current Jewish date in the format \"[Tuesday] Nissan 3, 5778\"\n * @param {boolean} showDow - show day of week?\n */\n toShortstring(showDow) {\n return (showDow ? DaysOfWeekEng[this.getDayOfWeek()] + \" \" : \"\") + JewishMonthsEng[this.Month] + \" \" + this.Day.toString() + \", \" + this.Year.toString();\n }\n /**\n * Returns the current Jewish date in the format \"Nissan 5778\"\n * @param {boolean} showYear - show the year number?\n */\n monthName(showYear = true) {\n return JewishMonthsEng[this.Month] + (this.Month === 12 && _jDate.isJdLeapY(this.Year) ? \" Rishon \" : \" \") + (showYear ? this.Year.toString() : \"\");\n }\n /**\n * Returns the current Jewish date in the format: יום חמישי כ\"א כסלו תשע\"ו\n * @param hideDayOfWeek When set to truthy, hides the day of the week\n */\n toStringHeb(hideDayOfWeek) {\n return (!hideDayOfWeek ? DaysOfWeekHeb[this.getDayOfWeek()] + \" \" : \"\") + Utils.toJewishNumber(this.Day) + \" \" + JewishMonthsHeb[this.Month] + (this.Month === 12 && _jDate.isJdLeapY(this.Year) ? \" \\u05E8\\u05D0\\u05E9\\u05D5\\u05DF \" : \" \") + Utils.toJewishNumber(this.Year % 1e3);\n }\n /**Gets the day of the omer for the current Jewish date. If the date is not during sefira, 0 is returned.*/\n getDayOfOmer() {\n let dayOfOmer = 0;\n if (this.Month === 1 && this.Day > 15 || this.Month === 2 || this.Month === 3 && this.Day < 6) {\n const first = new _jDate(this.Year, 1, 15);\n dayOfOmer = first.diffDays(this);\n }\n return dayOfOmer;\n }\n /**\n * Returns true if this day is yomtov or chol hamoed\n * @param {boolean} israel\n */\n isYomTovOrCholHamoed(israel2) {\n return this.isYomTov(israel2) || this.Month === 1 && [16, 17, 18, 19, 20].includes(this.Day) || this.Month === 7 && [16, 17, 18, 19, 20, 21].includes(this.Day);\n }\n /**\n * Returns true if this day is yomtov\n * @param {boolean} israel\n */\n isYomTov(israel2) {\n const day = this.Day;\n switch (this.Month) {\n case 1:\n if (day === 15 || day === 21) return true;\n if (!israel2 && (day === 16 || day === 22)) return true;\n break;\n case 3:\n if (day === 6 || !israel2 && day === 7) return true;\n break;\n case 7:\n if ([1, 2, 10, 15, 22].includes(day)) {\n return true;\n }\n if (!israel2 && (day === 16 || day === 23)) return true;\n break;\n }\n return false;\n }\n /**Is today Erev Yom Tov? (includes Erev second days of Sukkos and Pesach) */\n isErevYomTov() {\n return this.Month === 1 && Utils.has(this.Day, 14, 20) || this.Month === 3 && this.Day === 5 || this.Month === 6 && this.Day === 29 || this.Month === 7 && Utils.has(this.Day, 9, 14, 21);\n }\n /**Does the current Jewish date have candle lighting before sunset?*/\n hasCandleLighting() {\n const dow = this.getDayOfWeek();\n if (dow === 5) {\n return true;\n } else if (dow === 6) {\n return false;\n }\n return this.isErevYomTov();\n }\n /**Is the current Jewish Date the day before a yomtov that contains a Friday?*/\n hasEiruvTavshilin(israel2) {\n let dow = this.getDayOfWeek();\n return (\n //Eiruv Tavshilin is only on Wednesday or Thursday\n [3, 4].includes(dow) && //today is Erev Yomtov\n this.isErevYomTov() && //Thursday OR Wednesday when in Chu\"l or Erev Rosh Hashana anywhere\n (dow === 4 || dow === 3 && (!israel2 || this.Month === 6)) && //No Eiruv Tavshilin on Erev yom kippur\n this.Day !== 9\n );\n }\n /**Gets the candle lighting time for the current Jewish date for the given Location object.*/\n getCandleLighting(location, nullIfNoCandles) {\n if (!location) {\n throw \"To get sunrise and sunset, the location needs to be supplied\";\n }\n if (this.hasCandleLighting()) {\n return Zmanim.getCandleLighting(this, location);\n } else if (nullIfNoCandles) {\n return null;\n } else {\n throw \"No candle lighting on \" + this.toString();\n }\n }\n /**Get the sedra of the week for the current Jewish date.*/\n getSedra(israel2) {\n return new Sedra(this, israel2);\n }\n /**Get the prakim of Pirkei Avos for the current Jewish date.*/\n getPirkeiAvos(israel2) {\n return PirkeiAvos.getPrakim(this, israel2);\n }\n /**Gets sunrise and sunset time for the current Jewish date at the given Location.\n *\n * Return format: {sunrise: {hour: 6, minute: 18}, sunset: {hour: 19, minute: 41}}*/\n getSunriseSunset(location, ignoreElevation) {\n if (!location) {\n throw \"To get sunrise and sunset, the location needs to be supplied\";\n }\n return Zmanim.getSunTimes(this, location, !ignoreElevation);\n }\n /**Gets Chatzos for both the day and the night for the current Jewish date at the given Location.\n *\n *Return format: {hour: 11, minute: 48}*/\n getChatzos(location) {\n if (!location) {\n throw \"To get Chatzos, the location needs to be supplied\";\n }\n return Zmanim.getChatzos(this, location);\n }\n /**Gets the length of a single Sha'a Zmanis in minutes for the current Jewish date at the given Location.*/\n getShaaZmanis(location, offset) {\n if (!location) {\n throw \"To get the Shaa Zmanis, the location needs to be supplied\";\n }\n return Zmanim.getShaaZmanis(this, location, offset);\n }\n /**Returns the daily daf in English. For example: Sukkah, Daf 3.*/\n getDafYomi() {\n return Dafyomi.toString(this) || \"\";\n }\n /**Gets the daily daf in Hebrew. For example: 'סוכה דף כ.*/\n getDafyomiHeb() {\n return Dafyomi.toStringHeb(this) || \"\";\n }\n /**\n * Converts its argument/s to a Jewish Date.\n * Samples of use:\n * To get the current Jewish Date: jDate.toJDate(new Date()).\n * To print out the current date in English: jDate.toJDate(new Date()).toString()\n * To print out the current date in Hebrew: jDate.toJDate(new Date()).toStringHeb()\n *\n * Arguments to the jDate.toJDate function can be one of the following:\n * jDate.toJDate() - Sets the Jewish Date for the current system date\n * jDate.toJDate(Date) - Sets to the Jewish date on the given Javascript Date object\n * jDate.toJDate(\"January 1 2045\") - Accepts any valid Javascript Date string (uses string constructor of Date object)\n * jDate.toJDate(jewishYear, jewishMonth, jewishDay) - Months start at 1. Nissan is month 1 Adara Sheini is 13.\n * jDate.toJDate(jewishYear, jewishMonth) - Same as above, with Day defaulting to 1\n * jDate.toJDate(jewishYear) - sets to the first day of Rosh Hashana on the given year\n * jDate.toJDate( { year: 5776, month: 4, day: 5 } ) - Months start at 1. Nissan is month 1 Adara Sheini is 13.\n * jDate.toJDate( { year: 5776, month: 4 } ) - Same as above, with Day defaulting to 1\n * jDate.toJDate( { year: 5776 } ) - sets to the first day of Rosh Hashana on the given year\n * jDate.toJDate(jewishYear, jewishMonth, jewishDay, absoluteDate) - Most efficient. Needs no calculations at all. The absoluteDate is the number of days elapsed since the theoretical date Sunday, December 31, 0001 BCE.\n * jDate.toJDate( { year: 5776, month: 4, day: 5, abs: 122548708 } ) - same as jDate.toJDate(jewishYear, jewishMonth, jewishDay, absoluteDate)\n ****************************************************************************************************************/\n static toJDate(arg, month, day, abs) {\n if (arguments.length === 0) {\n return new _jDate();\n } else if (Utils.isNumber(arg) && arguments.length === 1) {\n return new _jDate(arg, 7, 1);\n } else {\n return new _jDate(arg, month, day, abs);\n }\n }\n static now() {\n return new _jDate();\n }\n /**Calculate the Jewish year, month and day for the given absolute date.*/\n static fromAbs(absDay) {\n let year = 3761 + Utils.toInt(absDay / (absDay > 0 ? 366 : 300)), month, day;\n while (absDay >= _jDate.absJd(year + 1, 7, 1)) {\n year++;\n }\n month = absDay < _jDate.absJd(year, 1, 1) ? 7 : 1;\n while (absDay > _jDate.absJd(year, month, _jDate.daysJMonth(year, month))) {\n month++;\n }\n day = absDay - _jDate.absJd(year, month, 1) + 1;\n return { year, month, day };\n }\n /**\n * Gets the absolute date of the given javascript Date object.\n * @param {Date} date\n */\n static absSd(date) {\n const ms = date.valueOf() - date.getTimezoneOffset() * 6e4, numFullDays = Math.floor(ms / MS_PER_DAY);\n return JS_START_DATE_ABS + numFullDays;\n }\n /**Calculate the absolute date for the given Jewish Date.*/\n static absJd(year, month, day) {\n let dayInYear = day;\n if (month < 7) {\n let m = 7;\n while (m <= _jDate.monthsJYear(year)) {\n dayInYear += _jDate.daysJMonth(year, m);\n m++;\n }\n m = 1;\n while (m < month) {\n dayInYear += _jDate.daysJMonth(year, m);\n m++;\n }\n } else {\n let m = 7;\n while (m < month) {\n dayInYear += _jDate.daysJMonth(year, m);\n m++;\n }\n }\n return dayInYear + (_jDate.tDays(year) + -1373429);\n }\n /**\n * Gets a javascript date from an absolute date\n */\n static sdFromAbs(abs) {\n const offset = JS_START_OFFSET > 0 ? 1 : 0, daysSinceStart = abs - JS_START_DATE_ABS + offset;\n return new Date(daysSinceStart * MS_PER_DAY);\n }\n /**number of days in the given Jewish Month. Nissan is 1 and Adar Sheini is 13.*/\n static daysJMonth(year, month) {\n switch (month) {\n //Nissan, Sivan, Av, Tishrei and Shvat always have 30 days\n case 1:\n case 3:\n case 5:\n case 7:\n case 11:\n return 30;\n //Iyyar, Tammuz, Ellul, Teves and Adar Sheini always have 29 days.\n case 2:\n case 4:\n case 6:\n case 10:\n case 13:\n return 29;\n //Cheshvan sometimes has 29 days and sometimes 30 days.\n case 8:\n return _jDate.isLongCheshvan(year) ? 30 : 29;\n //Kislev sometimes has 29 days and sometimes 30 days.\n case 9:\n return _jDate.isShortKislev(year) ? 29 : 30;\n //Adar has 29 days unless it is Adar Rishon.\n case 12:\n return _jDate.isJdLeapY(year) ? 30 : 29;\n }\n return 0;\n }\n /**Elapsed days since creation of the world until Rosh Hashana of the given year*/\n static tDays(year) {\n const cached = _yearCache.find((y) => !!y && y.year === year);\n if (cached) {\n return cached.elapsed;\n }\n const months = Utils.toInt(\n 235 * Utils.toInt((year - 1) / 19) + // Leap months this cycle\n 12 * ((year - 1) % 19) + // Regular months in this cycle.\n (7 * ((year - 1) % 19) + 1) / 19\n ), parts = 204 + 793 * (months % 1080), hours = 5 + 12 * months + 793 * Utils.toInt(months / 1080) + Utils.toInt(parts / 1080), conjDay = Utils.toInt(1 + 29 * months + hours / 24), conjParts = 1080 * (hours % 24) + parts % 1080;\n let altDay;\n if (conjParts >= 19440 || conjDay % 7 === 2 && conjParts >= 9924 && !_jDate.isJdLeapY(year) || conjDay % 7 === 1 && conjParts >= 16789 && _jDate.isJdLeapY(year - 1)) {\n altDay = conjDay + 1;\n } else {\n altDay = conjDay;\n }\n if (Utils.has(altDay % 7, 0, 3, 5)) {\n altDay += 1;\n }\n _yearCache.push({ year, elapsed: altDay });\n return altDay;\n }\n /**number of days in the given Jewish Year.*/\n static daysJYear(year) {\n return _jDate.tDays(year + 1) - _jDate.tDays(year);\n }\n /**Does Cheshvan for the given Jewish Year have 30 days?*/\n static isLongCheshvan(year) {\n return _jDate.daysJYear(year) % 10 === 5;\n }\n /**Does Kislev for the given Jewish Year have 29 days?*/\n static isShortKislev(year) {\n return _jDate.daysJYear(year) % 10 === 3;\n }\n /**Does the given Jewish Year have 13 months?*/\n static isJdLeapY(year) {\n return (7 * year + 1) % 19 < 7;\n }\n /**number of months in Jewish Year.*/\n static monthsJYear(year) {\n return _jDate.isJdLeapY(year) ? 13 : 12;\n }\n};\n\n// src/JCal/Zmanim.ts\nvar Zmanim = class _Zmanim {\n /**\n * Gets sunrise and sunset time for given date and Location.\n * Accepts a javascript Date object, a string for creating a javascript date object or a jDate object.\n * Location object is required.\n * @returns {SunTimes}\n * @param {Date | jDate} date A Javascript Date or Jewish Date for which to calculate the sun times.\n * @param {Location} location Where on the globe to calculate the sun times for.\n * @param {Boolean} considerElevation\n */\n static getSunTimes(date, location, considerElevation = true) {\n if (date instanceof jDate) {\n date = date.getDate();\n } else if (date instanceof String) {\n date = new Date(date);\n }\n if (!Utils.isValidDate(date)) {\n throw \"Zmanim.getSunTimes: supplied date parameter cannot be converted to a Date\";\n }\n let sunrise, sunset, zenithDeg = 90, zenithMin = 50, lonHour = 0, longitude = 0, latitude = 0, cosLat = 0, sinLat = 0, cosZen = 0, sinDec = 0, cosDec = 0, xmRise = 0, xmSet = 0, xlRise = 0, xlSet = 0, aRise = 0, aSet = 0, ahrRise = 0, ahrSet = 0, hRise = 0, hSet = 0, tRise = 0, tSet = 0, utRise = 0, utSet = 0;\n const day = _Zmanim.dayOfYear(date), earthRadius = 6356900, zenithAtElevation = _Zmanim.degToDec(zenithDeg, zenithMin) + _Zmanim.radToDeg(Math.acos(earthRadius / (earthRadius + (considerElevation ? location.Elevation : 0))));\n zenithDeg = Math.floor(zenithAtElevation);\n zenithMin = (zenithAtElevation - zenithDeg) * 60;\n cosZen = Math.cos(0.01745 * _Zmanim.degToDec(zenithDeg, zenithMin));\n longitude = location.Longitude;\n lonHour = longitude / 15;\n latitude = location.Latitude;\n cosLat = Math.cos(0.01745 * latitude);\n sinLat = Math.sin(0.01745 * latitude);\n tRise = day + (6 + lonHour) / 24;\n tSet = day + (18 + lonHour) / 24;\n xmRise = _Zmanim.M(tRise);\n xlRise = _Zmanim.L(xmRise);\n xmSet = _Zmanim.M(tSet);\n xlSet = _Zmanim.L(xmSet);\n aRise = 57.29578 * Math.atan(0.91746 * Math.tan(0.01745 * xlRise));\n aSet = 57.29578 * Math.atan(0.91746 * Math.tan(0.01745 * xlSet));\n if (Math.abs(aRise + 360 - xlRise) > 90) {\n aRise += 180;\n }\n if (aRise > 360) {\n aRise -= 360;\n }\n if (Math.abs(aSet + 360 - xlSet) > 90) {\n aSet += 180;\n }\n if (aSet > 360) {\n aSet -= 360;\n }\n ahrRise = aRise / 15;\n sinDec = 0.39782 * Math.sin(0.01745 * xlRise);\n cosDec = Math.sqrt(1 - sinDec * sinDec);\n hRise = (cosZen - sinDec * sinLat) / (cosDec * cosLat);\n ahrSet = aSet / 15;\n sinDec = 0.39782 * Math.sin(0.01745 * xlSet);\n cosDec = Math.sqrt(1 - sinDec * sinDec);\n hSet = (cosZen - sinDec * sinLat) / (cosDec * cosLat);\n if (Math.abs(hRise) <= 1) {\n hRise = 57.29578 * Math.acos(hRise);\n utRise = (360 - hRise) / 15 + ahrRise + _Zmanim.adj(tRise) + lonHour;\n sunrise = _Zmanim.timeAdj(utRise + location.UTCOffset, date, location);\n if (sunrise.hour > 12) {\n sunrise.hour -= 12;\n }\n }\n if (Math.abs(hSet) <= 1) {\n hSet = 57.29578 * Math.acos(hSet);\n utSet = hRise / 15 + ahrSet + _Zmanim.adj(tSet) + lonHour;\n sunset = _Zmanim.timeAdj(utSet + location.UTCOffset, date, location);\n if (sunset.hour > 0 && sunset.hour < 12) {\n sunset.hour += 12;\n }\n }\n return { sunrise, sunset };\n }\n /**\n * @param {jDate | Date} date\n * @param {Location} location\n */\n static getChatzos(date, location) {\n return _Zmanim.getChatzosFromSuntimes(\n _Zmanim.getSunTimes(date, location, false)\n );\n }\n /**\n * @param {SunTimes} sunTimes\n */\n static getChatzosFromSuntimes(sunTimes) {\n const rise = sunTimes.sunrise, set = sunTimes.sunset;\n if (rise === void 0 || isNaN(rise.hour) || set === void 0 || isNaN(set.hour)) {\n return { hour: NaN, minute: NaN };\n }\n const chatz = Utils.toInt((Utils.totalSeconds(set) - Utils.totalSeconds(rise)) / 2);\n return Utils.addSeconds(rise, chatz);\n }\n /**\n * @param {jDate | Date} date\n * @param {Location} location\n * @param {any} offset\n */\n static getShaaZmanis(date, location, offset) {\n return _Zmanim.getShaaZmanisFromSunTimes(\n _Zmanim.getSunTimes(date, location, false),\n offset\n );\n }\n /**\n * @param {{ sunrise: any; sunset: any; }} sunTimes\n * @param {number} [offset]\n */\n static getShaaZmanisFromSunTimes(sunTimes, offset) {\n if (!sunTimes || !sunTimes.sunrise || !sunTimes.sunset) {\n return 0;\n }\n let rise = sunTimes.sunrise, set = sunTimes.sunset;\n if (!rise || isNaN(rise.hour) || !set || isNaN(set.hour)) {\n return NaN;\n }\n if (offset) {\n rise = Utils.addMinutes(rise, -offset);\n set = Utils.addMinutes(set, offset);\n }\n return (Utils.totalSeconds(set) - Utils.totalSeconds(rise)) / 720;\n }\n /**\n * @param {{ sunrise: any; sunset: any; }} sunTimes\n * @param {boolean} israel\n */\n static getShaaZmanisMga(sunTimes, israel2) {\n const minutes = israel2 ? 90 : 72;\n let rise = sunTimes.sunrise && Utils.addMinutes(sunTimes.sunrise, -minutes), set = sunTimes.sunset && Utils.addMinutes(sunTimes.sunset, minutes);\n if (!rise || isNaN(rise.hour) || !set || isNaN(set.hour)) {\n return NaN;\n }\n return (Utils.totalSeconds(set) - Utils.totalSeconds(rise)) / 720;\n }\n /**\n * @param {jDate | Date} date\n * @param {Location} location\n */\n static getCandleLighting(date, location) {\n return _Zmanim.getCandleLightingFromSunTimes(\n _Zmanim.getSunTimes(date, location),\n location\n );\n }\n /**\n * @param {SunTimes} sunTimes\n * @param {any} location\n */\n static getCandleLightingFromSunTimes(sunTimes, location) {\n return sunTimes.sunset && _Zmanim.getCandleLightingFromSunset(sunTimes.sunset, location);\n }\n /**\n * @param {Time} sunset\n * @param {Location} location\n */\n static getCandleLightingFromSunset(sunset, location) {\n return Utils.addMinutes(sunset, -(location.CandleLighting || 0));\n }\n /**\n * @param {Date} date\n */\n static dayOfYear(date) {\n const month = date.getMonth(), isLeap = () => Utils.isSecularLeapYear(date.getFullYear()), yearDay = [0, 1, 32, 60, 91, 121, 152, 182, 213, 244, 274, 305, 335];\n return yearDay[month + 1] + date.getDate() + (month > 1 && isLeap() ? 1 : 0);\n }\n /**\n * @param {number} deg\n * @param {number} min\n */\n static degToDec(deg, min) {\n return deg + min / 60;\n }\n /**\n * @param {number} x\n */\n static M(x) {\n return 0.9856 * x - 3.251;\n }\n /**\n * @param {number} x\n */\n static L(x) {\n return x + 1.916 * Math.sin(0.01745 * x) + 0.02 * Math.sin(2 * 0.01745 * x) + 282.565;\n }\n /**\n * @param {number} x\n */\n static adj(x) {\n return -0.06571 * x - 6.62;\n }\n /**\n * @param {number} rad\n */\n static radToDeg(rad) {\n return 57.29578 * rad;\n }\n /**\n * @param {number} time\n * @param {Date} date\n * @param {Location} location\n */\n static timeAdj(time, date, location) {\n if (time < 0) {\n time += 24;\n }\n let hour = Utils.toInt(time);\n const minFloat = (time - hour) * 60 + 0.5, min = Utils.toInt(minFloat), sec = Math.round(60 * (minFloat - min));\n if (Utils.isDST(location, date)) {\n hour++;\n }\n return Utils.fixTime({ hour, minute: min, second: sec });\n }\n};\n\n// src/Utils.ts\nvar __DEV__ = process.env.NODE_ENV === \"development\";\nvar DaysOfWeek = Object.freeze({\n SUNDAY: 0,\n MONDAY: 1,\n TUESDAY: 2,\n WEDNESDAY: 3,\n THURSDAY: 4,\n FRIDAY: 5,\n SHABBOS: 6\n});\nvar JewishMonthsNames = Object.freeze({\n NISSAN: 1,\n IYAR: 2,\n SIVAN: 3,\n TAMUZ: 4,\n AV: 5,\n ELLUL: 6,\n TISHREI: 7,\n CHESHVAN: 8,\n KISLEV: 9,\n TEVES: 10,\n SHVAT: 11,\n ADAR: 12,\n ADAR_SHEINI: 13\n});\nvar JewishMonthsEng = [\n \"\",\n \"Nissan\",\n \"Iyar\",\n \"Sivan\",\n \"Tamuz\",\n \"Av\",\n \"Ellul\",\n \"Tishrei\",\n \"Cheshvan\",\n \"Kislev\",\n \"Teves\",\n \"Shvat\",\n \"Adar\",\n \"Adar Sheini\"\n];\nvar JewishMonthsHeb = [\n \"\",\n \"\\u05E0\\u05D9\\u05E1\\u05DF\",\n \"\\u05D0\\u05D9\\u05D9\\u05E8\",\n \"\\u05E1\\u05D9\\u05D5\\u05DF\",\n \"\\u05EA\\u05DE\\u05D5\\u05D6\",\n \"\\u05D0\\u05D1\",\n \"\\u05D0\\u05DC\\u05D5\\u05DC\",\n \"\\u05EA\\u05E9\\u05E8\\u05D9\",\n \"\\u05D7\\u05E9\\u05D5\\u05DF\",\n \"\\u05DB\\u05E1\\u05DC\\u05D5\",\n \"\\u05D8\\u05D1\\u05EA\",\n \"\\u05E9\\u05D1\\u05D8\",\n \"\\u05D0\\u05D3\\u05E8\",\n \"\\u05D0\\u05D3\\u05E8 \\u05E9\\u05E0\\u05D9\"\n];\nvar SecularMonthsEng = [\n \"January\",\n \"February\",\n \"March\",\n \"April\",\n \"May\",\n \"June\",\n \"July\",\n \"August\",\n \"September\",\n \"October\",\n \"November\",\n \"December\"\n];\nvar DaysOfWeekEng = [\n \"Sunday\",\n \"Monday\",\n \"Tuesday\",\n \"Wednesday\",\n \"Thursday\",\n \"Erev Shabbos\",\n \"Shabbos Kodesh\"\n];\nvar DaysOfWeekHeb = [\n \"\\u05D9\\u05D5\\u05DD \\u05E8\\u05D0\\u05E9\\u05D5\\u05DF\",\n \"\\u05D9\\u05D5\\u05DD \\u05E9\\u05E0\\u05D9\",\n \"\\u05D9\\u05D5\\u05DD \\u05E9\\u05DC\\u05D9\\u05E9\\u05D9\",\n \"\\u05D9\\u05D5\\u05DD \\u05E8\\u05D1\\u05D9\\u05E2\\u05D9\",\n \"\\u05D9\\u05D5\\u05DD \\u05D7\\u05DE\\u05D9\\u05E9\\u05D9\",\n \"\\u05E2\\u05E8\\u05D1 \\u05E9\\u05D1\\u05EA \\u05E7\\u05D5\\u05D3\\u05E9\",\n \"\\u05E9\\u05D1\\u05EA \\u05E7\\u05D5\\u05D3\\u05E9\"\n];\nvar _Utils = class _Utils {\n /**\n * Gets the Jewish representation of a number (365 = שס\"ה)\n * Minimum number is 1 and maximum is 9999.\n * @param {Number} number\n */\n static toJewishNumber(number) {\n if (number < 1) {\n throw \"Min value is 1\";\n }\n if (number > 9999) {\n throw \"Max value is 9999\";\n }\n let n = number, retval = \"\";\n if (n >= 1e3) {\n retval += _Utils.jsd[_Utils.toInt((n - n % 1e3) / 1e3) - 1] + \"'\";\n n = n % 1e3;\n }\n while (n >= 400) {\n retval += \"\\u05EA\";\n n -= 400;\n }\n if (n >= 100) {\n retval += _Utils.jhd[_Utils.toInt((n - n % 100) / 100) - 1];\n n = n % 100;\n }\n if (n == 15) {\n retval += \"\\u05D8\\u05D5\";\n } else if (n == 16) {\n retval += \"\\u05D8\\u05D6\";\n } else {\n if (n > 9) {\n retval += _Utils.jtd[_Utils.toInt((n - n % 10) / 10) - 1];\n }\n if (n % 10 > 0) {\n retval += _Utils.jsd[n % 10 - 1];\n }\n }\n if (number > 999 && number % 1e3 < 10) {\n retval = \"'\" + retval;\n } else if (retval.length > 1) {\n retval = retval.slice(0, -1) + '\"' + retval[retval.length - 1];\n }\n return retval;\n }\n /**\n * Returns the javascript date in the format: Thursday, the 3rd of January 2018.\n * @param {Date} date\n * @param {Boolean} hideDayOfWeek\n * @param {Boolean} dontCapitalize\n */\n static toStringDate(date, hideDayOfWeek, dontCapitalize) {\n if (!date) return;\n return (hideDayOfWeek ? dontCapitalize ? \"t\" : \"T\" : DaysOfWeekEng[date.getDay()] + \", t\") + \"he \" + _Utils.toSuffixed(date.getDate()) + \" of \" + SecularMonthsEng[date.getMonth()] + \" \" + date.getFullYear().toString();\n }\n /**\n * Returns the javascript date in the format: 1/3/2020.\n * @param {Date} date\n * @param {Boolean} monthFirst\n */\n static toShortStringDate(date, monthFirst) {\n if (!date) return;\n const dayNum = date.getDate(), monthNum = date.getMonth() + 1;\n return (monthFirst ? `${monthNum}/${dayNum}` : `${dayNum < 10 ? \"0\" : \"\"}${dayNum}/${monthNum < 10 ? \"0\" : \"\"}${monthNum}`) + \"/\" + date.getFullYear().toString();\n }\n /**\n * Add two character suffix to number. e.g. 21st, 102nd, 93rd, 500th\n * @param {Number} num\n */\n static toSuffixed(num) {\n const t = num.toString();\n let suffix = \"th\";\n if (t.length === 1 || t[t.length - 2] !== \"1\") {\n switch (t[t.length - 1]) {\n case \"1\":\n suffix = \"st\";\n break;\n case \"2\":\n suffix = \"nd\";\n break;\n case \"3\":\n suffix = \"rd\";\n break;\n }\n }\n return t + suffix;\n }\n /**\n * Returns if the given full secular year has a February 29th\n * @param {Number} year\n */\n static isSecularLeapYear(year) {\n return !(year % 400) || !!(year % 100) && !(year % 4);\n }\n /**\n * Get day of week using Javascripts getDay function.\n * Important note: months starts at 1 not 0 like javascript\n * The DOW returned has Sunday = 0\n * @param {Number} year\n * @param {Number} month\n * @param {Number} day\n */\n static getSdDOW(year, month, day) {\n return new Date(year, month - 1, day).getDay();\n }\n /**\n * Makes sure hour is between 0 and 23 and minute is between 0 and 59.\n * Overlaps get added/subtracted.\n * The argument needs to be an object in the format {hour : 12, minute : 42, second : 18}\n * @param {Time} time\n */\n static fixTime(time) {\n const result = {\n hour: time.hour,\n minute: time.minute,\n second: time.second || 0\n };\n while (result.second >= 60) {\n result.minute += 1;\n result.second -= 60;\n }\n while (result.second < 0) {\n result.minute -= 1;\n result.second += 60;\n }\n while (result.minute < 0) {\n result.minute += 60;\n result.hour--;\n }\n while (result.minute >= 60) {\n result.minute -= 60;\n result.hour++;\n }\n if (result.hour < 0) {\n result.hour = 24 + result.hour % 24;\n }\n if (result.hour > 23) {\n result.hour = result.hour % 24;\n }\n return result;\n }\n /**\n * Add the given number of minutes to the given time.\n * The argument needs to be an object in the format {hour : 12, minute : 42, second : 18 }\n *\n * @param {Time} time\n * @param {Number} minutes\n */\n static addMinutes(time, minutes) {\n if (!time) return time;\n return time && _Utils.fixTime({\n hour: time.hour,\n minute: time.minute + (minutes || 0),\n second: time.second\n });\n }\n /**\n * Add the given number of seconds to the given time.\n * The argument needs to be an object in the format {hour : 12, minute :42, second : 18}\n *\n * @param {Time} time\n * @param {Number} seconds\n */\n static addSeconds(time, seconds) {\n return _Utils.fixTime({\n hour: time.hour,\n minute: time.minute,\n second: (time.second || 0) + seconds\n });\n }\n /**\n * Gets the time difference between two times of day.\n * If showNegative is falsey, assumes that the earlier time is always before the later time.\n * So, if laterTime is less than earlierTime, the returned diff is until the next day.\n * Both arguments need to be an object in the format {hour : 12, minute : 42, second : 18 }\n * @param {Time} earlierTime\n * @param {Time} laterTime\n * @param {Boolean} [showNegative] show negative values or assume second value is next day?\n * @returns{{hour:number, minute:number, second:number, sign:1|-1}}\n */\n static timeDiff(earlierTime, laterTime, showNegative = false) {\n const earlySec = _Utils.totalSeconds(earlierTime), laterSec = _Utils.totalSeconds(laterTime), time = _Utils.fixTime({\n hour: 0,\n minute: 0,\n second: earlySec <= laterSec ? laterSec - earlySec : showNegative ? earlySec - laterSec : 86400 - earlySec + laterSec\n });\n return {\n ...time,\n sign: earlySec <= laterSec || !showNegative ? 1 : -1\n };\n }\n /**\n * Gets the total number of minutes in the given time.\n * @param {Time} time An object in the format {hour : 12, minute :42, second : 18}\n */\n static totalMinutes(time) {\n return time ? time.hour * 60 + time.minute : 0;\n }\n /**\n * Gets the total number of seconds in the given time.\n * @param {Time} time An object in the format {hour : 12, minute :42, second : 18}\n */\n static totalSeconds(time) {\n return time ? _Utils.totalMinutes(time) * 60 + (time.second || 0) : 0;\n }\n /**\n * Returns the time of the given javascript date as an object in the format of {hour : 23, minute :42, second: 18 }\n * @param {Date} sdate\n * @returns {{hour :number, minute :number, second:number }}\n */\n static timeFromDate(sdate) {\n return {\n hour: sdate.getHours(),\n minute: sdate.getMinutes(),\n second: sdate.getSeconds()\n };\n }\n /**\n * Determines if the second given time is after (or at) the first given time\n * @param {{hour :number, minute :number, second:number }} beforeTime\n * @param {{hour :number, minute :number, second:number }} afterTime\n */\n static isTimeAfter(beforeTime, afterTime) {\n if (!beforeTime || !afterTime) return false;\n return _Utils.totalSeconds(afterTime) >= _Utils.totalSeconds(beforeTime);\n }\n /**\n * Returns the given time interval in a formatted string.\n * @param {{hour:number, minute:number,second:number,sign?: 1 | -1}} time An object in the format {hour : 23, minute :42, second: 18 }\n */\n static getTimeIntervalTextStringHeb(time) {\n let t = \"\";\n if (time.hour > 0) {\n t += `${time.hour.toString()} ${time.hour === 1 ? \"\\u05E9\\u05E2\\u05D4\" : \"\\u05E9\\u05E2\\u05D5\\u05EA\"}`;\n }\n if (time.minute > 0) {\n if (t.length) {\n t += \" \";\n }\n t += `${time.minute.toString()} ${time.minute === 1 ? \"\\u05D3\\u05E7\\u05D4\" : \"\\u05D3\\u05E7\\u05D5\\u05EA\"}`;\n }\n if ((time.second || 0) > 0) {\n if (t.length) {\n t += \" \";\n }\n t += `${Math.trunc(time.second || 0).toString()} ${time.second === 1 ? \"\\u05E9\\u05E0\\u05D9\\u05D9\\u05D4\" : \"\\u05E9\\u05E0\\u05D9\\u05D5\\u05EA\"}`;\n }\n return t;\n }\n /**\n * Returns the given time interval in a formatted string.\n * @param {{hour:number, minute:number,second:number,sign?: 1 | -1}} time An object in the format {hour : 23, minute :42, second: 18 }\n */\n static getTimeIntervalTextString(time) {\n let t = \"\";\n if (time.hour > 0) {\n t += `${time.hour.toString()} ${time.hour === 1 ? \"hour\" : \"hours\"}`;\n }\n if (time.minute > 0) {\n if (t.length) {\n t += \" \";\n }\n t += `${time.minute.toString()} ${time.minute === 1 ? \"minute\" : \"minutes\"}`;\n }\n if ((time.second || 0) > 0) {\n if (t.length) {\n t += \" \";\n }\n t += `${Math.trunc(time.second || 0).toString()} ${time.second === 1 ? \"second\" : \"seconds\"}`;\n }\n return t;\n }\n /**\n * Returns the nusach for Sefiras Ha'omer for the given day and minhag\n * @param {number} dayOfOmer The day of the Omer for which to get the nusach for\n * @param {'ashkenaz'|'sefard'|'sefardi'} nusach Should it be La'Omer (\"sefard\") or Ba'Omer (\"ashkenaz\") or \"sefardi\" (Eidot Hamizrach)?\n */\n static getOmerNusach(dayOfOmer, nusach) {\n const weeks = _Utils.toInt(dayOfOmer / 7), days = dayOfOmer % 7;\n let txt = \"\\u05D4\\u05D9\\u05D5\\u05DD \";\n if (dayOfOmer === 1) {\n txt += \"\\u05D9\\u05D5\\u05DD \\u05D0\\u05D7\\u05D3 \";\n } else {\n if (dayOfOmer === 2) {\n txt += \"\\u05E9\\u05E0\\u05D9 \";\n } else {\n if (dayOfOmer === 10) {\n txt += \"\\u05E2\\u05E9\\u05E8\\u05D4 \";\n } else {\n txt += _Utils.jsnum[_Utils.toInt(dayOfOmer % 10)] + \" \";\n if (dayOfOmer > 10) {\n if (dayOfOmer > 20 && dayOfOmer % 10 > 0) {\n txt += \"\\u05D5\";\n }\n txt += _Utils.jtnum[_Utils.toInt(dayOfOmer / 10)] + \" \";\n }\n }\n }\n txt += (dayOfOmer >= 11 ? \"\\u05D9\\u05D5\\u05DD\" : \"\\u05D9\\u05DE\\u05D9\\u05DD\") + \" \";\n if (nusach === \"sefardi\") {\n txt += \"\\u05DC\\u05E2\\u05D5\\u05DE\\u05E8 \";\n }\n if (dayOfOmer >= 7) {\n txt += \"\\u05E9\\u05D4\\u05DD \";\n if (weeks === 1) {\n txt += \"\\u05E9\\u05D1\\u05D5\\u05E2 \\u05D0\\u05D7\\u05D3 \";\n } else if (weeks === 2) {\n txt += \"\\u05E9\\u05E0\\u05D9 \\u05E9\\u05D1\\u05D5\\u05E2\\u05D5\\u05EA \";\n } else if (weeks > 0) {\n txt += _Utils.jsnum[_Utils.toInt(weeks)] + \" \\u05E9\\u05D1\\u05D5\\u05E2\\u05D5\\u05EA \";\n }\n if (days === 1) {\n txt += \"\\u05D5\\u05D9\\u05D5\\u05DD \\u05D0\\u05D7\\u05D3 \";\n } else if (days === 2) {\n txt += \"\\u05D5\\u05E9\\u05E0\\u05D9 \\u05D9\\u05DE\\u05D9\\u05DD \";\n } else if (days > 0) {\n txt += \"\\u05D5\" + _Utils.jsnum[days] + \" \\u05D9\\u05DE\\u05D9\\u05DD \";\n }\n }\n }\n if (nusach === \"sefard\") {\n txt += \"\\u05DC\\u05E2\\u05D5\\u05DE\\u05E8\";\n } else if (nusach === \"ashkenaz\") {\n txt += \"\\u05D1\\u05E2\\u05D5\\u05DE\\u05E8\";\n }\n return txt;\n }\n /**\n * Returns the given time in a formatted string.\n * @param {Time} time An object in the format {hour : 23, minute :42, second: 18 }\n * @param {1 | -1} [sign] \n * @param {Boolean} [army] If falsey, the returned string will be: 11:42:18 PM otherwise it will be 23:42:18\n * @param {Boolean} [roundUp] If falsey, the numbers will converted to a whole number by rounding down, otherwise, up.\n */\n static getTimeString(time, sign, army, roundUp) {\n const round = roundUp ? Math.ceil : Math.floor;\n time = {\n hour: round(time.hour),\n minute: round(time.minute),\n second: round(time.second || 0)\n };\n if (army) {\n return (sign && sign < 0 ? \"-\" : \"\") + (time.hour.toString() + \":\" + (time.minute < 10 ? \"0\" + time.minute.toString() : time.minute.toString()) + \":\" + ((time.second || 0) < 10 ? \"0\" + (time.second || 0).toString() : (time.second || 0).toString()));\n } else {\n return (sign && sign < 0 ? \"-\" : \"\") + (time.hour <= 12 ? time.hour == 0 ? 12 : time.hour : time.hour - 12).toString() + \":\" + (time.minute < 10 ? \"0\" + time.minute.toString() : time.minute.toString()) + \":\" + ((time.second || 0) < 10 ? \"0\" + (time.second || 0).toString() : (time.second || 0).toString()) + (time.hour < 12 ? \" AM\" : \" PM\");\n }\n }\n /**\n * Gets the UTC offset in whole hours for the users time zone.\n * Note: this is not affected by DST - unlike javascripts getTimezoneOffset() function which gives you the current offset.\n */\n static currUtcOffset() {\n const date = /* @__PURE__ */ new Date(), jan = new Date(date.getFullYear(), 0, 1), jul = new Date(date.getFullYear(), 6, 1);\n return -_Utils.toInt(\n Math.max(jan.getTimezoneOffset(), jul.getTimezoneOffset()) / 60\n );\n }\n /** Determines if the given date is within DST on the users system */\n static isDateDST(date) {\n return -_Utils.toInt(date.getTimezoneOffset() / 60) !== _Utils.currUtcOffset();\n }\n /**\n * Determines if the given date is within DST in the given location\n * Note: This may not be correct if the user has set the Location to a\n * time zone outside Israel or the USA which is not the current system time zone.\n */\n static isDST(location, date) {\n if (location.UTCOffset === _Utils.currUtcOffset()) {\n return _Utils.isDateDST(date);\n } else if (location.Israel) {\n return _Utils.isIsrael_DST(date);\n } else {\n return _Utils.isUSA_DST(date);\n }\n }\n /**\n * Determines if the given javascript date is during DST according to the USA rules\n * @param {Date} date A javascript Date object\n */\n static isUSA_DST(date) {\n const year = date.getFullYear(), month = date.getMonth() + 1, day = date.getDate(), hour = date.getHours();\n if (month < 3 || month == 12) {\n return false;\n } else if (month > 3 && month < 11) {\n return true;\n } else if (month === 3) {\n const firstDOW = _Utils.getSdDOW(year, 3, 1), targetDate = firstDOW == 0 ? 8 : 7 - (firstDOW + 7) % 7 + 8;\n return day > targetDate || day === targetDate && hour >= 2;\n } else {\n const firstDOW = _Utils.getSdDOW(year, 11, 1), targetDate = firstDOW === 0 ? 1 : 7 - (firstDOW + 7) % 7 + 1;\n return day < targetDate || day === targetDate && hour < 2;\n }\n }\n //\n /**\n * Determines if the given Javascript date is during DST according to the current (5776) Israeli rules\n * @param {Date} date A Javascript Date object\n */\n static isIsrael_DST(date) {\n const year = date.getFullYear(), month = date.getMonth() + 1, day = date.getDate(), hour = date.getHours();\n if (month > 10 || month < 3) {\n return false;\n } else if (month > 3 && month < 10) {\n return true;\n } else if (month === 3) {\n const lastFriday = 31 - _Utils.getSdDOW(year, 3, 31) - 2;\n return day > lastFriday || day === lastFriday && hour >= 2;\n } else {\n const lastSunday = 31 - _Utils.getSdDOW(year, 10, 31);\n return day < lastSunday || day === lastSunday && hour < 2;\n }\n }\n /** The current time in Israel - determined by the current users system time and time zone offset*/\n static getSdNowInIsrael() {\n const now = /* @__PURE__ */ new Date(), israelTimeOffset = 2 + -_Utils.currUtcOffset();\n now.setHours(now.getHours() + israelTimeOffset);\n return now;\n }\n /**\n * Adds the given number of days to the given javascript date and returns the new date\n * @param {Date} sdate\n * @param {Number} days\n */\n static addDaysToSdate(sdate, days) {\n return new Date(sdate.valueOf() + 864e5 * days);\n }\n /**\n * Compares two js dates to se if they both refer to the same day - time is ignored.\n * @param {Date} sdate1\n * @param {Date} sdate2\n */\n static isSameSdate(sdate1, sdate2) {\n return sdate1 && sdate2 && sdate1.toDateString() === sdate2.toDateString();\n }\n /**\n * Compares two jDates to se if they both refer to the same day - time is ignored.\n * @param {jDate} jdate1\n * @param {jDate} jdate2\n */\n static isSameJdate(jdate1, jdate2) {\n return jdate1 && jdate2 && jdate1.Abs && jdate2.Abs && jdate1.Abs === jdate2.Abs;\n }\n /**\n * Compares two jDates to see if they both refer to the same Jewish Month.\n * @param {jDate} jdate1\n * @param {jDate} jdate2\n */\n static isSameJMonth(jdate1, jdate2) {\n return jdate1.Month === jdate2.Month && jdate1.Year === jdate2.Year;\n }\n /**\n * Compares two dates to se if they both refer to the same Secular Month.\n * @param {Date} sdate1\n * @param {Date} sdate2\n */\n static isSameSMonth(sdate1, sdate2) {\n return sdate1.getMonth() === sdate2.getMonth() && sdate1.getFullYear() === sdate2.getFullYear();\n }\n /**\n * Determines if the time of the given Date() is after sunset at the given Location\n * @param {Date} sdate\n * @param {Location} location\n */\n static isAfterSunset(sdate, location) {\n const shkia = Zmanim.getSunTimes(sdate, location).sunset, now = _Utils.timeFromDate(sdate);\n return shkia && _Utils.isTimeAfter(shkia, now);\n }\n /**\n * Gets the current Jewish Date at the given Location\n * @param {Location} location\n */\n static nowAtLocation(location) {\n let sdate = /* @__PURE__ */ new Date();\n if (_Utils.isAfterSunset(sdate, location)) {\n sdate.setDate(sdate.getDate() + 1);\n }\n return new jDate(sdate);\n }\n /**\n * Converts the given complex number to an integer by removing the decimal part.\n * Returns same results as Math.floor for positive numbers and Math.ceil for negative ones.\n * Almost identical functionality to Math.trunc and parseInt.\n * The difference is if the argument is NaN. Math.trunc returns NaN while ths fuction returns 0.\n * In performance tests, this function was found to be quicker than the alternatives.\n * @param {Number} float The complex number to convert to an integer\n */\n static toInt(float) {\n return float | 0;\n }\n /***\n * Takes either a jDate or a Date and returns both\n * @param date {Date |jDate}\n * @returns {{ sdate:Date, jdate:jDate }}\n */\n static bothDates(date) {\n const jdate = date instanceof Date ? new jDate(date) : date;\n const sdate = date instanceof Date ? date : jdate.getDate();\n return { sdate, jdate };\n }\n /** Returns true if \"thing\" is either a string primitive or String object.*/\n static isString(thing) {\n return typeof thing === \"string\" || thing instanceof String;\n }\n /** Returns true if \"thing\" is either a number primitive or a Number object.*/\n static isNumber(thing) {\n return typeof thing === \"number\" || thing instanceof Number;\n }\n /** Returns true if \"thing\" is a Date object containing a valid date.*/\n static isValidDate(thing) {\n return thing instanceof Date && !isNaN(thing.valueOf());\n }\n /** Returns whether or not the given, array, string, or argument list contains the given item or substring.\n *\n * This function is awfully similar to Array.includes, but has the added plus of accepting any number or type of arguments.*/\n static has(o, ...arr) {\n if (arr.length === 1 && (Array.isArray(arr[0]) || _Utils.isString(arr[0]))) {\n return arr[0].includes(o);\n } else {\n return arr.includes(o);\n }\n }\n /** Returns the first value unless it is undefined, null or NaN.\n *\n * This is very useful for boolean, string and integer parameters\n * where we want to keep false, \"\" and 0 if they were supplied.\n *\n * Similar purpose to default parameters with the difference being that this function will return\n * the second value if the first is NaN or null, while default params will give give you the NaN or the null.\n */\n static setDefault(paramValue, defValue) {\n if (typeof paramValue === \"undefined\" || paramValue === null || isNaN(paramValue)) {\n return defValue;\n } else {\n return paramValue;\n }\n }\n /**\n * Returns an array containing a range of integers.\n * @param {Number} [start] The number to start at. The start number is included in the results.\n * If only one argument is supplied, start will be set to 1.\n * @param {Number} end The top end of the range.\n * Unlike Pythons range function, The end number is included in the results.\n * @returns {[Number]}\n */\n static range(start, end) {\n const startNumber = typeof end === \"undefined\" ? 1 : start, endNumber = typeof end === \"undefined\" ? start : end;\n return Array.from({ length: endNumber - startNumber + 1 }, (v, i) => startNumber + i);\n }\n /**\n * Log message to console\n * @param {string} txt\n */\n static log(txt, ...optionalItems) {\n if (__DEV__) {\n console.log(txt, ...optionalItems);\n }\n }\n /**\n * Warn message to console\n * @param {string} txt\n */\n static warn(txt, ...optionalItems) {\n if (__DEV__) {\n console.warn(txt, ...optionalItems);\n }\n }\n /**\n * Error message to console\n * @param {*} txt\n */\n static error(txt, ...optionalItems) {\n if (__DEV__) {\n console.error(txt, ...optionalItems);\n }\n }\n};\n_Utils.jsd = [\"\\u05D0\", \"\\u05D1\", \"\\u05D2\", \"\\u05D3\", \"\\u05D4\", \"\\u05D5\", \"\\u05D6\", \"\\u05D7\", \"\\u05D8\"];\n_Utils.jtd = [\"\\u05D9\", \"\\u05DB\", \"\\u05DC\", \"\\u05DE\", \"\\u05E0\", \"\\u05E1\", \"\\u05E2\", \"\\u05E4\", \"\\u05E6\"];\n_Utils.jhd = [\"\\u05E7\", \"\\u05E8\", \"\\u05E9\", \"\\u05EA\"];\n_Utils.jsnum = [\n \"\",\n \"\\u05D0\\u05D7\\u05D3\",\n \"\\u05E9\\u05E0\\u05D9\\u05DD\",\n \"\\u05E9\\u05DC\\u05E9\\u05D4\",\n \"\\u05D0\\u05E8\\u05D1\\u05E2\\u05D4\",\n \"\\u05D7\\u05DE\\u05E9\\u05D4\",\n \"\\u05E9\\u05E9\\u05D4\",\n \"\\u05E9\\u05D1\\u05E2\\u05D4\",\n \"\\u05E9\\u05DE\\u05D5\\u05E0\\u05D4\",\n \"\\u05EA\\u05E9\\u05E2\\u05D4\"\n];\n_Utils.jtnum = [\"\", \"\\u05E2\\u05E9\\u05E8\", \"\\u05E2\\u05E9\\u05E8\\u05D9\\u05DD\", \"\\u05E9\\u05DC\\u05D5\\u05E9\\u05D9\\u05DD\", \"\\u05D0\\u05E8\\u05D1\\u05E2\\u05D9\\u05DD\"];\nvar Utils = _Utils;\n\n// src/JCal/Location.ts\nvar Location = class _Location {\n /**\n * Describe a new Location.\n * @param {String} name The name of the Location\n * @param {String} nameHeb The name of the Location\n * @param {Boolean} israel Is this Location in Israel?\n * @param {Number} latitude\n * @param {Number} longitude\n * @param {Number} utcOffset The time zone. Israel is 2 and New York is -5.\n * @param {Number} elevation Elevation in meters\n * @param {Number} [candleLighting] Number of minutes before sunset the candles are lit on Friday\n */\n constructor(name, nameHeb, israel2, latitude, longitude, utcOffset, elevation, candleLighting) {\n if (typeof israel2 === \"undefined\" || israel2 === null) {\n israel2 = latitude > 29.45 && latitude < 33 && longitude < -34.23 && longitude > -35.9;\n }\n if (israel2) {\n utcOffset = 2;\n } else if (typeof utcOffset === \"undefined\" || utcOffset === null) {\n utcOffset = -Math.round(longitude / 15);\n }\n this.Name = name || \"Unknown Location\";\n this.NameHebrew = nameHeb;\n this.Israel = !!israel2;\n this.Latitude = latitude;\n this.Longitude = longitude;\n this.UTCOffset = utcOffset || 0;\n this.Elevation = elevation || 0;\n this.CandleLighting = candleLighting || _Location.getCandles(this);\n }\n static clone(location) {\n return new _Location(\n location.Name,\n location.NameHebrew,\n location.Israel,\n location.Latitude,\n location.Longitude,\n location.UTCOffset,\n location.Elevation,\n location.CandleLighting || 0\n );\n }\n static getCandles(location) {\n if (location.CandleLighting) {\n return location.CandleLighting;\n } else if (!location.Israel) {\n return 18;\n } else {\n const special = [\n { names: [\"jerusalem\", \"yerush\", \"petach\", \"petah\", \"petak\", \"beit shemesh\", \"\\u05D9\\u05E8\\u05D5\\u05E9\\u05DC\\u05D9\\u05DD\", \"\\u05E4\\u05EA\\u05D7 \\u05EA\\u05E7\\u05D5\\u05D4\", \"\\u05D1\\u05D9\\u05EA \\u05E9\\u05DE\\u05E9\"], min: 40 },\n { names: [\"haifa\", \"chaifa\", \"be'er sheva\", \"beersheba\", \"\\u05D7\\u05D9\\u05E4\\u05D4\", \"\\u05D1\\u05D0\\u05E8 \\u05E9\\u05D1\\u05E2\"], min: 22 }\n ], loclc = location.Name.toLowerCase(), city = special.find((sp) => {\n return sp.names.find((spi) => {\n return loclc.indexOf(spi) > -1;\n });\n });\n return city ? city.min : 30;\n }\n }\n /**Gets the Location for Jerusalem.*/\n static getJerusalem() {\n return new _Location(\"Jerusalem\", \"\\u05D9\\u05E8\\u05D5\\u05E9\\u05DC\\u05D9\\u05DD\", true, 31.78, -35.22, 2, 800, 40);\n }\n /**Gets the Location for Lakewood NJ*/\n static getLakewood() {\n return new _Location(\"Lakewood NJ\", void 0, false, 40.1, 74.23, -5, 0, 18);\n }\n};\n\n// src/Locations.ts\nvar import_closest_match = require(\"closest-match\");\n\n// src/locations.json\nvar locations_default = [{ name: \"Ofakim\", heb: \"\\u05D0\\u05D5\\u05E4\\u05E7\\u05D9\\u05DD\", il: true, tz: 2, el: 170, lat: 31.32, lon: -34.62 }, { name: \"Eilat\", heb: \"\\u05D0\\u05D9\\u05DC\\u05EA\", il: true, tz: 2, lat: 29.55, lon: -34.95 }, { name: \"Elad\", heb: \"\\u05D0\\u05DC\\u05E2\\u05D3\", il: true, tz: 2, el: 150, lat: 32.05, lon: -34.95 }, { name: \"Ashdod\", heb: \"\\u05D0\\u05E9\\u05D3\\u05D5\\u05D3\", il: true, tz: 2, lat: 31.78, lon: -34.63 }, { name: \"Ashkelon\", heb: \"\\u05D0\\u05E9\\u05E7\\u05DC\\u05D5\\u05DF\", il: true, tz: 2, lat: 31.65, lon: -34.57 }, { name: \"Be'er Ya'akov\", heb: \"\\u05D1\\u05D0\\u05E8 \\u05D9\\u05E2\\u05E7\\u05D1\", il: true, tz: 2, lat: 31.93, lon: -34.83 }, { name: \"Bersheba\", heb: \"\\u05D1\\u05D0\\u05E8 \\u05E9\\u05D1\\u05E2\", il: true, tz: 2, el: 270, lat: 31.23, lon: -34.78 }, { name: \"Beit She'an\", heb: \"\\u05D1\\u05D9\\u05EA \\u05E9\\u05D0\\u05DF\", il: true, tz: 2, el: 0, lat: 32.5, lon: -35.5 }, { name: \"Beit Shemesh\", heb: \"\\u05D1\\u05D9\\u05EA \\u05E9\\u05DE\\u05E9\", il: true, tz: 2, el: 300, lat: 31.73, lon: -34.98 }, { name: \"Beitar Illit\", heb: \"\\u05D1\\u05D9\\u05EA\\u05E8 \\u05E2\\u05DC\\u05D9\\u05EA\", il: true, tz: 2, el: 800, lat: 31.68, lon: -35.12 }, { name: \"Bnei Brak\", heb: \"\\u05D1\\u05E0\\u05D9 \\u05D1\\u05E8\\u05E7\", il: true, tz: 2, el: 70, lat: 32.08, lon: -34.82, cl: 21 }, { name: \"Binyamina\", heb: \"\\u05D1\\u05E0\\u05D9\\u05DE\\u05D9\\u05E0\\u05D4\", il: true, tz: 2, lat: 32.52, lon: -34.95 }, { name: \"Bat Yam\", heb: \"\\u05D1\\u05EA \\u05D9\\u05DD\", il: true, tz: 2, lat: 32.02, lon: -34.73 }, { name: \"Givat Zeev\", heb: \"\\u05D2\\u05D1\\u05E2\\u05EA \\u05D6\\u05D0\\u05D1\", il: true, tz: 2, lat: 31.87, lon: -35.17 }, { name: \"Givatayim\", heb: \"\\u05D2\\u05D1\\u05EA\\u05D9\\u05D9\\u05DD\", il: true, tz: 2, lat: 32.05, lon: -34.8 }, { name: \"Dimona\", heb: \"\\u05D3\\u05D9\\u05DE\\u05D5\\u05E0\\u05D4\", il: true, tz: 2, lat: 31.07, lon: -35.03 }, { name: \"Hertzeliya\", heb: \"\\u05D4\\u05E8\\u05E6\\u05DC\\u05D9\\u05D4\", il: true, tz: 2, lat: 32.17, lon: -34.83 }, { name: \"Zichron Ya'akov\", heb: \"\\u05D6\\u05DB\\u05E8\\u05D5\\u05DF \\u05D9\\u05E2\\u05E7\\u05D1\", il: true, tz: 2, el: 170, lat: 32.57, lon: -34.95 }, { name: \"Hebron\", heb: \"\\u05D7\\u05D1\\u05E8\\u05D5\\u05DF\", il: true, tz: 2, el: 950, lat: 31.53, lon: -35.08 }, { name: \"Hadera\", heb: \"\\u05D7\\u05D3\\u05E8\\u05D4\", il: true, tz: 2, lat: 32.43, lon: -34.92 }, { name: \"Holon\", heb: \"\\u05D7\\u05D5\\u05DC\\u05D5\\u05DF\", il: true, tz: 2, lat: 32.02, lon: -34.75 }, { name: \"Chispin\", heb: \"\\u05D7\\u05D9\\u05E1\\u05E4\\u05D9\\u05DF\", il: true, tz: 2, lat: 32.85, lon: -35.77 }, { name: \"Haifa\", heb: \"\\u05D7\\u05D9\\u05E4\\u05D4\", il: true, tz: 2, el: 370, lat: 32.8, lon: -34.98 }, { name: \"Chafetz Chaim\", heb: \"\\u05D7\\u05E4\\u05E5 \\u05D7\\u05D9\\u05D9\\u05DD\", il: true, tz: 2, el: 80, lat: 31.48, lon: -34.47 }, { name: \"Tiberius\", heb: \"\\u05D8\\u05D1\\u05E8\\u05D9\\u05D4\", il: true, tz: 2, lat: 32.78, lon: -35.53 }, { name: \"Telz Stone\", heb: \"\\u05D8\\u05DC\\u05D6 \\u05E1\\u05D8\\u05D5\\u05DF\", il: true, tz: 2, el: 720, lat: 31.78, lon: -35.1 }, { name: \"Yerucham\", heb: \"\\u05D9\\u05E8\\u05D5\\u05D7\\u05DD\", il: true, tz: 2, lat: 30.98, lon: -34.92 }, { name: \"Jerusalem\", heb: \"\\u05D9\\u05E8\\u05D5\\u05E9\\u05DC\\u05D9\\u05DD\", il: true, tz: 2, el: 775, lat: 31.77, lon: -35.23, cl: 40 }, { name: \"Kfar Chabad\", heb: \"\\u05DB\\u05E4\\u05E8 \\u05D7\\u05D1\\u05D3\", il: true, tz: 2, lat: 31.97, lon: -34.8 }, { name: \"Kfar Chasidim\", heb: \"\\u05DB\\u05E4\\u05E8 \\u05D7\\u05E1\\u05D9\\u05D3\\u05D9\\u05DD\", il: true, tz: 2, el: 154, lat: 32.73, lon: -35.08 }, { name: \"Kfar Mimon\", heb: \"\\u05DB\\u05E4\\u05E8 \\u05DE\\u05D9\\u05D9\\u05DE\\u05D5\\u05DF\", il: true, tz: 2, lat: 31.42, lon: -34.58 }, { name: \"Karmiel\", heb: \"\\u05DB\\u05E8\\u05DE\\u05D9\\u05D0\\u05DC\", il: true, tz: 2, lat: 32.92, lon: -35.3 }, { name: \"Lod\", heb: \"\\u05DC\\u05D5\\u05D3\", il: true, tz: 2, lat: 31.95, lon: -34.88 }, { name: \"Migdal Ha'Emek\", heb: \"\\u05DE\\u05D2\\u05D3\\u05DC \\u05D4\\u05E2\\u05DE\\u05E7\", il: true, tz: 2, lat: 32.67, lon: -35.23 }, { name: \"Meron\", heb: \"\\u05DE\\u05D9\\u05E8\\u05D5\\u05DF\", il: true, tz: 2, el: 900, lat: 32.98, lon: -35.43 }, { name: \"Ma'agalim\", heb: \"\\u05DE\\u05E2\\u05D2\\u05DC\\u05D9\\u05DD\", il: true, tz: 2, el: 150, lat: 31.48, lon: -34.67 }, { name: \"Ma'aleh Adumim\", heb: \"\\u05DE\\u05E2\\u05DC\\u05D4 \\u05D0\\u05D3\\u05D5\\u05DE\\u05D9\\u05DD\", il: true, tz: 2, lat: 31.77, lon: -35.3 }, { name: \"Mitzpeh Ramon\", heb: \"\\u05DE\\u05E6\\u05E4\\u05D4 \\u05E8\\u05DE\\u05D5\\u05DF\", il: true, tz: 2, el: 892, lat: 30.62, lon: -34.8 }, { name: \"Ne'halel\", heb: \"\\u05E0\\u05D4\\u05DC\\u05DC\", il: true, tz: 2, lat: 32.67, lon: -35.23 }, { name: \"Nahariya\", heb: \"\\u05E0\\u05D4\\u05E8\\u05D9\\u05D4\", il: true, tz: 2, el: 25, lat: 33.02, lon: -35.1 }, { name: \"Nir Eztyon\", heb: \"\\u05E0\\u05D9\\u05E8 \\u05E2\\u05E6\\u05D9\\u05D5\\u05DF\", il: true, tz: 2, el: 220, lat: 32.7, lon: -34.98 }, { name: \"Nesher\", heb: \"\\u05E0\\u05E9\\u05E8\", il: true, tz: 2, lat: 32.73, lon: -35.08 }, { name: \"Netivot\", heb: \"\\u05E0\\u05EA\\u05D9\\u05D1\\u05D5\\u05EA\", il: true, tz: 2, el: 142, lat: 31.42, lon: -34.58 }, { name: \"Netanya\", heb: \"\\u05E0\\u05EA\\u05E0\\u05D9\\u05D4\", il: true, tz: 2, lat: 32.33, lon: -34.87 }, { name: \"Ein Bokek\", heb: \"\\u05E2\\u05D9\\u05DF \\u05D1\\u05D5\\u05E7\\u05E7\", il: true, tz: 2, lat: 31.2, lon: -35.37 }, { name: \"Acre\", heb: \"\\u05E2\\u05DB\\u05D5\", il: true, tz: 2, lat: 32.93, lon: -35.08 }, { name: \"Eli\", heb: \"\\u05E2\\u05DC\\u05D9\", il: true, tz: 2, el: 720, lat: 32.07, lon: -35.27 }, { name: \"Afula\", heb: \"\\u05E2\\u05E4\\u05D5\\u05DC\\u05D4\", il: true, tz: 2, el: 60, lat: 32.6, lon: -35.28 }, { name: \"Etzyon Gaver\", heb: \"\\u05E2\\u05E6\\u05D9\\u05D5\\u05DF \\u05D2\\u05D1\\u05E8\", il: true, tz: 2, el: 5, lat: 29.53, lon: -34.95 }, { name: \"Arad\", heb: \"\\u05E2\\u05E8\\u05D3\", il: true, tz: 2, el: 640, lat: 31.27, lon: -35.22 }, { name: \"Pardes Chana\", heb: \"\\u05E4\\u05E8\\u05D3\\u05E1 \\u05D7\\u05E0\\u05D4\", il: true, tz: 2, lat: 32.47, lon: -34.97 }, { name: \"Petach Tikvah\", heb: \"\\u05E4\\u05EA\\u05D7 \\u05EA\\u05E7\\u05D5\\u05D5\\u05D4\", il: true, tz: 2, lat: 32.08, lon: -34.88, cl: 40 }, { name: \"Safed\", heb: \"\\u05E6\\u05E4\\u05EA\", il: true, tz: 2, el: 850, lat: 32.97, lon: -35.5 }, { name: \"Kedumim\", heb: \"\\u05E7\\u05D3\\u05D5\\u05DE\\u05D9\\u05DD\", il: true, tz: 2, el: 487, lat: 32.22, lon: -35.15 }, { name: \"Komemiyut\", heb: \"\\u05E7\\u05D5\\u05DE\\u05DE\\u05D9\\u05D5\\u05EA\", il: true, tz: 2, el: 76, lat: 31.65, lon: -34.73 }, { name: \"Kiryat Arba\", heb: \"\\u05E7\\u05E8\\u05D9\\u05EA \\u05D0\\u05E8\\u05D1\\u05E2\", il: true, tz: 2, el: 987, lat: 31.52, lon: -35.1 }, { name: \"Kiryat Gat\", heb: \"\\u05E7\\u05E8\\u05D9\\u05EA \\u05D2\\u05EA\", il: true, tz: 2, el: 159, lat: 31.62, lon: -34.77 }, { name: \"Kityat Tivon\", heb: \"\\u05E7\\u05E8\\u05D9\\u05EA \\u05D8\\u05D1\\u05E2\\u05D5\\u05DF\", il: true, tz: 2, el: 39, lat: 32.73, lon: -35.08 }, { name: \"Kiryat Yam\", heb: \"\\u05E7\\u05E8\\u05D9\\u05EA \\u05D9\\u05DD\", il: true, tz: 2, lat: 32.83, lon: -35.07 }, { name: \"Kiryat Malachi\", heb: \"\\u05E7\\u05E8\\u05D9\\u05EA \\u05DE\\u05DC\\u05D0\\u05DB\\u05D9\", il: true, tz: 2, lat: 31.73, lon: -34.75 }, { name: \"Modi'in Illit\", heb: \"\\u05DE\\u05D5\\u05D3\\u05D9\\u05E2\\u05D9\\u05DF \\u05E2\\u05D9\\u05DC\\u05D9\\u05EA\", il: true, tz: 2, el: 240, lat: 31.93, lon: -35.04, cl: 30 }, { name: \"Kiryat Shmona\", heb: \"\\u05E7\\u05E8\\u05D9\\u05EA \\u05E9\\u05DE\\u05D5\\u05E0\\u05D4\", il: true, tz: 2, lat: 33.2, lon: -35.57 }, { name: \"Rosh Ha'ayin\", heb: \"\\u05E8\\u05D0\\u05E9 \\u05D4\\u05E2\\u05D9\\u05DF\", il: true, tz: 2, el: 90, lat: 32.08, lon: -34.95 }, { name: \"Rosh Pina\", heb: \"\\u05E8\\u05D0\\u05E9 \\u05E4\\u05D9\\u05E0\\u05D4\", il: true, tz: 2, el: 131, lat: 32.97, lon: -35.48 }, { name: \"Rishon Le'Tzion\", heb: \"\\u05E8\\u05D0\\u05E9\\u05D5\\u05DF \\u05DC\\u05E6\\u05D9\\u05D5\\u05DF\", il: true, tz: 2, lat: 31.97, lon: -34.8 }, { name: \"Rehovot\", heb: \"\\u05E8\\u05D7\\u05D5\\u05D1\\u05D5\\u05EA\", il: true, tz: 2, el: 76, lat: 31.88, lon: -34.82 }, { name: \"Ramla\", heb: \"\\u05E8\\u05DE\\u05DC\\u05D4\", il: true, tz: 2, lat: 31.92, lon: -34.87 }, { name: \"Ramat Hasharon\", heb: \"\\u05E8\\u05DE\\u05EA \\u05D4\\u05E9\\u05E8\\u05D5\\u05DF\", il: true, tz: 2, el: 85, lat: 32.17, lon: -34.85 }, { name: \"Ramat Magshimim\", heb: \"\\u05E8\\u05DE\\u05EA \\u05DE\\u05D2\\u05E9\\u05D9\\u05DE\\u05D9\\u05DD\", il: true, tz: 2, el: 450, lat: 32.83, lon: -35.82 }, { name: \"Ra'anana\", heb: \"\\u05E8\\u05E2\\u05E0\\u05E0\\u05D4\", il: true, tz: 2, el: 71, lat: 32.17, lon: -34.85 }, { name: \"Shvi tzion\", heb: \"\\u05E9\\u05D1\\u05D9 \\u05E6\\u05D9\\u05D5\\u05DF\", il: true, tz: 2, lat: 33.02, lon: -35.1 }, { name: \"Nablus\", heb: \"\\u05E9\\u05DB\\u05DD\", il: true, tz: 2, el: 667, lat: 32.22, lon: -35.27 }, { name: \"Shalavim\", heb: \"\\u05E9\\u05DC\\u05E2\\u05D1\\u05D9\\u05DD\", il: true, tz: 2, el: 194, lat: 31.87, lon: 34.98 }, { name: \"Tushiya\", heb: \"\\u05EA\\u05D5\\u05E9\\u05D9\\u05D4\", il: true, tz: 2, lat: 31.42, lon: -34.58 }, { name: \"Tel Aviv\", heb: \"\\u05EA\\u05DC \\u05D0\\u05D1\\u05D9\\u05D1\", il: true, tz: 2, el: 20, lat: 32.07, lon: -34.77, cl: 21 }, { name: \"Tifrach\", heb: \"\\u05EA\\u05E4\\u05E8\\u05D7\", il: true, tz: 2, el: 173, lat: 31.32, lon: -34.67 }, { name: \"Nazereth\", heb: \"\\u05E0\\u05E6\\u05E8\\u05EA\", il: true, tz: 2, lat: 32.7, lon: -35.32 }, { name: \"Menachemya\", heb: \"\\u05DE\\u05E0\\u05D7\\u05DE\\u05D9\\u05D4\", il: true, tz: 2, lat: 32.6, lon: -35.55 }, { name: \"Ramot\", heb: \"\\u05E8\\u05DE\\u05D5\\u05EA\", il: true, tz: 2, el: 800, lat: 31.82, lon: -35.18 }, { name: \"Katzrin\", heb: \"\\u05E7\\u05E6\\u05E8\\u05D9\\u05DF\", il: true, tz: 2, lat: 32.98, lon: -35.68 }, { name: \"Hashmonaim\", heb: \"\\u05D7\\u05E9\\u05DE\\u05D5\\u05E0\\u05D0\\u05D9\\u05DD\", il: true, tz: 2, el: 255, lat: 31.93, lon: -35.02 }, { name: \"Laniado\", heb: \"\\u05DC\\u05E0\\u05D9\\u05D0\\u05D3\\u05D5 / \\u05E0\\u05EA\\u05E0\\u05D9\\u05D4\", il: true, tz: 2, el: 26, lat: 32.33, lon: -34.87 }, { name: \"Melbourne\", tz: 10, el: 35, lat: -37.82, lon: -144.97 }, { name: \"Aukland\", tz: 12, lat: -36.87, lon: -174.77 }, { name: \"Boisbriand\", tz: -5, lat: 45.62, lon: 73.85 }, { name: \"Ottawa\", tz: -5, lat: 45.42, lon: 75.7 }, { name: \"Winnipeg\", tz: -6, lat: 49.88, lon: 97.13 }, { name: \"Toronto\", tz: -5, el: 175, lat: 43.68, lon: 79.43 }, { name: \"Montreal\", tz: -5, el: 30, lat: 45.52, lon: 73.57 }, { name: \"Eidenburg\", tz: 0, el: 134, lat: 55.92, lon: 3.18 }, { name: \"Algeria\", tz: 1, lat: 36.82, lon: 2.98 }, { name: \"Bogota\", tz: -5, lat: 4.77, lon: 74.1 }, { name: \"Brasilia\", tz: -3, lat: 15.77, lon: 48.02 }, { name: \"Goteborg\", tz: 1, el: 100, lat: 57.7, lon: -11.95 }, { name: \"Victoria\", tz: 8, lat: 22.25, lon: -114.23 }, { name: \"Touson\", tz: -7, lat: 32.22, lon: 110.97 }, { name: \"Tunville\", tz: 1, lat: 49.4, lon: -6.17 }, { name: \"Tkuarembo\", tz: -3, lat: -31.7, lon: 55.98 }, { name: \"Trumso\", tz: 1, lat: 69.67, lon: -18.97 }, { name: \"Johannesburg\", tz: 2, el: 1655, lat: -26.3, lon: -28.18 }, { name: \"Montevideo\", tz: -3, el: 22, lat: -34.83, lon: 56.23 }, { name: \"Meedan Columbia\", tz: -5, lat: 6.23, lon: 75.58 }, { name: \"Mexico City\", tz: -6, lat: 19.45, lon: 98.95 }, { name: \"New Delhi\", tz: 5, lat: 28.58, lon: -77.22 }, { name: \"Narwik\", tz: 1, lat: 68.43, lon: -17.42 }, { name: \"San Jose De Mayo\", tz: -3, lat: -34.35, lon: 56.72 }, { name: \"San Paulo\", tz: -3, el: 790, lat: -23.6, lon: 46.67 }, { name: \"Sunderland\", tz: 0, lat: 54.93, lon: 1.43 }, { name: \"Salford\", tz: 0, lat: 53.5, lon: 2.25 }, { name: \"San Jusinto Uruguay\", tz: -3, lat: -34.55, lon: 55.87 }, { name: \"New Square\", tz: -5, lat: 41.1, lon: 74.07 }, { name: \"Palm Springs\", tz: -8, el: 125, lat: 33.83, lon: 116.67 }, { name: \"Formosa\", tz: -3, lat: -26.18, lon: 58.17 }, { name: \"Panama\", tz: -5, lat: 9.92, lon: 79.93 }, { name: \"Perta\", tz: 8, lat: -32, lon: -115.83 }, { name: \"Peking\", tz: 8, lat: 39.97, lon: -116.45 }, { name: \"Zandiger (India)\", tz: 5, lat: 30.73, lon: -76.78 }, { name: \"The Equator\", tz: 0, lat: 0, lon: 0 }, { name: \"South Pole\", tz: 0, lat: -90, lon: 0 }, { name: \"North Pole\", tz: 0, lat: 90, lon: 0 }, { name: \"Caracas, Venezuela\", tz: -4, lat: 10.37, lon: 66.88 }, { name: \"Robonimi\", tz: 1, lat: 66.48, lon: -25.7 }, { name: \"Rio De Jinero\", tz: -3, lat: -22.85, lon: 43.68 }, { name: \"Phoenix\", tz: -7, lat: 33.43, lon: 112.07 }, { name: \"Lucerne\", tz: 1, lat: 47.05, lon: -8.32 }, { name: \"Odessa\", tz: 2, lat: 46.48, lon: -30.72 }, { name: \"Uman\", tz: 2, lat: 48.73, lon: -30.23 }, { name: \"Ifran\", tz: 0, lat: 33.53, lon: 5.1 }, { name: \"Alsund Norway\", tz: 1, lat: 62.47, lon: -6.18 }, { name: \"Athens\", tz: 2, lat: 37.97, lon: -23.72 }, { name: \"Bad\", tz: 1, lat: 50.2, lon: -10.08 }, { name: \"Bucharest\", tz: 2, lat: 44.38, lon: -26.4 }, { name: \"Gomel\", tz: 2, lat: 52.38, lon: -30.83 }, { name: \"Gibraltar\", tz: 1, lat: 36.13, lon: 5.35 }, { name: \"Gateside\", tz: 0, lat: 54.95, lon: 1.6 }, { name: \"Vienna\", tz: 1, lat: 48.22, lon: -16.37 }, { name: \"Venice\", tz: 1, lat: 45.38, lon: -12.47 }, { name: \"Warsaw\", tz: 1, lat: 52.23, lon: -21 }, { name: \"Toulon\", tz: 1, lat: 43.15, lon: -5.87 }, { name: \"Torberey Scotland\", tz: 0, lat: 55.3, lon: 4.82 }, { name: \"Lusan\", tz: 1, el: 375, lat: 46.53, lon: -6.62 }, { name: \"London\", tz: 0, el: 45, lat: 51.6, lon: 0.1 }, { name: \"Luxenbourg\", tz: 1, lat: 49.67, lon: -6.17 }, { name: \"Liverpool\", tz: 0, lat: 53.42, lon: 2.98 }, { name: \"Leeds\", tz: 0, lat: 53.8, lon: 1.57 }, { name: \"Medisimo Italy\", tz: 1, el: 1500, lat: 46.43, lon: -9.33 }, { name: \"Madrid\", tz: 1, lat: 40.4, lon: 3.7 }, { name: \"Monterrey, Mexico\", tz: 1, lat: 46.4, lon: -6.87 }, { name: \"Moscow\", tz: 3, el: 154, lat: 55.75, lon: -37.62 }, { name: \"Milano\", tz: 1, el: 122, lat: 45.45, lon: -9.18 }, { name: \"Minsk\", tz: 2, lat: 53.87, lon: -27.82 }, { name: \"Malaga\", tz: 1, lat: 36.7, lon: 4.42 }, { name: \"Manchester\", tz: 0, lat: 53.5, lon: 2.23 }, { name: \"Meknes\", tz: 0, lat: 33.9, lon: 5.57 }, { name: \"Marseille\", tz: 1, lat: 43.3, lon: -5.32 }, { name: \"Marrakech\", tz: 0, lat: 31.6, lon: 7.98 }, { name: \"New Castle\", tz: 0, lat: 54.95, lon: 1.62 }, { name: \"Nice France\", tz: 1, lat: 43.7, lon: -7.18 }, { name: \"Fes\", tz: 0, lat: 34.03, lon: 4.98 }, { name: \"Prague\", tz: 1, el: 180, lat: 50.08, lon: -14.42 }, { name: \"Frankfurt\", tz: 1, lat: 50.12, lon: -8.65 }, { name: \"Frankfurt On Maine\", tz: 1, lat: 50.1, lon: -8.68 }, { name: \"Zurich\", tz: 1, el: 410, lat: 47.37, lon: -8.53 }, { name: \"Copenhagen\", tz: 1, lat: 55.77, lon: -12.33 }, { name: \"Casablanca\", tz: 0, lat: 33.58, lon: 7.58 }, { name: \"Kiev\", tz: 2, lat: 50.43, lon: -30.52 }, { name: \"Colon\", tz: 1, el: 46, lat: 50.9, lon: -6.93 }, { name: \"Robet\", tz: 0, lat: 34.02, lon: 6.8 }, { name: \"Rodes\", tz: 2, lat: 36.4, lon: -28.18 }, { name: \"Rome\", tz: 1, lat: 41.9, lon: -12.5 }, { name: \"Shpolgen\", tz: 1, lat: 46.55, lon: -9.32 }, { name: \"Baku\", tz: 2, lat: 40.4, lon: -49.82 }, { name: \"Tarvisio\", tz: 1, lat: 46.5, lon: -13.58 }, { name: \"windischgarsten\", tz: 1, lat: 47.72, lon: -14.32 }, { name: \"Nesslau\", tz: 1, lat: 47.2, lon: -9.2 }, { name: \"Deerfield Beach\", tz: -5, lat: 26.32, lon: 80.08 }, { name: \"Hartford CT\", tz: -5, lat: 41.75, lon: 72.7 }, { name: \"Boro Park, Brooklyn NY\", tz: -5, lat: 40.63, lon: 74 }, { name: \"Brooklyn NY\", tz: -5, lat: 40.63, lon: 73.95 }, { name: \"Denver\", tz: -7, el: 1601, lat: 39.75, lon: 104.93 }, { name: \"Houston\", tz: -6, el: 29, lat: 29.83, lon: 95.35 }, { name: \"Hollywood\", tz: -5, el: 8, lat: 26.1, lon: 80.2 }, { name: \"Washington DC\", tz: -5, lat: 38.9, lon: 77.03 }, { name: \"Los Angeles\", tz: -8, lat: 34.05, lon: 118.23 }, { name: \"Lakewood NJ\", tz: -5, lat: 40.1, lon: 74.23 }, { name: \"Monticello NY\", tz: -5, lat: 41.65, lon: 74.73 }, { name: \"Monsey NY\", tz: -5, lat: 41.1, lon: 74.07 }, { name: \"Miami\", tz: -5, el: 2, lat: 25.83, lon: 80.27 }, { name: \"Miami Beach\", tz: -5, el: 3, lat: 25.78, lon: 80.28 }, { name: \"Milwaukee\", tz: -6, lat: 43.03, lon: 87.92 }, { name: \"Miniappolis\", tz: -6, el: 253, lat: 44.88, lon: 93.22 }, { name: \"Memphis TN\", tz: -6, lat: 35.13, lon: 90.03 }, { name: \"New Orleans\", tz: -6, el: 1, lat: 30, lon: 90.12 }, { name: \"New Square NY\", tz: -5, lat: 41.1, lon: 74.07 }, { name: \"San Juan\", tz: -8, lat: 37.33, lon: 121.88 }, { name: \"San Diego\", tz: -8, lat: 32.72, lon: 117.13 }, { name: \"Saint Louis\", tz: -6, lat: 38.65, lon: 90.32 }, { name: \"Pittsburgh\", tz: -5, lat: 40.4, lon: 80.03 }, { name: \"Philadelphia\", tz: -5, lat: 39.93, lon: 75.17 }, { name: \"Providence RI\", tz: -5, lat: 41.82, lon: 71.4 }, { name: \"Kansas City\", tz: -6, el: 225, lat: 39.1, lon: 94.6 }, { name: \"Kiryas Joel NY\", tz: -5, lat: 41.33, lon: 74.17 }, { name: \"Cali\", tz: -5, lat: 3.45, lon: 76.52 }, { name: \"Medellin\", tz: -5, lat: 6.25, lon: 75.57 }, { name: \"Honolulu\", tz: -10, lat: 21.32, lon: 157.83 }, { name: \"Santiago de Chile\", tz: -4, lat: -33.45, lon: 70.67 }, { name: \"Nairobi\", tz: 3, lat: -1.28, lon: -36.82 }, { name: \"Taipei\", tz: 8, lat: 25.05, lon: -121.5 }, { name: \"Rangun (GMT+6)\", tz: 6, lat: 16.78, lon: -96.17 }, { name: \"Rangun (GMT+7)\", tz: 7, lat: 16.78, lon: -96.17 }, { name: \"Rio de Janeiro\", tz: -3, lat: -22.9, lon: 43.25 }, { name: \"Kapstadt (Capetown)\", tz: 2, lat: -33.9, lon: -18.37 }, { name: \"San Juan (P.R.)\", tz: -4, lat: 18.47, lon: 66.1 }, { name: \"Elizabeth, N.J, US\", tz: -5, lat: 40.67, lon: 74.18 }, { name: \"Aach\", tz: 1, lat: 47.83, lon: -8.85 }, { name: \"Adelsheim\", tz: 1, lat: 49.4, lon: -9.38 }, { name: \"Altlandsberg\", tz: 1, lat: 52.55, lon: -13.72 }, { name: \"Angerm\\xFCnde\", tz: 1, lat: 53.02, lon: -14 }, { name: \"Anklam\", tz: 1, lat: 53.85, lon: -13.68 }, { name: \"Annaberg\", tz: 1, lat: 57.52, lon: -13.43 }, { name: \"Ansbach\", tz: 1, lat: 49.28, lon: -10.57 }, { name: \"Apolda\", tz: 1, lat: 51.02, lon: -11.52 }, { name: \"Arnstadt\", tz: 1, lat: 50.83, lon: -10.95 }, { name: \"Aschersleben\", tz: 1, lat: 51.75, lon: -11.45 }, { name: \"Bad Berka\", tz: 1, lat: 50.9, lon: -11.28 }, { name: \"Bad Cannstatt\", tz: 1, lat: 48.8, lon: -9.18 }, { name: \"Bad Freienwalde\", tz: 1, lat: 52.78, lon: -14.02 }, { name: \"Bad Gottleuba\", tz: 1, lat: 50.85, lon: -13.93 }, { name: \"Bad Krozingen\", tz: 1, lat: 47.92, lon: -7.72 }, { name: \"Bad Mergenheim\", tz: 1, lat: 49.5, lon: -9.77 }, { name: \"Bad Mingolsheim\", tz: 1, lat: 49.23, lon: -8.65 }, { name: \"Bad Rappenau\", tz: 1, lat: 49.32, lon: -9.1 }, { name: \"Bad Salzungen\", tz: 1, lat: 50.8, lon: -10.22 }, { name: \"Bad Wilznack\", tz: 1, lat: 52.95, lon: -11.95 }, { name: \"Bad Wimpfen\", tz: 1, lat: 49.23, lon: -9.15 }, { name: \"Baiersdorf\", tz: 1, lat: 49.65, lon: -11.02 }, { name: \"Ballenstedt\", tz: 1, lat: 51.72, lon: -11.23 }, { name: \"Barby\", tz: 1, lat: 51.97, lon: -11.88 }, { name: \"Bautzen\", tz: 1, lat: 51.18, lon: -14.43 }, { name: \"Beelitz\", tz: 1, lat: 52.23, lon: -12.97 }, { name: \"Beeskow\", tz: 1, lat: 52.17, lon: -14.23 }, { name: \"Bernau\", tz: 1, lat: 47.8, lon: -12.37 }, { name: \"Bernburg\", tz: 1, lat: 51.8, lon: -11.73 }, { name: \"Biesenthal\", tz: 1, lat: 52.77, lon: -13.62 }, { name: \"Bleicherode\", tz: 1, lat: 51.43, lon: -10.57 }, { name: \"Boizenburg\", tz: 1, lat: 53.37, lon: -10.72 }, { name: \"Borna\", tz: 1, lat: 51.32, lon: -13.18 }, { name: \"Breisach\", tz: 1, lat: 48.02, lon: -7.67 }, { name: \"Br\\xFCel\", tz: 1, lat: 53.73, lon: -11.72 }, { name: \"Burg\", tz: 1, lat: 52.27, lon: -11.85 }, { name: \"B\\xFCtzow\", tz: 1, lat: 53.83, lon: -11.98 }, { name: \"Calbe\", tz: 1, lat: 51.9, lon: -11.77 }, { name: \"Calv\\xF6rde\", tz: 1, lat: 52.38, lon: -11.28 }, { name: \"Caputh\", tz: 1, lat: 52.35, lon: -13 }, { name: \"Coesfeld\", tz: 1, lat: 51.93, lon: -7.17 }, { name: \"Coswig\", tz: 1, lat: 51.88, lon: -12.43 }, { name: \"Crivitz\", tz: 1, lat: 53.58, lon: -11.63 }, { name: \"Dargun\", tz: 1, lat: 53.9, lon: -12.85 }, { name: \"Deggendorf\", tz: 1, lat: 48.85, lon: -12.98 }, { name: \"Delitzsch\", tz: 1, lat: 51.52, lon: -12.33 }, { name: \"Aachen\", tz: 1, lat: 50.78, lon: -6.08 }, { name: \"Altensteig\", tz: 1, lat: 48.58, lon: -8.6 }, { name: \"Amberg\", tz: 1, lat: 49.45, lon: -11.87 }, { name: \"Augsburg\", tz: 1, lat: 48.38, lon: -10.88 }, { name: \"Aurich\", tz: 1, lat: 53.47, lon: -7.48 }, { name: \"Bad Kissingen\", tz: 1, lat: 50.2, lon: -10.05 }, { name: \"Bad Kreuznach\", tz: 1, lat: 49.87, lon: -7.85 }, { name: \"Bad Nauheim\", tz: 1, lat: 50.37, lon: -8.73 }, { name: \"Baden-Baden\", tz: 1, lat: 48.77, lon: -8.23 }, { name: \"Bamberg\", tz: 1, lat: 49.88, lon: -10.88 }, { name: \"Bayreuth\", tz: 1, lat: 49.95, lon: -11.58 }, { name: \"Berlin\", tz: 1, lat: 52.52, lon: -13.38 }, { name: \"Bielefeld\", tz: 1, lat: 52.02, lon: -8.52 }, { name: \"Bonn\", tz: 1, lat: 50.73, lon: -7.1 }, { name: \"Brandenburg\", tz: 1, lat: 52.4, lon: -12.53 }, { name: \"Braunschweig\", tz: 1, lat: 52.27, lon: -10.52 }, { name: \"Bremen\", tz: 1, lat: 53.07, lon: -8.82 }, { name: \"Bremerhaven\", tz: 1, lat: 53.55, lon: -8.57 }, { name: \"Calw\", tz: 1, lat: 48.72, lon: -8.73 }, { name: \"Celle\", tz: 1, lat: 52.62, lon: -10.08 }, { name: \"Chemnitz\", tz: 1, lat: 50.83, lon: -12.92 }, { name: \"Cottbus\", tz: 1, lat: 51.75, lon: -14.32 }, { name: \"Dachau\", tz: 1, lat: 48.25, lon: -11.45 }, { name: \"Darmstadt\", tz: 1, lat: 49.88, lon: -8.67 }, { name: \"Dessau\", tz: 1, lat: 51.83, lon: -12.23 }, { name: \"Dortmund\", tz: 1, lat: 51.52, lon: -7.47 }, { name: \"Dresden\", tz: 1, lat: 51.05, lon: -13.73 }, { name: \"Duisburg\", tz: 1, lat: 51.42, lon: -6.77 }, { name: \"D\\xFCsseldorf\", tz: 1, lat: 51.2, lon: -6.78 }, { name: \"Emmendingen\", tz: 1, lat: 48.12, lon: -7.83 }, { name: \"Erfurt\", tz: 1, lat: 50.97, lon: -11.02 }, { name: \"Essen/Ruhr\", tz: 1, lat: 51.47, lon: -7.02 }, { name: \"Frankfurt/Main\", tz: 1, lat: 50.12, lon: -8.67 }, { name: \"Frankfurt/Oder\", tz: 1, lat: 52.33, lon: -14.55 }, { name: \"Freiburg i. Br.\", tz: 1, lat: 47.98, lon: -7.85 }, { name: \"F\\xFCrth\", tz: 1, lat: 49.47, lon: -10.98 }, { name: \"Fulda\", tz: 1, lat: 50.55, lon: -9.68 }, { name: \"Gelsenkirchen\", tz: 1, lat: 51.52, lon: -7.12 }, { name: \"Gie\\xDFen\", tz: 1, lat: 50.58, lon: -8.67 }, { name: \"G\\xF6ttingen\", tz: 1, lat: 51.53, lon: -9.92 }, { name: \"Grabow\", tz: 1, lat: 53.27, lon: -11.57 }, { name: \"Hagen (Westf)\", tz: 1, lat: 51.37, lon: -7.47 }, { name: \"Halle/Saale\", tz: 1, lat: 51.48, lon: -11.97 }, { name: \"Hamburg\", tz: 1, lat: 53.55, lon: -9.98 }, { name: \"Hameln\", tz: 1, lat: 52.1, lon: -9.35 }, { name: \"Hannover\", tz: 1, lat: 52.4, lon: -9.73 }, { name: \"Havelberg\", tz: 1, lat: 52.83, lon: -12.07 }, { name: \"Heidelberg\", tz: 1, lat: 49.42, lon: -8.72 }, { name: \"Herford\", tz: 1, lat: 52.1, lon: -8.67 }, { name: \"Hessisch Oldendorf\", tz: 1, lat: 52.17, lon: -9.25 }, { name: \"Hildesheim\", tz: 1, lat: 52.15, lon: -9.95 }, { name: \"Hof\", tz: 1, lat: 50.3, lon: -11.92 }, { name: \"Idar-Oberstein\", tz: 1, lat: 49.7, lon: -7.32 }, { name: \"Kaiserslautern\", tz: 1, lat: 49.43, lon: -7.77 }, { name: \"Karlsruhe\", tz: 1, lat: 49.05, lon: -8.4 }, { name: \"Kassel\", tz: 1, lat: 51.32, lon: -9.47 }, { name: \"Kiel\", tz: 1, lat: 54.33, lon: -10.13 }, { name: \"Kleinmachnow\", tz: 1, lat: 52.4, lon: -13.25 }, { name: \"Koblenz\", tz: 1, lat: 50.35, lon: -7.58 }, { name: \"K\\xF6ln\", tz: 1, lat: 50.93, lon: -6.98 }, { name: \"Krefeld\", tz: 1, lat: 51.33, lon: -6.57 }, { name: \"Leipzig\", tz: 1, lat: 51.32, lon: -12.33 }, { name: \"L\\xF6rrach\", tz: 1, lat: 47.62, lon: -7.67 }, { name: \"L\\xFCbeck\", tz: 1, lat: 53.87, lon: -10.67 }, { name: \"Ludwigshafen\", tz: 1, lat: 49.48, lon: -8.43 }, { name: \"Ludwigslust\", tz: 1, lat: 53.32, lon: -11.5 }, { name: \"Magdeburg\", tz: 1, lat: 52.12, lon: -11.63 }, { name: \"Mainz\", tz: 1, lat: 50.02, lon: -8.27 }, { name: \"Mannheim\", tz: 1, lat: 49.48, lon: -8.47 }, { name: \"Marburg\", tz: 1, lat: 50.82, lon: -8.77 }, { name: \"Minden\", tz: 1, lat: 52.28, lon: -8.92 }, { name: \"M\\xF6nchengladbach\", tz: 1, lat: 51.2, lon: -6.47 }, { name: \"M\\xFCnchen\", tz: 1, lat: 48.13, lon: -11.57 }, { name: \"Nagold\", tz: 1, lat: 48.55, lon: -8.72 }, { name: \"Neum\\xFCnster\", tz: 1, lat: 54.07, lon: -9.98 }, { name: \"Neuruppin\", tz: 1, lat: 52.92, lon: -12.8 }, { name: \"Neustadt/Weinstra\\xDFe\", tz: 1, lat: 49.35, lon: -8.13 }, { name: \"Neustrelitz\", tz: 1, lat: 53.35, lon: -13.07 }, { name: \"N\\xFCrnberg\", tz: 1, lat: 49.45, lon: -11.07 }, { name: \"Offenbach\", tz: 1, lat: 50.13, lon: -8.78 }, { name: \"Oldenburg\", tz: 1, lat: 53.13, lon: -8.22 }, { name: \"Oldenburg in Holstein\", tz: 1, lat: 54.28, lon: -10.87 }, { name: \"Osnabr\\xFCck\", tz: 1, lat: 52.27, lon: -8.03 }, { name: \"Paderborn\", tz: 1, lat: 51.72, lon: -8.73 }, { name: \"Perleberg\", tz: 1, lat: 53.07, lon: -11.85 }, { name: \"Pforzheim\", tz: 1, lat: 48.9, lon: -8.7 }, { name: \"Potsdam\", tz: 1, lat: 52.4, lon: -13.07 }, { name: \"Pritzwalk\", tz: 1, lat: 53.15, lon: -12.17 }, { name: \"Rathenow\", tz: 1, lat: 52.6, lon: -12.33 }, { name: \"Recklinghausen\", tz: 1, lat: 51.6, lon: -7.22 }, { name: \"Regensburg\", tz: 1, lat: 49.02, lon: -12.1 }, { name: \"Rinteln\", tz: 1, lat: 52.18, lon: -9.05 }, { name: \"Rostock\", tz: 1, lat: 54.08, lon: -12.12 }, { name: \"Saarbr\\xFCcken\", tz: 1, lat: 49.23, lon: -6.98 }, { name: \"Salzgitter\", tz: 1, lat: 52.17, lon: -10.42 }, { name: \"Schwerin\", tz: 1, lat: 53.63, lon: -11.42 }, { name: \"Sobernheim\", tz: 1, lat: 49.78, lon: -7.63 }, { name: \"Stendal\", tz: 1, lat: 52.6, lon: -11.85 }, { name: \"Straubing\", tz: 1, lat: 48.88, lon: -12.57 }, { name: \"Strausberg\", tz: 1, lat: 52.58, lon: -13.88 }, { name: \"Stuttgart\", tz: 1, lat: 48.77, lon: -9.18 }, { name: \"Trier\", tz: 1, lat: 49.75, lon: -6.63 }, { name: \"T\\xFCbingen\", tz: 1, lat: 48.52, lon: -9.03 }, { name: \"Weiden in der Oberpfalz\", tz: 1, lat: 49.68, lon: -12.17 }, { name: \"Wiesbaden\", tz: 1, lat: 50.08, lon: -8.23 }, { name: \"Wismar\", tz: 1, lat: 53.88, lon: -11.47 }, { name: \"Wittenberg\", tz: 1, lat: 51.87, lon: -12.65 }, { name: \"Wittenberge\", tz: 1, lat: 53, lon: -11.73 }, { name: \"Wittstock\", tz: 1, lat: 53.17, lon: -12.48 }, { name: \"W\\xF6rlitz\", tz: 1, lat: 51.83, lon: -12.42 }, { name: \"Wuppertal\", tz: 1, lat: 51.27, lon: -7.18 }, { name: \"W\\xFCrzburg\", tz: 1, lat: 49.8, lon: -9.93 }, { name: \"Basel\", tz: 1, lat: 47.63, lon: -7.67 }, { name: \"Bern\", tz: 1, lat: 46.95, lon: -7.43 }, { name: \"Bremgarten\", tz: 1, lat: 47.35, lon: -8.35 }, { name: \"Geneve\", tz: 1, lat: 46.2, lon: -6.15 }, { name: \"M\\xFCnsingen\", tz: 1, lat: 46.88, lon: -7.57 }, { name: \"Sankt Gallen\", tz: 1, lat: 47.42, lon: -9.38 }, { name: \"Vevey\", tz: 1, lat: 46.47, lon: -6.85 }, { name: \"Winterthur\", tz: 1, lat: 47.5, lon: -8.72 }, { name: \"Zug\", tz: 1, lat: 47.17, lon: -8.52 }, { name: \"Z\\xFCrich\", tz: 1, lat: 47.38, lon: -8.53 }, { name: \"Graz\", tz: 1, lat: 47.08, lon: -15.45 }, { name: \"Innsbruck\", tz: 1, lat: 47.27, lon: -11.4 }, { name: \"Linz\", tz: 1, lat: 48.3, lon: -14.3 }, { name: \"Salzburg\", tz: 1, lat: 47.8, lon: -13.03 }, { name: \"Wien\", tz: 1, lat: 48.22, lon: -16.33 }, { name: \"Antwerpen\", tz: 1, lat: 51.22, lon: -4.42 }, { name: \"Arlon\", tz: 1, lat: 49.68, lon: -5.82 }, { name: \"Br\\xFCssel\", tz: 1, lat: 50.83, lon: -4.33 }, { name: \"Charleroi\", tz: 1, lat: 50.42, lon: -4.43 }, { name: \"Gent\", tz: 1, lat: 51.05, lon: -3.72 }, { name: \"Knokke\", tz: 1, lat: 51.35, lon: -3.28 }, { name: \"Li\\xE9ge\", tz: 1, lat: 50.63, lon: -5.57 }, { name: \"Mons\", tz: 1, lat: 50.45, lon: -3.93 }, { name: \"Ostende\", tz: 1, lat: 51.22, lon: -2.9 }, { name: \"Amersfoort\", tz: 1, lat: 52.15, lon: -5.4 }, { name: \"Amsterdam\", tz: 1, lat: 52.37, lon: -4.9 }, { name: \"Arnheim\", tz: 1, lat: 52.02, lon: -5.88 }, { name: \"Bussum\", tz: 1, lat: 52.27, lon: -5.15 }, { name: \"Den Haag\", tz: 1, lat: 52.1, lon: -4.3 }, { name: \"Eindhoven\", tz: 1, lat: 51.43, lon: -5.47 }, { name: \"Enschede\", tz: 1, lat: 52.2, lon: -6.88 }, { name: \"Groningen\", tz: 1, lat: 53.22, lon: -6.55 }, { name: \"Hilversum\", tz: 1, lat: 52.23, lon: -5.15 }, { name: \"Leiden\", tz: 1, lat: 52.15, lon: -4.5 }, { name: \"Maastricht\", tz: 1, lat: 50.87, lon: -5.72 }, { name: \"Rotterdam\", tz: 1, lat: 51.92, lon: -4.47 }, { name: \"Tilburg\", tz: 1, lat: 51.57, lon: -5.08 }, { name: \"Utrecht\", tz: 1, lat: 52.08, lon: -5.13 }, { name: \"Zwolle\", tz: 1, lat: 52.5, lon: -6.08 }, { name: \"Crossen\", tz: 1, lat: 50.75, lon: -12.48 }, { name: \"Krakau\", tz: 1, lat: 50.05, lon: -19.95 }, { name: \"Lodz\", tz: 1, lat: 51.77, lon: -19.22 }, { name: \"Tarn\\xF3w\", tz: 1, lat: 52.78, lon: -14.97 }, { name: \"Warschau\", tz: 1, lat: 52.25, lon: -21 }, { name: \"Wroczlaw (Breslau)\", tz: 1, lat: 51.1, lon: -17 }, { name: \"Birobidzan\", tz: 9, lat: 48.8, lon: -132.95 }, { name: \"Irkutsk\", tz: 8, lat: 52.27, lon: -104.33 }, { name: \"Kiew\", tz: 2, lat: 50.43, lon: -30.52 }, { name: \"Moskau\", tz: 3, lat: 55.75, lon: -37.58 }, { name: \"St. Petersburg\", tz: 3, lat: 59.92, lon: -30.25 }, { name: \"Taschkent\", tz: 6, lat: 41.33, lon: -69.3 }, { name: \"Tblisi\", tz: 3, lat: 41.72, lon: -44.82 }, { name: \"Montreal, Fr.\", tz: 1, lat: 47.53, lon: -4.02 }, { name: \"Lausanne\", tz: 1, lat: 46.52, lon: -6.63 }, { name: \"Nice\", tz: 1, lat: 43.7, lon: -7.25 }, { name: \"Paris\", tz: 1, lat: 48.87, lon: -2.33 }, { name: \"Birmingham\", tz: 0, lat: 52.5, lon: 1.83 }, { name: \"Bradford\", tz: 0, lat: 53.8, lon: 1.75 }, { name: \"Bristol\", tz: 0, lat: 51.45, lon: 2.58 }, { name: \"Edinburgh\", tz: 0, lat: 55.95, lon: 3.22 }, { name: \"Gateshead\", tz: 0, lat: 54.97, lon: 1.62 }, { name: \"Glasgow\", tz: 0, lat: 55.88, lon: 4.25 }, { name: \"Sheffield\", tz: 0, lat: 53.38, lon: 1.5 }, { name: \"Belfast\", tz: 0, lat: 54.58, lon: 5.92 }, { name: \"Dublin\", tz: 0, lat: 53.33, lon: 6.25 }, { name: \"Tralee\", tz: 0, lat: 52.27, lon: 9.7 }, { name: \"Atlanta (Ga., US)\", tz: -5, lat: 33.75, lon: 84.38 }, { name: \"Baltimore, MD\", tz: -5, lat: 39.28, lon: 76.62 }, { name: \"Bentonville, Arkansas\", tz: -6, lat: 36.37, lon: 94.22 }, { name: \"Boston, MA\", tz: -5, lat: 42.35, lon: 71.07 }, { name: \"Buffalo\", tz: -5, lat: 42.9, lon: 78.88 }, { name: \"Burlington (VT, US)\", tz: -5, lat: 44.48, lon: 73.22 }, { name: \"Canton, Ohio\", tz: -5, lat: 40.78, lon: 81.37 }, { name: \"Charleston (S.C., US)\", tz: -5, lat: 32.78, lon: 79.93 }, { name: \"Charlotte (N.C., US)\", tz: -5, lat: 35.23, lon: 80.83 }, { name: \"Chicago\", tz: -6, lat: 41.88, lon: 87.63 }, { name: \"Cincinnati, OH\", tz: -5, lat: 39.1, lon: 84.63 }, { name: \"Cleveland (Ohio, US)\", tz: -5, lat: 41.5, lon: 81.68 }, { name: \"Columbus, OH\", tz: -5, lat: 39.95, lon: 83 }, { name: \"Dallas, TX\", tz: -6, lat: 32.78, lon: 96.8 }, { name: \"Denver (Colo., US)\", tz: -7, lat: 39.72, lon: 105.02 }, { name: \"Detroit, MI\", tz: -5, lat: 42.33, lon: 83.05 }, { name: \"Essexville, MI\", tz: -5, lat: 43.62, lon: 83.83 }, { name: \"Fairbanks, AK\", tz: -10, lat: 64.85, lon: 147.72 }, { name: \"Flagstaff, Arizona\", tz: -7, lat: 35.18, lon: 111.65 }, { name: \"Hartford (Conn., US)\", tz: -5, lat: 41.77, lon: 72.68 }, { name: \"Houston, TX\", tz: -6, lat: 29.77, lon: 95.37 }, { name: \"Indianapolis, Indiana\", tz: -6, lat: -19.03, lon: 47.92 }, { name: \"Kansas City (Kans., US)\", tz: -6, lat: 39.12, lon: 94.65 }, { name: \"Little Rock\", tz: -6, lat: 34.73, lon: 92.25 }, { name: \"Los Angeles (LA)\", tz: -8, lat: 34.05, lon: 118.25 }, { name: \"Louisville (Ky., US)\", tz: -5, lat: 38.25, lon: 85.75 }, { name: \"Madison (Wis., US)\", tz: -6, lat: 43.08, lon: 89.37 }, { name: \"Memphis (Tenn., US)\", tz: -6, lat: 35.13, lon: 90.05 }, { name: \"Miami, FL\", tz: -5, lat: 25.77, lon: 80.2 }, { name: \"Miami Beach, FL\", tz: -5, lat: 25.78, lon: 80.13 }, { name: \"Milwaukee (Wis., US)\", tz: -6, lat: 43.03, lon: 87.92 }, { name: \"Minneapolis, Minnesota\", tz: -6, lat: 44.98, lon: 93.22 }, { name: \"Mobile\", tz: -6, lat: 30.7, lon: 88.08 }, { name: \"Monticello\", tz: -5, lat: 41.65, lon: 74.7 }, { name: \"Naples (Fla., US)\", tz: -5, lat: 26.13, lon: 81.8 }, { name: \"Nashville (Tenn., US)\", tz: -6, lat: 36.15, lon: 86.8 }, { name: \"New Brunswick\", tz: -5, lat: 40.48, lon: 74.45 }, { name: \"New Haven (Conn., US)\", tz: -5, lat: 41.3, lon: 72.93 }, { name: \"New Orleans, Louisiana\", tz: -6, lat: 29.97, lon: 90.12 }, { name: \"New York, NY\", tz: -5, lat: 40.72, lon: 74.02 }, { name: \"New York, Brooklyn\", tz: -5, lat: 40.7, lon: 74 }, { name: \"Newark (N.J., US)\", tz: -5, lat: 40.73, lon: 74.15 }, { name: \"Newport (R.I., US)\", tz: -5, lat: 41.22, lon: 71.3 }, { name: \"Omaha, Nebraska\", tz: -6, lat: 41.27, lon: 95.95 }, { name: \"Orlando, FL\", tz: -5, lat: 28.53, lon: 81.38 }, { name: \"Philadelphia, Pennsylvania\", tz: -5, lat: 39.95, lon: 75.1 }, { name: \"Phoenix, Arizona\", tz: -7, lat: 33.45, lon: 112.08 }, { name: \"Pittsburgh, Pennsylvania\", tz: -5, lat: 40.43, lon: 80 }, { name: \"Portland (Maine, US)\", tz: -5, lat: 43.65, lon: 70.28 }, { name: \"Portland (Oreg, US)\", tz: -8, lat: 45.55, lon: 112.6 }, { name: \"Providence, RI\", tz: -5, lat: 41.83, lon: 71.42 }, { name: \"Salt Lake City, Utah\", tz: -7, lat: 40.77, lon: 111.88 }, { name: \"San Antonio, TX\", tz: -6, lat: 29.47, lon: 98.52 }, { name: \"San Francisco\", tz: -8, lat: 37.78, lon: 122.4 }, { name: \"Santa Fe (N.Mex., US)\", tz: -7, lat: 35.7, lon: 106.95 }, { name: \"Seattle, WA\", tz: -8, lat: 47.6, lon: 122.33 }, { name: \"Silver Spring\", tz: -5, lat: 39.03, lon: 77.05 }, { name: \"Springfield (Mass., US)\", tz: -5, lat: 42.12, lon: 72.6 }, { name: \"Stamford, CA\", tz: -5, lat: 41.05, lon: 73.55 }, { name: \"St. Louis\", tz: -6, lat: 38.63, lon: 90.18 }, { name: \"Tampa, FL\", tz: -5, lat: 27.95, lon: 82.45 }, { name: \"Topeka (KS, US)\", tz: -6, lat: 39.05, lon: 95.68 }, { name: \"Tucson\", tz: -7, lat: 32.22, lon: 110.97 }, { name: \"Washington, DC\", tz: -5, lat: 38.9, lon: 77.02 }, { name: \"Wichita, TX\", tz: -6, lat: 37.67, lon: 97.33 }, { name: \"Yellowstone Lake\", tz: -7, lat: 44.42, lon: 110.37 }, { name: \"Ancona\", tz: 1, lat: 43.63, lon: -13.5 }, { name: \"Asti\", tz: 1, lat: 44.9, lon: -8.18 }, { name: \"Bologna\", tz: 1, lat: 44.48, lon: -11.33 }, { name: \"Ferrara\", tz: 1, lat: 44.83, lon: -11.58 }, { name: \"Florenz\", tz: 1, lat: 43.77, lon: -11.25 }, { name: \"Genua\", tz: 1, lat: 44.42, lon: -8.95 }, { name: \"Livorno\", tz: 1, lat: 43.55, lon: -10.32 }, { name: \"Mantova\", tz: 1, lat: 45.15, lon: -10.8 }, { name: \"Meran\", tz: 1, lat: 46.67, lon: -11.15 }, { name: \"Mailand\", tz: 1, lat: 45.47, lon: -9.18 }, { name: \"Modena\", tz: 1, lat: 44.67, lon: -10.92 }, { name: \"Neapel\", tz: 1, lat: 40.85, lon: -14.28 }, { name: \"Padova\", tz: 1, lat: 45.42, lon: -11.88 }, { name: \"Parma\", tz: 1, lat: 44.8, lon: -10.32 }, { name: \"Perugia\", tz: 1, lat: 43.13, lon: -12.37 }, { name: \"Pisa\", tz: 1, lat: 43.72, lon: -10.38 }, { name: \"Rom\", tz: 1, lat: 41.9, lon: -12.48 }, { name: \"Siena\", tz: 1, lat: 43.32, lon: -11.35 }, { name: \"Spiazzo\", tz: 1, lat: 46.12, lon: -10.67 }, { name: \"Trieste\", tz: 1, lat: 45.67, lon: -13.77 }, { name: \"Turin\", tz: 1, lat: 45.07, lon: -7.67 }, { name: \"Venedig\", tz: 1, lat: 45.45, lon: -12.35 }, { name: \"Verona\", tz: 1, lat: 45.45, lon: -11 }, { name: \"Alburquerque\", tz: 1, lat: 39.22, lon: 7 }, { name: \"Alicante\", tz: 1, lat: 38.35, lon: 0.47 }, { name: \"Barcelona\", tz: 1, lat: 41.38, lon: -2.18 }, { name: \"Mallorca\", tz: 1, lat: 39.48, lon: -3 }, { name: \"Marbella\", tz: 1, lat: 36.52, lon: 4.88 }, { name: \"Sevilla\", tz: 1, lat: 37.37, lon: 5.98 }, { name: \"Torremolinos\", tz: 1, lat: 36.6, lon: 4.5 }, { name: \"Valencia\", tz: 1, lat: 39.47, lon: 0.37 }, { name: \"Belmonte\", tz: 0, lat: 40.37, lon: 7.37 }, { name: \"Lissabon\", tz: 0, lat: 38.72, lon: 9.13 }, { name: \"Porto\", tz: 0, lat: 41.18, lon: 8.6 }, { name: \"Athen\", tz: 2, lat: 37.97, lon: -23.72 }, { name: \"Korfu\", tz: 2, lat: 39.6, lon: -19.92 }, { name: \"Rhodos\", tz: 2, lat: 36.17, lon: -28 }, { name: \"Saloniki\", tz: 2, lat: 40.65, lon: -23.02 }, { name: \"Trikala\", tz: 2, lat: 39.57, lon: -21.77 }, { name: \"Volos\", tz: 2, lat: 39.35, lon: -22.93 }, { name: \"Ankara\", tz: 2, lat: 39.93, lon: -32.87 }, { name: \"Bursa\", tz: 2, lat: 40.18, lon: -29.07 }, { name: \"Istanbul\", tz: 2, lat: 41.02, lon: -28.97 }, { name: \"Izmir\", tz: 2, lat: 38.42, lon: -27.15 }, { name: \"Esch-sur-Alzette\", tz: 1, lat: 49.5, lon: -5.98 }, { name: \"Luxemburg\", tz: 1, lat: 49.6, lon: -6.15 }, { name: \"Kopenhagen\", tz: 1, lat: 55.67, lon: -12.58 }, { name: \"Boras\", tz: 1, lat: 57.72, lon: -12.92 }, { name: \"G\\xF6teborg\", tz: 1, lat: 57.72, lon: -11.97 }, { name: \"Lund\", tz: 1, lat: 55.7, lon: -13.18 }, { name: \"Malm\\xF6\", tz: 1, lat: 55.6, lon: -13 }, { name: \"Stockholm\", tz: 1, lat: 59.33, lon: -18.05 }, { name: \"Oslo\", tz: 1, lat: 59.92, lon: -10.75 }, { name: \"Trondheim\", tz: 1, lat: 63.42, lon: -10.42 }, { name: \"Helsinki\", tz: 2, lat: 60.17, lon: -24.97 }, { name: \"Turku\", tz: 2, lat: 60.45, lon: -22.28 }, { name: \"Pazardjik\", tz: 2, lat: 42.2, lon: -24.33 }, { name: \"Plovdiv\", tz: 2, lat: 42.15, lon: -24.75 }, { name: \"Ruse\", tz: 2, lat: 43.83, lon: -25.95 }, { name: \"Sofia\", tz: 2, lat: 42.68, lon: -23.32 }, { name: \"Bacau\", tz: 2, lat: 46.57, lon: -26.92 }, { name: \"Botosani\", tz: 2, lat: 47.75, lon: -26.67 }, { name: \"Brasov\", tz: 2, lat: 45.65, lon: -25.62 }, { name: \"Cluj\", tz: 2, lat: 46.78, lon: -23.6 }, { name: \"Constanta\", tz: 2, lat: 44.18, lon: -28.65 }, { name: \"Dorohoi\", tz: 2, lat: 47.95, lon: -26.4 }, { name: \"Galati\", tz: 2, lat: 45.43, lon: -28.05 }, { name: \"Iasi\", tz: 2, lat: 47.17, lon: -27.58 }, { name: \"Oradea\", tz: 2, lat: 47.05, lon: -21.95 }, { name: \"Piatra Neamt\", tz: 2, lat: 46.93, lon: -26.37 }, { name: \"Radauti\", tz: 2, lat: 47.85, lon: -25.92 }, { name: \"Satu Mare\", tz: 2, lat: 47.8, lon: -22.88 }, { name: \"Sighetul Marmatiei\", tz: 2, lat: 47.93, lon: -23.9 }, { name: \"Suceava\", tz: 2, lat: 47.65, lon: -26.32 }, { name: \"Timisoara\", tz: 2, lat: 45.75, lon: -21.22 }, { name: \"Tirgu Mures\", tz: 2, lat: 46.55, lon: -24.55 }, { name: \"Budapest\", tz: 1, lat: 47.5, lon: -19.08 }, { name: \"Sopron\", tz: 1, lat: 47.68, lon: -16.6 }, { name: \"Br\\xFCnn\", tz: 1, lat: 49.2, lon: -16.62 }, { name: \"Karlsbad\", tz: 1, lat: 50.18, lon: -12.87 }, { name: \"Liberec\", tz: 1, lat: 50.77, lon: -15.05 }, { name: \"Olomouc\", tz: 1, lat: 49.6, lon: -17.27 }, { name: \"Ostrava\", tz: 1, lat: 49.83, lon: -18.28 }, { name: \"Pilsen\", tz: 1, lat: 49.75, lon: -13.38 }, { name: \"Prag\", tz: 1, lat: 50.08, lon: -14.43 }, { name: \"Teplice\", tz: 1, lat: 50.65, lon: -13.8 }, { name: \"Usti nad Labem\", tz: 1, lat: 50.67, lon: -14.03 }, { name: \"Bratislava\", tz: 1, lat: 48.15, lon: -17.12 }, { name: \"Galanta\", tz: 1, lat: 48.2, lon: -17.72 }, { name: \"Kosice\", tz: 1, lat: 48.72, lon: -21.25 }, { name: \"Piestany\", tz: 1, lat: 48.6, lon: -17.83 }, { name: \"Presov\", tz: 1, lat: 49, lon: -21.25 }, { name: \"Trnava\", tz: 1, lat: 48.38, lon: -17.58 }, { name: \"Belgrad\", tz: 1, lat: 44.83, lon: -20.5 }, { name: \"Novi Sad\", tz: 1, lat: 45.25, lon: -19.83 }, { name: \"Subotica\", tz: 1, lat: 46.1, lon: -19.65 }, { name: \"Dubrovnik\", tz: 1, lat: 42.63, lon: -18.12 }, { name: \"Rijeka\", tz: 1, lat: 45.33, lon: -14.45 }, { name: \"Split\", tz: 1, lat: 43.52, lon: -16.45 }, { name: \"Zagreb\", tz: 1, lat: 45.8, lon: -15.97 }, { name: \"Skopje\", tz: 1, lat: 41.98, lon: -21.43 }, { name: \"Sarajevo\", tz: 1, lat: 43.87, lon: -18.42 }, { name: \"Ljubljana\", tz: 1, lat: 46.05, lon: -14.52 }, { name: \"Teheran (GMT+3)\", tz: 3, lat: 35.67, lon: -51.43 }, { name: \"Teheran (GMT+4)\", tz: 4, lat: 35.67, lon: -51.43 }, { name: \"Tokyo\", tz: 9, lat: 35.7, lon: -139.77 }, { name: \"Asuncion\", tz: -4, lat: -25.27, lon: 57.67 }, { name: \"Sao Paulo\", tz: -3, lat: -23.53, lon: 46.62 }, { name: \"Buenos Aires\", tz: -3, lat: -34.6, lon: 58.45 }, { name: \"Guangzhou (Canton)\", tz: 8, lat: 23.1, lon: -113.27 }, { name: \"Hong Kong\", tz: 8, lat: 25.25, lon: -114.17 }, { name: \"Peking (Beijing)\", tz: 8, lat: 39.9, lon: -116.42 }, { name: \"Shanghai\", tz: 8, lat: 31.23, lon: -121.47 }, { name: \"Shenyang\", tz: 8, lat: 41.8, lon: -123.45 }, { name: \"Bangkok\", tz: 7, lat: 13.58, lon: -100.48 }, { name: \"Neu Dehli (GMT+5)\", tz: 5, lat: 28.3, lon: -77.47 }, { name: \"Neu Dehli (GMT+6)\", tz: 6, lat: 28.3, lon: -77.47 }, { name: \"Kairo\", tz: 2, lat: 29.67, lon: -31.02 }, { name: \"Damaskus\", tz: 3, lat: 33.13, lon: -36.43 }, { name: \"Amman\", tz: 2, lat: 31.7, lon: -35.88 }, { name: \"Ar-Rijad (Riyadh)\", tz: 3, lat: 24.63, lon: -46.72 }, { name: \"Beirut\", tz: 2, lat: 33.33, lon: -35.37 }, { name: \"Pjongjang (P\\xB4yongyang)\", tz: 9, lat: 39.02, lon: -125.75 }, { name: \"Seoul (Soul)\", tz: 9, lat: 37.55, lon: -126.97 }, { name: \"Singapur\", tz: 8, lat: 11.37, lon: -103.8 }, { name: \"Lima\", tz: -5, lat: -12.05, lon: 77.05 }, { name: \"Havana\", tz: -5, lat: 23.13, lon: 82.37 }, { name: \"Brisbane\", tz: 10, lat: -27.47, lon: -153.03 }, { name: \"Canberra\", tz: 10, lat: -35.28, lon: -149.13 }, { name: \"Sydney\", tz: 10, lat: -33.87, lon: -151.22 }, { name: \"Halifax, N.S., Can.\", tz: -4, lat: 44.65, lon: 63.6 }, { name: \"Montreal, Quebec, Can.\", tz: -5, lat: 45.52, lon: 73.57 }, { name: \"Quebec\", tz: -5, lat: 46.82, lon: 71.23 }, { name: \"Vancouver\", tz: -8, lat: 49.27, lon: 123.12 }, { name: \"Demmin\", tz: 1, lat: 53.9, lon: -13.03 }, { name: \"Dieburg\", tz: 1, lat: 49.9, lon: -8.83 }, { name: \"D\\xF6mitz\", tz: 1, lat: 53.13, lon: -11.23 }, { name: \"Durlach\", tz: 1, lat: 49, lon: -8.45 }, { name: \"Landau\", tz: 1, lat: 49.2, lon: -8.12 }, { name: \"Landau an der Isar\", tz: 1, lat: 48.67, lon: -12.72 }, { name: \"Parchim\", tz: 1, lat: 53.42, lon: -11.85 }, { name: \"Suhl\", tz: 1, lat: 50.62, lon: -10.68 }, { name: \"Worms\", tz: 1, lat: 49.63, lon: -8.37 }, { name: \"Strasbourg\", tz: 1, lat: 48.58, lon: -7.75 }, { name: \"Kaunas\", tz: 2, lat: 54.9, lon: -23.9 }, { name: \"K\\xF6nigsberg\", tz: 2, lat: 54.72, lon: -20.5 }, { name: \"Riga\", tz: 2, lat: 56.95, lon: -24.1 }, { name: \"Tallinn\", tz: 2, lat: 59.42, lon: -24.75 }, { name: \"Vilnius\", tz: 2, lat: 54.68, lon: -25.32 }, { name: \"Blackpool\", tz: 0, lat: 53.83, lon: 3.05 }, { name: \"Bournemouth\", tz: 0, lat: 50.72, lon: 1.9 }, { name: \"Brighton\", tz: 0, lat: 50.83, lon: 0.13 }, { name: \"Cambridge\", tz: 0, lat: 52.22, lon: -0.13 }, { name: \"Coventry\", tz: 0, lat: 52.42, lon: 1.5 }, { name: \"Croydon\", tz: 0, lat: 51.38, lon: 0.1 }, { name: \"Eastbourne\", tz: 0, lat: 50.77, lon: -0.28 }, { name: \"Exeter\", tz: 0, lat: 50.72, lon: 3.52 }, { name: \"Grimsby\", tz: 0, lat: 53.58, lon: 0.08 }, { name: \"Guildford\", tz: 0, lat: 51.23, lon: 0.58 }, { name: \"Harlow\", tz: 0, lat: 51.78, lon: -0.13 }, { name: \"Harrogate\", tz: 0, lat: 54, lon: 1.55 }, { name: \"Hemel Hempstead\", tz: 0, lat: 51.77, lon: 0.47 }, { name: \"Hove\", tz: 0, lat: 50.82, lon: 0.17 }, { name: \"Leicester\", tz: 0, lat: 52.63, lon: 1.08 }, { name: \"Luton\", tz: 0, lat: 51.88, lon: 0.42 }, { name: \"Newcastle\", tz: 0, lat: 54.2, lon: 5.75 }, { name: \"Norwich\", tz: 0, lat: 52.63, lon: -1.3 }, { name: \"Nottingham\", tz: 0, lat: 52.97, lon: 1.17 }, { name: \"Oxford\", tz: 0, lat: 51.77, lon: 1.23 }, { name: \"Plymouth\", tz: 0, lat: 50.38, lon: 4.15 }, { name: \"Portsmouth\", tz: 0, lat: 50.8, lon: 1.08 }, { name: \"Ramsgate\", tz: 0, lat: 51.33, lon: -1.42 }, { name: \"Reading\", tz: 0, lat: 51.47, lon: 0.98 }, { name: \"Rochester\", tz: 0, lat: 51.4, lon: -0.5 }, { name: \"Saint Anne's\", tz: 0, lat: 53.75, lon: 3.03 }, { name: \"Solihull\", tz: 0, lat: 52.42, lon: 1.75 }, { name: \"Southend-on-SEA\", tz: 0, lat: 51.55, lon: -0.72 }, { name: \"Southport\", tz: 0, lat: 53.65, lon: 3.02 }, { name: \"Watford\", tz: 0, lat: 51.67, lon: 0.42 }, { name: \"Agen\", tz: 1, lat: 44.2, lon: -0.62 }, { name: \"Aix-en-Provence\", tz: 1, lat: 43.53, lon: -5.43 }, { name: \"Aix-les-Bains\", tz: 1, lat: 45.7, lon: -5.75 }, { name: \"Annecy\", tz: 1, lat: 45.9, lon: -6.12 }, { name: \"Antibes\", tz: 1, lat: 43.58, lon: -7.12 }, { name: \"Arcachon\", tz: 1, lat: 44.62, lon: 1.2 }, { name: \"Bayonne\", tz: 1, lat: 43.48, lon: 1.48 }, { name: \"Belfort\", tz: 1, lat: 47.63, lon: -6.87 }, { name: \"Benfeld\", tz: 1, lat: 48.37, lon: -7.6 }, { name: \"Besancon\", tz: 1, lat: 47.25, lon: -6.03 }, { name: \"Biarritz\", tz: 1, lat: 43.48, lon: 1.57 }, { name: \"Bordeuax\", tz: 1, lat: 44.83, lon: 0.57 }, { name: \"Boulay-Moselle\", tz: 1, lat: 49.18, lon: -6.5 }, { name: \"Boulogne-Sur-Mer\", tz: 1, lat: 50.72, lon: -1.62 }, { name: \"Brest, Fr.\", tz: 1, lat: 48.4, lon: 4.48 }, { name: \"Caen\", tz: 1, lat: 49.18, lon: 0.35 }, { name: \"Caluire et Cuire\", tz: 1, lat: 45.8, lon: -4.85 }, { name: \"Cannes\", tz: 1, lat: 43.55, lon: -7.02 }, { name: \"Carpentras\", tz: 1, lat: 44.05, lon: -5.05 }, { name: \"Cavaillon\", tz: 1, lat: 43.83, lon: -5.02 }, { name: \"Chalons-Sur-Marne\", tz: 1, lat: 48.95, lon: -4.37 }, { name: \"Chalons-Sur-Saone\", tz: 1, lat: 46.78, lon: -4.85 }, { name: \"Clermont-Ferrand\", tz: 1, lat: 45.78, lon: -3.08 }, { name: \"Colmar\", tz: 1, lat: 58.08, lon: -7.37 }, { name: \"Dijon\", tz: 1, lat: 47.32, lon: -5.02 }, { name: \"Evian-Les-Bains\", tz: 1, lat: 46.38, lon: -6.58 }, { name: \"Grasse\", tz: 1, lat: 43.67, lon: -6.92 }, { name: \"Grenoble\", tz: 1, lat: 45.17, lon: -5.72 }, { name: \"Haguenau\", tz: 1, lat: 48.82, lon: -7.78 }, { name: \"La Rochelle\", tz: 1, lat: 46.17, lon: 1.17 }, { name: \"La Seyne-Sur-Mer\", tz: 1, lat: 43.1, lon: -5.88 }, { name: \"Le Havre\", tz: 1, lat: 49.5, lon: -0.13 }, { name: \"Lille\", tz: 1, lat: 50.63, lon: -3.07 }, { name: \"Limoges\", tz: 1, lat: 45.83, lon: -1.25 }, { name: \"Lyon\", tz: 1, lat: 45.75, lon: -4.85 }, { name: \"M\\xE2con, Fr.\", tz: 1, lat: 46.3, lon: -4.83 }, { name: \"Menton\", tz: 1, lat: 43.78, lon: -7.5 }, { name: \"Metz\", tz: 1, lat: 49.13, lon: -6.17 }, { name: \"Montpellier\", tz: 1, lat: 43.6, lon: -3.88 }, { name: \"M\\xFClhausen im T\\xE4le\", tz: 1, lat: 48.57, lon: -9.65 }, { name: \"Nancy\", tz: 1, lat: 48.68, lon: -6.2 }, { name: \"N\\xEEmes\", tz: 1, lat: 43.83, lon: -4.35 }, { name: \"Nizza Monferrato\", tz: 1, lat: 44.77, lon: -8.35 }, { name: \"Orl\\xE9ans, Fr.\", tz: 1, lat: 47.92, lon: -1.9 }, { name: \"Perpignan\", tz: 1, lat: 42.68, lon: -2.87 }, { name: \"Reims\", tz: 1, lat: 49.25, lon: -4.02 }, { name: \"Rouen\", tz: 1, lat: 49.43, lon: -1.08 }, { name: \"Saint-Louis, Fr.\", tz: 1, lat: 47.58, lon: -7.57 }, { name: \"Sens\", tz: 1, lat: 48.2, lon: -3.28 }, { name: \"Toulouse\", tz: 1, lat: 43.6, lon: -1.43 }, { name: \"Tours\", tz: 1, lat: 47.38, lon: -0.68 }, { name: \"Troyes\", tz: 1, lat: 48.3, lon: -4.08 }, { name: \"Versailles, Fr.\", tz: 1, lat: 48.8, lon: -2.13 }, { name: \"Vittel\", tz: 1, lat: 48.2, lon: -5.95 }, { name: \"Wasselonne\", tz: 1, lat: 48.63, lon: -7.45 }, { name: \"Rothenburg ob der Tauber\", tz: 1, lat: 49.38, lon: -10.17 }, { name: \"Rothenburg\", tz: 1, lat: 51.33, lon: -14.97 }, { name: \"Rothenburg an der Oder\", tz: 1, lat: 52.02, lon: -15.42 }, { name: \"Alexandria, Egypt\", tz: 2, lat: 31.18, lon: -29.93 }, { name: \"Anchorage, AK\", tz: -9, lat: 61.22, lon: 149.88 }, { name: \"Ann Arbor, MI\", tz: -5, lat: 42.3, lon: 83.75 }, { name: \"Augusta, GA\", tz: -5, lat: 33.48, lon: 81.93 }, { name: \"Baghdad, Iraq\", tz: 3, lat: 33.35, lon: -44.42 }, { name: \"Birmingham, AL\", tz: -6, lat: 33.52, lon: 86.82 }, { name: \"Bombay, India (GMT+5)\", tz: 5, lat: 18.95, lon: -72.83 }, { name: \"Bombay, India (GMT+6)\", tz: 6, lat: 18.95, lon: -72.83 }, { name: \"Casablanca, Marokko\", tz: 0, lat: 33.65, lon: 7.58 }, { name: \"Djakarta, Indonesia\", tz: 7, lat: -6.17, lon: -106.8 }, { name: \"Desmoines, IA\", tz: -6, lat: 41.58, lon: 93.62 }, { name: \"Dubayy\", tz: 4, lat: 25.3, lon: -55.3 }, { name: \"Fort Lauderdale, FL\", tz: -5, lat: 26.12, lon: 80.13 }, { name: \"Jacksonsville, FL\", tz: -5, lat: 30.33, lon: 81.67 }, { name: \"Karachi\", tz: 5, lat: 24.87, lon: -67.05 }, { name: \"Kuala Lumpur, Malaysia\", tz: 8, lat: 3.15, lon: -101.72 }, { name: \"Kuwait, Kuwait\", tz: 3, lat: 29.5, lon: -47.75 }, { name: \"Lagos, Nigeria\", tz: 1, lat: 6.45, lon: -3.4 }, { name: \"Las Vegas, NV\", tz: -8, lat: 36.18, lon: 115.13 }, { name: \"Mauritius\", tz: 4, lat: -20.28, lon: -57.55 }, { name: \"Panama, Panama\", tz: -5, lat: 8.97, lon: 79.52 }, { name: \"Peoria, IL\", tz: -6, lat: 40.7, lon: 89.6 }, { name: \"Raleigh, NC\", tz: -5, lat: 35.78, lon: 78.65 }, { name: \"Redmond, WA\", tz: -8, lat: 47.4, lon: 122.07 }, { name: \"Sacramento, CA\", tz: -8, lat: 38.58, lon: 121.5 }, { name: \"Tenerife, Spain\", tz: 1, lat: 28.03, lon: -16.57 }, { name: \"Durres, Albania\", tz: 1, lat: 41.32, lon: -19.43 }, { name: \"Lushnje, Albania\", tz: 1, lat: 40.93, lon: -19.7 }, { name: \"Lugoj, Romania\", tz: 2, lat: 45.68, lon: -21.9 }, { name: \"Shkoder, Albania\", tz: 1, lat: 42.08, lon: -19.5 }, { name: \"Addis Abeba\", tz: 3, lat: 9.15, lon: -38.77 }, { name: \"Aden, Jemen\", tz: 3, lat: 12.78, lon: -45.03 }, { name: \"Boca Raton, FL\", tz: -5, lat: 26.35, lon: 80.08 }, { name: \"Buchara\", tz: 5, lat: 39.77, lon: -64.42 }, { name: \"Gondar, Ethiopia\", tz: 3, lat: 12.6, lon: -37.48 }, { name: \"Jekaterinburg\", tz: 5, lat: 56.83, lon: -60.5 }, { name: \"Kaifeng, China\", tz: 8, lat: 34.78, lon: -114.43 }, { name: \"Krasnojarsk\", tz: 7, lat: 56, lon: -92.98 }, { name: \"Mbale, Uganda\", tz: 3, lat: 1.07, lon: -34.18 }, { name: \"New Bedfort, MA\", tz: -5, lat: 41.63, lon: 70.93 }, { name: \"Nicosia, Cyprus\", tz: 2, lat: 34.78, lon: -33.48 }, { name: \"Nowgorod\", tz: 3, lat: 58.58, lon: -31.23 }, { name: \"Omsk\", tz: 6, lat: 54.95, lon: -73.33 }, { name: \"Plano, TX\", tz: -6, lat: 33.03, lon: 96.7 }, { name: \"Perm\", tz: 5, lat: 57.92, lon: -56.05 }, { name: \"Sana, Jemen\", tz: 3, lat: 15.18, lon: -44.02 }, { name: \"Skokie, IL\", tz: -6, lat: 42.03, lon: 87.77 }, { name: \"Woronesch, Russia\", tz: 3, lat: 51.7, lon: -39.25 }, { name: \"Allentown, PA\", tz: -5, lat: 40.6, lon: 75.48 }, { name: \"Capetown, South Africa\", tz: 2, lat: -33.9, lon: -18.37 }, { name: \"Chapel Hill, NC\", tz: -5, lat: 35.9, lon: 79.07 }, { name: \"Ft. Walton Beach, FL\", tz: -5, lat: 30.4, lon: 86.52 }, { name: \"Greenwich Meridian\", tz: 0, lat: 0, lon: 0 }, { name: \"Monsey, NY\", tz: -5, lat: 41.12, lon: 74.07 }, { name: \"Ramat Gan\", tz: 2, lat: 32.07, lon: -34.82 }, { name: \"Lugano\", tz: 1, lat: 46.02, lon: -8.97 }, { name: \"Baden, Austria\", tz: 1, lat: 48, lon: -16.23 }, { name: \"Gadsten, AL\", tz: -6, lat: 34.02, lon: 86.02 }, { name: \"Huntsville, AL\", tz: -6, lat: 34.73, lon: 86.58 }, { name: \"Montgomery, AL\", tz: -6, lat: 32.37, lon: 86.32 }, { name: \"Juneau, AK\", tz: -10, lat: 58.3, lon: 134.42 }, { name: \"Nome, AK\", tz: -10, lat: 64.5, lon: 165.42 }, { name: \"Algiers\", tz: 1, lat: 36.48, lon: -3 }, { name: \"Luanda\", tz: 1, lat: -8.5, lon: -13.15 }, { name: \"Yuma, Arizona\", tz: -7, lat: 32.72, lon: 114.62 }, { name: \"Ft Smith, Arkansas\", tz: -6, lat: 35.37, lon: 94.43 }, { name: \"Perth\", tz: 8, lat: -31.83, lon: -116.17 }, { name: \"Porto Novo\", tz: 1, lat: 6.3, lon: -2.45 }, { name: \"Ouagadougou\", tz: 0, lat: 12.2, lon: 1.4 }, { name: \"Bujumbura\", tz: 2, lat: -3.22, lon: -29.18 }, { name: \"Bakersfield, CA\", tz: -8, lat: 35.37, lon: 119.02 }, { name: \"Berkeley, CA\", tz: -8, lat: 37.87, lon: 122.27 }, { name: \"Eureka, CA\", tz: -8, lat: 40.78, lon: 124.17 }, { name: \"Fresno, CA\", tz: -8, lat: 36.73, lon: 119.78 }, { name: \"Long Beach, CA\", tz: -8, lat: 33.77, lon: 118.18 }, { name: \"Oakland, CA\", tz: -8, lat: 37.78, lon: 122.27 }, { name: \"Pasadena, CA\", tz: -8, lat: 34.15, lon: 118.15 }, { name: \"San Bernardino, CA\", tz: -8, lat: 34.12, lon: 117.47 }, { name: \"San Jose, CA\", tz: -8, lat: 37.33, lon: 121.88 }, { name: \"Santa Barbara, CA\", tz: -8, lat: 34.42, lon: 119.7 }, { name: \"Santa Cruz, CA\", tz: -8, lat: 36.97, lon: 122.02 }, { name: \"Stockton, CA\", tz: -8, lat: 37.97, lon: 121.28 }, { name: \"Yaounde\", tz: 1, lat: 3.52, lon: -11.32 }, { name: \"Calgary\", tz: -7, lat: 51.05, lon: 114.05 }, { name: \"Edmondton\", tz: -7, lat: 53.55, lon: 113.48 }, { name: \"Lethbridge\", tz: -7, lat: 49.7, lon: 112.83 }, { name: \"Prince Rupert, British Columbia\", tz: -8, lat: 54.32, lon: 130.32 }, { name: \"Victoria, British Columbia\", tz: -8, lat: 48.43, lon: 123.37 }, { name: \"Brandon\", tz: -6, lat: 49.85, lon: 99.95 }, { name: \"Churchill\", tz: -6, lat: 58.75, lon: 94.17 }, { name: \"Fredericton\", tz: -4, lat: 45.97, lon: 66.65 }, { name: \"Moncton\", tz: -4, lat: 46.08, lon: 64.78 }, { name: \"St John\", tz: -4, lat: 45.27, lon: 66.07 }, { name: \"St John's\", tz: -4, lat: 47.57, lon: 52.72 }, { name: \"Yellowknife\", tz: -7, lat: 62.45, lon: 114.38 }, { name: \"Sydney, Canada\", tz: -4, lat: 46.13, lon: 60.2 }, { name: \"Belleville\", tz: -5, lat: 44.17, lon: 77.38 }, { name: \"Brantford\", tz: -5, lat: 43.15, lon: 80.27 }, { name: \"Burlington\", tz: -5, lat: 43.33, lon: 79.8 }, { name: \"Guelph\", tz: -5, lat: 43.55, lon: 80.25 }, { name: \"Hamilton\", tz: -5, lat: 43.25, lon: 79.88 }, { name: \"Kingston\", tz: -5, lat: 44.23, lon: 76.48 }, { name: \"Kitchener\", tz: -5, lat: 43.45, lon: 80.48 }, { name: \"London, Ontario\", tz: -5, lat: 42.98, lon: 81.23 }, { name: \"Mississauga\", tz: -5, lat: 43.55, lon: 79.57 }, { name: \"North Bay\", tz: -5, lat: 46.32, lon: 79.47 }, { name: \"Oshawa\", tz: -5, lat: 43.9, lon: 78.87 }, { name: \"Peterborough\", tz: -5, lat: 44.32, lon: 78.32 }, { name: \"St Catherines\", tz: -5, lat: 43.17, lon: 79.25 }, { name: \"Sault St Marie\", tz: -5, lat: 46.5, lon: 84.33 }, { name: \"Sudbury\", tz: -5, lat: 46.48, lon: 80.98 }, { name: \"Thunder Bay\", tz: -5, lat: 48.38, lon: 89.25 }, { name: \"Windsor\", tz: -5, lat: 42.32, lon: 83.03 }, { name: \"Hull\", tz: -5, lat: 45.43, lon: 75.72 }, { name: \"La Salle\", tz: -5, lat: 45.43, lon: 73.67 }, { name: \"Laval\", tz: -5, lat: 45.22, lon: 73.75 }, { name: \"Sherbrooke\", tz: -5, lat: 45.4, lon: 71.85 }, { name: \"Trois Riveres\", tz: -5, lat: 46.35, lon: 72.55 }, { name: \"Dawson\", tz: -8, lat: 64.07, lon: 139.43 }, { name: \"Whitehorse\", tz: -8, lat: 60.72, lon: 135.05 }, { name: \"Moose Jaw\", tz: -6, lat: 50.4, lon: 105.53 }, { name: \"Regina\", tz: -6, lat: 50.45, lon: 104.62 }, { name: \"Saskatoon\", tz: -6, lat: 52.13, lon: 106.67 }, { name: \"Bangui\", tz: 1, lat: 4.22, lon: -18.37 }, { name: \"N'Djamena\", tz: 1, lat: 12.1, lon: -14.58 }, { name: \"Grand Junction\", tz: -7, lat: 39.07, lon: 108.57 }, { name: \"Pueblo\", tz: -7, lat: 38.25, lon: 104.62 }, { name: \"Brazzaville\", tz: 1, lat: -4.13, lon: -15.13 }, { name: \"Bridgeport\", tz: -5, lat: 41.18, lon: 73.18 }, { name: \"Abidjan\", tz: 0, lat: 5.18, lon: 4.02 }, { name: \"Wilmington, Delaware\", tz: -5, lat: 39.75, lon: 75.55 }, { name: \"Quito\", tz: -5, lat: -0.28, lon: 78.52 }, { name: \"Daytona Beach, FL\", tz: -5, lat: 29.22, lon: 81.02 }, { name: \"Gainesville, FL\", tz: -5, lat: 29.65, lon: 82.32 }, { name: \"Key West, FL\", tz: -5, lat: 24.57, lon: 81.8 }, { name: \"Pensacola, FL\", tz: -5, lat: 30.42, lon: 87.22 }, { name: \"St. Petersburg, FL\", tz: -5, lat: 27.78, lon: 82.63 }, { name: \"Sarasota, FL\", tz: -5, lat: 27.33, lon: 82.55 }, { name: \"Tallahassee, FL\", tz: -5, lat: 30.45, lon: 84.45 }, { name: \"W. Palm Beach, FL\", tz: -5, lat: 26.72, lon: 80.05 }, { name: \"Libreville\", tz: 1, lat: 0.23, lon: -9.25 }, { name: \"Banjul\", tz: 0, lat: 13.28, lon: 16.38 }, { name: \"Augusta, Georgia\", tz: -5, lat: 33.47, lon: 81.97 }, { name: \"Columbus, Georgia\", tz: -5, lat: 32.47, lon: 84.98 }, { name: \"Macon, Georgia\", tz: -5, lat: 32.83, lon: 83.63 }, { name: \"Savannah, Georgia\", tz: -5, lat: 32.07, lon: 81.1 }, { name: \"Accra\", tz: 0, lat: 5.33, lon: 0.15 }, { name: \"Conakry\", tz: 0, lat: 9.32, lon: -13.17 }, { name: \"Hilo\", tz: 10, lat: 19.73, lon: 155.08 }, { name: \"Lihue\", tz: 10, lat: 21.98, lon: 159.37 }, { name: \"Victoria, Hongkong\", tz: 8, lat: 22.17, lon: -114.3 }, { name: \"Reykjavik\", tz: 0, lat: 64.15, lon: 21.65 }, { name: \"Boise, Idaho\", tz: -7, lat: 43.62, lon: 116.2 }, { name: \"Pocatello, Idaho\", tz: -7, lat: 42.87, lon: 112.45 }, { name: \"Bloomington, IL\", tz: -6, lat: 40.48, lon: 89 }, { name: \"Champaign, IL\", tz: -6, lat: 40.12, lon: 88.25 }, { name: \"Decatur, IL\", tz: -6, lat: 39.85, lon: 88.95 }, { name: \"Moline, IL\", tz: -6, lat: 41.52, lon: 90.52 }, { name: \"Rockford, IL\", tz: -6, lat: 42.27, lon: 89.1 }, { name: \"Springfield, IL\", tz: -6, lat: 39.78, lon: 89.65 }, { name: \"Urbana, IL\", tz: -6, lat: 40.12, lon: 88.2 }, { name: \"Evansville, Indiana\", tz: -6, lat: 37.97, lon: 87.57 }, { name: \"Ft. Wayne, Indiana\", tz: -6, lat: 41.07, lon: 85.13 }, { name: \"Gary, Indiana\", tz: -6, lat: 41.62, lon: 87.33 }, { name: \"Lafayette, Indiana\", tz: -6, lat: 40.42, lon: 86.9 }, { name: \"Muncie, Indiana\", tz: -6, lat: 40.18, lon: 85.38 }, { name: \"South Bend, Indiana\", tz: -6, lat: 41.68, lon: 86.25 }, { name: \"Terre Houte, Indiana\", tz: -6, lat: 39.47, lon: 87.4 }, { name: \"Cedar Rapids, IA\", tz: -6, lat: 41.97, lon: 91.67 }, { name: \"Davenport, IA\", tz: -6, lat: 41.52, lon: 90.58 }, { name: \"Dubuque, IA\", tz: -6, lat: 42.5, lon: 90.67 }, { name: \"Iowa City, IA\", tz: -6, lat: 41.67, lon: 91.53 }, { name: \"Sioux City, IA\", tz: -6, lat: 42.5, lon: 96.42 }, { name: \"Waterloo, IA\", tz: -6, lat: 42.5, lon: 92.33 }, { name: \"Dodge City (Kans., US)\", tz: -6, lat: 37.75, lon: 100.02 }, { name: \"Salina (Kans., US)\", tz: -6, lat: 38.85, lon: 97.62 }, { name: \"Wichita (Kans., US)\", tz: -6, lat: 37.7, lon: 97.33 }, { name: \"Ashland, KY\", tz: -5, lat: 38.48, lon: 82.63 }, { name: \"Bowling Green, KY\", tz: -5, lat: 37, lon: 86.45 }, { name: \"Lexington, KY\", tz: -5, lat: 38.05, lon: 84.5 }, { name: \"Paducah, KY\", tz: -5, lat: 37.07, lon: 88.6 }, { name: \"Maseru\", tz: 2, lat: -29.18, lon: -27.28 }, { name: \"Monrovia\", tz: 0, lat: 6.2, lon: 10.47 }, { name: \"Tripoli\", tz: 1, lat: 32.83, lon: -13.22 }, { name: \"Baton Rouge, Louisiana\", tz: -6, lat: 30.45, lon: 91.18 }, { name: \"Shreveport, Louisiana\", tz: -6, lat: 32.52, lon: 93.75 }, { name: \"Antananarivo\", tz: 3, lat: -18.5, lon: -47.3 }, { name: \"Augusta, Maine\", tz: -5, lat: 44.32, lon: 69.75 }, { name: \"Bangor, Maine\", tz: -5, lat: 44.8, lon: 68.75 }, { name: \"Lilongwe\", tz: 2, lat: -13.58, lon: -33.48 }, { name: \"Bamako\", tz: 0, lat: 12.4, lon: 7.58 }, { name: \"Brockton, MA\", tz: -5, lat: 42.08, lon: 71.02 }, { name: \"Cambridge, MA\", tz: -5, lat: 42.37, lon: 71.1 }, { name: \"Fall River, MA\", tz: -5, lat: 41.7, lon: 71.15 }, { name: \"Holyoke, MA\", tz: -5, lat: 42.2, lon: 72.62 }, { name: \"Lawrence, MA\", tz: -5, lat: 42.7, lon: 71.15 }, { name: \"Lowell, MA\", tz: -5, lat: 42.63, lon: 71.32 }, { name: \"Pittsfield, MA\", tz: -5, lat: 42.45, lon: 73.25 }, { name: \"Somerville, MA\", tz: -5, lat: 42.38, lon: 71.1 }, { name: \"Worcester, MA\", tz: -5, lat: 42.27, lon: 71.8 }, { name: \"Nouakchott\", tz: 0, lat: 18.08, lon: 15.58 }, { name: \"Battle Creek, MI\", tz: -5, lat: 42.32, lon: 85.18 }, { name: \"Bay City, MI\", tz: -5, lat: 43.6, lon: 83.88 }, { name: \"Flint, MI\", tz: -5, lat: 43.02, lon: 83.7 }, { name: \"Grand Rapids, MI\", tz: -5, lat: 42.97, lon: 85.67 }, { name: \"Jackson, MI\", tz: -5, lat: 42.25, lon: 84.4 }, { name: \"Kalamazoo, MI\", tz: -5, lat: 42.28, lon: 85.58 }, { name: \"Lansing, MI\", tz: -5, lat: 42.73, lon: 84.55 }, { name: \"Saginaw, MI\", tz: -5, lat: 43.43, lon: 83.93 }, { name: \"Duluth, Minnesota\", tz: -6, lat: 46.78, lon: 92.1 }, { name: \"Rochester, Minnesota\", tz: -6, lat: 44.02, lon: 92.47 }, { name: \"St. Cloud, Minnesota\", tz: -6, lat: 45.57, lon: 94.17 }, { name: \"St. Paul, Minnesota\", tz: -6, lat: 44.95, lon: 93.1 }, { name: \"Biloxi, Mississippi\", tz: -6, lat: 30.4, lon: 88.88 }, { name: \"Gulfport, Mississippi\", tz: -6, lat: 30.37, lon: 89.1 }, { name: \"Jackson, Mississippi\", tz: -6, lat: 32.3, lon: 90.18 }, { name: \"Natchez, Mississippi\", tz: -6, lat: 31.57, lon: 91.38 }, { name: \"Columbia, Missouri\", tz: -6, lat: 38.95, lon: 92.33 }, { name: \"Joplin, Missouri\", tz: -6, lat: 37.07, lon: 94.5 }, { name: \"Kansas City, Missouri\", tz: -6, lat: 39.07, lon: 94.58 }, { name: \"St. Joseph, Missouri\", tz: -6, lat: 39.77, lon: 94.85 }, { name: \"St. Louis, Missouri\", tz: -6, lat: 38.63, lon: 90.2 }, { name: \"Springfield, Missouri\", tz: -6, lat: 37.22, lon: 93.3 }, { name: \"Billings, Montana\", tz: -7, lat: 45.78, lon: 108.5 }, { name: \"Butte, Montana\", tz: -7, lat: 46.02, lon: 112.53 }, { name: \"Great Falls, Montana\", tz: -7, lat: 47.5, lon: 111.3 }, { name: \"Helena, Montana\", tz: -7, lat: 46.6, lon: 112.03 }, { name: \"Rabat\", tz: 1, lat: 34.02, lon: 6.52 }, { name: \"Maputo\", tz: 2, lat: -25.58, lon: -32.35 }, { name: \"Windhoek\", tz: 2, lat: -22.33, lon: -17.07 }, { name: \"Lincoln, Nebraska\", tz: -6, lat: 40.82, lon: 96.7 }, { name: \"Carson City, NV\", tz: -8, lat: 39.17, lon: 119.77 }, { name: \"Reno, NV\", tz: -8, lat: 39.52, lon: 119.82 }, { name: \"Concord, New Hampshire\", tz: -5, lat: 43.2, lon: 71.52 }, { name: \"Manchester, New Hampshire\", tz: -5, lat: 42.98, lon: 71.47 }, { name: \"Portsmouth, New Hampshire\", tz: -5, lat: 43.07, lon: 70.75 }, { name: \"Atlantic City, NJ\", tz: -5, lat: 39.37, lon: 74.43 }, { name: \"Camdon, NJ\", tz: -5, lat: 39.95, lon: 75.1 }, { name: \"Jersey City, NJ\", tz: -5, lat: 40.73, lon: 74.07 }, { name: \"Paterson, NJ\", tz: -5, lat: 40.9, lon: 74.15 }, { name: \"Trenton, NJ\", tz: -5, lat: 40.22, lon: 74.8 }, { name: \"Albuquerque, NM\", tz: -7, lat: 35.07, lon: 106.65 }, { name: \"Gallup, NM\", tz: -7, lat: 35.52, lon: 108.73 }, { name: \"Santa Fe, NM\", tz: -7, lat: 35.67, lon: 105.93 }, { name: \"Albany, NY\", tz: -5, lat: 42.65, lon: 73.75 }, { name: \"Binghamton, NY\", tz: -5, lat: 42.1, lon: 86.82 }, { name: \"Buffalo, NY\", tz: -5, lat: 42.88, lon: 78.87 }, { name: \"Central Islip, NY\", tz: -5, lat: 40.78, lon: 73.2 }, { name: \"Niagra Falls, NY\", tz: -5, lat: 43.1, lon: 79.05 }, { name: \"Rochester, NY\", tz: -5, lat: 43.17, lon: 77.6 }, { name: \"Schenectady, NY\", tz: -5, lat: 42.82, lon: 73.93 }, { name: \"Syracuse, NY\", tz: -5, lat: 43.05, lon: 76.15 }, { name: \"Troy, NY\", tz: -5, lat: 42.73, lon: 73.68 }, { name: \"Utica, NY\", tz: -5, lat: 43.1, lon: 75.23 }, { name: \"White Plains, NY\", tz: -5, lat: 41.03, lon: 73.75 }, { name: \"Yonkers, NY\", tz: -5, lat: 40.93, lon: 73.9 }, { name: \"Auckland\", tz: 12, lat: -36.88, lon: -174.75 }, { name: \"Niamey\", tz: 1, lat: 13.32, lon: -2.03 }, { name: \"Lagos\", tz: 1, lat: 6.27, lon: -3.28 }, { name: \"Ashlville, NC\", tz: -5, lat: 35.6, lon: 82.55 }, { name: \"Durham, NC\", tz: -5, lat: 36, lon: 78.92 }, { name: \"Greensboro, NC\", tz: -5, lat: 36.07, lon: 79.78 }, { name: \"Wilmington, NC\", tz: -5, lat: 34.23, lon: 77.93 }, { name: \"Winston Salem, NC\", tz: -5, lat: 36.1, lon: 80.25 }, { name: \"Bismark, N. Dakota\", tz: -7, lat: 46.8, lon: 100.78 }, { name: \"Fargo, N. Dakota\", tz: -7, lat: 46.88, lon: 96.78 }, { name: \"Minot, N. Dakota\", tz: -7, lat: 48.23, lon: 101.3 }, { name: \"Akron, OH\", tz: -5, lat: 41.08, lon: 81.52 }, { name: \"Dayton, OH\", tz: -5, lat: 39.77, lon: 84.2 }, { name: \"Hamilton, OH\", tz: -5, lat: 39.4, lon: 84.57 }, { name: \"Lima, OH\", tz: -5, lat: 40.75, lon: 84.1 }, { name: \"Lorain, OH\", tz: -5, lat: 41.47, lon: 82.18 }, { name: \"Springfield, OH\", tz: -5, lat: 39.95, lon: 83.8 }, { name: \"Stuebenville, OH\", tz: -5, lat: 40.37, lon: 80.62 }, { name: \"Toledo, OH\", tz: -5, lat: 41.65, lon: 83.55 }, { name: \"Youngstown, OH\", tz: -5, lat: 41.1, lon: 80.65 }, { name: \"Zanesville, OH\", tz: -5, lat: 39.93, lon: 82.52 }, { name: \"Enid, Oklahoma\", tz: -6, lat: 36.4, lon: 97.88 }, { name: \"Oklahoma City\", tz: -6, lat: 35.47, lon: 97.52 }, { name: \"Tulsa, Oklahoma\", tz: -6, lat: 36.15, lon: 96 }, { name: \"Eugene (Oreg, US)\", tz: -8, lat: 44.05, lon: 123.1 }, { name: \"Salem (Oreg, US)\", tz: -8, lat: 44.93, lon: 123.03 }, { name: \"Altonna, Pennsylvania\", tz: -5, lat: 40.52, lon: 78.38 }, { name: \"Bethlehem, Pennsylvania\", tz: -5, lat: 40.6, lon: 75.38 }, { name: \"Erie, Pennsylvania\", tz: -5, lat: 42.12, lon: 80.08 }, { name: \"Harrisburg, Pennsylvania\", tz: -5, lat: 40.25, lon: 76.88 }, { name: \"Johnstown, Pennsylvania\", tz: -5, lat: 40.33, lon: 78.92 }, { name: \"Lancaster, Pennsylvania\", tz: -5, lat: 40.03, lon: 76.3 }, { name: \"Reading, Pennsylvania\", tz: -5, lat: 40.33, lon: 75.93 }, { name: \"Scranton, Pennsylvania\", tz: -5, lat: 41.42, lon: 75.67 }, { name: \"WilkesEBarre, Pennsylvania\", tz: -5, lat: 41.25, lon: 75.88 }, { name: \"York, Pennsylvania\", tz: -5, lat: 39.97, lon: 76.73 }, { name: \"Manila\", tz: 8, lat: 14.62, lon: -121 }, { name: \"Kigali\", tz: 2, lat: -1.57, lon: -3.03 }, { name: \"Dakar\", tz: 0, lat: 14.38, lon: 17.27 }, { name: \"Mogadishu\", tz: 3, lat: 2, lon: -45.22 }, { name: \"Columbia, SC\", tz: -5, lat: 34, lon: 81.03 }, { name: \"Greenville, SC\", tz: -5, lat: 34.85, lon: 82.4 }, { name: \"Spartanburg, SC\", tz: -5, lat: 34.95, lon: 81.93 }, { name: \"Pierre, South Dakota\", tz: -6, lat: 44.37, lon: 100.35 }, { name: \"Rapid City, South Dakota\", tz: -6, lat: 44.08, lon: 103.22 }, { name: \"Sioux Falls, South Dakota\", tz: -6, lat: 43.55, lon: 96.73 }, { name: \"Khartoum\", tz: 2, lat: 15.33, lon: -32.22 }, { name: \"Daressalam\", tz: 3, lat: -6.52, lon: -39.18 }, { name: \"Chattanooga (Tenn., US)\", tz: -6, lat: 35.05, lon: 85.32 }, { name: \"Knoxville (Tenn., US)\", tz: -6, lat: 35.97, lon: 83.92 }, { name: \"Abilene, TX\", tz: -6, lat: 32.45, lon: 99.73 }, { name: \"Amarillo, TX\", tz: -6, lat: 35.18, lon: 101.83 }, { name: \"Austin, TX\", tz: -6, lat: 30.27, lon: 97.75 }, { name: \"Beaumont, TX\", tz: -6, lat: 30.08, lon: 94.1 }, { name: \"Brownsville, TX\", tz: -6, lat: 25.9, lon: 97.5 }, { name: \"Corpus Christi, TX\", tz: -6, lat: 27.8, lon: 97.4 }, { name: \"El Paso, TX\", tz: -6, lat: 31.77, lon: 106.48 }, { name: \"Ft Worth, TX\", tz: -6, lat: 32.75, lon: 97.33 }, { name: \"Galveston, TX\", tz: -6, lat: 29.3, lon: 94.8 }, { name: \"Laredo, TX\", tz: -6, lat: 27.5, lon: 99.52 }, { name: \"Lubbock, TX\", tz: -6, lat: 33.58, lon: 101.85 }, { name: \"Marshall, TX\", tz: -6, lat: 32.55, lon: 94.38 }, { name: \"Port Arthur, TX\", tz: -6, lat: 29.88, lon: 93.93 }, { name: \"San Angelo, TX\", tz: -6, lat: 31.47, lon: 100.43 }, { name: \"Texarkana, TX\", tz: -6, lat: 33.43, lon: 94.05 }, { name: \"Waco, TX\", tz: -6, lat: 31.55, lon: 97.13 }, { name: \"Lhasa\", tz: 8, lat: 29.68, lon: -92.2 }, { name: \"Lome\", tz: 0, lat: 6.1, lon: -1.2 }, { name: \"Tunis\", tz: 1, lat: 36.48, lon: -10.13 }, { name: \"Kampala\", tz: 3, lat: 0.2, lon: -32.35 }, { name: \"Logan, Utah\", tz: -7, lat: 41.73, lon: 111.83 }, { name: \"Ogden, Utah\", tz: -7, lat: 41.23, lon: 111.97 }, { name: \"Provo, Utah\", tz: -7, lat: 40.23, lon: 111.65 }, { name: \"Brattleboro, VT\", tz: -5, lat: 42.85, lon: 72.57 }, { name: \"Montpelier, VT\", tz: -5, lat: 44.27, lon: 72.55 }, { name: \"Hanoi\", tz: 7, lat: 21.07, lon: -105.83 }, { name: \"Norfolk, Virginia\", tz: -5, lat: 36.85, lon: 76.28 }, { name: \"Portsmouth, Virginia\", tz: -5, lat: 36.83, lon: 76.28 }, { name: \"Richmond, Virginia\", tz: -5, lat: 37.53, lon: 77.43 }, { name: \"Roanooke, Virginia\", tz: -5, lat: 37.25, lon: 79.93 }, { name: \"Bellingham, WA\", tz: -8, lat: 48.77, lon: 122.48 }, { name: \"Spokane, WA\", tz: -8, lat: 47.67, lon: 117.43 }, { name: \"Tacoma, WA\", tz: -8, lat: 47.25, lon: 122.43 }, { name: \"Walla Walla, WA\", tz: -8, lat: 46.07, lon: 118.33 }, { name: \"Yakima, WA\", tz: -8, lat: 46.6, lon: 120.52 }, { name: \"Laayoune\", tz: 1, lat: 27.1, lon: 13.12 }, { name: \"Charleston, West Virginia\", tz: -5, lat: 38.35, lon: 81.63 }, { name: \"Huntington, West Virginia\", tz: -5, lat: 38.42, lon: 82.45 }, { name: \"Wheeling, West Virginia\", tz: -5, lat: 40.07, lon: 80.72 }, { name: \"Eau Claire (Wis., US)\", tz: -6, lat: 44.82, lon: 91.5 }, { name: \"Green Bay (Wis., US)\", tz: -6, lat: 44.52, lon: 88.02 }, { name: \"Kenosha (Wis., US)\", tz: -6, lat: 42.6, lon: 87.83 }, { name: \"Racine (Wis., US)\", tz: -6, lat: 42.73, lon: 87.78 }, { name: \"Sheboygan (Wis., US)\", tz: -6, lat: 43.75, lon: 87.72 }, { name: \"Superior (Wis., US)\", tz: -6, lat: 46.72, lon: 92.1 }, { name: \"Cheyenne, Wyoming\", tz: -7, lat: 41.13, lon: 104.82 }, { name: \"Sheridan, Wyoming\", tz: -7, lat: 44.8, lon: 106.95 }, { name: \"Lusaka\", tz: 2, lat: -15.28, lon: -28.17 }, { name: \"Kinshasa\", tz: 1, lat: -4.18, lon: -15.18 }, { name: \"Harare\", tz: 2, lat: -17.5, lon: -31.03 }, { name: \"Abu Dhabi\", tz: 4, lat: 24.33, lon: -54.57 }, { name: \"Acapulco\", tz: -6, lat: 17.08, lon: 100.13 }, { name: \"Agana, Guam\", tz: 10, lat: 13.48, lon: -144.73 }, { name: \"Al-Manamah, Bharain\", tz: 3, lat: 26.22, lon: -50.55 }, { name: \"Andorra, Spain\", tz: 1, lat: 40.97, lon: 0.47 }, { name: \"Asmara, Eritrea\", tz: 3, lat: 15.02, lon: -38.48 }, { name: \"Baku, Aserbaidschan\", tz: 4, lat: 40.35, lon: -49.82 }, { name: \"Bergen, The Netherlands\", tz: 1, lat: 51.62, lon: -6.07 }, { name: \"Bischkek, Kirgistan\", tz: 6, lat: 43.02, lon: -74.97 }, { name: \"Bridgetown (Barbados)\", tz: -4, lat: 13.08, lon: 59.47 }, { name: \"Brno\", tz: 1, lat: 49.2, lon: -16.58 }, { name: \"Broken Hill, Australia\", tz: 10, lat: -31.87, lon: -141.17 }, { name: \"Bukavu, Zaire\", tz: 2, lat: -2.55, lon: -28.65 }, { name: \"Kanarische Inseln\", tz: 0, lat: 28.47, lon: 15.05 }, { name: \"Cayenne (French - Guyana)\", tz: -3, lat: 4.78, lon: -52.47 }, { name: \"Cebu, Phillipines\", tz: 8, lat: 10.18, lon: -123.75 }, { name: \"Cordoba, Spain\", tz: 1, lat: 57.87, lon: 4.83 }, { name: \"Cordoba, Argentinia\", tz: -3, lat: -31.15, lon: 64.25 }, { name: \"Cordova, Alaska, U.S.A.\", tz: -9, lat: 60.55, lon: 145.73 }, { name: \"Dalian, China\", tz: 8, lat: 38.9, lon: -121.65 }, { name: \"Dakar, Senegal\", tz: 0, lat: 14.78, lon: 16.95 }, { name: \"Dhaka, Bangladesh\", tz: 6, lat: 23.48, lon: -90.4 }, { name: \"Durban, South Africa\", tz: 2, lat: -29.87, lon: -30.9 }, { name: \"Dushanbe, Tadschikistan\", tz: 6, lat: 38.6, lon: -69.1 }, { name: \"Er Riad\", tz: 3, lat: 24.65, lon: -46.7 }, { name: \"Firenze, Italy\", tz: 1, lat: 43.77, lon: -11.23 }, { name: \"Freetown, Sierra Leone\", tz: 0, lat: 8.5, lon: 13.22 }, { name: \"Georgetown, Gambia\", tz: 0, lat: 13.22, lon: 14.75 }, { name: \"Guatemala City\", tz: -6, lat: 14.58, lon: 90.67 }, { name: \"Hermosillo, Mexico\", tz: -6, lat: 29.18, lon: 110.98 }, { name: \"Jakarta, Indonesia\", tz: 7, lat: -6.28, lon: -106.65 }, { name: \"Katmandu, Nepal\", tz: 6, lat: 27.67, lon: -85.47 }, { name: \"Khabarovsk, Russia\", tz: 10, lat: 48.07, lon: -134.63 }, { name: \"Khartoum, Sudan\", tz: 2, lat: 15.23, lon: -32.57 }, { name: \"La Paz, Argentinia\", tz: -3, lat: -30.75, lon: 59.67 }, { name: \"La Plata, Argentinia\", tz: -3, lat: -34.97, lon: 57.97 }, { name: \"Limerick, Ireland\", tz: 0, lat: 52.7, lon: 8.67 }, { name: \"Macao, China\", tz: 8, lat: 22.22, lon: -113.6 }, { name: \"Managua, Nikaragva\", tz: -6, lat: 12.15, lon: 86.32 }, { name: \"Manaus\", tz: -4, lat: -2.87, lon: 60.12 }, { name: \"Maracaibo, Venezuela\", tz: -4, lat: 10.52, lon: 71.97 }, { name: \"Mbabane, Swasiland\", tz: 2, lat: -26.07, lon: -31.15 }, { name: \"Monte Carlo, Monaco\", tz: 1, lat: 43.73, lon: -7.42 }, { name: \"Nassau, Germany\", tz: 1, lat: 50.32, lon: -7.8 }, { name: \"Nandi, Simbabwe\", tz: 2, lat: -20.98, lon: -31.78 }, { name: \"Nantes, France\", tz: 1, lat: 47.23, lon: 1.48 }, { name: \"Noumea, New Caledonia\", tz: 11, lat: -22.12, lon: -166.5 }, { name: \"Nizhniy Novgorod\", tz: 4, lat: 56.33, lon: -44.17 }, { name: \"Odense, Denmark\", tz: 1, lat: 55.43, lon: 10.3 }, { name: \"Osaka, Japan\", tz: 9, lat: 34.75, lon: -135.47 }, { name: \"Paramaribo, Surinam\", tz: -3, lat: 5.77, lon: 55.25 }, { name: \"Phnom Penh, Kambodscha\", tz: 7, lat: 11.53, lon: -104.78 }, { name: \"Port Au Prince, Haiti\", tz: -5, lat: 18.57, lon: 72.33 }, { name: \"Port Louis, Mauritius\", tz: 4, lat: -20.15, lon: -57.5 }, { name: \"Port Moresby, Papua-Neuguinea\", tz: 10, lat: -9.43, lon: -147 }, { name: \"Port Said, Egypt\", tz: 2, lat: 30.9, lon: -32.07 }, { name: \"Pretoria, South Africa\", tz: 2, lat: -25.63, lon: -28.33 }, { name: \"San Salvador, El Salvador\", tz: -6, lat: 13.98, lon: 89.18 }, { name: \"Santo Domingo, Dominican Republic\", tz: -4, lat: 18.5, lon: 69.93 }, { name: \"Suez, Egypt\", tz: 2, lat: 29.97, lon: -32.55 }, { name: \"Szeged, Hungary\", tz: 1, lat: 46.32, lon: -20.08 }, { name: \"Tahiti, Polynesia\", tz: -10, lat: -18.3, lon: 149.43 }, { name: \"Tegucigalpa, Honduras\", tz: -6, lat: 14.28, lon: 87.4 }, { name: \"Thessalonikia, Greece\", tz: 2, lat: 40.65, lon: -23.02 }, { name: \"Thimbu, Bhutan\", tz: 6, lat: 27.47, lon: -89.63 }, { name: \"Tirana, Albania\", tz: 1, lat: 41.35, lon: -19.8 }, { name: \"Tijuana, Mexico\", tz: -6, lat: 32.48, lon: 117.03 }, { name: \"Ulan Bator, Mongolia\", tz: 8, lat: 47.45, lon: -106.4 }, { name: \"Vaduz, Liechtenstein\", tz: 1, lat: 47.13, lon: -9.53 }, { name: \"Vientiane, Laos\", tz: 7, lat: 17.88, lon: -102.63 }, { name: \"Wellington, New Zealand\", tz: 12, lat: -41.3, lon: -174.98 }, { name: \"Yerevan, Armenia\", tz: 4, lat: 39.93, lon: -44.75 }, { name: \"Towson, MD\", tz: -5, lat: 39.28, lon: 76.62 }, { name: \"Florina\", tz: 2, lat: 40.78, lon: -21.42 }, { name: \"Kishinew, Moldova\", tz: 2, lat: 47, lon: -28.83 }, { name: \"Belts, Moldova\", tz: 2, lat: 47.75, lon: -27.92 }, { name: \"Bendery, Moldova\", tz: 2, lat: 46.83, lon: -29.47 }, { name: \"Cahul, Moldova\", tz: 2, lat: 45.9, lon: -28.2 }, { name: \"Taraclia, Moldova\", tz: 2, lat: 45.9, lon: -28.68 }, { name: \"Alexandria, Greece\", tz: 2, lat: 40.63, lon: -22.52 }, { name: \"Chalkis, Greece\", tz: 2, lat: 38.47, lon: -23.6 }, { name: \"Drama, Greece\", tz: 2, lat: 41.15, lon: -24.17 }, { name: \"Kilkis, Greece\", tz: 2, lat: 41, lon: -22.9 }, { name: \"Larissa, Greece\", tz: 2, lat: 39.63, lon: -22.42 }, { name: \"Thessaloniki, Greece\", tz: 2, lat: 40.63, lon: -22.97 }, { name: \"\\xC4li Bayramli, Aserbaidschan\", tz: 4, lat: 39.93, lon: -48.92 }, { name: \"Puta, Aserbaidschan\", tz: 4, lat: 40.3, lon: -49.68 }, { name: \"Sumqayit, Aserbaidschan\", tz: 4, lat: 40.6, lon: -49.75 }, { name: \"Siy\\xE4z\\xE4n, Aserbaidschan\", tz: 4, lat: 41.07, lon: -49.1 }, { name: \"Decin\", tz: 1, lat: 50.8, lon: -14.22 }, { name: \"Karlovy Vary\", tz: 1, lat: 50.18, lon: -12.87 }, { name: \"Zilina\", tz: 1, lat: 49.23, lon: -18.77 }, { name: \"Appenweier\", tz: 1, lat: 48.53, lon: -7.97 }, { name: \"Denzlingen\", tz: 1, lat: 48.07, lon: -7.87 }, { name: \"Ettenheim\", tz: 1, lat: 48.25, lon: -7.82 }, { name: \"Kehl\", tz: 1, lat: 48.58, lon: -7.83 }, { name: \"Kenzingen\", tz: 1, lat: 48.18, lon: -7.77 }, { name: \"Lahr\", tz: 1, lat: 48.33, lon: -7.87 }, { name: \"Oberkirch\", tz: 1, lat: 48.52, lon: -8.08 }, { name: \"Offenburg\", tz: 1, lat: 48.47, lon: -7.95 }, { name: \"Rust, Germany\", tz: 1, lat: 48.27, lon: -7.72 }, { name: \"Waldkirch\", tz: 1, lat: 48.08, lon: -7.95 }, { name: \"K\\xF6nigs Wusterhausen\", tz: 1, lat: 52.3, lon: -13.62 }, { name: \"Oderberg\", tz: 1, lat: 52.87, lon: -14.03 }, { name: \"Oranienburg\", tz: 1, lat: 52.75, lon: -13.23 }, { name: \"Schwedt/Oder\", tz: 1, lat: 53.05, lon: -14.28 }, { name: \"Harrow, United Kingdom\", tz: 0, lat: 51.58, lon: 0.37 }, { name: \"Markkleeberg\", tz: 1, lat: 51.28, lon: -12.38 }, { name: \"Gap, France\", tz: 1, lat: 44.57, lon: -6.08 }, { name: \"Amiens, France\", tz: 1, lat: 49.9, lon: -2.3 }, { name: \"Angers, France\", tz: 1, lat: 47.47, lon: 0.55 }, { name: \"Bischeim, France\", tz: 1, lat: 48.62, lon: -7.75 }, { name: \"Chambery, France\", tz: 1, lat: 45.57, lon: -6.08 }, { name: \"Deauville, France\", tz: 1, lat: 49.37, lon: -0.07 }, { name: \"Dieuze, France\", tz: 1, lat: 48.82, lon: -6.72 }, { name: \"Dunkerque, France\", tz: 1, lat: 51.05, lon: -2.37 }, { name: \"Elbeuf, France\", tz: 1, lat: 49.28, lon: -1 }, { name: \"Epernay, France\", tz: 1, lat: 49.05, lon: -3.95 }, { name: \"Epinal, France\", tz: 1, lat: 48.18, lon: -6.45 }, { name: \"Forbach, France\", tz: 1, lat: 49.18, lon: -6.9 }, { name: \"Ingwiller, France\", tz: 1, lat: 48.87, lon: -7.48 }, { name: \"Saint-Laurent-du-Var, France (1)\", tz: 1, lat: 45.38, lon: -5.73 }, { name: \"La Ciotat, France\", tz: 1, lat: 43.17, lon: -5.6 }, { name: \"Le Mans, France\", tz: 1, lat: 48, lon: -0.2 }, { name: \"Libourne, France\", tz: 1, lat: 44.92, lon: 0.23 }, { name: \"Luneville, France\", tz: 1, lat: 48.6, lon: -6.5 }, { name: \"Marignane, France\", tz: 1, lat: 43.42, lon: -5.22 }, { name: \"Melun, France\", tz: 1, lat: 48.53, lon: -2.67 }, { name: \"Merlebach, France\", tz: 1, lat: 49.15, lon: -6.8 }, { name: \"Montauban, France\", tz: 1, lat: 44.02, lon: -1.35 }, { name: \"Montbeliard, France\", tz: 1, lat: 47.52, lon: -6.8 }, { name: \"Obernai, France\", tz: 1, lat: 48.47, lon: -7.48 }, { name: \"Pau, France\", tz: 1, lat: 43.3, lon: 0.37 }, { name: \"Perigueux, France\", tz: 1, lat: 45.18, lon: -0.72 }, { name: \"Phalsbourg, France\", tz: 1, lat: 48.77, lon: -7.27 }, { name: \"Poitiers, France\", tz: 1, lat: 46.58, lon: -0.33 }, { name: \"Reims, France\", tz: 1, lat: 49.25, lon: -4.02 }, { name: \"Rennes, France\", tz: 1, lat: 48.08, lon: 1.68 }, { name: \"Roanne, France\", tz: 1, lat: 46.03, lon: -4.07 }, { name: \"Saint-Avold, France\", tz: 1, lat: 49.1, lon: -6.7 }, { name: \"Saint-Die, France\", tz: 1, lat: 48.28, lon: -6.95 }, { name: \"Saint-Etienne, France\", tz: 1, lat: 45.43, lon: -4.4 }, { name: \"Saint-Fons, France\", tz: 1, lat: 45.7, lon: -4.85 }, { name: \"Saint-Laurent-du-Var, France (2)\", tz: 1, lat: 43.67, lon: -7.18 }, { name: \"Saint-Quentin, France\", tz: 1, lat: 49.85, lon: -3.28 }, { name: \"Sarrebourg, France\", tz: 1, lat: 48.73, lon: -7.05 }, { name: \"Sarreguemines, France\", tz: 1, lat: 49.1, lon: -7.05 }, { name: \"Saverne, France\", tz: 1, lat: 48.73, lon: -7.37 }, { name: \"Sedan, France\", tz: 1, lat: 49.7, lon: -4.95 }, { name: \"Selestat, France\", tz: 1, lat: 48.27, lon: -7.45 }, { name: \"Tarbes, France\", tz: 1, lat: 43.23, lon: -0.08 }, { name: \"Thionville, France\", tz: 1, lat: 49.37, lon: -6.17 }, { name: \"Toul, France\", tz: 1, lat: 48.68, lon: -5.9 }, { name: \"Toulon, France\", tz: 1, lat: 43.12, lon: -5.93 }, { name: \"Valence, France\", tz: 1, lat: 44.93, lon: -4.9 }, { name: \"Valenciennes, France\", tz: 1, lat: 50.35, lon: -3.53 }, { name: \"Venissieux, France\", tz: 1, lat: 54.68, lon: -4.88 }, { name: \"Verdun, France\", tz: 1, lat: 49.17, lon: -5.38 }, { name: \"Vichy, France\", tz: 1, lat: 46.13, lon: -3.43 }, { name: \"Berdicev, Ukraine\", tz: 2, lat: 49.9, lon: -28.6 }, { name: \"Bershad, Ukraine\", tz: 2, lat: 48.37, lon: -29.53 }, { name: \"Chernigov, Ukraine\", tz: 2, lat: 50.83, lon: -24.13 }, { name: \"Czernowitz, Chernovtsy, Ukraine\", tz: 2, lat: 48.28, lon: -25.97 }, { name: \"Dnepropetrovsk, Ukraine\", tz: 2, lat: 48.45, lon: -35.03 }, { name: \"Donetsk, Ukraine\", tz: 2, lat: 48, lon: -37.78 }, { name: \"Charkow, Ukraine\", tz: 2, lat: 49.92, lon: -36.17 }, { name: \"Cherson, Ukraine\", tz: 2, lat: 46.65, lon: -32.6 }, { name: \"Korosten, Ukraine\", tz: 2, lat: 50.95, lon: -28.63 }, { name: \"Kremenchug, Ukraine\", tz: 2, lat: 49.07, lon: -33.42 }, { name: \"Lemberg, Lwow, Ukraine\", tz: 2, lat: 49.83, lon: -24.03 }, { name: \"Mukacevo, Ukraine\", tz: 2, lat: 48.45, lon: -22.72 }, { name: \"Nikolayev, Ukraine\", tz: 2, lat: 49.52, lon: -23.97 }, { name: \"Rachki, Ukraine\", tz: 2, lat: 49.5, lon: -29.9 }, { name: \"Simferopol, Ukraine\", tz: 2, lat: 44.95, lon: -34.1 }, { name: \"Slavuta, Ukraine\", tz: 2, lat: 50.3, lon: -26.87 }, { name: \"Zhitomir, Ukraine\", tz: 2, lat: 50.25, lon: -28.67 }, { name: \"Beregovoye, Ukraine\", tz: 2, lat: 44.9, lon: -33.6 }, { name: \"Tinton Falls, NJ\", tz: -5, lat: 40.28, lon: 74.1 }, { name: \"Warendorf\", tz: 1, lat: 51.95, lon: -7.98 }, { name: \"M\\xFCnster\", tz: 1, lat: 51.95, lon: -7.62 }, { name: \"Neu Fahrland\", tz: 1, lat: 52.45, lon: -13.05 }, { name: \"Charlottesville, Virginia\", tz: -5, lat: 38.03, lon: 78.48 }, { name: \"Hagenow\", tz: 1, lat: 53.43, lon: -11.18 }, { name: \"Verl\", tz: 1, lat: 51.88, lon: -8.52 }, { name: \"R\\xF6bel\", tz: 1, lat: 53.37, lon: -12.6 }, { name: \"Nordhausen\", tz: 1, lat: 51.5, lon: -10.78 }, { name: \"Aschaffenburg\", tz: 1, lat: 49.98, lon: -9.15 }, { name: \"Ahrweiler\", tz: 1, lat: 50.55, lon: -7.13 }, { name: \"Cedar Grove, NJ (1)\", tz: -5, lat: 40.85, lon: 74.23 }, { name: \"Cedar Grove, NJ (2)\", tz: -5, lat: 39.97, lon: 74.15 }, { name: \"Encinitas, CA\", tz: -8, lat: 33.03, lon: 117.28 }, { name: \"Calabasas, AZ\", tz: -7, lat: 31.47, lon: 110.97 }, { name: \"Calabasas, CA\", tz: -8, lat: 34.15, lon: 118.63 }, { name: \"Rottweil\", tz: 1, lat: 48.17, lon: -8.62 }];\n\n// src/Locations.ts\nvar Locations = locations_default.map((l) => new Location(l.name, l.heb, !!l.il, l.lat, l.lon, l.tz, l.el || 0, l.cl));\nLocations.sort(function(a, b) {\n return a.Name > b.Name ? 1 : b.Name > a.Name ? -1 : 0;\n});\nvar justNames = [];\nfor (let i = 0; i < Locations.length - 1; i++) {\n const l = Locations[i];\n justNames.push({\n name: l.Name.split(\",\", 1)[0].toLowerCase(),\n index: i\n });\n if (!!l.NameHebrew) {\n justNames.push({\n name: l.NameHebrew,\n index: i\n });\n }\n}\nfunction distancePointToPoint(point1, point2) {\n if (point1.latitude == point2.latitude && point1.longitude == point2.longitude) {\n return 0;\n } else {\n var radlat1 = Math.PI * point1.latitude / 180;\n var radlat2 = Math.PI * point2.latitude / 180;\n var theta = point1.longitude - point2.longitude;\n var radtheta = Math.PI * theta / 180;\n var dist = Math.sin(radlat1) * Math.sin(radlat2) + Math.cos(radlat1) * Math.cos(radlat2) * Math.cos(radtheta);\n if (dist > 1) {\n dist = 1;\n }\n dist = Math.acos(dist);\n dist = dist * 180 / Math.PI;\n dist = dist * 60 * 1.1515;\n dist = dist * 1.609344;\n return dist;\n }\n}\nfunction closestDistanceMatch(point) {\n let curr = { dist: 1e5 };\n for (let location of Locations) {\n const dist = distancePointToPoint(point, { latitude: location.Latitude, longitude: location.Longitude });\n if (dist < curr.dist) {\n curr = { dist, location };\n }\n }\n return curr.location;\n}\nfunction closestNameMatch(val) {\n let curr = { dist: 1e5 };\n for (let location of justNames) {\n const dist = (0, import_closest_match.distance)(val.toLowerCase(), location.name);\n if (dist < curr.dist) {\n curr = { dist, location };\n }\n }\n return curr.location ? Locations[curr.location.index] : void 0;\n}\nfunction findLocation(nameOrCoordinates) {\n if (typeof nameOrCoordinates === \"string\") {\n const exactNameMatch = Locations.find((l) => l.Name.toLowerCase() === nameOrCoordinates.toLowerCase() || l.NameHebrew === nameOrCoordinates);\n if (!!exactNameMatch) {\n return exactNameMatch;\n }\n const cityOnlyNameMatch = justNames.find((l) => l.name === nameOrCoordinates.toLowerCase());\n if (!!cityOnlyNameMatch) {\n return Locations[cityOnlyNameMatch.index];\n }\n return closestNameMatch(nameOrCoordinates.toLowerCase());\n } else {\n const exactCoordinateMatch = Locations.find((l) => l.Latitude === nameOrCoordinates.latitude && l.Longitude === nameOrCoordinates.longitude);\n if (!!exactCoordinateMatch) {\n return exactCoordinateMatch;\n }\n return closestDistanceMatch(nameOrCoordinates);\n }\n}\n\n// src/ZmanTypes.ts\nvar ZmanTypeIds = Object.freeze({\n ChatzosLayla: 0,\n Alos90: 1,\n Alos72: 2,\n TalisTefillin: 3,\n NetzAtElevation: 4,\n NetzMishor: 5,\n szksMga: 6,\n szksGra: 7,\n sztMga: 8,\n sztGra: 9,\n chatzosDay: 10,\n minGed: 11,\n minKet: 12,\n plag: 13,\n shkiaAtSeaLevel: 14,\n shkiaElevation: 15,\n tzais45: 16,\n tzais50: 17,\n tzais72: 18,\n rabbeinuTamZmanios: 19,\n rabbeinuTamZmaniosMga: 20,\n candleLighting: 21,\n SofZmanEatingChometz: 22,\n SofZmanBurnChometz: 23\n});\nvar ZmanTypes = [\n {\n id: ZmanTypeIds.ChatzosLayla,\n desc: \"\\u05D7\\u05E6\\u05D5\\u05EA \\u05D4\\u05DC\\u05D9\\u05DC\\u05D4\",\n eng: \"Chatzos - Midnight\",\n heb: \"\\u05D7\\u05E6\\u05D5\\u05EA \\u05D4\\u05DC\\u05D9\\u05DC\\u05D4\"\n },\n {\n id: ZmanTypeIds.Alos90,\n desc: \"\\u05E2\\u05DC\\u05D5\\u05EA \\u05D4\\u05E9\\u05D7\\u05E8 - 90 \\u05D3\\u05E7\\u05D5\\u05EA\",\n eng: \"Alos Hashachar - 90\",\n heb: \"\\u05E2\\u05DC\\u05D5\\u05EA \\u05D4\\u05E9\\u05D7\\u05E8 (90)\"\n },\n {\n id: ZmanTypeIds.Alos72,\n desc: \"\\u05E2\\u05DC\\u05D5\\u05EA \\u05D4\\u05E9\\u05D7\\u05E8 - 72 \\u05D3\\u05E7\\u05D5\\u05EA\",\n eng: \"Alos Hashachar - 72\",\n heb: \"\\u05E2\\u05DC\\u05D5\\u05EA \\u05D4\\u05E9\\u05D7\\u05E8 (72)\"\n },\n {\n id: ZmanTypeIds.TalisTefillin,\n desc: \"\\u05D6\\u05DE\\u05DF \\u05E2\\u05D8\\u05D9\\u05E4\\u05EA \\u05D8\\u05DC\\u05D9\\u05EA \\u05D5\\u05EA\\u05E4\\u05D9\\u05DC\\u05D9\\u05DF - 36 \\u05D3\\u05E7\\u05D5\\u05EA\",\n eng: \"Taliss and Tefillin\",\n heb: \"\\u05D8\\u05DC\\u05D9\\u05EA \\u05D5\\u05EA\\u05E4\\u05D9\\u05DC\\u05D9\\u05DF\"\n },\n {\n id: ZmanTypeIds.NetzAtElevation,\n desc: \"\\u05D4\\u05E0\\u05E5 \\u05D4\\u05D7\\u05DE\\u05D4 \\u05D1\\u05D2\\u05D5\\u05D1\\u05D4 \\u05D4\\u05DE\\u05D9\\u05E7\\u05D5\\u05DD\",\n eng: \"Sunrise at current elevation\",\n heb: \"\\u05D4\\u05E0\\u05E5 \\u05D4\\u05D7\\u05DE\\u05D4 - \\u05DE\\u05D2\\u05D5\\u05D1\\u05D4\"\n },\n {\n id: ZmanTypeIds.NetzMishor,\n desc: \"\\u05D4\\u05E0\\u05E5 \\u05D4\\u05D7\\u05DE\\u05D4 \\u05D1\\u05D2\\u05D5\\u05D1\\u05D4 \\u05E4\\u05E0\\u05D9 \\u05D4\\u05D9\\u05DD\",\n eng: \"Sunrise\",\n heb: \"\\u05D4\\u05E0\\u05E5 \\u05D4\\u05D7\\u05DE\\u05D4\"\n },\n {\n id: ZmanTypeIds.szksMga,\n desc: '\\u05E1\\u05D6\\u05E7\"\\u05E9 \\u05DE\\u05D2\"\\u05D0',\n eng: 'Zman Krias Shma - MG\"A',\n heb: '\\u05E1\\u05D6\\u05E7\"\\u05E9 \\u05DE\\u05D2\"\\u05D0'\n },\n {\n id: ZmanTypeIds.szksGra,\n desc: '\\u05E1\\u05D6\\u05E7\"\\u05E9 \\u05D4\\u05D2\\u05E8\"\\u05D0',\n eng: 'Zman Krias Shma - GR\"A',\n heb: '\\u05E1\\u05D6\\u05E7\"\\u05E9 \\u05D4\\u05D2\\u05E8\"\\u05D0'\n },\n {\n id: ZmanTypeIds.sztMga,\n desc: '\\u05E1\\u05D6\"\\u05EA \\u05DE\\u05D2\"\\u05D0',\n eng: 'Zman Tefilla - MG\"A',\n heb: '\\u05E1\\u05D6\"\\u05EA \\u05DE\\u05D2\"\\u05D0'\n },\n {\n id: ZmanTypeIds.sztGra,\n desc: '\\u05E1\\u05D6\"\\u05EA \\u05D4\\u05D2\\u05E8\"\\u05D0',\n eng: 'Zman Tefilla - GR\"A',\n heb: '\\u05E1\\u05D6\"\\u05EA \\u05D4\\u05D2\\u05E8\"\\u05D0'\n },\n {\n id: ZmanTypeIds.chatzosDay,\n desc: \"\\u05D7\\u05E6\\u05D5\\u05EA \\u05D4\\u05D9\\u05D5\\u05DD\",\n eng: \"Chatzos - Midday\",\n heb: \"\\u05D7\\u05E6\\u05D5\\u05EA \\u05D4\\u05D9\\u05D5\\u05DD\"\n },\n {\n id: ZmanTypeIds.minGed,\n desc: \"\\u05DE\\u05E0\\u05D7\\u05D4 \\u05D2\\u05D3\\u05D5\\u05DC\\u05D4\",\n eng: \"Mincha Gedola\",\n heb: \"\\u05DE\\u05E0\\u05D7\\u05D4 \\u05D2\\u05D3\\u05D5\\u05DC\\u05D4\"\n },\n {\n id: ZmanTypeIds.minKet,\n desc: \"\\u05DE\\u05E0\\u05D7\\u05D4 \\u05E7\\u05D8\\u05E0\\u05D4\",\n eng: \"Mincha Ketana\",\n heb: \"\\u05DE\\u05E0\\u05D7\\u05D4 \\u05E7\\u05D8\\u05E0\\u05D4\"\n },\n {\n id: ZmanTypeIds.plag,\n desc: \"\\u05E4\\u05DC\\u05D2 \\u05D4\\u05DE\\u05E0\\u05D7\\u05D4\",\n eng: \"Plag HaMincha\",\n heb: \"\\u05E4\\u05DC\\u05D2 \\u05D4\\u05DE\\u05E0\\u05D7\\u05D4\"\n },\n {\n id: ZmanTypeIds.shkiaAtSeaLevel,\n desc: \"\\u05E9\\u05E7\\u05D9\\u05E2\\u05EA \\u05D4\\u05D7\\u05DE\\u05D4 \\u05DE\\u05D2\\u05D5\\u05D1\\u05D4 \\u05E4\\u05E0\\u05D9 \\u05D4\\u05D9\\u05DD\",\n eng: \"Sunset at sea level\",\n heb: \"\\u05E9\\u05E7\\u05D9\\u05E2\\u05EA \\u05D4\\u05D7\\u05DE\\u05D4 - \\u05DE\\u05DE\\u05D9\\u05E9\\u05D5\\u05E8\"\n },\n {\n id: ZmanTypeIds.shkiaElevation,\n desc: \"\\u05E9\\u05E7\\u05D9\\u05E2\\u05EA \\u05D4\\u05D7\\u05DE\\u05D4 \\u05DE\\u05D2\\u05D5\\u05D1\\u05D4 \\u05D4\\u05DE\\u05D9\\u05E7\\u05D5\\u05DD\",\n eng: \"Sunset\",\n heb: \"\\u05E9\\u05E7\\u05D9\\u05E2\\u05EA \\u05D4\\u05D7\\u05DE\\u05D4\"\n },\n {\n id: ZmanTypeIds.tzais45,\n desc: \"45 \\u05D3\\u05E7\\u05D5\\u05EA \\u05D0\\u05D7\\u05E8\\u05D9 \\u05E9\\u05E7\\u05D9\\u05E2\\u05D4\",\n eng: \"Nightfall - 45\",\n heb: \"\\u05E6\\u05D0\\u05EA \\u05D4\\u05DB\\u05D5\\u05DB\\u05D1\\u05D9\\u05DD (45)\"\n },\n {\n id: ZmanTypeIds.tzais50,\n desc: \"50 \\u05D3\\u05E7\\u05D5\\u05EA \\u05D0\\u05D7\\u05E8\\u05D9 \\u05E9\\u05E7\\u05D9\\u05E2\\u05D4\",\n eng: \"Nightfall - 50\",\n heb: \"\\u05E6\\u05D0\\u05EA \\u05D4\\u05DB\\u05D5\\u05DB\\u05D1\\u05D9\\u05DD (50)\"\n },\n {\n id: ZmanTypeIds.tzais72,\n desc: \"72 \\u05D3\\u05E7\\u05D5\\u05EA \\u05D0\\u05D7\\u05E8\\u05D9 \\u05E9\\u05E7\\u05D9\\u05E2\\u05D4\",\n eng: \"Rabbeinu Tam\",\n heb: '\\u05E6\\u05D4\"\\u05DB \\u05E8\"\\u05EA - 72 \\u05D3\\u05E7\\u05D5\\u05EA'\n },\n {\n id: ZmanTypeIds.rabbeinuTamZmanios,\n desc: \"72 \\u05D3\\u05E7\\u05D5\\u05EA \\u05D6\\u05DE\\u05E0\\u05D9\\u05D5\\u05EA \\u05D0\\u05D7\\u05E8\\u05D9 \\u05E9\\u05E7\\u05D9\\u05E2\\u05D4\",\n eng: \"Rabbeinu Tam - Zmanios\",\n heb: '\\u05E6\\u05D4\"\\u05DB \\u05E8\"\\u05EA - \\u05D6\\u05DE\\u05E0\\u05D9\\u05D5\\u05EA'\n },\n {\n id: ZmanTypeIds.rabbeinuTamZmaniosMga,\n desc: '72 \\u05D3\\u05E7\\u05D5\\u05EA \\u05D6\\u05DE\\u05E0\\u05D9\\u05D5\\u05EA \\u05D0\\u05D7\\u05E8\\u05D9 \\u05E9\\u05E7\\u05D9\\u05E2\\u05D4 - \\u05DE\\u05D2\"\\u05D0',\n eng: 'Rabbeinu Tam - Zmanios MG\"A',\n heb: '\\u05E6\\u05D4\"\\u05DB \\u05E8\"\\u05EA - \\u05D6\\u05DE\\u05E0\\u05D9\\u05D5\\u05EA \\u05DE\\u05D2\"\\u05D0'\n },\n {\n id: ZmanTypeIds.candleLighting,\n desc: \"\\u05D6\\u05DE\\u05DF \\u05D4\\u05D3\\u05DC\\u05E7\\u05EA \\u05E0\\u05E8\\u05D5\\u05EA\",\n eng: \"Candle lighting time\",\n heb: \"\\u05D6\\u05DE\\u05DF \\u05D4\\u05D3\\u05DC\\u05E7\\u05EA \\u05E0\\u05E8\\u05D5\\u05EA\"\n },\n {\n id: ZmanTypeIds.SofZmanEatingChometz,\n desc: \"\\u05E1\\u05D5\\u05E3 \\u05D6\\u05DE\\u05DF \\u05D0\\u05DB\\u05D9\\u05DC\\u05EA \\u05D7\\u05DE\\u05E5\",\n eng: \"Stop eating Chometz\",\n heb: \"\\u05E1\\u05D5\\u05E3 \\u05D6\\u05DE\\u05DF \\u05D0\\u05DB\\u05D9\\u05DC\\u05EA \\u05D7\\u05DE\\u05E5\"\n },\n {\n id: ZmanTypeIds.SofZmanBurnChometz,\n desc: \"\\u05E1\\u05D5\\u05E3 \\u05D6\\u05DE\\u05DF \\u05D1\\u05D9\\u05E2\\u05D5\\u05E8 \\u05D7\\u05DE\\u05E5\",\n eng: \"Destroy Chometz\",\n heb: \"\\u05E1\\u05D5\\u05E3 \\u05D6\\u05DE\\u05DF \\u05D1\\u05D9\\u05E2\\u05D5\\u05E8 \\u05D7\\u05DE\\u05E5\"\n }\n];\nfunction getZmanType(idOrName) {\n return ZmanTypes.find((zt) => zt.id === idOrName || zt.eng === idOrName || zt.heb === idOrName || zt.desc === idOrName);\n}\n\n// src/JCal/Molad.ts\nvar Molad = class _Molad {\n /**\n * @param {Number} month\n * @param {Number} year\n * @returns {{jDate:jDate,time:Time,chalakim:number}}\n */\n static getMolad(month, year) {\n let totalMonths, partsElapsed, hoursElapsed, parts, monthAdj = month - 7;\n if (monthAdj < 0) {\n monthAdj += jDate.monthsJYear(year);\n }\n totalMonths = Utils.toInt(monthAdj + 235 * Utils.toInt((year - 1) / 19) + 12 * ((year - 1) % 19) + ((year - 1) % 19 * 7 + 1) / 19);\n partsElapsed = 204 + 793 * (totalMonths % 1080);\n hoursElapsed = 5 + 12 * totalMonths + 793 * Utils.toInt(totalMonths / 1080) + Utils.toInt(partsElapsed / 1080) - 6;\n parts = Utils.toInt(partsElapsed % 1080 + 1080 * (hoursElapsed % 24));\n return {\n jDate: new jDate(1 + 29 * Utils.toInt(totalMonths) + Utils.toInt(hoursElapsed / 24)),\n time: { hour: Utils.toInt(hoursElapsed) % 24, minute: Utils.toInt(parts % 1080 / 18), second: 0 },\n chalakim: parts % 18\n };\n }\n /**\n * Returns the time of the molad as a string in the format: Monday Night, 8:33 PM and 12 Chalakim\n * The molad is always in Jerusalem so we use the Jerusalem sunset times\n * to determine whether to display \"Night\" or \"Motzai Shabbos\" etc. (check this...)\n * @param {Number} year\n * @param {Number} month\n */\n static getString(year, month) {\n const molad = _Molad.getMolad(month, year), zmanim = molad.jDate.getSunriseSunset(Location.getJerusalem()), isNight = Utils.isTimeAfter(zmanim.sunset, molad.time), dow = molad.jDate.getDayOfWeek();\n let str = \"\";\n if (!zmanim.sunset || isNaN(zmanim.sunset.hour)) {\n str += DaysOfWeekEng[dow];\n } else if (dow === 6 && isNight) {\n str += \"Motzai Shabbos,\";\n } else if (dow === 5 && isNight) {\n str += \"Shabbos Night,\";\n } else {\n str += DaysOfWeekEng[dow] + (isNight ? \" Night\" : \"\");\n }\n str += \" \" + Utils.getTimeString(molad.time) + \" and \" + molad.chalakim.toString() + \" Chalakim\";\n return str;\n }\n /**\n * Returns the time of the molad as a string in the format: ליל שני 20:33 12 חלקים\n * The molad is always in Jerusalem so we use the Jerusalem sunset times\n * to determine whether to display \"ליל/יום\" or \"מוצאי שב\"ק\" etc.\n * @param {Number} year\n * @param {Number} month\n */\n static getStringHeb(year, month) {\n const molad = _Molad.getMolad(month, year), zmanim = molad.jDate.getSunriseSunset(Location.getJerusalem()), isNight = Utils.isTimeAfter(zmanim.sunset, molad.time) && Utils.isTimeAfter(molad.time, zmanim.sunrise), dow = molad.jDate.getDayOfWeek();\n let str = \"\";\n if (dow === 6) {\n str += isNight ? '\\u05DE\\u05D5\\u05E6\\u05D0\\u05D9 \\u05E9\\u05D1\"\\u05E7' : '\\u05D9\\u05D5\\u05DD \\u05E9\\u05D1\"\\u05E7';\n } else if (dow === 5) {\n str += isNight ? '\\u05DC\\u05D9\\u05DC \\u05E9\\u05D1\"\\u05E7' : '\\u05E2\\u05E8\\u05D1 \\u05E9\\u05D1\"\\u05E7';\n } else {\n str += (isNight ? \"\\u05DC\\u05D9\\u05DC\" : \"\\u05D9\\u05D5\\u05DD\") + DaysOfWeekHeb[dow].replace(\"\\u05D9\\u05D5\\u05DD\", \"\");\n }\n str += \" \" + Utils.getTimeString(molad.time, 1, true) + \" \" + molad.chalakim.toString() + \" \\u05D7\\u05DC\\u05E7\\u05D9\\u05DD\";\n return str;\n }\n};\n\n// src/JCal/ZmanimUtils.ts\nvar WhichDaysFlags = Object.freeze({\n SUNDAY: 1,\n MONDAY: 2,\n TUESDAY: 4,\n WEDNESDAY: 8,\n THURSDAY: 16,\n FRIDAY: 32,\n SHABBOS: 64,\n YOMTOV: 128\n});\nvar _ZmanimUtils = class _ZmanimUtils {\n /**\n * Gets the zmanim for all the types in the given list.\n * @param {[ZmanToShow]} zmanTypes An array of ZmanTypes to get the zman for.\n * @param {Date} date The secular date to get the zmanim for\n * @param {jDate} jdate The jewish date to get the zmanim for\n * @param {Location} location The location for which to get the zmanim\n * @returns{[{zmanType:{id:number,offset:?number,desc:string,eng:string,heb:string },time:Time}]}\n */\n static getZmanTimes(zmanTypes, date, jdate, location) {\n const mem = _ZmanimUtils.zmanTimesCache.find(\n (z) => Utils.isSameSdate(z.date, date) && z.location.Name === location.Name\n ), zmanTimes = [], whichDay = _ZmanimUtils.getWhichDays(date, jdate, location);\n let sunrise, sunset, suntimesMishor, sunriseMishor, sunsetMishor, mishorNeg90, chatzos, shaaZmanis, shaaZmanisMga;\n if (mem) {\n sunrise = mem.sunrise;\n sunset = mem.sunset;\n suntimesMishor = mem.suntimesMishor;\n sunriseMishor = mem.sunriseMishor;\n sunsetMishor = mem.sunsetMishor;\n mishorNeg90 = mem.mishorNeg90;\n chatzos = mem.chatzos;\n shaaZmanis = mem.shaaZmanis;\n shaaZmanisMga = mem.shaaZmanisMga;\n } else {\n const suntimes = Zmanim.getSunTimes(date, location, true);\n sunrise = suntimes.sunrise;\n sunset = suntimes.sunset;\n suntimesMishor = Zmanim.getSunTimes(date, location, false);\n sunriseMishor = suntimesMishor.sunrise;\n sunsetMishor = suntimesMishor.sunset;\n mishorNeg90 = Utils.addMinutes(sunriseMishor, -90);\n chatzos = sunriseMishor && sunsetMishor && Zmanim.getChatzosFromSuntimes(suntimesMishor);\n shaaZmanis = sunriseMishor && sunsetMishor && Zmanim.getShaaZmanisFromSunTimes(suntimesMishor);\n shaaZmanisMga = sunriseMishor && sunsetMishor && Zmanim.getShaaZmanisMga(suntimesMishor, true);\n _ZmanimUtils.zmanTimesCache.push({\n date,\n location,\n sunrise,\n sunset,\n suntimesMishor,\n sunriseMishor,\n sunsetMishor,\n mishorNeg90,\n chatzos,\n shaaZmanis,\n shaaZmanisMga\n });\n }\n for (let zmanType of zmanTypes) {\n const offset = zmanType.offset && (!zmanType.whichDaysFlags || zmanType.whichDaysFlags & whichDay) ? zmanType.offset : 0;\n switch (zmanType.id) {\n case ZmanTypeIds.ChatzosLayla:\n zmanTimes.push({\n zmanType,\n time: Utils.addMinutes(chatzos, 720 + offset)\n });\n break;\n case ZmanTypeIds.Alos90:\n zmanTimes.push({\n zmanType,\n time: offset ? Utils.addMinutes(mishorNeg90, offset) : mishorNeg90\n });\n break;\n case ZmanTypeIds.Alos72:\n zmanTimes.push({\n zmanType,\n time: Utils.addMinutes(sunriseMishor, -72 + offset)\n });\n break;\n case ZmanTypeIds.TalisTefillin:\n zmanTimes.push({\n zmanType,\n time: Utils.addMinutes(sunriseMishor, -36 + offset)\n });\n break;\n case ZmanTypeIds.NetzAtElevation:\n zmanTimes.push({\n zmanType,\n time: offset ? Utils.addMinutes(sunrise, offset) : sunrise\n });\n break;\n case ZmanTypeIds.NetzMishor:\n zmanTimes.push({\n zmanType,\n time: offset ? Utils.addMinutes(sunriseMishor, offset) : sunriseMishor\n });\n break;\n case ZmanTypeIds.szksMga:\n if (shaaZmanisMga)\n zmanTimes.push({\n zmanType,\n time: Utils.addMinutes(\n mishorNeg90,\n Math.floor(shaaZmanisMga * 3) + offset\n )\n });\n break;\n case ZmanTypeIds.szksGra:\n if (shaaZmanis)\n zmanTimes.push({\n zmanType,\n time: Utils.addMinutes(\n sunriseMishor,\n Math.floor(shaaZmanis * 3) + offset\n )\n });\n break;\n case ZmanTypeIds.sztMga:\n if (shaaZmanisMga)\n zmanTimes.push({\n zmanType,\n time: Utils.addMinutes(\n mishorNeg90,\n Math.floor(shaaZmanisMga * 4) + offset\n )\n });\n break;\n case ZmanTypeIds.sztGra:\n if (shaaZmanis)\n zmanTimes.push({\n zmanType,\n time: Utils.addMinutes(\n sunriseMishor,\n Math.floor(shaaZmanis * 4) + offset\n )\n });\n break;\n case ZmanTypeIds.chatzosDay:\n zmanTimes.push({\n zmanType,\n time: offset ? Utils.addMinutes(chatzos, offset) : chatzos\n });\n break;\n case ZmanTypeIds.minGed:\n if (shaaZmanis)\n zmanTimes.push({\n zmanType,\n time: Utils.addMinutes(\n chatzos,\n shaaZmanis * 0.5 + offset\n )\n });\n break;\n case ZmanTypeIds.minKet:\n if (shaaZmanis)\n zmanTimes.push({\n zmanType,\n time: Utils.addMinutes(\n sunriseMishor,\n shaaZmanis * 9.5 + offset\n )\n });\n break;\n case ZmanTypeIds.plag:\n if (shaaZmanis)\n zmanTimes.push({\n zmanType,\n time: Utils.addMinutes(\n sunriseMishor,\n shaaZmanis * 10.75 + offset\n )\n });\n break;\n case ZmanTypeIds.shkiaAtSeaLevel:\n zmanTimes.push({\n zmanType,\n time: offset ? Utils.addMinutes(sunsetMishor, offset) : sunsetMishor\n });\n break;\n case ZmanTypeIds.shkiaElevation:\n zmanTimes.push({\n zmanType,\n time: offset ? Utils.addMinutes(sunset, offset) : sunset\n });\n break;\n case ZmanTypeIds.tzais45:\n zmanTimes.push({\n zmanType,\n time: Utils.addMinutes(sunset, 45 + offset)\n });\n break;\n case ZmanTypeIds.tzais50:\n zmanTimes.push({\n zmanType,\n time: Utils.addMinutes(sunset, 50 + offset)\n });\n break;\n case ZmanTypeIds.tzais72:\n zmanTimes.push({\n zmanType,\n time: Utils.addMinutes(sunset, 72 + offset)\n });\n break;\n case ZmanTypeIds.rabbeinuTamZmanios:\n if (shaaZmanis)\n zmanTimes.push({\n zmanType,\n time: Utils.addMinutes(\n sunset,\n shaaZmanis * 1.2 + offset\n )\n });\n break;\n case ZmanTypeIds.rabbeinuTamZmaniosMga:\n if (shaaZmanisMga)\n zmanTimes.push({\n zmanType,\n time: Utils.addMinutes(\n sunset,\n shaaZmanisMga * 1.2 + offset\n )\n });\n break;\n case ZmanTypeIds.candleLighting:\n if (sunset && jdate.hasCandleLighting()) {\n zmanTimes.push({\n zmanType,\n time: Utils.addMinutes(\n Zmanim.getCandleLightingFromSunset(\n sunset,\n location\n ),\n offset\n )\n });\n }\n break;\n case ZmanTypeIds.SofZmanEatingChometz:\n if (shaaZmanisMga && jdate.Month === 1 && jdate.Day === 14 && Utils.isTimeAfter(sunrise, Utils.timeFromDate(date))) {\n zmanTimes.push({\n zmanType,\n time: Utils.addMinutes(\n sunrise,\n -90 + offset + shaaZmanisMga * 4\n )\n });\n }\n break;\n case ZmanTypeIds.SofZmanBurnChometz:\n if (shaaZmanisMga && jdate.Month === 1 && (jdate.Day === 14 || jdate.DayOfWeek === DaysOfWeek.FRIDAY && jdate.Day === 13) && Utils.isTimeAfter(sunrise, Utils.timeFromDate(date))) {\n zmanTimes.push({\n zmanType,\n time: Utils.addMinutes(\n sunrise,\n -90 + offset + shaaZmanisMga * 5\n )\n });\n }\n break;\n }\n }\n return zmanTimes;\n }\n /**\n * Get the WhichDaysFlags for the given secular date\n * @param {Date} date\n * @param {jDate} jdate\n * @param {Location} location\n */\n static getWhichDays(date, jdate, location) {\n if (jdate.isYomTov(!!location.Israel)) {\n return WhichDaysFlags.YOMTOV;\n }\n switch (date.getDay()) {\n case DaysOfWeek.SUNDAY:\n return WhichDaysFlags.SUNDAY;\n case DaysOfWeek.MONDAY:\n return WhichDaysFlags.MONDAY;\n case DaysOfWeek.TUESDAY:\n return WhichDaysFlags.TUESDAY;\n case DaysOfWeek.WEDNESDAY:\n return WhichDaysFlags.WEDNESDAY;\n case DaysOfWeek.THURSDAY:\n return WhichDaysFlags.THURSDAY;\n case DaysOfWeek.FRIDAY:\n return WhichDaysFlags.FRIDAY;\n case DaysOfWeek.SHABBOS:\n return WhichDaysFlags.SHABBOS;\n }\n return 0;\n }\n /**\n * Returns the zmanim necessary for showing basic shul notifications: chatzosHayom, chatzosHalayla, alos\n * @param {jDate|Date} date\n * @param {Location} location\n * @returns {{chatzosHayom:Time, chatzosHalayla:Time, alos:Time, shkia:Time }}\n */\n static getBasicShulZmanim(date, location) {\n const { sdate, jdate } = Utils.bothDates(date);\n const zmanim = _ZmanimUtils.getZmanTimes(\n [\n getZmanType(ZmanTypeIds.chatzosDay),\n //Chatzos hayom\n getZmanType(ZmanTypeIds.Alos90),\n //alos90\n getZmanType(ZmanTypeIds.shkiaElevation),\n //shkiaElevation,\n getZmanType(ZmanTypeIds.candleLighting)\n //candleLighting,\n ],\n sdate,\n jdate,\n location\n );\n return {\n chatzosHayom: zmanim[0].time,\n chatzosHalayla: Utils.addMinutes(zmanim[0].time, 720),\n alos: zmanim[1].time,\n shkia: zmanim[2].time\n };\n }\n /**\n * Returns all the zmanim for the given day \n * @param {Date|jDate} date\n * @param {Location} location\n * @returns {{zmanType:ZmanToShow, time?:Time }[]}\n */\n static getAllZmanim(date, location) {\n const { sdate, jdate } = Utils.bothDates(date);\n return _ZmanimUtils.getZmanTimes(ZmanTypes, sdate, jdate, location);\n }\n};\n_ZmanimUtils.zmanTimesCache = [];\nvar ZmanimUtils = _ZmanimUtils;\n\n// src/Notifications.ts\nvar dayNotes = [];\nvar tefillahNotes = [];\nvar showEnglish = false;\nvar dayInfo;\nvar showGaonShirShelYom = true;\nvar israel = true;\nfunction getNotifications(date, time, location, english, showGaonShir, showDafYomi) {\n const { sdate, jdate } = Utils.bothDates(date);\n dayNotes.length = 0;\n tefillahNotes.length = 0;\n const month = jdate.Month, day = jdate.Day, dow = jdate.DayOfWeek, { chatzosHayom, chatzosHalayla, alos, shkia } = ZmanimUtils.getBasicShulZmanim(date, location), isAfterChatzosHayom = Utils.isTimeAfter(chatzosHayom, time), isAfterChatzosHalayla = typeof chatzosHalayla !== \"undefined\" && (Utils.isTimeAfter(chatzosHalayla, time) || chatzosHalayla.hour > 12 && time.hour < 12), isAfterAlos = Utils.isTimeAfter(alos, time), isAfterShkia = Utils.isTimeAfter(shkia, time), isDaytime = isAfterAlos && !isAfterShkia, isNightTime = !isDaytime, isNotBeinHasmashos = !isAfterShkia || Utils.isTimeAfter(Utils.addMinutes(shkia, 18), time), isMorning = isDaytime && !isAfterChatzosHayom, isAfternoon = isDaytime && isAfterChatzosHayom, isYomTov = jdate.isYomTovOrCholHamoed(location.Israel), isLeapYear = jDate.isJdLeapY(jdate.Year), noTachnun = isAfternoon && (dow === DaysOfWeek.FRIDAY || day === 29);\n dayInfo = {\n jdate,\n sdate,\n month,\n day,\n dow,\n isAfterChatzosHayom,\n isAfterChatzosHalayla,\n isAfterAlos,\n isAfterShkia,\n isDaytime,\n isNightTime,\n isMorning,\n isAfternoon,\n isYomTov,\n isLeapYear,\n noTachnun,\n location\n };\n showEnglish = english;\n israel = location.Israel;\n showGaonShirShelYom = typeof showGaonShir === \"undefined\" ? israel : !!showGaonShir;\n if (dow === DaysOfWeek.SHABBOS) {\n getShabbosNotifications();\n } else {\n getWeekDayNotifications();\n }\n getAroundTheYearNotifications();\n if (dayInfo.noTachnun && isDaytime && !isYomTov) {\n if (dow !== DaysOfWeek.SHABBOS) {\n addTefillahNote(\"No Tachnun\", '\\u05D0\"\\u05D0 \\u05EA\\u05D7\\u05E0\\u05D5\\u05DF');\n } else if (isAfternoon) {\n addTefillahNote(\"No Tzidkascha\", '\\u05D0\"\\u05D0 \\u05E6\\u05D3\\u05E7\\u05EA\\u05DA');\n } else if (!(month === JewishMonthsNames.NISSAN && day > 21 || month === JewishMonthsNames.IYAR || month === JewishMonthsNames.SIVAN && day < 6)) {\n addTefillahNote(\"No Av Harachamim\", '\\u05D0\"\\u05D0 \\u05D0\\u05D1 \\u05D4\\u05E8\\u05D7\\u05DE\\u05D9\\u05DD');\n }\n }\n if (showDafYomi !== false) {\n addDayNote(jdate.getDafYomi(), jdate.getDafyomiHeb());\n }\n if (isNotBeinHasmashos && (month === JewishMonthsNames.NISSAN && day > 15 || month === JewishMonthsNames.IYAR || month === JewishMonthsNames.SIVAN && day < 6)) {\n const dayOfSefirah = jdate.getDayOfOmer();\n if (dayOfSefirah > 0) {\n addTefillahNote(Utils.getOmerNusach(dayOfSefirah, \"ashkenaz\"));\n }\n }\n return {\n dayNotes: [...new Set(dayNotes)],\n tefillahNotes: [...new Set(tefillahNotes)]\n };\n}\nfunction getShabbosNotifications() {\n const { month, day, isLeapYear, isMorning, isYomTov, jdate, isDaytime, isAfternoon } = dayInfo;\n if (month === JewishMonthsNames.NISSAN && day > 7 && day < 15) {\n addDayNote(\"Shabbos Hagadol\", \"\\u05E9\\u05D1\\u05EA \\u05D4\\u05D2\\u05D3\\u05D5\\u05DC\");\n } else if (month === JewishMonthsNames.TISHREI && day > 2 && day < 10) {\n addDayNote(\"Shabbos Shuva\", \"\\u05E9\\u05D1\\u05EA \\u05E9\\u05D5\\u05D1\\u05D4\");\n } else if (month === JewishMonthsNames.AV && day > 2 && day < 10) {\n addDayNote(\"Shabbos Chazon\", \"\\u05E9\\u05D1\\u05EA \\u05D7\\u05D6\\u05D5\\u05DF\");\n } else if (month === (isLeapYear ? JewishMonthsNames.ADAR : JewishMonthsNames.SHVAT) && day > 24 || month === (isLeapYear ? JewishMonthsNames.ADAR_SHEINI : JewishMonthsNames.ADAR) && day === 1) {\n addDayNote(\"Parshas Shkalim\", \"\\u05E4\\u05E8\\u05E9\\u05EA \\u05E9\\u05E7\\u05DC\\u05D9\\u05DD\");\n } else if (month === (isLeapYear ? JewishMonthsNames.ADAR_SHEINI : JewishMonthsNames.ADAR) && day > 7 && day < 14) {\n addDayNote(\"Parshas Zachor\", \"\\u05E4\\u05E8\\u05E9\\u05EA \\u05D6\\u05DB\\u05D5\\u05E8\");\n } else if (month === (isLeapYear ? JewishMonthsNames.ADAR_SHEINI : JewishMonthsNames.ADAR) && day > 16 && day < 24) {\n addDayNote(\"Parshas Parah\", \"\\u05E4\\u05E8\\u05E9\\u05EA \\u05E4\\u05E8\\u05D4\");\n } else if (month === (isLeapYear ? JewishMonthsNames.ADAR_SHEINI : JewishMonthsNames.ADAR) && day > 23 && day < 30 || month === JewishMonthsNames.NISSAN && day === 1) {\n addDayNote(\"Parshas Hachodesh\", \"\\u05E4\\u05E8\\u05E9\\u05EA \\u05D4\\u05D7\\u05D5\\u05D3\\u05E9\");\n }\n if (isMorning && !isYomTov) {\n const sedra = jdate.getSedra(israel);\n if (sedra.sedras.length > 0) {\n addTefillahNote(\n `Kriyas Hatorah Parshas ${sedra.toString()}`,\n `\\u05E7\\u05D4\"\\u05EA \\u05E4\\u05E8\\u05E9\\u05EA ${sedra.toStringHeb()}`\n );\n }\n if (month !== JewishMonthsNames.ELLUL && day > 22 && day < 30) {\n const nextMonth = jdate.addMonths(1);\n addTefillahNote(\n \"The molad will be \" + Molad.getString(nextMonth.Year, nextMonth.Month),\n \"\\u05D4\\u05DE\\u05D5\\u05DC\\u05D3 \\u05D9\\u05D4\\u05D9\\u05D4 \\u05D1\" + Molad.getStringHeb(nextMonth.Year, nextMonth.Month)\n );\n addTefillahNote(\"Bircas Hachodesh\", \"\\u05DE\\u05D1\\u05E8\\u05DB\\u05D9\\u05DD \\u05D4\\u05D7\\u05D5\\u05D3\\u05E9\");\n if (month !== JewishMonthsNames.NISSAN && month !== JewishMonthsNames.IYAR) {\n addTefillahNote(\"No Av Harachamim\", '\\u05D0\"\\u05D0 \\u05D0\\u05D1 \\u05D4\\u05E8\\u05D7\\u05DE\\u05D9\\u05DD');\n }\n }\n }\n if (month !== JewishMonthsNames.TISHREI && (day === 1 || day === 30)) {\n addDayNote(\"Rosh Chodesh\", \"\\u05E8\\u05D0\\u05E9 \\u05D7\\u05D5\\u05D3\\u05E9\");\n addTefillahNote(\"Ya`aleh Viyavo\", \"\\u05D9\\u05E2\\u05DC\\u05D4 \\u05D5\\u05D9\\u05D1\\u05D0\");\n if (showGaonShirShelYom && isDaytime) {\n addTefillahNote(\"Barchi Nafshi\", '\\u05E9\\u05D9\\u05E8 \\u05E9\\u05DC \\u05D9\\u05D5\\u05DD - \\u05E7\\u05D9\"\\u05D3 - \\u05D1\\u05E8\\u05DB\\u05D9 \\u05E0\\u05E4\\u05E9\\u05D9');\n }\n if (isDaytime && month !== JewishMonthsNames.TEVES && !(month === JewishMonthsNames.KISLEV && day === 30)) {\n addTefillahNote(\"Chatzi Hallel\", \"\\u05D7\\u05E6\\u05D9 \\u05D4\\u05DC\\u05DC\");\n }\n addTefillahNote(\"No Av Harachamim\", '\\u05D0\"\\u05D0 \\u05D0\\u05D1 \\u05D4\\u05E8\\u05D7\\u05DE\\u05D9\\u05DD');\n } else if (isYomTov) {\n addTefillahNote(\"No Av Harachamim\", '\\u05D0\"\\u05D0 \\u05D0\\u05D1 \\u05D4\\u05E8\\u05D7\\u05DE\\u05D9\\u05DD');\n if (showGaonShirShelYom && isDaytime) {\n addTefillahNote(\"\\u05E9\\u05D9\\u05E8 \\u05E9\\u05DC \\u05D9\\u05D5\\u05DD - \\u05DE\\u05D6\\u05DE\\u05D5\\u05E8 \\u05E9\\u05D9\\u05E8 \\u05DC\\u05D9\\u05D5\\u05DD \\u05D4\\u05E9\\u05D1\\u05EA\");\n }\n }\n if (isAfternoon && !(month === JewishMonthsNames.TISHREI && day === 10)) {\n const sedra = jdate.addDays(1).getSedra(israel);\n addTefillahNote(\n \"Kriyas Hatorah Mincha Parshas \" + sedra.sedras[0].eng,\n '\\u05E7\\u05D4\"\\u05EA \\u05D1\\u05DE\\u05E0\\u05D7\\u05D4 \\u05E4\\u05E8\\u05E9\\u05EA ' + sedra.sedras[0].heb\n );\n }\n if (isAfternoon && (month === JewishMonthsNames.NISSAN && day > 21 || month <= JewishMonthsNames.ELLUL && !(month === JewishMonthsNames.AV && [8, 9].includes(day)))) {\n const prakim = PirkeiAvos.getPrakim(jdate, israel);\n if (prakim.length > 0) {\n addDayNote(\n \"Pirkei Avos - \" + prakim.map((s) => `Perek ${Utils.toJewishNumber(s)}`).join(\" and \"),\n \"\\u05E4\\u05E8\\u05E7\\u05D9 \\u05D0\\u05D1\\u05D5\\u05EA - \" + prakim.map((s) => `\\u05E4\\u05E8\\u05E7 ${Utils.toJewishNumber(s)}`).join(\" \\u05D5\")\n );\n }\n }\n}\nfunction getWeekDayNotifications() {\n const {\n isNightTime,\n dow,\n isYomTov,\n month,\n day,\n isMorning,\n jdate,\n location,\n isDaytime,\n isAfternoon\n } = dayInfo;\n if (isNightTime && dow === DaysOfWeek.SUNDAY) {\n addTefillahNote(\n month === JewishMonthsNames.NISSAN && day === 15 || month === JewishMonthsNames.SIVAN && day === 6 ? \"\\u05D5\\u05EA\\u05D5\\u05D3\\u05D9\\u05E2\\u05D9\\u05E0\\u05D5\" : \"\\u05D0\\u05EA\\u05D4 \\u05D7\\u05D5\\u05E0\\u05E0\\u05EA\\u05E0\\u05D5\"\n );\n if (month === JewishMonthsNames.ELLUL && day > 22 || month === JewishMonthsNames.TISHREI && day > 4 && day < 22 || month === JewishMonthsNames.NISSAN && day > 8 && day < 15 || month === JewishMonthsNames.SIVAN && day < 6) {\n addTefillahNote(\"No Vihi Noam\", '\\u05D0\"\\u05D0 \\u05D5\\u05D9\\u05D4\\u05D9 \\u05E0\\u05D5\\u05E2\\u05DD');\n }\n } else if (isNightTime && (month === JewishMonthsNames.NISSAN && (day === 16 || day === 22) || month === JewishMonthsNames.SIVAN && day === 7 || month === JewishMonthsNames.TISHREI && [3, 11, 16, 23].includes(day))) {\n addTefillahNote(\"Ata Chonantanu\", \"\\u05D0\\u05EA\\u05D4 \\u05D7\\u05D5\\u05E0\\u05E0\\u05EA\\u05E0\\u05D5\");\n }\n if (isMorning && !isYomTov && (dow === DaysOfWeek.MONDAY || dow === DaysOfWeek.THURSDAY) && !hasOwnKriyasHatorah(jdate, location)) {\n const sedra = jdate.getSedra(israel);\n if (sedra.sedras.length > 0) {\n addTefillahNote(\n `Kriyas Hatorah Parshas ${sedra.sedras[0].eng}`,\n `\\u05E7\\u05D4\"\\u05EA \\u05E4\\u05E8\\u05E9\\u05EA ${sedra.sedras[0].heb}`\n );\n }\n }\n if (month !== JewishMonthsNames.TISHREI && day === 1 || day === 30) {\n dayInfo.noTachnun = true;\n addDayNote(\"Rosh Chodesh\", \"\\u05E8\\u05D0\\u05E9 \\u05D7\\u05D5\\u05D3\\u05E9\");\n addTefillahNote(\"Ya`aleh Viyavo\", \"\\u05D9\\u05E2\\u05DC\\u05D4 \\u05D5\\u05D9\\u05D1\\u05D0\");\n if (showGaonShirShelYom && isDaytime) {\n addTefillahNote(\"Barchi Nafshi\", '\\u05E9\\u05D9\\u05E8 \\u05E9\\u05DC \\u05D9\\u05D5\\u05DD - \\u05E7\\u05D9\"\\u05D3 - \\u05D1\\u05E8\\u05DB\\u05D9 \\u05E0\\u05E4\\u05E9\\u05D9');\n }\n if (isDaytime && month !== JewishMonthsNames.TEVES && !(month === JewishMonthsNames.KISLEV && day === 30)) {\n addTefillahNote(\"Chatzi Hallel\", \"\\u05D7\\u05E6\\u05D9 \\u05D4\\u05DC\\u05DC\");\n if (isMorning && dow !== DaysOfWeek.SHABBOS) {\n noLaminatzeach();\n }\n }\n } else if (month !== JewishMonthsNames.ELLUL && (dow < DaysOfWeek.FRIDAY && day === 29 || dow === DaysOfWeek.THURSDAY && day === 28) && isAfternoon) {\n addTefillahNote(\"Yom Kippur Kattan\", '\\u05D9\\u05D5\"\\u05DB \\u05E7\\u05D8\\u05DF');\n }\n if (jdate.hasEiruvTavshilin(israel)) {\n addDayNote(\"Eruv Tavshilin\", \"\\u05E2\\u05D9\\u05E8\\u05D5\\u05D1 \\u05EA\\u05D1\\u05E9\\u05D9\\u05DC\\u05D9\\u05DF\");\n }\n}\nfunction getAroundTheYearNotifications() {\n const {\n month,\n day,\n isNightTime,\n dow,\n isAfternoon,\n isDaytime,\n isMorning,\n isAfterChatzosHalayla,\n jdate,\n sdate,\n isLeapYear,\n location\n } = dayInfo;\n let showVsainTalUmatarInChul = false;\n if (!location.Israel && sdate.getMonth() === 11 && sdate.getDate() > 4) {\n const startVsainTalUmatar = jdate.Year % 4 === 0 ? 6 : 5;\n showVsainTalUmatarInChul = sdate.getDate() >= startVsainTalUmatar && sdate.getDate() <= startVsainTalUmatar + 14;\n }\n switch (month) {\n case JewishMonthsNames.NISSAN:\n dayInfo.noTachnun = true;\n if (day > 15) {\n addTefillahNote(\"Morid Hatal\", \"\\u05DE\\u05D5\\u05E8\\u05D9\\u05D3 \\u05D4\\u05D8\\u05DC\");\n }\n if (dow !== DaysOfWeek.SHABBOS && day > 15 && day !== 21) {\n addTefillahNote(\"Vesain Bracha\", \"\\u05D5\\u05EA\\u05DF \\u05D1\\u05E8\\u05DB\\u05D4\");\n }\n if (isMorning && dow !== DaysOfWeek.SHABBOS && [14, 16, 17, 18, 19, 20].includes(day)) {\n addTefillahNote(\"No Mizmor Lesodah\", '\\u05D0\"\\u05D0 \\u05DE\\u05D6\\u05DE\\u05D5\\u05E8 \\u05DC\\u05EA\\u05D5\\u05D3\\u05D4');\n if (dow !== DaysOfWeek.SHABBOS) {\n noLaminatzeach();\n }\n }\n if (day === 15) {\n addDayNote(\"First Day of Pesach\", '\\u05D9\\u05D5\"\\u05D8 \\u05E8\\u05D0\\u05E9\\u05D5\\u05DF \\u05E9\\u05DC \\u05E4\\u05E1\\u05D7');\n addTefillahNote(\"Full Hallel\", \"\\u05D4\\u05DC\\u05DC \\u05D4\\u05E9\\u05DC\\u05DD\");\n if (isAfternoon) {\n addTefillahNote(\"Morid Hatal\", \"\\u05DE\\u05D5\\u05E8\\u05D9\\u05D3 \\u05D4\\u05D8\\u05DC\");\n }\n if (showGaonShirShelYom && isDaytime && dow !== DaysOfWeek.SHABBOS) {\n addTefillahNote('\\u05E9\\u05D9\\u05E8 \\u05E9\\u05DC \\u05D9\\u05D5\\u05DD - \\u05E7\\u05D9\"\\u05D3 - \\u05D1\\u05E6\\u05D0\\u05EA \\u05D9\\u05E9\\u05E8\\u05D0\\u05DC');\n }\n addTefillahNote(\"Ya`aleh V`yavo\", \"\\u05D9\\u05E2\\u05DC\\u05D4 \\u05D5\\u05D9\\u05D1\\u05D0\");\n } else if (day === 16 && !israel) {\n addDayNote(\"Second Day of Pesach\", '\\u05D9\\u05D5\"\\u05D8 \\u05E9\\u05E0\\u05D9 \\u05E9\\u05DC \\u05E4\\u05E1\\u05D7');\n addTefillahNote(\"Full Hallel\", \"\\u05D4\\u05DC\\u05DC \\u05D4\\u05E9\\u05DC\\u05DD\");\n addTefillahNote(\"Morid Hatal\", \"\\u05DE\\u05D5\\u05E8\\u05D9\\u05D3 \\u05D4\\u05D8\\u05DC\");\n if (showGaonShirShelYom && isDaytime && dow !== DaysOfWeek.SHABBOS) {\n addTefillahNote('\\u05E9\\u05D9\\u05E8 \\u05E9\\u05DC \\u05D9\\u05D5\\u05DD - \\u05E7\\u05D9\"\\u05D3 - \\u05D1\\u05E6\\u05D0\\u05EA \\u05D9\\u05E9\\u05E8\\u05D0\\u05DC');\n }\n addTefillahNote(\"Ya`aleh V`yavo\", \"\\u05D9\\u05E2\\u05DC\\u05D4 \\u05D5\\u05D9\\u05D1\\u05D0\");\n } else if ([16, 17, 18, 19, 20, 21].includes(day)) {\n if (day === 21) {\n addDayNote(\"Shvi`i Shel Pesach\", \"\\u05E9\\u05D1\\u05D9\\u05E2\\u05D9 \\u05E9\\u05DC \\u05E4\\u05DD\\u05D7\");\n if (isDaytime) {\n if (israel) {\n addTefillahNote(\"Yizkor\", \"\\u05D9\\u05D6\\u05DB\\u05D5\\u05E8\");\n }\n if (showGaonShirShelYom && dow !== DaysOfWeek.SHABBOS) {\n addTefillahNote(`\\u05E9\\u05D9\\u05E8 \\u05E9\\u05DC \\u05D9\\u05D5\\u05DD - \\u05D9\"\\u05D7 - \\u05DC\\u05DE\\u05E0\\u05E6\\u05D7 \\u05DC\\u05E2\\u05D1\\u05D3 \\u05D4'`);\n }\n }\n } else {\n addDayNote(\"Chol Ha`moed Pesach\", \"\\u05E4\\u05E1\\u05D7 - \\u05D7\\u05D5\\u05DC \\u05D4\\u05DE\\u05D5\\u05E2\\u05D3\");\n addTefillahNote(\"Ya`aleh Viyavo\", \"\\u05D9\\u05E2\\u05DC\\u05D4 \\u05D5\\u05D9\\u05D1\\u05D0\");\n if (isMorning && dow !== DaysOfWeek.SHABBOS) noLaminatzeach();\n if (showGaonShirShelYom && isDaytime && dow !== DaysOfWeek.SHABBOS) {\n switch (day) {\n case 16:\n if (dow === DaysOfWeek.SUNDAY) {\n addTefillahNote('\\u05E9\\u05D9\\u05E8 \\u05E9\\u05DC \\u05D9\\u05D5\\u05DD - \\u05E7\\u05D9\"\\u05D3 - \\u05D1\\u05E6\\u05D0\\u05EA \\u05D9\\u05E9\\u05E8\\u05D0\\u05DC');\n } else {\n addTefillahNote('\\u05E9\\u05D9\\u05E8 \\u05E9\\u05DC \\u05D9\\u05D5\\u05DD - \\u05E2\"\\u05D7 - \\u05DE\\u05E9\\u05DB\\u05D9\\u05DC \\u05DC\\u05D0\\u05E1\\u05E3');\n }\n break;\n case 17:\n if (dow === DaysOfWeek.MONDAY) {\n addTefillahNote('\\u05E9\\u05D9\\u05E8 \\u05E9\\u05DC \\u05D9\\u05D5\\u05DD - \\u05E2\"\\u05D7 - \\u05DE\\u05E9\\u05DB\\u05D9\\u05DC \\u05DC\\u05D0\\u05E1\\u05E3');\n } else {\n addTefillahNote(\"\\u05E9\\u05D9\\u05E8 \\u05E9\\u05DC \\u05D9\\u05D5\\u05DD - \\u05E4' - \\u05DC\\u05DE\\u05E0\\u05E6\\u05D7 \\u05D0\\u05DC \\u05E9\\u05D5\\u05E9\\u05E0\\u05D9\\u05DD\");\n }\n break;\n case 18:\n if (dow === DaysOfWeek.TUESDAY || dow === DaysOfWeek.SUNDAY) {\n addTefillahNote(\"\\u05E9\\u05D9\\u05E8 \\u05E9\\u05DC \\u05D9\\u05D5\\u05DD - \\u05E4' - \\u05DC\\u05DE\\u05E0\\u05E6\\u05D7 \\u05D0\\u05DC \\u05E9\\u05D5\\u05E9\\u05E0\\u05D9\\u05DD\");\n } else {\n addTefillahNote(`\\u05E9\\u05D9\\u05E8 \\u05E9\\u05DC \\u05D9\\u05D5\\u05DD - \\u05E7\"\\u05D4 - \\u05D4\\u05D5\\u05D3\\u05D5 \\u05DC\\u05D4'`);\n }\n break;\n case 19:\n if (dow === DaysOfWeek.THURSDAY) {\n addTefillahNote('\\u05E9\\u05D9\\u05E8 \\u05E9\\u05DC \\u05D9\\u05D5\\u05DD - \\u05E7\\u05DC\"\\u05D4 - \\u05D4\\u05DC\\u05DC\\u05D5\\u05D9-\\u05D4 \\u05D4\\u05DC\\u05DC\\u05D5 \\u05D0\\u05EA \\u05E9\\u05DD');\n } else {\n addTefillahNote(`\\u05E9\\u05D9\\u05E8 \\u05E9\\u05DC \\u05D9\\u05D5\\u05DD - \\u05E7\"\\u05D4 - \\u05D4\\u05D5\\u05D3\\u05D5 \\u05DC\\u05D4'`);\n }\n break;\n case 20:\n if (dow === DaysOfWeek.FRIDAY) {\n addTefillahNote('\\u05E9\\u05D9\\u05E8 \\u05E9\\u05DC \\u05D9\\u05D5\\u05DD - \\u05E1\"\\u05D5 - \\u05DC\\u05DE\\u05E0\\u05E6\\u05D7 \\u05E9\\u05D9\\u05E8 \\u05DE\\u05D6\\u05DE\\u05D5\\u05E8');\n } else {\n addTefillahNote('\\u05E9\\u05D9\\u05E8 \\u05E9\\u05DC \\u05D9\\u05D5\\u05DD - \\u05E7\\u05DC\"\\u05D4 - \\u05D4\\u05DC\\u05DC\\u05D5\\u05D9-\\u05D4 \\u05D4\\u05DC\\u05DC\\u05D5 \\u05D0\\u05EA \\u05E9\\u05DD');\n }\n break;\n }\n }\n }\n if (isDaytime) addTefillahNote(\"Half Hallel\", \"\\u05D7\\u05E6\\u05D9 \\u05D4\\u05DC\\u05DC\");\n addTefillahNote(\"Ya`aleh V`yavo\", \"\\u05D9\\u05E2\\u05DC\\u05D4 \\u05D5\\u05D9\\u05D1\\u05D0\");\n }\n if (day === 22) {\n if (israel) {\n addDayNote(\"Isru Chag\", \"\\u05D0\\u05D9\\u05E1\\u05E8\\u05D5 \\u05D7\\u05D2\");\n } else {\n addDayNote(\"Acharon Shel Pesach\", \"\\u05D0\\u05D7\\u05E8\\u05D5\\u05DF \\u05E9\\u05DC \\u05E4\\u05E1\\u05D7\");\n if (isDaytime) {\n addTefillahNote(\"Yizkor\", \"\\u05D9\\u05D6\\u05DB\\u05D5\\u05E8\");\n addTefillahNote(\"Half Hallel\", \"\\u05D7\\u05E6\\u05D9 \\u05D4\\u05DC\\u05DC\");\n }\n addTefillahNote(\"Ya`aleh V`yavo\", \"\\u05D9\\u05E2\\u05DC\\u05D4 \\u05D5\\u05D9\\u05D1\\u05D0\");\n }\n if (dow !== DaysOfWeek.SHABBOS && isMorning) {\n noLaminatzeach();\n }\n }\n if (dow === DaysOfWeek.SHABBOS && ([15, 16, 17, 18, 19, 20, 21].includes(day) || !israel && day === 22)) {\n addTefillahNote(\"Shir Hashirim\", \"\\u05DE\\u05D2\\u05D9\\u05DC\\u05EA \\u05E9\\u05D9\\u05E8 \\u05D4\\u05E9\\u05D9\\u05E8\\u05D9\\u05DD\");\n }\n break;\n case JewishMonthsNames.IYAR:\n if (day <= 15) {\n addTefillahNote(\"Morid Hatal\", \"\\u05DE\\u05D5\\u05E8\\u05D9\\u05D3 \\u05D4\\u05D8\\u05DC\");\n if (dow !== DaysOfWeek.SHABBOS) {\n addTefillahNote(\"V`sain Bracha\", \"\\u05D5\\u05EA\\u05DF \\u05D1\\u05E8\\u05DB\\u05D4\");\n }\n }\n if (day === 14 || day === 13 && isAfternoon || day === 18 || day === 17 && isAfternoon) {\n dayInfo.noTachnun = true;\n if (day === 14) {\n addDayNote(\"Pesach Sheini\", \"\\u05E4\\u05E1\\u05D7 \\u05E9\\u05E0\\u05D9\");\n }\n }\n if (isMorning && (dow === DaysOfWeek.MONDAY && day > 3 && day < 13 || dow === DaysOfWeek.THURSDAY && day > 6 && day < 14 || dow === DaysOfWeek.MONDAY && day > 10 && day < 18 && day !== 14)) {\n addTefillahNote(\"Ba`hab\", '\\u05E1\\u05DC\\u05D9\\u05D7\\u05D5\\u05EA \\u05D1\\u05D4\"\\u05D1');\n addTefillahNote(\"Avinu Malkeinu\", \"\\u05D0\\u05D1\\u05D9\\u05E0\\u05D5 \\u05DE\\u05DC\\u05DB\\u05E0\\u05D5\");\n }\n break;\n case JewishMonthsNames.SIVAN:\n if (day < 13) {\n dayInfo.noTachnun = true;\n }\n if (day === 6) {\n addDayNote(\"Shavuos\", \"\\u05D9\\u05D5\\u05DD \\u05D8\\u05D5\\u05D1 \\u05E9\\u05DC \\u05E9\\u05D1\\u05D5\\u05E2\\u05D5\\u05EA\");\n if (isDaytime) {\n addTefillahNote(\"Full Hallel\", \"\\u05D4\\u05DC\\u05DC \\u05D4\\u05E9\\u05DC\\u05DD\");\n addTefillahNote(\"Megilas Rus\", \"\\u05DE\\u05D2\\u05D9\\u05DC\\u05EA \\u05E8\\u05D5\\u05EA\");\n addTefillahNote(\"Akdamus\", \"\\u05D0\\u05E7\\u05D3\\u05DE\\u05D5\\u05EA\");\n if (israel) addTefillahNote(\"Yizkor\", \"\\u05D9\\u05D6\\u05DB\\u05D5\\u05E8\");\n if (showGaonShirShelYom) {\n addTefillahNote('\\u05E9\\u05D9\\u05E8 \\u05E9\\u05DC \\u05D9\\u05D5\\u05DD - \\u05D9\"\\u05D8 - ..\\u05D4\\u05E9\\u05DE\\u05D9\\u05DD \\u05DE\\u05E1\\u05E4\\u05E8\\u05D9\\u05DD..');\n }\n }\n addTefillahNote(\"Ya`aleh V`yavo\", \"\\u05D9\\u05E2\\u05DC\\u05D4 \\u05D5\\u05D9\\u05D1\\u05D0\");\n } else if (day === 7) {\n if (israel) {\n addDayNote(\"Issru Chag\", \"\\u05D0\\u05D9\\u05E1\\u05E8\\u05D5 \\u05D7\\u05D2\");\n if (isMorning && dow !== DaysOfWeek.SHABBOS) {\n noLaminatzeach();\n }\n } else {\n addDayNote(\"Shavuos Second Day\", \"\\u05D9\\u05D5\\u05DD \\u05D8\\u05D5\\u05D1 \\u05E9\\u05DC \\u05E9\\u05D1\\u05D5\\u05E2\\u05D5\\u05EA\");\n if (isDaytime) {\n addTefillahNote(\"Full Hallel\", \"\\u05D4\\u05DC\\u05DC \\u05D4\\u05E9\\u05DC\\u05DD\");\n addTefillahNote(\"Yizkor\", \"\\u05D9\\u05D6\\u05DB\\u05D5\\u05E8\");\n }\n addTefillahNote(\"Ya`aleh V`yavo\", \"\\u05D9\\u05E2\\u05DC\\u05D4 \\u05D5\\u05D9\\u05D1\\u05D0\");\n }\n }\n break;\n case JewishMonthsNames.TAMUZ:\n if (isDaytime && (day === 17 && DaysOfWeek.SHABBOS !== 6 || day === 18 && dow === DaysOfWeek.SUNDAY)) {\n if (isDaytime) {\n addDayNote(\"Shiva Asar B`Tamuz\", '\\u05D9\"\\u05D6 \\u05D1\\u05EA\\u05DE\\u05D5\\u05D6');\n addTefillahNote(\"Avinu Malkeinu\", \"\\u05D0\\u05D1\\u05D9\\u05E0\\u05D5 \\u05DE\\u05DC\\u05DB\\u05E0\\u05D5\");\n addTefillahNote(\"Aneinu\", \"\\u05E2\\u05E0\\u05E0\\u05D5\");\n }\n if (isMorning) {\n addTefillahNote(\"Selichos\", \"\\u05E1\\u05DC\\u05D9\\u05D7\\u05D5\\u05EA\");\n }\n }\n break;\n case JewishMonthsNames.AV:\n if (isAfternoon && day === 8 && dow !== DaysOfWeek.FRIDAY) {\n dayInfo.noTachnun = true;\n } else if (day === 9 && dow !== DaysOfWeek.SHABBOS || day === 10 && dow === DaysOfWeek.SUNDAY) {\n addDayNote(\"Tish B`Av\", \"\\u05EA\\u05E9\\u05E2\\u05D4 \\u05D1\\u05D0\\u05D1\");\n if (isDaytime) {\n addTefillahNote(\"Kinos\", \"\\u05E7\\u05D9\\u05E0\\u05D5\\u05EA\");\n addTefillahNote(\"Aneinu\", \"\\u05E2\\u05E0\\u05E0\\u05D5\");\n if (isMorning && dow !== DaysOfWeek.SHABBOS) {\n noLaminatzeach();\n }\n } else {\n addTefillahNote(\"Megilas Eicha\", \"\\u05DE\\u05D2\\u05D9\\u05DC\\u05EA \\u05D0\\u05D9\\u05DB\\u05D4\");\n if (isNightTime && dow === DaysOfWeek.SUNDAY) {\n addTefillahNote(\"No Vihi Noam\", '\\u05D0\"\\u05D0 \\u05D5\\u05D9\\u05D4\\u05D9 \\u05E0\\u05D5\\u05E2\\u05DD');\n }\n }\n dayInfo.noTachnun = true;\n } else if (isAfternoon && day === 14) {\n dayInfo.noTachnun = true;\n } else if (day === 15) {\n addDayNote(\"Tu B`Av\", '\\u05D8\"\\u05D5 \\u05D1\\u05D0\\u05D1');\n dayInfo.noTachnun = true;\n }\n break;\n case JewishMonthsNames.ELLUL:\n addTefillahNote(\"L`Dovid Hashem Ori\", \"\\u05DC\\u05D3\\u05D5\\u05D3 \\u05D4\");\n if (day > 20 && dow !== DaysOfWeek.SHABBOS && (isAfterChatzosHalayla || isMorning)) {\n let startedSelichos = day >= 26;\n if (day < 26) {\n const daysToRH = 30 - day, dowRH = (daysToRH + dow) % 7;\n switch (dowRH) {\n case DaysOfWeek.MONDAY:\n startedSelichos = day >= 22;\n break;\n case DaysOfWeek.TUESDAY:\n startedSelichos = day >= 21;\n break;\n case DaysOfWeek.SHABBOS:\n startedSelichos = day >= 24;\n break;\n }\n }\n if (startedSelichos) {\n addTefillahNote(\"Selichos\", \"\\u05E1\\u05DC\\u05D9\\u05D7\\u05D5\\u05EA\");\n }\n }\n if (day === 29) {\n dayInfo.noTachnun = true;\n }\n break;\n case JewishMonthsNames.TISHREI:\n if (day < 11) {\n addTefillahNote(\"Hamelech Hakadosh\", \"\\u05D4\\u05DE\\u05DC\\u05DA \\u05D4\\u05E7\\u05D3\\u05D5\\u05E9\");\n if (dow !== DaysOfWeek.SHABBOS && day !== 9) {\n addTefillahNote(\"Avinu Malkeinu\", \"\\u05D0\\u05D1\\u05D9\\u05E0\\u05D5 \\u05DE\\u05DC\\u05DB\\u05E0\\u05D5\");\n }\n }\n if (day > 4 && day < 10 && dow !== DaysOfWeek.SHABBOS) {\n addTefillahNote(\"Selichos\", \"\\u05E1\\u05DC\\u05D9\\u05D7\\u05D5\\u05EA\");\n addTefillahNote(\"Hamelech Hamishpat\", \"\\u05D4\\u05DE\\u05DC\\u05DA \\u05D4\\u05DE\\u05E9\\u05E4\\u05D8\");\n }\n if (dow === DaysOfWeek.SHABBOS && day > 2 && day < 10) {\n addDayNote(\"Shabbos Shuva\", \"\\u05E9\\u05D1\\u05EA \\u05E9\\u05D5\\u05D1\\u05D4\");\n }\n if (day >= 10) {\n dayInfo.noTachnun = true;\n }\n switch (day) {\n case 1:\n addDayNote(\"Rosh Hashana\", \"\\u05E8\\u05D0\\u05E9 \\u05D4\\u05E9\\u05E0\\u05D4\");\n if (dow !== DaysOfWeek.SHABBOS && isDaytime) {\n addTefillahNote(\"Tekias Shofar\", \"\\u05EA\\u05E7\\u05D9\\u05E2\\u05EA \\u05E9\\u05D5\\u05E4\\u05E8\");\n if (showGaonShirShelYom) {\n addTefillahNote('\\u05E9\\u05D9\\u05E8 \\u05E9\\u05DC \\u05D9\\u05D5\\u05DD - \\u05E4\"\\u05D0 - \\u05DC\\u05DE\\u05E0\\u05E6\\u05D7 \\u05E2\\u05DC \\u05D4\\u05D2\\u05EA\\u05D9\\u05EA');\n }\n if (isAfternoon) {\n addDayNote(\"Tashlich\", \"\\u05EA\\u05E9\\u05DC\\u05D9\\u05DA\");\n }\n }\n addTefillahNote(\"Ya`aleh V`yavo\", \"\\u05D9\\u05E2\\u05DC\\u05D4 \\u05D5\\u05D9\\u05D1\\u05D0\");\n break;\n case 2:\n addDayNote(\"Rosh Hashana\", \"\\u05E8\\u05D0\\u05E9 \\u05D4\\u05E9\\u05E0\\u05D4\");\n if (isDaytime) {\n addTefillahNote(\"Tekias Shofar\", \"\\u05EA\\u05E7\\u05D9\\u05E2\\u05EA \\u05E9\\u05D5\\u05E4\\u05E8\");\n if (showGaonShirShelYom) {\n addTefillahNote('\\u05E9\\u05D9\\u05E8 \\u05E9\\u05DC \\u05D9\\u05D5\\u05DD - \\u05E4\"\\u05D0 - \\u05DC\\u05DE\\u05E0\\u05E6\\u05D7 \\u05E2\\u05DC \\u05D4\\u05D2\\u05EA\\u05D9\\u05EA');\n }\n if (dow === DaysOfWeek.SUNDAY && isAfternoon) {\n addDayNote(\"Tashlich\", \"\\u05EA\\u05E9\\u05DC\\u05D9\\u05DA\");\n }\n }\n addTefillahNote(\"Ya`aleh V`yavo\", \"\\u05D9\\u05E2\\u05DC\\u05D4 \\u05D5\\u05D9\\u05D1\\u05D0\");\n break;\n case 3:\n if (dow !== DaysOfWeek.SHABBOS) {\n if (isDaytime) {\n addDayNote(\"Fast of Tzom Gedalya\", \"\\u05E6\\u05D5\\u05DD \\u05D2\\u05D3\\u05DC\\u05D9\\u05D4\");\n addTefillahNote(\"Aneinu\", \"\\u05E2\\u05E0\\u05E0\\u05D5\");\n }\n if (isAfterChatzosHalayla || isMorning) {\n addTefillahNote(\"Selichos\", \"\\u05E1\\u05DC\\u05D9\\u05D7\\u05D5\\u05EA\");\n }\n addTefillahNote(\"Hamelech Hamishpat\", \"\\u05D4\\u05DE\\u05DC\\u05DA \\u05D4\\u05DE\\u05E9\\u05E4\\u05D8\");\n }\n break;\n case 4:\n if (dow === DaysOfWeek.SUNDAY) {\n if (isDaytime) {\n addDayNote(\"Fast of Tzom Gedalya\", \"\\u05E6\\u05D5\\u05DD \\u05D2\\u05D3\\u05DC\\u05D9\\u05D4\");\n addTefillahNote(\"Aneinu\", \"\\u05E2\\u05E0\\u05E0\\u05D5\");\n }\n if (isAfterChatzosHalayla || isMorning) {\n addTefillahNote(\"Selichos\", \"\\u05E1\\u05DC\\u05D9\\u05D7\\u05D5\\u05EA\");\n }\n addTefillahNote(\"Hamelech Hamishpat\", \"\\u05D4\\u05DE\\u05DC\\u05DA \\u05D4\\u05DE\\u05E9\\u05E4\\u05D8\");\n } else if (dow !== DaysOfWeek.SHABBOS) {\n addTefillahNote(\"Hamelech Hamishpat\", \"\\u05D4\\u05DE\\u05DC\\u05DA \\u05D4\\u05DE\\u05E9\\u05E4\\u05D8\");\n if (isAfterChatzosHalayla || isMorning) {\n addTefillahNote(\"Selichos\", \"\\u05E1\\u05DC\\u05D9\\u05D7\\u05D5\\u05EA\");\n }\n }\n break;\n case 9:\n addDayNote(\"Erev Yom Kippur\", \"\\u05E2\\u05E8\\u05D1 \\u05D9\\u05D5\\u05DD \\u05DB\\u05D9\\u05E4\\u05D5\\u05E8\");\n if (isMorning) {\n addTefillahNote(\"No Mizmor L`Sodah\", '\\u05D0\"\\u05D0 \\u05DE\\u05D6\\u05DE\\u05D5\\u05E8 \\u05DC\\u05EA\\u05D5\\u05D3\\u05D4');\n if (dow !== DaysOfWeek.SHABBOS) {\n noLaminatzeach();\n }\n if (dow === DaysOfWeek.FRIDAY) {\n addTefillahNote(\"Avinu Malkeinu\", \"\\u05D0\\u05D1\\u05D9\\u05E0\\u05D5 \\u05DE\\u05DC\\u05DB\\u05E0\\u05D5\");\n }\n } else if (isAfternoon) {\n addTefillahNote(\"Vidduy\", \"\\u05D5\\u05D3\\u05D5\\u05D9 \\u05D1\\u05E2\\u05DE\\u05D9\\u05D3\\u05D4\");\n }\n if (isDaytime && dow !== DaysOfWeek.FRIDAY) {\n addTefillahNote(\"No Avinu Malkeinu\", '\\u05D0\"\\u05D0 \\u05D0\\u05D1\\u05D9\\u05E0\\u05D5 \\u05DE\\u05DC\\u05DB\\u05E0\\u05D5');\n }\n dayInfo.noTachnun = true;\n break;\n case 10:\n addDayNote(\"Yom Kippur\", \"\\u05D9\\u05D5\\u05DD \\u05D4\\u05DB\\u05D9\\u05E4\\u05D5\\u05E8\\u05D9\\u05DD\");\n addDayNote(\"\\u05DC\\u05E4\\u05E0\\u05D9 \\u05D4' \\u05EA\\u05D8\\u05D4\\u05E8\\u05D5\");\n if (isDaytime) {\n addTefillahNote(\"Yizkor\", \"\\u05D9\\u05D6\\u05DB\\u05D5\\u05E8\");\n if (showGaonShirShelYom && dow !== DaysOfWeek.SHABBOS) {\n addTefillahNote('\\u05E9\\u05D9\\u05E8 \\u05E9\\u05DC \\u05D9\\u05D5\\u05DD - \\u05DC\"\\u05D1 - \\u05DC\\u05D3\\u05D5\\u05D3 \\u05DE\\u05E9\\u05DB\\u05D9\\u05DC');\n }\n }\n if (isAfternoon) {\n addTefillahNote('\\u05E7\\u05D4\"\\u05EA \\u05D1\\u05DE\\u05E0\\u05D7\\u05D4 \\u05E1\\u05D5\\u05E3 \\u05E4\\u05E8\\u05E9\\u05EA \\u05D0\\u05D7\"\\u05DE');\n }\n break;\n case 11:\n if (isNightTime) {\n addDayNote(\"\\u05DC\\u05DA \\u05D0\\u05DB\\u05DC \\u05D1\\u05E9\\u05DE\\u05D7\\u05D4 \\u05DC\\u05D7\\u05DE\\u05DA \\u05DB\\u05D9 \\u05DB\\u05D1\\u05E8 \\u05E8\\u05E6\\u05D4 \\u05D4\\u05D0\\u05DC\\u05E7\\u05D9\\u05DD \\u05D0\\u05EA \\u05DE\\u05E2\\u05E9\\u05D9\\u05DA\");\n }\n case 15:\n addDayNote(\"First day of Sukkos\", '\\u05D9\\u05D5\"\\u05D8 \\u05E8\\u05D0\\u05E9\\u05D5\\u05DF \\u05E9\\u05DC \\u05E1\\u05D5\\u05DB\\u05D5\\u05EA');\n addTefillahNote(\"Ya`aleh V`yavo\", \"\\u05D9\\u05E2\\u05DC\\u05D4 \\u05D5\\u05D9\\u05D1\\u05D0\");\n if (isDaytime) {\n addTefillahNote(\"Full Hallel\", \"\\u05D4\\u05DC\\u05DC \\u05D4\\u05E9\\u05DC\\u05DD\");\n if (dow !== DaysOfWeek.SHABBOS) {\n addTefillahNote(\"Hoshanos - \\u05DC\\u05DE\\u05E2\\u05DF \\u05D0\\u05DE\\u05EA\\u05DA\", \"\\u05D4\\u05D5\\u05E9\\u05E2\\u05E0\\u05D5\\u05EA - \\u05DC\\u05DE\\u05E2\\u05DF \\u05D0\\u05DE\\u05EA\\u05DA\");\n addTefillahNote(\"Kah Keli\", \"\\u05E7\\u05D4 \\u05E7\\u05DC\\u05D9\");\n if (showGaonShirShelYom) {\n addTefillahNote('\\u05E9\\u05D9\\u05E8 \\u05E9\\u05DC \\u05D9\\u05D5\\u05DD - \\u05E2\"\\u05D5 - \\u05DC\\u05DE\\u05E0\\u05E6\\u05D7 \\u05D1\\u05E0\\u05D2\\u05D9\\u05E0\\u05D5\\u05EA \\u05DE\\u05D6\\u05DE\\u05D5\\u05E8');\n }\n } else {\n addTefillahNote(\"Hoshanos - \\u05D0\\u05D5\\u05DD \\u05E0\\u05E6\\u05D5\\u05E8\\u05D4\", \"\\u05D4\\u05D5\\u05E9\\u05E2\\u05E0\\u05D5\\u05EA - \\u05D0\\u05D5\\u05DD \\u05E0\\u05E6\\u05D5\\u05E8\\u05D4\");\n }\n }\n break;\n case 16:\n case 17:\n case 18:\n case 19:\n case 20:\n addTefillahNote(\"Ya`aleh V`yavo\", \"\\u05D9\\u05E2\\u05DC\\u05D4 \\u05D5\\u05D9\\u05D1\\u05D0\");\n if (day === 16 && !israel) {\n addDayNote(\"Second day of Sukkos\", \"\\u05E1\\u05D5\\u05DB\\u05D5\\u05EA - \\u05D9\\u05D5\\u05DD \\u05D8\\u05D5\\u05D1 \\u05E9\\u05E0\\u05D9\");\n } else if (!israel) {\n addDayNote(\"Chol Hamoed Sukkos\", \"\\u05E1\\u05D5\\u05DB\\u05D5\\u05EA - \\u05D7\\u05D5\\u05DC \\u05D4\\u05DE\\u05D5\\u05E2\\u05D3\");\n addTefillahNote(\"Ya`aleh V`yavo\", \"\\u05D9\\u05E2\\u05DC\\u05D4 \\u05D5\\u05D9\\u05D1\\u05D0\");\n }\n if (isDaytime) {\n addTefillahNote(\"Full Hallel\", \"\\u05D4\\u05DC\\u05DC \\u05D4\\u05E9\\u05DC\\u05DD\");\n switch (day) {\n case 16:\n addTefillahNote(\n \"\\u05D4\\u05D5\\u05E9\\u05E2\\u05E0\\u05D5\\u05EA - \" + (dow === DaysOfWeek.SUNDAY ? \"\\u05DC\\u05DE\\u05E2\\u05DF \\u05D0\\u05DE\\u05EA\\u05DA\" : \"\\u05D0\\u05D1\\u05DF \\u05E9\\u05EA\\u05D9\\u05D4\")\n );\n if (showGaonShirShelYom && dow !== DaysOfWeek.SHABBOS) {\n addTefillahNote(`\\u05E9\\u05D9\\u05E8 \\u05E9\\u05DC \\u05D9\\u05D5\\u05DD - \\u05DB\"\\u05D8 - ..\\u05D4\\u05D1\\u05D5 \\u05DC\\u05D4' \\u05D1\\u05E0\\u05D9 \\u05D0\\u05DC\\u05D9\\u05DD`);\n }\n break;\n case 17:\n addTefillahNote(\n (showEnglish ? \"Hoshanos\" : \"\\u05D4\\u05D5\\u05E9\\u05E2\\u05E0\\u05D5\\u05EA\") + \" - \" + (dow === DaysOfWeek.SHABBOS ? \"\\u05D0\\u05D5\\u05DD \\u05E0\\u05E6\\u05D5\\u05E8\\u05D4\" : \"\\u05D0\\u05E2\\u05E8\\u05D5\\u05DA \\u05E9\\u05D5\\u05E2\\u05D9\")\n );\n if (showGaonShirShelYom && dow !== DaysOfWeek.SHABBOS) {\n addTefillahNote(\"\\u05E9\\u05D9\\u05E8 \\u05E9\\u05DC \\u05D9\\u05D5\\u05DD - \\u05E0' - \\u05DE\\u05D6\\u05DE\\u05D5\\u05E8 \\u05DC\\u05D0\\u05E1\\u05E3\");\n }\n break;\n case 18:\n if (dow === DaysOfWeek.SUNDAY) {\n addTefillahNote((showEnglish ? \"Hoshanos\" : \"\\u05D4\\u05D5\\u05E9\\u05E2\\u05E0\\u05D5\\u05EA\") + \" - \\u05D0\\u05E2\\u05E8\\u05D5\\u05DA \\u05E9\\u05D5\\u05E2\\u05D9\");\n if (showGaonShirShelYom) {\n addTefillahNote(\"\\u05E9\\u05D9\\u05E8 \\u05E9\\u05DC \\u05D9\\u05D5\\u05DD - \\u05E0' - \\u05DE\\u05D6\\u05DE\\u05D5\\u05E8 \\u05DC\\u05D0\\u05E1\\u05E3\");\n }\n } else {\n if (dow === DaysOfWeek.TUESDAY) {\n addTefillahNote((showEnglish ? \"Hoshanos\" : \"\\u05D4\\u05D5\\u05E9\\u05E2\\u05E0\\u05D5\\u05EA\") + \" - \\u05D0\\u05D1\\u05DF \\u05E9\\u05EA\\u05D9\\u05D4\");\n } else if (dow === DaysOfWeek.THURSDAY) {\n addTefillahNote(\n (showEnglish ? \"Hoshanos\" : \"\\u05D4\\u05D5\\u05E9\\u05E2\\u05E0\\u05D5\\u05EA\") + \" - \\u05D0\\u05D5\\u05DD \\u05D0\\u05E0\\u05D9 \\u05D7\\u05D5\\u05DE\\u05D4\"\n );\n } else if (dow === DaysOfWeek.FRIDAY) {\n addTefillahNote((showEnglish ? \"Hoshanos\" : \"\\u05D4\\u05D5\\u05E9\\u05E2\\u05E0\\u05D5\\u05EA\") + \" - \\u05D0-\\u05DC \\u05DC\\u05DE\\u05D5\\u05E9\\u05E2\\u05D5\\u05EA\");\n }\n if (showGaonShirShelYom && dow !== DaysOfWeek.SHABBOS) {\n addTefillahNote('\\u05E9\\u05D9\\u05E8 \\u05E9\\u05DC \\u05D9\\u05D5\\u05DD - \\u05E6\"\\u05D3 - ..\\u05DE\\u05D9 \\u05D9\\u05E7\\u05D5\\u05DD \\u05DC\\u05D9..');\n }\n }\n break;\n case 19:\n addTefillahNote(\n (showEnglish ? \"Hoshanos\" : \"\\u05D4\\u05D5\\u05E9\\u05E2\\u05E0\\u05D5\\u05EA\") + \" - \" + (dow === DaysOfWeek.SHABBOS ? \"\\u05D0\\u05D5\\u05DD \\u05E0\\u05E6\\u05D5\\u05E8\\u05D4\" : \"\\u05D0-\\u05DC \\u05DC\\u05DE\\u05D5\\u05E9\\u05E2\\u05D5\\u05EA\")\n );\n if (showGaonShirShelYom && dow !== DaysOfWeek.SHABBOS) {\n if (dow === DaysOfWeek.MONDAY) {\n addTefillahNote('\\u05E9\\u05D9\\u05E8 \\u05E9\\u05DC \\u05D9\\u05D5\\u05DD - \\u05E6\"\\u05D3 - ..\\u05DE\\u05D9 \\u05D9\\u05E7\\u05D5\\u05DD \\u05DC\\u05D9..');\n } else {\n addTefillahNote('\\u05E9\\u05D9\\u05E8 \\u05E9\\u05DC \\u05D9\\u05D5\\u05DD - \\u05E6\"\\u05D3 - \\u05D0-\\u05DC \\u05E0\\u05E7\\u05DE\\u05D5\\u05EA.. \\u05D9\\u05E9\\u05E8\\u05D9 \\u05DC\\u05D1');\n }\n }\n break;\n case 20:\n addTefillahNote(\n (showEnglish ? \"Hoshanos\" : \"\\u05D4\\u05D5\\u05E9\\u05E2\\u05E0\\u05D5\\u05EA\") + \" - \" + (dow === DaysOfWeek.SHABBOS ? \"\\u05D0\\u05D5\\u05DD \\u05E0\\u05E6\\u05D5\\u05E8\\u05D4\" : \"\\u05D0\\u05D3\\u05D5\\u05DF \\u05D4\\u05DE\\u05D5\\u05E9\\u05D9\\u05E2\")\n );\n if (showGaonShirShelYom && dow !== DaysOfWeek.SHABBOS) {\n if (dow === DaysOfWeek.THURSDAY) {\n addTefillahNote('\\u05E9\\u05D9\\u05E8 \\u05E9\\u05DC \\u05D9\\u05D5\\u05DD - \\u05E4\"\\u05D0 - \\u05DC\\u05DE\\u05E0\\u05E6\\u05D7 \\u05E2\\u05DC \\u05D4\\u05D2\\u05EA\\u05D9\\u05EA');\n } else {\n addTefillahNote('\\u05E9\\u05D9\\u05E8 \\u05E9\\u05DC \\u05D9\\u05D5\\u05DD - \\u05E6\"\\u05D3 - \\u05D0-\\u05DC \\u05E0\\u05E7\\u05DE\\u05D5\\u05EA.. \\u05D9\\u05E9\\u05E8\\u05D9 \\u05DC\\u05D1');\n }\n }\n break;\n }\n }\n break;\n case 21:\n addDayNote(\"Hoshana Raba\", \"\\u05D4\\u05D5\\u05E9\\u05E2\\u05D4 \\u05E8\\u05D1\\u05D4\");\n addTefillahNote(\"Ya`aleh V`yavo\", \"\\u05D9\\u05E2\\u05DC\\u05D4 \\u05D5\\u05D9\\u05D1\\u05D0\");\n if (isNightTime) {\n addTefillahNote(\"Mishneh Torah\", \"\\u05DE\\u05E9\\u05E0\\u05D4 \\u05EA\\u05D5\\u05E8\\u05D4\");\n } else {\n addTefillahNote(\"Hoshanos\", \"\\u05D4\\u05D5\\u05E9\\u05E2\\u05E0\\u05D5\\u05EA\");\n addTefillahNote(\"Full Hallel\", \"\\u05D4\\u05DC\\u05DC \\u05D4\\u05E9\\u05DC\\u05DD\");\n if (showGaonShirShelYom) {\n if (dow === DaysOfWeek.FRIDAY) {\n addTefillahNote('\\u05E9\\u05D9\\u05E8 \\u05E9\\u05DC \\u05D9\\u05D5\\u05DD - \\u05E4\"\\u05D1 - \\u05DE\\u05D6\\u05DE\\u05D5\\u05E8 \\u05DC\\u05D0\\u05E1\\u05E3');\n } else {\n addTefillahNote('\\u05E9\\u05D9\\u05E8 \\u05E9\\u05DC \\u05D9\\u05D5\\u05DD - \\u05E4\"\\u05D0 - \\u05DC\\u05DE\\u05E0\\u05E6\\u05D7 \\u05E2\\u05DC \\u05D4\\u05D2\\u05EA\\u05D9\\u05EA');\n }\n }\n }\n break;\n case 22:\n addDayNote(\"Shmini Atzeres\", \"\\u05E9\\u05DE\\u05D9\\u05E0\\u05D9 \\u05E2\\u05E6\\u05E8\\u05EA\");\n addTefillahNote(\"Ya`aleh V`yavo\", \"\\u05D9\\u05E2\\u05DC\\u05D4 \\u05D5\\u05D9\\u05D1\\u05D0\");\n if (israel) {\n addDayNote(\"Simchas Torah\", \"\\u05E9\\u05DE\\u05D7\\u05EA \\u05EA\\u05D5\\u05E8\\u05D4\");\n addTefillahNote(\"Hakafos\", \"\\u05D4\\u05E7\\u05E4\\u05D5\\u05EA\");\n }\n if (isDaytime) {\n addTefillahNote(\"Full Hallel\", \"\\u05D4\\u05DC\\u05DC \\u05D4\\u05E9\\u05DC\\u05DD\");\n addTefillahNote(\"Yizkor\", \"\\u05D9\\u05D6\\u05DB\\u05D5\\u05E8\");\n addTefillahNote(\"Tefilas Geshem\", \"\\u05EA\\u05E4\\u05D9\\u05DC\\u05EA \\u05D2\\u05E9\\u05DD\");\n addTefillahNote(\"\\u05DE\\u05E9\\u05D9\\u05D1 \\u05D4\\u05E8\\u05D5\\u05D7 \\u05D5\\u05DE\\u05D5\\u05E8\\u05D9\\u05D3 \\u05D4\\u05D2\\u05E9\\u05DD\");\n if (showGaonShirShelYom && dow !== DaysOfWeek.SHABBOS) {\n addTefillahNote('\\u05E9\\u05D9\\u05E8 \\u05E9\\u05DC \\u05D9\\u05D5\\u05DD - \\u05D9\"\\u05D1 - \\u05DC\\u05DE\\u05E0\\u05E6\\u05D7 \\u05E2\\u05DC \\u05D4\\u05E9\\u05DE\\u05D9\\u05E0\\u05D9\\u05EA');\n }\n }\n break;\n }\n if (day === 23) {\n if (!israel) {\n addDayNote(\"Simchas Torah\", \"\\u05E9\\u05DE\\u05D7\\u05EA \\u05EA\\u05D5\\u05E8\\u05D4\");\n addTefillahNote(\"Ya`aleh V`yavo\", \"\\u05D9\\u05E2\\u05DC\\u05D4 \\u05D5\\u05D9\\u05D1\\u05D0\");\n addTefillahNote(\"Hakafos\", \"\\u05D4\\u05E7\\u05E4\\u05D5\\u05EA\");\n addTefillahNote(\"Full Hallel\", \"\\u05D4\\u05DC\\u05DC \\u05D4\\u05E9\\u05DC\\u05DD\");\n } else {\n addDayNote(\"Issru Chag\", \"\\u05D0\\u05D9\\u05E1\\u05E8\\u05D5 \\u05D7\\u05D2\");\n if (isNightTime) {\n addDayNote(\"\\u05D0 \\u05D2\\u05D5\\u05D8\\u05E2\\u05DF \\u05D5\\u05D5\\u05D9\\u05E0\\u05D8\\u05E2\\u05E8\", \"\\u05D7\\u05D5\\u05E8\\u05E3 \\u05D8\\u05D5\\u05D1\");\n } else if (dow !== DaysOfWeek.SHABBOS && isMorning) {\n noLaminatzeach();\n }\n }\n } else if (dow === DaysOfWeek.SHABBOS && [15, 17, 18, 19, 20].includes(day)) {\n addTefillahNote(\"Megilas Koheles\", \"\\u05DE\\u05D2\\u05D9\\u05DC\\u05EA \\u05E7\\u05D4\\u05DC\\u05EA\");\n }\n if (day < 22) {\n addTefillahNote(\"L`Dovid Hashem Ori\", \"\\u05DC\\u05D3\\u05D5\\u05D3 \\u05D4\");\n } else if (day > 22) {\n addTefillahNote(\"Mashiv Haruach U`Morid Hageshem\", \"\\u05DE\\u05E9\\u05D9\\u05D1 \\u05D4\\u05E8\\u05D5\\u05D7 \\u05D5\\u05DE\\u05D5\\u05E8\\u05D9\\u05D3 \\u05D4\\u05D2\\u05E9\\u05DD\");\n }\n break;\n case JewishMonthsNames.CHESHVAN:\n if (isDaytime && (dow === DaysOfWeek.MONDAY && day > 3 && day < 13 || dow === DaysOfWeek.THURSDAY && day > 6 && day < 14 || dow === DaysOfWeek.MONDAY && day > 10 && day < 18)) {\n addTefillahNote(\"Ba`Hab\", '\\u05E1\\u05DC\\u05D9\\u05D7\\u05D5\\u05EA \\u05D1\\u05D4\"\\u05D1');\n addTefillahNote(\"Avinu Malkeinu\", \"\\u05D0\\u05D1\\u05D9\\u05E0\\u05D5 \\u05DE\\u05DC\\u05DB\\u05E0\\u05D5\");\n }\n if (day <= 22) {\n addTefillahNote(\"Mashiv Haruach U`Morid Hageshem\", \"\\u05DE\\u05E9\\u05D9\\u05D1 \\u05D4\\u05E8\\u05D5\\u05D7 \\u05D5\\u05DE\\u05D5\\u05E8\\u05D9\\u05D3 \\u05D4\\u05D2\\u05E9\\u05DD\");\n }\n if ((location.Israel && day >= 7 || !location.Israel && showVsainTalUmatarInChul) && dow !== DaysOfWeek.SHABBOS) {\n addTefillahNote(\"V`sain Tal U`matar\", \"\\u05D5\\u05EA\\u05DF \\u05D8\\u05DC \\u05D5\\u05DE\\u05D8\\u05E8\");\n }\n break;\n case JewishMonthsNames.KISLEV:\n if ((location.Israel && day <= 7 || !location.Israel && showVsainTalUmatarInChul) && dow !== DaysOfWeek.SHABBOS) {\n addTefillahNote(\"V`sain Tal U`matar\", \"\\u05D5\\u05EA\\u05DF \\u05D8\\u05DC \\u05D5\\u05DE\\u05D8\\u05E8\");\n } else if (day === 24 && dow !== DaysOfWeek.SHABBOS && isAfternoon) {\n dayInfo.noTachnun = true;\n } else if (day >= 25) {\n dayInfo.noTachnun = true;\n addDayNote(\"Chanukah\", \"\\u05D7\\u05E0\\u05D5\\u05DB\\u05D4\");\n addTefillahNote(\"Al Hanissim\", \"\\u05E2\\u05DC \\u05D4\\u05E0\\u05D9\\u05E1\\u05D9\\u05DD\");\n if (isDaytime) {\n addTefillahNote(\"Full Hallel\", \"\\u05D4\\u05DC\\u05DC \\u05D4\\u05E9\\u05DC\\u05DD\");\n if (isMorning && dow !== DaysOfWeek.SHABBOS) noLaminatzeach();\n if (showGaonShirShelYom && day !== 30 && dow !== DaysOfWeek.SHABBOS) {\n addTefillahNote(\"\\u05E9\\u05D9\\u05E8 \\u05E9\\u05DC \\u05D9\\u05D5\\u05DD - \\u05DC' - \\u05DE\\u05D6\\u05DE\\u05D5\\u05E8 \\u05E9\\u05D9\\u05E8 \\u05D7\\u05E0\\u05D5\\u05DB\\u05EA \\u05D4\\u05D1\\u05D9\\u05EA\");\n }\n }\n }\n break;\n case JewishMonthsNames.TEVES:\n if (!location.Israel && showVsainTalUmatarInChul && dow !== DaysOfWeek.SHABBOS) {\n addTefillahNote(\"V`sain Tal U`matar\", \"\\u05D5\\u05EA\\u05DF \\u05D8\\u05DC \\u05D5\\u05DE\\u05D8\\u05E8\");\n }\n if (day <= (jDate.isShortKislev(jdate.Year) ? 3 : 2)) {\n dayInfo.noTachnun = true;\n addDayNote(\"Chanukah\", \"\\u05D7\\u05E0\\u05D5\\u05DB\\u05D4\");\n addTefillahNote(\"Al Hanissim\", \"\\u05E2\\u05DC \\u05D4\\u05E0\\u05D9\\u05E1\\u05D9\\u05DD\");\n if (isDaytime) {\n addTefillahNote(\"Full Hallel\", \"\\u05D4\\u05DC\\u05DC \\u05D4\\u05E9\\u05DC\\u05DD\");\n if (isMorning && dow !== DaysOfWeek.SHABBOS) {\n noLaminatzeach();\n if (day !== 1 && showGaonShirShelYom) {\n addTefillahNote(\"\\u05E9\\u05D9\\u05E8 \\u05E9\\u05DC \\u05D9\\u05D5\\u05DD - \\u05DC' - \\u05DE\\u05D6\\u05DE\\u05D5\\u05E8 \\u05E9\\u05D9\\u05E8 \\u05D7\\u05E0\\u05D5\\u05DB\\u05EA \\u05D4\\u05D1\\u05D9\\u05EA\");\n }\n }\n }\n } else if (day === 10 && isDaytime) {\n addDayNote(\"Fast of Asara B`Teves\", \"\\u05E2\\u05E9\\u05E8\\u05D4 \\u05D1\\u05D8\\u05D1\\u05EA\");\n if (isMorning) {\n addTefillahNote(\"Selichos\", \"\\u05E1\\u05DC\\u05D9\\u05D7\\u05D5\\u05EA\");\n }\n addTefillahNote(\"Avinu Malkeinu\", \"\\u05D0\\u05D1\\u05D9\\u05E0\\u05D5 \\u05DE\\u05DC\\u05DB\\u05E0\\u05D5\");\n addTefillahNote(\"Aneinu\", \"\\u05E2\\u05E0\\u05E0\\u05D5\");\n }\n break;\n case JewishMonthsNames.SHVAT:\n if (day === 14 && isAfternoon) dayInfo.noTachnun = true;\n if (day === 15) {\n dayInfo.noTachnun = true;\n addDayNote(\"Tu B`Shvat\", '\\u05D8\"\\u05D5 \\u05D1\\u05E9\\u05D1\\u05D8');\n }\n break;\n case JewishMonthsNames.ADAR:\n case JewishMonthsNames.ADAR_SHEINI:\n if (month === JewishMonthsNames.ADAR && isLeapYear) {\n if (day === 13 && isAfternoon) dayInfo.noTachnun = true;\n if ([14, 15].includes(day)) {\n addDayNote(\n day === 14 ? showEnglish ? \"Purim Katan\" : \"\\u05E4\\u05D5\\u05E8\\u05D9\\u05DD \\u05E7\\u05D8\\u05DF\" : showEnglish ? \"Shushan Purim Katan\" : \"\\u05E9\\u05D5\\u05E9\\u05DF \\u05E4\\u05D5\\u05E8\\u05D9\\u05DD \\u05E7\\u05D8\\u05DF\"\n );\n if (isDaytime) {\n dayInfo.noTachnun = true;\n if (isMorning && dow !== DaysOfWeek.SHABBOS) {\n noLaminatzeach();\n }\n }\n }\n } else {\n if (isDaytime && (day === 11 && dow === DaysOfWeek.THURSDAY || day === 13 && dow !== DaysOfWeek.SHABBOS)) {\n if (isMorning) {\n addDayNote(\"Fast of Ta`anis Esther\", \"\\u05EA\\u05E2\\u05E0\\u05D9\\u05EA \\u05D0\\u05E1\\u05EA\\u05E8\");\n addTefillahNote(\"Selichos\", \"\\u05E1\\u05DC\\u05D9\\u05D7\\u05D5\\u05EA\");\n }\n addTefillahNote(\"Avinu Malkeinu\", \"\\u05D0\\u05D1\\u05D9\\u05E0\\u05D5 \\u05DE\\u05DC\\u05DB\\u05E0\\u05D5\");\n addTefillahNote(\"Aneinu\", \"\\u05E2\\u05E0\\u05E0\\u05D5\");\n } else {\n const isYerushalayim = location.Name === \"Jerusalem\" || location.NameHebrew === \"\\u05D9\\u05E8\\u05D5\\u05E9\\u05DC\\u05D9\\u05DD\";\n if (day === 14) {\n dayInfo.noTachnun = true;\n if (isMorning && dow !== DaysOfWeek.SHABBOS) {\n noLaminatzeach();\n }\n if (!isYerushalayim || dow === DaysOfWeek.FRIDAY) {\n addDayNote(\"Megilas Esther\", \"\\u05DE\\u05D2\\u05D9\\u05DC\\u05EA \\u05D0\\u05E1\\u05EA\\u05E8\");\n if (!isYerushalayim) {\n addDayNote(\"Purim\", \"\\u05E4\\u05D5\\u05E8\\u05D9\\u05DD\");\n addTefillahNote(\"Al Hanissim\", \"\\u05E2\\u05DC \\u05D4\\u05E0\\u05D9\\u05E1\\u05D9\\u05DD\");\n if (showGaonShirShelYom) {\n addTefillahNote('\\u05E9\\u05D9\\u05E8 \\u05E9\\u05DC \\u05D9\\u05D5\\u05DD - \\u05DB\"\\u05D1 - \\u05DC\\u05DE\\u05E0\\u05E6\\u05D7 \\u05E2\\u05DC \\u05D0\\u05D9\\u05DC\\u05EA \\u05D4\\u05E9\\u05D7\\u05E8');\n }\n } else {\n addDayNote(\"Matanos LeEvyonim\", \"\\u05DE\\u05EA\\u05E0\\u05D5\\u05EA \\u05DC\\u05D0\\u05D1\\u05D9\\u05D5\\u05E0\\u05D9\\u05DD\");\n }\n } else {\n addDayNote(\"Purim D`Prazim\", \"\\u05E4\\u05D5\\u05E8\\u05D9\\u05DD \\u05D3\\u05E4\\u05E8\\u05D6\\u05D9\\u05DD\");\n }\n } else if (day === 15) {\n dayInfo.noTachnun = true;\n if (isMorning && dow !== DaysOfWeek.SHABBOS) {\n noLaminatzeach();\n }\n if (isYerushalayim) {\n addDayNote(\"Purim\", \"\\u05E4\\u05D5\\u05E8\\u05D9\\u05DD\");\n addTefillahNote(\"Al Hanissim\", \"\\u05E2\\u05DC \\u05D4\\u05E0\\u05D9\\u05E1\\u05D9\\u05DD\");\n if (dow !== DaysOfWeek.SHABBOS) {\n addDayNote(\"Megilas Esther\", \"\\u05DE\\u05D2\\u05D9\\u05DC\\u05EA \\u05D0\\u05E1\\u05EA\\u05E8\");\n }\n if (showGaonShirShelYom && isDaytime && dow !== DaysOfWeek.SHABBOS) {\n addTefillahNote('\\u05E9\\u05D9\\u05E8 \\u05E9\\u05DC \\u05D9\\u05D5\\u05DD - \\u05DB\"\\u05D1 - \\u05DC\\u05DE\\u05E0\\u05E6\\u05D7 \\u05E2\\u05DC \\u05D0\\u05D9\\u05DC\\u05EA \\u05D4\\u05E9\\u05D7\\u05E8');\n }\n } else if ([\n \"\\u05D8\\u05D1\\u05E8\\u05D9\\u05D4\",\n \"\\u05D9\\u05E4\\u05D5\",\n \"\\u05E2\\u05DB\\u05D5\",\n \"\\u05E6\\u05E4\\u05EA\",\n \"\\u05D1\\u05D0\\u05E8 \\u05E9\\u05D1\\u05E2\",\n \"\\u05D7\\u05D9\\u05E4\\u05D4\",\n \"\\u05D1\\u05D0\\u05E8 \\u05E9\\u05D1\\u05E2\",\n \"\\u05D1\\u05D9\\u05EA \\u05E9\\u05D0\\u05DF\",\n \"\\u05DC\\u05D5\\u05D3\"\n ].includes(location.Name)) {\n addDayNote(\"Purim D`Mukafin\", \"\\u05E4\\u05D5\\u05E8\\u05D9\\u05DD \\u05D3\\u05DE\\u05D5\\u05E7\\u05E4\\u05D9\\u05DF\");\n if (dow !== DaysOfWeek.SHABBOS) {\n addDayNote(\"(Megilas Esther)\", \"(\\u05DE\\u05D2\\u05D9\\u05DC\\u05EA \\u05D0\\u05E1\\u05EA\\u05E8)\");\n }\n } else {\n addDayNote(\"Shushan Purim\", \"\\u05E9\\u05D5\\u05E9\\u05DF \\u05E4\\u05D5\\u05E8\\u05D9\\u05DD\");\n }\n } else if (day === 16 && isYerushalayim && dow === DaysOfWeek.SUNDAY) {\n addDayNote(\"Purim Seuda and Mishloach Manos\", \"\\u05E1\\u05E2\\u05D5\\u05D3\\u05EA \\u05E4\\u05D5\\u05E8\\u05D9\\u05DD \\u05D5\\u05DE\\u05E9\\u05DC\\u05D5\\u05D7 \\u05DE\\u05E0\\u05D5\\u05EA\");\n }\n }\n }\n break;\n }\n}\nfunction noLaminatzeach() {\n addTefillahNote(\"No Laminatzeach\", '\\u05D0\"\\u05D0 \\u05DC\\u05DE\\u05E0\\u05E6\\u05D7');\n}\nfunction addDayNote(englishOrDefaultText, hebrewText) {\n const note = showEnglish || !hebrewText ? englishOrDefaultText : hebrewText;\n if (!dayNotes.includes(note)) {\n dayNotes.push(note);\n }\n}\nfunction addTefillahNote(englishOrDefaultText, hebrewText) {\n const note = showEnglish || !hebrewText ? englishOrDefaultText : hebrewText;\n if (!tefillahNotes.includes(note)) {\n tefillahNotes.push(note);\n }\n}\nfunction hasOwnKriyasHatorah(jdate, location) {\n const { Month, Day, DayOfWeek } = jdate;\n if (Day === 1 || Day === 30) {\n return true;\n }\n switch (Month) {\n case 1:\n return Day > 14 && Day < 22;\n case 4:\n return Day === 17 || DayOfWeek === 0 && Day === 18;\n case 5:\n return Day === 9 || DayOfWeek === 0 && Day === 10;\n case 7:\n return [3, 16, 17, 18, 19, 20, 21].includes(Day) || DayOfWeek === 0 && Day === 4;\n case 9:\n return Day >= 25;\n case 10:\n return Day === 10 || Day < 3 || Day === 3 && jDate.isShortKislev(jdate.Year);\n case 12:\n case 13:\n return Month === (jDate.isJdLeapY(jdate.Year) ? JewishMonthsNames.ADAR_SHEINI : JewishMonthsNames.ADAR) && (Day === 13 || Day === (location.Name === \"\\u05D9\\u05E8\\u05D5\\u05E9\\u05DC\\u05D9\\u05DD\" ? 15 : 14));\n default:\n return false;\n }\n}\n// Annotate the CommonJS export names for ESM import in node:\n0 && (module.exports = {\n Dafyomi,\n DaysOfWeek,\n DaysOfWeekEng,\n DaysOfWeekHeb,\n JewishMonthsEng,\n JewishMonthsHeb,\n JewishMonthsNames,\n Location,\n Locations,\n Molad,\n PirkeiAvos,\n SecularMonthsEng,\n Sedra,\n Utils,\n ZmanTypeIds,\n ZmanTypes,\n Zmanim,\n ZmanimUtils,\n closestDistanceMatch,\n closestNameMatch,\n findLocation,\n getNotifications,\n getZmanType,\n jDate\n});\n"]}
1
+ {"version":3,"sources":["c:\\repos_git\\jcal-zmanim\\dist\\index.cjs"],"names":["__defProp","Object","defineProperty","__getOwnPropDesc","getOwnPropertyDescriptor","__getOwnPropNames","getOwnPropertyNames","__hasOwnProp","prototype","hasOwnProperty","__export","target","all","name","get","enumerable","__copyProps","to","from","except","desc","key","call","__toCommonJS","mod","value","src_exports","Dafyomi","DaysOfWeek","DaysOfWeekEng","DaysOfWeekHeb","JewishMonthsEng","JewishMonthsHeb","JewishMonthsNames","Location","Locations","Molad","PirkeiAvos","SecularMonthsEng","Sedra","Utils","ZmanTypeIds","ZmanTypes","Zmanim","ZmanimUtils","closestDistanceMatch","closestNameMatch","findLocation","getNotifications","getZmanType","jDate","module","exports","_Sedra","jd","israel2","Month","Day","sedras","sedraList","sedraArray","sedraOrder","getSedraOrder","Year","absDate","Abs","index","weekNum","getDayOnOrBefore","firstSatInYear","length","indexLast","i","toString","map","s","eng","join","toStringHeb","heb","day_of_week","date","year","lastCalculatedYear","israel","longCheshvon","isLongCheshvan","shortKislev","isShortKislev","roshHashana","absJd","roshHashanaDOW","Math","abs","yearType","sArray","isJdLeapY","shabbos_short","shabbos_long","mon_short","mon_long","thu_normal_Israel","thu_normal","thu_long","shabbos_short_leap","shabbos_long_leap","mon_short_leap_Israel","mon_short_leap","mon_long_leap_Israel","mon_long_leap","thu_short_leap","thu_long_leap","retobj","_PirkeiAvos","getPrakim","getDayOfWeek","jMonth","jDay","_get1stPerek","_ellul","jYear","pes1","shb1","cShb","toInt","prk","prakim","day1","day1DOW","shabbos1Day","shabbos1Date","_Dafyomi","getDaf","jdate","absoluteDate","dafcnt","cno","dno","osday","nsday","total","count","j","blatt","absSd","Date","masechtaList","daf","masechet","d","toJewishNumber","_yearCache","JS_START_DATE_ABS","MS_PER_DAY","JS_START_OFFSET","getTimezoneOffset","yearTypes","isLeapYear","dow","isLongKislev","daysInYear","yearTypeList","daysUntil5000","getElapsedDaysEarly","elapsed","find","y","daysCounter","months","parts","hours","conjDay","conjParts","has","push","getElapsedDays5000","counter","_jDate","arg","month","day","NaN","arguments","fromAbs","isValidDate","Array","isArray","isString","isNumber","argObj","absolute","ymd","getDate","sdFromAbs","DayOfWeek","addDays","days","addMonths","miy","monthsJYear","daysJMonth","addYears","years","addSecularMonths","secDate","valueOf","setMonth","getMonth","addSecularYears","setFullYear","getFullYear","diffDays","diffMonths","diffFullMonths","diffYears","diff","diffFullYears","hideDayOfWeek","dontCapitalize","toSuffixed","monthName","toShortstring","showDow","showYear","getDayOfOmer","dayOfOmer","first","isYomTovOrCholHamoed","isYomTov","includes","isErevYomTov","hasCandleLighting","hasEiruvTavshilin","getCandleLighting","location","nullIfNoCandles","getSedra","getPirkeiAvos","getSunriseSunset","ignoreElevation","getSunTimes","getChatzos","getShaaZmanis","offset","getDafYomi","getDafyomiHeb","toJDate","now","absDay","ms","numFullDays","floor","dayInYear","m","tDays","daysSinceStart","daysJYear","daysJYear_","isLongCheshvan_","isShortKislev_","_Zmanim","considerElevation","String","sunrise","sunset","zenithDeg","zenithMin","lonHour","longitude","latitude","cosLat","sinLat","cosZen","sinDec","cosDec","xmRise","xmSet","xlRise","xlSet","aRise","aSet","ahrRise","ahrSet","hRise","hSet","tRise","tSet","utRise","utSet","dayOfYear","earthRadius","zenithAtElevation","degToDec","radToDeg","acos","Elevation","cos","Longitude","Latitude","sin","M","L","atan","tan","sqrt","adj","timeAdj","UTCOffset","hour","getChatzosFromSuntimes","sunTimes","rise","set","isNaN","minute","chatz","totalSeconds","addSeconds","getShaaZmanisFromSunTimes","addMinutes","getShaaZmanisMga","minutes","getCandleLightingFromSunTimes","getCandleLightingFromSunset","CandleLighting","isLeap","isSecularLeapYear","yearDay","deg","min","x","rad","time","minFloat","sec","round","isDST","fixTime","second","__DEV__","process","env","NODE_ENV","freeze","SUNDAY","MONDAY","TUESDAY","WEDNESDAY","THURSDAY","FRIDAY","SHABBOS","NISSAN","IYAR","SIVAN","TAMUZ","AV","ELLUL","TISHREI","CHESHVAN","KISLEV","TEVES","SHVAT","ADAR","ADAR_SHEINI","_Utils","number","n","retval","jsd","jhd","jtd","slice","toStringDate","getDay","toShortStringDate","monthFirst","dayNum","monthNum","num","t","suffix","getSdDOW","result","seconds","timeDiff","earlierTime","laterTime","showNegative","earlySec","laterSec","sign","totalMinutes","timeFromDate","sdate","getHours","getMinutes","getSeconds","isTimeAfter","beforeTime","afterTime","getTimeIntervalTextStringHeb","trunc","getTimeIntervalTextString","getOmerNusach","nusach","weeks","txt","jsnum","jtnum","getTimeString","army","roundUp","ceil","currUtcOffset","jan","jul","max","isDateDST","Israel","isIsrael_DST","isUSA_DST","firstDOW","targetDate","lastFriday","lastSunday","getSdNowInIsrael","israelTimeOffset","setHours","addDaysToSdate","isSameSdate","sdate1","sdate2","toDateString","isSameJdate","jdate1","jdate2","isSameJMonth","isSameSMonth","isAfterSunset","shkia","nowAtLocation","setDate","float","bothDates","thing","Number","o","arr","setDefault","paramValue","defValue","range","start","end","startNumber","endNumber","v","log","optionalItems","console","warn","error","_Location","nameHeb","utcOffset","elevation","candleLighting","Name","NameHebrew","getCandles","clone","special","names","loclc","toLowerCase","city","sp","spi","indexOf","getJerusalem","getLakewood","import_closest_match","require","locations_default","il","tz","el","lat","lon","cl","l","sort","a","b","justNames","split","distancePointToPoint","point1","point2","radlat1","PI","radlat2","theta","radtheta","dist","point","curr","val","distance","nameOrCoordinates","exactNameMatch","cityOnlyNameMatch","exactCoordinateMatch","ChatzosLayla","Alos90","Alos72","TalisTefillin","NetzAtElevation","NetzMishor","szksMga","szksGra","sztMga","sztGra","chatzosDay","minGed","minKet","plag","shkiaAtSeaLevel","shkiaElevation","tzais45","tzais50","tzais72","rabbeinuTamZmanios","rabbeinuTamZmaniosMga","SofZmanEatingChometz","SofZmanBurnChometz","id","idOrName","zt","_Molad","getMolad","totalMonths","partsElapsed","hoursElapsed","monthAdj","chalakim","getString","molad","zmanim","isNight","str","getStringHeb","replace","WhichDaysFlags","YOMTOV","_ZmanimUtils","getZmanTimes","zmanTypes","mem","zmanTimesCache","z","zmanTimes","whichDay","getWhichDays","suntimesMishor","sunriseMishor","sunsetMishor","mishorNeg90","chatzos","shaaZmanis","shaaZmanisMga","suntimes","zmanType","whichDaysFlags","getBasicShulZmanim","chatzosHayom","chatzosHalayla","alos","getAllZmanim","dayNotes","tefillahNotes","showEnglish","dayInfo","showGaonShirShelYom","english","showGaonShir","showDafYomi","isAfterChatzosHayom","isAfterChatzosHalayla","isAfterAlos","isAfterShkia","isDaytime","isNightTime","isNotBeinHasmashos","isMorning","isAfternoon","noTachnun","getShabbosNotifications","getWeekDayNotifications","getAroundTheYearNotifications","addTefillahNote","addDayNote","dayOfSefirah","Set","sedra","nextMonth","hasOwnKriyasHatorah","noLaminatzeach","showVsainTalUmatarInChul","startVsainTalUmatar","startedSelichos","daysToRH","dowRH","isYerushalayim","englishOrDefaultText","hebrewText","note"],"mappings":"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CA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;CACD;AACD,IAAIC,gBAAgB;AACpB,IAAIC,sBAAsB,SAACjF;QACTqE;IAAhB,IAAMa,WAAUb,kBAAAA,WAAWc,IAAI,CAAC,SAACC;eAAMA,CAAAA,cAAAA,wBAAAA,EAAGpF,IAAI,MAAKA;oBAAnCqE,sC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","sourcesContent":["\"use strict\";\nvar __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\n\n// src/index.ts\nvar src_exports = {};\n__export(src_exports, {\n Dafyomi: () => Dafyomi,\n DaysOfWeek: () => DaysOfWeek,\n DaysOfWeekEng: () => DaysOfWeekEng,\n DaysOfWeekHeb: () => DaysOfWeekHeb,\n JewishMonthsEng: () => JewishMonthsEng,\n JewishMonthsHeb: () => JewishMonthsHeb,\n JewishMonthsNames: () => JewishMonthsNames,\n Location: () => Location,\n Locations: () => Locations,\n Molad: () => Molad,\n PirkeiAvos: () => PirkeiAvos,\n SecularMonthsEng: () => SecularMonthsEng,\n Sedra: () => Sedra,\n Utils: () => Utils,\n ZmanTypeIds: () => ZmanTypeIds,\n ZmanTypes: () => ZmanTypes,\n Zmanim: () => Zmanim,\n ZmanimUtils: () => ZmanimUtils,\n closestDistanceMatch: () => closestDistanceMatch,\n closestNameMatch: () => closestNameMatch,\n findLocation: () => findLocation,\n getNotifications: () => getNotifications,\n getZmanType: () => getZmanType,\n jDate: () => jDate\n});\nmodule.exports = __toCommonJS(src_exports);\n\n// src/JCal/Sedra.ts\nvar _Sedra = class _Sedra {\n /**\n * @param {jDate} jd\n * @param {boolean} israel\n */\n constructor(jd, israel2) {\n if (jd.Month === 7 && jd.Day >= 15 && jd.Day < (israel2 ? 23 : 24)) {\n this.sedras = [_Sedra.sedraList[53]];\n return;\n }\n let sedraArray = [], sedraOrder = _Sedra.getSedraOrder(jd.Year, israel2), absDate = jd.Abs, index, weekNum;\n absDate = _Sedra.getDayOnOrBefore(6, absDate + 6);\n weekNum = (absDate - sedraOrder.firstSatInYear) / 7;\n if (sedraOrder.sedraArray && weekNum >= sedraOrder.sedraArray.length) {\n const indexLast = sedraOrder.sedraArray[sedraOrder.sedraArray.length - 1];\n if (indexLast < 0) {\n index = -indexLast + 2;\n } else {\n index = indexLast + 1;\n }\n } else {\n index = sedraOrder.sedraArray ? sedraOrder.sedraArray[weekNum] : -1;\n }\n if (index >= 0) {\n sedraArray = [_Sedra.sedraList[index]];\n } else {\n const i = -index;\n sedraArray = [_Sedra.sedraList[i], _Sedra.sedraList[i + 1]];\n }\n this.sedras = sedraArray;\n }\n /**\n * Gets the sedra/s as a string. If there are two, they are seperated by a \" - \"\n */\n toString() {\n return this.sedras.map((s) => s.eng).join(\" - \");\n }\n /**\n * Gets the sedra/s as a string. If there are two, they are seperated by a \" - \"\n */\n toStringHeb() {\n return this.sedras.map((s) => s.heb).join(\" - \");\n }\n static getDayOnOrBefore(day_of_week, date) {\n return date - (date - day_of_week) % 7;\n }\n static getSedraOrder(year, israel2) {\n if (_Sedra.lastCalculatedYear != null && _Sedra.lastCalculatedYear.year === year && _Sedra.lastCalculatedYear.israel === israel2) {\n return _Sedra.lastCalculatedYear;\n }\n const longCheshvon = jDate.isLongCheshvan(year), shortKislev = jDate.isShortKislev(year), roshHashana = jDate.absJd(year, 7, 1), roshHashanaDOW = Math.abs(roshHashana % 7), firstSatInYear = _Sedra.getDayOnOrBefore(6, roshHashana + 6);\n let yearType, sArray;\n if (longCheshvon && !shortKislev)\n yearType = \"complete\";\n else if (!longCheshvon && shortKislev)\n yearType = \"incomplete\";\n else\n yearType = \"regular\";\n if (!jDate.isJdLeapY(year)) {\n switch (roshHashanaDOW) {\n case 6:\n if (yearType === \"incomplete\") {\n sArray = _Sedra.shabbos_short;\n } else if (yearType === \"complete\") {\n sArray = _Sedra.shabbos_long;\n }\n break;\n case 1:\n if (yearType === \"incomplete\") {\n sArray = _Sedra.mon_short;\n } else if (yearType === \"complete\") {\n sArray = israel2 ? _Sedra.mon_short : _Sedra.mon_long;\n }\n break;\n case 2:\n if (yearType === \"regular\") {\n sArray = israel2 ? _Sedra.mon_short : _Sedra.mon_long;\n }\n break;\n case 4:\n if (yearType === \"regular\") {\n sArray = israel2 ? _Sedra.thu_normal_Israel : _Sedra.thu_normal;\n } else if (yearType === \"complete\") {\n sArray = _Sedra.thu_long;\n }\n break;\n default:\n throw \"improper sedra year type calculated.\";\n }\n } else {\n switch (roshHashanaDOW) {\n case 6:\n if (yearType === \"incomplete\") {\n sArray = _Sedra.shabbos_short_leap;\n } else if (yearType === \"complete\") {\n sArray = israel2 ? _Sedra.shabbos_short_leap : _Sedra.shabbos_long_leap;\n }\n break;\n case 1:\n if (yearType === \"incomplete\") {\n sArray = israel2 ? _Sedra.mon_short_leap_Israel : _Sedra.mon_short_leap;\n } else if (yearType === \"complete\") {\n sArray = israel2 ? _Sedra.mon_long_leap_Israel : _Sedra.mon_long_leap;\n }\n break;\n case 2:\n if (yearType === \"regular\") {\n sArray = israel2 ? _Sedra.mon_long_leap_Israel : _Sedra.mon_long_leap;\n }\n break;\n case 4:\n if (yearType === \"incomplete\") {\n sArray = _Sedra.thu_short_leap;\n } else if (yearType === \"complete\") {\n sArray = _Sedra.thu_long_leap;\n }\n break;\n default:\n throw \"improper sedra year type calculated.\";\n }\n }\n const retobj = {\n firstSatInYear,\n sedraArray: sArray,\n year,\n israel: israel2\n };\n _Sedra.lastCalculatedYear = retobj;\n return retobj;\n }\n};\n_Sedra.lastCalculatedYear = null;\n_Sedra.sedraList = [{ eng: \"Bereshis\", heb: \"\\u05D1\\u05E8\\u05D0\\u05E9\\u05D9\\u05EA\" }, { eng: \"Noach\", heb: \"\\u05E0\\u05D7\" }, { eng: \"Lech-Lecha\", heb: \"\\u05DC\\u05DA \\u05DC\\u05DA\" }, { eng: \"Vayera\", heb: \"\\u05D5\\u05D9\\u05E8\\u05D0\" }, { eng: \"Chayei Sara\", heb: \"\\u05D7\\u05D9\\u05D9 \\u05E9\\u05E8\\u05D4\" }, { eng: \"Toldos\", heb: \"\\u05EA\\u05D5\\u05DC\\u05D3\\u05D5\\u05EA\" }, { eng: \"Vayetzei\", heb: \"\\u05D5\\u05D9\\u05E6\\u05D0\" }, { eng: \"Vayishlach\", heb: \"\\u05D5\\u05D9\\u05E9\\u05DC\\u05D7\" }, { eng: \"Vayeishev\", heb: \"\\u05D5\\u05D9\\u05E9\\u05D1\" }, { eng: \"Mikeitz\", heb: \"\\u05DE\\u05E7\\u05E5\" }, { eng: \"Vayigash\", heb: \"\\u05D5\\u05D9\\u05D2\\u05E9\" }, { eng: \"Vayechi\", heb: \"\\u05D5\\u05D9\\u05D7\\u05D9\" }, { eng: \"Shemos\", heb: \"\\u05E9\\u05DE\\u05D5\\u05EA\" }, { eng: \"Va'era\", heb: \"\\u05D5\\u05D0\\u05E8\\u05D0\" }, { eng: \"Bo\", heb: \"\\u05D1\\u05D0\" }, { eng: \"Beshalach\", heb: \"\\u05D1\\u05E9\\u05DC\\u05D7\" }, { eng: \"Yisro\", heb: \"\\u05D9\\u05EA\\u05E8\\u05D5\" }, { eng: \"Mishpatim\", heb: \"\\u05DE\\u05E9\\u05E4\\u05D8\\u05D9\\u05DD\" }, { eng: \"Terumah\", heb: \"\\u05EA\\u05E8\\u05D5\\u05DE\\u05D4\" }, { eng: \"Tetzaveh\", heb: \"\\u05EA\\u05E6\\u05D5\\u05D4\" }, { eng: \"Ki Sisa\", heb: \"\\u05DB\\u05D9 \\u05EA\\u05E9\\u05D0\" }, { eng: \"Vayakhel\", heb: \"\\u05D5\\u05D9\\u05E7\\u05D4\\u05DC\" }, { eng: \"Pekudei\", heb: \"\\u05E4\\u05E7\\u05D5\\u05D3\\u05D9\" }, { eng: \"Vayikra\", heb: \"\\u05D5\\u05D9\\u05E7\\u05E8\\u05D0\" }, { eng: \"Tzav\", heb: \"\\u05E6\\u05D5\" }, { eng: \"Shmini\", heb: \"\\u05E9\\u05DE\\u05D9\\u05E0\\u05D9\" }, { eng: \"Tazria\", heb: \"\\u05EA\\u05D6\\u05E8\\u05D9\\u05E2\" }, { eng: \"Metzora\", heb: \"\\u05DE\\u05E6\\u05D5\\u05E8\\u05E2\" }, { eng: \"Achrei Mos\", heb: \"\\u05D0\\u05D7\\u05E8\\u05D9 \\u05DE\\u05D5\\u05EA\" }, { eng: \"Kedoshim\", heb: \"\\u05E7\\u05D3\\u05D5\\u05E9\\u05D9\\u05DD\" }, { eng: \"Emor\", heb: \"\\u05D0\\u05DE\\u05D5\\u05E8\" }, { eng: \"Behar\", heb: \"\\u05D1\\u05D4\\u05E8\" }, { eng: \"Bechukosai\", heb: \"\\u05D1\\u05D7\\u05E7\\u05D5\\u05EA\\u05D9\" }, { eng: \"Bamidbar\", heb: \"\\u05D1\\u05DE\\u05D3\\u05D1\\u05E8\" }, { eng: \"Nasso\", heb: \"\\u05E0\\u05E9\\u05D0\" }, { eng: \"Beha'aloscha\", heb: \"\\u05D1\\u05D4\\u05E2\\u05DC\\u05EA\\u05DA\" }, { eng: \"Sh'lach\", heb: \"\\u05E9\\u05DC\\u05D7\" }, { eng: \"Korach\", heb: \"\\u05E7\\u05E8\\u05D7\" }, { eng: \"Chukas\", heb: \"\\u05D7\\u05E7\\u05EA\" }, { eng: \"Balak\", heb: \"\\u05D1\\u05DC\\u05E7\" }, { eng: \"Pinchas\", heb: \"\\u05E4\\u05D9\\u05E0\\u05D7\\u05E1\" }, { eng: \"Matos\", heb: \"\\u05DE\\u05D8\\u05D5\\u05EA\" }, { eng: \"Masei\", heb: \"\\u05DE\\u05E1\\u05E2\\u05D9\" }, { eng: \"Devarim\", heb: \"\\u05D3\\u05D1\\u05E8\\u05D9\\u05DD\" }, { eng: \"Va'eschanan\", heb: \"\\u05D5\\u05D0\\u05EA\\u05D7\\u05E0\\u05DF\" }, { eng: \"Eikev\", heb: \"\\u05E2\\u05E7\\u05D1\" }, { eng: \"Re'eh\", heb: \"\\u05E8\\u05D0\\u05D4\" }, { eng: \"Shoftim\", heb: \"\\u05E9\\u05D5\\u05E4\\u05D8\\u05D9\\u05DD\" }, { eng: \"Ki Seitzei\", heb: \"\\u05DB\\u05D9 \\u05EA\\u05E6\\u05D0\" }, { eng: \"Ki Savo\", heb: \"\\u05DB\\u05D9 \\u05EA\\u05D1\\u05D0\" }, { eng: \"Nitzavim\", heb: \"\\u05E0\\u05E6\\u05D1\\u05D9\\u05DD\" }, { eng: \"Vayeilech\", heb: \"\\u05D5\\u05D9\\u05DC\\u05DA\" }, { eng: \"Ha'Azinu\", heb: \"\\u05D4\\u05D0\\u05D6\\u05D9\\u05E0\\u05D5\" }, { eng: \"Vezos Habracha\", heb: \"\\u05D5\\u05D6\\u05D0\\u05EA \\u05D4\\u05D1\\u05E8\\u05DB\\u05D4\" }];\n_Sedra.shabbos_short = [52, 52, 53, 53, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, -21, 23, 24, 25, 25, -26, -28, 30, -31, 33, 34, 35, 36, 37, 38, 39, 40, -41, 43, 44, 45, 46, 47, 48, 49, 50];\n_Sedra.shabbos_long = [52, 52, 53, 53, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, -21, 23, 24, 25, 25, -26, -28, 30, -31, 33, 34, 35, 36, 37, 38, 39, 40, -41, 43, 44, 45, 46, 47, 48, 49, -50];\n_Sedra.mon_short = [51, 52, 53, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, -21, 23, 24, 25, 25, -26, -28, 30, -31, 33, 34, 35, 36, 37, 38, 39, 40, -41, 43, 44, 45, 46, 47, 48, 49, -50];\n_Sedra.mon_long = [51, 52, 53, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, -21, 23, 24, 25, 25, -26, -28, 30, -31, 33, 34, 34, 35, 36, 37, -38, 40, -41, 43, 44, 45, 46, 47, 48, 49, -50];\n_Sedra.thu_normal = [52, 53, 53, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, -21, 23, 24, 25, 25, 25, -26, -28, 30, -31, 33, 34, 35, 36, 37, 38, 39, 40, -41, 43, 44, 45, 46, 47, 48, 49, 50];\n_Sedra.thu_normal_Israel = [52, 53, 53, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, -21, 23, 24, 25, 25, -26, -28, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, -41, 43, 44, 45, 46, 47, 48, 49, 50];\n_Sedra.thu_long = [52, 53, 53, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 25, -26, -28, 30, -31, 33, 34, 35, 36, 37, 38, 39, 40, -41, 43, 44, 45, 46, 47, 48, 49, 50];\n_Sedra.shabbos_short_leap = [52, 52, 53, 53, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, -41, 43, 44, 45, 46, 47, 48, 49, -50];\n_Sedra.shabbos_long_leap = [52, 52, 53, 53, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 28, 29, 30, 31, 32, 33, 34, 34, 35, 36, 37, -38, 40, -41, 43, 44, 45, 46, 47, 48, 49, -50];\n_Sedra.mon_short_leap = [51, 52, 53, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 28, 29, 30, 31, 32, 33, 34, 34, 35, 36, 37, -38, 40, -41, 43, 44, 45, 46, 47, 48, 49, -50];\n_Sedra.mon_short_leap_Israel = [51, 52, 53, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, -41, 43, 44, 45, 46, 47, 48, 49, -50];\n_Sedra.mon_long_leap = [51, 52, 53, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 28, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, -41, 43, 44, 45, 46, 47, 48, 49, 50];\n_Sedra.mon_long_leap_Israel = [51, 52, 53, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50];\n_Sedra.thu_short_leap = [52, 53, 53, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50];\n_Sedra.thu_long_leap = [52, 53, 53, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, -50];\nvar Sedra = _Sedra;\n\n// src/JCal/PirkeiAvos.ts\nvar _PirkeiAvos = class _PirkeiAvos {\n static getPrakim(jd, israel2) {\n if (jd.getDayOfWeek() !== 6) {\n return [];\n }\n const jMonth = jd.Month, jDay = jd.Day;\n if (jMonth === 1 && jDay > (israel2 ? 21 : 22) || //All Shabbosim through Iyar, Sivan, Tamuz, Av - besides for the day/s of Shavuos and Tisha B'Av\n jMonth > 1 && jMonth < 6 && !(jMonth === 3 && jDay === 6 || !israel2 && jMonth === 3 && jDay === 7) && !(jMonth === 5 && jDay === 9)) {\n return [_PirkeiAvos._get1stPerek(jd, israel2)];\n } else if (jMonth === 6) {\n return _PirkeiAvos._ellul(jd, israel2);\n } else {\n return [];\n }\n }\n};\n_PirkeiAvos._get1stPerek = function(jd, israel2) {\n const jYear = jd.Year, jMonth = jd.Month, jDay = jd.Day, pes1 = new jDate(jYear, 1, 15), shb1 = (israel2 ? 7 : 8) + (6 - pes1.getDayOfWeek()), cShb = jMonth === 1 && jDay === shb1 + 15 ? 1 : Utils.toInt((jd.Abs - (pes1.Abs + shb1)) / 7) + 1;\n let prk = cShb % 6;\n if (prk === 0) prk = 6;\n if (!israel2 && pes1.getDayOfWeek() === 4 && (jMonth > 3 || jMonth === 3 && jDay > 6)) {\n prk = prk === 1 ? 6 : prk - 1;\n }\n if (pes1.getDayOfWeek() === 6 && (jMonth > 5 || jMonth === 5 && jDay > 9)) {\n prk = prk === 1 ? 6 : prk - 1;\n }\n return prk;\n};\n_PirkeiAvos._ellul = function(jd, israel2) {\n let prakim;\n const jYear = jd.Year, jDay = jd.Day, day1 = new jDate(jYear, 6, 1, jd.Abs - jd.Day + 1), day1DOW = day1.getDayOfWeek(), shabbos1Day = day1DOW === 6 ? 1 : 6 - (day1DOW + 6) % 6 + 1, shabbos1Date = new jDate(jYear, 6, shabbos1Day, day1.Abs + shabbos1Day - 1), cShb = jDay === shabbos1Day ? 1 : Utils.toInt((jDay - shabbos1Day) / 7) + 1;\n switch (_PirkeiAvos._get1stPerek(shabbos1Date, israel2)) {\n case 1:\n switch (cShb) {\n case 1:\n prakim = [1];\n break;\n case 2:\n prakim = [2];\n break;\n case 3:\n prakim = [3, 4];\n break;\n case 4:\n prakim = [5, 6];\n break;\n }\n break;\n case 2:\n switch (cShb) {\n case 1:\n prakim = [2];\n break;\n case 2:\n prakim = [3];\n break;\n case 3:\n prakim = [4];\n break;\n case 4:\n prakim = [5, 6];\n break;\n }\n break;\n case 3:\n switch (cShb) {\n case 1:\n prakim = [3];\n break;\n case 2:\n prakim = [4];\n break;\n case 3:\n prakim = [5];\n break;\n case 4:\n prakim = [6];\n break;\n }\n break;\n case 4:\n switch (cShb) {\n case 1:\n prakim = [4, 5];\n break;\n case 2:\n prakim = [6, 1];\n break;\n case 3:\n prakim = [2, 3];\n break;\n case 4:\n prakim = [4, 5, 6];\n break;\n }\n break;\n case 5:\n switch (cShb) {\n case 1:\n prakim = [5, 6];\n break;\n case 2:\n prakim = [1, 2];\n break;\n case 3:\n prakim = [3, 4];\n break;\n case 4:\n prakim = [5, 6];\n break;\n }\n break;\n case 6:\n switch (cShb) {\n case 1:\n prakim = [6];\n break;\n case 2:\n prakim = [1, 2];\n break;\n case 3:\n prakim = [3, 4];\n break;\n case 4:\n prakim = [5, 6];\n break;\n }\n break;\n }\n return prakim || [];\n};\nvar PirkeiAvos = _PirkeiAvos;\n\n// src/JCal/Dafyomi.ts\nvar _Dafyomi = class _Dafyomi {\n static getDaf(jdate) {\n const absoluteDate = jdate.Abs;\n let dafcnt = 40, cno, dno, osday, nsday, total, count, j, blatt;\n osday = jDate.absSd(new Date(1923, 8, 11));\n nsday = jDate.absSd(new Date(1975, 5, 24));\n if (absoluteDate < osday)\n return null;\n if (absoluteDate >= nsday) {\n cno = 8 + Utils.toInt((absoluteDate - nsday) / 2711);\n dno = (absoluteDate - nsday) % 2711;\n } else {\n cno = 1 + Utils.toInt((absoluteDate - osday) / 2702);\n dno = Utils.toInt((absoluteDate - osday) / 2702);\n }\n total = blatt = 0;\n count = -1;\n if (cno <= 7)\n _Dafyomi.masechtaList[4].daf = 13;\n else\n _Dafyomi.masechtaList[4].daf = 22;\n j = 0;\n while (j < dafcnt) {\n count++;\n total = total + _Dafyomi.masechtaList[j].daf - 1;\n if (dno < total) {\n blatt = _Dafyomi.masechtaList[j].daf + 1 - (total - dno);\n switch (count) {\n case 36:\n blatt = blatt + 21;\n break;\n case 37:\n blatt = blatt + 24;\n break;\n case 38:\n blatt = blatt + 33;\n break;\n default:\n break;\n }\n j = 1 + dafcnt;\n }\n j++;\n }\n return {\n masechet: _Dafyomi.masechtaList[count],\n daf: blatt\n };\n }\n // Returns the name of the Masechta and daf number in English, For example: Sukkah, Daf 3\n static toString(jd) {\n const d = _Dafyomi.getDaf(jd);\n if (d !== null) {\n return d.masechet.eng + \", Daf \" + d.daf.toString();\n }\n }\n //Returns the name of the Masechta and daf number in Hebrew. For example: 'סוכה דף כ.\n static toStringHeb(jd) {\n const d = _Dafyomi.getDaf(jd);\n if (d !== null) {\n return d.masechet.heb + \" \\u05D3\\u05E3 \" + Utils.toJewishNumber(d.daf);\n }\n }\n};\n_Dafyomi.masechtaList = [\n { eng: \"Berachos\", heb: \"\\u05D1\\u05E8\\u05DB\\u05D5\\u05EA\", daf: 64 },\n { eng: \"Shabbos\", heb: \"\\u05E9\\u05D1\\u05EA\", daf: 157 },\n { eng: \"Eruvin\", heb: \"\\u05E2\\u05E8\\u05D5\\u05D1\\u05D9\\u05DF\", daf: 105 },\n { eng: \"Pesachim\", heb: \"\\u05E4\\u05E1\\u05D7\\u05D9\\u05DD\", daf: 121 },\n { eng: \"Shekalim\", heb: \"\\u05E9\\u05E7\\u05DC\\u05D9\\u05DD\", daf: 22 },\n { eng: \"Yoma\", heb: \"\\u05D9\\u05D5\\u05DE\\u05D0\", daf: 88 },\n { eng: \"Sukkah\", heb: \"\\u05E1\\u05D5\\u05DB\\u05D4\", daf: 56 },\n { eng: \"Beitzah\", heb: \"\\u05D1\\u05D9\\u05E6\\u05D4\", daf: 40 },\n { eng: \"Rosh Hashana\", heb: \"\\u05E8\\u05D0\\u05E9 \\u05D4\\u05E9\\u05E0\\u05D4\", daf: 35 },\n { eng: \"Taanis\", heb: \"\\u05EA\\u05E2\\u05E0\\u05D9\\u05EA\", daf: 31 },\n { eng: \"Megillah\", heb: \"\\u05DE\\u05D2\\u05D9\\u05DC\\u05D4\", daf: 32 },\n { eng: \"Moed Katan\", heb: \"\\u05DE\\u05D5\\u05E2\\u05D3 \\u05E7\\u05D8\\u05DF\", daf: 29 },\n { eng: \"Chagigah\", heb: \"\\u05D7\\u05D2\\u05D9\\u05D2\\u05D4\", daf: 27 },\n { eng: \"Yevamos\", heb: \"\\u05D9\\u05D1\\u05DE\\u05D5\\u05EA\", daf: 122 },\n { eng: \"Kesubos\", heb: \"\\u05DB\\u05EA\\u05D5\\u05D1\\u05D5\\u05EA\", daf: 112 },\n { eng: \"Nedarim\", heb: \"\\u05E0\\u05D3\\u05E8\\u05D9\\u05DD\", daf: 91 },\n { eng: \"Nazir\", heb: \"\\u05E0\\u05D6\\u05D9\\u05E8\", daf: 66 },\n { eng: \"Sotah\", heb: \"\\u05E1\\u05D5\\u05D8\\u05D4\", daf: 49 },\n { eng: \"Gitin\", heb: \"\\u05D2\\u05D9\\u05D8\\u05D9\\u05DF\", daf: 90 },\n { eng: \"Kiddushin\", heb: \"\\u05E7\\u05D3\\u05D5\\u05E9\\u05D9\\u05DF\", daf: 82 },\n { eng: \"Baba Kamma\", heb: \"\\u05D1\\u05D1\\u05D0 \\u05E7\\u05DE\\u05D0\", daf: 119 },\n { eng: \"Baba Metzia\", heb: \"\\u05D1\\u05D1\\u05D0 \\u05DE\\u05E6\\u05D9\\u05E2\\u05D0\", daf: 119 },\n { eng: \"Baba Basra\", heb: \"\\u05D1\\u05D1\\u05D0 \\u05D1\\u05EA\\u05E8\\u05D0\", daf: 176 },\n { eng: \"Sanhedrin\", heb: \"\\u05E1\\u05E0\\u05D4\\u05D3\\u05E8\\u05D9\\u05DF\", daf: 113 },\n { eng: \"Makkot\", heb: \"\\u05DE\\u05DB\\u05D5\\u05EA\", daf: 24 },\n { eng: \"Shevuot\", heb: \"\\u05E9\\u05D1\\u05D5\\u05E2\\u05D5\\u05EA\", daf: 49 },\n { eng: \"Avodah Zarah\", heb: \"\\u05E2\\u05D1\\u05D5\\u05D3\\u05D4 \\u05D6\\u05E8\\u05D4\", daf: 76 },\n { eng: \"Horayot\", heb: \"\\u05D4\\u05D5\\u05E8\\u05D9\\u05D5\\u05EA\", daf: 14 },\n { eng: \"Zevachim\", heb: \"\\u05D6\\u05D1\\u05D7\\u05D9\\u05DD\", daf: 120 },\n { eng: \"Menachos\", heb: \"\\u05DE\\u05E0\\u05D7\\u05D5\\u05EA\", daf: 110 },\n { eng: \"Chullin\", heb: \"\\u05D7\\u05D5\\u05DC\\u05D9\\u05DF\", daf: 142 },\n { eng: \"Bechoros\", heb: \"\\u05D1\\u05DB\\u05D5\\u05E8\\u05D5\\u05EA\", daf: 61 },\n { eng: \"Arachin\", heb: \"\\u05E2\\u05E8\\u05DB\\u05D9\\u05DF\", daf: 34 },\n { eng: \"Temurah\", heb: \"\\u05EA\\u05DE\\u05D5\\u05E8\\u05D4\", daf: 34 },\n { eng: \"Kerisos\", heb: \"\\u05DB\\u05E8\\u05D9\\u05EA\\u05D5\\u05EA\", daf: 28 },\n { eng: \"Meilah\", heb: \"\\u05DE\\u05E2\\u05D9\\u05DC\\u05D4\", daf: 22 },\n { eng: \"Kinnim\", heb: \"\\u05E7\\u05E0\\u05D9\\u05DD\", daf: 4 },\n { eng: \"Tamid\", heb: \"\\u05EA\\u05DE\\u05D9\\u05D3\", daf: 10 },\n { eng: \"Midos\", heb: \"\\u05DE\\u05D3\\u05D5\\u05EA\", daf: 4 },\n { eng: \"Niddah\", heb: \"\\u05E0\\u05D3\\u05D4\", daf: 73 }\n];\nvar Dafyomi = _Dafyomi;\n\n// src/JCal/jDate.ts\nvar _yearCache = [];\nvar JS_START_DATE_ABS = 719163;\nvar MS_PER_DAY = 864e5;\nvar JS_START_OFFSET = (/* @__PURE__ */ new Date(0)).getTimezoneOffset();\nvar yearTypes = [\n { isLeapYear: false, dow: 5, isLongCheshvan: false, isLongKislev: true, daysInYear: 354 },\n { isLeapYear: false, dow: 7, isLongCheshvan: true, isLongKislev: true, daysInYear: 355 },\n { isLeapYear: false, dow: 2, isLongCheshvan: true, isLongKislev: true, daysInYear: 355 },\n { isLeapYear: false, dow: 3, isLongCheshvan: false, isLongKislev: true, daysInYear: 354 },\n { isLeapYear: false, dow: 7, isLongCheshvan: false, isLongKislev: false, daysInYear: 353 },\n { isLeapYear: false, dow: 2, isLongCheshvan: false, isLongKislev: false, daysInYear: 353 },\n { isLeapYear: false, dow: 5, isLongCheshvan: true, isLongKislev: true, daysInYear: 355 },\n { isLeapYear: true, dow: 5, isLongCheshvan: true, isLongKislev: true, daysInYear: 385 },\n { isLeapYear: true, dow: 2, isLongCheshvan: false, isLongKislev: false, daysInYear: 383 },\n { isLeapYear: true, dow: 5, isLongCheshvan: false, isLongKislev: false, daysInYear: 383 },\n { isLeapYear: true, dow: 7, isLongCheshvan: false, isLongKislev: false, daysInYear: 383 },\n { isLeapYear: true, dow: 2, isLongCheshvan: true, isLongKislev: true, daysInYear: 385 },\n { isLeapYear: true, dow: 7, isLongCheshvan: true, isLongKislev: true, daysInYear: 385 },\n { isLeapYear: true, dow: 3, isLongCheshvan: false, isLongKislev: true, daysInYear: 384 }\n];\nvar yearTypeList = [\n 8,\n 0,\n 1,\n 7,\n 0,\n 8,\n 1,\n 0,\n 8,\n 1,\n 0,\n 7,\n 4,\n 1,\n 13,\n 1,\n 8,\n 0,\n 1,\n 7,\n 4,\n 0,\n 7,\n 1,\n 8,\n 0,\n 1,\n 7,\n 0,\n 4,\n 7,\n 0,\n 1,\n 8,\n 0,\n 7,\n 4,\n 0,\n 7,\n 1,\n 4,\n 13,\n 1,\n 8,\n 1,\n 0,\n 7,\n 1,\n 0,\n 8,\n 1,\n 0,\n 8,\n 1,\n 7,\n 0,\n 4,\n 7,\n 0,\n 1,\n 8,\n 0,\n 7,\n 4,\n 1,\n 13,\n 1,\n 4,\n 13,\n 1,\n 1,\n 8,\n 0,\n 7,\n 1,\n 0,\n 8,\n 1,\n 0,\n 8,\n 1,\n 7,\n 0,\n 4,\n 7,\n 0,\n 1,\n 8,\n 0,\n 1,\n 7,\n 4,\n 13,\n 1,\n 1,\n 8,\n 0,\n 1,\n 8,\n 0,\n 7,\n 1,\n 0,\n 8,\n 1,\n 0,\n 7,\n 4,\n 0,\n 7,\n 1,\n 8,\n 0,\n 1,\n 8,\n 0,\n 1,\n 7,\n 4,\n 13,\n 1,\n 1,\n 8,\n 0,\n 1,\n 7,\n 0,\n 4,\n 7,\n 0,\n 8,\n 1,\n 0,\n 7,\n 4,\n 1,\n 13,\n 1,\n 8,\n 0,\n 1,\n 8,\n 1,\n 0,\n 7,\n 1,\n 0,\n 8,\n 1,\n 8,\n 0,\n 1,\n 7,\n 0,\n 4,\n 7,\n 0,\n 8,\n 1,\n 0,\n 7,\n 4,\n 1,\n 13,\n 1,\n 4,\n 13,\n 1,\n 7,\n 4,\n 0,\n 7,\n 1,\n 0,\n 8,\n 1,\n 8,\n 0,\n 1,\n 7,\n 0,\n 4,\n 7,\n 0,\n 1,\n 8,\n 0,\n 7,\n 1,\n 4,\n 13,\n 1,\n 1,\n 8,\n 0,\n 7,\n 4,\n 0,\n 7,\n 1,\n 0,\n 8,\n 1,\n 0,\n 7,\n 4,\n 7,\n 0,\n 1,\n 8,\n 0,\n 1,\n 8,\n 1,\n 13,\n 1,\n 4,\n 13,\n 1,\n 1,\n 8,\n 0,\n 1,\n 7,\n 0,\n 8,\n 1,\n 0,\n 8,\n 1,\n 0,\n 7,\n 4,\n 7,\n 0,\n 1,\n 8,\n 0,\n 1,\n 8,\n 1,\n 0,\n 7,\n 4,\n 13,\n 1,\n 1,\n 8,\n 0,\n 1,\n 7,\n 0,\n 8,\n 1,\n 0,\n 8,\n 1,\n 0,\n 7,\n 4,\n 1,\n 13,\n 1,\n 8,\n 0,\n 1,\n 7,\n 4,\n 0,\n 7,\n 1,\n 8,\n 0,\n 1,\n 7,\n 0,\n 4,\n 7,\n 0,\n 1,\n 8,\n 0,\n 7,\n 4,\n 0,\n 7,\n 1,\n 4,\n 13,\n 1,\n 8,\n 1,\n 0,\n 7,\n 1,\n 0,\n 8,\n 1,\n 0,\n 8,\n 1,\n 7,\n 0,\n 4,\n 7,\n 0,\n 1,\n 8,\n 0,\n 7,\n 4,\n 1,\n 13,\n 1,\n 4,\n 13,\n 1,\n 1,\n 8,\n 0,\n 7,\n 1,\n 0,\n 8,\n 1,\n 0,\n 8,\n 1,\n 7,\n 0,\n 4,\n 7,\n 0,\n 1,\n 8,\n 0,\n 1,\n 8,\n 1,\n 13,\n 1,\n 4,\n 13,\n 1,\n 1,\n 8,\n 0,\n 7,\n 1,\n 0,\n 8,\n 1,\n 0,\n 7,\n 4,\n 0,\n 7,\n 1,\n 8,\n 0,\n 1,\n 8,\n 0,\n 1,\n 7,\n 4,\n 13,\n 1,\n 1,\n 8,\n 0,\n 1,\n 7,\n 0,\n 4,\n 7,\n 0,\n 8,\n 1,\n 0,\n 7,\n 4,\n 0,\n 7,\n 1,\n 8,\n 0,\n 1,\n 8,\n 1,\n 0,\n 7,\n 1,\n 0,\n 8,\n 1,\n 8,\n 0,\n 1,\n 7,\n 0,\n 4,\n 7,\n 0,\n 8,\n 1,\n 0,\n 7,\n 4,\n 1,\n 13,\n 1,\n 4,\n 13,\n 1,\n 7,\n 4,\n 0,\n 7,\n 1,\n 0,\n 8,\n 1,\n 8,\n 0,\n 1,\n 7,\n 0,\n 4,\n 7,\n 0,\n 1,\n 8,\n 0,\n 7,\n 1,\n 4,\n 13,\n 1,\n 1,\n 8,\n 0,\n 7,\n 4,\n 0,\n 7,\n 1,\n 0,\n 8,\n 1,\n 0,\n 7,\n 4,\n 7,\n 0,\n 1,\n 8,\n 0,\n 1,\n 8,\n 1,\n 13,\n 1,\n 4,\n 13,\n 1,\n 1,\n 8,\n 0,\n 1,\n 7,\n 0,\n 8,\n 1,\n 0,\n 8,\n 1,\n 0,\n 7,\n 4,\n 7,\n 0,\n 1,\n 8,\n 0,\n 1,\n 8,\n 1,\n 0,\n 7,\n 4,\n 13,\n 1,\n 1,\n 8,\n 0,\n 1,\n 7,\n 0,\n 8,\n 1,\n 0,\n 8,\n 1,\n 0,\n 7,\n 4,\n 1,\n 13,\n 1,\n 8,\n 0,\n 1,\n 7,\n 4,\n 0,\n 7,\n 1,\n 8,\n 0,\n 1,\n 8,\n 0,\n 1,\n 7,\n 0,\n 4,\n 7,\n 0,\n 7,\n 4,\n 0,\n 7,\n 1,\n 4,\n 13,\n 1,\n 8,\n 1,\n 0,\n 7,\n 1,\n 0,\n 8,\n 1,\n 0,\n 8,\n 1,\n 7,\n 0,\n 4,\n 7,\n 0,\n 1,\n 8,\n 0,\n 7,\n 4,\n 1,\n 13,\n 1,\n 4,\n 13,\n 1,\n 1,\n 8,\n 0,\n 7,\n 1,\n 0,\n 8,\n 1,\n 0,\n 8,\n 1,\n 7,\n 0,\n 4,\n 7,\n 0,\n 1,\n 8,\n 0,\n 1,\n 8,\n 1,\n 13,\n 1,\n 4,\n 13,\n 1,\n 1,\n 8,\n 0,\n 7,\n 1,\n 0,\n 8,\n 1,\n 0,\n 7,\n 4,\n 0,\n 7,\n 1,\n 8,\n 0,\n 1,\n 8,\n 0,\n 1,\n 7,\n 4,\n 13,\n 1,\n 1,\n 8,\n 0,\n 1,\n 7,\n 0,\n 4,\n 7,\n 0,\n 8,\n 1,\n 0,\n 7,\n 4,\n 0,\n 7,\n 1,\n 8,\n 0,\n 1,\n 8,\n 1,\n 0,\n 7,\n 1,\n 0,\n 8,\n 1,\n 8,\n 0,\n 1,\n 7,\n 0,\n 4,\n 7,\n 0,\n 8,\n 1,\n 0,\n 7,\n 4,\n 1,\n 13,\n 1,\n 4,\n 13,\n 1,\n 8,\n 1,\n 0,\n 7,\n 1,\n 0,\n 8,\n 1,\n 8,\n 0,\n 1,\n 7,\n 0,\n 4,\n 7,\n 0,\n 1,\n 8,\n 0,\n 7,\n 1,\n 4,\n 13,\n 1,\n 1,\n 8,\n 0,\n 7,\n 4,\n 0,\n 7,\n 1,\n 0,\n 8,\n 1,\n 0,\n 7,\n 4,\n 7,\n 0,\n 1,\n 8,\n 0,\n 1,\n 8,\n 0,\n 7,\n 1,\n 4,\n 13,\n 1,\n 1,\n 8,\n 0,\n 1,\n 7,\n 0,\n 8,\n 1,\n 0,\n 8,\n 1,\n 0,\n 7,\n 4,\n 7,\n 0,\n 1,\n 8,\n 0,\n 1,\n 8,\n 1,\n 0,\n 7,\n 4,\n 13,\n 1,\n 1,\n 8,\n 0,\n 1,\n 7,\n 0,\n 8,\n 1,\n 0,\n 8,\n 1,\n 0,\n 7,\n 4,\n 1,\n 13,\n 1,\n 8,\n 0,\n 1,\n 7,\n 4,\n 0,\n 7,\n 1,\n 8,\n 0,\n 1,\n 8,\n 0,\n 1,\n 7,\n 0,\n 4,\n 7,\n 0,\n 7,\n 4,\n 0,\n 7,\n 1,\n 4,\n 13,\n 1,\n 8,\n 1,\n 0,\n 7,\n 1,\n 0,\n 8,\n 1,\n 0,\n 8,\n 1,\n 7,\n 0,\n 4,\n 7,\n 0,\n 1,\n 8,\n 0,\n 7,\n 4,\n 1,\n 13,\n 1,\n 4,\n 13,\n 1,\n 1,\n 8,\n 0,\n 7,\n 1,\n 0,\n 8,\n 1,\n 0,\n 8,\n 1,\n 7,\n 0,\n 4,\n 7,\n 0,\n 1,\n 8,\n 0,\n 1,\n 8,\n 1,\n 13,\n 1,\n 4,\n 13,\n 1,\n 1,\n 8,\n 0,\n 7,\n 1,\n 0,\n 8,\n 1,\n 0,\n 8,\n 1,\n 0,\n 7,\n 4,\n 7,\n 0,\n 1,\n 8,\n 0,\n 1,\n 7,\n 4,\n 13,\n 1,\n 1,\n 8,\n 0,\n 1,\n 7,\n 0,\n 4,\n 7,\n 0,\n 8,\n 1,\n 0,\n 7,\n 4,\n 0,\n 7,\n 1,\n 8,\n 0,\n 1,\n 8,\n 1,\n 0,\n 7,\n 1,\n 0,\n 8,\n 1,\n 8,\n 0,\n 1,\n 7,\n 0,\n 4,\n 7,\n 0,\n 8,\n 1,\n 0,\n 7,\n 4,\n 1,\n 13,\n 1,\n 4,\n 13,\n 1,\n 8,\n 1,\n 0,\n 7,\n 1,\n 0,\n 8,\n 1,\n 8,\n 0,\n 1,\n 7,\n 0,\n 4,\n 7,\n 0,\n 1,\n 8,\n 0,\n 7,\n 4,\n 1,\n 13,\n 1,\n 4,\n 13,\n 1,\n 7,\n 4,\n 0,\n 7,\n 1,\n 0,\n 8,\n 1,\n 0,\n 7,\n 4,\n 7,\n 0,\n 1,\n 8,\n 0,\n 1,\n 8,\n 0,\n 7,\n 1,\n 4,\n 13,\n 1,\n 1,\n 8,\n 0,\n 1,\n 7,\n 0,\n 8,\n 1,\n 0,\n 8,\n 1,\n 0,\n 7,\n 4,\n 7,\n 0,\n 1,\n 8,\n 0,\n 1,\n 8,\n 1,\n 0,\n 7,\n 4,\n 13,\n 1,\n 1,\n 8,\n 0,\n 1,\n 7,\n 0,\n 8,\n 1,\n 0,\n 8,\n 1,\n 0,\n 7\n];\nvar daysUntil5000 = 1825849;\nvar getElapsedDaysEarly = (year) => {\n const elapsed = _yearCache.find((y) => y?.year === year)?.elapsed;\n if (elapsed) {\n return elapsed;\n }\n let daysCounter = 0;\n const months = Utils.toInt(\n 235 * Utils.toInt((year - 1) / 19) + // Leap months this cycle\n 12 * ((year - 1) % 19) + // Regular months in this cycle.\n (7 * ((year - 1) % 19) + 1) / 19\n ), parts = 204 + 793 * (months % 1080), hours = 5 + 12 * months + 793 * Utils.toInt(months / 1080) + Utils.toInt(parts / 1080), conjDay = Utils.toInt(1 + 29 * months + hours / 24), conjParts = 1080 * (hours % 24) + parts % 1080;\n if (conjParts >= 19440 || conjDay % 7 === 2 && conjParts >= 9924 && !jDate.isJdLeapY(year) || conjDay % 7 === 1 && conjParts >= 16789 && jDate.isJdLeapY(year - 1)) {\n daysCounter = conjDay + 1;\n } else {\n daysCounter = conjDay;\n }\n if (Utils.has(daysCounter % 7, 0, 3, 5)) {\n daysCounter += 1;\n }\n _yearCache.push({ year, elapsed: daysCounter });\n return daysCounter;\n};\nvar getElapsedDays5000 = (year) => {\n let counter = daysUntil5000;\n for (var y = 5e3; y < year; y++) {\n counter += jDate.yearType(y).daysInYear;\n }\n return counter;\n};\nvar jDate = class _jDate {\n /**\n * Create a new Jdate.\n * new jDate() - Sets the Jewish Date for the current system date\n * new jDate(javascriptDateObject) - Sets to the Jewish date on the given Gregorian date\n * new jDate(\"January 1 2045\") - Accepts any valid javascript Date string (uses javascripts new Date(string))\n * new jDate(jewishYear, jewishMonth, jewishDay) - Months start at 1. Nissan is month 1 Adar Sheini is 13.\n * new jDate(jewishYear, jewishMonth) - Same as above, with Day defaulting to 1\n * new jDate( { year: 5776, month: 4, day: 5 } ) - same as new jDate(jewishYear, jewishMonth, jewishDay)\n * new jDate( { year: 5776, month: 4 } ) - same as new jDate(jewishYear, jewishMonth)\n * new jDate( { year: 5776 } ) - sets to the first day of Rosh Hashana on the given year\n * new jDate(absoluteDate) - The number of days elapsed since the theoretical date Sunday, December 31, 0001 BCE\n * new jDate(jewishYear, jewishMonth, jewishDay, absoluteDate) - Most efficient constructor. Needs no calculations at all.\n * new jDate( { year: 5776, month: 4, day: 5, abs: 122548708 } ) - same as new jDate(jewishYear, jewishMonth, jewishDay, absoluteDate)\n * @param {number | Date | string | {year:number,month:number,day:number} | [number, number, number, number]} [arg] The full Jewish year number OR Javascript Date object or string OR object or array of year, month, day\n * @param {number} [month] The month of the Jewish date. Nissan is 1.\n * @param {number} [day] The day of the month\n * @param {number} [abs] The number of days that have passed since 12/31/0001\n */\n constructor(arg, month, day, abs) {\n this.Day = NaN;\n this.Month = NaN;\n this.Year = NaN;\n this.Abs = NaN;\n if (arguments.length === 0) {\n this.fromAbs(_jDate.absSd(/* @__PURE__ */ new Date()));\n } else if (arg instanceof Date) {\n if (Utils.isValidDate(arg)) {\n this.fromAbs(_jDate.absSd(arg));\n } else {\n throw \"jDate constructor: The given Date is not a valid javascript Date\";\n }\n } else if (Array.isArray(arg) && arg.length >= 3) {\n this.Day = arg[0];\n this.Month = arg[1];\n this.Year = arg[2];\n this.Abs = arg.length > 3 && arg[3] || _jDate.absJd(this.Year, this.Month, this.Day);\n } else if (arg && Utils.isString(arg)) {\n const d = new Date(arg);\n if (Utils.isValidDate(d)) {\n this.fromAbs(_jDate.absSd(d));\n } else {\n throw 'jDate constructor: The given string \"' + arg + '\" cannot be parsed into a Date';\n }\n } else if (Utils.isNumber(arg)) {\n if (arguments.length === 1) {\n this.fromAbs(arg);\n } else {\n this.Year = arg;\n this.Month = month || 7;\n this.Day = day || 1;\n this.Abs = abs || _jDate.absJd(this.Year, this.Month, this.Day);\n }\n } else if (typeof arg === \"object\") {\n const argObj = arg;\n if (Utils.isNumber(argObj.year)) {\n this.Day = argObj.day || 1;\n this.Month = argObj.month || 7;\n this.Year = argObj.year;\n this.Abs = argObj.abs || _jDate.absJd(this.Year, this.Month, this.Day);\n }\n }\n }\n /**Sets the current Jewish date from the given absolute date*/\n fromAbs(absolute) {\n const ymd = _jDate.fromAbs(absolute);\n this.Year = ymd.year;\n this.Month = ymd.month;\n this.Day = ymd.day;\n this.Abs = absolute;\n }\n /**Returns a valid javascript Date object that represents the Gregorian date\n that starts at midnight of the current Jewish date.*/\n getDate() {\n return _jDate.sdFromAbs(this.Abs);\n }\n /**\n * @returns {number} The day of the week for the current Jewish date. Sunday is 0 and Shabbos is 6.\n */\n getDayOfWeek() {\n return Math.abs(this.Abs % 7);\n }\n /**\n * @returns {number} The day of the week for the current Jewish date. Sunday is 0 and Shabbos is 6\n */\n get DayOfWeek() {\n return this.getDayOfWeek();\n }\n /**Returns a new Jewish date represented by adding the given number of days to the current Jewish date.*/\n addDays(days) {\n return new _jDate(this.Abs + days);\n }\n /**\n * Returns a new Jewish date represented by adding the given number of\n * Jewish Months to the current Jewish date.\n * If the current Day is 30 and the new month only has 29 days,\n * the 29th day of the month is returned.\n * @param {number} months\n */\n addMonths(months) {\n let year = this.Year, month = this.Month, day = this.Day, miy = _jDate.monthsJYear(year);\n for (let i = 0; i < Math.abs(months); i++) {\n if (months > 0) {\n month += 1;\n if (month > miy) {\n month = 1;\n }\n if (month === 7) {\n year += 1;\n miy = _jDate.monthsJYear(year);\n }\n } else if (months < 0) {\n month -= 1;\n if (month === 0) {\n month = miy;\n }\n if (month === 6) {\n year -= 1;\n miy = _jDate.monthsJYear(year);\n }\n }\n }\n if (day === 30 && _jDate.daysJMonth(year, month) === 29) {\n day = 29;\n }\n return new _jDate(year, month, day);\n }\n /**\n * Returns a new Jewish date represented by adding the\n * given number of Jewish Years to the current Jewish date.\n * If the current Day is 30 and the new dates month only has 29 days,\n * the 29th day of the month is returned.\n * @param {number} years\n */\n addYears(years) {\n let year = this.Year + years, month = this.Month, day = this.Day;\n if (month === 13 && !_jDate.isJdLeapY(year)) {\n month = 12;\n } else if (month === 8 && day === 30 && !_jDate.isLongCheshvan(year)) {\n month = 9;\n day = 1;\n } else if (month === 9 && day === 30 && _jDate.isShortKislev(year)) {\n month = 10;\n day = 1;\n }\n if (day === 30 && _jDate.daysJMonth(year, month) === 29) {\n day = 29;\n }\n return new _jDate(year, month, day);\n }\n addSecularMonths(months) {\n const secDate = new Date(this.getDate().valueOf());\n secDate.setMonth(secDate.getMonth() + months);\n return new _jDate(secDate);\n }\n addSecularYears(years) {\n const secDate = new Date(this.getDate().valueOf());\n secDate.setFullYear(secDate.getFullYear() + years);\n return new _jDate(secDate);\n }\n /**Gets the number of days separating this Jewish Date and the given one.\n *\n * If the given date is before this one, the number will be negative.\n * @param {jDate} jd\n * */\n diffDays(jd) {\n return jd.Abs - this.Abs;\n }\n /**Gets the number of months separating this Jewish Date and the given one.\n *\n * Ignores the Day property:\n *\n * jDate.toJDate(5777, 6, 29).diffMonths(jDate.toJDate(5778, 7, 1)) will return 1 even though they are a day apart.\n *\n * If the given date is before this one, the number will be negative.\n * @param {jDate} jd\n * */\n diffMonths(jd) {\n let month = jd.Month, year = jd.Year, months = 0;\n while (!(year === this.Year && month === this.Month)) {\n if (this.Abs > jd.Abs) {\n months--;\n month++;\n if (month > _jDate.monthsJYear(year)) {\n month = 1;\n } else if (month === 7) {\n year++;\n }\n } else {\n months++;\n month--;\n if (month < 1) {\n month = _jDate.monthsJYear(year);\n } else if (month === 6) {\n year--;\n }\n }\n }\n return months;\n }\n /**Gets the number of full months separating this Jewish Date and the given one.\n * If the given date is before this one, the number will be negative.\n * @param {jDate} jd\n * */\n diffFullMonths(jd) {\n let months = this.diffMonths(jd);\n if (months >= 0 && this.Day > jd.Day) {\n months--;\n } else if (months < 0 && this.Day < jd.Day) {\n months++;\n }\n return months;\n }\n /**Gets the number of years separating this Jewish Date and the given one.\n *\n * Ignores the Day and Month properties:\n *\n * jDate.toJDate(5777, 6, 29).diffYears(jDate.toJDate(5778, 7, 1)) will return 1 even though they are a day apart.\n *\n * If the given date is before this one, the number will be negative.\n * @param {jDate} jd*/\n diffYears(jd) {\n let diff = jd.Year - this.Year;\n if (this.Month < jd.Month || this.Month === jd.Month && this.Day < jd.Day) {\n diff--;\n }\n return diff;\n }\n /**Gets the number of full years separating this Jewish Date and the given one.\n * If the given date is before this one, the number will be negative.\n * @param {jDate} jd*/\n diffFullYears(jd) {\n let diff = jd.Year - this.Year;\n if (diff >= 0 && (this.Month > jd.Month || this.Month === jd.Month && this.Day > jd.Day)) {\n diff--;\n } else if (diff < 0 && (this.Month < jd.Month || this.Month === jd.Month && this.Day < jd.Day)) {\n diff++;\n }\n return diff;\n }\n /**\n * Returns the current Jewish date in the format: Thursday, the 3rd of Kislev 5776.\n * @param {boolean} hideDayOfWeek\n * @param {boolean} dontCapitalize\n */\n toString(hideDayOfWeek, dontCapitalize) {\n return (hideDayOfWeek ? dontCapitalize ? \"t\" : \"T\" : DaysOfWeekEng[this.getDayOfWeek()] + \", t\") + \"he \" + Utils.toSuffixed(this.Day) + \" of \" + this.monthName();\n }\n /**\n * Returns the current Jewish date in the format \"[Tuesday] Nissan 3, 5778\"\n * @param {boolean} showDow - show day of week?\n */\n toShortstring(showDow) {\n return (showDow ? DaysOfWeekEng[this.getDayOfWeek()] + \" \" : \"\") + JewishMonthsEng[this.Month] + \" \" + this.Day.toString() + \", \" + this.Year.toString();\n }\n /**\n * Returns the current Jewish date in the format \"Nissan 5778\"\n * @param {boolean} showYear - show the year number?\n */\n monthName(showYear = true) {\n return JewishMonthsEng[this.Month] + (this.Month === 12 && _jDate.isJdLeapY(this.Year) ? \" Rishon \" : \" \") + (showYear ? this.Year.toString() : \"\");\n }\n /**\n * Returns the current Jewish date in the format: יום חמישי כ\"א כסלו תשע\"ו\n * @param hideDayOfWeek When set to truthy, hides the day of the week\n */\n toStringHeb(hideDayOfWeek) {\n return (!hideDayOfWeek ? DaysOfWeekHeb[this.getDayOfWeek()] + \" \" : \"\") + Utils.toJewishNumber(this.Day) + \" \" + JewishMonthsHeb[this.Month] + (this.Month === 12 && _jDate.isJdLeapY(this.Year) ? \" \\u05E8\\u05D0\\u05E9\\u05D5\\u05DF \" : \" \") + Utils.toJewishNumber(this.Year % 1e3);\n }\n /**Gets the day of the omer for the current Jewish date. If the date is not during sefira, 0 is returned.*/\n getDayOfOmer() {\n let dayOfOmer = 0;\n if (this.Month === 1 && this.Day > 15 || this.Month === 2 || this.Month === 3 && this.Day < 6) {\n const first = new _jDate(this.Year, 1, 15);\n dayOfOmer = first.diffDays(this);\n }\n return dayOfOmer;\n }\n /**\n * Returns true if this day is yomtov or chol hamoed\n * @param {boolean} israel\n */\n isYomTovOrCholHamoed(israel2) {\n return this.isYomTov(israel2) || this.Month === 1 && [16, 17, 18, 19, 20].includes(this.Day) || this.Month === 7 && [16, 17, 18, 19, 20, 21].includes(this.Day);\n }\n /**\n * Returns true if this day is yomtov\n * @param {boolean} israel\n */\n isYomTov(israel2) {\n const day = this.Day;\n switch (this.Month) {\n case 1:\n if (day === 15 || day === 21) return true;\n if (!israel2 && (day === 16 || day === 22)) return true;\n break;\n case 3:\n if (day === 6 || !israel2 && day === 7) return true;\n break;\n case 7:\n if ([1, 2, 10, 15, 22].includes(day)) {\n return true;\n }\n if (!israel2 && (day === 16 || day === 23)) return true;\n break;\n }\n return false;\n }\n /**Is today Erev Yom Tov? (includes Erev second days of Sukkos and Pesach) */\n isErevYomTov() {\n return this.Month === 1 && Utils.has(this.Day, 14, 20) || this.Month === 3 && this.Day === 5 || this.Month === 6 && this.Day === 29 || this.Month === 7 && Utils.has(this.Day, 9, 14, 21);\n }\n /**Does the current Jewish date have candle lighting before sunset?*/\n hasCandleLighting() {\n const dow = this.getDayOfWeek();\n if (dow === 5) {\n return true;\n } else if (dow === 6) {\n return false;\n }\n return this.isErevYomTov();\n }\n /**Is the current Jewish Date the day before a yomtov that contains a Friday?*/\n hasEiruvTavshilin(israel2) {\n let dow = this.getDayOfWeek();\n return (\n //Eiruv Tavshilin is only on Wednesday or Thursday\n [3, 4].includes(dow) && //today is Erev Yomtov\n this.isErevYomTov() && //Thursday OR Wednesday when in Chu\"l or Erev Rosh Hashana anywhere\n (dow === 4 || dow === 3 && (!israel2 || this.Month === 6)) && //No Eiruv Tavshilin on Erev yom kippur\n this.Day !== 9\n );\n }\n /**Gets the candle lighting time for the current Jewish date for the given Location object.*/\n getCandleLighting(location, nullIfNoCandles) {\n if (!location) {\n throw \"To get sunrise and sunset, the location needs to be supplied\";\n }\n if (this.hasCandleLighting()) {\n return Zmanim.getCandleLighting(this, location);\n } else if (nullIfNoCandles) {\n return null;\n } else {\n throw \"No candle lighting on \" + this.toString();\n }\n }\n /**Get the sedra of the week for the current Jewish date.*/\n getSedra(israel2) {\n return new Sedra(this, israel2);\n }\n /**Get the prakim of Pirkei Avos for the current Jewish date.*/\n getPirkeiAvos(israel2) {\n return PirkeiAvos.getPrakim(this, israel2);\n }\n /**Gets sunrise and sunset time for the current Jewish date at the given Location.\n *\n * Return format: {sunrise: {hour: 6, minute: 18}, sunset: {hour: 19, minute: 41}}*/\n getSunriseSunset(location, ignoreElevation) {\n if (!location) {\n throw \"To get sunrise and sunset, the location needs to be supplied\";\n }\n return Zmanim.getSunTimes(this, location, !ignoreElevation);\n }\n /**Gets Chatzos for both the day and the night for the current Jewish date at the given Location.\n *\n *Return format: {hour: 11, minute: 48}*/\n getChatzos(location) {\n if (!location) {\n throw \"To get Chatzos, the location needs to be supplied\";\n }\n return Zmanim.getChatzos(this, location);\n }\n /**Gets the length of a single Sha'a Zmanis in minutes for the current Jewish date at the given Location.*/\n getShaaZmanis(location, offset) {\n if (!location) {\n throw \"To get the Shaa Zmanis, the location needs to be supplied\";\n }\n return Zmanim.getShaaZmanis(this, location, offset);\n }\n /**Returns the daily daf in English. For example: Sukkah, Daf 3.*/\n getDafYomi() {\n return Dafyomi.toString(this) || \"\";\n }\n /**Gets the daily daf in Hebrew. For example: 'סוכה דף כ.*/\n getDafyomiHeb() {\n return Dafyomi.toStringHeb(this) || \"\";\n }\n /**\n * Converts its argument/s to a Jewish Date.\n * Samples of use:\n * To get the current Jewish Date: jDate.toJDate(new Date()).\n * To print out the current date in English: jDate.toJDate(new Date()).toString()\n * To print out the current date in Hebrew: jDate.toJDate(new Date()).toStringHeb()\n *\n * Arguments to the jDate.toJDate function can be one of the following:\n * jDate.toJDate() - Sets the Jewish Date for the current system date\n * jDate.toJDate(Date) - Sets to the Jewish date on the given Javascript Date object\n * jDate.toJDate(\"January 1 2045\") - Accepts any valid Javascript Date string (uses string constructor of Date object)\n * jDate.toJDate(jewishYear, jewishMonth, jewishDay) - Months start at 1. Nissan is month 1 Adara Sheini is 13.\n * jDate.toJDate(jewishYear, jewishMonth) - Same as above, with Day defaulting to 1\n * jDate.toJDate(jewishYear) - sets to the first day of Rosh Hashana on the given year\n * jDate.toJDate( { year: 5776, month: 4, day: 5 } ) - Months start at 1. Nissan is month 1 Adara Sheini is 13.\n * jDate.toJDate( { year: 5776, month: 4 } ) - Same as above, with Day defaulting to 1\n * jDate.toJDate( { year: 5776 } ) - sets to the first day of Rosh Hashana on the given year\n * jDate.toJDate(jewishYear, jewishMonth, jewishDay, absoluteDate) - Most efficient. Needs no calculations at all. The absoluteDate is the number of days elapsed since the theoretical date Sunday, December 31, 0001 BCE.\n * jDate.toJDate( { year: 5776, month: 4, day: 5, abs: 122548708 } ) - same as jDate.toJDate(jewishYear, jewishMonth, jewishDay, absoluteDate)\n ****************************************************************************************************************/\n static toJDate(arg, month, day, abs) {\n if (arguments.length === 0) {\n return new _jDate();\n } else if (Utils.isNumber(arg) && arguments.length === 1) {\n return new _jDate(arg, 7, 1);\n } else {\n return new _jDate(arg, month, day, abs);\n }\n }\n static now() {\n return new _jDate();\n }\n /**Calculate the Jewish year, month and day for the given absolute date.*/\n static fromAbs(absDay) {\n let year = 3761 + Utils.toInt(absDay / (absDay > 0 ? 366 : 300)), month, day;\n while (absDay >= _jDate.absJd(year + 1, 7, 1)) {\n year++;\n }\n month = absDay < _jDate.absJd(year, 1, 1) ? 7 : 1;\n while (absDay > _jDate.absJd(year, month, _jDate.daysJMonth(year, month))) {\n month++;\n }\n day = absDay - _jDate.absJd(year, month, 1) + 1;\n return { year, month, day };\n }\n /**\n * Gets the absolute date of the given javascript Date object.\n * @param {Date} date\n */\n static absSd(date) {\n const ms = date.valueOf() - date.getTimezoneOffset() * 6e4, numFullDays = Math.floor(ms / MS_PER_DAY);\n return JS_START_DATE_ABS + numFullDays;\n }\n /**Calculate the absolute date for the given Jewish Date.*/\n static absJd(year, month, day) {\n let dayInYear = day;\n if (month < 7) {\n let m = 7;\n while (m <= _jDate.monthsJYear(year)) {\n dayInYear += _jDate.daysJMonth(year, m);\n m++;\n }\n m = 1;\n while (m < month) {\n dayInYear += _jDate.daysJMonth(year, m);\n m++;\n }\n } else {\n let m = 7;\n while (m < month) {\n dayInYear += _jDate.daysJMonth(year, m);\n m++;\n }\n }\n return dayInYear + (_jDate.tDays(year) + -1373429);\n }\n /**\n * Gets a javascript date from an absolute date\n */\n static sdFromAbs(abs) {\n const offset = JS_START_OFFSET > 0 ? 1 : 0, daysSinceStart = abs - JS_START_DATE_ABS + offset;\n return new Date(daysSinceStart * MS_PER_DAY);\n }\n /**number of days in the given Jewish Month. Nissan is 1 and Adar Sheini is 13.*/\n static daysJMonth(year, month) {\n switch (month) {\n //Nissan, Sivan, Av, Tishrei and Shvat always have 30 days\n case 1:\n case 3:\n case 5:\n case 7:\n case 11:\n return 30;\n //Iyyar, Tammuz, Ellul, Teves and Adar Sheini always have 29 days.\n case 2:\n case 4:\n case 6:\n case 10:\n case 13:\n return 29;\n //Cheshvan sometimes has 29 days and sometimes 30 days.\n case 8:\n return _jDate.isLongCheshvan(year) ? 30 : 29;\n //Kislev sometimes has 29 days and sometimes 30 days.\n case 9:\n return _jDate.isShortKislev(year) ? 29 : 30;\n //Adar has 29 days unless it is Adar Rishon.\n case 12:\n return _jDate.isJdLeapY(year) ? 30 : 29;\n }\n return 0;\n }\n /**Elapsed days since creation of the world until Rosh Hashana of the given year*/\n static tDays(year) {\n if (year >= 5e3) {\n return getElapsedDays5000(year);\n } else {\n return getElapsedDaysEarly(year);\n }\n }\n /**The index for the year type of the given year.\n * IMPORTANT NOTE: Only works for years 5000 and after.\n */\n static yearType(year) {\n return yearTypes[yearTypeList[year - 5e3]];\n }\n /**number of days in the given Jewish Year.*/\n static daysJYear(year) {\n if (year >= 5e3) {\n return _jDate.yearType(year).daysInYear;\n } else {\n return _jDate.tDays(year + 1) - _jDate.tDays(year);\n }\n }\n /**Does Cheshvan for the given Jewish Year have 30 days?*/\n static isLongCheshvan(year) {\n if (year >= 5e3) {\n return _jDate.yearType(year).isLongCheshvan;\n } else {\n return _jDate.daysJYear(year) % 10 === 5;\n }\n }\n /**Does Kislev for the given Jewish Year have 29 days?*/\n static isShortKislev(year) {\n if (year >= 5e3) {\n return !_jDate.yearType(year).isLongKislev;\n } else {\n return _jDate.daysJYear(year) % 10 === 3;\n }\n }\n /**number of days in the given Jewish Year.*/\n static daysJYear_(year) {\n return _jDate.yearType(year).daysInYear;\n }\n /**Does Cheshvan for the given Jewish Year have 30 days?*/\n static isLongCheshvan_(year) {\n return _jDate.yearType(year).isLongCheshvan;\n }\n /**Does Kislev for the given Jewish Year have 29 days?*/\n static isShortKislev_(year) {\n return !_jDate.yearType(year).isLongKislev;\n }\n /**Does the given Jewish Year have 13 months?*/\n static isJdLeapY(year) {\n return (7 * year + 1) % 19 < 7;\n }\n /**number of months in Jewish Year.*/\n static monthsJYear(year) {\n return _jDate.isJdLeapY(year) ? 13 : 12;\n }\n};\n\n// src/JCal/Zmanim.ts\nvar Zmanim = class _Zmanim {\n /**\n * Gets sunrise and sunset time for given date and Location.\n * Accepts a javascript Date object, a string for creating a javascript date object or a jDate object.\n * Location object is required.\n * @returns {SunTimes}\n * @param {Date | jDate} date A Javascript Date or Jewish Date for which to calculate the sun times.\n * @param {Location} location Where on the globe to calculate the sun times for.\n * @param {Boolean} considerElevation\n */\n static getSunTimes(date, location, considerElevation = true) {\n if (date instanceof jDate) {\n date = date.getDate();\n } else if (date instanceof String) {\n date = new Date(date);\n }\n if (!Utils.isValidDate(date)) {\n throw \"Zmanim.getSunTimes: supplied date parameter cannot be converted to a Date\";\n }\n let sunrise, sunset, zenithDeg = 90, zenithMin = 50, lonHour = 0, longitude = 0, latitude = 0, cosLat = 0, sinLat = 0, cosZen = 0, sinDec = 0, cosDec = 0, xmRise = 0, xmSet = 0, xlRise = 0, xlSet = 0, aRise = 0, aSet = 0, ahrRise = 0, ahrSet = 0, hRise = 0, hSet = 0, tRise = 0, tSet = 0, utRise = 0, utSet = 0;\n const day = _Zmanim.dayOfYear(date), earthRadius = 6356900, zenithAtElevation = _Zmanim.degToDec(zenithDeg, zenithMin) + _Zmanim.radToDeg(Math.acos(earthRadius / (earthRadius + (considerElevation ? location.Elevation : 0))));\n zenithDeg = Math.floor(zenithAtElevation);\n zenithMin = (zenithAtElevation - zenithDeg) * 60;\n cosZen = Math.cos(0.01745 * _Zmanim.degToDec(zenithDeg, zenithMin));\n longitude = location.Longitude;\n lonHour = longitude / 15;\n latitude = location.Latitude;\n cosLat = Math.cos(0.01745 * latitude);\n sinLat = Math.sin(0.01745 * latitude);\n tRise = day + (6 + lonHour) / 24;\n tSet = day + (18 + lonHour) / 24;\n xmRise = _Zmanim.M(tRise);\n xlRise = _Zmanim.L(xmRise);\n xmSet = _Zmanim.M(tSet);\n xlSet = _Zmanim.L(xmSet);\n aRise = 57.29578 * Math.atan(0.91746 * Math.tan(0.01745 * xlRise));\n aSet = 57.29578 * Math.atan(0.91746 * Math.tan(0.01745 * xlSet));\n if (Math.abs(aRise + 360 - xlRise) > 90) {\n aRise += 180;\n }\n if (aRise > 360) {\n aRise -= 360;\n }\n if (Math.abs(aSet + 360 - xlSet) > 90) {\n aSet += 180;\n }\n if (aSet > 360) {\n aSet -= 360;\n }\n ahrRise = aRise / 15;\n sinDec = 0.39782 * Math.sin(0.01745 * xlRise);\n cosDec = Math.sqrt(1 - sinDec * sinDec);\n hRise = (cosZen - sinDec * sinLat) / (cosDec * cosLat);\n ahrSet = aSet / 15;\n sinDec = 0.39782 * Math.sin(0.01745 * xlSet);\n cosDec = Math.sqrt(1 - sinDec * sinDec);\n hSet = (cosZen - sinDec * sinLat) / (cosDec * cosLat);\n if (Math.abs(hRise) <= 1) {\n hRise = 57.29578 * Math.acos(hRise);\n utRise = (360 - hRise) / 15 + ahrRise + _Zmanim.adj(tRise) + lonHour;\n sunrise = _Zmanim.timeAdj(utRise + location.UTCOffset, date, location);\n if (sunrise.hour > 12) {\n sunrise.hour -= 12;\n }\n }\n if (Math.abs(hSet) <= 1) {\n hSet = 57.29578 * Math.acos(hSet);\n utSet = hRise / 15 + ahrSet + _Zmanim.adj(tSet) + lonHour;\n sunset = _Zmanim.timeAdj(utSet + location.UTCOffset, date, location);\n if (sunset.hour > 0 && sunset.hour < 12) {\n sunset.hour += 12;\n }\n }\n return { sunrise, sunset };\n }\n /**\n * @param {jDate | Date} date\n * @param {Location} location\n */\n static getChatzos(date, location) {\n return _Zmanim.getChatzosFromSuntimes(\n _Zmanim.getSunTimes(date, location, false)\n );\n }\n /**\n * @param {SunTimes} sunTimes\n */\n static getChatzosFromSuntimes(sunTimes) {\n const rise = sunTimes.sunrise, set = sunTimes.sunset;\n if (rise === void 0 || isNaN(rise.hour) || set === void 0 || isNaN(set.hour)) {\n return { hour: NaN, minute: NaN };\n }\n const chatz = Utils.toInt((Utils.totalSeconds(set) - Utils.totalSeconds(rise)) / 2);\n return Utils.addSeconds(rise, chatz);\n }\n /**\n * @param {jDate | Date} date\n * @param {Location} location\n * @param {any} offset\n */\n static getShaaZmanis(date, location, offset) {\n return _Zmanim.getShaaZmanisFromSunTimes(\n _Zmanim.getSunTimes(date, location, false),\n offset\n );\n }\n /**\n * @param {{ sunrise: any; sunset: any; }} sunTimes\n * @param {number} [offset]\n */\n static getShaaZmanisFromSunTimes(sunTimes, offset) {\n if (!sunTimes || !sunTimes.sunrise || !sunTimes.sunset) {\n return 0;\n }\n let rise = sunTimes.sunrise, set = sunTimes.sunset;\n if (!rise || isNaN(rise.hour) || !set || isNaN(set.hour)) {\n return NaN;\n }\n if (offset) {\n rise = Utils.addMinutes(rise, -offset);\n set = Utils.addMinutes(set, offset);\n }\n return (Utils.totalSeconds(set) - Utils.totalSeconds(rise)) / 720;\n }\n /**\n * @param {{ sunrise: any; sunset: any; }} sunTimes\n * @param {boolean} israel\n */\n static getShaaZmanisMga(sunTimes, israel2) {\n const minutes = israel2 ? 90 : 72;\n let rise = sunTimes.sunrise && Utils.addMinutes(sunTimes.sunrise, -minutes), set = sunTimes.sunset && Utils.addMinutes(sunTimes.sunset, minutes);\n if (!rise || isNaN(rise.hour) || !set || isNaN(set.hour)) {\n return NaN;\n }\n return (Utils.totalSeconds(set) - Utils.totalSeconds(rise)) / 720;\n }\n /**\n * @param {jDate | Date} date\n * @param {Location} location\n */\n static getCandleLighting(date, location) {\n return _Zmanim.getCandleLightingFromSunTimes(\n _Zmanim.getSunTimes(date, location),\n location\n );\n }\n /**\n * @param {SunTimes} sunTimes\n * @param {any} location\n */\n static getCandleLightingFromSunTimes(sunTimes, location) {\n return sunTimes.sunset && _Zmanim.getCandleLightingFromSunset(sunTimes.sunset, location);\n }\n /**\n * @param {Time} sunset\n * @param {Location} location\n */\n static getCandleLightingFromSunset(sunset, location) {\n return Utils.addMinutes(sunset, -(location.CandleLighting || 0));\n }\n /**\n * @param {Date} date\n */\n static dayOfYear(date) {\n const month = date.getMonth(), isLeap = () => Utils.isSecularLeapYear(date.getFullYear()), yearDay = [0, 1, 32, 60, 91, 121, 152, 182, 213, 244, 274, 305, 335];\n return yearDay[month + 1] + date.getDate() + (month > 1 && isLeap() ? 1 : 0);\n }\n /**\n * @param {number} deg\n * @param {number} min\n */\n static degToDec(deg, min) {\n return deg + min / 60;\n }\n /**\n * @param {number} x\n */\n static M(x) {\n return 0.9856 * x - 3.251;\n }\n /**\n * @param {number} x\n */\n static L(x) {\n return x + 1.916 * Math.sin(0.01745 * x) + 0.02 * Math.sin(2 * 0.01745 * x) + 282.565;\n }\n /**\n * @param {number} x\n */\n static adj(x) {\n return -0.06571 * x - 6.62;\n }\n /**\n * @param {number} rad\n */\n static radToDeg(rad) {\n return 57.29578 * rad;\n }\n /**\n * @param {number} time\n * @param {Date} date\n * @param {Location} location\n */\n static timeAdj(time, date, location) {\n if (time < 0) {\n time += 24;\n }\n let hour = Utils.toInt(time);\n const minFloat = (time - hour) * 60 + 0.5, min = Utils.toInt(minFloat), sec = Math.round(60 * (minFloat - min));\n if (Utils.isDST(location, date)) {\n hour++;\n }\n return Utils.fixTime({ hour, minute: min, second: sec });\n }\n};\n\n// src/Utils.ts\nvar __DEV__ = process.env.NODE_ENV === \"development\";\nvar DaysOfWeek = Object.freeze({\n SUNDAY: 0,\n MONDAY: 1,\n TUESDAY: 2,\n WEDNESDAY: 3,\n THURSDAY: 4,\n FRIDAY: 5,\n SHABBOS: 6\n});\nvar JewishMonthsNames = Object.freeze({\n NISSAN: 1,\n IYAR: 2,\n SIVAN: 3,\n TAMUZ: 4,\n AV: 5,\n ELLUL: 6,\n TISHREI: 7,\n CHESHVAN: 8,\n KISLEV: 9,\n TEVES: 10,\n SHVAT: 11,\n ADAR: 12,\n ADAR_SHEINI: 13\n});\nvar JewishMonthsEng = [\n \"\",\n \"Nissan\",\n \"Iyar\",\n \"Sivan\",\n \"Tamuz\",\n \"Av\",\n \"Ellul\",\n \"Tishrei\",\n \"Cheshvan\",\n \"Kislev\",\n \"Teves\",\n \"Shvat\",\n \"Adar\",\n \"Adar Sheini\"\n];\nvar JewishMonthsHeb = [\n \"\",\n \"\\u05E0\\u05D9\\u05E1\\u05DF\",\n \"\\u05D0\\u05D9\\u05D9\\u05E8\",\n \"\\u05E1\\u05D9\\u05D5\\u05DF\",\n \"\\u05EA\\u05DE\\u05D5\\u05D6\",\n \"\\u05D0\\u05D1\",\n \"\\u05D0\\u05DC\\u05D5\\u05DC\",\n \"\\u05EA\\u05E9\\u05E8\\u05D9\",\n \"\\u05D7\\u05E9\\u05D5\\u05DF\",\n \"\\u05DB\\u05E1\\u05DC\\u05D5\",\n \"\\u05D8\\u05D1\\u05EA\",\n \"\\u05E9\\u05D1\\u05D8\",\n \"\\u05D0\\u05D3\\u05E8\",\n \"\\u05D0\\u05D3\\u05E8 \\u05E9\\u05E0\\u05D9\"\n];\nvar SecularMonthsEng = [\n \"January\",\n \"February\",\n \"March\",\n \"April\",\n \"May\",\n \"June\",\n \"July\",\n \"August\",\n \"September\",\n \"October\",\n \"November\",\n \"December\"\n];\nvar DaysOfWeekEng = [\n \"Sunday\",\n \"Monday\",\n \"Tuesday\",\n \"Wednesday\",\n \"Thursday\",\n \"Erev Shabbos\",\n \"Shabbos Kodesh\"\n];\nvar DaysOfWeekHeb = [\n \"\\u05D9\\u05D5\\u05DD \\u05E8\\u05D0\\u05E9\\u05D5\\u05DF\",\n \"\\u05D9\\u05D5\\u05DD \\u05E9\\u05E0\\u05D9\",\n \"\\u05D9\\u05D5\\u05DD \\u05E9\\u05DC\\u05D9\\u05E9\\u05D9\",\n \"\\u05D9\\u05D5\\u05DD \\u05E8\\u05D1\\u05D9\\u05E2\\u05D9\",\n \"\\u05D9\\u05D5\\u05DD \\u05D7\\u05DE\\u05D9\\u05E9\\u05D9\",\n \"\\u05E2\\u05E8\\u05D1 \\u05E9\\u05D1\\u05EA \\u05E7\\u05D5\\u05D3\\u05E9\",\n \"\\u05E9\\u05D1\\u05EA \\u05E7\\u05D5\\u05D3\\u05E9\"\n];\nvar _Utils = class _Utils {\n /**\n * Gets the Jewish representation of a number (365 = שס\"ה)\n * Minimum number is 1 and maximum is 9999.\n * @param {Number} number\n */\n static toJewishNumber(number) {\n if (number < 1) {\n throw \"Min value is 1\";\n }\n if (number > 9999) {\n throw \"Max value is 9999\";\n }\n let n = number, retval = \"\";\n if (n >= 1e3) {\n retval += _Utils.jsd[_Utils.toInt((n - n % 1e3) / 1e3) - 1] + \"'\";\n n = n % 1e3;\n }\n while (n >= 400) {\n retval += \"\\u05EA\";\n n -= 400;\n }\n if (n >= 100) {\n retval += _Utils.jhd[_Utils.toInt((n - n % 100) / 100) - 1];\n n = n % 100;\n }\n if (n == 15) {\n retval += \"\\u05D8\\u05D5\";\n } else if (n == 16) {\n retval += \"\\u05D8\\u05D6\";\n } else {\n if (n > 9) {\n retval += _Utils.jtd[_Utils.toInt((n - n % 10) / 10) - 1];\n }\n if (n % 10 > 0) {\n retval += _Utils.jsd[n % 10 - 1];\n }\n }\n if (number > 999 && number % 1e3 < 10) {\n retval = \"'\" + retval;\n } else if (retval.length > 1) {\n retval = retval.slice(0, -1) + '\"' + retval[retval.length - 1];\n }\n return retval;\n }\n /**\n * Returns the javascript date in the format: Thursday, the 3rd of January 2018.\n * @param {Date} date\n * @param {Boolean} hideDayOfWeek\n * @param {Boolean} dontCapitalize\n */\n static toStringDate(date, hideDayOfWeek, dontCapitalize) {\n if (!date) return;\n return (hideDayOfWeek ? dontCapitalize ? \"t\" : \"T\" : DaysOfWeekEng[date.getDay()] + \", t\") + \"he \" + _Utils.toSuffixed(date.getDate()) + \" of \" + SecularMonthsEng[date.getMonth()] + \" \" + date.getFullYear().toString();\n }\n /**\n * Returns the javascript date in the format: 1/3/2020.\n * @param {Date} date\n * @param {Boolean} monthFirst\n */\n static toShortStringDate(date, monthFirst) {\n if (!date) return;\n const dayNum = date.getDate(), monthNum = date.getMonth() + 1;\n return (monthFirst ? `${monthNum}/${dayNum}` : `${dayNum < 10 ? \"0\" : \"\"}${dayNum}/${monthNum < 10 ? \"0\" : \"\"}${monthNum}`) + \"/\" + date.getFullYear().toString();\n }\n /**\n * Add two character suffix to number. e.g. 21st, 102nd, 93rd, 500th\n * @param {Number} num\n */\n static toSuffixed(num) {\n const t = num.toString();\n let suffix = \"th\";\n if (t.length === 1 || t[t.length - 2] !== \"1\") {\n switch (t[t.length - 1]) {\n case \"1\":\n suffix = \"st\";\n break;\n case \"2\":\n suffix = \"nd\";\n break;\n case \"3\":\n suffix = \"rd\";\n break;\n }\n }\n return t + suffix;\n }\n /**\n * Returns if the given full secular year has a February 29th\n * @param {Number} year\n */\n static isSecularLeapYear(year) {\n return !(year % 400) || !!(year % 100) && !(year % 4);\n }\n /**\n * Get day of week using Javascripts getDay function.\n * Important note: months starts at 1 not 0 like javascript\n * The DOW returned has Sunday = 0\n * @param {Number} year\n * @param {Number} month\n * @param {Number} day\n */\n static getSdDOW(year, month, day) {\n return new Date(year, month - 1, day).getDay();\n }\n /**\n * Makes sure hour is between 0 and 23 and minute is between 0 and 59.\n * Overlaps get added/subtracted.\n * The argument needs to be an object in the format {hour : 12, minute : 42, second : 18}\n * @param {Time} time\n */\n static fixTime(time) {\n const result = {\n hour: time.hour,\n minute: time.minute,\n second: time.second || 0\n };\n while (result.second >= 60) {\n result.minute += 1;\n result.second -= 60;\n }\n while (result.second < 0) {\n result.minute -= 1;\n result.second += 60;\n }\n while (result.minute < 0) {\n result.minute += 60;\n result.hour--;\n }\n while (result.minute >= 60) {\n result.minute -= 60;\n result.hour++;\n }\n if (result.hour < 0) {\n result.hour = 24 + result.hour % 24;\n }\n if (result.hour > 23) {\n result.hour = result.hour % 24;\n }\n return result;\n }\n /**\n * Add the given number of minutes to the given time.\n * The argument needs to be an object in the format {hour : 12, minute : 42, second : 18 }\n *\n * @param {Time} time\n * @param {Number} minutes\n */\n static addMinutes(time, minutes) {\n if (!time) return time;\n return time && _Utils.fixTime({\n hour: time.hour,\n minute: time.minute + (minutes || 0),\n second: time.second\n });\n }\n /**\n * Add the given number of seconds to the given time.\n * The argument needs to be an object in the format {hour : 12, minute :42, second : 18}\n *\n * @param {Time} time\n * @param {Number} seconds\n */\n static addSeconds(time, seconds) {\n return _Utils.fixTime({\n hour: time.hour,\n minute: time.minute,\n second: (time.second || 0) + seconds\n });\n }\n /**\n * Gets the time difference between two times of day.\n * If showNegative is falsey, assumes that the earlier time is always before the later time.\n * So, if laterTime is less than earlierTime, the returned diff is until the next day.\n * Both arguments need to be an object in the format {hour : 12, minute : 42, second : 18 }\n * @param {Time} earlierTime\n * @param {Time} laterTime\n * @param {Boolean} [showNegative] show negative values or assume second value is next day?\n * @returns{{hour:number, minute:number, second:number, sign:1|-1}}\n */\n static timeDiff(earlierTime, laterTime, showNegative = false) {\n const earlySec = _Utils.totalSeconds(earlierTime), laterSec = _Utils.totalSeconds(laterTime), time = _Utils.fixTime({\n hour: 0,\n minute: 0,\n second: earlySec <= laterSec ? laterSec - earlySec : showNegative ? earlySec - laterSec : 86400 - earlySec + laterSec\n });\n return {\n ...time,\n sign: earlySec <= laterSec || !showNegative ? 1 : -1\n };\n }\n /**\n * Gets the total number of minutes in the given time.\n * @param {Time} time An object in the format {hour : 12, minute :42, second : 18}\n */\n static totalMinutes(time) {\n return time ? time.hour * 60 + time.minute : 0;\n }\n /**\n * Gets the total number of seconds in the given time.\n * @param {Time} time An object in the format {hour : 12, minute :42, second : 18}\n */\n static totalSeconds(time) {\n return time ? _Utils.totalMinutes(time) * 60 + (time.second || 0) : 0;\n }\n /**\n * Returns the time of the given javascript date as an object in the format of {hour : 23, minute :42, second: 18 }\n * @param {Date} sdate\n * @returns {{hour :number, minute :number, second:number }}\n */\n static timeFromDate(sdate) {\n return {\n hour: sdate.getHours(),\n minute: sdate.getMinutes(),\n second: sdate.getSeconds()\n };\n }\n /**\n * Determines if the second given time is after (or at) the first given time\n * @param {{hour :number, minute :number, second:number }} beforeTime\n * @param {{hour :number, minute :number, second:number }} afterTime\n */\n static isTimeAfter(beforeTime, afterTime) {\n if (!beforeTime || !afterTime) return false;\n return _Utils.totalSeconds(afterTime) >= _Utils.totalSeconds(beforeTime);\n }\n /**\n * Returns the given time interval in a formatted string.\n * @param {{hour:number, minute:number,second:number,sign?: 1 | -1}} time An object in the format {hour : 23, minute :42, second: 18 }\n */\n static getTimeIntervalTextStringHeb(time) {\n let t = \"\";\n if (time.hour > 0) {\n t += `${time.hour.toString()} ${time.hour === 1 ? \"\\u05E9\\u05E2\\u05D4\" : \"\\u05E9\\u05E2\\u05D5\\u05EA\"}`;\n }\n if (time.minute > 0) {\n if (t.length) {\n t += \" \";\n }\n t += `${time.minute.toString()} ${time.minute === 1 ? \"\\u05D3\\u05E7\\u05D4\" : \"\\u05D3\\u05E7\\u05D5\\u05EA\"}`;\n }\n if ((time.second || 0) > 0) {\n if (t.length) {\n t += \" \";\n }\n t += `${Math.trunc(time.second || 0).toString()} ${time.second === 1 ? \"\\u05E9\\u05E0\\u05D9\\u05D9\\u05D4\" : \"\\u05E9\\u05E0\\u05D9\\u05D5\\u05EA\"}`;\n }\n return t;\n }\n /**\n * Returns the given time interval in a formatted string.\n * @param {{hour:number, minute:number,second:number,sign?: 1 | -1}} time An object in the format {hour : 23, minute :42, second: 18 }\n */\n static getTimeIntervalTextString(time) {\n let t = \"\";\n if (time.hour > 0) {\n t += `${time.hour.toString()} ${time.hour === 1 ? \"hour\" : \"hours\"}`;\n }\n if (time.minute > 0) {\n if (t.length) {\n t += \" \";\n }\n t += `${time.minute.toString()} ${time.minute === 1 ? \"minute\" : \"minutes\"}`;\n }\n if ((time.second || 0) > 0) {\n if (t.length) {\n t += \" \";\n }\n t += `${Math.trunc(time.second || 0).toString()} ${time.second === 1 ? \"second\" : \"seconds\"}`;\n }\n return t;\n }\n /**\n * Returns the nusach for Sefiras Ha'omer for the given day and minhag\n * @param {number} dayOfOmer The day of the Omer for which to get the nusach for\n * @param {'ashkenaz'|'sefard'|'sefardi'} nusach Should it be La'Omer (\"sefard\") or Ba'Omer (\"ashkenaz\") or \"sefardi\" (Eidot Hamizrach)?\n */\n static getOmerNusach(dayOfOmer, nusach) {\n const weeks = _Utils.toInt(dayOfOmer / 7), days = dayOfOmer % 7;\n let txt = \"\\u05D4\\u05D9\\u05D5\\u05DD \";\n if (dayOfOmer === 1) {\n txt += \"\\u05D9\\u05D5\\u05DD \\u05D0\\u05D7\\u05D3 \";\n } else {\n if (dayOfOmer === 2) {\n txt += \"\\u05E9\\u05E0\\u05D9 \";\n } else {\n if (dayOfOmer === 10) {\n txt += \"\\u05E2\\u05E9\\u05E8\\u05D4 \";\n } else {\n txt += _Utils.jsnum[_Utils.toInt(dayOfOmer % 10)] + \" \";\n if (dayOfOmer > 10) {\n if (dayOfOmer > 20 && dayOfOmer % 10 > 0) {\n txt += \"\\u05D5\";\n }\n txt += _Utils.jtnum[_Utils.toInt(dayOfOmer / 10)] + \" \";\n }\n }\n }\n txt += (dayOfOmer >= 11 ? \"\\u05D9\\u05D5\\u05DD\" : \"\\u05D9\\u05DE\\u05D9\\u05DD\") + \" \";\n if (nusach === \"sefardi\") {\n txt += \"\\u05DC\\u05E2\\u05D5\\u05DE\\u05E8 \";\n }\n if (dayOfOmer >= 7) {\n txt += \"\\u05E9\\u05D4\\u05DD \";\n if (weeks === 1) {\n txt += \"\\u05E9\\u05D1\\u05D5\\u05E2 \\u05D0\\u05D7\\u05D3 \";\n } else if (weeks === 2) {\n txt += \"\\u05E9\\u05E0\\u05D9 \\u05E9\\u05D1\\u05D5\\u05E2\\u05D5\\u05EA \";\n } else if (weeks > 0) {\n txt += _Utils.jsnum[_Utils.toInt(weeks)] + \" \\u05E9\\u05D1\\u05D5\\u05E2\\u05D5\\u05EA \";\n }\n if (days === 1) {\n txt += \"\\u05D5\\u05D9\\u05D5\\u05DD \\u05D0\\u05D7\\u05D3 \";\n } else if (days === 2) {\n txt += \"\\u05D5\\u05E9\\u05E0\\u05D9 \\u05D9\\u05DE\\u05D9\\u05DD \";\n } else if (days > 0) {\n txt += \"\\u05D5\" + _Utils.jsnum[days] + \" \\u05D9\\u05DE\\u05D9\\u05DD \";\n }\n }\n }\n if (nusach === \"sefard\") {\n txt += \"\\u05DC\\u05E2\\u05D5\\u05DE\\u05E8\";\n } else if (nusach === \"ashkenaz\") {\n txt += \"\\u05D1\\u05E2\\u05D5\\u05DE\\u05E8\";\n }\n return txt;\n }\n /**\n * Returns the given time in a formatted string.\n * @param {Time} time An object in the format {hour : 23, minute :42, second: 18 }\n * @param {1 | -1} [sign] \n * @param {Boolean} [army] If falsey, the returned string will be: 11:42:18 PM otherwise it will be 23:42:18\n * @param {Boolean} [roundUp] If falsey, the numbers will converted to a whole number by rounding down, otherwise, up.\n */\n static getTimeString(time, sign, army, roundUp) {\n const round = roundUp ? Math.ceil : Math.floor;\n time = {\n hour: round(time.hour),\n minute: round(time.minute),\n second: round(time.second || 0)\n };\n if (army) {\n return (sign && sign < 0 ? \"-\" : \"\") + (time.hour.toString() + \":\" + (time.minute < 10 ? \"0\" + time.minute.toString() : time.minute.toString()) + \":\" + ((time.second || 0) < 10 ? \"0\" + (time.second || 0).toString() : (time.second || 0).toString()));\n } else {\n return (sign && sign < 0 ? \"-\" : \"\") + (time.hour <= 12 ? time.hour == 0 ? 12 : time.hour : time.hour - 12).toString() + \":\" + (time.minute < 10 ? \"0\" + time.minute.toString() : time.minute.toString()) + \":\" + ((time.second || 0) < 10 ? \"0\" + (time.second || 0).toString() : (time.second || 0).toString()) + (time.hour < 12 ? \" AM\" : \" PM\");\n }\n }\n /**\n * Gets the UTC offset in whole hours for the users time zone.\n * Note: this is not affected by DST - unlike javascripts getTimezoneOffset() function which gives you the current offset.\n */\n static currUtcOffset() {\n const date = /* @__PURE__ */ new Date(), jan = new Date(date.getFullYear(), 0, 1), jul = new Date(date.getFullYear(), 6, 1);\n return -_Utils.toInt(\n Math.max(jan.getTimezoneOffset(), jul.getTimezoneOffset()) / 60\n );\n }\n /** Determines if the given date is within DST on the users system */\n static isDateDST(date) {\n return -_Utils.toInt(date.getTimezoneOffset() / 60) !== _Utils.currUtcOffset();\n }\n /**\n * Determines if the given date is within DST in the given location\n * Note: This may not be correct if the user has set the Location to a\n * time zone outside Israel or the USA which is not the current system time zone.\n */\n static isDST(location, date) {\n if (location.UTCOffset === _Utils.currUtcOffset()) {\n return _Utils.isDateDST(date);\n } else if (location.Israel) {\n return _Utils.isIsrael_DST(date);\n } else {\n return _Utils.isUSA_DST(date);\n }\n }\n /**\n * Determines if the given javascript date is during DST according to the USA rules\n * @param {Date} date A javascript Date object\n */\n static isUSA_DST(date) {\n const year = date.getFullYear(), month = date.getMonth() + 1, day = date.getDate(), hour = date.getHours();\n if (month < 3 || month == 12) {\n return false;\n } else if (month > 3 && month < 11) {\n return true;\n } else if (month === 3) {\n const firstDOW = _Utils.getSdDOW(year, 3, 1), targetDate = firstDOW == 0 ? 8 : 7 - (firstDOW + 7) % 7 + 8;\n return day > targetDate || day === targetDate && hour >= 2;\n } else {\n const firstDOW = _Utils.getSdDOW(year, 11, 1), targetDate = firstDOW === 0 ? 1 : 7 - (firstDOW + 7) % 7 + 1;\n return day < targetDate || day === targetDate && hour < 2;\n }\n }\n //\n /**\n * Determines if the given Javascript date is during DST according to the current (5776) Israeli rules\n * @param {Date} date A Javascript Date object\n */\n static isIsrael_DST(date) {\n const year = date.getFullYear(), month = date.getMonth() + 1, day = date.getDate(), hour = date.getHours();\n if (month > 10 || month < 3) {\n return false;\n } else if (month > 3 && month < 10) {\n return true;\n } else if (month === 3) {\n const lastFriday = 31 - _Utils.getSdDOW(year, 3, 31) - 2;\n return day > lastFriday || day === lastFriday && hour >= 2;\n } else {\n const lastSunday = 31 - _Utils.getSdDOW(year, 10, 31);\n return day < lastSunday || day === lastSunday && hour < 2;\n }\n }\n /** The current time in Israel - determined by the current users system time and time zone offset*/\n static getSdNowInIsrael() {\n const now = /* @__PURE__ */ new Date(), israelTimeOffset = 2 + -_Utils.currUtcOffset();\n now.setHours(now.getHours() + israelTimeOffset);\n return now;\n }\n /**\n * Adds the given number of days to the given javascript date and returns the new date\n * @param {Date} sdate\n * @param {Number} days\n */\n static addDaysToSdate(sdate, days) {\n return new Date(sdate.valueOf() + 864e5 * days);\n }\n /**\n * Compares two js dates to se if they both refer to the same day - time is ignored.\n * @param {Date} sdate1\n * @param {Date} sdate2\n */\n static isSameSdate(sdate1, sdate2) {\n return sdate1 && sdate2 && sdate1.toDateString() === sdate2.toDateString();\n }\n /**\n * Compares two jDates to se if they both refer to the same day - time is ignored.\n * @param {jDate} jdate1\n * @param {jDate} jdate2\n */\n static isSameJdate(jdate1, jdate2) {\n return jdate1 && jdate2 && jdate1.Abs && jdate2.Abs && jdate1.Abs === jdate2.Abs;\n }\n /**\n * Compares two jDates to see if they both refer to the same Jewish Month.\n * @param {jDate} jdate1\n * @param {jDate} jdate2\n */\n static isSameJMonth(jdate1, jdate2) {\n return jdate1.Month === jdate2.Month && jdate1.Year === jdate2.Year;\n }\n /**\n * Compares two dates to se if they both refer to the same Secular Month.\n * @param {Date} sdate1\n * @param {Date} sdate2\n */\n static isSameSMonth(sdate1, sdate2) {\n return sdate1.getMonth() === sdate2.getMonth() && sdate1.getFullYear() === sdate2.getFullYear();\n }\n /**\n * Determines if the time of the given Date() is after sunset at the given Location\n * @param {Date} sdate\n * @param {Location} location\n */\n static isAfterSunset(sdate, location) {\n const shkia = Zmanim.getSunTimes(sdate, location).sunset, now = _Utils.timeFromDate(sdate);\n return shkia && _Utils.isTimeAfter(shkia, now);\n }\n /**\n * Gets the current Jewish Date at the given Location\n * @param {Location} location\n */\n static nowAtLocation(location) {\n let sdate = /* @__PURE__ */ new Date();\n if (_Utils.isAfterSunset(sdate, location)) {\n sdate.setDate(sdate.getDate() + 1);\n }\n return new jDate(sdate);\n }\n /**\n * Converts the given complex number to an integer by removing the decimal part.\n * Returns same results as Math.floor for positive numbers and Math.ceil for negative ones.\n * Almost identical functionality to Math.trunc and parseInt.\n * The difference is if the argument is NaN. Math.trunc returns NaN while ths fuction returns 0.\n * In performance tests, this function was found to be quicker than the alternatives.\n * @param {Number} float The complex number to convert to an integer\n */\n static toInt(float) {\n return float | 0;\n }\n /***\n * Takes either a jDate or a Date and returns both\n * @param date {Date |jDate}\n * @returns {{ sdate:Date, jdate:jDate }}\n */\n static bothDates(date) {\n const jdate = date instanceof Date ? new jDate(date) : date;\n const sdate = date instanceof Date ? date : jdate.getDate();\n return { sdate, jdate };\n }\n /** Returns true if \"thing\" is either a string primitive or String object.*/\n static isString(thing) {\n return typeof thing === \"string\" || thing instanceof String;\n }\n /** Returns true if \"thing\" is either a number primitive or a Number object.*/\n static isNumber(thing) {\n return typeof thing === \"number\" || thing instanceof Number;\n }\n /** Returns true if \"thing\" is a Date object containing a valid date.*/\n static isValidDate(thing) {\n return thing instanceof Date && !isNaN(thing.valueOf());\n }\n /** Returns whether or not the given, array, string, or argument list contains the given item or substring.\n *\n * This function is awfully similar to Array.includes, but has the added plus of accepting any number or type of arguments.*/\n static has(o, ...arr) {\n if (arr.length === 1 && (Array.isArray(arr[0]) || _Utils.isString(arr[0]))) {\n return arr[0].includes(o);\n } else {\n return arr.includes(o);\n }\n }\n /** Returns the first value unless it is undefined, null or NaN.\n *\n * This is very useful for boolean, string and integer parameters\n * where we want to keep false, \"\" and 0 if they were supplied.\n *\n * Similar purpose to default parameters with the difference being that this function will return\n * the second value if the first is NaN or null, while default params will give give you the NaN or the null.\n */\n static setDefault(paramValue, defValue) {\n if (typeof paramValue === \"undefined\" || paramValue === null || isNaN(paramValue)) {\n return defValue;\n } else {\n return paramValue;\n }\n }\n /**\n * Returns an array containing a range of integers.\n * @param {Number} [start] The number to start at. The start number is included in the results.\n * If only one argument is supplied, start will be set to 1.\n * @param {Number} end The top end of the range.\n * Unlike Pythons range function, The end number is included in the results.\n * @returns {[Number]}\n */\n static range(start, end) {\n const startNumber = typeof end === \"undefined\" ? 1 : start, endNumber = typeof end === \"undefined\" ? start : end;\n return Array.from({ length: endNumber - startNumber + 1 }, (v, i) => startNumber + i);\n }\n /**\n * Log message to console\n * @param {string} txt\n */\n static log(txt, ...optionalItems) {\n if (__DEV__) {\n console.log(txt, ...optionalItems);\n }\n }\n /**\n * Warn message to console\n * @param {string} txt\n */\n static warn(txt, ...optionalItems) {\n if (__DEV__) {\n console.warn(txt, ...optionalItems);\n }\n }\n /**\n * Error message to console\n * @param {*} txt\n */\n static error(txt, ...optionalItems) {\n if (__DEV__) {\n console.error(txt, ...optionalItems);\n }\n }\n};\n_Utils.jsd = [\"\\u05D0\", \"\\u05D1\", \"\\u05D2\", \"\\u05D3\", \"\\u05D4\", \"\\u05D5\", \"\\u05D6\", \"\\u05D7\", \"\\u05D8\"];\n_Utils.jtd = [\"\\u05D9\", \"\\u05DB\", \"\\u05DC\", \"\\u05DE\", \"\\u05E0\", \"\\u05E1\", \"\\u05E2\", \"\\u05E4\", \"\\u05E6\"];\n_Utils.jhd = [\"\\u05E7\", \"\\u05E8\", \"\\u05E9\", \"\\u05EA\"];\n_Utils.jsnum = [\n \"\",\n \"\\u05D0\\u05D7\\u05D3\",\n \"\\u05E9\\u05E0\\u05D9\\u05DD\",\n \"\\u05E9\\u05DC\\u05E9\\u05D4\",\n \"\\u05D0\\u05E8\\u05D1\\u05E2\\u05D4\",\n \"\\u05D7\\u05DE\\u05E9\\u05D4\",\n \"\\u05E9\\u05E9\\u05D4\",\n \"\\u05E9\\u05D1\\u05E2\\u05D4\",\n \"\\u05E9\\u05DE\\u05D5\\u05E0\\u05D4\",\n \"\\u05EA\\u05E9\\u05E2\\u05D4\"\n];\n_Utils.jtnum = [\"\", \"\\u05E2\\u05E9\\u05E8\", \"\\u05E2\\u05E9\\u05E8\\u05D9\\u05DD\", \"\\u05E9\\u05DC\\u05D5\\u05E9\\u05D9\\u05DD\", \"\\u05D0\\u05E8\\u05D1\\u05E2\\u05D9\\u05DD\"];\nvar Utils = _Utils;\n\n// src/JCal/Location.ts\nvar Location = class _Location {\n /**\n * Describe a new Location.\n * @param {String} name The name of the Location\n * @param {String} nameHeb The name of the Location\n * @param {Boolean} israel Is this Location in Israel?\n * @param {Number} latitude\n * @param {Number} longitude\n * @param {Number} utcOffset The time zone. Israel is 2 and New York is -5.\n * @param {Number} elevation Elevation in meters\n * @param {Number} [candleLighting] Number of minutes before sunset the candles are lit on Friday\n */\n constructor(name, nameHeb, israel2, latitude, longitude, utcOffset, elevation, candleLighting) {\n if (typeof israel2 === \"undefined\" || israel2 === null) {\n israel2 = latitude > 29.45 && latitude < 33 && longitude < -34.23 && longitude > -35.9;\n }\n if (israel2) {\n utcOffset = 2;\n } else if (typeof utcOffset === \"undefined\" || utcOffset === null) {\n utcOffset = -Math.round(longitude / 15);\n }\n this.Name = name || \"Unknown Location\";\n this.NameHebrew = nameHeb;\n this.Israel = !!israel2;\n this.Latitude = latitude;\n this.Longitude = longitude;\n this.UTCOffset = utcOffset || 0;\n this.Elevation = elevation || 0;\n this.CandleLighting = candleLighting || _Location.getCandles(this);\n }\n static clone(location) {\n return new _Location(\n location.Name,\n location.NameHebrew,\n location.Israel,\n location.Latitude,\n location.Longitude,\n location.UTCOffset,\n location.Elevation,\n location.CandleLighting || 0\n );\n }\n static getCandles(location) {\n if (location.CandleLighting) {\n return location.CandleLighting;\n } else if (!location.Israel) {\n return 18;\n } else {\n const special = [\n { names: [\"jerusalem\", \"yerush\", \"petach\", \"petah\", \"petak\", \"beit shemesh\", \"\\u05D9\\u05E8\\u05D5\\u05E9\\u05DC\\u05D9\\u05DD\", \"\\u05E4\\u05EA\\u05D7 \\u05EA\\u05E7\\u05D5\\u05D4\", \"\\u05D1\\u05D9\\u05EA \\u05E9\\u05DE\\u05E9\"], min: 40 },\n { names: [\"haifa\", \"chaifa\", \"be'er sheva\", \"beersheba\", \"\\u05D7\\u05D9\\u05E4\\u05D4\", \"\\u05D1\\u05D0\\u05E8 \\u05E9\\u05D1\\u05E2\"], min: 22 }\n ], loclc = location.Name.toLowerCase(), city = special.find((sp) => {\n return sp.names.find((spi) => {\n return loclc.indexOf(spi) > -1;\n });\n });\n return city ? city.min : 30;\n }\n }\n /**Gets the Location for Jerusalem.*/\n static getJerusalem() {\n return new _Location(\"Jerusalem\", \"\\u05D9\\u05E8\\u05D5\\u05E9\\u05DC\\u05D9\\u05DD\", true, 31.78, -35.22, 2, 800, 40);\n }\n /**Gets the Location for Lakewood NJ*/\n static getLakewood() {\n return new _Location(\"Lakewood NJ\", void 0, false, 40.1, 74.23, -5, 0, 18);\n }\n};\n\n// src/Locations.ts\nvar import_closest_match = require(\"closest-match\");\n\n// src/locations.json\nvar locations_default = [{ name: \"Ofakim\", heb: \"\\u05D0\\u05D5\\u05E4\\u05E7\\u05D9\\u05DD\", il: true, tz: 2, el: 170, lat: 31.32, lon: -34.62 }, { name: \"Eilat\", heb: \"\\u05D0\\u05D9\\u05DC\\u05EA\", il: true, tz: 2, lat: 29.55, lon: -34.95 }, { name: \"Elad\", heb: \"\\u05D0\\u05DC\\u05E2\\u05D3\", il: true, tz: 2, el: 150, lat: 32.05, lon: -34.95 }, { name: \"Ashdod\", heb: \"\\u05D0\\u05E9\\u05D3\\u05D5\\u05D3\", il: true, tz: 2, lat: 31.78, lon: -34.63 }, { name: \"Ashkelon\", heb: \"\\u05D0\\u05E9\\u05E7\\u05DC\\u05D5\\u05DF\", il: true, tz: 2, lat: 31.65, lon: -34.57 }, { name: \"Be'er Ya'akov\", heb: \"\\u05D1\\u05D0\\u05E8 \\u05D9\\u05E2\\u05E7\\u05D1\", il: true, tz: 2, lat: 31.93, lon: -34.83 }, { name: \"Bersheba\", heb: \"\\u05D1\\u05D0\\u05E8 \\u05E9\\u05D1\\u05E2\", il: true, tz: 2, el: 270, lat: 31.23, lon: -34.78 }, { name: \"Beit She'an\", heb: \"\\u05D1\\u05D9\\u05EA \\u05E9\\u05D0\\u05DF\", il: true, tz: 2, el: 0, lat: 32.5, lon: -35.5 }, { name: \"Beit Shemesh\", heb: \"\\u05D1\\u05D9\\u05EA \\u05E9\\u05DE\\u05E9\", il: true, tz: 2, el: 300, lat: 31.73, lon: -34.98 }, { name: \"Beitar Illit\", heb: \"\\u05D1\\u05D9\\u05EA\\u05E8 \\u05E2\\u05DC\\u05D9\\u05EA\", il: true, tz: 2, el: 800, lat: 31.68, lon: -35.12 }, { name: \"Bnei Brak\", heb: \"\\u05D1\\u05E0\\u05D9 \\u05D1\\u05E8\\u05E7\", il: true, tz: 2, el: 70, lat: 32.08, lon: -34.82, cl: 21 }, { name: \"Binyamina\", heb: \"\\u05D1\\u05E0\\u05D9\\u05DE\\u05D9\\u05E0\\u05D4\", il: true, tz: 2, lat: 32.52, lon: -34.95 }, { name: \"Bat Yam\", heb: \"\\u05D1\\u05EA \\u05D9\\u05DD\", il: true, tz: 2, lat: 32.02, lon: -34.73 }, { name: \"Givat Zeev\", heb: \"\\u05D2\\u05D1\\u05E2\\u05EA \\u05D6\\u05D0\\u05D1\", il: true, tz: 2, lat: 31.87, lon: -35.17 }, { name: \"Givatayim\", heb: \"\\u05D2\\u05D1\\u05EA\\u05D9\\u05D9\\u05DD\", il: true, tz: 2, lat: 32.05, lon: -34.8 }, { name: \"Dimona\", heb: \"\\u05D3\\u05D9\\u05DE\\u05D5\\u05E0\\u05D4\", il: true, tz: 2, lat: 31.07, lon: -35.03 }, { name: \"Hertzeliya\", heb: \"\\u05D4\\u05E8\\u05E6\\u05DC\\u05D9\\u05D4\", il: true, tz: 2, lat: 32.17, lon: -34.83 }, { name: \"Zichron Ya'akov\", heb: \"\\u05D6\\u05DB\\u05E8\\u05D5\\u05DF \\u05D9\\u05E2\\u05E7\\u05D1\", il: true, tz: 2, el: 170, lat: 32.57, lon: -34.95 }, { name: \"Hebron\", heb: \"\\u05D7\\u05D1\\u05E8\\u05D5\\u05DF\", il: true, tz: 2, el: 950, lat: 31.53, lon: -35.08 }, { name: \"Hadera\", heb: \"\\u05D7\\u05D3\\u05E8\\u05D4\", il: true, tz: 2, lat: 32.43, lon: -34.92 }, { name: \"Holon\", heb: \"\\u05D7\\u05D5\\u05DC\\u05D5\\u05DF\", il: true, tz: 2, lat: 32.02, lon: -34.75 }, { name: \"Chispin\", heb: \"\\u05D7\\u05D9\\u05E1\\u05E4\\u05D9\\u05DF\", il: true, tz: 2, lat: 32.85, lon: -35.77 }, { name: \"Haifa\", heb: \"\\u05D7\\u05D9\\u05E4\\u05D4\", il: true, tz: 2, el: 370, lat: 32.8, lon: -34.98 }, { name: \"Chafetz Chaim\", heb: \"\\u05D7\\u05E4\\u05E5 \\u05D7\\u05D9\\u05D9\\u05DD\", il: true, tz: 2, el: 80, lat: 31.48, lon: -34.47 }, { name: \"Tiberius\", heb: \"\\u05D8\\u05D1\\u05E8\\u05D9\\u05D4\", il: true, tz: 2, lat: 32.78, lon: -35.53 }, { name: \"Telz Stone\", heb: \"\\u05D8\\u05DC\\u05D6 \\u05E1\\u05D8\\u05D5\\u05DF\", il: true, tz: 2, el: 720, lat: 31.78, lon: -35.1 }, { name: \"Yerucham\", heb: \"\\u05D9\\u05E8\\u05D5\\u05D7\\u05DD\", il: true, tz: 2, lat: 30.98, lon: -34.92 }, { name: \"Jerusalem\", heb: \"\\u05D9\\u05E8\\u05D5\\u05E9\\u05DC\\u05D9\\u05DD\", il: true, tz: 2, el: 775, lat: 31.77, lon: -35.23, cl: 40 }, { name: \"Kfar Chabad\", heb: \"\\u05DB\\u05E4\\u05E8 \\u05D7\\u05D1\\u05D3\", il: true, tz: 2, lat: 31.97, lon: -34.8 }, { name: \"Kfar Chasidim\", heb: \"\\u05DB\\u05E4\\u05E8 \\u05D7\\u05E1\\u05D9\\u05D3\\u05D9\\u05DD\", il: true, tz: 2, el: 154, lat: 32.73, lon: -35.08 }, { name: \"Kfar Mimon\", heb: \"\\u05DB\\u05E4\\u05E8 \\u05DE\\u05D9\\u05D9\\u05DE\\u05D5\\u05DF\", il: true, tz: 2, lat: 31.42, lon: -34.58 }, { name: \"Karmiel\", heb: \"\\u05DB\\u05E8\\u05DE\\u05D9\\u05D0\\u05DC\", il: true, tz: 2, lat: 32.92, lon: -35.3 }, { name: \"Lod\", heb: \"\\u05DC\\u05D5\\u05D3\", il: true, tz: 2, lat: 31.95, lon: -34.88 }, { name: \"Migdal Ha'Emek\", heb: \"\\u05DE\\u05D2\\u05D3\\u05DC \\u05D4\\u05E2\\u05DE\\u05E7\", il: true, tz: 2, lat: 32.67, lon: -35.23 }, { name: \"Meron\", heb: \"\\u05DE\\u05D9\\u05E8\\u05D5\\u05DF\", il: true, tz: 2, el: 900, lat: 32.98, lon: -35.43 }, { name: \"Ma'agalim\", heb: \"\\u05DE\\u05E2\\u05D2\\u05DC\\u05D9\\u05DD\", il: true, tz: 2, el: 150, lat: 31.48, lon: -34.67 }, { name: \"Ma'aleh Adumim\", heb: \"\\u05DE\\u05E2\\u05DC\\u05D4 \\u05D0\\u05D3\\u05D5\\u05DE\\u05D9\\u05DD\", il: true, tz: 2, lat: 31.77, lon: -35.3 }, { name: \"Mitzpeh Ramon\", heb: \"\\u05DE\\u05E6\\u05E4\\u05D4 \\u05E8\\u05DE\\u05D5\\u05DF\", il: true, tz: 2, el: 892, lat: 30.62, lon: -34.8 }, { name: \"Ne'halel\", heb: \"\\u05E0\\u05D4\\u05DC\\u05DC\", il: true, tz: 2, lat: 32.67, lon: -35.23 }, { name: \"Nahariya\", heb: \"\\u05E0\\u05D4\\u05E8\\u05D9\\u05D4\", il: true, tz: 2, el: 25, lat: 33.02, lon: -35.1 }, { name: \"Nir Eztyon\", heb: \"\\u05E0\\u05D9\\u05E8 \\u05E2\\u05E6\\u05D9\\u05D5\\u05DF\", il: true, tz: 2, el: 220, lat: 32.7, lon: -34.98 }, { name: \"Nesher\", heb: \"\\u05E0\\u05E9\\u05E8\", il: true, tz: 2, lat: 32.73, lon: -35.08 }, { name: \"Netivot\", heb: \"\\u05E0\\u05EA\\u05D9\\u05D1\\u05D5\\u05EA\", il: true, tz: 2, el: 142, lat: 31.42, lon: -34.58 }, { name: \"Netanya\", heb: \"\\u05E0\\u05EA\\u05E0\\u05D9\\u05D4\", il: true, tz: 2, lat: 32.33, lon: -34.87 }, { name: \"Ein Bokek\", heb: \"\\u05E2\\u05D9\\u05DF \\u05D1\\u05D5\\u05E7\\u05E7\", il: true, tz: 2, lat: 31.2, lon: -35.37 }, { name: \"Acre\", heb: \"\\u05E2\\u05DB\\u05D5\", il: true, tz: 2, lat: 32.93, lon: -35.08 }, { name: \"Eli\", heb: \"\\u05E2\\u05DC\\u05D9\", il: true, tz: 2, el: 720, lat: 32.07, lon: -35.27 }, { name: \"Afula\", heb: \"\\u05E2\\u05E4\\u05D5\\u05DC\\u05D4\", il: true, tz: 2, el: 60, lat: 32.6, lon: -35.28 }, { name: \"Etzyon Gaver\", heb: \"\\u05E2\\u05E6\\u05D9\\u05D5\\u05DF \\u05D2\\u05D1\\u05E8\", il: true, tz: 2, el: 5, lat: 29.53, lon: -34.95 }, { name: \"Arad\", heb: \"\\u05E2\\u05E8\\u05D3\", il: true, tz: 2, el: 640, lat: 31.27, lon: -35.22 }, { name: \"Pardes Chana\", heb: \"\\u05E4\\u05E8\\u05D3\\u05E1 \\u05D7\\u05E0\\u05D4\", il: true, tz: 2, lat: 32.47, lon: -34.97 }, { name: \"Petach Tikvah\", heb: \"\\u05E4\\u05EA\\u05D7 \\u05EA\\u05E7\\u05D5\\u05D5\\u05D4\", il: true, tz: 2, lat: 32.08, lon: -34.88, cl: 40 }, { name: \"Safed\", heb: \"\\u05E6\\u05E4\\u05EA\", il: true, tz: 2, el: 850, lat: 32.97, lon: -35.5 }, { name: \"Kedumim\", heb: \"\\u05E7\\u05D3\\u05D5\\u05DE\\u05D9\\u05DD\", il: true, tz: 2, el: 487, lat: 32.22, lon: -35.15 }, { name: \"Komemiyut\", heb: \"\\u05E7\\u05D5\\u05DE\\u05DE\\u05D9\\u05D5\\u05EA\", il: true, tz: 2, el: 76, lat: 31.65, lon: -34.73 }, { name: \"Kiryat Arba\", heb: \"\\u05E7\\u05E8\\u05D9\\u05EA \\u05D0\\u05E8\\u05D1\\u05E2\", il: true, tz: 2, el: 987, lat: 31.52, lon: -35.1 }, { name: \"Kiryat Gat\", heb: \"\\u05E7\\u05E8\\u05D9\\u05EA \\u05D2\\u05EA\", il: true, tz: 2, el: 159, lat: 31.62, lon: -34.77 }, { name: \"Kityat Tivon\", heb: \"\\u05E7\\u05E8\\u05D9\\u05EA \\u05D8\\u05D1\\u05E2\\u05D5\\u05DF\", il: true, tz: 2, el: 39, lat: 32.73, lon: -35.08 }, { name: \"Kiryat Yam\", heb: \"\\u05E7\\u05E8\\u05D9\\u05EA \\u05D9\\u05DD\", il: true, tz: 2, lat: 32.83, lon: -35.07 }, { name: \"Kiryat Malachi\", heb: \"\\u05E7\\u05E8\\u05D9\\u05EA \\u05DE\\u05DC\\u05D0\\u05DB\\u05D9\", il: true, tz: 2, lat: 31.73, lon: -34.75 }, { name: \"Modi'in Illit\", heb: \"\\u05DE\\u05D5\\u05D3\\u05D9\\u05E2\\u05D9\\u05DF \\u05E2\\u05D9\\u05DC\\u05D9\\u05EA\", il: true, tz: 2, el: 240, lat: 31.93, lon: -35.04, cl: 30 }, { name: \"Kiryat Shmona\", heb: \"\\u05E7\\u05E8\\u05D9\\u05EA \\u05E9\\u05DE\\u05D5\\u05E0\\u05D4\", il: true, tz: 2, lat: 33.2, lon: -35.57 }, { name: \"Rosh Ha'ayin\", heb: \"\\u05E8\\u05D0\\u05E9 \\u05D4\\u05E2\\u05D9\\u05DF\", il: true, tz: 2, el: 90, lat: 32.08, lon: -34.95 }, { name: \"Rosh Pina\", heb: \"\\u05E8\\u05D0\\u05E9 \\u05E4\\u05D9\\u05E0\\u05D4\", il: true, tz: 2, el: 131, lat: 32.97, lon: -35.48 }, { name: \"Rishon Le'Tzion\", heb: \"\\u05E8\\u05D0\\u05E9\\u05D5\\u05DF \\u05DC\\u05E6\\u05D9\\u05D5\\u05DF\", il: true, tz: 2, lat: 31.97, lon: -34.8 }, { name: \"Rehovot\", heb: \"\\u05E8\\u05D7\\u05D5\\u05D1\\u05D5\\u05EA\", il: true, tz: 2, el: 76, lat: 31.88, lon: -34.82 }, { name: \"Ramla\", heb: \"\\u05E8\\u05DE\\u05DC\\u05D4\", il: true, tz: 2, lat: 31.92, lon: -34.87 }, { name: \"Ramat Hasharon\", heb: \"\\u05E8\\u05DE\\u05EA \\u05D4\\u05E9\\u05E8\\u05D5\\u05DF\", il: true, tz: 2, el: 85, lat: 32.17, lon: -34.85 }, { name: \"Ramat Magshimim\", heb: \"\\u05E8\\u05DE\\u05EA \\u05DE\\u05D2\\u05E9\\u05D9\\u05DE\\u05D9\\u05DD\", il: true, tz: 2, el: 450, lat: 32.83, lon: -35.82 }, { name: \"Ra'anana\", heb: \"\\u05E8\\u05E2\\u05E0\\u05E0\\u05D4\", il: true, tz: 2, el: 71, lat: 32.17, lon: -34.85 }, { name: \"Shvi tzion\", heb: \"\\u05E9\\u05D1\\u05D9 \\u05E6\\u05D9\\u05D5\\u05DF\", il: true, tz: 2, lat: 33.02, lon: -35.1 }, { name: \"Nablus\", heb: \"\\u05E9\\u05DB\\u05DD\", il: true, tz: 2, el: 667, lat: 32.22, lon: -35.27 }, { name: \"Shalavim\", heb: \"\\u05E9\\u05DC\\u05E2\\u05D1\\u05D9\\u05DD\", il: true, tz: 2, el: 194, lat: 31.87, lon: 34.98 }, { name: \"Tushiya\", heb: \"\\u05EA\\u05D5\\u05E9\\u05D9\\u05D4\", il: true, tz: 2, lat: 31.42, lon: -34.58 }, { name: \"Tel Aviv\", heb: \"\\u05EA\\u05DC \\u05D0\\u05D1\\u05D9\\u05D1\", il: true, tz: 2, el: 20, lat: 32.07, lon: -34.77, cl: 21 }, { name: \"Tifrach\", heb: \"\\u05EA\\u05E4\\u05E8\\u05D7\", il: true, tz: 2, el: 173, lat: 31.32, lon: -34.67 }, { name: \"Nazereth\", heb: \"\\u05E0\\u05E6\\u05E8\\u05EA\", il: true, tz: 2, lat: 32.7, lon: -35.32 }, { name: \"Menachemya\", heb: \"\\u05DE\\u05E0\\u05D7\\u05DE\\u05D9\\u05D4\", il: true, tz: 2, lat: 32.6, lon: -35.55 }, { name: \"Ramot\", heb: \"\\u05E8\\u05DE\\u05D5\\u05EA\", il: true, tz: 2, el: 800, lat: 31.82, lon: -35.18 }, { name: \"Katzrin\", heb: \"\\u05E7\\u05E6\\u05E8\\u05D9\\u05DF\", il: true, tz: 2, lat: 32.98, lon: -35.68 }, { name: \"Hashmonaim\", heb: \"\\u05D7\\u05E9\\u05DE\\u05D5\\u05E0\\u05D0\\u05D9\\u05DD\", il: true, tz: 2, el: 255, lat: 31.93, lon: -35.02 }, { name: \"Laniado\", heb: \"\\u05DC\\u05E0\\u05D9\\u05D0\\u05D3\\u05D5 / \\u05E0\\u05EA\\u05E0\\u05D9\\u05D4\", il: true, tz: 2, el: 26, lat: 32.33, lon: -34.87 }, { name: \"Melbourne\", tz: 10, el: 35, lat: -37.82, lon: -144.97 }, { name: \"Aukland\", tz: 12, lat: -36.87, lon: -174.77 }, { name: \"Boisbriand\", tz: -5, lat: 45.62, lon: 73.85 }, { name: \"Ottawa\", tz: -5, lat: 45.42, lon: 75.7 }, { name: \"Winnipeg\", tz: -6, lat: 49.88, lon: 97.13 }, { name: \"Toronto\", tz: -5, el: 175, lat: 43.68, lon: 79.43 }, { name: \"Montreal\", tz: -5, el: 30, lat: 45.52, lon: 73.57 }, { name: \"Eidenburg\", tz: 0, el: 134, lat: 55.92, lon: 3.18 }, { name: \"Algeria\", tz: 1, lat: 36.82, lon: 2.98 }, { name: \"Bogota\", tz: -5, lat: 4.77, lon: 74.1 }, { name: \"Brasilia\", tz: -3, lat: 15.77, lon: 48.02 }, { name: \"Goteborg\", tz: 1, el: 100, lat: 57.7, lon: -11.95 }, { name: \"Victoria\", tz: 8, lat: 22.25, lon: -114.23 }, { name: \"Touson\", tz: -7, lat: 32.22, lon: 110.97 }, { name: \"Tunville\", tz: 1, lat: 49.4, lon: -6.17 }, { name: \"Tkuarembo\", tz: -3, lat: -31.7, lon: 55.98 }, { name: \"Trumso\", tz: 1, lat: 69.67, lon: -18.97 }, { name: \"Johannesburg\", tz: 2, el: 1655, lat: -26.3, lon: -28.18 }, { name: \"Montevideo\", tz: -3, el: 22, lat: -34.83, lon: 56.23 }, { name: \"Meedan Columbia\", tz: -5, lat: 6.23, lon: 75.58 }, { name: \"Mexico City\", tz: -6, lat: 19.45, lon: 98.95 }, { name: \"New Delhi\", tz: 5, lat: 28.58, lon: -77.22 }, { name: \"Narwik\", tz: 1, lat: 68.43, lon: -17.42 }, { name: \"San Jose De Mayo\", tz: -3, lat: -34.35, lon: 56.72 }, { name: \"San Paulo\", tz: -3, el: 790, lat: -23.6, lon: 46.67 }, { name: \"Sunderland\", tz: 0, lat: 54.93, lon: 1.43 }, { name: \"Salford\", tz: 0, lat: 53.5, lon: 2.25 }, { name: \"San Jusinto Uruguay\", tz: -3, lat: -34.55, lon: 55.87 }, { name: \"New Square\", tz: -5, lat: 41.1, lon: 74.07 }, { name: \"Palm Springs\", tz: -8, el: 125, lat: 33.83, lon: 116.67 }, { name: \"Formosa\", tz: -3, lat: -26.18, lon: 58.17 }, { name: \"Panama\", tz: -5, lat: 9.92, lon: 79.93 }, { name: \"Perta\", tz: 8, lat: -32, lon: -115.83 }, { name: \"Peking\", tz: 8, lat: 39.97, lon: -116.45 }, { name: \"Zandiger (India)\", tz: 5, lat: 30.73, lon: -76.78 }, { name: \"The Equator\", tz: 0, lat: 0, lon: 0 }, { name: \"South Pole\", tz: 0, lat: -90, lon: 0 }, { name: \"North Pole\", tz: 0, lat: 90, lon: 0 }, { name: \"Caracas, Venezuela\", tz: -4, lat: 10.37, lon: 66.88 }, { name: \"Robonimi\", tz: 1, lat: 66.48, lon: -25.7 }, { name: \"Rio De Jinero\", tz: -3, lat: -22.85, lon: 43.68 }, { name: \"Phoenix\", tz: -7, lat: 33.43, lon: 112.07 }, { name: \"Lucerne\", tz: 1, lat: 47.05, lon: -8.32 }, { name: \"Odessa\", tz: 2, lat: 46.48, lon: -30.72 }, { name: \"Uman\", tz: 2, lat: 48.73, lon: -30.23 }, { name: \"Ifran\", tz: 0, lat: 33.53, lon: 5.1 }, { name: \"Alsund Norway\", tz: 1, lat: 62.47, lon: -6.18 }, { name: \"Athens\", tz: 2, lat: 37.97, lon: -23.72 }, { name: \"Bad\", tz: 1, lat: 50.2, lon: -10.08 }, { name: \"Bucharest\", tz: 2, lat: 44.38, lon: -26.4 }, { name: \"Gomel\", tz: 2, lat: 52.38, lon: -30.83 }, { name: \"Gibraltar\", tz: 1, lat: 36.13, lon: 5.35 }, { name: \"Gateside\", tz: 0, lat: 54.95, lon: 1.6 }, { name: \"Vienna\", tz: 1, lat: 48.22, lon: -16.37 }, { name: \"Venice\", tz: 1, lat: 45.38, lon: -12.47 }, { name: \"Warsaw\", tz: 1, lat: 52.23, lon: -21 }, { name: \"Toulon\", tz: 1, lat: 43.15, lon: -5.87 }, { name: \"Torberey Scotland\", tz: 0, lat: 55.3, lon: 4.82 }, { name: \"Lusan\", tz: 1, el: 375, lat: 46.53, lon: -6.62 }, { name: \"London\", tz: 0, el: 45, lat: 51.6, lon: 0.1 }, { name: \"Luxenbourg\", tz: 1, lat: 49.67, lon: -6.17 }, { name: \"Liverpool\", tz: 0, lat: 53.42, lon: 2.98 }, { name: \"Leeds\", tz: 0, lat: 53.8, lon: 1.57 }, { name: \"Medisimo Italy\", tz: 1, el: 1500, lat: 46.43, lon: -9.33 }, { name: \"Madrid\", tz: 1, lat: 40.4, lon: 3.7 }, { name: \"Monterrey, Mexico\", tz: 1, lat: 46.4, lon: -6.87 }, { name: \"Moscow\", tz: 3, el: 154, lat: 55.75, lon: -37.62 }, { name: \"Milano\", tz: 1, el: 122, lat: 45.45, lon: -9.18 }, { name: \"Minsk\", tz: 2, lat: 53.87, lon: -27.82 }, { name: \"Malaga\", tz: 1, lat: 36.7, lon: 4.42 }, { name: \"Manchester\", tz: 0, lat: 53.5, lon: 2.23 }, { name: \"Meknes\", tz: 0, lat: 33.9, lon: 5.57 }, { name: \"Marseille\", tz: 1, lat: 43.3, lon: -5.32 }, { name: \"Marrakech\", tz: 0, lat: 31.6, lon: 7.98 }, { name: \"New Castle\", tz: 0, lat: 54.95, lon: 1.62 }, { name: \"Nice France\", tz: 1, lat: 43.7, lon: -7.18 }, { name: \"Fes\", tz: 0, lat: 34.03, lon: 4.98 }, { name: \"Prague\", tz: 1, el: 180, lat: 50.08, lon: -14.42 }, { name: \"Frankfurt\", tz: 1, lat: 50.12, lon: -8.65 }, { name: \"Frankfurt On Maine\", tz: 1, lat: 50.1, lon: -8.68 }, { name: \"Zurich\", tz: 1, el: 410, lat: 47.37, lon: -8.53 }, { name: \"Copenhagen\", tz: 1, lat: 55.77, lon: -12.33 }, { name: \"Casablanca\", tz: 0, lat: 33.58, lon: 7.58 }, { name: \"Kiev\", tz: 2, lat: 50.43, lon: -30.52 }, { name: \"Colon\", tz: 1, el: 46, lat: 50.9, lon: -6.93 }, { name: \"Robet\", tz: 0, lat: 34.02, lon: 6.8 }, { name: \"Rodes\", tz: 2, lat: 36.4, lon: -28.18 }, { name: \"Rome\", tz: 1, lat: 41.9, lon: -12.5 }, { name: \"Shpolgen\", tz: 1, lat: 46.55, lon: -9.32 }, { name: \"Baku\", tz: 2, lat: 40.4, lon: -49.82 }, { name: \"Tarvisio\", tz: 1, lat: 46.5, lon: -13.58 }, { name: \"windischgarsten\", tz: 1, lat: 47.72, lon: -14.32 }, { name: \"Nesslau\", tz: 1, lat: 47.2, lon: -9.2 }, { name: \"Deerfield Beach\", tz: -5, lat: 26.32, lon: 80.08 }, { name: \"Hartford CT\", tz: -5, lat: 41.75, lon: 72.7 }, { name: \"Boro Park, Brooklyn NY\", tz: -5, lat: 40.63, lon: 74 }, { name: \"Brooklyn NY\", tz: -5, lat: 40.63, lon: 73.95 }, { name: \"Denver\", tz: -7, el: 1601, lat: 39.75, lon: 104.93 }, { name: \"Houston\", tz: -6, el: 29, lat: 29.83, lon: 95.35 }, { name: \"Hollywood\", tz: -5, el: 8, lat: 26.1, lon: 80.2 }, { name: \"Washington DC\", tz: -5, lat: 38.9, lon: 77.03 }, { name: \"Los Angeles\", tz: -8, lat: 34.05, lon: 118.23 }, { name: \"Lakewood NJ\", tz: -5, lat: 40.1, lon: 74.23 }, { name: \"Monticello NY\", tz: -5, lat: 41.65, lon: 74.73 }, { name: \"Monsey NY\", tz: -5, lat: 41.1, lon: 74.07 }, { name: \"Miami\", tz: -5, el: 2, lat: 25.83, lon: 80.27 }, { name: \"Miami Beach\", tz: -5, el: 3, lat: 25.78, lon: 80.28 }, { name: \"Milwaukee\", tz: -6, lat: 43.03, lon: 87.92 }, { name: \"Miniappolis\", tz: -6, el: 253, lat: 44.88, lon: 93.22 }, { name: \"Memphis TN\", tz: -6, lat: 35.13, lon: 90.03 }, { name: \"New Orleans\", tz: -6, el: 1, lat: 30, lon: 90.12 }, { name: \"New Square NY\", tz: -5, lat: 41.1, lon: 74.07 }, { name: \"San Juan\", tz: -8, lat: 37.33, lon: 121.88 }, { name: \"San Diego\", tz: -8, lat: 32.72, lon: 117.13 }, { name: \"Saint Louis\", tz: -6, lat: 38.65, lon: 90.32 }, { name: \"Pittsburgh\", tz: -5, lat: 40.4, lon: 80.03 }, { name: \"Philadelphia\", tz: -5, lat: 39.93, lon: 75.17 }, { name: \"Providence RI\", tz: -5, lat: 41.82, lon: 71.4 }, { name: \"Kansas City\", tz: -6, el: 225, lat: 39.1, lon: 94.6 }, { name: \"Kiryas Joel NY\", tz: -5, lat: 41.33, lon: 74.17 }, { name: \"Cali\", tz: -5, lat: 3.45, lon: 76.52 }, { name: \"Medellin\", tz: -5, lat: 6.25, lon: 75.57 }, { name: \"Honolulu\", tz: -10, lat: 21.32, lon: 157.83 }, { name: \"Santiago de Chile\", tz: -4, lat: -33.45, lon: 70.67 }, { name: \"Nairobi\", tz: 3, lat: -1.28, lon: -36.82 }, { name: \"Taipei\", tz: 8, lat: 25.05, lon: -121.5 }, { name: \"Rangun (GMT+6)\", tz: 6, lat: 16.78, lon: -96.17 }, { name: \"Rangun (GMT+7)\", tz: 7, lat: 16.78, lon: -96.17 }, { name: \"Rio de Janeiro\", tz: -3, lat: -22.9, lon: 43.25 }, { name: \"Kapstadt (Capetown)\", tz: 2, lat: -33.9, lon: -18.37 }, { name: \"San Juan (P.R.)\", tz: -4, lat: 18.47, lon: 66.1 }, { name: \"Elizabeth, N.J, US\", tz: -5, lat: 40.67, lon: 74.18 }, { name: \"Aach\", tz: 1, lat: 47.83, lon: -8.85 }, { name: \"Adelsheim\", tz: 1, lat: 49.4, lon: -9.38 }, { name: \"Altlandsberg\", tz: 1, lat: 52.55, lon: -13.72 }, { name: \"Angerm\\xFCnde\", tz: 1, lat: 53.02, lon: -14 }, { name: \"Anklam\", tz: 1, lat: 53.85, lon: -13.68 }, { name: \"Annaberg\", tz: 1, lat: 57.52, lon: -13.43 }, { name: \"Ansbach\", tz: 1, lat: 49.28, lon: -10.57 }, { name: \"Apolda\", tz: 1, lat: 51.02, lon: -11.52 }, { name: \"Arnstadt\", tz: 1, lat: 50.83, lon: -10.95 }, { name: \"Aschersleben\", tz: 1, lat: 51.75, lon: -11.45 }, { name: \"Bad Berka\", tz: 1, lat: 50.9, lon: -11.28 }, { name: \"Bad Cannstatt\", tz: 1, lat: 48.8, lon: -9.18 }, { name: \"Bad Freienwalde\", tz: 1, lat: 52.78, lon: -14.02 }, { name: \"Bad Gottleuba\", tz: 1, lat: 50.85, lon: -13.93 }, { name: \"Bad Krozingen\", tz: 1, lat: 47.92, lon: -7.72 }, { name: \"Bad Mergenheim\", tz: 1, lat: 49.5, lon: -9.77 }, { name: \"Bad Mingolsheim\", tz: 1, lat: 49.23, lon: -8.65 }, { name: \"Bad Rappenau\", tz: 1, lat: 49.32, lon: -9.1 }, { name: \"Bad Salzungen\", tz: 1, lat: 50.8, lon: -10.22 }, { name: \"Bad Wilznack\", tz: 1, lat: 52.95, lon: -11.95 }, { name: \"Bad Wimpfen\", tz: 1, lat: 49.23, lon: -9.15 }, { name: \"Baiersdorf\", tz: 1, lat: 49.65, lon: -11.02 }, { name: \"Ballenstedt\", tz: 1, lat: 51.72, lon: -11.23 }, { name: \"Barby\", tz: 1, lat: 51.97, lon: -11.88 }, { name: \"Bautzen\", tz: 1, lat: 51.18, lon: -14.43 }, { name: \"Beelitz\", tz: 1, lat: 52.23, lon: -12.97 }, { name: \"Beeskow\", tz: 1, lat: 52.17, lon: -14.23 }, { name: \"Bernau\", tz: 1, lat: 47.8, lon: -12.37 }, { name: \"Bernburg\", tz: 1, lat: 51.8, lon: -11.73 }, { name: \"Biesenthal\", tz: 1, lat: 52.77, lon: -13.62 }, { name: \"Bleicherode\", tz: 1, lat: 51.43, lon: -10.57 }, { name: \"Boizenburg\", tz: 1, lat: 53.37, lon: -10.72 }, { name: \"Borna\", tz: 1, lat: 51.32, lon: -13.18 }, { name: \"Breisach\", tz: 1, lat: 48.02, lon: -7.67 }, { name: \"Br\\xFCel\", tz: 1, lat: 53.73, lon: -11.72 }, { name: \"Burg\", tz: 1, lat: 52.27, lon: -11.85 }, { name: \"B\\xFCtzow\", tz: 1, lat: 53.83, lon: -11.98 }, { name: \"Calbe\", tz: 1, lat: 51.9, lon: -11.77 }, { name: \"Calv\\xF6rde\", tz: 1, lat: 52.38, lon: -11.28 }, { name: \"Caputh\", tz: 1, lat: 52.35, lon: -13 }, { name: \"Coesfeld\", tz: 1, lat: 51.93, lon: -7.17 }, { name: \"Coswig\", tz: 1, lat: 51.88, lon: -12.43 }, { name: \"Crivitz\", tz: 1, lat: 53.58, lon: -11.63 }, { name: \"Dargun\", tz: 1, lat: 53.9, lon: -12.85 }, { name: \"Deggendorf\", tz: 1, lat: 48.85, lon: -12.98 }, { name: \"Delitzsch\", tz: 1, lat: 51.52, lon: -12.33 }, { name: \"Aachen\", tz: 1, lat: 50.78, lon: -6.08 }, { name: \"Altensteig\", tz: 1, lat: 48.58, lon: -8.6 }, { name: \"Amberg\", tz: 1, lat: 49.45, lon: -11.87 }, { name: \"Augsburg\", tz: 1, lat: 48.38, lon: -10.88 }, { name: \"Aurich\", tz: 1, lat: 53.47, lon: -7.48 }, { name: \"Bad Kissingen\", tz: 1, lat: 50.2, lon: -10.05 }, { name: \"Bad Kreuznach\", tz: 1, lat: 49.87, lon: -7.85 }, { name: \"Bad Nauheim\", tz: 1, lat: 50.37, lon: -8.73 }, { name: \"Baden-Baden\", tz: 1, lat: 48.77, lon: -8.23 }, { name: \"Bamberg\", tz: 1, lat: 49.88, lon: -10.88 }, { name: \"Bayreuth\", tz: 1, lat: 49.95, lon: -11.58 }, { name: \"Berlin\", tz: 1, lat: 52.52, lon: -13.38 }, { name: \"Bielefeld\", tz: 1, lat: 52.02, lon: -8.52 }, { name: \"Bonn\", tz: 1, lat: 50.73, lon: -7.1 }, { name: \"Brandenburg\", tz: 1, lat: 52.4, lon: -12.53 }, { name: \"Braunschweig\", tz: 1, lat: 52.27, lon: -10.52 }, { name: \"Bremen\", tz: 1, lat: 53.07, lon: -8.82 }, { name: \"Bremerhaven\", tz: 1, lat: 53.55, lon: -8.57 }, { name: \"Calw\", tz: 1, lat: 48.72, lon: -8.73 }, { name: \"Celle\", tz: 1, lat: 52.62, lon: -10.08 }, { name: \"Chemnitz\", tz: 1, lat: 50.83, lon: -12.92 }, { name: \"Cottbus\", tz: 1, lat: 51.75, lon: -14.32 }, { name: \"Dachau\", tz: 1, lat: 48.25, lon: -11.45 }, { name: \"Darmstadt\", tz: 1, lat: 49.88, lon: -8.67 }, { name: \"Dessau\", tz: 1, lat: 51.83, lon: -12.23 }, { name: \"Dortmund\", tz: 1, lat: 51.52, lon: -7.47 }, { name: \"Dresden\", tz: 1, lat: 51.05, lon: -13.73 }, { name: \"Duisburg\", tz: 1, lat: 51.42, lon: -6.77 }, { name: \"D\\xFCsseldorf\", tz: 1, lat: 51.2, lon: -6.78 }, { name: \"Emmendingen\", tz: 1, lat: 48.12, lon: -7.83 }, { name: \"Erfurt\", tz: 1, lat: 50.97, lon: -11.02 }, { name: \"Essen/Ruhr\", tz: 1, lat: 51.47, lon: -7.02 }, { name: \"Frankfurt/Main\", tz: 1, lat: 50.12, lon: -8.67 }, { name: \"Frankfurt/Oder\", tz: 1, lat: 52.33, lon: -14.55 }, { name: \"Freiburg i. Br.\", tz: 1, lat: 47.98, lon: -7.85 }, { name: \"F\\xFCrth\", tz: 1, lat: 49.47, lon: -10.98 }, { name: \"Fulda\", tz: 1, lat: 50.55, lon: -9.68 }, { name: \"Gelsenkirchen\", tz: 1, lat: 51.52, lon: -7.12 }, { name: \"Gie\\xDFen\", tz: 1, lat: 50.58, lon: -8.67 }, { name: \"G\\xF6ttingen\", tz: 1, lat: 51.53, lon: -9.92 }, { name: \"Grabow\", tz: 1, lat: 53.27, lon: -11.57 }, { name: \"Hagen (Westf)\", tz: 1, lat: 51.37, lon: -7.47 }, { name: \"Halle/Saale\", tz: 1, lat: 51.48, lon: -11.97 }, { name: \"Hamburg\", tz: 1, lat: 53.55, lon: -9.98 }, { name: \"Hameln\", tz: 1, lat: 52.1, lon: -9.35 }, { name: \"Hannover\", tz: 1, lat: 52.4, lon: -9.73 }, { name: \"Havelberg\", tz: 1, lat: 52.83, lon: -12.07 }, { name: \"Heidelberg\", tz: 1, lat: 49.42, lon: -8.72 }, { name: \"Herford\", tz: 1, lat: 52.1, lon: -8.67 }, { name: \"Hessisch Oldendorf\", tz: 1, lat: 52.17, lon: -9.25 }, { name: \"Hildesheim\", tz: 1, lat: 52.15, lon: -9.95 }, { name: \"Hof\", tz: 1, lat: 50.3, lon: -11.92 }, { name: \"Idar-Oberstein\", tz: 1, lat: 49.7, lon: -7.32 }, { name: \"Kaiserslautern\", tz: 1, lat: 49.43, lon: -7.77 }, { name: \"Karlsruhe\", tz: 1, lat: 49.05, lon: -8.4 }, { name: \"Kassel\", tz: 1, lat: 51.32, lon: -9.47 }, { name: \"Kiel\", tz: 1, lat: 54.33, lon: -10.13 }, { name: \"Kleinmachnow\", tz: 1, lat: 52.4, lon: -13.25 }, { name: \"Koblenz\", tz: 1, lat: 50.35, lon: -7.58 }, { name: \"K\\xF6ln\", tz: 1, lat: 50.93, lon: -6.98 }, { name: \"Krefeld\", tz: 1, lat: 51.33, lon: -6.57 }, { name: \"Leipzig\", tz: 1, lat: 51.32, lon: -12.33 }, { name: \"L\\xF6rrach\", tz: 1, lat: 47.62, lon: -7.67 }, { name: \"L\\xFCbeck\", tz: 1, lat: 53.87, lon: -10.67 }, { name: \"Ludwigshafen\", tz: 1, lat: 49.48, lon: -8.43 }, { name: \"Ludwigslust\", tz: 1, lat: 53.32, lon: -11.5 }, { name: \"Magdeburg\", tz: 1, lat: 52.12, lon: -11.63 }, { name: \"Mainz\", tz: 1, lat: 50.02, lon: -8.27 }, { name: \"Mannheim\", tz: 1, lat: 49.48, lon: -8.47 }, { name: \"Marburg\", tz: 1, lat: 50.82, lon: -8.77 }, { name: \"Minden\", tz: 1, lat: 52.28, lon: -8.92 }, { name: \"M\\xF6nchengladbach\", tz: 1, lat: 51.2, lon: -6.47 }, { name: \"M\\xFCnchen\", tz: 1, lat: 48.13, lon: -11.57 }, { name: \"Nagold\", tz: 1, lat: 48.55, lon: -8.72 }, { name: \"Neum\\xFCnster\", tz: 1, lat: 54.07, lon: -9.98 }, { name: \"Neuruppin\", tz: 1, lat: 52.92, lon: -12.8 }, { name: \"Neustadt/Weinstra\\xDFe\", tz: 1, lat: 49.35, lon: -8.13 }, { name: \"Neustrelitz\", tz: 1, lat: 53.35, lon: -13.07 }, { name: \"N\\xFCrnberg\", tz: 1, lat: 49.45, lon: -11.07 }, { name: \"Offenbach\", tz: 1, lat: 50.13, lon: -8.78 }, { name: \"Oldenburg\", tz: 1, lat: 53.13, lon: -8.22 }, { name: \"Oldenburg in Holstein\", tz: 1, lat: 54.28, lon: -10.87 }, { name: \"Osnabr\\xFCck\", tz: 1, lat: 52.27, lon: -8.03 }, { name: \"Paderborn\", tz: 1, lat: 51.72, lon: -8.73 }, { name: \"Perleberg\", tz: 1, lat: 53.07, lon: -11.85 }, { name: \"Pforzheim\", tz: 1, lat: 48.9, lon: -8.7 }, { name: \"Potsdam\", tz: 1, lat: 52.4, lon: -13.07 }, { name: \"Pritzwalk\", tz: 1, lat: 53.15, lon: -12.17 }, { name: \"Rathenow\", tz: 1, lat: 52.6, lon: -12.33 }, { name: \"Recklinghausen\", tz: 1, lat: 51.6, lon: -7.22 }, { name: \"Regensburg\", tz: 1, lat: 49.02, lon: -12.1 }, { name: \"Rinteln\", tz: 1, lat: 52.18, lon: -9.05 }, { name: \"Rostock\", tz: 1, lat: 54.08, lon: -12.12 }, { name: \"Saarbr\\xFCcken\", tz: 1, lat: 49.23, lon: -6.98 }, { name: \"Salzgitter\", tz: 1, lat: 52.17, lon: -10.42 }, { name: \"Schwerin\", tz: 1, lat: 53.63, lon: -11.42 }, { name: \"Sobernheim\", tz: 1, lat: 49.78, lon: -7.63 }, { name: \"Stendal\", tz: 1, lat: 52.6, lon: -11.85 }, { name: \"Straubing\", tz: 1, lat: 48.88, lon: -12.57 }, { name: \"Strausberg\", tz: 1, lat: 52.58, lon: -13.88 }, { name: \"Stuttgart\", tz: 1, lat: 48.77, lon: -9.18 }, { name: \"Trier\", tz: 1, lat: 49.75, lon: -6.63 }, { name: \"T\\xFCbingen\", tz: 1, lat: 48.52, lon: -9.03 }, { name: \"Weiden in der Oberpfalz\", tz: 1, lat: 49.68, lon: -12.17 }, { name: \"Wiesbaden\", tz: 1, lat: 50.08, lon: -8.23 }, { name: \"Wismar\", tz: 1, lat: 53.88, lon: -11.47 }, { name: \"Wittenberg\", tz: 1, lat: 51.87, lon: -12.65 }, { name: \"Wittenberge\", tz: 1, lat: 53, lon: -11.73 }, { name: \"Wittstock\", tz: 1, lat: 53.17, lon: -12.48 }, { name: \"W\\xF6rlitz\", tz: 1, lat: 51.83, lon: -12.42 }, { name: \"Wuppertal\", tz: 1, lat: 51.27, lon: -7.18 }, { name: \"W\\xFCrzburg\", tz: 1, lat: 49.8, lon: -9.93 }, { name: \"Basel\", tz: 1, lat: 47.63, lon: -7.67 }, { name: \"Bern\", tz: 1, lat: 46.95, lon: -7.43 }, { name: \"Bremgarten\", tz: 1, lat: 47.35, lon: -8.35 }, { name: \"Geneve\", tz: 1, lat: 46.2, lon: -6.15 }, { name: \"M\\xFCnsingen\", tz: 1, lat: 46.88, lon: -7.57 }, { name: \"Sankt Gallen\", tz: 1, lat: 47.42, lon: -9.38 }, { name: \"Vevey\", tz: 1, lat: 46.47, lon: -6.85 }, { name: \"Winterthur\", tz: 1, lat: 47.5, lon: -8.72 }, { name: \"Zug\", tz: 1, lat: 47.17, lon: -8.52 }, { name: \"Z\\xFCrich\", tz: 1, lat: 47.38, lon: -8.53 }, { name: \"Graz\", tz: 1, lat: 47.08, lon: -15.45 }, { name: \"Innsbruck\", tz: 1, lat: 47.27, lon: -11.4 }, { name: \"Linz\", tz: 1, lat: 48.3, lon: -14.3 }, { name: \"Salzburg\", tz: 1, lat: 47.8, lon: -13.03 }, { name: \"Wien\", tz: 1, lat: 48.22, lon: -16.33 }, { name: \"Antwerpen\", tz: 1, lat: 51.22, lon: -4.42 }, { name: \"Arlon\", tz: 1, lat: 49.68, lon: -5.82 }, { name: \"Br\\xFCssel\", tz: 1, lat: 50.83, lon: -4.33 }, { name: \"Charleroi\", tz: 1, lat: 50.42, lon: -4.43 }, { name: \"Gent\", tz: 1, lat: 51.05, lon: -3.72 }, { name: \"Knokke\", tz: 1, lat: 51.35, lon: -3.28 }, { name: \"Li\\xE9ge\", tz: 1, lat: 50.63, lon: -5.57 }, { name: \"Mons\", tz: 1, lat: 50.45, lon: -3.93 }, { name: \"Ostende\", tz: 1, lat: 51.22, lon: -2.9 }, { name: \"Amersfoort\", tz: 1, lat: 52.15, lon: -5.4 }, { name: \"Amsterdam\", tz: 1, lat: 52.37, lon: -4.9 }, { name: \"Arnheim\", tz: 1, lat: 52.02, lon: -5.88 }, { name: \"Bussum\", tz: 1, lat: 52.27, lon: -5.15 }, { name: \"Den Haag\", tz: 1, lat: 52.1, lon: -4.3 }, { name: \"Eindhoven\", tz: 1, lat: 51.43, lon: -5.47 }, { name: \"Enschede\", tz: 1, lat: 52.2, lon: -6.88 }, { name: \"Groningen\", tz: 1, lat: 53.22, lon: -6.55 }, { name: \"Hilversum\", tz: 1, lat: 52.23, lon: -5.15 }, { name: \"Leiden\", tz: 1, lat: 52.15, lon: -4.5 }, { name: \"Maastricht\", tz: 1, lat: 50.87, lon: -5.72 }, { name: \"Rotterdam\", tz: 1, lat: 51.92, lon: -4.47 }, { name: \"Tilburg\", tz: 1, lat: 51.57, lon: -5.08 }, { name: \"Utrecht\", tz: 1, lat: 52.08, lon: -5.13 }, { name: \"Zwolle\", tz: 1, lat: 52.5, lon: -6.08 }, { name: \"Crossen\", tz: 1, lat: 50.75, lon: -12.48 }, { name: \"Krakau\", tz: 1, lat: 50.05, lon: -19.95 }, { name: \"Lodz\", tz: 1, lat: 51.77, lon: -19.22 }, { name: \"Tarn\\xF3w\", tz: 1, lat: 52.78, lon: -14.97 }, { name: \"Warschau\", tz: 1, lat: 52.25, lon: -21 }, { name: \"Wroczlaw (Breslau)\", tz: 1, lat: 51.1, lon: -17 }, { name: \"Birobidzan\", tz: 9, lat: 48.8, lon: -132.95 }, { name: \"Irkutsk\", tz: 8, lat: 52.27, lon: -104.33 }, { name: \"Kiew\", tz: 2, lat: 50.43, lon: -30.52 }, { name: \"Moskau\", tz: 3, lat: 55.75, lon: -37.58 }, { name: \"St. Petersburg\", tz: 3, lat: 59.92, lon: -30.25 }, { name: \"Taschkent\", tz: 6, lat: 41.33, lon: -69.3 }, { name: \"Tblisi\", tz: 3, lat: 41.72, lon: -44.82 }, { name: \"Montreal, Fr.\", tz: 1, lat: 47.53, lon: -4.02 }, { name: \"Lausanne\", tz: 1, lat: 46.52, lon: -6.63 }, { name: \"Nice\", tz: 1, lat: 43.7, lon: -7.25 }, { name: \"Paris\", tz: 1, lat: 48.87, lon: -2.33 }, { name: \"Birmingham\", tz: 0, lat: 52.5, lon: 1.83 }, { name: \"Bradford\", tz: 0, lat: 53.8, lon: 1.75 }, { name: \"Bristol\", tz: 0, lat: 51.45, lon: 2.58 }, { name: \"Edinburgh\", tz: 0, lat: 55.95, lon: 3.22 }, { name: \"Gateshead\", tz: 0, lat: 54.97, lon: 1.62 }, { name: \"Glasgow\", tz: 0, lat: 55.88, lon: 4.25 }, { name: \"Sheffield\", tz: 0, lat: 53.38, lon: 1.5 }, { name: \"Belfast\", tz: 0, lat: 54.58, lon: 5.92 }, { name: \"Dublin\", tz: 0, lat: 53.33, lon: 6.25 }, { name: \"Tralee\", tz: 0, lat: 52.27, lon: 9.7 }, { name: \"Atlanta (Ga., US)\", tz: -5, lat: 33.75, lon: 84.38 }, { name: \"Baltimore, MD\", tz: -5, lat: 39.28, lon: 76.62 }, { name: \"Bentonville, Arkansas\", tz: -6, lat: 36.37, lon: 94.22 }, { name: \"Boston, MA\", tz: -5, lat: 42.35, lon: 71.07 }, { name: \"Buffalo\", tz: -5, lat: 42.9, lon: 78.88 }, { name: \"Burlington (VT, US)\", tz: -5, lat: 44.48, lon: 73.22 }, { name: \"Canton, Ohio\", tz: -5, lat: 40.78, lon: 81.37 }, { name: \"Charleston (S.C., US)\", tz: -5, lat: 32.78, lon: 79.93 }, { name: \"Charlotte (N.C., US)\", tz: -5, lat: 35.23, lon: 80.83 }, { name: \"Chicago\", tz: -6, lat: 41.88, lon: 87.63 }, { name: \"Cincinnati, OH\", tz: -5, lat: 39.1, lon: 84.63 }, { name: \"Cleveland (Ohio, US)\", tz: -5, lat: 41.5, lon: 81.68 }, { name: \"Columbus, OH\", tz: -5, lat: 39.95, lon: 83 }, { name: \"Dallas, TX\", tz: -6, lat: 32.78, lon: 96.8 }, { name: \"Denver (Colo., US)\", tz: -7, lat: 39.72, lon: 105.02 }, { name: \"Detroit, MI\", tz: -5, lat: 42.33, lon: 83.05 }, { name: \"Essexville, MI\", tz: -5, lat: 43.62, lon: 83.83 }, { name: \"Fairbanks, AK\", tz: -10, lat: 64.85, lon: 147.72 }, { name: \"Flagstaff, Arizona\", tz: -7, lat: 35.18, lon: 111.65 }, { name: \"Hartford (Conn., US)\", tz: -5, lat: 41.77, lon: 72.68 }, { name: \"Houston, TX\", tz: -6, lat: 29.77, lon: 95.37 }, { name: \"Indianapolis, Indiana\", tz: -6, lat: -19.03, lon: 47.92 }, { name: \"Kansas City (Kans., US)\", tz: -6, lat: 39.12, lon: 94.65 }, { name: \"Little Rock\", tz: -6, lat: 34.73, lon: 92.25 }, { name: \"Los Angeles (LA)\", tz: -8, lat: 34.05, lon: 118.25 }, { name: \"Louisville (Ky., US)\", tz: -5, lat: 38.25, lon: 85.75 }, { name: \"Madison (Wis., US)\", tz: -6, lat: 43.08, lon: 89.37 }, { name: \"Memphis (Tenn., US)\", tz: -6, lat: 35.13, lon: 90.05 }, { name: \"Miami, FL\", tz: -5, lat: 25.77, lon: 80.2 }, { name: \"Miami Beach, FL\", tz: -5, lat: 25.78, lon: 80.13 }, { name: \"Milwaukee (Wis., US)\", tz: -6, lat: 43.03, lon: 87.92 }, { name: \"Minneapolis, Minnesota\", tz: -6, lat: 44.98, lon: 93.22 }, { name: \"Mobile\", tz: -6, lat: 30.7, lon: 88.08 }, { name: \"Monticello\", tz: -5, lat: 41.65, lon: 74.7 }, { name: \"Naples (Fla., US)\", tz: -5, lat: 26.13, lon: 81.8 }, { name: \"Nashville (Tenn., US)\", tz: -6, lat: 36.15, lon: 86.8 }, { name: \"New Brunswick\", tz: -5, lat: 40.48, lon: 74.45 }, { name: \"New Haven (Conn., US)\", tz: -5, lat: 41.3, lon: 72.93 }, { name: \"New Orleans, Louisiana\", tz: -6, lat: 29.97, lon: 90.12 }, { name: \"New York, NY\", tz: -5, lat: 40.72, lon: 74.02 }, { name: \"New York, Brooklyn\", tz: -5, lat: 40.7, lon: 74 }, { name: \"Newark (N.J., US)\", tz: -5, lat: 40.73, lon: 74.15 }, { name: \"Newport (R.I., US)\", tz: -5, lat: 41.22, lon: 71.3 }, { name: \"Omaha, Nebraska\", tz: -6, lat: 41.27, lon: 95.95 }, { name: \"Orlando, FL\", tz: -5, lat: 28.53, lon: 81.38 }, { name: \"Philadelphia, Pennsylvania\", tz: -5, lat: 39.95, lon: 75.1 }, { name: \"Phoenix, Arizona\", tz: -7, lat: 33.45, lon: 112.08 }, { name: \"Pittsburgh, Pennsylvania\", tz: -5, lat: 40.43, lon: 80 }, { name: \"Portland (Maine, US)\", tz: -5, lat: 43.65, lon: 70.28 }, { name: \"Portland (Oreg, US)\", tz: -8, lat: 45.55, lon: 112.6 }, { name: \"Providence, RI\", tz: -5, lat: 41.83, lon: 71.42 }, { name: \"Salt Lake City, Utah\", tz: -7, lat: 40.77, lon: 111.88 }, { name: \"San Antonio, TX\", tz: -6, lat: 29.47, lon: 98.52 }, { name: \"San Francisco\", tz: -8, lat: 37.78, lon: 122.4 }, { name: \"Santa Fe (N.Mex., US)\", tz: -7, lat: 35.7, lon: 106.95 }, { name: \"Seattle, WA\", tz: -8, lat: 47.6, lon: 122.33 }, { name: \"Silver Spring\", tz: -5, lat: 39.03, lon: 77.05 }, { name: \"Springfield (Mass., US)\", tz: -5, lat: 42.12, lon: 72.6 }, { name: \"Stamford, CA\", tz: -5, lat: 41.05, lon: 73.55 }, { name: \"St. Louis\", tz: -6, lat: 38.63, lon: 90.18 }, { name: \"Tampa, FL\", tz: -5, lat: 27.95, lon: 82.45 }, { name: \"Topeka (KS, US)\", tz: -6, lat: 39.05, lon: 95.68 }, { name: \"Tucson\", tz: -7, lat: 32.22, lon: 110.97 }, { name: \"Washington, DC\", tz: -5, lat: 38.9, lon: 77.02 }, { name: \"Wichita, TX\", tz: -6, lat: 37.67, lon: 97.33 }, { name: \"Yellowstone Lake\", tz: -7, lat: 44.42, lon: 110.37 }, { name: \"Ancona\", tz: 1, lat: 43.63, lon: -13.5 }, { name: \"Asti\", tz: 1, lat: 44.9, lon: -8.18 }, { name: \"Bologna\", tz: 1, lat: 44.48, lon: -11.33 }, { name: \"Ferrara\", tz: 1, lat: 44.83, lon: -11.58 }, { name: \"Florenz\", tz: 1, lat: 43.77, lon: -11.25 }, { name: \"Genua\", tz: 1, lat: 44.42, lon: -8.95 }, { name: \"Livorno\", tz: 1, lat: 43.55, lon: -10.32 }, { name: \"Mantova\", tz: 1, lat: 45.15, lon: -10.8 }, { name: \"Meran\", tz: 1, lat: 46.67, lon: -11.15 }, { name: \"Mailand\", tz: 1, lat: 45.47, lon: -9.18 }, { name: \"Modena\", tz: 1, lat: 44.67, lon: -10.92 }, { name: \"Neapel\", tz: 1, lat: 40.85, lon: -14.28 }, { name: \"Padova\", tz: 1, lat: 45.42, lon: -11.88 }, { name: \"Parma\", tz: 1, lat: 44.8, lon: -10.32 }, { name: \"Perugia\", tz: 1, lat: 43.13, lon: -12.37 }, { name: \"Pisa\", tz: 1, lat: 43.72, lon: -10.38 }, { name: \"Rom\", tz: 1, lat: 41.9, lon: -12.48 }, { name: \"Siena\", tz: 1, lat: 43.32, lon: -11.35 }, { name: \"Spiazzo\", tz: 1, lat: 46.12, lon: -10.67 }, { name: \"Trieste\", tz: 1, lat: 45.67, lon: -13.77 }, { name: \"Turin\", tz: 1, lat: 45.07, lon: -7.67 }, { name: \"Venedig\", tz: 1, lat: 45.45, lon: -12.35 }, { name: \"Verona\", tz: 1, lat: 45.45, lon: -11 }, { name: \"Alburquerque\", tz: 1, lat: 39.22, lon: 7 }, { name: \"Alicante\", tz: 1, lat: 38.35, lon: 0.47 }, { name: \"Barcelona\", tz: 1, lat: 41.38, lon: -2.18 }, { name: \"Mallorca\", tz: 1, lat: 39.48, lon: -3 }, { name: \"Marbella\", tz: 1, lat: 36.52, lon: 4.88 }, { name: \"Sevilla\", tz: 1, lat: 37.37, lon: 5.98 }, { name: \"Torremolinos\", tz: 1, lat: 36.6, lon: 4.5 }, { name: \"Valencia\", tz: 1, lat: 39.47, lon: 0.37 }, { name: \"Belmonte\", tz: 0, lat: 40.37, lon: 7.37 }, { name: \"Lissabon\", tz: 0, lat: 38.72, lon: 9.13 }, { name: \"Porto\", tz: 0, lat: 41.18, lon: 8.6 }, { name: \"Athen\", tz: 2, lat: 37.97, lon: -23.72 }, { name: \"Korfu\", tz: 2, lat: 39.6, lon: -19.92 }, { name: \"Rhodos\", tz: 2, lat: 36.17, lon: -28 }, { name: \"Saloniki\", tz: 2, lat: 40.65, lon: -23.02 }, { name: \"Trikala\", tz: 2, lat: 39.57, lon: -21.77 }, { name: \"Volos\", tz: 2, lat: 39.35, lon: -22.93 }, { name: \"Ankara\", tz: 2, lat: 39.93, lon: -32.87 }, { name: \"Bursa\", tz: 2, lat: 40.18, lon: -29.07 }, { name: \"Istanbul\", tz: 2, lat: 41.02, lon: -28.97 }, { name: \"Izmir\", tz: 2, lat: 38.42, lon: -27.15 }, { name: \"Esch-sur-Alzette\", tz: 1, lat: 49.5, lon: -5.98 }, { name: \"Luxemburg\", tz: 1, lat: 49.6, lon: -6.15 }, { name: \"Kopenhagen\", tz: 1, lat: 55.67, lon: -12.58 }, { name: \"Boras\", tz: 1, lat: 57.72, lon: -12.92 }, { name: \"G\\xF6teborg\", tz: 1, lat: 57.72, lon: -11.97 }, { name: \"Lund\", tz: 1, lat: 55.7, lon: -13.18 }, { name: \"Malm\\xF6\", tz: 1, lat: 55.6, lon: -13 }, { name: \"Stockholm\", tz: 1, lat: 59.33, lon: -18.05 }, { name: \"Oslo\", tz: 1, lat: 59.92, lon: -10.75 }, { name: \"Trondheim\", tz: 1, lat: 63.42, lon: -10.42 }, { name: \"Helsinki\", tz: 2, lat: 60.17, lon: -24.97 }, { name: \"Turku\", tz: 2, lat: 60.45, lon: -22.28 }, { name: \"Pazardjik\", tz: 2, lat: 42.2, lon: -24.33 }, { name: \"Plovdiv\", tz: 2, lat: 42.15, lon: -24.75 }, { name: \"Ruse\", tz: 2, lat: 43.83, lon: -25.95 }, { name: \"Sofia\", tz: 2, lat: 42.68, lon: -23.32 }, { name: \"Bacau\", tz: 2, lat: 46.57, lon: -26.92 }, { name: \"Botosani\", tz: 2, lat: 47.75, lon: -26.67 }, { name: \"Brasov\", tz: 2, lat: 45.65, lon: -25.62 }, { name: \"Cluj\", tz: 2, lat: 46.78, lon: -23.6 }, { name: \"Constanta\", tz: 2, lat: 44.18, lon: -28.65 }, { name: \"Dorohoi\", tz: 2, lat: 47.95, lon: -26.4 }, { name: \"Galati\", tz: 2, lat: 45.43, lon: -28.05 }, { name: \"Iasi\", tz: 2, lat: 47.17, lon: -27.58 }, { name: \"Oradea\", tz: 2, lat: 47.05, lon: -21.95 }, { name: \"Piatra Neamt\", tz: 2, lat: 46.93, lon: -26.37 }, { name: \"Radauti\", tz: 2, lat: 47.85, lon: -25.92 }, { name: \"Satu Mare\", tz: 2, lat: 47.8, lon: -22.88 }, { name: \"Sighetul Marmatiei\", tz: 2, lat: 47.93, lon: -23.9 }, { name: \"Suceava\", tz: 2, lat: 47.65, lon: -26.32 }, { name: \"Timisoara\", tz: 2, lat: 45.75, lon: -21.22 }, { name: \"Tirgu Mures\", tz: 2, lat: 46.55, lon: -24.55 }, { name: \"Budapest\", tz: 1, lat: 47.5, lon: -19.08 }, { name: \"Sopron\", tz: 1, lat: 47.68, lon: -16.6 }, { name: \"Br\\xFCnn\", tz: 1, lat: 49.2, lon: -16.62 }, { name: \"Karlsbad\", tz: 1, lat: 50.18, lon: -12.87 }, { name: \"Liberec\", tz: 1, lat: 50.77, lon: -15.05 }, { name: \"Olomouc\", tz: 1, lat: 49.6, lon: -17.27 }, { name: \"Ostrava\", tz: 1, lat: 49.83, lon: -18.28 }, { name: \"Pilsen\", tz: 1, lat: 49.75, lon: -13.38 }, { name: \"Prag\", tz: 1, lat: 50.08, lon: -14.43 }, { name: \"Teplice\", tz: 1, lat: 50.65, lon: -13.8 }, { name: \"Usti nad Labem\", tz: 1, lat: 50.67, lon: -14.03 }, { name: \"Bratislava\", tz: 1, lat: 48.15, lon: -17.12 }, { name: \"Galanta\", tz: 1, lat: 48.2, lon: -17.72 }, { name: \"Kosice\", tz: 1, lat: 48.72, lon: -21.25 }, { name: \"Piestany\", tz: 1, lat: 48.6, lon: -17.83 }, { name: \"Presov\", tz: 1, lat: 49, lon: -21.25 }, { name: \"Trnava\", tz: 1, lat: 48.38, lon: -17.58 }, { name: \"Belgrad\", tz: 1, lat: 44.83, lon: -20.5 }, { name: \"Novi Sad\", tz: 1, lat: 45.25, lon: -19.83 }, { name: \"Subotica\", tz: 1, lat: 46.1, lon: -19.65 }, { name: \"Dubrovnik\", tz: 1, lat: 42.63, lon: -18.12 }, { name: \"Rijeka\", tz: 1, lat: 45.33, lon: -14.45 }, { name: \"Split\", tz: 1, lat: 43.52, lon: -16.45 }, { name: \"Zagreb\", tz: 1, lat: 45.8, lon: -15.97 }, { name: \"Skopje\", tz: 1, lat: 41.98, lon: -21.43 }, { name: \"Sarajevo\", tz: 1, lat: 43.87, lon: -18.42 }, { name: \"Ljubljana\", tz: 1, lat: 46.05, lon: -14.52 }, { name: \"Teheran (GMT+3)\", tz: 3, lat: 35.67, lon: -51.43 }, { name: \"Teheran (GMT+4)\", tz: 4, lat: 35.67, lon: -51.43 }, { name: \"Tokyo\", tz: 9, lat: 35.7, lon: -139.77 }, { name: \"Asuncion\", tz: -4, lat: -25.27, lon: 57.67 }, { name: \"Sao Paulo\", tz: -3, lat: -23.53, lon: 46.62 }, { name: \"Buenos Aires\", tz: -3, lat: -34.6, lon: 58.45 }, { name: \"Guangzhou (Canton)\", tz: 8, lat: 23.1, lon: -113.27 }, { name: \"Hong Kong\", tz: 8, lat: 25.25, lon: -114.17 }, { name: \"Peking (Beijing)\", tz: 8, lat: 39.9, lon: -116.42 }, { name: \"Shanghai\", tz: 8, lat: 31.23, lon: -121.47 }, { name: \"Shenyang\", tz: 8, lat: 41.8, lon: -123.45 }, { name: \"Bangkok\", tz: 7, lat: 13.58, lon: -100.48 }, { name: \"Neu Dehli (GMT+5)\", tz: 5, lat: 28.3, lon: -77.47 }, { name: \"Neu Dehli (GMT+6)\", tz: 6, lat: 28.3, lon: -77.47 }, { name: \"Kairo\", tz: 2, lat: 29.67, lon: -31.02 }, { name: \"Damaskus\", tz: 3, lat: 33.13, lon: -36.43 }, { name: \"Amman\", tz: 2, lat: 31.7, lon: -35.88 }, { name: \"Ar-Rijad (Riyadh)\", tz: 3, lat: 24.63, lon: -46.72 }, { name: \"Beirut\", tz: 2, lat: 33.33, lon: -35.37 }, { name: \"Pjongjang (P\\xB4yongyang)\", tz: 9, lat: 39.02, lon: -125.75 }, { name: \"Seoul (Soul)\", tz: 9, lat: 37.55, lon: -126.97 }, { name: \"Singapur\", tz: 8, lat: 11.37, lon: -103.8 }, { name: \"Lima\", tz: -5, lat: -12.05, lon: 77.05 }, { name: \"Havana\", tz: -5, lat: 23.13, lon: 82.37 }, { name: \"Brisbane\", tz: 10, lat: -27.47, lon: -153.03 }, { name: \"Canberra\", tz: 10, lat: -35.28, lon: -149.13 }, { name: \"Sydney\", tz: 10, lat: -33.87, lon: -151.22 }, { name: \"Halifax, N.S., Can.\", tz: -4, lat: 44.65, lon: 63.6 }, { name: \"Montreal, Quebec, Can.\", tz: -5, lat: 45.52, lon: 73.57 }, { name: \"Quebec\", tz: -5, lat: 46.82, lon: 71.23 }, { name: \"Vancouver\", tz: -8, lat: 49.27, lon: 123.12 }, { name: \"Demmin\", tz: 1, lat: 53.9, lon: -13.03 }, { name: \"Dieburg\", tz: 1, lat: 49.9, lon: -8.83 }, { name: \"D\\xF6mitz\", tz: 1, lat: 53.13, lon: -11.23 }, { name: \"Durlach\", tz: 1, lat: 49, lon: -8.45 }, { name: \"Landau\", tz: 1, lat: 49.2, lon: -8.12 }, { name: \"Landau an der Isar\", tz: 1, lat: 48.67, lon: -12.72 }, { name: \"Parchim\", tz: 1, lat: 53.42, lon: -11.85 }, { name: \"Suhl\", tz: 1, lat: 50.62, lon: -10.68 }, { name: \"Worms\", tz: 1, lat: 49.63, lon: -8.37 }, { name: \"Strasbourg\", tz: 1, lat: 48.58, lon: -7.75 }, { name: \"Kaunas\", tz: 2, lat: 54.9, lon: -23.9 }, { name: \"K\\xF6nigsberg\", tz: 2, lat: 54.72, lon: -20.5 }, { name: \"Riga\", tz: 2, lat: 56.95, lon: -24.1 }, { name: \"Tallinn\", tz: 2, lat: 59.42, lon: -24.75 }, { name: \"Vilnius\", tz: 2, lat: 54.68, lon: -25.32 }, { name: \"Blackpool\", tz: 0, lat: 53.83, lon: 3.05 }, { name: \"Bournemouth\", tz: 0, lat: 50.72, lon: 1.9 }, { name: \"Brighton\", tz: 0, lat: 50.83, lon: 0.13 }, { name: \"Cambridge\", tz: 0, lat: 52.22, lon: -0.13 }, { name: \"Coventry\", tz: 0, lat: 52.42, lon: 1.5 }, { name: \"Croydon\", tz: 0, lat: 51.38, lon: 0.1 }, { name: \"Eastbourne\", tz: 0, lat: 50.77, lon: -0.28 }, { name: \"Exeter\", tz: 0, lat: 50.72, lon: 3.52 }, { name: \"Grimsby\", tz: 0, lat: 53.58, lon: 0.08 }, { name: \"Guildford\", tz: 0, lat: 51.23, lon: 0.58 }, { name: \"Harlow\", tz: 0, lat: 51.78, lon: -0.13 }, { name: \"Harrogate\", tz: 0, lat: 54, lon: 1.55 }, { name: \"Hemel Hempstead\", tz: 0, lat: 51.77, lon: 0.47 }, { name: \"Hove\", tz: 0, lat: 50.82, lon: 0.17 }, { name: \"Leicester\", tz: 0, lat: 52.63, lon: 1.08 }, { name: \"Luton\", tz: 0, lat: 51.88, lon: 0.42 }, { name: \"Newcastle\", tz: 0, lat: 54.2, lon: 5.75 }, { name: \"Norwich\", tz: 0, lat: 52.63, lon: -1.3 }, { name: \"Nottingham\", tz: 0, lat: 52.97, lon: 1.17 }, { name: \"Oxford\", tz: 0, lat: 51.77, lon: 1.23 }, { name: \"Plymouth\", tz: 0, lat: 50.38, lon: 4.15 }, { name: \"Portsmouth\", tz: 0, lat: 50.8, lon: 1.08 }, { name: \"Ramsgate\", tz: 0, lat: 51.33, lon: -1.42 }, { name: \"Reading\", tz: 0, lat: 51.47, lon: 0.98 }, { name: \"Rochester\", tz: 0, lat: 51.4, lon: -0.5 }, { name: \"Saint Anne's\", tz: 0, lat: 53.75, lon: 3.03 }, { name: \"Solihull\", tz: 0, lat: 52.42, lon: 1.75 }, { name: \"Southend-on-SEA\", tz: 0, lat: 51.55, lon: -0.72 }, { name: \"Southport\", tz: 0, lat: 53.65, lon: 3.02 }, { name: \"Watford\", tz: 0, lat: 51.67, lon: 0.42 }, { name: \"Agen\", tz: 1, lat: 44.2, lon: -0.62 }, { name: \"Aix-en-Provence\", tz: 1, lat: 43.53, lon: -5.43 }, { name: \"Aix-les-Bains\", tz: 1, lat: 45.7, lon: -5.75 }, { name: \"Annecy\", tz: 1, lat: 45.9, lon: -6.12 }, { name: \"Antibes\", tz: 1, lat: 43.58, lon: -7.12 }, { name: \"Arcachon\", tz: 1, lat: 44.62, lon: 1.2 }, { name: \"Bayonne\", tz: 1, lat: 43.48, lon: 1.48 }, { name: \"Belfort\", tz: 1, lat: 47.63, lon: -6.87 }, { name: \"Benfeld\", tz: 1, lat: 48.37, lon: -7.6 }, { name: \"Besancon\", tz: 1, lat: 47.25, lon: -6.03 }, { name: \"Biarritz\", tz: 1, lat: 43.48, lon: 1.57 }, { name: \"Bordeuax\", tz: 1, lat: 44.83, lon: 0.57 }, { name: \"Boulay-Moselle\", tz: 1, lat: 49.18, lon: -6.5 }, { name: \"Boulogne-Sur-Mer\", tz: 1, lat: 50.72, lon: -1.62 }, { name: \"Brest, Fr.\", tz: 1, lat: 48.4, lon: 4.48 }, { name: \"Caen\", tz: 1, lat: 49.18, lon: 0.35 }, { name: \"Caluire et Cuire\", tz: 1, lat: 45.8, lon: -4.85 }, { name: \"Cannes\", tz: 1, lat: 43.55, lon: -7.02 }, { name: \"Carpentras\", tz: 1, lat: 44.05, lon: -5.05 }, { name: \"Cavaillon\", tz: 1, lat: 43.83, lon: -5.02 }, { name: \"Chalons-Sur-Marne\", tz: 1, lat: 48.95, lon: -4.37 }, { name: \"Chalons-Sur-Saone\", tz: 1, lat: 46.78, lon: -4.85 }, { name: \"Clermont-Ferrand\", tz: 1, lat: 45.78, lon: -3.08 }, { name: \"Colmar\", tz: 1, lat: 58.08, lon: -7.37 }, { name: \"Dijon\", tz: 1, lat: 47.32, lon: -5.02 }, { name: \"Evian-Les-Bains\", tz: 1, lat: 46.38, lon: -6.58 }, { name: \"Grasse\", tz: 1, lat: 43.67, lon: -6.92 }, { name: \"Grenoble\", tz: 1, lat: 45.17, lon: -5.72 }, { name: \"Haguenau\", tz: 1, lat: 48.82, lon: -7.78 }, { name: \"La Rochelle\", tz: 1, lat: 46.17, lon: 1.17 }, { name: \"La Seyne-Sur-Mer\", tz: 1, lat: 43.1, lon: -5.88 }, { name: \"Le Havre\", tz: 1, lat: 49.5, lon: -0.13 }, { name: \"Lille\", tz: 1, lat: 50.63, lon: -3.07 }, { name: \"Limoges\", tz: 1, lat: 45.83, lon: -1.25 }, { name: \"Lyon\", tz: 1, lat: 45.75, lon: -4.85 }, { name: \"M\\xE2con, Fr.\", tz: 1, lat: 46.3, lon: -4.83 }, { name: \"Menton\", tz: 1, lat: 43.78, lon: -7.5 }, { name: \"Metz\", tz: 1, lat: 49.13, lon: -6.17 }, { name: \"Montpellier\", tz: 1, lat: 43.6, lon: -3.88 }, { name: \"M\\xFClhausen im T\\xE4le\", tz: 1, lat: 48.57, lon: -9.65 }, { name: \"Nancy\", tz: 1, lat: 48.68, lon: -6.2 }, { name: \"N\\xEEmes\", tz: 1, lat: 43.83, lon: -4.35 }, { name: \"Nizza Monferrato\", tz: 1, lat: 44.77, lon: -8.35 }, { name: \"Orl\\xE9ans, Fr.\", tz: 1, lat: 47.92, lon: -1.9 }, { name: \"Perpignan\", tz: 1, lat: 42.68, lon: -2.87 }, { name: \"Reims\", tz: 1, lat: 49.25, lon: -4.02 }, { name: \"Rouen\", tz: 1, lat: 49.43, lon: -1.08 }, { name: \"Saint-Louis, Fr.\", tz: 1, lat: 47.58, lon: -7.57 }, { name: \"Sens\", tz: 1, lat: 48.2, lon: -3.28 }, { name: \"Toulouse\", tz: 1, lat: 43.6, lon: -1.43 }, { name: \"Tours\", tz: 1, lat: 47.38, lon: -0.68 }, { name: \"Troyes\", tz: 1, lat: 48.3, lon: -4.08 }, { name: \"Versailles, Fr.\", tz: 1, lat: 48.8, lon: -2.13 }, { name: \"Vittel\", tz: 1, lat: 48.2, lon: -5.95 }, { name: \"Wasselonne\", tz: 1, lat: 48.63, lon: -7.45 }, { name: \"Rothenburg ob der Tauber\", tz: 1, lat: 49.38, lon: -10.17 }, { name: \"Rothenburg\", tz: 1, lat: 51.33, lon: -14.97 }, { name: \"Rothenburg an der Oder\", tz: 1, lat: 52.02, lon: -15.42 }, { name: \"Alexandria, Egypt\", tz: 2, lat: 31.18, lon: -29.93 }, { name: \"Anchorage, AK\", tz: -9, lat: 61.22, lon: 149.88 }, { name: \"Ann Arbor, MI\", tz: -5, lat: 42.3, lon: 83.75 }, { name: \"Augusta, GA\", tz: -5, lat: 33.48, lon: 81.93 }, { name: \"Baghdad, Iraq\", tz: 3, lat: 33.35, lon: -44.42 }, { name: \"Birmingham, AL\", tz: -6, lat: 33.52, lon: 86.82 }, { name: \"Bombay, India (GMT+5)\", tz: 5, lat: 18.95, lon: -72.83 }, { name: \"Bombay, India (GMT+6)\", tz: 6, lat: 18.95, lon: -72.83 }, { name: \"Casablanca, Marokko\", tz: 0, lat: 33.65, lon: 7.58 }, { name: \"Djakarta, Indonesia\", tz: 7, lat: -6.17, lon: -106.8 }, { name: \"Desmoines, IA\", tz: -6, lat: 41.58, lon: 93.62 }, { name: \"Dubayy\", tz: 4, lat: 25.3, lon: -55.3 }, { name: \"Fort Lauderdale, FL\", tz: -5, lat: 26.12, lon: 80.13 }, { name: \"Jacksonsville, FL\", tz: -5, lat: 30.33, lon: 81.67 }, { name: \"Karachi\", tz: 5, lat: 24.87, lon: -67.05 }, { name: \"Kuala Lumpur, Malaysia\", tz: 8, lat: 3.15, lon: -101.72 }, { name: \"Kuwait, Kuwait\", tz: 3, lat: 29.5, lon: -47.75 }, { name: \"Lagos, Nigeria\", tz: 1, lat: 6.45, lon: -3.4 }, { name: \"Las Vegas, NV\", tz: -8, lat: 36.18, lon: 115.13 }, { name: \"Mauritius\", tz: 4, lat: -20.28, lon: -57.55 }, { name: \"Panama, Panama\", tz: -5, lat: 8.97, lon: 79.52 }, { name: \"Peoria, IL\", tz: -6, lat: 40.7, lon: 89.6 }, { name: \"Raleigh, NC\", tz: -5, lat: 35.78, lon: 78.65 }, { name: \"Redmond, WA\", tz: -8, lat: 47.4, lon: 122.07 }, { name: \"Sacramento, CA\", tz: -8, lat: 38.58, lon: 121.5 }, { name: \"Tenerife, Spain\", tz: 1, lat: 28.03, lon: -16.57 }, { name: \"Durres, Albania\", tz: 1, lat: 41.32, lon: -19.43 }, { name: \"Lushnje, Albania\", tz: 1, lat: 40.93, lon: -19.7 }, { name: \"Lugoj, Romania\", tz: 2, lat: 45.68, lon: -21.9 }, { name: \"Shkoder, Albania\", tz: 1, lat: 42.08, lon: -19.5 }, { name: \"Addis Abeba\", tz: 3, lat: 9.15, lon: -38.77 }, { name: \"Aden, Jemen\", tz: 3, lat: 12.78, lon: -45.03 }, { name: \"Boca Raton, FL\", tz: -5, lat: 26.35, lon: 80.08 }, { name: \"Buchara\", tz: 5, lat: 39.77, lon: -64.42 }, { name: \"Gondar, Ethiopia\", tz: 3, lat: 12.6, lon: -37.48 }, { name: \"Jekaterinburg\", tz: 5, lat: 56.83, lon: -60.5 }, { name: \"Kaifeng, China\", tz: 8, lat: 34.78, lon: -114.43 }, { name: \"Krasnojarsk\", tz: 7, lat: 56, lon: -92.98 }, { name: \"Mbale, Uganda\", tz: 3, lat: 1.07, lon: -34.18 }, { name: \"New Bedfort, MA\", tz: -5, lat: 41.63, lon: 70.93 }, { name: \"Nicosia, Cyprus\", tz: 2, lat: 34.78, lon: -33.48 }, { name: \"Nowgorod\", tz: 3, lat: 58.58, lon: -31.23 }, { name: \"Omsk\", tz: 6, lat: 54.95, lon: -73.33 }, { name: \"Plano, TX\", tz: -6, lat: 33.03, lon: 96.7 }, { name: \"Perm\", tz: 5, lat: 57.92, lon: -56.05 }, { name: \"Sana, Jemen\", tz: 3, lat: 15.18, lon: -44.02 }, { name: \"Skokie, IL\", tz: -6, lat: 42.03, lon: 87.77 }, { name: \"Woronesch, Russia\", tz: 3, lat: 51.7, lon: -39.25 }, { name: \"Allentown, PA\", tz: -5, lat: 40.6, lon: 75.48 }, { name: \"Capetown, South Africa\", tz: 2, lat: -33.9, lon: -18.37 }, { name: \"Chapel Hill, NC\", tz: -5, lat: 35.9, lon: 79.07 }, { name: \"Ft. Walton Beach, FL\", tz: -5, lat: 30.4, lon: 86.52 }, { name: \"Greenwich Meridian\", tz: 0, lat: 0, lon: 0 }, { name: \"Monsey, NY\", tz: -5, lat: 41.12, lon: 74.07 }, { name: \"Ramat Gan\", tz: 2, lat: 32.07, lon: -34.82 }, { name: \"Lugano\", tz: 1, lat: 46.02, lon: -8.97 }, { name: \"Baden, Austria\", tz: 1, lat: 48, lon: -16.23 }, { name: \"Gadsten, AL\", tz: -6, lat: 34.02, lon: 86.02 }, { name: \"Huntsville, AL\", tz: -6, lat: 34.73, lon: 86.58 }, { name: \"Montgomery, AL\", tz: -6, lat: 32.37, lon: 86.32 }, { name: \"Juneau, AK\", tz: -10, lat: 58.3, lon: 134.42 }, { name: \"Nome, AK\", tz: -10, lat: 64.5, lon: 165.42 }, { name: \"Algiers\", tz: 1, lat: 36.48, lon: -3 }, { name: \"Luanda\", tz: 1, lat: -8.5, lon: -13.15 }, { name: \"Yuma, Arizona\", tz: -7, lat: 32.72, lon: 114.62 }, { name: \"Ft Smith, Arkansas\", tz: -6, lat: 35.37, lon: 94.43 }, { name: \"Perth\", tz: 8, lat: -31.83, lon: -116.17 }, { name: \"Porto Novo\", tz: 1, lat: 6.3, lon: -2.45 }, { name: \"Ouagadougou\", tz: 0, lat: 12.2, lon: 1.4 }, { name: \"Bujumbura\", tz: 2, lat: -3.22, lon: -29.18 }, { name: \"Bakersfield, CA\", tz: -8, lat: 35.37, lon: 119.02 }, { name: \"Berkeley, CA\", tz: -8, lat: 37.87, lon: 122.27 }, { name: \"Eureka, CA\", tz: -8, lat: 40.78, lon: 124.17 }, { name: \"Fresno, CA\", tz: -8, lat: 36.73, lon: 119.78 }, { name: \"Long Beach, CA\", tz: -8, lat: 33.77, lon: 118.18 }, { name: \"Oakland, CA\", tz: -8, lat: 37.78, lon: 122.27 }, { name: \"Pasadena, CA\", tz: -8, lat: 34.15, lon: 118.15 }, { name: \"San Bernardino, CA\", tz: -8, lat: 34.12, lon: 117.47 }, { name: \"San Jose, CA\", tz: -8, lat: 37.33, lon: 121.88 }, { name: \"Santa Barbara, CA\", tz: -8, lat: 34.42, lon: 119.7 }, { name: \"Santa Cruz, CA\", tz: -8, lat: 36.97, lon: 122.02 }, { name: \"Stockton, CA\", tz: -8, lat: 37.97, lon: 121.28 }, { name: \"Yaounde\", tz: 1, lat: 3.52, lon: -11.32 }, { name: \"Calgary\", tz: -7, lat: 51.05, lon: 114.05 }, { name: \"Edmondton\", tz: -7, lat: 53.55, lon: 113.48 }, { name: \"Lethbridge\", tz: -7, lat: 49.7, lon: 112.83 }, { name: \"Prince Rupert, British Columbia\", tz: -8, lat: 54.32, lon: 130.32 }, { name: \"Victoria, British Columbia\", tz: -8, lat: 48.43, lon: 123.37 }, { name: \"Brandon\", tz: -6, lat: 49.85, lon: 99.95 }, { name: \"Churchill\", tz: -6, lat: 58.75, lon: 94.17 }, { name: \"Fredericton\", tz: -4, lat: 45.97, lon: 66.65 }, { name: \"Moncton\", tz: -4, lat: 46.08, lon: 64.78 }, { name: \"St John\", tz: -4, lat: 45.27, lon: 66.07 }, { name: \"St John's\", tz: -4, lat: 47.57, lon: 52.72 }, { name: \"Yellowknife\", tz: -7, lat: 62.45, lon: 114.38 }, { name: \"Sydney, Canada\", tz: -4, lat: 46.13, lon: 60.2 }, { name: \"Belleville\", tz: -5, lat: 44.17, lon: 77.38 }, { name: \"Brantford\", tz: -5, lat: 43.15, lon: 80.27 }, { name: \"Burlington\", tz: -5, lat: 43.33, lon: 79.8 }, { name: \"Guelph\", tz: -5, lat: 43.55, lon: 80.25 }, { name: \"Hamilton\", tz: -5, lat: 43.25, lon: 79.88 }, { name: \"Kingston\", tz: -5, lat: 44.23, lon: 76.48 }, { name: \"Kitchener\", tz: -5, lat: 43.45, lon: 80.48 }, { name: \"London, Ontario\", tz: -5, lat: 42.98, lon: 81.23 }, { name: \"Mississauga\", tz: -5, lat: 43.55, lon: 79.57 }, { name: \"North Bay\", tz: -5, lat: 46.32, lon: 79.47 }, { name: \"Oshawa\", tz: -5, lat: 43.9, lon: 78.87 }, { name: \"Peterborough\", tz: -5, lat: 44.32, lon: 78.32 }, { name: \"St Catherines\", tz: -5, lat: 43.17, lon: 79.25 }, { name: \"Sault St Marie\", tz: -5, lat: 46.5, lon: 84.33 }, { name: \"Sudbury\", tz: -5, lat: 46.48, lon: 80.98 }, { name: \"Thunder Bay\", tz: -5, lat: 48.38, lon: 89.25 }, { name: \"Windsor\", tz: -5, lat: 42.32, lon: 83.03 }, { name: \"Hull\", tz: -5, lat: 45.43, lon: 75.72 }, { name: \"La Salle\", tz: -5, lat: 45.43, lon: 73.67 }, { name: \"Laval\", tz: -5, lat: 45.22, lon: 73.75 }, { name: \"Sherbrooke\", tz: -5, lat: 45.4, lon: 71.85 }, { name: \"Trois Riveres\", tz: -5, lat: 46.35, lon: 72.55 }, { name: \"Dawson\", tz: -8, lat: 64.07, lon: 139.43 }, { name: \"Whitehorse\", tz: -8, lat: 60.72, lon: 135.05 }, { name: \"Moose Jaw\", tz: -6, lat: 50.4, lon: 105.53 }, { name: \"Regina\", tz: -6, lat: 50.45, lon: 104.62 }, { name: \"Saskatoon\", tz: -6, lat: 52.13, lon: 106.67 }, { name: \"Bangui\", tz: 1, lat: 4.22, lon: -18.37 }, { name: \"N'Djamena\", tz: 1, lat: 12.1, lon: -14.58 }, { name: \"Grand Junction\", tz: -7, lat: 39.07, lon: 108.57 }, { name: \"Pueblo\", tz: -7, lat: 38.25, lon: 104.62 }, { name: \"Brazzaville\", tz: 1, lat: -4.13, lon: -15.13 }, { name: \"Bridgeport\", tz: -5, lat: 41.18, lon: 73.18 }, { name: \"Abidjan\", tz: 0, lat: 5.18, lon: 4.02 }, { name: \"Wilmington, Delaware\", tz: -5, lat: 39.75, lon: 75.55 }, { name: \"Quito\", tz: -5, lat: -0.28, lon: 78.52 }, { name: \"Daytona Beach, FL\", tz: -5, lat: 29.22, lon: 81.02 }, { name: \"Gainesville, FL\", tz: -5, lat: 29.65, lon: 82.32 }, { name: \"Key West, FL\", tz: -5, lat: 24.57, lon: 81.8 }, { name: \"Pensacola, FL\", tz: -5, lat: 30.42, lon: 87.22 }, { name: \"St. Petersburg, FL\", tz: -5, lat: 27.78, lon: 82.63 }, { name: \"Sarasota, FL\", tz: -5, lat: 27.33, lon: 82.55 }, { name: \"Tallahassee, FL\", tz: -5, lat: 30.45, lon: 84.45 }, { name: \"W. Palm Beach, FL\", tz: -5, lat: 26.72, lon: 80.05 }, { name: \"Libreville\", tz: 1, lat: 0.23, lon: -9.25 }, { name: \"Banjul\", tz: 0, lat: 13.28, lon: 16.38 }, { name: \"Augusta, Georgia\", tz: -5, lat: 33.47, lon: 81.97 }, { name: \"Columbus, Georgia\", tz: -5, lat: 32.47, lon: 84.98 }, { name: \"Macon, Georgia\", tz: -5, lat: 32.83, lon: 83.63 }, { name: \"Savannah, Georgia\", tz: -5, lat: 32.07, lon: 81.1 }, { name: \"Accra\", tz: 0, lat: 5.33, lon: 0.15 }, { name: \"Conakry\", tz: 0, lat: 9.32, lon: -13.17 }, { name: \"Hilo\", tz: 10, lat: 19.73, lon: 155.08 }, { name: \"Lihue\", tz: 10, lat: 21.98, lon: 159.37 }, { name: \"Victoria, Hongkong\", tz: 8, lat: 22.17, lon: -114.3 }, { name: \"Reykjavik\", tz: 0, lat: 64.15, lon: 21.65 }, { name: \"Boise, Idaho\", tz: -7, lat: 43.62, lon: 116.2 }, { name: \"Pocatello, Idaho\", tz: -7, lat: 42.87, lon: 112.45 }, { name: \"Bloomington, IL\", tz: -6, lat: 40.48, lon: 89 }, { name: \"Champaign, IL\", tz: -6, lat: 40.12, lon: 88.25 }, { name: \"Decatur, IL\", tz: -6, lat: 39.85, lon: 88.95 }, { name: \"Moline, IL\", tz: -6, lat: 41.52, lon: 90.52 }, { name: \"Rockford, IL\", tz: -6, lat: 42.27, lon: 89.1 }, { name: \"Springfield, IL\", tz: -6, lat: 39.78, lon: 89.65 }, { name: \"Urbana, IL\", tz: -6, lat: 40.12, lon: 88.2 }, { name: \"Evansville, Indiana\", tz: -6, lat: 37.97, lon: 87.57 }, { name: \"Ft. Wayne, Indiana\", tz: -6, lat: 41.07, lon: 85.13 }, { name: \"Gary, Indiana\", tz: -6, lat: 41.62, lon: 87.33 }, { name: \"Lafayette, Indiana\", tz: -6, lat: 40.42, lon: 86.9 }, { name: \"Muncie, Indiana\", tz: -6, lat: 40.18, lon: 85.38 }, { name: \"South Bend, Indiana\", tz: -6, lat: 41.68, lon: 86.25 }, { name: \"Terre Houte, Indiana\", tz: -6, lat: 39.47, lon: 87.4 }, { name: \"Cedar Rapids, IA\", tz: -6, lat: 41.97, lon: 91.67 }, { name: \"Davenport, IA\", tz: -6, lat: 41.52, lon: 90.58 }, { name: \"Dubuque, IA\", tz: -6, lat: 42.5, lon: 90.67 }, { name: \"Iowa City, IA\", tz: -6, lat: 41.67, lon: 91.53 }, { name: \"Sioux City, IA\", tz: -6, lat: 42.5, lon: 96.42 }, { name: \"Waterloo, IA\", tz: -6, lat: 42.5, lon: 92.33 }, { name: \"Dodge City (Kans., US)\", tz: -6, lat: 37.75, lon: 100.02 }, { name: \"Salina (Kans., US)\", tz: -6, lat: 38.85, lon: 97.62 }, { name: \"Wichita (Kans., US)\", tz: -6, lat: 37.7, lon: 97.33 }, { name: \"Ashland, KY\", tz: -5, lat: 38.48, lon: 82.63 }, { name: \"Bowling Green, KY\", tz: -5, lat: 37, lon: 86.45 }, { name: \"Lexington, KY\", tz: -5, lat: 38.05, lon: 84.5 }, { name: \"Paducah, KY\", tz: -5, lat: 37.07, lon: 88.6 }, { name: \"Maseru\", tz: 2, lat: -29.18, lon: -27.28 }, { name: \"Monrovia\", tz: 0, lat: 6.2, lon: 10.47 }, { name: \"Tripoli\", tz: 1, lat: 32.83, lon: -13.22 }, { name: \"Baton Rouge, Louisiana\", tz: -6, lat: 30.45, lon: 91.18 }, { name: \"Shreveport, Louisiana\", tz: -6, lat: 32.52, lon: 93.75 }, { name: \"Antananarivo\", tz: 3, lat: -18.5, lon: -47.3 }, { name: \"Augusta, Maine\", tz: -5, lat: 44.32, lon: 69.75 }, { name: \"Bangor, Maine\", tz: -5, lat: 44.8, lon: 68.75 }, { name: \"Lilongwe\", tz: 2, lat: -13.58, lon: -33.48 }, { name: \"Bamako\", tz: 0, lat: 12.4, lon: 7.58 }, { name: \"Brockton, MA\", tz: -5, lat: 42.08, lon: 71.02 }, { name: \"Cambridge, MA\", tz: -5, lat: 42.37, lon: 71.1 }, { name: \"Fall River, MA\", tz: -5, lat: 41.7, lon: 71.15 }, { name: \"Holyoke, MA\", tz: -5, lat: 42.2, lon: 72.62 }, { name: \"Lawrence, MA\", tz: -5, lat: 42.7, lon: 71.15 }, { name: \"Lowell, MA\", tz: -5, lat: 42.63, lon: 71.32 }, { name: \"Pittsfield, MA\", tz: -5, lat: 42.45, lon: 73.25 }, { name: \"Somerville, MA\", tz: -5, lat: 42.38, lon: 71.1 }, { name: \"Worcester, MA\", tz: -5, lat: 42.27, lon: 71.8 }, { name: \"Nouakchott\", tz: 0, lat: 18.08, lon: 15.58 }, { name: \"Battle Creek, MI\", tz: -5, lat: 42.32, lon: 85.18 }, { name: \"Bay City, MI\", tz: -5, lat: 43.6, lon: 83.88 }, { name: \"Flint, MI\", tz: -5, lat: 43.02, lon: 83.7 }, { name: \"Grand Rapids, MI\", tz: -5, lat: 42.97, lon: 85.67 }, { name: \"Jackson, MI\", tz: -5, lat: 42.25, lon: 84.4 }, { name: \"Kalamazoo, MI\", tz: -5, lat: 42.28, lon: 85.58 }, { name: \"Lansing, MI\", tz: -5, lat: 42.73, lon: 84.55 }, { name: \"Saginaw, MI\", tz: -5, lat: 43.43, lon: 83.93 }, { name: \"Duluth, Minnesota\", tz: -6, lat: 46.78, lon: 92.1 }, { name: \"Rochester, Minnesota\", tz: -6, lat: 44.02, lon: 92.47 }, { name: \"St. Cloud, Minnesota\", tz: -6, lat: 45.57, lon: 94.17 }, { name: \"St. Paul, Minnesota\", tz: -6, lat: 44.95, lon: 93.1 }, { name: \"Biloxi, Mississippi\", tz: -6, lat: 30.4, lon: 88.88 }, { name: \"Gulfport, Mississippi\", tz: -6, lat: 30.37, lon: 89.1 }, { name: \"Jackson, Mississippi\", tz: -6, lat: 32.3, lon: 90.18 }, { name: \"Natchez, Mississippi\", tz: -6, lat: 31.57, lon: 91.38 }, { name: \"Columbia, Missouri\", tz: -6, lat: 38.95, lon: 92.33 }, { name: \"Joplin, Missouri\", tz: -6, lat: 37.07, lon: 94.5 }, { name: \"Kansas City, Missouri\", tz: -6, lat: 39.07, lon: 94.58 }, { name: \"St. Joseph, Missouri\", tz: -6, lat: 39.77, lon: 94.85 }, { name: \"St. Louis, Missouri\", tz: -6, lat: 38.63, lon: 90.2 }, { name: \"Springfield, Missouri\", tz: -6, lat: 37.22, lon: 93.3 }, { name: \"Billings, Montana\", tz: -7, lat: 45.78, lon: 108.5 }, { name: \"Butte, Montana\", tz: -7, lat: 46.02, lon: 112.53 }, { name: \"Great Falls, Montana\", tz: -7, lat: 47.5, lon: 111.3 }, { name: \"Helena, Montana\", tz: -7, lat: 46.6, lon: 112.03 }, { name: \"Rabat\", tz: 1, lat: 34.02, lon: 6.52 }, { name: \"Maputo\", tz: 2, lat: -25.58, lon: -32.35 }, { name: \"Windhoek\", tz: 2, lat: -22.33, lon: -17.07 }, { name: \"Lincoln, Nebraska\", tz: -6, lat: 40.82, lon: 96.7 }, { name: \"Carson City, NV\", tz: -8, lat: 39.17, lon: 119.77 }, { name: \"Reno, NV\", tz: -8, lat: 39.52, lon: 119.82 }, { name: \"Concord, New Hampshire\", tz: -5, lat: 43.2, lon: 71.52 }, { name: \"Manchester, New Hampshire\", tz: -5, lat: 42.98, lon: 71.47 }, { name: \"Portsmouth, New Hampshire\", tz: -5, lat: 43.07, lon: 70.75 }, { name: \"Atlantic City, NJ\", tz: -5, lat: 39.37, lon: 74.43 }, { name: \"Camdon, NJ\", tz: -5, lat: 39.95, lon: 75.1 }, { name: \"Jersey City, NJ\", tz: -5, lat: 40.73, lon: 74.07 }, { name: \"Paterson, NJ\", tz: -5, lat: 40.9, lon: 74.15 }, { name: \"Trenton, NJ\", tz: -5, lat: 40.22, lon: 74.8 }, { name: \"Albuquerque, NM\", tz: -7, lat: 35.07, lon: 106.65 }, { name: \"Gallup, NM\", tz: -7, lat: 35.52, lon: 108.73 }, { name: \"Santa Fe, NM\", tz: -7, lat: 35.67, lon: 105.93 }, { name: \"Albany, NY\", tz: -5, lat: 42.65, lon: 73.75 }, { name: \"Binghamton, NY\", tz: -5, lat: 42.1, lon: 86.82 }, { name: \"Buffalo, NY\", tz: -5, lat: 42.88, lon: 78.87 }, { name: \"Central Islip, NY\", tz: -5, lat: 40.78, lon: 73.2 }, { name: \"Niagra Falls, NY\", tz: -5, lat: 43.1, lon: 79.05 }, { name: \"Rochester, NY\", tz: -5, lat: 43.17, lon: 77.6 }, { name: \"Schenectady, NY\", tz: -5, lat: 42.82, lon: 73.93 }, { name: \"Syracuse, NY\", tz: -5, lat: 43.05, lon: 76.15 }, { name: \"Troy, NY\", tz: -5, lat: 42.73, lon: 73.68 }, { name: \"Utica, NY\", tz: -5, lat: 43.1, lon: 75.23 }, { name: \"White Plains, NY\", tz: -5, lat: 41.03, lon: 73.75 }, { name: \"Yonkers, NY\", tz: -5, lat: 40.93, lon: 73.9 }, { name: \"Auckland\", tz: 12, lat: -36.88, lon: -174.75 }, { name: \"Niamey\", tz: 1, lat: 13.32, lon: -2.03 }, { name: \"Lagos\", tz: 1, lat: 6.27, lon: -3.28 }, { name: \"Ashlville, NC\", tz: -5, lat: 35.6, lon: 82.55 }, { name: \"Durham, NC\", tz: -5, lat: 36, lon: 78.92 }, { name: \"Greensboro, NC\", tz: -5, lat: 36.07, lon: 79.78 }, { name: \"Wilmington, NC\", tz: -5, lat: 34.23, lon: 77.93 }, { name: \"Winston Salem, NC\", tz: -5, lat: 36.1, lon: 80.25 }, { name: \"Bismark, N. Dakota\", tz: -7, lat: 46.8, lon: 100.78 }, { name: \"Fargo, N. Dakota\", tz: -7, lat: 46.88, lon: 96.78 }, { name: \"Minot, N. Dakota\", tz: -7, lat: 48.23, lon: 101.3 }, { name: \"Akron, OH\", tz: -5, lat: 41.08, lon: 81.52 }, { name: \"Dayton, OH\", tz: -5, lat: 39.77, lon: 84.2 }, { name: \"Hamilton, OH\", tz: -5, lat: 39.4, lon: 84.57 }, { name: \"Lima, OH\", tz: -5, lat: 40.75, lon: 84.1 }, { name: \"Lorain, OH\", tz: -5, lat: 41.47, lon: 82.18 }, { name: \"Springfield, OH\", tz: -5, lat: 39.95, lon: 83.8 }, { name: \"Stuebenville, OH\", tz: -5, lat: 40.37, lon: 80.62 }, { name: \"Toledo, OH\", tz: -5, lat: 41.65, lon: 83.55 }, { name: \"Youngstown, OH\", tz: -5, lat: 41.1, lon: 80.65 }, { name: \"Zanesville, OH\", tz: -5, lat: 39.93, lon: 82.52 }, { name: \"Enid, Oklahoma\", tz: -6, lat: 36.4, lon: 97.88 }, { name: \"Oklahoma City\", tz: -6, lat: 35.47, lon: 97.52 }, { name: \"Tulsa, Oklahoma\", tz: -6, lat: 36.15, lon: 96 }, { name: \"Eugene (Oreg, US)\", tz: -8, lat: 44.05, lon: 123.1 }, { name: \"Salem (Oreg, US)\", tz: -8, lat: 44.93, lon: 123.03 }, { name: \"Altonna, Pennsylvania\", tz: -5, lat: 40.52, lon: 78.38 }, { name: \"Bethlehem, Pennsylvania\", tz: -5, lat: 40.6, lon: 75.38 }, { name: \"Erie, Pennsylvania\", tz: -5, lat: 42.12, lon: 80.08 }, { name: \"Harrisburg, Pennsylvania\", tz: -5, lat: 40.25, lon: 76.88 }, { name: \"Johnstown, Pennsylvania\", tz: -5, lat: 40.33, lon: 78.92 }, { name: \"Lancaster, Pennsylvania\", tz: -5, lat: 40.03, lon: 76.3 }, { name: \"Reading, Pennsylvania\", tz: -5, lat: 40.33, lon: 75.93 }, { name: \"Scranton, Pennsylvania\", tz: -5, lat: 41.42, lon: 75.67 }, { name: \"WilkesEBarre, Pennsylvania\", tz: -5, lat: 41.25, lon: 75.88 }, { name: \"York, Pennsylvania\", tz: -5, lat: 39.97, lon: 76.73 }, { name: \"Manila\", tz: 8, lat: 14.62, lon: -121 }, { name: \"Kigali\", tz: 2, lat: -1.57, lon: -3.03 }, { name: \"Dakar\", tz: 0, lat: 14.38, lon: 17.27 }, { name: \"Mogadishu\", tz: 3, lat: 2, lon: -45.22 }, { name: \"Columbia, SC\", tz: -5, lat: 34, lon: 81.03 }, { name: \"Greenville, SC\", tz: -5, lat: 34.85, lon: 82.4 }, { name: \"Spartanburg, SC\", tz: -5, lat: 34.95, lon: 81.93 }, { name: \"Pierre, South Dakota\", tz: -6, lat: 44.37, lon: 100.35 }, { name: \"Rapid City, South Dakota\", tz: -6, lat: 44.08, lon: 103.22 }, { name: \"Sioux Falls, South Dakota\", tz: -6, lat: 43.55, lon: 96.73 }, { name: \"Khartoum\", tz: 2, lat: 15.33, lon: -32.22 }, { name: \"Daressalam\", tz: 3, lat: -6.52, lon: -39.18 }, { name: \"Chattanooga (Tenn., US)\", tz: -6, lat: 35.05, lon: 85.32 }, { name: \"Knoxville (Tenn., US)\", tz: -6, lat: 35.97, lon: 83.92 }, { name: \"Abilene, TX\", tz: -6, lat: 32.45, lon: 99.73 }, { name: \"Amarillo, TX\", tz: -6, lat: 35.18, lon: 101.83 }, { name: \"Austin, TX\", tz: -6, lat: 30.27, lon: 97.75 }, { name: \"Beaumont, TX\", tz: -6, lat: 30.08, lon: 94.1 }, { name: \"Brownsville, TX\", tz: -6, lat: 25.9, lon: 97.5 }, { name: \"Corpus Christi, TX\", tz: -6, lat: 27.8, lon: 97.4 }, { name: \"El Paso, TX\", tz: -6, lat: 31.77, lon: 106.48 }, { name: \"Ft Worth, TX\", tz: -6, lat: 32.75, lon: 97.33 }, { name: \"Galveston, TX\", tz: -6, lat: 29.3, lon: 94.8 }, { name: \"Laredo, TX\", tz: -6, lat: 27.5, lon: 99.52 }, { name: \"Lubbock, TX\", tz: -6, lat: 33.58, lon: 101.85 }, { name: \"Marshall, TX\", tz: -6, lat: 32.55, lon: 94.38 }, { name: \"Port Arthur, TX\", tz: -6, lat: 29.88, lon: 93.93 }, { name: \"San Angelo, TX\", tz: -6, lat: 31.47, lon: 100.43 }, { name: \"Texarkana, TX\", tz: -6, lat: 33.43, lon: 94.05 }, { name: \"Waco, TX\", tz: -6, lat: 31.55, lon: 97.13 }, { name: \"Lhasa\", tz: 8, lat: 29.68, lon: -92.2 }, { name: \"Lome\", tz: 0, lat: 6.1, lon: -1.2 }, { name: \"Tunis\", tz: 1, lat: 36.48, lon: -10.13 }, { name: \"Kampala\", tz: 3, lat: 0.2, lon: -32.35 }, { name: \"Logan, Utah\", tz: -7, lat: 41.73, lon: 111.83 }, { name: \"Ogden, Utah\", tz: -7, lat: 41.23, lon: 111.97 }, { name: \"Provo, Utah\", tz: -7, lat: 40.23, lon: 111.65 }, { name: \"Brattleboro, VT\", tz: -5, lat: 42.85, lon: 72.57 }, { name: \"Montpelier, VT\", tz: -5, lat: 44.27, lon: 72.55 }, { name: \"Hanoi\", tz: 7, lat: 21.07, lon: -105.83 }, { name: \"Norfolk, Virginia\", tz: -5, lat: 36.85, lon: 76.28 }, { name: \"Portsmouth, Virginia\", tz: -5, lat: 36.83, lon: 76.28 }, { name: \"Richmond, Virginia\", tz: -5, lat: 37.53, lon: 77.43 }, { name: \"Roanooke, Virginia\", tz: -5, lat: 37.25, lon: 79.93 }, { name: \"Bellingham, WA\", tz: -8, lat: 48.77, lon: 122.48 }, { name: \"Spokane, WA\", tz: -8, lat: 47.67, lon: 117.43 }, { name: \"Tacoma, WA\", tz: -8, lat: 47.25, lon: 122.43 }, { name: \"Walla Walla, WA\", tz: -8, lat: 46.07, lon: 118.33 }, { name: \"Yakima, WA\", tz: -8, lat: 46.6, lon: 120.52 }, { name: \"Laayoune\", tz: 1, lat: 27.1, lon: 13.12 }, { name: \"Charleston, West Virginia\", tz: -5, lat: 38.35, lon: 81.63 }, { name: \"Huntington, West Virginia\", tz: -5, lat: 38.42, lon: 82.45 }, { name: \"Wheeling, West Virginia\", tz: -5, lat: 40.07, lon: 80.72 }, { name: \"Eau Claire (Wis., US)\", tz: -6, lat: 44.82, lon: 91.5 }, { name: \"Green Bay (Wis., US)\", tz: -6, lat: 44.52, lon: 88.02 }, { name: \"Kenosha (Wis., US)\", tz: -6, lat: 42.6, lon: 87.83 }, { name: \"Racine (Wis., US)\", tz: -6, lat: 42.73, lon: 87.78 }, { name: \"Sheboygan (Wis., US)\", tz: -6, lat: 43.75, lon: 87.72 }, { name: \"Superior (Wis., US)\", tz: -6, lat: 46.72, lon: 92.1 }, { name: \"Cheyenne, Wyoming\", tz: -7, lat: 41.13, lon: 104.82 }, { name: \"Sheridan, Wyoming\", tz: -7, lat: 44.8, lon: 106.95 }, { name: \"Lusaka\", tz: 2, lat: -15.28, lon: -28.17 }, { name: \"Kinshasa\", tz: 1, lat: -4.18, lon: -15.18 }, { name: \"Harare\", tz: 2, lat: -17.5, lon: -31.03 }, { name: \"Abu Dhabi\", tz: 4, lat: 24.33, lon: -54.57 }, { name: \"Acapulco\", tz: -6, lat: 17.08, lon: 100.13 }, { name: \"Agana, Guam\", tz: 10, lat: 13.48, lon: -144.73 }, { name: \"Al-Manamah, Bharain\", tz: 3, lat: 26.22, lon: -50.55 }, { name: \"Andorra, Spain\", tz: 1, lat: 40.97, lon: 0.47 }, { name: \"Asmara, Eritrea\", tz: 3, lat: 15.02, lon: -38.48 }, { name: \"Baku, Aserbaidschan\", tz: 4, lat: 40.35, lon: -49.82 }, { name: \"Bergen, The Netherlands\", tz: 1, lat: 51.62, lon: -6.07 }, { name: \"Bischkek, Kirgistan\", tz: 6, lat: 43.02, lon: -74.97 }, { name: \"Bridgetown (Barbados)\", tz: -4, lat: 13.08, lon: 59.47 }, { name: \"Brno\", tz: 1, lat: 49.2, lon: -16.58 }, { name: \"Broken Hill, Australia\", tz: 10, lat: -31.87, lon: -141.17 }, { name: \"Bukavu, Zaire\", tz: 2, lat: -2.55, lon: -28.65 }, { name: \"Kanarische Inseln\", tz: 0, lat: 28.47, lon: 15.05 }, { name: \"Cayenne (French - Guyana)\", tz: -3, lat: 4.78, lon: -52.47 }, { name: \"Cebu, Phillipines\", tz: 8, lat: 10.18, lon: -123.75 }, { name: \"Cordoba, Spain\", tz: 1, lat: 57.87, lon: 4.83 }, { name: \"Cordoba, Argentinia\", tz: -3, lat: -31.15, lon: 64.25 }, { name: \"Cordova, Alaska, U.S.A.\", tz: -9, lat: 60.55, lon: 145.73 }, { name: \"Dalian, China\", tz: 8, lat: 38.9, lon: -121.65 }, { name: \"Dakar, Senegal\", tz: 0, lat: 14.78, lon: 16.95 }, { name: \"Dhaka, Bangladesh\", tz: 6, lat: 23.48, lon: -90.4 }, { name: \"Durban, South Africa\", tz: 2, lat: -29.87, lon: -30.9 }, { name: \"Dushanbe, Tadschikistan\", tz: 6, lat: 38.6, lon: -69.1 }, { name: \"Er Riad\", tz: 3, lat: 24.65, lon: -46.7 }, { name: \"Firenze, Italy\", tz: 1, lat: 43.77, lon: -11.23 }, { name: \"Freetown, Sierra Leone\", tz: 0, lat: 8.5, lon: 13.22 }, { name: \"Georgetown, Gambia\", tz: 0, lat: 13.22, lon: 14.75 }, { name: \"Guatemala City\", tz: -6, lat: 14.58, lon: 90.67 }, { name: \"Hermosillo, Mexico\", tz: -6, lat: 29.18, lon: 110.98 }, { name: \"Jakarta, Indonesia\", tz: 7, lat: -6.28, lon: -106.65 }, { name: \"Katmandu, Nepal\", tz: 6, lat: 27.67, lon: -85.47 }, { name: \"Khabarovsk, Russia\", tz: 10, lat: 48.07, lon: -134.63 }, { name: \"Khartoum, Sudan\", tz: 2, lat: 15.23, lon: -32.57 }, { name: \"La Paz, Argentinia\", tz: -3, lat: -30.75, lon: 59.67 }, { name: \"La Plata, Argentinia\", tz: -3, lat: -34.97, lon: 57.97 }, { name: \"Limerick, Ireland\", tz: 0, lat: 52.7, lon: 8.67 }, { name: \"Macao, China\", tz: 8, lat: 22.22, lon: -113.6 }, { name: \"Managua, Nikaragva\", tz: -6, lat: 12.15, lon: 86.32 }, { name: \"Manaus\", tz: -4, lat: -2.87, lon: 60.12 }, { name: \"Maracaibo, Venezuela\", tz: -4, lat: 10.52, lon: 71.97 }, { name: \"Mbabane, Swasiland\", tz: 2, lat: -26.07, lon: -31.15 }, { name: \"Monte Carlo, Monaco\", tz: 1, lat: 43.73, lon: -7.42 }, { name: \"Nassau, Germany\", tz: 1, lat: 50.32, lon: -7.8 }, { name: \"Nandi, Simbabwe\", tz: 2, lat: -20.98, lon: -31.78 }, { name: \"Nantes, France\", tz: 1, lat: 47.23, lon: 1.48 }, { name: \"Noumea, New Caledonia\", tz: 11, lat: -22.12, lon: -166.5 }, { name: \"Nizhniy Novgorod\", tz: 4, lat: 56.33, lon: -44.17 }, { name: \"Odense, Denmark\", tz: 1, lat: 55.43, lon: 10.3 }, { name: \"Osaka, Japan\", tz: 9, lat: 34.75, lon: -135.47 }, { name: \"Paramaribo, Surinam\", tz: -3, lat: 5.77, lon: 55.25 }, { name: \"Phnom Penh, Kambodscha\", tz: 7, lat: 11.53, lon: -104.78 }, { name: \"Port Au Prince, Haiti\", tz: -5, lat: 18.57, lon: 72.33 }, { name: \"Port Louis, Mauritius\", tz: 4, lat: -20.15, lon: -57.5 }, { name: \"Port Moresby, Papua-Neuguinea\", tz: 10, lat: -9.43, lon: -147 }, { name: \"Port Said, Egypt\", tz: 2, lat: 30.9, lon: -32.07 }, { name: \"Pretoria, South Africa\", tz: 2, lat: -25.63, lon: -28.33 }, { name: \"San Salvador, El Salvador\", tz: -6, lat: 13.98, lon: 89.18 }, { name: \"Santo Domingo, Dominican Republic\", tz: -4, lat: 18.5, lon: 69.93 }, { name: \"Suez, Egypt\", tz: 2, lat: 29.97, lon: -32.55 }, { name: \"Szeged, Hungary\", tz: 1, lat: 46.32, lon: -20.08 }, { name: \"Tahiti, Polynesia\", tz: -10, lat: -18.3, lon: 149.43 }, { name: \"Tegucigalpa, Honduras\", tz: -6, lat: 14.28, lon: 87.4 }, { name: \"Thessalonikia, Greece\", tz: 2, lat: 40.65, lon: -23.02 }, { name: \"Thimbu, Bhutan\", tz: 6, lat: 27.47, lon: -89.63 }, { name: \"Tirana, Albania\", tz: 1, lat: 41.35, lon: -19.8 }, { name: \"Tijuana, Mexico\", tz: -6, lat: 32.48, lon: 117.03 }, { name: \"Ulan Bator, Mongolia\", tz: 8, lat: 47.45, lon: -106.4 }, { name: \"Vaduz, Liechtenstein\", tz: 1, lat: 47.13, lon: -9.53 }, { name: \"Vientiane, Laos\", tz: 7, lat: 17.88, lon: -102.63 }, { name: \"Wellington, New Zealand\", tz: 12, lat: -41.3, lon: -174.98 }, { name: \"Yerevan, Armenia\", tz: 4, lat: 39.93, lon: -44.75 }, { name: \"Towson, MD\", tz: -5, lat: 39.28, lon: 76.62 }, { name: \"Florina\", tz: 2, lat: 40.78, lon: -21.42 }, { name: \"Kishinew, Moldova\", tz: 2, lat: 47, lon: -28.83 }, { name: \"Belts, Moldova\", tz: 2, lat: 47.75, lon: -27.92 }, { name: \"Bendery, Moldova\", tz: 2, lat: 46.83, lon: -29.47 }, { name: \"Cahul, Moldova\", tz: 2, lat: 45.9, lon: -28.2 }, { name: \"Taraclia, Moldova\", tz: 2, lat: 45.9, lon: -28.68 }, { name: \"Alexandria, Greece\", tz: 2, lat: 40.63, lon: -22.52 }, { name: \"Chalkis, Greece\", tz: 2, lat: 38.47, lon: -23.6 }, { name: \"Drama, Greece\", tz: 2, lat: 41.15, lon: -24.17 }, { name: \"Kilkis, Greece\", tz: 2, lat: 41, lon: -22.9 }, { name: \"Larissa, Greece\", tz: 2, lat: 39.63, lon: -22.42 }, { name: \"Thessaloniki, Greece\", tz: 2, lat: 40.63, lon: -22.97 }, { name: \"\\xC4li Bayramli, Aserbaidschan\", tz: 4, lat: 39.93, lon: -48.92 }, { name: \"Puta, Aserbaidschan\", tz: 4, lat: 40.3, lon: -49.68 }, { name: \"Sumqayit, Aserbaidschan\", tz: 4, lat: 40.6, lon: -49.75 }, { name: \"Siy\\xE4z\\xE4n, Aserbaidschan\", tz: 4, lat: 41.07, lon: -49.1 }, { name: \"Decin\", tz: 1, lat: 50.8, lon: -14.22 }, { name: \"Karlovy Vary\", tz: 1, lat: 50.18, lon: -12.87 }, { name: \"Zilina\", tz: 1, lat: 49.23, lon: -18.77 }, { name: \"Appenweier\", tz: 1, lat: 48.53, lon: -7.97 }, { name: \"Denzlingen\", tz: 1, lat: 48.07, lon: -7.87 }, { name: \"Ettenheim\", tz: 1, lat: 48.25, lon: -7.82 }, { name: \"Kehl\", tz: 1, lat: 48.58, lon: -7.83 }, { name: \"Kenzingen\", tz: 1, lat: 48.18, lon: -7.77 }, { name: \"Lahr\", tz: 1, lat: 48.33, lon: -7.87 }, { name: \"Oberkirch\", tz: 1, lat: 48.52, lon: -8.08 }, { name: \"Offenburg\", tz: 1, lat: 48.47, lon: -7.95 }, { name: \"Rust, Germany\", tz: 1, lat: 48.27, lon: -7.72 }, { name: \"Waldkirch\", tz: 1, lat: 48.08, lon: -7.95 }, { name: \"K\\xF6nigs Wusterhausen\", tz: 1, lat: 52.3, lon: -13.62 }, { name: \"Oderberg\", tz: 1, lat: 52.87, lon: -14.03 }, { name: \"Oranienburg\", tz: 1, lat: 52.75, lon: -13.23 }, { name: \"Schwedt/Oder\", tz: 1, lat: 53.05, lon: -14.28 }, { name: \"Harrow, United Kingdom\", tz: 0, lat: 51.58, lon: 0.37 }, { name: \"Markkleeberg\", tz: 1, lat: 51.28, lon: -12.38 }, { name: \"Gap, France\", tz: 1, lat: 44.57, lon: -6.08 }, { name: \"Amiens, France\", tz: 1, lat: 49.9, lon: -2.3 }, { name: \"Angers, France\", tz: 1, lat: 47.47, lon: 0.55 }, { name: \"Bischeim, France\", tz: 1, lat: 48.62, lon: -7.75 }, { name: \"Chambery, France\", tz: 1, lat: 45.57, lon: -6.08 }, { name: \"Deauville, France\", tz: 1, lat: 49.37, lon: -0.07 }, { name: \"Dieuze, France\", tz: 1, lat: 48.82, lon: -6.72 }, { name: \"Dunkerque, France\", tz: 1, lat: 51.05, lon: -2.37 }, { name: \"Elbeuf, France\", tz: 1, lat: 49.28, lon: -1 }, { name: \"Epernay, France\", tz: 1, lat: 49.05, lon: -3.95 }, { name: \"Epinal, France\", tz: 1, lat: 48.18, lon: -6.45 }, { name: \"Forbach, France\", tz: 1, lat: 49.18, lon: -6.9 }, { name: \"Ingwiller, France\", tz: 1, lat: 48.87, lon: -7.48 }, { name: \"Saint-Laurent-du-Var, France (1)\", tz: 1, lat: 45.38, lon: -5.73 }, { name: \"La Ciotat, France\", tz: 1, lat: 43.17, lon: -5.6 }, { name: \"Le Mans, France\", tz: 1, lat: 48, lon: -0.2 }, { name: \"Libourne, France\", tz: 1, lat: 44.92, lon: 0.23 }, { name: \"Luneville, France\", tz: 1, lat: 48.6, lon: -6.5 }, { name: \"Marignane, France\", tz: 1, lat: 43.42, lon: -5.22 }, { name: \"Melun, France\", tz: 1, lat: 48.53, lon: -2.67 }, { name: \"Merlebach, France\", tz: 1, lat: 49.15, lon: -6.8 }, { name: \"Montauban, France\", tz: 1, lat: 44.02, lon: -1.35 }, { name: \"Montbeliard, France\", tz: 1, lat: 47.52, lon: -6.8 }, { name: \"Obernai, France\", tz: 1, lat: 48.47, lon: -7.48 }, { name: \"Pau, France\", tz: 1, lat: 43.3, lon: 0.37 }, { name: \"Perigueux, France\", tz: 1, lat: 45.18, lon: -0.72 }, { name: \"Phalsbourg, France\", tz: 1, lat: 48.77, lon: -7.27 }, { name: \"Poitiers, France\", tz: 1, lat: 46.58, lon: -0.33 }, { name: \"Reims, France\", tz: 1, lat: 49.25, lon: -4.02 }, { name: \"Rennes, France\", tz: 1, lat: 48.08, lon: 1.68 }, { name: \"Roanne, France\", tz: 1, lat: 46.03, lon: -4.07 }, { name: \"Saint-Avold, France\", tz: 1, lat: 49.1, lon: -6.7 }, { name: \"Saint-Die, France\", tz: 1, lat: 48.28, lon: -6.95 }, { name: \"Saint-Etienne, France\", tz: 1, lat: 45.43, lon: -4.4 }, { name: \"Saint-Fons, France\", tz: 1, lat: 45.7, lon: -4.85 }, { name: \"Saint-Laurent-du-Var, France (2)\", tz: 1, lat: 43.67, lon: -7.18 }, { name: \"Saint-Quentin, France\", tz: 1, lat: 49.85, lon: -3.28 }, { name: \"Sarrebourg, France\", tz: 1, lat: 48.73, lon: -7.05 }, { name: \"Sarreguemines, France\", tz: 1, lat: 49.1, lon: -7.05 }, { name: \"Saverne, France\", tz: 1, lat: 48.73, lon: -7.37 }, { name: \"Sedan, France\", tz: 1, lat: 49.7, lon: -4.95 }, { name: \"Selestat, France\", tz: 1, lat: 48.27, lon: -7.45 }, { name: \"Tarbes, France\", tz: 1, lat: 43.23, lon: -0.08 }, { name: \"Thionville, France\", tz: 1, lat: 49.37, lon: -6.17 }, { name: \"Toul, France\", tz: 1, lat: 48.68, lon: -5.9 }, { name: \"Toulon, France\", tz: 1, lat: 43.12, lon: -5.93 }, { name: \"Valence, France\", tz: 1, lat: 44.93, lon: -4.9 }, { name: \"Valenciennes, France\", tz: 1, lat: 50.35, lon: -3.53 }, { name: \"Venissieux, France\", tz: 1, lat: 54.68, lon: -4.88 }, { name: \"Verdun, France\", tz: 1, lat: 49.17, lon: -5.38 }, { name: \"Vichy, France\", tz: 1, lat: 46.13, lon: -3.43 }, { name: \"Berdicev, Ukraine\", tz: 2, lat: 49.9, lon: -28.6 }, { name: \"Bershad, Ukraine\", tz: 2, lat: 48.37, lon: -29.53 }, { name: \"Chernigov, Ukraine\", tz: 2, lat: 50.83, lon: -24.13 }, { name: \"Czernowitz, Chernovtsy, Ukraine\", tz: 2, lat: 48.28, lon: -25.97 }, { name: \"Dnepropetrovsk, Ukraine\", tz: 2, lat: 48.45, lon: -35.03 }, { name: \"Donetsk, Ukraine\", tz: 2, lat: 48, lon: -37.78 }, { name: \"Charkow, Ukraine\", tz: 2, lat: 49.92, lon: -36.17 }, { name: \"Cherson, Ukraine\", tz: 2, lat: 46.65, lon: -32.6 }, { name: \"Korosten, Ukraine\", tz: 2, lat: 50.95, lon: -28.63 }, { name: \"Kremenchug, Ukraine\", tz: 2, lat: 49.07, lon: -33.42 }, { name: \"Lemberg, Lwow, Ukraine\", tz: 2, lat: 49.83, lon: -24.03 }, { name: \"Mukacevo, Ukraine\", tz: 2, lat: 48.45, lon: -22.72 }, { name: \"Nikolayev, Ukraine\", tz: 2, lat: 49.52, lon: -23.97 }, { name: \"Rachki, Ukraine\", tz: 2, lat: 49.5, lon: -29.9 }, { name: \"Simferopol, Ukraine\", tz: 2, lat: 44.95, lon: -34.1 }, { name: \"Slavuta, Ukraine\", tz: 2, lat: 50.3, lon: -26.87 }, { name: \"Zhitomir, Ukraine\", tz: 2, lat: 50.25, lon: -28.67 }, { name: \"Beregovoye, Ukraine\", tz: 2, lat: 44.9, lon: -33.6 }, { name: \"Tinton Falls, NJ\", tz: -5, lat: 40.28, lon: 74.1 }, { name: \"Warendorf\", tz: 1, lat: 51.95, lon: -7.98 }, { name: \"M\\xFCnster\", tz: 1, lat: 51.95, lon: -7.62 }, { name: \"Neu Fahrland\", tz: 1, lat: 52.45, lon: -13.05 }, { name: \"Charlottesville, Virginia\", tz: -5, lat: 38.03, lon: 78.48 }, { name: \"Hagenow\", tz: 1, lat: 53.43, lon: -11.18 }, { name: \"Verl\", tz: 1, lat: 51.88, lon: -8.52 }, { name: \"R\\xF6bel\", tz: 1, lat: 53.37, lon: -12.6 }, { name: \"Nordhausen\", tz: 1, lat: 51.5, lon: -10.78 }, { name: \"Aschaffenburg\", tz: 1, lat: 49.98, lon: -9.15 }, { name: \"Ahrweiler\", tz: 1, lat: 50.55, lon: -7.13 }, { name: \"Cedar Grove, NJ (1)\", tz: -5, lat: 40.85, lon: 74.23 }, { name: \"Cedar Grove, NJ (2)\", tz: -5, lat: 39.97, lon: 74.15 }, { name: \"Encinitas, CA\", tz: -8, lat: 33.03, lon: 117.28 }, { name: \"Calabasas, AZ\", tz: -7, lat: 31.47, lon: 110.97 }, { name: \"Calabasas, CA\", tz: -8, lat: 34.15, lon: 118.63 }, { name: \"Rottweil\", tz: 1, lat: 48.17, lon: -8.62 }];\n\n// src/Locations.ts\nvar Locations = locations_default.map((l) => new Location(l.name, l.heb, !!l.il, l.lat, l.lon, l.tz, l.el || 0, l.cl));\nLocations.sort(function(a, b) {\n return a.Name > b.Name ? 1 : b.Name > a.Name ? -1 : 0;\n});\nvar justNames = [];\nfor (let i = 0; i < Locations.length - 1; i++) {\n const l = Locations[i];\n justNames.push({\n name: l.Name.split(\",\", 1)[0].toLowerCase(),\n index: i\n });\n if (!!l.NameHebrew) {\n justNames.push({\n name: l.NameHebrew,\n index: i\n });\n }\n}\nfunction distancePointToPoint(point1, point2) {\n if (point1.latitude == point2.latitude && point1.longitude == point2.longitude) {\n return 0;\n } else {\n var radlat1 = Math.PI * point1.latitude / 180;\n var radlat2 = Math.PI * point2.latitude / 180;\n var theta = point1.longitude - point2.longitude;\n var radtheta = Math.PI * theta / 180;\n var dist = Math.sin(radlat1) * Math.sin(radlat2) + Math.cos(radlat1) * Math.cos(radlat2) * Math.cos(radtheta);\n if (dist > 1) {\n dist = 1;\n }\n dist = Math.acos(dist);\n dist = dist * 180 / Math.PI;\n dist = dist * 60 * 1.1515;\n dist = dist * 1.609344;\n return dist;\n }\n}\nfunction closestDistanceMatch(point) {\n let curr = { dist: 1e5 };\n for (let location of Locations) {\n const dist = distancePointToPoint(point, { latitude: location.Latitude, longitude: location.Longitude });\n if (dist < curr.dist) {\n curr = { dist, location };\n }\n }\n return curr.location;\n}\nfunction closestNameMatch(val) {\n let curr = { dist: 1e5 };\n for (let location of justNames) {\n const dist = (0, import_closest_match.distance)(val.toLowerCase(), location.name);\n if (dist < curr.dist) {\n curr = { dist, location };\n }\n }\n return curr.location ? Locations[curr.location.index] : void 0;\n}\nfunction findLocation(nameOrCoordinates) {\n if (typeof nameOrCoordinates === \"string\") {\n const exactNameMatch = Locations.find((l) => l.Name.toLowerCase() === nameOrCoordinates.toLowerCase() || l.NameHebrew === nameOrCoordinates);\n if (!!exactNameMatch) {\n return exactNameMatch;\n }\n const cityOnlyNameMatch = justNames.find((l) => l.name === nameOrCoordinates.toLowerCase());\n if (!!cityOnlyNameMatch) {\n return Locations[cityOnlyNameMatch.index];\n }\n return closestNameMatch(nameOrCoordinates.toLowerCase());\n } else {\n const exactCoordinateMatch = Locations.find((l) => l.Latitude === nameOrCoordinates.latitude && l.Longitude === nameOrCoordinates.longitude);\n if (!!exactCoordinateMatch) {\n return exactCoordinateMatch;\n }\n return closestDistanceMatch(nameOrCoordinates);\n }\n}\n\n// src/ZmanTypes.ts\nvar ZmanTypeIds = Object.freeze({\n ChatzosLayla: 0,\n Alos90: 1,\n Alos72: 2,\n TalisTefillin: 3,\n NetzAtElevation: 4,\n NetzMishor: 5,\n szksMga: 6,\n szksGra: 7,\n sztMga: 8,\n sztGra: 9,\n chatzosDay: 10,\n minGed: 11,\n minKet: 12,\n plag: 13,\n shkiaAtSeaLevel: 14,\n shkiaElevation: 15,\n tzais45: 16,\n tzais50: 17,\n tzais72: 18,\n rabbeinuTamZmanios: 19,\n rabbeinuTamZmaniosMga: 20,\n candleLighting: 21,\n SofZmanEatingChometz: 22,\n SofZmanBurnChometz: 23\n});\nvar ZmanTypes = [\n {\n id: ZmanTypeIds.ChatzosLayla,\n desc: \"\\u05D7\\u05E6\\u05D5\\u05EA \\u05D4\\u05DC\\u05D9\\u05DC\\u05D4\",\n eng: \"Chatzos - Midnight\",\n heb: \"\\u05D7\\u05E6\\u05D5\\u05EA \\u05D4\\u05DC\\u05D9\\u05DC\\u05D4\"\n },\n {\n id: ZmanTypeIds.Alos90,\n desc: \"\\u05E2\\u05DC\\u05D5\\u05EA \\u05D4\\u05E9\\u05D7\\u05E8 - 90 \\u05D3\\u05E7\\u05D5\\u05EA\",\n eng: \"Alos Hashachar - 90\",\n heb: \"\\u05E2\\u05DC\\u05D5\\u05EA \\u05D4\\u05E9\\u05D7\\u05E8 (90)\"\n },\n {\n id: ZmanTypeIds.Alos72,\n desc: \"\\u05E2\\u05DC\\u05D5\\u05EA \\u05D4\\u05E9\\u05D7\\u05E8 - 72 \\u05D3\\u05E7\\u05D5\\u05EA\",\n eng: \"Alos Hashachar - 72\",\n heb: \"\\u05E2\\u05DC\\u05D5\\u05EA \\u05D4\\u05E9\\u05D7\\u05E8 (72)\"\n },\n {\n id: ZmanTypeIds.TalisTefillin,\n desc: \"\\u05D6\\u05DE\\u05DF \\u05E2\\u05D8\\u05D9\\u05E4\\u05EA \\u05D8\\u05DC\\u05D9\\u05EA \\u05D5\\u05EA\\u05E4\\u05D9\\u05DC\\u05D9\\u05DF - 36 \\u05D3\\u05E7\\u05D5\\u05EA\",\n eng: \"Taliss and Tefillin\",\n heb: \"\\u05D8\\u05DC\\u05D9\\u05EA \\u05D5\\u05EA\\u05E4\\u05D9\\u05DC\\u05D9\\u05DF\"\n },\n {\n id: ZmanTypeIds.NetzAtElevation,\n desc: \"\\u05D4\\u05E0\\u05E5 \\u05D4\\u05D7\\u05DE\\u05D4 \\u05D1\\u05D2\\u05D5\\u05D1\\u05D4 \\u05D4\\u05DE\\u05D9\\u05E7\\u05D5\\u05DD\",\n eng: \"Sunrise at current elevation\",\n heb: \"\\u05D4\\u05E0\\u05E5 \\u05D4\\u05D7\\u05DE\\u05D4 - \\u05DE\\u05D2\\u05D5\\u05D1\\u05D4\"\n },\n {\n id: ZmanTypeIds.NetzMishor,\n desc: \"\\u05D4\\u05E0\\u05E5 \\u05D4\\u05D7\\u05DE\\u05D4 \\u05D1\\u05D2\\u05D5\\u05D1\\u05D4 \\u05E4\\u05E0\\u05D9 \\u05D4\\u05D9\\u05DD\",\n eng: \"Sunrise\",\n heb: \"\\u05D4\\u05E0\\u05E5 \\u05D4\\u05D7\\u05DE\\u05D4\"\n },\n {\n id: ZmanTypeIds.szksMga,\n desc: '\\u05E1\\u05D6\\u05E7\"\\u05E9 \\u05DE\\u05D2\"\\u05D0',\n eng: 'Zman Krias Shma - MG\"A',\n heb: '\\u05E1\\u05D6\\u05E7\"\\u05E9 \\u05DE\\u05D2\"\\u05D0'\n },\n {\n id: ZmanTypeIds.szksGra,\n desc: '\\u05E1\\u05D6\\u05E7\"\\u05E9 \\u05D4\\u05D2\\u05E8\"\\u05D0',\n eng: 'Zman Krias Shma - GR\"A',\n heb: '\\u05E1\\u05D6\\u05E7\"\\u05E9 \\u05D4\\u05D2\\u05E8\"\\u05D0'\n },\n {\n id: ZmanTypeIds.sztMga,\n desc: '\\u05E1\\u05D6\"\\u05EA \\u05DE\\u05D2\"\\u05D0',\n eng: 'Zman Tefilla - MG\"A',\n heb: '\\u05E1\\u05D6\"\\u05EA \\u05DE\\u05D2\"\\u05D0'\n },\n {\n id: ZmanTypeIds.sztGra,\n desc: '\\u05E1\\u05D6\"\\u05EA \\u05D4\\u05D2\\u05E8\"\\u05D0',\n eng: 'Zman Tefilla - GR\"A',\n heb: '\\u05E1\\u05D6\"\\u05EA \\u05D4\\u05D2\\u05E8\"\\u05D0'\n },\n {\n id: ZmanTypeIds.chatzosDay,\n desc: \"\\u05D7\\u05E6\\u05D5\\u05EA \\u05D4\\u05D9\\u05D5\\u05DD\",\n eng: \"Chatzos - Midday\",\n heb: \"\\u05D7\\u05E6\\u05D5\\u05EA \\u05D4\\u05D9\\u05D5\\u05DD\"\n },\n {\n id: ZmanTypeIds.minGed,\n desc: \"\\u05DE\\u05E0\\u05D7\\u05D4 \\u05D2\\u05D3\\u05D5\\u05DC\\u05D4\",\n eng: \"Mincha Gedola\",\n heb: \"\\u05DE\\u05E0\\u05D7\\u05D4 \\u05D2\\u05D3\\u05D5\\u05DC\\u05D4\"\n },\n {\n id: ZmanTypeIds.minKet,\n desc: \"\\u05DE\\u05E0\\u05D7\\u05D4 \\u05E7\\u05D8\\u05E0\\u05D4\",\n eng: \"Mincha Ketana\",\n heb: \"\\u05DE\\u05E0\\u05D7\\u05D4 \\u05E7\\u05D8\\u05E0\\u05D4\"\n },\n {\n id: ZmanTypeIds.plag,\n desc: \"\\u05E4\\u05DC\\u05D2 \\u05D4\\u05DE\\u05E0\\u05D7\\u05D4\",\n eng: \"Plag HaMincha\",\n heb: \"\\u05E4\\u05DC\\u05D2 \\u05D4\\u05DE\\u05E0\\u05D7\\u05D4\"\n },\n {\n id: ZmanTypeIds.shkiaAtSeaLevel,\n desc: \"\\u05E9\\u05E7\\u05D9\\u05E2\\u05EA \\u05D4\\u05D7\\u05DE\\u05D4 \\u05DE\\u05D2\\u05D5\\u05D1\\u05D4 \\u05E4\\u05E0\\u05D9 \\u05D4\\u05D9\\u05DD\",\n eng: \"Sunset at sea level\",\n heb: \"\\u05E9\\u05E7\\u05D9\\u05E2\\u05EA \\u05D4\\u05D7\\u05DE\\u05D4 - \\u05DE\\u05DE\\u05D9\\u05E9\\u05D5\\u05E8\"\n },\n {\n id: ZmanTypeIds.shkiaElevation,\n desc: \"\\u05E9\\u05E7\\u05D9\\u05E2\\u05EA \\u05D4\\u05D7\\u05DE\\u05D4 \\u05DE\\u05D2\\u05D5\\u05D1\\u05D4 \\u05D4\\u05DE\\u05D9\\u05E7\\u05D5\\u05DD\",\n eng: \"Sunset\",\n heb: \"\\u05E9\\u05E7\\u05D9\\u05E2\\u05EA \\u05D4\\u05D7\\u05DE\\u05D4\"\n },\n {\n id: ZmanTypeIds.tzais45,\n desc: \"45 \\u05D3\\u05E7\\u05D5\\u05EA \\u05D0\\u05D7\\u05E8\\u05D9 \\u05E9\\u05E7\\u05D9\\u05E2\\u05D4\",\n eng: \"Nightfall - 45\",\n heb: \"\\u05E6\\u05D0\\u05EA \\u05D4\\u05DB\\u05D5\\u05DB\\u05D1\\u05D9\\u05DD (45)\"\n },\n {\n id: ZmanTypeIds.tzais50,\n desc: \"50 \\u05D3\\u05E7\\u05D5\\u05EA \\u05D0\\u05D7\\u05E8\\u05D9 \\u05E9\\u05E7\\u05D9\\u05E2\\u05D4\",\n eng: \"Nightfall - 50\",\n heb: \"\\u05E6\\u05D0\\u05EA \\u05D4\\u05DB\\u05D5\\u05DB\\u05D1\\u05D9\\u05DD (50)\"\n },\n {\n id: ZmanTypeIds.tzais72,\n desc: \"72 \\u05D3\\u05E7\\u05D5\\u05EA \\u05D0\\u05D7\\u05E8\\u05D9 \\u05E9\\u05E7\\u05D9\\u05E2\\u05D4\",\n eng: \"Rabbeinu Tam\",\n heb: '\\u05E6\\u05D4\"\\u05DB \\u05E8\"\\u05EA - 72 \\u05D3\\u05E7\\u05D5\\u05EA'\n },\n {\n id: ZmanTypeIds.rabbeinuTamZmanios,\n desc: \"72 \\u05D3\\u05E7\\u05D5\\u05EA \\u05D6\\u05DE\\u05E0\\u05D9\\u05D5\\u05EA \\u05D0\\u05D7\\u05E8\\u05D9 \\u05E9\\u05E7\\u05D9\\u05E2\\u05D4\",\n eng: \"Rabbeinu Tam - Zmanios\",\n heb: '\\u05E6\\u05D4\"\\u05DB \\u05E8\"\\u05EA - \\u05D6\\u05DE\\u05E0\\u05D9\\u05D5\\u05EA'\n },\n {\n id: ZmanTypeIds.rabbeinuTamZmaniosMga,\n desc: '72 \\u05D3\\u05E7\\u05D5\\u05EA \\u05D6\\u05DE\\u05E0\\u05D9\\u05D5\\u05EA \\u05D0\\u05D7\\u05E8\\u05D9 \\u05E9\\u05E7\\u05D9\\u05E2\\u05D4 - \\u05DE\\u05D2\"\\u05D0',\n eng: 'Rabbeinu Tam - Zmanios MG\"A',\n heb: '\\u05E6\\u05D4\"\\u05DB \\u05E8\"\\u05EA - \\u05D6\\u05DE\\u05E0\\u05D9\\u05D5\\u05EA \\u05DE\\u05D2\"\\u05D0'\n },\n {\n id: ZmanTypeIds.candleLighting,\n desc: \"\\u05D6\\u05DE\\u05DF \\u05D4\\u05D3\\u05DC\\u05E7\\u05EA \\u05E0\\u05E8\\u05D5\\u05EA\",\n eng: \"Candle lighting time\",\n heb: \"\\u05D6\\u05DE\\u05DF \\u05D4\\u05D3\\u05DC\\u05E7\\u05EA \\u05E0\\u05E8\\u05D5\\u05EA\"\n },\n {\n id: ZmanTypeIds.SofZmanEatingChometz,\n desc: \"\\u05E1\\u05D5\\u05E3 \\u05D6\\u05DE\\u05DF \\u05D0\\u05DB\\u05D9\\u05DC\\u05EA \\u05D7\\u05DE\\u05E5\",\n eng: \"Stop eating Chometz\",\n heb: \"\\u05E1\\u05D5\\u05E3 \\u05D6\\u05DE\\u05DF \\u05D0\\u05DB\\u05D9\\u05DC\\u05EA \\u05D7\\u05DE\\u05E5\"\n },\n {\n id: ZmanTypeIds.SofZmanBurnChometz,\n desc: \"\\u05E1\\u05D5\\u05E3 \\u05D6\\u05DE\\u05DF \\u05D1\\u05D9\\u05E2\\u05D5\\u05E8 \\u05D7\\u05DE\\u05E5\",\n eng: \"Destroy Chometz\",\n heb: \"\\u05E1\\u05D5\\u05E3 \\u05D6\\u05DE\\u05DF \\u05D1\\u05D9\\u05E2\\u05D5\\u05E8 \\u05D7\\u05DE\\u05E5\"\n }\n];\nfunction getZmanType(idOrName) {\n return ZmanTypes.find((zt) => zt.id === idOrName || zt.eng === idOrName || zt.heb === idOrName || zt.desc === idOrName);\n}\n\n// src/JCal/Molad.ts\nvar Molad = class _Molad {\n /**\n * @param {Number} month\n * @param {Number} year\n * @returns {{jDate:jDate,time:Time,chalakim:number}}\n */\n static getMolad(month, year) {\n let totalMonths, partsElapsed, hoursElapsed, parts, monthAdj = month - 7;\n if (monthAdj < 0) {\n monthAdj += jDate.monthsJYear(year);\n }\n totalMonths = Utils.toInt(monthAdj + 235 * Utils.toInt((year - 1) / 19) + 12 * ((year - 1) % 19) + ((year - 1) % 19 * 7 + 1) / 19);\n partsElapsed = 204 + 793 * (totalMonths % 1080);\n hoursElapsed = 5 + 12 * totalMonths + 793 * Utils.toInt(totalMonths / 1080) + Utils.toInt(partsElapsed / 1080) - 6;\n parts = Utils.toInt(partsElapsed % 1080 + 1080 * (hoursElapsed % 24));\n return {\n jDate: new jDate(1 + 29 * Utils.toInt(totalMonths) + Utils.toInt(hoursElapsed / 24)),\n time: { hour: Utils.toInt(hoursElapsed) % 24, minute: Utils.toInt(parts % 1080 / 18), second: 0 },\n chalakim: parts % 18\n };\n }\n /**\n * Returns the time of the molad as a string in the format: Monday Night, 8:33 PM and 12 Chalakim\n * The molad is always in Jerusalem so we use the Jerusalem sunset times\n * to determine whether to display \"Night\" or \"Motzai Shabbos\" etc. (check this...)\n * @param {Number} year\n * @param {Number} month\n */\n static getString(year, month) {\n const molad = _Molad.getMolad(month, year), zmanim = molad.jDate.getSunriseSunset(Location.getJerusalem()), isNight = Utils.isTimeAfter(zmanim.sunset, molad.time), dow = molad.jDate.getDayOfWeek();\n let str = \"\";\n if (!zmanim.sunset || isNaN(zmanim.sunset.hour)) {\n str += DaysOfWeekEng[dow];\n } else if (dow === 6 && isNight) {\n str += \"Motzai Shabbos,\";\n } else if (dow === 5 && isNight) {\n str += \"Shabbos Night,\";\n } else {\n str += DaysOfWeekEng[dow] + (isNight ? \" Night\" : \"\");\n }\n str += \" \" + Utils.getTimeString(molad.time) + \" and \" + molad.chalakim.toString() + \" Chalakim\";\n return str;\n }\n /**\n * Returns the time of the molad as a string in the format: ליל שני 20:33 12 חלקים\n * The molad is always in Jerusalem so we use the Jerusalem sunset times\n * to determine whether to display \"ליל/יום\" or \"מוצאי שב\"ק\" etc.\n * @param {Number} year\n * @param {Number} month\n */\n static getStringHeb(year, month) {\n const molad = _Molad.getMolad(month, year), zmanim = molad.jDate.getSunriseSunset(Location.getJerusalem()), isNight = Utils.isTimeAfter(zmanim.sunset, molad.time) && Utils.isTimeAfter(molad.time, zmanim.sunrise), dow = molad.jDate.getDayOfWeek();\n let str = \"\";\n if (dow === 6) {\n str += isNight ? '\\u05DE\\u05D5\\u05E6\\u05D0\\u05D9 \\u05E9\\u05D1\"\\u05E7' : '\\u05D9\\u05D5\\u05DD \\u05E9\\u05D1\"\\u05E7';\n } else if (dow === 5) {\n str += isNight ? '\\u05DC\\u05D9\\u05DC \\u05E9\\u05D1\"\\u05E7' : '\\u05E2\\u05E8\\u05D1 \\u05E9\\u05D1\"\\u05E7';\n } else {\n str += (isNight ? \"\\u05DC\\u05D9\\u05DC\" : \"\\u05D9\\u05D5\\u05DD\") + DaysOfWeekHeb[dow].replace(\"\\u05D9\\u05D5\\u05DD\", \"\");\n }\n str += \" \" + Utils.getTimeString(molad.time, 1, true) + \" \" + molad.chalakim.toString() + \" \\u05D7\\u05DC\\u05E7\\u05D9\\u05DD\";\n return str;\n }\n};\n\n// src/JCal/ZmanimUtils.ts\nvar WhichDaysFlags = Object.freeze({\n SUNDAY: 1,\n MONDAY: 2,\n TUESDAY: 4,\n WEDNESDAY: 8,\n THURSDAY: 16,\n FRIDAY: 32,\n SHABBOS: 64,\n YOMTOV: 128\n});\nvar _ZmanimUtils = class _ZmanimUtils {\n /**\n * Gets the zmanim for all the types in the given list.\n * @param {[ZmanToShow]} zmanTypes An array of ZmanTypes to get the zman for.\n * @param {Date} date The secular date to get the zmanim for\n * @param {jDate} jdate The jewish date to get the zmanim for\n * @param {Location} location The location for which to get the zmanim\n * @returns{[{zmanType:{id:number,offset:?number,desc:string,eng:string,heb:string },time:Time}]}\n */\n static getZmanTimes(zmanTypes, date, jdate, location) {\n const mem = _ZmanimUtils.zmanTimesCache.find(\n (z) => Utils.isSameSdate(z.date, date) && z.location.Name === location.Name\n ), zmanTimes = [], whichDay = _ZmanimUtils.getWhichDays(date, jdate, location);\n let sunrise, sunset, suntimesMishor, sunriseMishor, sunsetMishor, mishorNeg90, chatzos, shaaZmanis, shaaZmanisMga;\n if (mem) {\n sunrise = mem.sunrise;\n sunset = mem.sunset;\n suntimesMishor = mem.suntimesMishor;\n sunriseMishor = mem.sunriseMishor;\n sunsetMishor = mem.sunsetMishor;\n mishorNeg90 = mem.mishorNeg90;\n chatzos = mem.chatzos;\n shaaZmanis = mem.shaaZmanis;\n shaaZmanisMga = mem.shaaZmanisMga;\n } else {\n const suntimes = Zmanim.getSunTimes(date, location, true);\n sunrise = suntimes.sunrise;\n sunset = suntimes.sunset;\n suntimesMishor = Zmanim.getSunTimes(date, location, false);\n sunriseMishor = suntimesMishor.sunrise;\n sunsetMishor = suntimesMishor.sunset;\n mishorNeg90 = Utils.addMinutes(sunriseMishor, -90);\n chatzos = sunriseMishor && sunsetMishor && Zmanim.getChatzosFromSuntimes(suntimesMishor);\n shaaZmanis = sunriseMishor && sunsetMishor && Zmanim.getShaaZmanisFromSunTimes(suntimesMishor);\n shaaZmanisMga = sunriseMishor && sunsetMishor && Zmanim.getShaaZmanisMga(suntimesMishor, true);\n _ZmanimUtils.zmanTimesCache.push({\n date,\n location,\n sunrise,\n sunset,\n suntimesMishor,\n sunriseMishor,\n sunsetMishor,\n mishorNeg90,\n chatzos,\n shaaZmanis,\n shaaZmanisMga\n });\n }\n for (let zmanType of zmanTypes) {\n const offset = zmanType.offset && (!zmanType.whichDaysFlags || zmanType.whichDaysFlags & whichDay) ? zmanType.offset : 0;\n switch (zmanType.id) {\n case ZmanTypeIds.ChatzosLayla:\n zmanTimes.push({\n zmanType,\n time: Utils.addMinutes(chatzos, 720 + offset)\n });\n break;\n case ZmanTypeIds.Alos90:\n zmanTimes.push({\n zmanType,\n time: offset ? Utils.addMinutes(mishorNeg90, offset) : mishorNeg90\n });\n break;\n case ZmanTypeIds.Alos72:\n zmanTimes.push({\n zmanType,\n time: Utils.addMinutes(sunriseMishor, -72 + offset)\n });\n break;\n case ZmanTypeIds.TalisTefillin:\n zmanTimes.push({\n zmanType,\n time: Utils.addMinutes(sunriseMishor, -36 + offset)\n });\n break;\n case ZmanTypeIds.NetzAtElevation:\n zmanTimes.push({\n zmanType,\n time: offset ? Utils.addMinutes(sunrise, offset) : sunrise\n });\n break;\n case ZmanTypeIds.NetzMishor:\n zmanTimes.push({\n zmanType,\n time: offset ? Utils.addMinutes(sunriseMishor, offset) : sunriseMishor\n });\n break;\n case ZmanTypeIds.szksMga:\n if (shaaZmanisMga)\n zmanTimes.push({\n zmanType,\n time: Utils.addMinutes(\n mishorNeg90,\n Math.floor(shaaZmanisMga * 3) + offset\n )\n });\n break;\n case ZmanTypeIds.szksGra:\n if (shaaZmanis)\n zmanTimes.push({\n zmanType,\n time: Utils.addMinutes(\n sunriseMishor,\n Math.floor(shaaZmanis * 3) + offset\n )\n });\n break;\n case ZmanTypeIds.sztMga:\n if (shaaZmanisMga)\n zmanTimes.push({\n zmanType,\n time: Utils.addMinutes(\n mishorNeg90,\n Math.floor(shaaZmanisMga * 4) + offset\n )\n });\n break;\n case ZmanTypeIds.sztGra:\n if (shaaZmanis)\n zmanTimes.push({\n zmanType,\n time: Utils.addMinutes(\n sunriseMishor,\n Math.floor(shaaZmanis * 4) + offset\n )\n });\n break;\n case ZmanTypeIds.chatzosDay:\n zmanTimes.push({\n zmanType,\n time: offset ? Utils.addMinutes(chatzos, offset) : chatzos\n });\n break;\n case ZmanTypeIds.minGed:\n if (shaaZmanis)\n zmanTimes.push({\n zmanType,\n time: Utils.addMinutes(\n chatzos,\n shaaZmanis * 0.5 + offset\n )\n });\n break;\n case ZmanTypeIds.minKet:\n if (shaaZmanis)\n zmanTimes.push({\n zmanType,\n time: Utils.addMinutes(\n sunriseMishor,\n shaaZmanis * 9.5 + offset\n )\n });\n break;\n case ZmanTypeIds.plag:\n if (shaaZmanis)\n zmanTimes.push({\n zmanType,\n time: Utils.addMinutes(\n sunriseMishor,\n shaaZmanis * 10.75 + offset\n )\n });\n break;\n case ZmanTypeIds.shkiaAtSeaLevel:\n zmanTimes.push({\n zmanType,\n time: offset ? Utils.addMinutes(sunsetMishor, offset) : sunsetMishor\n });\n break;\n case ZmanTypeIds.shkiaElevation:\n zmanTimes.push({\n zmanType,\n time: offset ? Utils.addMinutes(sunset, offset) : sunset\n });\n break;\n case ZmanTypeIds.tzais45:\n zmanTimes.push({\n zmanType,\n time: Utils.addMinutes(sunset, 45 + offset)\n });\n break;\n case ZmanTypeIds.tzais50:\n zmanTimes.push({\n zmanType,\n time: Utils.addMinutes(sunset, 50 + offset)\n });\n break;\n case ZmanTypeIds.tzais72:\n zmanTimes.push({\n zmanType,\n time: Utils.addMinutes(sunset, 72 + offset)\n });\n break;\n case ZmanTypeIds.rabbeinuTamZmanios:\n if (shaaZmanis)\n zmanTimes.push({\n zmanType,\n time: Utils.addMinutes(\n sunset,\n shaaZmanis * 1.2 + offset\n )\n });\n break;\n case ZmanTypeIds.rabbeinuTamZmaniosMga:\n if (shaaZmanisMga)\n zmanTimes.push({\n zmanType,\n time: Utils.addMinutes(\n sunset,\n shaaZmanisMga * 1.2 + offset\n )\n });\n break;\n case ZmanTypeIds.candleLighting:\n if (sunset && jdate.hasCandleLighting()) {\n zmanTimes.push({\n zmanType,\n time: Utils.addMinutes(\n Zmanim.getCandleLightingFromSunset(\n sunset,\n location\n ),\n offset\n )\n });\n }\n break;\n case ZmanTypeIds.SofZmanEatingChometz:\n if (shaaZmanisMga && jdate.Month === 1 && jdate.Day === 14 && Utils.isTimeAfter(sunrise, Utils.timeFromDate(date))) {\n zmanTimes.push({\n zmanType,\n time: Utils.addMinutes(\n sunrise,\n -90 + offset + shaaZmanisMga * 4\n )\n });\n }\n break;\n case ZmanTypeIds.SofZmanBurnChometz:\n if (shaaZmanisMga && jdate.Month === 1 && (jdate.Day === 14 || jdate.DayOfWeek === DaysOfWeek.FRIDAY && jdate.Day === 13) && Utils.isTimeAfter(sunrise, Utils.timeFromDate(date))) {\n zmanTimes.push({\n zmanType,\n time: Utils.addMinutes(\n sunrise,\n -90 + offset + shaaZmanisMga * 5\n )\n });\n }\n break;\n }\n }\n return zmanTimes;\n }\n /**\n * Get the WhichDaysFlags for the given secular date\n * @param {Date} date\n * @param {jDate} jdate\n * @param {Location} location\n */\n static getWhichDays(date, jdate, location) {\n if (jdate.isYomTov(!!location.Israel)) {\n return WhichDaysFlags.YOMTOV;\n }\n switch (date.getDay()) {\n case DaysOfWeek.SUNDAY:\n return WhichDaysFlags.SUNDAY;\n case DaysOfWeek.MONDAY:\n return WhichDaysFlags.MONDAY;\n case DaysOfWeek.TUESDAY:\n return WhichDaysFlags.TUESDAY;\n case DaysOfWeek.WEDNESDAY:\n return WhichDaysFlags.WEDNESDAY;\n case DaysOfWeek.THURSDAY:\n return WhichDaysFlags.THURSDAY;\n case DaysOfWeek.FRIDAY:\n return WhichDaysFlags.FRIDAY;\n case DaysOfWeek.SHABBOS:\n return WhichDaysFlags.SHABBOS;\n }\n return 0;\n }\n /**\n * Returns the zmanim necessary for showing basic shul notifications: chatzosHayom, chatzosHalayla, alos\n * @param {jDate|Date} date\n * @param {Location} location\n * @returns {{chatzosHayom:Time, chatzosHalayla:Time, alos:Time, shkia:Time }}\n */\n static getBasicShulZmanim(date, location) {\n const { sdate, jdate } = Utils.bothDates(date);\n const zmanim = _ZmanimUtils.getZmanTimes(\n [\n getZmanType(ZmanTypeIds.chatzosDay),\n //Chatzos hayom\n getZmanType(ZmanTypeIds.Alos90),\n //alos90\n getZmanType(ZmanTypeIds.shkiaElevation),\n //shkiaElevation,\n getZmanType(ZmanTypeIds.candleLighting)\n //candleLighting,\n ],\n sdate,\n jdate,\n location\n );\n return {\n chatzosHayom: zmanim[0].time,\n chatzosHalayla: Utils.addMinutes(zmanim[0].time, 720),\n alos: zmanim[1].time,\n shkia: zmanim[2].time\n };\n }\n /**\n * Returns all the zmanim for the given day \n * @param {Date|jDate} date\n * @param {Location} location\n * @returns {{zmanType:ZmanToShow, time?:Time }[]}\n */\n static getAllZmanim(date, location) {\n const { sdate, jdate } = Utils.bothDates(date);\n return _ZmanimUtils.getZmanTimes(ZmanTypes, sdate, jdate, location);\n }\n};\n_ZmanimUtils.zmanTimesCache = [];\nvar ZmanimUtils = _ZmanimUtils;\n\n// src/Notifications.ts\nvar dayNotes = [];\nvar tefillahNotes = [];\nvar showEnglish = false;\nvar dayInfo;\nvar showGaonShirShelYom = true;\nvar israel = true;\nfunction getNotifications(date, time, location, english, showGaonShir, showDafYomi) {\n const { sdate, jdate } = Utils.bothDates(date);\n dayNotes.length = 0;\n tefillahNotes.length = 0;\n const month = jdate.Month, day = jdate.Day, dow = jdate.DayOfWeek, { chatzosHayom, chatzosHalayla, alos, shkia } = ZmanimUtils.getBasicShulZmanim(date, location), isAfterChatzosHayom = Utils.isTimeAfter(chatzosHayom, time), isAfterChatzosHalayla = typeof chatzosHalayla !== \"undefined\" && (Utils.isTimeAfter(chatzosHalayla, time) || chatzosHalayla.hour > 12 && time.hour < 12), isAfterAlos = Utils.isTimeAfter(alos, time), isAfterShkia = Utils.isTimeAfter(shkia, time), isDaytime = isAfterAlos && !isAfterShkia, isNightTime = !isDaytime, isNotBeinHasmashos = !isAfterShkia || Utils.isTimeAfter(Utils.addMinutes(shkia, 18), time), isMorning = isDaytime && !isAfterChatzosHayom, isAfternoon = isDaytime && isAfterChatzosHayom, isYomTov = jdate.isYomTovOrCholHamoed(location.Israel), isLeapYear = jDate.isJdLeapY(jdate.Year), noTachnun = isAfternoon && (dow === DaysOfWeek.FRIDAY || day === 29);\n dayInfo = {\n jdate,\n sdate,\n month,\n day,\n dow,\n isAfterChatzosHayom,\n isAfterChatzosHalayla,\n isAfterAlos,\n isAfterShkia,\n isDaytime,\n isNightTime,\n isMorning,\n isAfternoon,\n isYomTov,\n isLeapYear,\n noTachnun,\n location\n };\n showEnglish = english;\n israel = location.Israel;\n showGaonShirShelYom = typeof showGaonShir === \"undefined\" ? israel : !!showGaonShir;\n if (dow === DaysOfWeek.SHABBOS) {\n getShabbosNotifications();\n } else {\n getWeekDayNotifications();\n }\n getAroundTheYearNotifications();\n if (dayInfo.noTachnun && isDaytime && !isYomTov) {\n if (dow !== DaysOfWeek.SHABBOS) {\n addTefillahNote(\"No Tachnun\", '\\u05D0\"\\u05D0 \\u05EA\\u05D7\\u05E0\\u05D5\\u05DF');\n } else if (isAfternoon) {\n addTefillahNote(\"No Tzidkascha\", '\\u05D0\"\\u05D0 \\u05E6\\u05D3\\u05E7\\u05EA\\u05DA');\n } else if (!(month === JewishMonthsNames.NISSAN && day > 21 || month === JewishMonthsNames.IYAR || month === JewishMonthsNames.SIVAN && day < 6)) {\n addTefillahNote(\"No Av Harachamim\", '\\u05D0\"\\u05D0 \\u05D0\\u05D1 \\u05D4\\u05E8\\u05D7\\u05DE\\u05D9\\u05DD');\n }\n }\n if (showDafYomi !== false) {\n addDayNote(jdate.getDafYomi(), jdate.getDafyomiHeb());\n }\n if (isNotBeinHasmashos && (month === JewishMonthsNames.NISSAN && day > 15 || month === JewishMonthsNames.IYAR || month === JewishMonthsNames.SIVAN && day < 6)) {\n const dayOfSefirah = jdate.getDayOfOmer();\n if (dayOfSefirah > 0) {\n addTefillahNote(Utils.getOmerNusach(dayOfSefirah, \"ashkenaz\"));\n }\n }\n return {\n dayNotes: [...new Set(dayNotes)],\n tefillahNotes: [...new Set(tefillahNotes)]\n };\n}\nfunction getShabbosNotifications() {\n const { month, day, isLeapYear, isMorning, isYomTov, jdate, isDaytime, isAfternoon } = dayInfo;\n if (month === JewishMonthsNames.NISSAN && day > 7 && day < 15) {\n addDayNote(\"Shabbos Hagadol\", \"\\u05E9\\u05D1\\u05EA \\u05D4\\u05D2\\u05D3\\u05D5\\u05DC\");\n } else if (month === JewishMonthsNames.TISHREI && day > 2 && day < 10) {\n addDayNote(\"Shabbos Shuva\", \"\\u05E9\\u05D1\\u05EA \\u05E9\\u05D5\\u05D1\\u05D4\");\n } else if (month === JewishMonthsNames.AV && day > 2 && day < 10) {\n addDayNote(\"Shabbos Chazon\", \"\\u05E9\\u05D1\\u05EA \\u05D7\\u05D6\\u05D5\\u05DF\");\n } else if (month === (isLeapYear ? JewishMonthsNames.ADAR : JewishMonthsNames.SHVAT) && day > 24 || month === (isLeapYear ? JewishMonthsNames.ADAR_SHEINI : JewishMonthsNames.ADAR) && day === 1) {\n addDayNote(\"Parshas Shkalim\", \"\\u05E4\\u05E8\\u05E9\\u05EA \\u05E9\\u05E7\\u05DC\\u05D9\\u05DD\");\n } else if (month === (isLeapYear ? JewishMonthsNames.ADAR_SHEINI : JewishMonthsNames.ADAR) && day > 7 && day < 14) {\n addDayNote(\"Parshas Zachor\", \"\\u05E4\\u05E8\\u05E9\\u05EA \\u05D6\\u05DB\\u05D5\\u05E8\");\n } else if (month === (isLeapYear ? JewishMonthsNames.ADAR_SHEINI : JewishMonthsNames.ADAR) && day > 16 && day < 24) {\n addDayNote(\"Parshas Parah\", \"\\u05E4\\u05E8\\u05E9\\u05EA \\u05E4\\u05E8\\u05D4\");\n } else if (month === (isLeapYear ? JewishMonthsNames.ADAR_SHEINI : JewishMonthsNames.ADAR) && day > 23 && day < 30 || month === JewishMonthsNames.NISSAN && day === 1) {\n addDayNote(\"Parshas Hachodesh\", \"\\u05E4\\u05E8\\u05E9\\u05EA \\u05D4\\u05D7\\u05D5\\u05D3\\u05E9\");\n }\n if (isMorning && !isYomTov) {\n const sedra = jdate.getSedra(israel);\n if (sedra.sedras.length > 0) {\n addTefillahNote(\n `Kriyas Hatorah Parshas ${sedra.toString()}`,\n `\\u05E7\\u05D4\"\\u05EA \\u05E4\\u05E8\\u05E9\\u05EA ${sedra.toStringHeb()}`\n );\n }\n if (month !== JewishMonthsNames.ELLUL && day > 22 && day < 30) {\n const nextMonth = jdate.addMonths(1);\n addTefillahNote(\n \"The molad will be \" + Molad.getString(nextMonth.Year, nextMonth.Month),\n \"\\u05D4\\u05DE\\u05D5\\u05DC\\u05D3 \\u05D9\\u05D4\\u05D9\\u05D4 \\u05D1\" + Molad.getStringHeb(nextMonth.Year, nextMonth.Month)\n );\n addTefillahNote(\"Bircas Hachodesh\", \"\\u05DE\\u05D1\\u05E8\\u05DB\\u05D9\\u05DD \\u05D4\\u05D7\\u05D5\\u05D3\\u05E9\");\n if (month !== JewishMonthsNames.NISSAN && month !== JewishMonthsNames.IYAR) {\n addTefillahNote(\"No Av Harachamim\", '\\u05D0\"\\u05D0 \\u05D0\\u05D1 \\u05D4\\u05E8\\u05D7\\u05DE\\u05D9\\u05DD');\n }\n }\n }\n if (month !== JewishMonthsNames.TISHREI && (day === 1 || day === 30)) {\n addDayNote(\"Rosh Chodesh\", \"\\u05E8\\u05D0\\u05E9 \\u05D7\\u05D5\\u05D3\\u05E9\");\n addTefillahNote(\"Ya`aleh Viyavo\", \"\\u05D9\\u05E2\\u05DC\\u05D4 \\u05D5\\u05D9\\u05D1\\u05D0\");\n if (showGaonShirShelYom && isDaytime) {\n addTefillahNote(\"Barchi Nafshi\", '\\u05E9\\u05D9\\u05E8 \\u05E9\\u05DC \\u05D9\\u05D5\\u05DD - \\u05E7\\u05D9\"\\u05D3 - \\u05D1\\u05E8\\u05DB\\u05D9 \\u05E0\\u05E4\\u05E9\\u05D9');\n }\n if (isDaytime && month !== JewishMonthsNames.TEVES && !(month === JewishMonthsNames.KISLEV && day === 30)) {\n addTefillahNote(\"Chatzi Hallel\", \"\\u05D7\\u05E6\\u05D9 \\u05D4\\u05DC\\u05DC\");\n }\n addTefillahNote(\"No Av Harachamim\", '\\u05D0\"\\u05D0 \\u05D0\\u05D1 \\u05D4\\u05E8\\u05D7\\u05DE\\u05D9\\u05DD');\n } else if (isYomTov) {\n addTefillahNote(\"No Av Harachamim\", '\\u05D0\"\\u05D0 \\u05D0\\u05D1 \\u05D4\\u05E8\\u05D7\\u05DE\\u05D9\\u05DD');\n if (showGaonShirShelYom && isDaytime) {\n addTefillahNote(\"\\u05E9\\u05D9\\u05E8 \\u05E9\\u05DC \\u05D9\\u05D5\\u05DD - \\u05DE\\u05D6\\u05DE\\u05D5\\u05E8 \\u05E9\\u05D9\\u05E8 \\u05DC\\u05D9\\u05D5\\u05DD \\u05D4\\u05E9\\u05D1\\u05EA\");\n }\n }\n if (isAfternoon && !(month === JewishMonthsNames.TISHREI && day === 10)) {\n const sedra = jdate.addDays(1).getSedra(israel);\n addTefillahNote(\n \"Kriyas Hatorah Mincha Parshas \" + sedra.sedras[0].eng,\n '\\u05E7\\u05D4\"\\u05EA \\u05D1\\u05DE\\u05E0\\u05D7\\u05D4 \\u05E4\\u05E8\\u05E9\\u05EA ' + sedra.sedras[0].heb\n );\n }\n if (isAfternoon && (month === JewishMonthsNames.NISSAN && day > 21 || month <= JewishMonthsNames.ELLUL && !(month === JewishMonthsNames.AV && [8, 9].includes(day)))) {\n const prakim = PirkeiAvos.getPrakim(jdate, israel);\n if (prakim.length > 0) {\n addDayNote(\n \"Pirkei Avos - \" + prakim.map((s) => `Perek ${Utils.toJewishNumber(s)}`).join(\" and \"),\n \"\\u05E4\\u05E8\\u05E7\\u05D9 \\u05D0\\u05D1\\u05D5\\u05EA - \" + prakim.map((s) => `\\u05E4\\u05E8\\u05E7 ${Utils.toJewishNumber(s)}`).join(\" \\u05D5\")\n );\n }\n }\n}\nfunction getWeekDayNotifications() {\n const {\n isNightTime,\n dow,\n isYomTov,\n month,\n day,\n isMorning,\n jdate,\n location,\n isDaytime,\n isAfternoon\n } = dayInfo;\n if (isNightTime && dow === DaysOfWeek.SUNDAY) {\n addTefillahNote(\n month === JewishMonthsNames.NISSAN && day === 15 || month === JewishMonthsNames.SIVAN && day === 6 ? \"\\u05D5\\u05EA\\u05D5\\u05D3\\u05D9\\u05E2\\u05D9\\u05E0\\u05D5\" : \"\\u05D0\\u05EA\\u05D4 \\u05D7\\u05D5\\u05E0\\u05E0\\u05EA\\u05E0\\u05D5\"\n );\n if (month === JewishMonthsNames.ELLUL && day > 22 || month === JewishMonthsNames.TISHREI && day > 4 && day < 22 || month === JewishMonthsNames.NISSAN && day > 8 && day < 15 || month === JewishMonthsNames.SIVAN && day < 6) {\n addTefillahNote(\"No Vihi Noam\", '\\u05D0\"\\u05D0 \\u05D5\\u05D9\\u05D4\\u05D9 \\u05E0\\u05D5\\u05E2\\u05DD');\n }\n } else if (isNightTime && (month === JewishMonthsNames.NISSAN && (day === 16 || day === 22) || month === JewishMonthsNames.SIVAN && day === 7 || month === JewishMonthsNames.TISHREI && [3, 11, 16, 23].includes(day))) {\n addTefillahNote(\"Ata Chonantanu\", \"\\u05D0\\u05EA\\u05D4 \\u05D7\\u05D5\\u05E0\\u05E0\\u05EA\\u05E0\\u05D5\");\n }\n if (isMorning && !isYomTov && (dow === DaysOfWeek.MONDAY || dow === DaysOfWeek.THURSDAY) && !hasOwnKriyasHatorah(jdate, location)) {\n const sedra = jdate.getSedra(israel);\n if (sedra.sedras.length > 0) {\n addTefillahNote(\n `Kriyas Hatorah Parshas ${sedra.sedras[0].eng}`,\n `\\u05E7\\u05D4\"\\u05EA \\u05E4\\u05E8\\u05E9\\u05EA ${sedra.sedras[0].heb}`\n );\n }\n }\n if (month !== JewishMonthsNames.TISHREI && day === 1 || day === 30) {\n dayInfo.noTachnun = true;\n addDayNote(\"Rosh Chodesh\", \"\\u05E8\\u05D0\\u05E9 \\u05D7\\u05D5\\u05D3\\u05E9\");\n addTefillahNote(\"Ya`aleh Viyavo\", \"\\u05D9\\u05E2\\u05DC\\u05D4 \\u05D5\\u05D9\\u05D1\\u05D0\");\n if (showGaonShirShelYom && isDaytime) {\n addTefillahNote(\"Barchi Nafshi\", '\\u05E9\\u05D9\\u05E8 \\u05E9\\u05DC \\u05D9\\u05D5\\u05DD - \\u05E7\\u05D9\"\\u05D3 - \\u05D1\\u05E8\\u05DB\\u05D9 \\u05E0\\u05E4\\u05E9\\u05D9');\n }\n if (isDaytime && month !== JewishMonthsNames.TEVES && !(month === JewishMonthsNames.KISLEV && day === 30)) {\n addTefillahNote(\"Chatzi Hallel\", \"\\u05D7\\u05E6\\u05D9 \\u05D4\\u05DC\\u05DC\");\n if (isMorning && dow !== DaysOfWeek.SHABBOS) {\n noLaminatzeach();\n }\n }\n } else if (month !== JewishMonthsNames.ELLUL && (dow < DaysOfWeek.FRIDAY && day === 29 || dow === DaysOfWeek.THURSDAY && day === 28) && isAfternoon) {\n addTefillahNote(\"Yom Kippur Kattan\", '\\u05D9\\u05D5\"\\u05DB \\u05E7\\u05D8\\u05DF');\n }\n if (jdate.hasEiruvTavshilin(israel)) {\n addDayNote(\"Eruv Tavshilin\", \"\\u05E2\\u05D9\\u05E8\\u05D5\\u05D1 \\u05EA\\u05D1\\u05E9\\u05D9\\u05DC\\u05D9\\u05DF\");\n }\n}\nfunction getAroundTheYearNotifications() {\n const {\n month,\n day,\n isNightTime,\n dow,\n isAfternoon,\n isDaytime,\n isMorning,\n isAfterChatzosHalayla,\n jdate,\n sdate,\n isLeapYear,\n location\n } = dayInfo;\n let showVsainTalUmatarInChul = false;\n if (!location.Israel && sdate.getMonth() === 11 && sdate.getDate() > 4) {\n const startVsainTalUmatar = jdate.Year % 4 === 0 ? 6 : 5;\n showVsainTalUmatarInChul = sdate.getDate() >= startVsainTalUmatar && sdate.getDate() <= startVsainTalUmatar + 14;\n }\n switch (month) {\n case JewishMonthsNames.NISSAN:\n dayInfo.noTachnun = true;\n if (day > 15) {\n addTefillahNote(\"Morid Hatal\", \"\\u05DE\\u05D5\\u05E8\\u05D9\\u05D3 \\u05D4\\u05D8\\u05DC\");\n }\n if (dow !== DaysOfWeek.SHABBOS && day > 15 && day !== 21) {\n addTefillahNote(\"Vesain Bracha\", \"\\u05D5\\u05EA\\u05DF \\u05D1\\u05E8\\u05DB\\u05D4\");\n }\n if (isMorning && dow !== DaysOfWeek.SHABBOS && [14, 16, 17, 18, 19, 20].includes(day)) {\n addTefillahNote(\"No Mizmor Lesodah\", '\\u05D0\"\\u05D0 \\u05DE\\u05D6\\u05DE\\u05D5\\u05E8 \\u05DC\\u05EA\\u05D5\\u05D3\\u05D4');\n if (dow !== DaysOfWeek.SHABBOS) {\n noLaminatzeach();\n }\n }\n if (day === 15) {\n addDayNote(\"First Day of Pesach\", '\\u05D9\\u05D5\"\\u05D8 \\u05E8\\u05D0\\u05E9\\u05D5\\u05DF \\u05E9\\u05DC \\u05E4\\u05E1\\u05D7');\n addTefillahNote(\"Full Hallel\", \"\\u05D4\\u05DC\\u05DC \\u05D4\\u05E9\\u05DC\\u05DD\");\n if (isAfternoon) {\n addTefillahNote(\"Morid Hatal\", \"\\u05DE\\u05D5\\u05E8\\u05D9\\u05D3 \\u05D4\\u05D8\\u05DC\");\n }\n if (showGaonShirShelYom && isDaytime && dow !== DaysOfWeek.SHABBOS) {\n addTefillahNote('\\u05E9\\u05D9\\u05E8 \\u05E9\\u05DC \\u05D9\\u05D5\\u05DD - \\u05E7\\u05D9\"\\u05D3 - \\u05D1\\u05E6\\u05D0\\u05EA \\u05D9\\u05E9\\u05E8\\u05D0\\u05DC');\n }\n addTefillahNote(\"Ya`aleh V`yavo\", \"\\u05D9\\u05E2\\u05DC\\u05D4 \\u05D5\\u05D9\\u05D1\\u05D0\");\n } else if (day === 16 && !israel) {\n addDayNote(\"Second Day of Pesach\", '\\u05D9\\u05D5\"\\u05D8 \\u05E9\\u05E0\\u05D9 \\u05E9\\u05DC \\u05E4\\u05E1\\u05D7');\n addTefillahNote(\"Full Hallel\", \"\\u05D4\\u05DC\\u05DC \\u05D4\\u05E9\\u05DC\\u05DD\");\n addTefillahNote(\"Morid Hatal\", \"\\u05DE\\u05D5\\u05E8\\u05D9\\u05D3 \\u05D4\\u05D8\\u05DC\");\n if (showGaonShirShelYom && isDaytime && dow !== DaysOfWeek.SHABBOS) {\n addTefillahNote('\\u05E9\\u05D9\\u05E8 \\u05E9\\u05DC \\u05D9\\u05D5\\u05DD - \\u05E7\\u05D9\"\\u05D3 - \\u05D1\\u05E6\\u05D0\\u05EA \\u05D9\\u05E9\\u05E8\\u05D0\\u05DC');\n }\n addTefillahNote(\"Ya`aleh V`yavo\", \"\\u05D9\\u05E2\\u05DC\\u05D4 \\u05D5\\u05D9\\u05D1\\u05D0\");\n } else if ([16, 17, 18, 19, 20, 21].includes(day)) {\n if (day === 21) {\n addDayNote(\"Shvi`i Shel Pesach\", \"\\u05E9\\u05D1\\u05D9\\u05E2\\u05D9 \\u05E9\\u05DC \\u05E4\\u05DD\\u05D7\");\n if (isDaytime) {\n if (israel) {\n addTefillahNote(\"Yizkor\", \"\\u05D9\\u05D6\\u05DB\\u05D5\\u05E8\");\n }\n if (showGaonShirShelYom && dow !== DaysOfWeek.SHABBOS) {\n addTefillahNote(`\\u05E9\\u05D9\\u05E8 \\u05E9\\u05DC \\u05D9\\u05D5\\u05DD - \\u05D9\"\\u05D7 - \\u05DC\\u05DE\\u05E0\\u05E6\\u05D7 \\u05DC\\u05E2\\u05D1\\u05D3 \\u05D4'`);\n }\n }\n } else {\n addDayNote(\"Chol Ha`moed Pesach\", \"\\u05E4\\u05E1\\u05D7 - \\u05D7\\u05D5\\u05DC \\u05D4\\u05DE\\u05D5\\u05E2\\u05D3\");\n addTefillahNote(\"Ya`aleh Viyavo\", \"\\u05D9\\u05E2\\u05DC\\u05D4 \\u05D5\\u05D9\\u05D1\\u05D0\");\n if (isMorning && dow !== DaysOfWeek.SHABBOS) noLaminatzeach();\n if (showGaonShirShelYom && isDaytime && dow !== DaysOfWeek.SHABBOS) {\n switch (day) {\n case 16:\n if (dow === DaysOfWeek.SUNDAY) {\n addTefillahNote('\\u05E9\\u05D9\\u05E8 \\u05E9\\u05DC \\u05D9\\u05D5\\u05DD - \\u05E7\\u05D9\"\\u05D3 - \\u05D1\\u05E6\\u05D0\\u05EA \\u05D9\\u05E9\\u05E8\\u05D0\\u05DC');\n } else {\n addTefillahNote('\\u05E9\\u05D9\\u05E8 \\u05E9\\u05DC \\u05D9\\u05D5\\u05DD - \\u05E2\"\\u05D7 - \\u05DE\\u05E9\\u05DB\\u05D9\\u05DC \\u05DC\\u05D0\\u05E1\\u05E3');\n }\n break;\n case 17:\n if (dow === DaysOfWeek.MONDAY) {\n addTefillahNote('\\u05E9\\u05D9\\u05E8 \\u05E9\\u05DC \\u05D9\\u05D5\\u05DD - \\u05E2\"\\u05D7 - \\u05DE\\u05E9\\u05DB\\u05D9\\u05DC \\u05DC\\u05D0\\u05E1\\u05E3');\n } else {\n addTefillahNote(\"\\u05E9\\u05D9\\u05E8 \\u05E9\\u05DC \\u05D9\\u05D5\\u05DD - \\u05E4' - \\u05DC\\u05DE\\u05E0\\u05E6\\u05D7 \\u05D0\\u05DC \\u05E9\\u05D5\\u05E9\\u05E0\\u05D9\\u05DD\");\n }\n break;\n case 18:\n if (dow === DaysOfWeek.TUESDAY || dow === DaysOfWeek.SUNDAY) {\n addTefillahNote(\"\\u05E9\\u05D9\\u05E8 \\u05E9\\u05DC \\u05D9\\u05D5\\u05DD - \\u05E4' - \\u05DC\\u05DE\\u05E0\\u05E6\\u05D7 \\u05D0\\u05DC \\u05E9\\u05D5\\u05E9\\u05E0\\u05D9\\u05DD\");\n } else {\n addTefillahNote(`\\u05E9\\u05D9\\u05E8 \\u05E9\\u05DC \\u05D9\\u05D5\\u05DD - \\u05E7\"\\u05D4 - \\u05D4\\u05D5\\u05D3\\u05D5 \\u05DC\\u05D4'`);\n }\n break;\n case 19:\n if (dow === DaysOfWeek.THURSDAY) {\n addTefillahNote('\\u05E9\\u05D9\\u05E8 \\u05E9\\u05DC \\u05D9\\u05D5\\u05DD - \\u05E7\\u05DC\"\\u05D4 - \\u05D4\\u05DC\\u05DC\\u05D5\\u05D9-\\u05D4 \\u05D4\\u05DC\\u05DC\\u05D5 \\u05D0\\u05EA \\u05E9\\u05DD');\n } else {\n addTefillahNote(`\\u05E9\\u05D9\\u05E8 \\u05E9\\u05DC \\u05D9\\u05D5\\u05DD - \\u05E7\"\\u05D4 - \\u05D4\\u05D5\\u05D3\\u05D5 \\u05DC\\u05D4'`);\n }\n break;\n case 20:\n if (dow === DaysOfWeek.FRIDAY) {\n addTefillahNote('\\u05E9\\u05D9\\u05E8 \\u05E9\\u05DC \\u05D9\\u05D5\\u05DD - \\u05E1\"\\u05D5 - \\u05DC\\u05DE\\u05E0\\u05E6\\u05D7 \\u05E9\\u05D9\\u05E8 \\u05DE\\u05D6\\u05DE\\u05D5\\u05E8');\n } else {\n addTefillahNote('\\u05E9\\u05D9\\u05E8 \\u05E9\\u05DC \\u05D9\\u05D5\\u05DD - \\u05E7\\u05DC\"\\u05D4 - \\u05D4\\u05DC\\u05DC\\u05D5\\u05D9-\\u05D4 \\u05D4\\u05DC\\u05DC\\u05D5 \\u05D0\\u05EA \\u05E9\\u05DD');\n }\n break;\n }\n }\n }\n if (isDaytime) addTefillahNote(\"Half Hallel\", \"\\u05D7\\u05E6\\u05D9 \\u05D4\\u05DC\\u05DC\");\n addTefillahNote(\"Ya`aleh V`yavo\", \"\\u05D9\\u05E2\\u05DC\\u05D4 \\u05D5\\u05D9\\u05D1\\u05D0\");\n }\n if (day === 22) {\n if (israel) {\n addDayNote(\"Isru Chag\", \"\\u05D0\\u05D9\\u05E1\\u05E8\\u05D5 \\u05D7\\u05D2\");\n } else {\n addDayNote(\"Acharon Shel Pesach\", \"\\u05D0\\u05D7\\u05E8\\u05D5\\u05DF \\u05E9\\u05DC \\u05E4\\u05E1\\u05D7\");\n if (isDaytime) {\n addTefillahNote(\"Yizkor\", \"\\u05D9\\u05D6\\u05DB\\u05D5\\u05E8\");\n addTefillahNote(\"Half Hallel\", \"\\u05D7\\u05E6\\u05D9 \\u05D4\\u05DC\\u05DC\");\n }\n addTefillahNote(\"Ya`aleh V`yavo\", \"\\u05D9\\u05E2\\u05DC\\u05D4 \\u05D5\\u05D9\\u05D1\\u05D0\");\n }\n if (dow !== DaysOfWeek.SHABBOS && isMorning) {\n noLaminatzeach();\n }\n }\n if (dow === DaysOfWeek.SHABBOS && ([15, 16, 17, 18, 19, 20, 21].includes(day) || !israel && day === 22)) {\n addTefillahNote(\"Shir Hashirim\", \"\\u05DE\\u05D2\\u05D9\\u05DC\\u05EA \\u05E9\\u05D9\\u05E8 \\u05D4\\u05E9\\u05D9\\u05E8\\u05D9\\u05DD\");\n }\n break;\n case JewishMonthsNames.IYAR:\n if (day <= 15) {\n addTefillahNote(\"Morid Hatal\", \"\\u05DE\\u05D5\\u05E8\\u05D9\\u05D3 \\u05D4\\u05D8\\u05DC\");\n if (dow !== DaysOfWeek.SHABBOS) {\n addTefillahNote(\"V`sain Bracha\", \"\\u05D5\\u05EA\\u05DF \\u05D1\\u05E8\\u05DB\\u05D4\");\n }\n }\n if (day === 14 || day === 13 && isAfternoon || day === 18 || day === 17 && isAfternoon) {\n dayInfo.noTachnun = true;\n if (day === 14) {\n addDayNote(\"Pesach Sheini\", \"\\u05E4\\u05E1\\u05D7 \\u05E9\\u05E0\\u05D9\");\n }\n }\n if (isMorning && (dow === DaysOfWeek.MONDAY && day > 3 && day < 13 || dow === DaysOfWeek.THURSDAY && day > 6 && day < 14 || dow === DaysOfWeek.MONDAY && day > 10 && day < 18 && day !== 14)) {\n addTefillahNote(\"Ba`hab\", '\\u05E1\\u05DC\\u05D9\\u05D7\\u05D5\\u05EA \\u05D1\\u05D4\"\\u05D1');\n addTefillahNote(\"Avinu Malkeinu\", \"\\u05D0\\u05D1\\u05D9\\u05E0\\u05D5 \\u05DE\\u05DC\\u05DB\\u05E0\\u05D5\");\n }\n break;\n case JewishMonthsNames.SIVAN:\n if (day < 13) {\n dayInfo.noTachnun = true;\n }\n if (day === 6) {\n addDayNote(\"Shavuos\", \"\\u05D9\\u05D5\\u05DD \\u05D8\\u05D5\\u05D1 \\u05E9\\u05DC \\u05E9\\u05D1\\u05D5\\u05E2\\u05D5\\u05EA\");\n if (isDaytime) {\n addTefillahNote(\"Full Hallel\", \"\\u05D4\\u05DC\\u05DC \\u05D4\\u05E9\\u05DC\\u05DD\");\n addTefillahNote(\"Megilas Rus\", \"\\u05DE\\u05D2\\u05D9\\u05DC\\u05EA \\u05E8\\u05D5\\u05EA\");\n addTefillahNote(\"Akdamus\", \"\\u05D0\\u05E7\\u05D3\\u05DE\\u05D5\\u05EA\");\n if (israel) addTefillahNote(\"Yizkor\", \"\\u05D9\\u05D6\\u05DB\\u05D5\\u05E8\");\n if (showGaonShirShelYom) {\n addTefillahNote('\\u05E9\\u05D9\\u05E8 \\u05E9\\u05DC \\u05D9\\u05D5\\u05DD - \\u05D9\"\\u05D8 - ..\\u05D4\\u05E9\\u05DE\\u05D9\\u05DD \\u05DE\\u05E1\\u05E4\\u05E8\\u05D9\\u05DD..');\n }\n }\n addTefillahNote(\"Ya`aleh V`yavo\", \"\\u05D9\\u05E2\\u05DC\\u05D4 \\u05D5\\u05D9\\u05D1\\u05D0\");\n } else if (day === 7) {\n if (israel) {\n addDayNote(\"Issru Chag\", \"\\u05D0\\u05D9\\u05E1\\u05E8\\u05D5 \\u05D7\\u05D2\");\n if (isMorning && dow !== DaysOfWeek.SHABBOS) {\n noLaminatzeach();\n }\n } else {\n addDayNote(\"Shavuos Second Day\", \"\\u05D9\\u05D5\\u05DD \\u05D8\\u05D5\\u05D1 \\u05E9\\u05DC \\u05E9\\u05D1\\u05D5\\u05E2\\u05D5\\u05EA\");\n if (isDaytime) {\n addTefillahNote(\"Full Hallel\", \"\\u05D4\\u05DC\\u05DC \\u05D4\\u05E9\\u05DC\\u05DD\");\n addTefillahNote(\"Yizkor\", \"\\u05D9\\u05D6\\u05DB\\u05D5\\u05E8\");\n }\n addTefillahNote(\"Ya`aleh V`yavo\", \"\\u05D9\\u05E2\\u05DC\\u05D4 \\u05D5\\u05D9\\u05D1\\u05D0\");\n }\n }\n break;\n case JewishMonthsNames.TAMUZ:\n if (isDaytime && (day === 17 && DaysOfWeek.SHABBOS !== 6 || day === 18 && dow === DaysOfWeek.SUNDAY)) {\n if (isDaytime) {\n addDayNote(\"Shiva Asar B`Tamuz\", '\\u05D9\"\\u05D6 \\u05D1\\u05EA\\u05DE\\u05D5\\u05D6');\n addTefillahNote(\"Avinu Malkeinu\", \"\\u05D0\\u05D1\\u05D9\\u05E0\\u05D5 \\u05DE\\u05DC\\u05DB\\u05E0\\u05D5\");\n addTefillahNote(\"Aneinu\", \"\\u05E2\\u05E0\\u05E0\\u05D5\");\n }\n if (isMorning) {\n addTefillahNote(\"Selichos\", \"\\u05E1\\u05DC\\u05D9\\u05D7\\u05D5\\u05EA\");\n }\n }\n break;\n case JewishMonthsNames.AV:\n if (isAfternoon && day === 8 && dow !== DaysOfWeek.FRIDAY) {\n dayInfo.noTachnun = true;\n } else if (day === 9 && dow !== DaysOfWeek.SHABBOS || day === 10 && dow === DaysOfWeek.SUNDAY) {\n addDayNote(\"Tish B`Av\", \"\\u05EA\\u05E9\\u05E2\\u05D4 \\u05D1\\u05D0\\u05D1\");\n if (isDaytime) {\n addTefillahNote(\"Kinos\", \"\\u05E7\\u05D9\\u05E0\\u05D5\\u05EA\");\n addTefillahNote(\"Aneinu\", \"\\u05E2\\u05E0\\u05E0\\u05D5\");\n if (isMorning && dow !== DaysOfWeek.SHABBOS) {\n noLaminatzeach();\n }\n } else {\n addTefillahNote(\"Megilas Eicha\", \"\\u05DE\\u05D2\\u05D9\\u05DC\\u05EA \\u05D0\\u05D9\\u05DB\\u05D4\");\n if (isNightTime && dow === DaysOfWeek.SUNDAY) {\n addTefillahNote(\"No Vihi Noam\", '\\u05D0\"\\u05D0 \\u05D5\\u05D9\\u05D4\\u05D9 \\u05E0\\u05D5\\u05E2\\u05DD');\n }\n }\n dayInfo.noTachnun = true;\n } else if (isAfternoon && day === 14) {\n dayInfo.noTachnun = true;\n } else if (day === 15) {\n addDayNote(\"Tu B`Av\", '\\u05D8\"\\u05D5 \\u05D1\\u05D0\\u05D1');\n dayInfo.noTachnun = true;\n }\n break;\n case JewishMonthsNames.ELLUL:\n addTefillahNote(\"L`Dovid Hashem Ori\", \"\\u05DC\\u05D3\\u05D5\\u05D3 \\u05D4\");\n if (day > 20 && dow !== DaysOfWeek.SHABBOS && (isAfterChatzosHalayla || isMorning)) {\n let startedSelichos = day >= 26;\n if (day < 26) {\n const daysToRH = 30 - day, dowRH = (daysToRH + dow) % 7;\n switch (dowRH) {\n case DaysOfWeek.MONDAY:\n startedSelichos = day >= 22;\n break;\n case DaysOfWeek.TUESDAY:\n startedSelichos = day >= 21;\n break;\n case DaysOfWeek.SHABBOS:\n startedSelichos = day >= 24;\n break;\n }\n }\n if (startedSelichos) {\n addTefillahNote(\"Selichos\", \"\\u05E1\\u05DC\\u05D9\\u05D7\\u05D5\\u05EA\");\n }\n }\n if (day === 29) {\n dayInfo.noTachnun = true;\n }\n break;\n case JewishMonthsNames.TISHREI:\n if (day < 11) {\n addTefillahNote(\"Hamelech Hakadosh\", \"\\u05D4\\u05DE\\u05DC\\u05DA \\u05D4\\u05E7\\u05D3\\u05D5\\u05E9\");\n if (dow !== DaysOfWeek.SHABBOS && day !== 9) {\n addTefillahNote(\"Avinu Malkeinu\", \"\\u05D0\\u05D1\\u05D9\\u05E0\\u05D5 \\u05DE\\u05DC\\u05DB\\u05E0\\u05D5\");\n }\n }\n if (day > 4 && day < 10 && dow !== DaysOfWeek.SHABBOS) {\n addTefillahNote(\"Selichos\", \"\\u05E1\\u05DC\\u05D9\\u05D7\\u05D5\\u05EA\");\n addTefillahNote(\"Hamelech Hamishpat\", \"\\u05D4\\u05DE\\u05DC\\u05DA \\u05D4\\u05DE\\u05E9\\u05E4\\u05D8\");\n }\n if (dow === DaysOfWeek.SHABBOS && day > 2 && day < 10) {\n addDayNote(\"Shabbos Shuva\", \"\\u05E9\\u05D1\\u05EA \\u05E9\\u05D5\\u05D1\\u05D4\");\n }\n if (day >= 10) {\n dayInfo.noTachnun = true;\n }\n switch (day) {\n case 1:\n addDayNote(\"Rosh Hashana\", \"\\u05E8\\u05D0\\u05E9 \\u05D4\\u05E9\\u05E0\\u05D4\");\n if (dow !== DaysOfWeek.SHABBOS && isDaytime) {\n addTefillahNote(\"Tekias Shofar\", \"\\u05EA\\u05E7\\u05D9\\u05E2\\u05EA \\u05E9\\u05D5\\u05E4\\u05E8\");\n if (showGaonShirShelYom) {\n addTefillahNote('\\u05E9\\u05D9\\u05E8 \\u05E9\\u05DC \\u05D9\\u05D5\\u05DD - \\u05E4\"\\u05D0 - \\u05DC\\u05DE\\u05E0\\u05E6\\u05D7 \\u05E2\\u05DC \\u05D4\\u05D2\\u05EA\\u05D9\\u05EA');\n }\n if (isAfternoon) {\n addDayNote(\"Tashlich\", \"\\u05EA\\u05E9\\u05DC\\u05D9\\u05DA\");\n }\n }\n addTefillahNote(\"Ya`aleh V`yavo\", \"\\u05D9\\u05E2\\u05DC\\u05D4 \\u05D5\\u05D9\\u05D1\\u05D0\");\n break;\n case 2:\n addDayNote(\"Rosh Hashana\", \"\\u05E8\\u05D0\\u05E9 \\u05D4\\u05E9\\u05E0\\u05D4\");\n if (isDaytime) {\n addTefillahNote(\"Tekias Shofar\", \"\\u05EA\\u05E7\\u05D9\\u05E2\\u05EA \\u05E9\\u05D5\\u05E4\\u05E8\");\n if (showGaonShirShelYom) {\n addTefillahNote('\\u05E9\\u05D9\\u05E8 \\u05E9\\u05DC \\u05D9\\u05D5\\u05DD - \\u05E4\"\\u05D0 - \\u05DC\\u05DE\\u05E0\\u05E6\\u05D7 \\u05E2\\u05DC \\u05D4\\u05D2\\u05EA\\u05D9\\u05EA');\n }\n if (dow === DaysOfWeek.SUNDAY && isAfternoon) {\n addDayNote(\"Tashlich\", \"\\u05EA\\u05E9\\u05DC\\u05D9\\u05DA\");\n }\n }\n addTefillahNote(\"Ya`aleh V`yavo\", \"\\u05D9\\u05E2\\u05DC\\u05D4 \\u05D5\\u05D9\\u05D1\\u05D0\");\n break;\n case 3:\n if (dow !== DaysOfWeek.SHABBOS) {\n if (isDaytime) {\n addDayNote(\"Fast of Tzom Gedalya\", \"\\u05E6\\u05D5\\u05DD \\u05D2\\u05D3\\u05DC\\u05D9\\u05D4\");\n addTefillahNote(\"Aneinu\", \"\\u05E2\\u05E0\\u05E0\\u05D5\");\n }\n if (isAfterChatzosHalayla || isMorning) {\n addTefillahNote(\"Selichos\", \"\\u05E1\\u05DC\\u05D9\\u05D7\\u05D5\\u05EA\");\n }\n addTefillahNote(\"Hamelech Hamishpat\", \"\\u05D4\\u05DE\\u05DC\\u05DA \\u05D4\\u05DE\\u05E9\\u05E4\\u05D8\");\n }\n break;\n case 4:\n if (dow === DaysOfWeek.SUNDAY) {\n if (isDaytime) {\n addDayNote(\"Fast of Tzom Gedalya\", \"\\u05E6\\u05D5\\u05DD \\u05D2\\u05D3\\u05DC\\u05D9\\u05D4\");\n addTefillahNote(\"Aneinu\", \"\\u05E2\\u05E0\\u05E0\\u05D5\");\n }\n if (isAfterChatzosHalayla || isMorning) {\n addTefillahNote(\"Selichos\", \"\\u05E1\\u05DC\\u05D9\\u05D7\\u05D5\\u05EA\");\n }\n addTefillahNote(\"Hamelech Hamishpat\", \"\\u05D4\\u05DE\\u05DC\\u05DA \\u05D4\\u05DE\\u05E9\\u05E4\\u05D8\");\n } else if (dow !== DaysOfWeek.SHABBOS) {\n addTefillahNote(\"Hamelech Hamishpat\", \"\\u05D4\\u05DE\\u05DC\\u05DA \\u05D4\\u05DE\\u05E9\\u05E4\\u05D8\");\n if (isAfterChatzosHalayla || isMorning) {\n addTefillahNote(\"Selichos\", \"\\u05E1\\u05DC\\u05D9\\u05D7\\u05D5\\u05EA\");\n }\n }\n break;\n case 9:\n addDayNote(\"Erev Yom Kippur\", \"\\u05E2\\u05E8\\u05D1 \\u05D9\\u05D5\\u05DD \\u05DB\\u05D9\\u05E4\\u05D5\\u05E8\");\n if (isMorning) {\n addTefillahNote(\"No Mizmor L`Sodah\", '\\u05D0\"\\u05D0 \\u05DE\\u05D6\\u05DE\\u05D5\\u05E8 \\u05DC\\u05EA\\u05D5\\u05D3\\u05D4');\n if (dow !== DaysOfWeek.SHABBOS) {\n noLaminatzeach();\n }\n if (dow === DaysOfWeek.FRIDAY) {\n addTefillahNote(\"Avinu Malkeinu\", \"\\u05D0\\u05D1\\u05D9\\u05E0\\u05D5 \\u05DE\\u05DC\\u05DB\\u05E0\\u05D5\");\n }\n } else if (isAfternoon) {\n addTefillahNote(\"Vidduy\", \"\\u05D5\\u05D3\\u05D5\\u05D9 \\u05D1\\u05E2\\u05DE\\u05D9\\u05D3\\u05D4\");\n }\n if (isDaytime && dow !== DaysOfWeek.FRIDAY) {\n addTefillahNote(\"No Avinu Malkeinu\", '\\u05D0\"\\u05D0 \\u05D0\\u05D1\\u05D9\\u05E0\\u05D5 \\u05DE\\u05DC\\u05DB\\u05E0\\u05D5');\n }\n dayInfo.noTachnun = true;\n break;\n case 10:\n addDayNote(\"Yom Kippur\", \"\\u05D9\\u05D5\\u05DD \\u05D4\\u05DB\\u05D9\\u05E4\\u05D5\\u05E8\\u05D9\\u05DD\");\n addDayNote(\"\\u05DC\\u05E4\\u05E0\\u05D9 \\u05D4' \\u05EA\\u05D8\\u05D4\\u05E8\\u05D5\");\n if (isDaytime) {\n addTefillahNote(\"Yizkor\", \"\\u05D9\\u05D6\\u05DB\\u05D5\\u05E8\");\n if (showGaonShirShelYom && dow !== DaysOfWeek.SHABBOS) {\n addTefillahNote('\\u05E9\\u05D9\\u05E8 \\u05E9\\u05DC \\u05D9\\u05D5\\u05DD - \\u05DC\"\\u05D1 - \\u05DC\\u05D3\\u05D5\\u05D3 \\u05DE\\u05E9\\u05DB\\u05D9\\u05DC');\n }\n }\n if (isAfternoon) {\n addTefillahNote('\\u05E7\\u05D4\"\\u05EA \\u05D1\\u05DE\\u05E0\\u05D7\\u05D4 \\u05E1\\u05D5\\u05E3 \\u05E4\\u05E8\\u05E9\\u05EA \\u05D0\\u05D7\"\\u05DE');\n }\n break;\n case 11:\n if (isNightTime) {\n addDayNote(\"\\u05DC\\u05DA \\u05D0\\u05DB\\u05DC \\u05D1\\u05E9\\u05DE\\u05D7\\u05D4 \\u05DC\\u05D7\\u05DE\\u05DA \\u05DB\\u05D9 \\u05DB\\u05D1\\u05E8 \\u05E8\\u05E6\\u05D4 \\u05D4\\u05D0\\u05DC\\u05E7\\u05D9\\u05DD \\u05D0\\u05EA \\u05DE\\u05E2\\u05E9\\u05D9\\u05DA\");\n }\n case 15:\n addDayNote(\"First day of Sukkos\", '\\u05D9\\u05D5\"\\u05D8 \\u05E8\\u05D0\\u05E9\\u05D5\\u05DF \\u05E9\\u05DC \\u05E1\\u05D5\\u05DB\\u05D5\\u05EA');\n addTefillahNote(\"Ya`aleh V`yavo\", \"\\u05D9\\u05E2\\u05DC\\u05D4 \\u05D5\\u05D9\\u05D1\\u05D0\");\n if (isDaytime) {\n addTefillahNote(\"Full Hallel\", \"\\u05D4\\u05DC\\u05DC \\u05D4\\u05E9\\u05DC\\u05DD\");\n if (dow !== DaysOfWeek.SHABBOS) {\n addTefillahNote(\"Hoshanos - \\u05DC\\u05DE\\u05E2\\u05DF \\u05D0\\u05DE\\u05EA\\u05DA\", \"\\u05D4\\u05D5\\u05E9\\u05E2\\u05E0\\u05D5\\u05EA - \\u05DC\\u05DE\\u05E2\\u05DF \\u05D0\\u05DE\\u05EA\\u05DA\");\n addTefillahNote(\"Kah Keli\", \"\\u05E7\\u05D4 \\u05E7\\u05DC\\u05D9\");\n if (showGaonShirShelYom) {\n addTefillahNote('\\u05E9\\u05D9\\u05E8 \\u05E9\\u05DC \\u05D9\\u05D5\\u05DD - \\u05E2\"\\u05D5 - \\u05DC\\u05DE\\u05E0\\u05E6\\u05D7 \\u05D1\\u05E0\\u05D2\\u05D9\\u05E0\\u05D5\\u05EA \\u05DE\\u05D6\\u05DE\\u05D5\\u05E8');\n }\n } else {\n addTefillahNote(\"Hoshanos - \\u05D0\\u05D5\\u05DD \\u05E0\\u05E6\\u05D5\\u05E8\\u05D4\", \"\\u05D4\\u05D5\\u05E9\\u05E2\\u05E0\\u05D5\\u05EA - \\u05D0\\u05D5\\u05DD \\u05E0\\u05E6\\u05D5\\u05E8\\u05D4\");\n }\n }\n break;\n case 16:\n case 17:\n case 18:\n case 19:\n case 20:\n addTefillahNote(\"Ya`aleh V`yavo\", \"\\u05D9\\u05E2\\u05DC\\u05D4 \\u05D5\\u05D9\\u05D1\\u05D0\");\n if (day === 16 && !israel) {\n addDayNote(\"Second day of Sukkos\", \"\\u05E1\\u05D5\\u05DB\\u05D5\\u05EA - \\u05D9\\u05D5\\u05DD \\u05D8\\u05D5\\u05D1 \\u05E9\\u05E0\\u05D9\");\n } else if (!israel) {\n addDayNote(\"Chol Hamoed Sukkos\", \"\\u05E1\\u05D5\\u05DB\\u05D5\\u05EA - \\u05D7\\u05D5\\u05DC \\u05D4\\u05DE\\u05D5\\u05E2\\u05D3\");\n addTefillahNote(\"Ya`aleh V`yavo\", \"\\u05D9\\u05E2\\u05DC\\u05D4 \\u05D5\\u05D9\\u05D1\\u05D0\");\n }\n if (isDaytime) {\n addTefillahNote(\"Full Hallel\", \"\\u05D4\\u05DC\\u05DC \\u05D4\\u05E9\\u05DC\\u05DD\");\n switch (day) {\n case 16:\n addTefillahNote(\n \"\\u05D4\\u05D5\\u05E9\\u05E2\\u05E0\\u05D5\\u05EA - \" + (dow === DaysOfWeek.SUNDAY ? \"\\u05DC\\u05DE\\u05E2\\u05DF \\u05D0\\u05DE\\u05EA\\u05DA\" : \"\\u05D0\\u05D1\\u05DF \\u05E9\\u05EA\\u05D9\\u05D4\")\n );\n if (showGaonShirShelYom && dow !== DaysOfWeek.SHABBOS) {\n addTefillahNote(`\\u05E9\\u05D9\\u05E8 \\u05E9\\u05DC \\u05D9\\u05D5\\u05DD - \\u05DB\"\\u05D8 - ..\\u05D4\\u05D1\\u05D5 \\u05DC\\u05D4' \\u05D1\\u05E0\\u05D9 \\u05D0\\u05DC\\u05D9\\u05DD`);\n }\n break;\n case 17:\n addTefillahNote(\n (showEnglish ? \"Hoshanos\" : \"\\u05D4\\u05D5\\u05E9\\u05E2\\u05E0\\u05D5\\u05EA\") + \" - \" + (dow === DaysOfWeek.SHABBOS ? \"\\u05D0\\u05D5\\u05DD \\u05E0\\u05E6\\u05D5\\u05E8\\u05D4\" : \"\\u05D0\\u05E2\\u05E8\\u05D5\\u05DA \\u05E9\\u05D5\\u05E2\\u05D9\")\n );\n if (showGaonShirShelYom && dow !== DaysOfWeek.SHABBOS) {\n addTefillahNote(\"\\u05E9\\u05D9\\u05E8 \\u05E9\\u05DC \\u05D9\\u05D5\\u05DD - \\u05E0' - \\u05DE\\u05D6\\u05DE\\u05D5\\u05E8 \\u05DC\\u05D0\\u05E1\\u05E3\");\n }\n break;\n case 18:\n if (dow === DaysOfWeek.SUNDAY) {\n addTefillahNote((showEnglish ? \"Hoshanos\" : \"\\u05D4\\u05D5\\u05E9\\u05E2\\u05E0\\u05D5\\u05EA\") + \" - \\u05D0\\u05E2\\u05E8\\u05D5\\u05DA \\u05E9\\u05D5\\u05E2\\u05D9\");\n if (showGaonShirShelYom) {\n addTefillahNote(\"\\u05E9\\u05D9\\u05E8 \\u05E9\\u05DC \\u05D9\\u05D5\\u05DD - \\u05E0' - \\u05DE\\u05D6\\u05DE\\u05D5\\u05E8 \\u05DC\\u05D0\\u05E1\\u05E3\");\n }\n } else {\n if (dow === DaysOfWeek.TUESDAY) {\n addTefillahNote((showEnglish ? \"Hoshanos\" : \"\\u05D4\\u05D5\\u05E9\\u05E2\\u05E0\\u05D5\\u05EA\") + \" - \\u05D0\\u05D1\\u05DF \\u05E9\\u05EA\\u05D9\\u05D4\");\n } else if (dow === DaysOfWeek.THURSDAY) {\n addTefillahNote(\n (showEnglish ? \"Hoshanos\" : \"\\u05D4\\u05D5\\u05E9\\u05E2\\u05E0\\u05D5\\u05EA\") + \" - \\u05D0\\u05D5\\u05DD \\u05D0\\u05E0\\u05D9 \\u05D7\\u05D5\\u05DE\\u05D4\"\n );\n } else if (dow === DaysOfWeek.FRIDAY) {\n addTefillahNote((showEnglish ? \"Hoshanos\" : \"\\u05D4\\u05D5\\u05E9\\u05E2\\u05E0\\u05D5\\u05EA\") + \" - \\u05D0-\\u05DC \\u05DC\\u05DE\\u05D5\\u05E9\\u05E2\\u05D5\\u05EA\");\n }\n if (showGaonShirShelYom && dow !== DaysOfWeek.SHABBOS) {\n addTefillahNote('\\u05E9\\u05D9\\u05E8 \\u05E9\\u05DC \\u05D9\\u05D5\\u05DD - \\u05E6\"\\u05D3 - ..\\u05DE\\u05D9 \\u05D9\\u05E7\\u05D5\\u05DD \\u05DC\\u05D9..');\n }\n }\n break;\n case 19:\n addTefillahNote(\n (showEnglish ? \"Hoshanos\" : \"\\u05D4\\u05D5\\u05E9\\u05E2\\u05E0\\u05D5\\u05EA\") + \" - \" + (dow === DaysOfWeek.SHABBOS ? \"\\u05D0\\u05D5\\u05DD \\u05E0\\u05E6\\u05D5\\u05E8\\u05D4\" : \"\\u05D0-\\u05DC \\u05DC\\u05DE\\u05D5\\u05E9\\u05E2\\u05D5\\u05EA\")\n );\n if (showGaonShirShelYom && dow !== DaysOfWeek.SHABBOS) {\n if (dow === DaysOfWeek.MONDAY) {\n addTefillahNote('\\u05E9\\u05D9\\u05E8 \\u05E9\\u05DC \\u05D9\\u05D5\\u05DD - \\u05E6\"\\u05D3 - ..\\u05DE\\u05D9 \\u05D9\\u05E7\\u05D5\\u05DD \\u05DC\\u05D9..');\n } else {\n addTefillahNote('\\u05E9\\u05D9\\u05E8 \\u05E9\\u05DC \\u05D9\\u05D5\\u05DD - \\u05E6\"\\u05D3 - \\u05D0-\\u05DC \\u05E0\\u05E7\\u05DE\\u05D5\\u05EA.. \\u05D9\\u05E9\\u05E8\\u05D9 \\u05DC\\u05D1');\n }\n }\n break;\n case 20:\n addTefillahNote(\n (showEnglish ? \"Hoshanos\" : \"\\u05D4\\u05D5\\u05E9\\u05E2\\u05E0\\u05D5\\u05EA\") + \" - \" + (dow === DaysOfWeek.SHABBOS ? \"\\u05D0\\u05D5\\u05DD \\u05E0\\u05E6\\u05D5\\u05E8\\u05D4\" : \"\\u05D0\\u05D3\\u05D5\\u05DF \\u05D4\\u05DE\\u05D5\\u05E9\\u05D9\\u05E2\")\n );\n if (showGaonShirShelYom && dow !== DaysOfWeek.SHABBOS) {\n if (dow === DaysOfWeek.THURSDAY) {\n addTefillahNote('\\u05E9\\u05D9\\u05E8 \\u05E9\\u05DC \\u05D9\\u05D5\\u05DD - \\u05E4\"\\u05D0 - \\u05DC\\u05DE\\u05E0\\u05E6\\u05D7 \\u05E2\\u05DC \\u05D4\\u05D2\\u05EA\\u05D9\\u05EA');\n } else {\n addTefillahNote('\\u05E9\\u05D9\\u05E8 \\u05E9\\u05DC \\u05D9\\u05D5\\u05DD - \\u05E6\"\\u05D3 - \\u05D0-\\u05DC \\u05E0\\u05E7\\u05DE\\u05D5\\u05EA.. \\u05D9\\u05E9\\u05E8\\u05D9 \\u05DC\\u05D1');\n }\n }\n break;\n }\n }\n break;\n case 21:\n addDayNote(\"Hoshana Raba\", \"\\u05D4\\u05D5\\u05E9\\u05E2\\u05D4 \\u05E8\\u05D1\\u05D4\");\n addTefillahNote(\"Ya`aleh V`yavo\", \"\\u05D9\\u05E2\\u05DC\\u05D4 \\u05D5\\u05D9\\u05D1\\u05D0\");\n if (isNightTime) {\n addTefillahNote(\"Mishneh Torah\", \"\\u05DE\\u05E9\\u05E0\\u05D4 \\u05EA\\u05D5\\u05E8\\u05D4\");\n } else {\n addTefillahNote(\"Hoshanos\", \"\\u05D4\\u05D5\\u05E9\\u05E2\\u05E0\\u05D5\\u05EA\");\n addTefillahNote(\"Full Hallel\", \"\\u05D4\\u05DC\\u05DC \\u05D4\\u05E9\\u05DC\\u05DD\");\n if (showGaonShirShelYom) {\n if (dow === DaysOfWeek.FRIDAY) {\n addTefillahNote('\\u05E9\\u05D9\\u05E8 \\u05E9\\u05DC \\u05D9\\u05D5\\u05DD - \\u05E4\"\\u05D1 - \\u05DE\\u05D6\\u05DE\\u05D5\\u05E8 \\u05DC\\u05D0\\u05E1\\u05E3');\n } else {\n addTefillahNote('\\u05E9\\u05D9\\u05E8 \\u05E9\\u05DC \\u05D9\\u05D5\\u05DD - \\u05E4\"\\u05D0 - \\u05DC\\u05DE\\u05E0\\u05E6\\u05D7 \\u05E2\\u05DC \\u05D4\\u05D2\\u05EA\\u05D9\\u05EA');\n }\n }\n }\n break;\n case 22:\n addDayNote(\"Shmini Atzeres\", \"\\u05E9\\u05DE\\u05D9\\u05E0\\u05D9 \\u05E2\\u05E6\\u05E8\\u05EA\");\n addTefillahNote(\"Ya`aleh V`yavo\", \"\\u05D9\\u05E2\\u05DC\\u05D4 \\u05D5\\u05D9\\u05D1\\u05D0\");\n if (israel) {\n addDayNote(\"Simchas Torah\", \"\\u05E9\\u05DE\\u05D7\\u05EA \\u05EA\\u05D5\\u05E8\\u05D4\");\n addTefillahNote(\"Hakafos\", \"\\u05D4\\u05E7\\u05E4\\u05D5\\u05EA\");\n }\n if (isDaytime) {\n addTefillahNote(\"Full Hallel\", \"\\u05D4\\u05DC\\u05DC \\u05D4\\u05E9\\u05DC\\u05DD\");\n addTefillahNote(\"Yizkor\", \"\\u05D9\\u05D6\\u05DB\\u05D5\\u05E8\");\n addTefillahNote(\"Tefilas Geshem\", \"\\u05EA\\u05E4\\u05D9\\u05DC\\u05EA \\u05D2\\u05E9\\u05DD\");\n addTefillahNote(\"\\u05DE\\u05E9\\u05D9\\u05D1 \\u05D4\\u05E8\\u05D5\\u05D7 \\u05D5\\u05DE\\u05D5\\u05E8\\u05D9\\u05D3 \\u05D4\\u05D2\\u05E9\\u05DD\");\n if (showGaonShirShelYom && dow !== DaysOfWeek.SHABBOS) {\n addTefillahNote('\\u05E9\\u05D9\\u05E8 \\u05E9\\u05DC \\u05D9\\u05D5\\u05DD - \\u05D9\"\\u05D1 - \\u05DC\\u05DE\\u05E0\\u05E6\\u05D7 \\u05E2\\u05DC \\u05D4\\u05E9\\u05DE\\u05D9\\u05E0\\u05D9\\u05EA');\n }\n }\n break;\n }\n if (day === 23) {\n if (!israel) {\n addDayNote(\"Simchas Torah\", \"\\u05E9\\u05DE\\u05D7\\u05EA \\u05EA\\u05D5\\u05E8\\u05D4\");\n addTefillahNote(\"Ya`aleh V`yavo\", \"\\u05D9\\u05E2\\u05DC\\u05D4 \\u05D5\\u05D9\\u05D1\\u05D0\");\n addTefillahNote(\"Hakafos\", \"\\u05D4\\u05E7\\u05E4\\u05D5\\u05EA\");\n addTefillahNote(\"Full Hallel\", \"\\u05D4\\u05DC\\u05DC \\u05D4\\u05E9\\u05DC\\u05DD\");\n } else {\n addDayNote(\"Issru Chag\", \"\\u05D0\\u05D9\\u05E1\\u05E8\\u05D5 \\u05D7\\u05D2\");\n if (isNightTime) {\n addDayNote(\"\\u05D0 \\u05D2\\u05D5\\u05D8\\u05E2\\u05DF \\u05D5\\u05D5\\u05D9\\u05E0\\u05D8\\u05E2\\u05E8\", \"\\u05D7\\u05D5\\u05E8\\u05E3 \\u05D8\\u05D5\\u05D1\");\n } else if (dow !== DaysOfWeek.SHABBOS && isMorning) {\n noLaminatzeach();\n }\n }\n } else if (dow === DaysOfWeek.SHABBOS && [15, 17, 18, 19, 20].includes(day)) {\n addTefillahNote(\"Megilas Koheles\", \"\\u05DE\\u05D2\\u05D9\\u05DC\\u05EA \\u05E7\\u05D4\\u05DC\\u05EA\");\n }\n if (day < 22) {\n addTefillahNote(\"L`Dovid Hashem Ori\", \"\\u05DC\\u05D3\\u05D5\\u05D3 \\u05D4\");\n } else if (day > 22) {\n addTefillahNote(\"Mashiv Haruach U`Morid Hageshem\", \"\\u05DE\\u05E9\\u05D9\\u05D1 \\u05D4\\u05E8\\u05D5\\u05D7 \\u05D5\\u05DE\\u05D5\\u05E8\\u05D9\\u05D3 \\u05D4\\u05D2\\u05E9\\u05DD\");\n }\n break;\n case JewishMonthsNames.CHESHVAN:\n if (isDaytime && (dow === DaysOfWeek.MONDAY && day > 3 && day < 13 || dow === DaysOfWeek.THURSDAY && day > 6 && day < 14 || dow === DaysOfWeek.MONDAY && day > 10 && day < 18)) {\n addTefillahNote(\"Ba`Hab\", '\\u05E1\\u05DC\\u05D9\\u05D7\\u05D5\\u05EA \\u05D1\\u05D4\"\\u05D1');\n addTefillahNote(\"Avinu Malkeinu\", \"\\u05D0\\u05D1\\u05D9\\u05E0\\u05D5 \\u05DE\\u05DC\\u05DB\\u05E0\\u05D5\");\n }\n if (day <= 22) {\n addTefillahNote(\"Mashiv Haruach U`Morid Hageshem\", \"\\u05DE\\u05E9\\u05D9\\u05D1 \\u05D4\\u05E8\\u05D5\\u05D7 \\u05D5\\u05DE\\u05D5\\u05E8\\u05D9\\u05D3 \\u05D4\\u05D2\\u05E9\\u05DD\");\n }\n if ((location.Israel && day >= 7 || !location.Israel && showVsainTalUmatarInChul) && dow !== DaysOfWeek.SHABBOS) {\n addTefillahNote(\"V`sain Tal U`matar\", \"\\u05D5\\u05EA\\u05DF \\u05D8\\u05DC \\u05D5\\u05DE\\u05D8\\u05E8\");\n }\n break;\n case JewishMonthsNames.KISLEV:\n if ((location.Israel && day <= 7 || !location.Israel && showVsainTalUmatarInChul) && dow !== DaysOfWeek.SHABBOS) {\n addTefillahNote(\"V`sain Tal U`matar\", \"\\u05D5\\u05EA\\u05DF \\u05D8\\u05DC \\u05D5\\u05DE\\u05D8\\u05E8\");\n } else if (day === 24 && dow !== DaysOfWeek.SHABBOS && isAfternoon) {\n dayInfo.noTachnun = true;\n } else if (day >= 25) {\n dayInfo.noTachnun = true;\n addDayNote(\"Chanukah\", \"\\u05D7\\u05E0\\u05D5\\u05DB\\u05D4\");\n addTefillahNote(\"Al Hanissim\", \"\\u05E2\\u05DC \\u05D4\\u05E0\\u05D9\\u05E1\\u05D9\\u05DD\");\n if (isDaytime) {\n addTefillahNote(\"Full Hallel\", \"\\u05D4\\u05DC\\u05DC \\u05D4\\u05E9\\u05DC\\u05DD\");\n if (isMorning && dow !== DaysOfWeek.SHABBOS) noLaminatzeach();\n if (showGaonShirShelYom && day !== 30 && dow !== DaysOfWeek.SHABBOS) {\n addTefillahNote(\"\\u05E9\\u05D9\\u05E8 \\u05E9\\u05DC \\u05D9\\u05D5\\u05DD - \\u05DC' - \\u05DE\\u05D6\\u05DE\\u05D5\\u05E8 \\u05E9\\u05D9\\u05E8 \\u05D7\\u05E0\\u05D5\\u05DB\\u05EA \\u05D4\\u05D1\\u05D9\\u05EA\");\n }\n }\n }\n break;\n case JewishMonthsNames.TEVES:\n if (!location.Israel && showVsainTalUmatarInChul && dow !== DaysOfWeek.SHABBOS) {\n addTefillahNote(\"V`sain Tal U`matar\", \"\\u05D5\\u05EA\\u05DF \\u05D8\\u05DC \\u05D5\\u05DE\\u05D8\\u05E8\");\n }\n if (day <= (jDate.isShortKislev(jdate.Year) ? 3 : 2)) {\n dayInfo.noTachnun = true;\n addDayNote(\"Chanukah\", \"\\u05D7\\u05E0\\u05D5\\u05DB\\u05D4\");\n addTefillahNote(\"Al Hanissim\", \"\\u05E2\\u05DC \\u05D4\\u05E0\\u05D9\\u05E1\\u05D9\\u05DD\");\n if (isDaytime) {\n addTefillahNote(\"Full Hallel\", \"\\u05D4\\u05DC\\u05DC \\u05D4\\u05E9\\u05DC\\u05DD\");\n if (isMorning && dow !== DaysOfWeek.SHABBOS) {\n noLaminatzeach();\n if (day !== 1 && showGaonShirShelYom) {\n addTefillahNote(\"\\u05E9\\u05D9\\u05E8 \\u05E9\\u05DC \\u05D9\\u05D5\\u05DD - \\u05DC' - \\u05DE\\u05D6\\u05DE\\u05D5\\u05E8 \\u05E9\\u05D9\\u05E8 \\u05D7\\u05E0\\u05D5\\u05DB\\u05EA \\u05D4\\u05D1\\u05D9\\u05EA\");\n }\n }\n }\n } else if (day === 10 && isDaytime) {\n addDayNote(\"Fast of Asara B`Teves\", \"\\u05E2\\u05E9\\u05E8\\u05D4 \\u05D1\\u05D8\\u05D1\\u05EA\");\n if (isMorning) {\n addTefillahNote(\"Selichos\", \"\\u05E1\\u05DC\\u05D9\\u05D7\\u05D5\\u05EA\");\n }\n addTefillahNote(\"Avinu Malkeinu\", \"\\u05D0\\u05D1\\u05D9\\u05E0\\u05D5 \\u05DE\\u05DC\\u05DB\\u05E0\\u05D5\");\n addTefillahNote(\"Aneinu\", \"\\u05E2\\u05E0\\u05E0\\u05D5\");\n }\n break;\n case JewishMonthsNames.SHVAT:\n if (day === 14 && isAfternoon) dayInfo.noTachnun = true;\n if (day === 15) {\n dayInfo.noTachnun = true;\n addDayNote(\"Tu B`Shvat\", '\\u05D8\"\\u05D5 \\u05D1\\u05E9\\u05D1\\u05D8');\n }\n break;\n case JewishMonthsNames.ADAR:\n case JewishMonthsNames.ADAR_SHEINI:\n if (month === JewishMonthsNames.ADAR && isLeapYear) {\n if (day === 13 && isAfternoon) dayInfo.noTachnun = true;\n if ([14, 15].includes(day)) {\n addDayNote(\n day === 14 ? showEnglish ? \"Purim Katan\" : \"\\u05E4\\u05D5\\u05E8\\u05D9\\u05DD \\u05E7\\u05D8\\u05DF\" : showEnglish ? \"Shushan Purim Katan\" : \"\\u05E9\\u05D5\\u05E9\\u05DF \\u05E4\\u05D5\\u05E8\\u05D9\\u05DD \\u05E7\\u05D8\\u05DF\"\n );\n if (isDaytime) {\n dayInfo.noTachnun = true;\n if (isMorning && dow !== DaysOfWeek.SHABBOS) {\n noLaminatzeach();\n }\n }\n }\n } else {\n if (isDaytime && (day === 11 && dow === DaysOfWeek.THURSDAY || day === 13 && dow !== DaysOfWeek.SHABBOS)) {\n if (isMorning) {\n addDayNote(\"Fast of Ta`anis Esther\", \"\\u05EA\\u05E2\\u05E0\\u05D9\\u05EA \\u05D0\\u05E1\\u05EA\\u05E8\");\n addTefillahNote(\"Selichos\", \"\\u05E1\\u05DC\\u05D9\\u05D7\\u05D5\\u05EA\");\n }\n addTefillahNote(\"Avinu Malkeinu\", \"\\u05D0\\u05D1\\u05D9\\u05E0\\u05D5 \\u05DE\\u05DC\\u05DB\\u05E0\\u05D5\");\n addTefillahNote(\"Aneinu\", \"\\u05E2\\u05E0\\u05E0\\u05D5\");\n } else {\n const isYerushalayim = location.Name === \"Jerusalem\" || location.NameHebrew === \"\\u05D9\\u05E8\\u05D5\\u05E9\\u05DC\\u05D9\\u05DD\";\n if (day === 14) {\n dayInfo.noTachnun = true;\n if (isMorning && dow !== DaysOfWeek.SHABBOS) {\n noLaminatzeach();\n }\n if (!isYerushalayim || dow === DaysOfWeek.FRIDAY) {\n addDayNote(\"Megilas Esther\", \"\\u05DE\\u05D2\\u05D9\\u05DC\\u05EA \\u05D0\\u05E1\\u05EA\\u05E8\");\n if (!isYerushalayim) {\n addDayNote(\"Purim\", \"\\u05E4\\u05D5\\u05E8\\u05D9\\u05DD\");\n addTefillahNote(\"Al Hanissim\", \"\\u05E2\\u05DC \\u05D4\\u05E0\\u05D9\\u05E1\\u05D9\\u05DD\");\n if (showGaonShirShelYom) {\n addTefillahNote('\\u05E9\\u05D9\\u05E8 \\u05E9\\u05DC \\u05D9\\u05D5\\u05DD - \\u05DB\"\\u05D1 - \\u05DC\\u05DE\\u05E0\\u05E6\\u05D7 \\u05E2\\u05DC \\u05D0\\u05D9\\u05DC\\u05EA \\u05D4\\u05E9\\u05D7\\u05E8');\n }\n } else {\n addDayNote(\"Matanos LeEvyonim\", \"\\u05DE\\u05EA\\u05E0\\u05D5\\u05EA \\u05DC\\u05D0\\u05D1\\u05D9\\u05D5\\u05E0\\u05D9\\u05DD\");\n }\n } else {\n addDayNote(\"Purim D`Prazim\", \"\\u05E4\\u05D5\\u05E8\\u05D9\\u05DD \\u05D3\\u05E4\\u05E8\\u05D6\\u05D9\\u05DD\");\n }\n } else if (day === 15) {\n dayInfo.noTachnun = true;\n if (isMorning && dow !== DaysOfWeek.SHABBOS) {\n noLaminatzeach();\n }\n if (isYerushalayim) {\n addDayNote(\"Purim\", \"\\u05E4\\u05D5\\u05E8\\u05D9\\u05DD\");\n addTefillahNote(\"Al Hanissim\", \"\\u05E2\\u05DC \\u05D4\\u05E0\\u05D9\\u05E1\\u05D9\\u05DD\");\n if (dow !== DaysOfWeek.SHABBOS) {\n addDayNote(\"Megilas Esther\", \"\\u05DE\\u05D2\\u05D9\\u05DC\\u05EA \\u05D0\\u05E1\\u05EA\\u05E8\");\n }\n if (showGaonShirShelYom && isDaytime && dow !== DaysOfWeek.SHABBOS) {\n addTefillahNote('\\u05E9\\u05D9\\u05E8 \\u05E9\\u05DC \\u05D9\\u05D5\\u05DD - \\u05DB\"\\u05D1 - \\u05DC\\u05DE\\u05E0\\u05E6\\u05D7 \\u05E2\\u05DC \\u05D0\\u05D9\\u05DC\\u05EA \\u05D4\\u05E9\\u05D7\\u05E8');\n }\n } else if ([\n \"\\u05D8\\u05D1\\u05E8\\u05D9\\u05D4\",\n \"\\u05D9\\u05E4\\u05D5\",\n \"\\u05E2\\u05DB\\u05D5\",\n \"\\u05E6\\u05E4\\u05EA\",\n \"\\u05D1\\u05D0\\u05E8 \\u05E9\\u05D1\\u05E2\",\n \"\\u05D7\\u05D9\\u05E4\\u05D4\",\n \"\\u05D1\\u05D0\\u05E8 \\u05E9\\u05D1\\u05E2\",\n \"\\u05D1\\u05D9\\u05EA \\u05E9\\u05D0\\u05DF\",\n \"\\u05DC\\u05D5\\u05D3\"\n ].includes(location.Name)) {\n addDayNote(\"Purim D`Mukafin\", \"\\u05E4\\u05D5\\u05E8\\u05D9\\u05DD \\u05D3\\u05DE\\u05D5\\u05E7\\u05E4\\u05D9\\u05DF\");\n if (dow !== DaysOfWeek.SHABBOS) {\n addDayNote(\"(Megilas Esther)\", \"(\\u05DE\\u05D2\\u05D9\\u05DC\\u05EA \\u05D0\\u05E1\\u05EA\\u05E8)\");\n }\n } else {\n addDayNote(\"Shushan Purim\", \"\\u05E9\\u05D5\\u05E9\\u05DF \\u05E4\\u05D5\\u05E8\\u05D9\\u05DD\");\n }\n } else if (day === 16 && isYerushalayim && dow === DaysOfWeek.SUNDAY) {\n addDayNote(\"Purim Seuda and Mishloach Manos\", \"\\u05E1\\u05E2\\u05D5\\u05D3\\u05EA \\u05E4\\u05D5\\u05E8\\u05D9\\u05DD \\u05D5\\u05DE\\u05E9\\u05DC\\u05D5\\u05D7 \\u05DE\\u05E0\\u05D5\\u05EA\");\n }\n }\n }\n break;\n }\n}\nfunction noLaminatzeach() {\n addTefillahNote(\"No Laminatzeach\", '\\u05D0\"\\u05D0 \\u05DC\\u05DE\\u05E0\\u05E6\\u05D7');\n}\nfunction addDayNote(englishOrDefaultText, hebrewText) {\n const note = showEnglish || !hebrewText ? englishOrDefaultText : hebrewText;\n if (!dayNotes.includes(note)) {\n dayNotes.push(note);\n }\n}\nfunction addTefillahNote(englishOrDefaultText, hebrewText) {\n const note = showEnglish || !hebrewText ? englishOrDefaultText : hebrewText;\n if (!tefillahNotes.includes(note)) {\n tefillahNotes.push(note);\n }\n}\nfunction hasOwnKriyasHatorah(jdate, location) {\n const { Month, Day, DayOfWeek } = jdate;\n if (Day === 1 || Day === 30) {\n return true;\n }\n switch (Month) {\n case 1:\n return Day > 14 && Day < 22;\n case 4:\n return Day === 17 || DayOfWeek === 0 && Day === 18;\n case 5:\n return Day === 9 || DayOfWeek === 0 && Day === 10;\n case 7:\n return [3, 16, 17, 18, 19, 20, 21].includes(Day) || DayOfWeek === 0 && Day === 4;\n case 9:\n return Day >= 25;\n case 10:\n return Day === 10 || Day < 3 || Day === 3 && jDate.isShortKislev(jdate.Year);\n case 12:\n case 13:\n return Month === (jDate.isJdLeapY(jdate.Year) ? JewishMonthsNames.ADAR_SHEINI : JewishMonthsNames.ADAR) && (Day === 13 || Day === (location.Name === \"\\u05D9\\u05E8\\u05D5\\u05E9\\u05DC\\u05D9\\u05DD\" ? 15 : 14));\n default:\n return false;\n }\n}\n// Annotate the CommonJS export names for ESM import in node:\n0 && (module.exports = {\n Dafyomi,\n DaysOfWeek,\n DaysOfWeekEng,\n DaysOfWeekHeb,\n JewishMonthsEng,\n JewishMonthsHeb,\n JewishMonthsNames,\n Location,\n Locations,\n Molad,\n PirkeiAvos,\n SecularMonthsEng,\n Sedra,\n Utils,\n ZmanTypeIds,\n ZmanTypes,\n Zmanim,\n ZmanimUtils,\n closestDistanceMatch,\n closestNameMatch,\n findLocation,\n getNotifications,\n getZmanType,\n jDate\n});\n"]}