;ELC   
;;; compiled by kwzh@churchy.gnu.ai.mit.edu on Thu Feb 15 20:09:48 1996
;;; from file /gd/gnu/emacs/19.0/lisp/cal-hebrew.el
;;; emacs version 19.30.91.1.
;;; bytecomp version FSF 2.10
;;; optimization is on.
;;; this file uses opcodes which do not exist in Emacs 18.

(if (and (boundp 'emacs-version)
	 (or (and (boundp 'epoch::version) epoch::version)
	     (string-lessp emacs-version "19.29")))
    (error "`cal-hebrew.el' was compiled for Emacs 19.29 or later"))


(require (quote calendar))
#@186 Compute the Hebrew date (month day year) corresponding to absolute DATE.
The absolute date is the number of days elapsed since the (imaginary)
Gregorian date Sunday, December 31, 1 BC.
(defalias 'calendar-hebrew-from-absolute #[(date) "	!\n@)SH\nAA@)\\	TE!Y0 T !	\f\f\"E!VO \fT6 )	\fE!ZT\fE," [calendar-gregorian-from-absolute date greg-date [9 10 11 12 1 2 3 4 7 7 7 8] month nil day 3760 year calendar-absolute-from-hebrew 7 1 hebrew-calendar-last-month-of-year length hebrew-calendar-last-day-of-month] 7 (#$ . 511)])
#@43 t if YEAR is a Hebrew calendar leap year.
(defalias 'hebrew-calendar-leap-year-p #[(year) "_T¦W" [year 7 19] 2 (#$ . 1092)])
#@45 The last month of the Hebrew calendar YEAR.
(defalias 'hebrew-calendar-last-month-of-year #[(year) "	! Ç" [hebrew-calendar-leap-year-p year 13 12] 2 (#$ . 1228)])
#@32 The last day of MONTH in YEAR.
(defalias 'hebrew-calendar-last-day-of-month #[(month year) "ů>3 U !3 U& !3 U5 !5 ͇·" [month 2 4 6 10 13 12 hebrew-calendar-leap-year-p year 8 hebrew-calendar-long-heshvan-p 9 hebrew-calendar-short-kislev-p 29 30] 6 (#$ . 1403)])
#@96 Days from Sun. prior to start of Hebrew calendar to mean conjunction of Tishri of Hebrew YEAR.
(defalias 'hebrew-calendar-elapsed-days #[(year) "S_S_\\S_T\\Ʀ_\\	_ƥ_\\	ƥ\\\\̦_	Ʀ\\_̥\\\\Y ĦUh Yh ! ĦU Y S! T ĦE> T ." [year 19 235 12 7 months-elapsed 1080 793 204 parts-elapsed 5 hours-elapsed 24 parts 29 1 day 19440 2 9924 hebrew-calendar-leap-year-p 16789 alternative-day 0 3] 5 (#$ . 1702)])
#@32 Number of days in Hebrew YEAR.
(defalias 'hebrew-calendar-days-in-year #[(year) "	T!	!Z" [hebrew-calendar-elapsed-days year] 3 (#$ . 2201)])
#@38 t if Heshvan is long in Hebrew YEAR.
(defalias 'hebrew-calendar-long-heshvan-p #[(year) "	!¦U" [hebrew-calendar-days-in-year year 10 5] 2 (#$ . 2351)])
#@38 t if Kislev is short in Hebrew YEAR.
(defalias 'hebrew-calendar-short-kislev-p #[(year) "	!¦U" [hebrew-calendar-days-in-year year 10 3] 2 (#$ . 2513)])
#@143 Absolute date of Hebrew DATE.
The absolute date is the number of days elapsed since the (imaginary)
Gregorian date Sunday, December 31, 1 BC.
(defalias 'calendar-absolute-from-hebrew #[(date) "@)A@)AA@)\n	Wf !X= \"\\T# *	W_ \"\\TG *\\ 	W \"\\Tm *\\!\\\\+" [date month day year 7 0 sum m hebrew-calendar-last-month-of-year hebrew-calendar-last-day-of-month 1 hebrew-calendar-elapsed-days -1373429] 7 (#$ . 2676)])
(byte-code "! B! B" [boundp calendar-hebrew-month-name-array-common-year ["Nisan" "Iyar" "Sivan" "Tammuz" "Av" "Elul" "Tishri" "Heshvan" "Kislev" "Teveth" "Shevat" "Adar"] current-load-list calendar-hebrew-month-name-array-leap-year ["Nisan" "Iyar" "Sivan" "Tammuz" "Av" "Elul" "Tishri" "Heshvan" "Kislev" "Teveth" "Shevat" "Adar I" "Adar II"]] 2)
#@156 String of Hebrew date before sunset of Gregorian DATE.
Defaults to today's date if DATE is not given.
Driven by the variable `calendar-date-display-form'.
(defalias 'calendar-hebrew-date-string #[(&optional date) "	  AA@)S	@)	A@)	AA@)\fS_\\\fVh \f_\\̥ZʦU_ ΦU?_ ϦU)h T-_\\ʥ\\Υ[\\ϥ\\*!AA@)!  #*" [calendar-hebrew-from-absolute date calendar-current-date prior-years month day year 31 day-of-year 2 4 23 10 0 100 400 365 hebrew-date hebrew-calendar-leap-year-p calendar-hebrew-month-name-array-leap-year calendar-hebrew-month-name-array-common-year calendar-month-name-array calendar-date-string nil t] 7 (#$ . 3559)])
#@67 Show the Hebrew calendar equivalent of the date under the cursor.
(defalias 'calendar-print-hebrew-date #[nil "!!\"" [message "Hebrew date (until sunset): %s" calendar-hebrew-date-string calendar-cursor-to-date t] 5 (#$ . 4270) nil])
#@71 Absolute date of the anniversary of Hebrew DEATH-DATE in Hebrew YEAR.
(defalias 'hebrew-calendar-yahrzeit #[(death-date year) "A@)@)AA@)U3 \nU3 \fT!3 E!S UQ \nUQ \fT!Q E!S Ud !\nE! \nU U ! E! \nE!+" [death-date date death-day death-month death-year 8 30 hebrew-calendar-long-heshvan-p calendar-absolute-from-hebrew 9 1 year hebrew-calendar-short-kislev-p 10 13 hebrew-calendar-last-month-of-year 12 hebrew-calendar-leap-year-p 11] 5 (#$ . 4516)])
#@66 Move cursor to Hebrew DATE; echo Hebrew date unless NOECHO is t.
(defalias 'calendar-goto-hebrew-date #[(date &optional noecho) "!!!\f  " [calendar-goto-date calendar-gregorian-from-absolute calendar-absolute-from-hebrew date noecho calendar-print-hebrew-date] 4 (#$ . 5044) (let* ((today (calendar-current-date)) (year (calendar-read "Hebrew calendar year (>3760): " (quote (lambda (x) (> x 3760))) (int-to-string (extract-calendar-year (calendar-hebrew-from-absolute (calendar-absolute-from-gregorian today)))))) (month-array (if (hebrew-calendar-leap-year-p year) calendar-hebrew-month-name-array-leap-year calendar-hebrew-month-name-array-common-year)) (completion-ignore-case t) (month (cdr (assoc (capitalize (completing-read "Hebrew calendar month name: " (mapcar (quote list) (append month-array nil)) (if (= year 3761) (quote (lambda (x) (let ((m (cdr (assoc (car x) (calendar-make-alist month-array))))) (< 0 (calendar-absolute-from-hebrew (list m (hebrew-calendar-last-day-of-month m year) year))))))) t)) (calendar-make-alist month-array 1 (quote capitalize))))) (last (hebrew-calendar-last-day-of-month month year)) (first (if (and (= year 3761) (= month 10)) 18 1)) (day (calendar-read (format "Hebrew calendar day (%d-%d): " first last) (quote (lambda (x) (and (<= first x) (<= x last))))))) (list (list month day year)))])
#@252 Holiday on MONTH, DAY (Hebrew) called STRING.
If MONTH, DAY (Hebrew) is visible, the value returned is corresponding
Gregorian date in the form of the list (((month day year) STRING)).  Returns
nil if it is not visible in the current calendar window.
(defalias 'holiday-hebrew #[(month day string) "\nW \nZ \n\\\nW \nZ \n\\\nW+ \nZ. \n\\\nW: \nZ= \n\\\nWI \nZL \n\\>1\f\f_\\\\ӦTӥ)_\\\\\\ӦTӥ)EAA@)S@)A@)AA@)\nS_\\\nV\n_\\ĥZɦU ަU? ߦU)T-_\\ɥ\\ޥ[\\ߥ\\*!UUɦUMަU?MߦU)UY\nSH*EAA@)S@)A@)AA@)\nS_\\\nV\n_\\ĥZɦUަU?ߦU)T-_\\ɥ\\ޥ[\\ߥ\\*$!!&$!'&AA@)('AA@))\nW)(\nE!!!/.DC.\f" [displayed-month 11 month 1 10 2 9 3 8 4 7 5 displayed-year nil year y2 m2 y1 m1 12 -2 macro-y -1 date prior-years day 31 day-of-year 23 0 100 400 365 start-date 29 [31 28 31 30 31 30 31 31 30 31 30 31] end-date calendar-hebrew-from-absolute hebrew-start hebrew-end hebrew-y1 hebrew-y2 6 calendar-gregorian-from-absolute calendar-absolute-from-hebrew calendar-date-is-visible-p string] 8 (#$ . 6399)])
#@72 List of dates related to Rosh Hashanah, as visible in calendar window.
(defalias 'holiday-rosh-hashanah-etc #[nil "W	 V? \\E!!\\\"D\\!D\\!D\\!D\\!DZ\"!DS!DT!DĦUr \\v \\!D\\\"!D\\!D\\!D\\!D\\!D\\!D\\!D\\!D\\!D.!01 .!0\"00," [displayed-month 8 11 calendar-absolute-from-hebrew 7 1 displayed-year 3761 abs-r-h calendar-gregorian-from-absolute format "Rosh HaShanah %d" 9 "Yom Kippur" 14 "Sukkot" 21 "Shemini Atzeret" 22 "Simchat Torah" mandatory calendar-dayname-on-or-before 6 4 "Selichot (night)" "Erev Rosh HaShanah" "Rosh HaShanah (second day)" 3 2 "Tzom Gedaliah" "Shabbat Shuvah" "Erev Yom Kippur" 13 "Erev Sukkot" 15 "Sukkot (second day)" 16 "Hol Hamoed Sukkot (first day)" 17 "Hol Hamoed Sukkot (second day)" 18 "Hol Hamoed Sukkot (third day)" 19 "Hol Hamoed Sukkot (fourth day)" 20 "Hoshannah Rabbah" optional filter-visible-calendar-holidays output-list all-hebrew-calendar-holidays append] 15 (#$ . 7719)])
#@67 List of dates related to Hanukkah, as visible in calendar window.
(defalias 'holiday-hanukkah #[nil ">@\n_\f\\\\\\ŦTť)\f\nUR \n\nͦUJ \nϦU?J \nЦU)R тW SH*EAA@)S@)A@)AA@)\nS_\\V _\\٥Z\n\nͦU \nϦU? \nЦU) T-_\\ͥ\\ϥ[\\Х\\*!AA@)E!S!D!DT!D\\!D\\!D\\!D\\!D\\!D\\!D	!," [displayed-month (10 11 12 1 2) displayed-year y m 12 -1 1 macro-y calendar-hebrew-from-absolute year month 2 4 0 100 400 29 [31 28 31 30 31 30 31 31 30 31 30 31] date prior-years day 31 day-of-year 23 10 365 h-y calendar-absolute-from-hebrew 9 25 abs-h filter-visible-calendar-holidays calendar-gregorian-from-absolute "Erev Hanukkah" "Hanukkah (first day)" "Hanukkah (second day)" "Hanukkah (third day)" 3 "Hanukkah (fourth day)" "Hanukkah (fifth day)" 5 "Hanukkah (sixth day)" 6 "Hanukkah (seventh day)" 7 "Hanukkah (eighth day)"] 13 (#$ . 8780)])
#@67 List of dates related to Passover, as visible in calendar window.
(defalias 'holiday-passover-etc #[nil "	W?D\\E!!D\\!DD\fZ\"!DZ\"!DUI ZM Z!DZ!DZ!DUq Zu Z!DZ\"Z!DZ\"!DS\"!DS!DT!D\\!D\\!D\\!D\\!D\\!D\\!D\\!DU \\U\\\\!D\\!D\\!D\\!D\\!D8\f!:;A8!:\"::," [7 displayed-month calendar-absolute-from-hebrew 1 15 displayed-year 3760 abs-p calendar-gregorian-from-absolute "Passover" 50 "Shavuot" mandatory calendar-dayname-on-or-before 6 43 "Shabbat Shekalim" 30 "Shabbat Zachor" 2 33 31 "Fast of Esther" "Erev Purim" "Purim" 0 28 29 "Shushan Purim" 14 "Shabbat Parah" "Shabbat HaHodesh" "Shabbat HaGadol" "Erev Passover" "Passover (second day)" "Hol Hamoed Passover (first day)" 3 "Hol Hamoed Passover (second day)" 4 "Hol Hamoed Passover (third day)" 5 "Hol Hamoed Passover (fourth day)" "Passover (seventh day)" "Passover (eighth day)" 12 "Yom HaShoah" 18 19 20 "Yom HaAtzma'ut" "Lag BaOmer" "Yom Yerushalim" 49 "Erev Shavuot" 51 "Shavuot (second day)" optional filter-visible-calendar-holidays output-list all-hebrew-calendar-holidays append] 25 (#$ . 9789)])
#@65 List of dates around Tisha B'Av, as visible in calendar window.
(defalias 'holiday-tisha-b-av-etc #[nil "W	 V?\\ \f\\E!ɦU) Z- Z!D\"!DɦUI TK !D\\\"!DF!)" [displayed-month 5 9 calendar-absolute-from-hebrew displayed-year 3760 abs-t-a filter-visible-calendar-holidays calendar-gregorian-from-absolute 7 6 20 21 "Tzom Tammuz" calendar-dayname-on-or-before "Shabbat Hazon" "Tisha B'Av" "Shabbat Nahamu"] 9 (#$ . 11056)])
#@703 Add any Hebrew date entries from the diary file to `diary-entries-list'.
Hebrew date diary entries must be prefaced by `hebrew-diary-entry-symbol'
(normally an `H').  The same diary date forms govern the style of the Hebrew
calendar entries, except that the Hebrew month names must be spelled in full.
The Hebrew months are numbered from 1 to 13 with Nisan being 1, 12 being
Adar I and 13 being Adar II; you must use `Adar I' if you want Adar of a
common Hebrew year.  If a Hebrew date diary entry begins with a
`diary-nonmarking-symbol', the entry will appear in the diary listing, but will
not be marked in the calendar.  This function is provided for use with the
`nongregorian-diary-listing-hook'.
(defalias 'list-hebrew-diary-entries #[nil "	W \f!	\n	TYv\fAA@)S@)A@)AA@)S_\\V _\\٥ZצU ڦU? ۦU) T-_\\ץ\\ڥ[\\ۥ\\*!@)A@)AA@)@@ޚ @A @@@ޚ!!OR$%&!P)!P!P!,8ڦ!P9Q0!#68eb6#j#h\"xh\"!@ A !V`BCD !`BE $!E #@ A !F B`%G C`{\"*V.\nA -H AA@)S@)A@)AA@)S_\\VV_\\٥ZצUMڦU?MۦU)VT-_\\ץ\\ڥ[\\ۥ\\*T! )I 	!,eb" [0 number nil buffer-modified-p original-date regexp-quote diary-nonmarking-symbol mark gdate diary-modified buffer-read-only i diary-date-forms d calendar-hebrew-from-absolute date prior-years month day year 31 day-of-year 2 4 23 10 100 400 365 hdate backup date-form calendar-day-name "\\|" 3 ".?" dayname calendar-hebrew-month-name-array-leap-year calendar-month-name-array "\\*\\|" calendar-month-name monthname "\\*\\|0*" int-to-string abbreviated-calendar-year "" "\\(\\`\\|\\|\n\\)" "?" hebrew-diary-entry-symbol "\\(" mapconcat eval "\\)\\(" "\\)" regexp t case-fold-search re-search-forward re-search-backward "\\<" char-equal 13 looking-at " \\|	" backward-char 1 date-start entry-start "\\|\n\\|\\`" "\\|\n" subst-char-in-region add-to-diary-list calendar-gregorian-from-absolute set-buffer-modified-p] 10 (#$ . 11532)])
#@732 Mark days in the calendar window that have Hebrew date diary entries.
Each entry in diary-file (or included files) visible in the calendar window
is marked.  Hebrew date entries are prefaced by a hebrew-diary-entry-symbol
(normally an `H').  The same diary-date-forms govern the style of the Hebrew
calendar entries, except that the Hebrew month names must be spelled in full.
The Hebrew months are numbered from 1 to 13 with Nisan being 1, 12 being
Adar I and 13 being Adar II; you must use `Adar I' if you want Adar of a
common Hebrew year.  Hebrew date diary entries that begin with a
diary-nonmarking symbol will not be marked in the calendar.  This function
is provided for use as part of the nongregorian-diary-marking-hook.
(defalias 'mark-hebrew-diary-entries #[nil "W	@@ 	@A 	@!\"P\n\fG>GZU?G \\>GZU?_ \\>GZU?w \\>GZU? \\>GZU? \\!#ݰeb#M {\" {# { !&{	!'{(\"(GU* --AA@)S.---@)\f--A@)--AA@)\fS_\\0\fV0\f_\\Z0UU?U)0T00-._\\.\\.[\\.\\*!-AA@)7(!7_\\87ZV8Z78ZV8\\8*(!:\"\"O!@ #\"A!H#=#A 0&=#!!\"A&B &':#. .	A )" [diary-date-forms d backup date-form diary-name-pattern calendar-day-name-array dayname calendar-hebrew-month-name-array-leap-year t "\\|\\*" monthname "[0-9]+\\|\\*" month day year l d-name-pos 2 m-name-pos d-pos m-pos y-pos "\\(\\`\\|\\|\n\\)" regexp-quote hebrew-diary-entry-symbol "\\(" mapconcat eval "\\)\\(" "\\)" regexp case-fold-search re-search-forward nil dd-name mm-name string-to-int "" mm dd y-str 0 abbreviated-calendar-year calendar-hebrew-from-absolute calendar-current-date date prior-years 31 day-of-year 4 23 10 100 400 365 current-y y 50 yy mark-calendar-days-named assoc capitalize 3 calendar-make-alist (lambda (x) (substring x 0 3)) "*" mark-hebrew-calendar-date-pattern] 8 (#$ . 13783)])
#@119 Mark dates in calendar window that conform to Hebrew date MONTH/DAY/YEAR.
A value of 0 in any position is a wildcard.
(defalias 'mark-hebrew-calendar-date-pattern #[(month day year) "q	UMUM\fU/ 	\fE!!!+ !)/\n	W= 	Z@ 	\\	WL 	ZO 	\\	W[ 	Z^ 	\\	Wj 	Zm 	\\	Wy 	Z| 	\\>/\n\n_\\\\ۦTۥ)_\\\\\\ۦTۥ)EAA@)S@)A@)AA@)	S_\\!	V2!	_\\ͥZ!\fҦU)\fU?)\fU)2!T!!-_\\ҥ\\[\\\\*&Uz\fҦUr\fU?r\fU)z~	SH*EAA@)S@)A@)AA@)	S_\\!	V!	_\\ͥZ!\fҦU\fU?\fU)!T!!-_\\ҥ\\[\\\\*)&!+)!,+AA@)-,AA@).	W0.2-	\fE!!!H!.\f/\n։01232_3\\\\ۦT3ۥ2)32EAA@)S@)A@)AA@)	S_\\!	V!	_\\ͥZ!\fҦU\fU?\fU)!T!!-_\\ҥ\\[\\\\*12_3\\\\ۦT3ۥ2)32U?\fҦU7\fU?7\fU)?C	SH*2EAA@)S@)A@)AA@)	S_\\!	V!	_\\ͥZ!\fҦU\fU?\fU)!T!!-_\\ҥ\\[\\\\*01S0TY.!4@)54A@)64AA@)7	U		5U*U6U*\fU#\f7U*!!,-)" [calendar-buffer month 0 day year calendar-gregorian-from-absolute calendar-absolute-from-hebrew date calendar-date-is-visible-p mark-visible-calendar-date displayed-month 11 1 10 2 9 3 8 4 7 5 displayed-year nil y2 m2 y1 m1 12 -2 macro-y -1 prior-years 31 day-of-year 23 100 400 365 start-date 29 [31 28 31 30 31 30 31 31 30 31 30 31] end-date calendar-hebrew-from-absolute hebrew-start hebrew-end hebrew-y1 hebrew-y2 6 last-date first-date y m h-date h-month h-day h-year] 8 (#$ . 15908)])
#@132 Insert a diary entry.
For the Hebrew date corresponding to the date indicated by point.
Prefix arg will make the entry nonmarking.
(defalias 'insert-hebrew-diary-entry #[(arg) "!AA@)S	@)\nA@)AA@)\f\nS_\\\nVz \n_\\ҥZ\f\fЦUq \fԦU?q \fզU)z T-	_\\	Х\\	ԥ[\\	ե\\*!#P\")" [calendar-hebrew-month-name-array-leap-year calendar-month-name-array make-diary-entry hebrew-diary-entry-symbol calendar-date-string calendar-hebrew-from-absolute calendar-cursor-to-date t date prior-years month day year 31 day-of-year 2 4 23 10 0 100 400 365 nil arg] 10 (#$ . 17731) "P"])
#@152 Insert a monthly diary entry.
For the day of the Hebrew month corresponding to the date indicated by point.
Prefix arg will make the entry nonmarking.
(defalias 'insert-monthly-hebrew-diary-entry #[(arg) " 	 \f!\f\fAA@)S\f\f\f@)\f\fA@)\f\fAA@)S_\\V _\\֥ZԦU| ئU?| ٦U) T-_\\ԥ\\إ[\\٥\\*!!P\"*" [european-calendar-style (day " * ") ("* " day) calendar-date-display-form calendar-hebrew-month-name-array-leap-year calendar-month-name-array make-diary-entry hebrew-diary-entry-symbol calendar-date-string calendar-hebrew-from-absolute calendar-cursor-to-date t date prior-years month day year 31 day-of-year 2 4 23 10 0 100 400 365 arg] 10 (#$ . 18382) "P"])
#@151 Insert an annual diary entry.
For the day of the Hebrew year corresponding to the date indicated by point.
Prefix arg will make the entry nonmarking.
(defalias 'insert-yearly-hebrew-diary-entry #[(arg) " 	 \f!\f\fAA@)S\f\f\f@)\f\fA@)\f\fAA@)S_\\V _\\֥ZԦU| ئU?| ٦U) T-_\\ԥ\\إ[\\٥\\*!!P\"*" [european-calendar-style (day " " monthname) (monthname " " day) calendar-date-display-form calendar-hebrew-month-name-array-leap-year calendar-month-name-array make-diary-entry hebrew-diary-entry-symbol calendar-date-string calendar-hebrew-from-absolute calendar-cursor-to-date t date prior-years month day year 31 day-of-year 2 4 23 10 0 100 400 365 arg] 10 (#$ . 19141) "P"])
#@182 List Yahrzeit dates for *Gregorian* DEATH-DATE from START-YEAR to END-YEAR.
When called interactively from the calendar window, the date of death is taken
from the cursor position.
(defalias 'list-yahrzeit-dates #[(death-date start-year end-year) "!AA@)S@)A@)	AA@)\n	S_\\\fVy \f_\\ХZ\f\n\nΦUp \nҦU?p \nӦU)y \fT\f\f-_\\Υ\\ҥ[\\ӥ\\*!@)A@)AA@)!q!! ! \"##)#! eb&S'('T'Y'EAA@)S@)A@)	AA@)\n	S_\\\fVm\f_\\ХZ\f\n\nΦUd\nҦU?d\nӦU)m\fT\f\f-_\\Υ\\ҥ[\\ӥ\\*!AA@)\"!! )eb!!!-" [message "Computing yahrzeits..." "*Yahrzeits*" yahrzeit-buffer calendar-hebrew-from-absolute death-date date prior-years month day year 31 day-of-year 2 4 23 10 0 100 400 365 h-date h-month h-day h-year get-buffer-create nil buffer-read-only calendar-set-mode-line format "Yahrzeit dates for %s = %s" calendar-date-string hebrew-calendar-leap-year-p calendar-hebrew-month-name-array-leap-year calendar-hebrew-month-name-array-common-year calendar-month-name-array t erase-buffer start-year i end-year calendar-gregorian-from-absolute hebrew-calendar-yahrzeit 1 "\n" set-buffer-modified-p display-buffer "Computing yahrzeits...done"] 11 (#$ . 19915) (let* ((death-date (if (equal (current-buffer) (get-buffer calendar-buffer)) (calendar-cursor-to-date) (let* ((today (calendar-current-date)) (year (calendar-read "Year of death (>0): " (quote (lambda (x) (> x 0))) (int-to-string (extract-calendar-year today)))) (month-array calendar-month-name-array) (completion-ignore-case t) (month (cdr (assoc (capitalize (completing-read "Month of death (name): " (mapcar (quote list) (append month-array nil)) nil t)) (calendar-make-alist month-array 1 (quote capitalize))))) (last (calendar-last-day-of-month month year)) (day (calendar-read (format "Day of death (1-%d): " last) (quote (lambda (x) (and (< 0 x) (<= x last))))))) (list month day year)))) (death-year (extract-calendar-year death-date)) (start-year (calendar-read (format "Starting year of Yahrzeit table (>%d): " death-year) (quote (lambda (x) (> x death-year))) (int-to-string (1+ death-year)))) (end-year (calendar-read (format "Ending year of Yahrzeit table (>=%d): " start-year) (quote (lambda (x) (>= x start-year)))))) (list death-date start-year end-year))])
#@49 Hebrew calendar equivalent of date diary entry.
(defalias 'diary-hebrew-date #[nil "!\"" [format "Hebrew date (until sunset): %s" calendar-hebrew-date-string date] 4 (#$ . 22360)])
#@81 Omer count diary entry.
Entry applies if date is within 50 days after Passover.
(defalias 'diary-omer #[nil "AA@)\\E!AA@)S@)A@)AA@)	S_\\Vx _\\ϥZ		ͦUo 	ѦU?o 	ҦU)x T-_\\ͥ\\ѥ[\\ҥ\\*ZեզV W U ڂ U ڂ U ڂ U ڂ #$#," [calendar-absolute-from-hebrew 1 15 date 3760 passover prior-years month day year 31 day-of-year 2 4 23 10 0 100 400 365 omer 7 week 50 format "Day %d%s of the omer (until sunset)" "" ", that is, %d week%s%s" "s" " and %d day%s"] 13 (#$ . 22552)])
#@455 Yahrzeit diary entry--entry applies if date is yahrzeit or the day before.
Parameters are DEATH-MONTH, DEATH-DAY, DEATH-YEAR; the diary entry is assumed
to be the name of the person.  Date of death is on the *civil* calendar;
although the date of death is specified by the civil calendar, the proper
Hebrew calendar yahrzeit is determined.  If `european-calendar-style' is t, the
order of the parameters is changed to DEATH-DAY, DEATH-MONTH, DEATH-YEAR.
(defalias 'diary-yahrzeit #[(death-month death-day death-year) "	\f \n\fE \n\fEAA@)S@)A@)AA@)	S_\\Vx _\\ϥZ		ͦUo 	ѦU?o 	ҦU)x T-_\\ͥ\\ѥ[\\ҥ\\*!@)A@)AA@)AA@)S@)A@)AA@)	S_\\V_\\ϥZ		ͦU	ѦU?	ҦU)T-_\\ͥ\\ѥ[\\ҥ\\*!AA@)Z\"VUdTUUtuϦUゞϦU䂞ϦU悞%." [calendar-hebrew-from-absolute european-calendar-style death-day death-month death-year date prior-years month day year 31 day-of-year 2 4 23 10 0 100 400 365 h-date h-month h-day h-year d yr diff hebrew-calendar-yahrzeit y format "Yahrzeit of %s%s: %d%s anniversary" entry "" " (evening)" 1 "st" "nd" 3 "rd" "th"] 8 (#$ . 23160)])
#@104 Rosh Hodesh diary entry.
Entry applies if date is Rosh Hodesh, the day before, or the Saturday before.
(defalias 'diary-rosh-hodesh #[nil "AA@)S@)A@)AA@)\nS_\\\nV] \n_\\ʥZ\fȦUT \f̦U?T \fͦU)] T-	_\\	ȥ\\	̥[\\	ͥ\\*!@)A@)AA@)!\"  SHS!A@)U UUU H\" U \" \"UzV?U?U?!U1˂3H*ZH#WVUHUfm*ZH*ZH$UU?!U˂H\".\n" [date prior-years month day year 31 day-of-year 2 4 23 10 0 100 400 365 d calendar-hebrew-from-absolute h-date h-month h-day h-year hebrew-calendar-leap-year-p leap-year hebrew-calendar-last-day-of-month last-day calendar-hebrew-month-name-array-leap-year calendar-hebrew-month-name-array-common-year h-month-names this-month h-yesterday 30 1 7 format "Rosh Hodesh %s" "%s (first day)" "%s (second day)" 6 22 29 "Mevarhim Rosh Hodesh %s (%s)" hebrew-calendar-last-month-of-year calendar-day-name-array "Mevarhim Rosh Hodesh %s (%s-%s)" "tomorrow" "Erev Rosh Hodesh %s"] 8 (#$ . 24455)])
#@59 Parasha diary entry--entry applies if date is a Saturday.
(defalias 'diary-parasha #[nil "AA@)S@)A@)AA@)\nS_\\\nV] \n_\\ʥZ\fȦUT \f̦U?T \fͦU)] T-	_\\	ȥ\\	̥[\\	ͥ\\*ЦU2!AA@)E!E!ЦHЦH!!      ##$!J'\\\"))ZХ*'*H+0+<++@ +@!+A!#/+A!\"/+!\".\f)" [date prior-years month day year 31 day-of-year 2 4 23 10 0 100 400 365 d 7 6 calendar-hebrew-from-absolute h-year calendar-absolute-from-hebrew 1 rosh-hashanah 15 passover calendar-day-name-array rosh-hashanah-day passover-day hebrew-calendar-long-heshvan-p long-h hebrew-calendar-short-kislev-p short-k "complete" "incomplete" "regular" type intern format "hebrew-calendar-year-%s-%s-%s" year-format calendar-dayname-on-or-before first-saturday saturday parasha "Parashat %s" "%s (diaspora), %s (Israel)" hebrew-calendar-parasha-name "%s (Israel)"] 8 (#$ . 25625)])
#@42 The names of the parashiot in the Torah.
(defvar hebrew-calendar-parashiot-names ["Bereshith" "Noah" "Lech L'cha" "Vayera" "Hayei Sarah" "Toledoth" "Vayetze" "Vayishlah" "Vayeshev" "Mikketz" "Vayiggash" "Vayhi" "Shemoth" "Vaera" "Bo" "Beshallah" "Yithro" "Mishpatim" "Terumah" "Tetzavveh" "Ki Tissa" "Vayakhel" "Pekudei" "Vayikra" "Tzav" "Shemini" "Tazria" "Metzora" "Aharei Moth" "Kedoshim" "Emor" "Behar" "Behukkotai" "Bemidbar" "Naso" "Behaalot'cha" "Shelah L'cha" "Korah" "Hukkath" "Balak" "Pinhas" "Mattoth" "Masei" "Devarim" "Vaethanan" "Ekev" "Reeh" "Shofetim" "Ki Tetze" "Ki Tavo" "Nitzavim" "Vayelech" "Haazinu"] (#$ . 26616))
#@155 The structure of the parashiot.
Hebrew year starts on Saturday, is `incomplete' (Heshvan and Kislev each have
29 days), and has Passover start on Sunday.
(defconst hebrew-calendar-year-Saturday-incomplete-Sunday [nil 52 nil nil 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 nil 25 [26 27] [28 29] 30 [31 32] 33 34 35 36 37 38 39 40 [41 42] 43 44 45 46 47 48 49 50] (#$ . 27259))
#@159 The structure of the parashiot.
Hebrew year that starts on Saturday, is `complete' (Heshvan and Kislev each
have 30 days), and has Passover start on Tuesday.
(defconst hebrew-calendar-year-Saturday-complete-Tuesday [nil 52 nil nil 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 nil 25 [26 27] [28 29] 30 [31 32] 33 34 35 36 37 38 39 40 [41 42] 43 44 45 46 47 48 49 [50 51]] (#$ . 27666))
#@159 The structure of the parashiot.
Hebrew year that starts on Monday, is `incomplete' (Heshvan and Kislev each
have 29 days), and has Passover start on Tuesday.
(defconst hebrew-calendar-year-Monday-incomplete-Tuesday [51 52 nil 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 nil 25 [26 27] [28 29] 30 [31 32] 33 34 35 36 37 38 39 40 [41 42] 43 44 45 46 47 48 49 [50 51]] (#$ . 28081))
#@158 The structure of the parashiot.
Hebrew year that starts on Monday, is `complete' (Heshvan and Kislev each have
30 days), and has Passover start on Thursday.
(defconst hebrew-calendar-year-Monday-complete-Thursday [51 52 nil 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 nil 25 [26 27] [28 29] 30 [31 32] 33 (nil . 34) (34 . 35) (35 . 36) (36 . 37) (37 . 38) ([38 39] . 39) 40 [41 42] 43 44 45 46 47 48 49 [50 51]] (#$ . 28491))
#@164 The structure of the parashiot.
Hebrew year that starts on Tuesday, is `regular' (Heshvan has 29 days and
Kislev has 30 days), and has Passover start on Thursday.
(defconst hebrew-calendar-year-Tuesday-regular-Thursday [51 52 nil 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 nil 25 [26 27] [28 29] 30 [31 32] 33 (nil . 34) (34 . 35) (35 . 36) (36 . 37) (37 . 38) ([38 39] . 39) 40 [41 42] 43 44 45 46 47 48 49 [50 51]] (#$ . 28947))
#@165 The structure of the parashiot.
Hebrew year that starts on Thursday, is `regular' (Heshvan has 29 days and
Kislev has 30 days), and has Passover start on Saturday.
(defconst hebrew-calendar-year-Thursday-regular-Saturday [52 nil nil 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 nil (nil . 25) (25 . [26 27]) ([26 27] . [28 29]) ([28 29] . 30) (30 . 31) ([31 32] . 32) 33 34 35 36 37 38 39 40 [41 42] 43 44 45 46 47 48 49 50] (#$ . 29409))
#@158 The structure of the parashiot.
Hebrew year that starts on Thursday, is `complete' (Heshvan and Kislev each
have 30 days), and has Passover start on Sunday.
(defconst hebrew-calendar-year-Thursday-complete-Sunday [52 nil nil 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 nil 25 [26 27] [28 29] 30 [31 32] 33 34 35 36 37 38 39 40 [41 42] 43 44 45 46 47 48 49 50] (#$ . 29877))
#@161 The structure of the parashiot.
Hebrew year that starts on Saturday, is `incomplete' (Heshvan and Kislev each
have 29 days), and has Passover start on Tuesday.
(defconst hebrew-calendar-year-Saturday-incomplete-Tuesday [nil 52 nil nil 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 nil 28 29 30 31 32 33 34 35 36 37 38 39 40 [41 42] 43 44 45 46 47 48 49 [50 51]] (#$ . 30279))
#@160 The structure of the parashiot.
Hebrew year that starts on Saturday, is `complete' (Heshvan and Kislev each
have 30 days), and has Passover start on Thursday.
(defconst hebrew-calendar-year-Saturday-complete-Thursday [nil 52 nil nil 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 nil 28 29 30 31 32 33 (nil . 34) (34 . 35) (35 . 36) (36 . 37) (37 . 38) ([38 39] . 39) 40 [41 42] 43 44 45 46 47 48 49 [50 51]] (#$ . 30690))
#@160 The structure of the parashiot.
Hebrew year that starts on Monday, is `incomplete' (Heshvan and Kislev each
have 29 days), and has Passover start on Thursday.
(defconst hebrew-calendar-year-Monday-incomplete-Thursday [51 52 nil 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 nil 28 29 30 31 32 33 (nil . 34) (34 . 35) (35 . 36) (36 . 37) (37 . 38) ([38 39] . 39) 40 [41 42] 43 44 45 46 47 48 49 [50 51]] (#$ . 31147))
#@158 The structure of the parashiot.
Hebrew year that starts on Monday, is `complete' (Heshvan and Kislev each have
30 days), and has Passover start on Saturday.
(defconst hebrew-calendar-year-Monday-complete-Saturday [51 52 nil 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 nil (nil . 28) (28 . 29) (29 . 30) (30 . 31) (31 . 32) (32 . 33) (33 . 34) (34 . 35) (35 . 36) (36 . 37) (37 . 38) (38 . 39) (39 . 40) (40 . 41) ([41 42] . 42) 43 44 45 46 47 48 49 50] (#$ . 31599))
#@164 The structure of the parashiot.
Hebrew year that starts on Tuesday, is `regular' (Heshvan has 29 days and
Kislev has 30 days), and has Passover start on Saturday.
(defconst hebrew-calendar-year-Tuesday-regular-Saturday [51 52 nil 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 nil (nil . 28) (28 . 29) (29 . 30) (30 . 31) (31 . 32) (32 . 33) (33 . 34) (34 . 35) (35 . 36) (36 . 37) (37 . 38) (38 . 39) (39 . 40) (40 . 41) ([41 42] . 42) 43 44 45 46 47 48 49 50] (#$ . 32103))
#@160 The structure of the parashiot.
Hebrew year that starts on Thursday, is `incomplete' (Heshvan and Kislev both
have 29 days), and has Passover start on Sunday.
(defconst hebrew-calendar-year-Thursday-incomplete-Sunday [52 nil nil 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 nil 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50] (#$ . 32613))
#@159 The structure of the parashiot.
Hebrew year that starts on Thursday, is `complete' (Heshvan and Kislev both
have 30 days), and has Passover start on Tuesday.
(defconst hebrew-calendar-year-Thursday-complete-Tuesday [52 nil nil 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 nil 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 [50 51]] (#$ . 33011))
#@37 Name(s) corresponding to parasha P.
(defalias 'hebrew-calendar-parasha-name #[(p) "	! \f	HH\f	HH#\f	H" [arrayp p format "%s/%s" hebrew-calendar-parashiot-names 0 1] 6 (#$ . 33411)])
(provide (quote cal-hebrew))
