����
One Hat Cyber Team
One Hat Cyber Team
Your IP :
18.224.149.17
Server IP :
192.185.194.254
Server :
Linux raider.websitewelcome.com 4.19.286-203.ELK.el7.x86_64 #1 SMP Wed Jun 14 04:33:55 CDT 2023 x86_64
Server Software :
Apache
PHP Version :
7.4.33
Buat File
|
Buat Folder
Eksekusi
Dir :
~
/
usr
/
share
/
emacs
/
24.3
/
lisp
/
calc
/
View File Name :
calc-forms.elc
;ELC��� ;;; Compiled by mockbuild@buildfarm06-new.corp.cloudlinux.com on Fri Oct 11 10:10:43 2024 ;;; from file /builddir/build/BUILD/emacs-24.3/lisp/calc/calc-forms.el ;;; in Emacs version 24.3.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. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; (byte-code "\300\301!\210\300\302!\207" [require calc-ext calc-macs] 2) (defalias 'calc-time #[nil "\300\301!\207" [calc-do #[nil "\301 \302\303\304\305\306\307\310\311O!\307\312\313O!\307\314\315O!F\306\316\303\211FE#)\207" [time current-time-string calc-enter-result 0 "time" mod hms string-to-number 11 13 14 16 17 19 24] 11]] 2 nil nil]) (defalias 'calc-to-hms #[(arg) "\300\301!\207" [calc-do #[nil "\302 \203�\303=\203�\304\305\306 #\207\304\307\310 #\207\304\311\312 #\207" [calc-angle-mode arg calc-is-inverse rad calc-unary-op ">rad" calcFunc-rad ">deg" calcFunc-deg ">hms" calcFunc-hms] 4]] 2 nil "P"]) (defalias 'calc-from-hms #[(arg) "\301 \210\302!\207" [arg calc-invert-func calc-to-hms] 2 nil "P"]) (defalias 'calc-hms-notation #[(fmt) "\300\301!\207" [calc-do #[nil "\302\303\"\203*�\304\301\305\306\307\"\306\310\"\305\306\311\"\306\312\"\305\306\313\"\260\314#\210\315\301 \"\207\316\317!\207" [fmt calc-hms-format string-match "\\`\\([^,; ]+\\)\\([,; ]*\\)\\([^,; ]\\)\\([,; ]*\\)\\([^,; ]\\)\\'" calc-change-mode "%s" math-match-substring 1 2 3 4 5 t set-default error "Bad hours-minutes-seconds format"] 12]] 2 nil "sHours-minutes-seconds format (hms, @ ' \", etc.): "]) (defalias 'calc-date-notation #[(fmt arg) "\300\301!\207" [calc-do #[nil "\306\307\310\311\n #,\203�\312\311\313\"\203 �\314! 8\311\315\"\204+�\316\317!\210-\203R�\320-!\211-\321Y\203R�-\322X\203R�\323 !\211\203R�- \233\240\210\307.\311\324\"\204\207�\311\325\"\203\207�\311\326\327\330\331\"!\326Q\"\203\207�\321\211\224O\332\321\224\321\225O\333\321\225\307O\260)\307\211\211\211\211\211\211/012345\307.\311\334\"\211/\203\260�/\335I\210)\311\336\"\2112\203\2202\321V\203\314�\3212O5B52T12H\337U\203\370�3\203\343�\316\340!\2105\203\362�54\2444\3075\3103\202\2072H\341U\203 3\204\n\316\342!\2105\2035\2374B4\3075\3073\202\207\311\343\"\203,1T11GW\203L1H\2261SH\226U\203L1T\2111\202.\34421O!\2110\345>\204s0\346=\203m5\204m4\203s\316\3470\"\2100\350>\203\200\3515B505B51\307O\202\261�\352\232\204\2345B55\203\2703\203\2615\2374B4\202\27054\2444\353\3544\237\310#.\207" [fmt start string regexp inhibit-changing-match-data calc-standard-date-formats "\\`\\s-*\\'" nil t string-match "1" "\\` *[0-9] *\\'" string-to-number "[a-zA-Z]" error "Bad date format specifier" prefix-numeric-value 0 9 copy-sequence "<.*>" "\\`[^hHspP]*\\([^ac-gi-lnoqrt-zAC-GI-OQRT-Z]*[bBhHmpPsS]+[^ac-gi-lnoqrt-zAC-GI-OQRT-Z]*\\)[^hHspP]*\\'" "[^ac-gi-lnoqrt-zAC-GI-OQRT-Z]*" regexp-quote math-match-substring 1 "<" ">" ":[BS]S" 67 "[<>a-zA-Z]" 60 "Nested <'s not allowed" 62 "Misplaced > in format" "\\`[^a-zA-Z]*[bB][a-zA-Z]" intern (Y YY BY YYY YYYY aa AA aaa AAA aaaa AAAA bb BB bbb BBB bbbb BBBB M MM BM mmm Mmm Mmmm MMM MMMM D DD BD d ddd bdd W www Www Wwww WWW WWWW h hh bh H HH BH p P pp PP pppp PPPP m mm bm s ss bss SS BS C N n J j U b) X "Bad format code: %s" (bb BB bbb BBB bbbb BBBB) b "" calc-change-mode calc-date-format arg case-fold-search temp sym pos2 pos time fullfmt lfmt] 8]] 2 nil "sDate format (e.g., M/D/YY h:mm:ss): \nP"]) (defalias 'calc-hms-mode #[nil "\300\301!\207" [calc-do #[nil "\300\301\302\"\210\303\304!\207" [calc-change-mode calc-angle-mode hms message "Angles measured in degrees-minutes-seconds"] 3]] 2 nil nil]) (defalias 'calc-now #[(arg) "\301\302\303#\207" [arg calc-date-zero-args "now" calcFunc-now] 4 nil "P"]) (defalias 'calc-date-part #[(arg) "\301W\204\f�\302V\203�\303\304!\210\305\306!\207" [arg 1 9 error "Part code out of range" calc-do #[nil "\301\302\3038\3048\305\302!D#\207" [arg calc-enter-result 1 (nil "year" "mnth" "day" "hour" "minu" "sec" "wday" "yday" "hmst") (nil calcFunc-year calcFunc-month calcFunc-day calcFunc-hour calcFunc-minute calcFunc-second calcFunc-weekday calcFunc-yearday calcFunc-time) calc-top-n] 6]] 2 nil "NPart code (1-9 = Y,M,D,H,M,S,Wd,Yd,Hms): "]) (defalias 'calc-date #[(arg) "\301W\204\f�\302V\203�\303\304!\210\305\306!\207" [arg 1 6 error "Between one and six arguments are allowed" calc-do #[nil "\301\302\303\304!B#\207" [arg calc-enter-result "date" calcFunc-date calc-top-list-n] 6]] 2 nil "p"]) (defalias 'calc-julian #[(arg) "\301\302\303#\207" [arg calc-date-one-arg "juln" calcFunc-julian] 4 nil "P"]) (defalias 'calc-unix-time #[(arg) "\301\302\303#\207" [arg calc-date-one-arg "unix" calcFunc-unixtime] 4 nil "P"]) (defalias 'calc-time-zone #[(arg) "\301\302\303#\207" [arg calc-date-zero-args "zone" calcFunc-tzone] 4 nil "P"]) (defalias 'calc-convert-time-zones #[(old &optional new) "\300\301!\207" [calc-do #[nil "\302\232\203�\303\304\305\306\307\304!B#\207\310\232\203�\311 \204#�\312\313\314Q!;\203,�\315!\242\316=\203:�\316\317A@\"\210 \310\232\203B�\311 ;\203K�\315 ! \242\316=\203Y�\316\317 A@\"\210\303\320\305\306\321\320! F#\207" [old new "$" calc-enter-result 3 "tzcv" calcFunc-tzconv calc-top-list-n "" "local" read-string "From time zone: " ", to zone: " math-read-expr error "Error in expression: %S" 1 calc-top-n] 7]] 2 nil "sFrom time zone: "]) (defalias 'calc-new-week #[(arg) "\301\302\303#\207" [arg calc-date-one-arg "nwwk" calcFunc-newweek] 4 nil "P"]) (defalias 'calc-new-month #[(arg) "\301\302\303#\207" [arg calc-date-one-arg "nwmn" calcFunc-newmonth] 4 nil "P"]) (defalias 'calc-new-year #[(arg) "\301\302\303#\207" [arg calc-date-one-arg "nwyr" calcFunc-newyear] 4 nil "P"]) (defalias 'calc-inc-month #[(arg) "\301\302\303#\207" [arg calc-date-one-arg "incm" calcFunc-incmonth] 4 nil "p"]) (defalias 'calc-business-days-plus #[(arg) "\300\301!\207" [calc-do #[nil "\301\302\303#\207" [arg calc-binary-op "bus+" calcFunc-badd] 4]] 2 nil "P"]) (defalias 'calc-business-days-minus #[(arg) "\300\301!\207" [calc-do #[nil "\301\302\303#\207" [arg calc-binary-op "bus-" calcFunc-bsub] 4]] 2 nil "P"]) (defalias 'calc-date-zero-args #[(prefix func arg) "\300\301!\207" [calc-do #[nil ":\203�\303\304 \n\305\304!D#\207\303\306 \203�\n\307!D\202 �\nC#\207" [arg prefix func calc-enter-result 1 calc-top-n 0 prefix-numeric-value] 6]] 2]) (defalias 'calc-date-one-arg #[(prefix func arg) "\300\301!\207" [calc-do #[nil ":\203�\303\304 \n\305\304!B#\207\303\306 \203!�\n\307\306!\310!E\202&�\n\307\306!D#\207" [arg prefix func calc-enter-result 2 calc-top-list-n 1 calc-top-n prefix-numeric-value] 7]] 2]) (defalias 'math-normalize-hms #[(a) "\306A@!\306\3078! \310Z\311]\306\3118!)\312\f!\203r�\313\n!\203/�\314\n\315\"\314\316\"\313!\203?�\314\315\"\314\f\316\"\315\n\317 \"\320U*\204W�\314\n\321\"\314\320\"\315\317 \"\320U*\204\302�\314\321\"\314\f\320\"\202\302�\312\n!\203\202�\314\n\321\"\314\320\"\312!\203\222�\314\321\"\314\f\320\"\n\321\317 \"\320U*\204\252�\314\n\315\"\314\316\"\321\317 \"\320U*\204\302�\314\315\"\314\f\316\"\n\242\322=\203\333�\323\nA@!\307\n8\\\307 ZX\203\333�\324\325\f\nF+\207" [a calc-internal-prec s m h b math-normalize 2 4 3 math-negp math-posp math-add -60 1 math-compare -1 60 float math-numdigs 0 hms] 5]) (defalias 'math-to-hms #[(a &optional ang) "\242\306=\203 �\207\242\307=\203�\310\311A@!\311\3128!\"\207\211:?\206)�@\313>)\2041�\314D\207\315!\203@�\316\311\316! \"!\207 \206E�\n\317=\203S�\311\320\321 \"\322\"\207\242\323>\203\\�\207\324\325\326\"\327\320\330\"!\331\f\330\"\306 @ A\332\325\f\330\"\"F+!\207" [a ang calc-angle-mode b hm hmd hms sdev math-make-sdev math-to-hms 2 (bigpos bigneg frac float cplx polar) calcFunc-hms math-negp math-neg rad math-div math-pi-over-180 deg (cplx polar) math-normalize math-mul 3600 math-trunc 60 math-idivmod math-sub] 10]) (defalias 'calcFunc-hms #[(h &optional m s) "\211:?\206\f� @\305>)\204�\306\307\"\210\n\204�\310\n\211:?\206'� @\305>)\2040�\306\n\307\"\210\2046�\310\211:?\206B� @\305>)\204K�\306\307\"\210\n\310\311 \f\"\312U*\204\216�\n\313\311 \f\"\312U*\203\216�\310\311 \f\"\312U*\204\216�\313\311 \f\"\312U*\203\216�\314\315!\316\310\nF\"\207\315\314\314\317\n\206\230�\310\313\"\317\206\240�\310\320\"\"\"\321\"\207" [h a m s b (bigpos bigneg frac float) math-reject-arg realp 0 math-compare -1 60 math-add math-to-hms hms math-div 3600 deg] 9]) (defalias 'math-from-hms #[(a &optional ang) "\242\303=\204A�\211:?\206�@\304>)\203�\207\242\305=\203/�\306\307A@ \"\307\3108 \"\"\207 \2064�\n\311=\203=�\312D\207\313D\207\314!\203P�\315\307\315! \"!\207 \206U�\n\311=\203c�\316\307\317\"\320 \"\207\321\322\321\322\3238\324\"\3108\"\325\"A@\"\207" [a ang calc-angle-mode hms (bigpos bigneg frac float cplx polar) sdev math-make-sdev math-from-hms 2 rad calcFunc-rad calcFunc-deg math-negp math-neg math-mul deg math-pi-over-180 math-add math-div 3 (float 6 1) 60] 7]) (defalias 'math-date-to-dt #[(value) "\242\302=\203�A@\306!\204�\307\310\"\210\311!\211@ A@\312\313\314\315\n\211\316\"#\317#\"\"\320U*\203>�\321\202?�\322\"\323!\203J�\324\202K�\321\"$\313%\n\325$\312\211#\211%\"#\317#\"\"\320U*\203u�\315$\320\"$\202Q�$\326=\203�\320$\327\n%\"T$\330=\203\227�\n\331Y\203\227�\n\332\\\333$!\203\242�\334\202\243�\335%\n%\fHY\203\264�\fT\202\245�\n%\fSHZT\336!\203\313�$\f E\202\341�$\f \337\245\340\245\340\246\315\340\246\341 8\"\257.\207" [value parts date time month day math-realp math-reject-arg datep math-date-parts 1 nil math-quotient math-add 711859 math-compare -1 365 -108 math-negp 366 math-absolute-from-date 0 math-sub 1752 247 11 math-leap-year-p [1 32 61 92 122 153 183 214 245 275 306 336 999] [1 32 60 91 121 152 182 213 244 274 305 335 999] math-integerp 3600 60 2 b a year temp] 10]) (defalias 'math-dt-to-date #[(dt) "A@\250\204�\302A@\303\"\210A@\304W\204�A@\305V\203%�\302A@\306\"\210\3078\250\2043�\302\3078\303\"\210\3078\304W\204C�\3078\310V\203J�\302\3078\311\"\210\312@A@\3078#\3138\203v�\314\315 !\316\314\3138\317_\3208\321_\\\3228\"\323\"\"\202w� )\207" [dt date math-reject-arg fixnump 1 12 "Month value is out of range" 2 31 "Day value is out of range" math-absolute-from-date 3 math-add math-float math-div 3600 4 60 5 (float 864 2)] 7]) (defalias 'math-date-parts #[(value &optional offset) "\306!\307\310\311\n\206 � \"\312\"\313V\205�\313Z\"\306\f! \311\f \"E+\207" [value date offset calc-internal-prec time ftime math-floor math-round math-mul math-sub 86400 12] 5]) (defalias 'math-this-year #[nil "\300\301 8\207" [5 decode-time] 2]) (defalias 'math-leap-year-p #[(year) "\303\304\n \"\305U*\203$�\306!\203�\307\310!\311\"\312U\207\307\311\"\313U\207\307\314\"\211\311\246\313U\203:�\315\246\313U?\206=�\313U\207" [year b a 1752 math-compare -1 math-negp math-imod math-neg 4 1 0 400 100] 4]) (defalias 'math-days-in-month #[(year month) "\302U\203�\303 !\203�\304\207\305SH\207" [month year 2 math-leap-year-p 29 [31 28 31 30 31 30 31 31 30 31 30 31]] 2]) (defalias 'math-day-number #[(year month day) " S\304_\\ \305V\203 �\n\306 \307_\\\310\245Z\311!\203 �\nT\312=\203<� \313V\2048� \313U\203<�\314Y\203<�\n\315Z\n)\207" [day month day-of-year year 31 2 23 4 10 math-leap-year-p 1752 9 14 11] 4]) (defalias 'math-absolute-from-date #[(year month day) "\306=\203�\307\310\311\"\310\312\313\n#\312\314\315 \"\316!\203&�\317 \320\"\2020�\310\315\317\310\321\"\320\"\"\"\"\322\323 \f\"\307U*\204L�\324=\203P�\n\325X\203P�\311\202s�\314\317 \326\"\321\"\327\320\"\312A\306U\203m�\307\202n�\306@\"*\")\207" [year yearm1 month day b a 0 -1 math-sub 1 math-add math-day-number math-mul 365 math-posp math-quotient 4 3 1753 math-compare 1752 9 100 math-idivmod correction res] 11]) (defvar math-long-weekday-names '("Sunday" "Monday" "Tuesday" "Wednesday" "Thursday" "Friday" "Saturday")) (defvar math-short-weekday-names '("Sun" "Mon" "Tue" "Wed" "Thu" "Fri" "Sat")) (defvar math-long-month-names '("January" "February" "March" "April" "May" "June" "July" "August" "September" "October" "November" "December")) (defvar math-short-month-names '("Jan" "Feb" "Mar" "Apr" "May" "Jun" "Jul" "Aug" "Sep" "Oct" "Nov" "Dec")) (defvar math-format-date-cache nil) (defalias 'math-format-date #[(math-fd-date) "\242\306=\203�A@ \nE\307\f\"A\206^�\310\211\310\311\310\211\310\211\310\211\310\211\310\312\313\314\315\n\"\"B\fB\311\f\233\211\203Z� \310\241\210.)\207" [math-fd-date calc-internal-prec calc-date-format entry math-format-date-cache math-fd-dt date assoc nil 10 apply concat mapcar math-format-date-part calc-group-digits calc-leading-zeros calc-number-radix calc-twos-complement-mode math-fd-year math-fd-month math-fd-day math-fd-weekday math-fd-hour math-fd-minute math-fd-second math-fd-bc-flag fmt] 6]) #@107 The beginning of the Julian calendar, as measured in the number of days before January 1 of the year 1AD. (defconst math-julian-date-beginning '(float 17214235 -1) (#$ . 13266)) #@115 The beginning of the Julian calendar, as measured in the integer number of days before January 1 of the year 1AD. (defconst math-julian-date-beginning-int 1721424 (#$ . 13451)) (defalias 'math-format-date-part #[(x) ";\203�\207<\203�\306 !\203�\307\207\310\311\312\313\"\"\207\314=\203$�\307\207\315=\203.�\316 !\207\317=\203:�\316\320 !!\207\321=\203G�\316\322 \n\"!\207\323=\203V�\316\322\320 !\"!\207\324=\203e�\316\325 \326\"A@!\207\f\204\250�\327 !\211@\fA@@\330\f8A\331\322\320 !\332\"\333\"B\334\f8C\335\f8D\336\f8E\337F>\203\250�\340 !\203\250�\341 !\342G\343>\203\357� \250\203\332� \344V\203\332� \345W\203\332�\346\347=\203\312�\350\202\325�\351=\203\324�\352\202\325�\353 \354\246\"\207\355 !\203\353� \354W\203\353�\346\356 \"\207\316 !\207\357=\203\371�\316 !\207\360=\203\355 !\203 \354W\203\346\356 \"\207\316 !\207\337=\203\307\207\361=\203*G?\2054\362\207\363=\2038G?\2054\364\207\365=\203FG?\2054\366\207\367=\203TG?\2054\370\207\371=\203bG?\2054\372\207\373=\203pG?\2054\374\207\375=\203}G\2054\376\207\377=\203\214G\2054\201O�\207\201P�=\203\235G\2054\201Q�\207\201R�=\203\256G\2054\201S�\207\201T�=\203\277G\2054\201U�\207\201V�=\203\320G\2054\201W�\207\201X�=\203\336\346\353@\"\207\201Y�=\203\354\346\350@\"\207\201Z�=\203\372\346\352@\"\207\201[�=\203\n@SH8\227\207\201\\�=\203@SH8\207\201]�=\203)@SH8\226\207\201^�=\2038@SI8\207\201_�=\203H@SI8\226\207\201`�=\203V\346\353A\"\207\201a�=\203d\346\350A\"\207\201b�=\203r\346\352A\"\207\201c�=\203\200\346\353B\"\207\201d�=\203\217BJ8\227\207\201e�=\203\235BJ8\207\201f�=\203\254BJ8\226\207\201g�=\203\272BK8\207\201h�=\203\311BK8\226\207\201i�=\203\336\346\353\201j� @A#\"\207\201k�=\203\365\346\201l�\201j� @A#\"\207\201m�=\203\f\346\201n�\201j� @A#\"\207\201o�=\203C\2054\346\353C\"\207\201p�=\2032C\2054\346\350C\"\207\201q�=\203EC\2054\346\352C\"\207\201r�=\203aC\2054\346\353C\201s�\\\201t�\246T\"\207\201u�=\203}C\2054\346\350C\201s�\\\201t�\246T\"\207\201v�=\203\231C\2054\346\352C\201s�\\\201t�\246T\"\207\201w�=\203\267C\2054C\201t�W\203\263\201x�\207\201y�\207\201z�=\203\325C\2054C\201t�W\203\321\201{�\207\201|�\207\201}�=\203\363C\2054C\201t�W\203\357\201~�\207\201�\207\201\200�=\203C\2054C\201t�W\203 \201\201�\207\201\202�\207\201\203�=\203/C\2054C\201t�W\203+\201\204�\207\201\205�\207\201\206�=\203MC\2054C\201t�W\203I\201\207�\207\201\210�\207\201\211�=\203`D\2054\346\353D\"\207\201\212�=\203sD\2054\346\350D\"\207\201\213�=\203\206D\2054\346\352D\"\207\201\214�=\203\241E\2054\201\215�E!?\2054\201\216�\207\201\217�>\2054E\2054\201\220�>\205\274\201\215�E!?\2054E\250\203\344\346\201\221�>\203\323\350\202\340\201\222�>\203\337\352\202\340\353E\"\207E\201\223�L\201\224�L\"\201\225�U*\203\201\226�>\203\201\227�\202\201\230�>\203\201\231�\202\307\202\307\201\232�\201t�MZ\201\233�^DN\316E!)P\207" [x math-fd-date math-julian-date-beginning math-julian-date-beginning-int math-fd-dt math-fd-year math-integerp "" apply concat mapcar math-format-date-part X N math-format-number n math-floor J math-add j U math-date-parts 719164 math-date-to-dt 2 math-mod 6 7 3 4 5 b math-negp math-neg t (Y YY BY) 1940 2040 format YY "%02d" BYY "%2d" "%d" 100 natnump "+%d" YYY YYYY aa "ad" AA "AD" aaa "ad " AAA "AD " aaaa "a.d." AAAA "A.D." bb "bc" BB math-fd-month math-fd-day math-fd-weekday math-fd-hour math-fd-minute math-fd-second calc-date-format math-fd-bc-flag math-short-month-names math-long-month-names math-short-weekday-names math-long-weekday-names a calc-internal-prec calc-float-format "BC" bbb " bc" BBB " BC" bbbb "b.c." BBBB "B.C." M MM BM mmm Mmm MMM Mmmm MMMM D DD BD W www Www WWW Wwww WWWW d math-day-number ddd "%03d" bdd "%3d" h hh bh H 11 12 HH BH p "a" "p" P "A" "P" pp "am" "pm" PP "AM" "PM" pppp "a.m." "p.m." PPPP "A.M." "P.M." m mm bm C math-zerop ":" (s ss bs SS BS) (SS BS) (ss SS) (bs BS) 10 math-compare -1 (ss SS) "0" (bs BS) " " fix 0] 7]) (defalias 'math-parse-date #[(math-pd-str) "\300\301\215\207" [syntax (byte-code "\306\307\"\206\303\306\310\"\206\303\311\312\"\203 �\313\314\315\316\"!D\206\303\307\310\211\211\211\211\211\211\211\211\211\211\211\211=>?@ABCDE\311\317\"\204S�\311\320\"\203\315\321\"F\322\315\316\"!@\315\323\"?\315\324\">\325\211\224O\325\225\310OP?\326\232\203\206�\325?\202\214�\322?!?>\326\232\203\231�\325>\202\237�\314>!>F\326\232\203\265�@\327V\203\330\331\332\"\210\202F\325H\226\211F\333>\203\354�@\334U\203\344�?\325U\203\344�>\325=\203\344�F\335=\203\325@\202\330\331\336\"\210\202@\325U\204\372�@\334V\203\377�\330\331\332\"\210F\337U@\334U=\203@\334\\\340\246@)\311\341\"\203(\342!\211\316\224\343I\210\202\311\344\"\203\221\345G!C\345H!AC\204F\345I!CA\204P\345J!\210@\204p\345\346!\211\203p \316U\203g\334\202h\325@\325\211?>\345\347!\204\345\350!\203\307=\311\351\"\203\221\330\331\352\353\315\325\"\"\"\210\311\354\"\203\264\325\211\224O\325\225\310OP\211\203\264\311\355 \"\203\264 \202\221\311\356\"\204\302\311\357\"\203\334\315\316\"D\325\316\224O\316\225\310OP\314D!D\307\325\311\360 #\203\f\203\357\330\331\361\"\210\322\315\325\"!\f\204\376\310 \204\f\310\325\225\202\336\362D\203\316\202\325C\203 \316\202!\325B\203*\316\202+\325 \2033\316\2024\325\f\203<\316\202=\325\203E\316\202F\325&\211\363V\203W\330\331\361\"\210\202z \323W\204hD\203p \323U\203p\330\331\364\"\210\202z \323U\203z\365 DD\204\312 \203\233 \366V\204\217 \316W\203\233 D\f\310\202\312\f\203\265\f\366V\204\253\f\316W\203\265\fD\310\202\312\203\312\366V\204\305\316W\203\312D\310D\203 \203\345 \334V\203\345 B\f\310\202\f\203\371\f\334V\203\371\fB\310\202\203\334V\203B\310D\203B\203C\204\244 C\202\244D\203-C\203- B\202\244K\211\203\200 @9\203y @\367>\203PD\204y D\f\202y @\370>\203fC\204y C\f\202y @\371>\203yB\204y B\f A\211\2044C\204\214 C\fB\204\230 B\fD\204\244 D\f=\203\261\372\373D!!D\374D\nCB@?>&.\207" [math-pd-str temp bigyear c b a math-parse-standard-date t nil string-match "\\`[^-+/0-9a-zA-Z]*\\([-+]?[0-9]+\\.?[0-9]*\\([eE][-+]?[0-9]+\\)?\\)[^-+/0-9a-zA-Z]*\\'" date math-read-number math-match-substring 1 "\\([0-9][0-9]?\\):\\([0-9][0-9]?\\)\\(:\\([0-9][0-9]?\\(\\.[0-9]+\\)?\\)\\)? *\\([ap]\\>\\|[ap]m\\|[ap]\\. *m\\.\\|noon\\|n\\>\\|midnight\\|mid\\>\\|m\\>\\)?" "\\([0-9][0-9]?\\)\\(\\)\\(\\(\\(\\)\\)\\) *\\([ap]\\>\\|[ap]m\\|[ap]\\. *m\\.\\|noon\\|n\\>\\|midnight\\|mid\\>\\|m\\>\\)" 6 string-to-number 2 4 0 "" 23 throw syntax "Hour value out of range" (78 77) 12 77 "Time must be 12:00:00 in this context" 65 24 "[0-9a-zA-Z]\\(-\\)[0-9a-zA-Z]" copy-sequence 47 "[a-zA-Z]" math-parse-date-word ("noon" "midnight" "mid") ("ad" "a.d.") ("bc" "b.c.") "[a-zA-Z]+" format "Bad word in date: \"%s\"" "[-+]?0*[1-9][0-9][0-9][0-9][0-9]+" "[4-9][0-9]\\|[0-9][0-9][0-9]\\|[-+][0-9]+[^-]*\\'" "\\([-+][0-9]+\\)[^-]*\\'" "\\(0*[1-9][0-9][0-9]+\\)" "[0-9]+" "Too many numbers in date" + 3 "Not enough numbers in date" math-this-year 31 (Y YY BY YYY YYYY) (M MM BM mmm Mmm Mmmm MMM MMMM) (D DD BD) math-neg math-abs math-parse-date-validate bc-flag second minute hour weekday day month year case-fold-search ampm math-long-month-names math-long-weekday-names math-short-month-names math-short-weekday-names calc-date-format] 15)] 2]) (defalias 'math-parse-date-validate #[(year bigyear month day hour minute second) "\204�\306 !\203� \307W\203� \211\310W\203�\311\202�\312\\ \313=\203)�\314\315\316\"\210\n\317W\2045�\n\320V\203:�\314\315\321\"\210\317W\204I�\322 \n\"V\203N�\314\315\323\"\210\f\203\223�\f\313W\204^�\f\324V\203c�\314\315\325\"\210 \313W\204o� \326V\203t�\314\315\327\"\210\330 !\204\216� \331!\"\332\"!\"\333U*\204\223�\314\315\334\"\210\335\336\337 \nE\f\205\243�\f E\"!D\207" [bigyear year month day hour minute natnump 100 40 2000 1900 0 throw syntax "Year value is out of range" 1 12 "Month value is out of range" math-days-in-month "Day value is out of range" 23 "Hour value is out of range" 59 "Minute value is out of range" math-negp 60 math-compare -1 "Seconds value is out of range" date math-dt-to-date append second b a] 7]) (defalias 'math-parse-date-word #[(names &optional front) "\304 \203$�\305 @\306\232\203�\307\202�\310 @!\n\"\204$� AT\202� \205I�\2033�\311\224\311U\205I�\n\311\211\224O\203@�\312\202A�\313\n\311\225\314OQ)\207" [n names math-pd-str front 1 string-match "Sep" "Sept?" regexp-quote 0 "" " " nil] 5]) (defalias 'math-parse-standard-date #[(math-pd-str with-time) "\306\211\307\307\211\211\211\211\211\211\211\211\211\211\211@ABCDEFGHIJG\203\377I\203\377G@FGA\206E�D\307D\211G\211G@\211E:\203X�E@EF<\203t�K\203+�F\203+�GDF\211G\202\366F;\203\236�FGLGX\203\371FL\310FGO\232\203\371LFG\307O\211L\202\366F\311=\204+�F\312>\203!\313\314L\"\203\371\315L\310\"HL\310\225\307OL\316\317H!!H\320HF\321>\203\331�\310\202\356�F\322=\204\347�\323H!\203\354�M\202\356�N\"H\324H8\206\371�\f\325H8\206\326H8\206\nH@CHA@B\327H8\211A\202\366F\330=\203q\313\331L\"\203\371\315L\310\"HL\310\225\307OL\316\332\333\334\317H!\335\"\"!H\324H8\325H8\326H8H@CHA@B\327H8\211A\202\366F\336>\203\203\337O\306\"\211B\202\366F\340>\203\225\337P\306\"\211B\202\366F\341>\203\244\337Q\306\"\202\366F\342>\203\263\337R\306\"\202\366F\343>\203\374\313\344L\"\203\331\f\345U\203\314\310\202\315\fL\346\307O\211L\202\366\313\347L\"\203\371\f\345U\203\353\345\202\360\f\345\\\350\246L\346\307O\211L\202\366F\351>\203G\313\352L\"\203#\f\345U\203\310\202\fL\310\225\307O\211L\202\366\313\353L\"\203\371\f\345U\2035\345\202:\f\345\\\350\246L\310\225\307O\211L\202\366F\354>\203\234E\355>\203lF\356>\203d\313\357L\"\202q\313\360L\"\202q\313\331L\"\203\371\315L\310\"CF\361=\206\210L\310H\362>@L\310\225\307OL\317C!\211C\202\366F\363=\204+�F\364>\203\276\313\365L\"\203\371L\310\225\307O\211L\202\366F\366>\203\331\313\367L\"\203\371L\310\225\307O\211L\202\366F\370>\203\366\313\371L\"\203\371L\310\225\307OL\306\211\202\366F\372>\203*E\373>\203\f\313\374L\"\202\313\375L\"\203\371\315L\310\"L\310\225\307OL\317\n!\211\202\366F\376=\203D\313\377L\"\203+�L\346\307O\211L\202\366F\201S�>\203qE\201T�>\203qF\201U�=\203i\313\201V�L\"\202x\313\357L\"\202x\313\201W�L\"\203\371\201X�\315L\310\"!HL\310\225\307OLF\201Y�=\203\247H\310Y\203\371H\201Z�W\202\366F\201[�>\203\267H\211\202\366F\201\\�>\203\310H\211B\202\366F\201]�>\203\331H\211A\202\366F\201^�>\203\351H\211\202\366F\201_�>\203\371H\211\204+�\307I\202+� \203B\203A\203\307\202\346\211BAI\205\205L\201`�\232\205\205B\205\205A\205\205\f\204<\204<\n\203D\f\205\205\205\205C\204O\201a� C\n\204U\310 \203e\201b�\201c�C!!C\201d�C@BA\f\n&A \203\203\332A S\"AA.\207" [calc-date-format bc-flag second minute hour yearday t nil 0 X (n N j J) string-match "\\`[-+]?[0-9.]+\\([eE][-+]?[0-9]+\\)?" math-match-substring math-date-to-dt math-read-number math-sub (n N) j math-integerp 3 4 5 2 U "\\`[-+]?[0-9]+" math-add 719164 math-div (float 864 2) (mmm Mmm MMM) math-parse-date-word (Mmmm MMMM) (www Www WWW) (Wwww WWWW) (p P) "\\`a" 12 1 "\\`p" 24 (pp PP pppp PPPP) "\\`am\\|a\\.m\\." "\\`pm\\|p\\.m\\." (Y YY BY YYY YYYY) (MM DD ddd hh HH mm ss SS) (Y YY BYY) "\\` *[0-9][0-9]" "\\`[0-9][0-9][0-9][0-9]" YYY (43 45) b (aa AA aaaa AAAA) "\\` *\\(ad\\|a\\.d\\.\\)" (aaa AAA) "\\` *ad *" (bb BB bbb BBB bbbb BBBB) "\\` *\\(bc\\|b\\.c\\.\\)" (s ss bs SS BS) (YY YYYY MM DD hh HH mm) "\\` *[0-9][0-9]\\(\\.[0-9]+\\)?" "\\` *[0-9][0-9]?\\(\\.[0-9]+\\)?" C "\\`:[0-9][0-9]" bigyear day month year gnext next this fmt num okay case-fold-search with-time math-pd-str math-julian-date-beginning-int math-julian-date-beginning math-short-month-names math-long-month-names math-short-weekday-names math-long-weekday-names (ddd MM DD hh HH mm) (YY YYYY MM DD ddd hh HH mm ss SS) ddd "\\` *[0-9][0-9][0-9]" "\\` *[0-9]+" string-to-number W 7 (d ddd bdd) (M MM BM) (D DD BD) (h hh bh H HH BH) (m mm bm) "" math-this-year math-neg math-abs math-parse-date-validate] 17]) (defalias 'calcFunc-now #[(&optional zone) "\303\304\305 !)\211:\203(�\n\203$�\306 \307\310\311\303 \"\311\n \"\"\312\"\"\2026� \2026�\313\314!\210\315\316C\n\2055�\nC\")\207" [calc-date-format date zone nil math-parse-date current-time-string math-add math-div math-sub calcFunc-tzone (float 864 2) calc-record-why "*Unable to interpret current date from system" append calcFunc-now] 9]) (defalias 'calcFunc-year #[(date) "\301!@\207" [date math-date-to-dt] 2]) (defalias 'calcFunc-month #[(date) "\301!A@\207" [date math-date-to-dt] 2]) (defalias 'calcFunc-day #[(date) "\301\302!8\207" [date 2 math-date-to-dt] 3]) (defalias 'calcFunc-weekday #[(date) "\242\300=\203�A@\301!\204�\302\303\"\210\304\305\306!\307\"\310\"\207" [date math-realp math-reject-arg datep math-mod math-add math-floor 6 7] 4]) (defalias 'calcFunc-yearday #[(date) "\302!\303 @ A@\304 8#)\207" [date dt math-date-to-dt math-day-number 2] 5]) (defalias 'calcFunc-hour #[(date) "\242\301=\203�A@\207\302\303!8\206�\304\207" [date hms 3 math-date-to-dt 0] 3]) (defalias 'calcFunc-minute #[(date) "\242\301=\203�\3028\207\303\304!8\206�\305\207" [date hms 2 4 math-date-to-dt 0] 3]) (defalias 'calcFunc-second #[(date) "\242\301=\203�\3028\207\303\304!8\206�\305\207" [date hms 3 5 math-date-to-dt 0] 3]) (defalias 'calcFunc-time #[(date) "\302!\303 8\203�\304\303 \233B\202�\304\305\211\211F)\207" [date dt math-date-to-dt 3 hms 0] 4]) (defalias 'calcFunc-date #[(date &optional month day hour minute second) "\306!\203\n�\307!\203�\250\204�\310\311\"\210\306 !\203\"�\307 ! \2030� \250\2040�\310 \311\"\210\n\242\312=\203G�\204G�\313\n8\314\n8\nA@\306\n!\203Q�\307\n!\n\203_�\n\250\204_�\310\n\311\"\210\306!\203i�\307!\203w�\250\204w�\310\311\"\210\306\f!\203\201�\307\f!\f\203\220�\315\f!\204\220�\310\f\316\"\210\203\335�\306 !\203\236�\307 ! \203\255�\317 !\204\255�\310 \320\"\210 \203\323�\n\203\312�\305\321 \n\206\300�\322\f\206\305�\322\257!D\207\305\321 E!D\207\305\321\323 E!D\207\315 !\203\347�\305 D\207 @\305=\203\362� A@\207\310 \324\"\207" [month day hour minute second date math-messy-integerp math-trunc math-reject-arg fixnump hms 3 2 math-realp realp math-integerp integerp math-dt-to-date 0 math-this-year datep] 8]) (defalias 'calcFunc-julian #[(date &optional zone) "\304!\203%�\300\305!\203�\306 \"\202#�\306\n\"\306\307\310\"\311\"\"D\207@\300=\203H�\312A@\305A@!\203<� \202F�\312\n\307\310\"\313\"\"\"\207\314\315\"\207" [date math-julian-date-beginning-int math-julian-date-beginning zone math-realp math-integerp math-sub math-div calcFunc-tzone (float 864 2) math-add (float 864 2) math-reject-arg datep] 8]) (defalias 'calcFunc-unixtime #[(date &optional zone) "\302!\203�\303\304\305\306\"\"\300\307\305\310 \"\311\"\"D\207@\300=\2031�\303\312A@\304\"A@\310 \"\"\207\313\314\"\207" [date zone math-realp math-add 719164 math-div (float 864 2) math-sub calcFunc-tzone (float 864 2) math-date-parts math-reject-arg datep] 7]) #@40 No doc yet. See calc manual for now. (defvar math-tzone-names '(("UTC" 0 0) ("MEGT" -1 "MET" "METDST") ("METDST" -1 -1) ("MET" -1 0) ("MEGZ" -1 "MEZ" "MESZ") ("MEZ" -1 0) ("MESZ" -1 -1) ("WEGT" 0 "WET" "WETDST") ("WETDST" 0 -1) ("WET" 0 0) ("BGT" 0 "GMT" "BST") ("GMT" 0 0) ("BST" 0 -1) ("NGT" (float 35 -1) "NST" "NDT") ("NST" (float 35 -1) 0) ("NDT" (float 35 -1) -1) ("AGT" 4 "AST" "ADT") ("AST" 4 0) ("ADT" 4 -1) ("EGT" 5 "EST" "EDT") ("EST" 5 0) ("EDT" 5 -1) ("CGT" 6 "CST" "CDT") ("CST" 6 0) ("CDT" 6 -1) ("MGT" 7 "MST" "MDT") ("MST" 7 0) ("MDT" 7 -1) ("PGT" 8 "PST" "PDT") ("PST" 8 0) ("PDT" 8 -1) ("YGT" 9 "YST" "YDT") ("YST" 9 0) ("YDT" 9 -1)) (#$ . 29087)) (defvar var-TimeZone nil) #@62 Information about the timezone, retrieved from the calendar. (defvar math-calendar-tzinfo nil (#$ . 29788)) #@233 Get information about the timezone from the calendar. The result should be a list of two items about the current time zone: first, the number of seconds difference from GMT second, the number of seconds offset for daylight savings. (defalias 'math-get-calendar-tzinfo #[nil "\203�\207\303\304!\210\305 \210 \306\n@!\307_\nA@\307_D\211)\207" [math-calendar-tzinfo calendar-current-time-zone-cache tzinfo require cal-dst calendar-current-time-zone abs 60] 3 (#$ . 29903)]) (defalias 'calcFunc-tzone #[(&optional zone date) "\203\240�\306!\203�\307\310\311\"!\207@\312=\203\"�\307\310\313\314\"\311\"!\207@\315=\2038�\316\317A@ \"\317\3208 \"\"\207@\321=\203N�\322\317A@ \"\317\3208 \"\"\207@\323=\203\233�\324A@!\226\325\326\f\"\211\203\210�\317\316\nA@\320\n8\250\203y�\320\n8\202\202�\327 \n@\"\206\202�\330\" \"\202\231�\331\232\203\225�\317\325 \"\202\231�\332\333\"*\207\332\334\"\207\335\336!\203\255�\317\335\336! \"\207\337 \211@\340 ! A@_\\)\207" [zone date found name math-tzone-names tzinfo math-realp math-round math-mul 3600 hms math-from-hms deg + math-add calcFunc-tzone 2 - math-sub var symbol-name nil assoc math-daylight-savings-adjust 0 "LOCAL" math-reject-arg "*Unrecognized time zone name" "*Expected a time zone" calc-var-value var-TimeZone math-get-calendar-tzinfo math-cal-daylight-savings-adjust] 7]) (defvar math-daylight-savings-hook 'math-std-daylight-savings) (defalias 'math-daylight-savings-adjust #[(date zone &optional dt) "\204 �\306 A@\307\242\300=\203�\310A@\202C�\203>�\311!\203>�\312\n\"\211\203:�\313\314\315\fA@\316\"\")\202C�\317\320\"\210\321! \204O�\322!\205[� \n $)\207" [date bump zone math-tzone-names zadj dt calcFunc-now nil 0 math-realp assoc -1 math-sub math-div (float 24 0) math-reject-arg datep math-float math-date-to-dt math-daylight-savings-hook] 6]) #@58 Return -1 if DATE is using daylight saving, 0 otherwise. (defalias 'math-cal-daylight-savings-adjust #[(date) "\304\305!\210\204�\306 \307!\310 8\203�\310 8\202.�\311 8\203-�\310 8\311 8\312\245\\\202.�\313\314 A@\315 8 @E!\316\317\n\320_!\321\322#\\\323!\203O�\324\202P�\313+\207" [date dt time rounded-abs-date require cal-dst calcFunc-now math-date-to-dt 3 4 60.0 0 calendar-absolute-from-gregorian 2 / round 60 60.0 24.0 dst-in-effect -1] 5 (#$ . 31766)]) (defalias 'calcFunc-dsadj #[(date &optional zone) "\203�\242\304=\204�\305\306\"\210\202�\307\310!\203J�\242\304=\205(�\311A@!\226\312 \"\211\2047�\305\313\"\210\314\n8\250\203D�\314\n8\202H�\315\")\207\316!\207" [zone math-tzone-names zadj date var math-reject-arg "*Time zone variable expected" calc-var-value var-TimeZone symbol-name assoc "*Unrecognized time zone name" 2 math-daylight-savings-adjust math-cal-daylight-savings-adjust] 4]) (defalias 'calcFunc-tzconv #[(date z1 z2) "\303!\203�\304\300D \n#A@\207\305\211 \"\n\"\207" [date z1 z2 math-realp calcFunc-tzconv calcFunc-unixtime] 4]) #@402 Standard North American daylight saving algorithm. Before 2007, this uses `math-std-daylight-savings-old', where daylight saving began on the first Sunday of April at 2 a.m., and ended on the last Sunday of October at 2 a.m. As of 2007, this uses `math-std-daylight-savings-new', where daylight saving begins on the second Sunday of March at 2 a.m., and ends on the first Sunday of November at 2 a.m. (defalias 'math-std-daylight-savings #[(date dt zone bump) "@\304W\203�\305 \n$\207\306 \n$\207" [dt date zone bump 2007 math-std-daylight-savings-old math-std-daylight-savings-new] 5 (#$ . 32861)]) #@229 Standard North American daylight saving algorithm as of 2007. This implements the rules for the U.S. and Canada. Daylight saving begins on the second Sunday of March at 2 a.m., and ends on the first Sunday of November at 2 a.m. (defalias 'math-std-daylight-savings-new #[(date dt zone bump) "A@\304W\203\n�\305\207A@\304U\203B�\306 \307\305$\3108\nW\203%�\305\202@�\3108\nU\203?�\3048\304\\Y\203;�\311\202@�\305\202@�\311)\207A@\312W\203L�\311\207A@\312U\203\204�\306 \313\305$\3108\nW\203g�\311\202\202�\3108\nU\203\201�\3048\310\\Y\203}�\305\202\202�\311\202\202�\305)\207\305\207" [dt date sunday bump 3 0 math-prev-weekday-in-month 14 2 -1 11 7] 5 (#$ . 33474)]) #@227 Standard North American daylight saving algorithm before 2007. This implements the rules for the U.S. and Canada. Daylight saving begins on the first Sunday of April at 2 a.m., and ends on the last Sunday of October at 2 a.m. (defalias 'math-std-daylight-savings-old #[(date dt zone bump) "A@\304W\203\n�\305\207A@\304U\203B�\306 \307\305$\3108\nW\203%�\305\202@�\3108\nU\203?�\3118\311\\Y\203;�\312\202@�\305\202@�\312)\207A@\313W\203L�\312\207A@\313U\203\204�\306 \314\305$\3108\nW\203g�\312\202\202�\3108\nU\203\201�\3118\310\\Y\203}�\305\202\202�\312\202\202�\305)\207\305\207" [dt date sunday bump 4 0 math-prev-weekday-in-month 7 2 3 -1 10 31] 5 (#$ . 34164)]) (defalias 'math-prev-weekday-in-month #[(date dt day wday) "\204�\304 8\305 @ A@\"V\203�\305 @ A@\"\306\307\n!\304 8\"\306\310\311\"!A@\")\207" [day dt date zeroth 2 math-days-in-month math-sub math-floor calcFunc-newweek math-add] 5]) (defalias 'calcFunc-pwday #[(date &optional day weekday) "\242\300=\203�A@\303!\204�\304\305\"\210\306 !\203 �\307 ! \250\204*�\304 \310\"\210 \311U\2032�\312 \313W\204>� \312V\203C�\304 \314\"\210\315\316! \n\206N�\311$\207" [date day weekday math-realp math-reject-arg datep math-messy-integerp math-trunc fixnump 0 31 7 range math-prev-weekday-in-month math-date-to-dt] 5]) (defalias 'calcFunc-newweek #[(date &optional weekday) "\242\300=\203�A@\302!\204�\303\304\"\210 \204�\305\306 !\203&�\307 ! \250\2040�\303 \310\"\210 \305W\204<� \311V\203A�\303 \312\"\210\313!\300\314\315\314 \"!\"D\207" [date weekday math-realp math-reject-arg datep 0 math-messy-integerp math-trunc fixnump 6 range math-floor math-sub calcFunc-weekday] 7]) (defalias 'calcFunc-newmonth #[(date &optional day) "\204�\303\304!\203�\305!\250\204�\306\307\"\210\310W\204&�\311V\203+�\306\312\"\210\313 !\310U\204A�\314\n@\nA@\"V\203I�\314\n@\nA@\"\n@\315=\203b�\nA@\316U\203b�\317Y\203b�\320Z\301\321\322\n@\nA@\303E!S\")D\207" [day date dt 1 math-messy-integerp math-trunc math-reject-arg fixnump 0 31 range math-date-to-dt math-days-in-month 1752 9 14 11 math-add math-dt-to-date] 6]) (defalias 'calcFunc-newyear #[(date &optional day) "\204�\304\305!\203�\306!\250\204�\307\310\"\210\311 !\312Y\203a�\313X\203a�\n@\314=\2035�\315\202A�\316\n@!\203@�\313\202A�\317\312U\204N�V\203P�\301\320\321\n@\304\211E!S\")D\202~�\322Y\203z�\323X\203z�\301\321\n@[\304E!D\202~�\307\324\")\207" [day date dt max 1 math-messy-integerp math-trunc math-reject-arg fixnump math-date-to-dt 0 366 1752 355 math-leap-year-p 365 math-add math-dt-to-date -12 -1 range] 6]) (defalias 'calcFunc-incmonth #[(date &optional step) "\204�\306\307!\203�\310!\311!\204�\312\313\"\210\314 !\211@\315\nA@S\"\316\f\317\"\320\n8\321\f\322 \317\"\"T\315 \"\323\f\"^\324\n@!\203]�\324!\204]�\321\306\"\325\n@!\203o�\325!\204o�\315\306\"\301\326\f\nAAABBB!-D\207" [step date dt year month extra 1 math-messy-integerp math-trunc math-integerp math-reject-arg integerp math-date-to-dt math-add calcFunc-idiv 12 2 math-sub math-mul math-days-in-month math-posp math-negp math-dt-to-date day] 7]) (defalias 'calcFunc-incyear #[(date &optional step) "\302\303 \206�\304\305\"\"\207" [date step calcFunc-incmonth math-mul 1 12] 5]) (defalias 'calcFunc-bsub #[(a b) "\242\304=\204\f�\305\306\"\210 \242\304=\203J�\307A@ A@\"\203%�\310\311 \"!\207\312 !\210\313!\313 !\314\315\n@@\"A\203F�\nA\204F�\316\202G�\317\"*\207\320\310 !\"\207" [a b da db date math-reject-arg datep math-lessp math-neg calcFunc-bsub math-setup-holidays math-to-business-day math-add math-sub 1 0 calcFunc-badd] 4]) (defvar math-holidays-cache nil) (defvar math-holidays-cache-tag t) (defalias 'calcFunc-badd #[(a b) "\242\306=\203� \242\306=\203�\307\310\311\"\207\312 \"\207 \242\306=\203\347�\211:?\206+� @\313>)\203\277�\211:\203S� @\314>?\205V� @\315=\203M� A@\316=\202V�\317 !\202V� \316=)\203\\� \207\320 !\321\n@\nA\203\260�\211:\203\242� @\322=\206\245� @\323=?\205\245� @\324>\203\234� A@\211:\203\225� @\322=\202\230� \316V)\202\245�\325 !\202\245� \316V)\203\260�\326\327\"\202\261�\"\330!\206\275�\312 \"*\207\242\331=\203\342�\332\f8\333\334\335\"\336\" \203\334�\333 A\"\312 \")\207\307\310\311\"\207\307 \337\"\207" [b a d bb math-holidays-cache hours date math-reject-arg nil "*Invalid combination in date arithmetic" calcFunc-badd (bigpos bigneg frac float) (bigpos bigneg) float 0 math-zerop math-to-business-day math-add bigpos bigneg (frac float) math-posp math-sub 1 math-from-business-day hms 7 math-div math-from-hms deg 24 datep] 6]) (defalias 'calcFunc-holiday #[(a) "\301!A\203 �\302\207\303\207" [a math-to-business-day 1 0] 2]) (defalias 'math-to-business-day #[(date &optional need-year) "\242\300=\203�A@\211:?\206� @\306>)\204 �\307\310\"\210\311!\312\n\"\313\n!\314\315\203F�\f@=\204F�\307\300\nD\316\"\210\317!\210@A\211\203f�@\nW\203f� T\202O�\203v�\n@U\203v�\320)\3218 \n\322\\\323\245S!\324\n\325!\323_#\" ! G_\\ \203\261� @\"W\203\261� A T\202\230� \203\302�\" @=\203\302�\320+\3238\211#\203\326\312#@\"#A\"\211\314$\327 $\"\330U*\203\353�\314\325$\327 $\"\330U*\204\312\325\326\325\331\332#A\"\"\")\333\312\n \"\"-B\207" [date a day time dt delta (bigpos bigneg frac float) math-reject-arg datep math-floor math-sub math-date-to-dt 0 nil "*Generated holiday has wrong year" math-setup-holidays t 3 6 7 - 1 math-div math-compare -1 math-mul 86400 math-add holiday need-year math-holidays-cache days weekdays weeks wkday hours b] 8]) (defalias 'math-from-business-day #[(num) "\306!\307 \" \250\204�\310\311\312\"\210\313 \210A@\314 A\211\2030� @ W\2030�\fT\202� \f\\*\3158\316GZ S\\\245S\317 \320_#\314 G_\\>\203r� T\211\202z�S\211\314V\203\206�T\211\202e�\3168\211\203\233�\321\322\nA\"@\")\313 !?\205\251�\323\321 \n\"D.\207" [num day time math-holidays-cache delta days math-floor math-sub math-reject-arg nil "*Date is outside valid range" math-setup-holidays 0 3 7 - 1 math-add math-mul date weekdays bweek weeks wkday w hours] 6]) (defalias 'math-setup-holidays #[(&optional date) "\306\307!=\204\360\306\307!\310\311\211\211\211\211@A\312A!\204'�\313A\314\"\210AA\211A\203\307A@\242\315=\203B�A@A@\250\204_�A@\242\316=\203V�\317A@8\242\315=\204_�A@\242\320=\203h�A@ B\202'�A@\242\321=\203\213�A@A@@\236\203\213�A@A@@\236A\fB\202'�A@\242\316=\2034\317A@8\242\322=\2034\323A@8\242\322=\2034 \203\265�\313A@\324\"\210\325A@\326\"\317 8\327BC\330CB\"\331U*\204\344�\332\323 8BC\330CB\"\331U*\203\353�\313A@\333\"\210\317 8\334\323 8\317 8\"B\211A\211C:\203\"C@\335>?\205&C@\336=\203CA@\327=\202&\337C!\202&C\327=)\203'�\313A@\340\"\210\202'�A@\242\316=\203i\317A@8\211C:?\206OC@\341>)\203i\323A@8\211C:?\206eC@\341>)\204\200A@\250\203\242A@\342V\203\242A@\343W\203\242\n\203\213\313A@\344\"\210\345A@\346\"\211\347\232\203'�\313A@\350\"\210\202'�\351A@\352\"\204\264\351A@\353\"\203\275A@B\202'�\313A@\354\"\210\202'�\fG\355U\203\323\313\311\356\"\210\331C\331C\311\357\f\360\"\n\206\341\361\311 B \257D\306\307!. \205\346\362 !\363D8\311EFG\364G\365D8\"\332=\204% \242\315=\204\315 D \313 \366\"\210\367\216\370D8\211\203J\311H\370D\233\311\240\210\371\320 AB!\210DAA @\240\210)\317D8\204X\372E\311\202\345F\204s\363D\233G\211B\240\210\373G!\210\372\211E\202\345GF@W\203\252\374\375GF@S#\210\376\377!\210GF@W\203\243F\211@S\240\210\373F@!\210\202\212\372\211E\202\345GFAV\203\341\374\375FATG#\210\376\377!\210GFAV\203\332F\211AT\241\210\373FA!\210\202\301\372\211E\202\345\372E\311-\207" [math-holidays-cache-tag hours limit exprs weekdays days calc-var-value var-Holidays ((sun . 0) (mon . 1) (tue . 2) (wed . 3) (thu . 4) (fri . 5) (sat . 6)) nil math-vectorp math-reject-arg "*Holidays variable must be a vector" date intv 2 vec var hms 3 "*Only one hours interval allowed in Holidays" math-div (hms 24 0 0) 0 math-compare -1 1 "*Hours interval out of range" math-sub (bigpos bigneg) float math-zerop "*Degenerate hours interval" (bigpos bigneg) 1900 2100 "*Only one limit allowed in Holidays" calcFunc-vint (intv 3 1 2737) (vec) "*Limit is out of range" math-expr-contains (var y var-y) (var m var-m) "*Holidays must contain a vector of holidays" 7 "*Too many weekend days" sort < (intv 3 1 2737) calcFunc-year 5 calcFunc-in 4 "*Date is outside valid range" ((byte-code "\204�\302\302\207" [done math-holidays-cache-tag t] 1)) 6 math-setup-add-holidays t math-setup-year-holidays message "Computing holidays, %d .. %d" calc-set-command-flag clear-message wdnames h b a math-holidays-cache done limits year math-sh-year] 9]) (defalias 'math-setup-year-holidays #[(math-sh-year) "\3068\211\205=�\n\307\310 @!\311 \312\"\2030�\313\fT\211\314X\203,�\315\310 !!\210\202�)\2024�\315 !\210+ A\211\204�\307)\207" [math-holidays-cache exprs math-sh-year var-y var-m expr 2 nil math-evaluate-expr math-expr-contains (var m var-m) 0 12 math-setup-add-holidays] 4]) (defalias 'math-setup-add-holidays #[(days) "\242\306=\203�A\211\205\315�\307@!\210\202�\242\310=\203H�\311\3128!\313 \"\314=\2041�\315 \314\"\313 \"\314=\205F�\307 !\210\315 \314\"\2021�)\207\242\316=\203U�\307A@!\207\317=\206\315�\250\203\260�\320\n\"\211A\206\256�\f@\fA@A\203\214�A@W\203\214�A A\202r�AB\241\210 @ AB\241\210 A\211\205\255� \211@S\240\210\202\235�*)\207\211:?\206\276�@\321>)\203\311�\322\316D\323\"\207\322\324\"\207" [days day math-sh-year b math-holidays-cache iprev vec math-setup-add-holidays intv math-ceiling 2 calcFunc-in 1 math-add date 0 math-to-business-day (bigpos bigneg frac float) math-reject-arg "*Invalid holiday value" "*Holiday formula failed to evaluate" prev a] 4]) (defalias 'math-make-sdev #[(x sigma) "\242\303>\203\f�\304\305\"\210 \242\306>\203�\304 \305\"\210 \211:\203R�\n@\307=\206U�\n@\310=?\205U�\n@\311>\203L�\nA@\211:\203E�\n@\307=\202H�\n\312W)\202U�\313\n!\202U�\n\312W)\204`� \242\314>\203d�\315 ! \211:\203\210�\n@\316>?\205\213�\n@\317=\203\202�\nA@\312=\202\213�\320\n!\202\213�\n\312=)\203\241�\211:?\206\233�\n@\321>)\203\241�\207\322 E\207" [x sigma a (date mod sdev intv vec) math-reject-arg realp (date mod sdev intv vec) bigneg bigpos (frac float) 0 math-negp (cplx polar) math-abs (bigpos bigneg) float math-zerop (bigpos bigneg frac float cplx polar hms) sdev] 4]) (defalias 'calcFunc-sdev #[(x sigma) "\302 \"\207" [x sigma math-make-sdev] 3]) (defalias 'math-normalize-mod #[(a) "\303A@!\303\3048!\305\n!\203%�\305 !\203%�\306 !\203%�\307\n \"\202+�\303\310\n E!*\207" [a m n math-normalize 2 math-anglep math-posp math-make-mod calcFunc-makemod] 4]) (defalias 'math-make-mod #[(n m) "\n\205\334�\211:?\206�@\305>)\204�\306\307\"\207\310!\204&�\306\311\"\207\n\211:?\2062�@\305>)\203\222�\n\211:\203p�@\312=\206s�@\313=?\205s�@\314>\203j�A@\211:\203c�@\312=\202f�\315W)\202s�\316!\202s�\315W)\204\205�\n\317\f\"\320U*\204\215�\321\322\n\"E\207\321\nE\207\n@\323>\203\244�\324\n@\325\326\nA\"B!\207\n@\327=\203\311�\nA@\211:?\206\271�@\305>)\203\311�\330\331\nA@\"\332\n8\"\207\n@\333>\203\330�\330\331\334\"\n\"\207\306\n\307\"\207" [m calc-previous-modulo n a b (bigpos bigneg frac float hms) math-reject-arg anglep math-posp posp bigneg bigpos (frac float) 0 math-negp math-compare -1 mod math-mod (+ - / vec neg) math-normalize mapcar #[(x) "\302 \"\207" [x m math-make-mod] 3] * math-mul math-make-mod 2 (* ^ var calcFunc-subscr) 1] 6]) (defalias 'calcFunc-makemod #[(n m) "\302 \"\207" [n m math-make-mod] 3]) (defalias 'math-make-intv #[(mask lo hi) "\242\305>\203\f�\306\307\"\210 \242\310>\203�\306 \307\"\210\242\311= \242\311==\2044�\306\242\311=\2030� \2021�\312\"\210\211:?\206@�\n@\313>)\204K�@\311=\203\242� \211:?\206W�\n@\313>)\204b� @\311=\203\242�\314 \"\211\315U\203�\f\316U\203w�\202\240�\317\f F\202\240�\315V\203\233�\f\316U\203\223�\317\320\211F\202\240�\317\f\211F\202\240�\317\f F)\207\317\f F\207" [lo hi a cmp mask (cplx polar mod sdev intv vec) math-reject-arg realp (cplx polar mod sdev intv vec) date datep (bigpos bigneg frac float) math-compare 0 3 intv 2] 5]) (defalias 'calcFunc-intv #[(mask lo hi) "\303!\203\n�\304!\305!\204�\306\307\"\210\310X\204 �\306\311\"\210\312 \n#\207" [mask lo hi math-messy-integerp math-trunc natnump math-reject-arg fixnatnump 3 range math-make-intv] 4]) (defalias 'math-sort-intv #[(mask lo hi) " \305\n\"\306U*\203�\307\310\fH #\207\307\f #\207" [hi lo b a mask math-compare -1 math-make-intv [0 2 1 3]] 4]) (defalias 'math-combine-intervals #[(a am b bm c cm d dm) "\306\307 \n\"\211\310U\203�\n\202 �\311U\203 �\f\206�\307 \"\211\312U\2036� \202E�\311U\203E�\206C�\313\f\203N�\314\202O�\311\203X�\310\202Y�\311\\ #)\207" [res a c cm am b nil math-compare 1 0 -1 math-make-intv 2 d dm bm] 4]) (defalias 'math-div-mod #[(a b m) "\211:?\206\f�@\306>)\205y� \211:?\206�@\306>)\205y�\n\211:?\206,�@\306>)\205y�\307 \310\n \310=\204a�\311 \"\312 \313\f@\"\"\f A*\2029�\311 \"\211A\310=\205x�\314\313@ \"\n\"-\207" [a b m v3 v1 u3 (bigpos bigneg) 1 0 math-idivmod math-sub math-mul math-mod u1 q t1] 6]) (defalias 'math-mod-intv #[(a b) "\306\307\3108 \"!\306\307\3118 \"!\312\3108\313\n \"\"\312\3118\313 \"\"\n\232\2036�\314A@\f #\202]�\315\312\n\"\316\"\203X�\317 !\203X�A@\320>\203X�\321A@\f #\202]�\321\310\322 #,\207" [a b q1 q2 m1 m2 math-floor math-div 2 3 math-sub math-mul math-sort-intv math-equal-int 1 math-zerop (0 2) math-make-intv 0] 5]) (defalias 'math-read-angle-brackets #[nil "\306\307!\206�G\n O\310\311\"\203U�\312\211\225SO\312\225\313O\312\314\315\316Q!\211\242\317=\203:�\202Q�\314 !\211\242\317=\203I� \202Q�\320\321A C#+\202\200�\310\322\"\203}�\312\314!\211\205y�\242\317=\203q�\202y�\320\323\324\f!C#)\202\200�\325!\211;\203\215�\326\327\"\210\242\317=\203\235�\326\327\3308\"\210 T\331 \210+\207" [math-exp-str last math-exp-pos str calc-hashes-used str2 math-check-for-commas t string-match "\\` *\\([a-zA-Z#][a-zA-Z0-9#]* *,? *\\)*:" 0 nil math-read-expr "[" "]" error append (calcFunc-lambda) "#" (calcFunc-lambda) calc-invent-args math-parse-date throw syntax 2 math-read-token str1 res] 5]) (provide 'calc-forms)