@hebcal/rest-api 4.1.0 → 4.2.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.
package/dist/bundle.js CHANGED
@@ -1,5 +1,5 @@
1
- /*! @hebcal/rest-api v4.1.0 */
2
- var hebcal__rest_api = (function (exports, core, leyning) {
1
+ /*! @hebcal/rest-api v4.2.0 */
2
+ var hebcal__rest_api = (function (exports, core, leyning, triennial) {
3
3
  'use strict';
4
4
 
5
5
  var commonjsGlobal = typeof globalThis !== 'undefined' ? globalThis : typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {};
@@ -119,12 +119,20 @@ var indexedObject = fails$e(function () {
119
119
  return classof$6(it) == 'String' ? split$3(it, '') : $Object$4(it);
120
120
  } : $Object$4;
121
121
 
122
+ // we can't use just `it == null` since of `document.all` special case
123
+ // https://tc39.es/ecma262/#sec-IsHTMLDDA-internal-slot-aec
124
+ var isNullOrUndefined$3 = function (it) {
125
+ return it === null || it === undefined;
126
+ };
127
+
128
+ var isNullOrUndefined$2 = isNullOrUndefined$3;
129
+
122
130
  var $TypeError$a = TypeError;
123
131
 
124
132
  // `RequireObjectCoercible` abstract operation
125
133
  // https://tc39.es/ecma262/#sec-requireobjectcoercible
126
134
  var requireObjectCoercible$4 = function (it) {
127
- if (it == undefined) throw $TypeError$a("Can't call method on " + it);
135
+ if (isNullOrUndefined$2(it)) throw $TypeError$a("Can't call method on " + it);
128
136
  return it;
129
137
  };
130
138
 
@@ -144,7 +152,14 @@ var isCallable$h = function (argument) {
144
152
 
145
153
  var isCallable$g = isCallable$h;
146
154
 
147
- var isObject$7 = function (it) {
155
+ var documentAll = typeof document == 'object' && document.all;
156
+
157
+ // https://tc39.es/ecma262/#sec-IsHTMLDDA-internal-slot
158
+ var SPECIAL_DOCUMENT_ALL = typeof documentAll == 'undefined' && documentAll !== undefined;
159
+
160
+ var isObject$8 = SPECIAL_DOCUMENT_ALL ? function (it) {
161
+ return typeof it == 'object' ? it !== null : isCallable$g(it) || it === documentAll;
162
+ } : function (it) {
148
163
  return typeof it == 'object' ? it !== null : isCallable$g(it);
149
164
  };
150
165
 
@@ -201,7 +216,7 @@ var V8_VERSION = engineV8Version;
201
216
  var fails$d = fails$h;
202
217
 
203
218
  // eslint-disable-next-line es-x/no-object-getownpropertysymbols -- required for testing
204
- var nativeSymbol = !!Object.getOwnPropertySymbols && !fails$d(function () {
219
+ var symbolConstructorDetection = !!Object.getOwnPropertySymbols && !fails$d(function () {
205
220
  var symbol = Symbol();
206
221
  // Chrome 38 Symbol has incorrect toString conversion
207
222
  // `get-own-property-symbols` polyfill symbols converted to object are not Symbol instances
@@ -212,7 +227,7 @@ var nativeSymbol = !!Object.getOwnPropertySymbols && !fails$d(function () {
212
227
 
213
228
  /* eslint-disable es-x/no-symbol -- required for testing */
214
229
 
215
- var NATIVE_SYMBOL$1 = nativeSymbol;
230
+ var NATIVE_SYMBOL$1 = symbolConstructorDetection;
216
231
 
217
232
  var useSymbolAsUid = NATIVE_SYMBOL$1
218
233
  && !Symbol.sham
@@ -254,17 +269,18 @@ var aCallable$3 = function (argument) {
254
269
  };
255
270
 
256
271
  var aCallable$2 = aCallable$3;
272
+ var isNullOrUndefined$1 = isNullOrUndefined$3;
257
273
 
258
274
  // `GetMethod` abstract operation
259
275
  // https://tc39.es/ecma262/#sec-getmethod
260
276
  var getMethod$3 = function (V, P) {
261
277
  var func = V[P];
262
- return func == null ? undefined : aCallable$2(func);
278
+ return isNullOrUndefined$1(func) ? undefined : aCallable$2(func);
263
279
  };
264
280
 
265
281
  var call$a = functionCall;
266
282
  var isCallable$c = isCallable$h;
267
- var isObject$6 = isObject$7;
283
+ var isObject$7 = isObject$8;
268
284
 
269
285
  var $TypeError$8 = TypeError;
270
286
 
@@ -272,9 +288,9 @@ var $TypeError$8 = TypeError;
272
288
  // https://tc39.es/ecma262/#sec-ordinarytoprimitive
273
289
  var ordinaryToPrimitive$1 = function (input, pref) {
274
290
  var fn, val;
275
- if (pref === 'string' && isCallable$c(fn = input.toString) && !isObject$6(val = call$a(fn, input))) return val;
276
- if (isCallable$c(fn = input.valueOf) && !isObject$6(val = call$a(fn, input))) return val;
277
- if (pref !== 'string' && isCallable$c(fn = input.toString) && !isObject$6(val = call$a(fn, input))) return val;
291
+ if (pref === 'string' && isCallable$c(fn = input.toString) && !isObject$7(val = call$a(fn, input))) return val;
292
+ if (isCallable$c(fn = input.valueOf) && !isObject$7(val = call$a(fn, input))) return val;
293
+ if (pref !== 'string' && isCallable$c(fn = input.toString) && !isObject$7(val = call$a(fn, input))) return val;
278
294
  throw $TypeError$8("Can't convert object to primitive value");
279
295
  };
280
296
 
@@ -308,10 +324,10 @@ var store$2 = sharedStore;
308
324
  (shared$4.exports = function (key, value) {
309
325
  return store$2[key] || (store$2[key] = value !== undefined ? value : {});
310
326
  })('versions', []).push({
311
- version: '3.24.1',
327
+ version: '3.25.0',
312
328
  mode: 'global',
313
329
  copyright: '© 2014-2022 Denis Pushkarev (zloirock.ru)',
314
- license: 'https://github.com/zloirock/core-js/blob/v3.24.1/LICENSE',
330
+ license: 'https://github.com/zloirock/core-js/blob/v3.25.0/LICENSE',
315
331
  source: 'https://github.com/zloirock/core-js'
316
332
  });
317
333
 
@@ -351,7 +367,7 @@ var global$b = global$g;
351
367
  var shared$3 = shared$4.exports;
352
368
  var hasOwn$b = hasOwnProperty_1;
353
369
  var uid$1 = uid$2;
354
- var NATIVE_SYMBOL = nativeSymbol;
370
+ var NATIVE_SYMBOL = symbolConstructorDetection;
355
371
  var USE_SYMBOL_AS_UID = useSymbolAsUid;
356
372
 
357
373
  var WellKnownSymbolsStore = shared$3('wks');
@@ -373,7 +389,7 @@ var wellKnownSymbol$e = function (name) {
373
389
  };
374
390
 
375
391
  var call$9 = functionCall;
376
- var isObject$5 = isObject$7;
392
+ var isObject$6 = isObject$8;
377
393
  var isSymbol$1 = isSymbol$2;
378
394
  var getMethod$2 = getMethod$3;
379
395
  var ordinaryToPrimitive = ordinaryToPrimitive$1;
@@ -385,13 +401,13 @@ var TO_PRIMITIVE = wellKnownSymbol$d('toPrimitive');
385
401
  // `ToPrimitive` abstract operation
386
402
  // https://tc39.es/ecma262/#sec-toprimitive
387
403
  var toPrimitive$1 = function (input, pref) {
388
- if (!isObject$5(input) || isSymbol$1(input)) return input;
404
+ if (!isObject$6(input) || isSymbol$1(input)) return input;
389
405
  var exoticToPrim = getMethod$2(input, TO_PRIMITIVE);
390
406
  var result;
391
407
  if (exoticToPrim) {
392
408
  if (pref === undefined) pref = 'default';
393
409
  result = call$9(exoticToPrim, input, pref);
394
- if (!isObject$5(result) || isSymbol$1(result)) return result;
410
+ if (!isObject$6(result) || isSymbol$1(result)) return result;
395
411
  throw $TypeError$7("Can't convert object to primitive value");
396
412
  }
397
413
  if (pref === undefined) pref = 'number';
@@ -409,11 +425,11 @@ var toPropertyKey$3 = function (argument) {
409
425
  };
410
426
 
411
427
  var global$a = global$g;
412
- var isObject$4 = isObject$7;
428
+ var isObject$5 = isObject$8;
413
429
 
414
430
  var document$1 = global$a.document;
415
431
  // typeof document.createElement is 'object' in old IE
416
- var EXISTS$1 = isObject$4(document$1) && isObject$4(document$1.createElement);
432
+ var EXISTS$1 = isObject$5(document$1) && isObject$5(document$1.createElement);
417
433
 
418
434
  var documentCreateElement$2 = function (it) {
419
435
  return EXISTS$1 ? document$1.createElement(it) : {};
@@ -469,14 +485,14 @@ var v8PrototypeDefineBug = DESCRIPTORS$9 && fails$b(function () {
469
485
  }).prototype != 42;
470
486
  });
471
487
 
472
- var isObject$3 = isObject$7;
488
+ var isObject$4 = isObject$8;
473
489
 
474
490
  var $String$2 = String;
475
491
  var $TypeError$6 = TypeError;
476
492
 
477
493
  // `Assert: Type(argument) is Object`
478
494
  var anObject$b = function (argument) {
479
- if (isObject$3(argument)) return argument;
495
+ if (isObject$4(argument)) return argument;
480
496
  throw $TypeError$6($String$2(argument) + ' is not an object');
481
497
  };
482
498
 
@@ -568,15 +584,14 @@ if (!isCallable$b(store$1.inspectSource)) {
568
584
  };
569
585
  }
570
586
 
571
- var inspectSource$3 = store$1.inspectSource;
587
+ var inspectSource$2 = store$1.inspectSource;
572
588
 
573
589
  var global$9 = global$g;
574
590
  var isCallable$a = isCallable$h;
575
- var inspectSource$2 = inspectSource$3;
576
591
 
577
592
  var WeakMap$1 = global$9.WeakMap;
578
593
 
579
- var nativeWeakMap = isCallable$a(WeakMap$1) && /native code/.test(inspectSource$2(WeakMap$1));
594
+ var weakMapBasicDetection = isCallable$a(WeakMap$1) && /native code/.test(String(WeakMap$1));
580
595
 
581
596
  var shared$2 = shared$4.exports;
582
597
  var uid = uid$2;
@@ -589,10 +604,10 @@ var sharedKey$3 = function (key) {
589
604
 
590
605
  var hiddenKeys$4 = {};
591
606
 
592
- var NATIVE_WEAK_MAP = nativeWeakMap;
607
+ var NATIVE_WEAK_MAP = weakMapBasicDetection;
593
608
  var global$8 = global$g;
594
609
  var uncurryThis$c = functionUncurryThis;
595
- var isObject$2 = isObject$7;
610
+ var isObject$3 = isObject$8;
596
611
  var createNonEnumerableProperty$3 = createNonEnumerableProperty$4;
597
612
  var hasOwn$8 = hasOwnProperty_1;
598
613
  var shared$1 = sharedStore;
@@ -611,7 +626,7 @@ var enforce = function (it) {
611
626
  var getterFor = function (TYPE) {
612
627
  return function (it) {
613
628
  var state;
614
- if (!isObject$2(it) || (state = get(it)).type !== TYPE) {
629
+ if (!isObject$3(it) || (state = get(it)).type !== TYPE) {
615
630
  throw TypeError$3('Incompatible receiver, ' + TYPE + ' required');
616
631
  } return state;
617
632
  };
@@ -623,7 +638,7 @@ if (NATIVE_WEAK_MAP || shared$1.state) {
623
638
  var wmhas = uncurryThis$c(store.has);
624
639
  var wmset = uncurryThis$c(store.set);
625
640
  set = function (it, metadata) {
626
- if (wmhas(store, it)) throw new TypeError$3(OBJECT_ALREADY_INITIALIZED);
641
+ if (wmhas(store, it)) throw TypeError$3(OBJECT_ALREADY_INITIALIZED);
627
642
  metadata.facade = it;
628
643
  wmset(store, it, metadata);
629
644
  return metadata;
@@ -638,7 +653,7 @@ if (NATIVE_WEAK_MAP || shared$1.state) {
638
653
  var STATE = sharedKey$2('state');
639
654
  hiddenKeys$3[STATE] = true;
640
655
  set = function (it, metadata) {
641
- if (hasOwn$8(it, STATE)) throw new TypeError$3(OBJECT_ALREADY_INITIALIZED);
656
+ if (hasOwn$8(it, STATE)) throw TypeError$3(OBJECT_ALREADY_INITIALIZED);
642
657
  metadata.facade = it;
643
658
  createNonEnumerableProperty$3(it, STATE, metadata);
644
659
  return metadata;
@@ -664,7 +679,7 @@ var isCallable$9 = isCallable$h;
664
679
  var hasOwn$7 = hasOwnProperty_1;
665
680
  var DESCRIPTORS$5 = descriptors;
666
681
  var CONFIGURABLE_FUNCTION_NAME$1 = functionName.CONFIGURABLE;
667
- var inspectSource$1 = inspectSource$3;
682
+ var inspectSource$1 = inspectSource$2;
668
683
  var InternalStateModule$4 = internalState;
669
684
 
670
685
  var enforceInternalState = InternalStateModule$4.enforce;
@@ -1451,6 +1466,7 @@ var objectGetPrototypeOf = CORRECT_PROTOTYPE_GETTER ? $Object.getPrototypeOf : f
1451
1466
 
1452
1467
  var fails$4 = fails$h;
1453
1468
  var isCallable$4 = isCallable$h;
1469
+ var isObject$2 = isObject$8;
1454
1470
  var getPrototypeOf$1 = objectGetPrototypeOf;
1455
1471
  var defineBuiltIn$5 = defineBuiltIn$7;
1456
1472
  var wellKnownSymbol$9 = wellKnownSymbol$e;
@@ -1473,7 +1489,7 @@ if ([].keys) {
1473
1489
  }
1474
1490
  }
1475
1491
 
1476
- var NEW_ITERATOR_PROTOTYPE = IteratorPrototype$2 == undefined || fails$4(function () {
1492
+ var NEW_ITERATOR_PROTOTYPE = !isObject$2(IteratorPrototype$2) || fails$4(function () {
1477
1493
  var test = {};
1478
1494
  // FF44- legacy iterators case
1479
1495
  return IteratorPrototype$2[ITERATOR$6].call(test) !== test;
@@ -1515,7 +1531,7 @@ var Iterators$4 = iterators;
1515
1531
 
1516
1532
  var returnThis$1 = function () { return this; };
1517
1533
 
1518
- var createIteratorConstructor$2 = function (IteratorConstructor, NAME, next, ENUMERABLE_NEXT) {
1534
+ var iteratorCreateConstructor = function (IteratorConstructor, NAME, next, ENUMERABLE_NEXT) {
1519
1535
  var TO_STRING_TAG = NAME + ' Iterator';
1520
1536
  IteratorConstructor.prototype = create$1(IteratorPrototype$1, { next: createPropertyDescriptor$2(+!ENUMERABLE_NEXT, next) });
1521
1537
  setToStringTag$3(IteratorConstructor, TO_STRING_TAG, false);
@@ -1566,7 +1582,7 @@ var $$3 = _export;
1566
1582
  var call$6 = functionCall;
1567
1583
  var FunctionName = functionName;
1568
1584
  var isCallable$2 = isCallable$h;
1569
- var createIteratorConstructor$1 = createIteratorConstructor$2;
1585
+ var createIteratorConstructor$1 = iteratorCreateConstructor;
1570
1586
  var getPrototypeOf = objectGetPrototypeOf;
1571
1587
  var setPrototypeOf = objectSetPrototypeOf;
1572
1588
  var setToStringTag$2 = setToStringTag$4;
@@ -1587,7 +1603,7 @@ var ENTRIES = 'entries';
1587
1603
 
1588
1604
  var returnThis = function () { return this; };
1589
1605
 
1590
- var defineIterator$2 = function (Iterable, NAME, IteratorConstructor, next, DEFAULT, IS_SET, FORCED) {
1606
+ var iteratorDefine = function (Iterable, NAME, IteratorConstructor, next, DEFAULT, IS_SET, FORCED) {
1591
1607
  createIteratorConstructor$1(IteratorConstructor, NAME, next);
1592
1608
 
1593
1609
  var getIterationMethod = function (KIND) {
@@ -1664,7 +1680,7 @@ var addToUnscopables = addToUnscopables$1;
1664
1680
  var Iterators$2 = iterators;
1665
1681
  var InternalStateModule$3 = internalState;
1666
1682
  var defineProperty$2 = objectDefineProperty.f;
1667
- var defineIterator$1 = defineIterator$2;
1683
+ var defineIterator$1 = iteratorDefine;
1668
1684
  var DESCRIPTORS$3 = descriptors;
1669
1685
 
1670
1686
  var ARRAY_ITERATOR = 'Array Iterator';
@@ -1798,7 +1814,7 @@ var stringMultibyte = {
1798
1814
  var charAt$2 = stringMultibyte.charAt;
1799
1815
  var toString$1 = toString$4;
1800
1816
  var InternalStateModule$2 = internalState;
1801
- var defineIterator = defineIterator$2;
1817
+ var defineIterator = iteratorDefine;
1802
1818
 
1803
1819
  var STRING_ITERATOR = 'String Iterator';
1804
1820
  var setInternalState$2 = InternalStateModule$2.set;
@@ -1831,7 +1847,7 @@ var IS_PURE = isPure;
1831
1847
 
1832
1848
  var ITERATOR$3 = wellKnownSymbol$5('iterator');
1833
1849
 
1834
- var nativeUrl = !fails$3(function () {
1850
+ var urlConstructorDetection = !fails$3(function () {
1835
1851
  // eslint-disable-next-line unicorn/relative-url-style -- required for testing
1836
1852
  var url = new URL('b?a=1&b=2&c=3', 'http://a');
1837
1853
  var searchParams = url.searchParams;
@@ -2001,7 +2017,7 @@ var fails$1 = fails$h;
2001
2017
  var isCallable$1 = isCallable$h;
2002
2018
  var classof$3 = classof$5;
2003
2019
  var getBuiltIn = getBuiltIn$5;
2004
- var inspectSource = inspectSource$3;
2020
+ var inspectSource = inspectSource$2;
2005
2021
 
2006
2022
  var noop = function () { /* empty */ };
2007
2023
  var empty = [];
@@ -2061,13 +2077,14 @@ var createProperty$2 = function (object, key, value) {
2061
2077
 
2062
2078
  var classof$2 = classof$5;
2063
2079
  var getMethod = getMethod$3;
2080
+ var isNullOrUndefined = isNullOrUndefined$3;
2064
2081
  var Iterators = iterators;
2065
2082
  var wellKnownSymbol$3 = wellKnownSymbol$e;
2066
2083
 
2067
2084
  var ITERATOR$1 = wellKnownSymbol$3('iterator');
2068
2085
 
2069
2086
  var getIteratorMethod$3 = function (it) {
2070
- if (it != undefined) return getMethod(it, ITERATOR$1)
2087
+ if (!isNullOrUndefined(it)) return getMethod(it, ITERATOR$1)
2071
2088
  || getMethod(it, '@@iterator')
2072
2089
  || Iterators[classof$2(it)];
2073
2090
  };
@@ -2396,11 +2413,11 @@ var global$2 = global$g;
2396
2413
  var call$1 = functionCall;
2397
2414
  var uncurryThis$2 = functionUncurryThis;
2398
2415
  var DESCRIPTORS$1 = descriptors;
2399
- var USE_NATIVE_URL$1 = nativeUrl;
2416
+ var USE_NATIVE_URL$1 = urlConstructorDetection;
2400
2417
  var defineBuiltIn$2 = defineBuiltIn$7;
2401
2418
  var defineBuiltIns = defineBuiltIns$1;
2402
2419
  var setToStringTag$1 = setToStringTag$4;
2403
- var createIteratorConstructor = createIteratorConstructor$2;
2420
+ var createIteratorConstructor = iteratorCreateConstructor;
2404
2421
  var InternalStateModule$1 = internalState;
2405
2422
  var anInstance$1 = anInstance$2;
2406
2423
  var isCallable = isCallable$h;
@@ -2408,7 +2425,7 @@ var hasOwn$2 = hasOwnProperty_1;
2408
2425
  var bind$1 = functionBindContext;
2409
2426
  var classof$1 = classof$5;
2410
2427
  var anObject$1 = anObject$b;
2411
- var isObject$1 = isObject$7;
2428
+ var isObject$1 = isObject$8;
2412
2429
  var $toString$2 = toString$4;
2413
2430
  var create = objectCreate;
2414
2431
  var createPropertyDescriptor = createPropertyDescriptor$5;
@@ -2785,7 +2802,7 @@ var web_urlSearchParams_constructor = {
2785
2802
 
2786
2803
  var $$1 = _export;
2787
2804
  var DESCRIPTORS = descriptors;
2788
- var USE_NATIVE_URL = nativeUrl;
2805
+ var USE_NATIVE_URL = urlConstructorDetection;
2789
2806
  var global$1 = global$g;
2790
2807
  var bind = functionBindContext;
2791
2808
  var uncurryThis$1 = functionUncurryThis;
@@ -3823,7 +3840,7 @@ $$1({ global: true, constructor: true, forced: !USE_NATIVE_URL, sham: !DESCRIPTO
3823
3840
  URL: URLConstructor
3824
3841
  });
3825
3842
 
3826
- var isObject = isObject$7;
3843
+ var isObject = isObject$8;
3827
3844
  var classof = classofRaw$1;
3828
3845
  var wellKnownSymbol$1 = wellKnownSymbol$e;
3829
3846
 
@@ -3872,7 +3889,7 @@ var requireObjectCoercible = requireObjectCoercible$4;
3872
3889
  var correctIsRegExpLogic = correctIsRegexpLogic;
3873
3890
 
3874
3891
  // eslint-disable-next-line es-x/no-string-prototype-startswith -- safe
3875
- var un$StartsWith = uncurryThis(''.startsWith);
3892
+ var nativeStartsWith = uncurryThis(''.startsWith);
3876
3893
  var stringSlice = uncurryThis(''.slice);
3877
3894
  var min = Math.min;
3878
3895
 
@@ -3891,8 +3908,8 @@ $({ target: 'String', proto: true, forced: !MDN_POLYFILL_BUG && !CORRECT_IS_REGE
3891
3908
  notARegExp(searchString);
3892
3909
  var index = toLength(min(arguments.length > 1 ? arguments[1] : undefined, that.length));
3893
3910
  var search = toString(searchString);
3894
- return un$StartsWith
3895
- ? un$StartsWith(that, search, index)
3911
+ return nativeStartsWith
3912
+ ? nativeStartsWith(that, search, index)
3896
3913
  : stringSlice(that, index, index + search.length) === search;
3897
3914
  }
3898
3915
  });
@@ -3919,11 +3936,11 @@ var getRegExpFlags = regexpGetFlags;
3919
3936
 
3920
3937
  var TO_STRING = 'toString';
3921
3938
  var RegExpPrototype = RegExp.prototype;
3922
- var n$ToString = RegExpPrototype[TO_STRING];
3939
+ var nativeToString = RegExpPrototype[TO_STRING];
3923
3940
 
3924
- var NOT_GENERIC = fails(function () { return n$ToString.call({ source: 'a', flags: 'b' }) != '/a/b'; });
3941
+ var NOT_GENERIC = fails(function () { return nativeToString.call({ source: 'a', flags: 'b' }) != '/a/b'; });
3925
3942
  // FF44- RegExp#toString has a wrong name
3926
- var INCORRECT_NAME = PROPER_FUNCTION_NAME && n$ToString.name != TO_STRING;
3943
+ var INCORRECT_NAME = PROPER_FUNCTION_NAME && nativeToString.name != TO_STRING;
3927
3944
 
3928
3945
  // `RegExp.prototype.toString` method
3929
3946
  // https://tc39.es/ecma262/#sec-regexp.prototype.tostring
@@ -4454,491 +4471,6 @@ function eventsToCsv(events, options) {
4454
4471
  return [csvHeader].concat(events.map(e => eventToCsv(e, options))).join('\r\n') + '\r\n';
4455
4472
  }
4456
4473
 
4457
- /*! @hebcal/triennial v1.0.0 */
4458
-
4459
- const Bereshit$1={book:1,years:{"Y.1":{"1":["1:1","1:5"],"2":["1:6","1:8"],"3":["1:9","1:13"],"4":["1:14","1:19"],"5":["1:20","1:23"],"6":["1:24","1:31"],"7":["2:1","2:3"],M:["2:1","2:3"]},"Y.2":{"1":["2:4","2:9"],"2":["2:10","2:19"],"3":["2:20","2:25"],"4":["3:1","3:21"],"5":["3:22","3:24"],"6":["4:1","4:18"],"7":["4:19","4:26"],M:["4:23","4:26"]},"Y.3":{"1":["5:1","5:5"],"2":["5:6","5:8"],"3":["5:9","5:14"],"4":["5:15","5:20"],"5":["5:21","5:24"],"6":["5:25","5:31"],"7":["5:32","6:8"],M:["6:5","6:8"]}}};const Noach$1={book:1,years:{"Y.1":{"1":["6:9","6:16"],"2":["6:17","6:19"],"3":["6:20","6:22"],"4":["7:1","7:9"],"5":["7:10","7:16"],"6":["7:17","7:24"],"7":["8:1","8:14"],M:["8:12","8:14"]},"Y.2":{"1":["8:15","8:22"],"2":["9:1","9:7"],"3":["9:8","9:17"],"4":["9:18","9:29"],"5":["10:1","10:14"],"6":["10:15","10:20"],"7":["10:21","10:32"],M:["10:26","10:32"]},"Y.3":{"1":["11:1","11:4"],"2":["11:5","11:9"],"3":["11:10","11:13"],"4":["11:14","11:17"],"5":["11:18","11:21"],"6":["11:22","11:25"],"7":["11:26","11:32"],M:["11:29","11:32"]}}};const Vayera$1={book:1,years:{"Y.1":{"1":["18:1","18:5"],"2":["18:6","18:8"],"3":["18:9","18:14"],"4":["18:15","18:21"],"5":["18:22","18:26"],"6":["18:27","18:30"],"7":["18:31","18:33"],M:["18:31","18:33"]},"Y.2":{"1":["19:1","19:11"],"2":["19:12","19:20"],"3":["19:21","19:29"],"4":["19:30","19:38"],"5":["20:1","20:8"],"6":["20:9","20:14"],"7":["20:15","20:18"],M:["20:15","20:18"]},"Y.3":{"1":["21:1","21:4"],"2":["21:5","21:13"],"3":["21:14","21:21"],"4":["21:22","21:34"],"5":["22:1","22:8"],"6":["22:9","22:19"],"7":["22:20","22:24"],M:["22:20","22:24"]}}};const Toldot$1={book:1,years:{"Y.1":{"1":["25:19","25:22"],"2":["25:23","25:26"],"3":["25:27","25:34"],"4":["26:1","26:5"],"5":["26:6","26:12"],"6":["26:13","26:16"],"7":["26:17","26:22"],M:["26:19","26:22"]},"Y.2":{"1":["26:23","26:29"],"2":["26:30","26:33"],"3":["26:34","27:4"],"4":["27:5","27:13"],"5":["27:14","27:17"],"6":["27:18","27:23"],"7":["27:24","27:27"],M:["27:24","27:27"]},"Y.3":{"1":["27:28","27:30"],"2":["27:31","27:33"],"3":["27:34","27:37"],"4":["27:38","27:40"],"5":["27:41","27:46"],"6":["28:1","28:4"],"7":["28:5","28:9"],M:["28:7","28:9"]}}};const Vayetzei$1={book:1,years:{"Y.1":{"1":["28:10","28:12"],"2":["28:13","28:17"],"3":["28:18","28:22"],"4":["29:1","29:8"],"5":["29:9","29:17"],"6":["29:18","29:33"],"7":["29:34","30:13"],M:["30:9","30:13"]},"Y.2":{"1":["30:14","30:16"],"2":["30:17","30:21"],"3":["30:22","30:27"],"4":["30:28","30:36"],"5":["30:37","30:43"],"6":["31:1","31:9"],"7":["31:10","31:16"],M:["31:14","31:16"]},"Y.3":{"1":["31:17","31:21"],"2":["31:22","31:24"],"3":["31:25","31:35"],"4":["31:36","31:42"],"5":["31:43","31:45"],"6":["31:46","31:50"],"7":["31:51","32:3"],M:["32:1","32:3"]}}};const Vayishlach$1={book:1,years:{"Y.1":{"1":["32:4","32:6"],"2":["32:7","32:9"],"3":["32:10","32:13"],"4":["32:14","32:22"],"5":["32:23","32:30"],"6":["32:31","33:5"],"7":["33:6","33:20"],M:["33:18","33:20"]},"Y.2":{"1":["34:1","34:4"],"2":["34:5","34:12"],"3":["34:13","34:17"],"4":["34:18","34:23"],"5":["34:24","34:31"],"6":["35:1","35:11"],"7":["35:12","35:15"],M:["35:12","35:15"]},"Y.3":{"1":["35:16","35:26"],"2":["35:27","35:29"],"3":["36:1","36:8"],"4":["36:9","36:19"],"5":["36:20","36:30"],"6":["36:31","36:39"],"7":["36:40","36:43"],M:["36:40","36:43"]}}};const Vayeshev$1={book:1,years:{"Y.1":{"1":["37:1","37:3"],"2":["37:4","37:7"],"3":["37:8","37:11"],"4":["37:12","37:17"],"5":["37:18","37:22"],"6":["37:23","37:28"],"7":["37:29","37:36"],M:["37:34","37:36"]},"Y.2":{"1":["38:1","38:5"],"2":["38:6","38:11"],"3":["38:12","38:14"],"4":["38:15","38:19"],"5":["38:20","38:23"],"6":["38:24","38:26"],"7":["38:27","38:30"],M:["38:27","38:30"]},"Y.3":{"1":["39:1","39:6"],"2":["39:7","39:10"],"3":["39:11","39:18"],"4":["39:19","39:23"],"5":["40:1","40:8"],"6":["40:9","40:15"],"7":["40:16","40:23"],M:["40:20","40:23"]}}};const Miketz$1={book:1,years:{"Y.1":{"1":["41:1","41:4"],"2":["41:5","41:7"],"3":["41:8","41:14"],"4":["41:15","41:24"],"5":["41:25","41:38"],"6":["41:39","41:43"],"7":["41:44","41:52"],M:["41:50","41:52"]},"Y.2":{"1":["41:53","41:57"],"2":["42:1","42:5"],"3":["42:6","42:18"],"4":["42:19","42:28"],"5":["42:29","42:38"],"6":["43:1","43:7"],"7":["43:8","43:15"],M:["43:11","43:15"]},"Y.3":{"1":["43:16","43:18"],"2":["43:19","43:25"],"3":["43:26","43:29"],"4":["43:30","43:34"],"5":["44:1","44:6"],"6":["44:7","44:10"],"7":["44:11","44:17"],M:["44:14","44:17"]}}};const Vayigash$1={book:1,years:{"Y.1":{"1":["44:18","44:20"],"2":["44:21","44:24"],"3":["44:25","44:30"],"4":["44:31","44:34"],"5":["45:1","45:7"],"6":["45:8","45:18"],"7":["45:19","45:27"],M:["45:25","45:27"]},"Y.2":{"1":["45:28","46:4"],"2":["46:5","46:7"],"3":["46:8","46:11"],"4":["46:12","46:15"],"5":["46:16","46:18"],"6":["46:19","46:22"],"7":["46:23","46:27"],M:["46:23","46:27"]},"Y.3":{"1":["46:28","46:30"],"2":["46:31","46:34"],"3":["47:1","47:6"],"4":["47:7","47:10"],"5":["47:11","47:19"],"6":["47:20","47:22"],"7":["47:23","47:27"],M:["47:25","47:27"]}}};const Vayechi$1={book:1,years:{"Y.1":{"1":["47:28","47:31"],"2":["48:1","48:3"],"3":["48:4","48:9"],"4":["48:10","48:13"],"5":["48:14","48:16"],"6":["48:17","48:19"],"7":["48:20","48:22"],M:["48:20","48:22"]},"Y.2":{"1":["49:1","49:4"],"2":["49:5","49:7"],"3":["49:8","49:12"],"4":["49:13","49:15"],"5":["49:16","49:18"],"6":["49:19","49:21"],"7":["49:22","49:26"],M:["49:22","49:26"]},"Y.3":{"1":["49:27","49:30"],"2":["49:31","49:33"],"3":["50:1","50:6"],"4":["50:7","50:9"],"5":["50:10","50:14"],"6":["50:15","50:20"],"7":["50:21","50:26"],M:["50:23","50:26"]}}};const Shemot$1={book:2,years:{"Y.1":{"1":["1:1","1:7"],"2":["1:8","1:12"],"3":["1:13","1:17"],"4":["1:18","1:22"],"5":["2:1","2:10"],"6":["2:11","2:15"],"7":["2:16","2:25"],M:["2:23","2:25"]},"Y.2":{"1":["3:1","3:6"],"2":["3:7","3:10"],"3":["3:11","3:15"],"4":["3:16","3:22"],"5":["4:1","4:5"],"6":["4:6","4:9"],"7":["4:10","4:17"],M:["4:14","4:17"]},"Y.3":{"1":["4:18","4:20"],"2":["4:21","4:26"],"3":["4:27","4:31"],"4":["5:1","5:5"],"5":["5:6","5:9"],"6":["5:10","5:14"],"7":["5:15","6:1"],M:["5:22","6:1"]}}};const Vaera$1={book:2,years:{"Y.1":{"1":["6:2","6:5"],"2":["6:6","6:9"],"3":["6:10","6:13"],"4":["6:14","6:19"],"5":["6:20","6:25"],"6":["6:26","6:28"],"7":["6:29","7:7"],M:["7:5","7:7"]},"Y.2":{"1":["7:8","7:13"],"2":["7:14","7:18"],"3":["7:19","7:25"],"4":["7:26","7:29"],"5":["8:1","8:6"],"6":["8:7","8:11"],"7":["8:12","8:15"],M:["8:12","8:15"]},"Y.3":{"1":["8:16","8:23"],"2":["8:24","8:28"],"3":["9:1","9:7"],"4":["9:8","9:16"],"5":["9:17","9:21"],"6":["9:22","9:26"],"7":["9:27","9:35"],M:["9:33","9:35"]}}};const Bo$1={book:2,years:{"Y.1":{"1":["10:1","10:3"],"2":["10:4","10:6"],"3":["10:7","10:11"],"4":["10:12","10:15"],"5":["10:16","10:23"],"6":["10:24","10:29"],"7":["11:1","11:3"],M:["11:1","11:3"]},"Y.2":{"1":["11:4","11:10"],"2":["12:1","12:10"],"3":["12:11","12:13"],"4":["12:14","12:16"],"5":["12:17","12:20"],"6":["12:21","12:24"],"7":["12:25","12:28"],M:["12:25","12:28"]},"Y.3":{"1":["12:29","12:32"],"2":["12:33","12:36"],"3":["12:37","12:42"],"4":["12:43","12:51"],"5":["13:1","13:4"],"6":["13:5","13:10"],"7":["13:11","13:16"],M:["13:14","13:16"]}}};const Beshalach$1={book:2,years:{"Y.1":{"1":["13:17","13:22"],"2":["14:1","14:4"],"3":["14:5","14:8"],"4":["14:9","14:14"],"5":["14:15","14:20"],"6":["14:21","14:25"],"7":["14:26","15:26"],M:["15:22","15:26"]},"Y.2":{"1":["14:15","14:20"],"2":["14:21","14:25"],"3":["14:26","15:21"],"4":["15:22","15:26"],"5":["15:27","16:3"],"6":["16:4","16:7"],"7":["16:8","16:10"],M:["16:8","16:10"]},"Y.3":{"1":["14:26","15:21"],"2":["15:22","15:26"],"3":["15:27","16:10"],"4":["16:11","16:27"],"5":["16:28","16:36"],"6":["17:1","17:7"],"7":["17:8","17:16"],M:["17:14","17:16"]}}};const Yitro$1={book:2,descr:"full parashah with Ten Commandments every year",variations:{"Y.1":{"1":["18:1","18:12"],"2":["18:13","18:23"],"3":["18:24","18:27"],"4":["19:1","19:6"],"5":["19:7","19:19"],"6":["19:20","20:14"],"7":["20:15","20:23"],M:["20:19","20:23"]},"Y.2":"Y.1","Y.3":"Y.1"},alt:{descr:"triennial divisions with Ten Commandments in years two and three",variations:{"Y.1":{"1":["18:1","18:4"],"2":["18:5","18:8"],"3":["18:9","18:12"],"4":["18:13","18:16"],"5":["18:17","18:19"],"6":["18:20","18:23"],"7":["18:24","18:27"],M:["18:24","18:27"]},"Y.2":{"1":["19:1","19:6"],"2":["19:7","19:9"],"3":["19:10","19:13"],"4":["19:14","19:19"],"5":["19:20","20:14"],"6":["20:15","20:18"],"7":["20:19","20:23"],M:["20:21","20:23"]},"Y.3":"Y.2"}}};const Mishpatim$1={book:2,years:{"Y.1":{"1":["21:1","21:6"],"2":["21:7","21:11"],"3":["21:12","21:19"],"4":["21:20","21:27"],"5":["21:28","21:32"],"6":["21:33","21:36"],"7":["21:37","22:3"],M:["21:37","22:3"]},"Y.2":{"1":["22:4","22:8"],"2":["22:9","22:12"],"3":["22:13","22:18"],"4":["22:19","22:26"],"5":["22:27","23:5"],"6":["23:6","23:13"],"7":["23:14","23:19"],M:["23:14","23:19"]},"Y.3":{"1":["23:20","23:25"],"2":["23:26","23:30"],"3":["23:31","23:33"],"4":["24:1","24:6"],"5":["24:7","24:11"],"6":["24:12","24:14"],"7":["24:15","24:18"],M:["24:15","24:18"]}}};const Terumah$1={book:2,years:{"Y.1":{"1":["25:1","25:5"],"2":["25:6","25:9"],"3":["25:10","25:16"],"4":["25:17","25:22"],"5":["25:23","25:30"],"6":["25:31","25:33"],"7":["25:34","25:40"],M:["25:37","25:40"]},"Y.2":{"1":["26:1","26:3"],"2":["26:4","26:6"],"3":["26:7","26:11"],"4":["26:12","26:14"],"5":["26:15","26:21"],"6":["26:22","26:25"],"7":["26:26","26:30"],M:["26:26","26:30"]},"Y.3":{"1":["26:31","26:33"],"2":["26:34","26:37"],"3":["27:1","27:3"],"4":["27:4","27:8"],"5":["27:9","27:12"],"6":["27:13","27:16"],"7":["27:17","27:19"],M:["27:17","27:19"]}}};const Tetzaveh$1={book:2,years:{"Y.1":{"1":["27:20","28:5"],"2":["28:6","28:9"],"3":["28:10","28:12"],"4":["28:13","28:17"],"5":["28:18","28:21"],"6":["28:22","28:25"],"7":["28:26","28:30"],M:["28:28","28:30"]},"Y.2":{"1":["28:31","28:35"],"2":["28:36","28:38"],"3":["28:39","28:43"],"4":["29:1","29:4"],"5":["29:5","29:9"],"6":["29:10","29:14"],"7":["29:15","29:18"],M:["29:15","29:18"]},"Y.3":{"1":["29:19","29:21"],"2":["29:22","29:25"],"3":["29:26","29:30"],"4":["29:31","29:34"],"5":["29:35","29:37"],"6":["29:38","29:46"],"7":["30:1","30:10"],M:["30:8","30:10"]}}};const Vayakhel$1={book:2,variations:{"C.2":{"1":["35:1","35:3"],"2":["35:4","35:10"],"3":["35:11","35:20"],"4":["35:21","35:29"],"5":["35:30","35:35"],"6":["36:1","36:7"],"7":["36:8","36:19"],M:["36:17","36:19"]},"B.2":{"1":["37:17","37:19"],"2":["37:20","37:24"],"3":["37:25","37:29"],"4":["38:1","38:3"],"5":["38:4","38:8"],"6":["38:9","38:15"],"7":["38:16","38:20"],M:["38:18","38:20"]},"C.3":{"1":["36:20","36:30"],"2":["36:31","36:38"],"3":["37:1","37:16"],"4":["37:17","37:24"],"5":["37:25","37:29"],"6":["38:1","38:8"],"7":["38:9","38:20"],M:["38:18","38:20"]},"A.3":"C.3","D.1":"C.2","D.2":"C.3","E.1":"C.2","E.3":"C.3","F.1":{"1":["35:1","35:10"],"2":["35:11","35:20"],"3":["35:21","35:29"],"4":["35:30","36:7"],"5":["36:8","36:19"],"6":["36:20","36:38"],"7":["37:1","37:16"],M:["37:10","37:16"]},"G.1":{"1":["35:1","35:3"],"2":["35:4","35:10"],"3":["35:11","35:20"],"4":["35:21","35:23"],"5":["35:24","35:26"],"6":["35:27","35:29"],"7":["35:30","35:35"],M:["35:30","35:35"]},"G.2":{"1":["36:1","36:7"],"2":["36:8","36:13"],"3":["36:14","36:19"],"4":["36:20","36:30"],"5":["36:31","36:38"],"6":["37:1","37:9"],"7":["37:10","37:16"],M:["37:13","37:16"]},"G.3":{"1":["37:17","37:19"],"2":["37:20","37:24"],"3":["37:25","37:29"],"4":["38:1","38:3"],"5":["38:4","38:8"],"6":["38:9","38:15"],"7":["38:16","38:20"],M:["38:18","38:20"]}}};const Pekudei$1={book:2,variations:{"A.3":{"1":["39:22","39:26"],"2":["39:27","39:32"],"3":["39:33","39:43"],"4":["40:1","40:8"],"5":["40:9","40:16"],"6":["40:17","40:27"],"7":["40:28","40:38"],M:["40:34","40:38"]},"B.2":{"1":["38:21","38:23"],"2":["38:24","38:27"],"3":["38:28","39:1"],"4":["39:2","39:7"],"5":["39:8","39:14"],"6":["39:15","39:18"],"7":["39:19","39:21"],M:["39:19","39:21"]},"C.2":"B.2","C.3":"A.3","D.1":"B.2","D.2":"A.3","E.1":"B.2","E.3":"A.3","F.1":"B.2","G.1":{"1":["38:21","38:23"],"2":["38:24","38:27"],"3":["38:28","39:1"],"4":["39:2","39:7"],"5":["39:8","39:14"],"6":["39:15","39:18"],"7":["39:19","39:21"],M:["39:19","39:21"]},"G.2":{"1":["39:22","39:26"],"2":["39:27","39:29"],"3":["39:30","39:32"],"4":["39:33","39:43"],"5":["40:1","40:3"],"6":["40:4","40:6"],"7":["40:7","40:9"],M:["40:7","40:9"]},"G.3":{"1":["40:10","40:12"],"2":["40:13","40:16"],"3":["40:17","40:19"],"4":["40:20","40:25"],"5":["40:26","40:29"],"6":["40:30","40:33"],"7":["40:34","40:38"],M:["40:36","40:38"]}}};const Vayikra$1={book:3,years:{"Y.1":{"1":["1:1","1:4"],"2":["1:5","1:9"],"3":["1:10","1:13"],"4":["1:14","1:17"],"5":["2:1","2:6"],"6":["2:7","2:13"],"7":["2:14","2:16"],M:["2:14","2:16"]},"Y.2":{"1":["3:1","3:5"],"2":["3:6","3:11"],"3":["3:12","3:17"],"4":["4:1","4:7"],"5":["4:8","4:12"],"6":["4:13","4:21"],"7":["4:22","4:26"],M:["4:24","4:26"]},"Y.3":{"1":["4:27","4:31"],"2":["4:32","4:35"],"3":["5:1","5:10"],"4":["5:11","5:13"],"5":["5:14","5:16"],"6":["5:17","5:19"],"7":["5:20","5:26"],M:["5:24","5:26"]}}};const Tzav$1={book:3,years:{"Y.1":{"1":["6:1","6:3"],"2":["6:4","6:6"],"3":["6:7","6:11"],"4":["6:12","6:16"],"5":["6:17","6:23"],"6":["7:1","7:6"],"7":["7:7","7:10"],M:["7:7","7:10"]},"Y.2":{"1":["7:11","7:15"],"2":["7:16","7:18"],"3":["7:19","7:21"],"4":["7:22","7:27"],"5":["7:28","7:31"],"6":["7:32","7:34"],"7":["7:35","7:38"],M:["7:35","7:38"]},"Y.3":{"1":["8:1","8:5"],"2":["8:6","8:9"],"3":["8:10","8:13"],"4":["8:14","8:17"],"5":["8:18","8:21"],"6":["8:22","8:29"],"7":["8:30","8:36"],M:["8:33","8:36"]}}};const Shmini$1={book:3,years:{"Y.1":{"1":["9:1","9:6"],"2":["9:7","9:10"],"3":["9:11","9:16"],"4":["9:17","9:23"],"5":["9:24","10:3"],"6":["10:4","10:7"],"7":["10:8","10:11"],M:["10:8","10:11"]},"Y.2":{"1":["10:12","10:15"],"2":["10:16","10:20"],"3":["11:1","11:8"],"4":["11:9","11:12"],"5":["11:13","11:19"],"6":["11:20","11:28"],"7":["11:29","11:32"],M:["11:29","11:32"]},"Y.3":{"1":["11:1","11:8"],"2":["11:9","11:12"],"3":["11:13","11:19"],"4":["11:20","11:28"],"5":["11:29","11:32"],"6":["11:33","11:38"],"7":["11:39","11:47"],M:["11:45","11:47"]}}};const Tazria$1={book:3,variations:{"D.1":{"1":["12:1","12:4"],"2":["12:5","12:8"],"3":["13:1","13:5"],"4":["13:6","13:8"],"5":["13:9","13:17"],"6":["13:18","13:23"],"7":["13:24","13:28"],M:["13:26","13:28"]},"B.2":{"1":["13:29","13:34"],"2":["13:35","13:39"],"3":["13:40","13:42"],"4":["13:43","13:46"],"5":["13:47","13:50"],"6":["13:51","13:54"],"7":["13:55","13:59"],M:["13:57","13:59"]},"A.3":"B.2","C.1":{"1":["12:1","12:4"],"2":["12:5","12:8"],"3":["13:1","13:5"],"4":["13:6","13:17"],"5":["13:18","13:23"],"6":["13:24","13:28"],"7":["13:29","13:39"],M:["13:37","13:39"]},"D.3":"B.2"}};const Metzora$1={book:3,variations:{"A.3":{"1":["14:33","14:38"],"2":["14:39","14:47"],"3":["14:48","14:53"],"4":["14:54","15:7"],"5":["15:8","15:15"],"6":["15:16","15:28"],"7":["15:29","15:33"],M:["15:31","15:33"]},"B.2":{"1":["14:1","14:5"],"2":["14:6","14:9"],"3":["14:10","14:12"],"4":["14:13","14:15"],"5":["14:16","14:20"],"6":["14:21","14:25"],"7":["14:26","14:32"],M:["14:30","14:32"]},"C.1":"B.2","D.1":"B.2","D.3":"A.3"}};const Kedoshim$1={book:3,variations:{"A.3":{"1":["19:15","19:18"],"2":["19:19","19:22"],"3":["19:23","19:32"],"4":["19:33","19:37"],"5":["20:1","20:7"],"6":["20:8","20:22"],"7":["20:23","20:27"],M:["20:25","20:27"]},"B.2":{"1":["19:1","19:4"],"2":["19:5","19:10"],"3":["19:11","19:14"],"4":["19:15","19:18"],"5":["19:19","19:22"],"6":["19:23","19:32"],"7":["19:33","19:37"],M:["19:35","19:37"]},"C.1":"B.2","D.1":"B.2","D.3":{"1":["19:23","19:25"],"2":["19:26","19:28"],"3":["19:29","19:32"],"4":["19:33","19:37"],"5":["20:1","20:7"],"6":["20:8","20:22"],"7":["20:23","20:27"],M:["20:25","20:27"]}}};const Emor$1={book:3,years:{"Y.1":{"1":["21:1","21:6"],"2":["21:7","21:12"],"3":["21:13","21:15"],"4":["21:16","21:24"],"5":["22:1","22:9"],"6":["22:10","22:12"],"7":["22:13","22:16"],M:["22:13","22:16"]},"Y.2":{"1":["22:17","22:20"],"2":["22:21","22:25"],"3":["22:26","22:33"],"4":["23:1","23:3"],"5":["23:4","23:8"],"6":["23:9","23:14"],"7":["23:15","23:22"],M:["23:19","23:22"]},"Y.3":{"1":["23:23","23:25"],"2":["23:26","23:32"],"3":["23:33","23:44"],"4":["24:1","24:4"],"5":["24:5","24:9"],"6":["24:10","24:12"],"7":["24:13","24:23"],M:["24:21","24:23"]}}};const Behar$1={book:3,variations:{"D.1":{"1":["25:1","25:3"],"2":["25:4","25:7"],"3":["25:8","25:10"],"4":["25:11","25:13"],"5":["25:14","25:18"],"6":["25:19","25:24"],"7":["25:25","25:28"],M:["25:25","25:28"]},"B.2":{"1":["25:29","25:34"],"2":["25:35","25:38"],"3":["25:39","25:43"],"4":["25:44","25:46"],"5":["25:47","25:50"],"6":["25:51","25:54"],"7":["25:55","26:2"],M:["25:55","26:2"]},"A.3":"B.2","C.1":{"1":["25:1","25:3"],"2":["25:4","25:7"],"3":["25:8","25:13"],"4":["25:14","25:18"],"5":["25:19","25:24"],"6":["25:25","25:28"],"7":["25:29","25:38"],M:["25:35","25:38"]},"D.3":"B.2"}};const Bechukotai$1={book:3,variations:{"A.3":{"1":["27:1","27:4"],"2":["27:5","27:8"],"3":["27:9","27:15"],"4":["27:16","27:21"],"5":["27:22","27:25"],"6":["27:26","27:28"],"7":["27:29","27:34"],M:["27:32","27:34"]},"B.2":{"1":["26:3","26:5"],"2":["26:6","26:9"],"3":["26:10","26:46"],"4":["27:1","27:4"],"5":["27:5","27:8"],"6":["27:9","27:11"],"7":["27:12","27:15"],M:["27:12","27:15"]},"C.1":"B.2","D.1":"B.2","D.3":"A.3"}};const Bamidbar$1={book:4,years:{"Y.1":{"1":["1:1","1:4"],"2":["1:5","1:16"],"3":["1:17","1:19"],"4":["1:20","1:27"],"5":["1:28","1:35"],"6":["1:36","1:43"],"7":["1:44","1:54"],M:["1:52","1:54"]},"Y.2":{"1":["2:1","2:9"],"2":["2:10","2:16"],"3":["2:17","2:24"],"4":["2:25","2:31"],"5":["2:32","2:34"],"6":["3:1","3:4"],"7":["3:5","3:13"],M:["3:11","3:13"]},"Y.3":{"1":["3:14","3:20"],"2":["3:21","3:26"],"3":["3:27","3:39"],"4":["3:40","3:43"],"5":["3:44","3:51"],"6":["4:1","4:10"],"7":["4:11","4:20"],M:["4:17","4:20"]}}};const Nasso$1={book:4,years:{"Y.1":{"1":["4:21","4:24"],"2":["4:25","4:28"],"3":["4:29","4:33"],"4":["4:34","4:37"],"5":["4:38","4:49"],"6":["5:1","5:4"],"7":["5:5","5:10"],M:["5:8","5:10"]},"Y.2":{"1":["5:11","5:15"],"2":["5:16","5:26"],"3":["5:27","6:4"],"4":["6:5","6:8"],"5":["6:9","6:15"],"6":["6:16","6:21"],"7":["6:22","6:27"],M:["6:22","6:27"]},"Y.3":{"1":["7:1","7:11"],"2":["7:12","7:23"],"3":["7:24","7:35"],"4":["7:36","7:47"],"5":["7:48","7:59"],"6":["7:60","7:71"],"7":["7:72","7:89"],M:["7:87","7:89"]}}};const Korach$1={book:4,years:{"Y.1":{"1":["16:1","16:3"],"2":["16:4","16:7"],"3":["16:8","16:13"],"4":["16:14","16:19"],"5":["16:20","16:35"],"6":["17:1","17:8"],"7":["17:9","17:15"],M:["17:9","17:15"]},"Y.2":{"1":["16:20","16:27"],"2":["16:28","16:35"],"3":["17:1","17:5"],"4":["17:6","17:8"],"5":["17:9","17:15"],"6":["17:16","17:20"],"7":["17:21","17:24"],M:["17:21","17:24"]},"Y.3":{"1":["17:25","18:7"],"2":["18:8","18:10"],"3":["18:11","18:13"],"4":["18:14","18:20"],"5":["18:21","18:24"],"6":["18:25","18:29"],"7":["18:30","18:32"],M:["18:30","18:32"]}}};const Chukat$1={book:4,variations:{"C.2":{"1":["19:1","19:6"],"2":["19:7","19:9"],"3":["19:10","19:17"],"4":["19:18","19:22"],"5":["20:1","20:6"],"6":["20:7","20:13"],"7":["20:14","20:21"],M:["20:18","20:21"]},"B.2":{"1":["21:11","21:13"],"2":["21:14","21:16"],"3":["21:17","21:20"],"4":["21:21","21:25"],"5":["21:26","21:28"],"6":["21:29","21:33"],"7":["21:34","22:1"],M:["21:34","22:1"]},"C.3":{"1":["20:22","21:3"],"2":["21:4","21:10"],"3":["21:11","21:16"],"4":["21:17","21:20"],"5":["21:21","21:25"],"6":["21:26","21:33"],"7":["21:34","22:1"],M:["21:34","22:1"]},"A.3":"C.3","D.1":"C.2","D.2":"C.3","E.1":"C.2","E.3":"C.3","F.1":{"1":["19:1","19:9"],"2":["19:10","19:17"],"3":["19:18","20:6"],"4":["20:7","20:13"],"5":["20:14","20:21"],"6":["20:22","21:9"],"7":["21:10","21:20"],M:["21:16","21:20"]},"G.1":{"1":["19:1","19:6"],"2":["19:7","19:9"],"3":["19:10","19:13"],"4":["19:14","19:17"],"5":["19:18","19:22"],"6":["20:1","20:6"],"7":["20:7","20:13"],M:["20:7","20:13"]},"G.2":{"1":["20:1","20:6"],"2":["20:7","20:13"],"3":["20:14","20:17"],"4":["20:18","20:21"],"5":["20:22","21:3"],"6":["21:4","21:7"],"7":["21:8","21:10"],M:["21:8","21:10"]},"G.3":"B.2"}};const Balak$1={book:4,variations:{"A.3":{"1":["22:39","23:5"],"2":["23:6","23:12"],"3":["23:13","23:26"],"4":["23:27","23:30"],"5":["24:1","24:13"],"6":["24:14","24:25"],"7":["25:1","25:9"],M:["25:7","25:9"]},"B.2":{"1":["22:2","22:4"],"2":["22:5","22:7"],"3":["22:8","22:12"],"4":["22:13","22:20"],"5":["22:21","22:27"],"6":["22:28","22:30"],"7":["22:31","22:38"],M:["22:36","22:38"]},"C.2":"B.2","C.3":"A.3","D.1":"B.2","D.2":"A.3","E.1":"B.2","E.3":"A.3","F.1":"B.2","G.1":"B.2","G.2":{"1":["22:39","22:41"],"2":["23:1","23:3"],"3":["23:4","23:6"],"4":["23:7","23:12"],"5":["23:13","23:15"],"6":["23:16","23:18"],"7":["23:19","23:26"],M:["23:19","23:26"]},"G.3":{"1":["23:27","23:30"],"2":["24:1","24:9"],"3":["24:10","24:13"],"4":["24:14","24:19"],"5":["24:20","24:25"],"6":["25:1","25:6"],"7":["25:7","25:9"],M:["25:7","25:9"]}}};const Pinchas$1={book:4,years:{"Y.1":{"1":["25:10","25:12"],"2":["25:13","25:15"],"3":["25:16","26:4"],"4":["26:5","26:11"],"5":["26:12","26:22"],"6":["26:23","26:34"],"7":["26:35","26:51"],M:["26:48","26:51"]},"Y.2":{"1":["26:52","26:56"],"2":["26:57","26:62"],"3":["26:63","27:5"],"4":["27:6","27:14"],"5":["27:15","27:23"],"6":["28:1","28:10"],"7":["28:11","28:15"],M:["28:11","28:15"]},"Y.3":{"1":["28:16","28:25"],"2":["28:26","28:31"],"3":["29:1","29:6"],"4":["29:7","29:11"],"5":["29:12","29:16"],"6":["29:17","29:28"],"7":["29:29","30:1"],M:["29:35","30:1"]}}};const Matot$1={book:4,variations:{"B.2":{"1":["31:1","32:4"],"2":["32:5","32:19"],"3":["32:20","32:24"],"4":["32:25","32:27"],"5":["32:28","32:30"],"6":["32:31","32:38"],"7":["32:39","32:42"],M:["32:39","32:42"]},"A.3":"B.2","C.1":{"1":["30:2","30:9"],"2":["30:10","30:13"],"3":["30:14","30:17"],"4":["31:1","31:12"],"5":["31:13","31:24"],"6":["31:25","31:41"],"7":["31:42","31:54"],M:["31:51","31:54"]}}};const Masei$1={book:4,variations:{"A.3":{"1":["33:50","34:15"],"2":["34:16","34:29"],"3":["35:1","35:8"],"4":["35:9","35:15"],"5":["35:16","35:29"],"6":["35:30","35:34"],"7":["36:1","36:13"],M:["36:10","36:13"]},"B.2":{"1":["33:1","33:3"],"2":["33:4","33:6"],"3":["33:7","33:10"],"4":["33:11","33:23"],"5":["33:24","33:36"],"6":["33:37","33:43"],"7":["33:44","33:49"],M:["33:47","33:49"]},"C.1":"B.2"}};const Devarim={book:5,years:{"Y.1":{"1":["1:1","1:3"],"2":["1:4","1:7"],"3":["1:8","1:10"],"4":["1:11","1:21"],"5":["1:22","1:28"],"6":["1:29","1:38"],"7":["1:39","2:1"],M:["1:39","2:1"]},"Y.2":{"1":["2:2","2:5"],"2":["2:6","2:12"],"3":["2:13","2:16"],"4":["2:17","2:19"],"5":["2:20","2:22"],"6":["2:23","2:25"],"7":["2:26","2:30"],M:["2:28","2:30"]},"Y.3":{"1":["2:31","2:34"],"2":["2:35","2:37"],"3":["3:1","3:3"],"4":["3:4","3:7"],"5":["3:8","3:11"],"6":["3:12","3:14"],"7":["3:15","3:22"],M:["3:20","3:22"]}}};const Vaetchanan={book:5,descr:"with the Ten Commandments every year and the Sh'ma in years two and three",years:{"Y.1":{"1":["3:23","3:25"],"2":["3:26","4:4"],"3":["4:5","4:14"],"4":["4:15","4:20"],"5":["4:21","4:40"],"6":["4:41","4:49"],"7":["5:1","5:18"],M:["5:16","5:18"]},"Y.2":{"1":["5:1","5:18"],"2":["5:19","5:24"],"3":["5:25","5:30"],"4":["6:1","6:3"],"5":["6:4","6:9"],"6":["6:10","6:19"],"7":["6:20","6:25"],M:["6:23","6:25"]},"Y.3":{"1":["5:1","5:18"],"2":["5:19","5:24"],"3":["5:25","6:3"],"4":["6:4","6:9"],"5":["6:10","6:19"],"6":["6:20","6:25"],"7":["7:1","7:11"],M:["7:9","7:11"]},alt:{descr:"with the Ten Commandments in year two and the Sh'ma in year three",years:{"Y.1":{"1":["3:23","3:25"],"2":["3:26","3:29"],"3":["4:1","4:4"],"4":["4:5","4:14"],"5":["4:15","4:20"],"6":["4:21","4:29"],"7":["4:30","4:40"],M:["4:36","4:40"]},"Y.2":{"1":["4:41","4:43"],"2":["4:44","4:49"],"3":["5:1","5:18"],"4":["5:19","5:21"],"5":["5:22","5:24"],"6":["5:25","5:30"],"7":["6:1","6:3"],M:["6:1","6:3"]},"Y.3":{"1":["6:4","6:9"],"2":["6:10","6:19"],"3":["6:20","6:22"],"4":["6:23","6:25"],"5":["7:1","7:5"],"6":["7:6","7:8"],"7":["7:9","7:11"],M:["7:9","7:11"]}}}}};const Eikev$1={book:5,years:{"Y.1":{"1":["7:12","7:16"],"2":["7:17","7:21"],"3":["7:22","7:26"],"4":["8:1","8:3"],"5":["8:4","8:10"],"6":["8:11","8:18"],"7":["8:19","9:3"],M:["9:1","9:3"]},"Y.2":{"1":["9:4","9:10"],"2":["9:11","9:14"],"3":["9:15","9:21"],"4":["9:22","9:29"],"5":["10:1","10:5"],"6":["10:6","10:8"],"7":["10:9","10:11"],M:["10:9","10:11"]},"Y.3":{"1":["10:12","10:15"],"2":["10:16","10:22"],"3":["11:1","11:9"],"4":["11:10","11:12"],"5":["11:13","11:15"],"6":["11:16","11:21"],"7":["11:22","11:25"],M:["11:22","11:25"]}}};const Shoftim$1={book:5,years:{"Y.1":{"1":["16:18","16:20"],"2":["16:21","17:7"],"3":["17:8","17:10"],"4":["17:11","17:13"],"5":["17:14","17:17"],"6":["17:18","17:20"],"7":["18:1","18:5"],M:["18:3","18:5"]},"Y.2":{"1":["18:6","18:8"],"2":["18:9","18:13"],"3":["18:14","18:17"],"4":["18:18","18:22"],"5":["19:1","19:7"],"6":["19:8","19:10"],"7":["19:11","19:13"],M:["19:11","19:13"]},"Y.3":{"1":["19:14","19:21"],"2":["20:1","20:4"],"3":["20:5","20:9"],"4":["20:10","20:14"],"5":["20:15","20:20"],"6":["21:1","21:6"],"7":["21:7","21:9"],M:["21:7","21:9"]}}};const Nitzavim$1={book:5,descr:"When these Sidrot are not combined, they should each be read in their entirety.",variations:{"Y.1":{"1":["29:9","29:11"],"2":["29:12","29:14"],"3":["29:15","29:28"],"4":["30:1","30:6"],"5":["30:7","30:10"],"6":["30:11","30:14"],"7":["30:15","30:20"],M:["30:15","30:20"]},"Y.2":"Y.1","Y.3":"Y.1"}};const Vayeilech$1={book:5,descr:"When these Sidrot are not combined, they should each be read in their entirety.",variations:{"Y.1":{"1":["31:1","31:3"],"2":["31:4","31:6"],"3":["31:7","31:9"],"4":["31:10","31:13"],"5":["31:14","31:19"],"6":["31:20","31:24"],"7":["31:25","31:30"],M:["31:28","31:30"]},"Y.2":"Y.1","Y.3":"Y.1"}};var triennialConfig = {Bereshit:Bereshit$1,Noach:Noach$1,"Lech-Lecha":{book:1,years:{"Y.1":{"1":["12:1","12:3"],"2":["12:4","12:9"],"3":["12:10","12:13"],"4":["12:14","12:20"],"5":["13:1","13:4"],"6":["13:5","13:11"],"7":["13:12","13:18"],M:["13:16","13:18"]},"Y.2":{"1":["14:1","14:9"],"2":["14:10","14:16"],"3":["14:17","14:20"],"4":["14:21","14:24"],"5":["15:1","15:6"],"6":["15:7","15:16"],"7":["15:17","15:21"],M:["15:17","15:21"]},"Y.3":{"1":["16:1","16:6"],"2":["16:7","16:9"],"3":["16:10","16:16"],"4":["17:1","17:6"],"5":["17:7","17:17"],"6":["17:18","17:23"],"7":["17:24","17:27"],M:["17:24","17:27"]}}},Vayera:Vayera$1,"Chayei Sara":{book:1,years:{"Y.1":{"1":["23:1","23:4"],"2":["23:5","23:7"],"3":["23:8","23:12"],"4":["23:13","23:16"],"5":["23:17","23:20"],"6":["24:1","24:4"],"7":["24:5","24:9"],M:["24:5","24:9"]},"Y.2":{"1":["24:10","24:14"],"2":["24:15","24:20"],"3":["24:21","24:26"],"4":["24:27","24:33"],"5":["24:34","24:41"],"6":["24:42","24:49"],"7":["24:50","24:52"],M:["24:50","24:52"]},"Y.3":{"1":["24:53","24:58"],"2":["24:59","24:61"],"3":["24:62","24:67"],"4":["25:1","25:6"],"5":["25:7","25:11"],"6":["25:12","25:15"],"7":["25:16","25:18"],M:["25:16","25:18"]}}},Toldot:Toldot$1,Vayetzei:Vayetzei$1,Vayishlach:Vayishlach$1,Vayeshev:Vayeshev$1,Miketz:Miketz$1,Vayigash:Vayigash$1,Vayechi:Vayechi$1,Shemot:Shemot$1,Vaera:Vaera$1,Bo:Bo$1,Beshalach:Beshalach$1,Yitro:Yitro$1,Mishpatim:Mishpatim$1,Terumah:Terumah$1,Tetzaveh:Tetzaveh$1,"Ki Tisa":{book:2,years:{"Y.1":{"1":["30:11","30:13"],"2":["30:14","30:16"],"3":["30:17","30:21"],"4":["30:22","30:33"],"5":["30:34","30:38"],"6":["31:1","31:11"],"7":["31:12","31:17"],M:["31:15","31:17"]},"Y.2":{"1":["31:18","32:6"],"2":["32:7","32:11"],"3":["32:12","32:14"],"4":["32:15","32:24"],"5":["32:25","32:29"],"6":["32:30","33:6"],"7":["33:7","33:11"],M:["33:9","33:11"]},"Y.3":{"1":["33:12","33:16"],"2":["33:17","33:23"],"3":["34:1","34:9"],"4":["34:10","34:17"],"5":["34:18","34:21"],"6":["34:22","34:26"],"7":["34:27","34:35"],M:["34:33","34:35"]}}},Vayakhel:Vayakhel$1,Pekudei:Pekudei$1,Vayikra:Vayikra$1,Tzav:Tzav$1,Shmini:Shmini$1,Tazria:Tazria$1,Metzora:Metzora$1,"Achrei Mot":{book:3,variations:{"D.1":{"1":["16:1","16:3"],"2":["16:4","16:6"],"3":["16:7","16:11"],"4":["16:12","16:17"],"5":["16:18","16:24"],"6":["16:25","16:30"],"7":["16:31","16:34"],M:["16:31","16:34"]},"B.2":{"1":["17:1","17:7"],"2":["17:8","17:12"],"3":["17:13","17:16"],"4":["18:1","18:5"],"5":["18:6","18:21"],"6":["18:22","18:25"],"7":["18:26","18:30"],M:["18:26","18:30"]},"A.3":"B.2","C.1":{"1":["16:1","16:6"],"2":["16:7","16:11"],"3":["16:12","16:17"],"4":["16:18","16:24"],"5":["16:25","16:30"],"6":["16:31","16:34"],"7":["17:1","17:7"],M:["17:5","17:7"]},"D.3":"B.2"}},Kedoshim:Kedoshim$1,Emor:Emor$1,Behar:Behar$1,Bechukotai:Bechukotai$1,Bamidbar:Bamidbar$1,Nasso:Nasso$1,"Beha'alotcha":{book:4,years:{"Y.1":{"1":["8:1","8:4"],"2":["8:5","8:9"],"3":["8:10","8:14"],"4":["8:15","8:22"],"5":["8:23","8:26"],"6":["9:1","9:8"],"7":["9:9","9:14"],M:["9:12","9:14"]},"Y.2":{"1":["9:15","9:18"],"2":["9:19","9:23"],"3":["10:1","10:7"],"4":["10:8","10:10"],"5":["10:11","10:20"],"6":["10:21","10:28"],"7":["10:29","10:34"],M:["10:32","10:34"]},"Y.3":{"1":["10:35","11:9"],"2":["11:10","11:18"],"3":["11:19","11:22"],"4":["11:23","11:29"],"5":["11:30","11:35"],"6":["12:1","12:13"],"7":["12:14","12:16"],M:["12:14","12:16"]}}},"Sh'lach":{book:4,years:{"Y.1":{"1":["13:1","13:3"],"2":["13:4","13:16"],"3":["13:17","13:20"],"4":["13:21","13:24"],"5":["13:25","13:30"],"6":["13:31","13:33"],"7":["14:1","14:7"],M:["14:5","14:7"]},"Y.2":{"1":["14:8","14:10"],"2":["14:11","14:20"],"3":["14:21","14:25"],"4":["14:26","14:38"],"5":["14:39","14:42"],"6":["14:43","15:3"],"7":["15:4","15:7"],M:["15:4","15:7"]},"Y.3":{"1":["15:8","15:10"],"2":["15:11","15:16"],"3":["15:17","15:21"],"4":["15:22","15:26"],"5":["15:27","15:31"],"6":["15:32","15:36"],"7":["15:37","15:41"],M:["15:37","15:41"]}}},Korach:Korach$1,Chukat:Chukat$1,Balak:Balak$1,Pinchas:Pinchas$1,Matot:Matot$1,Masei:Masei$1,Devarim:Devarim,Vaetchanan:Vaetchanan,Eikev:Eikev$1,"Re'eh":{book:5,years:{"Y.1":{"1":["11:26","11:31"],"2":["11:32","12:5"],"3":["12:6","12:10"],"4":["12:11","12:16"],"5":["12:17","12:19"],"6":["12:20","12:25"],"7":["12:26","12:28"],M:["12:26","12:28"]},"Y.2":{"1":["12:29","13:1"],"2":["13:2","13:6"],"3":["13:7","13:12"],"4":["13:13","13:19"],"5":["14:1","14:8"],"6":["14:9","14:21"],"7":["14:22","14:29"],M:["14:22","14:29"]},"Y.3":{"1":["15:1","15:6"],"2":["15:7","15:11"],"3":["15:12","15:18"],"4":["15:19","15:23"],"5":["16:1","16:8"],"6":["16:9","16:12"],"7":["16:13","16:17"],M:["16:13","16:17"]}}},Shoftim:Shoftim$1,"Ki Teitzei":{book:5,years:{"Y.1":{"1":["21:10","21:14"],"2":["21:15","21:17"],"3":["21:18","21:21"],"4":["21:22","22:7"],"5":["22:8","22:12"],"6":["22:13","22:29"],"7":["23:1","23:7"],M:["23:4","23:7"]},"Y.2":{"1":["23:8","23:12"],"2":["23:13","23:15"],"3":["23:16","23:19"],"4":["23:20","23:24"],"5":["23:25","24:4"],"6":["24:5","24:9"],"7":["24:10","24:13"],M:["24:10","24:13"]},"Y.3":{"1":["24:14","24:16"],"2":["24:17","24:19"],"3":["24:20","24:22"],"4":["25:1","25:4"],"5":["25:5","25:10"],"6":["25:11","25:16"],"7":["25:17","25:19"],M:["25:17","25:19"]}}},"Ki Tavo":{book:5,years:{"Y.1":{"1":["26:1","26:3"],"2":["26:4","26:8"],"3":["26:9","26:11"],"4":["26:12","26:15"],"5":["26:16","26:19"],"6":["27:1","27:4"],"7":["27:5","27:10"],M:["27:7","27:10"]},"Y.2":{"1":["26:12","26:15"],"2":["26:16","26:19"],"3":["27:1","27:3"],"4":["27:4","27:8"],"5":["27:6","27:10"],"6":["27:11","28:3"],"7":["28:4","28:6"],M:["28:4","28:6"]},"Y.3":{"1":["27:11","28:3"],"2":["28:4","28:6"],"3":["28:7","28:11"],"4":["28:12","28:14"],"5":["28:15","28:69"],"6":["29:1","29:5"],"7":["29:6","29:8"],M:["29:6","29:8"]}}},Nitzavim:Nitzavim$1,Vayeilech:Vayeilech$1,"Ha'Azinu":{book:5,descr:"every year",variations:{"Y.1":{"1":["32:1","32:6"],"2":["32:7","32:12"],"3":["32:13","32:18"],"4":["32:19","32:28"],"5":["32:29","32:39"],"6":["32:40","32:43"],"7":["32:44","32:52"],M:["32:48","32:52"]},"Y.2":"Y.1","Y.3":"Y.1"}},"Vezot Haberakhah":{book:5,descr:"האזינו-וזאת הברכה should both be read in their entirety due to their brief length",variations:{"Y.1":{"1":["33:1","33:7"],"2":["33:8","33:12"],"3":["33:13","33:17"],"4":["33:18","33:21"],"5":["33:22","33:26"],"6":["33:27","33:29"],"7":["34:1","34:12"]},"Y.2":"Y.1","Y.3":"Y.1"}},"Vayakhel-Pekudei":{book:2,descr:"Aliyot Divisions for Combined Sidrot",years:{"Y.1":{"1":["35:1","35:10"],"2":["35:11","35:20"],"3":["35:21","35:29"],"4":["35:30","36:7"],"5":["36:8","36:19"],"6":["36:20","36:38"],"7":["37:1","37:16"],M:["37:10","37:16"]},"Y.2":{"1":["37:17","37:24"],"2":["37:25","37:29"],"3":["38:1","38:8"],"4":["38:9","38:20"],"5":["38:21","39:1"],"6":["39:2","39:7"],"7":["39:8","39:21"],M:["39:19","39:21"]},"Y.3":{"1":["39:22","39:26"],"2":["39:27","39:32"],"3":["39:33","39:43"],"4":["40:1","40:8"],"5":["40:9","40:16"],"6":["40:17","40:27"],"7":["40:28","40:38"],M:["40:34","40:38"]}},patterns:{TTS:"A",TST:"B",TSS:"C",SST:"D",STS:"E",STT:"F",SSS:"G"}},"Tazria-Metzora":{book:3,descr:"Aliyot Divisions for Combined Sidrot",years:{"Y.1":{"1":["12:1","12:4"],"2":["12:5","12:8"],"3":["13:1","13:5"],"4":["13:6","13:17"],"5":["13:18","13:23"],"6":["13:24","13:28"],"7":["13:29","13:39"],M:["13:37","13:39"]},"Y.2":{"1":["13:40","13:46"],"2":["13:47","13:54"],"3":["13:55","13:59"],"4":["14:1","14:5"],"5":["14:6","14:12"],"6":["14:13","14:20"],"7":["14:21","14:32"],M:["14:30","14:32"]},"Y.3":{"1":["14:33","14:38"],"2":["14:39","14:47"],"3":["14:48","14:53"],"4":["14:54","15:7"],"5":["15:8","15:15"],"6":["15:16","15:28"],"7":["15:29","15:33"],M:["15:31","15:33"]}},patterns:{TTS:"A",TST:"B",STT:"C",STS:"D"}},"Achrei Mot-Kedoshim":{book:3,descr:"Aliyot Divisions for Combined Sidrot",years:{"Y.1":{"1":["16:1","16:6"],"2":["16:7","16:11"],"3":["16:12","16:17"],"4":["16:18","16:24"],"5":["16:25","16:30"],"6":["16:31","16:34"],"7":["17:1","17:7"],M:["17:5","17:7"]},"Y.2":{"1":["17:8","17:12"],"2":["17:13","17:16"],"3":["18:1","18:5"],"4":["18:6","18:21"],"5":["18:22","18:30"],"6":["19:1","19:4"],"7":["19:5","19:14"],M:["19:11","19:14"]},"Y.3":{"1":["19:15","19:18"],"2":["19:19","19:22"],"3":["19:23","19:32"],"4":["19:33","19:37"],"5":["20:1","20:7"],"6":["20:8","20:22"],"7":["20:23","20:27"],M:["20:25","20:27"]}},patterns:{TTS:"A",TST:"B",STT:"C",STS:"D"}},"Behar-Bechukotai":{book:3,descr:"Aliyot Divisions for Combined Sidrot",years:{"Y.1":{"1":["25:1","25:3"],"2":["25:4","25:7"],"3":["25:8","25:13"],"4":["25:14","25:18"],"5":["25:19","25:24"],"6":["25:25","25:28"],"7":["25:29","25:38"],M:["25:35","25:38"]},"Y.2":{"1":["25:39","25:43"],"2":["25:44","25:46"],"3":["25:47","25:54"],"4":["25:55","26:2"],"5":["26:3","26:5"],"6":["26:6","26:9"],"7":["26:10","26:46"],M:["26:44","26:46"]},"Y.3":{"1":["27:1","27:4"],"2":["27:5","27:8"],"3":["27:9","27:15"],"4":["27:16","27:21"],"5":["27:22","27:25"],"6":["27:26","27:28"],"7":["27:29","27:34"],M:["27:32","27:34"]}},patterns:{TTS:"A",TST:"B",STT:"C",STS:"D"}},"Chukat-Balak":{book:4,descr:"Aliyot Divisions for Combined Sidrot",years:{"Y.1":{"1":["19:1","19:9"],"2":["19:10","19:17"],"3":["19:18","20:6"],"4":["20:7","20:13"],"5":["20:14","20:21"],"6":["20:22","21:9"],"7":["21:10","21:20"],M:["21:16","21:20"]},"Y.2":{"1":["21:21","21:25"],"2":["21:26","22:1"],"3":["22:2","22:7"],"4":["22:8","22:12"],"5":["22:13","22:20"],"6":["22:21","22:30"],"7":["22:31","22:38"],M:["22:36","22:38"]},"Y.3":{"1":["22:39","23:5"],"2":["23:6","23:12"],"3":["23:13","23:26"],"4":["23:27","23:30"],"5":["24:1","24:13"],"6":["24:14","24:25"],"7":["25:1","25:9"],M:["25:7","25:9"]}},patterns:{TTS:"A",TST:"B",TSS:"C",SST:"D",STS:"E",STT:"F",SSS:"G"}},"Matot-Masei":{book:4,descr:"Aliyot Divisions for Combined Sidrot",years:{"Y.1":{"1":["30:2","30:9"],"2":["30:10","30:13"],"3":["30:14","30:17"],"4":["31:1","31:12"],"5":["31:13","31:24"],"6":["31:25","31:41"],"7":["31:42","31:54"],M:["31:51","31:54"]},"Y.2":{"1":["32:1","32:4"],"2":["32:5","32:19"],"3":["32:20","32:27"],"4":["32:28","32:42"],"5":["33:1","33:6"],"6":["33:7","33:36"],"7":["33:37","33:49"],M:["33:47","33:49"]},"Y.3":{"1":["33:50","34:15"],"2":["34:16","34:29"],"3":["35:1","35:8"],"4":["35:9","35:15"],"5":["35:16","35:29"],"6":["35:30","35:34"],"7":["36:1","36:13"],M:["36:10","36:13"]}},patterns:{TTS:"A",TST:"B",STT:"C"}},"Nitzavim-Vayeilech":{book:5,descr:"Aliyot Divisions for Combined Sidrot",years:{"Y.1":{"1":["29:9","29:11"],"2":["29:12","29:14"],"3":["29:15","29:28"],"4":["30:1","30:3"],"5":["30:4","30:6"],"6":["30:7","30:10"],"7":["30:11","30:14"],M:["30:11","30:14"]},"Y.2":{"1":["30:1","30:3"],"2":["30:4","30:6"],"3":["30:7","30:10"],"4":["30:11","30:14"],"5":["30:15","30:20"],"6":["31:1","31:3"],"7":["31:4","31:6"],M:["31:4","31:6"]},"Y.3":{"1":["31:7","31:9"],"2":["31:10","31:13"],"3":["31:14","31:19"],"4":["31:20","31:22"],"5":["31:22","31:24"],"6":["31:25","31:27"],"7":["31:28","31:30"],M:["31:28","31:30"]}},patterns:{TTS:"Y",TST:"Y",TSS:"Y",SST:"Y",STS:"Y",STT:"Y",SSS:"Y"}}};
4460
-
4461
- const Bereshit={"1":{k:"Isaiah",b:"42:5",e:"42:21",note:"God identified as the creator // Creation"},"2":{k:"Isaiah",b:"40:25",e:"40:31",note:"God created, called by name // Eden"},"3":{k:"II Kings",b:"2:1",e:"2:13",note:"Elijah taken // Hanokh"}};const Noach={"1":{k:"Isaiah",b:"54:11",e:"55:5",note:"Storm tossed boat // Ark"},"2":{k:"Isaiah",b:"54:1",e:"54:10",note:"waters of Noah no more"},"3":{k:"Zephaniah",b:"3:9",e:"3:20",note:"one language // babel"}};const Vayera={"1":{k:"II Kings",b:"4:8",e:"4:17",note:"birth of promised child // promise to Sarah"},"2":{k:"II Kings",b:"6:8",e:"6:23",note:"blinding episode // Sodom"},"3":{k:"II Kings",b:"4:18",e:"4:36",note:"saving of child // akedah"}};const Toldot={"1":{k:"Malachi",b:"1:1",e:"1:14",note:"Jacob / Esau"},"2":{k:"II Samuel",b:"19:32",e:"19:40",note:"Barzilay infirm in old age // Isaac"},"3":[{k:"Judges",b:"3:15",e:"3:27",note:"Ehud's ploy // Jacob's ploy"},{k:"Judges",b:"3:30",e:"3:30"}]};const Vayetzei={"1":{k:"Hosea",b:"12:3",e:"12:14",note:"Jacob story"},"2":{k:"Zechariah",b:"1:7",e:"1:17",note:"striped horses //streaked sheep"},"3":{k:"I Samuel",b:"19:11",e:"19:18",note:"deceit / terafim / female wiles // Rachel hides terafim"}};const Vayishlach={"1":[{k:"Obadiah",b:"1:10",e:"1:18",note:"Jacob defeats Edom (Babylon) // Jacob meets Esau"},{k:"Obadiah",b:"1:21",e:"1:21"}],"2":{k:"Jeremiah",b:"30:10",e:"30:22",note:"Jacob will return, settle // Jacob's early settling in Shechem and Bet El"},"3":[{k:"Amos",b:"1:1",e:"1:1",note:"prophecy against Edom // genealogy of Edom"},{k:"Amos",b:"1:11",e:"2:3"}]};const Vayeshev={"1":[{k:"Amos",b:"2:6",e:"3:2",note:"reference to sale of righteous // sale of Joseph"},{k:"Amos",b:"3:7",e:"3:8"}],"2":{k:"I Samuel",b:"24:2",e:"24:15",note:"recognition of significant object David to Saul // Tamar to Judah"},"3":{k:"Judges",b:"7:9",e:"7:20",note:"Gideon dream interpretation // Joseph's in jail"}};const Miketz={"1":{k:"I Kings",b:"3:5",e:"3:15",note:"Solomon's dream // Pharaoh's dream"},"2":{k:"I Kings",b:"3:16",e:"4:1",note:"Solomon's wisdom // Joseph's"},"3":{k:"I Kings",b:"10:1",e:"10:9",note:"Solomon's wisdom and household // Joseph's"}};const Vayigash={"1":{k:"Ezekiel",b:"37:15",e:"37:28",note:"Judah and Joseph united"},"2":{k:"Zechariah",b:"10:3",e:"10:12",note:"Judah and Joseph, return from Egypt // J & J, brothers return to Jacob"},"3":{k:"Isaiah",b:"41:1",e:"41:10",note:"brother helps / Jacob not fear // Joseph settles his family in Goshen"}};const Vayechi={"1":{k:"Amos",b:"5:4",e:"5:15",note:"prophecy to remnants of Joseph // Joseph and kids"},"2":{k:"I Kings",b:"2:1",e:"2:12",note:"David's // Jacob's last speech"},"3":[{k:"II Samuel",b:"1:12",e:"1:12",note:"(lament over) deaths of Saul and Jonathan // deaths of Jacob, Joseph"},{k:"II Samuel",b:"1:17",e:"1:27"}]};const Shemot={"1":[{k:"Isaiah",b:"27:6",e:"27:13",note:"growth of Jacob / Israel // Israel in Egypt"},{k:"Isaiah",b:"29:22",e:"29:23"}],"2":[{k:"Joshua",b:"5:13",e:"6:5",note:"Joshua shoes off // burning bush"},{k:"Joshua",b:"6:15",e:"6:16"}],"3":[{k:"I Samuel",b:"9:15",e:"9:21",note:"anointing of Saul // Moses"},{k:"I Samuel",b:"9:27",e:"10:1"}]};const Vaera={"1":[{k:"Jeremiah",b:"1:1",e:"1:10",note:"appointment of Jeremiah // Moses"},{k:"Jeremiah",b:"1:8",e:"1:8"}],"2":[{k:"Ezekiel",b:"28:25",e:"29:12",note:"Speak to Pharaoh, show Egypt, strike Nile"},{k:"Ezekiel",b:"29:21",e:"29:21"}],"3":[{k:"Isaiah",b:"10:12",e:"10:12",note:"smite Assyria as Egypt"},{k:"Isaiah",b:"10:15",e:"10:26"},{k:"Isaiah",b:"10:32",e:"10:33"}]};const Bo={"1":{k:"Jeremiah",b:"10:1",e:"10:10",note:"goyim will fear signs from heaven // plagues"},"2":{k:"Jeremiah",b:"46:13",e:"46:28",note:"Egypt's fall / Israel's redemption // Exodus"},"3":{k:"II Samuel",b:"7:18",e:"7:29",note:"David recalls Exodus"}};const Beshalach={"1":{k:"Judges",b:"4:4",e:"4:24",note:"defeat of Sisera // defeat of Pharaoh"},"2":{k:"Judges",b:"5:1",e:"5:31",note:"Deborah's song // Moses' song of sea"},"3":[{k:"Joshua",b:"3:9",e:"3:17",note:"splitting Jordan, crossing on dry land // splitting Red Sea"},{k:"Joshua",b:"4:19",e:"4:24"}]};const Yitro={"1":{k:"Isaiah",b:"6:1",e:"6:13",note:"Isaiah's revelation of God // Moses' revelation at Sinai"},"2":{k:"Isaiah",b:"44:9",e:"44:23",note:"making idols to false god // you shall have no other Gods"},"3":{k:"Ezekiel",b:"16:4",e:"16:14",note:"Israel's birth / covenant / marriage(?) // revelation at Sinai"}};const Mishpatim={"1":[{k:"Jeremiah",b:"34:12",e:"34:22",note:"Jeremiah refers to the law that followed the covenant // Mishpatim"},{k:"Jeremiah",b:"33:25",e:"33:26"}],"2":{k:"I Samuel",b:"18:20",e:"18:28",note:"Michal's bride price // a law of Mishpatim"},"3":{k:"Joshua",b:"24:16",e:"24:28",note:"Joshua's covenant // na'aseh v'nishma"}};const Terumah={"1":{k:"Zechariah",b:"2:5",e:"2:17",note:"God's presence in Israelvshakhanti b'tokhekh"},"2":{k:"I Kings",b:"6:1",e:"6:13",note:"Temple // Tabernacle"},"3":{k:"II Samuel",b:"7:1",e:"7:16",note:"Temple // Tabernacle"}};const Tetzaveh={"1":{k:"Ezekiel",b:"43:10",e:"43:17",note:"Temple // Tabernacle"},"2":{k:"Haggai",b:"1:1",e:"1:12",note:"T / T"},"3":{k:"Haggai",b:"2:1",e:"2:9",note:"T / T"}};const Vayakhel={"1":{k:"I Kings",b:"7:40",e:"7:50",note:"T / T"},"2":{k:"I Kings",b:"7:13",e:"7:26",note:"T / T"},"3":{k:"Ezekiel",b:"43:1",e:"43:9",note:"T / T"}};const Pekudei={"1":{k:"I Kings",b:"8:1",e:"8:11",note:"T / T"},"2":{k:"I Kings",b:"8:10",e:"8:21",note:"T / T"},"3":{k:"I Kings",b:"8:22",e:"8:39",note:"T / T"}};const Vayikra={"1":{k:"Isaiah",b:"43:21",e:"44:8",note:"sacrifices"},"2":{k:"I Samuel",b:"2:13",e:"2:26",note:"misbehaving kohanim // if a priest sins"},"3":{k:"Malachi",b:"2:13",e:"3:4",note:"sinfulness ruins offering // sin offerings"}};const Tzav={"1":[{k:"Jeremiah",b:"7:21",e:"7:28",note:"justice over sacrifices // sacrifices at Tabernacle"},{k:"Jeremiah",b:"9:22",e:"9:23"}],"2":{k:"Jeremiah",b:"33:14",e:"33:22",note:"priests offer sacrifices // sacrifices at Tabernacle"},"3":{k:"Ezekiel",b:"42:13",e:"42:20",note:"priestly precincts / clothes // priestly vestments"}};const Shmini={"1":{k:"II Samuel",b:"6:1",e:"6:15",note:"Uzza struck down // Nadav and Avihu"},"2":{k:"Ezekiel",b:"43:18",e:"43:27",note:"8th day sacrifices"},"3":{k:"Hosea",b:"9:1",e:"9:9",note:"Israel has eaten non-kosher // kashrut rules"}};const Tazria={"1":{k:"Isaiah",b:"46:3",e:"46:13",note:"since birth // birth"},"2":{k:"Jeremiah",b:"30:1",e:"30:9",note:"im yoled zakhar // v'yaldah zakhar"}};const Metzora={"1":{k:"II Kings",b:"5:1",e:"5:14",note:"Healing of a leper"},"2":{k:"II Kings",b:"7:3",e:"7:16",note:"4 lepers discover Aram's flight"},"3":{k:"II Kings",b:"5:20",e:"5:27",note:"Gechazi gets leprosy"}};const Kedoshim={"1":{k:"Isaiah",b:"61:1",e:"61:9",note:"you shall be called Priests // kedoshim"},"2":{k:"Amos",b:"9:7",e:"9:15",note:"opposite of chosenness"},"3":{k:"Hosea",b:"4:1",e:"4:15",note:"opposite of holiness / niuf // kedoshim, arayot"}};const Emor={"1":{k:"Ezekiel",b:"44:15",e:"44:24",note:"the conduct of kohanim"},"2":[{k:"Malachi",b:"2:1",e:"2:10",note:"conduct of kohanim / chillul hashem // particularly vs. 22:31-32"},{k:"Malachi",b:"2:7",e:"2:7"}],"3":[{k:"Nachum",b:"1:1",e:"1:7",note:"Judah shall observe its festivals // complete festival calendar"},{k:"Nachum",b:"2:1",e:"2:3"},{k:"Nachum",b:"2:2b",e:"2:3a"}]};const Behar={"1":{k:"Jeremiah",b:"32:6",e:"32:15",note:"land redemption // shmittah"},"2":{k:"Jeremiah",b:"32:16",e:"32:27",note:"prayerwill Israel ever redeem its land // shmittah"}};const Bechukotai={"1":{k:"Jeremiah",b:"17:1",e:"17:14",note:"blessings and curses // tokhechah"},"2":[{k:"Jeremiah",b:"16:9",e:"16:15",note:"desolation and redemption // tokhechah"},{k:"Jeremiah",b:"16:19",e:"16:21"}],"3":{k:"Malachi",b:"3:5",e:"3:12",note:"curses and blessings // tokhechah"}};const Bamidbar={"1":[{k:"Hosea",b:"2:1",e:"2:7",note:"number, lead thru desert as after Egypt // census, desert wanderings"},{k:"Hosea",b:"2:16",e:"2:22"}],"2":{k:"Isaiah",b:"63:7",e:"63:16",note:"God carries us as in desert // desert wanderings"},"3":[{k:"Joshua",b:"8:30",e:"8:35",note:"kohanim who carried the ark // korachites"},{k:"Joshua",b:"8:33",e:"8:33"}]};const Nasso={"1":[{k:"Joshua",b:"6:5",e:"6:14",note:"kohanim carrying ark // gershunites and merarites"},{k:"Joshua",b:"6:12",e:"6:12"}],"2":[{k:"Judges",b:"13:2",e:"13:14",note:"Samson // nazirite rules"},{k:"Judges",b:"13:24",e:"13:25"}],"3":[{k:"Joel",b:"1:8",e:"1:13",note:"end of sacrifices, hope for restart // dedication of Tabernacle"},{k:"Joel",b:"2:12",e:"2:14"}]};const Korach={"1":{k:"I Samuel",b:"12:1",e:"12:13",note:"Samuel's apologia references Moses leadership // Moses'"},"2":{k:"I Samuel",b:"12:13",e:"12:22",note:"appointing non-prophet as leader // Korach's rebellion"},"3":{k:"Ezekiel",b:"45:1",e:"45:15",note:"portion of kohen and levi"}};const Chukat={"1":{k:"Judges",b:"15:9",e:"15:20",note:"Samson gets miraculous water from split ground // splitting rock"},"2":{k:"Judges",b:"11:12",e:"11:27",note:"journey across Moav recalled"},"3":[{k:"II Kings",b:"18:1",e:"18:13",note:"Hezekiah destroys nachash n'choshet // Moses builds nachash n'choshet"},{k:"II Kings",b:"19:15",e:"19:19"}]};const Balak={"1":{k:"Micah",b:"6:1",e:"6:8",note:"events of Balak recalled"},"2":{k:"Micah",b:"5:1",e:"5:8",note:"she'erit Yaakov described // Bila'am's blessing"},"3":{k:"Joshua",b:"24:1",e:"24:14",note:"history mentions Balak"}};const Pinchas={"1":{k:"I Kings",b:"19:1",e:"19:16",note:"Elijah's zeal // Pinchas"},"2":[{k:"Joshua",b:"17:1",e:"17:6",note:"Bnot Tzlofhad"},{k:"Joshua",b:"17:17",e:"17:18"}],"3":{k:"Ezekiel",b:"46:1",e:"46:11",note:"sacrifices on Shabbat and holidays // detailed festival sacrifices"}};const Matot={"1":{k:"Jeremiah",b:"1:11",e:"2:3",note:"miztafon tipatach hara'ah"},"2":{k:"II Kings",b:"22:8",e:"22:19",note:"hinneni mevi ra'ah (Hezekiah's discovered book of Torah)"},"3":{k:"Jeremiah",b:"14:11",e:"14:22",note:"ki yatzumu, eineni shomea"}};const Masei={"1":[{k:"Jeremiah",b:"2:4",e:"2:13",note:"shtayim ra'ot asah ami"},{k:"Jeremiah",b:"4:1",e:"4:2"}],"2":[{k:"Jeremiah",b:"2:14",e:"2:28",note:"ra vamar ozvekh"},{k:"Jeremiah",b:"3:4",e:"3:4"}],"3":[{k:"I Kings",b:"9:2",e:"9:9",note:"l'mashal v'lishninah"},{k:"I Kings",b:"9:4",e:"9:5a"}]};const Eikev={"1":{k:"Isaiah",b:"49:14",e:"49:26",note:"ani moshiekh"},"2":{k:"Isaiah",b:"50:1",e:"51:3",note:"sason v'simcha yimatze"},"3":{k:"Zechariah",b:"8:1",e:"8:8",note:"be'emet u-vitzdakah"}};const Shoftim={"1":[{k:"Isaiah",b:"51:12",e:"51:23",note:"anokhi anokhi"},{k:"Isaiah",b:"51:22",e:"51:22"}],"2":{k:"Isaiah",b:"52:1",e:"52:12",note:"uri uri"},"3":{k:"Isaiah",b:"44:24",e:"45:7",note:"l'ma'an avdi"}};const Nitzavim={"1":{k:"Isaiah",b:"61:10",e:"62:12",note:"sos asis"},"2":{k:"Isaiah",b:"63:1",e:"63:9",note:"tzaratam lo tzar"},"3":{k:"Isaiah",b:"65:16",e:"65:25",note:"terem yikrau ani e'eneh"}};const Vayeilech={"1":{k:"Isaiah",b:"61:10",e:"62:12",note:"sos asis"},"2":{k:"Isaiah",b:"63:1",e:"63:9",note:"tzaratam lo tzar"},"3":{k:"Isaiah",b:"65:16",e:"65:25",note:"terem yikrau ani e'eneh"}};const _holidays={"Pesach I":{k:"Joshua",b:"5:2",e:"5:12"},"Pesach I (on Shabbat)":{k:"Joshua",b:"5:2",e:"5:12"},"Pesach II":[{k:"II Kings",b:"23:1",e:"23:9"},{k:"II Kings",b:"23:21",e:"23:23"}],"Pesach VII":{k:"II Samuel",b:"22:1",e:"22:19"},"Pesach VII (on Shabbat)":{k:"II Samuel",b:"22:1",e:"22:19"},"Pesach VIII":[{k:"Isaiah",b:"11:1",e:"11:12"},{k:"Isaiah",b:"11:16",e:"11:16"}],"Pesach VIII (on Shabbat)":[{k:"Isaiah",b:"11:1",e:"11:12"},{k:"Isaiah",b:"11:16",e:"11:16"}],"Shavuot II":[{k:"Habakkuk",b:"3:1",e:"3:13"},{k:"Habakkuk",b:"3:18",e:"3:19"}],"Shavuot II (on Shabbat)":[{k:"Habakkuk",b:"3:1",e:"3:13"},{k:"Habakkuk",b:"3:18",e:"3:19"}],"Rosh Hashana II":{k:"Jeremiah",b:"31:2",e:"31:20"},"Yom Kippur":{k:"Isaiah",b:"58:1",e:"58:14"},"Yom Kippur (on Shabbat)":{k:"Isaiah",b:"58:1",e:"58:14"},"Yom Kippur (Mincha, Traditional)":[{k:"Jonah",b:"1:1",e:"4:11"},{k:"Micah",b:"7:18",e:"7:20"}],"Yom Kippur (Mincha, Alternate)":[{k:"Jonah",b:"1:1",e:"4:11"},{k:"Micah",b:"7:18",e:"7:20"}],"Sukkot I":[{k:"Zechariah",b:"14:1",e:"14:9"},{k:"Zechariah",b:"14:16",e:"14:21"}],"Sukkot I (on Shabbat)":[{k:"Zechariah",b:"14:1",e:"14:9"},{k:"Zechariah",b:"14:16",e:"14:21"}],"Sukkot II":{k:"I Kings",b:"8:2",e:"8:13"},"Sukkot Shabbat Chol ha-Moed":{k:"Ezekiel",b:"38:18",e:"39:7"},"Simchat Torah":{k:"Joshua",b:"1:1",e:"1:9"},"Shabbat Chanukah":{k:"Zechariah",b:"3:6",e:"4:7"},"Shabbat Rosh Chodesh Chanukah":{k:"Zechariah",b:"3:6",e:"4:7"},"Shabbat HaChodesh":{k:"Ezekiel",b:"45:16",e:"45:25"},"Shabbat HaChodesh (on Rosh Chodesh)":{k:"Ezekiel",b:"45:16",e:"45:25"},"Shabbat HaGadol":[{k:"Malachi",b:"3:13",e:"3:24"},{k:"Malachi",b:"3:23",e:"3:23"}],"Shabbat Parah":{k:"Ezekiel",b:"36:16",e:"36:38"},"Shabbat Shekalim":{k:"II Kings",b:"12:1",e:"12:17"},"Shabbat Shekalim (on Rosh Chodesh)":{k:"II Kings",b:"12:1",e:"12:17"},"Shabbat Shuva":[{k:"Hosea",b:"14:2",e:"14:10"},{k:"Micah",b:"7:18",e:"7:20"}],"Shabbat Shuva (alt)":{k:"Joel",b:"2:15",e:"2:27"},"Shabbat Zachor":{k:"I Samuel",b:"15:2",e:"15:34"},"Shabbat Rosh Chodesh":[{k:"Isaiah",b:"66:1",e:"66:14"},{k:"Isaiah",b:"66:22",e:"66:24"},{k:"Isaiah",b:"66:23",e:"66:23"}]};var triennialHaft = {Bereshit:Bereshit,Noach:Noach,"Lech-Lecha":{"1":{k:"Judges",b:"6:24",e:"6:32",note:"Gideon smashes dad's idol // Abraham and Terach's idols (midrash)"},"2":{k:"Joshua",b:"10:1",e:"10:14",note:"battle of Giveon // battle of 4/5 kings"},"3":{k:"Isaiah",b:"41:8",e:"41:16",note:"Israel, Abraham's progeny // promise to Abraham"}},Vayera:Vayera,"Chayei Sara":{"1":{k:"Isaiah",b:"51:1",e:"51:11",note:"Sarah and Abraham as models"},"2":{k:"I Samuel",b:"14:1",e:"14:12",note:"Jonathan's sign // Eliezer's sign"},"3":{k:"I Kings",b:"1:11",e:"1:31",note:"David's old age // Abraham's"}},Toldot:Toldot,Vayetzei:Vayetzei,Vayishlach:Vayishlach,Vayeshev:Vayeshev,Miketz:Miketz,Vayigash:Vayigash,Vayechi:Vayechi,Shemot:Shemot,Vaera:Vaera,Bo:Bo,Beshalach:Beshalach,Yitro:Yitro,Mishpatim:Mishpatim,Terumah:Terumah,Tetzaveh:Tetzaveh,"Ki Tisa":{"1":[{k:"Jeremiah",b:"17:19",e:"17:27",note:"re observance of Shabbat"},{k:"Jeremiah",b:"17:24",e:"17:25"}],"2":{k:"I Kings",b:"18:20",e:"18:39",note:"Elijah on Carmel // Golden Calf"},"3":{k:"Isaiah",b:"63:17",e:"64:8",note:"seeking forgiveness // Moses after Golden Calf"}},Vayakhel:Vayakhel,Pekudei:Pekudei,Vayikra:Vayikra,Tzav:Tzav,Shmini:Shmini,Tazria:Tazria,Metzora:Metzora,"Achrei Mot":{"1":{k:"Ezekiel",b:"22:1",e:"22:16",note:"abominations // arayot"},"2":{k:"Ezekiel",b:"20:2",e:"20:20",note:"abominations of Egypt // arayot"}},Kedoshim:Kedoshim,Emor:Emor,Behar:Behar,Bechukotai:Bechukotai,Bamidbar:Bamidbar,Nasso:Nasso,"Beha'alotcha":{"1":[{k:"Zechariah",b:"3:1",e:"3:5",note:"Purifying kohen, Menorah // Menorah, purifying leviim"},{k:"Zechariah",b:"4:1",e:"4:7"}],"2":[{k:"Joshua",b:"3:3",e:"3:8",note:"Ark leads in travel"},{k:"Joshua",b:"3:17",e:" 4:7"}],"3":{k:"II Kings",b:"20:1",e:"20:11",note:"Hezekiah healed thru prayer // Miriam"}},"Sh'lach":{"1":{k:"Joshua",b:"2:1",e:"2:11",note:"spies"},"2":{k:"Joshua",b:"14:6",e:"14:15",note:"Calev's reward"},"3":{k:"I Kings",b:"17:1",e:"17:16",note:"mkosheshet etzim // mkoshesh etzim"}},Korach:Korach,Chukat:Chukat,Balak:Balak,Pinchas:Pinchas,Matot:Matot,Masei:Masei,"Devarim - Isaiah 1:1-27, same as full kriyah":false,"Vaetchanan - Isaiah 40:1-26, same as full kriyah":false,Eikev:Eikev,"Re'eh":{"1":{k:"Isaiah",b:"54:11",e:"55:5**",note:"aniya soarah"},"2":{k:"Isaiah",b:"43:1",e:"43:10",note:"al tira ki g'altikha"},"3":{k:"Isaiah",b:"43:11",e:"43:20",note:"ami v'chiri"}},Shoftim:Shoftim,"Ki Teitzei":{"1":{k:"Isaiah",b:"54:1",e:"54:10",note:"roni akarah"},"2":{k:"Jeremiah",b:"33:1",e:"33:11",note:"kol sason v'kol simchah"},"3":[{k:"Isaiah",b:"48:12",e:"48:21",note:"goalekh k'dosh yisrael"},{k:"Isaiah",b:"4:20",e:"4:20"}]},"Ki Tavo":{"1":{k:"Isaiah",b:"60:1",e:"60:9",note:"kumi ori"},"2":{k:"Isaiah",b:"60:13",e:"60:22",note:"amekh kulam tzadikim"},"3":{k:"Zechariah",b:"8:11",e:"8:22",note:"emet umishpat shalom"}},Nitzavim:Nitzavim,Vayeilech:Vayeilech,"Ha'Azinu":{"1":[{k:"II Samuel",b:"22:1",e:"22:1",note:"David // Moses' song"},{k:"II Samuel",b:"22:31",e:"22:51"}],"2":[{k:"II Samuel",b:"22:1",e:"22:1",note:"David //Moses' song"},{k:"II Samuel",b:"22:19",e:"22:31"}],"3":{k:"Joshua",b:"23:1",e:"23:11",note:"Joshua's farewell"}},"Tish'a B'Av":{"1":[{k:"Jeremiah",b:"8:13",e:"8:23"},{k:"Jeremiah",b:"9:23",e:"9:23"}],"2":[{k:"Jeremiah",b:"9:1",e:"9:10"},{k:"Jeremiah",b:"9:23",e:"9:23"}],"3":{k:"Jeremiah",b:"9:11",e:"9:23"}},_holidays:_holidays};
4462
-
4463
- /**
4464
- * Represents triennial aliyot for a given date
4465
- * @typedef {Object} TriennialAliyot
4466
- * @property {Object<string,Aliyah>} aliyot - a map of aliyot 1-7 plus "M"
4467
- * @property {number} yearNum - year number, 0-2
4468
- * @property {Date} date - Shabbat date for when this parsha is read in this 3-year cycle
4469
- * @property {boolean} [readSeparately] - true if a double parsha is read separately in year `yearNum`
4470
- * @property {Date} [date1] - Shabbat date of the first part of a read-separately aliyah pair
4471
- * @property {Date} [date2] - Shabbat date of the second part of a read-separately aliyah pair
4472
- */
4473
-
4474
- const VEZOT_HABERAKHAH = 'Vezot Haberakhah';
4475
- const isSometimesDoubled = Object.create(null); // N.B. these are 0-based indices
4476
-
4477
- const doubled = [21, // Vayakhel-Pekudei
4478
- 26, // Tazria-Metzora
4479
- 28, // Achrei Mot-Kedoshim
4480
- 31, // Behar-Bechukotai
4481
- 38, // Chukat-Balak
4482
- 41, // Matot-Masei
4483
- 50 // Nitzavim-Vayeilech
4484
- ];
4485
- doubled.forEach(id => {
4486
- isSometimesDoubled[id] = true;
4487
- isSometimesDoubled[id + 1] = true;
4488
- });
4489
- /**
4490
- * takes a 0-based (Bereshit=0) parsha ID
4491
- * @private
4492
- * @param {number} id
4493
- * @return {string}
4494
- */
4495
-
4496
- function getDoubledName(id) {
4497
- const p1 = core.parshiot[id];
4498
- const p2 = core.parshiot[id + 1];
4499
- const name = p1 + '-' + p2;
4500
- return name;
4501
- }
4502
- /**
4503
- * A bit like Object.assign(), but just a shallow copy
4504
- * @private
4505
- * @param {any} target
4506
- * @param {any} source
4507
- * @return {any}
4508
- */
4509
-
4510
-
4511
- function shallowCopy(target, source) {
4512
- Object.keys(source).forEach(k => target[k] = source[k]);
4513
- return target;
4514
- }
4515
-
4516
- let triennialAliyot;
4517
- /** Triennial Torah readings */
4518
-
4519
- class Triennial {
4520
- /**
4521
- * Builds a Triennial object
4522
- * @param {number} [hebrewYear] Hebrew Year (default current year)
4523
- */
4524
- constructor(hebrewYear) {
4525
- hebrewYear = hebrewYear || new core.HDate().getFullYear();
4526
-
4527
- if (hebrewYear < 5744) {
4528
- throw new RangeError(`Invalid Triennial year ${hebrewYear}`);
4529
- }
4530
-
4531
- if (!triennialAliyot) {
4532
- triennialAliyot = Triennial.getTriennialAliyot();
4533
- }
4534
-
4535
- this.startYear = Triennial.getCycleStartYear(hebrewYear);
4536
- this.sedraArray = [];
4537
- this.bereshit = Array(4);
4538
-
4539
- for (let yr = 0; yr < 4; yr++) {
4540
- const sedra = core.HebrewCalendar.getSedra(this.startYear + yr, false);
4541
- const arr = sedra.getSedraArray();
4542
- this.bereshit[yr] = this.sedraArray.length + arr.indexOf(0);
4543
- this.sedraArray = this.sedraArray.concat(arr);
4544
- } // find the first Saturday on or after Rosh Hashana
4545
-
4546
-
4547
- const rh = new core.HDate(1, core.months.TISHREI, this.startYear);
4548
- const firstSaturday = rh.onOrAfter(6);
4549
- this.firstSaturday = firstSaturday.abs();
4550
- this.calcVariationOptions();
4551
- this.readings = this.cycleReadings(this.variationOptions);
4552
- }
4553
- /**
4554
- * @param {string} parsha parsha name ("Bereshit" or "Achrei Mot-Kedoshim")
4555
- * @param {number} yearNum 0 through 2 for which year of Triennial cycle
4556
- * @return {Object<string,Aliyah>} a map of aliyot 1-7 plus "M"
4557
- */
4558
-
4559
-
4560
- getReading(parsha, yearNum) {
4561
- const reading = shallowCopy({}, this.readings[parsha][yearNum]);
4562
-
4563
- if (reading.aliyot) {
4564
- Object.values(reading.aliyot).map(aliyah => leyning.calculateNumVerses(aliyah));
4565
- }
4566
-
4567
- return reading;
4568
- }
4569
- /**
4570
- * @return {number}
4571
- */
4572
-
4573
-
4574
- getStartYear() {
4575
- return this.startYear;
4576
- }
4577
- /**
4578
- * Returns triennial year 1, 2 or 3 based on this Hebrew year
4579
- * @param {number} year Hebrew year
4580
- * @return {number}
4581
- */
4582
-
4583
-
4584
- static getYearNumber(year) {
4585
- if (year < 5744) {
4586
- throw new RangeError(`Invalid Triennial year ${year}`);
4587
- }
4588
-
4589
- return (year - 5744) % 3 + 1;
4590
- }
4591
- /**
4592
- * Returns Hebrew year that this 3-year triennial cycle began
4593
- * @param {number} year Hebrew year
4594
- * @return {number}
4595
- */
4596
-
4597
-
4598
- static getCycleStartYear(year) {
4599
- return year - (this.getYearNumber(year) - 1);
4600
- }
4601
- /**
4602
- * First, determine if a doubled parsha is read [T]ogether or [S]eparately
4603
- * in each of the 3 years. Yields a pattern like 'SSS', 'STS', 'TTT', 'TTS'.
4604
- * @private
4605
- * @param {number} id
4606
- * @return {string}
4607
- */
4608
-
4609
-
4610
- getThreeYearPattern(id) {
4611
- let pattern = '';
4612
-
4613
- for (let yr = 0; yr <= 2; yr++) {
4614
- let found = this.sedraArray.indexOf(-1 * id, this.bereshit[yr]);
4615
-
4616
- if (found > this.bereshit[yr + 1]) {
4617
- found = -1;
4618
- }
4619
-
4620
- const pat = found == -1 ? 'S' : 'T';
4621
- pattern += pat;
4622
- }
4623
-
4624
- return pattern;
4625
- }
4626
- /**
4627
- * @private
4628
- */
4629
-
4630
-
4631
- calcVariationOptions() {
4632
- const option = this.variationOptions = Object.create(null);
4633
- doubled.forEach(id => {
4634
- const pattern = this.getThreeYearPattern(id);
4635
- const name = getDoubledName(id); // Next, look up the pattern in JSON to determine readings for each year.
4636
- // For "all-together", use "Y" pattern to imply Y.1, Y.2, Y.3
4637
-
4638
- const variation = pattern === 'TTT' ? 'Y' : triennialConfig[name].patterns[pattern];
4639
-
4640
- if (typeof variation === 'undefined') {
4641
- throw new Error(`Can't find pattern ${pattern} for ${name}, startYear=${this.startYear}`);
4642
- }
4643
-
4644
- const p1 = core.parshiot[id];
4645
- const p2 = core.parshiot[id + 1];
4646
- option[name] = option[p1] = option[p2] = variation;
4647
- });
4648
- }
4649
- /**
4650
- * @return {string}
4651
- */
4652
-
4653
-
4654
- debug() {
4655
- let str = `Triennial cycle started year ${this.startYear}\n`;
4656
- doubled.forEach(id => {
4657
- const pattern = this.getThreeYearPattern(id);
4658
- const name = getDoubledName(id);
4659
- const variation = this.variationOptions[name];
4660
- str += ` ${name} ${pattern} (${variation})\n`;
4661
- });
4662
- return str;
4663
- }
4664
- /**
4665
- * Builds a lookup table readings["Bereshit"][0], readings["Matot-Masei"][2]
4666
- * @private
4667
- * @param {Object} cycleOption
4668
- * @return {Map<string,Object[]>}
4669
- */
4670
-
4671
-
4672
- cycleReadings(cycleOption) {
4673
- const readings = Object.create(null);
4674
- core.parshiot.forEach(parsha => {
4675
- readings[parsha] = Array(3);
4676
- });
4677
- readings[VEZOT_HABERAKHAH] = Array(3);
4678
- doubled.map(getDoubledName).forEach(parsha => {
4679
- readings[parsha] = Array(3);
4680
- });
4681
-
4682
- for (let yr = 0; yr <= 2; yr++) {
4683
- this.cycleReadingsForYear(cycleOption, readings, yr);
4684
- }
4685
-
4686
- return readings;
4687
- }
4688
- /**
4689
- * @private
4690
- * @param {string} option
4691
- * @param {Map<string,Object[]>} readings
4692
- * @param {number} yr
4693
- */
4694
-
4695
-
4696
- cycleReadingsForYear(option, readings, yr) {
4697
- const startIdx = this.bereshit[yr];
4698
- const endIdx = this.bereshit[yr + 1];
4699
-
4700
- for (let i = startIdx; i < endIdx; i++) {
4701
- const id = this.sedraArray[i];
4702
-
4703
- if (typeof id !== 'number') {
4704
- continue;
4705
- }
4706
-
4707
- const h = id < 0 ? getDoubledName(-id) : core.parshiot[id];
4708
- const variationKey = isSometimesDoubled[id] ? option[h] : 'Y';
4709
- const variation = variationKey + '.' + (yr + 1);
4710
- const a = triennialAliyot[h][variation];
4711
-
4712
- if (!a) {
4713
- throw new Error(`can't find ${h} year ${yr} (variation ${variation})`);
4714
- }
4715
-
4716
- const aliyot = leyning.clone(a); // calculate numVerses for the subset of aliyot that don't cross chapter boundaries
4717
-
4718
- Object.keys(aliyot).forEach(num => leyning.calculateNumVerses(aliyot[num]));
4719
- readings[h][yr] = {
4720
- aliyot,
4721
- date: new core.HDate(this.firstSaturday + i * 7)
4722
- };
4723
- } // create links for doubled
4724
-
4725
-
4726
- doubled.forEach(id => {
4727
- const h = getDoubledName(id);
4728
- const combined = readings[h][yr];
4729
- const p1 = core.parshiot[id];
4730
- const p2 = core.parshiot[id + 1];
4731
-
4732
- if (combined) {
4733
- readings[p1][yr] = readings[p2][yr] = {
4734
- readTogether: h,
4735
- date: combined.date
4736
- };
4737
- } else {
4738
- readings[h][yr] = {
4739
- readSeparately: true,
4740
- date1: readings[p1][yr].date,
4741
- date2: readings[p2][yr].date
4742
- };
4743
- }
4744
- });
4745
- const vezotAliyot = triennialAliyot[VEZOT_HABERAKHAH]['Y.1'];
4746
- readings[VEZOT_HABERAKHAH][yr] = {
4747
- aliyot: vezotAliyot,
4748
- date: new core.HDate(23, core.months.TISHREI, this.startYear + yr)
4749
- };
4750
- }
4751
- /**
4752
- * Walks triennialConfig and builds lookup table for triennial aliyot
4753
- * @private
4754
- * @return {Object}
4755
- */
4756
-
4757
-
4758
- static getTriennialAliyot() {
4759
- const triennialAliyot = Object.create(null);
4760
- const triennialAliyotAlt = Object.create(null); // build a lookup table so we don't have to follow num/variation/sameas
4761
-
4762
- Object.keys(triennialConfig).forEach(parsha => {
4763
- const value = triennialConfig[parsha];
4764
-
4765
- if (typeof value !== 'object' || typeof value.book !== 'number') {
4766
- throw new Error(`misconfiguration: ${parsha}`);
4767
- }
4768
-
4769
- const book = leyning.BOOK[value.book];
4770
- triennialAliyot[parsha] = Triennial.resolveSameAs(parsha, book, value);
4771
-
4772
- if (value.alt) {
4773
- triennialAliyotAlt[parsha] = Triennial.resolveSameAs(parsha, book, value.alt);
4774
- }
4775
- }); // TODO: handle triennialAliyotAlt also
4776
-
4777
- return triennialAliyot;
4778
- }
4779
- /**
4780
- * Transforms input JSON with sameAs shortcuts like "D.2":"A.3" to
4781
- * actual aliyot objects for a given variation/year
4782
- * @private
4783
- * @param {string} parsha
4784
- * @param {string} book
4785
- * @param {Object} triennial
4786
- * @return {Object}
4787
- */
4788
-
4789
-
4790
- static resolveSameAs(parsha, book, triennial) {
4791
- const variations = triennial.years || triennial.variations;
4792
-
4793
- if (typeof variations === 'undefined') {
4794
- throw new Error(`Parashat ${parsha} has no years or variations`);
4795
- } // first pass, copy only alyiot definitions from triennialConfig into lookup table
4796
-
4797
-
4798
- const lookup = Object.create(null);
4799
- Object.keys(variations).forEach(variation => {
4800
- const aliyot = variations[variation];
4801
-
4802
- if (typeof aliyot === 'object') {
4803
- const dest = {};
4804
- Object.keys(aliyot).forEach(num => {
4805
- const src = aliyot[num];
4806
- const reading = {
4807
- k: book,
4808
- b: src[0],
4809
- e: src[1]
4810
- };
4811
-
4812
- if (src.v) {
4813
- reading.v = src.v;
4814
- }
4815
-
4816
- dest[num] = reading;
4817
- });
4818
- lookup[variation] = dest;
4819
- }
4820
- }); // second pass to resolve sameas strings (to simplify later lookups)
4821
-
4822
- Object.keys(variations).forEach(variation => {
4823
- const aliyot = variations[variation];
4824
-
4825
- if (typeof aliyot === 'string') {
4826
- if (typeof lookup[aliyot] === 'undefined') {
4827
- throw new Error(`Can't find source for ${parsha} ${variation} sameas=${aliyot}`);
4828
- }
4829
-
4830
- lookup[variation] = lookup[aliyot];
4831
- }
4832
- });
4833
- return lookup;
4834
- }
4835
-
4836
- }
4837
-
4838
- const __cache = Object.create(null);
4839
- /**
4840
- * Calculates the 3-year readings for a given year
4841
- * @param {number} year Hebrew year
4842
- * @return {Triennial}
4843
- */
4844
-
4845
-
4846
- function getTriennial(year) {
4847
- const cycleStartYear = Triennial.getCycleStartYear(year);
4848
- const cached = __cache[cycleStartYear];
4849
-
4850
- if (cached) {
4851
- return cached;
4852
- }
4853
-
4854
- const tri = new Triennial(cycleStartYear);
4855
- __cache[cycleStartYear] = tri;
4856
- return tri;
4857
- }
4858
- /**
4859
- * Looks up the triennial leyning for this Parashat HaShavua
4860
- * @param {Event} ev
4861
- * @return {TriennialAliyot} a map of aliyot 1-7 plus "M"
4862
- */
4863
-
4864
- function getTriennialForParshaHaShavua(ev) {
4865
- if (!ev instanceof core.Event) {
4866
- throw new TypeError(`Bad event argument: ${ev}`);
4867
- } else if (ev.getFlags() != core.flags.PARSHA_HASHAVUA) {
4868
- throw new TypeError(`Event must be parsha hashavua: ${ev.getDesc()}`);
4869
- }
4870
-
4871
- const hd = ev.getDate();
4872
- const hyear0 = hd.getFullYear();
4873
- const parsha = ev.parsha; // When Nitzavim & Vayeilech are not combined, they should each be read in their entirety.
4874
- // Vayeilech can occur immediately after RH, so back up one year to pick up
4875
- // the tail end of previous 3-year cycle.
4876
-
4877
- const p1 = parsha[0];
4878
- const hyear = p1 === 'Vayeilech' && hd.getMonth() === core.months.TISHREI ? hyear0 - 1 : hyear0;
4879
- const triennial = getTriennial(hyear);
4880
- const startYear = triennial.getStartYear();
4881
- const yearNum = hyear - startYear;
4882
- const name = leyning.parshaToString(parsha); // untranslated
4883
-
4884
- const reading = triennial.getReading(name, yearNum);
4885
-
4886
- if (typeof reading !== 'object') {
4887
- throw new ReferenceError(`Can't load reading for ${name} in ${hyear} (year number ${yearNum})`);
4888
- }
4889
-
4890
- const aliyotMap = shallowCopy({}, reading.aliyot); // possibly replace 7th aliyah and/or maftir
4891
-
4892
- const reason = {};
4893
- leyning.specialReadings(hd, false, aliyotMap, reason);
4894
- Object.keys(reason).forEach(num => {
4895
- const aliyah = aliyotMap[num];
4896
-
4897
- if (typeof aliyah === 'object') {
4898
- aliyah.reason = reason[num];
4899
- }
4900
- });
4901
- reading.yearNum = yearNum;
4902
- reading.aliyot = aliyotMap;
4903
- const triHaft = getTriennialHaftara(parsha, yearNum);
4904
- shallowCopy(reading, triHaft);
4905
- return reading;
4906
- }
4907
- /**
4908
- * Looks up the alternative triennial Haftara for a given parsha
4909
- *
4910
- * INSTRUCTIONS REGARDING DOUBLE PARSHIYOT
4911
- *
4912
- * In any 3 year sequence, in some years these parshiyot are read together
4913
- * and in some they are read separately.
4914
- * When separated: read the next haftarah of the parashah being read.
4915
- * When together: when reading the first third, read the next haftarah
4916
- * of the first parashah, when reading the latter two thirds, read the
4917
- * next haftarah of the latter parashah
4918
- * @private
4919
- * @param {string[]} parsha
4920
- * @param {number} yearNum 0, 1, or 2
4921
- * @return {Object}
4922
- */
4923
-
4924
- function getTriennialHaftara(parsha, yearNum) {
4925
- const idx = parsha.length === 1 || yearNum === 0 ? 0 : 1;
4926
- const name = parsha[idx];
4927
- const triHaft = triennialHaft[name];
4928
- const triHaft2 = triHaft === null || triHaft === void 0 ? void 0 : triHaft[yearNum + 1];
4929
-
4930
- if (typeof triHaft2 === 'object') {
4931
- const haft = leyning.cloneHaftara(triHaft2);
4932
- return {
4933
- haft: haft,
4934
- haftara: leyning.makeSummaryFromParts(haft),
4935
- haftaraNumV: leyning.sumVerses(haft)
4936
- };
4937
- }
4938
-
4939
- return {};
4940
- }
4941
-
4942
4474
  /**
4943
4475
  * @private
4944
4476
  * @param {Event} ev
@@ -5041,7 +4573,7 @@ function eventToClassicApiObject(ev, options) {
5041
4573
  const hyear = hd.getFullYear();
5042
4574
 
5043
4575
  if (isParsha && !il && hyear >= 5745) {
5044
- const triReading = getTriennialForParshaHaShavua(ev);
4576
+ const triReading = triennial.getTriennialForParshaHaShavua(ev);
5045
4577
 
5046
4578
  if (triReading) {
5047
4579
  result.leyning.triennial = formatAliyot({}, triReading.aliyot);
@@ -5381,4 +4913,4 @@ Object.defineProperty(exports, '__esModule', { value: true });
5381
4913
 
5382
4914
  return exports;
5383
4915
 
5384
- })({}, hebcal, hebcal__leyning);
4916
+ })({}, hebcal, hebcal__leyning, hebcal__triennial);