;ELC
;;; Compiled
;;; in Emacs version 26.1
;;; with all optimizations.
;;; This file uses dynamic docstrings, first added in Emacs 19.29.
;;; This file does not contain utf-8 non-ASCII characters,
;;; and so can be loaded in Emacs versions earlier than 23.
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(require 'calendar)
#@266 Number of days of the Mayan calendar epoch before absolute day 0.
This is the Goodman-Martinez-Thompson correlation used by almost all experts,
but some use 1137140. Using 1232041 gives you Spinden's correlation; using
1142840 gives you Hochleitner's correlation.
(defconst calendar-mayan-days-before-absolute-zero 1137142 (#$ . 429))
#@31 Mayan haab date at the epoch.
(defconst calendar-mayan-haab-at-epoch '(8 . 18) (#$ . 771))
#@33 Names of the Mayan haab months.
(defconst calendar-mayan-haab-month-name-array ["Pop" "Uo" "Zip" "Zotz" "Tzec" "Xul" "Yaxkin" "Mol" "Chen" "Yax" "Zac" "Ceh" "Mac" "Kankin" "Muan" "Pax" "Kayab" "Cumku"] (#$ . 868))
#@34 Mayan tzolkin date at the epoch.
(defconst calendar-mayan-tzolkin-at-epoch '(4 . 20) (#$ . 1088))
#@36 Names of the Mayan tzolkin months.
(defconst calendar-mayan-tzolkin-names-array ["Imix" "Ik" "Akbal" "Kan" "Chicchan" "Cimi" "Manik" "Lamat" "Muluc" "Oc" "Chuen" "Eb" "Ben" "Ix" "Men" "Cib" "Caban" "Etznab" "Cauac" "Ahau"] (#$ . 1192))
#@66 Compute the Mayan long count corresponding to the absolute DATE.
(defalias 'calendar-mayan-long-count-from-absolute #[(date) " \\\211\306\245\n\306\246\211\307\245\f\307\246\211\310\245\n\f\310\246\211\311\245\f\311\246\f
\n\f\257. \207" [date calendar-mayan-days-before-absolute-zero long-count baktun remainder katun 144000 7200 360 20 tun uinal kin] 6 (#$ . 1434)])
#@57 Convert MAYAN-LONG-COUNT into traditional written form.
(defalias 'calendar-mayan-long-count-to-string #[(mayan-long-count) "\301\302\303B\"\207" [mayan-long-count apply format "%s.%s.%s.%s.%s"] 4 (#$ . 1826)])
#@73 Given STR, a string of format "%d.%d.%d.%d.%d", return list of numbers.
(defalias 'calendar-mayan-string-from-long-count #[(str) "\303\304\3051/ \306\307\n #\203 \310\311\303\n\"!B\303\225\202 G\312U?\205+ \313\314\304\"0\2023 \210\2024 \210\237*\207" [rlc end str 0 nil (invalid-read-syntax) string-match "[0-9]+" string-to-number match-string 5 signal invalid-read-syntax] 4 (#$ . 2044)])
#@56 Convert absolute DATE into a Mayan haab date (a pair).
(defalias 'calendar-mayan-haab-from-absolute #[(date) " \\\306\n@AS\307_#\310\246\211\307\246\f\307\245T
,B\207" [date calendar-mayan-days-before-absolute-zero long-count calendar-mayan-haab-at-epoch day-of-haab day + 20 365 month] 6 (#$ . 2450)])
#@77 Number of days from Mayan haab DATE1 to next occurrence of haab date DATE2.
(defalias 'calendar-mayan-haab-difference #[(date1 date2) "\302A AZ\303_@ @Z\\\304\"\207" [date2 date1 mod 20 365] 4 (#$ . 2769)])
#@63 Absolute date of latest HAAB-DATE on or before absolute DATE.
(defalias 'calendar-mayan-haab-on-or-before #[(haab-date date) "\211\302\303\304! \"Z\305\246Z\207" [date haab-date calendar-mayan-haab-difference calendar-mayan-haab-from-absolute 0 365] 5 (#$ . 2984)])
#@56 String of Mayan date of Gregorian DATE; default today.
(defalias 'calendar-mayan-date-string #[(&optional date) "\206 \306 \211\3078)\310\211\311U\203 \312\313!\202W\n\311V\203\220 \nS\314\211\211@)\211A@)\3078)\fS\315_\\\307V\203}
\316\317_\\\320\245Z\n\211\311W\203` \321\n!S\n\317\246\311U\205v \n\322\246\311U?\206v \n\323\246\311U)\203}
T
- \324_ \317\245 \322\245[ \323\245%\202W\321\nT!\325\211\211@)\211A@)\3078)\fS\315_\\\307V\203\355
\316\317_\\\320\245Z\n\211\311W\203\320 \321\n!S\n\317\246\311U\205\346 \n\322\246\311U?\206\346 \n\323\246\311U)\203\355
T
- \324_ \317\245 \322\245[ \323\245\326\211\326@)\211A@)\3078)\fS\315_\\\307V\203S
\316\317_\\\320\245Z\n\211\311W\2036\321\n!S\n\317\246\311U\205L\n\322\246\311U?\206L\n\323\246\311U)\203S
T
-&+\327! \330!!\331!\"\332\333\334\"!\335 !\336!!$,\207" [date offset-years year month day day-of-year calendar-current-date 2 nil 0 user-error "There was no year zero" + 31 23 4 10 abs 100 400 365 - (12 31 -1) calendar-mayan-tzolkin-from-absolute calendar-mayan-haab-from-absolute calendar-mayan-long-count-from-absolute format "Long count = %s; tzolkin = %s; haab = %s" calendar-mayan-long-count-to-string calendar-mayan-tzolkin-to-string calendar-mayan-haab-to-string d tzolkin haab long-count] 11 (#$ . 3257)])
#@67 Show the Mayan long count, tzolkin, and haab equivalents of date.
(defalias 'calendar-mayan-print-date #[nil "\300\301\302\303\304!!\"\207" [message "Mayan date: %s" calendar-mayan-date-string calendar-cursor-to-date t] 5 (#$ . 4630) nil])
#@31 Prompt for a Mayan haab date.
(defalias 'calendar-mayan-read-haab-date #[nil "\305\306\307\310\"\311\n \312W\205 \313\"\314\315\316\317\320\"\321\305$\322\323\"\305#A \f,B\207" [completion-ignore-case haab-day calendar-mayan-haab-month-name-array haab-month-list haab-month t calendar-read "Haab kin (0-19): " #[(x) "\301Y\205 \302W\207" [x 0 20] 2] append 5 ("Uayeb") assoc-string completing-read "Haab uinal: " mapcar list nil calendar-make-alist 1] 6 (#$ . 4876)])
#@34 Prompt for a Mayan tzolkin date.
(defalias 'calendar-mayan-read-tzolkin-date #[nil "\305\306\307\310\"\311\n\312\"\313\314\315\316\317\"\312\305$\320\321\"\305#A \f,B\207" [completion-ignore-case tzolkin-count calendar-mayan-tzolkin-names-array tzolkin-name-list tzolkin-name t calendar-read "Tzolkin kin (1-13): " #[(x) "\301V\205 \302W\207" [x 0 14] 2] append nil assoc-string completing-read "Tzolkin uinal: " mapcar list calendar-make-alist 1] 6 (#$ . 5360)])
#@92 Move cursor to next instance of Mayan HAAB-DATE.
Echo Mayan date unless NOECHO is non-nil.
(defalias 'calendar-mayan-next-haab-date #[(haab-date &optional noecho) "\306\307\310\311\312 \211\313 8)\314\211\315U\203 \316\317!\202j\315V\203\227 S\320 \211\211@) \211A@) \313 8)
\fS\321_\\\f\313V\203\203 \322\f\323_\\\324\245Z\211\315W\203d \325!S\323\246\315U\205z \326\246\315U?\206z \327\246\315U)\203\203 T-\n\311_\n\323\245\n\326\245[\n\327\245%\202j\325T!\330 \211\211@) \211A@) \313 8)
\fS\321_\\\f\313V\203\371 \322\f\323_\\\324\245Z\211\315W\203\332 \325!S\323\246\315U\205\360 \326\246\315U?\206\360 \327\246\315U)\203\371 T-\n\311_\n\323\245\n\326\245[\n\327\245\331\211\331@) \211A@) \313 8)
\fS\321_\\\f\313V\203e\322\f\323_\\\324\245Z\211\315W\203F\325!S\323\246\315U\205\\\326\246\315U?\206\\\327\246\315U)\203eT-&+\\\"!!\210\206w\332 \207" [haab-date date offset-years year month day calendar-goto-date calendar-gregorian-from-absolute calendar-mayan-haab-on-or-before 365 calendar-cursor-to-date 2 nil 0 user-error "There was no year zero" + 31 23 4 10 abs 100 400 - (12 31 -1) calendar-mayan-print-date day-of-year noecho] 16 (#$ . 5839) (list (calendar-mayan-read-haab-date))])
#@96 Move cursor to previous instance of Mayan HAAB-DATE.
Echo Mayan date unless NOECHO is non-nil.
(defalias 'calendar-mayan-previous-haab-date #[(haab-date &optional noecho) "\306\307\310\311 \211\312 8)\313\211\314U\203 \315\316!\202i\314V\203\226 S\317 \211\211@) \211A@) \312 8)
\fS\320_\\\f\312V\203\202 \321\f\322_\\\323\245Z\211\314W\203c \324!S\322\246\314U\205y \325\246\314U?\206y \326\246\314U)\203\202 T-\n\327_\n\322\245\n\325\245[\n\326\245%\202i\324T!\330 \211\211@) \211A@) \312 8)
\fS\320_\\\f\312V\203\370 \321\f\322_\\\323\245Z\211\314W\203\331 \324!S\322\246\314U\205\357 \325\246\314U?\206\357 \326\246\314U)\203\370 T-\n\327_\n\322\245\n\325\245[\n\326\245\331\211\331@) \211A@) \312 8)
\fS\320_\\\f\312V\203d\321\f\322_\\\323\245Z\211\314W\203E\324!S\322\246\314U\205[\325\246\314U?\206[\326\246\314U)\203dT-&+S\"!!\210\206v\332 \207" [haab-date date offset-years year month day calendar-goto-date calendar-gregorian-from-absolute calendar-mayan-haab-on-or-before calendar-cursor-to-date 2 nil 0 user-error "There was no year zero" + 31 23 4 10 abs 100 400 365 - (12 31 -1) calendar-mayan-print-date day-of-year noecho] 15 (#$ . 7139) (list (calendar-mayan-read-haab-date))])
#@69 Convert Mayan HAAB date (a pair) into its traditional written form.
(defalias 'calendar-mayan-haab-to-string #[(haab) "A\303\304@ \305U\203 \306\202 \n SH#)\207" [haab month calendar-mayan-haab-month-name-array format "%d %s" 19 "Uayeb"] 5 (#$ . 8440)])
#@59 Convert absolute DATE into a Mayan tzolkin date (a pair).
(defalias 'calendar-mayan-tzolkin-from-absolute #[(date) " \\\306\n@\\S\307\"T\306\nA\\S\310\"T\f
+B\207" [date calendar-mayan-days-before-absolute-zero long-count calendar-mayan-tzolkin-at-epoch day name mod 13 20] 3 (#$ . 8705)])
#@78 Number of days from Mayan tzolkin DATE1 to next occurrence of tzolkin DATE2.
(defalias 'calendar-mayan-tzolkin-difference #[(date1 date2) "@ @ZA AZ\304\304\nZ\305_\306\"\307_\\\310\"*\207" [date2 date1 name-difference number-difference mod 3 20 13 260] 5 (#$ . 9007)])
#@66 Absolute date of latest TZOLKIN-DATE on or before absolute DATE.
(defalias 'calendar-mayan-tzolkin-on-or-before #[(tzolkin-date date) "\211\302\303\304! \"Z\305\246Z\207" [date tzolkin-date calendar-mayan-tzolkin-difference calendar-mayan-tzolkin-from-absolute 0 260] 5 (#$ . 9288)])
#@95 Move cursor to next instance of Mayan TZOLKIN-DATE.
Echo Mayan date unless NOECHO is non-nil.
(defalias 'calendar-mayan-next-tzolkin-date #[(tzolkin-date &optional noecho) "\306\307\310\311\312 \211\313 8)\314\211\315U\203 \316\317!\202j\315V\203\227 S\320 \211\211@) \211A@) \313 8)
\fS\321_\\\f\313V\203\203 \322\f\323_\\\324\245Z\211\315W\203d \325!S\323\246\315U\205z \326\246\315U?\206z \327\246\315U)\203\203 T-\n\330_\n\323\245\n\326\245[\n\327\245%\202j\325T!\331 \211\211@) \211A@) \313 8)
\fS\321_\\\f\313V\203\371 \322\f\323_\\\324\245Z\211\315W\203\332 \325!S\323\246\315U\205\360 \326\246\315U?\206\360 \327\246\315U)\203\371 T-\n\330_\n\323\245\n\326\245[\n\327\245\332\211\332@) \211A@) \313 8)
\fS\321_\\\f\313V\203e\322\f\323_\\\324\245Z\211\315W\203F\325!S\323\246\315U\205\\\326\246\315U?\206\\\327\246\315U)\203eT-&+\\\"!!\210\206w\333 \207" [tzolkin-date date offset-years year month day calendar-goto-date calendar-gregorian-from-absolute calendar-mayan-tzolkin-on-or-before 260 calendar-cursor-to-date 2 nil 0 user-error "There was no year zero" + 31 23 4 10 abs 100 400 365 - (12 31 -1) calendar-mayan-print-date day-of-year noecho] 16 (#$ . 9579) (list (calendar-mayan-read-tzolkin-date))])
#@99 Move cursor to previous instance of Mayan TZOLKIN-DATE.
Echo Mayan date unless NOECHO is non-nil.
(defalias 'calendar-mayan-previous-tzolkin-date #[(tzolkin-date &optional noecho) "\306\307\310\311 \211\312 8)\313\211\314U\203 \315\316!\202i\314V\203\226 S\317 \211\211@) \211A@) \312 8)
\fS\320_\\\f\312V\203\202 \321\f\322_\\\323\245Z\211\314W\203c \324!S\322\246\314U\205y \325\246\314U?\206y \326\246\314U)\203\202 T-\n\327_\n\322\245\n\325\245[\n\326\245%\202i\324T!\330 \211\211@) \211A@) \312 8)
\fS\320_\\\f\312V\203\370 \321\f\322_\\\323\245Z\211\314W\203\331 \324!S\322\246\314U\205\357 \325\246\314U?\206\357 \326\246\314U)\203\370 T-\n\327_\n\322\245\n\325\245[\n\326\245\331\211\331@) \211A@) \312 8)
\fS\320_\\\f\312V\203d\321\f\322_\\\323\245Z\211\314W\203E\324!S\322\246\314U\205[\325\246\314U?\206[\326\246\314U)\203dT-&+S\"!!\210\206v\332 \207" [tzolkin-date date offset-years year month day calendar-goto-date calendar-gregorian-from-absolute calendar-mayan-tzolkin-on-or-before calendar-cursor-to-date 2 nil 0 user-error "There was no year zero" + 31 23 4 10 abs 100 400 365 - (12 31 -1) calendar-mayan-print-date day-of-year noecho] 15 (#$ . 10901) (list (calendar-mayan-read-tzolkin-date))])
#@72 Convert Mayan TZOLKIN date (a pair) into its traditional written form.
(defalias 'calendar-mayan-tzolkin-to-string #[(tzolkin) "\302\303@ ASH#\207" [tzolkin calendar-mayan-tzolkin-names-array format "%d %s"] 5 (#$ . 12221)])
#@155 Absolute date that is Mayan TZOLKIN-DATE and HAAB-DATE.
Latest such date on or before DATE.
Returns nil if such a tzolkin-haab combination is impossible.
(defalias 'calendar-mayan-tzolkin-haab-on-or-before #[(tzolkin-date haab-date date) "\306\307\310!\"\311\312\310!\n\"\211 Z\211\313\246\310U\205& |